JP2004127245A - Semiconductor integrated circuit device - Google Patents
Semiconductor integrated circuit device Download PDFInfo
- Publication number
- JP2004127245A JP2004127245A JP2003150889A JP2003150889A JP2004127245A JP 2004127245 A JP2004127245 A JP 2004127245A JP 2003150889 A JP2003150889 A JP 2003150889A JP 2003150889 A JP2003150889 A JP 2003150889A JP 2004127245 A JP2004127245 A JP 2004127245A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- circuit device
- integrated circuit
- semiconductor integrated
- processing unit
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
Description
【0001】
【発明の属する技術分野】
本発明は、複数の内部メモリと、各々データ処理のための複数の処理ユニットとを有し、かつ外部処理ユニットに接続されて動作する半導体集積回路装置に関するものである。
【0002】
【従来の技術】
第1の従来技術には、複数の通信コントローラからのDMA転送要求に対して競合制御をなす共有メモリ装置において、あるメモリバンクが使用中でも他のメモリバンクにはアクセスを可能にし、以て各通信コントローラが共有メモリアクセスで待たされる頻度を減らす技術が開示されている(特許文献1参照)。
【0003】
第2の従来技術には、マルチバンクメモリ混載マルチプロセッサシステムLSIにおいて、各プロセッサと各メモリバンクとをフレキシブルに接続するための技術が開示されている(特許文献2参照)。
【0004】
第3の従来技術には、メモリを構成する各メモリバンクに対するアクセスの調停をメモリバンクごとに行うことにより、各メモリバンクに対して同時にアクセスすることができるようにしたプリンタ装置が開示されている(特許文献3参照)。
【0005】
第4の従来技術には、複数個のリソースが単一のメモリを共用し、かつ並列にノーウェイト・アクセスが可能なマイクロプロセッサが開示されている(特許文献4参照)。
【0006】
【特許文献1】
特開平10−27131号公報
【特許文献2】
特開平10−260952号公報
【特許文献3】
特開2000−99391号公報
【特許文献4】
特開2001−43180号公報
【0007】
【発明が解決しようとする課題】
さて、複数の内部メモリと、各々データ処理のための複数の処理ユニットとを有し、かつ外部処理ユニットに接続されて動作する半導体集積回路装置では、各処理ユニットへのメモリ配分が肝要である。
【0008】
本発明の目的は、アプリケーションに応じた合目的的なメモリ配分を実現できるようにすることにある。
【0009】
【課題を解決するための手段】
上記目的を達成するため、本発明は、外部処理ユニットに接続されて動作する半導体集積回路装置において、複数の内部メモリと、各々データ処理のための第1及び第2処理ユニットと、前記第1処理ユニット、前記第2処理ユニット及び前記外部処理ユニットへのアプリケーションに応じた前記複数の内部メモリの割り当てを制御するためのメモリコンフィグレーション制御部とを備えた構成を採用することとしたものである。
【0010】
本発明によれば、アプリケーションに応じた合目的的なメモリ配分を実現できる。例えば、複数の内部メモリを第1処理ユニット、第2処理ユニット及び外部処理ユニットの三者それぞれに配分したり、複数の内部メモリの全てを第1又は第2処理ユニットに占有させたりすることができる。また、複数の内部メモリの全てを外部処理ユニットに占有させることも可能である。最後の例では、当該半導体集積回路装置が外部処理ユニットのための単なるメモリ装置として動作することとなる。
【0011】
【発明の実施の形態】
以下、本発明の実施の形態について、図面を参照しながら説明する。
【0012】
図1は、本発明に係る半導体集積回路装置の内部構成例とその外部接続例を示している。図1の半導体集積回路装置10は、画像処理用であって、外部処理ユニットであるCPU11と、画像入力のためのカメラ12と、画像表示のための液晶ディスプレイ(LCD)13と、SDRAMからなる外部メモリ14とに接続されて動作するものである。外部メモリ14の最大記憶容量は、例えば256Mbit(メガビット)である。
【0013】
図1の半導体集積回路装置10は、SRAM0〜3からなる複数の内部メモリ20〜23と、MPEG−4に準拠したコーデック(エンコード/デコード)機能を有する画像データ処理のための第1処理ユニットであるメインプロセッサ(MP)24と、ビデオ(Video)表示系の処理を司る画像データ処理のための第2処理ユニットであるビデオインターフェース(VIF)25及びグラフィックスプロセッサ(GFX)26と、ホストインターフェース(HIF)27と、非同期シリアルインターフェース(UART)28とを備えている。内部メモリ20〜23の各々の記憶容量は、例えば2Mbit又は4Mbitである。ビデオインターフェース25はカメラ12及び液晶ディスプレイ13に、ホストインターフェース27及び非同期シリアルインターフェース28はCPU11にそれぞれ接続される。
【0014】
図1の半導体集積回路装置10は、メモリコンフィグレーション制御部31を有するメモリ制御部30を更に備えている。メモリコンフィグレーション制御部31は、メインプロセッサ24、ビデオインターフェース25及びグラフィックスプロセッサ26、CPU11の各々へのアプリケーションに応じたメモリ配分を制御するものである。メインプロセッサ24は、内部メモリ20〜23及び外部メモリ14のうち当該メインプロセッサ24に割り当てられたメモリをワーク(Work)領域として使用する。ビデオインターフェース25及びグラフィックスプロセッサ26は、内部メモリ20〜23及び外部メモリ14のうち当該ビデオインターフェース25及びグラフィックスプロセッサ26に割り当てられたメモリを、一般にフレームメモリと呼ばれるフレーム(Frame)領域として使用する。CPU11は、内部メモリ20〜23及び外部メモリ14のうち当該CPU11に割り当てられたメモリをCPU領域として使用する。
【0015】
メモリ制御部30は、第1メモリインターフェースであるワーク領域メモリインターフェース(WMIF)32と、第2メモリインターフェースであるフレーム領域メモリインターフェース(FMIF)33と、第3メモリインターフェースであるCPU領域メモリインターフェース(CPUIF)34とを更に有する。これに対応して図1の半導体集積回路装置10には、WMバス(第1データバス)40と、FMバス(第2データバス)41と、CPU11専用のCPUバス(第3データバス)42とが設けられている。WMIF32は、メインプロセッサ24に割り当てられたワーク領域とWMバス40との間に介在してDMAデータ転送要求の調停・制御を行う。FMIF33は、ビデオインターフェース25及びグラフィックスプロセッサ26に割り当てられたフレーム領域とFMバス41との間に介在してDMAデータ転送要求の調停・制御を行う。CPUIF34は、CPU領域とCPUバス42との間に介在してデータ転送を司るインターフェースである。以上のとおり、ワーク領域に割り当てられたメモリはWMIF32を介して、フレーム領域に割り当てられたメモリはFMIF33を介して、CPU領域に割り当てられたメモリはCPUIF34を介してそれぞれアクセスされるようになっている。なお、グラフィックスプロセッサ26とホストインターフェース27との間にはホストバス43が設けられている。また、メインプロセッサ24は、ホストインターフェース27に接続されたローカルバス44を有している。
【0016】
メインプロセッサ24は、MP用バスセレクタ50を介してWMバス40又はFMバス41のいずれかに接続可能であり、かつ複数のローカルメモリ(DM1、DM2及びDM3)51〜53と、複数のハードウェアエンジン(ENG)54とをローカルバス44上に備えている。各ハードウェアエンジン54は、MPEG画像データのエンコード/デコードのための部分処理コアである。ビデオインターフェース25は、VIF用バスセレクタ55を介してWMバス40又はFMバス41のいずれかに接続可能である。グラフィックスプロセッサ26は、WMバス40及びFMバス41のうちFMバス41のみに接続可能である。ホストインターフェース27は、HIF用バスセレクタ60を介してWMバス40又はFMバス41のいずれかに接続可能である。また、ホストインターフェース27は、CPUバス42及びCPUIF用バスセレクタ61を介して、CPUIF34又はFMバス41のいずれかに接続可能である。非同期シリアルインターフェース28は、UART用バスセレクタ62を介してWMバス40又はFMバス41のいずれかに接続可能である。
【0017】
メインプロセッサ24は、ローカルメモリ51〜53とワーク領域との間のMP用バスセレクタ50、WMバス40及びWMIF32を介したDMAデータ転送と、ローカルメモリ51〜53とフレーム領域との間のMP用バスセレクタ50、FMバス41及びFMIF33を介したDMAデータ転送とを命令することができる。また、メインプロセッサ24は、ホストインターフェース27に内蔵されたホストメモリとワーク領域との間のHIF用バスセレクタ60、WMバス40及びWMIF32を介したDMAデータ転送と、ホストインターフェース27に内蔵されたホストメモリとフレーム領域との間のHIF用バスセレクタ60、FMバス41及びFMIF33を介したDMAデータ転送とを命令することができる。更に、メインプロセッサ24は、非同期シリアルインターフェース28に内蔵されたFIFOメモリとワーク領域との間のUART用バスセレクタ62、WMバス40及びWMIF32を介したDMAデータ転送と、非同期シリアルインターフェース28に内蔵されたFIFOメモリとフレーム領域との間のUART用バスセレクタ62、FMバス41及びFMIF33を介したDMAデータ転送とを命令することができる。ローカルメモリ51〜53とワーク領域との間のDMAデータ転送と、ホストインターフェース27に内蔵されたホストメモリ又は非同期シリアルインターフェース28に内蔵されたFIFOメモリとフレーム領域との間のDMAデータ転送とは、並列実行可能である。また、ローカルメモリ51〜53とフレーム領域との間のDMAデータ転送と、ホストインターフェース27に内蔵されたホストメモリ又は非同期シリアルインターフェース28に内蔵されたFIFOメモリとワーク領域との間のDMAデータ転送とは、並列実行可能である。
【0018】
更に、メインプロセッサ24は、ビデオインターフェース25の内蔵メモリとワーク領域との間のVIF用バスセレクタ55、WMバス40及びWMIF32を介したDMAデータ転送と、ビデオインターフェース25の内蔵メモリとフレーム領域との間のVIF用バスセレクタ55、FMバス41及びFMIF33を介したDMAデータ転送とを命令することができる。また、メインプロセッサ24は、グラフィックスプロセッサ26の内蔵メモリとフレーム領域との間のFMバス41及びFMIF33を介したDMAデータ転送を命令することもできる。メインプロセッサ24のローカルメモリ51〜53とワーク領域との間のDMAデータ転送と、ビデオインターフェース25又はグラフィックスプロセッサ26の内蔵メモリとフレーム領域との間のDMAデータ転送とは、並列実行可能である。また、メインプロセッサ24のローカルメモリ51〜53とフレーム領域との間のDMAデータ転送と、ビデオインターフェース25又はグラフィックスプロセッサ26の内蔵メモリとワーク領域との間のDMAデータ転送とは、並列実行可能である。メインプロセッサ24は、例えばビデオインターフェース25のためのDMAデータ転送が行われている間に、ローカルメモリ51〜53を用いてデータ処理を進めることもできる。
【0019】
CPU11には、パラレルデータ用に3つのメモリアクセス経路が用意されている。第1は、ホストインターフェース27経由のアクセスであって、例えばCPU11からの書き込みはホストインターフェース27に内蔵されたホストメモリに対してなされる。これに応答して、メインプロセッサ24は、ホストメモリとワーク領域又はフレーム領域との間のDMAデータ転送を命令する。これにより、CPU11は、例えばフレーム領域の一部へのグラフィックスデータの書き込みを達成することができる。第2はCPU11がホストメモリを経由せずにCPU領域をアクセスする場合の経路であって、CPU11からホストインターフェース27、CPUバス42、CPUIF用バスセレクタ61及びCPUIF34を経てCPU領域へ至る経路である。第3は、CPU11がホストメモリを経由せずにフレーム領域をアクセスする場合の経路であって、CPU11からホストインターフェース27、CPUバス42、CPUIF用バスセレクタ61、FMバス41及びFMIF33を経てフレーム領域へ至る経路である。第2の経路が選択される場合には、CPU11によりメモリの相対アドレス指定がなされる。また、第1又は第3の経路によるDMAデータ転送が選択される場合には、CPU11によりメモリの絶対アドレス指定がなされ、かつ他の(ビデオインターフェース25、グラフィックスプロセッサ26等の)DMAデータ転送要求との調停がなされる。なお、CPU11のDMA優先順位は、グラフィックスプロセッサ26の次に低く設定しておくのがよい。
【0020】
図2は、図1中のメモリコンフィグレーション制御部31の詳細構成例を示している。メモリコンフィグレーション制御部31は設定部70を有し、この設定部70は、各メモリの用途を指定するための第1レジスタ71と、各メモリの記憶容量を指定するための第2レジスタ72とを備えており、これらのレジスタ71,72に従って、WMIF32、FMIF33及びCPUIF34からのアクセス信号をリードライト制御部73が各メモリへ振り分ける。なお、第1及び第2レジスタ71,72は、メインプロセッサ24及びCPU11の各々により任意に設定できるようになっている。
【0021】
図3は、図1の半導体集積回路装置10のアプリケーションに応じた動作モード毎のメモリ配分の例を示している。ここでは、4個の内部メモリ20〜23の各々が2Mbitの記憶容量を有するものとする。つまり、内部メモリ20〜23の総容量が8Mbitである。メモリコンフィグレーション制御部31は、これらの限られたメモリ資源を有効に活用するために重要な役割を担っている。例えば動作モードAでは、内部メモリ20〜23の全てをメインプロセッサ24が占有する。動作モードBでは、内部メモリ20〜23の総容量のうち6Mbitがメインプロセッサ24に、2Mbitがビデオインターフェース25及びグラフィックスプロセッサ26にそれぞれ配分される。動作モードCでは、内部メモリ20〜23の総容量のうち4Mbitがメインプロセッサ24に、4Mbitがビデオインターフェース25及びグラフィックスプロセッサ26にそれぞれ配分される。動作モードDでは、内部メモリ20〜23の総容量のうち4Mbitがメインプロセッサ24に、2Mbitがビデオインターフェース25及びグラフィックスプロセッサ26に、2MbitがCPU11にそれぞれ配分される。動作モードEでは、内部メモリ20〜23の総容量のうち4Mbitがビデオインターフェース25及びグラフィックスプロセッサ26に、4MbitがCPU11にそれぞれ配分される。動作モードFでは、内部メモリ20〜23の全てをビデオインターフェース25及びグラフィックスプロセッサ26が占有する。動作モードGでは、内部メモリ20〜23の全てをCPU11が占有する。最後の動作モードGでは、メインプロセッサ24、ビデオインターフェース25及びグラフィックスプロセッサ26の各々の本来の機能が停止され、当該半導体集積回路装置10がCPU11のための単なるメモリ装置として動作することとなる。以上のとおり、メモリコンフィグレーション制御部31により、アプリケーションに応じた合目的的なメモリ配分を実現できる。なお、メインプロセッサ24によるMPEG−4処理と、ビデオインターフェース25及びグラフィックスプロセッサ26によるビデオ表示系処理と、CPU11による処理とは、互いに並列動作可能である。
【0022】
図4(a)は10ビット構成の第1レジスタ71の例を、図4(b)は同レジスタの最下位2ビットの意味をそれぞれ示している。内部メモリ20〜23の1つであるSRAM0に割り当てられた第1レジスタ71のビット1,0が“00”ならばSRAM0がワーク領域として、“01”ならばSRAM0がフレーム領域として、“10”ならばSRAM0がCPU領域としてそれぞれ使用される。SRAM0に例えば欠陥があるため当該SRAM0が使用されない場合には、第1レジスタ71のビット1,0に“11”を設定すればよい。この場合にはSRAM0への電源供給が停止され、かつ当該SRAM0へのアドレスの割り振りがなされないようにすることができる。同様に、第1レジスタ71のビット3,2はSRAM1の、ビット5,4はSRAM2の、ビット7,6はSRAM3の、ビット9,8はSDRAMからなる外部メモリ14のそれぞれの用途を指定する。なお、第1レジスタ71の内容を適宜書き換えれば、WMバス40、FMバス41及びCPUバス42の間のデータ転送を達成することができる。例えば、第1レジスタ71のビット3,2を“00(ワーク領域)”から“01(フレーム領域)”に変更すれば、WMバス40を介して内部メモリ20〜23の1つであるSRAM1に書き込んだデータを、FMバス41へ読み出すことができる。
【0023】
第1レジスタ71は、DMA予約を行っていないメモリに関しては動作途中で変更することができるが、DMA予約を行っておりかつアクセス中又はアクセスする可能性のあるメモリについては第1レジスタ71の内容を変更できないようにしておくのがよい。第1レジスタ71の変更は、基本的にメインプロセッサ24のソフトウェアの責任のもとに行われる。
【0024】
図5(a)は各メモリの記憶容量を指定するための6ビット構成の第2レジスタ72の例を、図5(b)は同レジスタ72の最下位ビットの意味を、図5(c)は同レジスタ72の最上位2ビットの意味をそれぞれ示している。内部メモリ20〜23の1つであるSRAM0に割り当てられた第2レジスタ72のビット0が“0”ならばSRAM0が2Mbitの記憶容量を、“1”ならばSRAM0が4Mbitの記憶容量をそれぞれ有する。同様に、第2レジスタ72のビット1はSRAM1の、ビット2はSRAM2の、ビット3はSRAM3のそれぞれの記憶容量を指定する。また、SDRAMからなる外部メモリ14に割り当てられた第2レジスタ72のビット5,4が“01”ならば同SDRAMが64Mbitの記憶容量を、“10”ならば同SDRAMが128Mbitの記憶容量を、“11”ならば同SDRAMが256Mbitの記憶容量をそれぞれ有する。何らかの理由で外部メモリ14が使用されない場合には、第2レジスタ72のビット5,4に“00”を設定すればよい。なお、第2レジスタ72の内容は、当該半導体集積回路装置10の起動時に決定されるようになっている。
【0025】
図6(a)は図1の半導体集積回路装置10においてCPU11に割り当てられたメモリに絶対アドレス指定を行う例を、図6(b)はCPU11に割り当てられたメモリに相対アドレス指定を行う例をそれぞれ示している。ここでは、内部メモリ20〜23の各々の記憶容量が2Mbitであり、外部メモリ14の記憶容量が128Mbitであって、内部メモリ20〜23のうちのSRAM0及びSRAM1がいずれもワーク領域に、内部メモリ20〜23のうちのSRAM2及びSRAM3がいずれもCPU領域に、外部メモリ14がフレーム領域にそれぞれ指定されたものとしている。両図によれば、例えばメインプロセッサ24から見れば、ワーク領域、フレーム領域、CPU領域を問わず、1つの連続したアドレス空間として各メモリにアドレスが割り振られている。一方、外部のCPU11から見えるCPU領域のアドレスマップは、図6(a)の絶対アドレス又は図6(b)の相対アドレスのいずれかが選択可能である。図6(b)の相対アドレス指定によれば、CPU領域が常にアドレス0からマップされるので、CPU11の負担が軽減される。
【0026】
図7は、図1の半導体集積回路装置10を画像プロセッサとして利用した携帯通信端末(例えば携帯電話機)の構成例を示している。図7の携帯通信端末は、当該画像プロセッサ10と、前述のCPU11、カメラ12、液晶ディスプレイ13及びSDRAM14とに加えて、ベースバンド部81と、オーディオプロセッサ83と、メモリ88とを備えている。画像プロセッサ10、CPU11、ベースバンド部81、オーディオプロセッサ83及びメモリ88は、メインバス80を介して互いに接続されている。更に、画像プロセッサ10内の非同期シリアルインターフェース28が当該画像プロセッサ10とCPU11との間のシリアル通信を可能にしている点は、前述のとおりである(図1参照)。
【0027】
ベースバンド部81は、アンテナ82を介して多重化ストリームを送受信する。オーディオプロセッサ83には、デジタル−アナログ変換器(DAC)84を介してスピーカ85が、またマイク86がアナログ−デジタル変換器(ADC)87を介してそれぞれ接続されている。例えば、ベースバンド部81が多重化ストリームを受信した場合には、この多重化ストリームをCPU11がオーディオストリームと画像ストリームとに分離し、オーディオストリームがメインバス80を介してオーディオプロセッサ83へ、画像ストリームがシリアル通信にて画像プロセッサ10へそれぞれ供給される。そして、オーディオストリームのデコード処理をオーディオプロセッサ83が行い、スピーカ85からオーディオ出力が得られる。一方、画像プロセッサ10は、画像ストリームをデコードし、このデコードにより得られた画像データをワーク領域に格納しながら、液晶ディスプレイ13へと出力する。
【0028】
図7の携帯通信端末はIOバス90を更に備えており、このIOバス90に複数のインターフェース91が接続されている。これら複数のインターフェース91のうちの1つにキーパッド92が接続されている。CPU11は、キーパッド92からの入力を受け付けると、この入力に対応したグラフィックスデータを、画像プロセッサ10内のCPUIF34経由でCPU領域へ直接書き込む。画像プロセッサ10は、CPU11又はメインプロセッサ24からの指示に従い、CPU領域をフレーム領域へ、フレーム領域をCPU領域へとメモリコンフィグレーションを変更し、フレーム領域内のグラフィックスデータとワーク領域内の画像データとを合成して、その結果を液晶ディスプレイ13へ出力する。
【0029】
画像プロセッサ10は、カメラ12から入力された画像にMPEGエンコード処理を施し、非同期シリアルインターフェース28を介して当該処理の結果をCPU11へ出力することができる。あるいは、カメラ12で取り込んでワーク領域に格納された画像をCPU11がJPEGエンコード処理する際は、CPU11又はメインプロセッサ24からの指示に従い、ワーク領域がCPU領域へとメモリコンフィグレーションが変更されて、CPU領域から静止画データがCPU11により直接読み出される。
【0030】
以上のとおり、図1の半導体集積回路装置10は画像処理用として携帯通信端末に好適に利用される。
【0031】
【発明の効果】
以上説明してきたとおり、本発明によれば、外部処理ユニットに接続されて動作する半導体集積回路装置において、複数の内部メモリと、各々データ処理のための第1及び第2処理ユニットと、前記第1処理ユニット、前記第2処理ユニット及び前記外部処理ユニットへのアプリケーションに応じた前記複数の内部メモリの割り当てを制御するためのメモリコンフィグレーション制御部とを備えた構成を採用することとしたので、合目的的なメモリ配分を実現できる。
【図面の簡単な説明】
【図1】本発明に係る半導体集積回路装置の内部構成例とその外部接続例を示すブロック図である。
【図2】図1中のメモリコンフィグレーション制御部の詳細構成例を示すブロック図である。
【図3】図1の半導体集積回路装置のアプリケーションに応じた動作モード毎のメモリ配分の例を示す図である。
【図4】(a)は図1の半導体集積回路装置における各メモリの用途を指定するための第1レジスタの例を、(b)は同レジスタの最下位2ビットの意味をそれぞれ示す図である。
【図5】(a)は図1の半導体集積回路装置における各メモリの記憶容量を指定するための第2レジスタの例を、(b)は同レジスタの最下位ビットの意味を、(c)は同レジスタの最上位2ビットの意味をそれぞれ示す図である。
【図6】(a)は図1の半導体集積回路装置において外部のCPUに割り当てられたメモリに絶対アドレス指定を行う例を、(b)は外部のCPUに割り当てられたメモリに相対アドレス指定を行う例をそれぞれ示す図である。
【図7】図1の半導体集積回路装置を画像プロセッサとして利用した携帯通信端末の構成例を示すブロック図である。
【符号の説明】
10 半導体集積回路装置(画像プロセッサ)
11 CPU(外部処理ユニット)
12 カメラ
13 液晶ディスプレイ(LCD)
14 外部メモリ(SDRAM)
20〜23 内部メモリ(SRAM0〜3)
24 メインプロセッサ(MP:第1処理ユニット)
25 ビデオインターフェース(VIF:第2処理ユニット)
26 グラフィックスプロセッサ(GFX:第2処理ユニット)
27 ホストインターフェース(HIF)
28 非同期シリアルインターフェース(UART)
30 メモリ制御部
31 メモリコンフィグレーション制御部
32 WMIF(第1メモリインターフェース)
33 FMIF(第2メモリインターフェース)
34 CPUIF(第3メモリインターフェース)
40 WMバス(第1データバス)
41 FMバス(第2データバス)
42 CPUバス(第3データバス)
43 ホストバス
44 MP用ローカルバス
50 MP用バスセレクタ(第1バスセレクタ)
51〜53 MP用ローカルメモリ
54 MP用ハードウェアエンジン
55 VIF用バスセレクタ(第2バスセレクタ)
60 HIF用バスセレクタ(第3バスセレクタ)
61 CPUIF用バスセレクタ(第4バスセレクタ)
62 UART用バスセレクタ
70 設定部
71 第1レジスタ
72 第2レジスタ
73 リードライト制御部
80 メインバス
81 ベースバンド部
83 オーディオプロセッサ[0001]
TECHNICAL FIELD OF THE INVENTION
The present invention relates to a semiconductor integrated circuit device having a plurality of internal memories and a plurality of processing units for data processing, respectively, and operating while being connected to an external processing unit.
[0002]
[Prior art]
According to a first conventional technique, in a shared memory device that performs contention control in response to a DMA transfer request from a plurality of communication controllers, even when a certain memory bank is in use, other memory banks can be accessed, thereby enabling each communication bank to communicate. A technique for reducing the frequency of waiting for a controller to access a shared memory has been disclosed (see Patent Document 1).
[0003]
A second conventional technique discloses a technique for flexibly connecting each processor and each memory bank in a multi-bank memory mixed multiprocessor system LSI (see Patent Document 2).
[0004]
A third prior art discloses a printer device in which access to each memory bank constituting a memory is arbitrated for each memory bank so that each memory bank can be accessed simultaneously. (See Patent Document 3).
[0005]
A fourth prior art discloses a microprocessor in which a plurality of resources share a single memory and can perform no-wait access in parallel (see Patent Document 4).
[0006]
[Patent Document 1]
JP-A-10-27131
[Patent Document 2]
JP-A-10-260952
[Patent Document 3]
JP-A-2000-99391
[Patent Document 4]
JP 2001-43180 A
[0007]
[Problems to be solved by the invention]
Now, in a semiconductor integrated circuit device having a plurality of internal memories and a plurality of processing units each for data processing and operating while being connected to an external processing unit, it is important to allocate memory to each processing unit. .
[0008]
SUMMARY OF THE INVENTION An object of the present invention is to enable a suitable memory allocation according to an application.
[0009]
[Means for Solving the Problems]
In order to achieve the above object, the present invention relates to a semiconductor integrated circuit device which operates while being connected to an external processing unit, comprising: a plurality of internal memories; first and second processing units each for data processing; A configuration including a processing unit, a memory configuration control unit for controlling allocation of the plurality of internal memories according to an application to the second processing unit and the external processing unit is adopted. .
[0010]
ADVANTAGE OF THE INVENTION According to this invention, the suitable memory distribution according to an application can be implement | achieved. For example, a plurality of internal memories may be allocated to each of the first processing unit, the second processing unit, and the external processing unit, or all of the plurality of internal memories may be occupied by the first or second processing unit. it can. Further, it is also possible to occupy all of the plurality of internal memories in the external processing unit. In the last example, the semiconductor integrated circuit device operates as a mere memory device for an external processing unit.
[0011]
BEST MODE FOR CARRYING OUT THE INVENTION
Hereinafter, embodiments of the present invention will be described with reference to the drawings.
[0012]
FIG. 1 shows an example of the internal configuration of a semiconductor integrated circuit device according to the present invention and an example of its external connection. The semiconductor integrated
[0013]
The semiconductor integrated
[0014]
The semiconductor integrated
[0015]
The
[0016]
The
[0017]
The
[0018]
Further, the
[0019]
The
[0020]
FIG. 2 shows a detailed configuration example of the memory
[0021]
FIG. 3 shows an example of memory allocation for each operation mode according to the application of the semiconductor integrated
[0022]
FIG. 4A shows an example of the first register 71 having a 10-bit configuration, and FIG. 4B shows the meaning of the least significant two bits of the register. If the
[0023]
The first register 71 can be changed during the operation of a memory for which a DMA reservation has not been made, but the contents of the first register 71 for a memory which has made a DMA reservation and is being accessed or may be accessed. Should not be changed. The change of the first register 71 is basically performed under the responsibility of software of the
[0024]
FIG. 5A shows an example of a 6-bit
[0025]
FIG. 6A shows an example in which an absolute address is specified in the memory assigned to the
[0026]
FIG. 7 shows a configuration example of a mobile communication terminal (for example, a mobile phone) using the semiconductor integrated
[0027]
The
[0028]
The mobile communication terminal in FIG. 7 further includes an
[0029]
The
[0030]
As described above, the semiconductor integrated
[0031]
【The invention's effect】
As described above, according to the present invention, in a semiconductor integrated circuit device operating by being connected to an external processing unit, a plurality of internal memories, first and second processing units for data processing respectively, One processing unit, the second processing unit, and a memory configuration control unit for controlling the allocation of the plurality of internal memories according to the application to the external processing unit, and a configuration including a memory configuration control unit, A purposeful memory allocation can be realized.
[Brief description of the drawings]
FIG. 1 is a block diagram showing an example of an internal configuration of a semiconductor integrated circuit device according to the present invention and an example of its external connection.
FIG. 2 is a block diagram illustrating a detailed configuration example of a memory configuration control unit in FIG. 1;
FIG. 3 is a diagram showing an example of memory allocation for each operation mode according to an application of the semiconductor integrated circuit device of FIG. 1;
4A is a diagram showing an example of a first register for designating the use of each memory in the semiconductor integrated circuit device of FIG. 1, and FIG. 4B is a diagram showing the meaning of the least significant 2 bits of the register; is there.
5A shows an example of a second register for specifying the storage capacity of each memory in the semiconductor integrated circuit device of FIG. 1, FIG. 5B shows the meaning of the least significant bit of the register, and FIG. FIG. 3 is a diagram showing the meaning of the two most significant bits of the register.
6A shows an example in which an absolute address is specified in a memory allocated to an external CPU in the semiconductor integrated circuit device of FIG. 1, and FIG. 6B shows a case in which a relative address is specified in a memory allocated to the external CPU; It is a figure which shows the example performed each.
FIG. 7 is a block diagram illustrating a configuration example of a portable communication terminal using the semiconductor integrated circuit device of FIG. 1 as an image processor.
[Explanation of symbols]
10 Semiconductor integrated circuit device (image processor)
11 CPU (external processing unit)
12 Camera
13. Liquid Crystal Display (LCD)
14. External memory (SDRAM)
20-23 Internal memory (SRAM0-3)
24 Main Processor (MP: First Processing Unit)
25 Video interface (VIF: 2nd processing unit)
26 Graphics Processor (GFX: Second Processing Unit)
27 Host Interface (HIF)
28 Asynchronous serial interface (UART)
30 Memory control unit
31 Memory configuration controller
32 WMIF (first memory interface)
33 FMIF (second memory interface)
34 CPUIF (third memory interface)
40 WM bus (first data bus)
41 FM bus (second data bus)
42 CPU bus (third data bus)
43 Host Bus
44 Local bus for MP
50 MP bus selector (first bus selector)
51-53 MP local memory
54 MP Hardware Engine
55 VIF bus selector (second bus selector)
60 HIF bus selector (third bus selector)
61 CPU IF bus selector (4th bus selector)
62 UART Bus Selector
70 Setting section
71 1st register
72 Second register
73 Read / write control unit
80 Main Bus
81 Baseband section
83 audio processor
Claims (12)
複数の内部メモリと、
各々データ処理のための第1及び第2処理ユニットと、
前記第1処理ユニット、前記第2処理ユニット及び前記外部処理ユニットへのアプリケーションに応じた前記複数の内部メモリの割り当てを制御するためのメモリコンフィグレーション制御部とを備えたことを特徴とする半導体集積回路装置。A semiconductor integrated circuit device that operates by being connected to an external processing unit,
Multiple internal memories,
First and second processing units each for data processing;
A semiconductor configuration comprising: a memory configuration control unit configured to control allocation of the plurality of internal memories to the first processing unit, the second processing unit, and the external processing unit according to an application. Circuit device.
前記第1処理ユニットに接続された第1データバスと、
前記第2処理ユニットに接続された第2データバスと、
前記外部処理ユニット専用の第3データバスと、
前記第1処理ユニットに割り当てられたメモリと前記第1データバスとの間に介在してDMAデータ転送を司る第1メモリインターフェースと、
前記第2処理ユニットに割り当てられたメモリと前記第2データバスとの間に介在してDMAデータ転送を司る第2メモリインターフェースと、
前記外部処理ユニットに割り当てられたメモリと前記第3データバスとの間に介在してデータ転送を司る第3メモリインターフェースとを更に備えたことを特徴とする半導体集積回路装置。The semiconductor integrated circuit device according to claim 1,
A first data bus connected to the first processing unit;
A second data bus connected to the second processing unit;
A third data bus dedicated to the external processing unit;
A first memory interface interposed between the memory allocated to the first processing unit and the first data bus to control DMA data transfer;
A second memory interface interposed between the memory allocated to the second processing unit and the second data bus to manage DMA data transfer;
A semiconductor integrated circuit device, further comprising a third memory interface interposed between the memory assigned to the external processing unit and the third data bus to control data transfer.
前記メモリコンフィグレーション制御部は、前記第1処理ユニット、前記第2処理ユニット及び前記外部処理ユニットへのアプリケーションに応じた外部メモリの割り当てを制御する機能を更に有することを特徴とする半導体集積回路装置。The semiconductor integrated circuit device according to claim 1,
A semiconductor integrated circuit device, wherein the memory configuration control unit further has a function of controlling allocation of an external memory to the first processing unit, the second processing unit, and the external processing unit according to an application. .
前記メモリコンフィグレーション制御部は、前記複数の内部メモリ及び前記外部メモリの割り当てを指定するための第1レジスタを有し、
前記第1レジスタの内容を書き換えることにより前記第1〜第3データバス間のデータ転送が達成されるように構成されたことを特徴とする半導体集積回路装置。The semiconductor integrated circuit device according to claim 3,
The memory configuration control unit has a first register for specifying the allocation of the plurality of internal memories and the external memory,
A semiconductor integrated circuit device configured to achieve data transfer between the first to third data buses by rewriting the contents of the first register.
前記第1レジスタは、前記複数の内部メモリ及び前記外部メモリのうちのいずれかが使用されないことを指定できるように構成されたことを特徴とする半導体集積回路装置。The semiconductor integrated circuit device according to claim 4,
The semiconductor integrated circuit device according to claim 1, wherein the first register is configured to specify that any one of the plurality of internal memories and the external memory is not used.
前記メモリコンフィグレーション制御部は、前記複数の内部メモリ及び前記外部メモリの各々の記憶容量を指定するための第2レジスタを有することを特徴とする半導体集積回路装置。The semiconductor integrated circuit device according to claim 3,
The semiconductor integrated circuit device, wherein the memory configuration control unit has a second register for specifying a storage capacity of each of the plurality of internal memories and the external memory.
前記第1処理ユニットと前記第1又は第2データバスとの選択的な接続を制御するための第1バスセレクタと、
前記第2処理ユニットと前記第1又は第2データバスとの選択的な接続を制御するための第2バスセレクタとを更に備えたことを特徴とする半導体集積回路装置。3. The semiconductor integrated circuit device according to claim 2,
A first bus selector for controlling a selective connection between the first processing unit and the first or second data bus;
A semiconductor integrated circuit device further comprising a second bus selector for controlling selective connection between the second processing unit and the first or second data bus.
前記第1処理ユニットはローカルメモリを有し、
前記第1処理ユニットに割り当てられたメモリと前記ローカルメモリとの間のDMAデータ転送が行えるように構成されたことを特徴とする半導体集積回路装置。3. The semiconductor integrated circuit device according to claim 2,
The first processing unit has a local memory;
A semiconductor integrated circuit device configured to perform DMA data transfer between a memory allocated to the first processing unit and the local memory.
前記外部処理ユニットと前記第3データバスとの間に介在したホストインターフェースと、
前記ホストインターフェースと前記第1又は第2データバスとの選択的な接続を制御するための第3バスセレクタとを更に備えたことを特徴とする半導体集積回路装置。3. The semiconductor integrated circuit device according to claim 2,
A host interface interposed between the external processing unit and the third data bus;
A semiconductor integrated circuit device further comprising a third bus selector for controlling selective connection between the host interface and the first or second data bus.
前記第3データバスと前記第3メモリインターフェース又は前記第2データバスとの選択的な接続を制御するための第4バスセレクタを更に備えたことを特徴とする半導体集積回路装置。3. The semiconductor integrated circuit device according to claim 2,
A semiconductor integrated circuit device further comprising a fourth bus selector for controlling a selective connection between the third data bus and the third memory interface or the second data bus.
前記第4バスセレクタが前記第3データバスと前記第3メモリインターフェースとの接続を選択する場合には相対アドレスを、前記第4バスセレクタが前記第3データバスと前記第2データバスとの接続を選択する場合には絶対アドレスをそれぞれ前記外部処理ユニットから受け取るように構成されたことを特徴とする半導体集積回路装置。The semiconductor integrated circuit device according to claim 10,
When the fourth bus selector selects the connection between the third data bus and the third memory interface, the fourth bus selector selects the connection between the third data bus and the second data bus. A semiconductor integrated circuit device configured to receive an absolute address from each of the external processing units.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2003150889A JP2004127245A (en) | 2002-08-07 | 2003-05-28 | Semiconductor integrated circuit device |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002229452 | 2002-08-07 | ||
JP2003150889A JP2004127245A (en) | 2002-08-07 | 2003-05-28 | Semiconductor integrated circuit device |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006161895A Division JP4376876B2 (en) | 2002-08-07 | 2006-06-12 | Semiconductor integrated circuit device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2004127245A true JP2004127245A (en) | 2004-04-22 |
Family
ID=32300876
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003150889A Pending JP2004127245A (en) | 2002-08-07 | 2003-05-28 | Semiconductor integrated circuit device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2004127245A (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007058276A (en) * | 2005-08-22 | 2007-03-08 | Shinsedai Kk | Multiprocessor |
JP2007157075A (en) * | 2005-12-08 | 2007-06-21 | Mitsubishi Electric Corp | Information storage device |
JP2009069978A (en) * | 2007-09-11 | 2009-04-02 | Sanyo Electric Co Ltd | Data processing circuit |
JP2010152585A (en) * | 2008-12-25 | 2010-07-08 | Fujitsu Semiconductor Ltd | System lsi with a plurality of buses |
US7908453B2 (en) | 2004-06-30 | 2011-03-15 | Fujitsu Semiconductor Limited | Semiconductor device having a dynamically reconfigurable circuit configuration |
-
2003
- 2003-05-28 JP JP2003150889A patent/JP2004127245A/en active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7908453B2 (en) | 2004-06-30 | 2011-03-15 | Fujitsu Semiconductor Limited | Semiconductor device having a dynamically reconfigurable circuit configuration |
JP2007058276A (en) * | 2005-08-22 | 2007-03-08 | Shinsedai Kk | Multiprocessor |
JP2007157075A (en) * | 2005-12-08 | 2007-06-21 | Mitsubishi Electric Corp | Information storage device |
JP2009069978A (en) * | 2007-09-11 | 2009-04-02 | Sanyo Electric Co Ltd | Data processing circuit |
JP2010152585A (en) * | 2008-12-25 | 2010-07-08 | Fujitsu Semiconductor Ltd | System lsi with a plurality of buses |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7533196B2 (en) | Semiconductor integrated circuit device | |
US20050146529A1 (en) | Scalable unified memory architecture | |
JP4511638B2 (en) | Computer system controller with internal memory and external memory control | |
US20030088743A1 (en) | Mobile wireless communication device architectures and methods therefor | |
US7313641B2 (en) | Inter-processor communication system for communication between processors | |
JPH09505424A (en) | Bus interface with graphical and system paths for integrated memory system | |
EP1058891A1 (en) | Multi-processor system with shared memory | |
WO2001037088A2 (en) | Programmable multi-tasking memory management system | |
US20090254715A1 (en) | Variable partitioned blocks in shared memory | |
WO2002071239A2 (en) | Data processing apparatus and system and method for controlling memory access | |
KR20110122516A (en) | Interconnect, bus system having interconnect and operating method of bus system | |
US20020171649A1 (en) | Computer system controller having internal memory and external memory control | |
US8200911B2 (en) | Device having shared memory and method for controlling shared memory | |
JP2004127245A (en) | Semiconductor integrated circuit device | |
JP3467382B2 (en) | High speed processor | |
KR100489719B1 (en) | A specialized memory device | |
JP4376876B2 (en) | Semiconductor integrated circuit device | |
US6138188A (en) | Buffer management device and method for improving buffer usage and access performance in data processing system | |
JP2002073526A (en) | Memory access system | |
JPH0883237A (en) | Data processor | |
JPH07271654A (en) | Controller | |
JP3910165B2 (en) | High speed processor | |
WO2001067271A1 (en) | Information processing device | |
JPH0784963A (en) | Semiconductor integrated circuit with cpu | |
JPH05158859A (en) | Information processor |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Effective date: 20050902 Free format text: JAPANESE INTERMEDIATE CODE: A971007 |
|
A131 | Notification of reasons for refusal |
Effective date: 20050913 Free format text: JAPANESE INTERMEDIATE CODE: A131 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051114 |
|
A02 | Decision of refusal |
Effective date: 20060411 Free format text: JAPANESE INTERMEDIATE CODE: A02 |