JP2010287057A - Memory control circuit - Google Patents
Memory control circuit Download PDFInfo
- Publication number
- JP2010287057A JP2010287057A JP2009140436A JP2009140436A JP2010287057A JP 2010287057 A JP2010287057 A JP 2010287057A JP 2009140436 A JP2009140436 A JP 2009140436A JP 2009140436 A JP2009140436 A JP 2009140436A JP 2010287057 A JP2010287057 A JP 2010287057A
- Authority
- JP
- Japan
- Prior art keywords
- access
- memory
- circuit
- saving mode
- power saving
- 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
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Memory System (AREA)
Abstract
Description
本発明は、メモリ制御回路に関する。 The present invention relates to a memory control circuit.
近年のLSIは、チップ上にCPU以外にも多数のIP(Intellectual Property)を搭載し高機能化が進んでいる。また、個々のIPが同時にデータ処理を行おうとするためLSIと同時にシステム基板上に搭載されるメモリデバイスも高速、大容量のものが多数必要となってきている。
この要求を満たすため、昨今ではSDRAMデバイスがメモリデバイスとして用いられているが、更に高速アクセスのためにDDR−SDRAM或いはDDR2−SDRAM等の高速なメモリデバイスが複数個用いられている。このようなシステム、特にバッテリー駆動を前提とするシステムにおいては、システム全体での消費電力が無視できなくなってきている。
この解決方法として、特許文献1が既に公知となっている。
特許文献1では、メモリ制御回路は外部からのアクセスを一旦、アクセス保持回路にバッファリングし、蓄積された数回分のアクセスの中から、アクセスする前後での、データのハミング距離が小さくなるようにアクセスの順序を入れ替えている。
In recent years, LSIs are equipped with a large number of IPs (Intellectual Property) in addition to the CPU on a chip, and their functions have been advanced. In addition, since each IP tries to perform data processing at the same time, a large number of high-speed, large-capacity memory devices are required on the system board simultaneously with the LSI.
In order to satisfy this requirement, SDRAM devices are currently used as memory devices, but a plurality of high-speed memory devices such as DDR-SDRAM or DDR2-SDRAM are used for higher-speed access. In such a system, particularly a system based on battery driving, power consumption in the entire system cannot be ignored.
As a solution to this problem,
In
しかしながら、このような従来のメモリへのアクセスでは、メモリデバイス特有の省電力モードを活用することによる消費電力低減の概念がなく、時間的に変化するビット変化を抑制することでIOの消費電力を低減させている。LSI全体の消費電力のうちIO電力の占める割合が大きいためLSIでの消費電力は低減できるが、システム基板や外部メモリを含めたシステム全体における消費電力の低減効果が十分ではないという問題がある。 However, in such conventional memory access, there is no concept of reducing power consumption by utilizing the power saving mode unique to memory devices, and IO power consumption can be reduced by suppressing bit changes that change over time. It is reduced. Although the power consumption of the LSI can be reduced because the proportion of IO power in the power consumption of the entire LSI is large, there is a problem that the effect of reducing the power consumption of the entire system including the system board and the external memory is not sufficient.
本発明はこのような問題点に鑑みなされたもので、システム全体で消費電力を低減させることを目的とする。 The present invention has been made in view of such problems, and an object thereof is to reduce power consumption in the entire system.
そこで、本発明のメモリ制御回路は、省電力モードで動作する機能を有する複数のメモリにアクセスするメモリ制御回路であって、メモリに対するアクセスを複数、保持するアクセス保持手段と、前記アクセスが前記複数のメモリのどれに対するものであるかをデコードするデコード手段と、前記デコード手段のデコード結果と各メモリが省電力モードへ投入されているか否かの情報とから前記アクセス保持手段に保持されている複数のアクセスと外部からのアクセスとのリオーダを行うリオーダ手段と、前記アクセス保持手段は、前記リオーダ手段の前記リオーダの結果に応じてアクセス順序を入れ替える。 Therefore, a memory control circuit according to the present invention is a memory control circuit that accesses a plurality of memories having a function of operating in a power saving mode, the access holding means for holding a plurality of accesses to the memory, and the access includes the plurality of accesses. A plurality of memories held in the access holding means based on a decoding means for decoding to which of the memories, a decoding result of the decoding means and information on whether or not each memory is put into a power saving mode The reordering means for reordering the access and the access from the outside, and the access holding means switch the access order according to the result of the reordering by the reordering means.
本発明によれば、システム全体で消費電力を低減させることができる。 According to the present invention, power consumption can be reduced in the entire system.
以下、本発明の実施形態について図面に基づいて説明する。 Hereinafter, embodiments of the present invention will be described with reference to the drawings.
<第1の実施形態>
以下、図1、図2、図3に基づき、メモリ制御回路を説明する。
図1は、メモリ制御回路の概略ブロック図である。図1にて100は、第1の実施形態のメモリ制御回路である。201、202は、メモリ制御回路100によってアクセスされるメモリである。101は、メモリ201、202を省電力モードへ投入、又は解除をする省電力モード制御回路である。102は、省電力モード制御回路101によりメモリ201、202が省電力モードに投入されているか監視する省電力モード監視回路である。103は、アクセスを複数保持するアクセス保持回路である。104は、アクセス保持回路103の先頭に登録されているアクセスを取り出し、メモリ201、202へアクセスするためのコマンドに変換し、発行するメモリコマンド生成回路である。105は、外部からのアクセスがメモリ201、202のどちらに対するものかデコードするデコード回路である。106は、アクセス保持回路103の保持する複数アクセスとデコード回路105のデコード結果と省電力モード監視回路102の情報とから外部からのアクセスをアクセス保持回路103のどこに登録するかを決定するリオーダ回路である。
<First Embodiment>
Hereinafter, the memory control circuit will be described with reference to FIG. 1, FIG. 2, and FIG.
FIG. 1 is a schematic block diagram of a memory control circuit. In FIG. 1,
図2は、リオーダ回路が外部からのアクセスをアクセス保持回路のどこに登録するかを決定するフローチャートである。図3は、リオーダ回路の指示を受けてアクセス保持回路がアクセスの順番を入れ替えるフローチャートである。図2、図3において、PTRは、アクセス保持回路103が保持するアクセスの数である。CMDQは、アクセス保持回路103が保持するアクセスの配列である。POSは、外部からのアクセスをCMDQのどこに登録するかを示す。
以下、図4等に基づき、メモリ制御回路の動作を説明する。
図4は、メモリ制御回路の動作を説明するための波形の一例を示す図である。図4においてCLKは、メモリ制御回路100、メモリ201、202を動作させるためのクロックである。PDWN[0]、PDWN[1]は、メモリ201、202を省電力モードに投入するための図示しない外部からのトリガ信号である。PDWN[0]が'H'になると省電力モード制御回路101は、メモリ201を省電力モードに投入する。また、PDWN[1]が'H'になると省電力モード制御回路101は、メモリ202を省電力モードに投入する。
CKE[0]、CKE[1]は、メモリ201、202を省電力モードにするための信号である。CKE[0]が'L'になるとメモリ201は、省電力モードに投入され、CKE[1]が'L'になるとメモリ202は、省電力モードに投入される。PUSHは、外部からのアクセスをアクセス保持回路103に登録するための外部からのトリガ信号である。CMD_INは、PUSHが'H'のときにアクセス保持回路103に登録される外部からのアクセスである。CMDQ[0]〜CMDQ[3]は、アクセス保持回路103に登録されているアクセスである。CMDQ[0]から順にメモリコマンド生成回路104に取り出される。CMDは、メモリコマンド生成回路104により生成され、メモリ201、202に送信されるアクセスである。POPは、メモリコマンド生成回路104がアクセス保持回路103から先頭のアクセスを取り出すためのトリガ信号である。POPが'H'になるとアクセス保持回路103は、CMDQを1つシフトする。
T1において、PDWN_EN[1]が'H'であるため省電力モード制御回路101はCKE[1]を'L'にする。
FIG. 2 is a flowchart for determining where in the access holding circuit the access from the outside is registered by the reorder circuit. FIG. 3 is a flowchart in which the access holding circuit changes the access order in response to an instruction from the reorder circuit. 2 and 3, PTR is the number of accesses held by the access holding circuit 103. CMDQ is an array of accesses held by the access holding circuit 103. The POS indicates where the access from the outside is registered in the CMDQ.
The operation of the memory control circuit will be described below with reference to FIG.
FIG. 4 is a diagram showing an example of waveforms for explaining the operation of the memory control circuit. In FIG. 4, CLK is a clock for operating the
CKE [0] and CKE [1] are signals for setting the
At T1, since PDWN_EN [1] is “H”, the power saving
T2において、CKE[1]が'L'であるためメモリ202は省電力モードへ移行する。
T3〜T8において、PUSHが'H'となりアクセスA〜FがCMD_INとしてアクセス保持回路103に入力される。ここではアクセスC、Eがメモリ202へのアクセスであり、それ以外はメモリ201へのアクセスであるものとする。
T3において、PUSHが'H'となりアクセスAがアクセス保持回路103に入力される。このときデコード回路105は、アクセスAがメモリ201へのアクセスであることを算出し、リオーダ回路106に通知する。リオーダ回路106は、図2の処理に基づいてアクセスAがアクセス保持回路103のどこに登録されるかを示すPOSを生成する。ここではメモリ201は、省電力モードではなく、PTR=0であるため、POS=0となる。これを受けてアクセス保持回路103はアクセスAをCMDQ[0]に登録する。
T4において、PUSHが'H'となりアクセスBがアクセス保持回路103に入力される。このときデコード回路105は、アクセスBがメモリ201へのアクセスであることを算出し、リオーダ回路106に通知する。リオーダ回路106は、図2の処理に基づいてアクセスBがアクセス保持回路103のどこに登録されるかを示すPOSを生成する。ここではメモリ201は、省電力モードではなく、PTR=1であるため、POS=1となる。これを受けてアクセス保持回路103はアクセスBをCMDQ[1]に登録する。
T5において、アクセスAがメモリ201に発行されてPOPが'H'となる。またPUSHが'H'となりアクセスCがアクセス保持回路103に入力される。このときデコード回路105は、アクセスCがメモリ202へのアクセスであることを算出し、リオーダ回路106に通知する。リオーダ回路106は、図2の処理に基づいてアクセスCがアクセス保持回路103のどこに登録されるかを示すPOSを生成する。ここではメモリ202は省電力モードであり、PTR=2であるため、POS=2となる。これを受けてアクセス保持回路103は、アクセスCをCMDQ[2]に登録する。しかしながら、同時にPOPが'H'となっているため、アクセス保持回路103は、CMDQを1つシフトし、アクセスBがCMDQ[0]に、アクセスCがCMDQ[1]に登録する。
At T2, since CKE [1] is 'L', the memory 202 shifts to the power saving mode.
From T3 to T8, PUSH becomes “H”, and accesses A to F are input to the access holding circuit 103 as CMD_IN. Here, it is assumed that the accesses C and E are accesses to the memory 202, and the other accesses are accesses to the
At
At
At T5, access A is issued to the
T6において、PUSHが'H'となりアクセスDがアクセス保持回路103に入力される。このときデコード回路105は、アクセスDがメモリ201へのアクセスであることを算出し、リオーダ回路106に通知する。リオーダ回路106は、図2の処理に基づいてアクセスDがアクセス保持回路103のどこに登録されるかを示すPOSを生成する。ここではメモリ201は、省電力モードではなく、PTR=2であり、CMDQ[1]のアクセスCが省電力モードのメモリ202へのアクセスであるため、POS=1となる。これを受けてアクセス保持回路103はアクセスCをCMDQ[1]からCMDQ[2]へシフトし、アクセスDをCMDQ[1]に登録する。
T7において、アクセスBがメモリ201に発行されてPOPが'H'となる。またPUSHが'H'となりアクセスEがアクセス保持回路103に入力される。このときデコード回路105は、アクセスEがメモリ202へのアクセスであることを算出し、リオーダ回路106に通知する。リオーダ回路106は図2の処理に基づいてアクセスEがアクセス保持回路103のどこに登録されるかを示すPOSを生成する。ここではメモリ202は省電力モードであり、PTR=3であるため、POS=3となる。これを受けてアクセス保持回路103は、アクセスCをCMDQ[3]に登録するが、同時にPOPが'H'となっているため、CMDQは1つシフトされ、アクセスEはCMDQ[2]に登録される。
At T 6, PUSH becomes “H”, and access D is input to the access holding circuit 103. At this time, the decoding circuit 105 calculates that the access D is an access to the
At T7, access B is issued to the
T8において、PUSHが'H'となりアクセスFがアクセス保持回路103に入力される。このときデコード回路105は、アクセスFがメモリ201へのアクセスであることを算出し、リオーダ回路106に通知する。リオーダ回路106は、図2の処理に基づいてアクセスFがアクセス保持回路103のどこに登録されるかを示すPOSを生成する。ここではメモリ201は省電力モードではなく、PTR=3であり、CMDQ[1]とCMDQ[2]のアクセスC、アクセスEが省電力モードのメモリ202へのアクセスであるため、POS=1となる。これを受けてアクセス保持回路103は、アクセスC、アクセスEをCMDQ[2]、CMDQ[3]へシフトし、アクセスFをCMDQ[1]に登録する。
T9、T11において、アクセスD、アクセスFがメモリ201に発行される。
T12において、アクセスCがアクセス保持回路103の先頭になり、省電力モード制御回路101は、メモリ202の省電力モードを解除する。つまりCKE[1]を'H'にする。
T13において、メモリ202はCKE[1]が'H'になったことを検知し、省電力モードから抜ける。
T16において、メモリコマンド生成回路104は、メモリ202が省電力モードから復帰するのを待ってアクセスCを発行する。ここではメモリの省電力モードからの復帰サイクルを3サイクルとしている。
T18において、アクセスEがメモリ202に発行される。
図5にリオーダ機能を無効にした場合の波形を示す。図5ではメモリ202が省電力モードに投入されている時間が6サイクルであるのに対して、リオーダ機能を有効にした図4では11サイクルに延長される。
At T <b> 8, PUSH becomes “H”, and access F is input to the access holding circuit 103. At this time, the decode circuit 105 calculates that the access F is an access to the
At T9 and T11, access D and access F are issued to the
At T 12, access C becomes the head of the access holding circuit 103, and the power saving
At T13, the memory 202 detects that CKE [1] has become “H” and exits the power saving mode.
At T16, the memory command generation circuit 104 issues an access C after waiting for the memory 202 to return from the power saving mode. Here, the return cycle from the power saving mode of the memory is 3 cycles.
At T18, access E is issued to the memory 202.
FIG. 5 shows a waveform when the reorder function is disabled. In FIG. 5, the time during which the memory 202 is put into the power saving mode is 6 cycles, whereas in FIG. 4 in which the reorder function is enabled, it is extended to 11 cycles.
<第2の実施形態>
第1の実施形態では省電力モードのメモリに対するアクセスは必ず省電力モードでないメモリに対するアクセスに追い越されるものとした。しかしながら、省電力モードであるメモリに対するアクセス性能を考慮し、1つのアクセスが他のアクセスに追い越される回数の上限を設けてもよい。
例えば、アクセス保持回路103は、アクセスごとのカウンタを持ち、追い越された回数をそれぞれカウントする。カウント値が一定回数に達するとその旨をリオーダ回路106に通知する。リオーダ回路106は、カウント値が一定回数に達したアクセスは他のアクセスによって追い越されないようにPOSを生成する。このときのリオーダ回路106がアクセスをアクセス保持回路103のどこに登録するかを決定する処理の一例を図6に示す。これにより一定回数追い越しされたアクセスはそれ以上他のアクセスによって追い越されないように制限することができる。
<Second Embodiment>
In the first embodiment, the access to the memory in the power saving mode is always overtaken by the access to the memory not in the power saving mode. However, in consideration of the access performance to the memory in the power saving mode, an upper limit of the number of times one access is overtaken by another access may be set.
For example, the access holding circuit 103 has a counter for each access and counts the number of overtakings. When the count value reaches a certain number of times, the reorder circuit 106 is notified to that effect. The reorder circuit 106 generates a POS so that an access whose count value reaches a certain number of times is not overtaken by another access. FIG. 6 shows an example of processing in which the reorder circuit 106 at this time determines where the access holding circuit 103 registers access. As a result, the access overtaken a certain number of times can be limited so that it is not overtaken by any other access.
<第3の実施形態>
第1の実施形態では省電力モードのメモリに対するアクセスは必ず省電力モードでないメモリに対するアクセスに追い越されるものである。省電力モードであるメモリに対するアクセス性能を考慮し、1つのアクセスがアクセス保持回路103に登録されてから一定時間経過した場合は他のアクセスに追い越されないよう時間の上限を設けてもよい。
例えば、アクセス保持回路103は、アクセスごとのカウンタを持ち、アクセス保持回路103に登録されてからのサイクル数をカウントする。カウント値が一定回数に達するとその旨をリオーダ回路106に通知する。リオーダ回路106は、カウント値が一定回数に達したアクセスは他のアクセスによって追い越されないようにPOSを生成する。このときのリオーダ回路106がアクセスをアクセス保持回路103のどこに登録するかを決定する処理は第2の実施形態で示した図6と同じである。これによりアクセス保持回路103に登録されてから一定時間経過したアクセスはそれ以上他のアクセスによって追い越されないように制限することができる。
<Third Embodiment>
In the first embodiment, the access to the memory in the power saving mode is always overtaken by the access to the memory not in the power saving mode. Considering the access performance to the memory in the power saving mode, an upper limit of time may be set so that when a certain time elapses after one access is registered in the access holding circuit 103, it is not overtaken by another access.
For example, the access holding circuit 103 has a counter for each access, and counts the number of cycles after being registered in the access holding circuit 103. When the count value reaches a certain number of times, the reorder circuit 106 is notified to that effect. The reorder circuit 106 generates a POS so that an access whose count value reaches a certain number of times is not overtaken by another access. At this time, the reorder circuit 106 determines where to register the access in the access holding circuit 103, and is the same as that shown in FIG. 6 in the second embodiment. As a result, it is possible to limit an access that has passed for a certain period of time after being registered in the access holding circuit 103 from being overtaken by another access.
以上、上述した各実施形態によれば、複数のメモリデバイスに接続されるメモリ制御回路において、省電力モードに投入されたメモリに対するアクセスの処理優先度を下げる。このことにより長い時間メモリを省電力モードに投入しておくことができ、システム全体で消費電力を低減させることができる。 As described above, according to each of the embodiments described above, in the memory control circuit connected to a plurality of memory devices, the processing priority of access to the memory put into the power saving mode is lowered. As a result, the memory can be put into the power saving mode for a long time, and the power consumption can be reduced in the entire system.
以上、本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。 The preferred embodiments of the present invention have been described in detail above, but the present invention is not limited to such specific embodiments, and various modifications can be made within the scope of the gist of the present invention described in the claims.・ Change is possible.
100 メモリ制御回路 100 Memory control circuit
Claims (3)
メモリに対するアクセスを複数、保持するアクセス保持手段と、
前記アクセスが前記複数のメモリのどれに対するものであるかをデコードするデコード手段と、
前記デコード手段のデコードの結果と各メモリが省電力モードへ投入されているか否かの情報とから前記アクセス保持手段に保持されている複数のアクセスと外部からのアクセスとのリオーダを行うリオーダ手段と、
を有する、メモリ制御回路。 A memory control circuit for accessing a plurality of memories having a function of operating in a power saving mode,
Access holding means for holding a plurality of accesses to the memory;
Decoding means for decoding to which of the plurality of memories the access is;
Reordering means for reordering a plurality of accesses held in the access holding means and accesses from outside based on the decoding result of the decoding means and information on whether or not each memory is put into a power saving mode; ,
A memory control circuit.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009140436A JP2010287057A (en) | 2009-06-11 | 2009-06-11 | Memory control circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009140436A JP2010287057A (en) | 2009-06-11 | 2009-06-11 | Memory control circuit |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2010287057A true JP2010287057A (en) | 2010-12-24 |
Family
ID=43542706
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009140436A Pending JP2010287057A (en) | 2009-06-11 | 2009-06-11 | Memory control circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2010287057A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013524389A (en) * | 2010-04-14 | 2013-06-17 | クアルコム,インコーポレイテッド | Method of bus arbitration for low power memory access |
-
2009
- 2009-06-11 JP JP2009140436A patent/JP2010287057A/en active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013524389A (en) * | 2010-04-14 | 2013-06-17 | クアルコム,インコーポレイテッド | Method of bus arbitration for low power memory access |
US9842068B2 (en) | 2010-04-14 | 2017-12-12 | Qualcomm Incorporated | Methods of bus arbitration for low power memory access |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9281036B2 (en) | Memory device having an adaptable number of open rows | |
US7529955B2 (en) | Dynamic bus parking | |
US8675425B2 (en) | Single-strobe operation of memory devices | |
US8531893B2 (en) | Semiconductor device and data processor | |
KR101930183B1 (en) | Processor including multiple dissimilar processor cores that implement different portions of instruction set architecture | |
JP5414350B2 (en) | Memory control circuit and control method thereof | |
US9116856B2 (en) | Intelligent dual data rate (DDR) memory controller | |
US8190924B2 (en) | Computer system, processor device, and method for controlling computer system | |
KR20160038003A (en) | Early wake-warn for clock gating control | |
JP2011081553A (en) | Information processing system and control method thereof | |
JP2006236105A (en) | Access control unit and control method therefor | |
JP2006139879A (en) | Semiconductor memory | |
JP5932261B2 (en) | Memory control device and memory control method | |
JP2010287057A (en) | Memory control circuit | |
US20180181335A1 (en) | Apparatus and method to speed up memory frequency switch flow | |
JP5928272B2 (en) | Semiconductor integrated circuit and compiler | |
JP5528939B2 (en) | Microcomputer | |
JP2007220148A (en) | Microprocessor | |
JP2005235203A (en) | Microprocessor | |
JP3729827B2 (en) | Microprocessor | |
JP2002207541A (en) | Microcomputer and data processor | |
JP3718513B2 (en) | Information processing device | |
JP5218635B2 (en) | Semiconductor memory device | |
JP2003233584A (en) | Data transfer device | |
JP2011034324A (en) | Memory system |