JP2010206747A - 半導体装置 - Google Patents

半導体装置 Download PDF

Info

Publication number
JP2010206747A
JP2010206747A JP2009052946A JP2009052946A JP2010206747A JP 2010206747 A JP2010206747 A JP 2010206747A JP 2009052946 A JP2009052946 A JP 2009052946A JP 2009052946 A JP2009052946 A JP 2009052946A JP 2010206747 A JP2010206747 A JP 2010206747A
Authority
JP
Japan
Prior art keywords
signal
circuit
phase
delay element
data 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
Application number
JP2009052946A
Other languages
English (en)
Inventor
Yasushi Shizuki
康 志津木
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2009052946A priority Critical patent/JP2010206747A/ja
Publication of JP2010206747A publication Critical patent/JP2010206747A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Pulse Circuits (AREA)
  • Logic Circuits (AREA)
  • Dram (AREA)

Abstract

【課題】装置の使用中にタイミングマージンを最適化可能な半導体装置を提供する。
【解決手段】入力クロック信号の位相の遅延角度と遅延素子の段数との関係を示す遅延素子段数信号を出力するマスタDLL回路101と、遅延素子段数信号に基づいて、位相制御信号を生成する位相制御回路102と、位相制御信号に基づいて、クロック信号の位相を所定角度分シフトさせたクロック信号を出力するスレーブDLL回路103と、スレーブDLL回路から出力されたクロック信号に同期したデータ信号を生成するデータ信号生成回路111と、遅延素子段数信号、又はマスタDLL回路のロックアップ時間を示すロックアップ時間信号に基づいて、データ信号のスルーレートを制御するための制御信号を生成するスルーレート制御回路121と、スルーレート制御信号に基づいて、データ信号のスルーレートを制御するデータ信号出力回路112とを備える。
【選択図】図1

Description

