JP3790697B2 - MEMORY DEVICE, CONTROL METHOD FOR MEMORY DEVICE, SEMICONDUCTOR DEVICE, AND INFORMATION PROCESSING DEVICE - Google Patents
MEMORY DEVICE, CONTROL METHOD FOR MEMORY DEVICE, SEMICONDUCTOR DEVICE, AND INFORMATION PROCESSING DEVICE Download PDFInfo
- Publication number
- JP3790697B2 JP3790697B2 JP2001321573A JP2001321573A JP3790697B2 JP 3790697 B2 JP3790697 B2 JP 3790697B2 JP 2001321573 A JP2001321573 A JP 2001321573A JP 2001321573 A JP2001321573 A JP 2001321573A JP 3790697 B2 JP3790697 B2 JP 3790697B2
- Authority
- JP
- Japan
- Prior art keywords
- threshold
- data
- rate control
- state
- control 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims description 43
- 239000004065 semiconductor Substances 0.000 title claims description 23
- 230000010365 information processing Effects 0.000 title claims description 15
- 230000007704 transition Effects 0.000 claims description 27
- 238000003708 edge detection Methods 0.000 claims description 15
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 9
- 230000001360 synchronised effect Effects 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 6
- 230000000717 retained effect Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 24
- 230000007423 decrease Effects 0.000 description 14
- 238000001393 microlithography Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000009825 accumulation Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
Images
Landscapes
- Information Transfer Systems (AREA)
Description
【0001】
【発明の属する技術分野】
本発明は、ファーストイン・ファーストアウト型のメモリいわゆるFIFOメモリに関し、より詳細には所定のしきい値の範囲でデータ保有量が変動する際に発生する中央処理装置(CPU)に対する割込みを低減させることにより、FIFOメモリを介するデータ転送の効率化を可能とする、メモリ装置、該メモリ装置の制御方法および半導体装置、並びに情報処理装置に関する。
【0002】
【従来の技術】
FIFOメモリを利用したデータ転送システムは、これまで広く知られており、データの書込み速度が読出し速度を上回っている場合には、充分な容量のメモリを使用する制御方式が知られている。この制御方式では、FIFOメモリ容量の約半分の値にしきい値を設定して、FIFOメモリ内のデータ量が減少したら次のデータの書込みを始めることにより、FIFOメモリ内のデータ量が制御されている。
【0003】
図11には、上述した従来のFIFOメモリにおけるデータ量の変動の状態を示す。図11においては、縦軸にデータ量を示し、横軸に書込み・読出しに関連する時間を用いて、FIFOメモリ内におけるデータ量の時間的な変化が示されている。また、図中、Thが設定されたしきい値であり、INTRで示されたポイントにおいてCPUに対して割込みがかけられ、データ量の制御が実行される。図11(a)は、読出しを中断することが不可能なシステムにおいて、書込みレートが読出しレートよりも著しく速い場合(書込みレート>>読出しレート)におけるデータ量の変化を示す。
【0004】
図11(a)に示されるように読出しが進行すると、しきい値以上に蓄積されていたデータが減少して行き、しきい値を下回る。しきい値と交差するポイントにおいて、CPUに対して割込みが行われ、書込み動作が開始され、データ量がしきい値を超えて増加することになる。FIFOメモリが満たされると、CPUに対して割込みをかけるといった適切な方法により書込みが停止されるなど、データ書込みレートの制御が行われ、蓄積されたデータが読出されて、FIFOメモリ内のデータ量が減少して行く。上述した書込み・読出しサイクルが繰り返されることで、上述したメモリ内におけるデータ量の制御が繰り返されることになる。
【0005】
図11(b)は、書込みレートが、読出しレートよりもある程度速い(書込み>読出し)場合のデータ量の変化を示した図である。図11(a)において説明したように読出しが進行するとデータ量が減少して行き、しきい値を下回ると割込み信号INTRが生成され、CPUに対して割込みが実行される。その後、書込み動作が開始され、再びデータが蓄積されて行く。この場合には、書込みレートが読出しレートに対してある程度大きい場合なので、FIFOメモリ内のデータ量の増加レートは、図11(a)に示す場合よりも小さくなっているのが示されている。
【0006】
図11(c)は、書込みレートと読出しレートとがほぼ同等な場合の従来例を示している。この場合には、一度データ量が減少すると、しきい値付近において図11(b)で示されるよりもさらにゆっくりとデータ量が増加することが示されている。
【0007】
図12は、読出しと、書込みとが連続して交互に実行することが可能なシステムにおけるFIFOメモリ内のデータ量を示した図である。図12に示されるように、書込みと読出しとが交互に行われる場合には、FIFOメモリ内のデータ量は、交互に繰り返される書込み動作および読出し動作に応じて、周期的にしきい値Thを往復するようデータが増減する。
【0008】
FIFOメモリを使用するシステムは、平均的には書込みと、読出しとが、書込みレート>読出しレートの条件で交互に実行されることを前提とする。またFIFOメモリは、書込み側と、読出し側との非同期データ転送における不都合を緩衝することである。このため、読出しと書込みとが双方とも速く、データの書込みレートと読出しレートとが互いに同程度のレートで実行される高速システムにおいては、図13に示されるようにデータ量の増減が頻繁に発生し、割込みが頻繁に発生することになる。
【0009】
このため、上述したデータの書込み・読出しが同時並行的に実行される高速システムにおいては、頻繁にしきい値の横断が発生することとなる。したがって、図13に示されるような状況での書込み動作および読出し動作は、CPUに対する割込みを頻繁に発生させることとなり、データの転送を必要とするシステムにおいて、FIFOメモリを介したデータ転送効率が低下し、ひいてはシステム・パフォーマンスが低下するという不都合があった。
【0010】
上述した不都合を解決するべくこれまで検討が行われており、例えば特開平6−110653号公報においては、設定可能なしきい値を設定し、このしきい値によりメモリ容量を判定するシステムおよび制御方法が開示されている。しかしながら、特開平6−110653号公報に記載されたシステムは、処理判断に要する時間が必要とされる。このため、FIFOメモリのデータ転送において書込みと読出しとが同時並行的に実行され、データ量が図13に示されるように比較的短い周期で発生する場合には、高速のデータの増減に対応することができないという不都合があった。
【0011】
さらに、特開平11−65817号公報においては、同時並行的に実行される読出しおよび書込みに対応するべく、書込みポートおよび読出しポートを監視するシステムが提案されている。特開平11−65817号公報において提案されたシステムは、書込み量または読出し量が一定量になったときに割込みを発生させる制御方式を使用するものである。しかしながら、特開平11−65817号公報において開示された制御方式においてもデータがしきい値付近を頻繁に往復する場合には、CPUへの割込みが頻繁に発生してしまうことになり、高速のデータ転送を可能とし、システム・パーフォマンスをより高めるという点では充分なものではなかった。
【0012】
【発明が解決しようとする課題】
本発明は、従来の上述した課題を解決し、FIFOメモリ内のデータ量を厳密に知ることを必要とせず、また書込みポートまたは読出しポートに対して監視手段を設けること無しに、CPUの割込みを減少させることでFIFOメモリを使用するデータ転送効率を向上させるものである。本発明はさらに、CPUに対して頻繁に割込みを実行させることによるシステム・パーフォマンスを低下させることのないFIFOメモリ、FIFOメモリの制御方式、および半導体装置、並びに情報処理装置を提供することを目的とする。
【0013】
【課題を解決するための手段】
本発明は、FIFOメモリを介したデータ転送において、データの書込み動作と読出し動作とが実行されて、しきい値を横断してデータが増減することに対応して発生するCPUへの割込みを、データ量がしきい値を通過して増減する際の履歴を用いて制御することにより、データ転送効率を向上させるものである。本発明により達成されるデータ転送効率の向上により、FIFOメモリを介したデータ転送に基づくシステム・パフォーマンスの低下を防止し、ひいてはシステム・パフォーマンスを向上することを可能とする。
【0014】
本発明の上述した課題は、本発明のメモリ装置、該メモリ装置の制御方式および半導体装置、並びに情報処理装置を提供することにより解決される。
【0015】
すなわち、本発明によれば、書込まれたデータを保持するための記憶手段と、データ書込み・データ読出しを制御する調停手段と、前記記憶手段に保持されたデータ量に関連した値を生成するデータ量指示手段と、前記データ量指示手段により生成されたデータ量指示信号を受け取って、少なくともデータ書込みレートを制御するために使用するレート制御信号を発生するレート制御手段とを含むメモリ装置であって、
前記レート制御手段は、
データ量に関連する複数のしきい値を与えるためのしきい値保持手段と、
前記データ量指示信号と前記しきい値とを比較する比較手段と、
前記比較手段の出力に関連して前記レート制御信号およびしきい値選択信号を発生させるためのレート制御手信号発生手段と、
前記しきい値保持手段により与えられ、前記選択手段により比較が行われるしきい値を、前記しきい値選択信号に応じて変更する手段と
を含むメモリ装置が提供できる。
【0016】
本発明のメモリ装置においては、前記しきい値は、前記データ量に関連して少なくとも2つの異なるレベルに設定され、前記レート制御信号発生手段は、前記データ量に関連して高いレベルに設定されるしきい値を超えたことにより前記しきい値を選択信号を生成させる手段を含むことができる。また、本発明のメモリ装置においては、前記レート制御信号発生手段は、エッジ検出部と、ステート・マシンとを含み、前記エッジ検出部は、前記比較手段からの出力を受け取って前記レート制御信号を発生させると共に、前記ステート・マシンに対して前記レート制御信号と同期した状態遷移信号を与えることができる。
【0017】
本発明のメモリ装置においては、前記レート制御信号発生手段は、前記高いレベルに設定されたしきい値を通過した後、低いレベルに設定されたしきい値を通過したことにより、前記しきい値選択信号を発生させる。本発明のメモリ装置においては、前記レート制御信号発生手段は、前記高いレベルに設定されたしきい値を超えるまでは、前記データ量が前記低いレベルに設定されたしきい値となった場合でも前記しきい値選択信号を発生しないことが望ましい。本発明のメモリ装置においては、前記レート制御信号は、データ書込レートを制御するための割込み信号またはレジスタ・フラグであり、かつ前記メモリ装置は、ファーストイン・ファーストアウト方式で駆動されるメモリであるとされることが好ましい。
【0018】
また、本発明によれば、メモリ装置においてデータ保持量を制御するための制御方式であって、該制御方式は、
データ量に関連する複数のしきい値を与えるためのしきい値を保持させるステップと、
前記メモリ装置に保持されたデータ量に関連したデータ量指示信号を生成するステップと、
前記データ量指示信号と、前記しきい値とを比較するステップと、
前記比較手段の出力に関連して少なくともデータ書込みレートを制御するための前記レート制御信号およびしきい値選択信号を発生させるステップと、
前記しきい値保持手段により与えられ、前記比較ステップにおいて比較が行われるしきい値を、前記しきい値選択信号応じて変更するステップと
を含むメモリ装置の制御方式が提供される。
【0019】
本発明の制御方式においては、前記しきい値は、前記データ量に関連して少なくとも2つの異なるレベルに設定され、前記データ量に関連して高いレベルに設定されるしきい値を超えたことにより前記しきい値選択信号を生成するステップを含むことが好ましい。本発明の制御方式においては、前記レート制御信号発生ステップは、前記比較ステップに対応して前記レート制御信号を発生させるステップと、前記レート制御信号と同期した状態遷移信号を与えるステップとを含むことができる。
【0020】
本発明の制御方式においては、前記レート制御信号発生ステップは、前記高いレベルに設定されたしきい値を通過した後、低いレベルに設定されたしきい値を通過したことにより、前記しきい値選択信号を発生させるステップを含むことができる。本発明の制御方式においては、前記レート制御信号発生ステップは、前記高いレベルに設定されたしきい値を超えるまでは、前記データ量が前記低いレベルに設定されたしきい値となった場合でも前記しきい値選択信号を発生させないステップを含むことができる。本発明の制御方式においては、前記レート制御信号発生ステップは、データ書込レートを制御するための割込み信号またはレジスタ・フラグを発生させるステップを含み、前記メモリ装置を、ファーストイン・ファーストアウト方式で動作させるステップを含むことができる。
【0021】
さらに、本発明によれば、書込まれたデータを保持するための記憶手段と、データ書込み・データ読出しを制御する調停手段と、前記記憶手段に保持されたデータ量に関連した値を生成するデータ量指示手段と、前記データ量指示手段により生成されたデータ量指示信号を受け取って、少なくともデータ書込みレートを制御するために使用するレート制御信号を発生するレート制御手段とを含む先入れ・先出しメモリ装置を含む半導体装置であって、
前記レート制御手段は、
データ量に関連する複数のしきい値を与えるためのしきい値保持手段と、
前記データ量指示信号と、前記しきい値とを比較する比較手段と、
前記比較手段の出力に関連して前記レート制御信号およびしきい値選択信号を発生させるためのレート制御手信号発生手段と、
前記しきい値保持手段により与えられるしきい値を、前記しきい値選択信号に応じて変更する手段と
を含む半導体装置が提供される。
【0022】
本発明の半導体装置は、前記しきい値は、前記データ量に関連して少なくとも2つの異なるレベルに設定され、前記レート制御信号発生手段は、前記データ量に関連して高いレベルに設定されたしきい値を超えたことにより前記しきい値選択信号を生成させる手段を含むことができる。本発明の半導体装置は、前記レート制御信号発生手段は、エッジ検出部と、ステート・マシンとを含み、前記エッジ検出部は、前記比較手段からの出力を受け取って前記レート制御信号を発生させると共に、前記ステート・マシンに対して前記レート制御信号と同期した状態遷移信号を与えることが好ましい。
【0023】
本発明の半導体装置は、前記レート制御信号発生手段は、前記高いレベルに設定されたしきい値を通過した後、低いレベルに設定されたしきい値を通過したことにより、前記しきい値選択信号を発生させることができる。本発明の半導体装置は、前記レート制御信号発生手段は、前記高いレベルに設定されたしきい値を超えるまでは、前記データ量が前記低いレベルに設定されたしきい値となった場合でも前記しきい値選択信号を発生しないことが好ましい。本発明の半導体装置は、前記レート制御信号は、データ書込レートを制御するための割込み信号またはレジスタ・フラグであり、前記メモリ装置は、ファーストイン・ファーストアウト方式で動作されることが好ましい。また、本発明によれば、上述したメモリ装置または半導体装置を含んで構成される情報処理装置が提供される。
【0024】
【発明の実施の形態】
以下、本発明を図面に示した特定の実施の形態をもって説明するが、本発明は、後述する特定の実施の形態に制限されるものではない。
【0025】
図1は、本発明のFIFOメモリの構成を示した概略図である。図1に示した本発明の特定の実施の形態においては、メモリ装置がFIFOメモリとして構成されるものとして説明する。図1に示されたFIFOメモリは、データ書込みを要求する図示しない装置と、データをファーストイン・ファーストアウト方式において書込み・読出しを行わせるための調停手段として使用される、リード・アドレス・ポインタ10およびライト・アドレス・ポインタ12と、書込まれたデータを保持するための記憶手段として使用されるRAM14とを含んで構成されている。
【0026】
また、図1に示されたFIFOメモリは、RAM14に蓄積されたデータ量を指示するためのデータ量指示手段として使用されるディップスティック16を含んで構成されているのが示されている。書込みの行われるデータは、リード・アドレス・ポインタ10により指定されるキューに対応してRAM14へと記憶され、また、ライト・アドレス・ポインタ12により指定されるキューに対応してRAM14からの読出しが行われる構成とされている。
【0027】
ディップスティック16は、RAM14内のデータ量を指示するものであり、書込み指令があると、ディップスティック16内に含まれるカウンタが1カウントの加算を行い、読出し指令があると、カウンタから1カウントの減算を行うことにより、RAM14内に蓄積されたデータの量を指示することができるようにされている。ディップスティック16の出力は、リード・アドレス・ポインタ10およびライト・アドレス・ポインタ12に戻され、ディップスティック16内のデータ量に関連して書込み動作および読出し動作を制御する構成とされている。
【0028】
ディップスティック16の出力Doは、本発明のFIFOメモリの制御方式を実施するための要素を含んで構成されたレート制御手段へと送られている。図1を使用して本発明において説明する特定の実施の形態においては上述したレート制御手段は、CPUに対する割込み信号を発生するための割込み制御部18として実装されている。しかしながら、本発明においてレジスタを介して書込み・読出し動作を実行させる実施の形態も採用することができ、この場合には、レート制御手段は、適切にレジスタに対して割込みを行うことを可能とするレジスタ・フラグを発生させることもできる。
【0029】
ディップスティック16の出力Doは、割込み制御部18へと入力されて、RAM14内に蓄積されたデータ量に関連して、本発明のFIFOメモリの制御方式を実行する。
【0030】
図1に示された割込み制御部18は、本発明の実施の形態においては、データ量との関連で生成されたレート制御信号として使用される割込み信号INTRを与え、CPUに対して適切なレートで割込みを可能とする構成とされている。本発明においては、割込み制御部18からの出力を直接CPUに入力することもできる。また、本発明においては、上述したレジスタ・フラグを発生させるというように、適切な手段に対して割込み制御部18からの割込み信号INTRを入力させ、この入力対応して適切な信号を発生させる構成を採用することもできる。
【0031】
また、本発明は、図1に示した割込み制御部18と同等の機能を与える要素を含んで構成される限り、図1に示すように調停手段と、記憶手段と、レート制御手段といった各制御要素を一体として含む半導体ユニットとして構成することもできる。また、本発明においては、上述した制御を行うための各要素を、それぞれ本発明の制御方式を実行させるように、プリント配線板といった配線要素上に実装するなど、いかなる構成として実装することができる。
【0032】
図2(a)は、本発明のメモリ装置の制御方式を実行する図1に概略的に示した割込み制御部18の詳細構成を示した図である。図2(a)に示された本発明の割込み制御を実行する割込み制御部18は、ディップスティック16の出力Doが入力される比較手段20として用いられるコンパレータと、コンパレータといった比較手段20の出力を受け取って、レート制御信号として用いられる割込み信号INTRを発生する割込み発生手段22とを含んで構成されている。
【0033】
本発明においては、少なくとも2つのしきい値をFIFOメモリ内のデータ量に関連して使用することが好ましい。本発明において用いるしきい値として、具体的には、しきい値TLHと、しきい値THLとを含む2つのしきい値を使用する実施の形態について、以下に詳細な説明を行う。本発明において使用されるしきい値の数には特に制限はないが、少なくとも2つのしきい値レベルが設定されていれば、本発明の原理に従う制御方式を実行することができる。
【0034】
上述した2つのしきい値の相対的な関係について説明すると、上述した2つのしきい値のうち、しきい値THLは、RAM14内におけるデータ量がしきい値TLHよりも小さい値として設定される。しきい値TLHは、しきい値THLよりも大きく、RAM14のデータ容量の上限よりも小さい値の間で適宜設定することができる値から選択することができる。また、しきい値THLは、上述したしきい値TLHとの関係を満足する範囲内で任意に設定することができる値から選択することができる。なお、図2(b)には、FIFOメモリのデータ容量に関連して設定される上述した2つのしきい値TLHおよびTHLの概略的な関係を示す。
【0035】
再度図2(a)の構成について説明すると、図2(a)に示されるように、しきい値TLHおよびしきい値THLは、それぞれレジスタ24およびレジスタ26により設定されている。これらのしきい値TLH、THLは、マルチプレクサ28を介して比較手段20へと入力されて、比較手段20によりディップスティック16の出力Doと比較が行われる。また、図2(a)に示されるように、マルチプレクサ28には、割込み発生手段22により発生される割込み信号INTRに関連して発生されるしきい値選択信号SELTが入力されている。このしきい値選択信号SELTは、しきい値TLHまたはしきい値THLを選択して、比較手段20に入力するために使用される。
【0036】
図3は、図2において説明した割込み発生手段22の構成要素を示した概略図である。比較手段20の出力は、エッジ検出部30に入力され、比較手段20からの信号のエッジを検出すると、割込み信号INTRを発生する構成とされている。また、状態遷移信号TRSは、割込み信号INTRと同期して生成される。この状態遷移信号TRSは、ステート・マシン32へと入力され、ステート・マシン32の状態を遷移させる。ステート・マシン32は、状態遷移信号TRSの入力に対応して、比較手段20に入力されたしきい値TLHまたはしきい値THLといったしきい値に関連して、比較手段20へと入力されるべき新たなしきい値TLH、またはTHLといったしきい値を選択させるためのしきい値選択信号SELTを発生させる。しきい値選択信号SELTは、図3に示されるように信号線Aおよび信号線Bで示されるラインにより与えられる信号として与えられている。
【0037】
図4は、図3に示したエッジ検出部の詳細な構成を示した図である。比較手段20からの出力は、第1のフリップフロップ素子34に入力され、クロック信号CLKと同期される。次いで、第1のフリップフロップ素子34の出力は、第2のフリップフロップ36へと入力される。第1のフリップフロップ素子34の出力と第2のフリップフロップ素子36の出力をインバータにより反転させた出力とは、ANDゲート38へと入力され、比較手段20の出力のエッジに対応して割込み信号INTRおよび状態遷移信号TRSを発生させる。図4では、状態遷移信号TRSは、割込み信号INTRから直接分岐されているのが示されているが、本発明においては、割込み信号INTRと同期して状態遷移信号TRSが与えられる構成であれば、いかなる構成でも用いることができる。
【0038】
図5は、図3に示したステート・マシン32の実施の形態の詳細構成を示した図である。本発明において使用される図5に示したステート・マシンは、複数のORゲートと、複数のNANDゲートと、同期を行うための複数のフリップフロップ素子とを含んで構成されている。図5に示したステート・マシンは、図4に示したエッジ検出部30からの状態遷移信号TRSを受け取ってその状態を遷移させ、出力Aおよび出力Bをしきい値TLH、またはしきい値THLを選択する信号として生成する。表1には、図5に示したステート・マシン32の出力Aおよび出力Bの信号の状態と、しきい値TLHおよびしきい値THLに関連するデータ量との関連を示す。
【0039】
【表1】
【0040】
上記表中、数値「1」は、真を示し、数値「0」は、偽を表す。本発明において説明する特定の実施の形態においては、「真」は、H(ハイ)、「偽」は、L(ロー)に対応するが、上述した制御を行うことができる限り、いかなる回路構成をもって表1に相当する判断を実行させることもできる。図5に示したステート・マシン32の出力は、上述したように本発明のFIFOメモリに含まれるマルチプレクサ28へと入力され、マルチプレクサ28は、ディップスティック16からの出力Doの比較とされるしきい値TLH、またはしきい値THLを選択し、比較手段20へと入力させている。
【0041】
図6には、ステート・マシン32からマルチプレクサ28への接続の実施の形態を示す。ステート・マシン32からの出力Aおよび出力Bは、ANDゲート40を介してマルチプレクサ28へと入力されている。また、マルチプレクサ28には、レジスタ24およびレジスタ26からのしきい値TLH、しきい値THLに相当するデータが入力されていて、マルチプレクサ28のselect端子への入力に応じて、しきい値TLH、THLを選択する。表2には、ステート・マシン32の出力A、出力Bの状態と、select端子への入力信号の状態と、比較手段20へと入力されるしきい値の種別をまとめて示す。
【0042】
【表2】
表2中に示された「0」、「1」の数の意味は、表1において説明したと同様である。
【0043】
図7は、上述した出力に対応して、FIFOメモリにおけるデータ量の変化状態を説明した図である。図7においては、表2にしたがって制御されるFIFOメモリ内のデータ量を、それぞれのデータ量に対応する状態を符号1〜8と対応させて示されている。図7に示されるように、FIFOメモリ内にデータが蓄積されていない状態1を、本発明においては初期状態とし、データの書込みが進行するにつれ状態2へとデータ量が増加して行く。
【0044】
さらに、データが書込まれてデータ量が、しきい値TLHに等しくなった状態が、状態3として示されている。この状態3となった時点で、比較手段20に入力されるしきい値は、ステート・マシン32により発生されるしきい値選択信号に基づいてTLHからTHLへと変更される。この段階で、CPUに対してデータ書込みレートを減少させるか、または中断させ、それに対応したリソースを他に振り分けるなどの処理を実行させ、FIFOメモリ内のデータ量を減少させる。
【0045】
しかしながら、しきい値TLHを超えた後もシステム設定に応じた分だけFIFOメモリに対してさらにデータの書込みが行われることになるので、データ量がしきい値TLHを超え、状態4で示されるデータ量となり、FIFOメモリのデータ容量の上限へと接近して行く。
【0046】
その後データ量は、順次減少して行き、状態5で示されるデータ蓄積状態となる。さらにその後、データ量は、しきい値THLに等しくなるまで減少を続ける。この状態が、状態6で示されている。この時点で、比較手段20は、しきい値THLと、ディップスティック16からの出力信号Doとを比較して、比較手段20の出力を、割込み制御部18へと信号を送出する。この信号を受け取った割込み制御部18においては、エッジ検出部30が信号のエッジを検出し、割込み信号INTRを発生させて、CPUに対して割込みを実行する。
【0047】
同様に、エッジ検出部30では、割込み信号と同期した状態遷移信号TRSを生成し、この状態遷移信号TRSは、ステート・マシン32へと入力され、比較手段2により使用されるしきい値をしきい値TLHに変更する。割込み信号INTRが生成されると、図7に示される状態1から連続するFIFOメモリ制御においては、CPUに対して割込みが実行され、例えば他のタスクよりも優先的にデータの書込みを実行させるか、またはバス調停回路などがシステムに含まれる場合には、データ書込みの順位を高めることによりデータ書込みレートを増加させることにより再度データ量を増加させるように制御が行われる。
【0048】
上述したように、状態6において割込み信号INTRが発生された後、割込みを受けたCPUは、適宜システム条件などに応じてデータの書込みレートを増加させることとなる。図7に示した特定の実施の形態においては、割込みを受けてから、データ書込みレートが増加するまでの時間の間にFIFOメモリ内のデータ量が状態8で示される初期状態までデータ量が減少する場合もことが示されている。
【0049】
しかしながら、本発明においては、しきい値THLを下回ってからいったん状態8で示される初期状態までデータ量を減少させることが必要とされるものではなく、割込み信号INTRがデータ書込みレートの増加に迅速に反映される場合には、状態7で示される状態までデータ量が減少した後、状態3〜状態7で示されるデータ量の状態でFIFOメモリにおけるデータ量を制御することができる。
【0050】
また、本発明においては、表2で示されるようにデータ量がしきいTHLに等しくなると同時に、比較手段20に入力されるしきい値がTLHへと切り替えられるため、次の書込みサイクルにおいて、例えば状態7から状態3へとデータ量がしきい値THLを超える場合であっても比較手段20は出力を生成しない。このため、次の書込み動作が開始されてしきい値THLを超えてデータ量が増加する場合でも、少なくとも一度しきい値TLHを超えなければ、データ量がしきい値THLを横断して増加しても割込み信号INTRは生成されない。すなわち、本発明においては、しきい値THLで示されるデータ量付近でデータ量が増減した場合であっても、特に効率的にCPUへの割込みが行われるレートを低減させることができ、システム・パフォーマンスが向上できることとなる。
【0051】
図8には、上述したFIFOメモリ制御方式を実行させる際のステート・マシン32の状態遷移図を示す。図8に示した状態遷移図は、状態AがFIFOメモリの初期状態であり、しきい値TLHが比較手段20へと出力される状態である。また、状態Bが、データ量が一度しきい値TLHを超えて、しきい値THLを比較手段20へと出力する状態である。また、図8に示される状態Cが、データ量が減少、すなわち上から下へとしきい値THLを横切って、割込み信号INTRが生成され、再びしきい値TLHが比較手段20へと出力される状態に対応する。
【0052】
図8に示した状態遷移図にしたがって本発明のFIFOメモリの制御方式を説明すると、まずFIFOメモリにデータが蓄積されていない初期状態からデータが書込まれるにつれ、ステート・マシン32は状態Aに留まる。この状態では、比較手段20は、しきい値TLHを使用してディップスティック16の出力Doと比較を行っている。
【0053】
データ量が一度しきい値TLHを超えると、ステート・マシン32が状態Bに遷移し、これに関連して、比較手段20がディップスティック16の出力Doとの比較に使用するしきい値がしきい値TLHからしきい値THLへと切り換えられる。しきい値TLHをデータ量が超えた時点で、割込み信号INTRを発生させるといった適切な手段により、CPUに対してFIFOメモリ内のデータ量を減少させるように読出し・書込みレートを制御する。この上述した状態変化が、図8の矢線5で示した状態変化である。
【0054】
また、FIFOメモリ内のデータ量がさらに減少を続け、しきい値THLを下まわると、しきい値THLをデータ量が通過する際に割込み信号INTRが発生される。この割込み信号INTRは、ステート・マシン32の状態をC状態へと遷移させ、さらにステート・マシン32は、しきい値選択信号を発生させ、選択手段20が比較のために使用するしきい値を、しきい値THLからしきい値TLHへと変更する。
【0055】
ステート・マシン32の状態は、再びデータ量が矢線6で示した方向に沿ってしきい値TLHに達するまで保持され、しきい値TLHを超えた時点で再度状態Bへと遷移することになる。本発明において例えば図7で示した状態2から状態7までのデータ量の変化は、図8における矢線5と矢線6とで示されるB状態とC状態との間の状態遷移で示されることになる。
【0056】
図8において、データ書込みが終了するか、またはデータ書込みレートがデータ読出しレートよりも著しく小さくなる場合には、ステート・マシン32は、比較手段20に入力されるしきい値をTLHに保持したまま、矢線8で示されるように状態Cから状態Aへと遷移して、図7において説明したFIFOメモリにおけるデータ量制御方式が終了する。
【0057】
図9は、上述した本発明の一連の制御をフローチャートとして示した図である。図9に示されるように、本発明のFIFO制御方式は、ステップS1から開始し、ステップS2において、しきい値がTLHへと設定される。次いでステップS3においてデータ書込み・データ読出し動作が適宜に実行され、FIFOメモリ内のデータ量が増加して行く。
【0058】
ステップS4においては、ディップスティック16の出力Doと、しきい値TLHとの比較が行われ、Do=TLHとなった場合(Y)には、ステップS5に示されるように、しきい値Th=THLとして設定する。また、それ以外の場合(N)には、ステップS3へと分岐し、さらに、データ書込み・データ読出しを実行させ、ディップスティック16により指示されるデータ量が、TLHに等しくなったか否かの判断を繰り返す。上述した制御方式を用いることにより、一度しきい値TLHを超えなければ、予め設定されたしきい値TLHが保存されることになり、THLにおけるCPUへの割込み頻度を減少させることが可能となる。
【0059】
ステップS5でしきい値THLに設定した後、ステップS6においてデータ書込みレートを制御して、FIFOメモリ内におけるデータ量を減少させ、データ量がTHLとなった時点でステップS7に示されるように割込み信号INTRを発生させる。ステップS7の割込み信号INTRの発生と関連してしきい値ThをTLHへと再度設定し、データ書込みレートを制御してデータ量を増加させて行き、再度ステップS3〜ステップS8を繰り返して書込み・読出し動作を繰り返すことにより、データ転送速度を損なうことなく、FIFOメモリ内のデータ量を制御することが可能となる。
【0060】
図10は、本発明のメモリ装置を含んで構成された情報処理装置の概略を示した概略図である。図10に示された情報処理装置は、パーソナル・コンピュータ、ワークステーションなどとして構成することができ、中央処理装置(CPU)42と、このCPU42に対してデータの書込み・読出しを実行するための本発明によるFIFOメモリ44と、入出力装置46、48と、CPU42が必要とする他のデータを記憶させるためのメモリ50とを含んで構成することができる。CPU42と、FIFOメモリ44と、入出力装置46、48といった要素は、バス・ライン52を通じて相互接続されていて、必要に応じてデータ伝送を行う構成とされている。
【0061】
図10に示された情報処理装置においては、FIFOメモリ44には、入出力装置46からデータの書込みがなされており、入出力装置48がデータの読出しを行っている。図10に示されたFIFOメモリ装置44は、本発明の制御を実行するための割込み制御部18が含まれていて、図8および図9示した制御を実行する構成とされている。このため、図10に示した情報処理装置においては、書込みレートおよび読出しレートが近く、高速にデータ転送が行われる場合でも、CPU42に対して頻繁に割り込みが発生せず、FIFOメモリ装置44を介したデータ伝送効率が向上されている。また、図10に示したFIFOメモリ44は、プリント配線板といった配線要素上に各要素を配置して構成することもできるし、必要とされる各要素をマイクロリソグラフィーにより1チップに集積させた半導体装置として実装することができる。
【0062】
これまで、本発明を図面に示した特定の実施の形態に基づいて説明を行ってきたが、本発明は、FIFOメモリに対する書込み・読出しが同時に行われるシステムばかりではなく、FIFOメモリに対する書込み・読出しが交互に実行されるシステムにおいても共に有効である。また、本発明のFIFOメモリは、マイクロリソグラフィー技術を使用して、上述した各要素が集積された半導体装置として実装することもできるし、上述した各要素それぞれを例えば、モジュールとしてプリント配線板上に実装することにより構成することもできる。また、本発明においては、上述した半導体装置またはモジュールを搭載した記憶装置として、CPUを含む情報処理装置の、例えばプリンタ用メモリ装置などに適用することができる。
【0063】
上述したように、本発明は、FIFOメモリにおいてデータの転送を制御するCPUに対する割込み、またはレジスタ・フラグの生成される頻度を低下させ、情報処理システムのデータ転送の効率を向上させることを可能とする、FIFOメモリ、FIFOメモリの制御方式、および半導体装置を提供することができる。
【0064】
また、本発明のFIFOメモリは、データ転送の効率を向上させることを通じて、CPUを含む情報処理システムのシステム・パフォーマンスを向上させることを可能とする。
【図面の簡単な説明】
【図1】 本発明のFIFOメモリの構成を示した概略図。
【図2】 本発明において割込み制御を実行する割込み制御部の構成およびFIFOメモリのデータ量に関連して設定されるしきい値を示した図。
【図3】 図2に示した割込み発生手段の構成要素を示した概略図。
【図4】 図3に示したエッジ検出部の詳細な構成を示した図。
【図5】 図3に示したステート・マシンの実施の形態の詳細構成を示した図。
【図6】 ステート・マシンからマルチプレクサへの接続の実施の形態を示した図。
【図7】 表2にしたがって制御されるFIFOメモリ内のデータ量を、それぞれのデータ量に対応する状態を符号1〜8と対応させて示した図。
【図8】 FIFOメモリ制御方式を実行させる際のステート・マシンの状態遷移図。
【図9】 本発明の一連の制御をフローチャートとして示した図。
【図10】本発明の情報処理装置の概略図。
【図11】 従来のFIFOメモリにおけるデータ量の変動の状態を示した図。
【図12】 従来のFIFOメモリにおけるデータ量の変動の状態を示した図。
【図13】 従来のFIFOメモリにおけるデータ量の変動の状態を示した図。
【符号の説明】
10…リード・アドレス・ポインタ
12…ライト・アドレス・ポインタ
14…RAM
16…ディップスティック
18…割込み制御部
20…比較手段
22…割込み発生手段
24…レジスタ
26…レジスタ
28…マルチプレクサ
30…エッジ検出部
32…ステート・マシン
34…フリップフロップ素子
36…フリップフロップ素子
38…ANDゲート
40…ANDゲート
42…中央処理装置(CPU)
44…FIFOメモリ
46,48…入出力(I/O)装置
50…メモリ
52…バス・ライン[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a first-in / first-out type memory, a so-called FIFO memory, and more particularly, to reduce an interrupt to a central processing unit (CPU) that occurs when a data holding amount fluctuates within a predetermined threshold range. The present invention relates to a memory device, a control method for the memory device, a semiconductor device, and an information processing device, which can improve the efficiency of data transfer via a FIFO memory.
[0002]
[Prior art]
A data transfer system using a FIFO memory has been widely known so far, and when the data writing speed exceeds the reading speed, a control system using a memory having a sufficient capacity is known. In this control method, the threshold value is set to about half the FIFO memory capacity, and when the amount of data in the FIFO memory decreases, the next data is started to be written to control the amount of data in the FIFO memory. Yes.
[0003]
FIG. 11 shows a state of fluctuation of the data amount in the above-described conventional FIFO memory. In FIG. 11, the vertical axis indicates the data amount, and the horizontal axis indicates the time change of the data amount in the FIFO memory using the time related to writing / reading. In the figure, Th is a set threshold value, the CPU is interrupted at the point indicated by INTR, and the data amount is controlled. FIG. 11A shows a change in the amount of data when the write rate is significantly faster than the read rate (write rate >> read rate) in a system where reading cannot be interrupted.
[0004]
As the reading progresses as shown in FIG. 11A, the data accumulated above the threshold decreases and falls below the threshold. At the point where the threshold is crossed, the CPU is interrupted, a write operation is started, and the amount of data will increase beyond the threshold. When the FIFO memory is full, the data write rate is controlled such that writing is stopped by an appropriate method such as interrupting the CPU, the accumulated data is read, and the amount of data in the FIFO memory is read. Will go down. By repeating the write / read cycle described above, the control of the data amount in the memory described above is repeated.
[0005]
FIG. 11B is a diagram showing a change in the data amount when the write rate is somewhat faster than the read rate (write> read). As described with reference to FIG. 11A, the amount of data decreases as reading progresses, and when the value falls below the threshold value, an interrupt signal INTR is generated and an interrupt is executed to the CPU. Thereafter, the write operation is started and data is accumulated again. In this case, since the write rate is somewhat higher than the read rate, the increase rate of the data amount in the FIFO memory is shown to be smaller than that shown in FIG.
[0006]
FIG. 11C shows a conventional example in which the writing rate and the reading rate are substantially equal. In this case, it is shown that once the data amount decreases, the data amount increases more slowly in the vicinity of the threshold than that shown in FIG.
[0007]
FIG. 12 is a diagram showing the amount of data in the FIFO memory in a system in which reading and writing can be alternately executed continuously. As shown in FIG. 12, when writing and reading are performed alternately, the amount of data in the FIFO memory periodically reciprocates the threshold value Th according to alternately repeated writing and reading operations. The data will increase or decrease.
[0008]
On the average, a system using a FIFO memory assumes that writing and reading are alternately performed under the condition of writing rate> reading rate. The FIFO memory also buffers inconvenience in asynchronous data transfer between the writing side and the reading side. For this reason, in a high-speed system in which both reading and writing are fast and the data writing rate and reading rate are executed at the same rate, the amount of data frequently increases and decreases as shown in FIG. However, interrupts occur frequently.
[0009]
For this reason, in the high-speed system in which the above-described data writing / reading is executed concurrently, the threshold value frequently crosses. Therefore, the write operation and the read operation in the situation shown in FIG. 13 frequently generate interrupts to the CPU, and the data transfer efficiency via the FIFO memory is reduced in a system that requires data transfer. As a result, the system performance is degraded.
[0010]
For example, Japanese Patent Laid-Open No. 6-110653 discloses a system and a control method for setting a settable threshold value and determining a memory capacity based on the threshold value. Is disclosed. However, the system described in Japanese Patent Application Laid-Open No. 6-110653 requires time required for processing determination. For this reason, in the data transfer of the FIFO memory, writing and reading are executed simultaneously in parallel, and when the amount of data occurs in a relatively short cycle as shown in FIG. There was an inconvenience that they could not.
[0011]
Furthermore, Japanese Patent Application Laid-Open No. 11-65817 proposes a system for monitoring a write port and a read port in order to cope with reading and writing executed in parallel. The system proposed in Japanese Patent Application Laid-Open No. 11-65817 uses a control system that generates an interrupt when a write amount or a read amount reaches a certain amount. However, even in the control method disclosed in Japanese Patent Application Laid-Open No. 11-65817, if the data frequently reciprocates around the threshold, interrupts to the CPU frequently occur, and high-speed data It was not sufficient in terms of enabling transfer and improving system performance.
[0012]
[Problems to be solved by the invention]
The present invention solves the above-described conventional problems, does not require the precise knowledge of the amount of data in the FIFO memory, and allows CPU interrupts to be provided without providing monitoring means for the write port or read port. By reducing this, the data transfer efficiency using the FIFO memory is improved. It is another object of the present invention to provide a FIFO memory, a FIFO memory control method, a semiconductor device, and an information processing device that do not reduce system performance caused by frequently interrupting the CPU. To do.
[0013]
[Means for Solving the Problems]
According to the present invention, in the data transfer through the FIFO memory, the data write operation and the read operation are executed, and the interruption to the CPU that occurs in response to the increase or decrease of the data across the threshold value, Data transfer efficiency is improved by controlling using the history when the amount of data passes through the threshold and increases or decreases. The improvement of the data transfer efficiency achieved by the present invention prevents the system performance from being lowered based on the data transfer through the FIFO memory, thereby improving the system performance.
[0014]
The above-described problems of the present invention are solved by providing a memory device, a control method of the memory device, a semiconductor device, and an information processing device of the present invention.
[0015]
That is, according to the present invention, a storage means for holding written data, an arbitration means for controlling data writing / reading, and a value related to the amount of data held in the storage means are generated. A memory device comprising data amount instruction means and rate control means for receiving a data amount instruction signal generated by the data amount instruction means and generating at least a rate control signal used for controlling a data write rate. And
The rate control means includes
Threshold holding means for providing a plurality of thresholds related to the amount of data;
A comparison means for comparing the data amount instruction signal and the threshold;
Rate control hand signal generating means for generating the rate control signal and the threshold selection signal in relation to the output of the comparing means;
Means for changing a threshold value given by the threshold value holding means and compared by the selection means according to the threshold value selection signal;
Can be provided.
[0016]
In the memory device of the present invention, the threshold value is set to at least two different levels related to the data amount, and the rate control signal generating means is set to a high level related to the data amount. Means for generating a selection signal for the threshold value when the threshold value is exceeded. In the memory device of the present invention, the rate control signal generation unit includes an edge detection unit and a state machine, and the edge detection unit receives an output from the comparison unit and outputs the rate control signal. And a state transition signal synchronized with the rate control signal can be provided to the state machine.
[0017]
In the memory device of the present invention, the rate control signal generating means passes the threshold value set to the high level and then passes the threshold value set to the low level, so that the threshold value A selection signal is generated. In the memory device according to the present invention, the rate control signal generating means may be configured even when the amount of data reaches the threshold set at the low level until the threshold set at the high level is exceeded. It is desirable not to generate the threshold selection signal. In the memory device of the present invention, the rate control signal is an interrupt signal or a register flag for controlling a data writing rate, and the memory device is a memory driven by a first-in first-out method. It is preferred that it be.
[0018]
According to the present invention, there is also provided a control method for controlling the data holding amount in the memory device, the control method comprising:
Maintaining a threshold for providing a plurality of thresholds related to the amount of data;
Generating a data amount indication signal related to the amount of data held in the memory device;
Comparing the data amount indication signal with the threshold;
Generating at least the rate control signal and a threshold selection signal for controlling at least the data write rate in relation to the output of the comparing means;
Changing the threshold value given by the threshold value holding means and compared in the comparing step according to the threshold value selection signal;
A control method for a memory device is provided.
[0019]
In the control method of the present invention, the threshold value is set to at least two different levels related to the data amount, and exceeds a threshold value set to a high level related to the data amount. Preferably, the method further includes the step of generating the threshold selection signal. In the control method of the present invention, the rate control signal generation step includes a step of generating the rate control signal corresponding to the comparison step, and a step of providing a state transition signal synchronized with the rate control signal. Can do.
[0020]
In the control method of the present invention, the rate control signal generating step passes through the threshold value set at a low level after passing through the threshold value set at a high level, and thereby the threshold value is set. A step of generating a selection signal can be included. In the control method of the present invention, the rate control signal generation step may be performed even when the amount of data reaches the threshold set at the low level until the threshold set at the high level is exceeded. The step of not generating the threshold selection signal may be included. In the control method of the present invention, the rate control signal generation step includes a step of generating an interrupt signal or a register flag for controlling a data write rate, and the memory device is configured in a first-in first-out method. An operating step can be included.
[0021]
Further, according to the present invention, a storage means for holding written data, an arbitration means for controlling data writing / reading, and a value related to the amount of data held in the storage means are generated. First-in / first-out including data amount instruction means and rate control means for receiving a data amount instruction signal generated by the data amount instruction means and generating at least a rate control signal used to control the data write rate A semiconductor device including a memory device,
The rate control means includes
Threshold holding means for providing a plurality of thresholds related to the amount of data;
A comparison means for comparing the data amount instruction signal with the threshold value;
Rate control hand signal generating means for generating the rate control signal and the threshold selection signal in relation to the output of the comparing means;
Means for changing a threshold given by the threshold holding means in accordance with the threshold selection signal;
A semiconductor device is provided.
[0022]
In the semiconductor device of the present invention, the threshold value is set to at least two different levels related to the data amount, and the rate control signal generating means is set to a high level related to the data amount. Means for generating the threshold selection signal when a threshold is exceeded may be included. In the semiconductor device of the present invention, the rate control signal generation means includes an edge detection unit and a state machine, and the edge detection unit receives the output from the comparison unit and generates the rate control signal. Preferably, a state transition signal synchronized with the rate control signal is given to the state machine.
[0023]
In the semiconductor device of the present invention, the rate control signal generating means passes the threshold set to the high level and then passes the threshold set to the low level, so that the threshold selection A signal can be generated. In the semiconductor device of the present invention, the rate control signal generating means is configured such that the data amount becomes the threshold set at the low level until the threshold set at the high level is exceeded. Preferably, no threshold selection signal is generated. In the semiconductor device of the present invention, it is preferable that the rate control signal is an interrupt signal or a register flag for controlling a data write rate, and the memory device is operated in a first-in first-out system. In addition, according to the present invention, an information processing apparatus including the above-described memory device or semiconductor device is provided.
[0024]
DETAILED DESCRIPTION OF THE INVENTION
The present invention will be described below with reference to specific embodiments shown in the drawings. However, the present invention is not limited to the specific embodiments described below.
[0025]
FIG. 1 is a schematic diagram showing the configuration of the FIFO memory of the present invention. In the specific embodiment of the present invention shown in FIG. 1, the memory device is described as being configured as a FIFO memory. The FIFO memory shown in FIG. 1 is a read
[0026]
Further, the FIFO memory shown in FIG. 1 is configured to include a
[0027]
The
[0028]
The output Do of the
[0029]
The output Do of the
[0030]
In the embodiment of the present invention, the interrupt
[0031]
As long as the present invention is configured to include elements that provide functions equivalent to those of the interrupt
[0032]
FIG. 2A is a diagram showing a detailed configuration of the interrupt
[0033]
In the present invention, it is preferable to use at least two threshold values in relation to the amount of data in the FIFO memory. Specifically, an embodiment in which two threshold values including a threshold value TLH and a threshold value THL are used as threshold values used in the present invention will be described in detail below. The number of threshold values used in the present invention is not particularly limited, but a control method according to the principle of the present invention can be executed as long as at least two threshold levels are set.
[0034]
The relative relationship between the two threshold values will be described. Of the two threshold values, the threshold value THL is set such that the amount of data in the
[0035]
The configuration of FIG. 2 (a) will be described again. As shown in FIG. 2 (a), the threshold value TLH and the threshold value THL are set by the
[0036]
FIG. 3 is a schematic diagram showing the components of the interrupt generating means 22 described in FIG. The output of the
[0037]
FIG. 4 is a diagram illustrating a detailed configuration of the edge detection unit illustrated in FIG. 3. The output from the comparison means 20 is input to the first flip-
[0038]
FIG. 5 is a diagram showing a detailed configuration of the embodiment of the
[0039]
[Table 1]
[0040]
In the above table, the numerical value “1” indicates true, and the numerical value “0” indicates false. In the specific embodiment described in the present invention, “true” corresponds to H (high) and “false” corresponds to L (low), but any circuit configuration can be used as long as the above-described control can be performed. The judgment corresponding to Table 1 can also be executed. The output of the
[0041]
FIG. 6 shows an embodiment of the connection from the
[0042]
[Table 2]
The meanings of the numbers “0” and “1” shown in Table 2 are the same as those described in Table 1.
[0043]
FIG. 7 is a diagram for explaining a change state of the data amount in the FIFO memory corresponding to the above-described output. In FIG. 7, the data amount in the FIFO memory controlled according to Table 2 is shown in correspondence with the
[0044]
Furthermore, a state in which data is written and the amount of data becomes equal to the threshold value TLH is shown as
[0045]
However, even after the threshold value TLH is exceeded, more data is written to the FIFO memory in accordance with the system setting, so the data amount exceeds the threshold value TLH and is indicated by
[0046]
Thereafter, the amount of data gradually decreases, and a data accumulation state indicated by
[0047]
Similarly, the
[0048]
As described above, after the interrupt signal INTR is generated in the
[0049]
However, in the present invention, it is not necessary to decrease the data amount from the threshold value THL to the initial state indicated by the
[0050]
In the present invention, as shown in Table 2, the data amount becomes equal to the threshold value THL, and at the same time, the threshold value input to the comparison means 20 is switched to TLH. Therefore, in the next write cycle, for example, Even if the data amount exceeds the threshold value THL from the
[0051]
FIG. 8 shows a state transition diagram of the
[0052]
The FIFO memory control method of the present invention will be described with reference to the state transition diagram shown in FIG. 8. First, as data is written from the initial state in which no data is stored in the FIFO memory, the
[0053]
Once the amount of data exceeds the threshold TLH, the
[0054]
When the data amount in the FIFO memory continues to decrease further and falls below the threshold value THL, an interrupt signal INTR is generated when the data amount passes the threshold value THL. This interrupt signal INTR changes the state of the
[0055]
The state of the
[0056]
In FIG. 8, when the data writing is completed or the data writing rate is significantly lower than the data reading rate, the
[0057]
FIG. 9 is a flowchart showing a series of controls of the present invention described above. As shown in FIG. 9, the FIFO control method of the present invention starts from step S1, and in step S2, the threshold value is set to TLH. Next, in step S3, data write / data read operations are appropriately executed, and the amount of data in the FIFO memory increases.
[0058]
In step S4, the output Do of the
[0059]
After setting the threshold value THL in step S5, the data write rate is controlled in step S6 to reduce the data amount in the FIFO memory, and when the data amount becomes THL, an interrupt is performed as shown in step S7. A signal INTR is generated. In association with the generation of the interrupt signal INTR in step S7, the threshold value Th is set again to TLH, the data write rate is controlled to increase the amount of data, and steps S3 to S8 are repeated again to write / By repeating the read operation, the amount of data in the FIFO memory can be controlled without impairing the data transfer rate.
[0060]
FIG. 10 is a schematic diagram showing an outline of an information processing apparatus configured to include the memory device of the present invention. The information processing apparatus shown in FIG. 10 can be configured as a personal computer, a workstation, or the like, and a central processing unit (CPU) 42 and a book for executing data writing / reading on the
[0061]
In the information processing apparatus shown in FIG. 10, data is written to the
[0062]
So far, the present invention has been described based on the specific embodiment shown in the drawings. However, the present invention is not limited to a system in which writing to and reading from the FIFO memory is performed simultaneously, but also to writing to and reading from the FIFO memory. Both are also effective in a system in which is executed alternately. Further, the FIFO memory of the present invention can be mounted as a semiconductor device in which the above-described elements are integrated using microlithography technology, and each of the above-described elements can be mounted on a printed wiring board as a module, for example. It can also be configured by mounting. Further, the present invention can be applied to an information processing apparatus including a CPU, such as a memory device for a printer, as a storage device on which the above-described semiconductor device or module is mounted.
[0063]
As described above, the present invention makes it possible to improve the efficiency of data transfer in an information processing system by reducing the frequency with which interrupts or register flags are generated for a CPU that controls data transfer in a FIFO memory. The FIFO memory, the FIFO memory control method, and the semiconductor device can be provided.
[0064]
The FIFO memory of the present invention can improve the system performance of an information processing system including a CPU by improving the efficiency of data transfer.
[Brief description of the drawings]
FIG. 1 is a schematic diagram showing the configuration of a FIFO memory according to the present invention.
FIG. 2 is a diagram showing a configuration of an interrupt control unit that executes interrupt control and a threshold value set in relation to the data amount of a FIFO memory in the present invention.
FIG. 3 is a schematic diagram showing components of the interrupt generation means shown in FIG. 2;
4 is a diagram showing a detailed configuration of an edge detection unit shown in FIG. 3;
FIG. 5 is a diagram showing a detailed configuration of an embodiment of the state machine shown in FIG. 3;
FIG. 6 is a diagram showing an embodiment of connection from a state machine to a multiplexer.
FIG. 7 is a diagram showing the data amounts in the FIFO memory controlled according to Table 2, with the states corresponding to the respective data amounts corresponding to the
FIG. 8 is a state transition diagram of a state machine when executing a FIFO memory control method;
FIG. 9 is a flowchart showing a series of controls according to the present invention.
FIG. 10 is a schematic diagram of an information processing apparatus according to the present invention.
FIG. 11 is a diagram showing a state of fluctuation of data amount in a conventional FIFO memory.
FIG. 12 is a diagram showing a state of variation in data amount in a conventional FIFO memory.
FIG. 13 is a diagram showing a state of fluctuation of data amount in a conventional FIFO memory.
[Explanation of symbols]
10: Read address pointer
12: Write address pointer
14 ... RAM
16 ... Dipstick
18 ... Interrupt control section
20 ... Comparison means
22: Interrupt generation means
24 ... Register
26: Register
28 ... Multiplexer
30. Edge detection unit
32 ... State machine
34. Flip-flop element
36 ... flip-flop element
38 ... AND gate
40 ... AND gate
42 ... Central processing unit (CPU)
44 ... FIFO memory
46, 48 ... Input / output (I / O) devices
50 ... Memory
52 ... Bus line
Claims (17)
前記レート制御手段は、
データ量に関連して高いレベルと低いレベルの少なくとも2つの異なるレベルに設定されたしきい値を与えるためのしきい値保持手段と、
前記データ量指示信号と前記しきい値とを比較する比較手段と、
前記比較手段の出力に関連して前記レート制御信号およびしきい値選択信号を発生させるためのレート制御信号発生手段と、
前記しきい値保持手段により与えられ、前記比較手段により比較が行われるしきい値を、前記しきい値選択信号に応じて変更する手段と
を含み、
前記レート制御信号発生手段は、エッジ検出部と、ステート・マシンとを含み、前記エッジ検出部は、前記比較手段からの出力を受け取って前記レート制御信号を発生させると共に、前記ステート・マシンに対して前記レート制御信号と同期した状態遷移信号を与え、
前記ステート・マシンは、受け取った前記状態遷移信号に応じて状態を、
(1)初期状態
(2)前記低いレベルに設定されたしきい値を超え、かつ、前記高いレベルに設定されるしきい値を超えていない状態
(3)前記高いレベルに設定されたしきい値を超えた状態
(4)前記低いレベルに設定されたしきい値を下まわった状態
のいずれかに遷移させ、
さらに、該遷移した状態に対応したしきい値選択信号を発生するゲート手段とを備える
メモリ装置。Storage means for holding written data, arbitration means for controlling data writing / reading, data amount indicating means for generating a value related to the data amount held in the storage means, and the data A memory device including rate control means for receiving a data amount indication signal generated by the amount indication means and generating at least a rate control signal used for controlling a data write rate,
The rate control means includes
Threshold holding means for providing thresholds set to at least two different levels of high and low levels in relation to the amount of data ;
A comparison means for comparing the data amount instruction signal and the threshold;
Rate control signal generating means for generating the rate control signal and the threshold selection signal in relation to the output of the comparing means;
Provided by said threshold holding means, the threshold comparison by said comparing means is carried out, see containing and means for changing in response to the threshold selection signal,
The rate control signal generation means includes an edge detection unit and a state machine, and the edge detection unit receives the output from the comparison unit to generate the rate control signal and A state transition signal synchronized with the rate control signal
The state machine changes the state according to the received state transition signal,
(1) Initial state
(2) A state in which the threshold set at the low level is exceeded and the threshold set at the high level is not exceeded
(3) State exceeding the threshold set at the high level
(4) State below the threshold set at the low level
Transition to one of the
And a gate means for generating a threshold selection signal corresponding to the transitioned state .
請求項1に記載のメモリ装置。The memory device according to claim 1, wherein the rate control signal generation unit includes a unit that generates the threshold selection signal when a threshold set to a high level in relation to the data amount is exceeded.
請求項1または2のいずれか1項に記載のメモリ装置。2. The rate control signal generating means generates the threshold selection signal by passing through a threshold set at a low level after passing through the threshold set at a high level. Or the memory device according to any one of 2;
請求項1〜3のいずれか1項に記載のメモリ装置。The rate control signal generating means generates the threshold selection signal even when the amount of data reaches the threshold set at the low level until the threshold set at the high level is exceeded. The memory device according to any one of claims 1 to 3 .
請求項1〜4のいずれか1項に記載のメモリ装置。The rate control signal is an interrupt signal or register flag for controlling data write rate, and the memory device can be of any claims 1-4 is a memory which is driven by the first-in first-out method 2. The memory device according to claim 1.
データ量に関連して高いレベルと低いレベルの少なくとも2つの異なるレベルに設定されたしきい値を与えるためのしきい値を保持させるステップと、
前記メモリ装置に保持されたデータ量に関連したデータ量指示信号を生成するステップと、
前記データ量指示信号と、前記しきい値とを比較手段によって比較するステップと、
前記比較手段の出力に関連して少なくともデータ書込みレートを制御するための前記レート制御信号およびしきい値選択信号を発生させるレート制御信号発生ステップと、
前記しきい値保持手段により与えられ、前記比較ステップにおいて比較が行われるしきい値を、前記しきい値選択信号応じて変更するステップと
を含み、
前記レート制御信号発生ステップは、前記比較手段の出力に対応して前記レート制御信号を発生させるステップと、前記レート制御信号と同期した状態遷移信号を与えることによってステート・マシンの状態を、
(1)初期状態
(2)前記低いレベルに設定されたしきい値を超え、かつ、前記高いレベルに設定されるしきい値を超えていない状態
(3)前記高いレベルに設定されたしきい値を超えた状態
(4)前記低いレベルに設定されたしきい値を下まわった状態
のいずれかに遷移させるステップと、
該遷移した状態に対応したしきい値選択信号を発生するステップと
を含むメモリ装置の制御方式。A control method for controlling the amount of data retained in a memory device, the control method comprising:
Holding a threshold value for providing threshold values set at at least two different levels, a high level and a low level in relation to the amount of data ;
Generating a data amount indication signal related to the amount of data held in the memory device;
A step of comparing the data amount instruction signal and the threshold value by a comparison unit ;
A rate control signal generating step in conjunction generating the rate control signal and threshold selection signal for controlling at least data writing rate to the output of said comparison means,
Provided by said threshold holding means, a threshold value comparison is performed in the comparing step, seen including a step of changing the threshold value selection signal response,
The rate control signal generating step generates the rate control signal in response to the output of the comparison means, and provides a state transition signal synchronized with the rate control signal to change the state of the state machine.
(1) Initial state
(2) A state in which the threshold set at the low level is exceeded and the threshold set at the high level is not exceeded
(3) State exceeding the threshold set at the high level
(4) State below the threshold set at the low level
A transition to one of the following:
Generating a threshold selection signal corresponding to the transitioned state;
Control method of memory device including
請求項6に記載の制御方式。The control method according to claim 6 , wherein the rate control signal generation step includes a step of generating the threshold selection signal when a threshold set to a high level in relation to the data amount is exceeded. .
請求項6または7のいずれか1項に記載の制御方式。The step of generating the rate control signal includes a step of generating the threshold selection signal by passing through the threshold set to a low level after passing through the threshold set to the high level. The control method according to any one of claims 6 and 7 .
請求項6〜8のいずれか1項に記載の制御方式。The rate control signal generation step generates the threshold selection signal even when the amount of data reaches the threshold set at the low level until the threshold set at the high level is exceeded. The control method according to any one of claims 6 to 8 , further comprising a step that does not.
請求項6〜9のいずれか1項に記載の制御方式。The rate control signal generating step includes the step of generating an interrupt signal or register flag for controlling data write rate, according to claim 6, said memory device, comprising the steps of operating in a first-in first-out method The control method according to any one of? 9 .
前記レート制御手段は、
データ量に関連して高いレベルと低いレベルの少なくとも2つの異なるレベルに設定されたしきい値を与えるためのしきい値保持手段と、
前記データ量指示信号と、前記しきい値とを比較する比較手段と、
前記比較手段の出力に関連して前記レート制御信号およびしきい値選択信号を発生させるためのレート制御信号発生手段と、
前記しきい値保持手段により与えられるしきい値を、前記しきい値選択信号に応じて変更する手段と
を含み、
前記レート制御信号発生手段は、エッジ検出部と、ステート・マシンとを含み、前記エッジ検出部は、前記比較手段からの出力を受け取って前記レート制御信号を発生させると共に、前記ステート・マシンに対して前記レート制御信号と同期した状態遷移信号を与え、
前記ステート・マシンは、受け取った前記状態遷移信号に応じて状態を、
(1)初期状態
(2)前記低いレベルに設定されたしきい値を超え、かつ、前記高いレベルに設定されるしきい値を超えていない状態
(3)前記高いレベルに設定されたしきい値を超えた状態
(4)前記低いレベルに設定されたしきい値を下まわった状態
のいずれかに遷移させ、
さらに、該遷移した状態に対応したしきい値選択信号を発生するゲート手段とを備える
半導体装置。Storage means for holding written data, arbitration means for controlling data writing / reading, data amount indicating means for generating a value related to the data amount held in the storage means, and the data A semiconductor device including a first-in / first-out memory device including a rate control unit that receives a data amount instruction signal generated by the amount instruction unit and generates at least a rate control signal used to control a data write rate. And
The rate control means includes
Threshold holding means for providing thresholds set to at least two different levels of high and low levels in relation to the amount of data ;
A comparison means for comparing the data amount instruction signal with the threshold value;
Rate control signal generating means for generating the rate control signal and the threshold selection signal in relation to the output of the comparing means;
A threshold given by the threshold holding means, seen including a means for changing in response to the threshold selection signal,
The rate control signal generation means includes an edge detection unit and a state machine, and the edge detection unit receives the output from the comparison unit to generate the rate control signal and A state transition signal synchronized with the rate control signal
The state machine changes the state according to the received state transition signal,
(1) Initial state
(2) A state in which the threshold set at the low level is exceeded and the threshold set at the high level is not exceeded
(3) State exceeding the threshold set at the high level
(4) State below the threshold set at the low level
Transition to one of the
And a gate means for generating a threshold selection signal corresponding to the transitioned state .
請求項11に記載の半導体装置。The semiconductor device according to claim 11 , wherein the rate control signal generation unit includes a unit that generates the threshold selection signal when a threshold set to a high level in relation to the data amount is exceeded.
請求項11または12のいずれか1項に記載の半導体装置。The rate control signal generating means, after passing through the set threshold to the high level, by passing through the set threshold to a low level, according to claim 11 for generating the threshold value selection signal 13. The semiconductor device according to any one of 12 above.
請求項11〜13のいずれか1項に記載の半導体装置。The rate control signal generating means generates the threshold selection signal even when the amount of data reaches the threshold set at the low level until the threshold set at the high level is exceeded. The semiconductor device according to any one of claims 11 to 13 .
請求項11〜14のいずれか1項に記載の半導体装置。The rate control signal is an interrupt signal or register flag for controlling data writing rate, the memory device is in any one of claims 11 to 14 which is operated in first-in first-out method The semiconductor device described.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001321573A JP3790697B2 (en) | 2001-10-19 | 2001-10-19 | MEMORY DEVICE, CONTROL METHOD FOR MEMORY DEVICE, SEMICONDUCTOR DEVICE, AND INFORMATION PROCESSING DEVICE |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001321573A JP3790697B2 (en) | 2001-10-19 | 2001-10-19 | MEMORY DEVICE, CONTROL METHOD FOR MEMORY DEVICE, SEMICONDUCTOR DEVICE, AND INFORMATION PROCESSING DEVICE |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2003140882A JP2003140882A (en) | 2003-05-16 |
| JP3790697B2 true JP3790697B2 (en) | 2006-06-28 |
Family
ID=19138765
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2001321573A Expired - Fee Related JP3790697B2 (en) | 2001-10-19 | 2001-10-19 | MEMORY DEVICE, CONTROL METHOD FOR MEMORY DEVICE, SEMICONDUCTOR DEVICE, AND INFORMATION PROCESSING DEVICE |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3790697B2 (en) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2006178618A (en) | 2004-12-21 | 2006-07-06 | Nec Corp | Fault tolerant computer and data transmission control method |
-
2001
- 2001-10-19 JP JP2001321573A patent/JP3790697B2/en not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| JP2003140882A (en) | 2003-05-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4749556B2 (en) | Flexible interrupt controller with interrupt force register | |
| CN115221082B (en) | Data caching method and device and storage medium | |
| JP3895610B2 (en) | Image forming apparatus and image forming method | |
| CN101271387A (en) | Automatic relieving method and device for data caching flux | |
| KR100996900B1 (en) | Information processing apparatus having a memory clock setting function and a memory clock setting method | |
| JP3790697B2 (en) | MEMORY DEVICE, CONTROL METHOD FOR MEMORY DEVICE, SEMICONDUCTOR DEVICE, AND INFORMATION PROCESSING DEVICE | |
| US6185647B1 (en) | Dynamic bus control apparatus for optimized device connection | |
| CN116860688A (en) | Data transmission method, related device, equipment and readable storage medium | |
| US7003681B2 (en) | Programmable logic controller with an auxiliary processing unit | |
| CN1055340C (en) | Input buffer device for a printer using an fifo and data input method | |
| JP2910694B2 (en) | I/O Controller | |
| US4225917A (en) | Error driven interrupt for polled MPU systems | |
| JP2009059276A (en) | Data processing apparatus and program | |
| JP2005004563A (en) | DMA transfer control device | |
| JPH08137703A (en) | Task switching device | |
| JP2990140B2 (en) | Interrupt control circuit | |
| JPS6333185B2 (en) | ||
| JP3418530B2 (en) | Data transfer system | |
| JP3036590B2 (en) | External device control circuit | |
| JP3028079B2 (en) | Simultaneous operation control device | |
| CN116204476A (en) | Data processing system, buffer circuit and operation method of buffer circuit | |
| JPH0644193A (en) | I/o register access system | |
| JPH1165624A (en) | Programmable controller | |
| JPH11296344A (en) | Data buffer circuit | |
| JPH0355614A (en) | Electronic equipment |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050803 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050809 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20051109 |
|
| 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: 20060314 |
|
| RD14 | Notification of resignation of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7434 Effective date: 20060314 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060403 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| LAPS | Cancellation because of no payment of annual fees |