JP2008225894A - Sdram controller - Google Patents
Sdram controller Download PDFInfo
- Publication number
- JP2008225894A JP2008225894A JP2007063807A JP2007063807A JP2008225894A JP 2008225894 A JP2008225894 A JP 2008225894A JP 2007063807 A JP2007063807 A JP 2007063807A JP 2007063807 A JP2007063807 A JP 2007063807A JP 2008225894 A JP2008225894 A JP 2008225894A
- Authority
- JP
- Japan
- Prior art keywords
- sdram
- buffer
- write
- data
- request 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.)
- Pending
Links
Images
Abstract
Description
本発明は、例えばデータの一時記憶バッファとして用いられるSDRAM(Synchronous Dynamic Random-Access Memory)を制御するSDRAMコントローラに関する。 The present invention relates to an SDRAM controller that controls, for example, an SDRAM (Synchronous Dynamic Random Access Memory) used as a temporary storage buffer for data.
SDRAMは、CPU(Central Processing Unit)のメインメモリとしての用途の他、データの一時記憶するためのデータバッファ装置としても様々な機器で採用されている。例えば、一方のインターフェースから他方のインターフェースへ伝送されるデータを、SDRAMに一時的に記憶することにより、インターフェース間のデータ伝送速度を調整する。このようなデータバッファ装置では、SDRAMをデータバッファとして使用するためのSDRAMコントローラを備え、このコントローラによってSDRAMに制御コマンド信号及び書き込み・読み出しアドレス信号を出力することで、SDRAMに対するデータの書き込み・読み出しを制御する。 The SDRAM is used in various devices as a data buffer device for temporarily storing data, in addition to being used as a main memory of a CPU (Central Processing Unit). For example, the data transmission speed between the interfaces is adjusted by temporarily storing data transmitted from one interface to the other interface in the SDRAM. Such a data buffer device includes an SDRAM controller for using the SDRAM as a data buffer, and the controller outputs a control command signal and a write / read address signal to the SDRAM, thereby writing / reading data to / from the SDRAM. Control.
ところで、上記のようなSDRAMを利用するデータバッファ装置にあっては、その製造に当たり、使用される機器毎に専用のSDRAMコントローラが開発されている。このように機器の開発の度にSDRAMコントローラを開発することは、設計の効率化及び開発期間の短縮を妨げる大きな要因となっており、製造コストの大幅な上昇を招いている。 By the way, in the data buffer device using the SDRAM as described above, a dedicated SDRAM controller has been developed for each device to be used. As described above, the development of the SDRAM controller every time the device is developed is a major factor that hinders the efficiency of design and the shortening of the development period, resulting in a significant increase in manufacturing cost.
なお、記憶媒体のコントローラをCPUと記憶媒体とから分離して、このコントローラにより、記憶媒体を制御することにより、CPUと記憶媒体との組み合わせを自由にする例もある(例えば、特許文献1参照)。また、コントローラ内にインターフェース回路を設置し、このインターフェース回路によりアクセス元からの複数のアクセス要求を調停して記憶媒体におけるアクセスすべきブロックを抽出することにより、アプリケーションの変更や、アクセス要因の変更や、SDRAMのタイミング・パラメータの変更などに柔軟に対応する例もある(例えば、特許文献2参照)。
以上のように、従来のSDRAMコントローラは、使用される機器毎に開発されており、設計の効率化及び開発期間の短縮を妨げる要因となっており、製造コストの大幅な上昇を招いていた。 As described above, the conventional SDRAM controller has been developed for each device to be used, and has been a factor that hinders the efficiency of design and the shortening of the development period, leading to a significant increase in manufacturing cost.
この発明は上記事情によりなされたもので、その目的は、SDRAMをインターフェース間のデータバッファとして用いる場合に、各インターフェースの仕様に合わせてSDRAMを制御することが可能な、極めて汎用性に優れたSDRAMコントローラを提供することにある。 The present invention has been made in view of the above circumstances, and an object of the present invention is to provide a highly versatile SDRAM capable of controlling the SDRAM in accordance with the specifications of each interface when the SDRAM is used as a data buffer between interfaces. To provide a controller.
上記目的を達成するため、本発明は、複数のインターフェース間で送受信されるデータを一時的に記憶するSDRAMと、前記複数のインターフェースそれぞれに対応して設けられ、前記インターフェース及び前記SDRAM間のデータ伝送速度を調整する複数の緩衝バッファとを備えるデータバッファ装置に用いられ、前記SDRAMのデータ書き込み・読み出し及び複数の緩衝バッファのデータの入出力を外部装置からの指示に応じて制御するSDRAMコントローラにおいて、前記外部装置から与えられ、前記複数の緩衝バッファそれぞれのデータ入出力処理を指示するリクエスト信号、及び前記リクエスト信号に合わせてSDRAMに対する書き込み・読み出しの開始アドレスを指示する書き込み・読み出し開始アドレス信号を受け取る受取部と、前記SDRAMと前記複数のインターフェース間におけるデータの書き込み・読み出し処理の優先順位と、当該データの書き込み・読み出し処理と前記リクエスト信号で指示される緩衝バッファそれぞれのデータ入出力処理との対応関係とが予め登録される登録部と、前記リクエスト信号に従って前記緩衝バッファの動作を制御する緩衝バッファ制御部と、前記リクエスト信号に基づいて前記SDRAMへの書き込み・読み出しを指示する制御コマンドを生成する制御コマンド生成部と、前記書き込み・読み出し開始アドレス信号をセットして前記リクエスト信号で指示されるデータ入出力処理に応じた前記SDRAMへの書き込み・読み出しアドレス信号を生成するアドレス生成部とを具備し、前記緩衝バッファ制御部は、前記リクエスト信号の入力時に、前記対応関係を参照して、当該リクエスト信号によって指示される処理に対応する前記書き込み・読み出し処理以外の処理が行われているか否かを判断し、対応する処理以外の処理が行われている場合には、前記優先順位を参照して、優先順位の高い方の処理を先に完了させる。 To achieve the above object, the present invention provides an SDRAM that temporarily stores data transmitted and received between a plurality of interfaces, and a data transmission between the interfaces and the SDRAM, which is provided corresponding to each of the plurality of interfaces. In an SDRAM controller that is used in a data buffer device including a plurality of buffer buffers for adjusting speed, and controls data writing / reading of the SDRAM and data input / output of the plurality of buffer buffers according to instructions from an external device, The external device receives a request signal for instructing data input / output processing of each of the plurality of buffer buffers, and a write / read start address signal for instructing a write / read start address for the SDRAM according to the request signal. Priority of data write / read processing between the SDRAM and the plurality of interfaces, data write / read processing of the data, and data input / output processing of each buffer buffer indicated by the request signal A registration unit in which correspondence is registered in advance, a buffer buffer control unit that controls the operation of the buffer buffer according to the request signal, and a control command that instructs writing / reading to the SDRAM based on the request signal are generated A control command generation unit that sets the write / read start address signal and generates an address generation unit that generates a write / read address signal to the SDRAM in accordance with the data input / output processing indicated by the request signal The buffer buffer control unit When the request signal is input, it is determined whether or not processing other than the writing / reading processing corresponding to the processing instructed by the request signal is performed by referring to the correspondence relationship. If the process is being performed, the process with the higher priority is completed first with reference to the priority.
このような手段を講じることにより、外部装置からリクエスト信号が入力されると、予め登録された優先順位及び対象関係を参照し、参照結果に基づいて緩衝バッファ制御部で緩衝バッファを制御し、制御コマンド生成部及びアドレス生成部でSDRAMの書き込み・読み出しを制御するようにしているので、外部装置からの指示により、インターフェースの仕様に合わせてSDRAMへのデータの書き込み・読み出しを簡単に行えるようになる。また、インターフェースの個数に合わせて、優先順位及び対応関係を更新するようにしているので、インターフェースの個数に容易に対応することが可能となる。これにより、インターフェースの個数が変化しても、その変化に柔軟に対応することが可能となり、その汎用性が格段に向上する。この結果、設計の効率化及び開発期間の短縮が実現され、製造コストも飛躍的に低減することが可能となる。 By taking such means, when a request signal is input from an external device, the priority and target relationships registered in advance are referred to, the buffer buffer control unit controls the buffer buffer based on the reference result, and the control is performed. Since the command generation unit and the address generation unit control the writing / reading of the SDRAM, it is possible to easily write / read the data to / from the SDRAM in accordance with the interface specifications according to the instruction from the external device. . In addition, since the priority order and the correspondence relationship are updated according to the number of interfaces, the number of interfaces can be easily handled. As a result, even if the number of interfaces changes, it becomes possible to flexibly cope with the change, and the versatility is greatly improved. As a result, the design efficiency and the development period can be shortened, and the manufacturing cost can be drastically reduced.
以上のように、本発明の構成によれば、インターフェースの個数が変化しても、その変化に柔軟に対応することが可能となり、その汎用性が格段に向上する。この結果、設計の効率化及び開発期間の短縮が実現され、製造コストも飛躍的に低減することが可能となる。したがって、本発明によれば、SDRAMをインターフェース間のデータバッファとして用いる場合に、各インターフェースの仕様に合わせてSDRAMを自在に制御することが可能な、極めて汎用性に優れたSDRAMコントローラを提供することができる。 As described above, according to the configuration of the present invention, even if the number of interfaces changes, it is possible to flexibly cope with the change, and the versatility is greatly improved. As a result, the design efficiency and the development period can be shortened, and the manufacturing cost can be drastically reduced. Therefore, according to the present invention, when an SDRAM is used as a data buffer between interfaces, it is possible to provide a highly versatile SDRAM controller that can freely control the SDRAM according to the specifications of each interface. Can do.
以下、図面を参照しながら本発明の実施の形態について詳細に説明する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
図1は、本発明の一実施形態に係るSDRAMコントローラを用いたデータバッファ装置の構成を示すブロック図である。図1において、1はデータバッファ装置を示し、このデータバッファ装置1はCPU(Central Processing Unit)2からの命令に従い、インターフェース(ここでは例としてバス・インターフェース)A及びインターフェース(ここでは例としてフラッシュメモリ・インターフェース)Bの間で行うデータ伝送の速度調整を行うもので、内部には上記インターフェースA−B間の入出力データを管理するFPGA(Field Programmable Gate Array)によるデータ処理装置11と、このデータ処理装置11で管理される入出力データを一時記憶するSDRAM12とを備える。
FIG. 1 is a block diagram showing a configuration of a data buffer device using an SDRAM controller according to an embodiment of the present invention. In FIG. 1, reference numeral 1 denotes a data buffer device. The data buffer device 1 follows an instruction from a CPU (Central Processing Unit) 2 and an interface (here, a bus interface) A and an interface (here, a flash memory as an example). A
上記FPGAによるデータ処理装置11は、SDRAMコントローラ111と、CPU2に接続されるCPUインターフェースモジュール112と、バス・インターフェースA−SDRAM12間の緩衝バッファとなる入力用FIFO(First In First Out)メモリ113及び出力用FIFOメモリ114と、フラッシュメモリ・インターフェースB−SDRAM12間の緩衝バッファとなる入力用FIFOメモリ115及び出力用FIFOメモリ116とを備える。
The
上記CPUインターフェースモジュール112は、CPU2から、入力用FIFOメモリ(以下、入力FIFO)113,115及び出力用FIFOメモリ(以下、出力FIFO)114,116に対するデータの書き込みを指示するリクエスト信号として
A_W_REQ(入力FIFO113に対するデータ書き込み指示)、
A_R_REQ(出力FIFO114に対するデータ書き込み指示)、
B_W_REQ(入力FIFO115に対するデータ書き込み信号)、
B_R_REQ(出力FIFO116に対するデータ書き込み信号)、
を受け取って、SDRAMコントローラ111へ出力する。また、図示しないが、それぞれのリクエスト信号を、リクエスト信号の対象となる入力FIFO113,115及び出力FIFO114,116へ出力する。
The
A_W_REQ (data write instruction to the input FIFO 113),
A_R_REQ (data write instruction to the output FIFO 114),
B_W_REQ (data write signal to the input FIFO 115),
B_R_REQ (data write signal to the output FIFO 116),
Is output to the
さらに、上記モジュール112は、CPUから、SDRAM12に対する書き込み・読み出し開始アドレス信号として
A_W_ADRS(入力FIFO113からのデータの書き込みアドレス)、
A_R_ADRS(出力FIFO114へのデータの読み出しアドレス)、
B_W_ADRS(入力FIFO115からのデータの書き込みアドレス)、
B_R_ADRS(出力FIFO116へのデータの読み出しアドレス)、
を受け取って、SDRAMコントローラ111へ出力する。
Further, the
A_W_ADRS (data write address from the input FIFO 113),
A_R_ADRS (data read address to output FIFO 114),
B_W_ADRS (data write address from the input FIFO 115),
B_R_ADRS (data read address to output FIFO 116),
Is output to the
上記入力FIFO113は、バス・インターフェースAからSDRAM12へのデータ伝送速度を調整するためのもので、CPUインターフェースモジュール112からA_W_REQのリクエスト信号を受けると、バス・インターフェースAから出力されるデータの書き込みを開始し、蓄積データ量が規定値を超えると、SDRAMコントローラ111にOK信号を出力し、SDRAMコントローラ111からの書き込み許可信号WE(Write Enable)を受けると、SDRAM12へ蓄積データを出力する。
The
上記出力FIFO114は、SDRAM12からバスI/F3へのデータ伝送速度を調整するためのもので、CPUインターフェースモジュール112からA_R_REQのリクエスト信号を受けると、SDRAM12から出力されるデータの書き込みを開始し、蓄積データ量が規定値を超えると、SDRAMコントローラ111にOK信号を出力し、SDRAMコントローラ111からの読み出し許可信号RE(Read Enable)を受けると、バス・インターフェースAへ蓄積データを出力する。
The
上記入力FIFO115は、フラッシュメモリ・インターフェースBからSDRAM12へのデータ伝送速度を調整するためのもので、CPUインターフェースモジュール112からB_W_REQのリクエスト信号を受けると、フラッシュメモリ・インターフェースBから出力されるデータの書き込みを開始し、蓄積データ量が規定値を超えると、SDRAMコントローラ111にOK信号を出力し、SDRAMコントローラ111からの書き込み許可信号WEを受けると、SDRAM12へ蓄積データを出力する。
The
上記出力FIFO116は、SDRAM12からフラッシュメモリ・インターフェースBへのデータ伝送速度を調整するためのもので、CPUインターフェースモジュール112からB_R_REQのリクエスト信号を受けると、SDRAM12から出力されるデータの書き込みを開始し、蓄積データ量が規定値を超えると、SDRAMコントローラ111にOK信号を出力し、SDRAMコントローラ111からの読み出し許可信号REを受けると、フラッシュメモリ・インターフェースBへ蓄積データを出力する。
The
上記SDRAMコントローラ111において、受取部20は、CPUインターフェースモジュール112からのリクエスト信号及び書き込み・読み出し開始アドレス信号を受け取り、リクエスト信号をバッファ制御部21及び制御コマンド生成部22に通知し、アドレス信号を、アドレス生成部23に通知する。
In the
記録部24には、SDRAM12に対するバス・インターフェースAからのデータ書き込みステータス、バス・インターフェースAへのデータ読み出しステータス、フラッシュメモリ・インターフェースB4からのデータ書き込みステータス、及びフラッシュメモリ・インターフェースBへのデータ読み出しステータスそれぞれの優先順位が予め登録されている。また、ステータスとリクエスト信号との対応関係も予め登録されている。本実施形態では、バス・インターフェースAからSDRAM12へのデータ書き込みステータスはA_W_REQと対応し、SDRAM12のバス・インターフェースAへのデータ読み出しステータスはA_R_REQと対応し、フラッシュメモリ・インターフェースBからSDRAM12へのデータ書き込みステータスはB_W_REQと対応し、SDRAM12のフラッシュメモリ・インターフェースBへのデータ読み出しステータスはB_R_REQと対応している。さらに、記録部24は、インターフェースの使用個数が増減する場合に、それに伴うステータス数の増減に応じて、上記優先順位及び対応関係を更新することが可能である。
The
バッファ制御部21は、受取部20からのリクエスト信号を受けると、上記記録部24に記録されている対応関係を参照し、このリクエスト信号と対応しているステータス以外のステータスが実行されているか否かを判断する。リクエスト信号と対応しているステータス以外のステータスが実行されていない場合は、リクエスト信号と対応するFIFOからのOK信号の有無を判断する。リクエスト信号と対応しているステータス以外のステータスが実行されている場合には、上記記録部24に記録されている優先順位を参照し、最も優先順位の高いステータスを優先する。このとき、入力されたリクエスト信号は、優先されるステータスが完了するまで待機される。また、一度に複数のリクエスト信号を受けた場合にも、上記優先順位を参照し、最も優先順位の高いステータスと対応したリクエスト信号を優先する。このとき、優先されるリクエスト信号以外は、そのリクエスト信号と対応するステータスが完了するまで待機される。また、バッファ制御部21は、各FIFOからのOK信号を受け取ると、OK信号を出力したFIFOへ書き込み許可信号WE又は読み出し許可信号REを出力する。
When the
制御コマンド生成部22は、リクエスト信号に基づいてSDRAM12に対する書き込み・読み出し等の制御コマンド信号を生成し、SDRAM12に出力する。この制御コマンド信号には、NOP(制御なし)、PAL(プリチャージ)、MRA(モードレジスタセット)、REF(リフレッシュ)、ACT(バンクアクティブ)、RDA(オートリード)、WRA(オートライト)の7種類がある。なお、リクエスト信号が無いときにはREFを生成する。
The control
アドレス生成部23は、ステータスの数と同数のアドレスカウンタを備え、入力される書き込み・読み出し開始アドレスに対応させている。アドレス生成部23は、対応するアドレスカウンタに書き込み・読み出し開始アドレス信号を受け、開始アドレスから順にインクリメントすることにより、SDRAM12に対する書き込み・読み出しアドレス信号を生成する。そして、生成された書き込み・読み出しアドレス信号をSDRAM12に出力する。また、バッファ制御部21の制御によりステータスが一時中断されるときには、アドレスのインクリメントを一時中断し、中断されたステータスの書き込み・読み出しアドレスを保持する。優先されるステータスが完了すると、中断されていたアドレスのインクリメントを再開し、書き込み・読み出しアドレス信号を生成する。このアドレス生成部23は、FPGAの機能を利用し、インターフェースの個数が増減する場合にそれに伴うステータス数の増減に応じてゲート・アレイのロジックを組み替えることで、アドレスカウンタの個数を簡単に増減することができる。
The
次に、上記構成において、SDRAMコントローラ111の処理動作を説明する。
Next, the processing operation of the
本実施形態におけるSDRAMコントローラ111は、フラッシュメモリ情報蓄積装置のデータバッファ装置等に適用することが可能である。
The
図2は、映像や音声の素材データを、バスからフラッシュメモリに収録する際の、本発明の一実施形態に係るSDRAMコントローラ111の処理動作を示すフローチャートである。このとき、記録部24に記録されているステータスの優先順位は、バス・インターフェースAからSDRAM12へのデータの書き込みが1位であり、SDRAM12のデータのフラッシュメモリ・インターフェースBへの読み出しが2位であるとする。
FIG. 2 is a flowchart showing the processing operation of the
SDRAMコントローラ111は、まず、A_W_REQ及びA_W_ADRSと、B_R_REQ及びB_R_REQとをCPUインターフェースモジュール112から受け取る(ステップST2a)。このとき、A_W_REQとB_R_REQとは、CPUインターフェースモジュール112から入力FIFO113と出力FIFO116とにそれぞれ出力される。入力FIFO113は、A_W_REQを受けると、バス・インターフェースAからのデータの書き込みを開始する。
The
続いて、2つのリクエスト信号と対応するステータスの優先順位を参照し(ステップST2b)、優先順位の高いA_W_REQを選択し、B_R_REQを待機させる(ステップST2c)。A_W_REQが選択されると、この信号の選択時に他のステータスが実行されているか否かを判断し(ステップST2d)、他のステータスが実行されていない場合(ステップST2dのNo)、A_W_REQがSDRAM12に対する書き込みであるか読み出しであるかの判断をする(ステップST2e)。 Subsequently, the priority of the statuses corresponding to the two request signals is referred to (step ST2b), A_W_REQ having a higher priority is selected, and B_R_REQ is waited (step ST2c). When A_W_REQ is selected, it is determined whether or not another status is executed when this signal is selected (step ST2d). If another status is not executed (No in step ST2d), A_W_REQ is determined for SDRAM12. It is determined whether it is writing or reading (step ST2e).
他のステータスが実行されている場合(ステップST2dのNo)、優先順位を参照し(ステップST2f)、実行されている他のステータスの優先順位がA_W_REQと対応するステータスより低いか否かを判断する(ステップST2g)。優先順位が低い場合(ステップST2gのYes)、処理動作をST2eへ進める。優先順位が高い場合(ステップST2gのNo)、実行されている他のステータスを完了させ(ステップST2h)、処理動作をST2dへ進める。 When another status is being executed (No in step ST2d), the priority order is referred to (step ST2f), and it is determined whether the priority order of the other status being executed is lower than the status corresponding to A_W_REQ. (Step ST2g). If the priority is low (Yes in step ST2g), the processing operation proceeds to ST2e. If the priority is high (No in step ST2g), the other statuses being executed are completed (step ST2h), and the processing operation proceeds to ST2d.
ST2eでの判断において、A_W_REQは、SDRAM12にデータを書き込むステータスと対応しているため(ステップST2eのYes)、処理動作をST2iへ進め、A_W_REQの対象となる入力FIFO113からのOK信号があるか否かを判断する。対象となる入力FIFO113からのOK信号があった場合、入力FIFO113に書き込み許可信号WEを出力すると同時にSDRAM12にWRA及び書き込みアドレス信号を出力し(ステップST2j)、待機中のリクエスト信号があるか否かを判断する(ステップST2k)。このとき、B_R_REQが待機されているため、この待機中のB_R_REQを選択する(ステップST2l)。
In the determination at ST2e, A_W_REQ corresponds to the status of writing data to the SDRAM 12 (Yes at step ST2e), so the processing operation proceeds to ST2i, and whether there is an OK signal from the
続いて、動作処理をST2eに進める。ST2eでの判断において、B_R_REQは、SDRAM12からデータを読み出すステータスと対応しているため(ステップST2eのNo)、処理動作をST2mへ進め、SDRAM12にRDA及び読み出しアドレス信号を出力する。このRDAにより、SDRAM12に一定量の素材データ(例えば、フラッシュメモリ4の最小書き込み単位)が蓄積されると、蓄積されている素材データが、B_R_REQの対象となる出力FIFO116への書き込みが開始される。続いて、出力FIFO116からのOK信号があるか否かを判断し(ステップST2m)、OK信号があった場合(ステップST2nのYes)、出力FIFO116にREを出力する(ステップST2o)。REを出力すると、処理動作をST2kに進める。
Subsequently, the operation process proceeds to ST2e. In the determination in ST2e, B_R_REQ corresponds to the status of reading data from the SDRAM 12 (No in step ST2e), so the processing operation proceeds to ST2m, and the RDA and the read address signal are output to the
ステップST2kでの判断の結果、待機中のリクエスト信号はないため(ステップST2kのNo)、処理動作を終了する。 As a result of the determination in step ST2k, since there is no request signal waiting (No in step ST2k), the processing operation is terminated.
なお、反対にフラッシュメモリ・インターフェースBに収録した素材データを再生する場合には、SDRAMコントローラ111は、まず、フラッシュメモリ・インターフェースBに格納されている素材データを、入力FIFO115経由でいったんSDRAM12に保存する。続いて、SDRAM12に一定量の素材データ(例えば、ECCパケット単位)が蓄積されると、出力FIFO114を介して装置のバス・インターフェースAに対して出力する。
On the contrary, when reproducing the material data recorded in the flash memory interface B, the
以上のように、上記実施形態では、SDRAMコントローラ111にリクエスト信号が入力されると、記録部24に記録されている優先順位及び対応関係を参照し、バッファ制御部21でFIFO113〜116を制御し、制御コマンド生成部22及びアドレス生成部23でSDRAM12の書き込み・読み出しを制御することにより、SDRAM12による伝送データの一時的な保存を行っている。このとき、SDRAM12への書き込み・読み出しアドレス信号は、入力された書き込み・読み出し開始アドレス信号をアドレス生成部23でアドレスカウンタをインクリメントすることにより生成される。また、このSDRAMコントローラ111は、インターフェースの使用個数に合わせて上記アドレスカウンタの個数を増減させ、上記記録部24のステータスの優先順位及び対応関係を更新することで、インターフェースの接続個数の増減に容易に対応することが可能である。
As described above, in the above embodiment, when a request signal is input to the
したがって、インターフェースの個数の増減に容易に対応することが可能であるため、様々な機器で使用可能な、データの一時記憶用のSDRAMを制御する汎用的なSDRAMコントローラを提供することができ、設計の効率化及び開発期間の短縮が可能となる。 Therefore, since it is possible to easily cope with the increase / decrease in the number of interfaces, it is possible to provide a general-purpose SDRAM controller that controls SDRAM for temporary storage of data and can be used in various devices. Efficiency and shortening the development period.
なお、この発明は上記実施形態に限定されるものではない。例えば上記実施形態では、データバッファ装置1は、バス・インターフェースA及びフラッシュメモリ・インターフェースBの2つのインターフェースの間のデータ伝送に利用する場合について説明したが、2つ以上のインターフェースの間に設置される場合でも同様に実施可能である。 The present invention is not limited to the above embodiment. For example, in the above embodiment, the case where the data buffer device 1 is used for data transmission between the two interfaces of the bus interface A and the flash memory interface B has been described. However, the data buffer device 1 is installed between two or more interfaces. Even in the case of, it can be similarly implemented.
また、上記実施形態では、CPUインターフェースモジュール112から書き込み・読み出し開始アドレス信号を受け取る例について説明したが、アドレス生成部23に初めからアドレス開始信号がセットされる場合でも同様に実施可能である。
In the above embodiment, an example in which the write / read start address signal is received from the
さらに、この発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。 Furthermore, the present invention is not limited to the above-described embodiment as it is, and can be embodied by modifying the constituent elements without departing from the scope of the invention in the implementation stage. In addition, various inventions can be formed by appropriately combining a plurality of components disclosed in the embodiment. For example, some components may be deleted from all the components shown in the embodiment.
1…データバッファ装置、2…CPU、11…FPGA、12…SDRAM、111…SDRAMコントローラ、112…CPUインターフェースモジュール、113,115…入力用FIFOメモリ、114,116…出力用FIFOメモリ、20…受取部、21…バッファ制御部、22…制御コマンド生成部、23…アドレス生成部、24…記録部、A…バス・インターフェース、B…フラッシュメモリ・インターフェース。
DESCRIPTION OF SYMBOLS 1 ... Data buffer device, 2 ... CPU, 11 ... FPGA, 12 ... SDRAM, 111 ... SDRAM controller, 112 ... CPU interface module, 113, 115 ... Input FIFO memory, 114, 116 ... Output FIFO memory, 20 ... Receive
Claims (10)
前記外部装置から与えられ、前記複数の緩衝バッファそれぞれのデータ入出力処理を指示するリクエスト信号、及び前記リクエスト信号に合わせてSDRAMに対する書き込み・読み出しの開始アドレスを指示する書き込み・読み出し開始アドレス信号を受け取る受取部と、
前記SDRAMと前記複数のインターフェース間におけるデータの書き込み・読み出し処理の優先順位と、当該データの書き込み・読み出し処理と前記リクエスト信号で指示される緩衝バッファそれぞれのデータ入出力処理との対応関係とが予め登録される登録部と、
前記リクエスト信号に従って前記緩衝バッファの動作を制御する緩衝バッファ制御部と、
前記リクエスト信号に基づいて前記SDRAMへの書き込み・読み出しを指示する制御コマンドを生成する制御コマンド生成部と、
前記書き込み・読み出し開始アドレス信号をセットして前記リクエスト信号で指示されるデータ入出力処理に応じた前記SDRAMへの書き込み・読み出しアドレス信号を生成するアドレス生成部と
を具備し、
前記緩衝バッファ制御部は、前記リクエスト信号の入力時に、前記対応関係を参照して、当該リクエスト信号によって指示される処理に対応する前記書き込み・読み出し処理以外の処理が行われているか否かを判断し、対応する処理以外の処理が行われている場合には、前記優先順位を参照して、優先順位の高い方の処理を先に完了させることを特徴とするSDRAMコントローラ。 SDRAM (Synchronous Dynamic Random-Access Memory) that temporarily stores data transmitted and received between multiple interfaces, and corresponding to each of the multiple interfaces, and adjusts the data transmission speed between the interfaces and the SDRAM In an SDRAM controller that is used in a data buffer device including a plurality of buffer buffers, and that controls data writing / reading of the SDRAM and data input / output of the plurality of buffer buffers according to instructions from an external device,
The external device receives a request signal for instructing data input / output processing of each of the plurality of buffer buffers, and a write / read start address signal for instructing a write / read start address for the SDRAM in accordance with the request signal. A receiving part;
The priorities of data write / read processing between the SDRAM and the plurality of interfaces, and the correspondence between the data write / read processing and the data input / output processing of each buffer buffer indicated by the request signal are preliminarily determined. A registration department to be registered;
A buffer control unit for controlling the operation of the buffer buffer according to the request signal;
A control command generator for generating a control command for instructing writing / reading to / from the SDRAM based on the request signal;
An address generation unit that sets the write / read start address signal and generates a write / read address signal to the SDRAM according to the data input / output processing indicated by the request signal;
The buffer buffer control unit determines whether or not processing other than the write / read processing corresponding to the processing instructed by the request signal is performed with reference to the correspondence relationship when the request signal is input. An SDRAM controller characterized in that when a process other than the corresponding process is being performed, the higher priority process is completed first with reference to the priority order.
前記外部装置から与えられ、前記複数の緩衝バッファそれぞれのデータ入出力処理を指示するリクエスト信号、及び前記リクエスト信号に合わせてSDRAMに対する書き込み・読み出しの開始アドレスを指示する書き込み・読み出し開始アドレス信号を受け取り、
前記SDRAMと前記複数のインターフェース間におけるデータの書き込み・読み出し処理の優先順位と、当該データの書き込み・読み出し処理と前記リクエスト信号で指示される緩衝バッファそれぞれのデータ入出力処理との対応関係とを予め登録し、
前記リクエスト信号に従って前記緩衝バッファの動作を制御し、
前記リクエスト信号に基づいて前記SDRAMへの書き込み・読み出しを指示する制御コマンドを生成し、
前記書き込み・読み出し開始アドレス信号をセットして前記リクエスト信号で指示されるデータ入出力処理に応じた前記SDRAMへの書き込み・読み出しアドレス信号を生成し、
前記緩衝バッファの動作の制御は、前記リクエスト信号の入力時に、前記対応関係を参照して、当該リクエスト信号によって指示される処理に対応する前記書き込み・読み出し処理以外の処理が行われているか否かを判断し、対応する処理以外の処理が行われている場合には、前記優先順位を参照して、優先順位の高い方の処理を先に完了させることを特徴とするSDRAM制御方法。 SDRAM (Synchronous Dynamic Random-Access Memory) that temporarily stores data transmitted and received between multiple interfaces, and corresponding to each of the multiple interfaces, and adjusts the data transmission speed between the interfaces and the SDRAM In an SDRAM control method using an SDRAM controller, which is used in a data buffer device including a plurality of buffer buffers, and controls data writing / reading of the SDRAM and data input / output of the buffer buffers according to instructions from an external device ,
The external device receives a request signal for instructing data input / output processing of each of the plurality of buffer buffers, and a write / read start address signal for instructing a write / read start address for the SDRAM in accordance with the request signal. ,
Priorities of data writing / reading processing between the SDRAM and the plurality of interfaces, and correspondence between the data writing / reading processing and the data input / output processing of each buffer buffer indicated by the request signal in advance Register,
Controlling the operation of the buffer buffer according to the request signal;
Based on the request signal, a control command for instructing writing / reading to / from the SDRAM is generated,
Set the write / read start address signal to generate a write / read address signal to the SDRAM according to the data input / output processing indicated by the request signal,
Control of the operation of the buffer buffer refers to whether or not processing other than the write / read processing corresponding to the processing instructed by the request signal is performed with reference to the correspondence relationship when the request signal is input. The SDRAM control method is characterized in that when a process other than the corresponding process is performed, the process with the higher priority is completed first with reference to the priority.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007063807A JP2008225894A (en) | 2007-03-13 | 2007-03-13 | Sdram controller |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007063807A JP2008225894A (en) | 2007-03-13 | 2007-03-13 | Sdram controller |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008225894A true JP2008225894A (en) | 2008-09-25 |
Family
ID=39844438
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007063807A Pending JP2008225894A (en) | 2007-03-13 | 2007-03-13 | Sdram controller |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2008225894A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521175A (en) * | 2011-12-20 | 2012-06-27 | 山东大学 | SDRAM (synchronous dynamic random access memory) controller and operating method for same |
KR20200071602A (en) * | 2018-12-11 | 2020-06-19 | 에스케이하이닉스 주식회사 | Storage device and operating method thereof |
-
2007
- 2007-03-13 JP JP2007063807A patent/JP2008225894A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102521175A (en) * | 2011-12-20 | 2012-06-27 | 山东大学 | SDRAM (synchronous dynamic random access memory) controller and operating method for same |
KR20200071602A (en) * | 2018-12-11 | 2020-06-19 | 에스케이하이닉스 주식회사 | Storage device and operating method thereof |
KR102653661B1 (en) | 2018-12-11 | 2024-04-03 | 에스케이하이닉스 주식회사 | Storage device and operating method thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6146128B2 (en) | Data processing device | |
JP2006331408A (en) | Memory card capable of improving reading performance | |
JP2012230621A (en) | Memory apparatus, memory control apparatus, and memory control method | |
US20120144094A1 (en) | Data storage apparatus and method for controlling flash memory | |
US20180349060A1 (en) | Memory controller and control method thereof | |
US7861012B2 (en) | Data transmitting device and data transmitting method | |
JPH11224221A (en) | Unit and method for memory control | |
JPH08115290A (en) | Data transfer device | |
JP2008225894A (en) | Sdram controller | |
US20180173651A1 (en) | Data storage device access method, device and system | |
JP6004463B2 (en) | Storage device and control method thereof | |
JP2005182538A (en) | Data transfer device | |
JP2008210280A (en) | Semiconductor device and dma controller | |
JP2011034214A (en) | Memory controller | |
JP2003271445A (en) | Memory control device and method | |
JP2008152315A (en) | Signal processing circuit | |
JP2021096739A (en) | Memory controller, memory control method, and imaging apparatus | |
JP2008041142A (en) | Memory access method | |
JP2006059303A (en) | Computer system | |
JP6940283B2 (en) | DMA transfer control device, DMA transfer control method, and DMA transfer control program | |
JP2009032085A (en) | Data processing system | |
JP2006331248A (en) | Data transfer device | |
JP2016154001A (en) | Image processor, data transfer control method for image processing, and data transfer control program for image processing | |
JP4666980B2 (en) | Data processing device | |
JP4107278B2 (en) | Processor control circuit and information processing apparatus |