Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP4328334B2 - 半導体集積回路装置 - Google Patents
[go: Go Back, main page]

JP4328334B2 - 半導体集積回路装置 - Google Patents

半導体集積回路装置 Download PDF

Info

Publication number
JP4328334B2
JP4328334B2 JP2006068400A JP2006068400A JP4328334B2 JP 4328334 B2 JP4328334 B2 JP 4328334B2 JP 2006068400 A JP2006068400 A JP 2006068400A JP 2006068400 A JP2006068400 A JP 2006068400A JP 4328334 B2 JP4328334 B2 JP 4328334B2
Authority
JP
Japan
Prior art keywords
functional block
system clock
internal memory
clock
semiconductor integrated
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.)
Expired - Fee Related
Application number
JP2006068400A
Other languages
English (en)
Other versions
JP2007249308A (ja
Inventor
秀吉 志村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2006068400A priority Critical patent/JP4328334B2/ja
Priority to US11/684,897 priority patent/US7757062B2/en
Publication of JP2007249308A publication Critical patent/JP2007249308A/ja
Application granted granted Critical
Publication of JP4328334B2 publication Critical patent/JP4328334B2/ja
Priority to US12/758,207 priority patent/US8086814B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/22Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management 
    • G11C7/225Clock input buffers

Landscapes

  • Semiconductor Integrated Circuits (AREA)
  • Microcomputers (AREA)
  • Power Sources (AREA)

Description

本発明は、多様な機能を搭載する半導体集積回路装置に関し、特に、Adaptive Voltage Scaling技術を用いた低消費電力化に適したシステムLSI(Large Scale Integration)内の機能ブロック間でのデータの転送に関する。
3年に4倍という半導体の集積度向上というペースがここ10年以上続いたために半導体集積回路の規模は膨大になり、半導体集積回路のチップ構成の仕方も大きく変化を遂げてきた。
図15は、システムLSIの構成を示すブロック図である。
図15において、半導体集積回路装置10は、汎用のCPU11、DSP(Digital Signal Processor)12、専用回路13(専用回路<1>)、専用回路14(専用回路<2>)、SDRAM(Synchronous Dynamic RAM)アクセス)制御回路15、及びDMA(Direct Memory Access)コントローラ16などから構成されており、これらは共通のバス17を介して相互に接続されている。CPU11及びDSP12は、それぞれ内部に内部メモリ11a及び内部メモリ12aを有する。この半導体集積回路装置10は、通常外部に大容量のSDRAM18を用意し、Unified Memory構成をとって使用される。
現在でも半導体集積回路に搭載される機能に対する要求は日々めまぐるしく変わる可能性があり、図15のように一部の機能を専用回路<1>、専用回路<2>のように構成してしまうと、このような要望の変化に迅速に対応できない可能性がある。
そのため、現状の段階では図16のように、汎用CPU以外の演算機能を中心とする機能に対しては[多機能DSP+拡張機能]という構成にして、変化する可能性がある仕様に対しては多機能DSP上のソフトで対応するようになりつつある。
図16は、システムLSIの別の構成を示すブロック図である。図15と同一構成部材には同一符号を付している。
図16において、半導体集積回路装置20は、汎用のCPU11、多機能DSP21(多機能DSP<1>)及び拡張機能22(拡張機能<1>)からなる演算機能部23、多機能DSP24(多機能DSP<2>)及び拡張機能25(拡張機能<2>)からなる演算機能部26、SDRAM制御回路15、DMAコントローラ16、各機能部側に配置されたローカルバス27〜29、SDRAM制御回路15及びDMAコントローラ16側に配置されたグローバルバス30、及びローカルバス27〜29とグローバルバス30とを接続するバスブリッジ31〜33を備えて構成される。多機能DSP21(多機能DSP<1>)は、内部メモリ21aを有する。バス構成も各機能部にはローカルバス27〜29が割り当てられ、SDRAM制御回路15側にはグローバルバス30が配置され、ローカルバス27〜29とグローバルバス30の間はバスブリッジ31〜33が置かれている。
今後半導体プロセスの進歩により、ますます多くの機能が半導体集積回路に搭載されるようになると、半導体集積回路装置の構成はさらに図17ように変化するであろう。
図17は、システムLSIのさらに別の構成を示すブロック図である。図16と同一構成部材には同一符号を付している。
図17において、半導体集積回路装置40は、1つの汎用のCPU11、内部メモリ41a〜44aを有する数個(ここでは4個)の汎用演算プロセッサ41〜44、SDRAM制御回路15、DMAコントローラ16、周辺I/O群60を制御するI/O制御回路45、CPU11及びI/O制御回路45側に配置されたローカルバス46、汎用演算プロセッサ41〜44側に配置されたローカルバス47〜50、ローカルバス46とローカルバス47〜50との間に配置されたグローバルバス51、ローカルバス47〜50とグローバルバス51とを接続するバスブリッジ52〜55、及びローカルバス46とグローバルバス51とを接続するバスブリッジ56を備えて構成される。
このように、この半導体集積回路装置40は、1つの汎用CPU11と数個(4個から8個程度)の汎用演算プロセッサ41〜44がローカルバス46〜50、グローバルバス51とバスブリッジ52〜56を介して接続され、外部には大容量のSDRAM18を配置し、SDRAM制御回路15は、汎用CPU11、数個の汎用演算プロセッサ41〜44、DMAコントローラ16などとSDRAM18の調停を行う。
上述したように半導体集積回路装置の集積度が上がってくると、最も深刻な問題として動作時及びスタンバイ時の増大する消費電力の問題がある。この問題の解決策として最も注目を浴びている技術として、Dynamic Voltage Scaling(DVS)又はAdaptive Voltage Scaling技術がある。これらの技術に関する内容に関しては以下の文献(例えば、特許文献1,2及び非特許文献1,2)に詳細に述べられているので、説明は省略する。
米国特許第5745375号明細書 米国特許第6868503号明細書 "A Combined Hardware-Software Approach for Low-Power SoC:Applying Adaptive Voltage Scaling and Intelligent Energy Management Software",Design 2003(System-on-Chip and ASIC Design Conference) "An H.264/MPEG-4 Audio/Visual Codec LSI with Module-Wise Dynamic Voltage/Frequency Scaling" , ISSCC2005 Dig. Tech. Papers, pp.132-133
しかしながら、このような従来の半導体集積回路装置にあっては、以下のような問題点があった。
上記非特許文献1によると、Adaptive Voltage Scaling技術には、現状において大きな制限事項がある。現状のAdaptive Voltage Scaling技術では、チップ全体に対してこの技術を採用することを前提にしている。この場合ではチップ全体が同時に電源電圧とそれに対応したシステムクロック周波数を変えるようになっている。つまり、このシステムにおいて、チップの電源電圧、そしてシステムクロック周波数は時間軸で変化して、仕事の付加量が大きいときにはチップの電源電圧を高くし(例えば、VDD=1.5Volt)、そしてシステムクロック周波数も高くする(例えば、fclk=400MHz)ように、CPUが制御する。また、仕事の負荷量が小さくなるとチップの電源電圧を低くし(例えば、VDD=1.0Volt)、そしてシステムクロック周波数も低くする(例えば、fclk=200MHz)ように、CPUが制御する。こうすることにより、このチップで消費される消費電力を少なくすることができる。
但し、このシステムは現実的ではない。上述したように、通常システムLSIにはビデオ信号処理ブロック、オーディオ信号処理ブロック、制御信号処理ブロックなど各種の機能ブロックが存在して、しかも、これらの機能ブロック間ではその処理に必要とされる仕事の負荷量に大きな差がある。
この問題に対して課題解決を試みようとしている先行技術に、上記非特許文献2がある。ここでは、オーディオ信号処理ブロックの電源電圧は0.9V/1.2V、システムクロック周波数は90MHz/180MHzから選択できるようにするが、オーディオ信号処理ブロック以外のブロック(ここにはビデオ信号処理ブロックなどが存在する)に対しては、電源電圧は1.2V、システムクロック周波数は180MHzに固定している。
オーディオ信号処理ブロックの電源電圧、システムクロック周波数をCPUからのソフト制御で自由に切り換えられるようにするため、dynamic de-skewing system(DDS)の導入を試みている。つまり、オーディオ信号処理ブロックの電源電圧は0.9V/1.2V、間で変えることにより、システムクロック周波数は90MHz/180MHzにスキューが発生するため、このスキュー対策としてdynamic de-skewing system(DDS)を導入しているのである。しかし、先行技術に上記非特許文献2で想定している環境は、Adaptive Voltage Scaling技術を今後の低消費電力化に有効に利用しようとする観点から程遠いものである。
図17で想定しているような半導体集積回路装置40において、各機能ブロックが自由に電源電圧、システムクロック周波数を時間軸において変えて、しかも、相互にデータを交換できるようにするにはどのようにしたらよいのであろうか、現在有効な方法は提案されていない。
本発明は、かかる点に鑑みてなされたものであり、半導体集積回路上の各機能ブロックが自由に電源電圧、システムクロック周波数を時間軸において変えて、しかも、相互にデータを交換できる半導体集積回路装置を提供することを目的とする。
本発明の半導体集積回路装置は、第1のシステムクロックを発生するPLL回路で構成した第1のクロック発生回路と、前記第1のシステムクロックによりデータを読み出し/書き込みする第1の内部メモリと、第1の選択回路とを有する第1の機能ブロックと、第2のシステムクロックを発生するPLL回路で構成した第2のクロック発生回路と、前記第2のシステムクロックによりデータを読み出し/書き込みする第2の内部メモリと、第2の選択回路とを有する第2の機能ブロックとを備え、前記第1の内部メモリは、前記第2の機能ブロックの仕事に対応する動作電圧、動作周波数、及び前記第1のクロック発生回路の出力信号の分周比率を動作プログラムの形で記憶し、前記第2の内部メモリは、前記第1の機能ブロックの仕事に対応する動作電圧、動作周波数、及び前記第2のクロック発生回路の出力信号の分周比率を動作プログラムの形で記憶し、前記第1の機能ブロック内のデータを前記第2の内部メモリに対して読み出し/書き込みする場合には、前記第1の機能ブロックは、前記第1の内部メモリから前記動作プログラムを読み出して実行し、前記第2の選択回路は、前記第1のシステムクロックと前記第2のシステムクロックのうち、前記第1のシステムクロックを前記第2の内部メモリを動作させるクロックとして選択し、前記第1の機能ブロック及び前記第2の内部メモリは、共に前記第1のシステムクロックで動作することで同期を取り、前記第2の機能ブロック内のデータを前記第1の内部メモリに対して読み出し/書き込みする場合には、前記第2の機能ブロックは、前記第2の内部メモリから前記動作プログラムを読み出して実行し、前記第1の選択回路は、前記第1のシステムクロックと前記第2のシステムクロックのうち、前記第2のシステムクロックを前記第1の内部メモリを動作させるクロックとして選択し、前記第2の機能ブロック及び前記第1の内部メモリは、共に前記第2のシステムクロックで動作することで同期を取る、構成を採る。
前記第1のシステムクロックの周波数は、前記第1の演算機能ブロックの演算処理量に依存して決定され、前記第2のシステムクロックの周波数は、前記第2の演算機能ブロックの演算処理量に依存して決定されるものであってもよい。
前記第1のシステムクロックの周波数と前記第2のシステムクロックの周波数は、無相関であってもよい。
前記第1のクロック発生回路は、外部から供給されたシステムクロックを基に、前記第1の演算機能ブロックの時間軸に依存して変化する演算処理量を処理するに必要な周波数のシステムクロックを生成し、前記第2のクロック発生回路は、外部から供給されたシステムクロックを基に、前記第2の演算機能ブロックの時間軸に依存して変化する演算処理量を処理するに必要な周波数のシステムクロックを生成するものであってもよい。
前記制御機能ブロックは、汎用CPUであり、前記第1及び第2の演算機能ブロックは、多機能DSPであってもよい。
前記第1及び第2の内部メモリは、レジスタ・ファイル又はキャシュ・メモリであってもよい。
前記制御機能ブロックは、システムクロックを発生するクロック発生回路と、前記システムクロックによりデータを読み出し/書き込みする内部メモリと、前記制御機能ブロックの指令により前記制御機能ブロックの前記内部メモリの内容を、前記第1の演算機能ブロックの前記第1の内部メモリにデータを読み出し/書き込みする場合には、前記制御機能ブロックのシステムクロックを前記第1の演算機能ブロックの前記第1の内部メモリを動作させるクロックとして選択する選択回路と、を備える
前記制御機能ブロックは、システムクロックを発生するクロック発生回路と、前記システムクロックによりデータを読み出し/書き込みする内部メモリと、前記制御機能ブロックの指令により前記第1の演算機能ブロックの前記第1の内部メモリの内容を前記制御機能ブロックの内部メモリにデータを読み出し/書き込みする場合には、前記第1の演算機能ブロックの第1のシステムクロックを前記制御機能ブロックの内部メモリを動作させるクロックとして選択する選択回路と、を備える
本発明によれば、第1の機能ブロックとデータを読み書きする第2の機能ブロック内にある第2の内部メモリは共に、第1の機能ブロック内にある回路に支給される第1のシステムクロックで動作するようになるので、第1の機能ブロックと第2の機能ブロック内にある第2の内部メモリは完全に同期が取れるようになる。したがって、各々の機能ブロックがDynamic Voltage Scaling技術やAdaptive Voltage Scaling技術をそれぞれの機能ブロックの負荷量に応じて自由に電源電圧とシステムクロック周波数を変えても、機能ブロック間でデータを相互に転送することが可能である。これにより、本システムLSIは、Dynamic Voltage Scaling技術やAdaptive Voltage Scaling技術を最大限に活用して低消費電力化を図ることができる。
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
(実施の形態1)
図1は、本発明の実施の形態1に係る半導体集積回路装置の構成を示す回路ブロック図である。本実施の形態は、半導体集積回路装置における機能ブロックを第1の機能ブロックと第2の機能ブロックに限定した場合で説明する。第1の機能ブロックは汎用CPUを、第2の機能ブロックは多機能DSPを想定している。
図1において、半導体集積回路装置100は、汎用CPUを想定した第1の機能ブロック110、第2の機能ブロック120、SDRAM130を制御するSDRAM制御回路131、DMAコントローラ132、周辺I/O群133を制御するI/O制御回路134、第1の機能ブロック110及びI/O制御回路134側に配置されたローカルバス141、第2の機能ブロック120側に配置されたローカルバス142、ローカルバス141とローカルバス142との間に配置されたグローバルバス143、ローカルバス141とグローバルバス143とを接続するバスブリッジ144、ローカルバス142とグローバルバス143とを接続するバスブリッジ145、外部から入力されるクロック151を基にして逓倍したクロックを生成するクロック発生回路152、及び外部電源161を基に各部に所定電源を供給する電源レギュレータ162を備えて構成される。
第1の機能ブロック110は、第1のシステムクロック(fCLK1)114を生成する第1のクロック発生回路111と、第1の内部メモリ112と、第1のシステムクロックと第2のシステムクロックのいずれかのクロックを選択し第1の内部メモリ112に供給するセレクタ113とを備えて構成される。また、第2の機能ブロック120は、第2のシステムクロック(fCLK2)124を生成する第2のクロック発生回路121と、第2の内部メモリ122と、第1のシステムクロックと第2のシステムクロックのいずれかのクロックを選択し第2の内部メモリ122に供給するセレクタ123とを備えて構成される。
上記第1の内部メモリ112及び第2の内部メモリ122の接続例については、第1の内部メモリ112を例に採り図2により後述する。
クロック発生回路152は、システムクロック153を生成し、生成したシステムクロック153を、第1の機能ブロック110内の第1のクロック発生回路111、第2の機能ブロック120内の第2のクロック発生回路121、SDRAM制御回路131、及びDMAコントローラ132にそれぞれ供給する。
第1の機能ブロック110内にある回路に供給される第1のシステムクロック(fCLK1)114は、第1の機能ブロック110内にある第1のクロック発生回路111で生成され、第2の機能ブロック120内にある回路に供給される第2のシステムクロック(fCLK2)124は第2の機能ブロック120内にある第2のクロック発生回路121で生成される。また、図1には示されていないが第1の機能ブロック110内にある第1のクロック発生回路111で生成された第1のシステムクロック(fCLK1)114は第2の機能ブロック120内にある回路にも供給されるとともに、第2の機能ブロック120内にある第2のクロック発生回路121で生成された第2のシステムクロック(fCLK2)124は第1の機能ブロック110内にある回路にも供給されている。
電源レギュレータ162は、第1の機能ブロック110に電源163を、第2の機能ブロック120に電源164をそれぞれ供給する。
本実施の形態では、全体のフロー制御関係は汎用CPUを想定した第1の機能ブロック110内の内部メモリ112に保存されているメインプログラム上に記載されており、処理能力を要するAV関連の処理などは、多機能DSPを想定した第2の機能ブロック120内の内部メモリ122に保存されているサブプログラム上に記載されている。この意味からも、本半導体集積回路の仕事全体の管理を行っているのは汎用CPUを想定した第1の機能ブロック110である。
図2は、機能ブロック内にある内部メモリの接続を示す図である。第1の機能ブロック110内の第1の内部メモリ112と第2の機能ブロック120内の第2の内部メモリ122とは同一構成を採るため、第1の内部メモリ112で代表して説明する。
図2において、112は第1の機能ブロック110内にある内部メモリ、171はチップセレクト(C/S)信号、172はアウトプットイネーブル(OE)信号、173はリード/ライト(R/W)信号、174はアドレス信号、175はデータ信号、176はローカルバス、114は第1の機能ブロック110内にある回路に供給される第1のシステムクロック、124は第2の機能ブロック120内にある回路に供給される第2のシステムクロック、113はセレクタ、177はセレクタ113の制御信号、178はセレクタ113の制御信号177により選択された、第1の機能ブロック110内にある回路に供給される第1のシステムクロック114か第2の機能ブロック120内にある回路に供給される第2のシステムクロック124かのいずれかのクロックである。
第1の機能ブロック110内にある第1の内部メモリ112に供給されるシステムクロック178がセレクタ113の制御信号177により、第1の機能ブロック110内にある回路に供給される第1のシステムクロック114か第2の機能ブロック120内にある回路に供給される第2のシステムクロック124かのどちらかの信号に選択される。
図3は、第2の機能ブロック120内にある第2のクロック発生回路121の構成を示すブロック図である。
図3において、第2のクロック発生回路121は、クロック発生回路152で生成されたシステムクロック153と分周回路出力とを位相比較する位相検出器181、ループフィルタ182、VCO(Voltage Controlled Oscillator)183、及びVCO183からの出力信号の周波数をN/M倍(但し、M>N)に分周する分周回路184を備えて構成される。また、185は汎用CPUを想定する第1の機能ブロック110からの制御信号、124は第2の機能ブロック120内にある第2のクロック発生回路121で生成された第2のシステムクロックである。
第2のクロック発生回路121は、PLL(Phase-Locked Loop)回路186を構成しており、クロック発生回路152で生成されたシステムクロック153に同期した第2のシステムクロック124を生成している。しかも、第2のシステムクロック124の動作周波数は汎用CPUを想定する第1の機能ブロック110からの制御信号185で希望する周波数に設定できる。例えば、クロック発生回路152で生成されたシステムクロック153の周波数をfCLK_153,クロック発生回路152で生成されたシステムクロック153に同期した第2のシステムクロック124の周波数をfCLK_124、汎用CPUを想定する第1の機能ブロック110からの制御信号185で設定されるVCO183からの出力信号の周波数の分周比率をN/Mとすると、以下の関係が成立する。
CLK_124×N/M=fCLK_153 …(1)
したがって、
CLK_124=fCLK_153×M/N …(2)
の関係が成立する。
以上のように方法により、第2のクロック発生回路121によってクロック発生回路152で生成されたシステムクロック153に同期した第2のシステムクロック124を汎用CPUを想定する第1の機能ブロック110からの制御信号185で自由に制御することができる。
図4は、第1の機能ブロック110内にある第1のクロック発生回路111の構成を示すブロック図である。図3と同一構成部分には同一符号を付している。
第1のクロック発生回路111は、第2のクロック発生回路121における第1の機能ブロック110からの制御信号185が自分自身のブロック内からの信号であること以外は同様な構成になっている。
以上の関係をまとめると、第1の機能ブロック110内にある第1のクロック発生回路111によって、第1の機能ブロック110の時間軸に依存して変化する演算処理量を処理するに必要な第1のシステムクロック114が第1のクロック発生回路111を用いて、本半導体集積回路装置100のシステムクロック153から生成され、第2の機能ブロック120内にある第2のクロック発生回路121によって、第2の機能ブロック120の時間軸に依存して変化する演算処理量を処理するに必要な第2のシステムクロック124が第2のクロック発生回路121を用いて、本半導体集積回路装置100のシステムクロック153から生成される。
汎用CPUである第1の機能ブロック110は、大容量の第1の内部メモリ112を有し、この第1の機能ブロック110が本半導体集積回路装置100全体の動作を統括している。本実施の形態において、第2の機能ブロック120がどのような順序で、どのような仕事を行うかの具体的なスケジュールを大容量な第1の内部メモリ112内にプログラムの形で有しており、さらに、そのプログラムを実行する過程で第2の機能ブロック120がどのような時間からどのような仕事量の仕事をするためにどのような能力で処理しなければならなく、そのためには第2機能ブロック120がどのような周波数で動作し、その動作周波数で第2の機能ブロック120が動作するためにはどのような電源電圧で動作しなければならないかの情報を有している。
以下、上述のように構成された半導体集積回路装置100の動作について説明する。
図5は、第2の機能ブロック120の仕事量、及び第2の機能ブロック120の電源電圧(動作周波数)の時間経過依存性を示す図である。また、図6は、第1の機能ブロック110の仕事量、及び第1の機能ブロック110の電源電圧(動作周波数)の時間経過依存性を示す図である。
図5(a)の第2の機能ブロック120の仕事量及び図5(b)の第2の機能ブロック120の動作電源電圧の例に示すように、第2の機能ブロック120は時間t0からt1まで仕事21を電源電圧VDD21、動作周波数fCLK21で行い、時間t1からt2まで仕事22を電源電圧VDD22、動作周波数fCLK22で行い、時間t2からt3まで仕事23を電源電圧VDD23、動作周波数fCLK23で行い、時間t3からt4まで仕事24を電源電圧VDD24、動作周波数fCLK24で行うという仕事のスケジュールが、汎用CPUである第1の機能ブロック110の内部メモリ112内で管理されている。
図6(a)の第1の機能ブロック110の仕事量及び図6(b)の第1の機能ブロック110の動作電源電圧の例に示すように、第1の機能ブロック110は時間t0からt1まで仕事11を電源電圧VDD11、動作周波数fCLK11で行い、時間t1からt2まで仕事12を電源電圧VDD12、動作周波数fCLK12で行い、時間t2からt3まで仕事13を電源電圧VDD13、動作周波数fCLK13で行うという仕事のスケジュールが、自己の第1の機能ブロック110の内部メモリ112内で管理されている。
図5及び図6を比較して分かるように、第1の機能ブロック110内にある第1のクロック発生回路111で生成され、第1の機能ブロック110内にある回路に供給される第1のシステムクロック114の周波数は、第1の機能ブロック110内で行われる仕事の演算処理量に依存して決まり、第2の機能ブロック120内にある第2のクロック発生回路121で生成され、第2の機能ブロック120内にある回路に供給される第2のシステムクロック124の周波数は、第2の機能ブロック120内で行われる仕事の演算処理量に依存して決まる。したがって、第1の機能ブロック110内にある第1のクロック発生回路111で生成され、第1の機能ブロック110内にある回路に供給される第1のシステムクロック114の周波数と第2の機能ブロック120内にある第2のクロック発生回路121で生成され、第2の機能ブロック120内にある回路に供給される第2のシステムクロック124の周波数との間に明確な相関はない。
このため、本実施の形態では、図1に示す半導体集積回路装置100における機能ブロック内にある内部メモリの構造として、図2で説明した構成を用いている。この構成を採ることにより第1の機能ブロック110内にある第1のクロック発生回路111で生成され、第1の機能ブロック110内にある回路に供給される第1のシステムクロック114の周波数と第2の機能ブロック120内にある第2のクロック発生回路121で生成され、第2の機能ブロック120内にある回路に供給される第2のシステムクロック124の周波数との間に明確な相関はない場合においても、第1の機能ブロック110と第2の機能ブロック120間で相手の機能ブロックの内部メモリが相手の機能ブロックの回路により使われていない場合には、自由に相手の機能ブロック内にある内部メモリのデータを読み出したり、自分の機能ブロック内にあるデータを相手の機能ブロック内にある内部メモリに書き込んだりすることができるようになる。
次に、第1の機能ブロック110及び第2の機能ブロック120内にある内部メモリ112,122の接続図を参照してより具体的な動作について説明する。
図7は、上記第1の機能ブロック110内にある第1の内部メモリ112の接続を示す図、図8は、上記第2の機能ブロック120内にある第2の内部メモリ122の接続を示す図である。
図7において、112は第1の機能ブロック110内にある第1の内部メモリ(内部メモリ<1>)、171Aはチップセレクト信号、172Aはアウトプットイネーブル信号、173Aはリード/ライト信号、174Aはアドレス信号、175Aはデータ信号、176Aはローカルバス、114は第1の機能ブロック110内にある回路に供給される第1のシステムクロック、124は第2の機能ブロック120内にある回路に供給される第2のシステムクロック、113はセレクタ、177Aはセレクタ113の制御信号、178Aはセレクタ113の制御信号177Aにより選択された、第1の機能ブロック110内にある回路に供給される第1のシステムクロック114か第2の機能ブロック120内にある回路に供給される第2のシステムクロック124かのどちらかのシステムクロック信号である。
また、図8において、122は第2の機能ブロック120内にある第2の内部メモリ(内部メモリ<2>)、171Bはチップセレクト信号、172Bはアウトプットイネーブル信号、173Bはリード/ライト信号、174Bはアドレス信号、175Bはデータ信号、176Bはローカルバス、114は第1の機能ブロック110内にある回路に供給される第1のシステムクロック、124は第2の機能ブロック120内にある回路に供給される第2のシステムクロック、123はセレクタ、177Bはセレクタ123の制御信号、178Bはセレクタ123の制御信号177Bにより選択された、第1の機能ブロック110内にある回路に供給される第1のシステムクロック114か第2の機能ブロック120内にある回路に供給される第2のシステムクロック124かのどちらかである。
〔第1の機能ブロック110内のデータ信号を第2の機能ブロック120内にある第2の内部メモリ122に書き込む動作〕
第1の機能ブロック110内にあるデータ信号を、第2の機能ブロック120内にある第2の内部メモリ122に書き込みたい場合には、図8において第2の機能ブロック120内にある第2の内部メモリ122が第2の機能ブロック120内にある回路によって使用されていないことを確認後、セレクタ123の制御信号177Bを制御して信号178Bに第1の機能ブロック110内にある回路に供給される第1のシステムクロック114が選択されるように設定し、チップセレクト信号171Bを“H”に設定し、リード/ライト信号173Bを“ライト状態”に設定し、第2の機能ブロック120内にある第2の内部メモリ122のアドレス174Bを設定する。その上で、図1に示すバスブリッジ144、バスブリッジ145を制御してローカルバス141、グローバルバス143、ローカルバス142経由で第1の機能ブロック110内にあるデータ信号を第2の機能ブロック120内にある第2の内部メモリ122のデータ信号175B(図8参照)へ送り、しかる後に第2の機能ブロック120内にある第2の内部メモリ122に書き込む。
〔第2の機能ブロック120内にある第2の内部メモリ122のデータ信号を第1の機能ブロック110内の第1の内部メモリ112に読み出す動作〕
第1の機能ブロック110内へ第2の機能ブロック120内にある第2の内部メモリ122のデータ信号を読み出す場合には、図8において第2の機能ブロック120内にある第2の内部メモリ122が第2の機能ブロック120内にある回路によって使用されていないことを確認後、セレクタ123の制御信号177Bを制御して信号178Bに第1の機能ブロック110内にある回路に供給される第1のシステムクロック114が選択されるように設定し、チップセレクト信号171Bを“H”に設定し、リード/ライト信号173Bを“リード状態”に設定し、第2の機能ブロック120内にある第2の内部メモリ122のアドレス174Bを読み出したい領域のアドレスに設定する。そして、図1に示すバスブリッジ144、バスブリッジ145を制御してローカルバス142、グローバルバス143、ローカルバス141経由で第2の機能ブロック120内にある第2の内部メモリ122内に記憶されているデータ信号を第1の機能ブロック110内に読み出す。
以上は、第2の機能ブロック120内にある第2の内部メモリ122の書き込み/読み出し動作であるが、第2の機能ブロック120内にあるデータ信号を第1の機能ブロック110内にある第1の内部メモリ112に書き込みたい場合や第2の機能ブロック120内の第2の内部メモリ122へ第1の機能ブロック110内にある第1の内部メモリ112のデータ信号を読み出す場合も同様の動作で実現することができる。
次に、第1の機能ブロック110が第2の機能ブロック120の電源電圧と動作周波数を如何に制御するかを具体的に説明する。
第2の機能ブロック120がどのような仕事をするかは、第1の機能ブロック110の内部メモリ112に動作プログラムの形で記述されている。第1の機能ブロック110は、上記動作プログラムにより、第2の機能ブロック120は時間t0から仕事21(図5参照)を実行することを読み取る。次に、その仕事21に相応しい動作電圧VDD21、動作周波数fCLK21、前記式(2)に述べたM/Nを前記動作プログラムの別の特定領域に保存された〔表1〕から読み出す。
Figure 0004328334
この〔表1〕は動作プログラムに記載されているそれぞれの仕事内容を事前に検討し、それぞれの仕事を第2の機能ブロック120の多機能DSPに行わせる場合どのような動作周波数を必要として、そのためにはどのような電源電圧に設定する必要があるかに対する綿密なシミュレーションに基づいて決定されている。
そして、まず、第1の機能ブロック110は内蔵された電源レギュレータ162に指示して、第2の機能ブロック120に電源電圧VDD2を供給する。
次に、第1の機能ブロック110は、図3に示す制御信号185を介して第2のクロック発生回路121のVCO183からの出力信号の周波数をN/M倍(但し、M>N)に分周する回路にしかるべきM/Nの具体的な値を書き込む。第2のクロック発生回路121はPLL回路186のセットアップ時間を経過後に安定した動作周波数fCLK2に設定される。但し、以上の設定に要する時間は仕事21に要する時間に比して僅かであるので、図5には示していない。
第2の機能ブロック120の電源電圧VDD2と動作周波数fCLK2が安定するに必要な時間経過後に、第1の機能ブロック110は第2の機能ブロック120が仕事21の開始を許可するので、第2の機能ブロック120は仕事21を開始する。
第2の機能ブロック120は、仕事21が完了したときには、「仕事21が完了したとの情報」を仕事全体の管理している第1の機能ブロック110に報告する。勿論、第2の機能ブロック120は仕事21が完了したときには、「仕事21が完了したとの情報」を仕事全体の管理している第1の機能ブロック110に報告することに代えて、第2の機能ブロック120が「仕事21が完了したとの情報」をフラグとして、特定のレジスタに記録して、第1の機能ブロック110が上記レジスタを見に行くような仕組みでもよい。
次に、上述した本装置の各機能が如何に実施されるかについて具体的に説明する。
第2の機能ブロック120が仕事23を実行するためには、第1の機能ブロック110の内部メモリ112のある領域に格納されているデータを必要とする。この場合、第2の機能ブロック120は、仕事23を実行する前に、第1の機能ブロック110の内部メモリ112のある領域に格納されているデータをまず、自らの内部メモリ122のしかるべき領域に転送しなければならない。仕事全体を管理している第1の機能ブロック110がこの仕事を制御する必要がある。第1の機能ブロック110は、この仕事を仕事11の中で実行する。このとき、第2の機能ブロック120は、内部メモリ122に関連するリソース使用しないような仕事22であれば並行して実行し得る。
第1の機能ブロック110は、動作周波数fCLK11で動作しており、第2の機能ブロック120は動作周波数fCLK22で動作しているため、同期が取れないので、従来は第1の機能ブロック110の内部メモリ112のある領域に格納されているデータを第2の機能ブロック120の内部メモリ122のしかるべき領域に転送することはできなかった。これに対して、本実施の形態では、図2に示すように第2の機能ブロック120の内部メモリ122を構成することによりこの課題を解決している。
すなわち、図8で説明したように、第1の機能ブロック110内にあるデータ信号を第2の機能ブロック120内にある内部メモリ122に書き込みたい場合には、まず、第2の機能ブロック120内にある内部メモリ122が第2の機能ブロック120内にある回路によって使用されていないことを確認する。本実施の形態においては、第1の機能ブロック110内の内部メモリ112内に、本半導体集積回路装置10全体がどのような順序でどのようなプログラムを実行するかが書かれたメインプログラムが置かれているので、第1の機能ブロック110が指示しなければ基本的には第2の機能ブロック120が内部メモリ122を使用することはない。しかし場合によっては、第2の機能ブロック120の内部メモリ122に格納されているローカルなプログラムで第2の機能ブロック120が動作する可能性もあるので、第2の機能ブロック120は仕事の変わり目に内部メモリ関連のリソースを使うか使わないかの情報を第1の機能ブロック110に送るように構成することにする。各機能ブロックは内部メモリの他にレジスタ・ファイルのような多目的な記録領域を有することがあるので、内部メモリ関連のリソースを占有せず、レジスタ・ファイルと外部メモリを有効に使う処理も十分あり得る。
第2の機能ブロック120内にある内部メモリ122が第2の機能ブロック120内にある回路によって使用されていないことを確認した後に、セレクタ113の制御信号177Bを制御して制御信号178Bに第1の機能ブロック110内にある回路に供給される第1のシステムクロック114が選択されるように設定する。この間の動作により第2の機能ブロック120の内部メモリ122(内部メモリ<2>)が書き換わることがないように、チップセレクト信号171Bは“L”に設定しておく。つまり、内部メモリ112(内部メモリ<1>)に接続されたシステムクロック178を変更する時は、ノイズによって内部メモリ112(内部メモリ<1>)の内容が書き換わらないように、チップセレクト信号は“L”に設定して、内部メモリ112(内部メモリ<1>)が非選択の状態にしておく。
以上の設定作業が終了した後にチップセレクト信号を“H”に設定し、リード/ライト信号173Bを“ライト状態”に設定し、第2の機能ブロック120内にある内部メモリ122(内部メモリ<2>)のアドレス174Bを設定し、バスブリッジ144,145を制御してローカルバス141、グローバルバス143、ローカルバス142経由で第1の機能ブロック110内にあるデータ信号を、第2の機能ブロック120内にある内部メモリ122のデータ信号175Bへ送り、しかる後に第2の機能ブロック120内にある内部メモリ122(内部メモリ<2>)に書き込む。第2の機能ブロック120が、この間、内部メモリ122(内部メモリ<2>)に関連するリソース使用しないような仕事22を並行して実施している場合には、仕事22が完了したときには、「仕事22が完了したとの情報」を仕事全体の管理している第1の機能ブロック110に報告する。
次に、第1の機能ブロック110は、上記動作プログラムにより、第2の機能ブロック120が時間t2から仕事23を実行することを読み取る。その仕事23に相応しい動作電圧VDD23、動作周波数fCLK23、式(2)に述べたM/Nを仕事内容と動作電圧、動作周波数、式(2)に述べたM/Nを前記動作プログラムの別の特定領域に記録された〔表1〕から読み出す。そして、まず、第1の機能ブロック110は内蔵された電源レギュレータ162に指示して、第2の機能ブロック120に電源電圧VDD23を供給する。
次に、第1の機能ブロック110は、図3に示す制御信号185を介して第2のクロック発生回路121のVCO183からの出力信号の周波数をN/M倍(但し、M>N)に分周する回路にしかるべきM/Nの具体的な値を書き込む。第2のクロック発生回路121は、PLL回路186のセットアップ時間を経過後に安定した動作周波数fCLK23に設定される。
第1の機能ブロック110は、第2の機能ブロック120の電源電圧VDD23と動作周波数fCLK23が安定するに必要な時間経過後に、第2の機能ブロック120が仕事23の開始を許可するので、これを受けて第2の機能ブロック120は仕事23を開始する。
第1の機能ブロック110内にあるデータ信号を、第2の機能ブロック120内にある内部メモリ122に書き込み場合について説明したが、第2の機能ブロック120内にあるデータ信号を第1の機能ブロック110内にある内部メモリ112に読み出す場合も基本的な内容は同じであるので、この場合の説明は省略する。
以上で第1の機能ブロック110が主導権をとって、第1の機能ブロック110内にあるデータ信号を第2の機能ブロック120内にある内部メモリ122に書き込み場合について説明した。第1の機能ブロック110内の内部メモリ112と第2の機能ブロック120内にある内部メモリ122の構成は同一構成であるため、第2の機能ブロック120が主導権をとって、第2の機能ブロック120内にあるデータ信号を第1の機能ブロック110内にある内部メモリ112に書き込むことも可能である。但し、第1の機能ブロック110が汎用CPUであり、第2の機能ブロック120が多機能DSPであることを本実施の形態では仮定しているので、あくまで本実施の形態では第1の機能ブロック110である汎用CPUが半導体集積回路装置100全体の動作を管理しているが、動作の中である期間だけ第2の機能ブロック120が主導権をとって、第2の機能ブロック120内にあるデータ信号を第1の機能ブロック110内にある内部メモリ112に書き込むこともできるように構成することにより半導体集積回路装置100全体の動作に自由度を持たせている。
以上詳細に説明したように、本実施の形態によれば、半導体集積回路装置100は、汎用CPUを想定した第1の機能ブロック110、多機能DSPからなる第2の機能ブロック120を備え、第1の機能ブロック110は、機能ブロック内の回路に供給する第1のシステムクロックを発生する第1のクロック発生回路111と、第1のシステムクロックによりデータを読み出し/書き込みする第1の内部メモリ112と、第1のシステムクロックと第2のシステムクロックとを選択し、該選択したクロックを第1の内部メモリ112に供給するセレクタ113とを有し、第2の機能ブロック120は、機能ブロック内の回路に供給する第2のシステムクロックを発生する第2のクロック発生回路121と、第2のシステムクロックによりデータを読み出し/書き込みする第2の内部メモリ122と、第1のシステムクロックと第2のシステムクロックとを選択し、該選択したクロックを第2の内部メモリ122に供給するセレクタ123とを有し、第1の内部メモリ111に供給されるクロックには、第1のシステムクロックと第2のシステムクロックからセレクタ113により選択された一のクロックが支給され、第2の内部メモリ122に供給されるクロックには、第1のシステムクロックと第2のシステムクロックからセレクタ123により選択された一のクロックが支給される。これにより、第1の機能ブロックとデータを読み書きする第2の機能ブロック内にある第2の内部メモリは共に、第1の機能ブロック内にある回路に支給される第1のシステムクロックで動作するようになるので、第1の機能ブロックと第2の機能ブロック内にある第2の内部メモリは完全に同期が取れるようになる。したがって、本半導体集積回路装置100においては、各々の機能ブロックがDynamic Voltage Scaling技術やAdaptive Voltage Scaling技術をそれぞれの機能ブロックの負荷量に応じて自由に電源電圧とシステムクロック周波数を変えても、機能ブロック間でデータを相互に転送することが可能である。
このように、各々の機能ブロックがDynamic Voltage Scaling技術やAdaptive Voltage Scaling技術をそれぞれの機能ブロックの負荷量に応じて自由に電源電圧とシステムクロック周波数を変えても、機能ブロック間でデータを相互に転送することを可能にし、半導体集積回路、特に、Dynamic Voltage Scaling(DVS)又はAdaptive Voltage Scaling(AVS)技術を用いた低消費電力化に適した半導体集積回路において機能ブロック間での柔軟なデータ転送を実現することができる。これにより、本システムLSIは、Dynamic Voltage Scaling技術やAdaptive Voltage Scaling技術を最大限に活用して低消費電力化を図ることができる。
(実施の形態2)
図9は、本発明の実施の形態2に係る半導体集積回路装置の構成を示す回路ブロック図である。本実施の形態は、機能ブロック内にある内部メモリを機能ブロック数が5個の半導体集積回路に適用した例である。図1と同一構成部分には同一符号を付している。
図9において、半導体集積回路装置200は、汎用CPUを想定した第1の機能ブロック210、第2の機能ブロック220、第3の機能ブロック230、第4の機能ブロック240、第5の機能ブロック250、SDRAM130を制御するSDRAM制御回路131、DMAコントローラ132、周辺I/O群133を制御するI/O制御回路134、第1の機能ブロック210及びI/O制御回路134側に配置されたローカルバス261、第2の機能ブロック220側に配置されたローカルバス262、第3の機能ブロック230側に配置されたローカルバス263、第4の機能ブロック240側に配置されたローカルバス264、第5の機能ブロック250側に配置されたローカルバス265、ローカルバス261とローカルバス262〜265との間に配置されたグローバルバス266、ローカルバス261とグローバルバス266とを接続するバスブリッジ271、ローカルバス262とグローバルバス266とを接続するバスブリッジ272、ローカルバス263とグローバルバス266とを接続するバスブリッジ273、ローカルバス264とグローバルバス266とを接続するバスブリッジ274、ローカルバス265とグローバルバス266とを接続するバスブリッジ275、外部から入力されるクロック151を基にして逓倍したクロックを生成するクロック発生回路152、及び外部電源161を基に各部に所定電源を供給する電源レギュレータ280を備えて構成される。
第1の機能ブロック210は、第1のシステムクロック(fCLK1)214を生成する第1のクロック発生回路211と、第1の内部メモリ212と、第1のシステムクロック214と第2のシステムクロック224と第3のシステムクロック234と第4のシステムクロック244と第5のシステムクロック254のいずれかのクロックを選択し第1の内部メモリ212に供給するセレクタ213とを備えて構成される。
また、第2の機能ブロック220は、第2のシステムクロック(fCLK2)224を生成する第2のクロック発生回路221と、第2の内部メモリ222と、第1のシステムクロック214と第2のシステムクロック224と第3のシステムクロック234と第4のシステムクロック244と第5のシステムクロック254のいずれかのクロックを選択し第2の内部メモリ222に供給するセレクタ223とを備えて構成される。
同様に、第3の機能ブロック230は、第3のシステムクロック(fCLK3)234を生成する第3のクロック発生回路231と、第3の内部メモリ232と、第1のシステムクロック214と第2のシステムクロック224と第3のシステムクロック234と第4のシステムクロック244と第5のシステムクロック254のいずれかのクロックを選択し第3の内部メモリ232に供給するセレクタ233とを備えて構成される。
第4の機能ブロック240は、第4のシステムクロック(fCLK4)244を生成する第4のクロック発生回路241と、第4の内部メモリ242と、第1のシステムクロック214と第2のシステムクロック224と第3のシステムクロック234と第4のシステムクロック244と第5のシステムクロック254のいずれかのクロックを選択し第4の内部メモリ242に供給するセレクタ243とを備えて構成される。
第5の機能ブロック250は、第5のシステムクロック(fCLK5)254を生成する第5のクロック発生回路251と、第5の内部メモリ252と、第1のシステムクロック214と第2のシステムクロック224と第3のシステムクロック234と第4のシステムクロック244と第5のシステムクロック254のいずれかのクロックを選択し第5の内部メモリ252に供給するセレクタ253とを備えて構成される。
上記第1の内部メモリ212及び第2の内部メモリ222の接続例については、第1の内部メモリ212を例に採り図10により後述する。
クロック発生回路152は、システムクロック153を生成し、生成したシステムクロック153を、第1の機能ブロック210内の第1のクロック発生回路211、第2の機能ブロック220内の第2のクロック発生回路221、第3の機能ブロック230内の第2のクロック発生回路231、第4の機能ブロック240内の第2のクロック発生回路241、第5の機能ブロック250内の第2のクロック発生回路251、SDRAM制御回路131、及びDMAコントローラ132にそれぞれ供給する。
第1の機能ブロック210内にある回路に供給される第1のシステムクロック(fCLK1)214は、第1の機能ブロック210内にある第1のクロック発生回路211で生成される。また、第2の機能ブロック220内にある回路に供給される第2のシステムクロック(fCLK2)224は第2の機能ブロック220内にある第2のクロック発生回路221で生成され、第3の機能ブロック230内にある回路に供給される第3のシステムクロック(fCLK3)234は第3の機能ブロック230内にある第3のクロック発生回路231で生成され、第4の機能ブロック240内にある回路に供給される第4のシステムクロック(fCLK4)244は第4の機能ブロック240内にある第4のクロック発生回路241で生成され、第5の機能ブロック250内にある回路に供給される第5のシステムクロック(fCLK5)254は第5の機能ブロック250内にある第5のクロック発生回路251で生成される。
また、図9には示されていないが第1の機能ブロック210内にある第1のクロック発生回路211で生成された第1のシステムクロック214はセレクタ213に供給されるだけでなく、第2から第5の機能ブロック220〜250内にあるセレクタ223からセレクタ253にも供給される。このことは他のシステムクロックにおいても同様である。
電源レギュレータ280は、第1の機能ブロック210に電源281を、第2の機能ブロック220に電源282を、第3の機能ブロック230に電源283を、第4の機能ブロック240に電源284を、第5の機能ブロック250に電源285をそれぞれ供給する。
本実施の形態では、全体のフロー制御関係は汎用CPUを想定した第1の機能ブロック210内の内部メモリ212に保存されているメインプログラム上に記載されており、処理能力を要するAV関連の処理などは、多機能DSPを想定した第2から第5の機能ブロック220〜250内の内部メモリ222〜252に保存されているサブプログラム上に記載されている。この意味からも、本半導体集積回路の仕事全体の管理を行っているのは汎用CPUを想定した第1の機能ブロック210である。
以下、上述のように構成された半導体集積回路装置200の動作について説明する。
第1の機能ブロック210内の第1のクロック発生回路211では、内部のPLL回路(図3参照)を用いて、半導体集積回路装置200に供給されたシステムクロック153を基に第1の機能ブロック210の時間軸に依存して変化する演算処理量を処理するために必要な第1のシステムクロック214を生成する。
同様に、第2の機能ブロック220内の第2のクロック発生回路221では、第2の機能ブロック220の時間軸に依存して変化する演算処理量を処理するために必要な第2のシステムクロック224を生成し、第3の機能ブロック230内の第3のクロック発生回路231では、第3の機能ブロック230の時間軸に依存して変化する演算処理量を処理するために必要な第3のシステムクロック234を生成する。また、第4の機能ブロック240内の第4のクロック発生回路241では、第4の機能ブロック240の時間軸に依存して変化する演算処理量を処理するために必要な第4のシステムクロック244を生成し、第5の機能ブロック250内の第5のクロック発生回路251では、第5の機能ブロック250の時間軸に依存して変化する演算処理量を処理するために必要な第5のシステムクロック254を生成する。
汎用CPUである第1の機能ブロック210は、大容量の内部メモリ212を有し、この汎用CPUである第1の機能ブロック210内にあるスケジューラ(図示せず)が半導体集積回路装置200全体の動作を統括している。このスケジューラは、具体的には汎用CPUによるメインプログラム実行により実現される。
第1の機能ブロック210は、上記メインプログラムを実行して半導体集積回路装置200全体の動作を統括するために、内部メモリ212に以下の情報を格納する。すなわち、第1の機能ブロック210の内部メモリ212は、第2の機能ブロック220がどのような時間からどのような仕事量の仕事をするためにどのような能力で処理しなければならなく、そのためには第2の機能ブロック220がどのような周波数で動作し、その動作周波数で第2の機能ブロック220が動作するためにはどのような電源電圧に設定する必要があるかの情報や、第3の機能ブロック230がどのような時間からどのような仕事量の仕事をするためにどのような能力で処理しなければならなく、そのためには第3の機能ブロック230がどのような周波数で動作し、その動作周波数で第3の機能ブロック230が動作するためにはどのような電源電圧に設定する必要があるかの情報や、第4の機能ブロック240がどのような時間からどのような仕事量の仕事をするためにどのような能力で処理しなければならなく、そのためには第4の機能ブロック240がどのような周波数で動作し、その動作周波数で第4の機能ブロック240が動作するためにはどのような電源電圧に設定する必要があるかの情報や、第5の機能ブロック250がどのような時間からどのような仕事量の仕事をするためにどのような能力で処理しなければならなく、そのためには第5機能ブロック250がどのような周波数で動作し、その動作周波数で第5の機能ブロック250が動作するためにはどのような電源電圧に設定する必要があるかの情報を有している。
第1の機能ブロック210、第2の機能ブロック220、第3の機能ブロック230、第4の機能ブロック240、及び第5の機能ブロック250の電源電圧は、内蔵された電源レギュレータ280により生成され、各機能ブロックに対して第1の機能ブロック210に電源281が、第2の機能ブロック220に電源282が、第3の機能ブロック230に電源283が、第4の機能ブロック240に電源284が、第5の機能ブロック250に電源285がそれぞれ供給される。
図10は、上記第1の機能ブロック210内にある内部メモリ212の接続図を示す図、図11は、上記第2の機能ブロック220内にある第2の内部メモリ222の接続を示す図である。
図10において、212は第1の機能ブロック210内にある第1の内部メモリ(内部メモリ<1>)、291Aはチップセレクト信号、292Aはアウトプットイネーブル信号、293Aはリード/ライト信号、294Aはアドレス信号、295Aはデータ信号、296Aはローカルバス、214は第1の機能ブロック210内にある回路に供給される第1のシステムクロック、224は第2の機能ブロック220内にある回路に供給される第2のシステムクロック、234は第3の機能ブロック230内にある回路に供給される第3のシステムクロック、244は第4の機能ブロック240内にある回路に供給される第4のシステムクロック、254は第5の機能ブロック250内にある回路に供給される第5のシステムクロック、213はセレクタ、297Aはセレクタ213の制御信号、298Aはセレクタ213の制御信号297Aにより選択された、第1の機能ブロック210内にある回路に供給される第1のシステムクロック214か第2の機能ブロック220内にある回路に供給される第2のシステムクロック224か第3の機能ブロック230内にある回路に供給される第3のシステムクロック234か第4の機能ブロック240内にある回路に供給される第4のシステムクロック244か第5の機能ブロック250内にある回路に供給される第5のシステムクロック254のいずれかのシステムクロック信号である。
また、図11において、222は第2の機能ブロック210内にある第2の内部メモリ(内部メモリ<2>)、291Bはチップセレクト信号、292Bはアウトプットイネーブル信号、293Bはリード/ライト信号、294Bはアドレス信号、295Bはデータ信号、296Bはローカルバス、214は第1の機能ブロック210内にある回路に供給される第1のシステムクロック、224は第2の機能ブロック220内にある回路に供給される第2のシステムクロック、234は第3の機能ブロック230内にある回路に供給される第3のシステムクロック、244は第4の機能ブロック240内にある回路に供給される第4のシステムクロック、254は第5の機能ブロック250内にある回路に供給される第5のシステムクロック、223はセレクタ、297Bはセレクタ223の制御信号、298Bはセレクタ223の制御信号297Bにより選択された、第1の機能ブロック210内にある回路に供給される第1のシステムクロック214か第2の機能ブロック220内にある回路に供給される第2のシステムクロック224か第3の機能ブロック230内にある回路に供給される第3のシステムクロック234か第4の機能ブロック240内にある回路に供給される第4のシステムクロック244か第5の機能ブロック250内にある回路に供給される第5のシステムクロック254のいずれかのシステムクロック信号である。
〔第1の機能ブロック210内のデータ信号を第2の機能ブロック220内にある第2の内部メモリ222に書き込む動作〕
第1の機能ブロック210が主導権をとって、第1の機能ブロック210内にあるデータ信号を、第2の機能ブロック220内にある内部メモリ222に書き込みたい場合には、第2の機能ブロック220内にある内部メモリ222が第2の機能ブロック220内にある回路によって使用されていないことを確認後、セレクタ223の制御信号297B(図11参照)を制御してシステムクロック298Bに第1の機能ブロック210内にある回路に供給される第1のシステムクロック214が選択されるように設定する。そして、チップセレクト信号291Bを“H”に設定し、リード/ライト信号293Bを”ライト状態”に設定し、第2の機能ブロック220内にある内部メモリ222のアドレス294Bを設定し、バスブリッジ271及びバスブリッジ272を制御してローカルバス261、グローバルバス266、ローカルバス262経由で第1の機能ブロック210内にあるデータ信号を第2の機能ブロック220内にある内部メモリ222のデータ信号295Bへ送り、しかる後に第2の機能ブロック220内にある内部メモリ222に書き込む。
〔第2の機能ブロック220内にある第2の内部メモリ222のデータ信号を第1の機能ブロック210内の第1の内部メモリ212に読み出す動作〕
第1の機能ブロック210が主導権をとって、第1の機能ブロック210内へ第2の機能ブロック220内にある内部メモリ222のデータ信号を読み出す場合には、第2の機能ブロック220内にある内部メモリ222が第2の機能ブロック220内にある回路によって使用されていないことを確認後、セレクタ213の制御信号297A(図10参照)を制御してシステムクロック298Aに第1の機能ブロック210内にある回路に供給される第1のシステムクロック214が選択されるように設定し、チップセレクト信号291Aを“H”に設定し、リード/ライト信号293Aを“リード状態”に設定し、第2の機能ブロック220内にある内部メモリ222のアドレス294Aを読み出したい領域のアドレスに設定し、バスブリッジ272及びバスブリッジ271を制御してローカルバス262、グローバルバス266、ローカルバス261経由で第2の機能ブロック220内にある内部メモリ222内に記憶されているデータ信号を第1の機能ブロック210内に読み出す。
また、第2の機能ブロック210が主導権をとって、第2の機能ブロック220内にあるデータ信号を第1の機能ブロック210内にある内部メモリ212に書き込みたい場合や第2の機能ブロック220内へ第1の機能ブロック210内にある内部メモリ212のデータ信号を読み出す場合も上記と同様にすることにより実現できる。
以上では、第1の機能ブロック210と第2の機能ブロック220相互でのデータの書き込み、読み出しについて説明してきたが、第1の機能ブロック210、第2の機能ブロック220、第3の機能ブロック230、第4の機能ブロック240、第5の機能ブロック250間での相互でのデータの書き込み、読み出しにおいても同様に実現できる。但し、本実施の形態では、第1の機能ブロック210が汎用CPUであり、それ以外の第2の機能ブロック220、第3の機能ブロック230、第4の機能ブロック240、第5の機能ブロック250は多機能DSPであることを仮定しているので、あくまで本実施の形態にあっても第1の機能ブロック210である汎用CPUが半導体集積回路装置200全体の動作を管理している。したがって、第1の機能ブロック210、第2の機能ブロック220、第3の機能ブロック230、第4の機能ブロック240、第5の機能ブロック250間での相互でのデータの書き込み、読み出しにおいても、基本的には、汎用CPUである第1の機能ブロック210の管理の下、汎用CPUである第1の機能ブロック210の指示に従って、第2の機能ブロック220、第3の機能ブロック230、第4の機能ブロック240、第5の機能ブロック250は相互でのデータの書き込み、読み出しを行っている。
(実施の形態3)
図12は、本発明の実施の形態3に係る半導体集積回路装置の構成を示す回路ブロック図である。本実施の形態は、半導体集積回路装置のDMAコントローラ内にクロック発生回路を設けた場合の例である。図9と同一構成部分には同一符号を付して重複箇所の説明を省略する。
図12において、半導体集積回路装置300は、汎用CPUを想定した第1の機能ブロック210、第2の機能ブロック220、第3の機能ブロック230、第4の機能ブロック240、第5の機能ブロック250、SDRAM130を制御するSDRAM制御回路131、クロック発生回路を備えるDMAコントローラ310、周辺I/O群133を制御するI/O制御回路134、第1の機能ブロック210及びI/O制御回路134側に配置されたローカルバス261、第2の機能ブロック220側に配置されたローカルバス262、第3の機能ブロック230側に配置されたローカルバス263、第4の機能ブロック240側に配置されたローカルバス264、第5の機能ブロック250側に配置されたローカルバス265、ローカルバス261とローカルバス262〜265との間に配置されたグローバルバス266、ローカルバス261とグローバルバス266とを接続するバスブリッジ271、ローカルバス262とグローバルバス266とを接続するバスブリッジ272、ローカルバス263とグローバルバス266とを接続するバスブリッジ273、ローカルバス264とグローバルバス266とを接続するバスブリッジ274、ローカルバス265とグローバルバス266とを接続するバスブリッジ275、外部から入力されるクロック151を基にして逓倍したクロックを生成するクロック発生回路152、及び外部電源161を基に各部に所定電源を供給する電源レギュレータ280を備えて構成される。
DMAコントローラ310は、DMAコントローラ310内にDMAコントローラ用のクロック発生回路311を備える。312はDMAコントローラ用のクロック発生回路311で生成されたDMAコントローラ用のクロックである。
DMAコントローラ310内にあるDMAコントローラ用のクロック発生回路311の回路構成も、前記図9及び図3に示した第2の機能ブロック220内にある第2のクロック発生回路221と同じ構成である。汎用CPUを想定する第1の機能ブロック210(図2では第1の機能ブロック110)からの制御信号で設定されるVCOからの出力信号の周波数の分周比率であるN/Mを変えることができる。つまり、DMAコントローラ310の転送速度を決定するクロック周波数は、汎用CPUを想定する第1の機能ブロック210から信号により制御することができる。
図13は、上記第2の機能ブロック220内にある内部メモリ222の接続図を示す図、図14は、上記第3の機能ブロック230内にある第3の内部メモリ232の接続を示す図である。
図13において、第2の機能ブロック220内のセレクタ223には、さらにDMAコントローラ用のクロック312が入力される。同様に、図14において、第3の機能ブロック230内のセレクタ233には、さらにDMAコントローラ用のクロック312が入力される。
以下、上述のように構成された半導体集積回路装置300の動作について説明する。基本的な動作は、実施の形態2と同様であるため説明を省略し、DMAコントローラ310の動作について説明する。
DMAコントローラ310が主導権をとって、第3の機能ブロック230内にある内部メモリ232へ第2の機能ブロック220内にある内部メモリ222のデータ信号を転送する場合には、第2の機能ブロック220内にある内部メモリ222が第2の機能ブロック220内にある回路によって使用されていないこと確認後、第2の機能ブロック220内にあるセレクタ223の制御信号297Bを制御してシステムクロック298BにDMAコントローラ310内の回路に供給されるDMAコントローラ用のクロック312が選択されるように設定し、チップセレクト信号291Bを“H”に設定し、リード/ライト信号293Bを“リード状態”に設定し、第2の機能ブロック220内にある内部メモリ222のアドレス294Bを読み出したい領域のアドレスに設定する。
そして、第3の機能ブロック230内にある内部メモリ232が第3の機能ブロック230内にある回路によって使用されていないことを確認後、第3の機能ブロック230内にあるセレクタ233の制御信号297Cを制御してシステムクロック298CにDMAコントローラ310内の回路に供給DMAコントローラ用のクロック312が選択されるように設定し、チップセレクト信号291Cを“H”に設定し、リード/ライト信号293Cを“ライト状態”に設定し、第3の機能ブロック230内にある内部メモリ232のアドレス294Cに書き込みたい領域のアドレスを設定し、バスブリッジ272、バスブリッジ273を制御してローカルバス262、グローバルバス266、ローカルバス263経由で第2の機能ブロック220内にある内部メモリ222内に記憶されているデータ信号を第3の機能ブロック230内にある内部メモリ232内に転送する。
このようにして第2の機能ブロックから第5の機能ブロックがそれぞれ独自のシステムクロックで動作していても、それぞれの内部メモリ関連のリソースが使用されていないときを利用して、DMAコントローラ310が、DMAコントローラ310内の回路に供給されるDMAコントローラ用のクロック312でそれぞれの内部メモリ212〜252の動作を支配することにより、第2の機能ブロックから第5の機能ブロック間で自由にデータを転送することができる。
ここで、通常のDMAコントローラと同じように、本実施の形態のDMAコントローラ310も汎用CPUである第1の機能ブロック210が別の仕事で忙しい時に、第1の機能ブロック210の仕事の一部である第1の機能ブロック210以外の機能ブロック間のデータ信号の転送を第1の機能ブロック210から委託されて実行する。この場合も、半導体集積回路装置300全体の動作を管理しているのは汎用CPUである第1の機能ブロック210であり、DMAコントローラ310は一時的に2つの機能ブロック間のデータ転送を委託されて実効するだけであり、DMAコントローラ310は2つの機能ブロック間のデータ転送が終了した時には、「2機能ブロック間のデータ転送が終了したとの情報」を汎用CPUである第1の機能ブロック210に報告する。
このように、半導体集積回路装置300のDMAコントローラ310は、内部にクロック発生回路311を有し、独自のシステムクロック312を発生できる。したがって、第2の機能ブロック220から第5の機能ブロック250の内の2機能ブロック間でのデータ転送時に、それぞれの機能ブロックが内部メモリ関連のリソースを使用せず独自の仕事を独自の動作周波数で行っていている場合には、第1の機能ブロック210はそのことにわずらわせられることなく、2機能ブロック間のデータ転送に必要とされる動作周波数を有するシステムクロックfCLKDMAをDMAコントローラ310の内部のクロック発生回路311で発生させ、このシステムクロックfCLKDMAを用いて、機能ブロック間でのデータ信号を転送できる。
以上の説明は本発明の好適な実施の形態の例証であり、本発明の範囲はこれに限定されることはない。
例えば、各実施の形態では、各機能ブロック内にそれぞれクロック発生回路を有して独自のシステムクロックを発生する場合について説明してきたが、すべての機能ブロックがそれぞれクロック発生回路を持つ必要は必ずしもない。いくつかの機能ブロックはクロック発生回路で生成されたシステムクロックを機能ブロック内のシステムクロックとして使用してもよい。
また、各機能ブロックのクロック発生回路の機能を本半導体集積回路装置の外部から入力されるクロックをもとにして逓倍したクロックを生成するクロック発生回路のブロックに集約して、その結果発生するシステムクロックを各機能ブロックに供給するような構成も本発明に含まれる。
また、以上の実施の形態2又は実施の形態3においては、第2の機能ブロックから第5の機能ブロックすべてを“多機能DSP”として定義したが、ある機能ブロックは演算中心の処理を実行するだけで一般的にいう“DSP”に該当しない場合も含まれる。
また、“多機能DSP”を想定した機能ブロックとして第2の機能ブロックから第5の機能ブロックの4つの機能ブロックがある場合について説明してきたが、この数は勿論4つに限定されるものではない。
また、以上の各実施の形態では、各機能ブロックのその仕事に相応しい動作電圧、動作周波数を前記動作プログラムに保存された〔表1〕から読み出す。この表は動作プログラムに記載されているそれぞれの仕事内容を事前に検討し、それぞれの仕事を第2の機能ブロック120の多機能DSPに行わせる場合どのような動作周波数を必要として、そのためにはどのような電源電圧に設定する必要があるかに対する綿密なシミュレーションに基づいて決定されているとしている。
Dynamic Voltage Scaling(DVS)技術を実現する方法としは以上のようなやり方の他に、前記非特許文献1で述べられているように、Hardware Performance Monitorでシステムの負荷をモニタし、Intelligent Energy Management(IEM)とAdaptive Power Control(APC)が負荷に応じた最適な電源電圧と動作周波数を外部に要求し、この要求に応じて外付けのDC−DCコンバータを内蔵した電源電圧/動作周波数発生回路が最適な電源電圧と動作周波数をチップに供給するように閉ループを構成するやり方も存在する。この方法をAdaptive Voltage Scaling(AVS)技術とも呼ぶ。
但し、本発明の内容は直接的にはDynamic Voltage Scaling(DVS)技術の実現方法と関係しないので、実施例1から実施例3で述べたようなDynamic Voltage Scaling(DVS)技術の実現方法を実施例の中では用いて説明しているが、前記非特許文献1で述べられているようなDynamic Voltage Scaling(DVS)技術を活用することもできることは勿論である。
また、本実施の形態では半導体集積回路装置という名称を用いたが、これは説明の便宜上であり、半導体集積回路等であってもよいことは勿論である。
さらに、上記半導体集積回路装置を構成する各回路部、例えばセレクタ等の種類、数及び接続方法などは前述した実施の形態に限られない。
本発明に係る半導体集積回路装置は、半導体集積回路、特に、Dynamic Voltage Scaling(DVS)技術を用いた低消費電力化に適したシステムLSI内の機能ブロック間での柔軟なデータの転送に有効である。
本発明の実施の形態1に係る半導体集積回路装置の構成を示すブロック図 本実施の形態1に係る半導体集積回路装置の機能ブロック内にある内部メモリの接続を示す図 本実施の形態1に係る半導体集積回路装置の第2の機能ブロック内にある第2のクロック発生回路のブロック図 本実施の形態1に係る半導体集積回路装置の第1の機能ブロック内にある第1のクロック発生回路のブロック図 本実施の形態1に係る半導体集積回路装置の第2の機能ブロックの仕事量、第2の機能ブロックの電源電圧(動作周波数)の時間経過依存性を示す図 本実施の形態1に係る半導体集積回路装置の第1の機能ブロックの仕事量、第1の機能ブロックの電源電圧(動作周波数)の時間経過依存性を示す図 本実施の形態1に係る半導体集積回路装置の第1の機能ブロック内にある内部メモリの接続図 本実施の形態1に係る半導体集積回路装置の機能ブロック内にある内部メモリの接続を示す図 本発明の実施の形態2に係る半導体集積回路装置の構成を示すブロック図 本実施の形態2に係る半導体集積回路装置の第1の機能ブロック内にある内部メモリの接続を示す図 本実施の形態2に係る半導体集積回路装置の第2の機能ブロック内にある内部メモリの接続を示す図 本実施の形態3に係る半導体集積回路装置の構成を示すブロック図 本実施の形態3に係る半導体集積回路装置の第2の機能ブロック内にある内部メモリの接続を示す図 本実施の形態3に係る半導体集積回路装置の第3の機能ブロック内にある内部メモリの接続を示す図 従来のシステムLSIのブロック図 従来のシステムLSIのブロック図 従来のシステムLSIのブロック図
符号の説明
100,200,300 半導体集積回路装置
110,210 第1の機能ブロック
113,123,213,223 セレクタ
120,220 第2の機能ブロック
131 SDRAM制御回路
132 DMAコントローラ
134 I/O制御回路
141,142 ローカルバス
143 グローバルバス
144,145 バスブリッジ
152 クロック発生回路
161 外部電源
162 電源レギュレータ
230 第3の機能ブロック
240 第4の機能ブロック
250 第5の機能ブロック