本発明は、半導体装置に関し、例えば、DDR(Double Data Rate)メモリに使用されるものである。
DDRメモリ等のパラレルインタフェースI/O(Input/Output)では、出力データ信号のスルーレート(Slew Rate)の大きさや、同時スイッチングノイズの大きさや、同時スイッチングノイズに伴う電磁放射(EMI:Electro Magnetic Interference)の大きさが、プロセス条件に依存するというプロセス依存性が問題となる。更には、LSIの微細化に伴い、各製品がEOL(End of Life)に至るまでの劣化量(EOL劣化量)が大きくなるため、スルーレート、同時スイッチングノイズ、電磁輻射の大きさの経時変化が大きくなる点も問題となる。
特許文献1には、位相が互いに反転した第1及び第2クロック信号を生成する手段と、第1及び第2クロック信号の信号幅を縮小する手段と、第1及び第2クロック信号それぞれに対し、時間的に遅延させた遅延クロック信号を生成する手段とを備え、遅延クロック信号を用いて回路を動作させる電磁雑音(EMI)抑制回路が記載されている。
この電磁雑音抑制回路によれば、LSI設計時にクロックの位相をずらすことで、タイミングマージンを確保することができる。しかしながら、この電磁雑音抑制回路では、LSIの使用中に都度タイミングマージンを最適化することはできない。
特開2001−84053号公報
本発明は、装置の使用中にタイミングマージンを最適化可能な半導体装置を提供することを課題とする。
本発明の一の態様は例えば、複数の遅延素子を有し、クロック信号が入力され、前記クロック信号の位相の遅延角度と前記遅延素子の段数との関係を示す遅延素子段数信号を出力するマスタDLL(Delay Locked Loop)回路と、前記遅延素子段数信号に基づいて、前記クロック信号の位相を所定角度分シフトさせるのに要する遅延素子段数を示す位相制御信号を生成し、前記位相制御信号を出力する位相制御回路と、複数の遅延素子を有し、前記クロック信号と前記位相制御信号とが入力され、前記位相制御信号に基づいて、前記クロック信号の位相を前記所定角度分シフトさせ、前記所定角度分位相をシフトさせた前記クロック信号を出力するスレーブDLL回路と、前記スレーブDLL回路から出力された前記クロック信号に同期したデータ信号を生成するデータ信号生成回路と、前記遅延素子段数信号、又は前記マスタDLL回路のロックアップ時間を示すロックアップ時間信号に基づいて、前記データ信号のスルーレートを制御するためのスルーレート制御信号を生成し、前記スルーレート制御信号を出力するスルーレート制御回路と、前記データ信号と前記スルーレート制御信号とが入力され、前記スルーレート制御信号に基づいて、前記データ信号の前記スルーレートを制御し、前記スルーレートが制御された前記データ信号を出力するデータ信号出力回路と、を備えることを特徴とする半導体装置である。
本発明の別の態様は例えば、複数の遅延素子を有し、クロック信号が入力され、前記クロック信号の位相の遅延角度と前記遅延素子の段数との関係を示す遅延素子段数信号を出力するマスタDLL(Delay Locked Loop)回路と、前記遅延素子段数信号に基づいて、前記クロック信号の位相を第1及び第2の所定角度分シフトさせるのに要する遅延素子段数を示す第1及び第2の位相制御信号を生成し、前記第1及び第2の位相制御信号を出力する位相制御回路と、複数の遅延素子を有し、前記クロック信号と前記第1の位相制御信号とが入力され、前記第1の位相制御信号に基づいて、前記クロック信号の位相を前記第1の所定角度分シフトさせ、前記第1の所定角度分位相をシフトさせた前記クロック信号を出力する第1のスレーブDLL回路と、複数の遅延素子を有し、前記クロック信号と前記第2の位相制御信号とが入力され、前記第2の位相制御信号に基づいて、前記クロック信号の位相を前記第2の所定角度分シフトさせ、前記第2の所定角度分位相をシフトさせた前記クロック信号を出力する第2のスレーブDLL回路と、前記第1のスレーブDLL回路から出力された前記クロック信号に同期した第1のデータ信号を生成する第1のデータ信号生成回路と、前記第2のスレーブDLL回路から出力された前記クロック信号に同期した第2のデータ信号を生成する第2のデータ信号生成回路とを備え、前記位相制御回路は、前記第1の所定角度と前記第2の所定角度とを異なる値に設定することを特徴とする半導体装置である。
本発明によれば、装置の使用中にタイミングマージンを最適化可能な半導体装置を提供することができる。
第1実施形態の半導体装置の構成を示す回路図である。 マスタDLL回路、デコーダ回路、及びスレーブDLL回路の構成を示す回路図である。 第1実施形態の半導体装置内の各種信号の波形を示す波形図である。 データ信号のスルーレートの制御方法を説明するための波形図である。 クロック信号CLKの位相と出力信号CLKOUT1の位相との差分(θ)の時間変化を示したグラフである。 データ信号出力回路内のプレドライバの構成例を示す回路図である。 第2実施形態の半導体装置の構成を示す回路図である。 3A及びS3Bの遅延素子段数の調節方法の第1の例を説明するための波形図である。 3A及びS3Bの遅延素子段数の調節方法の第2の例を説明するための波形図である。 図7の制御回路の動作例を示すフローチャートである。
本発明の実施形態を、図面に基づいて説明する。
(第1実施形態)
図1は、第1実施形態の半導体装置の構成を示す回路図である。本実施形態の半導体装置は、DDR(Double Data Rate)メモリを備えており、図1には、DDRメモリ用の各種の回路ブロックが示されている。
図1の半導体装置は、マスタDLL(Delay Locked Loop)回路101と、本発明の位相制御回路の例であるデコーダ回路102と、スレーブDLL回路103と、データ信号生成回路111と、データ信号出力回路112と、ストローブ信号出力回路113と、スルーレート制御回路121とを備える。
図1では、マスタDLL回路101の後段にデコーダ回路102が接続され、デコーダ回路102の後段にスレーブDLL回路103が接続され、スレーブDLL回路103の後段にデータ信号生成回路111が接続されている。データ信号出力回路112は、データ信号生成回路111の後段に接続され、データ信号生成回路111からの出力信号が入力される。一方、ストローブ信号出力回路113は、クロック信号CLKが入力される。また、スルーレート制御回路121は、マスタDLL回路101からの出力信号が入力され、データ信号出力回路112及びストローブ信号出力回路113に後述の制御信号を出力する。
以下、マスタDLL回路101、デコーダ回路102、及びスレーブDLL回路103の詳細構成について、図2に基づいて説明する。図2は、これらの回路の詳細構成を示す回路図である。
マスタDLL回路101は、複数の遅延素子(Delay Unit)201を有しており、図2には、直列に接続されたm個の遅延素子2011〜201mが示されている。遅延素子は、信号を遅延させるための回路であり、入力信号の遅延信号を出力する。遅延素子は例えば、複数のインバータ同士や複数のバッファ同士を直列に接続することで構成される。遅延素子2011〜201mは、クロック信号CLKが入力され、クロック信号CLKの遅延信号SA1〜SAmを生成し、遅延信号SA1〜SAmのいずれかを、出力信号CLKOUT1として位相比較器211に出力する。
マスタDLL回路101は、クロック信号CLKの位相の遅延角度と遅延素子201の段数との関係を示す遅延素子段数信号S1を、デコーダ回路102に出力する。遅延素子段数信号S1はここでは、クロック信号CLKの位相の遅延角度が360度(即ち1周期分)となる遅延素子段数を保持する。例えば、遅延素子20160から出力された遅延信号SA60の遅延角度が360度の場合には、遅延素子段数信号S1は、段数「60」を保持する。一般に、遅延素子段数信号S1は、遅延信号SAM(Mは1〜mの整数)の遅延角度が360度の場合には、段数「M」を保持する。S1は、本発明の遅延素子段数信号の例である。
遅延素子段数信号S1は、位相比較器211、カウンタ212、及びデコーダ213により生成される。位相比較器211、カウンタ212、及びデコーダ213は、この並び順に接続されている。また、遅延素子2011〜201mと位相比較器211との間には、選択器221が配置されている。
位相比較器211は、クロック信号CLKの位相と出力信号CLKOUT1の位相とを比較し、比較結果(UP/DN)をカウンタ212に出力する。UPは、CLKOUT1の位相の方が小さいときに発せられ、これに応じて、CLKOUT1の位相が増えることになる。また、DNは、CLKOUT1の位相の方が大きいときに発せられ、これに応じて、CLKOUT1の位相が減ることになる。また、比較結果を保持する信号が示す値の大きさは、CLKとCLKOUT1の位相差の大きさに相当し、この値の大きさに応じて、CLKOUT1の位相の増加量又は減少量が制御される。
カウンタ212は、比較結果を保持する信号が示す値をカウントし、カウント結果(CNT)をデコーダ213に出力する。
デコーダ213は、カウント結果に基づいて、遅延信号SA1〜SAmのいずれかを選択器221に選択させる。具体的には、デコーダ213は、上記の増加量又は減少量が得られる遅延信号を特定する信号を選択器221に出力し、そのような遅延信号を選択器221に選択させる。選択された遅延信号は、出力信号CLKOUT1として、位相比較器211に供給される。デコーダ213は、選択された遅延素子201の段数を示す遅延素子段数信号S1をデコーダ回路102に出力する。
デコーダ回路102は、遅延素子段数信号S1に基づいて、位相制御信号S2を生成して出力する位相制御デコーダ301を備える。ここで、位相制御信号S2は、クロック信号CLKの位相を所定角度分シフトさせるのに要する遅延素子段数を示す。クロック信号CLKの位相をシフトさせる角度はここでは、例えば90度とする。このとき、クロック信号CLKの位相を90度シフトさせるのに要する遅延素子段数が15段である場合には、位相制御信号S2は、段数「15」を保持する。一般に、位相制御信号S2は、CLKの位相を90度シフトさせるのに要する遅延素子段数がN段(Nは1〜nの整数。nについては後述)の場合には、段数「N」を保持する。
位相制御デコーダ301は、位相をシフトさせる角度(位相シフト量)と遅延素子段数との対応関係を、遅延素子段数信号S1から判断する。例えば、遅延素子段数信号S1が、遅延角度360度と遅延素子段数60段とが対応することを示す場合、位相制御デコーダ301は、位相シフト量90度と遅延素子段数15段とが対応すると判断する。位相制御デコーダ301は、クロック信号CLKの位相をシフトさせる角度を指示する位相シフト量設定信号に応じて、位相制御信号S2を生成する。位相制御信号S2は、スレーブDLL回路103に出力される。S2は、本発明の位相制御信号の例である。
スレーブDLL回路103は、複数の遅延素子401を有しており、図2には、直列に接続されたn個の遅延素子4011〜401nが示されている。遅延素子4011〜401nは、クロック信号CLKが入力され、クロック信号CLKの遅延信号SB1〜SBnを生成し、遅延信号SA1〜SBnのいずれかを、出力信号CLKOUT2としてデータ信号生成回路111に出力する。
スレーブDLL回路103は、クロック信号CLKと位相制御信号S2とが入力され、位相制御信号S2に基づいて、クロック信号CLKの位相を所定角度分シフトさせ、所定角度分位相シフトさせたクロック信号CLKをデータ信号生成回路111に出力する。例えば、位相制御信号S2が段数「15」を保持する場合には、スレーブDLL回路103は、遅延素子40115から出力された遅延信号SB15をデータ信号生成回路111に出力する。これにより、出力信号CLKOUT2として、90度分位相がシフトしたクロック信号CLKがデータ信号生成回路111に出力される。
スレーブDLL回路103は、位相制御信号S2に基づいて、遅延信号SB1〜SBnのいずれかを選択器421に選択させるデコーダ411を備える。デコーダ411は、遅延素子4011〜401nの後段に接続された選択器421に接続されている。デコーダ411は、位相制御信号S2が示す遅延信号を特定する信号を選択器421に出力し、そのような遅延信号を選択器421に選択させる。図2では、遅延信号SB1〜SBnから選択された遅延信号が、w_CLKで示されている。スレーブDLL回路103は、出力信号CLKOUT2として、遅延信号w_CLKをデータ信号生成回路111に出力する。
このように、マスタDLL回路101、デコーダ回路102、及びスレーブDLL回路103には、クロック信号CLKが入力され、クロック信号CLKの遅延信号である遅延クロック信号w_CLKを出力する。クロック信号CLKの波形を、図3(A)に示し、遅延クロック信号w_CLKの波形を、図3(D)に示す。図3は、図1の半導体装置内の各種信号の波形を示す波形図である。
なお、本実施形態のマスタDLL回路101及びスレーブDLL回路103は、デジタルDLL回路である。デジタルDLL回路には、遅延量のばらつきが少ない、ロジック回路だけで構成できる等の利点がある。
また、マスタDLL回路101内の遅延素子201の個数m(mは2以上の整数)と、スレーブDLL回路103内の遅延素子401の個数n(nは2以上の整数)は、同じ値でも異なる値でもよい。また、本実施形態では、マスタDLL回路101内の各遅延素子201の遅延量と、スレーブDLL回路103内の各遅延素子401の遅延量は、同じ値とする。
以下、図1に戻り、データ信号生成回路111、データ信号出力回路112、ストローブ信号出力回路113、及びスルーレート制御回路121の詳細構成について説明する。
図1には、DDRメモリ用の信号として、データ信号のEVEN成分DQeと、データ信号のODD成分DQoと、データ信号DQと、ストローブ信号DQSが示されている。DQe、DQo、及びDQに付された記号[7:0]は、これらが8ビット(1バイト)信号であることを示し、DQSに付された記号0は、DQSが1ビット信号であることを示す。図1に示す回路は、DQe、DQo、及びCLKが入力され、DQ及びDQSを出力する。
図1にはさらに、データ信号のEVEN成分dqeと、データ信号のODD成分dqoと、データ信号dqと、ストローブ信号dqsが示されている。DQeとdqe、DQoとdqo、DQとdq、及びDQSとdqsとの違いについては、後述する。なお、dqとDQはそれぞれ、本発明において、データ信号生成回路111が生成するデータ信号と、データ信号出力回路112が出力するデータ信号の例である。
図1の半導体装置は、上述のように、マスタDLL回路101、デコーダ回路102、及びスレーブDLL回路103の他、データ信号生成回路111と、データ信号出力回路112と、ストローブ信号出力回路113と、スルーレート制御回路121とを備える。
データ信号生成回路111は、遅延クロック信号w_CLKに同期したデータ信号dqを生成する回路である。データ信号生成回路111は、EVEN成分用のフリップフロップ回路131と、ODD成分用のフリップフロップ回路132と、選択器133と、インバータ141とを備える。選択器133は、フリップフロップ回路131及び132の後段に接続されており、インバータ141は、フリップフロップ回路132の前段に接続されている。
フリップフロップ回路131には、図3(A)に示すクロック信号CLKと、図3(B)に示すEVEN成分DQeとが入力され、クロック信号CLKに同期したEVEN成分dqeを選択器133に出力する。
一方、フリップフロップ回路132には、クロック信号CLKの反転信号と、図3(C)に示すODD成分DQoとが入力され、クロック信号CLKの反転信号に同期したODD成分dqoを選択器133に出力する。なお、図3(B)及び(C)に示す記号[i]は、0〜7のいずれかの整数を表す。
そして、選択器133には、EVEN成分dqeと、ODD成分dqoと、図3(D)に示す遅延クロック信号w_CLKとが入力され、遅延クロック信号w_CLKに同期したデータ信号dqをデータ信号出力回路112に出力する。データ信号dqの波形を、図3(E)に示す。
以上のような構成により、データ信号生成回路111は、図3に示すように、CLKのダウンエッジでDQoを選択し、CLKのアップエッジでDQeを選択する。そして、データ信号生成回路111は、図3に示すように、w_CLKが0のときには、dqとしてdqoを出力し、w_CLKが1のときには、dqとしてdqeを出力する。
データ信号出力回路112は、データ信号dqが入力され、データ信号DQを出力する回路である。データ信号出力回路112は、図1に示すように、dqが入力されるプレドライバ151と、プレドライバ151と直列に接続され、DQを出力するドライバ152とを備える。
ストローブ信号出力回路113は、ストローブ信号dqsが入力され、ストローブ信号DQSを出力する回路である。図3(A)に示すように、ストローブ信号dqsは、クロック信号CLKに相当する。ストローブ信号出力回路113は、図1に示すように、dqsが入力されるプレドライバ161と、プレドライバ161と直列に接続され、DQSを出力するドライバ162とを備える。
スルーレート制御回路121は、遅延素子段数信号S1に基づいて、データ信号dqのスルーレートを制御するためのスルーレート制御信号SSRを生成する回路である。スルーレート制御信号SSRは、図1に示すように、スルーレート制御回路121から出力され、データ信号出力回路112に入力される。SSRは、本発明のスルーレート制御信号の例である。
その結果、データ信号出力回路112は、スルーレート制御信号SSRに基づいて、データ信号dqのスルーレートを制御し、スルーレートが制御されたデータ信号dqであるデータ信号DQを出力する。このように、dqは、スルーレート制御前のデータ信号に相当し、DQは、スルーレート制御後のデータ信号に相当する。
スルーレート制御信号SSRは、詳細には、プレドライバ151に供給される。従って、スルーレート制御回路121では、プレドライバ151が、スルーレート制御信号SSRに基づいて、データ信号dqのスルーレートを制御する。プレドライバ151によるスルーレートの制御の詳細を、図4により説明する。図4は、データ信号dqのスルーレートの制御方法を説明するための波形図である。
図4(A)、(B)、(C)はそれぞれ、プロセス条件がtypicalコーナー、fastコーナー、slowコーナーのときのデータ信号波形を表す。ここで、typicalコーナー、fastコーナー、slowコーナーとはそれぞれ、出力波形が規定通り、規定より急峻、規定より緩やかになるプロセス条件を意味する。また、図4(A)〜(C)に示す波形X1、X2、X3は、プレドライバ151の出力波形を表し、図4(A)〜(C)に示す波形Y1、Y2、Y3は、ドライバ152の出力波形(データ信号DQの波形)を表す。
図4(B)に示すように、トランジスタのプロセスがfastコーナーのときには、波形X2及びY2の立ち上がり及び立下りは、急峻になる。即ち、波形X2及びY2のスルーレートの大きさは、波形X1及びY1に比べて大きくなる。
一方、図4(C)に示すように、トランジスタのプロセスがslowコーナーのときには、波形X3及びY3の立ち上がり及び立下りは、緩やかになる。即ち、波形X3及びY3のスルーレートの大きさは、波形X1及びY1に比べて小さくなる。
データ信号dqのスルーレートのプロセス依存性は、例えば、遅延素子段数信号S1が保持する遅延素子段数から判断可能である。
そのため、スルーレート制御回路121は、上記遅延素子段数が所定段数よりも大きい場合には、プロセス条件はfastコーナーであると判断する。この場合、スルーレート制御回路121は、データ信号dqのスルーレートの大きさを減少させ、データ信号dqの時間変化がより緩やかになるようなスルーレート制御信号SSRを出力する。これに応じて、プレドライバ151は、データ信号dqのスルーレートの大きさを減少させるよう、データ信号dqのスルーレートを制御する。その結果、図4(B)に示すように、波形X2は波形X2’のように補正され、これに伴い、波形Y2も波形Y2’のように補正される。
また、スルーレート制御回路121は、上記遅延素子段数が上記所定段数よりも小さい場合には、プロセス条件はslowコーナーであると判断する。この場合、スルーレート制御回路121は、データ信号dqのスルーレートの大きさを増加させ、データ信号dqの時間変化がより急峻になるようなスルーレート制御信号SSRを出力する。これに応じて、プレドライバ151は、データ信号dqのスルーレートの大きさを増加させるよう、データ信号dqのスルーレートを制御する。その結果、図4(C)に示すように、波形X3は波形X3’のように補正され、これに伴い、波形Y3も波形Y3’のように補正される。
以上のように、本実施形態では、遅延素子段数信号S1に基づいて、データ信号dqのスルーレートを制御する。これにより、本実施形態では、データ信号dq(更にはデータ信号DQ)のスルーレートの大きさが、プロセス条件に依存するというプロセス依存性を低減することができる。また、本実施形態では、遅延素子段数信号S1をスルーレート制御の判断材料とするため、半導体装置の使用中に都度スルーレートを最適化することができる。
また、スルーレート制御の判断材料となる遅延素子段数信号S1は、マスタDLL回路101により出力される。マスタDLL回路101は、DDRメモリに一般的に組み込まれている回路ブロックである。そのため、本実施形態をDDRメモリを備える半導体装置に適用する場合には、半導体装置に新たに追加する回路ブロックが少なくて済む。具体的には、ロジック部分の追加だけで済む。
また、遅延素子段数信号S1が保持する遅延素子段数は、クロック信号CLKに依存した実際の遅延情報である。そのため、本実施形態では、プレドライバ151のAt Speedでの特性を模擬した情報を、スルーレート制御に用いることができる。
本実施形態では、スルーレート制御回路121は、遅延素子段数が所定段数よりも大きい場合には、データ信号dqのスルーレートの大きさを減少させ、遅延素子段数が上記所定段数よりも小さい場合には、データ信号dqのスルーレートの大きさを増加させる。これにより、本実施形態では、fastコーナー及びslowコーナーの場合のスルーレートを、typicalコーナーの場合のスルーレートに近づけることができる。
なお、スルーレート制御回路121は、これ以外の方法で、データ信号dqのスルーレートを制御しても構わない。例えば、スルーレート制御回路121は、遅延素子段数が所定段数αよりも大きい場合には、スルーレートの大きさを減少させ、遅延素子段数が所定段数αと所定段数βとの間の場合には、スルーレートの大きさを変化させず、遅延素子段数が所定段数βよりも小さい場合には、スルーレートの大きさを増加させても構わない。但し、α及びβは、α>βを満たす整数である。
図5は、クロック信号CLKの位相と出力信号CLKOUT1の位相との差分(θ)の時間変化を示したグラフである。θが0になる時間を、マスタDLL回路101のロックアップ時間Tlockという。遅延素子段数信号S1が保持する遅延素子段数と同様、ロックアップ時間Tlockは、スルーレート、同時スイッチングノイズ、及び電磁放射(EMI)のプロセス依存性を示す指標となる。
本実施形態では、ロックアップ時間Tlockを保持するロックアップ時間信号に基づいて、データ信号dqのスルーレートを制御しても構わない。データ信号dqのスルーレートのプロセス依存性は、ロックアップ時間Tlockからも判断可能である。よって、本実施形態では、ロックアップ時間Tlockをスルーレート制御の判断材料とすることでも、スルーレートのプロセス依存性を低減することができる。更には、半導体装置の使用中に都度スルーレートを最適化することもできる。
ロックアップ時間信号は、マスタDLL回路101から出力され、スルーレート制御回路121に入力される。この場合、スルーレート制御回路121は例えば、ロックアップ時間Tlockが所定時間よりも大きい場合には、データ信号dqのスルーレートの大きさを減少させ、ロックアップ時間Tlockが上記所定時間よりも小さい場合には、データ信号dqのスルーレートの大きさを増加させる。
ここで、クロック信号CLKのクロック周波数と、本実施形態のスルーレート制御との関係について説明する。
上述のように、データ信号dqのスルーレートのプロセス依存性は、例えば、遅延素子段数やロックアップ時間から判断可能である。但し、スルーレートは、プロセス条件だけではなく、クロック信号CLKのクロック周波数にも依存する。本実施形態では、クロック周波数は、固定値にしてもよいし、コントローラからスルーレート制御回路121に通知するようにしてもよい。これにより、スルーレート制御回路121は、クロック周波数の情報を利用することが可能になる。
図1の半導体装置は、動作中にクロック信号CLKのクロック周波数が分かっている場合には、クロック周波数の情報をスルーレート制御回路121に通知する。この場合、スルーレート制御回路121は、遅延素子段数信号S1とクロック周波数とに基づいて、データ信号dqのスルーレートを制御することができる。これにより、スルーレートのプロセス依存性と温度変動とを補償することが可能になる。
一方、動作中にクロック信号CLKのクロック周波数が得られない半導体装置に関しては、テスタによる動作テスト時に一定のクロック周波数が半導体装置に与えられ、半導体装置がプロセスコーナーを判断する。そして、半導体装置は、スルーレート制御ビットを固定する、又は、テスト時の遅延素子段数を記憶しておく。この場合、スルーレート制御回路121は、この情報と、システムリセット時の遅延素子段数信号S1が示す遅延素子段数との比率により、データ信号dqのスルーレートを制御することができる。これにより、スルーレートのプロセス依存性や、EOL(End of Life)に至るまでのスルーレートの経時変化については、対処することができる。なお、この場合には、システムリセット直後におけるクロック周波数は、常に同じ値であると想定する。
以下、データ信号出力回路112内のプレドライバ151の構成について、図6により説明する。図6は、プレドライバ151の構成例を示す回路図である。図6(A)〜(C)はそれぞれ、プレドライバ151の第1〜第3の構成例を表す。
図6(A)では、プレドライバ151は、バッファ501と、複数の負荷容量502と、複数のスイッチ503とを備える。
バッファ501は、pMOS511と、nMOS512とを有する。pMOS511とnMOS512は、ノードNA1にて制御端子同士が接続されると共に、ノードNA2にて主端子同士が接続されている。ノードNA1は、プレドライバ151の入力INに接続され、ノードNA2は、プレドライバ151の出力OUTに接続されている。
図6(A)では、1個の負荷容量502が1個のスイッチ503と対応している。各付加容量502は、1個のスイッチ503を介して、ノードNA2と出力OUTとに接続されている。各スイッチ503には、スルーレート制御端子TA1〜TA3を介して、スルーレート制御信号SSRが供給される。
このような構成により、図6(A)のプレドライバ151は、負荷容量502の容量値を調整することで、データ信号dqのスルーレートを制御することができる。
なお、図6(A)のプレドライバ151は、ここでは6個の負荷容量502と、6個のスイッチ503とを備えているが、KA個の負荷容量502と、KA個のスイッチ503とを備えていてもよい。但し、KAは2以上の整数である。
図6(B)では、プレドライバ151は、4個のpMOS6011〜6014と、4個のnMOS6021〜6024と、pMOS用の3個のスイッチ6031〜6033と、nMOS用の3個のスイッチ6041〜6043とを備える。
pMOS6011〜6014は、制御端子同士がこの順番に接続され、pMOS6011の制御端子が、ノードNB0に接続されている。スイッチ6031〜6033は、図6(B)に示すように、pMOS6011〜6014の制御端子間に配置されている。スイッチ6031〜6033には、スルーレート制御端子TB1〜TB3を介して、スルーレート制御信号SSRが供給される。
同様に、nMOS6021〜6024は、制御端子同士がこの順番に接続され、nMOS6021の制御端子が、ノードNB0に接続されている。スイッチ6041〜6043は、図6(B)に示すように、nMOS6021〜6024の制御端子間に配置されている。スイッチ6041〜6043には、スルーレート制御端子TB1〜TB3を介して、スルーレート制御信号SSRが供給される。
pMOS6011とnMOS6021は、ノードNB1にて主端子同士が接続されている。同様に、pMOS6012〜6014とnMOS6022〜6024はそれぞれ、ノードNB2〜NB4にて主端子同士が接続されている。ノードNB1〜NB4は、プレドライバ151の出力OUTに接続されている。一方、ノードNB0は、プレドライバ151の入力INに接続されている。
このような構成により、図6(B)のプレドライバ151は、プレドライバ151を構成するトランジスタ群のゲート幅を調整することで、データ信号dqのスルーレートを制御することができる。
なお、図6(B)のプレドライバ151は、KB個のpMOS601と、KB個のnMOS602と、pMOS用のKB−1個のスイッチ603と、nMOS用のKB−1個のスイッチ604とを備えていてもよい。但し、KBは2以上の整数である。
図6(C)では、プレドライバ151は、3個のバッファ7011〜7013と、3個の時定数回路7021〜7023とを備える。
バッファ7011〜7013はそれぞれ、pMOS7111〜7113と、nMOS7121〜7123とを有する。pMOS7111〜7113とnMOS7121〜7123はそれぞれ、ノードNC1〜NC3にて制御端子同士が接続されると共に、ノードNC4〜NC6にて主端子同士が接続されている。ノードNC1〜NC3はそれぞれ、時定数回路7021〜7023を介してプレドライバ151の入力INに接続され、ノードNC4〜NC6は、プレドライバ151の出力OUTに接続されている。
時定数回路7021〜7023は、互いに異なる時定数τ1〜τ3を有する。時定数回路7021〜7023には、スルーレート制御端子TC1〜TC3を介して、スルーレート制御信号SSRが供給される。
このような構成により、図6(C)のプレドライバ151は、プレドライバ151のH/L(high/low)遷移時間差を調整することで、データ信号dqのスルーレートを制御することができる。
なお、図6(C)のプレドライバ151は、KC個のバッファ701と、KC個の時定数回路702とを備えていてもよい。但し、KCは2以上の整数である。
以上のように、本実施形態では、遅延素子段数信号又はロックアップ時間信号に基づいて、データ信号のスルーレートを制御する。これにより、本実施形態では、データ信号のスルーレートの大きさが、プロセス条件に依存するというプロセス依存性を低減することができる。また、本実施形態では、遅延素子段数信号又はロックアップ時間信号をスルーレート制御の判断材料とするため、半導体装置の使用中に都度スルーレートを最適化することができる。
以下、第2実施形態の半導体装置について説明する。第2実施形態は、第1実施形態の変形例であり、第2実施形態については、第1実施形態との相違点を中心に説明する。
(第2実施形態)
図7は、第2実施形態の半導体装置の構成を示す回路図である。
図7の半導体装置は、マスタDLL回路101と、本発明の第1の位相制御回路の例であるデコーダ回路102と、第1及び第2のスレーブDLL回路103A,Bと、本発明の第2の位相制御回路の例である制御回路104と、第1及び第2のデータ信号生成回路111A,Bと、第1及び第2のデータ信号出力回路112A,Bと、第1及び第2のストローブ信号出力回路113A,Bとを備える。デコーダ回路102及び制御回路104は、本発明の位相制御回路の例である。
図7では、マスタDLL回路101の後段にデコーダ回路102が接続され、マスタDLL回路101及びデコーダ回路102の後段に制御回路104が接続され、制御回路104の後段に第1及び第2のスレーブDLL回路103A,Bが接続されている。また、第1及び第2のスレーブDLL回路103A,Bの後段にはそれぞれ、第1及び第2のデータ信号生成回路111A,Bが接続されている。第1及び第2のデータ信号出力回路112A,Bはそれぞれ、第1及び第2のデータ信号生成回路111A,Bの後段に接続され、第1及び第2のデータ信号生成回路111A,Bからの出力信号が入力される。一方、第1及び第2のストローブ信号出力回路113A,Bは共に、クロック信号CLKが入力される。
以下、図7の半導体装置の詳細構成について説明する。
マスタDLL回路101の構成は、第1実施形態と同様である。マスタDLL回路101は、クロック信号CLKの位相の遅延角度と遅延素子段数との関係を示す遅延素子段数信号S1をデコーダ回路102及び制御回路104に出力する。遅延素子段数信号S1はここでは、クロック信号CLKの位相の遅延角度が360度となる遅延素子段数を保持する。例えば、遅延角度360度と遅延素子段数60度とが対応する場合には、遅延素子段数信号S1は、段数「60」を保持する。S1は、本発明の遅延素子段数信号の例である。
デコーダ回路102の構成も、第1実施形態と同様である。デコーダ回路102は、遅延素子段数信号S1に基づいて、クロック信号CLKの位相を所定角度分シフトさせるのに要する遅延素子段数を示す位相制御信号S2を生成して、制御回路104に出力する。クロック信号CLKの位相をシフトさせる角度はここでは、90度とする。例えば、クロック信号CLKの位相を90度シフトさせるのに要する遅延素子段数が15段である場合には、位相制御信号S2は、段数「15」を保持する。S2は、本発明の位相制御信号の例である。
制御回路104は、位相制御信号S2に基づいて、第1及び第2の位相制御信号S3A及びS3Bを生成して、それぞれ第1及び第2のスレーブDLL回路103A,Bに出力する。第1の位相制御信号S3Aは、クロック信号CLKの位相を第1の所定角度分シフトさせるのに要する遅延素子段数を示し、第1のスレーブDLL回路103Aに供給される。また、第2の位相制御信号S3Bは、クロック信号CLKの位相を第2の所定角度分シフトさせるのに要する遅延素子段数を示し、第2のスレーブDLL回路103Bに供給される。S3A及びS3Bは、本発明の第1及び第2の位相制御信号の例である。
制御回路104は、S3Aの遅延素子段数とS3Bの遅延素子段数の一方又は両方を、S2の遅延素子段数から微小に変化させることで、S3A及びS3Bを生成する。制御回路104は例えば、S3Aの遅延素子段数を「14段」に設定し、S3Bの遅延素子段数を「16段」に設定する。これにより、第1の所定角度と第2の所定角度は、異なる値に設定される。
第1及び第2のスレーブDLL回路103A及びBの構成はそれぞれ、第1実施形態のスレーブDLL回路103と同様である。
第1のスレーブDLL回路103Aは、第1の位相制御信号S3Aに基づいて、クロック信号CLKの位相を第1の所定角度分シフトさせ、第1の所定角度分位相シフトさせたクロック信号CLKを第1のデータ信号生成回路111Aに出力する。例えば、第1の位相制御信号S3Aが段数「14」を保持する場合には、第1のスレーブDLL回路103Aは、84度分位相がシフトしたクロック信号CLKを出力する。
同様に、第2のスレーブDLL回路103Bは、第2の位相制御信号S3Bに基づいて、クロック信号CLKの位相を第2の所定角度分シフトさせ、第2の所定角度分位相シフトさせたクロック信号CLKを第2のデータ信号生成回路111Bに出力する。例えば、第2の位相制御信号S3Bが段数「16」を保持する場合には、第2のスレーブDLL回路103Bは、96度分位相がシフトしたクロック信号CLKを出力する。
図7では、第1のスレーブDLL回路103Aから出力された遅延信号が、w_CLKAで示されている。このように、第1のスレーブDLL回路103Aには、クロック信号CLKが入力され、クロック信号CLKの遅延信号である第1の遅延クロック信号w_CLKAを出力する。
また、図7では、第2のスレーブDLL回路103Bから出力された遅延信号が、w_CLKBで示されている。このように、第2のスレーブDLL回路103Bには、クロック信号CLKが入力され、クロック信号CLKの遅延信号である第2の遅延クロック信号w_CLKBを出力する。
以下、図7のその他の回路ブロックの詳細構成について説明する。
第1のデータ信号生成回路111A、第1のデータ信号出力回路112A、及び第1のストローブ信号出力回路113Aの構成はそれぞれ、第1実施形態のデータ信号生成回路111、データ信号出力回路112、及びストローブ信号出力回路113と同様である。
第1のデータ信号生成回路111Aは、第1の遅延クロック信号w_CLKAに同期した第1データ信号dq[7:0]を、第1のデータ信号出力回路112Aに出力する。また、第1のデータ信号出力回路112Aは、第1のデータ信号dq[7:0]が入力される第1のプレドライバ151Aと、第1のプレドライバ151Aと直列に接続され、第1のデータ信号DQ[7:0]を出力する第1のドライバ152Aとを備える。また、第1のストローブ信号出力回路113Aは、第1のストローブ信号dqs0が入力される第1のプレドライバ161Aと、第1のプレドライバ161Aと直列に接続され、第1のストローブ信号DQS0を出力する第1のドライバ162Aとを備える。
なお、dq[7:0]とDQ[7:0]はそれぞれ、本発明において、第1のデータ信号生成回路111Aが生成する第1のデータ信号と、第1のデータ信号出力回路112Aが出力する第1のデータ信号の例である。
また、第2のデータ信号生成回路111B、第2のデータ信号出力回路112B、及び第2のストローブ信号出力回路113Bの構成もそれぞれ、第1実施形態のデータ信号生成回路111、データ信号出力回路112、及びストローブ信号出力回路113と同様である。
第2のデータ信号生成回路111Bは、第2の遅延クロック信号w_CLKBに同期した第2データ信号dq[15:8]を、第2のデータ信号出力回路112Bに出力する。また、第2のデータ信号出力回路112Bは、第2のデータ信号dq[15:8]が入力される第2のプレドライバ151Bと、第2のプレドライバ151Bと直列に接続され、第2のデータ信号DQ[15:8]を出力する第2のドライバ152Bとを備える。また、第2のストローブ信号出力回路113Bは、第2のストローブ信号dqs1が入力される第2のプレドライバ161Bと、第2のプレドライバ161Bと直列に接続され、第2のストローブ信号DQS1を出力する第2のドライバ162Bとを備える。
なお、dq[15:8]とDQ[15:8]はそれぞれ、本発明において、第2のデータ信号生成回路111Bが生成する第2のデータ信号と、第2のデータ信号出力回路112Bが出力する第2のデータ信号の例である。
以上のように、本実施形態では、クロック信号CLKの位相を第1の所定角度分シフトさせた第1の遅延クロック信号w_CLKAと、クロック信号CLKの位相を第2の所定角度分シフトさせた第2の遅延クロック信号w_CLKBとを生成し、第1の所定角度と第2の所定角度を異なる角度に設定する。そして、本実施形態では、第1及び第2の遅延クロック信号w_CLKA及びw_CLKBをそれぞれ、第1及び第2のスレーブDLL回路113A及びBに供給する。
その結果、本実施形態では、第1のデータ信号dq[7:0]及びDQ[7:0]のスイッチンタイミングと、第2のデータ信号dq[15:8]及びDQ[15:8]のスイッチンタイミングとが、ずれることになる。これにより、本実施形態では、同時スイッチングノイズによる電磁放射(EMI)を削減することができる。また、本実施形態では、後述のように、遅延素子段数信号S1を、S3Aの遅延素子段数及びS3Bの遅延素子段数を設定する際の判断材料とすることで、半導体装置の使用中に都度スイッチングタイミングのずれを最適化することができる。
なお、本実施形態では、第1及び第2のデータ信号はそれぞれ、1バイト(8ビット)信号である。そして、本実施形態では、データ信号の位相シフト量は、各バイト毎に設定される。本実施形態では、dq[7:0]及びDQ[7:0]については、いずれも第1の所定角度分位相をシフトさせ、dq[15:8]及びDQ[15:8]については、いずれも第2の所定角度分位相をシフトさせる。但し、本実施形態では、バイト単位以外の単位で、データ信号の位相シフト量を設定しても構わない。
ここで、電磁放射について説明する。
dq[7:0]やdq[15:8]を含むデータ信号dqの全ビットがトグルすると、データ信号dqを処理するプレドライバ及びドライバに電流が流れ、強い電磁放射が発生する。本実施形態では、データ信号dqの各バイト毎に、トグルする時間をずらす。時間をずらす手法として、本実施形態では、遅延クロック信号の位相シフト量を、各バイト毎に本来の値からシフトさせる。
上記の説明中では、w_CLKAの位相シフト量は、90度から84度にシフトされており、w_CLKBの位相シフト量は、90度から96度にシフトされている。このように、本実施形態では、dq[7:0]とdq[15:8]は、互いに逆方向に位相をシフトさせる。そして、本実施形態では、第1及び第2の位相制御信号S3A及びS3Bが保持する遅延素子段数をオフセットさせることで、w_CLKA及びw_CLKBの位相シフト量を変化させる。これにより、本実施形態では、同時スイッチングノイズによる電磁放射を比較的簡単に削減することができる。
以下、プロセス条件を考慮したS3A及びS3Bの遅延素子段数の設定について説明する。
プロセス条件がtypicalコーナー、fastコーナー、slowコーナーのときのデータ信号波形については、図4に示した。プロセス条件がfastコーナーのときには、データ信号波形の立ち上がり及び立下りは、急峻になる。一方、プロセス条件がslowコーナーのときには、データ信号波形の立ち上がり及び立下りは、緩やかになる。
また、上記の説明中では、制御回路104は、第1の位相制御信号S3Aの遅延素子段数を、15段から14段に変化させ、第2の位相制御信号S3Bの遅延素子段数を、15段から16段に変化させている。
本実施形態では、制御回路104は、S3Aの遅延素子段数とS3Bの遅延素子段数の一方又は両方を、プロセス条件に応じて変化させてもよい。プロセス条件は、上述のように、遅延素子段数信号S1が保持する遅延素子段数から判断可能である。
そこで、本実施形態の制御回路104は、図7に示すように、遅延素子段数信号S1及び位相制御信号S2に基づいて、S3A及びS3Bを生成して出力する。これにより、本実施形態の制御回路104は、S3Aの遅延素子段数とS3Bの遅延素子段数の一方又は両方を、プロセス条件に応じて変化させることができる。
以下、S3A及びS3Bの遅延素子段数の調節方法の第1及び第2の例について説明する。
図8は、S3A及びS3Bの遅延素子段数の調節方法の第1の例を説明するための波形図である。
図8(A)に示す波形W1と、図8(B)に示す波形W1’は、S3Aの遅延素子段数を調節する前及び調節した後の、第1のデータ信号出力回路112Aの出力波形(DQ[7:0]の波形)を表す。また、図8(A)に示す波形W2と、図8(B)に示す波形W2’は、S3Bの遅延素子段数を調節する前及び調節した後の、第2のデータ信号出力回路112Bの出力波形(DQ[15:8]の波形)を表す。
ここで、調節前及び調節後のDQ[7:0]の位相シフト量を、90度及び90−ΔA度、調節前及び調節後のDQ[15:8]の位相シフト量を、90度及び90+ΔB度とする。
また、調節前及び調節後のS3Aの遅延素子段数を、15段及び15−NA段、調節前及び調節後のS3Bの遅延素子段数を、15度及び15+NB段とする。
図8では、ΔA及びΔBの値が、プロセス条件によらずほぼ一定値になるよう、NA及びNBの値を調節する。
制御回路104(図7)は、遅延素子段数信号S1が保持する遅延素子段数が、所定段数よりも大きい場合には、プロセス条件はfastコーナーであると判断する。fastコーナーでは、各遅延素子の遅延量は、typicalコーナーの場合に比べて小さくなる。そのため、fastコーナーでは、ΔA及びΔBの値を一定値にするために、NA及びNBの値を、typicalコーナーの場合に比べて大きくする必要がある。そこで、fastコーナーでは、制御回路104は、NA及びNBの値を、typicalコーナーの場合に比べて大きくする。
また、制御回路104は、遅延素子段数信号S1が保持する遅延素子段数が、所定段数よりも小さい場合には、プロセス条件はslowコーナーであると判断する。slowコーナーでは、各遅延素子の遅延量は、typicalコーナーの場合に比べて大きくなる。そのため、slowコーナーでは、ΔA及びΔBの値を一定値にするために、NA及びNBの値を、typicalコーナーの場合に比べて小さくする必要がある。そこで、slowコーナーでは、制御回路104は、NA及びNBの値を、typicalコーナーの場合に比べて小さくする。
このように、図8の方法では、S3A及びS3Bの遅延素子段数を、遅延素子段数信号S1が保持する遅延素子段数に応じて、即ち、プロセス条件に応じて調節する。これにより、ΔA及びΔBの値を、プロセス条件によらずほぼ一定値にすることができる。図8の方法には例えば、どのようなプロセス条件においても、一定のスイッチングタイミングのずれを確保できるという利点がある。
図9は、S3A及びS3Bの遅延素子段数の調節方法の第2の例を説明するための波形図である。
図9(A)、(B)、(C)はそれぞれ、プロセス条件がtypicalコーナー、fastコーナー、slowコーナーのときの、DQ[7:0]及びDQ[15:8]の波形を表す。また、波形X1〜X3及びX1’〜X3’はそれぞれ、S3Aの遅延素子段数を調節する前及び調節した後の、DQ[7:0]の波形を表す。また、波形Y1〜Y3及びY1’〜Y3’はそれぞれ、S3Bの遅延素子段数を調節する前及び調節した後の、DQ[15:8]の波形を表す。
ここで、図8の場合と同様に、調節前及び調節後のDQ[7:0]の位相シフト量を、90度及び90−ΔA度、調節前及び調節後のDQ[15:8]の位相シフト量を、90度及び90+ΔB度とする。
また、調節前及び調節後のS3Aの遅延素子段数を、15段及び15−NA段、調節前及び調節後のS3Bの遅延素子段数を、15度及び15+NB段とする。
図8では、ΔA及びΔBの値が、プロセス条件によらずほぼ一定値になるよう、NA及びNBの値を調節した。これに対し、図9では、ΔA及びΔBの値が、プロセス条件に応じて変化するよう、NA及びNBの値を調節する。
具体的には、より多くの消費電流が生じるfastコーナーでは、制御回路104(図7)は、ΔA及びΔBの値がtypicalコーナーの場合に比べて大きくなるよう、NA及びNBの値を調節する。一方、slowコーナーでは、制御回路104は、ΔA及びΔBの値が0になるよう、NA及びNBの値を0にする。プロセス条件の判断方法については、図8の場合と同様である。
このように、図9の方法では、S3A及びS3Bの遅延素子段数を、遅延素子段数信号S1が保持する遅延素子段数に応じて、即ち、プロセス条件に応じて調節する。これにより、ΔA及びΔBの値を、プロセス条件に応じて変化させることができる。図9の方法には例えば、スイッチングタイミングのずれを、プロセス条件に応じて好適化できるという利点がある。
図10は、図7の制御回路104の動作例を示すフローチャートである。
まず、制御回路104は、マスタDLL回路101がロックされていることを確認した後(ステップS1)、遅延素子段数信号S1が保持する遅延素子段数を読み込む(ステップS2)。
次に、制御回路104は、上記遅延素子段数が、所定段数n1未満であるか否か、及び所定段数n2未満であるか否かを判断する(ステップS3,S4)。但し、n1及びn2は、n1<n2を満たす整数である。
次に、制御回路104は、DQの位相シフト量を設定する。図10において、制御回路104は、DQ[7:0]の位相シフト量を、90−Δ度に設定し、DQ[15:8]の位相シフト量を、90+Δ度に設定するものとする。
制御回路104は、上記遅延素子段数がn1未満の場合には、ΔをΔ1度に設定する(ステップS5)。また、上記遅延素子段数がn1以上かつn2未満の場合には、ΔをΔ2度に設定する(ステップS6)。また、上記遅延素子段数がn2以上の場合には、ΔをΔ3度に設定する(ステップS7)。但し、Δ1、Δ2、Δ3は、Δ1<Δ2<Δ3を満たす整数である。
図10では、制御回路104は、第1の位相制御信号S3Aの遅延素子段数を、15−N段に設定し、第2の位相制御信号S3Bの遅延素子段数を、15+N段に設定する。Nの値は、Δの値を決定することで決定可能になる。よって、制御回路104は、ステップS5からS7のいずれかでΔの値が決定されると、Δの値に基づいてNの値を決定する(ステップS8)。
しかしながら、制御回路104は、決定されたNの値を、常に採用するわけではなく、データ信号DQが出力中でないことを条件に採用する。
制御回路104は、ステップS8でS3A及びS3Bの遅延素子段数が決定されると、第1及び第2のデータ信号出力回路112A及びBがDQ[7:0]及びDQ[15:8]の出力期間にあるか否かを判断する(ステップS9)。
制御回路104は、DQ[7:0]及びDQ[15:8]が出力中であれば、S3A及びS3Bの更新を行わない(ステップS10)。この場合、ステップS8で決定されたS3A及びS3Bの遅延素子段数を採用されず、現在採用中のS3A及びS3Bの遅延素子段数が維持される。
一方、制御回路104は、DQ[7:0]及びDQ[15:8]が出力中でなければ、S3A及びS3Bの更新を行う(ステップS11)。この場合、現在採用中のS3A及びS3Bの遅延素子段数が、ステップS8で決定されたS3A及びS3Bの遅延素子段数に置き換えられる。
そして、制御回路104は、ステップS10,S11で採用されたS3A及びS3Bを使用して、第1及び第2のスレーブDLL回路103A及びBを制御する(ステップS12)。
このように、図10のフローでは、S3A及びS3Bの更新を、データ信号DQの出力期間以外の期間に行う。データ送信中にw_CLKA、w_CLKB、DQ[7:0]、DQ[15:8]等の位相が変化すると、ジッタが発生してしまう。図10のフローでは、データ信号DQの出力中にはS3A及びS3Bの更新を行わないため、このようなジッタの発生を抑えることができる。データ信号DQが出力中か否かは例えば、制御回路104に供給されるWrite Enable信号がhighである否かにより判断可能である(図7参照)。
また、図1のスルーレート制御信号SSRの更新についても、S3A及びS3Bの更新と同様に、データ信号DQの出力期間以外の期間に行うことが望ましい。これにより、SSRの更新に起因するジッタの発生を抑えることができる。
以上のように、本実施形態では、遅延素子段数信号S1に基づいて、S3A及びS3Bの遅延素子段数を設定することができる。これにより、本実施形態では、プロセス条件を考慮したS3A及びS3Bの遅延素子段数の設定が可能になる。また、本実施形態では、遅延素子段数信号S1を、S3A及びS3Bの遅延素子段数を設定する際の判断材料とすることで、半導体装置の使用中に都度スイッチングタイミングのずれを最適化することができる。
また、S3A及びS3Bの制御の判断材料となる遅延素子段数信号S1は、マスタDLL回路101により出力される。マスタDLL回路101は、DDRメモリに一般的に組み込まれている回路ブロックである。そのため、本実施形態をDDRメモリを備える半導体装置に適用する場合には、半導体装置に新たに追加する回路ブロックが少なくて済む。具体的には、ロジック部分の追加だけで済む。
また、遅延素子段数信号S1が保持する遅延素子段数は、クロック信号CLKに依存した実際の遅延情報である。そのため、本実施形態では、第1及び第2のプレドライバ151A及びBのAt Speedでの特性を模擬した情報を、S3A及びS3Bの制御に用いることができる。
また、本実施形態では、マスタDLL回路101、第1及び第2のスレーブDLL回路103A,B、及び第1及び第2のデータ信号出力回路112A,Bは、同じプロセスのトランジスタを有することが望ましい。これにより、本実施形態では、EOLを含めて、第1及び第2のプレドライバ151A及びBのAt Speedでの特性をより正確に模擬することが可能になる。これは、第1実施形態に関しても同様である。
また、本実施形態では、ロックアップ時間Tlockを保持するロックアップ時間信号に基づいて、S3A及びS3Bの遅延素子段数を設定しても構わない。これは、第1実施形態と同様である。
また、本実施形態では、それぞれ1バイト信号である第1及び第2のデータ信号を処理する半導体装置について説明した。しかしながら、本実施形態は、それぞれ1バイト信号である第1から第Nのデータ信号を処理する半導体装置についても適用可能である。ただし、Nは3以上の整数である。
また、本実施形態では、DDRメモリのソースシンクロナスI/O(Input/Output)について取り上げた。しかしながら、本実施形態は例えば、その他のメモリのソースシンクロナスI/Oについても適用可能である。
以上のように、本実施形態では、クロック信号CLKの位相を第1の所定角度分シフトさせた第1の遅延クロック信号w_CLKAと、クロック信号CLKの位相を第2の所定角度分シフトさせた第2の遅延クロック信号w_CLKBとを生成し、第1の所定角度と第2の所定角度を異なる角度に設定する。これにより、本実施形態では、第1のデータ信号のスイッチンタイミングと第2のデータ信号のスイッチンタイミングとをずらし、同時スイッチングノイズによる電磁放射(EMI)を削減することができる。また、本実施形態では、遅延素子段数信号を、第1及び第2の位相制御信号の遅延素子段数を設定する際の判断材料とすることで、半導体装置の使用中に都度スイッチングタイミングのずれを最適化することができる。
なお、本発明の一の態様の半導体装置は、例えば、複数の遅延素子を有し、クロック信号が入力され、前記クロック信号の位相の遅延角度と前記遅延素子の段数との関係を示す遅延素子段数信号を出力するマスタDLL回路と、前記遅延素子段数信号に基づいて、前記クロック信号の位相を第1及び第2の所定角度分シフトさせるのに要する遅延素子段数を示す第1及び第2の位相制御信号を生成し、前記第1及び第2の位相制御信号を出力する位相制御回路と、複数の遅延素子を有し、前記クロック信号と前記第1の位相制御信号とが入力され、前記第1の位相制御信号に基づいて、前記クロック信号の位相を前記第1の所定角度分シフトさせ、前記第1の所定角度分位相をシフトさせた前記クロック信号を出力する第1のスレーブDLL回路と、複数の遅延素子を有し、前記クロック信号と前記第2の位相制御信号とが入力され、前記第2の位相制御信号に基づいて、前記クロック信号の位相を前記第2の所定角度分シフトさせ、前記第2の所定角度分位相をシフトさせた前記クロック信号を出力する第2のスレーブDLL回路と、前記第1のスレーブDLL回路から出力された前記クロック信号に同期した第1のデータ信号を生成する第1のデータ信号生成回路と、前記第2のスレーブDLL回路から出力された前記クロック信号に同期した第2のデータ信号を生成する第2のデータ信号生成回路とを備え、前記位相制御回路は、前記第1の所定角度と前記第2の所定角度とを異なる値に設定する。
前記半導体装置は、前記第1のデータ信号が入力される第1のプレドライバと、前記第1のプレドライバと直列に接続され、前記第1のデータ信号を出力する第1のドライバとを備える第1のデータ信号出力回路と、前記第2のデータ信号が入力される第2のプレドライバと、前記第2のプレドライバと直列に接続され、前記第2のデータ信号を出力する第2のドライバとを備える第2のデータ信号出力回路とを更に備えていてもよく、前記位相制御回路は、前記第1及び第2の位相制御信号の更新を、前記第1及び第2のデータ信号出力回路による前記第1及び第2のデータ信号の出力期間以外の期間に行ってもよい。
前記半導体装置において、前記マスタDLL回路、前記第1及び第2のスレーブDLL回路、及び前記第1及び第2のデータ信号出力回路は、同じプロセスのトランジスタを有していてもよい。
以上、本発明の具体的な態様の例を、第1及び第2実施形態により説明したが、本発明は、これらの実施形態に限定されるものではない。
101 マスタDLL回路
102 デコーダ回路
103 スレーブDLL回路
104 制御回路
111 データ信号生成回路
112 データ信号出力回路
113 ストローブ信号出力回路
121 スルーレート制御回路
131 EVEN成分用のフリップフロップ回路
132 ODD成分用のフリップフロップ回路
133 選択器
141 インバータ
151、161 プレドライバ
152、162 ドライバ
201、401 遅延素子
211 位相比較器
212 カウンタ
213、411 デコーダ
221、421 選択器
301 位相制御デコーダ
501、701 バッファ
502 負荷容量
503、603、604 スイッチ
511、601、711 pMOS
512、602、712 nMOS
702 時定数回路

