JP2012122916A - 遅延時間測定装置および遅延時間測定方法 - Google Patents

遅延時間測定装置および遅延時間測定方法 Download PDF

Info

Publication number
JP2012122916A
JP2012122916A JP2010275292A JP2010275292A JP2012122916A JP 2012122916 A JP2012122916 A JP 2012122916A JP 2010275292 A JP2010275292 A JP 2010275292A JP 2010275292 A JP2010275292 A JP 2010275292A JP 2012122916 A JP2012122916 A JP 2012122916A
Authority
JP
Japan
Prior art keywords
flip
flop
clock
edge
delay time
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.)
Granted
Application number
JP2010275292A
Other languages
English (en)
Other versions
JP5621566B2 (ja
Inventor
Yoshio Kameda
義男 亀田
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP2010275292A priority Critical patent/JP5621566B2/ja
Publication of JP2012122916A publication Critical patent/JP2012122916A/ja
Application granted granted Critical
Publication of JP5621566B2 publication Critical patent/JP5621566B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Tests Of Electronic Circuits (AREA)
  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)

Abstract

【課題】フリップフロップ間のパスの数が増えると、遅延時間を測定するために必要なフリップフロップ数が大きく増加する。
【解決手段】遅延時間測定装置は、第1のクロックと第2のクロックとを出力するクロック生成部と、第1のクロックのエッジに同期して第1の信号を出力する第1のフリップフロップと、第1の信号を入力とし、第2のクロックのエッジに同期して第2の信号を出力する第2のフリップフロップと、第2の信号を入力とし、第1のクロックのエッジに同期して第3の信号を出力する第3のフリップフロップと、第1のクロックの第1のエッジが生成された時から第2のクロックの第1のエッジが発生されるまでの第1の設定時間と、記第2のクロックの第2のエッジが生成された時から第1のクロックの第2のエッジが生成されるまでの第2の設定時間とを制御する制御部と、を有する。
【選択図】 図1

Description