Claims (9)

  1. 第1のシステムクロックを発生するPLL(Phase-Locked Loop)回路で構成した第1のクロック発生回路と、前記第1のシステムクロックによりデータを読み出し/書き込みする第1の内部メモリと、第1の選択回路とを有する第1の機能ブロックと、
    第2のシステムクロックを発生するPLL回路で構成した第2のクロック発生回路と、前記第2のシステムクロックによりデータを読み出し/書き込みする第2の内部メモリと、第2の選択回路とを有する第2の機能ブロックとを備え、
    前記第1の内部メモリは、前記第2の機能ブロックの仕事に対応する動作電圧、動作周波数、及び前記第1のクロック発生回路の出力信号の分周比率を動作プログラムの形で記憶し、
    前記第2の内部メモリは、前記第1の機能ブロックの仕事に対応する動作電圧、動作周波数、及び前記第2のクロック発生回路の出力信号の分周比率を動作プログラムの形で記憶し、
    前記第1の機能ブロック内のデータを前記第2の内部メモリに対して読み出し/書き込みする場合には、
    前記第1の機能ブロックは、前記第1の内部メモリから前記動作プログラムを読み出して実行し、
    前記第2の選択回路は、前記第1のシステムクロックと前記第2のシステムクロックのうち、前記第1のシステムクロックを前記第2の内部メモリを動作させるクロックとして選択し、
    前記第1の機能ブロック及び前記第2の内部メモリは、共に前記第1のシステムクロックで動作することで同期を取り、
    前記第2の機能ブロック内のデータを前記第1の内部メモリに対して読み出し/書き込みする場合には、
    前記第2の機能ブロックは、前記第2の内部メモリから前記動作プログラムを読み出して実行し、
    前記第1の選択回路は、前記第1のシステムクロックと前記第2のシステムクロックのうち、前記第2のシステムクロックを前記第1の内部メモリを動作させるクロックとして選択し、
    前記第2の機能ブロック及び前記第1の内部メモリは、共に前記第2のシステムクロックで動作することで同期を取る、
    ことを特徴とする半導体集積回路装置。
  2. 前記第1のシステムクロックの周波数は、前記第1の機能ブロックの演算処理量に依存して決定され、前記第2のシステムクロックの周波数は、前記第2の機能ブロックの演算処理量に依存して決定されることを特徴とする請求項1記載の半導体集積回路装置。
  3. 前記第1のシステムクロックの周波数と前記第2のシステムクロックの周波数は、無相関であることを特徴とする請求項1記載の半導体集積回路装置。
  4. 前記第1のクロック発生回路は、外部から供給されたシステムクロックを基に、前記第1の機能ブロックの時間軸に依存して変化する演算処理量を処理するに必要な周波数のシステムクロックを生成し、
    前記第2のクロック発生回路は、外部から供給されたシステムクロックを基に、前記第2の機能ブロックの時間軸に依存して変化する演算処理量を処理するに必要な周波数のシステムクロックを生成することを特徴とする請求項1記載の半導体集積回路装置。
  5. 前記第1の機能ブロックは、汎用CPUであり、前記第2の機能ブロックは、多機能DSPであることを特徴とする請求項1記載の半導体集積回路装置。
  6. 前記第2の機能ブロックは、複数の機能ブロックからなり、前記複数の機能ブロックは、該機能ブロック内の回路に供給するシステムクロックを発生するクロック発生回路と、発生した前記システムクロックによりデータを読み出し/書き込みする内部メモリとを有することを特徴とする請求項1記載の半導体集積回路装置。
  7. 前記第1及び第2の内部メモリは、レジスタ・ファイル又はキャシュ・メモリであることを特徴とする請求項1記載の半導体集積回路装置。
  8. 前記第2の機能ブロックに相当する機能ブロックを複数搭載することを特徴とする請求項1記載の半導体集積回路装置。
  9. DMAコントローラが前記複数の第2の機能ブロックに相当する機能ブロック内部のメモリ間相互の読み書きを制御することを特徴とする請求項1記載の半導体集積回路装置。
