半導体装置
【課題】テスト中に所望の位相に対して追随できるテスト回路を備え、安価にDDRifのテストを行うことを目的としている。
【解決手段】本発明における半導体装置は、位相シフト量を決定するDLL200と、テストモード時に所定位相ずらす演算回路300と、位相シフト量を設定するレジスタ11〜16と、設定した位相にシフトして信号の送受信を行う伝送回路10とを備える。伝送回路10は、第1の信号を設定した位相にシフトする位相シフタ1と、テストモード時に第1の信号をループバックする双方向バッファ21と、双方向バッファ21から出力された信号の位相をシフトする位相シフタ2と、第3の信号の位相をシフトする位相シフタ3と、テストモード時に第3の信号をループバックする双方向バッファ22と、双方向バッファ22から出力された信号の位相をシフトする位相シフタ4と、位相シフタ2,4の出力信号を取り出すFIFO30とを備える。
【解決手段】本発明における半導体装置は、位相シフト量を決定するDLL200と、テストモード時に所定位相ずらす演算回路300と、位相シフト量を設定するレジスタ11〜16と、設定した位相にシフトして信号の送受信を行う伝送回路10とを備える。伝送回路10は、第1の信号を設定した位相にシフトする位相シフタ1と、テストモード時に第1の信号をループバックする双方向バッファ21と、双方向バッファ21から出力された信号の位相をシフトする位相シフタ2と、第3の信号の位相をシフトする位相シフタ3と、テストモード時に第3の信号をループバックする双方向バッファ22と、双方向バッファ22から出力された信号の位相をシフトする位相シフタ4と、位相シフタ2,4の出力信号を取り出すFIFO30とを備える。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、外部メモリとの間でデータの送受信を行うインターフェース回路が正常に動作するか判別するテスト回路を内蔵した半導体装置に関し、特に高速にデータの送受信を行うため、クロック信号の立ち上がりおよび立ち下がりに同期してデータを転送するDDRif(ダブル・データ・レート・インターフェース回路)を備えた半導体装置に関するものである。
【背景技術】
【0002】
従来技術におけるDDRifは、位相シフト量を決定するDLL(ディレイ・ロックド・ループ回路)、ライト時にDQ(データ信号)を90°シフトさせる位相シフタ、リード時にDQS(データ・ストローブ信号)を90°シフトさせる位相シフタ、リード時のプリアンブル期間を検出する回路、リード時のデータをクロックに再同期化させるFIFOと、データの入出力およびクロック/コマンドの出力を行うことができるバッファにより構成していた(非特許文献1参照)。
【0003】
上記構成のDDRifが正常に動作するかは各種ACタイミングを外部テスタを用いて判別していた。例えば、評価時に高精度なテスタを用いて特性ばらつきを判定し、出荷時のテストは代替の簡易なテスタを用いて特性評価を行っていた。
【0004】
また、外部からの指示データにより入力クロックをずらして取り込み、取り込んだデータの比較結果から遅延量を測定し、入力セットアップ/ホールド時間の測定を行う回路を備えた半導体装置が下記特許文献1に示されている。
【0005】
【特許文献1】特開平11−72540号公報
【非特許文献1】ITC 2004 Digest of Technical Paper,「AC IO Loopback Design for High Speed uProcessor IO Test」,B.Provost,et al.
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、高速化されたDDR-SDRAMにおいてはより高精度な動作が要求されており、外部テスタを用いてDDR-SDRAMに対して規定される各種ACタイミングを保証するには、非常に高速動作を行える高精度なテスタが必要であり、テストコストがかかるという問題があった。また、内部の動作精度を外部テスタを用いて判定する場合、外部テスタに引き出す際の経路の影響を受けて、高精度なテストができないという問題があった。
【0007】
また、特許文献1に示される構成においては、所望の位相差を生成する際に、ロックした状態のDLLコードを外部に読み出し、そこから単位ビットあたりの遅延量を外部で計算を行い、その結果をもとに所望の位相差分ずらしたコードを再度レジスタに設定する必要がある。DLLはチップ上の条件が変動しても安定したタイミングを生成する回路だが、レジスタ設定を行った場合にその値を変更することはできず、テスト中の条件変動に追随することができないため、所望のテストポイントとは離れた位相量になる可能性があるという問題があった。
【0008】
そこで本発明における半導体装置はかかる問題を解決するためになされたものであり、テスト中に所望の位相に対して追随できるテスト回路を内蔵し、安価にDDRifが正常に動作するかを判定することを目的としている。
【課題を解決するための手段】
【0009】
本発明の一実施形態における半導体装置は、位相シフト量を決定するDLL回路と、前記DLL回路に接続され、テストモード時にテストモード信号に基づき前記決定した位相シフト量を所定位相ずらす演算回路と、前記演算回路に接続され、前記所定位相ずれた前記位相シフト量を設定する第1〜第4のレジスタと、前記第1〜第4のレジスタおよび前記外部メモリと信号の送受信を行う第1の端子および第2の端子に接続され、前記第1〜4のレジスタに設定した前記位相シフト量に基づき位相をシフトして信号の送受信を行う伝送回路とを備え、前記伝送回路は、前記第1のレジスタに接続され、前記第1の端子に出力する第1の信号を前記第1のレジスタに設定した前記位相シフト量に基づき位相シフトする第1の位相シフタと、前記第1の位相シフタおよび前記第1の端子に接続され、前記外部メモリとの間で前記第1の信号と前記外部メモリからの第2の信号の入出力を行い、または前記テストモード時に前記第1の信号をループバックする第1の双方向バッファと、前記第1の双方向バッファに接続され、前記第1の信号または前記第2の信号を前記第2のレジスタに設定した前記位相シフト量に基づき位相シフトする第2の位相シフタと、前記第2の端子に出力する第3の信号を前記第3のレジスタに設定した前記位相シフト量に基づき位相シフトする第3の位相シフタと、前記第3の位相シフタおよび前記第2の端子に接続され、前記外部メモリとの間で前記第3の信号と前記外部メモリからの第4の信号の入出力を行い、または前記テストモード時に前記第3の信号をループバックする第2の双方向バッファと、前記第2の双方向バッファおよび第4のレジスタに接続され、前記第3の信号または前記第4の信号を前記第4のレジスタに設定した前記位相シフト量に基づき位相シフトする第4の位相シフタと、前記第2,第4の位相シフタに接続され、前記第1または第3の信号を、それぞれ前記第2または第4の信号に応じて取り出すFIFOとを備える。
【発明の効果】
【0010】
本発明の一実施形態によれば、DLLの後段に演算回路を備え、位相シフト量がパス側からフェイル側へ順次変更するようにレジスタ設定をすることで、高精度で高速動作を行える外部テスタを用いずに、セットアップ/ホールド時間を測定することができる。また、テスト回路を内蔵することにより、テストコストの削減が可能である。
【発明を実施するための最良の形態】
【0011】
[実施の形態1]
図1は、図2における外部メモリ60との間でDDR方式を用いて信号の送受信を行う本発明の半導体装置50におけるDDRif(図2のメモリコントローラ40に含まれる)の構成を示した図であり、360°の位相シフト量を決定するDLL200(ディレイ・ロックド・ループ回路)、通常動作時は0/90/180/270°、テストモード時にテストモード信号に基づき位相シフト量を自由に所定位相ずらす演算回路300、所定位相ずれた位相シフト量を設定するレジスタ11〜16(第1〜6のレジスタ)、レジスタ11〜14および外部メモリ60と信号の送受信を行う端子61,62(第1,2の端子)に接続され、レジスタ11〜14に設定した位相シフト量に基づき位相シフトして信号の送受信を行う伝送回路10、レジスタ15,16に接続され、リード時のプリアンブル期間を検出するプリアンブル検出回路100より構成される。
【0012】
伝送回路10は、端子61に出力するMDQ(データ信号、第1の信号)をレジスタ11に設定した位相シフト量に基づき位相シフトする位相シフタ1(第1の位相シフタ)、外部メモリ60との間でMDQとDQ(第2の信号)の入出力を行い、テストモード時にMDQをループバックする双方向バッファ21(第1の双方向バッファ)、MDQ,DQをレジスタ12に設定した位相シフト量に基づき位相シフトする位相シフタ2(第2の位相シフタ)、端子62に出力するMDQS(データ・ストローブ信号、第3の信号)をレジスタ13に設定した位相シフト量に基づき位相シフトする位相シフタ3(第3の位相シフタ)、外部メモリ60との間でMDQSとDQS(第4の信号)の入出力を行い、テストモード時にMDQSをループバックする双方向バッファ22(第2の双方向バッファ)、MDQS,DQSをレジスタ14に設定した位相シフト量に基づき位相シフトする位相シフタ4(第4の位相シフタ)、MDQ,DQをそれぞれMDQS,DQSに応じて取り出すFIFO30より構成される。
【0013】
図2はメモリコントローラ40を備えた半導体装置50と外部メモリ60との間でデータの送受信を行う構成を示した図である。半導体装置50は、メモリコントローラ40のP端子を介して外部メモリ60のDQS端子とMDQS、DQSの送受信を行う。同様にH端子を介して外部メモリ60のDQ端子とMDQ、DQの送受信を行う。また、Y端子を介して外部メモリ60のCK端子にクロックを送信する。
【0014】
まず、図1,2を参照して通常動作時のデータ読み出し時(リードモード)における動作を説明する。例えばDDR-SDRAMで構成される外部メモリ60は、メモリコントローラ40からリードモードの指示を受けるとクロック信号に同期して読み出しデータDQをデータストローブ信号DQSとともにメモリコントローラ40へ転送する。このDQSは読み出しデータを転送するタイミングを知らせるための双方向のストローブ信号である。DQSは3値信号であり、プリアンブル、トグル、ポストアンブルから構成される。DQSは、データ非転送時においてはハイインピーダンス状態(HiZ)に設定され、データ転送時においては、データ転送の約1クロックサイクル前にDQSがLレベルに設定される。このLレベルに設定される期間がプリアンブル期間である。プリアンブル期間に続いて、DQSが読み出しデータに同期してトグルし、最後のデータが転送されるとハイインピーダンス状態に設定される。この最後のデータが転送されるサイクルのLレベルの期間が、ポストアンブル期間である。プリアンブル検出回路100においてプリアンブル期間が検出されるとFIFO30のイネーブル信号(EN)をバースト長期間活性状態のHレベルに設定する。FIFO30はクロック信号に同期して外部メモリ60から転送されたバースト長データの取り込みを行うことができる。
【0015】
このように外部メモリ60から転送されたデータをFIFO30で取り込むとき、与えられたDQSを読み出しデータのウィンドウの中央の位置までシフトし、DQS信号に従って読み出しデータの取り込みを行う。よって、外部メモリ60より印加された信号のうちDQSは入力回路が活性化した双方向バッファ22を介して位相シフタ4で90°位相をシフトする。また、外部メモリ60より印加された信号のうちDQは入力回路が活性化した双方向バッファ21を介して位相シフトが0°になるように位相シフタ3で位相を変化し、FIFO30で外部メモリ60から転送されたデータを取り込む。ここで、位相シフタ2,4の位相シフト量はDLL200によって決定し、決定した位相量をレジスタ12,14に設定されて位相シフト量が調整される。
【0016】
次に、図1を参照して通常時のデータ書き込み時(ライトモード)の動作を説明する。外部メモリ60に書き込むとき、メモリコントローラ40はMDQSをMDQの中央に合わせて出力するために、予め90°位相シフトしなければならない。ここで、MDQは書き込みデータであり、MDQSは書き込みデータを転送するタイミングを知らせるための双方向のストローブ信号である。印加された書き込み信号のうちMDQは位相シフタ1で90°位相をシフトし、MDQSは位相シフトが0°になるように位相シフタ3で位相を変化してMDQSをMDQの中央に合わせる。また、MDQSは上記DQSと同様に3値信号である。位相シフトされたMDQ、MDQSそれぞれは出力回路が活性化された双方向バッファ21,22を介して外部メモリ60に出力される。ここで、位相シフタ1,3の位相シフト量はDLL200によって決定し、決定した位相量がレジスタ11,13に設定されて位相シフト量が調整される。
【0017】
図3は本発明の実施の形態1におけるセットアップ/ホールド時間を測定するテスト回路を内蔵したDDRifを示した図であり、図4は図3のA点、B点におけるテスト信号であるMDQSとMDQの関係を示した図である。
【0018】
図3,4を参照してライトモード時におけるライトパスのセットアップ/ホールド時間を測定するときの動作について説明する。ここで、セットアップ時間とは、取り込みタイミングの前に入力データが確定していなければならない時間であり、ホールド時間とは、取り込みタイミングの後にその入力データを維持していなければならない時間である。
【0019】
まず、メモリコントローラ40をライトテストモードに設定し、双方向バッファ21,22をループバックテストモードに設定して入出力回路を同時に活性化する。テスト入力T1より印加されたテスト用の信号のうちMDQは位相シフタ1で90°位相シフトし、双方向バッファ21の出力回路に送られる。同様にテスト入力T1より印加されたテスト用の信号のうちMDQSは位相シフタ3で0°位相シフトし、双方向バッファ22の出力回路に送られる。このときのMDQとMDQSとにおける関係を示した信号波形図が図4のA点における図であり、90°位相がずれた状態になっている。すなわちライトパスのテスト時におけるA点のMDQとMDQSとの関係は通常動作時と同じ関係になる。
【0020】
次に、双方向バッファ21の出力回路に送られたMDQは、ループバックして双方向バッファ21の入力回路を通り、位相シフタ2で0°位相シフトしてFIFO30に入力する。同様に双方向バッファ22の出力回路に送られたMDQSは、ループバックして双方向バッファ22の入力回路を通り、位相シフタ4で0°位相シフトしてFIFO30に入力する。ここで、位相シフタ4は、通常動作時はDQSに対し90°位相をシフトするが、ライトテストモード時は位相シフトが0°になるようにレジスタ14で設定される。この結果、FIFO30に入力されたMDQSとMDQは90°の位相差を保ったまま印加される。このときのMDQとMDQSとにおける関係を示した信号波形図が図4のB点における図である。
【0021】
ライトテストモードにおいて、演算回路300は、テストモード信号に応じてDLL200で決定した位相シフタ1の90°位相シフト量を所定位相ずらすための設定値を順次レジスタ11に設定する。これにより、FIFO30に入力するMDQSとMDQは位相差が変化していくので、判定回路80によってFIFO30の出力を期待値と比較することによりパス/フェイル判定し、そのときのレジスタ値を読み出すことにより、ライトパスのセットアップ/ホールド時間を測定することができる。
【0022】
次に、図5,6を参照してリードモード時におけるリードパスのセットアップ/ホールド時間を測定するときの動作について説明する。まず、メモリコントローラ40をリードテストモードに設定し、双方向バッファ21,22をループバックテストモードに設定して入出力回路を同時に活性化する。テスト入力T1より印加されたテスト信号のうちMDQは位相シフタ1で0°位相シフトし、双方向バッファ21の出力回路に送られる。同様にテスト入力T1より印加されたテスト用の信号のうちMDQSは位相シフタ3で0°位相シフトし、双方向バッファ22の出力回路に送られる。このときのMDQとMDQSとの関係を示した信号波形図が図5のA点における図であり、MDQはMDQSに対し同位相になっている。ここで、位相シフタ1は、通常動作時はMDQに対し90°位相をシフトするが、リードテストモード時は位相シフトが0°になるようにレジスタ11に設定される。
【0023】
次に、双方向バッファ21の出力回路に送られたMDQは、ループバックして双方向バッファ21の入力回路を通り、位相シフタ2で0°位相シフトしてFIFO30に入力される。同様に双方向バッファ22の出力回路に送られたMDQSは、ループバックして双方向バッファ22の入力回路を通り、位相シフタ4で90°位相シフトしてFIFO30に入力する。この結果、FIFO30に入力されたMDQSとMDQは90°の位相がずれた状態で印加される。このときのMDQとMDQSとの関係を示した波形図が図6のB点における図である。
【0024】
リードテストモードにおいて、演算回路300は、テストモード信号に応じてDLL200で決定した位相シフタ4の90°位相シフト量を所定位相ずらすための設定値を順次レジスタ14に設定する。これにより、FIFO30に入力するMDQSとMDQは位相差が変化していくので、判定回路80によってFIFO30の出力を期待値と比較することによりパス/フェイル判定し、そのときのレジスタ値を読み出すことにより、リードパスのセットアップ/ホールド時間を測定することができる。
【0025】
[実施の形態2]
図7は本発明の実施の形態2におけるDuty、プリアンブル期間、ポストアンブル期間を測定するテスト回路を内蔵したDDRifを示した図である。レジスタ16に設定した位相シフト量に基づき位相シフトしたDQSと、レジスタ15に設定した位相シフト量に基づき位相シフトしたDQSとを比較することによりDQSのプリアンブル期間を検出するプリアンブル検出回路100、プリアンブル検出回路100の出力を期待値と比較する比較器90を備える。
【0026】
通常動作時のプリアンブル検出回路100によるプリアンブル期間の検出動作について説明する。プリアンブルとはDDR-SDRAMが正しいデータに同期して出力するDQSの立ち上がりエッジの1サイクル前からL出力を行う動作であり、リードモード時の規格はDQSのL期間が0.9〜1.1サイクルと定められている。なお、1.1サイクル以前の状態については特に規定はない。DLL200はレジスタ15の遅延コードを通常動作時の0.9tCKに設定して、プリアンブル検出回路100によってDQSとDQSを0.9tCK遅延させた遅延DQSの比較を行うことによりプリアンブル期間の検出を行い、プリアンブル期間が規格を満たしている場合、FIFO30がDDR-SDRAMから送られるデータ取り込みを開始する。ここで、通常動作時、演算回路300は所定の遅延量を付加しない。
【0027】
図7は上記のようにプリアンブルを検出する回路であり、レジスタ15は位相シフタ5に0.9tCKの遅延量を付加し、外部メモリ60から転送されたDQSを位相シフタ5で0.9tCK遅延する。位相シフタ6を通るDQSは遅延量が0であり、位相シフタ5,6から出力されるそれぞれの信号を検出器70に入力する。図8,9はDQS,遅延DQS,プリアンブル出力との関係を示した図であり、検出器70は、DQSと遅延DQSの比較を行うことによりプリアンブル期間の検出を行い、検出結果を示す検出信号をプリアンブル出力として出力する。
【0028】
図7〜9を用いてDQSを0.9tCKの遅延量を付加した遅延DQSと比較するときの動作についてさらに詳しく説明する。図8に示すように、DQSのプリアンブル期間が規格を満たす0.9サイクル以上であれば、DQSがプリアンブル期間経過後にHレベルに立ち上がったとき、遅延DQSはLレベルであり、プリアンブル出力がHからLに変化する。これに伴いFIFO30はリセットされる。その後DQSがHレベルに立ち上がったとき、遅延DQSはHレベルであり、プリアンブル出力がLからHに変化する。これに伴いFIFO30はDDR-SDRAMから送られるデータ取り込みを開始する。一方、DQSに一時的にノイズがのってHになり、その後Lになった場合、FIFO30はリセットされるが、DQSが所定時間内にHにならなければプリアンブル出力はHにならず、FIFO30はDDR-SDRAMから送られるデータは取り込まない。また、図9に示すように、プリアンブル期間が規格値より短い場合は、DQSがHレベルに立ち上がったときに遅延DQSはLになっていないため、FIFO30はリセットされず、FIFO30はDDR-SDRAMから送られるデータを取り込まない。
【0029】
次に、図1,7を参照してテストモード時の動作について説明する。メモリコントローラ40をテストモードに設定し、双方向バッファ22をループバックテストモードに設定して入出力回路を同時に活性化する。テスト入力T1より印加されたテスト用の信号は、双方向バッファ22でループバックされプリアンブル検出回路100に入力される。DQSのDuty測定時は、演算回路300においてDLL200で決定した遅延量に所定の遅延量(例えば0.45〜0.55tCKの遅延量)を付加しレジスタ15に設定する。レジスタ15は位相シフタ5に0.45〜0.55tCKの遅延量を転送する。テスト入力T1より印加されたテスト用信号のDQSは位相シフタ5で遅延量が付加され検出器70に入力される。一方、テスト入力T1より印加されたテスト用信号のDQSは遅延量0の位相シフタ6を通り検出器70に入力される。
【0030】
図10はDQS,0.55tCK遅延DQS,0.45tCK遅延DQSとの関係を示した図であり、DQSのDutyが45〜55%であればDQSがHに立ち上がったとき、0.55tCK遅延DQSがHで、0.45tCK遅延DQSがLとなる。DQSの遅延量を順次変更しながら検出器70から出力される信号を比較器90で期待値と比較することによりDQSのDutyを測定することができる。
【0031】
次に、プリアンブル期間、ポストアンブル期間の測定時の動作について説明する。メモリコントローラ40をテストモードに設定し、双方向バッファ22をループバックテストモードに設定して入出力回路を同時に活性化する。テスト入力T1より印加されたテスト用の信号は、双方向バッファ22でループバックされプリアンブル検出回路100に入力される。このテストモードはライトモードであり、DQSはライトプリアンブル、トグル、ライトポストアンブルから構成され、ライトモード時のプリアンブル期間、ポストアンブル期間はそれぞれ約0.5サイクルである。
【0032】
図11は位相シフタ5の出力を示した図である。上記DQSのDutyの測定と同じ方法で、延量を順次変更しながらプリアンブル期間、ポストアンブル期間のH,L変化時期を検出することによりプリアンブル期間、ポストアンブル期間を測定することができる。
【0033】
ここで、通常使用時のDQS出力は、プリアンブル期間以前、およびポストアンブル期間後、図1のOEN信号をHにすることによりHiZ(ハイインピーダンス)に設定されるが、テストモード時はこの期間もテスト入力T1からHデータを出力する。これにより、検出回路70の判定誤動作を確実に防止することができる。
【0034】
また、セレクタ401、402を切り替えることでクロックのDutyを測定したり、DQSとクロックとの位相差を同様の方法で測定することも可能である。
【図面の簡単な説明】
【0035】
【図1】本発明の半導体装置を示した図である。
【図2】本発明の半導体装置とメモリとの関係を示した図である。
【図3】本発明の実施の形態1のライトモードにおけるテスト回路を示した図である。
【図4】本発明の実施の形態1のライトモードにおけるテスト用信号の関係を示した図である。
【図5】本発明の実施の形態1のリードモードにおけるテスト回路を示した図である。
【図6】本発明の実施の形態1のライトモードにおけるテスト用信号の関係を示した図である。
【図7】本発明の実施の形態2におけるテスト回路を示した図である。
【図8】本発明の実施の形態2におけるプリアンブル出力の関係を示した図である。
【図9】本発明の実施の形態2におけるプリアンブル出力の関係を示した図である。
【図10】本発明の実施の形態2におけるテスト用信号の関係を示した図である。
【図11】本発明の実施の形態2における位相シフタ5の出力を示した図である。
【符号の説明】
【0036】
1〜6 位相シフタ、10 伝送回路、11〜16 レジスタ、21,22 双方向バッファ、30 FIFO、40 メモリコントローラ、50 半導体装置、60 外部メモリ、61,62 端子、70 検出器、80 判定回路、90 比較器、100 プリアンブル検出回路、200 DLL、300 演算回路、401,402 セレクタ。
【技術分野】
【0001】
本発明は、外部メモリとの間でデータの送受信を行うインターフェース回路が正常に動作するか判別するテスト回路を内蔵した半導体装置に関し、特に高速にデータの送受信を行うため、クロック信号の立ち上がりおよび立ち下がりに同期してデータを転送するDDRif(ダブル・データ・レート・インターフェース回路)を備えた半導体装置に関するものである。
【背景技術】
【0002】
従来技術におけるDDRifは、位相シフト量を決定するDLL(ディレイ・ロックド・ループ回路)、ライト時にDQ(データ信号)を90°シフトさせる位相シフタ、リード時にDQS(データ・ストローブ信号)を90°シフトさせる位相シフタ、リード時のプリアンブル期間を検出する回路、リード時のデータをクロックに再同期化させるFIFOと、データの入出力およびクロック/コマンドの出力を行うことができるバッファにより構成していた(非特許文献1参照)。
【0003】
上記構成のDDRifが正常に動作するかは各種ACタイミングを外部テスタを用いて判別していた。例えば、評価時に高精度なテスタを用いて特性ばらつきを判定し、出荷時のテストは代替の簡易なテスタを用いて特性評価を行っていた。
【0004】
また、外部からの指示データにより入力クロックをずらして取り込み、取り込んだデータの比較結果から遅延量を測定し、入力セットアップ/ホールド時間の測定を行う回路を備えた半導体装置が下記特許文献1に示されている。
【0005】
【特許文献1】特開平11−72540号公報
【非特許文献1】ITC 2004 Digest of Technical Paper,「AC IO Loopback Design for High Speed uProcessor IO Test」,B.Provost,et al.
【発明の開示】
【発明が解決しようとする課題】
【0006】
しかしながら、高速化されたDDR-SDRAMにおいてはより高精度な動作が要求されており、外部テスタを用いてDDR-SDRAMに対して規定される各種ACタイミングを保証するには、非常に高速動作を行える高精度なテスタが必要であり、テストコストがかかるという問題があった。また、内部の動作精度を外部テスタを用いて判定する場合、外部テスタに引き出す際の経路の影響を受けて、高精度なテストができないという問題があった。
【0007】
また、特許文献1に示される構成においては、所望の位相差を生成する際に、ロックした状態のDLLコードを外部に読み出し、そこから単位ビットあたりの遅延量を外部で計算を行い、その結果をもとに所望の位相差分ずらしたコードを再度レジスタに設定する必要がある。DLLはチップ上の条件が変動しても安定したタイミングを生成する回路だが、レジスタ設定を行った場合にその値を変更することはできず、テスト中の条件変動に追随することができないため、所望のテストポイントとは離れた位相量になる可能性があるという問題があった。
【0008】
そこで本発明における半導体装置はかかる問題を解決するためになされたものであり、テスト中に所望の位相に対して追随できるテスト回路を内蔵し、安価にDDRifが正常に動作するかを判定することを目的としている。
【課題を解決するための手段】
【0009】
本発明の一実施形態における半導体装置は、位相シフト量を決定するDLL回路と、前記DLL回路に接続され、テストモード時にテストモード信号に基づき前記決定した位相シフト量を所定位相ずらす演算回路と、前記演算回路に接続され、前記所定位相ずれた前記位相シフト量を設定する第1〜第4のレジスタと、前記第1〜第4のレジスタおよび前記外部メモリと信号の送受信を行う第1の端子および第2の端子に接続され、前記第1〜4のレジスタに設定した前記位相シフト量に基づき位相をシフトして信号の送受信を行う伝送回路とを備え、前記伝送回路は、前記第1のレジスタに接続され、前記第1の端子に出力する第1の信号を前記第1のレジスタに設定した前記位相シフト量に基づき位相シフトする第1の位相シフタと、前記第1の位相シフタおよび前記第1の端子に接続され、前記外部メモリとの間で前記第1の信号と前記外部メモリからの第2の信号の入出力を行い、または前記テストモード時に前記第1の信号をループバックする第1の双方向バッファと、前記第1の双方向バッファに接続され、前記第1の信号または前記第2の信号を前記第2のレジスタに設定した前記位相シフト量に基づき位相シフトする第2の位相シフタと、前記第2の端子に出力する第3の信号を前記第3のレジスタに設定した前記位相シフト量に基づき位相シフトする第3の位相シフタと、前記第3の位相シフタおよび前記第2の端子に接続され、前記外部メモリとの間で前記第3の信号と前記外部メモリからの第4の信号の入出力を行い、または前記テストモード時に前記第3の信号をループバックする第2の双方向バッファと、前記第2の双方向バッファおよび第4のレジスタに接続され、前記第3の信号または前記第4の信号を前記第4のレジスタに設定した前記位相シフト量に基づき位相シフトする第4の位相シフタと、前記第2,第4の位相シフタに接続され、前記第1または第3の信号を、それぞれ前記第2または第4の信号に応じて取り出すFIFOとを備える。
【発明の効果】
【0010】
本発明の一実施形態によれば、DLLの後段に演算回路を備え、位相シフト量がパス側からフェイル側へ順次変更するようにレジスタ設定をすることで、高精度で高速動作を行える外部テスタを用いずに、セットアップ/ホールド時間を測定することができる。また、テスト回路を内蔵することにより、テストコストの削減が可能である。
【発明を実施するための最良の形態】
【0011】
[実施の形態1]
図1は、図2における外部メモリ60との間でDDR方式を用いて信号の送受信を行う本発明の半導体装置50におけるDDRif(図2のメモリコントローラ40に含まれる)の構成を示した図であり、360°の位相シフト量を決定するDLL200(ディレイ・ロックド・ループ回路)、通常動作時は0/90/180/270°、テストモード時にテストモード信号に基づき位相シフト量を自由に所定位相ずらす演算回路300、所定位相ずれた位相シフト量を設定するレジスタ11〜16(第1〜6のレジスタ)、レジスタ11〜14および外部メモリ60と信号の送受信を行う端子61,62(第1,2の端子)に接続され、レジスタ11〜14に設定した位相シフト量に基づき位相シフトして信号の送受信を行う伝送回路10、レジスタ15,16に接続され、リード時のプリアンブル期間を検出するプリアンブル検出回路100より構成される。
【0012】
伝送回路10は、端子61に出力するMDQ(データ信号、第1の信号)をレジスタ11に設定した位相シフト量に基づき位相シフトする位相シフタ1(第1の位相シフタ)、外部メモリ60との間でMDQとDQ(第2の信号)の入出力を行い、テストモード時にMDQをループバックする双方向バッファ21(第1の双方向バッファ)、MDQ,DQをレジスタ12に設定した位相シフト量に基づき位相シフトする位相シフタ2(第2の位相シフタ)、端子62に出力するMDQS(データ・ストローブ信号、第3の信号)をレジスタ13に設定した位相シフト量に基づき位相シフトする位相シフタ3(第3の位相シフタ)、外部メモリ60との間でMDQSとDQS(第4の信号)の入出力を行い、テストモード時にMDQSをループバックする双方向バッファ22(第2の双方向バッファ)、MDQS,DQSをレジスタ14に設定した位相シフト量に基づき位相シフトする位相シフタ4(第4の位相シフタ)、MDQ,DQをそれぞれMDQS,DQSに応じて取り出すFIFO30より構成される。
【0013】
図2はメモリコントローラ40を備えた半導体装置50と外部メモリ60との間でデータの送受信を行う構成を示した図である。半導体装置50は、メモリコントローラ40のP端子を介して外部メモリ60のDQS端子とMDQS、DQSの送受信を行う。同様にH端子を介して外部メモリ60のDQ端子とMDQ、DQの送受信を行う。また、Y端子を介して外部メモリ60のCK端子にクロックを送信する。
【0014】
まず、図1,2を参照して通常動作時のデータ読み出し時(リードモード)における動作を説明する。例えばDDR-SDRAMで構成される外部メモリ60は、メモリコントローラ40からリードモードの指示を受けるとクロック信号に同期して読み出しデータDQをデータストローブ信号DQSとともにメモリコントローラ40へ転送する。このDQSは読み出しデータを転送するタイミングを知らせるための双方向のストローブ信号である。DQSは3値信号であり、プリアンブル、トグル、ポストアンブルから構成される。DQSは、データ非転送時においてはハイインピーダンス状態(HiZ)に設定され、データ転送時においては、データ転送の約1クロックサイクル前にDQSがLレベルに設定される。このLレベルに設定される期間がプリアンブル期間である。プリアンブル期間に続いて、DQSが読み出しデータに同期してトグルし、最後のデータが転送されるとハイインピーダンス状態に設定される。この最後のデータが転送されるサイクルのLレベルの期間が、ポストアンブル期間である。プリアンブル検出回路100においてプリアンブル期間が検出されるとFIFO30のイネーブル信号(EN)をバースト長期間活性状態のHレベルに設定する。FIFO30はクロック信号に同期して外部メモリ60から転送されたバースト長データの取り込みを行うことができる。
【0015】
このように外部メモリ60から転送されたデータをFIFO30で取り込むとき、与えられたDQSを読み出しデータのウィンドウの中央の位置までシフトし、DQS信号に従って読み出しデータの取り込みを行う。よって、外部メモリ60より印加された信号のうちDQSは入力回路が活性化した双方向バッファ22を介して位相シフタ4で90°位相をシフトする。また、外部メモリ60より印加された信号のうちDQは入力回路が活性化した双方向バッファ21を介して位相シフトが0°になるように位相シフタ3で位相を変化し、FIFO30で外部メモリ60から転送されたデータを取り込む。ここで、位相シフタ2,4の位相シフト量はDLL200によって決定し、決定した位相量をレジスタ12,14に設定されて位相シフト量が調整される。
【0016】
次に、図1を参照して通常時のデータ書き込み時(ライトモード)の動作を説明する。外部メモリ60に書き込むとき、メモリコントローラ40はMDQSをMDQの中央に合わせて出力するために、予め90°位相シフトしなければならない。ここで、MDQは書き込みデータであり、MDQSは書き込みデータを転送するタイミングを知らせるための双方向のストローブ信号である。印加された書き込み信号のうちMDQは位相シフタ1で90°位相をシフトし、MDQSは位相シフトが0°になるように位相シフタ3で位相を変化してMDQSをMDQの中央に合わせる。また、MDQSは上記DQSと同様に3値信号である。位相シフトされたMDQ、MDQSそれぞれは出力回路が活性化された双方向バッファ21,22を介して外部メモリ60に出力される。ここで、位相シフタ1,3の位相シフト量はDLL200によって決定し、決定した位相量がレジスタ11,13に設定されて位相シフト量が調整される。
【0017】
図3は本発明の実施の形態1におけるセットアップ/ホールド時間を測定するテスト回路を内蔵したDDRifを示した図であり、図4は図3のA点、B点におけるテスト信号であるMDQSとMDQの関係を示した図である。
【0018】
図3,4を参照してライトモード時におけるライトパスのセットアップ/ホールド時間を測定するときの動作について説明する。ここで、セットアップ時間とは、取り込みタイミングの前に入力データが確定していなければならない時間であり、ホールド時間とは、取り込みタイミングの後にその入力データを維持していなければならない時間である。
【0019】
まず、メモリコントローラ40をライトテストモードに設定し、双方向バッファ21,22をループバックテストモードに設定して入出力回路を同時に活性化する。テスト入力T1より印加されたテスト用の信号のうちMDQは位相シフタ1で90°位相シフトし、双方向バッファ21の出力回路に送られる。同様にテスト入力T1より印加されたテスト用の信号のうちMDQSは位相シフタ3で0°位相シフトし、双方向バッファ22の出力回路に送られる。このときのMDQとMDQSとにおける関係を示した信号波形図が図4のA点における図であり、90°位相がずれた状態になっている。すなわちライトパスのテスト時におけるA点のMDQとMDQSとの関係は通常動作時と同じ関係になる。
【0020】
次に、双方向バッファ21の出力回路に送られたMDQは、ループバックして双方向バッファ21の入力回路を通り、位相シフタ2で0°位相シフトしてFIFO30に入力する。同様に双方向バッファ22の出力回路に送られたMDQSは、ループバックして双方向バッファ22の入力回路を通り、位相シフタ4で0°位相シフトしてFIFO30に入力する。ここで、位相シフタ4は、通常動作時はDQSに対し90°位相をシフトするが、ライトテストモード時は位相シフトが0°になるようにレジスタ14で設定される。この結果、FIFO30に入力されたMDQSとMDQは90°の位相差を保ったまま印加される。このときのMDQとMDQSとにおける関係を示した信号波形図が図4のB点における図である。
【0021】
ライトテストモードにおいて、演算回路300は、テストモード信号に応じてDLL200で決定した位相シフタ1の90°位相シフト量を所定位相ずらすための設定値を順次レジスタ11に設定する。これにより、FIFO30に入力するMDQSとMDQは位相差が変化していくので、判定回路80によってFIFO30の出力を期待値と比較することによりパス/フェイル判定し、そのときのレジスタ値を読み出すことにより、ライトパスのセットアップ/ホールド時間を測定することができる。
【0022】
次に、図5,6を参照してリードモード時におけるリードパスのセットアップ/ホールド時間を測定するときの動作について説明する。まず、メモリコントローラ40をリードテストモードに設定し、双方向バッファ21,22をループバックテストモードに設定して入出力回路を同時に活性化する。テスト入力T1より印加されたテスト信号のうちMDQは位相シフタ1で0°位相シフトし、双方向バッファ21の出力回路に送られる。同様にテスト入力T1より印加されたテスト用の信号のうちMDQSは位相シフタ3で0°位相シフトし、双方向バッファ22の出力回路に送られる。このときのMDQとMDQSとの関係を示した信号波形図が図5のA点における図であり、MDQはMDQSに対し同位相になっている。ここで、位相シフタ1は、通常動作時はMDQに対し90°位相をシフトするが、リードテストモード時は位相シフトが0°になるようにレジスタ11に設定される。
【0023】
次に、双方向バッファ21の出力回路に送られたMDQは、ループバックして双方向バッファ21の入力回路を通り、位相シフタ2で0°位相シフトしてFIFO30に入力される。同様に双方向バッファ22の出力回路に送られたMDQSは、ループバックして双方向バッファ22の入力回路を通り、位相シフタ4で90°位相シフトしてFIFO30に入力する。この結果、FIFO30に入力されたMDQSとMDQは90°の位相がずれた状態で印加される。このときのMDQとMDQSとの関係を示した波形図が図6のB点における図である。
【0024】
リードテストモードにおいて、演算回路300は、テストモード信号に応じてDLL200で決定した位相シフタ4の90°位相シフト量を所定位相ずらすための設定値を順次レジスタ14に設定する。これにより、FIFO30に入力するMDQSとMDQは位相差が変化していくので、判定回路80によってFIFO30の出力を期待値と比較することによりパス/フェイル判定し、そのときのレジスタ値を読み出すことにより、リードパスのセットアップ/ホールド時間を測定することができる。
【0025】
[実施の形態2]
図7は本発明の実施の形態2におけるDuty、プリアンブル期間、ポストアンブル期間を測定するテスト回路を内蔵したDDRifを示した図である。レジスタ16に設定した位相シフト量に基づき位相シフトしたDQSと、レジスタ15に設定した位相シフト量に基づき位相シフトしたDQSとを比較することによりDQSのプリアンブル期間を検出するプリアンブル検出回路100、プリアンブル検出回路100の出力を期待値と比較する比較器90を備える。
【0026】
通常動作時のプリアンブル検出回路100によるプリアンブル期間の検出動作について説明する。プリアンブルとはDDR-SDRAMが正しいデータに同期して出力するDQSの立ち上がりエッジの1サイクル前からL出力を行う動作であり、リードモード時の規格はDQSのL期間が0.9〜1.1サイクルと定められている。なお、1.1サイクル以前の状態については特に規定はない。DLL200はレジスタ15の遅延コードを通常動作時の0.9tCKに設定して、プリアンブル検出回路100によってDQSとDQSを0.9tCK遅延させた遅延DQSの比較を行うことによりプリアンブル期間の検出を行い、プリアンブル期間が規格を満たしている場合、FIFO30がDDR-SDRAMから送られるデータ取り込みを開始する。ここで、通常動作時、演算回路300は所定の遅延量を付加しない。
【0027】
図7は上記のようにプリアンブルを検出する回路であり、レジスタ15は位相シフタ5に0.9tCKの遅延量を付加し、外部メモリ60から転送されたDQSを位相シフタ5で0.9tCK遅延する。位相シフタ6を通るDQSは遅延量が0であり、位相シフタ5,6から出力されるそれぞれの信号を検出器70に入力する。図8,9はDQS,遅延DQS,プリアンブル出力との関係を示した図であり、検出器70は、DQSと遅延DQSの比較を行うことによりプリアンブル期間の検出を行い、検出結果を示す検出信号をプリアンブル出力として出力する。
【0028】
図7〜9を用いてDQSを0.9tCKの遅延量を付加した遅延DQSと比較するときの動作についてさらに詳しく説明する。図8に示すように、DQSのプリアンブル期間が規格を満たす0.9サイクル以上であれば、DQSがプリアンブル期間経過後にHレベルに立ち上がったとき、遅延DQSはLレベルであり、プリアンブル出力がHからLに変化する。これに伴いFIFO30はリセットされる。その後DQSがHレベルに立ち上がったとき、遅延DQSはHレベルであり、プリアンブル出力がLからHに変化する。これに伴いFIFO30はDDR-SDRAMから送られるデータ取り込みを開始する。一方、DQSに一時的にノイズがのってHになり、その後Lになった場合、FIFO30はリセットされるが、DQSが所定時間内にHにならなければプリアンブル出力はHにならず、FIFO30はDDR-SDRAMから送られるデータは取り込まない。また、図9に示すように、プリアンブル期間が規格値より短い場合は、DQSがHレベルに立ち上がったときに遅延DQSはLになっていないため、FIFO30はリセットされず、FIFO30はDDR-SDRAMから送られるデータを取り込まない。
【0029】
次に、図1,7を参照してテストモード時の動作について説明する。メモリコントローラ40をテストモードに設定し、双方向バッファ22をループバックテストモードに設定して入出力回路を同時に活性化する。テスト入力T1より印加されたテスト用の信号は、双方向バッファ22でループバックされプリアンブル検出回路100に入力される。DQSのDuty測定時は、演算回路300においてDLL200で決定した遅延量に所定の遅延量(例えば0.45〜0.55tCKの遅延量)を付加しレジスタ15に設定する。レジスタ15は位相シフタ5に0.45〜0.55tCKの遅延量を転送する。テスト入力T1より印加されたテスト用信号のDQSは位相シフタ5で遅延量が付加され検出器70に入力される。一方、テスト入力T1より印加されたテスト用信号のDQSは遅延量0の位相シフタ6を通り検出器70に入力される。
【0030】
図10はDQS,0.55tCK遅延DQS,0.45tCK遅延DQSとの関係を示した図であり、DQSのDutyが45〜55%であればDQSがHに立ち上がったとき、0.55tCK遅延DQSがHで、0.45tCK遅延DQSがLとなる。DQSの遅延量を順次変更しながら検出器70から出力される信号を比較器90で期待値と比較することによりDQSのDutyを測定することができる。
【0031】
次に、プリアンブル期間、ポストアンブル期間の測定時の動作について説明する。メモリコントローラ40をテストモードに設定し、双方向バッファ22をループバックテストモードに設定して入出力回路を同時に活性化する。テスト入力T1より印加されたテスト用の信号は、双方向バッファ22でループバックされプリアンブル検出回路100に入力される。このテストモードはライトモードであり、DQSはライトプリアンブル、トグル、ライトポストアンブルから構成され、ライトモード時のプリアンブル期間、ポストアンブル期間はそれぞれ約0.5サイクルである。
【0032】
図11は位相シフタ5の出力を示した図である。上記DQSのDutyの測定と同じ方法で、延量を順次変更しながらプリアンブル期間、ポストアンブル期間のH,L変化時期を検出することによりプリアンブル期間、ポストアンブル期間を測定することができる。
【0033】
ここで、通常使用時のDQS出力は、プリアンブル期間以前、およびポストアンブル期間後、図1のOEN信号をHにすることによりHiZ(ハイインピーダンス)に設定されるが、テストモード時はこの期間もテスト入力T1からHデータを出力する。これにより、検出回路70の判定誤動作を確実に防止することができる。
【0034】
また、セレクタ401、402を切り替えることでクロックのDutyを測定したり、DQSとクロックとの位相差を同様の方法で測定することも可能である。
【図面の簡単な説明】
【0035】
【図1】本発明の半導体装置を示した図である。
【図2】本発明の半導体装置とメモリとの関係を示した図である。
【図3】本発明の実施の形態1のライトモードにおけるテスト回路を示した図である。
【図4】本発明の実施の形態1のライトモードにおけるテスト用信号の関係を示した図である。
【図5】本発明の実施の形態1のリードモードにおけるテスト回路を示した図である。
【図6】本発明の実施の形態1のライトモードにおけるテスト用信号の関係を示した図である。
【図7】本発明の実施の形態2におけるテスト回路を示した図である。
【図8】本発明の実施の形態2におけるプリアンブル出力の関係を示した図である。
【図9】本発明の実施の形態2におけるプリアンブル出力の関係を示した図である。
【図10】本発明の実施の形態2におけるテスト用信号の関係を示した図である。
【図11】本発明の実施の形態2における位相シフタ5の出力を示した図である。
【符号の説明】
【0036】
1〜6 位相シフタ、10 伝送回路、11〜16 レジスタ、21,22 双方向バッファ、30 FIFO、40 メモリコントローラ、50 半導体装置、60 外部メモリ、61,62 端子、70 検出器、80 判定回路、90 比較器、100 プリアンブル検出回路、200 DLL、300 演算回路、401,402 セレクタ。
【特許請求の範囲】
【請求項1】
外部メモリとの間でDDR方式を用いて信号の送受信を行う半導体装置であって、
位相シフト量を決定するDLL回路と、
前記DLL回路に接続され、テストモード時にテストモード信号に基づき前記決定した位相シフト量を所定位相ずらす演算回路と、
前記演算回路に接続され、前記所定位相ずれた前記位相シフト量を設定する第1〜第4のレジスタと、
前記第1〜第4のレジスタおよび前記外部メモリと信号の送受信を行う第1の端子および第2の端子に接続され、前記第1〜4のレジスタに設定した前記位相シフト量に基づき位相をシフトして信号の送受信を行う伝送回路と、を備え、
前記伝送回路は、
前記第1のレジスタに接続され、前記第1の端子に出力する第1の信号を前記第1のレジスタに設定した前記位相シフト量に基づき位相シフトする第1の位相シフタと、
前記第1の位相シフタおよび前記第1の端子に接続され、前記外部メモリとの間で前記第1の信号と前記外部メモリからの第2の信号の入出力を行い、または前記テストモード時に前記第1の信号をループバックする第1の双方向バッファと、
前記第1の双方向バッファに接続され、前記第1の信号または前記第2の信号を前記第2のレジスタに設定した前記位相シフト量に基づき位相シフトする第2の位相シフタと、
前記第2の端子に出力する第3の信号を前記第3のレジスタに設定した前記位相シフト量に基づき位相シフトする第3の位相シフタと、
前記第3の位相シフタおよび前記第2の端子に接続され、前記外部メモリとの間で前記第3の信号と前記外部メモリからの第4の信号の入出力を行い、または前記テストモード時に前記第3の信号をループバックする第2の双方向バッファと、
前記第2の双方向バッファおよび第4のレジスタに接続され、前記第3の信号または前記第4の信号を前記第4のレジスタに設定した前記位相シフト量に基づき位相シフトする第4の位相シフタと、
前記第2,第4の位相シフタに接続され、前記第1または第3の信号を、それぞれ前記第2または第4の信号に応じて取り出すFIFOと、を備える半導体装置。
【請求項2】
前記半導体装置は、さらに前記FIFOの出力と期待値とを比較する判定回路を備えることを特徴とする請求項1記載の半導体装置。
【請求項3】
前記演算回路は、テストモード時にテストモード信号に応じて前記決定した位相シフト量を所定位相ずらす請求項2記載の半導体装置。
【請求項4】
外部メモリとの間でDDR方式を用いて信号の送受信を行う半導体装置であって、
位相遅延量を決定するDLL回路と、
前記DLL回路に接続され、前記決定した位相シフト量を所定位相ずらす演算回路と、
前記演算回路に接続され、前記所定位相ずれた前記位相シフト量を設定する第5のレジスタと、
前記第5のレジスタに接続され、入力信号と、前記入力信号を前記第5のレジスタに設定した位相シフト量に基づき位相シフトした信号とを比較することにより前記入力信号のプリアンブル期間を検出するプリアンブル検出回路と、
前記プリアンブル検出回路の出力を期待値と比較する比較器と、を備える半導体装置。
【請求項5】
前記演算回路と前記プリアンブル検出回路とに接続され、前記所定位相ずれた前記位相シフト量を設定する第6のレジスタをさらに備え、
前記プリアンブル検出回路は、前記第6のレジスタに設定した位相シフト量に基づき位相シフトした入力信号と、前記入力信号を前記第5のレジスタに設定した位相シフト量に基づき位相シフトした信号とを比較することにより前記入力信号のプリアンブル期間を検出することを特徴とする請求項4記載の半導体装置。
【請求項6】
前記演算回路は、テストモード時にテストモード信号に基づき位相シフト量を所定位相ずらすことを特徴とする請求項4または請求項5記載の半導体装置。
【請求項1】
外部メモリとの間でDDR方式を用いて信号の送受信を行う半導体装置であって、
位相シフト量を決定するDLL回路と、
前記DLL回路に接続され、テストモード時にテストモード信号に基づき前記決定した位相シフト量を所定位相ずらす演算回路と、
前記演算回路に接続され、前記所定位相ずれた前記位相シフト量を設定する第1〜第4のレジスタと、
前記第1〜第4のレジスタおよび前記外部メモリと信号の送受信を行う第1の端子および第2の端子に接続され、前記第1〜4のレジスタに設定した前記位相シフト量に基づき位相をシフトして信号の送受信を行う伝送回路と、を備え、
前記伝送回路は、
前記第1のレジスタに接続され、前記第1の端子に出力する第1の信号を前記第1のレジスタに設定した前記位相シフト量に基づき位相シフトする第1の位相シフタと、
前記第1の位相シフタおよび前記第1の端子に接続され、前記外部メモリとの間で前記第1の信号と前記外部メモリからの第2の信号の入出力を行い、または前記テストモード時に前記第1の信号をループバックする第1の双方向バッファと、
前記第1の双方向バッファに接続され、前記第1の信号または前記第2の信号を前記第2のレジスタに設定した前記位相シフト量に基づき位相シフトする第2の位相シフタと、
前記第2の端子に出力する第3の信号を前記第3のレジスタに設定した前記位相シフト量に基づき位相シフトする第3の位相シフタと、
前記第3の位相シフタおよび前記第2の端子に接続され、前記外部メモリとの間で前記第3の信号と前記外部メモリからの第4の信号の入出力を行い、または前記テストモード時に前記第3の信号をループバックする第2の双方向バッファと、
前記第2の双方向バッファおよび第4のレジスタに接続され、前記第3の信号または前記第4の信号を前記第4のレジスタに設定した前記位相シフト量に基づき位相シフトする第4の位相シフタと、
前記第2,第4の位相シフタに接続され、前記第1または第3の信号を、それぞれ前記第2または第4の信号に応じて取り出すFIFOと、を備える半導体装置。
【請求項2】
前記半導体装置は、さらに前記FIFOの出力と期待値とを比較する判定回路を備えることを特徴とする請求項1記載の半導体装置。
【請求項3】
前記演算回路は、テストモード時にテストモード信号に応じて前記決定した位相シフト量を所定位相ずらす請求項2記載の半導体装置。
【請求項4】
外部メモリとの間でDDR方式を用いて信号の送受信を行う半導体装置であって、
位相遅延量を決定するDLL回路と、
前記DLL回路に接続され、前記決定した位相シフト量を所定位相ずらす演算回路と、
前記演算回路に接続され、前記所定位相ずれた前記位相シフト量を設定する第5のレジスタと、
前記第5のレジスタに接続され、入力信号と、前記入力信号を前記第5のレジスタに設定した位相シフト量に基づき位相シフトした信号とを比較することにより前記入力信号のプリアンブル期間を検出するプリアンブル検出回路と、
前記プリアンブル検出回路の出力を期待値と比較する比較器と、を備える半導体装置。
【請求項5】
前記演算回路と前記プリアンブル検出回路とに接続され、前記所定位相ずれた前記位相シフト量を設定する第6のレジスタをさらに備え、
前記プリアンブル検出回路は、前記第6のレジスタに設定した位相シフト量に基づき位相シフトした入力信号と、前記入力信号を前記第5のレジスタに設定した位相シフト量に基づき位相シフトした信号とを比較することにより前記入力信号のプリアンブル期間を検出することを特徴とする請求項4記載の半導体装置。
【請求項6】
前記演算回路は、テストモード時にテストモード信号に基づき位相シフト量を所定位相ずらすことを特徴とする請求項4または請求項5記載の半導体装置。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2008−186517(P2008−186517A)
【公開日】平成20年8月14日(2008.8.14)
【国際特許分類】
【出願番号】特願2007−19295(P2007−19295)
【出願日】平成19年1月30日(2007.1.30)
【出願人】(503121103)株式会社ルネサステクノロジ (4,790)
【Fターム(参考)】
【公開日】平成20年8月14日(2008.8.14)
【国際特許分類】
【出願日】平成19年1月30日(2007.1.30)
【出願人】(503121103)株式会社ルネサステクノロジ (4,790)
【Fターム(参考)】
[ Back to top ]