Claims (5)

  1. 複数の遅延素子を有し、クロック信号が入力され、前記クロック信号の位相の遅延角度と前記遅延素子の段数との関係を示す遅延素子段数信号を出力するマスタDLL(Delay Locked Loop)回路と、
    前記遅延素子段数信号に基づいて、前記クロック信号の位相を所定角度分シフトさせるのに要する遅延素子段数を示す位相制御信号を生成し、前記位相制御信号を出力する位相制御回路と、
    複数の遅延素子を有し、前記クロック信号と前記位相制御信号とが入力され、前記位相制御信号に基づいて、前記クロック信号の位相を前記所定角度分シフトさせ、前記所定角度分位相をシフトさせた前記クロック信号を出力するスレーブDLL回路と、
    前記スレーブDLL回路から出力された前記クロック信号に同期したデータ信号を生成するデータ信号生成回路と、
    前記遅延素子段数信号、又は前記マスタDLL回路のロックアップ時間を示すロックアップ時間信号に基づいて、前記データ信号のスルーレートを制御するためのスルーレート制御信号を生成し、前記スルーレート制御信号を出力するスルーレート制御回路と、
    前記データ信号と前記スルーレート制御信号とが入力され、前記スルーレート制御信号に基づいて、前記データ信号の前記スルーレートを制御し、前記スルーレートが制御された前記データ信号を出力するデータ信号出力回路と、
    を備えることを特徴とする半導体装置。
  2. 前記スルーレート制御回路は、
    前記遅延素子段数信号又は前記ロックアップ時間信号が示す遅延素子段数又はロックアップ時間が、所定段数又は所定時間よりも大きい場合には、前記スルーレートの大きさを減少させ、
    前記遅延素子段数信号又は前記ロックアップ時間信号が示す遅延素子段数又はロックアップ時間が、前記所定段数又は前記所定時間よりも小さい場合には、前記スルーレートの大きさを増加させることを特徴とする請求項1に記載の半導体装置。
  3. 前記データ信号出力回路は、
    前記スルーレートが制御される前の前記データ信号が入力されるプレドライバと、
    前記プレドライバと直列に接続され、前記スルーレートが制御された前記データ信号を出力するドライバとを備え、
    前記スルーレート制御回路は、前記スルーレート制御信号を、前記プレドライバに供給することを特徴とする請求項1又は2に記載の半導体装置。
  4. 複数の遅延素子を有し、クロック信号が入力され、前記クロック信号の位相の遅延角度と前記遅延素子の段数との関係を示す遅延素子段数信号を出力するマスタDLL(Delay Locked Loop)回路と、
    前記遅延素子段数信号に基づいて、前記クロック信号の位相を第1及び第2の所定角度分シフトさせるのに要する遅延素子段数を示す第1及び第2の位相制御信号を生成し、前記第1及び第2の位相制御信号を出力する位相制御回路と、
    複数の遅延素子を有し、前記クロック信号と前記第1の位相制御信号とが入力され、前記第1の位相制御信号に基づいて、前記クロック信号の位相を前記第1の所定角度分シフトさせ、前記第1の所定角度分位相をシフトさせた前記クロック信号を出力する第1のスレーブDLL回路と、
    複数の遅延素子を有し、前記クロック信号と前記第2の位相制御信号とが入力され、前記第2の位相制御信号に基づいて、前記クロック信号の位相を前記第2の所定角度分シフトさせ、前記第2の所定角度分位相をシフトさせた前記クロック信号を出力する第2のスレーブDLL回路と、
    前記第1のスレーブDLL回路から出力された前記クロック信号に同期した第1のデータ信号を生成する第1のデータ信号生成回路と、
    前記第2のスレーブDLL回路から出力された前記クロック信号に同期した第2のデータ信号を生成する第2のデータ信号生成回路とを備え、
    前記位相制御回路は、前記第1の所定角度と前記第2の所定角度とを異なる値に設定することを特徴とする半導体装置。
  5. 前記位相制御回路は、
    前記遅延素子段数信号に基づいて、前記クロック信号の位相を所定角度分シフトさせるのに要する遅延素子段数を示す位相制御信号を生成し、前記位相制御信号を出力する第1の位相制御回路と、
    前記遅延素子段数信号及び前記位相制御信号に基づいて、前記第1及び第2の位相制御信号を生成して出力する第2の位相制御回路と、
    を備えることを特徴とする請求項4に記載の半導体装置。