本発明は、遅延時間測定装置および遅延時間測定方法に関し、特に、フリップフロップ間の遅延時間測定装置および遅延時間測定方法に関する。
半導体集積回路の微細化に伴い、製造バラツキが増加し、製造バラツキが半導体デバイスの特性バラツキに大きな影響を与えるようになってきている。
半導体デバイスの特性バラツキの一つに、デバイスや論理回路の遅延時間のバラツキがある。
デバイスや論理回路の遅延時間の大きさやそれらのバラツキを把握することは、半導体製造プロセスの観点から、半導体製造プロセスを改善するため及び半導体製造プロセスの状態を監視するために重要である。さらに、半導体集積回路設計の観点から、製造後の半導体集積回路が期待通りの動作を行うようにするために重要である。
記憶をもつフリップフロップ間のパスの遅延時間を測定する回路として、特許文献1には、第1のフリップフロップと第2のフリップフロップと、それぞれのフリップフロップに時間差を設けながらクロックを独立に供給する回路がある。この回路は、それぞれのフリップフロップに供給するクロックの時間差を変えた時に、第1のフリップフロップの論理値が第2のフリップフロップに正常にラッチされるか否かを調べ、この結果に基づいて遅延時間を測定する。
特許文献1に記載された遅延時間を測定する方法について、具体例を用いて詳細に説明する。図19に示すように、回路は、第1のフリップフロップ611と、第1のフリップフロップ611に直列に接続された第2のフリップフロップ621とを有する。第1のフリップフロップ611に第1のクロック信号CLK1が接続されている。第2のフリップフロップ621に第2のクロック信号CLK2が接続されている。
図20に示すように、第1のクロック信号CLK1と第2のクロック信号CLK2との間には時間差tが設けられている。第1のフリップフロップ611から第2のフリップフロップ621までの遅延時間dが時間差tよりも短ければ、第1のフリップフロップ611にラッチされていた値(図20では論理1)が第2のフリップフロップ621にラッチされる。このような動作は、一般的には正常動作として捉えられる。
一方、図21に示すように、第1のフリップフロップ611から第2のフリップフロップ621までの遅延時間dが時間差tよりも長ければ、第1のフリップフロップ611にラッチされていた値(図21では論理1)は第2のフリップフロップ621にラッチされない。このような動作は、一般的には誤動作として捉えられる。
特許文献1に記載の回路では、時間差tを変えて、正常動作する最小の時間差、もしくは誤動作する最大の時間差を求めることでフリップフロップ間の遅延時間を測定することができる。
特開平6−118122号公報(図1、段落「0015」)
近年の半導体集積回路の微細化によるフリップフロップ間のパスの遅延時間のバラツキを把握するために、フリップフロップ間の遅延時間データを多数収集する必要がある。
特許文献1に記載のフリップフロップ間のパスの遅延時間を測定する回路では、2つのフリップフロップを用いてその間の一つのパスの遅延時間を測定できる。すなわち、この回路を用いてN個のパス(Nパス)の遅延時間を測定する場合は、各パスの遅延時間を測定するために2つのフリップフロップを用いるため、必要とするフリップフロップの数は2*N個となる。このように特許文献1に記載の方法では、多数のパスの遅延時間を測定しようとすると多数のフリップフロップが必要となるという課題がある。
本発明は、フリップフロップ間のパスの数が増えると、遅延時間を測定するために必要なフリップフロップ数が大きく増加するという課題を解決する遅延時間測定装置および遅延時間測定方法を提供することを目的とする。
本発明の遅延時間測定装置は、第1のクロックと第2のクロックとを出力するクロック生成部と、前記第1のクロックのエッジに同期して第1の信号を出力する第1のフリップフロップと、前記第1の信号を入力とし、前記第2のクロックのエッジに同期して第2の信号を出力する第2のフリップフロップと、前記第2の信号を入力とし、前記第1のクロックのエッジに同期して第3の信号を出力する第3のフリップフロップと、前記第1のクロックの第1のエッジが生成された時から前記第2のクロックの第1のエッジが発生されるまでの第1の設定時間と、記第2のクロックの第2のエッジが生成された時から前記第1のクロックの第2のエッジが生成されるまでの第2の設定時間とを制御する制御部と、を有し、前記クロック生成部は、前記第1の設定時間に基づいて第2のクロックの第1のエッジを生成し、さらに、前記第2の設定時間に基づいて第1のクロックの第2のエッジを生成し、前記制御部は、前記第1の設定時間を変更し、その変更に応じて変化する前記第2の信号の結果に基づいて第1の遅延の時間を測定し、前記制御部は、前記第2の設定時間を変更し、その変更に応じて変化する前記第3の信号の結果に基づいて、前記第2の遅延の時間を測定する。
また、本発明の遅延時間測定方法は、第1のフリップフロップに前記第1のクロックの前記第1のエッジを入力し、前記第1のクロックの前記第1のエッジに同期して前記第1のフリップフロップが第1の信号を出力するステップと、前記第1のフリップフロップに前記第1のクロックの前記第1のエッジが入力されてから、第1のクロックの第1のエッジが発生した時から第2のクロックの第1のエッジが発生する時までの第1の設定時間後に、前記第1の信号を入力とする第2のフリップフロップに第2のクロックの第1のエッジを入力し、前記第2のフリップフロップが前記第2のクロックのエッジに同期して第2の信号を出力するステップと、前記第1の設定時間を変更し、その変更に応じて変化する前記第2の信号の結果に基づいて第1の遅延の時間を測定するステップと、前記第2のフリップフロップに、前記第2のクロックの前記第2のエッジを入力し、前記第2のクロックの前記第2のエッジに同期して前記第2のフリップフロップが第2の信号を出力するステップと、前記第2のフリップフロップに前記第2のクロックの前記第2のエッジが入力されてから、前記第2のクロックの第2のエッジが発生した時から前記第1のクロックの第2のエッジが発生する時までの第2の設定時間後に、前記第2の信号を入力とする第3のフリップフロップに前記第1のクロックの第2のエッジを入力し、前記第3のフリップフロップが前記第1のクロックの第2のエッジに同期して第3の信号を出力するステップと、前記第2の設定時間を変更し、その変更に応じて変化する前記第3の信号の結果に基づいて、第2の遅延の時間を測定する。
本発明の遅延時間測定装置および遅延時間測定方法によれば、フリップフロップ間のパスの数が増えると、遅延時間を測定するために必要なフリップフロップ数が大きく増加するのを防ぐことができる。
本発明の第1の実施形態の遅延時間測定方法を説明するフローチャートである。 本発明の第1の実施形態の遅延時間測定装置を説明するブロック図である。 本発明の第1の実施形態の遅延時間測定装置の動作を説明する動作波形である。 本発明の第1の実施形態の遅延時間測定装置の動作を説明する動作波形である。 本発明の第2の実施形態の遅延時間測定方法を説明するフローチャートである。 本発明の第2の実施形態の遅延時間測定装置を説明するブロック図である。 本発明の第2の実施形態の遅延時間測定装置の動作を説明する動作波形である。 本発明の第2の実施形態の遅延時間測定装置の動作を説明する動作波形である。 本発明の第2の実施形態の他の遅延時間測定装置を説明するブロック図である。 図9に示した本発明の第2の実施形態の他の遅延時間測定装置の動作を説明する動作波形である。 図9に示した本発明の第2の実施形態の他の遅延時間測定装置の動作を説明する動作波形である。 本発明の第2の実施形態の他の遅延時間測定装置を説明するブロック図である。 本発明の第3の実施形態の遅延時間測定方法を説明するフローチャートである。 本発明の第4の実施形態の遅延時間測定方法を説明するフローチャートである。 本発明の第4の実施形態の遅延時間測定装置を説明するブロック図である。 本発明の第4の実施形態の遅延時間測定装置の動作を説明する動作波形である。 本発明の第5の実施形態の遅延時間測定方法を説明するフローチャートである。 本発明の第5の実施形態の遅延時間測定装置を説明するブロック図である。 特許文献1に記載の遅延時間測定回路の構成を示すブロック図である。 特許文献1に記載の遅延時間測定回路の動作を説明する動作波形である。 特許文献1に記載の遅延時間測定回路の動作を説明する動作波形である。
次に、本発明の実施形態について図面を参照して詳細に説明する。
〔第1の実施形態〕
図1は本発明の第1の実施形態の遅延時間測定方法を説明するフローチャートである。図2は第1の実施形態の遅延時間測定装置を説明するブロック図である。図3と図4とは第1の実施形態の半導体集積回路の遅延時間測定装置の動作を説明する動作波形である。
図2に示すように、遅延時間測定装置110は、クロック生成部140と、第1のフリップフロップ111(FF1)と、第2のフリップフロップ121(FF2)と、第3のフリップフロップ131(FF3)と、制御部150とを有する。クロック生成部140は、第1のクロックCLK1と第2のクロックCLK2とを出力する。第1のフリップフロップ111は、第1のクロックCLK1のエッジに同期して第1の信号を出力する。第2のフリップフロップ121は、第1の信号を入力とし、第2のクロックCLK2のエッジに同期して第2の信号を出力する。第3のフリップフロップ131は、第2の信号を入力とし、第1のクロックCLK1のエッジに同期して第3の信号を出力する。
制御部150は、第1のクロックCLK1の第1のエッジが発生した時から第2のクロックCLK2の第1のエッジが発生するまでの第1の設定時間t12を制御する。さらに、制御部150は、第2のクロックCLK2の第2のエッジが発生した時から第1のクロックCLK1の第2のエッジが発生するまでの第2の設定時間t21を制御する。クロック生成部140は、第1の設定時間t12に基づいて第2のクロックCLK2の第1のエッジを生成する。また、クロック生成部140は、第2の設定時間t21に基づいて第1のクロックCLK1の第2のエッジを生成する。制御部150は、第1の設定時間を変更し、その変更に応じて変化する第2の信号の結果に基づいて第1の遅延の時間を測定する。制御部150は、第2の設定時間を変更し、その変更に応じて変化する第3の信号の結果に基づいて、第2の遅延の時間を測定する。
図2を用いて、遅延時間測定装置110をさらに詳細に説明する。第1のフリップフロップ111、第2のフリップフロップ121および、第3のフリップフロップ131は直列に接続されている。第1のクロックCLK1は第1のフリップフロップ111と第3のフリップフロップ131とに接続されている。第2のクロックCLK2は第2のフリップフロップ121に接続されている。
クロック生成部140は、第1のクロックCLK1と第2のクロックCLK2とを生成し、第1のクロックCLK1の第1のエッジの発生時から第2のクロックCLK2の第1のエッジの発生時までの第1の設定時間t12と、第2のクロックCLK2の第2のエッジの発生時から第1のクロックCLK1の第2のエッジの発生時までの第2の設定時間t21とを設定できる。なお、第1のエッジ及び第2のエッジは、両方ともパルスの立ち上がりを指す。
制御部150は、第1の設定時間t12および第2の設定時間t21を制御することができる。よって、制御部150は第1の設定時間t12を適宜変更し、その変更に応じて変化する第2の信号の結果に基づいて、第1のフリップフロップ111が第1の信号を出力した時から、第2のフリップフロップ121へ第1の信号が入力される時までの第1の遅延時間d1を求めることができる。加えて、制御部150は第2の設定時間t21を適宜変更し、その変更に応じて変化する第3の信号の結果に基づいて、第2のフリップフロップ121が第2の信号を出力した時から、第3のフリップフロップ131へ第2の信号が入力される時までの第2の遅延時間d2を求めることができる。
次に、図1、図3及び図4を用いて、シフトの正常動作の一例と誤動作の一例を挙げながら、遅延時間測定方法について説明する。
はじめに、第1のフリップフロップ111の出力Q1から第2のフリップフロップ121の入力D2までの第1の遅延時間d1の測定方法について、シフトの正常動作の一例を挙げて説明する。
図1に示すように、第1のフリップフロップ111に第1のクロックCLK1の第1のエッジを入力する(S111)。すると、第1のクロックCLK1の第1のエッジに同期して、第1のフリップフロップ111が第1の信号を出力する。このとき、第1のフリップフロップ111の入力D1の値は第1のフリップフロップ111にラッチされて第1のフリップフロップ111の出力Q1が論理0から論理1に変化する(図3、1−1)。
次いで、第1のフリップフロップ111に第1のクロックCLK1の第1のエッジが入力されてから第1の設定時間t12後に、出力Q1を入力とする第2のフリップフロップ121に第2のクロックCLK2の第1のエッジを入力する(S112)。第1の設定時間t12とは、第1のクロックCLK1の第1のエッジが発生した時から第2のクロックCLK2の第1のエッジが発生する時までの時間である。そして第2のフリップフロップ121が第2のクロックCLK2のエッジに同期して出力Q2を出力する。このとき、第2のフリップフロップ121の入力D2の値が第2のフリップフロップ121にラッチされて、第2のフリップフロップ121の出力Q2が論理1から論理0に変化する(図3、1−2)。
次いで、第2の信号に基づいて、第1のクロックCLK1のエッジを第1のフリップフロップ111に入力した時から、第1の信号が第2のフリップフロップ121に入力されるまでの第1の遅延d1を検証する。第1のフリップフロップ111の出力Q1から第2のフリップフロップ121の入力D2までの第1の遅延時間d1を経て、第1のフリップフロップ111の出力Q1の論理値の変化が、第2のフリップフロップ121の入力D2に到達する(図3、1−3)。第1の遅延時間d1より第1の設定時間t12が小さい場合、第1のフリップフロップ111に保持されていた論理値0が第2のフリップフロップ121へシフトし、第1のフリップフロップ111から第2のフリップフロップ121への論理値のシフト動作が正常に行われる。
次に、シフトの誤動作の一例について図4を用いて説明する。
はじめに、図1に示すように、第1のフリップフロップ111に第1のクロックCLK1の第1のエッジを入力する(S111)。すると、第1のクロックCLK1の第1のエッジに同期して、第1のフリップフロップ111が第1の信号を出力する。このとき、第1のフリップフロップ111の入力D1の値が第1のフリップフロップ111にラッチされて第1のフリップフロップ111の出力Q1が論理0から論理1に変化する(図4、1−1)。
次いで、第1のフリップフロップ111に第1のクロックCLK1の第1のエッジが入力されてから第1の設定時間t12後に、第1の信号を入力とする第2のフリップフロップ121に第2のクロックCLK2の第1のエッジを入力する(S112)。第1の設定時間t12とは、第1のクロックCLK1の第1のエッジが発生した時から第2のクロックCLK2の第1のエッジが発生する時までの時間である。すると、第2のフリップフロップ121が第2のクロックCLK2のエッジに同期して第2の信号を出力する。このとき、第1のクロックCLK1のエッジを第1のフリップフロップ111に入力した時から第2のフリップフロップ21の入力D2までの第1の遅延時間d1を経て、第1のフリップフロップ111の出力Q1の論理値の変化が、第2のフリップフロップ21の入力D2に到達する(図4、1−2)。
次いで、第2の信号に基づいて、第1のフリップフロップ111が第1の信号を出力した時から、第1の信号が第2のフリップフロップ121に入力されるまでの第1の遅延を検証する。第2のクロックCLK2の第1のエッジを第2のフリップフロップ121に入力すると、第2のフリップフロップ121の入力D2の値が第2のフリップフロップ121にラッチされる(図4、1−3)。第1の設定時間t12が第1の遅延時間d1より小さい場合、第1のフリップフロップ111に保持されていた論理値0は第2のフリップフロップ121へ正常にシフトされない。これは「筒抜け」と呼ばれるシフトレジスタの誤動作である。
このように、第1の設定時間t12に応じて、シフトが正常に動作又は誤った動作をする。そこで、この第1の設定時間t12をどの程度にしたときに、シフトが正常動作するか又は誤動作するかを検証することで、第1の遅延時間d1を求めることが可能となる(S113)。すなわち、第1の設定時間t12を少しずつ増加又は減少させ、シフトが正常動作する最小の時間差、もしくは誤動作する最大の時間差を求めることでフリップフロップ間の第1の遅延時間d1を測定することができる。
次に、第2のフリップフロップ121の出力Q2から第3のフリップフロップ131の入力D3までの第2の遅延時間の測定方法について、シフトの正常動作の一例を挙げて説明する。
はじめに、第2のフリップフロップ121に、第2のクロックCLK2の第2のエッジを入力する(S121)。すると、第2のクロックCLK2の第2のエッジに同期して第2のフリップフロップ121が第2の信号を出力する。すると、第2のフリップフロップ121の入力D2の値が第2のフリップフロップ121にラッチされて、第2のフリップフロップ121の出力Q2が論理0から論理1に変化する(図3、2−1)。
次に第2のフリップフロップ121に第2のクロックCLK2の第2のエッジが入力されてから第2の設定時間t21後に、第2の信号を入力とする第3のフリップフロップ131に第1のクロックCLK1の第2のエッジを入力する。ここで、第2の設定時間t21とは、第2のクロックCLK2の第2のエッジが発生した時から第1のクロックCLK1の第2のエッジが発生する時までの時間である。すると、第3のフリップフロップ131が第1のクロックの第2のエッジに同期して第3の信号を出力する。このとき、第3のフリップフロップ131の入力D3の値が第3のフリップフロップ131にラッチされて第3のフリップフロップ131の出力Q3が論理1から論理0に変化する(図3、2−2)。
次いで、第3の信号に基づいて第2のクロックCLK2の第2のエッジを第2のフリップフロップ121に入力した時から、第2の信号が第3のフリップフロップに入力されるまでの第2の遅延を検証する。第2のフリップフロップ121の出力Q2から第3のフリップフロップ131の入力D3までの第2の遅延時間d2を経て、第2のフリップフロップ121の出力Q2の論理値の変化が、第3のフリップフロップ131の入力D3に到達する(図3、2−3)。このように、第2の設定時間t21が第2の遅延時間d2より小さい場合、第2のフリップフロップ121に保持されていた論理値0が第3のフリップフロップ131へシフトし、第2のフリップフロップ121から第3のフリップフロップ131へのシフト動作が正常に行われる。
第2のフリップフロップ121から第3のフリップフロップ131へのシフトの誤動作の動作波形は図4と同様であるため、図示しない。
このように、第2の設定時間t21に応じて、シフトが正常に動作又は誤った動作をする。そこで、この第2の設定時間t21をどの程度にしたときに、シフトが正常動作するか又は誤動作するかを検証することで、第2の遅延時間d2を求めることが可能となる(S123)。
第1の実施形態によれば、第1の遅延時間d1と第2の遅延時間d2との2つのパスの遅延時間測定に3つのフリップフリップを用いる。図19を用いて説明した方法では、1つのパスの遅延時間測定に2つのフリップフロップを用いていたため、2つのパスの遅延時間測定に4つのフリップフロップを用いる必要があった。一方、本実施形態に係る遅延時間測定装置および遅延時間測定方法では、これらの遅延時間測定に必要なフリップフロップ数を3つにすることができ、より少ないフリップフロップ数で遅延時間を測定することができる。
遅延時間測定に必要なフリップフロップ数を少なくすることができるため、半導体集積回路の面積効率を上げることもできる。また、遅延時間測定を行うにあたり、半導体集積回路からの多数の出力と監視を減らすことができるため、遅延時間測定が容易となり、半導体集積回路同士の遅延時間のバラツキを容易に把握することができるようになる。
第1の実施形態は2つのパスの遅延時間測定の例であるが、本実施形態に係る遅延時間測定装置および遅延時間測定方法はN個のパス(以下、Nパス)の遅延時間測定にも容易に適用できる。Nパスの遅延時間測定にはN+1個のフリップフロップを用いれば良い。図19を用いて説明した方法では、Nパスの遅延時間測定に2*N個のフリップフロップを用いる必要があったが、本実施形態に係る遅延時間測定装置及び遅延時間測定方法により、測定に必要なフリップフロップ数をほぼ半減できる。
第3のフリップフロップ131の出力を第1のフリップフロップ111の入力として、フリップフロップ群同士が環状に接続されてもよい。この場合の遅延時間測定装置では、
第3の信号を第1のフリップフロップの入力とし、制御部は、第1のクロックの第3のエッジが生成された時から前記第2のクロックの第3のエッジが発生されるまでの第3の設定時間を制御し、第3の設定時間を変更し、その変更に応じて変化する前記第1の信号の結果に基づいて第3の遅延の時間を測定する。このようにすると、第3のフリップフロップ131の出力D3から第1のフリップフロップ111の入力D1までの遅延時間を測定できる。すなわち、3つのフリップフロップを用いて3つのパスの遅延時間を測定することができる。
さらに、フリップフロップ群同士が環状に接続するという前述の形態もNパスの遅延時間測定に容易に適用することができる。この場合、Nパスの遅延時間をN個のフリップフロップを用いて測定することができるようになる。すなわち、図19を用いて説明した方法では、Nパスの遅延時間測定に2*N個のフリップフロップが必要であったが、この場合は、N個のフリップフロップのみでNパスの遅延時間測定を行うことができるようになる。
〔第2の実施形態〕
次に本発明の第2の実施形態の遅延時間測定装置および遅延時間測定方法について説明する。本実施形態の遅延時間測定装置はフリップフロップの入力と出力とを比較する比較部を有することを特徴とする。
図5に第2の実施形態の遅延時間測定方法を説明するフローチャートを示す。図6に第2の実施形態の遅延時間測定装置を説明するブロック図を示す。図7と図8には第2の実施形態の遅延時間測定装置の動作を説明する動作波形を示す。
図6に示すとおり、本実施形態の遅延時間測定装置210は、図2に示した第1の実施形態の遅延時間測定装置と同じように、クロック生成部と、第1のフリップフロップ211(FF1)と、第2のフリップフロップ221(FF2)と、第3のフリップフロップ231(FF3)と、制御部とを有する。なお、クロック生成部と制御部は図示されていない。ただし、制御部に含まれる第2のフリップフロップ221の入力D2と第2のフリップフロップ221の出力Q2とを比較する第1の比較部222と、第3のフリップフロップ231の入力D3と第3のフリップフロップ231の出力Q3とを比較する第2の比較部232とを表示する。第1の比較部222と第2の比較部232は、それぞれの比較部に入力される2つの入力が一致する場合は論理1を出力し、異なる場合は論理0を出力する。
次に、シフトの正常動作の一例について図5、図7を用いて説明する。
はじめに、第1のフリップフロップ211の入力D1に論理1を、第1のフリップフロップ211に論理0をそれぞれ初期値として設定する(S210)。
次に、第1のクロックCLK1の第1のエッジを第1のフリップフロップ211に入力する(S211)。すると、第1のフリップフロップ211の入力D1の値が第1のフリップフロップ211にラッチされる。その結果、第1のフリップフロップ211の出力Q1が論理0から論理1に変化する(図7、1−1)。
次に、第1のクロックCLK1の第1のエッジの発生時から第2のクロックCLK2の第1のエッジの発生時までの第1の設定時間t12を経て、第2のクロックCLK2の第1のエッジを第2のフリップフロップ221に入力する(S212)。すると、第2のクロックCLK2の第1のエッジが入力された時の第2のフリップフロップ221の入力D2の値(論理0)が第2のフリップフロップ221にラッチされて第2のフリップフロップ221の出力Q2が論理1から論理0に変化する(図7、1−2)。その結果、第1の比較部222の出力C2は論理1になる(図7、1−2a)。
その後、第1のクロックCLK1の第1のエッジを第1のフリップフロップ211に入力した時から第2のフリップフロップ221の入力D2までの第1の遅延時間d1を経て、第1のフリップフロップ211の出力Q1の論理0から論理1への変化が、第2のフリップフロップ221の入力D2に到達する(図7、1−3)。その結果、第1の比較部222の出力C2が論理0に戻る(図7、1−3a)。
このように、第1の遅延時間d1が第1の設定時間t12に比べて大きい場合、第1のフリップフロップ211に保持されていた論理値0が第2のフリップフロップ221へシフトし、第1のフリップフロップ211から第2のフリップフロップ221へのシフト動作が正常に行われる。設定した初期値に基づいた期待値が保持され、第1の比較部222の出力C2が論理値0であることはシフト動作が正常に行われたことを示す。
次に、シフトの誤動作の一例について図8を用いて説明する。
はじめに、第1のフリップフロップ211の入力D1に論理1を第1のフリップフロップ211に論理0をそれぞれ初期値として設定する(S210)。
次に、第1のクロックCLK1の第1のエッジを第1のフリップフロップ211に入力する(S211)。すると、第1のフリップフロップ211の入力D1の値が第1のフリップフロップ211にラッチされて第1のフリップフロップ211の出力Q1が論理0から論理1に変化する(図8、1−1)。
第1のクロックCLK1の第1のエッジを第1のフリップフロップ211に入力した時から第2のフリップフロップ221の入力D2までの第1の遅延時間d1を経て、第1のフリップフロップ211の出力Q1の論理0から論理1への変化が、第2のフリップフロップ221の入力D2に到達する(図8、1−2)。これによって第1の比較部222の出力C2が論理1になる(図8、1−2a)。
その後、第2のクロックCLK2の第1のエッジを第2のフリップフロップ221に入力する(S212)。すると、第2のクロックCLK2の大1のエッジが入力された時の第2のフリップフロップ221の入力D2の値(論理1)が第2のフリップフロップ221にラッチされる(図8、1−3)。第2のフリップフロップ221は元々論理1の状態だったため、入力D2の値(論理1)がラッチされてもその出力Q2は論理1のままで変わらない。このように、第1の設定時間t12に比べて第1の遅延時間d1がより大きい場合、第1のフリップフロップ211に保持されていた論理値0は第2のフリップフロップ221へ正常にシフトされない。これは第1の実施形態でも述べた「筒抜け」と呼ばれるシフトレジスタの誤動作である。設定した初期値に基づいた期待値が保持されず、第1の比較部222の出力C2が論理値1であることはシフト動作が誤動作したことを示す。
このように、本実施形態の遅延時間測定装置210は、第1の初期値に基づいた期待値が第2のフリップフロップ221に保持されたか否かと、第1の設定時間t12とに基づいて第1の遅延時間d1を求めることができる(S214)。なお、ここで、第1の初期値に基づいた期待値が第2のフリップフロップ221に保持されたか否かは、第1の比較部222の出力C2が示す論理値に基づいて決定される。
次に、第2のフリップフロップ221の出力Q2から第3のフリップフロップ231の入力D3までの第2の遅延時間の測定方法について、シフトの正常動作の一例を挙げて説明する。
第2のフリップフロップ221の入力D2に論理1を第2のフリップフロップ221に論理0をそれぞれ初期値として設定する(S220)。
次に、第2のクロックCLK2の第2のエッジを第2のフリップフロップ221に入力する(S221)。すると、第2のフリップフロップ221の入力D2の値(論理1)が第2のフリップフロップ221にラッチされて第2のフリップフロップ221の出力Q2が論理0から論理1に変化する(図7、2−1)。
第2のクロックCLK2の第2のエッジの発生時から第1のクロックCLK1の第2のエッジの発生時までの第2の設定時間t21を経て、第1のクロックCLK1の第2のエッジを第3のフリップフロップ231に入力する(S222)。すると、第3のフリップフロップ231の入力D3の値(論理0)が第3のフリップフロップ231にラッチされて第3のフリップフロップ231の出力Q3が論理1から論理0に変化する(図7、2−2)。これによって第2の比較部232の出力C3が論理1になる(図7,2−2a)。
その後、第2のクロックCLK2の第2のエッジを第2のフリップフロップ221に入力した時から、第3のフリップフロップ231の入力D3までの第2の遅延時間d2を経て、第2のフリップフロップ221の出力Q2の論理値の変化が、第3のフリップフロップ231の入力D3に到達する(2−3)。これによって第2の比較部232の出力C3が論理0に戻る(2−3a)。
このように、第2の設定時間t21が大2の遅延時間d2より小さい場合、第2のフリップフロップ221に保持されていた論理値0が第3のフリップフロップ231へシフトし、第2のフリップフロップ221から第3のフリップフロップ231へのシフト動作が正常に行われる。設定した初期値に基づいた期待値が保持され、第2の比較部232の出力C3が論理値0であることはシフト動作が正常に行われたことを示す。
第2のフリップフロップ221から第3のフリップフロップ231へのシフトの誤動作の動作波形は図8と同様であるため図示及び説明を省略する。
このように、第2の初期値に基づいた期待値が第3のフリップフロップ231に保持されたか否か(第2の比較部232の出力C3が示す論理値)と、第2の設定時間t21に基づいて第2の遅延時間d2を求める(S224)。
第2の実施形態によれば、期待値との比較を比較部で行い、第1の初期値または第2の初期値に基づいた期待値が第2のフリップフロップ221または第3のフリップフロップ231に保持されたか否かを判別することができる。このため、フリップフロップ内部の値を外部に読み出し、外部で期待値と比較する監視処理を省き、遅延時間測定処理を簡略化することができる効果がある。
図9は第2の実施形態の他の遅延時間測定装置を説明するブロック図、図10と図11とは図9に示した遅延時間測定装置の動作を説明する動作波形である。
図9に示すとおり、第2の実施形態の他の遅延時間測定装置210aは、図6のブロック図に加えて、第1の比較部222の出力C2の値を保持する第1の比較記憶部223と、第2の比較部232の出力C3の値を保持する第2の比較記憶部233とを備える。第1のクロックCLK1と第1の制御信号EN1とが第2の比較記憶部233に接続され、第2のクロックCLK2と第2の制御信号EN2とが第1の比較記憶部223に接続されている。第1の比較記憶部223は、第1の比較部222の出力と制御信号EN2を入力とするAND回路と、このAND回路の出力をラッチするフリップフロップで構成される。
第2の比較記憶部233は、第2の比較部232の出力と制御信号EN1を入力とするAND回路と、このAND回路の出力をラッチするフリップフロップで構成される。
図10にシフトの正常動作の一例を示す。
図10に示す、1−1から1−3aまでの動作波形および2−1から2‐3aまでの動作波形は図7の同一符号で示す動作波形と同一であるので説明を省略する。
第1のクロックCLK1の第1のエッジが第2のクロックCLK2の第1のエッジに先行する周期では、第1の制御信号EN1が論理0、第2の制御信号EN2が論理1となる。逆に、第2のクロックCLK2の第2のエッジが第1のクロックCLK1の第2のエッジに先行する周期では、第1の制御信号EN1が論理1、第2の制御信号EN2が論理0となる。
第2のクロックCLK2の立ち下がりエッジで第1の比較記憶部223は第1の比較部222の出力C2の論理0をラッチし(図10、1−4)、正常動作であることを保持する。
また、第1のクロックCLK1の立ち下がりエッジで第2の比較記憶部233は第2の比較部232の出力C3の論理0をラッチし(図10、2−4)、正常動作であることを保持する。
図11にシフトの誤動作の一例が示されている。
図11を参照すると、1−1から1−3までの動作波形は図8の同一符号で示す動作波形と同一であるので説明を省略する。
第2のクロックCLK2の立ち下がりエッジで第1の比較記憶部223は第1の比較部222の出力C2の論理1をラッチし(図11、1−4)、誤動作であることを保持する。
第2のフリップフロップ221から第3のフリップフロップ231へのシフトの誤動作の動作波形は図示しないが、図11と同様である。
第2の実施形態の他の遅延時間測定装置によれば、期待値との比較結果を比較記憶部に保持することができる。結果の保持は、第1のクロックCLK1もしくは第2のクロックCLK2に同期するため、第1のクロックCLK1もしくは第2のクロックCLK2に同期して外部に比較結果を読み出すことができ、タイミングを取った遅延時間測定処理を容易に実現できる効果がある。
第2の実施形態のさらに他の遅延時間測定装置210bを説明するブロック図を図12に示す。
図12に示すように、第2の実施形態の他の遅延時間測定装置210bは、図6のブロック図に加えて、第1の比較部222の出力C2の値を保持する第1のスキャン可能な比較記憶部224と、第2の比較部232の出力C3の値を保持する第2のスキャン可能な比較記憶部234とを備える。第1のクロックCLK1と第1の制御信号EN1とが第2のスキャン可能な比較記憶部234に接続され、第2のクロックCLK2と第2の制御信号EN2とが第1のスキャン可能な比較記憶部224に接続されている。スキャン制御信号SENは第1のスキャン可能な比較記憶部224と第2のスキャン可能な比較記憶部234とに接続されている。第1のスキャン可能な比較記憶部224は、第1の比較部222の出力と制御信号EN2を入力とするAND回路とを有する。さらに、第1のスキャン可能な比較記憶部224は、このAND回路の出力とその他の入力を入力とし、スキャン制御信号SENを制御入力とするマルチプレクサと、このマルチプレクサの出力をラッチするフリップフロップを有する。第2のスキャン可能な比較記憶部234は、第2の比較部232の出力と制御信号EN1を入力とするAND回路とを有する。さらに、第1のスキャン可能な比較記憶部234は、このAND回路の出力とその他の入力を入力とし、スキャン制御信号SENを制御入力とするマルチプレクサと、このマルチプレクサの出力をラッチするフリップフロップを有する。
スキャン制御信号SENがスキャン可を示すとき、第1のスキャン可能な記憶比較部224と第2のスキャン可能な記憶比較部234とがスキャンパスを形成し、スキャン操作により第1のスキャン可能な記憶比較部224に保持された値と第2のスキャン可能な記憶比較部234に保持された値とを単一の出力から読み出すことが可能である。
一方、スキャン制御信号SENがスキャン不可を示すとき、第1のスキャン可能な記憶比較部224と第2のスキャン可能な記憶比較部234とがそれぞれ第1の比較部222の出力C2の値と第2の比較部232の出力C3の値とを保持する。
第2の実施形態の他の遅延時間測定装置によれば、期待値との比較結果を比較記憶部に保持することができ、かつスキャンパスを使って単一の出力から比較結果を外部に読み出すことができる。比較記憶部の数によらず、単一のスキャン出力で比較結果の外部読み出しが可能であり、多数のパスの遅延時間を測定する場合であっても出力数の増加を招かない効果がある。
〔第3の実施形態〕
次に、本発明の第3の実施形態の遅延時間測定方法を図13のフローチャートを用いて説明する。本実施形態は、期待値との比較に基づいて設定時間を変化させる処理を行うことを特徴とする。
図13のフローチャートに示すS310からS312及びS320からS322は図5のフローチャートのS210からS212及びS220からS222と同一であるので、これらの説明を省略する。
S315では第1の初期値に基づいた第1の期待値が第2のフリップフロップに保持されたか否かを判定する。第1の期待値が第2のフリップフロップに保持されている場合は正常動作、第1の期待値が第2のフリップフロップに保持されていない場合は誤動作が起きたと考えられる。
保持されていない場合、第1の遅延時間d1に比べて第1の設定時間t12が大きいので、第1の設定時間t12を減少させる(S3161)。一方、保持されている場合、第1の遅延時間d1に比べて第1の設定時間t12が小さいので、第1の設定時間t12を増加させる(S3162)。
その後、第1の期待値が第2のフリップフロップに保持されるときの第1の設定時間t12の最大値を求めたかを判定し(S317)、否であればS310に戻り、肯であればS320に進む。
S325では第2の初期値に基づいた第2の期待値が第3のフリップフロップに保持されたか否かを判定する。第2の期待値が第3のフリップフロップに保持されている場合は正常動作、第2の期待値が第3のフリップフロップに保持されていない場合は誤動作が起きたと考えられる。
保持されていない場合、第2の遅延時間d2に比べて第2の設定時間t21が大きいので、第2の設定時間t21を減少させる(S3261)。一方、保持されている場合、第2の遅延時間d2に比べて第2の設定時間t21が小さいので、第2の設定時間t21を増加させる(S3262)。
その後、第2の期待値が第3のフリップフロップに保持されるときの第2の設定時間t21の最大値を求めたかを判定し(S327)、否であればS320に戻り、肯であればS331に進む。
最後に、第1の期待値が第2のフリップフロップに保持されるときの第1の設定時間t12の最大値を第1の遅延時間d1とし(S331)、第2の期待値が第3のフリップフロップに保持されるときの第2の設定時間t21の最大値を第2の遅延時間d2とする(S332)。
第3の実施形態によれば、期待値との比較に基づいて設定時間を変化させる処理を行い、遅延時間を容易に求めることができる効果がある。
〔第4の実施形態〕
次に、本発明の第4の実施形態の遅延時間測定装置及び遅延時間測定方法を図14、図15、図16を用いて説明する。本実施形態の遅延時間測定装置は、フリップフロップに保持された値を修正する自己修正部を有することを特徴とする。
図14は第4の実施形態の遅延時間測定方法を説明するフローチャート、図15は第4の実施形態の遅延時間測定装置を説明するブロック図、図16は第4の実施形態の遅延時間測定装置の動作を説明する動作波形である。
図15に示すように、第4の実施形態の遅延時間測定装置410は、図9に示した第2の遅延時間測定装置210aの構成と同じように、クロック生成部と、第1のフリップフロップ411(FF1)と、第2のフリップフロップ421(FF2)と、第3のフリップフロップ431(FF3)と、第1の比較部422と、第2の比較部432と、制御部とを有する。なお、クロック生成部と制御部は図示されていない。制御部は、第2のフリップフロップ421の入力D2、第1の比較記憶部423の出力E2、および第2の制御信号EN2に基づいて第2のフリップフロップ421に保持された値を修正する第1の自己修正部425と、第3のフリップフロップ431の入力D3、第2の比較記憶部433の出力E3、および第1の制御信号EN1に基づいて第3のフリップフロップ431に保持された値を修正する第2の自己修正部435とを備える。
第1の自己修正部425は、第1の比較記憶部423の出力E2と制御信号EN2とを入力とする第1のAND回路と、第1のAND回路の出力と、第1のフリップフロップ411の出力Q1とを入力とする第2のAND回路と、第1のAND回路の出力と、第1のフリップフロップ411の出力Q1をNOT回路で反転させたものを入力とする第3のAND回路とを有する。
図14を参照すると、図14に示したフローチャートは、図13に示したフローチャートのS3161とS317に相当するS4161とS417との間にS4163が、S3261とS327に相当するS4261とS427との間にS4263が挿入されたフローチャートである。
S415で第1の初期値に基づいた第1の期待値が第2のフリップフロップ421に保持されたか否かを判定した結果が否であった場合、第1の初期値に基づいた第1の期待値(正常動作したときに期待されるQ2の値)を第2のフリップフロップ421に保持させる(S4163)。更に、S417で第1の期待値が第2のフリップフロップ421に保持されるときの第1の設定時間t12の最大値を求めたかを判定した結果が否であった場合、S410をとばしてS411に戻る。
同様に、S425で第2の初期値に基づいた第2の期待値が第3のフリップフロップに保持されたか否かを判定した結果が否であった場合、第2の初期値に基づいた第2の期待値(正常動作したときに期待されるQ3の値)を第3のフリップフロップ431に保持させる(S4263)。更に、S427で第2の期待値が第3のフリップフロップに保持されるときの第2の設定時間t21の最大値を求めたかを判定した結果が否であった場合、S420をとばしてS421に戻る。
図16にシフトの誤動作の一例を示す。なお、1−1から1−4までの動作波形は図11の同一符号に示す動作波形と同一であるので説明を省略する。
第1の比較記憶部423の出力E2が論理0から論理1に変化したことにより第2のフリップフロップ421の入力D2の値である論理1の否定を第1の期待値として、CLR2を論理1に変化させ(1−5)、第2のフリップフロップ421を非同期的にクリアする(1−6)。この処理により、シフトの誤動作が起きても第2のフリップフロップ421が期待値(論理0)を保持するように修正される。その後、第1の比較部422の出力C2は論理0に戻り(1−7)、第2の制御信号EN2が論理0になると、CLR2が論理0に戻る(1−8)。
一方、第2のフリップフロップ421の入力D2が論理0の場合、論理0の否定を第1の期待値として、PRE2を論理1に変化させ、第2のフリップフロップ421を非同期的にプリセットする。この処理により、シフトの誤動作が起きても第2のフリップフロップ421が期待値(論理1)を保持するように修正される。その後、第1の比較部422の出力C2は論理0に戻り、第2の制御信号EN2が論理0になると、PRE2が論理0に戻る(本動作は不図示)。
第4の実施形態によれば、期待値との比較に基づいて期待値が保持されていない場合は期待値を保持させる処理を行い、初期値の再設定をすることなくクロックを供給することができ、遅延時間測定処理を簡略化できる効果がある。
〔第5の実施形態〕
次に、本発明の第5の実施形態の遅延時間測定装置及び遅延時間測定方法を図17、図18を用いて説明する。本実施形態の遅延時間測定装置は、所定回数の計測結果を保持し、出力することを特徴とする。
図17は第5の実施形態の遅延時間測定方法を説明するフローチャート、図18は第5の実施形態の遅延時間測定装置を説明するブロック図である。
図18に示すように、第5の実施形態の遅延時間測定装置は、図15に示した第4の遅延時間測定装置410の構成と同じように、クロック生成部と、第1のフリップフロップ511(FF1)と、第2のフリップフロップ521(FF2)と、第3のフリップフロップ531(FF3)と、第1の比較部522と、第2の比較部532と、制御部とを有する。なお、クロック生成部と制御部は図示されていない。制御部は、第1の比較記憶部523の出力E2を入力とする第1の計測部526と、第2の比較記憶部533の出力E3を入力とする第2の計測部526とを備える。
図17を参照して、説明する。なお、S510からS512、S520からS522は、図5のフローチャートのS210からS212及びS220からS252同一であるため、これらの説明を省略する。
S518で第1の初期値に基づいた第1の期待値が第2のフリップフロップ521に保持されたか否かを第1の計測結果として第1の計測部526で計測する。
次に、S519で所定回数計測したか否かを判別し、否であればS510へ戻り計測を繰り返す。肯である場合は次のS520へ進む。
同様に、S528で第2の初期値に基づいた第2の期待値が第3のフリップフロップ531に保持されたか否かを第2の計測結果として第2の計測部536で計測する。
次に、S529で所定回数計測したか否かを判別し、否であればS520へ戻り計測を繰り返す。肯である場合は次のS533へ進む。
最後に、第1の計測部526で計測した第1の計測結果を出力するS533と第2の計測部536で計測した第2の計測結果を出力するS534と行う。
第5の実施形態によれば、所定回数の計測結果を保持し、出力することができる。このため、多数回の遅延時間を測定し、統計的解析を行って遅延時間測定する処理を簡略化できる効果がある。
第1の形態の拡張として述べたように、他の形態においてもフリップフロップ数を4以上に拡張してもよい。このようにすると、Nパスの遅延時間測定に必要なフリップフロップ数はN+1個になる。
また、第1の形態の変形形態として述べたように、他の形態においても最終段のフリップフロップの出力を初段のフリップフロップの入力とする環状構造としてもよい。このようにすると、Nパスの遅延時間測定に必要なフリップフロップ数はN個になる。
本発明は上記実施形態に限定されることなく、特許請求の範囲に記載した発明の範囲内で、種々の変形が可能であり、それらも本発明の範囲内に含まれるものであることはいうまでもない。
上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下には限られない。
(付記1)第1のクロックと第2のクロックとを出力するクロック生成部と、前記第1のクロックのエッジに同期して第1の信号を出力する第1のフリップフロップと、前記第1の信号を入力とし、前記第2のクロックのエッジに同期して第2の信号を出力する第2のフリップフロップと、前記第2の信号を入力とし、前記第1のクロックのエッジに同期して第3の信号を出力する第3のフリップフロップと、前記第1のクロックの第1のエッジが生成された時から前記第2のクロックの第1のエッジが発生されるまでの第1の設定時間と、記第2のクロックの第2のエッジが生成された時から前記第1のクロックの第2のエッジが生成されるまでの第2の設定時間とを制御する制御部と、を有し、前記クロック生成部は、前記第1の設定時間に基づいて第2のクロックの第1のエッジを生成し、さらに、前記第2の設定時間に基づいて第1のクロックの第2のエッジを生成し、前記制御部は、前記第1の設定時間を変更し、その変更に応じて変化する前記第2の信号の結果に基づいて第1の遅延の時間を測定し、前記制御部は、前記第2の設定時間を変更し、その変更に応じて変化する前記第3の信号の結果に基づいて、前記第2の遅延の時間を測定する付記1に記載の遅延時間測定装置。
(付記2)前記制御部は、前記第2のクロックの前記第1のエッジが発生した後の前記第2のフリップフロップが出力する前記第2の信号が第1の期待値と一致するか否かを判別する第1の比較部と、前記第1のクロックの前記第2のエッジが発生した後の前記第3のフリップフロップが出力する前記第3の信号が第2の期待値と一致するか否かを判別する第2の比較部とを有する付記1に記載の遅延時間測定装置。
(付記3)前記制御部は、前記第1の比較部が判別した結果を記憶する第1の比較記憶部と、前記第2の比較部が判別した結果を記憶する第2の比較記憶部と、を有し、前記第1の比較記憶部及び前記第2の比較記憶部は、前記第1のクロック又は前記第2のクロックに同期して比較結果を出力する付記2に記載の遅延時間測定装置。
(付記4)前記制御部は、前記第1の比較部が判別した結果を記憶し、スキャン可能な第1のスキャン可能な比較記憶部と、前記第2の比較部が判別した結果を記憶し、スキャン可能な第2のスキャン可能な比較記憶部と、前記第1のスキャン可能な比較部と、前記第2のスキャン可能な比較部とに接続されたスキャン制御信号を有し、単一の出力から、前記第1のスキャン可能な比較記憶部に記憶された値と前記第2のスキャン可能な比較記憶部に記憶された値とが読み出される付記2に記載の遅延時間測定装置。
(付記5)前記制御部は、前記第2のクロックの前記第1のエッジが発生した後の前記第2のフリップフロップが出力する前記第2の信号が前記第1の期待値と一致するか否かを判別し、一致しない場合は前記第1の期待値を前記第2のフリップフロップに保持させる第1の自己修正部と、前記第1のクロックの前記第2のエッジが発生した後の前記第3のフリップフロップが出力する前記3の信号が前記第2の期待値と一致するか否かを判別し、一致しない場合は前記第2の期待値を前記第3のフリップフロップに保持させる第2の自己修正部とを有する付記2から4のいずれかに記載の遅延時間測定装置。
(付記6)前記制御部は、前記第2のクロックの前記第1のエッジによって前記第1の期待値が前記第2のフリップフロップに保持されたか否かを複数回計測した結果を第1の計測結果として保持する第1の計測部と、前記第1のクロックの前記第2のエッジによって前記第2の期待値が前記第3のフリップフロップに保持されたか否かを複数回計測した結果を第2の計測結果として保持する第2の計測部とを有する付記5に記載の遅延時間測定装置。
(付記7)前記第3の信号を前記第1のフリップフロップの入力とし、前記制御部は、前記第1のクロックの第3のエッジが生成された時から前記第2のクロックの第3のエッジが発生されるまでの第3の設定時間を制御し、前記第3の設定時間を変更し、その変更に応じて変化する前記第1の信号の結果に基づいて第3の遅延の時間を測定する付記1から6に記載の遅延時間測定装置。
(付記8)第1のフリップフロップに前記第1のクロックの前記第1のエッジを入力し、前記第1のクロックの前記第1のエッジに同期して前記第1のフリップフロップが第1の信号を出力するステップと、前記第1のフリップフロップに前記第1のクロックの前記第1のエッジが入力されてから、第1のクロックの第1のエッジが発生した時から第2のクロックの第1のエッジが発生する時までの第1の設定時間後に、前記第1の信号を入力とする第2のフリップフロップに第2のクロックの第1のエッジを入力し、前記第2のフリップフロップが前記第2のクロックのエッジに同期して第2の信号を出力するステップと、前記第1の設定時間を変更し、その変更に応じて変化する前記第2の信号の結果に基づいて第1の遅延の時間を測定するステップと、前記第2のフリップフロップに、前記第2のクロックの前記第2のエッジを入力し、前記第2のクロックの前記第2のエッジに同期して前記第2のフリップフロップが第2の信号を出力するステップと、前記第2のフリップフロップに前記第2のクロックの前記第2のエッジが入力されてから、前記第2のクロックの第2のエッジが発生した時から前記第1のクロックの第2のエッジが発生する時までの第2の設定時間後に、前記第2の信号を入力とする第3のフリップフロップに前記第1のクロックの第2のエッジを入力し、前記第3のフリップフロップが前記第1のクロックの第2のエッジに同期して第3の信号を出力するステップと、前記第2の設定時間を変更し、その変更に応じて変化する前記第3の信号の結果に基づいて、第2の遅延の時間を測定する遅延時間測定方法。
(付記9)前記第1のフリップフロップの入力および前記第1のフリップフロップのそれぞれに第1の初期値を設定するステップと、前記第2のクロックの前記第1のエッジによって前記第1の初期値に基づく第1の期待値が前記第2のフリップフロップに保持されて前記第2の信号が変化したか否か、および前記第1の設定時間に基づいて、前記第1の遅延時間を求めるステップと、前記第2のフリップフロップの入力および前記第2のフリップフロップのそれぞれに第2の初期値を設定するステップと、前記第1のクロックの前記第2のエッジによって前記第2の初期値に基づく第2の期待値が前記第3のフリップフロップに保持されて前記第3の信号が変化したか否か、および前記第2の設定時間に基づいて、前記第2の遅延時間を求めるステップとを有する付記8に記載の遅延時間測定方法。
(付記10)前記第2のクロックの前記第1のエッジによって前記第1の期待値が前記第2のフリップフロップに保持されて前記第2の信号が変化したか否かに基づいて前記第1の設定時間を変化させるステップと、前記第1の期待値が前記第2のフリップフロップに保持されるときの前記第1の設定時間の最大値に基づいて、前記第1の遅延時間を求めるステップと、前記第1のクロックの前記第2のエッジによって前記第2の期待値が前記第3のフリップフロップに保持されて前記第3の信号が変化したか否かに基づいて前記第2の設定時間を変化させるステップと、前記第2の期待値が前記第3のフリップフロップに保持されるときの前記第2の設定時間の最大値に基づいて、前記第2の遅延時間を求めるステップとを有する付記9に記載の遅延時間測定方法。
(付記11)前記第2のクロックの前記第1のエッジによって前記第1の期待値が前記第2のフリップフロップに保持されなかった場合、前記第1の期待値を前記第2のフリップフロップに保持させるステップと、前記第1のクロックの前記第2のエッジによって前記第2の期待値が前記第3のフリップフロップに保持されなかった場合、前記第2の期待値を前記第3のフリップフロップに保持させるステップとを備えることを特徴とする付記10に記載の遅延時間測定方法。
(付記12)前記第2のクロックの前記第1のエッジによって前記第1の期待値が前記第2のフリップフロップに保持されたか否かを複数回計測した結果を第1の計測結果として保持するステップと、前記第1のクロックの前記第2のエッジによって前記第2の期待値が前記第3のフリップフロップに保持されたか否かを複数回計測した結果を第2の計測結果として保持するステップとを備えることを特徴とする付記11に記載の遅延時間測定方法。
110、210、210a、210b、410、510、610 遅延時間測定装置
111、211、411、511、611 第1のフリップフロップ
121、221、421、521、621 第2のフリップフロップ
131、231、431、531 第3のフリップフロップ
140 クロック生成部
150 制御部
222、422、522 第1の比較部
223、423、523 第1の比較記憶部
224 第1のスキャン可能な比較記憶部
232、432、532 第2の比較部
233、433、533 第2の比較記憶部
234 第2のスキャン可能な比較記憶部
425 第1の自己修正部
435 第2の自己修正部
526 第1の計測部
536 第2の計測部

