JP5454702B2 - 集積回路、電圧値取得方法および送受信システム - Google Patents

集積回路、電圧値取得方法および送受信システム Download PDF

Info

Publication number
JP5454702B2
JP5454702B2 JP2012541656A JP2012541656A JP5454702B2 JP 5454702 B2 JP5454702 B2 JP 5454702B2 JP 2012541656 A JP2012541656 A JP 2012541656A JP 2012541656 A JP2012541656 A JP 2012541656A JP 5454702 B2 JP5454702 B2 JP 5454702B2
Authority
JP
Japan
Prior art keywords
signal
timing
data signal
unit
delayed
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.)
Active
Application number
JP2012541656A
Other languages
English (en)
Other versions
JPWO2012059985A1 (ja
Inventor
秀行 酒巻
義和 岩見
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Application granted granted Critical
Publication of JP5454702B2 publication Critical patent/JP5454702B2/ja
Publication of JPWO2012059985A1 publication Critical patent/JPWO2012059985A1/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C5/00Details of stores covered by group G11C11/00
    • G11C5/02Disposition of storage elements, e.g. in the form of a matrix array
    • G11C5/04Supports for storage elements, e.g. memory modules; Mounting or fixing of storage elements on such supports
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • G06F13/1689Synchronisation and timing concerns
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/022Detection or location of defective auxiliary circuits, e.g. defective refresh counters in I/O circuitry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/023Detection or location of defective auxiliary circuits, e.g. defective refresh counters in clock generator or timing circuitry
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C29/00Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
    • G11C29/02Detection or location of defective auxiliary circuits, e.g. defective refresh counters
    • G11C29/028Detection or location of defective auxiliary circuits, e.g. defective refresh counters with adaption or trimming of parameters
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/10Input/output [I/O] data interface arrangements, e.g. I/O data control circuits, I/O data buffers
    • G11C7/1051Data output circuits, e.g. read-out amplifiers, data output buffers, data output registers, data output level conversion circuits
    • G11C7/1066Output synchronization
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2207/00Indexing scheme relating to arrangements for writing information into, or reading information out from, a digital store
    • G11C2207/22Control and timing of internal memory operations
    • G11C2207/2254Calibration

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System (AREA)
  • Dram (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)

Description

本発明は、集積回路、電圧値取得方法および送受信システムに関する。
近年、基板製造技術やLSI(Large Scale Integrated Circuit)の実装技術の進展に伴い、複数のCPU(Central Processing Unit)や主記憶装置など、複数のLSIを1枚の基板に搭載したブレードサーバ(blade server)などの装置が知られている。このような装置では、実装上の問題により各LSI間を接続する信号線の距離がそれぞれ異なるため、送信側LSIから送信された信号を受信側LSIが受信するまでの時間について信号毎にバラツキが生じる。また、このバラツキは、ボード配線やコネクタの特性(抵抗値、容量値、インダクタンス値や信号の反射特性等)、LSIに内蔵されるドライバの性能(ドライバの駆動能力等)に依存する。
このようなバラツキの影響を小さくし、且つ、データに対するデータストローブ信号のタイミング規約を満たす手法として、受信側LSIの内部に信号毎にディレイライン(Delay Line)等の遅延素子を設けることが知られている。また、かかる受信側LSIの遅延素子の遅延時間を設定する手法として、オシロスコープを用いて、送信側LSIから受信側LSIへ送信されたLSI外部における信号の波形を観測することが実施されている。
ここで、図21を用いて、オシロスコープを用いてDIMM(Dual Inline Memory Module)からメモリコントローラへ送信された信号の波形を観測する例について説明する。図21に示すように、オシロスコープ300は、メモリコントローラ100の外部に設けられ、DIMM200からメモリコントローラ100へ送信された信号であって、メモリコントローラ100が受信する前の信号の波形を観測する。
また、DIMM200は、データを受信する際のタイミング信号(ストローブ信号)であるDQS(Data Queue Strobe)信号およびDQS信号の位相を反転させた逆位相の信号である#DQS信号を出力するドライバ201を有する。また、DIMM200は、受信対象のデータ信号であるDQ(Data Queue)信号を出力するドライバ202を有する。また、メモリコントローラ100は、メモリコントローラのLSIパッケージであるPKG(package)110、DQS信号と#DQS信号を受信するレシーバ120、DQ信号を受信するレシーバ121を有する。
また、メモリコントローラ100とDIMM200との間には、複数の信号線が設けられている。具体的には、DQS信号を伝送する信号線が18本、#DQS信号を伝送する信号線が18本、DQ信号を伝送する信号線が72本設けられている。また、DQS信号および#DQS信号を受信するレシーバ120が18個、DQ信号を受信するレシーバ121が72個設けられており、それぞれ信号線と接続されている。なお、DQS信号と#DQS信号との組は、平衡関係にある平衡信号であり、1本の信号線から伝送されるDQS信号に対して、もう1本の信号線からDQS信号の位相を反転させた逆位相の信号である#DQS信号を伝送する。
また、DQS信号および#DQS信号の各1ビットに対して、DQ信号を伝送する信号線4本のDQ信号4ビットが対応している。つまり、DQS信号と#DQS信号の1ビット分で、4ビット分のDQ信号の読み取りタイミングを示している。また、DQ信号は、72本の信号線から送信される72ビットのDQ信号のうち、DQ[0]からDQ[63]までがデータビットであり、DQ[63]からDQ[71]までがECC(Error Checking and Correction)に用いられるエラー訂正用ビットである。
また、メモリコントローラ100は、DQS信号に遅延時間を与える遅延素子であるDelay回路130、DQ信号に遅延時間を与えるDelay回路131、遅延素子に遅延時間を設定するDelay値制御回路140を有する。なお、以下では、Delay回路130から出力される信号を「遅延DQS信号」といい、Delay回路131から出力される信号を「遅延DQ信号」という。また、メモリコントローラ100は、遅延DQS信号に応じて遅延DQ信号を読み取るFF(Flip Flop)150およびFF151、遅延DQS信号を反転させる否定論理回路であるInverter160、遅延DQS信号の周波数で動作するFF150、FF151のデータを同期させるデータ同期回路170を有する。ここで、データ同期回路170は、遅延DQS/遅延#DQS信号の周波数で動作するFF150、FF151が出力するデータを、遅延DQS/遅延#DQS信号よりも高い周波数であるメモリコントローラ100の内部クロックに同期させることにより、異なる周波数間でデータの乗り換えを図る回路である。
このような構成のもと、DIMM200は、メモリコントローラ100からのREAD命令時に対する応答として、ドライバ201からタイミング信号(ストローブ信号)であるDQS信号を送信するとともに、ドライバ202からデータ信号であるDQ信号を送信する。そして、DIMM200から出力されたDQ信号およびDQS信号は、DIMM200のコネクタやシステムボードの配線を通り、メモリコントローラ100内部のPKG110内の配線、レシーバ120、121、Delay回路130、131等の回路を通ってFF150に入力される。その後、FF150、151は、Delay回路130通過後の遅延DQS信号をクロック信号として遅延DQ信号を読み取る。
そして、DIMM200とメモリコントローラ100との間でDQ信号およびDQS信号の送受信が行われている際に、DIMM200から送信されてメモリコントローラ100が受信する前のDQ信号およびDQS信号の波形を、オシロスコープ300を用いて観測することができる。ここで、オシロスコープ300が観測できるDQ信号およびDQS信号は、メモリコントローラ100のDelay回路130、131に入力される前のDQ信号およびDQS信号である。
特開2006−99676号公報
しかしながら、上述したオシロスコープを用いて送信装置から受信装置へ送信された信号の波形を観測する手法では、受信装置内部において遅延素子出力後のタイミング信号である遅延DQS信号がセットアップ時間及びホールド時間のタイミング規約を満たしているかどうか把握できないという課題があった。すなわち、オシロスコープが受信装置の外部に設けられており、受信装置の内部における入力信号の波形を観測することができず、受信装置内部において遅延素子出力後の遅延DQS信号に対する遅延DQ信号の読み取りタイミングがセットアップ時間及びホールド時間のタイミング規約を満たしているかどうか把握できない。なお、上述した課題は、DIMMとメモリコントローラとの間の通信に限らず、信号を送受信する装置間における共通の課題である。
開示の技術は、上記に鑑みてなされたものであって、タイミング信号の出力がセットアップ時間及びホールド時間のタイミング規約を満たしているかどうかを把握することが可能である集積回路を提供することを目的とする。
本願の開示する集積回路は、送信回路から送信されたデータ信号を受信するデータ信号受信部と、送信回路から送信された、データ信号の読み取りタイミングを示すタイミング信号を受信するタイミン信号受信部とを有する。また、集積回路は、受信されたタイミング信号の出力タイミングを調整するタイミング調整部と、出力タイミングが調整された調整タイミング信号に応じて、データ信号受信部によって受信されたデータ信号を読み取る読取部とを有する。また、集積回路は、データ信号の電圧値と、調整タイミング信号の電圧値とを取得する電圧値取得部を有する。
本願の開示する集積回路の一つの態様によればタイミング信号の出力がセットアップ時間及びホールド時間のタイミング規約を満たしているかどうかを把握できるという効果を奏する。
図1は、実施例1に係るDIMMおよびメモリコントローラの構成を示すブロック図である。 図2は、DIMMとメモリコントローラとの接続関係を示す図である。 図3は、DDR SDRAMの標準インターフェースを示す図である。 図4は、DQ信号のデータフォーマットを示す図である。 図5は、Delay回路の内部構造を示す図である。 図6は、データ同期回路の内部構造を示すブロック図である。 図7は、データ同期回路のタイミングチャートを示す図である。 図8は、DQ信号およびDQS信号の出力タイミングを示す図である。 図9は、波形採取制御部の詳細な構成を示すブロック図である。 図10は、A/D変換器の内部構造を示すブロック図である。 図11は、A/D変換器とメモリの動作タイミングを説明する図である。 図12は、メモリが記憶するデータの一例を示す図である。 図13は、DQS信号とDQ信号の受信波形を示す図である。 図14は、セットアップ不足時のDQS信号とDQ信号の受信波形を示す図である。 図15は、ホールドタイム不足時のDQS信号とDQ信号の受信波形を示す図である。 図16は、DQ信号のアイパターンを示す図である。 図17は、振幅異常時のDQ信号のアイパターンを示す図である。 図18は、実施例1に係るメモリコントローラの処理動作を示すフローチャートである。 図19は、実施例1に係るメモリコントローラの処理動作を示すフローチャートである。 図20は、実施例1に係るメモリコントローラが収集した受信波形を表示するPC(Personal Computer)の処理動作を示すフローチャートである。 図21は、従来のDIMMおよびメモリコントローラの構成を示すブロック図である。
以下に添付図面を参照して、この発明に係る集積回路、電圧値取得方法および送受信システムの実施例を詳細に説明する。なお、この実施例によりこの発明が限定されるものではない。
以下の実施例では、実施例1に係るメモリコントローラの構成および処理の流れを順に説明し、最後に実施例1による効果を説明する。なお、以下では、メモリコントローラ10からのREAD命令(後述する図3で詳細を説明)に対する応答信号として、DIMM(Dual Inline Memory Module)が、データ信号であるDQ信号とタイミング信号(ストローブ信号)であるDQS信号をメモリコントローラに送信する場合の例について説明する。また、実施例1に係るメモリコントローラでは、DQS信号の立ち上がりと立ち下がりの両方のエッジに同期したDQ信号をメモリ制御装置に受信させるDDR−SDRAM(Double Data Rate Synchronous Dynamic Random Access Memory)が採用されている。
[実施例1に係るメモリコントローラの構成]
最初に、図1を用いて、実施例1に係るメモリコントローラの構成を説明する。図1は、実施例1に係るメモリコントローラの構成を示すブロック図である。図1に示すように、メモリコントローラ10は、二枚のDIMM30、30AおよびPC(Personal Computer)40と接続される。
ここで、図2を用いて、メモリコントローラ10とDIMM30、30Aとの接続関係について説明する。図2は、DIMMとメモリコントローラとの接続関係を示す図である。図2に示すように、メモリコントローラ10およびDIMM30、30Aは、システムボード50上に搭載され、配線60を介してそれぞれ接続される。メモリコントローラ10は、樹脂11bで封止されたシリコンチップ12が配線基板11a上に搭載されたLSIである。なお、以下では、シリコンチップ12を覆っている樹脂11bと、シリコンチップ12を配線接続する配線基板11aとを合わせてPKG(package)11という。
また、DIMM30は、図2に示すように、SDRAM(Synchronous Dynamic Random Access Memory)33が搭載されている。SDRAM33は、メモリコントローラ10からREAD命令を取得すると、READ命令に含まれるアドレスに対応するデータであるDQ信号とDQS信号とを同位相でメモリコントローラ10に出力する。また、DIMM30AからのDQ[71:0]とDIMM30AからのDQ[71:0]とがドット結合されている。また、システムボード50にソケット34が取り付けられており、ソケット34は、DIMM30とシステムボード50とを電気的に接続する。
ここで、DDR SDRAMの標準インターフェースについて図3を用いて説明する。図3は、DDR SDRAMの標準インターフェースを示す図である。図3の例では、DDR SDRAMの標準インターフェースの例として、DDR DIMMのUNBUFFERED DIMMタイプを示す。図3に示すように、メモリコントローラ10は、READ命令として、DIMM30に対して、クロック信号「CK」と、クロック信号の位相を反転させた逆位相の信号である「#CK」と、アドレスの行または列を指定する信号である「A[15:0]」とを送信する。また、メモリコントローラ10は、READ命令として、DIMM30に対して、アクティブのときには、A[15:0]で指定するアドレスが行を意味する「#RAS(Row Address Strobe)」、アクティブのときには、A[15:0]で指定するアドレスが列を意味する「#CAS(Column Address Strobe)」を送信する。また、メモリコントローラ10は、DIMM30に対して、リード/ライト指定信号であってインアクティブ時にREADモードとなる「#WE(Write Enable)」、アクティブのときに入力信号を有効にする「#CS(Chip Select)」を送信する。
また、図3に示すように、DIMM30は、8個のSDRAM0〜7を有している。各SDRAMは、READ命令(上述した「CK」、「#CK」、「A[15:0]」、「#RAS」、「#CAS」、「#WE」、「#CS」)をメモリコントローラ10から受信する。そして、各SDRAM0〜7は、READ命令の応答として、1ビットのDQS信号、1ビットの#DQS信号、8ビットのDQ信号をメモリコントローラ10にそれぞれ送信する。
図1の説明に戻って、DIMM30は、DQS信号を送信するドライバ31およびDQ信号を送信するドライバ32を有する。DIMM30は、メモリコントローラ10からのREAD命令に対する応答信号として、DIMM30からデータ信号であるDQ信号とクロック信号であるDQS信号とDQS信号の位相を反転させた逆位相の信号である#DQS信号とをメモリコントローラ10に送信する。
具体的には、DIMM30は、ドライバ31から、例えば、ビット幅が18ビットの配線を介してDQS信号をメモリコントローラ10に送信する。また、ドライバ31は、DQS信号とともに、DQS信号を反転させた#DQS信号もメモリコントローラ10に送信する。なお、#DQS信号は、クロストークによりDQS信号にノイズが混入したことをメモリコントローラ10に検出するために送信される信号である。DQS信号/#DQS信号を伝送する信号線1本のDQS信号/#DQS信号1ビットに対して、DQ信号を伝送する信号線4本のDQ信号4ビットが対応している。つまり、DQS信号と#DQS信号の1ビット分で、4ビット分のDQ信号の読み取りタイミングを示していることとなる。
また、DIMM30は、ドライバ32から、例えば、ビット幅が72ビットの配線を介してDQ信号をメモリコントローラ10に送信する。なお、例えば、ドライバ32から送信される72ビットのデータのうち、64ビットがREAD命令に対するデータであり、8ビットが誤り訂正用データである。ここで、図4を用いて、DQS信号のデータフォーマットについて具体的に説明する。図4に示すように、データ信号DQの72本のうち、DQ[0]からDQ[63]までをデータビットとして、DQ[64]からDQ[71]までをエラー訂正用ビットとしている。なお、DIMM30の設定にて、バースト長をBL=8とした時、1回の読み出しに付き、データが8個連続読み出される。
メモリコントローラ10は、PKG11、レシーバ12A、レシーバ12B、Delay回路13A、Delay回路13B、Delay値制御回路14、FF(flip flop)15A、FF15B、Inverter16を有する。また、メモリコントローラ10は、データ同期回路17、エラー検出回路18、波形採取制御部19、A/D(Analog to Digital)変換器20、メモリ21、システム回路22を有する。
PKG11は、DIMM30との間に設けられた配線を介して接続されており、DQ信号およびDQS信号をDIMM30、30Aから受信する。具体的には、パッケージ11は、図2に示すように、配線基板11aおよび樹脂11bを有し、シリコンチップ12を外界の影響から遮断して保護するとともに、シリコンチップ12をシステムボード50上に配線接続する。
レシーバ12Aは、DQS信号および#DQS信号を受信する。具体的には、レシーバ12Aは、PKG11の配線基板11aに設けられた配線を介して、DQS信号および#DQS信号をDIMM30、30Aから受信し、受信したDQS信号および#DQS信号の差分信号との差分をとって元のDQS信号を復元し、Delay回路13Aに出力する。
レシーバ12Bは、DQ信号を受信する。レシーバ12が受信するDQ信号のバス幅は、72ビットであり、DQS信号のバス幅は、18ビットである。DQS信号の1ビットに対してDQ信号4ビットが対応している。具体的には、レシーバ12Bは、PKG11の配線基板11aに設けられた配線を介して、DQ信号をDIMM30、30Aから受信し、受信したDQ信号をDelay回路13Bに出力する。
Delay回路13Aは、レシーバ12Aによって受信されたDQS信号の出力タイミングを調整する。具体的には、Delay回路13Aは、レシーバ12Aから出力されたDQS信号を遅延させてFF15A、Inverter16およびA/D変換器20に出力する。Delay回路13Bは、レシーバ12Bによって受信されたDQ信号の出力タイミングを調整する。Delay回路13Bは、レシーバ12Bによって受信されたDQ信号を遅延させてFF15A、FF15BおよびA/D変換器20に出力する。なお、Delay回路13A、13Bでは、DIMM30、30Aから送信されたDQ信号とDQS信号がメモリコントローラ10に至るまでに生じた遅延時間のバラツキを吸収しているものとする。なお、ここでのバラツキとは、DQ信号同士またはDQS信号同士の同一信号間での遅延バラツキ、および、DQ信号とDQS信号との間に生じる遅延のバラツキ両方のことをいう。
Delay値制御回路14は、Delay回路13A、13Bに遅延時間を設定する。具体的には、Delay値制御回路14は、外部端末から受け付けた遅延時間の設定値を記憶する設定レジスタ14aを有する。そして、Delay値制御回路14は、設定レジスタ14aが保持する遅延時間の設定値に応じて、Delay回路13A、13Bに遅延時間を遅延DQS信号のタイミングがセットアップ時間及びホールド時間のタイミング規約を満たすように設定する。
ここで、図5を用いて、Delay回路13AおよびDelay値制御回路14について具体的に説明する。図5は、Delay回路の内部構造を示す図である。図5に示すように、Delay回路13Aは、遅延素子であるバッファの段数がそれぞれ異なる複数の経路を有し、いずれかの経路にDQS信号を通すことでDQS信号を遅延させている。また、DQS信号のビット幅「18」に対して、Delay回路13Aは、18個設けられている。また、DQ信号のビット幅「72」に対して、Delay回路13Bは、72個設けられている。
また、図5の例では、Delay値制御回路14は、外部端末から遅延時間の初期設定が予め入力され、設定レジスタ14aに遅延時間の設定値が記憶されているものとする。そして、Delay値制御回路14は、設定レジスタ14aに記憶された遅延時間の設定値に応じて、レシーバ12Aから入力されたDQS信号が通る信号経路を選択し、DQS信号の遅延時間を制御する。なお、図5では、Delay回路13Aの例を示しているが、Delay回路13BもDelay回路13Aと同様の構成であり、Delay値制御回路14によって遅延時間が制御される。
FF15Aは、Delay回路13Aによって出力された遅延DQS信号の立ち上がりに合わせて、Delay回路13Bによって出力された遅延DQ信号を読み取る。具体的には、FF15Aは、Delay回路13Aによって出力された遅延DQS信号の電圧値が所定の閾値を超えた場合に、遅延DQ信号を読み取り、読み取った遅延DQ信号をデータ同期回路17に出力する。
また、Inverter16は、Delay回路13Aから入力された遅延DQS信号を反転させてFF15Bに出力する。FF15Bは、Inverter16によって出力された遅延DQS信号の立ち上がりに合わせて、Delay回路13Bによって出力された遅延DQ信号を読み取る。具体的には、FF15Bは、Inverter16によって出力された遅延DQS信号の電圧値が所定の閾値を超えた場合に、遅延DQ信号を読み取り、読み取った遅延DQ信号をデータ同期回路17に出力する。
データ同期回路17は、FF15Aから出力されたデータとFF15Bのデータとを内部クロックに合わせて同期させてエラー検出回路18に出力する。ここで、図6を用いて、データ同期回路の詳細な構成を説明する。図6に示すように、データ同期回路17は、複数の位相比較回路17aおよび複数のDelay回路17bを有する。データ同期回路17は、位相比較回路17aが36個設けられ、各位相比較回路17aには、Delay回路17bが8個接続されている。また、データ同期回路17は、FF15Aから出力され、バス幅が18ビットの遅延DQS[17:0]と、Inverter16によって反転され、FF15Bから出力されバス幅が18ビットの遅延#DQS[17:0]を受信する。また、データ同期回路17は、FF15Aから出力されたバス幅が72ビットの遅延DQ信号[71:0]と、FF15Bから出力されたバス幅が72ビットの遅延#DQ信号[71:0]とを受信する。
位相比較回路17aは、各FF15A、15Bから出力された遅延DQS信号または遅延#DQS信号とメモリコントローラ10のクロック信号CLKとの位相比較を行い、CLKと遅延DQSとの差分をもとめ、CLKと遅延DQSの差分をDelay回路17bに設定値として入力する。そして、Delay回路17bは、遅延DQ信号に遅延時間を与えることで、メモリコントローラ10のクロック信号と遅延DQ信号の同期をとり、エラー検出回路18へ出力する。
ここで、図7を用いて、データ同期回路の同期処理について説明する。図7は、データ同期回路のタイミングチャートを示す図である。図7に示すように、データ同期回路17は、遅延DQS信号とクロック信号CLKとの差分をもとめ、Delay回路17bが遅延DQ信号を差分だけ遅延させてクロック信号CLKに同期させる。
ここで、図8を用いて、DQ信号およびDQS信号の出力タイミングについて説明する。図8は、DQ信号およびDQS信号の出力タイミングを示す図である。図8の例では、「DQ[0]」の波形は、DIMM30から受信したDQ信号の波形(図8の例では、72ビットあるうちの1ビット目の波形)である。「DQS」の波形は、DIMM30から受信したDQS信号の波形であり、「Delay回路13B出力」の波形は、Delay回路13Bから出力された遅延DQ信号の波形(72ビットあるうちの1ビット目の波形)である。また、「Delay回路13A出力」の波形は、Delay回路13Aから出力された遅延DQS信号の波形であり、「FF15A出力」の波形は、FF15Aから出力された遅延DQ信号の波形である。また、「Inverter出力」の波形は、Inverter16から出力された遅延DQS信号の波形であり、「FF15B出力」の波形は、FF15Bから出力された遅延DQ信号の波形である。なお、図8では、縦軸が電圧値を示し、横軸が時間を示しており、横軸が同じであれば、同一の時間軸であることを示している。
図8に例示するように、DIMM30から受信した「DQS」がDelay回路13Aに入力されて90度遅延された後、Delay回路13Aから遅延DQS信号として出力される。そして、Delay回路13Aから出力された遅延DQS信号の電圧値が所定の閾値以上となったタイミングで遅延DQ信号がFF15Aに読み出され、FF15Aからデータ同期回路17に出力される。図8の例を用いて説明すると、FF15Aは、Delay回路13Aから出力された遅延DQS信号の電圧値が所定の閾値以上となったタイミングで、遅延DQ信号のデータ「D0」、「D2」、「D4」、「D6」を読み出してデータ同期回路17に出力する。
また、Inverter16によって反転された遅延DQS信号が所定の閾値以上となったタイミングで遅延DQがFF15Bに読み出され、FF15Bからデータ同期回路17に出力される。図8の例を用いて説明すると、FF15Bは、Inverter16が反転させた遅延DQS信号の電圧値が所定の閾値以上となったタイミングで、遅延DQ信号のデータ「D1」、「D3」、「D5」、「D7」を読み出してデータ同期回路17に出力している。
エラー検出回路18は、遅延DQ信号の読み取りをFF15AまたはFF15Bが失敗したことを検出する。具体的には、エラー検出回路18は、遅延DQ信号に含まれる誤り訂正用データを用いて、FF15A、15Bに読み取られた遅延DQ信号に誤りがないかを検出し、誤りを検出した場合には、エラーを検出した旨の通知を波形採取制御部19に送信する。なお、エラー検出回路18は、遅延DQ信号の65ビット目から72ビット目に含まれる誤り訂正用データを用いて1ビット目から64ビット目のデータの誤りを検出する。また、システム回路22は、エラー検出回路18の後段に設けられている。システム回路22は、エラー検出回路18によってエラーがないことが確認されたデータを使う。
波形採取制御部19は、Delay回路13Aから出力された遅延DQSの受信波形と、Delay回路13Bから出力された遅延DQ信号の電圧値をサンプリングするA/D変換器20の動作を制御する。具体的には、波形採取制御部19は、エラー検出回路18からエラーを検出した旨の情報を受信した場合には、読み取り失敗時における遅延DQ信号の電圧値および遅延DQS信号の電圧値をサンプリングするようにA/D変換器20の動作を制御する。なお、A/D変換器20のサンプリング周波数は、7.5ps(pico second)である。
例えば、DIMM30の初期出荷時において、波形採取制御部19は、エラー検出回路18にてM回目のエラーが検出された場合には、A/D変換器20の動作を開始して遅延DQ信号および遅延DQS信号の電圧値をA/D変換器20にサンプリングさせ、メモリ21に送信させる。その後、波形採取制御部19は、エラー検出回路18にてN回目のエラーが検出された場合には、A/D変換器20の動作を停止して、メモリ21に蓄えていたデータをPC40に送信する。
つまり、DIMM30の初期出荷時には、エラーが頻発するため、M回目のエラーが検出されるまでA/D変換器20の動作を開始させずにDIMM30の動作が安定するのを待ち、M回目のエラーが検出された後にA/D変換器20を動作させる。ここで、DIMMの初期出荷時にエラーが頻発するのは、初期出荷時においてはDIMMの品質が一定でなく動作が不安定な場合があるからである。また、M回目のエラーが検出されるまでA/D変換器20の動作を開始させないのは、DIMM30の動作開始後すぐは動作が安定せず、エラーが特に頻繁に発生するため、動作開始後しばらくしてDIMM30の動作が安定するのを待ってからA/D変換器20を動作させるためである。これにより、DIMMの初期出荷時においても、メモリコントローラ10内部のPKG11やDelay回路13A、13Bによる遅延時間のバラツキの影響を受けた遅延DQ信号および遅延DQS信号の電圧値をサンプリングすることができる。なお、上述したDIMMの動作不安定な場合における電圧値をサンプリングする方式について、以下では「第一収集方式」という。
また、例えば、DIMMの生産量が一定になってDIMMの品質が安定した場合には、波形採取制御部19は、PC40から動作開始を受け付けると、A/D変換器20の動作を開始してデータを採取させ、メモリ21に送信する。そして、エラー検出回路18にてエラーが検出された場合には、A/D変換器20の動作を停止して、メモリ21に蓄えていたデータをPC40に送信する。
つまり、DIMMの生産量が一定になった状況では、長時間に数回しかエラーが発生しないDIMMに対応するために、エラーが発生する前からA/D変換器20の動作を開始させておく。ここで、DIMMの生産量が一定になると長時間に数回しかエラーが発生しないのは、DIMMの生産量が一定になるとともに、DIMMの品質も安定し、DIMMの動作が安定してくるからである。
そして、エラーが発生するとA/D変換器20の動作を停止して、メモリ21に蓄えていたA/D変換器20がサンプリングした蓄積データをPC40に送信する。なお、上述したDIMMの生産量が一定になった状況における電圧値をサンプリングする方式について、以下では「第二収集方式」という。また、第一収集方式による電圧値のサンプリングを行うか第二収集方式による電圧値のサンプリングを行うかについては、波形採取制御部19がPC40から動作設定を受け付けて決定される。
ここで、図9を用いて、波形採取制御部19の詳細な構成を説明する。図9に示すように、波形採取制御部19は、I2C(Inter Integrated Circuit)コントローラ19a、エラーカウント数レジスタ19b、波形採取シーケンサ19cおよびA/D変換器動作設定部19dを有する。
I2Cコントローラ19aは、PC40との間で通信を制御する。具体的には、I2Cコントローラ19aは、動作設定として、上述した第一収集方式を行うか第二収集方式を行うかの指示や、A/D変換器20に動作の開始条件や停止条件の具体的な内容をPC40から受信する。また、I2Cコントローラ19aは、メモリ21から読み出した遅延DQ信号および遅延DQS信号のデータをPC40に送信する。エラーカウント数レジスタ19bは、エラー検出回路18が検出したエラー数を記憶する。
波形採取シーケンサ19cは、第一収集方式による電圧値のサンプリングを行う場合には、エラーカウント数レジスタ19bに記憶されたエラー数がM回になると、A/D変換器20の動作開始の指示をA/D変換器動作設定部19dに通知する。その後、波形採取シーケンサ19cは、エラーカウント数レジスタ19bに記憶されたエラー数がN回になった場合には、A/D変換器20の動作停止の指示をA/D変換器動作設定部19dに通知する。
また、波形採取シーケンサ19cは、第二収集方式による電圧値のサンプリングを行う場合には、PC40から動作開始を受け付けると、A/D変換器20の動作開始の指示をA/D変換器動作設定部19dに通知する。その後、エラー検出回路18にてエラーが検出されると、A/D変換器20の動作停止の指示をA/D変換器動作設定部19dに通知する。
A/D変換器動作設定部19dは、波形採取シーケンサ19cからA/D変換器20の動作開始の指示を受け付けた場合には、A/D変換器20に対して動作の開始を設定する。また、A/D変換器動作設定部19dは、A/D変換器20の動作停止の指示を受け付けた場合には、A/D変換器20に対して動作の停止を設定する。
A/D変換器20は、所定の時間ごとに、採取された遅延DQ信号および遅延DQS信号をそれぞれ電圧の値に変換し、変換された電圧値をメモリ21に記憶させる。具体的には、A/D変換器20は、波形採取制御部19から動作開始の指示を受け付けた場合には、Delay回路13Bから出力された遅延DQ信号と、Delay回路13AおよびInverter16から出力された遅延DQS信号とを所定の時間(例えば、7.5ps(pico second))ごとに、それぞれ電圧の値に変換する動作を開始する。そして、A/D変換器20は、採取された遅延DQ信号および遅延DQS信号をそれぞれ電圧の値に変換し、変換された電圧値をメモリ21に記憶させる。
また、A/D変換器20は、波形採取制御部19から動作停止の指示を受け付けた場合には、Delay回路13Bから出力された遅延DQ信号の電圧値と、Delay回路13AおよびInverter16から出力された遅延DQS信号の電圧値とを採取する動作を停止する。
ここで、図10を用いて、A/D変換器20の詳細な構成について説明する。図10に示すように、A/D変換器20は、複数の並列比較形A/D変換器20aを有する。A/D変換器20は、Delay回路13Aから受信する遅延DQS信号のバス幅が18ビットであり、Inverter16から受信する遅延#DQS信号のバス幅が18ビットであり、Delay回路13Bから受信する遅延DS信号が72ビットである。並列比較形A/D変換器20aは、108個設けられ、遅延DQS信号、遅延#DQS信号および遅延DQ信号の各ビットが入力される。各並列比較形A/D変換器20aは、遅延DQS信号、遅延#DQS信号および遅延DQ信号が入力され、それぞれ電圧の値に変換し、変換された電圧値をメモリ21に記憶させる。
ここで、図11を用いて、A/D変換器20およびメモリ21の動作タイミングについて説明する。図11は、A/D変換器とメモリの動作タイミングを説明する図である。図11では、第一の収集方式の例を用いて、A/D変換器20およびメモリ21の動作タイミングを説明する。図11に示すように、A/D変換器20は、エラー検出回路18によってM回目のエラーが検出されると、遅延DQ信号および遅延DQS信号の電圧値を採取する動作を開始する。そして、A/D変換器20は、メモリ21にデータを書き込みながら、エラー検出回路18によってN回目のエラーが検出されると、遅延DQ信号および遅延DQS信号の電圧値を採取する動作を終了する。
そして、A/D変換器20は、動作を開始してから終了するまでに採取した遅延DQ信号および遅延DQS信号の電圧値をメモリ21に記憶させる。その後、波形採取制御部19は、メモリデータ21として記憶された遅延DQ信号および遅延DQS信号の電圧値を読み出し、PC40に送信する。
メモリ21は、A/D変換器20によって変換された遅延DQ信号および遅延DQS信号の電圧値を記憶する。具体的には、メモリ21は、図12に示すように、遅延DQ信号および遅延DQS信号それぞれについて、A/D変換器20が動作を開始してからの経過時間を示す「採取時間」と、遅延DQ信号または遅延DQS信号の電圧の値を示す「電圧値」とを対応付けて記憶する。なお、採取時間の値の単位は、「ps(pico second)」であり、電圧値の単位は、「V(volt)」である。図12は、メモリが記憶するデータの一例を示す図である。
PC40は、遅延DQ信号および遅延DQS信号の電圧値に関するデータをメモリコントローラ10から受信し、受信したデータを用いて、遅延DQ信号および遅延DQS信号の受信波形を表示する。具体的には、PC40は、メモリコントローラ10のメモリ21に記憶された採取時間および電圧値を波形採取制御部19から受信すると、採取時間および電圧値を用いて、遅延DQ信号および遅延DQS信号の受信波形を表示する。
また、PC40は、遅延DQS信号の受信波形の立ち上がりに対して、遅延DQ信号のセットアップタイムとホールドタイムを算出し、DDR SDRAMのタイミング規約に対して、セットアップタイムとホールドタイムが不足していないかを判定する。
ここで、図13〜図15の例を用いて、DDR SDRAMのタイミング規約において、遅延DQS信号に対する遅延DQ信号のセットアップタイムとホールドタイムが足りている場合と不足している場合について説明する。図13は、DQS信号とDQ信号の受信波形を示す図である。図14は、セットアップ不足時のDQS信号とDQ信号の受信波形を示す図である。図15は、ホールドタイム不足時のDQS信号とDQ信号の受信波形を示す図である。なお、図13〜図15では、縦軸が電圧値を示しており、横軸が時間を示している。
例えば、図13に示すように、遅延DQS信号の電圧値が閾値を越えたタイミングにおいて、遅延DQ信号が立ち上がってから十分に時間が経過し、かつ、立ち下がるまでに所定の時間があることから、PC40は、セットアップタイムおよびホールドタイムが十分に足りていると判定する。つまり、遅延DQS信号の電圧値が閾値を越えたタイミングで遅延DQ信号がFF15A、15Bに読み取られるため、図13の例では、セットアップタイムおよびホールドタイムを確保して、FF15A、15Bが適切に遅延DQ信号を読み取れていることが確認できる。
また、図14の例では、PC40は、遅延DQS信号の電圧値が閾値を越えたタイミングで、遅延DQ信号の受信波形が立ち上がっているので、セットアップタイムが不足していると判定する。また、図15の例では、PC40は、遅延DQS信号の電圧値が閾値を越えたタイミングで、遅延DQ信号の受信波形が立ち下がっているので、ホールドタイムが不足していると判定する。
つまり、PC40は、メモリコントローラ10から受信した遅延DQ信号の受信波形および遅延DQS信号の受信波形を表示することで、遅延DQ信号とそれぞれの遅延DQS信号とがDDR SDRAMのタイミング規約を満たしているか否かを観測することができる。そして、PC40は、セットアップタイムおよびホールドタイムが不足しているか否かを判定する。この結果、セットアップタイムまたはホールドタイムが不足している場合には、FF15A、15Bの読み取りエラーの原因がメモリコントローラ10の内部の遅延時間のバラツキによるものと判断することができる。
また、例えば、PC40は、遅延DQ信号の受信波形をアイパターン表示し、閾値Vth、Vtlに対する窓幅tupとtdownの時間幅を算出し、窓幅tupとtdownが不足していないか確認してもよい。また、閾値Vthとは、遅延DQ信号の立ち上がりを検出する電圧レベルのことであり、閾値Vtlとは、遅延DQ信号の立ち下がりを検出する電圧レベルのことである。ここで、アイパターンとは、サンプリングされた遅延DQ信号の電圧値を時系列で表示したものである。また、窓幅tupとは、遅延DQ信号の電圧値が閾値Vthよりも高い間の時間幅のことをいい、窓幅tdownとは、遅延DQ信号の電圧値が閾値Vtlよりも低い時間幅のことをいう。
ここで、図16、17の例を用いて、遅延DQ信号のセットアップタイムとホールドタイムがDDR SDRAMのタイミング規約に対して、足りている場合と不足している場合について説明する。図16は、遅延DQ信号のアイパターンを示す図である。図17は、振幅異常時の遅延DQ信号のアイパターンを示す図である。
図16の例では、PC40は、遅延DQ信号の受信波形が閾値Vth、Vtlに対する窓幅tupとtdownの時間幅が十分に足りていると判定する。これに対して、図17の例では、振幅異常により遅延DQ信号の電圧値が閾値Vthよりも低いため、PC40は、遅延DQ信号の立ち上がりを検出できず、閾値Vthに対する窓幅tupの時間幅が不足していると判定する。つまり、図17の例では、遅延DQ信号の立ち上がりを検出できないので、FF15A、15Bが遅延DQ信号から誤ったデータを読み取ってしまう。
つまり、PC40は、メモリコントローラ10から受信した遅延DQ信号の受信を表示することで、遅延DQ信号が遅延DQS信号に対してDDR SDRAMのタイミング規約を満たしているか否かを観測することもできる。そして、PC40は、窓幅tupとtdownが不足しているか判定し、窓幅tupとtdownが不足している場合には、FF15A、15Bの読み取りエラーの原因がDIMM30単体のエラーによるものであると判断することができる。
[メモリコントローラによる処理]
次に、図18〜図20を用いて、実施例1に係るメモリコントローラ10およびPC40による第一収集方式及び第二収集方式の処理を説明する。図18および図19は、それぞれ実施例1に係る第一収集方式及び第二収集方式のメモリコントローラ10の処理動作を示すフローチャートである。図20は、実施例1に係るメモリコントローラが収集した受信波形を表示するPCの処理動作を示すフローチャートである。
図18に示すように、メモリコントローラ10は、PC40からA/D変換器20の動作設定を受け付けて(ステップS101)、DIMM30からDQ信号およびDQS信号の受信を開始する(ステップS102)。
そして、波形採取制御部19は、エラー検出回路18によってM回目のエラーが検出されたか判定する(ステップS103)。この結果、波形採取制御部19がエラー検出回路18によってM回目のエラーが検出されていないと判定した場合には(ステップS103否定)、メモリコントローラ10は、S102に戻って、DIMM30からDQ信号およびDQS信号を受信する処理を続ける。
また、波形採取制御部19は、エラー検出回路18によってM回目のエラーが検出されたと判定した場合には(ステップS103肯定)、A/D変換器20を動作させてメモリ21にサンプリングした遅延DQ信号および遅延DQS信号の電圧値を記憶させる(ステップS104)。そして、メモリコントローラ10は、DIMM30からDQ信号およびDQS信号を受信する処理を行う(ステップS105)。そして、波形採取制御部19は、エラー検出回路18によってN回目のエラーが検出されたか判定する(ステップS106)。
この結果、波形採取制御部19がエラー検出回路18によってN回目のエラーが検出されていないと判定した場合には(ステップS106否定)、メモリコントローラ10は、S105に戻って、DIMM30からDQ信号およびDQS信号を受信する処理を続ける。また、波形採取制御部19は、エラー検出回路18によってN回目のエラーが検出されたと判定した場合には(ステップS106肯定)、A/D変換器20を停止させる(ステップS107)。そして、波形採取制御部19は、メモリ21に蓄積されたデータを読み出してPC40へ転送する(ステップS108)。
次に、第二の収集方法によるメモリコントローラの受信波形採取処理を説明する。具体的には、メモリコントローラ10は、PC40からA/D変換器20の動作設定を受け付けると(ステップS201)、A/D変換器20を動作させてメモリ21に遅延DQ信号および遅延DQS信号の電圧値を記憶させる(ステップS202)。そして、メモリコントローラ10は、メモリコントローラ10がDIMM30からDQ信号およびDQS信号を受信する処理を開始する(ステップS203)。
そして、波形採取制御部19は、エラー検出回路18によってエラーが検出されたか判定する(ステップS204)。この結果、波形採取制御部19は、エラー検出回路18によってエラーが検出されていないと判定した場合には(ステップS204否定)、S203に戻って、メモリコントローラ10がDIMM30からDQ信号およびDQS信号を受信する処理を続行する。ここで、エラーとは、誤り訂正符号によって検出される誤ったデータが送信されたエラーのことをいう。
また、波形採取制御部19は、エラー検出回路18によってエラーが検出されたと判定した場合には(ステップS204肯定)、A/D変換器20を停止させる(ステップS205)。そして、波形採取制御部19は、メモリ21に蓄積されたデータを読み出してPC40へ転送する(ステップS206)。
次に、メモリコントローラ10が収集した電圧値を表示するPC40の動作を説明する。PC40は、第一の収集方式または第二の収集方式で収集した遅延DQ信号の電圧値および遅延DQS信号の電圧値をメモリコントローラ10から受信する(ステップS301)。そして、PC40は、DQ信号の電圧値およびDQS信号の電圧値からセットアップタイムとホールドタイムが十分にあるか判定する(ステップS302)。
この結果、PC40は、DDR SDRAMのタイミング規約において、遅延DQ信号が遅延DQS信号に対してセットアップタイムとホールドタイムが十分にないと判定した場合には(ステップS302否定)、メモリコントローラ10にエラーの原因があるとして、メモリコントローラ10のDelay値制御回路14の設定値を変更する(ステップS303)。また、PC40は、セットアップタイムとホールドタイムが十分にあると判定した場合には(ステップS302肯定)、DIMM単体にエラーの原因があると判断する(ステップS304)。
[実施例1の効果]
上述してきたように、メモリコントローラ10は、DIMM30から送信されたDQ信号を受信するレシーバ12Aと、送信回路から送信された、データ信号の読み取りタイミングを示すDQS信号を受信するレシーバ12Bとを有する。また、メモリコントローラ10は、受信されたタイミング信号の出力タイミングを調整するDelay回路13Aを有する。そして、メモリコントローラ10は、Delay回路13Aによって出力タイミングが調整された遅延DQS信号に応じて、DQ信号を読み取る。そして、メモリコントローラ10は、遅延DQ信号の電圧値と、遅延DQS信号の電圧値とを取得する。このため、メモリコントローラの内部における遅延DQ信号およびを遅延DQS信号の電圧値から信号波形を把握することができ、遅延DQ信号のタイミングがセットアップ時間及びホールド時間のタイミング規約を満たしているかどうか把握することが可能である。
また、実施例1によれば、メモリコントローラ10は、DQ信号に誤りがあることを検出し、DQ信号に誤りがあることが所定の回数検出された場合には、DQ信号の電圧値と調整タイミング信号の電圧値とを取得する。この結果、DIMM30の初期出荷時にエラーが頻発しているような場合であっても、遅延DQ信号のタイミングがセットアップ時間及びホールド時間のタイミング規約を満たしているかどうか適切に把握することが可能である。
また、実施例1によれば、メモリコントローラ10は、DQ信号に誤りがあることが検出された場合には、データ信号に誤りがあることが検出された時におけるDQ信号の電圧値と遅延DQS信号の電圧値とを取得する。この結果、DIMMの品質も安定している場合にも、遅延DQ信号のタイミングがセットアップ時間及びホールド時間のタイミング規約を満たしているかどうか適切に把握することが可能である。
また、実施例1によれば、メモリコントローラ10は、A/D変換器20によって採取されたDQ信号の電圧値とDQS信号の電圧値とをPC40に出力する。この結果、PC40がDQ信号の波形とDQS信号の波形を表示することで、エラーが発生する原因がメモリコントローラ10にあるのかDIMM30にあるのか判断することができる。例えば、メモリコントローラ10がDQ信号のデータ読み取りのエラーがある場合に、PC40は、セットアップタイムとホールドタイムが十分でなければ、メモリコントローラ内部の遅延時間のバラツキによりエラーが発生する原因があるタイミング障害が発生したと判断することができる。また、PC40は、セットアップタイムとホールドタイムが十分であれば、DIMMが出力するデータにエラーが発生する原因があるDIMM障害が発生したと判断することができる。
さて、これまで実施例1について説明したが、上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では実施例2として本実施例に含まれる他の実施例を説明する。
(1)テストパターン
DIMMとメモリコントローラの環境状態を変化させ、DIMMとメモリコントローラの環境状態を変化させた状態で、DIMMから送信されたDQ信号およびDQS信号をそれぞれ電圧の値に変換し、変換された電圧値をメモリに記憶させるようにしてもよい。
具体的には、DIMMに対して所定のテストパターンを予め書き込んでおく。そして、メモリコントローラは、DIMMに対してREAD命令を発行して、DIMMからテストパターンを読み出す。ここで、メモリコントローラがテストパターンを読み出している際に、DIMMとメモリコントローラの環境状態を変化させる。
そして、環境が変化した状態で、メモリコントローラは、Delay回路から出力された遅延DQ信号および遅延DQS信号をそれぞれ電圧の値に変換し、変換された電圧値をメモリに記憶させる。
例えば、メモリコントローラがテストパターンを読み出している際に、DIMMとメモリコントローラの周辺の温度を上昇させて、環境状態を変化させる。このように、DIMMとメモリコントローラの周辺の温度を上昇させた場合には、データ化けが発生する等のエラーが発生することがある。このような環境の変化によるエラーが発生した状態で、メモリコントローラの内部の遅延DQ信号および遅延DQS信号をそれぞれ電圧の値に変換し、変換された電圧値をメモリ21に記憶させることができる。
(2)送受信装置
実施例1では、DIMMとメモリコントローラとの間で信号の送受信を行う場合の例について説明したが、これに限定されるものではなく、信号の送受信を行う装置同士であれば、DIMMとメモリコントローラに限られず、様々な装置に適用することができる。
(3)メモリ
実施例1では、A/D変換器が採取したデータをメモリに記憶し、メモリに記憶されたデータをPCに送信する場合の例について説明したが、これに限定されるものではなく、メモリを設けずに、A/D変換器が採取したデータを直接PCに送信してもよい。
(4)システム構成等
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、データ同期回路17とエラー検出回路18を統合してもよい。さらに、各装置にて行なわれる各処理機能は、その全部または任意の一部が、CPUおよび当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
10 メモリコントローラ
11 PKG
11a 配線基板
11b 樹脂
12 シリコンチップ
12A、12B レシーバ
13A、13B Delay回路
14 Delay値制御回路
14a 設定レジスタ
15A、15B FF
16 Inverter
17 データ同期回路
18 エラー検出回路
19 波形採取制御部
20 A/D変換器
21 メモリ
22 システム回路
30、30A DIMM
31、32 ドライバ
33、33A SDRAM
34、34A ソケット
40 PC
50 システムボード
60 配線
100 メモリコントローラ
110 PKG
120、121 レシーバ
130、131 Delay回路
140 Delay値制御回路
14a 設定レジスタ
150、151 FF
160 Inverter
170 データ同期回路
200 DIMM
201、202 ドライバ
300 オシロスコープ

Claims (5)

  1. 送信回路から送信されたデータ信号を受信するデータ信号受信部と、
    送信回路から送信された、データ信号の読み取りタイミングを示すタイミング信号を受信するタイミン信号受信部と、
    前記タイミン信号受信部によって受信されたタイミング信号の出力タイミングを調整するタイミング調整部と、
    前記タイミング調整部によって出力タイミングが調整された調整タイミング信号に応じて、前記データ信号受信部によって受信された前記データ信号を読み取る読取部と、
    前記読取部によって読取られた前記データ信号に誤りがあることを検出する検出部と、
    前記検出部によって前記データ信号に誤りがあることが所定の回数検出された場合には、前記データ信号受信部によって受信されたデータ信号の電圧値と、前記タイミング調整部によって出力タイミングが調整された前記調整タイミング信号の電圧値とを取得する電圧値取得部と
    を有することを特徴とする集積回路。
  2. 送信回路から送信されたデータ信号を受信するデータ信号受信部と、
    送信回路から送信された、データ信号の読み取りタイミングを示すタイミング信号を受信するタイミン信号受信部と、
    前記タイミン信号受信部によって受信されたタイミング信号の出力タイミングを調整するタイミング調整部と、
    前記タイミング調整部によって出力タイミングが調整された調整タイミング信号に応じて、前記データ信号受信部によって受信された前記データ信号を読み取る読取部と、
    前記読取部によって読取られた前記データ信号に誤りがあることを検出する検出部と、
    前記検出部によって前記データ信号に誤りがあることが検出された場合には、前記データ信号に誤りがあることが検出された時における前記データ信号受信部によって受信されたデータ信号の電圧値と、前記タイミング調整部によって出力タイミングが調整された前記調整タイミング信号の電圧値とを取得する電圧値取得部と
    を有することを特徴とする集積回路。
  3. 送信回路から送信されたデータ信号と、該データ信号の読み取りタイミングを示すタイミング信号を受信し、
    受信したタイミング信号の出力タイミングを調整し、
    出力タイミングが調整された調整タイミング信号に応じて、前記データ信号を読み取り、
    読み取ったデータ信号に誤りがあることを検出し、
    前記データ信号に誤りがあることが所定の回数検出された場合には、前記データ信号の電圧値と前記調整タイミング信号の電圧値とを取得する
    ことを特徴とする電圧値取得方法。
  4. 送信回路から送信されたデータ信号と、該データ信号の読み取りタイミングを示すタイミング信号を受信し、
    受信したタイミング信号の出力タイミングを調整し、
    出力タイミングが調整された調整タイミング信号に応じて、前記データ信号を読み取り、
    読み取ったデータ信号に誤りがあることを検出し、
    前記データ信号に誤りがあることが所定の回数検出された場合には、前記データ信号に誤りがあることが検出された時における前記データ信号の電圧値と前記調整タイミング信号の電圧値とを取得する
    ことを特徴とする電圧値取得方法。
  5. データ信号とともに、該データ信号の読み取りタイミングを示すタイミング信号を送信する送信回路と、前記データ信号および前記タイミング信号を受信し、前記タイミング信号に応じて、前記データ信号を読み取る集積回路とを有する送受信システムであって、
    前記送信回路は、
    前記データ信号を前記集積回路に対して送信するデータ信号送信部と、
    前記タイミング信号を前記集積回路に対して送信するタイミング信号送信部と
    を有し、
    前記集積回路は、
    前記データ信号送信部から送信されたデータ信号を受信するデータ信号受信部と、
    前記タイミング信号送信部から送信された、データ信号の読み取りタイミングを示すタイミング信号を受信するタイミング信号受信部と、
    前記タイミン信号受信部によって受信されたタイミング信号の出力タイミングを調整するタイミング調整部と、
    前記タイミング調整部によって出力タイミングが調整された調整タイミング信号に応じて、前記データ信号受信部によって受信された前記データ信号を読み取る読取部と、
    前記読取部によって読取られた前記データ信号に誤りがあることを検出する検出部と、
    前記検出部によって前記データ信号に誤りがあることが所定の回数検出された場合には、前記データ信号受信部によって受信されたデータ信号の電圧値と、前記タイミング調整部によって出力タイミングが調整された前記調整タイミング信号の電圧値とを取得する電圧値取得部と
    を有することを特徴とする送受信システム。
JP2012541656A 2010-11-02 2010-11-02 集積回路、電圧値取得方法および送受信システム Active JP5454702B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2010/069527 WO2012059985A1 (ja) 2010-11-02 2010-11-02 集積回路、電圧値取得方法および送受信システム

Publications (2)

Publication Number Publication Date
JP5454702B2 true JP5454702B2 (ja) 2014-03-26
JPWO2012059985A1 JPWO2012059985A1 (ja) 2014-05-12

Family

ID=46024115

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012541656A Active JP5454702B2 (ja) 2010-11-02 2010-11-02 集積回路、電圧値取得方法および送受信システム

Country Status (3)

Country Link
US (1) US20130232372A1 (ja)
JP (1) JP5454702B2 (ja)
WO (1) WO2012059985A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8930776B2 (en) * 2012-08-29 2015-01-06 International Business Machines Corporation Implementing DRAM command timing adjustments to alleviate DRAM failures
JP6287604B2 (ja) * 2014-06-09 2018-03-07 富士通株式会社 演算処理装置および情報処理装置
US9984741B2 (en) * 2015-11-05 2018-05-29 Dell Products, Lp System and method of transferring data over available pins
CN106128406B (zh) * 2016-09-08 2019-01-22 京东方科技集团股份有限公司 眼图幅值调节方法、数据传输方法、电路和显示装置
JP6962130B2 (ja) * 2017-10-24 2021-11-05 富士通株式会社 データ送受信システム、データ送受信装置およびデータ送受信システムの制御方法
US10388362B1 (en) * 2018-05-08 2019-08-20 Micron Technology, Inc. Half-width, double pumped data path

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0969829A (ja) * 1995-08-31 1997-03-11 Kyocera Corp 同期式データ伝送方式
JP2006099676A (ja) * 2004-09-30 2006-04-13 Kyocera Mita Corp メモリ制御装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6029250A (en) * 1998-09-09 2000-02-22 Micron Technology, Inc. Method and apparatus for adaptively adjusting the timing offset between a clock signal and digital signals transmitted coincident with that clock signal, and memory device and system using same
US6581164B1 (en) * 2000-01-03 2003-06-17 Conexant Systems, Inc. System for adjusting clock frequency based upon amount of unread data stored in sequential memory when reading a new line of data within a field of data
US6587907B1 (en) * 2000-05-01 2003-07-01 Hewlett-Packard Development Company, L.P. System and method for generating a clock delay within an interconnect cable assembly
JP2002007200A (ja) * 2000-06-16 2002-01-11 Nec Corp メモリ制御装置及び動作切替方法並びにインターフェース装置、半導体集積チップ、記録媒体
US6646929B1 (en) * 2001-12-05 2003-11-11 Lsi Logic Corporation Methods and structure for read data synchronization with minimal latency
US7664978B2 (en) * 2006-04-07 2010-02-16 Altera Corporation Memory interface circuitry with phase detection
WO2008079910A2 (en) * 2006-12-20 2008-07-03 Rambus Inc. Strobe acquisition and tracking
US8949520B2 (en) * 2009-01-22 2015-02-03 Rambus Inc. Maintenance operations in a DRAM

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0969829A (ja) * 1995-08-31 1997-03-11 Kyocera Corp 同期式データ伝送方式
JP2006099676A (ja) * 2004-09-30 2006-04-13 Kyocera Mita Corp メモリ制御装置

Also Published As

Publication number Publication date
WO2012059985A1 (ja) 2012-05-10
US20130232372A1 (en) 2013-09-05
JPWO2012059985A1 (ja) 2014-05-12

Similar Documents

Publication Publication Date Title
US11762788B2 (en) Memory module with timing-controlled data buffering
US20210240620A1 (en) Memory module with local synchronization and method of operation
JP5454702B2 (ja) 集積回路、電圧値取得方法および送受信システム
KR100564635B1 (ko) 메모리 모듈 내에서의 인터페이스 타이밍을 제어하는메모리 시스템 및 그 방법
TWI625709B (zh) 時序控制器、包含該時序控制器的顯示系統以及其使用方法
US7624225B2 (en) System and method for providing synchronous dynamic random access memory (SDRAM) mode register shadowing in a memory system
US8938578B2 (en) Memory device with multi-mode deserializer
JP2010140490A (ja) メモリ装置と通信する複数の通信チャンネル間のチャンネルスキュー補償回路とその方法及びこれを含むメモリコントローラ
CN108009372B (zh) 一种ddr内存虚拟写电平校准响应的方法
US8576645B2 (en) Semiconductor memory device capable of minimizing current consumption during high speed operation
JP5807952B2 (ja) メモリコントローラ及びメモリ制御方法
US8209560B2 (en) Transmission system where a first device generates information for controlling transmission and latch timing for a second device
US20180151207A1 (en) Memory device with write data bus control
WO2011077574A1 (ja) 信号復元回路、レイテンシ調整回路、メモリコントローラ、プロセッサ、コンピュータ、信号復元方法及びレイテンシ調整方法
JP2007164599A (ja) メモリモジュール
US8441876B2 (en) Memory module including parallel test apparatus
CN109949853B (zh) 涉及在低速操作环境中执行高速测试的半导体设备和系统
EP2664991A1 (en) Memory controller and information processing device
US20230298642A1 (en) Data-buffer controller/control-signal redriver
US7652936B2 (en) Signal sampling apparatus and method for DRAM memory
US9613716B2 (en) Semiconductor device and semiconductor system including the same
US9300282B2 (en) Semiconductor device and semiconductor system including the same
US7890786B2 (en) Memory controller and signal synchronizing method thereof
TWI556252B (zh) 記憶體測試系統及其測試方法
TWI574258B (zh) 使用命令/位址校準之記憶體裝置,系統及方法

Legal Events

Date Code Title Description
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: 20131210

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131223

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5454702

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150