JP2011232985A - Access timing adjustment device - Google Patents
Access timing adjustment device Download PDFInfo
- Publication number
- JP2011232985A JP2011232985A JP2010103317A JP2010103317A JP2011232985A JP 2011232985 A JP2011232985 A JP 2011232985A JP 2010103317 A JP2010103317 A JP 2010103317A JP 2010103317 A JP2010103317 A JP 2010103317A JP 2011232985 A JP2011232985 A JP 2011232985A
- Authority
- JP
- Japan
- Prior art keywords
- access timing
- timing adjustment
- access
- value
- memory
- 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
本発明は、メモリへのアクセスタイミングを調整するアクセスタイミング調整装置に関する。 The present invention relates to an access timing adjustment device that adjusts access timing to a memory.
従来、システムLSIに搭載されているメモリコントローラがメモリにアクセスする場合のアクセスタイミングは動作周波数が遅いこともあり、システムLSI全てに同じ値、すなわち固定値を使用していても問題はなかった。しかし、システムLSIの機能向上に伴い、次第にメモリインターフェースの動作周波数が高くなりアクセスタイミングが厳しくなるにつれ、アクセスタイミングを固定値とせず、システムLSIの状態に合わせて調整可能にする必要が生じてきた。 Conventionally, when the memory controller mounted on the system LSI accesses the memory, the operation timing is sometimes slow, and there is no problem even if the same value, that is, a fixed value is used for all the system LSIs. However, as the function of the system LSI has improved, the operating frequency of the memory interface has gradually increased and the access timing has become stricter. Therefore, it has become necessary to make the access timing adjustable according to the state of the system LSI, rather than having a fixed value. .
そこで、システムLSI内部にアクセスタイミング調整レジスタが設けられ、その値が変更されることにより、システムLSIの出力するメモリインターフェース用信号のタイミング、あるいは入力した内部信号のタイミングを変更可能な回路を内蔵するようになってきている。 Therefore, an access timing adjustment register is provided in the system LSI, and a circuit that can change the timing of the memory interface signal output from the system LSI or the timing of the input internal signal by changing its value is incorporated. It has become like this.
さらに、特許文献1のように、アクセスタイミング調整装置によって、装置ごとに最適なアクセスタイミングを調整する技術が開示されている。このアクセスタイミング調整装置は、プロセッサがメモリのある特定の領域にデータを書き込み、同じ領域からデータを読み出して、読み出したデータと期待値とを比較してデータ読み出しの可否を判定する。そして、メモリアクセスが成功する上限値と下限値を取得し、その中間値を最大の動作マージンを確保できる値として使用するものである。 Further, as disclosed in Patent Document 1, a technique for adjusting an optimum access timing for each device by an access timing adjusting device is disclosed. In this access timing adjustment device, the processor writes data to a specific area of the memory, reads data from the same area, compares the read data with an expected value, and determines whether data can be read. Then, an upper limit value and a lower limit value at which memory access is successful are acquired, and the intermediate value is used as a value that can secure the maximum operation margin.
この方法により、温度変動、電圧変動、プロセス変動等の条件も加味した上での最大の動作マージンを確保することが可能になる。 By this method, it is possible to ensure the maximum operation margin in consideration of conditions such as temperature fluctuation, voltage fluctuation, and process fluctuation.
しかしながら、特許文献1のような従来例では、以下の点について課題がある。 However, the conventional example such as Patent Document 1 has problems with respect to the following points.
近年、システムLSIの微細化技術により、システムLSIとメモリ間で受け渡しするデータの1ビット単位で、アクセスタイミングの調整が可能になってきており、調整精度を上げることが可能となっている。 In recent years, it has become possible to adjust the access timing in units of 1 bit of data transferred between the system LSI and the memory by the miniaturization technology of the system LSI, and the adjustment accuracy can be increased.
しかし、従来の方法を採用した場合には、アクセスタイミング調整処理をデータのビット数の分だけ実行する必要があり、処理時間の増加に繋がる。例えば、メモリのデータバスが32ビットの場合、同じ処理を32回実行することになる。 However, when the conventional method is adopted, it is necessary to execute the access timing adjustment process by the number of bits of data, leading to an increase in processing time. For example, if the memory data bus is 32 bits, the same processing is executed 32 times.
また、アクセスタイミング調整処理は、システム起動時に実行するため、処理時間の増加はシステム起動時間の増加に繋がってしまう。 In addition, since the access timing adjustment process is executed at the time of system startup, an increase in processing time leads to an increase in system startup time.
そこで、本発明は上記従来の課題を解決するもので、システムLSIとメモリ間の各ビットデータ信号およびデータストローブ信号の配線長情報を利用し、従来の方法より処理時間の短縮が可能なアクセスタイミング調整装置を提供することを目的とする。 Therefore, the present invention solves the above-mentioned conventional problems, and uses the bit length information of each bit data signal and data strobe signal between the system LSI and the memory, and the access timing which can shorten the processing time compared with the conventional method. An object is to provide an adjusting device.
上記従来の課題を解決するために、本発明は、システムLSIから複数の外部メモリへアクセスするタイミングを調整するアクセスタイミング調整装置において、前記システムLSIは、前記複数の外部メモリに対して接続されたメモリインターフェースからデータを複数回送受信させることによりアクセスするタイミングを調整する制御手段を備える。 In order to solve the above-described conventional problems, the present invention provides an access timing adjustment device for adjusting a timing for accessing a plurality of external memories from a system LSI, wherein the system LSI is connected to the plurality of external memories. Control means for adjusting the access timing by transmitting and receiving data from the memory interface a plurality of times is provided.
また、前記制御手段は、前記メモリインターフェースにおける特定のビットデータに対するアクセスタイミング調整値を順次変更させながらアクセスが成功したか否かを判定し、アクセスが成功した範囲内にアクセスタイミング調整値を設定することを特徴とする。 Further, the control means determines whether or not the access is successful while sequentially changing the access timing adjustment value for the specific bit data in the memory interface, and sets the access timing adjustment value within the range where the access is successful. It is characterized by that.
また、前記制御手段は、さらに、前記メモリインターフェースにおける前記ビットデータ以外のビットデータに対し、前記アクセスタイミング調整結果に前記システムLSIと前記複数の外部メモリ間の配線長に基づく遅延調整値を加算した値をアクセスタイミング調整値に設定することを特徴とする。 The control means further adds a delay adjustment value based on a wiring length between the system LSI and the plurality of external memories to the access timing adjustment result for bit data other than the bit data in the memory interface. A value is set as an access timing adjustment value.
本発明のアクセスタイミング調整装置によれば、システムLSIとメモリ間の各ビットデータ信号およびデータストローブ信号の配線長情報を利用することにより、従来のアクセスタイミング調整装置の処理時間を短縮することが可能になる。これは、特にディジタルAV機器用システムLSI技術分野において有用である。 According to the access timing adjustment device of the present invention, the processing time of the conventional access timing adjustment device can be shortened by using the wiring length information of each bit data signal and data strobe signal between the system LSI and the memory. become. This is particularly useful in the field of system LSI technology for digital AV equipment.
以下本発明を実施するための最良の形態について、図面を参照しながら説明する。 The best mode for carrying out the present invention will be described below with reference to the drawings.
以下本発明の第1の実施例を、図面を参照しながら説明する。図1は、アクセスタイミング調整装置の構成図であり、本発明の第1の実施例に係る装置の構成を示す図である。
図1に示す装置は、システムLSI2、複数の外部メモリ3、不揮発性メモリ4から構成される。
A first embodiment of the present invention will be described below with reference to the drawings. FIG. 1 is a configuration diagram of an access timing adjustment device, and shows a configuration of a device according to a first embodiment of the present invention.
The apparatus shown in FIG. 1 includes a
システムLSI2は、プロセッサ21、外部バスコントローラ22、SRAM(Static Random Access Memory)23、メモリコントローラ24、メモリインターフェース25を備える。プロセッサ21は、外部メモリ3とのアクセスタイミングを調整する制御手段としての機能を有し、システムLSI2と外部メモリ3との間の各ビットデータ信号およびデータストローブ信号の配線長情報から算出された遅延調整値を有する。
The system LSI 2 includes a
外部バスコントローラ22は、プロセッサ21と不揮発性メモリ3のデータバス、およびプロセッサ21とSRAM23のデータバスを制御する制御手段としての機能を有する。SRAM23は、外部バスコントローラ22を介しプロセッサ21に接続され、プロセッサ21の作業領域としての役割を有する。メモリコントローラ24は、プロセッサ21と外部メモリ31、32の各々との間で接続され、メモリインターフェース25を備え、外部メモリ31、32を制御する機能を有する。メモリインターフェース25は、外部メモリ31、32の各々と接続され、外部メモリ31、32とのデータを受け渡しするインターフェースとしての機能を有する。
The external bus controller 22 has a function as control means for controlling the data bus between the
複数の外部メモリ3は、外部メモリ31、32を備える。また、不揮発性メモリ4は、ブートプログラム41、アクセスタイミング調整プログラム42、その他のプログラムとしてアプリケーションプログラム43等を備える。
The plurality of
次に、図1に示す装置の動作について詳細に説明する。まず、プロセッサ21は、起動時に外部バスコントローラ22を介して不揮発性メモリ4からブートプログラム41を読み出し、システムLSI2の各種設定を行った後、同じく不揮発性メモリ4からアクセスタイミング調整プログラム42を読み出す。
Next, the operation of the apparatus shown in FIG. 1 will be described in detail. First, the
図1における外部メモリ31、32には、例えば、DDR SDRAM(Double Date Rate Synchronous Dynamic Random Access Memory)が使用される。そして、メモリコントローラ24から外部メモリ31、32へ、あるいは、外部メモリ31,32からメモリコントローラ24へ、データを転送するタイミングを知らせるために、クロック信号に同期したデータストローブ信号が使用されている。
For example, DDR SDRAM (Double Date Rate Synchronous Dynamic Random Access Memory) is used for the
外部メモリ31,32からデータを読み出す場合、外部メモリ31,32からはデータがデータストローブ信号と同位相で出力されるため、データを確実に受け取るには、例えば、メモリコントローラ24は、まず、入力されたデータストローブ信号に対して位相を90度遅らせたデータストローブ信号を生成する。そして、データストローブ信号の立ち上がり及び立ち下がり時にデータを読み込むことになる。
When data is read from the
しかし、電源変動やノイズなどの外的要因により、受信したデータストローブ信号に歪みが生じ、データストローブ信号のエッジ検出時に位相のずれが生じる。これに対応するため、メモリコントローラ24は、データ読み込むための基準位相差である90度に対し、所定の位相範囲であるウィンドウ幅を確保する必要がある。このウィンドウ幅を、例えば180度を64分割した単位で調整可能な位相差として表現し、アクセスタイミング調整レジスタに設定した位相差に従い、アクセスタイミングを変化させる。
However, the received data strobe signal is distorted due to external factors such as power supply fluctuation and noise, and a phase shift occurs when the edge of the data strobe signal is detected. In order to cope with this, the
上記方法により、プロセッサ21は、外部メモリ3に対しアクセスタイミング設定を変化させながら、メモリアクセスが成功する位相差範囲であるウィンドウ範囲を検査する。そして、検査の結果から得られたウィンドウ範囲の中間値を、最大の動作マージンを確保できる最適値としてアクセスタイミング調整レジスタに設定する。
By the above method, the
なお、アクセスタイミング調整レジスタに設定する最適値は、ウィンドウ範囲の中間値に、温度変動、電圧変動、プロセス変動等のばらつきの影響を調整するための調整値を加算した値を使用してもよい。なお、上記ウィンドウ範囲の検査方法に関しては、リードアクセスのタイミング調整を例にして、図2を使用し詳細に説明する。 The optimum value set in the access timing adjustment register may be a value obtained by adding an adjustment value for adjusting the influence of variations such as temperature variation, voltage variation, and process variation to the intermediate value of the window range. . The window range inspection method will be described in detail with reference to FIG. 2 by taking read access timing adjustment as an example.
図2は、本発明のアクセスタイミング調整プログラム42の処理を示すフローチャートである。図2について詳細に説明する。
FIG. 2 is a flowchart showing the processing of the access
まず、プロセッサが外部メモリのある特定領域に、期待値比較に使用するテストデータを書き込む(ステップ11)。そして、処理は次のステップ12に進む。ステップ12では、アクセスタイミング調整レジスタの値を検査対象の値に設定する。例えば、180度を64分割した位相差の値を1ステップ値として、1回目の検査では0ステップ値(0度)、2回目の検査では1ステップ値、3回目の検査では2ステップ値、4回目の検査では3ステップ値、のようにして、65回目の検査では64ステップ値(180度)になるように設定する(ステップ12)。そして、処理は次のステップ13に進む。 First, the test data used for the expected value comparison is written in a specific area of the external memory by the processor (step 11). Then, the process proceeds to the next step 12. In step 12, the value of the access timing adjustment register is set to the value to be inspected. For example, a phase difference value obtained by dividing 180 degrees into 64 is defined as one step value, 0 step value (0 degree) in the first inspection, 1 step value in the second inspection, 2 step value in the third inspection, 4 The third step value is set in the second inspection, and the step value is set to 64 step values (180 degrees) in the 65th inspection (step 12). Then, the process proceeds to the next step 13.
ステップ13では、外部メモリの、ステップ11でテストデータを書き込んだ領域から、データを読み出す(ステップ13)。そして、処理は次のステップ14に進む。ステップ14では、ステップ13で読み出したデータと、予めプロセッサ内に保持している期待値とを比較し、1ビットデータの読み出しが成功したかどうかを判定する(ステップ14)。そして、処理は次のステップ15に進む。 In step 13, the data is read from the area of the external memory where the test data is written in step 11 (step 13). Then, the process proceeds to the next step 14. In step 14, the data read in step 13 is compared with the expected value held in advance in the processor, and it is determined whether or not the 1-bit data has been successfully read (step 14). Then, the process proceeds to the next step 15.
ステップ15では、アクセスタイミング調整レジスタの値が180度になっているかどうかを判定する。180度になっていない場合は、アクセスタイミング調整レジスタの値を1ステップ値加算して、ステップ12からステップ14までの処理を繰り返し、アクセスタイミング調整レジスタの値が0度から180度になるまで検査を行い、1ビットデータのウィンドウ範囲を確定する(ステップ15)。そして、処理は次のステップ16に進む。 In step 15, it is determined whether or not the value of the access timing adjustment register is 180 degrees. If it is not 180 degrees, the value of the access timing adjustment register is incremented by one step value, and the processing from step 12 to step 14 is repeated until the value of the access timing adjustment register is changed from 0 degree to 180 degrees. To determine the window range of 1-bit data (step 15). Then, the process proceeds to the next step 16.
ステップ16では、ステップ11からステップ15までの処理で求めた1ビットデータのウィンドウ範囲の中間値を算出し、アクセスタイミング調整レジスタの最適値として設定する。なお、この最適値は、ウィンドウ範囲の中間値に、温度変動、電圧変動、プロセス変動等のばらつきの影響を調整するための調整値を加算した値を使用してもよい(ステップ16)。そして、処理は次のステップ17に進む。 In step 16, an intermediate value of the window range of 1-bit data obtained by the processing from step 11 to step 15 is calculated and set as the optimum value of the access timing adjustment register. The optimum value may be a value obtained by adding an adjustment value for adjusting the influence of variations such as temperature variation, voltage variation, process variation, etc. to the intermediate value of the window range (step 16). Then, the process proceeds to the next step 17.
ステップ17では、上記以外のビットデータに対し、ステップ16の最適値にプロセッサが保持しているシステムLSIとメモリ間の各ビットデータ信号およびデータストローブ信号の配線長情報から算出された遅延調整値を加算した値を、アクセスタイミング調整レジスタに設定する。なお、この最適値には、温度変動、電圧変動、プロセス変動等のばらつきの影響を調整するための調整値を加算した値を使用してもよい(ステップ17)。そして、処理は次のステップ18に進む。 In step 17, the delay adjustment value calculated from the bit length information of each bit data signal and data strobe signal between the system LSI and the memory held by the processor at the optimum value in step 16 is applied to the bit data other than the above. The added value is set in the access timing adjustment register. As the optimum value, a value obtained by adding an adjustment value for adjusting the influence of variations such as temperature variation, voltage variation, and process variation may be used (step 17). Then, the process proceeds to the next step 18.
ステップ18では、全ビットのアクセスタイミング調整レジスタの設定が完了したかどうかを判定する。全ビットの設定が完了していない場合は完了するまで繰り返し、全ビットの設定が完了した場合は処理を終了する(ステップ18)。 In step 18, it is determined whether or not the setting of the access timing adjustment register for all bits has been completed. If all bits have not been set, the process is repeated until completion, and if all bits have been set, the process ends (step 18).
以上のように本発明のアクセスタイミング調整装置は、システムLSIとメモリ間の各ビットデータ信号およびデータストローブ信号の配線長情報を利用することにより、従来のアクセスタイミング調整装置の処理時間を短縮することが可能になる。 As described above, the access timing adjustment device of the present invention reduces the processing time of the conventional access timing adjustment device by using the wiring length information of each bit data signal and data strobe signal between the system LSI and the memory. Is possible.
なお、図1に記載されたシステムでは、不揮発性メモリ4は、システムLSI2の内部にあってもよく、逆にSRAM23は、システムLSI2の外部のSRAMであってもよい。
In the system illustrated in FIG. 1, the
本発明にかかるアクセスタイミング調整装置は、システムLSIとメモリ間の各ビットデータ信号およびデータストローブ信号の配線長情報を利用することにより、従来のアクセスタイミング調整装置の処理時間を短縮することが可能になる。 The access timing adjustment device according to the present invention can shorten the processing time of the conventional access timing adjustment device by using the wiring length information of each bit data signal and data strobe signal between the system LSI and the memory. Become.
これは、特にディジタルAV機器用システムLSI技術分野において有用である。 This is particularly useful in the field of system LSI technology for digital AV equipment.
1 アクセスタイミング調整装置
2 システムLSI
21 プロセッサ
22 外部バスコントローラ
23 SRAM
24 メモリコントローラ
25 メモリインターフェース
3 外部メモリ
31 外部メモリ1
32 外部メモリ2
4 不揮発性メモリ
41 ブートプログラム
42 アクセスタイミング調整プログラム
43 アプリケーションプログラム
1 Access
21 Processor 22
24 memory controller 25
32
4
Claims (3)
前記アクセスタイミングとは、前記システムLSIが前記複数の外部メモリからのデータをラッチするタイミングであり、
前記複数の外部メモリは、クロック信号に同期して入出力動作するクロック同期型メモリであり、
前記システムLSIは、前記複数の外部メモリに対して接続され、メモリアクセスにおけるデータの送受信を行うメモリインターフェースと、
前記複数の外部メモリに対して接続されたメモリインターフェースからデータを複数回送受信させることによりアクセスするタイミングを調整する制御手段を備えることを特徴とするアクセスタイミング調整装置。 An access timing adjustment device for adjusting the timing of accessing a plurality of external memories from a system LSI,
The access timing is a timing at which the system LSI latches data from the plurality of external memories,
The plurality of external memories are clock synchronous memories that perform input / output operations in synchronization with a clock signal,
The system LSI is connected to the plurality of external memories, and a memory interface that transmits and receives data in memory access; and
An access timing adjusting apparatus comprising: a control unit that adjusts an access timing by transmitting and receiving data a plurality of times from a memory interface connected to the plurality of external memories.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010103317A JP2011232985A (en) | 2010-04-28 | 2010-04-28 | Access timing adjustment device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010103317A JP2011232985A (en) | 2010-04-28 | 2010-04-28 | Access timing adjustment device |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2011232985A true JP2011232985A (en) | 2011-11-17 |
Family
ID=45322238
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010103317A Pending JP2011232985A (en) | 2010-04-28 | 2010-04-28 | Access timing adjustment device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2011232985A (en) |
-
2010
- 2010-04-28 JP JP2010103317A patent/JP2011232985A/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101585213B1 (en) | Control method and write leveling method of memory device and memory controller memory device and memory system performing write leveling operations | |
US6466491B2 (en) | Memory system and memory controller with reliable data latch operation | |
US8208321B2 (en) | Apparatus and method for data strobe and timing variation detection of an SDRAM interface | |
US20130326257A1 (en) | Memory device, host device, and sampling clock adjusting method | |
US20070008791A1 (en) | DQS strobe centering (data eye training) method | |
US9117509B2 (en) | Electronic apparatus, DRAM controller, and DRAM | |
TW201913663A (en) | Adjusting the instruction delay to the latch path in the fifth generation double data rate dynamic random access memory | |
JP5577776B2 (en) | Memory control apparatus and mask timing control method | |
JP5807952B2 (en) | Memory controller and memory control method | |
JP2012098996A (en) | Memory interface circuit and semiconductor device | |
US7493461B1 (en) | Dynamic phase alignment for resynchronization of captured data | |
US10297311B1 (en) | Systems and methods for memory protocol training | |
US7796465B2 (en) | Write leveling of memory units designed to receive access requests in a sequential chained topology | |
JP5005928B2 (en) | Interface circuit and storage control device including the interface circuit | |
US7746724B2 (en) | Asynchronous data transmission | |
JP4607041B2 (en) | Method for generating internal clock of semiconductor memory device and semiconductor memory device using the same | |
JP2003099321A (en) | Memory controller | |
JP2011232985A (en) | Access timing adjustment device | |
US7836327B2 (en) | Signal processing circuit for accessing a memory based on adjustable memory control clock | |
JP2007164697A (en) | Semiconductor integrated circuit and memory system, and clock signal setting method | |
TWI404339B (en) | Method for adjusting memory signal phase | |
WO2009139101A1 (en) | Electronic equipment system and semiconductor integrated circuit controller | |
US10902896B2 (en) | Memory circuit and method thereof | |
JP2011253501A (en) | Semiconductor device | |
JP2008225956A (en) | Semiconductor integrated circuit device and timing adjustment method |