(57)【要約】【課題】マルチプロセッサによって共有されるメモリを含むマルチプロセッサシステム、及び該システムの動作方法を提供する。【解決手段】本発明のマルチプロセッサシステムは、第１プロセッサと、第２プロセッサと、第１及び第２プロセッサによって共用される共有メモリと、共有メモリと第１及び第２プロセッサとの間のインターフェースを行うメモリインターフェース回路と、を含む。第１プロセッサは、無線通信で受信された信号を復調し、デコーディングして、該デコーディングされたデータを、メモリインターフェース回路を通じて共有メモリに保存し、メモリインターフェース回路は、共有メモリに保存されたデコーディングされたデータを読み出し、解読して、該解読されたデータを共有メモリに保存する。【選択図】図１
2017091543.tif 000002
【特許請求の範囲】
【請求項１】
第１プロセッサと、
第２プロセッサと、
前記第１及び第２プロセッサによって共用される共有メモリと、
前記共有メモリと前記第１及び第２プロセッサとの間のインターフェースを行うメモリインターフェース回路と、を含み、
前記第１プロセッサは、
無線通信で受信された信号を復調し、デコーディングして、該デコーディングされたデータを、前記メモリインターフェース回路を通じて前記共有メモリに保存し、
前記メモリインターフェース回路は、
前記共有メモリに保存された前記デコーディングされたデータを読み出し、解読して、該解読されたデータを前記共有メモリに保存するマルチプロセッサシステム。
【請求項２】
前記共有メモリは、
前記第１プロセッサ用割り当て領域及び前記第２プロセッサ用割り当て領域を含み、
前記デコーディングされたデータは、前記第１プロセッサ用割り当て領域に保存され、
前記解読されたデータは、前記第２プロセッサ用割り当て領域に保存される請求項１に記載のマルチプロセッサシステム。
【請求項３】
前記メモリインターフェース回路は、
第１プロセッサの第１ＤＭＡから第１メモリアクセス要請及び前記第２プロセッサの第２ＤＭＡからの第２メモリアクセス要請に応じて共有メモリをアクセスするメモリコントローラと、
前記第１メモリアクセス要請及び前記第２メモリアクセス要請を受信して、前記メモリコントローラに伝達するローカルバスと、
を含む請求項２に記載のマルチプロセッサシステム。
【請求項４】
前記メモリコントローラは、
ローカルＤＭＡと、
前記ローカルＤＭＡに前記第１プロセッサ用割り当て領域に保存された前記デコーディングされたデータの読み出しを要請し、前記ローカルＤＭＡを通じて受信した前記デコーディングされたデータを解読する暗号／解読モジュールと、を含み、
前記ローカルＤＭＡは、
前記暗号／解読モジュールの要請に応じて、前記第１プロセッサ用割り当て領域に保存された前記デコーディングされたデータを読み出して、前記暗号／解読モジュールに提供する請求項３に記載のマルチプロセッサシステム。
【請求項５】
前記ローカルＤＭＡは、
前記第１プロセッサ用割り当て領域に保存された第１アドレスデスクリプタを参照して、前記デコーディングされたデータを読み出し、
前記第１アドレスデスクリプタは、前記デコーディングされたデータのアドレス情報を含み、前記第１プロセッサによって生成されて、前記第１プロセッサ用割り当て領域に保存される請求項４に記載のマルチプロセッサシステム。
【請求項６】
前記ローカルＤＭＡは、
前記暗号／解読モジュールの要請に応じて、前記第２プロセッサ用割り当て領域に既保存の第２アドレスデスクリプタを参照して、前記解読されたデータを前記第２プロセッサ用割り当て領域に保存し、
前記第２アドレスデスクリプタは、前記解読されたデータのアドレス情報を含み、前記第２プロセッサによって生成されて、前記第２プロセッサ用割り当て領域に保存される請求項４に記載のマルチプロセッサシステム。
【請求項７】
前記ローカルＤＭＡは、
前記解読されたデータを前記第２プロセッサ用割り当て領域に保存した後、メールボックスに保存完了を知らせ、
前記メールボックスは、前記第２プロセッサにインタラプトを発生させる請求項４に記載のマルチプロセッサシステム。
【請求項８】
前記第２プロセッサは、
前記メールボックスの前記インタラプトに応答して、前記メモリインターフェース回路に前記解読されたデータを要請し、
前記メモリインターフェース回路は、
前記第２メモリ接近要請に応じて、前記第２アドレスデスクリプタを参照して、前記第２プロセッサ用割り当て領域から前記解読されたデータを読み出して、前記第２プロセッサに伝送し、
前記第２プロセッサは、
前記メモリインターフェース回路から前記解読されたデータを受信して処理する請求項７に記載のマルチプロセッサシステム。
【請求項９】
前記メモリインターフェース回路は、
前記共有メモリに保存されたデータの一部を保存し、
前記共有メモリにアクセスする前に先にアクセスするシステムキャッシュをさらに含む請求項４に記載のマルチプロセッサシステム。
【請求項１０】
前記メモリインターフェース回路は、
前記デコーディングされたデータを解読して、該解読されたデータを生成する暗号／解読モジュールと、
前記ローカルバスに連結され、前記暗号／解読モジュールの要請に応じて、前記ローカルバスに前記解読されたデータを要請するローカルＤＭＡと、を含み、
前記ローカルバスは、前記ローカルＤＭＡの前記解読されたデータに対する要請信号を前記メモリコントローラに伝達する請求項３に記載のマルチプロセッサシステム。
【請求項１１】
前記ローカルＤＭＡは、
前記第１プロセッサ用割り当て領域に保存された第１アドレスデスクリプタを参照して、前記デコーディングされたデータを読み出し、
前記第１アドレスデスクリプタは、前記デコーディングされたデータのアドレス情報を含み、前記第１プロセッサによって生成されて、前記第１プロセッサ用割り当て領域に保存される請求項１０に記載のマルチプロセッサシステム。
【請求項１２】
前記ローカルＤＭＡは、
前記暗号／解読モジュールの要請に応じて、前記第２プロセッサ用割り当て領域に既保存の第２アドレスデスクリプタを参照して、前記解読されたデータを前記第２プロセッサ用割り当て領域に保存し、
前記第２アドレスデスクリプタは、前記解読されたデータのアドレス情報を含み、前記第２プロセッサによって生成されて、前記第２プロセッサ用割り当て領域に保存される請求項１０に記載のマルチプロセッサシステム。
【請求項１３】
前記メモリインターフェース回路は、
前記共有メモリに保存されたデータの一部を保存し、
前記共有メモリにアクセスする前に先にアクセスするシステムキャッシュをさらに含む請求項１０に記載のマルチプロセッサシステム。
【請求項１４】
前記第１プロセッサは、ＣＰであり、
前記第２プロセッサは、ＡＰである請求項１に記載のマルチプロセッサシステム。
【請求項１５】
第１プロセッサと、
第２プロセッサと、
前記第１プロセッサによって生成されたデータ及び前記第２プロセッサによって生成されたデータを保存する共有メモリと、
前記共有メモリと前記第１及び第２プロセッサとの間のインターフェースを行うメモリインターフェース回路と、を含み、
前記第２プロセッサは、無線通信のためのアップリンクデータを生成し、前記メモリインターフェース回路を通じて前記共有メモリに前記アップリンクデータを保存し、
前記メモリインターフェース回路は、前記共有メモリに保存された前記アップリンクデータを読み出し、暗号化して、前記暗号化されたデータを前記共有メモリに保存するマルチプロセッサシステム。
【請求項１６】
前記共有メモリは、前記第１プロセッサ用割り当て領域及び前記第２プロセッサ用割り当て領域を含み、
前記メモリインターフェース回路は、前記アップリンクデータを前記第２プロセッサ用割り当て領域に保存し、前記暗号化されたデータを前記第１プロセッサ用割り当て領域に保存する請求項１５に記載のマルチプロセッサシステム。
【請求項１７】
前記第１プロセッサは、前記メモリインターフェース回路に前記暗号化されたデータに対する要請を伝送し、
前記メモリインターフェース回路は、前記要請に応答して、前記共有メモリから前記暗号化されたデータを読み出し、前記読み出した暗号化されたデータを前記第１プロセッサに提供する請求項１５に記載のマルチプロセッサシステム。
【請求項１８】
前記第１プロセッサは、前記メモリインターフェース回路から前記読み出した暗号化されたデータを受信し、前記読み出した暗号化されたデータを無線データに変換し、前記無線データを無線で伝送する請求項１７に記載のマルチプロセッサシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、１つ以上のプロセッサを含むシステム、及びそのシステムの動作方法に係り、より詳細には、異種プロセッサを含むマルチプロセッサシステム、及び該システムの動作方法に関する。
【背景技術】
【０００２】
従来のモバイル機器（例えば、スマートフォン、タブレットＰＣなど）では、アプリケーションプロセッサ（ＡＰ：Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｃｅｓｓｏｒ）と、コネクティビティプロセッサ（ＣＰ：Ｃｏｎｎｅｃｔｉｖｉｔｙ  Ｐｒｏｃｅｓｓｏｒ）とは、別途のチップとして具現され、両プロセッサは、チップ・ツー・チップ（ｃｈｉｐ−ｔｏ−ｃｈｉｐ）インターフェースに連結される。ＡＰは、モバイル機器のＯＳ及び各種の応用プログラムを駆動するモバイル機器のメインチップである。ＣＰは、モバイル機器を外部装置と連結する機能を担当し、通信チップと称される。
したがって、従来、ＣＰとＡＰとが、それぞれ独立したシステムとして別個に動作し、チップ・ツー・チップインターフェースを通じてデータを送受信した。
最近、ＡＰとＣＰとが、１つのシステム・オン・チップ（ＳｏＣ：Ｓｙｓｔｅｍ−ｏｎ−Ｃｈｉｐ）に合わせられて具現する方式が提案されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開平６−１２３６３
【特許文献２】特開２００６−２９３８３６
【特許文献３】特開２００７−４１７６８
【特許文献４】特開２００８−９０４５５
【特許文献５】米国特許第６３８１６８２
【特許文献６】米国特許第７０８０２１５
【特許文献７】米国特許第７１１４０４２
【特許文献８】米国特許第８００１２９４
【特許文献９】米国特許第８６３５４１２
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本発明が解決しようとする技術的な課題は、マルチプロセッサシステムでメモリアクセス頻度を減らして、パワー消費を減らし、システム性能を改善することができる動作方法、及びそのシステムを提供することにある。
【課題を解決するための手段】
【０００５】
本発明の実施形態によれば、第１プロセッサ（モデム）と、第２プロセッサと、前記第１及び第２プロセッサによって共用される共有メモリと、前記共有メモリと前記第１及び第２プロセッサとの間のインターフェースを行うメモリインターフェース回路と、を含み、前記第１プロセッサは、無線通信で受信された信号を復調（ｄｅｍｏｄｕｌａｔｉｏｎ）し、デコーディング（ｄｅｃｏｄｉｎｇ）して、該デコーディングされたデータを、前記メモリインターフェース回路を通じて前記共有メモリに保存し、前記メモリインターフェース回路は、前記共有メモリに保存された前記デコーディングされたデータを読み出し、解読（ｄｅｃｉｐｈｅｒｉｎｇ）して、該解読されたデータを前記共有メモリに保存するマルチプロセッサシステムが提供される。
【０００６】
本発明の実施形態によれば、第１プロセッサ、及び第２プロセッサを含むマルチプロセッサシステムの動作方法が提供される。前記マルチプロセッサシステムの動作方法は、前記第１プロセッサ（ＣＰ）が無線通信を通じてデータを受信し、前記データに基づいて第１パケットデータ（ＩＰ  ｐａｃｋｅｔ）を生成する段階と、前記第１プロセッサが共有メモリの第１プロセッサ用割り当て領域に前記第１パケットデータを保存する段階と、前記メモリインターフェース回路が、前記第１プロセッサ用割り当て領域から前記第１パケットデータを読み出し、前記第１パケットデータを解読して、該解読されたデータを生成する段階と、前記メモリインターフェース回路が、前記共有メモリの第２プロセッサ用割り当て領域に前記解読されたデータを保存する段階と、前記第２プロセッサが、前記第２プロセッサ用割り当て領域で前記解読されたデータを読み出して処理する段階と、を含む。
【０００７】
本発明の実施形態によれば、第１プロセッサ（モデム）と、第２プロセッサと、前記第１及び第２プロセッサによって共用される共有メモリと前記第１及び第２プロセッサとの間のインターフェースを行うメモリインターフェース回路と、を含み、前記第１プロセッサは、無線通信で受信された信号を復調し、デコーディングして、該デコーディングされたデータを、前記メモリインターフェース回路を通じて前記共有メモリに保存し、前記メモリインターフェース回路は、前記共有メモリに保存された前記デコーディングされたデータを読み出し、解読して、該解読されたデータを前記共有メモリに保存するシステム・オン・チップ（ＳｏＣ）が提供される。
【発明の効果】
【０００８】
本発明によれば、２つ以上のプロセッサが１つのメモリを共有するシステムで、メモリインターフェース回路内にローカルＤＭＡ及び暗号／解読モジュールを内蔵することによって、１つのプロセッサから他のプロセッサにデータ伝達時に、プロセッサのバスを経ずに、メモリインターフェース回路のみを経て内部的に伝達される。したがって、プロセッサ間のデータ伝送時に、共有メモリをアクセスする回数を減らしうる。これにより、マルチプロセッサシステムの性能（例えば、速度など）が向上し、消費電力は減らしうる。
【図面の簡単な説明】
【０００９】
本発明の詳細な説明で引用される図面をより十分に理解するために、各図面の簡単な説明が提供される。
【００１０】
【図１】本発明の実施形態によるマルチプロセッサシステムを簡略に示す図。
【図２】図１に示された共有メモリの一実施形態３００ａを説明する図。
【図３】本発明の実施形態によるマルチプロセッサシステムをより詳しく示す図。
【図４】本発明の実施形態によるマルチプロセッサシステムをより詳しく示す図。
【図５】図３に示されたメモリインターフェース回路の変形例を示すブロック図。
【図６】図４に示されたメモリインターフェース回路の変形例を示すブロック図。
【図７】本発明の実施形態によるマルチプロセッサシステムの動作方法を示すフローチャート。
【図８】本発明の実施形態によるマルチプロセッサシステムの動作方法を説明する図。
【図９】本発明の実施形態によるマルチプロセッサシステムの動作方法を示すフローチャート。
【図１０】本発明の実施形態によるマルチプロセッサシステムの動作方法を説明する図。
【図１１】本発明の他の実施形態による電子システムの構成ブロック図。
【図１２】本発明の実施形態によるモバイル機器５００を簡略に示す図。
【発明を実施するための形態】
【００１１】
以下、添付した図面を参照して、本発明を詳しく説明する。
図１は、本発明の実施形態によるマルチプロセッサシステムを簡略に示す図である。図１を参照すれば、マルチプロセッサシステム１０は、システム・オン・チップ（ＳｏＣ）１００及び共有メモリ３００を含む。
システム・オン・チップ１００は、第１プロセッサ１１０、第２プロセッサ１３０及び共有メモリインターフェース回路（ｃｏｍｍｏｎ  ｍｅｍｏｒｙ  ｉｎｔｅｒｆａｃｅ  ｃｉｒｃｕｉｔ）２００を含む。
【００１２】
第１及び第２プロセッサ１１０、１３０のそれぞれは、共有メモリインターフェース回路２００を通じて共有メモリ３００にアクセスすることができる。すなわち、メモリインターフェース回路２００は、共有メモリ３００と第１及び第２プロセッサ１１０、１３０との間のインターフェースを行うことができる。第１及び第２プロセッサ１１０、１３０のそれぞれは、１つ以上のプロセッシングユニットを含みうる。
共有メモリ３００は、第１及び第２プロセッサ１１０、１３０によって共用されるメインメモリである。共有メモリ３００は、ＤＲＡＭ（Ｄｙｎａｍｉｃ  Ｒａｎｄｏｍ−Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）であるが、これに限定されるものではない。例えば、共有メモリ３００は、不揮発性メモリとしても具現される。
【００１３】
第１プロセッサ１１０または第２プロセッサ１３０は、メモリインターフェース回路２００にメモリアクセス要請、すなわち、データ保存（書き込み）要請や読み取り要請ができる。例えば、第１プロセッサ１１０または第２プロセッサ１３０は、それぞれのＤＭＡ（Ｄｉｒｅｃｔ  Ｍｅｍｏｒｙ  Ａｃｃｅｓｓ）ユニット１１６、１３４を用いてメモリインターフェース回路２００とデータを伝送しうる。
第１バス１４０は、第１プロセッサ１１０とメモリインターフェース回路２００との間で、第１プロセッサ１１０とメモリインターフェース回路２００との間のデータ伝送を支援することができる。
第２バス１５０は、第２プロセッサ１３０とメモリインターフェース回路２００との間で、第２プロセッサ１３０とメモリインターフェース回路２００との間のデータ伝送を支援することができる。
【００１４】
実施形態によって、第１及び第２バス１４０、１５０は、それぞれＡＭＢＡ（Ａｄｖａｎｃｅｄ  Ｍｉｃｒｏｃｏｎｔｒｏｌｌｅｒ  Ｂｕｓ  Ａｒｃｈｉｔｅｃｔｕｒｅ）またはＡＸＩ（Ａｄｖａｎｃｅｄ  ｅＸｔｅｎｓｉｂｌｅ  Ｉｎｔｅｒｆａｃｅ）規格によるバスであるが、これに限定されるものではなく、他のインターコネクト規格（ｉｎｔｅｒｃｏｎｎｅｃｔ  ｓｐｅｃｉｆｉｃａｔｉｏｎ）によるバスでもあり得る。
【００１５】
第１プロセッサ１１０は、無線通信で受信された信号を復調し、デコーディングして、該デコーディングされたデータをメモリインターフェース回路２００を通じて共有メモリ３００に保存することができる。デコーディングされたデータは、暗号化されたデータであり得る。実施形態によって、第１プロセッサ１１０は、デコーディングされたデータを含む既定のフォーマットのパケットデータ（例えば、インターネットプロトコル（ＩＰ：Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）パケットデータ）を生成することができる。この場合、デコーディングデータを含むパケットデータを、共有メモリ３００に保存することができる。
【００１６】
メモリインターフェース回路２００は、共有メモリ３００に保存されたデコーディングされたデータを読み出し、解読して、該解読されたデータを共有メモリ３００に保存する。
そのために、メモリインターフェース回路２００は、デコーディングされたデータを解読するための暗号／解読モジュール（Ｃｉｐｈｅｒ／Ｄｅｃｉｐｈｅｒ  ｍｏｄｕｌｅ）２４０を含む。暗号／解読モジュール２４０は、メモリインターフェース回路２００に含まれる回路によって具現可能である。
メモリインターフェース回路２００によって、解読されたデータが共有メモリ３００に保存された後に、第２プロセッサ１３０は、共有メモリ３００から解読されたデータを読み出して処理する。
【００１７】
図２は、図１に示された共有メモリの一実施形態３００ａを説明する図である。図１及び図２を参照すれば、共有メモリ３００ａは、複数（２つ以上の）領域に分けられうる。実施形態によって、共有メモリ３００ａは、第１プロセッサ用割り当て領域３１０と第２プロセッサ用割り当て領域３２０、及びその他の領域３３０に分けられうる。
第１プロセッサ用割り当て領域３１０は、ファームウエア領域３１１、アドレスデスクリプタ領域３１３及びパケットデータ領域３１５を含みうる。
【００１８】
ファームウエア領域３１１は、第１プロセッサ１１０のファームウエア（ｆｉｒｍｗａｒｅ）を保存する領域である。アドレスデスクリプタ領域３１３は、第１プロセッサ１１０が生成したアドレスデスクリプタを保存するための領域であり得る。第１プロセッサ１１０が生成したアドレスデスクリプタは、第１プロセッサ１１０が使用（保存または読み出し）するデータの保存位置を指定するアドレス情報を含みうる。
パケットデータ領域３１５は、第１プロセッサ１１０用データを保存するための領域である。例えば、第１プロセッサ１１０から生成されたパケットデータまたは第１プロセッサ１１０が読み出すパケットデータを、パケットデータ領域３１５に保存することができる。
【００１９】
前述した第１プロセッサ１１０でデコーディングされたデータは、アドレスデスクリプタ領域３１３に保存されたアドレスデスクリプタによってパケットデータ領域３１５に保存することができる。
第２プロセッサ用割り当て領域３２０は、ＴＣＰ／ＩＰデータ領域３２１及びアドレスデスクリプタ領域３２５を含みうる。
【００２０】
ＴＣＰ／ＩＰデータ領域３２１は、第２プロセッサ１３０用データを保存するための領域である。例えば、第２プロセッサ１３０から生成されたパケットデータまたは第２プロセッサ１３０が読み出すパケットデータを、ＴＣＰ／ＩＰデータ領域３２１に保存することができる。
ＴＣＰ／ＩＰデータ領域３２１は、ソケットバッファ（ｓｏｃｋｅｔ  ｂｕｆｆｅｒ）３２３を含みうる。
【００２１】
アドレスデスクリプタ領域３２５は、第２プロセッサ１３０が生成したアドレスデスクリプタを保存するための領域であり得る。第２プロセッサ１３０が生成したアドレスデスクリプタは、第２プロセッサ１３０が使用（保存または読み出し）するデータの保存位置を指定するアドレス情報を含みうる。
前述したメモリインターフェース回路２００で解読されたデータは、アドレスデスクリプタ領域３２５に保存されたアドレスデスクリプタによってソケットバッファ３２３に保存することができる。
【００２２】
図３は、本発明の実施形態によるマルチプロセッサシステムをより詳しく示す図である。図３を参照すれば、マルチプロセッサシステム１０ａは、システム・オン・チップ（ＳｏＣ）１００ａ及び共有メモリ３００を含む。
システム・オン・チップ１００ａは、ＣＰ  ＳＯＣ１０１、ＡＰ  ＳＯＣ１０３及びメモリインターフェース回路２００ａを含む。
【００２３】
ＣＰ  ＳＯＣ１０１は、モデムプロセッサ１１０ａ、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１２２、ＤＳＰ（Ｄｉｇｉｔａｌ  Ｓｉｇｎａｌ  Ｐｒｏｃｅｓｓｏｒ）１２４、及び第１バス１４０を含みうる。
ＣＰＵ１２２は、ＣＰ  ＳＯＣ１０１の全般的な動作を制御する。
【００２４】
モデムプロセッサ１１０ａは、変復調器（Ｍｏｄｅｍ  Ｒｘ／Ｔｘ）１１２、エンコーダ／デコーダ１１４及び第１ＤＭＡユニット１１６を含みうる。モデムプロセッサ１１０ａは、図１の第１プロセッサ１１０に該当する。図２に示したように、モデムプロセッサ１１０ａは、他のプロセッサ及び／または素子と共に１つのＳＯＣ（すなわち、ＣＰ  ＳＯＣ１０１）として具現可能であるが、これに限定されるものではない。本発明の一実施形態によれば、本明細書で使われる用語“ＤＭＡユニット”は、例えば、ＤＭＡ制御器を称することができる。
【００２５】
変復調器１１２は、無線通信を通じて受信したデータ（例えば、ダウンリンクデータ）を復調し、また、無線通信を通じて送信するデータ（例えば、アップリンクデータ）を変調することができる。
ここで、ダウンリンクデータ（Ｄｏｗｎｌｉｎｋ  Ｄａｔａ）とは、移動通信基地局からモバイル機器に伝送されて処理されるデータを包括的に意味し、アップリンクデータ（Ｕｐｌｉｎｋ  Ｄａｔａ）とは、モバイル機器で生成されて移動通信基地局に伝送されるデータを包括的に意味する。
【００２６】
本発明の実施形態によるマルチプロセッサシステム１０、１０ａ、１０ｂは、移動通信用モバイル機器に適用可能である。変復調器の変復調方式は、無線通信プロトコルによって変わりうる。
ダウンリンクデータの場合、エンコーダ／デコーダ１１４は、変復調器１１２によって復調されたデータを受信してデコーディングし、アップリンクデータの場合、エンコーダ／デコーダ１１４は、データエンコーディングを行ってエンコーディングされたデータを変復調器１１４に提供することができる。この場合、変復調器１１２は、エンコーディングされたデータを無線通信を通じて伝送するための無線データに変調することができる。
【００２７】
実施形態によって、エンコーディングされたデータは、メモリインターフェース回路２００ａで暗号化されたデータであり得る。したがって、モデムプロセッサ１１０ａは、暗号化されたデータを無線通信を通じて伝送するための無線データに変換することができる。
ＤＳＰ１２４は、デジタル信号に対する各種の処理動作（ｐｒｏｃｅｓｓｉｎｇ  ｏｐｅｒａｔｉｏｎｓ）を行うことができる。
例えば、ＤＳＰ１２４は、イメージセンサ（図示せず）から入力されたイメージデータを処理することができる。
【００２８】
第１バス１４０は、ＣＰ  ＳＯＣ１０１内の素子間の通信及びＣＰ  ＳＯＣ１０１と外部素子との間の通信を支援する。
メモリインターフェース回路２００ａは、ローカルバス２１０ａ、及びメモリコントローラ２２０ａを含みうる。
ローカルバス２１０ａは、第１バス１４０及び第２バス１５０に連結されうる。
例えば、ローカルバス２１０ａは、第１バス１４０と共に、第１プロセッサ１１０ａとメモリコントローラ２２０ａとの間のデータ伝送を支援し、また第２バス１５０と共に、第２プロセッサ１３０ａとメモリコントローラ２２０ａとの間のデータ伝送を支援することができる。後述されるように、図３のＣＰＵ１３０ａは、図１の第２プロセッサ１３０の１つの例であり得る。
【００２９】
メモリコントローラ２２０ａは、ローカルＤＭＡ２３０ａ、暗号／解読モジュール２４０ａ、読み取りバッファ２５１及び書き込みバッファ２５３を含みうる。
メモリコントローラ２２０ａは、第１ＤＭＡから第１バス１４０及びローカルバス２１０ａを通じてデコーディングされたデータを受信して、書き込みバッファ２５３に一時的に保存することができる。メモリコントローラ２２０ａは、書き込みバッファ２５３に保存されたデコーディングされたデータを共有メモリ３００に保存することができる。
例えば、メモリコントローラ２２０ａは、デコーディングされたデータを共有メモリ３００の第１プロセッサ用割り当て領域３１０のパケットデータ領域３１５に保存することができる。
【００３０】
書き込みバッファ２５３は、共有メモリ３００に保存するデータを一時的に保存するバッファである。
暗号／解読モジュール２４０ａは、ローカルＤＭＡ２３０ａに対し、共有メモリ３００に保存されたデコーディングされたデータの読み出しを要請することができる。この要請に応じて、ローカルＤＭＡユニット２３０ａは、共有メモリ３００からデコーディングされたデータを読み出して、暗号／解読モジュール２４０ａに提供する。実施形態によって、ローカルＤＭＡユニット２３０ａは、第１アドレスデスクリプタを参照して、デコーディングされたデータのアドレス情報が分かり、このアドレス情報に基づいて、デコーディングされたデータを読み出すことができる。
【００３１】
第１アドレスデスクリプタを参照するための情報は、第１プロセッサ１１０から発給される命令に含まれうる。例えば、第１プロセッサ１１０ａは、第１アドレスデスクリプタの参照情報を含む命令をローカルＤＭＡユニット２３０ａに発給することができる。または第１プロセッサ１１０ａは、第１アドレスデスクリプタの参照情報をローカルＤＭＡユニット２３０ａ内のレジスタ（例えば、ＳＦＲ：Ｓｐｅｃｉａｌ  Ｆｕｎｃｔｉｏｎ  Ｒｅｇｉｓｔｅｒ）（図示せず）に設定することができる。
共有メモリ３００から読み出されたデコーディングされたデータは、読み取りバッファ２５１に一時的に保存することができる。
読み取りバッファ２５１は、共有メモリ３００から読み出したデータを一時的に保存するバッファである。
【００３２】
暗号／解読モジュール２４０ａは、ローカルＤＭＡ２３０ａを通じて受信したデコーディングされたデータを解読して、該解読されたデータを生成する。実施形態によって、暗号／解読モジュール２４０ａは、暗号／解読アクセラレータ（Ｃｉｐｈｅｒ／Ｄｅｃｉｐｈｅｒ  Ａｃｃｅｌｅｒａｔｏｒ）２４１及び暗号／解読バッファ２４３を含みうる。暗号／解読アクセラレータ２４１は、暗号化されていないデータに対する暗号化、及び暗号化されたデータ（例えば、デコーディングされたデータ）に対する解読を行う回路／回路として具現可能である。または暗号／解読アクセラレータ２４１は、暗号化されていないデータに対する暗号化、及び暗号化されたデータ（例えば、デコーディングされたデータ）に対する解読を行うプログラムを実行するプロセッサとしても具現される。暗号／解読バッファ２４３は、暗号／解読アクセラレータ２４１の入力データ及び／あるいは出力データを一時的に保存することができる。
【００３３】
暗号／解読モジュール２４０ａは、ローカルＤＭＡ２３０ａに解読されたデータの保存を要請することができる。この要請に応じて、ローカルＤＭＡユニット２３０ａは、暗号／解読モジュール２４０ａから解読されたデータを受信して、書き込みバッファ２５３を通じて共有メモリ３００に保存する。
【００３４】
実施３４によって、ローカルＤＭＡユニット２３０ａは、第２アドレスデスクリプタを参照して、解読されたデータが保存されるアドレス情報が分かり、このアドレス情報に基づいて、解読されたデータを共有メモリ３００に保存することができる。
例えば、ローカルＤＭＡユニット２３０ａは、解読されたデータを第２プロセッサ用割り当て領域３２０のＴＣＰ／ＩＰデータ領域３２１のソケットバッファ３２３に保存することができる。
【００３５】
第２アドレスデスクリプタを参照するための情報は、第２プロセッサ１３０ａからローカルＤＭＡユニット２３０ａに印加される命令に含まれうる。例えば、第２プロセッサ１３０ａは、第２アドレスデスクリプタの参照情報を含む命令をローカルＤＭＡユニット２３０ａに発給することができる。または第２プロセッサ１３０ａは、第２アドレスデスクリプタの参照情報をローカルＤＭＡユニット２３０ａ内のレジスタ（図示せず）に設定することができる。
【００３６】
ＡＰ  ＳＯＣ１０３は、ＣＰＵ１３０ａ、グラフィック・プロセッシング・ユニット（ＧＰＵ：Ｇｒａｐｈｉｃｓ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）１３２、第２ＤＭＡユニット１３４、及び第２バス１５０を含みうる。
ＣＰＵ１３０ａは、ＡＰ  ＳＯＣ１０３の全般的な動作を制御する。
ＣＰＵ１３０ａは、マルチコアプロセッサ（ｍｕｌｔｉ−ｃｏｒｅ  ｐｒｏｃｅｓｓｏｒ）として具現可能である。このマルチコアプロセッサは、２つまたはそれ以上の独立した実質的なプロセッシングユニット（‘コア（ｃｏｒｅｓ）’と呼ばれる）を有する１つのコンピューティングコンポーネント（ｃｏｍｐｕｔｉｎｇ  ｃｏｍｐｏｎｅｎｔ）であり、コアのそれぞれは、プログラム命令（ｐｒｏｇｒａｍ  ｉｎｓｔｒｕｃｔｉｏｎｓ）を読み出して実行することができる。
【００３７】
ＣＰＵ１３０ａは、図１の第２プロセッサ１３０に該当する。図２に示したように、ＣＰＵ１３０ａは、他のプロセッサ及び／または素子と共に１つのＳＯＣ（すなわち、ＡＰ  ＳＯＣ１０３）として具現可能であるが、これに限定されるものではない。
ＣＰＵ１３０ａは、共有メモリ３００に保存された解読されたデータを読み出して処理することができる。ＣＰＵ１３０ａは、また無線通信を通じて伝送するためのデータ（例えば、パケットデータ）を生成して共有メモリ３００に保存することができる。
ＧＰＵ１３２は、グラフィック処理と関連したプログラム命令を読み出して行うことができる。例えば、ＧＰＵ１３２は、グラフィック関連図形処理などを高速で行うことができる。
【００３８】
第２ＤＭＡユニット１３４は、ＣＰＵ１３０ａ、ＧＰＵ１３２または他のバスマスタ１３６の要請に応じて、共有メモリ３００にデータを保存するか、共有メモリ３００からデータを読み出すことができる。
例えば、第２ＤＭＡユニット１３４は、ＣＰＵ１３０ａの要請に応じて、共有メモリ３００に保存された解読されたデータを読み出し、ＣＰＵ１３０ａによって生成されたパケットデータを共有メモリ３００に保存することができる。
【００３９】
図４は、本発明の実施形態によるマルチプロセッサシステムをより詳しく示す図である。図４のマルチプロセッサシステム１０ｂの構成及び動作は、図３のマルチプロセッサシステム１０ａの構成及び動作と類似しているので、説明の重複を避けるために、差異点を中心に記述する。
図３及び図４を参照すれば、マルチプロセッサシステム１０ｂは、システム・オン・チップ（ＳｏＣ）１００ｂ及び共有メモリ３００を含む。
ＳｏＣ１００ｂは、ＣＰ  ＳＯＣ１０１、ＡＰ  ＳＣＯ１０３及びメモリインターフェース回路２００ｂを含む。
メモリインターフェース回路２００ｂは、ローカルバス２１０ｂ、メモリコントローラ２２０ｂ、ローカルＤＭＡ２３０ｂ、及び暗号／解読モジュール２４０ｂを含みうる。
【００４０】
図３の実施形態では、ローカルＤＭＡ２３０ａ及び暗号／解読モジュール２４０ａは、ローカルバス２１０ａの後端（ｂａｃｋｅｎｄ）であるメモリコントローラ２２０ａの内部に位置するが、一方、図４の実施形態では、ローカルＤＭＡ２３０ｂ及び暗号／解読モジュール２４０ｂは、ローカルバス２１０ｂの前端（ｆｒｏｎｔｅｎｄ）に位置する。
ローカルバス２１０ｂは、第１バス１４０及び第２バス１５０に連結されうる。
例えば、ローカルバス２１０ｂは、第１バス１４０と共に、第１プロセッサ１１０ａとメモリコントローラ２２０ｂとの間のデータ伝送を支援し、また第２バス１５０と共に、第２プロセッサ１３０ａとメモリコントローラ２２０ｂとの間のデータ伝送を支援することができる。
【００４１】
メモリコントローラ２２０ｂは、読み取りバッファ２５１及び書き込みバッファ２５３を含みうる。
メモリコントローラ２２０ｂは、第１ＤＭＡユニット１１６から第１バス１４０及びローカルバス２１０ｂを通じてデコーディングされたデータを受信して、書き込みバッファ２５３に一時的に保存することができる。メモリコントローラ２２０ｂは、書き込みバッファ２５３に保存されたデコーディングされたデータを共有メモリ３００に保存することができる。
【００４２】
暗号／解読モジュール２４０ｂは、ローカルＤＭＡ２３０ｂに共有メモリ３００に保存されたデコーディングされたデータの読み出しを要請することができる。この要請に応じて、ローカルＤＭＡユニット２３０ｂは、共有メモリ３００からデコーディングされたデータを読み出して、暗号／解読モジュール２４０ｂに提供する。
【００４３】
本実施形態では、共有メモリ３００から読み出されたエンデコーディングされたデータは、読み取りバッファ２５１に一時的に保存され、ローカルバス２１０ｂを通じてローカルＤＭＡ２３０ｂの内部のＤＭＡバッファ２３１に保存された後、暗号／解読モジュール２４０ｂの内部の暗号／解読バッファ２４３に伝達して保存することができる。
暗号／解読アクセラレータ２４１は、暗号／解読モジュール２４０ｂの内部の暗号／解読バッファ２４３に保存されたデコーディングされたデータを解読して、該解読されたデータを生成する。
暗号／解読モジュール２４０ｂは、ローカルＤＭＡ２３０ｂに解読されたデータの保存を要請することができる。この要請に応じて、ローカルＤＭＡユニット２３０ｂは、暗号／解読モジュール２４０ｂから解読されたデータを受信して、共有メモリ３００に保存する。
【００４４】
実施形態によって、暗号／解読アクセラレータ２４１は、解読されたデータを暗号／解読モジュール２４０ｂの内部の暗号／解読バッファ２４３に保存することができる。解読されたデータは、内部バッファ２４３からローカルＤＭＡ２３０ｂのＤＭＡバッファ２３１に伝達されて保存され、ローカルバス２１０ｂを通じてメモリコントローラ２２０ｂの書き込みバッファ２５３に一時保存された後、共有メモリ３００に保存することができる。
【００４５】
前述したように、メモリインターフェース回路２００ａまたは２００ｂ内でのローカルＤＭＡ２３０ａまたは２３０ｂ及び暗号／解読モジュール２４０ａまたは２４０ｂの位置によって、デコーディングされたデータの読み出し経路及び解読されたデータの保存経路を変えることはできるが、メモリインターフェース回路２００ａまたは２００ｂが、共有メモリ３００からデコーディングされたデータを読み出し、それを解読して共有メモリ３００に保存する機能及び動作はほぼ同一である。
【００４６】
前述したように、本発明の実施形態によれば、メモリインターフェース回路２００ａまたは２００ｂ内にローカルＤＭＡ２３０ａまたは２３０ｂ及び暗号／解読モジュール２４０ａまたは２４０ｂを内蔵することによって、共有メモリ３００の第１プロセッサ用割り当て領域３１０から第２プロセッサ用割り当て領域３２０にデータ伝達時に、またはその逆にデータ伝達時に、第１プロセッサ１１０及び第２プロセッサ１３０のバスを経ずに、メモリインターフェース回路２００のみを経て内部的に伝達される。したがって、第１プロセッサ１１０と第２プロセッサ１３０との間のデータ伝送時に、共有メモリ３００をアクセスする回数を減らしうる。
これにより、マルチプロセッサシステムの性能（例えば、速度など）が向上し、消費電力を減らしうる。
【００４７】
図５は、図３に示されたメモリインターフェース回路の変形例を示すブロック図である。図３及び図５を参照すれば、メモリインターフェース回路２００ｃは、図３に示されたメモリインターフェース回路２００ａとその構成及び動作が類似しているので、説明の重複を避けるために、差異点を中心に記述する。
メモリインターフェース回路２００ｃは、図３に示されたメモリインターフェース回路２００ａに比べて、システムキャッシュ２６０をさらに含む。
【００４８】
システムキャッシュ２６０は、共有メモリ３００に保存されたデータの一部を保存することができる。メモリインターフェース回路２００ｃは、共有メモリ３００からデータを読み出す前に、システムキャッシュ２６０に当該データがあるか否かを先に確認することができる。
例えば、メモリインターフェース回路２００ｃのローカルＤＭＡユニット２３０ａは、暗号／解読モジュール２４０ａの要請に応じて、共有メモリ３００からデコーディングされたデータを読み出そうとする時、先にシステムキャッシュ２６０に当該デコーディングされたデータを要請することができる。図５で、ブロック２１５は、ローカルＤＭＡユニット２３０ａ及び暗号／解読モジュール２４０ａを含むブロックを示す。
【００４９】
もし、システムキャッシュ２６０に所望のデータ（例えば、デコーディングされたデータ）があれば、キャッシュヒット（ｃａｃｈｅ−ｈｉｔ）に該当し、この場合、ローカルＤＭＡユニット２３０ａは、システムキャッシュ２６０からデコーディングされたデータを読み出して、暗号／解読モジュール２４０ａに提供することができる。
一方、システムキャッシュ２６０に所望のデータ（例えば、デコーディングされたデータ）がなければ、キャッシュミス（ｃａｃｈｅ−ｍｉｓｓ）に該当し、この場合、ローカルＤＭＡユニット２３０ａは、メモリコントローラ２２０ｃを通じて共有メモリ３００からデコーディングされたデータを読み出して、暗号／解読モジュール２４０ａに提供することができる。この際、共有メモリ３００から読み出されたエンデコーディングされたデータは、システムキャッシュ２６０に保存することができる。
【００５０】
図６は、図４に示されたメモリインターフェース回路の変形例を示すブロック図である。図４及び図６を参照すれば、メモリインターフェース回路２００ｄは、図４に示されたメモリインターフェース回路２００ｂとその構成及び動作が類似しているので、説明の重複を避けるために、差異点を中心に記述する。
メモリインターフェース回路２００ｄは、図４に示されたメモリインターフェース回路２００ｂに比べて、システムキャッシュ２６０をさらに含む。
システムキャッシュ２６０は、図５で前述したのと同じなので、これについての説明は省略する。
【００５１】
図７は、本発明の実施形態によるマルチプロセッサシステムの動作方法を示すフローチャートである。図８は、本発明の実施形態によるマルチプロセッサシステムの動作方法を説明する図である。特に、図７及び図８は、本発明の実施形態によるマルチプロセッサシステムがダウンリンクデータを処理する方法の一例を示す。図７及び図８の方法は、図１、図３または図４に示されたマルチプロセッサシステム１０、１０ａ、１０ｂによって行われる。
【００５２】
まず、ＣＰ１０１は、ダウンリンクデータの保存位置を指定するための第１アドレスデスクリプタを生成して（ステップＳ１１０）、メモリインターフェース回路２００を通じて、共有メモリ３００に保存することができる（ステップＳ１１５、ステップＳ１２０）。ＣＰ１０１は、第１プロセッサ１１０またはＣＰ  ＳＯＣ１０１に該当する。第１アドレスデスクリプタは、共有メモリ３００内でダウンリンクデータ（例えば、デコーディングされたデータ）の保存位置を指定するためのアドレス情報を含みうる。
【００５３】
例えば、ＣＰ１０１は、第１アドレスデスクリプタを生成して（ステップＳ１１０）、メモリインターフェース回路２００に保存要請を行い（ステップＳ１１５）、これに応答して、メモリインターフェース回路２００は、第１アドレスデスクリプタを共有メモリ３００に保存することができる（ステップＳ１２０）。
【００５４】
実施形態によって、図８に示したように、第１アドレスデスクリプタは、共有メモリ３００の第１プロセッサ用割り当て領域３１０のアドレスデスクリプタ領域３１３に保存することができる（図８のステップＳ１３）。
ＡＰ１０３も、ダウンリンクデータの保存位置を指定するための第２アドレスデスクリプタを生成して（ステップＳ１２５）、メモリインターフェース回路２００を通じて、共有メモリ３００に保存することができる（ステップＳ１３０、ステップＳ１３５）。ＡＰ１０３は、第２プロセッサ１３０またはＡＰ  ＳＯＣ１０３に該当する。
【００５５】
第２アドレスデスクリプタは、共有メモリ３００内でダウンリンクデータ（例えば、解読されたデータ）の保存位置を指定するためのアドレス情報を含みうる。
例えば、ＡＰ１０３は、第２アドレスデスクリプタを生成して（ステップＳ１２５）、メモリインターフェース回路２００に保存要請を行い（ステップＳ１３０）、これに応答して、メモリインターフェース回路２００は、第２アドレスデスクリプタを共有メモリ３００に保存することができる（ステップＳ１３５）。
【００５６】
実施形態によって、図８に示したように、第２アドレスデスクリプタは、共有メモリ３００の第２プロセッサ用割り当て領域３２０のアドレスデスクリプタ領域３２５に保存することができる（図８のステップＳ１１）。
ＣＰ１０１は、無線通信を通じて無線データを受信し、この受信された無線データに復調及びデコーディングして、デコーディングデータを生成する（ステップＳ１４０）。また、ＣＰ１０１は、デコーディングされたデータを用いて既定のフォーマットのパケットデータ（例えば、ＩＰパケットデータ）を生成することができる。
【００５７】
ＣＰ１０１は、デコーディングデータをメモリインターフェース回路２００に伝達して、デコーディングデータの保存を要請することができる（ステップＳ１４５）。
例えば、ＣＰ１０１は、メモリインターフェース回路２００にデコーディングデータの保存要請を行い（ステップＳ１４５）、これに応答して、メモリインターフェース回路２００は、デコーディングデータを共有メモリ３００に保存することができる（ステップＳ１５０）。
【００５８】
実施形態によって、図８に示したように、ＣＰ１０１は、デコーディングデータを含むＩＰパケットデータを生成して、共有メモリ３００の第１プロセッサ用割り当て領域３１０のパケットデータ領域３１５に保存することができる（図８のステップＳ１４）。
メモリインターフェース回路２００が、共有メモリ３００の第１プロセッサ用割り当て領域３１０からデコーディングデータが含まれたパケットデータを読み出して（ステップＳ１５５）、解読する（ステップＳ１６０）。メモリインターフェース回路２００は、また解読されたデータを共有メモリ３００の第２プロセッサ用割り当て領域３２０に保存する（ステップＳ１６５）。
例えば、図８に示したように、メモリインターフェース回路２００は、第２プロセッサ用割り当て領域３２０のアドレスデスクリプタ領域３２５に保存された第２アドレスデスクリプタを参照して、第２プロセッサ用割り当て領域３２０のソケットバッファ３２３に解読されたパケットデータを保存することができる（図８のステップＳ１５）。
【００５９】
第２プロセッサ用割り当て領域３２０のソケットバッファ３２３に解読されたデータが保存されれば、ＡＰ１０３は、メモリインターフェース回路２００に解読されたデータの読み出しを要請し（ステップＳ１７０）、メモリインターフェース回路２００は、この要請に応答して共有メモリ３００から解読されたデータを読み出して（ステップＳ１７５）、ＡＰ１０３に提供することができる（ステップＳ１８０）。ＡＰ１０３は、解読されたデータを処理してユーザに提供することができる（ステップＳ１８５）。
【００６０】
実施形態によって、Ｓ１５段階以前に、ＡＰ１０３は、解読されたパケットデータを保存するためのソケットバッファ構造（ｓｏｃｋｅｔ  ｂｕｆｆｅｒ  ｓｔｒｕｃｔｕｒｅ）を生成して、第２プロセッサ用割り当て領域３２０のＴＣＰ／ＩＰデータ領域３２１に保存することができる。
実施形態によって、第２プロセッサ用割り当て領域３２０のソケットバッファ３２３に解読されたパケットデータが保存されれば、メールボックス（図８の３５０）に完了信号が保存されうる。この場合、メールボックス（図８の３５０）は、ＡＰ１０３にインタラプト信号を発生することができる（図８のステップＳ１６）。例えば、メールボックス３５０は、メモリインターフェース回路（例えば、共有メモリインターフェース回路２００及び／または２００ａ〜２００ｄ）内に含まれる回路であり得る。
そうすると、ＡＰ１０３は、インタラプト信号に応答して共有メモリ３００から解読されたデータを読み出して処理することができる（図８のステップＳ１７）。
【００６１】
実施形態によって、図７または図８に示されたマルチプロセッサシステムの動作方法の各段階の実行順序は変わることもあり、１つ以上の段階が並列に実行することもある。
図９は、本発明の実施形態によるマルチプロセッサシステムの動作方法を示すフローチャートである。図１０は、本発明の実施形態によるマルチプロセッサシステムの動作方法を説明する図である。特に、図９及び図１０は、本発明の実施形態によるマルチプロセッサシステムがアップリンクデータを処理する方法の一例を示す。図９及び図１０の方法は、図１、図３または図４に示されたマルチプロセッサシステム１０、１０ａ、１０ｂによって行われる。
【００６２】
まず、ＡＰ１０３は、アップリンクデータの保存位置を指定するための第３アドレスデスクリプタを生成して（ステップＳ２１０）、メモリインターフェース回路２００を通じて、共有メモリ３００に保存することができる（ステップＳ２１５、ステップＳ２２０）。ＡＰ１０３は、第２プロセッサ１３０またはＡＰ  ＳＯＣ１０３に該当する。第３アドレスデスクリプタは、共有メモリ３００内でアップリンクデータ（例えば、ＡＰから生成されたパケットデータ）の保存位置を指定するためのアドレス情報を含みうる。
例えば、ＡＰ１０３は、第３アドレスデスクリプタを生成して（ステップＳ２１０）、メモリインターフェース回路２００に保存要請を行い（ステップＳ２１５）、これに応答して、メモリインターフェース回路２００は、第３アドレスデスクリプタを共有メモリ３００に保存することができる（ステップＳ２２０）。
【００６３】
実施形態によって、図１０に示したように、第３アドレスデスクリプタは、共有メモリ３００の第２プロセッサ用割り当て領域３２０のアドレスデスクリプタ領域３２５に保存することができる（図１０のステップＳ２１）。
ＣＰ１０１も、アップリンクデータの保存位置を指定するための第４アドレスデスクリプタを生成して（ステップＳ２２５）、メモリインターフェース回路２００を通じて、共有メモリ３００に保存することができる（ステップＳ２３０、ステップＳ２３５）。ＣＰ１０１は、第１プロセッサ１１０またはＣＰ  ＳＯＣ１０１に該当する。
【００６４】
第４アドレスデスクリプタは、共有メモリ３００内でアップリンクデータの保存位置を指定するためのアドレス情報を含みうる。
例えば、ＣＰ１０１は、第４アドレスデスクリプタを生成して（ステップＳ２２５）、メモリインターフェース回路２００に保存要請を行い（ステップＳ２３０）、これに応答して、メモリインターフェース回路２００は、第４アドレスデスクリプタを共有メモリ３００に保存することができる（ステップＳ２３５）。
【００６５】
実施形態によって、図１０に示したように、第４アドレスデスクリプタは、共有メモリ３００の第１プロセッサ用割り当て領域３１０のアドレスデスクリプタ領域３１３に保存することができる（図１０のステップＳ２３）。
ＡＰ１０３は、無線通信を通じて伝送するためのアップリンクデータを生成する（ステップＳ２４０）。また、ＡＰ１０３は、アップリンクデータを含む既定のフォーマットのパケットデータ（例えば、ＩＰパケットデータ）を生成することができる。
【００６６】
ＡＰ１０３は、アップリンクデータをメモリインターフェース回路２００に伝達して、アップリンクデータの保存を要請することができる（ステップＳ２４５）。
例えば、ＡＰ１０３は、メモリインターフェース回路２００にアップリンクデータの保存要請を行い（ステップＳ２４５）、これに応答して、メモリインターフェース回路２００は、アップリンクデータを共有メモリ３００に保存することができる（ステップＳ２５０）。
【００６７】
実施形態によって、図１０に示したように、ＡＰ１０３は、アップリンクデータを含むＩＰパケットデータを生成して、共有メモリ３００の第２プロセッサ用割り当て領域３２０のＴＣＰ／ＩＰデータ領域３２１のソケットバッファ３２３に保存することができる（図１０のステップＳ２２）。
実施形態によって、Ｓ２２段階以前に、ＡＰ１０３は、アップリンクパケットデータを保存するためのソケットバッファ構造を生成して、第２プロセッサ用割り当て領域３２０のＴＣＰ／ＩＰデータ領域３２１に保存することができる。
【００６８】
メモリインターフェース回路２００が、共有メモリ３００の第２プロセッサ用割り当て領域３２０のソケットバッファ３２３からアップリンクデータを読み出して（ステップＳ２５５）、暗号化（ｃｉｐｈｅｒｉｎｇ）する（ステップＳ２６０）。
メモリインターフェース回路２００は、また暗号化されたデータを共有メモリ３００の第１プロセッサ用割り当て領域３１０に保存する（ステップＳ２６５）。
例えば、図１０に示したように、メモリインターフェース回路２００は、第１プロセッサ用割り当て領域３１０のアドレスデスクリプタ領域３１３に保存された第４アドレスデスクリプタを参照して、第１プロセッサ用割り当て領域３１０のパケットデータ領域３１５に暗号化されたアップリンクデータを保存することができる（図１０のステップＳ２５）。
【００６９】
第１プロセッサ用割り当て領域３１０のパケットデータ領域３１５に暗号化されたアップリンクデータが保存されれば、ＣＰ１０１は、メモリインターフェース回路２００に暗号化されたアップリンクデータの読み出しを要請し（ステップＳ２７０）、メモリインターフェース回路２００は、この要請に応答して共有メモリ３００から暗号化されたアップリンクデータを読み出して（ステップＳ２７５）、ＣＰ１０１に提供することができる（ステップＳ２８０）。ＣＰ１０１は、暗号化されたアップリンクデータをエンコーディング及び変調して、無線通信での伝送に適した無線データに変換することができる（ステップＳ２８５）。
【００７０】
実施形態によって、第１プロセッサ用割り当て領域３１０のパケットデータ領域３１５に暗号化されたアップリンクデータが保存されれば、メールボックス（図１０の３５０）に完了信号が保存されうる。この場合、メールボックス（図１０の３５０）は、ＣＰ１０１にインタラプト信号を発生することができる（図１０のステップＳ２６）。
そうすると、ＣＰ１０１は、インタラプト信号に応答して共有メモリ３００から暗号化されたアップリンクデータを読み出して、無線データに変換することができる（図１０のステップＳ２７）。
【００７１】
図１１は、本発明の他の実施形態による電子システムの構成ブロック図である。
これを参照すれば、電子システム４００は、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）またはデータサーバ、ラップトップ（ｌａｐｔｏｐ）コンピュータまたは携帯用装置として具現可能である。携帯用装置は、携帯電話、スマートフォン（ｓｍａｒｔ  ｐｈｏｎｅ）、タブレット（ｔａｂｌｅｔ）ＰＣ、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、ＥＤＡ（Ｅｎｔｅｒｐｒｉｓｅ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、デジタルスチルカメラ（Ｄｉｇｉｔａｌ  Ｓｔｉｌｌ  Ｃａｍｅｒａ）、デジタルビデオカメラ（Ｄｉｇｉｔａｌ  Ｖｉｄｅｏ  Ｃａｍｅｒａ）、ＰＭＰ（Ｐｏｒｔａｂｌｅ  Ｍｕｌｔｉｍｅｄｉａ  Ｐｌａｙｅｒ）、ＰＮＤ（Ｐｅｒｓｏｎａｌ  Ｎａｖｉｇａｔｉｏｎ  ＤｅｖｉｃｅまたはＰｏｒｔａｂｌｅ  Ｎａｖｉｇａｔｉｏｎ  Ｄｅｖｉｃｅ）、携帯用ゲームコンソール（ｈａｎｄｈｅｌｄ  ｇａｍｅ  ｃｏｎｓｏｌｅ）、または電子ブック（ｅ−ｂｏｏｋ）として具現可能である。
【００７２】
電子システム４００は、ＳｏＣ１００、パワーソース４１０、保存装置４２０、メモリ３００、入出力ポート４４０、拡張カード４５０、ネットワーク装置４６０、及びディスプレイ４７０を含む。実施形態によって、電子システム４００は、カメラモジュール４８０をさらに含みうる。
ＳｏＣ１００は、構成要素（ｅｌｅｍｅｎｔｓ）４１０〜４８０のうちの少なくとも１つの動作を制御することができる。ＳｏＣ１００は、図１、図３、または図４に示されたＳｏＣ１００、１００ａ、１００ｂに該当する。
【００７３】
パワーソース４１０は、構成要素１００及び４２０〜４８０のうちの少なくとも１つで動作電圧を供給することができる。
保存装置４２０は、ハードディスクドライブ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）またはＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）として具現可能である。
メモリ３００は、揮発性メモリまたは不揮発性メモリとして具現可能である。
入出力ポート４４０は、電子システム４００にデータを伝送するか、または電子システム４００から出力されたデータを外部装置に伝送しうるポートを意味する。例えば、入出力ポート４４０は、コンピュータマウスのようなポインティング装置（ｐｏｉｎｔｉｎｇ  ｄｅｖｉｃｅ）を接続するためのポート、プリンタを接続するためのポート、またはＵＳＢドライブを接続するためのポートであり得る。
【００７４】
拡張カード４５０は、ＳＤ（Ｓｅｃｕｒｅ  Ｄｉｇｉｔａｌ）カードまたはＭＭＣ（ＭｕｌｔｉＭｅｄｉａ  Ｃａｒｄ）として具現可能である。実施形態によって、拡張カード４５０は、ＳＩＭ（Ｓｕｂｓｃｒｉｂｅｒ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  Ｍｏｄｕｌｅ）カードまたはＵＳＩＭ（Ｕｎｉｖｅｒｓａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｉｄｅｎｔｉｔｙ  Ｍｏｄｕｌｅ）カードであり得る。
ネットワーク装置４６０は、電子システム４００を有線ネットワークまたは無線ネットワークに接続させることができる装置を意味する。
ディスプレイ４７０は、保存装置４２０、メモリ３００、入出力ポート４４０、拡張カード４５０、またはネットワーク装置４６０から出力されたデータをディスプレイすることができる。
【００７５】
カメラモジュール４８０は、光学イメージを電気的なイメージに変換することができるモジュールを意味する。カメラモジュール４８０は、少なくとも１つのレンズと少なくとも１つのイメージセンサーとを含みうる。したがって、カメラモジュール４８０から出力された電気的なイメージは、保存装置４２０、メモリ３００、または拡張カード４５０に保存することができる。また、カメラモジュール４８０から出力された電気的なイメージは、ディスプレイ４７０を通じてディスプレイされうる。
【００７６】
図１２は、本発明の実施形態によるモバイル機器５００を簡略に示す図面である。図１２を参照すれば、モバイル機器５００は、図１のマルチプロセッサシステム１０を含みうる。
モバイル機器５００は、スマートフォン、タブレットＰＣ、ＰＤＡ、ＥＤＡ、またはモバイルインターネット装置（Ｍｏｂｉｌｅ  Ｉｎｔｅｒｎｅｔ  Ｄｅｖｉｃｅ：ＭＩＤ）などとして具現可能であるが、これらに限定されるものではない。
【００７７】
本発明は、図面に示された実施形態を参考にして説明されたが、これは例示的なものに過ぎず、当業者ならば、これより多様な変形及び均等な他実施形態が可能であるという点を理解できるであろう。したがって、本発明の真の技術的保護範囲は、特許請求の範囲の技術的思想によって決定されるべきである。
【産業上の利用可能性】
【００７８】
本発明は、マルチプロセッサによって共有されるメモリを含むマルチプロセッサシステム、及び該システムの動作方法関連の技術分野に適用可能である。
【符号の説明】
【００７９】
１０、１０ａ、１０ｂ：マルチプロセッサシステム
１００、１００ａ、１００ｂ：システム・オン・チップ（ＳｏＣ）
１１０、１３０：プロセッサ
２００、２００ａ、２００ｂ、２００ｃ、２００ｄ：メモリインターフェース回路
３００：共有メモリ
【図１】
2017091543.tif 000003
【図２】
2017091543.tif 000004
【図３】
2017091543.tif 000005
【図４】
2017091543.tif 000006
【図５】
2017091543.tif 000007
【図６】
2017091543.tif 000008
【図７】
2017091543.tif 000009
【図８】
2017091543.tif 000010
【図９】
2017091543.tif 000011
【図１０】
2017091543.tif 000012
【図１１】
2017091543.tif 000013
【図１２】
2017091543.tif 000014