JP2009052946A 2009-03-06 2009-03-06 半導体装置 Pending JP2010206747A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009052946A JP2010206747A (ja) 2009-03-06 2009-03-06 半導体装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009052946A JP2010206747A (ja) 2009-03-06 2009-03-06 半導体装置

Publications (1)

Publication Number Publication Date
JP2010206747A true JP2010206747A (ja) 2010-09-16

Family

ID=42967728

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009052946A Pending JP2010206747A (ja) 2009-03-06 2009-03-06 半導体装置

Country Status (1)

Country Link
JP (1) JP2010206747A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101193057B1 (ko) 2011-04-06 2012-10-22 엠텍비젼 주식회사 복수의 센서 데이터 입력 방법 및 장치
JP2012248088A (ja) * 2011-05-30 2012-12-13 Toshiba Corp メモリアクセス回路及びメモリシステム
JP2014096691A (ja) * 2012-11-09 2014-05-22 Toshiba Corp 半導体装置
KR20150068905A (ko) * 2013-12-12 2015-06-22 후아웨이 테크놀러지 컴퍼니 리미티드 신호 처리 방법 및 장치
CN114582388A (zh) * 2020-12-01 2022-06-03 美光科技公司 用于减少干扰的读取和写入操作的定时及相关装置、系统和方法

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101193057B1 (ko) 2011-04-06 2012-10-22 엠텍비젼 주식회사 복수의 센서 데이터 입력 방법 및 장치
JP2012248088A (ja) * 2011-05-30 2012-12-13 Toshiba Corp メモリアクセス回路及びメモリシステム
US8819475B2 (en) 2011-05-30 2014-08-26 Kabushiki Kaisha Toshiba Memory access circuit and memory access system
JP2014096691A (ja) * 2012-11-09 2014-05-22 Toshiba Corp 半導体装置
KR20150068905A (ko) * 2013-12-12 2015-06-22 후아웨이 테크놀러지 컴퍼니 리미티드 신호 처리 방법 및 장치
KR101627590B1 (ko) 2013-12-12 2016-06-07 후아웨이 테크놀러지 컴퍼니 리미티드 신호 처리 방법 및 장치
CN114582388A (zh) * 2020-12-01 2022-06-03 美光科技公司 用于减少干扰的读取和写入操作的定时及相关装置、系统和方法