Claims (10)

  1. 第1のクロックと第2のクロックとを出力するクロック生成部と、
    前記第1のクロックのエッジに同期して第1の信号を出力する第1のフリップフロップと、
    前記第1の信号を入力とし、前記第2のクロックのエッジに同期して第2の信号を出力する第2のフリップフロップと、
    前記第2の信号を入力とし、前記第1のクロックのエッジに同期して第3の信号を出力する第3のフリップフロップと、
    前記第1のクロックの第1のエッジが生成された時から前記第2のクロックの第1のエッジが発生されるまでの第1の設定時間と、記第2のクロックの第2のエッジが生成された時から前記第1のクロックの第2のエッジが生成されるまでの第2の設定時間とを制御する制御部と、を有し、
    前記クロック生成部は、前記第1の設定時間に基づいて第2のクロックの第1のエッジを生成し、さらに、前記第2の設定時間に基づいて第1のクロックの第2のエッジを生成し、
    前記制御部は、前記第1の設定時間を変更し、その変更に応じて変化する前記第2の信号の結果に基づいて第1の遅延の時間を測定し、
    前記制御部は、前記第2の設定時間を変更し、その変更に応じて変化する前記第3の信号の結果に基づいて第2の遅延の時間を測定する遅延時間測定装置。
  2. 前記制御部は、前記第2のクロックの前記第1のエッジが発生した後の前記第2のフリップフロップが出力する前記第2の信号が第1の期待値と一致するか否かを判別する第1の比較部と、前記第1のクロックの前記第2のエッジが発生した後の前記第3のフリップフロップが出力する前記第3の信号が第2の期待値と一致するか否かを判別する第2の比較部とを有する請求項1に記載の遅延時間測定装置。
  3. 前記制御部は、前記第1の比較部が判別した結果を記憶する第1の比較記憶部と、前記第2の比較部が判別した結果を記憶する第2の比較記憶部と、を有し、
    前記第1の比較記憶部及び前記第2の比較記憶部は、前記第1のクロック又は前記第2のクロックに同期して比較結果を出力する請求項2に記載の遅延時間測定装置。
  4. 前記制御部は、前記第2のクロックの前記第1のエッジが発生した後の前記第2のフリップフロップが出力する前記第2の信号が前記第1の期待値と一致するか否かを判別し、一致しない場合は前記第1の期待値を前記第2のフリップフロップに保持させる第1の自己修正部と、前記第1のクロックの前記第2のエッジが発生した後の前記第3のフリップフロップが出力する前記3の信号が前記第2の期待値と一致するか否かを判別し、一致しない場合は前記第2の期待値を前記第3のフリップフロップに保持させる第2の自己修正部とを有する請求項2または3記載の遅延時間測定装置。
  5. 前記制御部は、前記第2のクロックの前記第1のエッジによって前記第1の期待値が前記第2のフリップフロップに保持されたか否かを複数回計測した結果を第1の計測結果として保持する第1の計測部と、前記第1のクロックの前記第2のエッジによって前記第2の期待値が前記第3のフリップフロップに保持されたか否かを複数回計測した結果を第2の計測結果として保持する第2の計測部とを有する請求項4に記載の遅延時間測定装置。
  6. 前記第3の信号を前記第1のフリップフロップの入力とし、
    前記制御部は、前記第1のクロックの第3のエッジが生成された時から前記第2のクロックの第3のエッジが発生されるまでの第3の設定時間を制御し、前記第3の設定時間を変更し、その変更に応じて変化する前記第1の信号の結果に基づいて第3の遅延の時間を測定する請求項1から5に記載の遅延時間測定装置。
  7. 第1のフリップフロップに前記第1のクロックの前記第1のエッジを入力し、前記第1のクロックの前記第1のエッジに同期して前記第1のフリップフロップが第1の信号を出力するステップと、
    前記第1のフリップフロップに前記第1のクロックの前記第1のエッジが入力されてから、第1のクロックの第1のエッジが発生した時から第2のクロックの第1のエッジが発生する時までの第1の設定時間後に、前記第1の信号を入力とする第2のフリップフロップに第2のクロックの第1のエッジを入力し、前記第2のフリップフロップが前記第2のクロックの第1のエッジに同期して第2の信号を出力するステップと、
    前記第1の設定時間を変更し、その変更に応じて変化する前記第2の信号の結果に基づいて第1の遅延の時間を測定するステップと、
    前記第2のフリップフロップに、前記第2のクロックの前記第2のエッジを入力し、前記第2のクロックの前記第2のエッジに同期して前記第2のフリップフロップが第2の信号を出力するステップと、
    前記第2のフリップフロップに前記第2のクロックの前記第2のエッジが入力されてから、前記第2のクロックの第2のエッジが発生した時から前記第1のクロックの第2のエッジが発生する時までの第2の設定時間後に、前記第2の信号を入力とする第3のフリップフロップに前記第1のクロックの第2のエッジを入力し、前記第3のフリップフロップが前記第1のクロックの第2のエッジに同期して第3の信号を出力するステップと、
    前記第2の設定時間を変更し、その変更に応じて変化する前記第3の信号の結果に基づいて、第2の遅延の時間を測定する遅延時間測定方法。
  8. 前記第1のフリップフロップの入力および前記第1のフリップフロップのそれぞれに第1の初期値を設定するステップと、
    前記第2のクロックの前記第1のエッジによって前記第1の初期値に基づく第1の期待値が前記第2のフリップフロップに保持されたか否か、および前記第1の設定時間に基づいて、前記第1の遅延時間を求めるステップと、
    前記第2のフリップフロップの入力および前記第2のフリップフロップのそれぞれに第2の初期値を設定するステップと、
    前記第1のクロックの前記第2のエッジによって前記第2の初期値に基づく第2の期待値が前記第3のフリップフロップに保持されたか否か、および前記第2の設定時間に基づいて、前記第2の遅延時間を求めるステップとを有する請求項7に記載の遅延時間測定方法。
  9. 前記第2のクロックの前記第1のエッジによって前記第1の期待値が前記第2のフリップフロップに保持されたか否かに基づいて前記第1の設定時間を変化させるステップと、
    前記第1の期待値が前記第2のフリップフロップに保持されるときの前記第1の設定時間の最大値に基づいて、前記第1の遅延時間を求めるステップと、
    前記第1のクロックの前記第2のエッジによって前記第2の期待値が前記第3のフリップフロップに保持されたか否かに基づいて前記第2の設定時間を変化させるステップと、
    前記第2の期待値が前記第3のフリップフロップに保持されるときの前記第2の設定時間の最大値に基づいて、前記第2の遅延時間を求めるステップとを有する請求項8に記載の遅延時間測定方法。
  10. 前記第2のクロックの前記第1のエッジによって前記第1の期待値が前記第2のフリップフロップに保持されなかった場合、前記第1の期待値を前記第2のフリップフロップに保持させるステップと、
    前記第1のクロックの前記第2のエッジによって前記第2の期待値が前記第3のフリップフロップに保持されなかった場合、前記第2の期待値を前記第3のフリップフロップに保持させるステップとを備えることを特徴とする請求項9に記載の遅延時間測定方法。
