(57)【要約】【課題】  データ処理性能を下げることなく、複数の論理回路がＤＲＡＭブロックを共用できる半導体集積回路装置を提供する。【解決手段】  ＤＲＡＭブロック１４はＤＲＡＭ１４，１５によって構成されている。論理回路１１，１２はアクセス回路２０を介してＤＲＡＭブロック１４に共通にアクセスする。ＤＲＡＭブロック１４の動作クロックは論理回路１１，１２のシステムクロックよりも高い周波数に設定されており、論理回路１１，１２の２０ビット出力Ｄ１，Ｄ２は、６０ビットデータＤＩにシリアル／パラレル変換されてＤＲＡＭブロック１４に書き込まれる。【選択図】  図２
2005258928.tif 000002
【特許請求の範囲】
【請求項１】
複数の論理回路と
ＤＲＡＭブロックと、
前記複数の論理回路から指示を受け、時分割処理によって、前記ＤＲＡＭブロックをアクセスするアクセス回路とを備え、
前記ＤＲＡＭブロックの動作クロックは、前記論理回路の動作クロックよりも、高い周波数に設定されている
ことを特徴とする半導体集積回路装置。
【請求項２】
請求項１において、
前記アクセス回路は、
前記論理回路と前記ＤＲＡＭブロックとの間に設けられ、前記論理回路およびＤＲＡＭブロックからの出力データを受け、そのビット数を変換して出力するシリアル／パラレル変換回路を備えている
ことを特徴とする半導体集積回路装置。
【請求項３】
請求項１において、
前記アクセス回路は、
前記論理回路の出力データを前記ＤＲＡＭブロックに書き込む場合において、当該出力データの書き込み先が書き込みアドレスにおける一部のビットであるとき、残部のビットの書き込みを防ぐライトマスクコマンドを、前記ＤＲＡＭブロックに発行する
ことを特徴とする半導体集積回路装置。
【請求項４】
第１および第２の論理回路を含む複数の論理回路と、
ＤＲＡＭブロックと、
前記複数の論理回路から指示を受け、時分割処理によって、前記ＤＲＡＭブロックをアクセスするアクセス回路とを備え、
前記アクセス回路は、
前記第１の論理回路と前記ＤＲＡＭブロックとの間に設けられ、前記第１の論理回路およびＤＲＡＭブロックからの出力データを受け、そのビット数を変換して出力する第１のシリアル／パラレル変換回路と、
前記第２の論理回路と前記ＤＲＡＭブロックとの間に設けられ、前記第２の論理回路およびＤＲＡＭブロックからの出力データを受け、そのビット数を変換して出力する第２のシリアル／パラレル変換回路とを備え、
前記第１および第２のシリアル／パラレル変換回路は、ビット数を変換する変換率が、互いに異なっている
ことを特徴とする半導体集積回路装置。
【請求項５】
請求項１または４において、
前記ＤＲＡＭブロックは、複数個のＤＲＡＭを備えている
ことを特徴とする半導体集積回路装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数の論理回路と、この複数の論理回路から共通にアクセスされるＤＲＡＭブロックとが搭載された半導体集積回路装置に関するものである。
【背景技術】
【０００２】
従来、システムＬＳＩでは、性能の向上や消費電力の削減を目的として、それぞれの論理回路ブロックに対応したメモリを混載してきた。図６は従来の半導体集積回路装置の一例を示すブロック図である。図６に示すように、高速処理を必要とするデータの格納部としては、数Ｋビット〜数百Ｋビット程度のスタティックランダムアクセスメモリ（以下、「ＳＲＡＭ」と略記する）５１が用いられている。これは、ＳＲＡＭが、ランダムアクセス性能が高く、かつ、データ処理に必要な容量やビット幅を容易に合成できるコンパイラブル性も高いためである。また、高速処理を必要とせず、大容量でかつある限られたパターンのデータの格納部としては、メガビットオーダー以上の汎用ダイナミックランダムアクセスメモリ（以下、「ＤＲＡＭ」と略記する）５２を配置している（例えば、非特許文献１参照）。
【０００３】
また、性能向上や消費電力の削減だけでなく、必要なメモリ容量をある程度最適化できることによるトータルコスト削減などの目的で、汎用ＤＲＡＭとは異なるＤＲＡＭを混載するシステムＬＳＩも増えている（例えば、非特許文献２参照）。
【非特許文献１】Hideo Ohwada他6名  ‘A single-Chip Band-Segmented-Transmission OFDM Demodulator for Digital Terrestrial Television Broadcasting’  2001 IEEE International Solid-State Circuits Conference
【非特許文献２】東芝セミコンダクター社  ‘ＤＲＡＭ混載技術’ [平成１5年9月25日検索]、インターネット  <http://www.semicon.toshiba.co.jp/prd/asic/index.html>
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところが、従来では、次のような問題があった。
【０００５】
図６の構成では、ＳＲＡＭの高いコンパイラブル性を利用して、各論理回路ブロックに対して、必要とするメモリ空間やビット数に合ったＳＲＡＭを１つまたは複数個搭載している。これによって、局所的には、メモリの割り当ての最適化がなされている。しかしながら、個々のＳＲＡＭの容量は小さいため、メモリ全体ではチップに対する比率が高くなりすぎた場合でも、システムＬＳＩの設計者はそのことに気がつきにくい。このため、システムＬＳＩ全体でのメモリ最適化が、必ずしも適切にはなされない場合が多い。
【０００６】
また、システムＬＳＩの高性能化に伴う大規模化にあたり、各回路ブロックの設計が年々、分業化、細分化されてきているため、混載されるメモリ比率が増加しているにもかかわらず、システムＬＳＩ全体でのメモリ最適化がより困難になっている。
【０００７】
また、ＳＲＡＭは、メモリセルが６個のトランジスタによって構成されており、集積性では大容量化には向かない。また、大容量化によるメモリ面積の増大が、ＳＲＡＭの長所である高速性の障害になる。このような問題も、メモリ全体の最適化を困難にしていた。
【０００８】
一方、ＤＲＡＭは、メモリセルが例えば１個のトランジスタと１個のキャパシタによって構成されており、高集積性の面でＳＲＡＭよりも優れている。このため、メモリ全体の最適化のために、ＤＲＡＭの搭載も検討、実現されつつある。
【０００９】
ただし、論理回路毎にＤＲＡＭを設けた場合には、面積オーバーヘッドが増えてしまう、という問題が生じる。このため、ＤＲＡＭブロックはできれば複数の論理回路によって共用できるように構成することが好ましいと考えられるが、ただ単に共用しただけでは、データ転送効率が下がってしまい、ひいてはデータ処理性能が低下するおそれがある。
【００１０】
前記の問題に鑑み、本発明は、データ処理性能を下げることなく、複数の論理回路がＤＲＡＭブロックを共用できる半導体集積回路装置を提供することを課題とする。
【課題を解決するための手段】
【００１１】
本発明は、半導体集積回路装置として、複数の論理回路と、ＤＲＡＭブロックと、前記複数の論理回路から指示を受け、時分割処理によって、前記ＤＲＡＭブロックをアクセスするアクセス回路とを備え、前記ＤＲＡＭブロックの動作クロックは、前記論理回路の動作クロックよりも高い周波数に設定されているものである。
【００１２】
本発明によると、ＤＲＡＭブロックが複数の論理回路によって共用されるので、ＤＲＡＭの高い集積性に加えて、メモリ周辺回路による面積オーバーヘッドの削減により、装置面積をより小さくすることができる。また、アクセス回路が時分割処理によってＤＲＡＭブロックのアクセスを行い、かつ、ＤＲＡＭブロックの動作クロックが論理回路の動作クロックよりも高い周波数に設定されているので、従来と同等以上のデータ転送効率を得ることができ、高いデータ処理性能を実現することができる。
【００１３】
そして、前記本発明に係る半導体集積回路装置におけるアクセス回路は、前記論理回路と前記ＤＲＡＭブロックとの間に設けられ、前記論理回路およびＤＲＡＭブロックからの出力データを受け、そのビット数を変換して出力するシリアル／パラレル変換回路を備えているのが好ましい。
【００１４】
また、前記本発明に係る半導体集積回路装置におけるアクセス回路は、前記論理回路の出力データを前記ＤＲＡＭブロックに書き込む場合において、当該出力データの書き込み先が書き込みアドレスにおける一部のビットであるとき、残部のビットの書き込みを防ぐライトマスクコマンドを、前記ＤＲＡＭブロックに発行するのが好ましい。
【００１５】
また、本発明は、半導体集積回路装置として、第１および第２の論理回路を含む複数の論理回路と、ＤＲＡＭブロックと、前記複数の論理回路から指示を受け、時分割処理によって、前記ＤＲＡＭブロックをアクセスするアクセス回路とを備え、前記アクセス回路は、前記第１の論理回路と前記ＤＲＡＭブロックとの間に設けられ、前記第１の論理回路およびＤＲＡＭブロックからの出力データを受け、そのビット数を変換して出力する第１のシリアル／パラレル変換回路と、前記第２の論理回路と前記ＤＲＡＭブロックとの間に設けられ、前記第２の論理回路およびＤＲＡＭブロックからの出力データを受け、そのビット数を変換して出力する第２のシリアル／パラレル変換回路とを備え、前記第１および第２のシリアル／パラレル変換回路は、ビット数を変換する変換率が互いに異なっているものである。
【００１６】
本発明によると、ＤＲＡＭブロックが複数の論理回路によって共用されるので、ＤＲＡＭの高い集積性に加えて、メモリ周辺回路による面積オーバーヘッドの削減により、装置面積をより小さくすることができる。また、アクセス回路が時分割処理によってＤＲＡＭブロックのアクセスを行い、かつ、論理回路とＤＲＡＭブロックとの間にデータのビット数を変換するシリアル／パラレル変換回路が設けられているので、所望のＩ／Ｏビット数を設定することができる。しかも、第１および第２のシリアル／パラレル変換回路はビット数を変換する変換率が互いに異なっているため、第１および第２の論理回路について、互いに異なるＩ／Ｏビット数を設定できる。したがって、ＤＲＡＭブロックのメモリ空間を無駄なく活用することができ、各論理回路に対して柔軟なデータ領域の割付が可能になる。
【発明の効果】
【００１７】
本発明によると、装置面積をより小さくできるとともに、従来と同等以上のデータ転送効率を得ることができ、高いデータ処理性能を実現することができる。また、ＤＲＡＭブロックのメモリ空間を無駄なく活用することができ、各論理回路に対して柔軟なデータ領域の割付が可能になる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施の形態について、図面を参照して説明する。
【００１９】
図１は本発明の一実施形態に係る半導体集積回路装置の主要構成を示すブロック図である。図１において、半導体集積回路装置１は、それぞれ所定の処理機能を実現する複数の論理回路１１，１２，１３と、２個のＤＲＡＭ１５，１６を有するＤＲＡＭブロック１４と、ＳＲＡＭブロック１７とを備えている。ＤＲＡＭブロック１４は論理回路１１，１２からアクセス回路２０を介してアクセス可能であり、ＳＲＡＭブロック１７は論理回路１３からＩ／Ｆ回路１８を介してアクセス可能である。アクセス回路２０は、ＤＲＡＭブロック１４が論理回路１１，１２で共用可能なように、時分割処理を実行可能に構成されている。ＳＲＡＭブロック１７は、汎用ＤＲＡＭ２とデータのやりとりを実行可能に構成されている。
【００２０】
図２はアクセス回路２０およびＤＲＡＭブロック１４の詳細な構成例を示す。図２において、ＤＲＡＭブロック１４は、メモリ容量１２８Ｋビット、データＩ／Ｏ３２ビットのＤＲＡＭ１５と、メモリ容量１２８Ｋビット、データＩ／Ｏ３２ビットのＤＲＡＭ１６とを用いて、データＩ／Ｏ６０ビット、４０９６ワードのメモリ空間を構成している。すなわち、各アドレスのデータのうち４ビットが未使用になっている。各アドレスの６０ビットのデータのうち、上位３２ビットがＤＲＡＭ１５に格納され、下位２８ビットがＤＲＡＭ１６に格納される。
【００２１】
論理回路１１，１２は、２０ビットのデータＤ１，Ｄ２をそれぞれ出力する。アクセス回路２０において、シリアル／パラレル変換回路２１，２２は、論理回路１１，１２の２０ビットの出力データＤ１，Ｄ２を、６０ビットのデータＤＳＰ１，ＤＳＰ２にそれぞれシリアル／パラレル変換する。そして、メモリインターフェース回路２３は、データＤＳＰ１，ＤＳＰ２をＤＲＡＭブロック１４に入力データＤＩとして供給する。
【００２２】
また、メモリインターフェース回路２３は、ＤＲＡＭブロック１４の出力データＤＯを、シリアル／パラレル変換回路２１，２２にデータＤＳＰ１，ＤＳＰ２として供給する。シリアル／パラレル変換回路２１，２２は６０ビットのデータＤＳＰ１，ＤＳＰ２を２０ビットのデータＤ１，Ｄ２にパラレル／シリアル変換する。このデータＤ１，Ｄ２は論理回路１１，１２に供給される。
【００２３】
そして、本実施形態の特徴の１つは、ＤＲＡＭブロック１４の動作クロックの周波数が、論理回路１１，１２の動作クロックよりも、高く設定されている点である。
【００２４】
図２の構成の動作を、図３のタイミングチャートを参照して、説明する。なお、ここでは、ＤＲＡＭブロック１４の動作クロックは、論理回路１１，１２を動作させるシステムクロックの２倍の周波数に設定されているものとする。
【００２５】
＜データ格納＞
まず時間Ａにおいて、システムクロックに同期して、論理回路１１，１２からシリアル／パラレル変換回路２１，２２に、それぞれ２０ビットデータＤ１Ａ，Ｄ２Ａが転送される。同様に、時間Ｂにおいて２０ビットデータＤ１Ｂ，Ｄ２Ｂが、そして時間Ｃにおいて２０ビットデータＤ１Ｃ，Ｄ２Ｃが、論理回路１１，１２からシリアル／パラレル変換回路２１，２２に、それぞれ転送される。
【００２６】
シリアル／パラレル変換回路２１は、時間Ｃにおいて、それまでに転送された２０ビットデータＤ１Ａ，Ｄ１Ｂ，Ｄ１Ｃを６０ビットデータＤＳＰ１Ｃにシリアル／パラレル変換する。同様に、シリアル／パラレル変換回路２２は、時間Ｃにおいて、それまでに転送された２０ビットデータＤ２Ａ，Ｄ２Ｂ，Ｄ２Ｃを６０ビットデータＤＳＰ２にシリアル／パラレル変換する。
【００２７】
メモリインターフェース回路２３は、６０ビットデータＤＳＰ１Ｃ，ＤＳＰ２Ｃを、２個のＤＲＡＭ１５，１６によって構成されたデータＩ／Ｏ６０ビットのＤＲＡＭブロック１４に、システムクロックの２倍の周波数を持つＤＲＡＭ用クロックに従って、書き込む。すなわち、時間Ｃにおいて、ＷＲＩＴＥコマンドによってまずデータＤＳＰ１ＣをＤＲＡＭブロック１４に書き込み、次のクロックサイクルすなわち時間Ｌにおいて、ＷＲＩＴＥコマンドによって残りのデータＤＳＰ２ＣをＤＲＡＭブロック１４に書き込む。
【００２８】
＜データ取り出し＞
時間Ｄにおいて、メモリインタフェース回路２３はＲＥＡＤコマンドによって、ＤＲＡＭブロック１４に６０ビットのデータＤＳＰ１Ｃの読み出しを指示する。また次のクロックサイクルである時間Ｍにおいて、ＲＥＡＤコマンドによって、ＤＲＡＭブロック１４に６０ビットのデータＤＳＰ２Ｃの読み出しを指示する。これにより、時間ＤにおいてデータＤＳＰ１Ｃが、そして時間ＭにおいてデータＤＳＰ２Ｃが、ＤＲＡＭブロック１４からメモリインターフェース回路２３に転送される。
【００２９】
次に時間Ｅにおいて、メモリインターフェース回路２３は６０ビットデータＤＳＰ１Ｃ，ＤＳＰ２Ｃを、システムクロックに同期するように、シリアル／パラレル変換回路２１，２２にそれぞれ転送する。シリアル／パラレル変換回路２１は６０ビットデータＤＳＰ１Ｃをパラレル／シリアル変換し、システムクロックに同期して時間Ｅ，Ｆ，Ｇにおいて、２０ビットデータＤ１Ａ，Ｄ１Ｂ，Ｄ１Ｃとして順に論理回路１１に転送する。一方、シリアル／パラレル変換回路２２は６０ビットデータＤＳＰ２Ｃをパラレル／シリアル変換し、システムクロックに同期して時間Ｅ，Ｆ，Ｇにおいて、２０ビットデータＤ２Ａ，Ｄ２Ｂ，Ｄ２Ｃとして順に論理回路１２に転送する。
【００３０】
以上のように本実施形態では、ＤＲＡＭブロックを複数の論理回路によって共通に用いるようにし、論理回路とＤＲＡＭブロックとの間に、時分割多重処理を行うアクセス回路を設けている。さらに、ＤＲＡＭ用クロックを、システムクロックよりも高い周波数に設定している。
【００３１】
これにより、まず、チップ面積を大幅に削減することができる。ＤＲＡＭは、単純に集積性の面でもＳＲＡＭよりも優れている。また、メモリの周辺回路部は面積オーバーヘッドとなるため、多数の小容量のメモリに代えて、数十Ｋ〜数百Ｋビット程度の比較的容量が大きいメモリを少数構成することは、面積削減の面で最も有効である。すなわち、従来のように論理回路とＳＲＡＭとを１対１または１対多の関係として構成するよりも、メモリを統合し、論理回路の個数よりも少ないＤＲＡＭブロックを設けた本実施形態の方が、チップ面積をより削減することができる。
【００３２】
図２の構成を、論理回路毎に１個ずつＳＲＡＭを設けた従来の構成と比較すると、シリアル／パラレル変換回路などのオーバーヘッドや４ビット分の未使用メモリ部分を含めても、０．１３ｕｍプロセスを用いた場合、チップ面積を約５０％削減することができた。
【００３３】
また、データ処理性能についても、従来と同等以上のレベルを実現できる。複数の論理回路から共通のＤＲＡＭブロックを効率的に用いるためには、ＤＲＡＭのバンド幅を高くする必要がある。このため本実施形態では、システムクロックよりも周波数の高い動作クロックを用いて、ＤＲＡＭブロック１４を動作させている。また、論理回路とＤＲＡＭブロックとの間にシリアル／パラレス変換回路を設けて、多数のデータＩ／Ｏを利用できるようにしている。すなわち、ＤＲＡＭブロックに対して、高速な周波数で、多ビットのデータＩ／Ｏにより、一括アクセスすることによって、高性能なデータ処理を実現することができる。
【００３４】
一方、消費電力の面については、本実施形態の構成では、ＤＲＡＭを高速動作させることに起因して消費電力が増加する。ところが、システムクロックに同期してＳＲＡＭを用いる構成と比較すると、トランジスタ数がＳＲＡＭの１／６であるＤＲＡＭを用いたことによる低消費電力化によって、消費電力をより低く抑えることができる。
【００３５】
また、時分割処理すべきデータ数がさらに増えたとき、ＤＲＡＭのバンド幅を広げる必要がある。この場合、ＤＲＡＭの動作周波数を高くするか、またはデータＩ／Ｏ数を増やす必要がある。ただし、データＩ／Ｏ数の増加は、メモリ容量から鑑みたワード数とのバランスがくずれて面積が増大してしまったり、データ遅延に関するシステム動作の調整が困難になったりするおそれがある。したがって、ＤＲＡＭの動作周波数を高くする方が、本実施形態では好ましい。
【００３６】
また、ＤＲＡＭブロックを構成するＤＲＡＭの容量に関しては、次のようなことがいえる。ＤＲＡＭの容量が大き過ぎると、例えばメガビットオーダーの容量であると、メモリ空間を効率的に構成することは非常に困難になる。すなわち、図２に示すような未使用の余剰メモリ空間が大きくなる。一方、ＳＲＡＭと比べて面積メリットが生じる程度には、メモリ容量が必要である。したがって、数十Ｋ〜数百Ｋビット程度のキロビットオーダーのＤＲＡＭが好ましい。すなわち、キロビットオーダーのＤＲＡＭであれば、面積も十分小さいために、例えば１００ＭＨｚ以上の高速動作も容易に実現可能であるため、余分なメモリ空間を作らないようなシステム設計が可能になる。
【００３７】
また、ＤＲＡＭは、メモリセルの集積性は高いが、リフレッシュ回路や内部電源回路などの搭載により周辺回路比率が高い、すなわちメモリセル比率（メモリセル面積／ＤＲＡＭ面積）が低いことが欠点である。このため、本実施形態で用いるＤＲＡＭの容量は、キロビットオーダーでは特にＳＲＡＭとの面積分岐点を十分見極めて定めるべきである。これは、コストメリットもさることながら、従来はメモリセルの動作上ＳＲＡＭほど高速にできなかったＤＲＡＭをＳＲＡＭ並みに高速にするためには、チップ面積をＳＲＡＭよりも十分小さくする必要があるためである。例えば、高速性やコストメリットを考慮すると、ＳＲＡＭ面積の１／２以下を実現できる３２ｋ〜２５６ｋビット程度の容量が最適である。
【００３８】
なお、ここでは、ＤＲＡＭブロックを２個の論理回路からアクセスするものとしたが、論理回路の個数は３個以上であってもかまわない。例えば３個の論理回路からアクセスする場合には、ＤＲＡＭの動作クロックをシステムクロックの３倍に高速化したり、ＤＲＡＭのデータＩ／Ｏ数を増やしたりすればよい。また、ＤＲＡＭブロックを２個のＤＲＡＭによって構成したが、ＤＲＡＭブロックの構成はこれに限られるものではなく、１個のＤＲＡＭから構成してもよいし、３個以上のＤＲＡＭから構成してもよい。
【００３９】
＜変形例＞
図４は本実施形態の変形例に係るアクセス回路４０周辺の詳細な構成を示す。図４において、ＤＲＡＭブロック１４は、図２と同様に、メモリ容量１２８Ｋビット、データＩ／Ｏ３２ビットのＤＲＡＭ１５と、メモリ容量１２８Ｋビット、データＩ／Ｏ３２ビットのＤＲＡＭ１６とを用いて、データＩ／Ｏ６０ビット、４０９６ワードのメモリ空間を構成している。すなわち、各アドレスのデータのうち４ビットが未使用になっている。各アドレスの６０ビットのデータのうち、上位３２ビットがＤＲＡＭ１５に格納され、下位２８ビットがＤＲＡＭ１６に格納される。
【００４０】
ただし、図４の構成では、データ領域の割り当て方が図２と異なっている。図４では、論理回路３１には６０ビットのデータ領域ＲＧ１が割り当てられており、また論理回路３２には２０ビットのデータ領域ＲＧ２が、論理回路３３には４０ビットのデータ領域ＲＧ３が、それぞれ割り当てられている。そして、このようなデータ領域の割り当てを実現するために、ビット数を変換する変換率が互いに異なっている第１および第２のシリアル／パラレル変換回路４１，４２が、アクセス回路４０に設けられている。
【００４１】
すなわち、論理回路３１，３２，３３は、２０ビットのデータＤ１，Ｄ２，Ｄ３をそれぞれ出力する。アクセス回路４０において、第１のシリアル／パラレル変換回路４１は、論理回路３１の２０ビットの出力データＤ１を、６０ビットのデータＤＳＰ１にシリアル／パラレル変換する。また、第２のシリアル／パラレル変換回路４２は、論理回路３３の２０ビットの出力データＤ３を、４０ビットのデータＤＳＰ３にシリアル／パラレル変換する。そして、メモリインターフェース回路４３は、データＤＳＰ１，Ｄ２，ＤＳＰ３をＤＲＡＭブロック１４に入力データＤＩとして供給する。
【００４２】
また、メモリインターフェース回路４３は、ＤＲＡＭブロック１４の出力データＤＯを、シリアル／パラレル変換回路４１にデータＤＳＰ１として供給する。シリアル／パラレル変換回路４１は６０ビットのデータＤＳＰ１を２０ビットのデータＤ１にパラレル／シリアル変換し、論理回路３１に供給する。メモリインターフェース回路４３はまた、データＤＯの上位２０ビットを、データＤ２として論理回路３２に供給するとともに、下位４０ビットを、シリアル／パラレル変換回路４２にデータＤＳＰ３として供給する。シリアル／パラレル変換回路４２は４０ビットのデータＤＳＰ３を２０ビットのデータＤ１にパラレル／シリアル変換し、論理回路３３に供給する。
【００４３】
本変形例の特徴の１つは、ＤＲＡＭブロック１４へのデータ書き込みの際に、ライトマスク機能を用いる点である。すなわち、論理回路３２の出力データＤ２を書き込む際には、データＩ／Ｏ６０ビットのうち領域ＲＧ２に関係のない下位４０ビットをライトマスクし、一方、論理回路３３の出力データＤ３を書き込む際には、データＩ／Ｏ６０ビットのうち領域ＲＧ３に関係のない上位２０ビットをライトマスクする。ライトマスクは、書き込みを禁止するビットを指定したライトマスクコマンドをＤＲＡＭブロック１４に発行することによって行う。
【００４４】
図４の構成の動作を、図５のタイミングチャートを参照して、説明する。ここでも、ＤＲＡＭブロック１４の動作クロックは、論理回路３１〜３３を動作させるシステムクロックの２倍の周波数に限定されているものとする。
【００４５】
＜データ格納＞
まず時間Ａにおいて、システムクロックに同期して、論理回路３１〜３３からそれぞれ、２０ビットデータＤ１Ａ，Ｄ２Ａ，Ｄ３Ａがアクセス回路４０に転送される。このとき、論理回路３２の出力データＤ２Ａは、メモリインターフェース回路４３によって、ＤＲＡＭ用クロックに同期して、ＤＲＡＭブロック１４の２０ビット幅のデータ領域ＲＧ２に一括して書き込まれる。このとき、下位４０ビットのＩ／Ｏの書き込みを防ぐライトマスクコマンド信号ＢＷもＤＲＡＭブロック１４に出力される。一方、論理回路３１，３３の出力データＤ１Ａ，Ｄ３Ａは、シリアル／パラレル変換回路４１，４２にそれぞれ格納される。
【００４６】
時間Ｂにおいて、論理回路３１，３３からそれぞれ、２０ビットデータＤ１Ｂ，Ｄ３Ｂがアクセス回路４０に転送される。このとき、データＤ１Ｂはシリアル／パラレル変換回路４１に格納されるが、データＤ３Ｂはシリアル／パラレル変換回路４２に格納された後データＤ３Ａと合わせてシリアル／パラレル変換され、４０ビットデータＤＳＰ３Ｃとして、ＤＲＡＭブロック１４の４０ビット幅のデータ領域ＲＧ３に書き込まれる。このとき、上位２０ビットのＩ／Ｏの書き込みを防ぐライトマスクコマンド信号ＢＷもＤＲＡＭブロック１４に出力される。
【００４７】
時間Ｃにおいて、論理回路３１から２０ビットデータＤ１Ｃがアクセス回路４０に転送され、このデータＤ１Ｃはシリアル／パラレル変換回路４１に格納された後データＤ１Ａ，Ｄ１Ｂと合わせてシリアル／パラレル変換され、６０ビットデータＤＳＰ１Ｃとして、ＤＲＡＭブロック１４の６０ビット幅のデータ領域ＲＧ１に書き込まれる。
【００４８】
＜データ取り出し＞
時間Ｌにおいて、メモリインタフェース回路４３はＲＥＡＤコマンドによって、ＤＲＡＭブロック１４に６０ビットのデータＤＳＰ１Ｃの読み出しを指示する。また次のクロックサイクルである時間Ｄにおいて、ＲＥＡＤコマンドによって、ＤＲＡＭブロック１４に６０ビットのデータＤＳＰ２３Ｃの読み出しを指示する。これにより、時間ＤにおいてデータＤＳＰ１Ｃが、そして時間ＭにおいてデータＤＳＰ２３Ｃが、ＤＲＡＭブロック１４からメモリインターフェース回路４３に転送される。
【００４９】
次に時間Ｅにおいて、メモリインターフェース回路４３は６０ビットデータＤＳＰ１Ｃを、システムクロックに同期するように、シリアル／パラレル変換回路４１に転送する。また、６０ビットデータＤＳＰ２３Ｃを２０ビットデータＤ２Ａと４０ビットデータＤＳＰ３Ｃとに分割し、データＤ２Ａは論理回路３２に、データＤＳＰ３Ｃはシリアル／パラレル変換回路４２に、それぞれ転送する。
【００５０】
シリアル／パラレル変換回路４１は６０ビットデータＤＳＰ１Ｃをパラレル／シリアル変換し、システムクロックに同期して時間Ｅ，Ｆ，Ｇにおいて、２０ビットデータＤ１Ａ，Ｄ１Ｂ，Ｄ１Ｃとして順に論理回路３１に転送する。シリアル／パラレル変換回路４２は４０ビットデータＤＳＰ３Ｃをパラレル／シリアル変換し、システムクロックに同期して時間Ｅ，Ｆにおいて、２０ビットデータＤ３Ａ，Ｄ３Ｂとして順に論理回路３２に転送する。
【００５１】
以上のように本変形例では、シリアル／パラレル変換回路の変換率を、各論理回路が用いるデータ領域に応じて設定し、また、ライトマスク機能を利用して、他の論理回路が用いるデータを保護している。これにより、多数の論理回路からアクセスする場合であっても、データ転送性能をおとすことなく、ＤＲＡＭブロックのメモリ空間を無駄なく用いることができる。すなわち、各論理回路に対して柔軟なデータ領域の割付が、容易に実現できる。
【００５２】
なお、ここでは、ＤＲＡＭブロックを３個の論理回路からアクセスするものとしたが、論理回路の個数は３個以外であってもかまわない。また、ＤＲＡＭブロックを２個のＤＲＡＭによって構成したが、ＤＲＡＭブロックの構成はこれに限られるものではなく、１個のＤＲＡＭから構成してもよいし、３個以上のＤＲＡＭから構成してもよい。
【産業上の利用可能性】
【００５３】
本発明によると、論理回路とメモリブロックとを有する半導体集積回路装置の面積を大幅に削減することができるので、例えばシステムＬＳＩのチップ面積削減によるコストダウンや、性能向上に有効である。
【図面の簡単な説明】
【００５４】
【図１】本発明の一実施形態に係る半導体集積回路装置の構成図である。
【図２】図１のアクセス回路周辺の構成の詳細を示す図である。
【図３】図１および図２の構成の動作を示すタイミングチャートである。
【図４】本発明の一実施形態の変形例におけるアクセス回路周辺の構成の詳細を示す図である。
【図５】図４の構成の動作を示すタイミングチャートである。
【図６】従来の半導体集積回路装置の構成を示すブロック図である。
【符号の説明】
【００５５】
１１，１２，１３  論理回路
１４  ＤＲＡＭブロック
１５，１６  ＤＲＡＭ
２０  アクセス回路
２１，２２  シリアル／パラレル変換回路
２３  メモリインターフェース回路
３１，３２，３３  論理回路
４０  アクセス回路
４１  第１のシリアル／パラレル変換回路
４２  第２のシリアル／パラレル変換回路
【図１】
2005258928.tif 000003
【図２】
2005258928.tif 000004
【図３】
2005258928.tif 000005
【図４】
2005258928.tif 000006
【図５】
2005258928.tif 000007
【図６】
2005258928.tif 000008
【手続補正書】
【提出日】平成17年3月11日(2005.3.11)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００２６
【補正方法】変更
【補正の内容】
【００２６】
シリアル／パラレル変換回路２１は、時間Ｃにおいて、それまでに転送された２０ビットデータＤ１Ａ，Ｄ１Ｂ，Ｄ１Ｃを６０ビットデータＤＳＰ１Ｃにシリアル／パラレル変換する。同様に、シリアル／パラレル変換回路２２は、時間Ｃにおいて、それまでに転送された２０ビットデータＤ２Ａ，Ｄ２Ｂ，Ｄ２Ｃを６０ビットデータＤＳＰ２Ｃにシリアル／パラレル変換する。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００４２
【補正方法】変更
【補正の内容】
【００４２】
また、メモリインターフェース回路４３は、ＤＲＡＭブロック１４の出力データＤＯを、シリアル／パラレル変換回路４１にデータＤＳＰ１として供給する。シリアル／パラレル変換回路４１は６０ビットのデータＤＳＰ１を２０ビットのデータＤ１にパラレル／シリアル変換し、論理回路３１に供給する。メモリインターフェース回路４３はまた、データＤＯの上位２０ビットを、データＤ２として論理回路３２に供給するとともに、下位４０ビットを、シリアル／パラレル変換回路４２にデータＤＳＰ３として供給する。シリアル／パラレル変換回路４２は４０ビットのデータＤＳＰ３を２０ビットのデータＤ３にパラレル／シリアル変換し、論理回路３３に供給する。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００４８
【補正方法】変更
【補正の内容】
【００４８】
＜データ取り出し＞
時間Ｌにおいて、メモリインタフェース回路４３はＲＥＡＤコマンドによって、ＤＲＡＭブロック１４に６０ビットのデータＤＳＰ１Ｃの読み出しを指示する。また次のクロックサイクルである時間Ｄにおいて、ＲＥＡＤコマンドによって、ＤＲＡＭブロック１４に６０ビットのデータＤＳＰ２３Ｃの読み出しを指示する。これにより、時間ＬにおいてデータＤＳＰ１Ｃが、そして時間ＤにおいてデータＤＳＰ２３Ｃが、ＤＲＡＭブロック１４からメモリインターフェース回路４３に転送される。