Similar Documents

Publication Publication Date Title
KR100696957B1 (ko) 클럭 듀티 조정 회로, 이를 이용한 지연 고정 루프 회로 및그 방법
KR100834400B1 (ko) Dram의 동작 주파수를 높이기 위한 지연고정루프 및 그의 출력드라이버
JP4915017B2 (ja) 遅延固定ループ回路
US9998103B2 (en) Delay line circuit
KR100733423B1 (ko) 지연 고정 루프 회로
US8427211B2 (en) Clock generation circuit and delay locked loop using the same
JP2007243735A (ja) Dll回路及びそれを備えた半導体装置
JP2010213308A (ja) 遅延固定ループ回路の遅延ライン部及び遅延固定ループ回路におけるクロック信号の遅延固定方法
KR20100030226A (ko) 데이터 출력회로
KR101046722B1 (ko) 반도체 장치
JP2010206747A (ja) 半導体装置
JP2008306699A (ja) 周波数調整装置及びそれを含むdll回路
JP2015162052A (ja) デューティ補正装置ならびにデューティ補正方法
KR20090020410A (ko) 클럭 펄스 발생 회로
KR100850285B1 (ko) 지연고정루프회로 및 그의 제어방법
KR102031201B1 (ko) 레이턴시 제어회로 및 이를 포함하는 반도체 메모리 장치
US8638137B2 (en) Delay locked loop
US9537475B1 (en) Phase interpolator device using dynamic stop and phase code update and method therefor
KR100902049B1 (ko) 주파수 조정 장치 및 이를 포함하는 dll 회로
KR100911191B1 (ko) 주파수 조정 장치 및 이를 포함하는 dll 회로
KR20130142743A (ko) 지연 제어회로 및 이를 포함하는 클럭 생성회로
KR101347283B1 (ko) 카스 레이턴시 회로 및 이를 구비하는 반도체 메모리 장치