JP2006068400A 2006-03-13 2006-03-13 半導体集積回路装置 Expired - Fee Related JP4328334B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2006068400A JP4328334B2 (ja) 2006-03-13 2006-03-13 半導体集積回路装置
US11/684,897 US7757062B2 (en) 2006-03-13 2007-03-12 Semiconductor integrated circuit apparatus
US12/758,207 US8086814B2 (en) 2006-03-13 2010-04-12 Semiconductor integrated circuit apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006068400A JP4328334B2 (ja) 2006-03-13 2006-03-13 半導体集積回路装置

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2007302208A Division JP4667443B2 (ja) 2007-11-21 2007-11-21 半導体集積回路装置

Publications (2)

Publication Number Publication Date
JP2007249308A JP2007249308A (ja) 2007-09-27
JP4328334B2 true JP4328334B2 (ja) 2009-09-09

Family

ID=38480285

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006068400A Expired - Fee Related JP4328334B2 (ja) 2006-03-13 2006-03-13 半導体集積回路装置

Country Status (2)

Country Link
US (2) US7757062B2 (ja)
JP (1) JP4328334B2 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7906987B2 (en) * 2006-07-27 2011-03-15 Panasonic Corporation Semiconductor integrated circuit, program transformation apparatus, and mapping apparatus
JP2008091406A (ja) * 2006-09-29 2008-04-17 Matsushita Electric Ind Co Ltd 半導体集積回路のレイアウト方法
JP2008192841A (ja) * 2007-02-05 2008-08-21 Matsushita Electric Ind Co Ltd 半導体集積回路
JP4355348B2 (ja) * 2007-07-10 2009-10-28 パナソニック株式会社 クロック供給回路及びその設計方法
US8271827B2 (en) * 2007-12-10 2012-09-18 Qimonda Memory system with extended memory density capability
JP2009200739A (ja) 2008-02-20 2009-09-03 Panasonic Corp 半導体集積回路
JP5287297B2 (ja) * 2008-03-18 2013-09-11 株式会社リコー データ処理回路、省電力方法、省電力プログラム、記録媒体及び機器
JP5578811B2 (ja) * 2009-06-30 2014-08-27 キヤノン株式会社 情報処理装置、情報処理装置の制御方法及びプログラム
JP5683142B2 (ja) * 2010-06-18 2015-03-11 キヤノン株式会社 情報処理装置又は情報処理方法
CN103927131B (zh) * 2014-03-25 2017-02-15 四川和芯微电子股份有限公司 同步闪存u盘的启动方法及其控制系统
DE102017208835A1 (de) * 2017-05-24 2018-11-29 Wago Verwaltungsgesellschaft Mbh Verarbeitung von Prozessdaten

