JP2006293889A - チップイネーブル制御回路、メモリ制御回路、及びデータ処理システム - Google Patents
チップイネーブル制御回路、メモリ制御回路、及びデータ処理システム Download PDFInfo
- Publication number
- JP2006293889A JP2006293889A JP2005116704A JP2005116704A JP2006293889A JP 2006293889 A JP2006293889 A JP 2006293889A JP 2005116704 A JP2005116704 A JP 2005116704A JP 2005116704 A JP2005116704 A JP 2005116704A JP 2006293889 A JP2006293889 A JP 2006293889A
- Authority
- JP
- Japan
- Prior art keywords
- signal
- chip enable
- memory
- control circuit
- enable signal
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/20—Memory cell initialisation circuits, e.g. when powering up or down, memory clear, latent image memory
-
- E—FIXED CONSTRUCTIONS
- E04—BUILDING
- E04G—SCAFFOLDING; FORMS; SHUTTERING; BUILDING IMPLEMENTS OR AIDS, OR THEIR USE; HANDLING BUILDING MATERIALS ON THE SITE; REPAIRING, BREAKING-UP OR OTHER WORK ON EXISTING BUILDINGS
- E04G17/00—Connecting or other auxiliary members for forms, falsework structures, or shutterings
- E04G17/04—Connecting or fastening means for metallic forming or stiffening elements, e.g. for connecting metallic elements to non-metallic elements
- E04G17/042—Connecting or fastening means for metallic forming or stiffening elements, e.g. for connecting metallic elements to non-metallic elements being tensioned by threaded elements
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/22—Read-write [R-W] timing or clocking circuits; Read-write [R-W] control signal generators or management
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2207/00—Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
- G11C2207/22—Control and timing of internal memory operations
- G11C2207/2227—Standby or low power modes
Landscapes
- Engineering & Computer Science (AREA)
- Architecture (AREA)
- Mechanical Engineering (AREA)
- Civil Engineering (AREA)
- Structural Engineering (AREA)
- Memory System Of A Hierarchy Structure (AREA)
- Memory System (AREA)
Abstract
【課題】システム性能を低下させずに、低消費電力化を実現できるCE制御回路を提供する。
【解決手段】メモリの状態を制御するCE信号を生成し、メモリを動作可能状態にするときにCE信号を有効(Lレベル)にし、消費電力の低い低消費電力状態にするときにCE信号を無効(Hレベル)にするCE制御回路9であって、CE信号が有効である期間中に起動要求信号S_REQを受信しない場合には、CE信号が有効である期間を、起動要求信号S_REQからRE信号までの間隔に基づいて決定される期待値EVに応じた期間であって、CE信号ホールドタイム以上の期間に延ばし、この延ばされた期間の経過後にCE信号を無効にし、CE信号が有効である期間中に起動要求信号S_REQを受信した場合には、CE信号を有効のまま維持する。
【選択図】 図3
【解決手段】メモリの状態を制御するCE信号を生成し、メモリを動作可能状態にするときにCE信号を有効(Lレベル)にし、消費電力の低い低消費電力状態にするときにCE信号を無効(Hレベル)にするCE制御回路9であって、CE信号が有効である期間中に起動要求信号S_REQを受信しない場合には、CE信号が有効である期間を、起動要求信号S_REQからRE信号までの間隔に基づいて決定される期待値EVに応じた期間であって、CE信号ホールドタイム以上の期間に延ばし、この延ばされた期間の経過後にCE信号を無効にし、CE信号が有効である期間中に起動要求信号S_REQを受信した場合には、CE信号を有効のまま維持する。
【選択図】 図3
Description
本発明は、キャッシュメモリ付きの中央演算装置(CPU)とメモリとを搭載したシステムにおいてメモリのチップイネーブル(CE)信号を制御するチップイネーブル制御回路、このチップイネーブル制御回路を搭載したメモリ制御回路、及びこのメモリ制御回路を搭載したデータ処理システムに関するものである。
キャッシュメモリ付きのCPUとフラッシュメモリとを搭載したシステムとして、例えば、特開平8−76875号公報(特許文献1)に開示されたものがある。
図11は、CPU1と、キャッシュコントローラ2と、キャッシュメモリ3と、フラッシュメモリコントローラ4aと、フラッシュメモリ5とを搭載した従来のシステムの構成を示すブロック図である。このシステムにおいて、CPU1は、キャッシュコントローラ2を介してキャッシュメモリ3からのコードデータ又は共通バスからのコードデータを取り込み、取り込んだコードデータに従った演算等を実行する。CPU1が共通メモリからコードを読み出す場合は、キャッシュコントローラ2は、フラッシュメモリ5のアドレスを示す信号HADDRI、アドレスの有効/無効を示す信号HTRANSI、及び転送回数を示す信号HBURSTIを生成して、共通バス(アドレス側)に出力する。
図12は、従来のフラッシュメモリコントローラ4aの構成を示すブロック図である。フラッシュメモリコントローラ4aは、アドレスデコーダ回路6と、アドレス/リードイネーブル(RE)生成回路7と、データ出力回路8とを有している。アドレスデコーダ回路6は、共通バス(アドレス側)の信号HADDRI、HTRANSI、HBURSTI、及びHREADYI(前サイクルの転送終了を示す)を受け取り、起動要求信号S_REQとアドレスADDRを出力する。アドレス/RE生成回路7は、起動要求信号S_REQとアドレスADDRを受け取り、リードイネーブル信号(RE信号)とアドレス信号Flash(A)をフラッシュメモリ5に出力し、出力要求信号O_REQをデータ出力回路8に出力する。また、図12においては、フラッシュメモリ5のCE信号の入力端子T(CE)は、Lレベル(GND)に接続されており、フラッシュメモリ5は動作可能状態(活性化された状態)になっている。アドレス/RE生成回路7から出力される出力要求信号O_REQとフラッシュメモリ5から出力されたデータFlash(D)は、データ出力回路8に入力される。データ出力回路8は、信号HRDATAIを共通バス(データ側)に出力し、信号HREADYOを共通バス(アドレス側)に出力する。
図13は、上記した従来のシステムのキャッシュミスヒット時の動作波形図(CE信号を常に有効(Lレベル)とした場合、すなわち、CE制御を行わない場合)である。図13において、CPUCLKはCPU1の動作クロック、HCLKはCPU1が生成するクロック、MEMCLKはフラッシュメモリ5の動作クロック、Flash0(D)及びFlash1(D)はフラッシュメモリ5から出力されるデータを示す。CPU1からアドレスIAが出力されると(時間t131)、キャッシュコントローラ2は共通バス(アドレス側)に、信号HADDRI、HTRANSI、及びHBURSTIを出力する(時間t132)。信号HADDRI、HTRANSI、HBURSTI、及びHREADYIがフラッシュメモリ5へのアクセスであるならば、フラッシュメモリコントローラ4aのアドレスデコーダ回路6は、クロックHCLKに同期して、信号HADDRI、HTRANSI、HBURSTI、及びHREADYIを用いて起動要求信号S_REQを生成し、フラッシュメモリ5のアドレス値であるHADDRIを保持する。アドレス/RE生成回路7は、起動要求信号S_REQと保持したアドレス値HADDRIを受け、アドレスFlash(A)とRE信号を生成する(時間t133,t134)。フラッシュメモリ5は、クロックMEMCLKに同期して、アドレスFlash(A)に対するデータFlash(D)を出力し(時間t135)、データ出力回路8は、アドレス/RE生成回路7で生成される出力要求(図12のO_REQ)を待ち、そのデータHRDATAIを共通バスへ出力する(時間t136)。共通バスへ出力されたデータHRDATAIは、キャッシュコントローラ2を介し、データIDとしてCPU1へ入力される(時間t137)。
しかしながら、図12に示される従来のフラッシュメモリコントローラ4aでは、CE制御を行わないので(すなわち、フラッシュメモリ5のCE端子T(CE)はGNDに接続されているので)、フラッシュメモリ5のデータを使用しない期間であるキャッシュヒット時においても、フラッシュメモリ5が活性化されており、消費電力の増加を招くという問題があった。
また、図12に示される従来のフラッシュメモリコントローラに既存のCE制御を適用した場合には、キャッシュミスヒット時におけるサイクルの増加により、システムの性能を著しく低下させるという問題があった。この問題について、以下に説明する。
図14は、システムの性能の低下を説明するためのものであり、既存のCE制御(図12のCE信号をLレベル(有効)又はHレベル(無効)に制御する。)を適用した従来のシステムのキャッシュミスヒット時の動作波形図である。図14に示されるように、フラッシュメモリのCE信号がHレベル(低消費電力モード)であるときに、CPU1からアドレスIA(a0)が出力されると(時間t141)、キャッシュコントローラ2は信号HADDRI(a0)等を出力し(時間t142)、フラッシュメモリコントローラはCE信号をLレベル(有効)にし(時間t143)、アドレスFlash(A)をフラッシュメモリに供給し(時間t144)、RE信号をLレベル(読み取り許可)に設定する(時間t145)。しかし、フラッシュメモリ5に入力されるCE信号をLレベル(時間t143)にしてからフラッシュメモリ5が使用可能となるためには、フラッシュメモリ5のCEセットアップタイムが経過するのを待たなければならない。したがって、既存のCE制御のように、キャッシュヒットする毎に、フラッシュメモリコントローラがフラッシュメモリ5を低消費電力モード(CE信号をHレベル)に設定した場合は、キャッシュミスヒットが発生するたびに、フラッシュメモリ5のセットアップタイムの経過を待つことが必要となり、システムの性能が低下する原因となっていた。
そこで、本発明は、上記したような従来技術の課題を解決するためになされたものであり、システム性能を低下させずに、低消費電力化を実現できるチップイネーブル制御回路、メモリ制御回路、及びデータ処理回路を提供することにある。
本発明のチップイネーブル制御回路は、メモリの状態を制御するチップイネーブル信号を生成し、前記メモリを動作可能状態にするときに前記チップイネーブル信号を有効にし、前記メモリを動作可能状態より消費電力の低い低消費電力状態にするときに前記チップイネーブル信号を無効にするチップイネーブル信号生成手段と、前記メモリが動作可能状態であり続けることを許容する期間に対応する基準値を出力する基準値生成手段とを有し、前記チップイネーブル信号生成手段は、チップイネーブル信号が有効である期間中に前記メモリの起動要求信号を受信しない場合には、チップイネーブル信号が有効である期間を、前記基準値に応じた期間であって、前記メモリのチップイネーブル信号ホールドタイム以上の期間に延ばし、前記延ばされた期間の経過後に前記チップイネーブル信号を無効にすることを特徴とするものである。
また、本発明のメモリ制御回路は、上記したチップイネーブル制御回路と、メモリアクセス信号を受信し、この受信したメモリアクセス信号に基づいて前記起動要求信号を生成するアドレスデコーダ回路と、前記起動要求信号に基づいて前記リードイネーブル信号を生成するリードイネーブル生成回路とを有することを特徴とするものである。
また、本発明のデータ処理システムは、中央演算装置と、キャッシュメモリと、前記キャッシュメモリの動作を制御するキャッシュコントローラと、メモリと、前記キャッシュメモリコントローラからの指令に基づいて、前記メモリの動作を制御する、上記したメモリ制御回路とを有することを特徴とするものである。
本発明においては、チップイネーブル制御回路は、チップイネーブル信号が有効である期間中にメモリの起動要求信号を受信しない場合には、チップイネーブル信号が有効である期間を、メモリが動作可能状態であり続けることを許容する期間に対応する基準値に応じた期間であって、メモリのチップイネーブル信号ホールドタイム以上の期間に延ばし、この延ばされた期間の経過後にチップイネーブル信号を無効にする。このような制御により、メモリが必要以上に低消費電力状態にならないようにしているので、システム性能の低下を回避できるという効果が得られる。また、チップイネーブル信号を無効にする制御を行うことにより、低消費電力化を実現できるという効果が得られる。
<第1の実施形態>
図1は、本発明の第1の実施形態に係るCE制御回路が適用されるデータ処理システムの構成を示すブロック図である。図1に示されるように、このシステムは、CPU1と、キャッシュコントローラ2と、キャッシュメモリ3と、フラッシュメモリコントローラ4と、フラッシュメモリ5とを搭載したものである。CPU1は、キャッシュコントローラ2を介してキャッシュメモリ3からのコードデータ又は共通バスからのコードデータを取り込み、取り込んだコードデータに従った演算等を実行する。CPU1が共通メモリ(共通バスに接続されているメモリであり、フラッシュメモリ5を含む。)からコードを読み出す場合は、キャッシュコントローラ2は、フラッシュメモリ5のアドレスを示す信号HADDRI、アドレスの有効/無効を示す信号HTRANSI、及び転送回数を示す信号HBURSTIを生成して、共通バス(アドレス側)に出力する。
図1は、本発明の第1の実施形態に係るCE制御回路が適用されるデータ処理システムの構成を示すブロック図である。図1に示されるように、このシステムは、CPU1と、キャッシュコントローラ2と、キャッシュメモリ3と、フラッシュメモリコントローラ4と、フラッシュメモリ5とを搭載したものである。CPU1は、キャッシュコントローラ2を介してキャッシュメモリ3からのコードデータ又は共通バスからのコードデータを取り込み、取り込んだコードデータに従った演算等を実行する。CPU1が共通メモリ(共通バスに接続されているメモリであり、フラッシュメモリ5を含む。)からコードを読み出す場合は、キャッシュコントローラ2は、フラッシュメモリ5のアドレスを示す信号HADDRI、アドレスの有効/無効を示す信号HTRANSI、及び転送回数を示す信号HBURSTIを生成して、共通バス(アドレス側)に出力する。
図2は、図1に示されるフラッシュメモリコントローラ4の構成を示すブロック図である。図2に示されるように、フラッシュメモリコントローラ4は、アドレスデコーダ回路6と、アドレス/リードイネーブル(RE)生成回路7と、データ出力回路8と、CE制御回路9とを有している。アドレスデコーダ回路6は、共通バス(アドレス側)の信号HADDRI、HTRANSI、及びHBURSTIと前サイクルの転送終了を示す信号HREADYIを受け取り、起動要求信号S_REQをアドレス/RE生成回路7とCE制御回路9に出力し、アドレスADDRをアドレス/RE生成回路7に出力する。アドレス/RE生成回路7は、アドレスデコーダ回路6から起動要求信号S_REQとアドレスADDRを受け取り、CE制御回路9からウエイト信号WAITを受け取り、リードイネーブル信号(RE信号)とアドレス信号Flash(A)をフラッシュメモリ5に出力し、出力要求信号O_REQをデータ出力回路8に出力する。アドレス/RE生成回路7から出力される出力要求信号O_REQとフラッシュメモリ5から出力されたデータFlash(D)は、データ出力回路8に入力される。データ出力回路8は、信号HRDATAIを共通バス(データ側)に出力し、信号HREADYOを共通バス(アドレス側)に出力する。
図3は、図2に示されるCE制御回路9の構成を示すブロック図である。図3に示されるように、CE制御回路9は、カウント値COUNTを出力するカウンタ10と、期待値EVを出力する期待値レジスタ11と、期待値EVを生成する期待値決定回路12と、RE信号を有効にさせるための信号であるウエイト信号WAITをアドレス/RE生成回路7に出力するウエイト生成回路13と、カウント値COUNTと期待値EVとに基づいたレベル(有効又は無効)のCE信号を出力する一致判定回路14とを有している。
図4は、図3に示される期待値決定回路12の構成を示すブロック図である。図4に示されるように、期待値決定回路12は、RE信号の立ち上がりを検出してRE立ち上がり検出信号(パルス信号)RE_DETを出力するRE立ち上がり検出回路15と、RE立ち上がり検出信号RE_DETの入力によりタイマー値TIMERをリセットし、起動要求信号S_REQの入力により動作を停止するタイマー16と、タイマー値TIMERと期待値EVとの関係を保持するテーブル保持部17とを有している。
図5は、図4に示されるテーブル保持部17が保持するテーブルの一例を示す図である。テーブル保持部17は、タイマー値TIMERに対応する期待値EVのデータを持ち、タイマー値TIMERに応じた値を期待値レジスタ11へ出力する。例えば、図6に示すように、タイマー値TIMERが比較的小さい場合(すなわち、タイマー値TIMERが小さいということは、フラッシュメモリ5の起動要求信号S_REQを頻繁に受信するということであり、キャッシュミスが連続する場合である。)、テーブル保持部17は、最小サイクル(ここでは“17”)を出力する。図5において、E1,E2,E3は、フラッシュメモリ5が動作可能状態であり続けることが許容される期間に対応する基準値である。E1,E2,E3は、E1<E2<E3を満たし、例えば、E1は“17”、E2は“26”、E3は“30”とで設定されている。
次に、第1の実施形態に係るCE制御回路9、フラッシュメモリコントローラ4、及びデータ処理システムの動作を説明する。図6は、第1の実施形態の動作波形図(その1)である。図6は、前サイクルの終了から次サイクルの開始までの期間が短い場合を例示している。
CPU1からの指令に基づき、キャッシュコントローラ2から、共通バス(アドレス側)に、信号HADDRI、HTRANSI(図6には示さず)、HBURSTI(図6には示さず)、及びHREADYI(図6には示さず)が出力されると(時間t601)、フラッシュメモリコントローラ4において、アドレスデコーダ回路6は、起動要求信号S_REQをアドレス/RE生成回路7とCE制御回路9に出力し(時間t601)、アドレスADDRをアドレス/RE生成回路7に出力する。
フラッシュメモリコントローラ4において、CE制御回路9は、アドレスデコーダ回路6からの起動要求信号S_REQ(Hレベル)を受け(時間t601)、CE制御回路9内のカウンタ10に初期値を設定する。この初期値は、フラッシュメモリ5の状態によって異なるステータス値であり、フラッシュメモリ5が低消費電力モードのとき(すなわち、CE信号がHレベル(無効)のとき)には、例えば、“0”に設定し、フラッシュメモリ5が動作モード(すなわち、CE信号がLレベル(有効)のとき)のときには、例えば、“2”を設定する。図6の例においては、カウンタ10の初期値として“2”が設定される(時間t602、t607)。
また、図6の例においては、CE制御回路9内の期待値レジスタ11へ、期待値決定回路12内のタイマー16から出力されるタイマー値TIMERに対応する値が設定される(時間t602)。このタイマー値TIMERに対応する値は、フラッシュメモリ5が動作状態であり続けることを許す時間に対応する値として、テーブル保持部17(図5)において選択された値(期待値EV)である。時間t601において起動要求信号S_REQ(Hレベル)を受けたときのタイマー値TIMERは、“6”であるから、図5のテーブルから期待値EVとしてE1(図6においては“17”)が設定される。
期待値レジスタ11に期待値EVが設定されると(時間t602)、期待値EV(図6においては“17”)とカウント値COUNT(図6においては“2”)は、不一致であるため、一致判定回路14は、CE信号としてLレベル(有効)を出力する(時間t602)。なお、図6の例においては、時間t602以前においても、CE信号はLレベルであるので、時間t602においてCE信号は変化せずLレベルを維持する。
クロックHCLKの立ち上がり毎に、カウンタ10のカウント値COUNTは1ずつ加算される。例えば、カウンタ10のカウント値COUNTが“3”以上(“3”は所定の設定値である。)になると(時間t603)、ウエイト信号WAIT(図2及び図3に示す。)を解除し、アドレス/RE生成回路7が起動し、RE信号がLレベル(読み取り許可)になる(時間t604)。
CE制御回路9において、カウンタ10のカウント値COUNTと期待値レジスタ11から出力される期待値EVが一致したとき、一致判定回路14は、CE信号としてHレベル(無効)を出力し、カウンタ10は動作を止める。この状態は、例えば、後述する図7の時間t701以降に示されており、カウント値COUNTが“18”で期待値EVと一致し、カウンタの動作が止まる場合が示されている。
CE制御回路9において、カウンタ10が動作中に、アドレスデコーダ回路6からの起動要求S_REQを受けた場合、カウンタ10のカウント値COUNTと期待値レジスタ11から出力される期待値EVの設定が行われる(時間t602、t607)。図6の例においては、CE信号がLレベルであるので、カウント値COUNTの初期値は“2”であり、期待値EVは“17”に設定される。なお、図6には示されていないが、CE信号がHレベルであるときに起動要求S_REQを受けた場合、カウント値COUNTの初期値は“0”である(後述する図7の時間t702に示されている)。
起動したアドレス/RE生成回路7は、保持した信号HADDRIに対応するメモリアドレス(Flash(A))を出力し、RE信号をLレベルへ変化させる(時間t604)。その4クロック後(1回分の転送終了後)に、RE信号をHレベル(読み取り不許可)に変化させる(時間t605)。
フラッシュメモリ5は、内部がパイプライン化されており、その初期化、リードBIAS初期化のため、リードサイクルに対し、クロックMEMCLKの2クロック分のセットアップと、データホールドのためにクロックMEMCLKの1クロック分のホールド時間を必要とする。フラッシュメモリ5では、CE制御回路9からのCE信号を受け、クロックMEMCLKの立ち上がり毎に、その初期化、リードBIAS初期化を行う。その後、アドレス/RE生成回路7からのメモリアドレス、RE信号をクロックMEMCLKの立ち上がりで受け、メモリアドレスを受けたクロックMEMCLKの1クロック後に、そのアドレスに対応するデータFlash(D)を出力する。
データ出力回路8は、フラッシュメモリ5の出力データFlash(D)を保持し、バスのタイミング規定に応じて保持されたデータHRDATAI,HREADYOを出力する。
CE制御回路9内の期待値決定回路12は、RE信号が立ち上がると、RE立ち上がり検出回路15で、1ショットのパルス(RE立ち上がり検出信号)RE_DETを生成し、期待値決定回路12内のタイマー16は、リセットされる。その後、起動要求信号S_REQが立ち上がるまで、クロックHCLKの立ち上がり毎に、タイマー16は、タイマー値TIMERをカウントアップし、起動要求信号S_REQが立ち上がったときに、カウントアップ動作を停止する。期待値決定回路12は、タイマー16がカウントアップ動作を停止したときのタイマー値TIMERに基づく期待値EVを出力する。一致判定回路14は、期待値EV(すなわち、RE信号が立ち上がる時点から起動要求信号S_REQを受信した時点までの期間に応じた値)に基づいて、CE信号が有効(Lレベル)である期間を制御する。図6の例においては、CE信号が有効である期間中に起動要求信号S_REQを受信しており(図6の時間t601、t606)、起動要求信号S_REQの受信時にはカウント値COUNTを初期値にして、CE信号を有効のまま維持している。
図7は、第1の実施形態の動作波形図(その2)である。図7は、前サイクルの終了から次サイクルの開始までの期間が長い場合を例示している。図7に示すように、タイマー値が大きい場合(キャッシュヒットが連続した後のアクセス、又は、実行サイクルが長いコードの場合)、テーブル保持部17は、最大サイクル(ここでは、“30”)を出力する。図7の例では、時間t701において、CE信号がHレベル(無効)になっており、フラッシュメモリ5が低消費電力モードになっているので、CEセットアップタイム分のサイクル増加が生じる。増加したサイクル分を補うため、期待値決定回路12内のテーブル保持部17からは、最大値(ここでは、“30”)を選択し、期待値EVとして出力する(時間t701)。一致判定回路14は、期待値EV(すなわち、RE信号が立ち上がる時点から起動要求信号S_REQを受信した時点までの期間に応じた値)に基づいて、CE信号が有効(Lレベル)である期間を制御する。図7の例においては、CE信号がLレベル(有効)である期間中に起動要求信号S_REQを受信せず、チップイネーブル信号が有効である期間を、期待値EVに応じた期間であって、フラッシュメモリ5に固有のCE信号ホールドタイム(CPUCLKで4クロック)以上の期間(図7の時間t701までの期間)に延ばし、この延ばされた期間の経過後にCE信号をHレベル(無効)にする(図7の時間t701)。
以上に説明したように、第1の実施形態においては、CE制御回路9は、前サイクルのメモリアクセス終了から現サイクルの起動までの時間(図6において時間tA6〜tB6であるが、タイマーは時間t608からの時間を計測している。)を測定し、この時間が短いきには、キャッシュミス連続中であると判定して、期待値EVを小さくしている(例えば、図6のt602において期待値EVを“17”に設定)。一方、CE制御回路9は、前サイクルのメモリアクセス終了から現サイクルの起動までの時間(図7において時間tA7〜tB7であるが、タイマーは時間t703からの時間を計測している。)が長いときには、キャッシュミス開始時(すなわち、キャッシュヒットが連続していて、その後キャッシュミスが生じたとき)であると判定して、期待値EVを大きくしている(例えば、図7のt702において期待値EVを“30”に設定)。このように、キャッシュミス開始時に期待値EVを大きくし、CE信号が無効(Hレベル)になる時点を遅らせているので、従来のCE制御のようにCE信号が無効なる(図14の時間t146)頻度を減らすことができ、CEセットアップのために要する時間を節約できるので、CPU1のパフォーマンスの低下を回避できる。具体的に言えば、図14(従来)の場合には、前サイクルのメモリアクセス終了(時間tA14)から、現サイクルの起動(時間tB14)までの時間は、CPUクロックで16サイクルであったが、図6(第1の実施形態)の場合には、前サイクルのメモリアクセス終了(時間tA6)から、現サイクルの起動(時間tB6)までの時間は、CPUクロックで12サイクルとなり、CPUパフォーマンスの低減を回避できている。また、第1の実施形態においては、CE信号の制御は実行されるので、CE制御を行わない従来の場合(図13)に比べて、消費電力を下げる効果が得られる。
<第2の実施形態>
図8は、第2の実施形態に係るCE制御回路9aの構成を示すブロック図である。図8において、図3の構成と対応する構成には同じ符号を付す。図8のCE制御回路9aは、図3の期待値レジスタ11及び期待値決定回路12に代えて、固定値設定回路18を備えた点が、図3のCE制御回路9と相違する。
図8は、第2の実施形態に係るCE制御回路9aの構成を示すブロック図である。図8において、図3の構成と対応する構成には同じ符号を付す。図8のCE制御回路9aは、図3の期待値レジスタ11及び期待値決定回路12に代えて、固定値設定回路18を備えた点が、図3のCE制御回路9と相違する。
固定値設定回路18が出力する固定値FVは、データ処理システム(図1)が実行するプログラムのサイクル分布に基づいて決定する。図9は、サイクル分布をシミュレーション計算によって得たものを示すグラフである。図9において、横軸は、1回のデータ転送にどれだけのクロックを要したかを示すサイクル数、縦軸はそれぞれのサイクル数を要した転送の発生回数を示す。なお、図9の曲線は、一例に過ぎず、縦方向の破線の直線は、固定値FVに相当する。図9の直線FVの右側の領域においては、CE信号が無効になる制御が行われるので、システム性能は低下するが消費電力の低減効果が増大する。また、図9の直線FVの左側の領域においては、CE信号が無効にならない制御が行われるのでシステム性能は高いが消費電力の低減は実現できない。したがって、固定値FVの値は、要求されるシステム性能と、要求される消費電力の低減との両方を考慮して決定すればよい。
図10は、第2の実施形態の動作波形図である。CE制御回路9aでは、アドレスデコーダ回路6からの起動要求信号S_REQを受け、カウント値COUNTが設定される(時間t1001)。固定値FVとカウント値COUNTは、不一致のため、一致判定回路14により、CE信号は、Lレベル(有効)を出力する(図10においては、Lレベルを維持し続ける)。
クロックHCLKの立ち上がり毎に、カウント値COUNTが1ずつ加算されていき、カウント値COUNTが3以上になるとウエイト信号WAITを解除し(時間t1002)、アドレス/RE生成回路7が起動し、RE信号をLレベル(読み取り許可)にする(時間t1002)。カウント値COUNTと固定値FVが一致したとき、一致判定回路14により、CE信号はHレベル(無効)となり、カウンタ10は動作を止める(図10には示さず)。
以上のように、第2の実施形態によれば、CE信号がLレベルである期間の幅を使用されるプログラムのサイクル分布に基づいて求め、サイクル数が所定レベル(固定値FV)以上の場合のみ、CE信号をHレベルにすることで、CPUパフォーマンスを下げず、消費電力を抑えることが、より小規模の回路で実現でき、同時に、回路の低消費電力化、コスト削減にも効果がある。
なお、第2の実施形態において、上記以外の点は、上記第1の実施形態の場合と同じである。
<変形例>
なお、第1の実施形態においては、テーブル保持部17は、1度のタイマー値TIMERの計測に基づいて期待値EVを決定しているが、2度以上のタイマー値TIMERを計測し、複数の計測結果を加算・減算するなどして、複数の計測結果に基づいて期待値EVを学習させ、この期待値に基づいてCE制御を行うことも可能である。
なお、第1の実施形態においては、テーブル保持部17は、1度のタイマー値TIMERの計測に基づいて期待値EVを決定しているが、2度以上のタイマー値TIMERを計測し、複数の計測結果を加算・減算するなどして、複数の計測結果に基づいて期待値EVを学習させ、この期待値に基づいてCE制御を行うことも可能である。
なお、第2の実施形態では、一致判定回路14に入力される判定の基準値として期待値EVではなく固定値FVが用いられる場合を説明したが、レジスタを用いることによって、一致判定回路14に入力される判定の基準値を手動調整可能、又は、ソフト設定(すなわち、自動調整)可能にすることもできる。
1 CPU、
2 キャッシュコントローラ、
3 キャッシュメモリ、
4 フラッシュメモリコントローラ(メモリ制御回路)、
5 フラッシュメモリ、
6 アドレスデコーダ回路、
7 アドレス/RE生成回路、
8 データ出力回路、
9,9a チップイネーブル(CE)制御回路、
10 カウンタ、
11 期待値レジスタ、
12 期待値決定回路、
13 ウエイト生成回路、
14 一致判定回路、
15 リードイネーブル(RE)立ち上がり検出回路、
16 タイマー、
17 テーブル保持部、
18 固定値。
2 キャッシュコントローラ、
3 キャッシュメモリ、
4 フラッシュメモリコントローラ(メモリ制御回路)、
5 フラッシュメモリ、
6 アドレスデコーダ回路、
7 アドレス/RE生成回路、
8 データ出力回路、
9,9a チップイネーブル(CE)制御回路、
10 カウンタ、
11 期待値レジスタ、
12 期待値決定回路、
13 ウエイト生成回路、
14 一致判定回路、
15 リードイネーブル(RE)立ち上がり検出回路、
16 タイマー、
17 テーブル保持部、
18 固定値。
Claims (10)
- メモリの状態を制御するチップイネーブル信号を生成し、前記メモリを動作可能状態にするときに前記チップイネーブル信号を有効にし、前記メモリを動作可能状態より消費電力の低い低消費電力状態にするときに前記チップイネーブル信号を無効にするチップイネーブル信号生成手段と、
前記メモリが動作可能状態であり続けることを許容する期間に対応する基準値を出力する基準値生成手段と
を有し、
前記チップイネーブル信号生成手段は、チップイネーブル信号が有効である期間中に前記メモリの起動要求信号を受信しない場合には、チップイネーブル信号が有効である期間を、前記基準値に応じた期間であって、前記メモリのチップイネーブル信号ホールドタイム以上の期間に延ばし、前記延ばされた期間の経過後に前記チップイネーブル信号を無効にする
ことを特徴とするチップイネーブル制御回路。 - 前記チップイネーブル信号生成手段は、前記チップイネーブル信号が有効である期間中に前記起動要求信号を受信した場合には、前記チップイネーブル信号を有効のまま維持することを特徴とする請求項1に記載のチップイネーブル制御回路。
- 前記基準値生成手段は、前記メモリの起動要求信号及びリードイネーブル信号を受信し、
前記基準値は、前記受信した起動要求信号から前記受信したリードイネーブル信号までの間隔に基づいて決定される
ことを特徴とする請求項1又は2のいずれかに記載のチップイネーブル制御回路。 - 前記基準値生成手段は、
タイマー値を出力し、前記リードイネーブル信号を受信したときに前記タイマー値をリセットし、前記起動要求信号を受信したときに動作を停止するタイマーと、
前記タイマーから出力されるタイマー値に応じた前記基準値を出力するテーブル保持手段と
を有することを特徴とする請求項1から3までのいずれかに記載のチップイネーブル制御回路。 - 前記基準値生成手段は、前記基準値を、予め設定された値とすることを特徴とする請求項1又は2のいずれかに記載のチップイネーブル制御回路。
- 前記基準値生成手段は、前記基準値を調整可能とする手段を有することを特徴とする請求項5に記載のチップイネーブル制御回路。
- 前記基準値生成手段は、予め取得された前記メモリへのアクセスサイクルの分布データに基づいて前記基準値を調整する手段を有することを特徴とする請求項5に記載のチップイネーブル制御回路。
- 前記チップイネーブル信号生成手段は、
前記メモリの起動要求信号を受信したときにカウント値がリセットされるカウンタと、
前記カウンタのカウント値が前記基準値と一致したときに前記チップイネーブル信号を無効にする一致判定回路と
を有することを特徴とする請求項1から7までのいずれかに記載のチップイネーブル制御回路。 - 請求項1から8までのいずれか1項に記載のチップイネーブル制御回路と、
メモリアクセス信号を受信し、この受信したメモリアクセス信号に基づいて前記起動要求信号を生成するアドレスデコーダ回路と、
前記起動要求信号に基づいて前記リードイネーブル信号を生成するリードイネーブル生成回路と
を有することを特徴とするメモリ制御回路。 - 中央演算装置と、
キャッシュメモリと、
前記キャッシュメモリの動作を制御するキャッシュコントローラと、
メモリと、
前記キャッシュメモリコントローラからの指令に基づいて、前記メモリの動作を制御する、請求項9に記載のメモリ制御回路と
を有することを特徴とするデータ処理システム。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005116704A JP2006293889A (ja) | 2005-04-14 | 2005-04-14 | チップイネーブル制御回路、メモリ制御回路、及びデータ処理システム |
KR1020060004803A KR101250849B1 (ko) | 2005-04-14 | 2006-01-17 | 칩 인에이블 제어회로, 메모리 제어회로 및 데이터처리시스템 |
CN2006100089805A CN1848042B (zh) | 2005-04-14 | 2006-01-28 | 芯片启动控制电路,存储器控制电路和数据处理系统 |
US11/378,391 US7269082B2 (en) | 2005-04-14 | 2006-03-20 | Chip enable control circuit, memory control circuit, and data processing system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005116704A JP2006293889A (ja) | 2005-04-14 | 2005-04-14 | チップイネーブル制御回路、メモリ制御回路、及びデータ処理システム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006293889A true JP2006293889A (ja) | 2006-10-26 |
Family
ID=37077630
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005116704A Withdrawn JP2006293889A (ja) | 2005-04-14 | 2005-04-14 | チップイネーブル制御回路、メモリ制御回路、及びデータ処理システム |
Country Status (4)
Country | Link |
---|---|
US (1) | US7269082B2 (ja) |
JP (1) | JP2006293889A (ja) |
KR (1) | KR101250849B1 (ja) |
CN (1) | CN1848042B (ja) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200828099A (en) * | 2006-12-19 | 2008-07-01 | Realtek Semiconductor Corp | Flash memory device and renewing method, and program search method |
EP3422191B1 (en) * | 2010-07-29 | 2023-05-10 | Renesas Electronics Corporation | Semiconductor device and data processing system |
US10108684B2 (en) | 2010-11-02 | 2018-10-23 | Micron Technology, Inc. | Data signal mirroring |
US8856482B2 (en) | 2011-03-11 | 2014-10-07 | Micron Technology, Inc. | Systems, devices, memory controllers, and methods for memory initialization |
US9239806B2 (en) | 2011-03-11 | 2016-01-19 | Micron Technology, Inc. | Systems, devices, memory controllers, and methods for controlling memory |
CN102662711B (zh) * | 2012-04-06 | 2017-03-29 | 中兴通讯股份有限公司 | 一种芯片快速初始化方法及装置 |
KR20140122567A (ko) * | 2013-04-10 | 2014-10-20 | 에스케이하이닉스 주식회사 | 파워 온 리셋 회로를 포함하는 반도체 장치 |
US9117504B2 (en) | 2013-07-03 | 2015-08-25 | Micron Technology, Inc. | Volume select for affecting a state of a non-selected memory volume |
US10169274B1 (en) * | 2017-06-08 | 2019-01-01 | Qualcomm Incorporated | System and method for changing a slave identification of integrated circuits over a shared bus |
KR102462507B1 (ko) * | 2017-06-29 | 2022-11-02 | 삼성전자주식회사 | 프로세서, 이를 포함하는 컴퓨팅 장치 및 프로세서 저전력 모드 진입 방법 |
FR3111439B1 (fr) * | 2020-06-12 | 2023-06-30 | St Microelectronics Rousset | Procédé de gestion des requêtes d’accès à une mémoire vive et système correspondant |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5179540A (en) * | 1985-11-08 | 1993-01-12 | Harris Corporation | Programmable chip enable logic function |
US5134586A (en) * | 1990-08-17 | 1992-07-28 | Sgs-Thomson Microelectronics, Inc. | Semiconductor memory with chip enable control from output enable during test mode |
US5349565A (en) * | 1991-09-05 | 1994-09-20 | Mos Electronics Corporation | SRAM with transparent address latch and unlatched chip enable |
US5422855A (en) * | 1992-03-31 | 1995-06-06 | Intel Corporation | Flash memory card with all zones chip enable circuitry |
JPH0876875A (ja) * | 1994-09-07 | 1996-03-22 | Hitachi Ltd | マイクロコンピュータ応用システム |
US5848431A (en) * | 1995-02-21 | 1998-12-08 | Micron Technology, Inc. | Synchronous SRAMs having multiple chip select inputs and a standby chip enable input |
US6094703A (en) * | 1995-02-21 | 2000-07-25 | Micron Technology, Inc. | Synchronous SRAM having pipelined memory access enable for a burst of addresses |
US5701275A (en) * | 1996-01-19 | 1997-12-23 | Sgs-Thomson Microelectronics, Inc. | Pipelined chip enable control circuitry and methodology |
US7224623B2 (en) * | 2005-03-08 | 2007-05-29 | Infineon Technologies Ag | Memory device having off-chip driver enable circuit and method for reducing delays during read operations |
-
2005
- 2005-04-14 JP JP2005116704A patent/JP2006293889A/ja not_active Withdrawn
-
2006
- 2006-01-17 KR KR1020060004803A patent/KR101250849B1/ko active IP Right Grant
- 2006-01-28 CN CN2006100089805A patent/CN1848042B/zh not_active Expired - Fee Related
- 2006-03-20 US US11/378,391 patent/US7269082B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
KR20060109291A (ko) | 2006-10-19 |
CN1848042B (zh) | 2012-08-08 |
KR101250849B1 (ko) | 2013-04-04 |
CN1848042A (zh) | 2006-10-18 |
US20060245275A1 (en) | 2006-11-02 |
US7269082B2 (en) | 2007-09-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2006293889A (ja) | チップイネーブル制御回路、メモリ制御回路、及びデータ処理システム | |
US8171326B2 (en) | L1 flush mechanism to flush cache for power down and handle coherence during flush and/or after power down | |
US7506192B2 (en) | Method and apparatus for adaptive power management of memory subsystem | |
JP5427775B2 (ja) | 低パワーキャッシュアクセスモードを備えたデータ処理デバイス | |
US8924651B2 (en) | Prefetch optimization in shared resource multi-core systems | |
US7392413B2 (en) | Changing of operating voltage in semiconductor integrated circuit | |
JP5709988B2 (ja) | メモリデバイスの消費電力を減らす方法およびシステム | |
TWI468926B (zh) | 處理器電力管理及方法 | |
US6185637B1 (en) | System for implementing an adaptive burst length for burst mode transactions of a memory by monitoring response times for different memory regions | |
US8127153B2 (en) | Memory power profiling | |
JP2011081553A (ja) | 情報処理装置及びその制御方法 | |
US10503471B2 (en) | Electronic devices and operation methods of the same | |
JP2015156196A (ja) | マイクロコンピュータ | |
JP2011181029A (ja) | データ転送制御装置 | |
US20020169930A1 (en) | Memory access control system, method thereof and host bridge | |
JP2002366509A (ja) | ダイレクトメモリアクセスコントローラおよびそのアクセス制御方法 | |
JP2002269980A (ja) | メモリ制御装置およびメモリ制御方法 | |
JP2009289232A (ja) | 半導体集積回路 | |
JP2006154897A (ja) | Dramコントローラ | |
JP2010287057A (ja) | メモリ制御回路 | |
JP2009230346A (ja) | 信号伝送装置、バスインタフェースおよび信号処理方法 | |
JPH1125034A (ja) | Cpu周辺回路 | |
JP2000357023A (ja) | クロック制御システム | |
JPH06180667A (ja) | 中央処理装置 | |
JP2008217295A (ja) | システムコントローラ |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20080701 |