JP2010275292A 2010-12-10 2010-12-10 遅延時間測定装置および遅延時間測定方法 Expired - Fee Related JP5621566B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010275292A JP5621566B2 (ja) 2010-12-10 2010-12-10 遅延時間測定装置および遅延時間測定方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010275292A JP5621566B2 (ja) 2010-12-10 2010-12-10 遅延時間測定装置および遅延時間測定方法

Publications (2)

Publication Number Publication Date
JP2012122916A true JP2012122916A (ja) 2012-06-28
JP5621566B2 JP5621566B2 (ja) 2014-11-12

Family

ID=46504491

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010275292A Expired - Fee Related JP5621566B2 (ja) 2010-12-10 2010-12-10 遅延時間測定装置および遅延時間測定方法

Country Status (1)

Country Link
JP (1) JP5621566B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180006227A (ko) * 2016-07-08 2018-01-17 삼성전자주식회사 클락 지터 측정 회로 및 이를 포함하는 반도체 장치
KR102198916B1 (ko) * 2019-12-16 2021-01-05 연세대학교 산학협력단 반도체 테스트를 위한 신호 지연 측정 장치 및 그를 이용한 테스트 장치

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08313597A (ja) * 1995-05-24 1996-11-29 Nec Corp スキャンテスト回路およびそれを含む半導体集積回路装 置
US5642362A (en) * 1994-07-20 1997-06-24 International Business Machines Corporation Scan-based delay tests having enhanced test vector pattern generation
WO2006041059A1 (ja) * 2004-10-12 2006-04-20 Advantest Corporation 試験装置、試験方法、および電子デバイス
JP2006520952A (ja) * 2003-03-20 2006-09-14 アーム・リミテッド 集積回路の処理ステージ内のエラー検出、及び回復
JP2008042367A (ja) * 2006-08-03 2008-02-21 Renesas Technology Corp 半導体装置
JP2008051804A (ja) * 2006-06-27 2008-03-06 Silicon Image Inc プログラム可能テストクロックコントローラを使用した電子回路のスキャンベーステスト用に構成可能なテストクロックを生成するためのテストクロック制御構造

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5642362A (en) * 1994-07-20 1997-06-24 International Business Machines Corporation Scan-based delay tests having enhanced test vector pattern generation
JPH08313597A (ja) * 1995-05-24 1996-11-29 Nec Corp スキャンテスト回路およびそれを含む半導体集積回路装 置
JP2006520952A (ja) * 2003-03-20 2006-09-14 アーム・リミテッド 集積回路の処理ステージ内のエラー検出、及び回復
WO2006041059A1 (ja) * 2004-10-12 2006-04-20 Advantest Corporation 試験装置、試験方法、および電子デバイス
JP2008051804A (ja) * 2006-06-27 2008-03-06 Silicon Image Inc プログラム可能テストクロックコントローラを使用した電子回路のスキャンベーステスト用に構成可能なテストクロックを生成するためのテストクロック制御構造
JP2008042367A (ja) * 2006-08-03 2008-02-21 Renesas Technology Corp 半導体装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180006227A (ko) * 2016-07-08 2018-01-17 삼성전자주식회사 클락 지터 측정 회로 및 이를 포함하는 반도체 장치
KR102546302B1 (ko) 2016-07-08 2023-06-21 삼성전자주식회사 클락 지터 측정 회로 및 이를 포함하는 반도체 장치
KR102198916B1 (ko) * 2019-12-16 2021-01-05 연세대학교 산학협력단 반도체 테스트를 위한 신호 지연 측정 장치 및 그를 이용한 테스트 장치