Family Cites Families (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03161815A (ja) 1989-11-20 1991-07-11 Matsushita Electric Ind Co Ltd クロック供給方式
JPH04175941A (ja) 1990-11-09 1992-06-23 Fuji Electric Co Ltd 共有メモリの制御方法およびその装置
JPH0520278A (ja) 1991-07-11 1993-01-29 Nec Corp マイクロコンピユータ
JP3161815B2 (ja) 1992-06-09 2001-04-25 太平洋セメント株式会社 セラミックスと金属の接合用ロウ材及びその接合方法
JP3468592B2 (ja) * 1994-08-10 2003-11-17 富士通株式会社 クロック信号発生回路
EP0708406B1 (en) 1994-10-19 2001-09-12 Advanced Micro Devices, Inc. Integrated processor systems for portable information devices
US5758132A (en) 1995-03-29 1998-05-26 Telefonaktiebolaget Lm Ericsson Clock control system and method using circuitry operating at lower clock frequency for selecting and synchronizing the switching of higher frequency clock signals
US5745375A (en) 1995-09-29 1998-04-28 Intel Corporation Apparatus and method for controlling power usage
KR100212139B1 (ko) * 1996-07-22 1999-08-02 윤종용 클럭공급장치
JPH10161769A (ja) 1996-12-02 1998-06-19 Hitachi Ltd 半導体装置
JPH10313264A (ja) 1997-05-12 1998-11-24 Mitsubishi Electric Corp 移動体通信端末
FR2770665B1 (fr) 1997-11-06 2002-12-20 Alsthom Cge Alkatel Dispositif d'echange entre unites de traitement d'informations a processeurs interconnectes par un bus commun
JPH11184554A (ja) 1997-12-24 1999-07-09 Mitsubishi Electric Corp クロック制御タイプ情報処理装置
JP3497720B2 (ja) 1998-02-09 2004-02-16 株式会社日立製作所 半導体集積回路
US6496729B2 (en) * 1998-10-28 2002-12-17 Medtronic, Inc. Power consumption reduction in medical devices employing multiple supply voltages and clock frequency control
JP2001022710A (ja) 1999-07-09 2001-01-26 Toshiba Corp 複数のバス制御装置を有するシステム
JP2001034573A (ja) 1999-07-23 2001-02-09 Matsushita Electric Ind Co Ltd メモリアクセスシステム及び方法
JP2002006981A (ja) 2000-06-20 2002-01-11 Fujitsu Ltd ディジタル制御装置
JP2002099433A (ja) 2000-09-22 2002-04-05 Sony Corp 演算処理システム及び演算処理制御方法、タスク管理システム及びタスク管理方法、並びに記憶媒体
US6988167B2 (en) * 2001-02-08 2006-01-17 Analog Devices, Inc. Cache system with DMA capabilities and method for operating same
JP4050027B2 (ja) 2001-09-28 2008-02-20 株式会社日立製作所 情報処理装置及び情報処理装置の制御方法
KR100454126B1 (ko) * 2002-01-15 2004-10-26 삼성전자주식회사 분리된 클록 라인을 구비한 정보 처리 시스템
US6868503B1 (en) 2002-01-19 2005-03-15 National Semiconductor Corporation Adaptive voltage scaling digital processing component and method of operating the same
JP3986950B2 (ja) 2002-11-22 2007-10-03 シャープ株式会社 Cpuおよびこれを備えた情報処理装置、cpuの制御方法
JP2004234047A (ja) 2003-01-28 2004-08-19 Matsushita Electric Ind Co Ltd 電子回路およびアセンブラ
JP4175941B2 (ja) 2003-04-15 2008-11-05 日本電波工業株式会社 水晶発振回路
JP4323873B2 (ja) * 2003-06-13 2009-09-02 富士通株式会社 入出力インタフェース回路
JP4549652B2 (ja) 2003-10-27 2010-09-22 パナソニック株式会社 プロセッサシステム
JP2005157929A (ja) 2003-11-28 2005-06-16 Matsushita Electric Ind Co Ltd 半導体装置
JP4562456B2 (ja) 2004-08-20 2010-10-13 パナソニック株式会社 半導体集積回路
JP2006253589A (ja) 2005-03-14 2006-09-21 Matsushita Electric Ind Co Ltd 半導体集積回路
US7227809B2 (en) * 2005-10-14 2007-06-05 Micron Technology, Inc. Clock generator having a delay locked loop and duty cycle correction circuit in a parallel configuration
JP2007109983A (ja) 2005-10-14 2007-04-26 Matsushita Electric Ind Co Ltd 半導体集積回路装置、電子機器及び半導体集積回路装置の製造方法

Also Published As

Publication number Publication date
US8086814B2 (en) 2011-12-27
US7757062B2 (en) 2010-07-13
US20100194455A1 (en) 2010-08-05
US20070214336A1 (en) 2007-09-13
JP2007249308A (ja) 2007-09-27

Similar Documents

Publication Publication Date Title
US7757062B2 (en) Semiconductor integrated circuit apparatus
JP2009200739A (ja) 半導体集積回路
CN102904553B (zh) 利用粗糙时钟门控的动态频率控制
TWI533117B (zh) 用於電力管理之裝置、積體電路及方法
US7907469B2 (en) Multi-port memory device for buffering between hosts and non-volatile memory devices
TWI463302B (zh) 用於協調效能參數之方法及相關之系統單晶片及邏輯電路
US20070005998A1 (en) Various apparatuses and methods for reduced power states in system memory
US11113113B2 (en) Systems and methods for scheduling virtual memory compressors
CN106415521B (zh) 多处理动态非对称和对称模式切换的硬件设备和方法
CN102521002A (zh) 可动态和选择性停用内核以及重新设定多内核微处理器
JP4996519B2 (ja) 仮想マルチプロセッサ、システムlsi、携帯電話機器、及び仮想マルチプロセッサの制御方法
US10969855B2 (en) Method of operating semiconductor device
US8499182B2 (en) Semiconductor device and data processing system
TW200522752A (en) Communication device and method having a shared local memory
JP2017138785A (ja) メモリを制御する制御装置及びその制御方法
KR100806284B1 (ko) 동적 전압 스케일링을 적용한 고효율 프로세서
JP2993466B2 (ja) 情報処理装置
CN1661576B (zh) Soc架构下的高速总线动态变频装置和处理器核接口
JP4667443B2 (ja) 半導体集積回路装置
US11226752B2 (en) Filtering memory calibration
JP2009037403A (ja) マルチコアプロセッサにおけるコアメモリの有効活用方法
TW527538B (en) Adapting system for access control mode of DRAM module slot
CN119690674A (zh) 处理器及其操作方法、处理系统、电子设备和存储介质
JPH0481934A (ja) 情報処理装置
JP2009296373A (ja) クロック生成回路、システムlsi

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080310

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080318

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080513

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081014

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081212

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090217

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090318

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20090422

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20090519

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090612

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120619

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120619

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130619

Year of fee payment: 4

LAPS Cancellation because of no payment of annual fees