Also Published As

Publication number Publication date
JP5621566B2 (ja) 2014-11-12

Similar Documents

Publication Publication Date Title
JP6424271B2 (ja) 半導体装置
JP2010197291A (ja) 半導体装置、並びに半導体装置の設計方法、設計装置、および故障検出方法
JP2008064752A (ja) Pd−soiテクノロジにおけるスイッチング遅延ヒストリ効果のインライン計測の方法及び装置
JP5621566B2 (ja) 遅延時間測定装置および遅延時間測定方法
KR20060109281A (ko) Lsi의 테스트 방법
JP4541196B2 (ja) 故障検出改善装置、故障検出改善プログラム、故障検出改善方法
JP2010134979A (ja) 演算処理装置および記憶装置用試験装置の制御方法
US8290734B2 (en) Semiconductor integrated circuit
CN101320077B (zh) 一种用于集成电路测试的简便方法及其测试电路
JPWO2008075702A1 (ja) 信号測定装置および信号測定方法
JP4263810B2 (ja) 半導体メモリ試験装置及び試験方法
JP2008058098A (ja) 半導体集積回路
WO2014038173A1 (ja) Ad変換器及び受信装置
US8536887B2 (en) Probe circuit, multi-probe circuit, test apparatus, and electric device
JP2006073917A (ja) 集積回路
JP2011112407A (ja) テスタ用テストパタン生成方法、テスタ用テストパタン生成プログラム、及びテスタ用テストパタン生成装置
JP2009002868A (ja) テスト装置、パタン生成装置、テスト方法、及びパタン生成方法
JP2008287813A (ja) Ic試験装置
JP5426933B2 (ja) 半導体集積装置の故障検出方法
JP4640077B2 (ja) 検査信号生成装置及び半導体検査装置
JP2009288011A (ja) 半導体装置
JP5146254B2 (ja) データ転送システムおよびlsiテスタ
JP2010286241A (ja) 半導体試験装置
JPWO2009066764A1 (ja) 半導体集積回路装置及びそのテスト方法
JP2009276321A (ja) テストパターン生成装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20131114

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140529

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140610

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140801

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: 20140826

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20140908

R150 Certificate of patent or registration of utility model

Ref document number: 5621566

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees