JP2014202532A - ラッチ回路、スキャンテスト対象回路、半導体集積回路、及びラッチ回路の制御方法 - Google Patents

ラッチ回路、スキャンテスト対象回路、半導体集積回路、及びラッチ回路の制御方法 Download PDF

Info

Publication number
JP2014202532A
JP2014202532A JP2013077055A JP2013077055A JP2014202532A JP 2014202532 A JP2014202532 A JP 2014202532A JP 2013077055 A JP2013077055 A JP 2013077055A JP 2013077055 A JP2013077055 A JP 2013077055A JP 2014202532 A JP2014202532 A JP 2014202532A
Authority
JP
Japan
Prior art keywords
latch
data
circuit
input
scan
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
JP2013077055A
Other languages
English (en)
Inventor
五美 杉山
Itsumi Sugiyama
五美 杉山
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
Priority to JP2013077055A priority Critical patent/JP2014202532A/ja
Priority to US14/225,620 priority patent/US20140298126A1/en
Publication of JP2014202532A publication Critical patent/JP2014202532A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03KPULSE TECHNIQUE
    • H03K3/00Circuits for generating electric pulses; Monostable, bistable or multistable circuits
    • H03K3/02Generators characterised by the type of circuit or by the means used for producing pulses
    • H03K3/027Generators characterised by the type of circuit or by the means used for producing pulses by the use of logic circuits, with internal or external positive feedback
    • H03K3/037Bistable circuits
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318533Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
    • G01R31/318541Scan latches or cell details

Landscapes

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

Abstract

【課題】ラッチ回路を異なるスキャン方式の何れでも動作可能とする。【解決手段】スキャンチェーンを形成するラッチ回路16のデータラッチ部20は、データSi、Diの保持、及び保持したデータを出力する。ラッチ制御部22には、第1のスキャン方式に対応する第1の動作信号が入力される入力端子、及び第2のスキャン方式に対応する第2の動作信号が入力される入力端子を備える。ラッチ制御部は、第1の動作信号が入力されることで、データラッチ部を第1のスキャン方式で動作させる第1の制御信号をデータラッチ部へ出力し、第2の動作信号が入力されることで、データラッチ部を第2のスキャン方式で動作させる第2の制御信号をデータラッチ部へ出力して、ラッチ回路を第1のスキャン方式又は第2のスキャン方式の何れでも動作させる。【選択図】図2

Description

開示する技術は、ラッチ回路、スキャンテスト対象回路、半導体集積回路、及びラッチ回路の制御方法に関する。
半導体集積回路では、組み込み回路の故障診断等のためにスキャンテスト等が行われる。スキャンテストでは、半導体集積回路内に形成しているラッチ回路及びラッチ回路を含むフリップフロップ回路(以下、総称してラッチ回路とする)等を用いてスキャンテスト対象回路を形成する。
スキャンテストを行う際のスキャン方式には、LSSD(Level Sensitive Scan Design)方式及びMUX‐D方式等がある。半導体集積回路のスキャン方式にLSSD方式を用いるかMUX‐D方式を用いるかは、半導体集積回路に形成したラッチ回路に応じて決定される。例えば、MUX‐D方式が適用されるラッチ回路は、制御信号としてスキャンモード信号及びスキャンクロック信号が用いられる。これに対して、LSSD方式が適用されるラッチ回路は、制御信号としてシステムクロック信号及びシステムクロックとは異なる互いに重ならない2種類のスキャンクロック信号が用いられる。
一方、半導体集積回路を設計する際、予め作成した回路ブロックを流用することで設計の効率化が図られる。予め作成した回路ブロックを用いて設計された半導体集積回路には、MUX‐D方式が適用されるラッチ回路、及びLSSD方式が適用されるラッチ回路が配置されることがある。
ここから、MUX‐D方式及びLSSD方式のラッチ回路が配置された半導体集積回路に対しては、MUX‐D方式の制御信号を適用するスキャンテスト回路と、LSSD方式の制御信号を適用するスキャンテスト回路と、を形成する方法がある。この半導体集積回路では、MUX‐D方式のスキャンテスト回路とLSSD方式のスキャンテスト回路とが独立して動作する。
MUX‐D方式及びLSSD方式のラッチ回路が配置された半導体集積回路に対しては、MUX‐D方式に適用するシステムクロック信号から個別の重なっていない2つのクロック信号を生成するLSSDインターフェイスを用いる方法がある。LSSD記憶素子は、LSSDインターフェイスを介して入力されるクロック信号で動作することで、MUX‐D方式の非LSSD記憶素子と同じスキャンテスト回路内で用いることができる。
特開平11−142477号公報 特表2003−523520号
しかしながら、一つの半導体集積回路内に、異なる2種類のスキャン方式を適用することは、スキャンテストを行うスキャンテスト対象回路の設計が複雑となり半導体集積回路の開発効率の低下を招く、という問題を有している。
開示の技術は、一つの側面として、ラッチ回路を異なるスキャン方式の何れでも動作できるようにすることで半導体集積回路の開発効率の向上を図るものである。
開示の技術は、データラッチ部が、第1の制御信号又は第2の制御信号に基づいて入力されたデータを保持する。ラッチ制御部は、第1のスキャン方式で前記データラッチ部を動作させる第1の動作信号が入力される第1の入力端子、及び第2のスキャン方式で前記データラッチ部を動作させる第2の動作信号が入力される第2の入力端子を備える。
ラッチ制御部は、前記第1の入力端子に所定値が入力され、かつ前記第2の入力端子に前記第2の動作信号が入力された際に、前記第2の制御信号を出力して前記データラッチ部を制御する。また、ラッチ制御部は、前記第2の出力端子に所定値が入力され、かつ前記第1の入力端子に前記第1の動作信号が入力された際に、前記第1の制御信号を出力して前記データラッチ部を制御する。
開示の技術は、一つの側面として、半導体集積回路に形成するスキャンテスト対象回路の設計が容易となる、という効果を有する。
第1の実施形態に係る半導体集積回路の要部の機能ブロック図である。 第1の実施形態に係るラッチ回路のブロック図である。 第1の実施形態に係るラッチ回路のデータラッチ部の一例を示すブロック図である。 第1の実施形態に係るラッチ回路のラッチ制御部の一例を示すブロック図である。 第1の実施形態に係るラッチ回路をLSSD方式で動作させる際の接続の一例を示すブロック図である。 図5におけるラッチの信号を示すブロック図である。 第1の実施形態に係るラッチ回路をMUX‐D方式で動作させる際の接続の一例を示すブロック図である。 図7におけるラッチの信号を示すブロック図である。 第1の実施形態に係るラッチ回路をLSSD方式で動作させる際の接続の他の一例を示すブロック図である。 第1の実施形態に係るラッチ回路をMUX‐D方式で動作させる際の接続の他の一例を示すブロック図である。 第2の実施形態に係る半導体集積回路の要部の機能ブロック図である。 第2の実施形態における信号生成部の一例を示すブロック図である。 図12の信号生成部の動作の一例を示すタイミングチャートである。 第2の実施形態に係るラッチ制御部を用いたスキャンテスト対象回路の一例を示すブロック図である。 第3の実施形態に係る半導体集積回路の要部の機能ブロック図である。 第3の実施形態における信号生成部の一例を示すブロック図である。 図15の信号生成部の動作の一例を示すタイミングチャートである。 第3の実施形態に係るラッチ制御部を用いたスキャンテスト対象回路の一例を示すブロック図である。
以下、図面を参照して開示する技術の実施の形態の一例を詳細に説明する。
〔第1の実施形態〕
図1には、第1の実施形態に係る半導体集積回路10の要部を示す。半導体集積回路10は、第1の実施形態において半導体集積回路の一例として機能する。半導体集積回路10は、大規模半導体集積回路(LSI:Large-Scale Integration circuit)、及び超大規模集積回路(VLSI:Very Large-Scale Integration circuit )が用いられる。また、半導体集積回路10は、VLSIよりも更に高集積化された極超大規模半導体集積回路(ULSI:Ultra VLSI)等を用いて良い。半導体集積回路10には、スキャン試験によって故障の検出が行われる回路素子を含むスキャンテスト対象回路12が形成される。スキャンテスト対象回路12は、第1の実施形態においてスキャンテスト対象回路の一例として機能する。
半導体集積回路10は、複数の組み合わせ回路14が形成されている。また、半導体集積回路10には、複数のラッチ回路16が含まれる。半導体集積装置10は、通常動作する際、ラッチ回路16の各々が例えば記憶素子等として機能する。ラッチ回路16は、入力端子Dinに組み合わせ回路14から出力されるデータDiを保持する。また、各ラッチ回路16は、保持したデータDiを出力端子QdからデータDoとして組み合わせ回路14へ出力する。
半導体集積回路10では、スキャンテスト方式を用いて回路の故障診断等の試験が行われる。スキャンテスト対象回路12では、複数のスキャン試験用のラッチ回路16を用い、トランスミッションゲート等によりラッチ回路16の各々に対する接続を切り替えることによりスキャンチェーンが形成される。ラッチ回路16は、第1の実施形態においてラッチ回路の一例として機能する。
スキャンテスト対象回路12は、スキャンチェーンを形成する複数のラッチ回路16がスキャン試験時にシフトレジスタとして機能する。また、半導体集積回路10には、スキャンテストを実行する際に、スキャンテスト対象回路12の各ラッチ回路16の作動を制御するスキャン制御部18が設けられている。なお、第1の実施形態では、半導体集積回路10にスキャン制御部18を設けて説明するが、これに限らず、半導体集積回路10の外部にスキャン制御部18として機能する試験装置を接続しても良い。ラッチ回路16は、第1の実施形態においてラッチ回路の一例として機能する。
ラッチ回路16は、データDiの入力端子Din、及びスキャンデータSiが入力される入力端子Sinを備える。また、ラッチ回路16は、データDoの出力端子Qd、及びスキャンデータSoを出力する出力端子Qsを備える。データDo、及びスキャンデータSiは、第1の実施形態において第1のデータ及び第2のデータとして機能する。また、データDo及びスキャンデータSoは、第1の実施形態において出力されるデータとして機能する。
スキャンテスト対象回路12では、ラッチ回路16の入力端子Sinが、スキャンチェーンの上流側のラッチ回路16の出力端子Qsに接続され、出力端子Qsがスキャンチェーンの下流側のラッチ回路16の入力端子Sinに接続される。ラッチ回路16は、入力端子Sinに入力されるスキャンデータSiを取り込んで保持する(以下、ラッチとする)。また、ラッチ回路16は、所定のタイミングで保持しているスキャンデータSiを出力端子QsからスキャンデータSoとして後段のラッチ回路16へ出力する。
半導体集積回路10に適用されるスキャンテストの方式には、MUX‐D(multiplexer‐D)方式、及びLSSD(Level-Sensitive Scan Design)方式がある。MUX‐D方式では、ラッチ回路16の動作を制御する制御信号としてシステムクロック信号(以下、クロック信号CLKとする)、及びスキャンモード信号(以下、モード信号SMとする)が用いられる。また、LSSD方式では、ラッチ回路16の動作を制御する制御信号としてクロック信号CLK、及び互いに重ならない2種類のスキャンクロック信号(以下、一方をスキャンクロック信号ACLKとし、他方をスキャンクロック信号BCLKとする)が用いられる。LSSD方式は、第1の実施形態において第1のスキャン方式又は第2のスキャン方式の一方として機能し、MUX‐D方式は、第1の実施形態において第1のスキャン方式又は第2のスキャン方式の他方として機能する。また、モード信号SMは、第1の実施形態において第1の動作信号又は第2の動作信号の一方として機能し、スキャンクロック信号ACLK、BCLKは、第1の実施形態において、第1の動作信号又は第2の動作信号の他方として機能する。
図2には、ラッチ回路16の機能ブロック図を示している。ラッチ回路16は、データラッチ部20及びラッチ制御部22を含む。図3には、ラッチ回路16のデータラッチ部20の一例を示し、図4には、ラッチ回路16のラッチ制御部22の一例を示す。データラッチ部20は、第1の実施形態においてデータラッチ部として機能し、ラッチ制御部22は、第1の実施形態においてラッチ制御部として機能する。
図2及び図3に示すように、データラッチ部20は、入力端子Din、Sin及び出力端子Qを備える。ラッチ回路16は、入力端子DinがデータDiの入力用として用いられ、入力端子SinがスキャンデータSiの入力用として用いられる。また、ラッチ回路16は、出力端子QがデータDoを出力する出力端子Qd、及びスキャンデータSoを出力する出力端子Qsとして用いられる。
データラッチ部20は、第1ラッチ部24、及び第2ラッチ部26を備える。第1ラッチ部は、第1の実施形態において第1ラッチ部として機能し、第2ラッチ部は、第1の実施形態において第2ラッチ部として機能する。
データラッチ部20は、第1ラッチ部24がマスターラッチとして機能し、入力端子Dinから入力されるデータDi、又は入力端子Sinから入力されるスキャンデータSiをラッチする。また、データラッチ部20は、第2ラッチ部26がスレーブラッチとして機能し、第1ラッチ部24がラッチしたデータdi又はスキャンデータSiが入力されることで、入力されたデータDi又はスキャンデータSiをラッチする。ラッチ回路16は、第2ラッチ部26にラッチされたデータDi又はスキャンデータSiを出力端子Qから出力する。従って、データラッチ部20は、一般的ラッチ回路の基本機能を備える。
データラッチ部20には、入力端子Dinと第1ラッチ部24との間にスイッチ部28が形成され、入力端子Sinと第1ラッチ部24との間にスイッチ部30が設けられている。また、データラッチ部20には、第1ラッチ部24と第2ラッチ部26との間にスイッチ部32が設けられている。スイッチ部28は、第1の実施形態において第1のスイッチ部として機能し、スイッチ部30は、第1の実施形態において第2のスイッチ部として機能し、スイッチ部32は、第1の実施形態において第3のスイッチ部として機能する。
スイッチ部28は、操作信号C1により導通・非導通(以下、オン・オフとする)が切替られる。データラッチ部20は、スイッチ部28がオンすることで、入力端子Dinから入力されるデータDiを第1ラッチ部24にラッチする。スイッチ部30は、操作信号C2によりオン・オフが切替られる。データラッチ部20は、スイッチ部30がオンすることで、入力端子Sinから入力されるスキャンデータSiを第1ラッチ部24にラッチする。
スイッチ部32は、操作信号C3によりオン・オフが切替られる。データラッチ部20は、スイッチ部32がオンすることで、第1ラッチ部24にラッチされていたデータDi又はスキャンデータSiを第2ラッチ部26にラッチする。操作信号C1〜C3は、第1の実施形態において第1及び第2の制御信号として機能する。操作信号C1は、第1の実施形態において第1の操作信号及び第4の操作信号として機能し、操作信号C2は、第1の実施形態において第2の操作信号及び第5の操作信号として機能する。また、操作信号S3は、第1の実施形態において第3の操作信号及び第6の操作信号として機能する。
図3に示すように、例えば、第1ラッチ部24は、インバータ回路24A及びインバータ回路24Bを備え、インバータ回路24A、24Bの間でデータDi又はスキャンデータSiをラッチする。なお、第1ラッチ部24は、インバータ回路24A、24BでラッチしているデータDi又はスキャンデータSiを、例えば、インバータ回路24Cを介して出力端子MからデータMoとして出力しても良い。
第2ラッチ部26は、インバータ回路26A及びインバータ回路26Bを備え、インバータ回路26A、26Bの間でデータDi又はスキャンデータSiをラッチする。また、第2ラッチ部26は、インバータ回路26C備え、インバータ26A、26Bの間でラッチしているデータDi又はスキャンデータSiが、インバータ26Cを介して出力端子Qに出力される。
スイッチ部28は、インバータ回路28A及びトランスミッションゲート(以下、TG28Bとする)を含み、スイッチ部30は、インバータ回路30A及びTG(トランスミッションゲート)30Bを含む。TG28Bは、操作信号C1として入力される相補の操作信号+C1、−C1により動作し、TG30Bは、操作信号C2として入力される相補の操作信号+C2、−C2により動作する。この際、TG30Bは、スキャン試験時にオンされて導通状態となる。TG28Bは、通常動作時叉はスキャン試験におけるデータパスを動作させるとき(スキャンシフトの値を設定した後のデータパス活性化時)にオンされて導通状態となる。なお、以下では、正論理の信号を「+」で示し、負論理の信号を「−」で示す。
データラッチ部20の第1ラッチ部24は、TG28Bに入力される操作信号+C1が論理1(+C1=1、以下、Hレベルとする)となることで、入力端子Dinから入力されるデータDiを取り込んでラッチする。また、第1ラッチ部24は、TG30Bに入力される操作信号+C2がHレベル(+C2=1)となることで、入力端子Sinから入力されるスキャンデータSiを取り込んでラッチする。
スイッチ部32は、例えば、クロックトインバータ回路32Aを備える。クロックトインバータ回路32Aは、操作信号C3として入力される相補の操作信号+C3、−C3によりオン・オフ動作する。クロックトインバータ回路32Aは、操作信号+C3がHレベル(+C3=1)となることでオンし、第1ラッチ部24にラッチされているデータDi又はスキャンデータSiを反転して第2ラッチ部26へ入力する。第2ラッチ部24は、クロックトインバータ回路32Aを介して入力されるデータDi又はスキャンデータSiをラッチする。
なお、図3に示すように、ラッチ回路16のデータラッチ部20は、リセット端子Rを備える。データラッチ部20は、リセット端子RがPMOSトランジスタ34のゲートGに接続され、リセット信号−RSTがLレベルとなることで第1ラッチ部24及び第2ラッチ部26がリセットされる。
一方、MUX−D方式のスキャンテストには、ラッチ回路16の動作信号としてクロック信号CLK及びモード信号SMが用いられる。また、LSSD方式のスキャンテストには、ラッチ回路16の動作信号としてクロック信号CLK、スキャンクロック信号ACLK、及びスキャンクロック信号BCLKが用いられる。なお、以下では、クロック信号CLK、スキャンクロック信号ACLK、及びモード信号SMを正論理(+CLK、+ACLK、+SM)で用い、スキャンクロック信号BCLKを負論理(−BCLK)で用いる。
図2に示すように、ラッチ制御部22は、入力端子CK、ACK、BCK、MSを備える。ラッチ回路16は、入力端子CKをクロック信号+CLKの入力用とし、入力端子MSをモード信号+SMの入力用としている。また、ラッチ回路16は、入力端子ACKをスキャンクロック信号+ACLKの入力用とし、入力端子BCKをスキャンクロック信号−BCLKの入力用としている。入力端子CK、ACK、BCK、MSは、第1の実施形態において第1の入力端子及び第2の入力端子として機能する。
ラッチ制御部22は、クロック信号+CLK、モード信号+SM、スキャンクロック信号+ACLK、及びスキャンクロック信号−BCLKとして入力される各信号に基づき、データラッチ部20に対する制御信号として操作信号C1、C2、C3を生成する。また、ラッチ制御部22は、操作信号C1〜C3をデータラッチ部20へ出力して、データラッチ部20の動作を制御する。
図4に示すように、ラッチ制御部22は、インバータ回路36A、36B、36C、36Dを備える。インバータ回路36Aは、クロック信号+CLKに応じたクロック信号−CLKを出力し、インバータ回路36Bは、モード信号+SMに応じたモード信号−SMを出力する。インバータ回路36Cは、スキャンクロック信号+ACLKに応じたスキャンクロック信号−ACLKを出力し、インバータ36回路Dは、スキャンクロック信号−BCLKに応じたスキャンクロック信号+BCLKを出力する。
また、ラッチ制御部22は、操作信号C1(+C1、−C1)を生成するロジック回路38、及び操作信号C2(+C2、−C2)を生成するロジック回路40を含む。また、ラッチ制御部22は、操作信号C3(+C3、−C3)を生成するロジック回路42を含む。
ロジック回路38は、NAND回路38A及びインバータ回路38Bを含み、クロック信号+CLK、及びモード信号−SMから操作信号+C1、−C1を出力する。例えば、ロジック回路38は、操作信号−C1を、−C1=−CLK/+SMとして生成し、操作信号+C1を、+C1=+CLK&−SMとして生成する。なお、以下では、論理和を「/」とし、論理積を「&」として示す。
ロジック回路40は、NAND回路40A、40B、及びインバータ回路40Cを含む。ロジック回路40は、クロック信号+CLK、スキャンクロック信号−ACLK、及びモード信号+SMから操作信号+C2、−C2を出力する。例えば、ロジック回路40は、操作信号+C2を、+C2=+ACLK/(+CLK&+SM)として生成し、操作信号−C2を、−C2=−ACLK/(−CLK&−SM)として生成する。
ロジック回路42は、NAND回路42A、及びインバータ回路42Bを含み、クロック信号−CLK、及びスキャンクロック信号+BCLKから操作信号+C3、−C3を出力する。例えば、ロジック回路42は、操作信号−C3を、−C3=+CLK/−BCLKとして生成し、操作信号+C3を、+C3=−CLK&+BCKとして生成する。
図1に示すように、スキャンテスト対象回路12は、複数のラッチ回路16の各々がスキャン制御部18に接続される。スキャン制御部18は、MUX‐D方式又はLSSD方式の制御信号を出力する。スキャンテスト対象回路12の各ラッチ回路16は、スキャン制御部18から出力する制御信号に基づき、LSSD方式又はMUX‐D方式で動作するように制御される。
図5には、ラッチ回路16をLSSD方式で制御する場合の一例を示す。スキャン制御部18として用いるスキャン制御部18Aは、LSSD方式を用いてスキャンテストを行う。スキャン制御部18Aは、動作信号としてクロック信号+CLK、スキャンクロック信号+ACLK、及びスキャンクロック信号−BCLKを出力する。
スキャン制御部18Aは、クロック信号+CLKの出力用の出力端子CKo、スキャンクロック信号+ACLKの出力用の出力端子ACKo、及びスキャンクロック信号−BCLKの出力用の出力端子BCKoを備える。
また、スキャン制御部18Aは、一例として入力端子Sin、及び出力端子Qsを備える。スキャン制御部18Aは、例えば、出力端子Qsがスキャンチェーンの最前段のラッチ回路16の入力端子Sinに接続され、入力端子Sinがスキャンチェーンの最後段のラッチ回路16の出力端子Qsに接続される。
これにより、スキャンテスト対象回路12では、スキャン制御部18Aから出力されたスキャンデータSoが、複数のラッチ回路16の間で順送りされ、スキャン制御部18Aに戻される。なお、スキャンテスト対象回路12へのスキャンデータSiの入力、及びスキャンテスト対象回路12からのスキャンデータSoの取り込みは、スキャン制御部18Aではなく、半導体集積回路10に接続した試験装置で行うものであっても良い。
ラッチ回路16の各々は、入力端子CKがスキャン制御部18Aの出力端子CKoに接続される。また、ラッチ回路16の各々は、入力端子ACKがスキャン制御部18Aの出力端子ACKoに接続され、入力端子BCKが、スキャン制御部18Aの出力端子BCKoに接続される。
また、ラッチ回路16は、LSSD方式で制御される場合、モード信号+SM用の入力端子MSがLレベル(+SM=0)に保持される。入力端子MSのLレベルは、第1の実施形態において入力端子に所定値を入力するものとして機能する。ラッチ回路16の入力端子MSをLレベルに保持する方法としては、例えば、スキャン制御部18AにLレベルの信号を出力する端子を設け、この端子にラッチ回路16の入力端子MSを接続しても良い。また、入力端子MSをLレベルに保持する方法としては、これらに限らず任意の手法を適用して良い。
これにより、ラッチ回路16には、入力端子MSがLレベルに保持され、かつスキャン制御部18Aから出力されるクロック信号+CLK、及びスキャンクロック信号+ACLK、−BCLKが入力される。
次に、LSSD方式を適用するスキャン制御部18Aに接続されたラッチ回路16の動作を説明する。
ラッチ回路16のラッチ制御部22は、スキャン制御部18Aに接続されることで、クロック信号+CLK、スキャンクロック信号+ACLK、及びスキャンクロック信号−BCLKに基づいてデータラッチ部20の動作を制御する。
図6に示すように、ラッチ制御部22には、モード信号+SMがLレベル(+SM=0)に保持された状態で、クロック信号CLK、スキャンクロック信号+ACLK、及びスキャンクロック信号−BCLKが入力される。ラッチ制御部22は、クロック信号+CLK、モード信号+SM、及びスキャンクロック信号+ACLK、−BCLKに基づき、操作信号C1〜C3として、操作信号Ca1〜Ca3を出力する。操作信号Ca1(+Ca1、−Ca1)は、第1の実施形態において第1の操作信号又は第4の操作信号の一方として機能し、操作信号Ca2(+Ca2、−Ca2)は、第1の実施形態において第2の操作信号又は第5の操作信号の一方として機能する。また、操作信号Ca3(+Ca3、−Ca3)は、第1の実施形態において第3の操作信号又は第6の操作信号の一方として機能する。
ラッチ制御部22は、ロジック回路38から出力する操作信号+Ca1、−Ca1が、+Ca1=+CLK、−Ca1=−CLKとなる。また、ラッチ制御部22は、ロジック回路40から出力する操作信号+Ca2、−Ca2が、+Ca2=+ACLK、−Ca2=−ACLKとなる。さらに、ラッチ制御部22は、ロジック回路42から出力する操作信号+Ca3、−Ca3が、−Ca3=+CLK/−BCLK、+Ca3=−CLK&+BCLKとなる。
ここで、ラッチ回路16は、スキャンクロック信号+ACLKがHレベル(+ACLK=1)となることで、操作信号+Ca2=1、−Ca2=0となる。データラッチ部20は、操作信号+Ca2=1、−Ca2=0となることでTG30Bがオンし、入力端子SinからスキャンデータSiを取り込んで第1ラッチ部24にラッチする。
また、ラッチ回路16は、クロック信号−CLKがHレベル(−CLK=1)、及びスキャンクロック信号+BCLKがHレベル(+BCLK=1)となることで、操作信号+Ca3がHレベル(+Ca3=1、−Ca3=0)となる。データラッチ部20は、操作信号+Ca3=1、−Ca3=0となることでクロックトインバータ回路32Aがオンし、第1ラッチ部24のスキャンデータSiを第2ラッチ部26が取り込んでラッチする。
ラッチ回路16は、スキャンデータSiが、データラッチ部20の第2ラッチ部26にラッチされることで、スキャンデータSiが、スキャンデータSoとして出力端子Qsから出力される。
ラッチ回路16は、モード信号+SMが所定値(固定値)である場合、LSSD方式に適用されるクロック信号+CLK、及びスキャンクロック信号+ACLK、−BCLKに基づき、スキャンデータSiのラッチ、及びスキャンデータSoの出力を行う。また、ラッチ回路16は、組み合わせ回路14から出力されるデータDiのラッチ及びデータDoの出力を行う。
図7には、ラッチ回路16をMUX‐D方式で制御する場合の一例を示す。スキャン制御部18として用いるスキャン制御部18Bは、クロック信号+CLKの出力用の出力端子CKo、及びモード信号+SMの出力用の出力端子MSoを備える。スキャン制御部18Bは、ラッチ回路16の動作信号としてクロック信号+CLK及びモード信号+SMを出力し、MUX‐D方式によるスキャンテストを行う。
ラッチ回路16の各々は、入力端子CKが、スキャン制御部18Bの出力端子CKoに接続され、入力端子MSがスキャン制御部18Bの出力端子MSoに接続される。ラッチ回路16は、スキャンクロック信号+ACLK用の入力端子ACK、及びスキャンクロック信号−BCLK用の入力端子BCKの各々がLレベル(+ACLK=0、−BCLK=0)に保持される。入力端子ACK、BCKのLレベルは、第1の実施形態において入力端子に所定値を入力するものとして機能する。
また、スキャン制御部18Bは、例えば、出力端子Qsがスキャンチェーンの最前段のラッチ回路16の入力端子Sinに接続され、入力端子Sinがスキャンチェーンの最後段のラッチ回路16の出力端子Qsに接続される。
次に、MUX‐D方式を適用するスキャン制御部18Bに接続されたラッチ回路16の動作を説明する。
ラッチ回路16のラッチ制御部22は、スキャン制御部18Bに接続されることで、クロック信号+CLK、及びモード信号+SMに基づいてデータラッチ部20の動作を制御する。
図8に示すように、ラッチ制御部22には、スキャンクロック信号+ACLK、−BCLKがLレベル(+ACLK=0、−BCLK=0)に保持された状態で、クロック信号+CLK、及びモード信号+SMが入力される。ラッチ制御部22は、クロック信号+CLK、モード信号+SM、及びスキャンクロック信号+ACLK、−BCLKに基づき、操作信号C1〜C3として、操作信号Cb1〜Cb3を出力する。前記した操作信号Ca1〜Ca3に対し、操作信号Cb1(+Cb1、−Cb1)は、第1の実施形態において第1の操作信号又は第4の操作信号の他方として機能する。また、操作信号Cb2(+Cb2、−Cb2)は、第1の実施形態において第2の操作信号又は第5の操作信号の他方として機能し、操作信号Cb3(+Cb3、−Cb3)は、第1の実施形態において第3の操作信号又は第6の操作信号の他方として機能する。
ラッチ制御部22は、ロジック回路38から出力する操作信号+Cb1、−Cb1が、−Cb1=−CK/+SM、+Cb1=+CLK&−SMとなる。また、ラッチ制御部22は、ロジック回路40から出力する操作信号+Cb2、−Cb2が、−Cb2=−CLK/−SM、+Cb2=+CLK&+SMとなる。さらに、ラッチ制御部22は、ロジック回路42から出力する操作信号+Cb3、−Cb3が、+Cb3=−CLK、−Cb3=+CLKとなる。
ラッチ回路16は、クロック信号+CLKがHレベル(+CLK=1)、及びモード信号+SMがLレベル(モード信号−SMがHレベル)となることで、操作信号+Cb1=1、−Cb1=0となる。データラッチ部20は、操作信号+Cb1=1、−Cb1=0となることでTG28Bがオンし、入力端子DinからデータDiを取り込んで第1ラッチ部24にラッチする。
この後、ラッチ制御部22は、クロック信号+CLKがLレベル(クロック信号−CLKがHレベル)となることで、操作信号+Cb3=1、−Cb3=0となる。データラッチ部20は、操作信号+Cb3=1、−Cb3=0となることでクロックトインバータ会回路32Aがオンし、第1ラッチ部24のデータDiが第2ラッチ部26にラッチされる。また、ラッチ回路16は、データラッチ部20の第2ラッチ部26にラッチされたデータDiをデータDoとして出力端子Qdから出力する。
また、ラッチ回路16は、クロック信号+CLKがHレベル(+CLK=1)、及びモード信号+SMがHレベルとなることで、操作信号+Cb2=1、−Cb1=0となる。データラッチ部20は、操作信号+Cb2=1、−Cb2=0となることでTG30Bがオンし、入力端子SinからスキャンデータSiを取り込んで第1ラッチ部24にラッチする。
この後、ラッチ制御部18Bは、クロック信号+CLKがLレベル(クロック信号−CLKがHレベル)となることで、操作信号+Cb3=1、−Cb3=0となる。データラッチ部20は、操作信号+Cb3=1、−Cb3=0となることでクロックトインバータ回路32Aがオンし、第1ラッチ部24のスキャンデータSiが、第2ラッチ部26にラッチされる。ラッチ回路16は、データラッチ部20の第2ラッチ部24にラッチされたスキャンデータSiを、スキャンデータSoとして出力端子Qsから出力する。
このように、ラッチ回路16は、スキャンクロック信号+ACLK、−BCLKを所定値である場合、MUX‐D方式に適用されるクロック信号+CLK、及びモード信号+SMに基づき、スキャンデータSiのラッチ、及びスキャンデータSoの出力を行う。また、ラッチ回路16は、組み合わせ回路14から出力されるデータDiのラッチ、及びデータDoの出力を行う。
すなわち、ラッチ回路16は、LSSD方式に適用するクロック信号CLK、スキャンクロック信号ACLK、及びスキャンクロック信号BCLKに基づいて、的確に動作する。また、ラッチ回路16は、MUX‐D方式に適用するクロック信号CLK、及びモード信号SMに基づいて的確に動作する。
従って、ラッチ回路16を一つの回路ブロックとして、半導体集積回路10の回路設計に用いることで、半導体集積回路10の設計効率の向上を図ることができる。
ラッチ回路16は、以下に説明するように、MUX‐D方式が適用されるラッチ回路、又はLSSD方式が適用されるラッチ回路と合わせてスキャンチェーンを形成することができる。
図9には、半導体集積回路50を示す。半導体集積回路50には、スキャンテスト対象回路52が形成される。スキャンテスト対象回路52は、ラッチ回路16を含む。また、スキャンテスト対象回路52は、LSSD方式で動作するラッチ回路54を含む。半導体集積回路50においてスキャンテスト対象回路52は、半導体集積回路10のスキャンテスト対象回路12に替えて用いる。また、半導体集積回路50においてスキャンテスト対象回路52は、スキャンテスト対象回路12のラッチ回路16の一部に替えてラッチ回路54を用いる。
ラッチ回路54は、入力端子Din、及び出力端子Qdを備える。ラッチ回路16、54は、入力端子Dinが組み合わせ回路14に接続され、組み合わせ回路14から出力されるデータDiが入力端子Dinに入力される。また、ラッチ回路16、54は、出力端子Qdが組み合わせ回路14に接続され、組み合わせ回路14へデータDoを出力する。
ラッチ回路54は、入力端子CK、ACK、BCKを備える。ラッチ回路54は、入力端子CKに入力されるクロック信号+CLK、入力端子ACKに入力されるスキャンクロック信号+ACLK、及び入力端子BCKに入力されるスキャンクロック信号−BCLKに基づいて動作する。ラッチ回路54は、スキャンクロック信号+ACLKに同期してマスターラッチにスキャンデータSiをラッチする。また、ラッチ回路54は、スキャンクロック信号−BCLKに同期して、スレーブラッチがマスターラッチのスキャンデータSiをラッチし、ラッチしたスキャンデータSiをスキャンデータSoとして出力する。従って、ラッチ回路54は、LSSD方式の制御信号により動作するデータラッチ部として機能する。
スキャンテスト対象回路52は、複数のラッチ回路16及びラッチ回路54によりスキャンチェーンが形成される。ラッチ回路54は、入力端子Sin、及び出力端子Qsを備える。ラッチ回路16、54は、入力端子Sinが前段のラッチ回路16又はラッチ回路54の出力端子Qsに接続され、出力端子Qsが後段のラッチ回路16又はラッチ回路54の入力端子Sinに接続される。
半導体集積回路50は、LSSD方式を適用したスキャン制御部18Aを備える。スキャン制御部18Aの出力端子Qsには、最前段のラッチ回路16又はラッチ回路54(図9では、一例としてラッチ回路16としている)の入力端子Sinが接続される。また、スキャン制御部18Aの入力端子Sinには、最後段のラッチ回路16又はラッチ回路54(図9では、一例としてラッチ回路54としている)の出力端子Qsが接続される。
スキャンテスト対象回路52は、ラッチ回路16、54の各々の入力端子CKがスキャン制御部18Aの出力端子CKoに接続される。また、ラッチ回路16、54の各々は、入力端子ACKがスキャン制御部18Aの出力端子ACKoに接続され、入力端子BCKがスキャン制御部18Aの出力端子BCKoに接続される。また、スキャンテスト対象回路52においては、ラッチ回路16の入力端子MSに論理0(Lレベル)の信号が入力されるように設定される。
これにより、ラッチ回路16、54の各々は、スキャン制御部18Aから入力されるクロック信号+CLK、スキャンクロック信号+ACLK、及びスキャンクロック信号−BCLKに基づいて動作する。
従って、ラッチ回路16は、LSSD方式で動作するラッチ回路54と合わせてスキャンチェーンを形成することで、LSSD方式によるスキャンテストに用いることができる。
図10には、半導体集積回路60を示す。半導体集積回路60には、スキャンテスト対象回路62が形成される。スキャンテスト対象回路62は、ラッチ回路16を含む。また、スキャンテスト対象回路62は、MUX‐D方式で動作するラッチ回路64を含む。半導体集積回路60においてスキャンテスト対象回路62は、半導体集積回路10のスキャンテスト対象回路12に替えて用いる。また、半導体集積回路60においてスキャンテスト対象回路62は、スキャンテスト対象回路12のラッチ回路16の一部に替えてラッチ回路64を用いる。
ラッチ回路64は、組み合わせ回路14のデータDiが入力される入力端子Din、及びデータDoを出力する出力端子Qdを備える。また、ラッチ回路64は、スキャンデータSiの入力用とする入力端子Sin、及びスキャンデータSoの出力用とする出力端子Qsを備える。更に、ラッチ回路64は、クロック信号+CLKの入力用とする入力端子CK、及びモード信号+SMの入力用とする入力端子MSを備える。ラッチ回路64は、入力端子CKに入力されるクロック信号+CLKに同期して動作して、モード信号+SMに応じ、データDiのラッチ又はスキャンデータSiのラッチを行う。従って、ラッチ回路64は、MUX‐D方式の制御信号により動作するデータラッチ部として機能する。
スキャンテスト対象回路62は、複数のラッチ回路16及びラッチ回路64によりスキャンチェーンが形成される。ラッチ回路16、64は、入力端子Sinが前段のラッチ回路16又はラッチ回路64の出力端子Qsに接続され、出力端子Qsが後段のラッチ回路16又はラッチ回路64の入力端子Sinに接続される。
半導体集積回路60は、MUX‐D方式を適用したスキャン制御部18Bを備える。スキャン制御部18Bの出力端子Qsには、例えば、最前段のラッチ回路16又はラッチ回路64(図10では、一例としてラッチ回路16としている)の入力端子Sinが接続される。また、スキャン制御部18Bの入力端子Sinには、最後段のラッチ回路16又はラッチ回路64(図10では、一例としてラッチ回路64としている)の出力端子Qsが接続される。
スキャンテスト対象回路62は、ラッチ回路16、64の各々の入力端子CKがスキャン制御部18Bの出力端子CKoに接続され、ラッチ回路16、64の各々の入力端子MSがスキャン制御部18Bの出力端子MSoに接続される。また、スキャンテスト対象回路62においては、ラッチ回路16の入力端子ACK、BCKに論理0(Lレベル)の信号(スキャンクロック信号+ACLK=0、スキャンクロック信号−BCLK=0)が入力されるように設定される。
これにより、ラッチ回路16、64の各々は、スキャン制御部18Bから入力されるクロック信号+CLK、及びモード信号+SMに基づいて動作する。例えば、ラッチ回路16、64は、クロック信号+CLKに同期して動作し、モード信号+SMに応じて、データDi又はスキャンデータSiをラッチする。また、ラッチ回路16、64は、データDiをラッチすると、次にデータDiを取り込むタイミングで、ラッチしているデータDiを、データDoとして出力端子Qdから出力する。また、ラッチ回路64は、スキャンデータSiをラッチすると、次にスキャンデータSiを取り込むタイミングで、ラッチしているスキャンデータSiをスキャンデータSoとして出力端子Qsから出力する。
従って、ラッチ回路16は、MUX‐D方式で動作するラッチ回路64と合わせてスキャンチェーンを形成することで、MUX‐D方式によるスキャンテストに用いることができる。
〔第2の実施形態〕
次に第2の実施形態を説明する。なお、第2の実施形態において、第1の実施形態と同様の機能部品には、第1の実施形態と同様の符号を付与して説明を省略する。
図11には、第2の実施形態に係る半導体集積回路70を示す。半導体集積回路70は、第2の実施形態において半導体集積回路の一例として機能する。半導体集積回路70には、スキャンテスト対象回路72が形成される。スキャンテスト対象回路72には、ラッチ回路54が用いられ、複数のラッチ回路54によりスキャンチェーンが形成される。
ラッチ回路54は、入力端子Din、Sin、及び出力端子Qを備える。また、ラッチ回路54は、マスターラッチに保持しているデータMoを出力する出力端子Mを備える。ラッチ回路54は、入力端子Din及び出力端子Q、Mが組み合わせ回路14に接続されている。これにより、ラッチ回路54は、入力端子Dinに組み合わせ回路14から出力されるデータDiが入力され、組み合わせ回路14へ出力端子QからデータDoを出力し、出力端子MからデータMoを出力する。
また、ラッチ回路54は、入力端子CKに入力されるクロック信号+CLK、入力端子ACKに入力されるスキャンクロック信号+ACLK、及び入力端子BCLKに入力されるスキャンクロック信号−BCLKによりLSSD方式で動作する。ラッチ回路54は、第2の実施形態においてラッチデータ部として機能する。
なお、ラッチ回路54は、入力端子Rが組み合わせ回路14に接続され、組み合わせ回路14から入力されるリセット信号−RSTによりデータの初期化が行われる。また、第2の実施形態では、一例としてラッチ回路54の入力端子CKが組み合わせ回路14に接続され、組み合わせ回路14から出力されるクロック信号+CLKに同期してラッチ回路54が動作する。
一方、スキャンテスト対象回路72は、ラッチ制御部74を備える。ラッチ制御部74は、ラッチ回路54毎に設けても良く、また、複数のラッチ回路54に対して一つのラッチ制御部74を設けても良い。ラッチ制御部74は、第2の実施形態においてラッチ制御部として機能する。また、ラッチ回路54及びラッチ制御部74は、第2の実施形態においてラッチ回路として機能する。
ラッチ制御部74は、信号生成部76を含む。信号生成部76は、入力端子CK及び入力端子MSを備える。信号生成部76は、出力端子ACKo、BCKoを備える。信号生成部76は、例えば入力端子CKが組み合わせ回路14に接続され、組み合わせ回路14からクロック信号+CLKが入力される。また、信号生成部76は、ラッチ回路54をMUX‐D方式で動作させる際に、入力端子MSにモード信号+SMが入力される。
信号生成部76は、クロック信号+CLK、及びモード信号+SMが入力されることで、クロック信号+CLK、及びモード信号+SMに基づいてスキャンクロック信号+ACLKa、及びスキャンクロック信号−BCLKaを生成する。信号生成部76は、出力端子ACKoからスキャンクロック信号+ACLKaを出力し、出力端子BCKoからスキャンクロック信号−BCLKaを出力する。スキャンクロック信号+ACLKa、−BCLKaは、第2の実施形態において第1の制御信号又は第2の制御信号の一方として機能する。
図12には、信号生成部76の一例を示す。信号生成部76は、AND回路78A、78B、及び遅延回路80を備える。AND回路78Aには、クロック信号+CLK及びモード信号+SMが入力される。AND回路78Aは、クロック信号+CLKとモード信号+SMとの論理積を出力する。
遅延回路80には、AND回路78Aから出力される信号が入力される。遅延回路80は、例えば、複数のインバータ回路80Aがシリアル接続されて形成され、入力された信号を予め設定した時間Δtだけ遅延させ、かつ反転させた遅延信号+Delayを出力する。遅延回路80には、クロック信号+CLKの周期に基づき、スキャンクロック信号+ACLKa及びスキャンクロック信号+BCLKaの時間幅(Hレベルの時間幅)が互いに重ならないように時間Δtが設定される。
AND回路78Bには、AND回路78Aから出力された信号、及び遅延回路80から出力された遅延信号+Delayが入力される。AND回路78Bは、AND回路78Aの出力信号と遅延信号+Delayとの論理積を、スキャンクロック信号+ACLKaとして出力する。
また、信号生成部76は、インバータ回路82A、82B、82C、及びNAND回路84A、84Bを備える。NAND回路84Aには、遅延回路80から出力された遅延信号+Delayがインバータ回路82Aを介して入力される。また、NAND回路84Aには、AND回路78Aの出力する信号がインバータ回路82Bを介して入力される。また、NAND回路84Bには、NAND回路84Aの出力する信号が入力され、また、モード信号+SMがインバータ回路82Cを介して入力される。NAND回路84Bは、クロック信号+CLK、モード信号+SM、及び遅延信号+Delayに基づくスキャンクロック信号+BCLKaを生成する。信号生成部76は、スキャンクロック信号+BCLKaを反転することで得られるスキャンクロック信号−BCLKaを出力する。
図13には、信号生成部76におけるクロック信号+CLK、モード信号+SM、遅延信号+Delay、スキャンクロック信号+ACLKa、及びスキャンクロック信号+BCLKaの概略を示す。
信号生成部76は、クロック信号+CLK及びモード信号+SMがHレベル(シフトモード)となることで、遅延信号+Delayが、クロック信号+CLKに対して時間Δtだけ遅れてLレベルとなる。AND回路78Bから出力されるスキャンクロック信号+ACLKaは、クロック信号+CLK、モード信号+SM、及び遅延信号+DelayがHレベルとなることでHレベルとなる。また、AND回路78Bから出力されるスキャンクロック信号+ACLKaは、遅延信号+DelayがLレベルとなることで、HレベルからLレベルに切り替わる。従って、スキャンクロック信号+ACLKaは、クロック信号+CLKの立ち上がりに同期して生成される。
信号生成部76は、モード信号+SMがHレベルとなっている状態で、クロック信号+CLKがLレベルとなることで、遅延信号+Delayがクロック信号+CLKに対して時間Δtだけ遅れてHレベルとなる。クロック信号+CLKがHレベルとなることで、NAND回路84Bから出力されるスキャンクロック信号+BCLKaはLレベルとなる。また、NAND回路84Bから出力されるスキャンクロック信号+BCLKaは、クロック信号+CLKがLレベルとなるとHレベルに切り替わり、遅延信号+DelayがHレベルとなることでHレベルからLレベルに切り替わる。従って、スキャンクロック信号+BCLKaは、クロック信号+CLKの立下りに同期して生成される。また、信号生成部76は、モード信号+SMがHレベルからLレベルとなることで、スキャンクロック信号+ACLKa、+BCLKaを所定値に保持する(+ACLKa=0、+BCLKa=1)。
図11に示すように、ラッチ制御部74は、OR回路86A、86B、インバータ回路86C、及びAND回路86Dを備える。OR回路86Aは、入力端子Ainに信号生成部76から出力されるスキャンクロック信号+ACLKaが入力される。また、OR回路86Aは、入力端子Binにスキャンテスト対象回路72をLSSD方式で動作させる際のスキャンクロック信号+ACLKが入力される。さらに、OR回路86Aは、出力端子Xがラッチ回路54の各々の入力端子ACKに接続される。
OR回路86Bは、入力端子Ainに信号生成部76から出力されるスキャンクロック信号−BCLKaが入力される。また、OR回路86Bは、入力端子Binにスキャンテスト対象回路72をLSSD方式で動作させる際のスキャンクロック信号−BCLKが入力される。さらに、OR回路86Bは、出力端子Xがラッチ回路54の各々の入力端子BCKに接続される。
インバータ回路86Cには、モード信号+SMが入力される。AND回路86Dは、入力端子Ainにインバータ回路86Cから出力されるモード信号+SMの反転信号が入力され、入力端子Binに、組み合わせ回路14からクロック信号+CLKが入力される。また、AND回路86Dは、出力端子Xがラッチ回路54の各々の入力端子CKに接続されている。
ラッチ制御部74は、信号生成部76に入力されるモード信号+SMに応じて、信号生成部76がスキャンクロック信号+ACLKaをOR回路86Aへ出力し、スキャンクロック信号−BCLKaをOR回路86Bへ出力する。この際、ラッチ制御部74は、モード信号+SMがLレベル(キャプチャモード)となることで、信号生成部76から出力するスキャンクロック信号+ACLKa、−BCLKaが停止する。
ラッチ制御部74は、スキャンテスト対象回路72をMUX‐D方式で動作させる場合、OR回路86Aの入力端子BinがLレベルに保持され、OR回路68Aの入力端子Binに入力されるスキャンクロック信号+ACLKを所定値(+ACLK=0)とする。また、ラッチ制御部74は、スキャンテスト対象回路72をMUX‐D方式で動作させる場合、OR回路86Bの入力端子BinがLレベルに保持され、OR回路68Bの入力端子Binに入力されるスキャンクロック信号−BCLKを所定値(−BCLK=0)とする。
OR回路86Aは、スキャンクロック信号+ACLKが入力されず入力端子BinがLレベルとなっていると、信号生成部76から入力端子Ainに入力されるスキャンクロック信号+ACLKaを、スキャンクロック+信号ACLKとしてラッチ回路54へ出力する。OR回路86Bは、スキャンクロック信号−BCLKが入力されず入力端子BinがLレベルになっていると、信号生成部76から入力端子Ainに入力されるスキャンクロック信号−BCLKaをスキャンクロック信号−BCLKとしてラッチ回路54へ出力する。
AND回路86Dは、ラッチ制御部74に入力されるモード信号+SMがHレベル(シフトモード)となることで、インバータ回路86Cの出力がLレベルとなり、AND回路86Dがラッチ回路54へのクロック信号+CLKの出力を停止する。また、AND回路86Dは、ラッチ制御部74に入力されるモード信号+SMがLレベル(キャプチャモード)となることで、インバータ回路86Cの出力がHレベルとなり、AND回路86Dからラッチ回路54へのクロック信号+CLKを出力する。
これに対して、ラッチ制御部74は、スキャンテスト対象回路72をLSSD方式で動作させる場合、信号生成部76の入力端子MSがLレベルに保持され、信号生成回路76に入力されるモード信号+SMが固定される。
ラッチ制御部74の信号生成部76は、入力端子SMにモード信号+SMが入力されずLレベルとなっていると、出力端子ACKo、BCKoがLレベルとなる(+ACLK=0、−BCLK=0)。出力端子ACKo、BCKoがLレベルとなると、OR回路86Aは、入力端子AinがLレベルとなり、OR回路86Bは、入力端子AinがLレベルとなる。また、AND回路86Dは、入力端子AinがHレベルとなる。
OR回路86Aは、入力端子AinがLレベルとなっていると、入力端子Binに入力されるスキャンクロック信号+ACLKをラッチ回路54へ出力する。また、ラッチ制御部74のOR回路86Bは、入力端子AinがLレベルとなっていると、入力端子Binに入力されるスキャンクロック信号−BCLKをラッチ回路54へ出力する。さらに、AND回路86Dは、入力端子AinがHレベルとなっていることで、入力端子Binに入力されるクロック信号+CLKをラッチ回路54へ出力する。
このように、ラッチ制御部74は、スキャンテストの方式がMUX‐D方式かLSSD方式かにかかわらず、各ラッチ回路54に、スキャンクロック信号+ACLKa、−BCLKaを出力する。ラッチ制御部74は、スキャンテストの方式がLSSD方式の場合、クロック信号+CLKを各ラッチ回路54へ出力し、スキャンテストの方式がMUX‐D方式の場合、モード信号+SMに応じて、各ラッチ回路54へのクロック信号+CLKの出力/停止を行う。ラッチ回路54は、スキャンテストに必要とするクロック信号+CLK、及びスキャンクロック信号+ACLKa、−BCLKaが入力されることで、入力されたクロック信号+CLK、及びスキャンクロック信号+ACLKa、−BCLKaで動作する。
スキャンテスト対象回路72は、ラッチ制御部74をスキャン制御部18Aに接続することでLSSD方式によるスキャンテストが実行される。また、スキャンテスト対象回路72は、ラッチ制御部74をスキャン制御部18Bに接続することでMUX‐D方式によるスキャンテストが実行される。
従って、ラッチ制御部74は、LSSD方式に適用するスキャンクロック信号+ACLK、−BCLKを所定値とすることで、スキャンテスト対象回路72の各ラッチ回路54をMUX‐D方式で動作するように制御する。また、ラッチ制御部74は、MUX‐D方式に適用するモード信号+SMを所定値とすることで、スキャンテスト対象回路72の各ラッチ回路54をLSSD方式で動作するように制御する。
半導体集積回路70は、LSSD方式で動作するラッチ回路54が組み込まれる際に、ラッチ制御部74が合わせて組み込まれることで、ラッチ回路54をLSSD方式又はMUX‐D方式の何れでも動作させることが可能となる。
図14には、ラッチ回路54及びラッチ制御部74を用いたスキャンテスト対象回路88を示す。スキャンテスト対象回路88は、スキャンテスト対象回路72、及びスキャンテスト対象回路72Aを含む。スキャンテスト対象回路72Aは、複数のラッチ回路64によりスキャンチェーンが形成されている。ラッチ回路64は、MUX‐D方式で動作するデータラッチ部として機能する。
スキャンテスト対象回路72の各ラッチ回路54は、組み合わせ回路14に接続され、スキャンテスト対象回路72Aの各ラッチ回路64は、組み合わせ回路14Aに接続されている。スキャンテスト対象回路88では、例えば、スキャンテスト対象回路72の最後段のラッチ回路54から出力されるスキャンデータSoが、スキャンテスト対象回路72Aの最前段のラッチ回路64に入力される。
スキャンテスト対象回路72及びスキャンテスト対象回路72Aは、MUX‐D方式でスキャンテストを行うスキャン制御部18Bに接続されている。スキャンテスト対象回路72Aの各ラッチ回路64には、スキャン制御部18Bからモード信号+SMが入力され、スキャン制御回路18Bから出力されるモード信号+SMにより動作が制御される。これにより、スキャンテスト対象回路72Aは、MUX‐D方式で各ラッチ回路64が動作してスキャンテストを行う。
スキャンテスト対象回路72は、ラッチ制御部74がスキャン制御部18Bに接続され、ラッチ回路54の各々がラッチ制御部74に接続されている。また、ラッチ制御部74は、OR回路86Aの入力端子BinがLレベルとして、OR回路86Aの入力端子Binに入力されるスキャンクロック信号+ACLKを所定値に保持する。更に、ラッチ制御部74は、OR回路86Bの入力端子BinがLレベルとして、OR回路86Bの入力端子Binに入力されるスキャンクロック信号−BCLKを所定値に保持する。
ラッチ制御部74は、クロック信号+CLK、及びスキャン制御部18Bから入力されるモード信号+SMに基づいてスキャンクロック信号+ACLKa、−BCLKaを生成してラッチ回路54の各々へ出力する。ラッチ回路54は、クロック信号+CLK、及びラッチ制御部74から入力されるスキャンクロック信号+ACLK(+ACLKa)、−BCLK(−BCLKa)により動作が制御される。
スキャンテスト対象回路88では、LSSD方式で動作するラッチ回路54に対してラッチ制御部74が設けられることで、スキャンテスト対象回路72がスキャンテスト対象回路72Aと同様にMUX‐D方式で動作する。
従って、スキャンテスト対象回路88は、異なるスキャン方式のラッチ回路54、64を単一のスキャン方式により動作させてスキャンテストを行うことができる。
〔第3の実施形態〕
次に第3の実施形態を説明する。なお、第3の実施形態において、第1の実施形態と同様の機能部品には、第1の実施形態と同様の符号を付与して説明を省略する。
図15には、第3の実施形態に係る半導体集積回路90を示す。半導体集積回路90は、第3の実施形態において半導体集積回路の一例として機能する。半導体集積回路90には、スキャンテスト対象回路92が形成される。スキャンテスト対象回路92には、ラッチ回路64が用いられ、複数のラッチ回路64によりスキャンチェーンが形成される。
ラッチ回路64は、入力端子Din及び出力端子Q、Mが組み合わせ回路14に接続されている。また、ラッチ回路64は、入力端子CKに入力されるクロック信号+CLKに基づいて動作する。また、ラッチ回路64は、入力端子MSに入力されるモード信号+SMに応じて、入力端子Din又は入力端子Sinが選択される。
ラッチ回路64は、入力端子Dinが選択されることで、組み合わせ回路14から入力されるデータDinをラッチし、出力端子QからデータDoを出力し、出力端子MからデータMoを出力する。また、ラッチ回路64は、入力端子Sinが選択されることで、入力端子Sinに入力されるスキャンデータSiをラッチし、出力端子QからスキャンデータSoを出力する。ラッチ回路64は、第3の実施形態においてMUX‐D方式で制御されるラッチデータ部として機能する。
なお、ラッチ回路64は、入力端子Rが組み合わせ回路14に接続され、組み合わせ回路14から入力されるリセット信号−RSTによりデータの初期化が行われる。また、第3の実施形態では、一例としてラッチ回路64の入力端子CKが組み合わせ回路14に接続され、組み合わせ回路14から出力されるクロック信号+CLKに同期してラッチ回路64が動作する。
一方、スキャンテスト対象回路92は、ラッチ制御部94を備える。ラッチ制御部94は、ラッチ回路64毎に設けても良く、また、複数のラッチ回路64に対して一つのラッチ制御部94を設けても良い。ラッチ制御部94は、第3の実施形態においてラッチ制御部として機能する。また、ラッチ回路64及びラッチ制御部94は、第3の実施形態においてラッチ回路として機能する。
ラッチ制御部94は、信号生成部96を含む。信号生成部96は、入力端子ACK、及び入力端子BCKを備える。信号生成部96は、出力端子SCKo、及び出力端子MSoを備える。信号生成部96は、ラッチ回路64をLSSD方式で動作させる際に、入力端子ACKにスキャンクロック信号+ACLKが入力され、入力端子BCKにスキャンクロック信号−BCLKが入力される。
信号生成部96は、スキャンクロック信号+ACLK、−BCLKが入力されることで、スキャンクロック信号+ACLK、−BCLKに基づいて、クロック信号+SCLK、及びモード信号SMaを生成する。信号生成部96は、出力端子SCKoからクロック信号+SCLKを出力し、出力端子MSoからモード信号+SMaを出力する。スキャンクロック信号+ACLK、−BCLKを第1の制御信号又は第2の制御信号の一方とした場合、モード信号+SMaは、第3の実施形態において第1の制御信号又は第2の制御信号の他方として機能する。
図16には、信号生成部96の一例を示す。信号生成部96は、SRラッチ回路100、及びインバータ回路102を備える。SRラッチ回路100は、入力端子Sにスキャンクロック信号+ACLKが入力され、入力端子Rにスキャンクロック信号−BCLKがインバータ回路102を介して入力される。SRラッチ回路100は、スキャンクロック信号+ACLKをセット(Set)信号とし、スキャンクロック信号+BCLK(スキャンクロック信号−BCLKの反転信号)をリセット(Reset)信号とし動作する。これにより、SRラッチ回路100は、スキャンクロック信号+ACLK、+BCLK(−BCLK)に同期したクロック信号+SCLKを出力する。
また、信号生成部96は、Dラッチ回路104、及びOR回路106A、106Bを備える。OR回路106Aには、スキャンクロック信号+ACLK及びスキャンクロック信号+BCLKが入力される。OR回路106Aは、スキャンクロック信号+ACLKとスキャンクロック信号+BCLKとの論理和を、Dラッチ回路104の入力端子CKに出力する。また、Dラッチ回路104は、入力端子Dにスキャンクロック信号+ACLKが入力される。Dラッチ回路104は、スキャンクロック信号+ACLK、+BCLKをクロック信号として、スキャンクロック信号+ACLKを取り込み、出力端子DQから出力信号+DQoを出力する。
OR回路106Bには、スキャンクロック信号−BCLK、及びDラッチ回路104の出力信号+DQoが入力される。OR回路106Bは、スキャンクロック信号−BCLKと出力信号+DQoとの論理和を、モード信号+SMaとして出力する。
図17には、信号生成部96におけるスキャンクロック信号+ACLK、+BCLK、Dラッチ回路104の出力信号DQo、クロック信号+SCLK、及びモード信号+SMaの概略を示す。信号生成部96は、SRラッチ回路100が、スキャンクロック信号+ACLK、+BCLKに同期したクロック信号+SCLKを生成する。また、SRラッチ回路100は、スキャンクロック信号+ACLKがHレベルに保持され、かつスキャンクロック信号+BCLKがHレベル(−BCLK=0)に保持されることで出力がLレベルとなる。
Dラッチ回路104は、出力信号DQoが、スキャンクロック信号+ACLKに同期してHレベルとなり、スキャンクロック信号+BCLKに同期してLレベルとなる。これにより、OR回路106Bから出力するモード信号+SMaは、スキャンクロック信号−BCLKが入力(スキャンクロック信号+BCLKがLレベル)されることでHレベルとなる。また、OR回路106Bは、スキャンクロック信号−BCLKとして入力される信号がLレベル(スキャンクロック信号+BCLKがHレベル)に保持されることにより出力(モード信号+SMa)がLレベルとなる。
図15に示すように、ラッチ制御部94は、OR回路108を備える。また、ラッチ制御部94は、ラッチ回路64の各々に対するOR回路110を備える。OR回路108は、入力端子Ainに信号生成部96から出力されるモード信号+SMaが入力される。また、OR回路108は、入力端子Binにスキャンテスト対象回路92をMUX‐D方式で動作させる際のモード信号+SMが入力される。さらに、OR回路108は、出力端子Xがラッチ回路64の各々の入力端子MSに接続される。
OR回路110の各々は、入力端子Ainに信号生成部96から出力されるクロック信号+SCLKが入力される。また、OR回路110は、入力端子Binが組み合わせ回路14に接続され、組み合わせ回路14がラッチ回路64毎に出力するクロック信号+CLKが入力される。さらに、OR回路110は、出力端子Xが、対応するラッチ回路64の入力端子CKに接続される。
スキャンテスト対象回路92をLSSD方式で動作させる場合、ラッチ制御部94には、スキャンクロック信号+ACLK、−BCLKが入力される。また、スキャンテスト対象回路92をLSSD方式で動作させる場合、ラッチ制御部94のOR回路108は、入力端子BinがLレベルとして入力端子Binに入力されるモード信号+SMを所定値(+SM=0)とする。
ラッチ制御部94の信号生成部96は、スキャンクロック信号+ACLK、−BCLKが入力されることで、クロック信号+SCLKをOR回路108へ出力し、モード信号+SMaをOR回路110の各々へ出力する。
ラッチ制御部94のOR回路108は、入力端子Binにモード信号+SMが入力されずにLレベルに保持されることで、信号生成部96から入力されるモード信号+SMaを、モード信号+SMとしてラッチ回路64の各々へ出力する。ラッチ制御部94から出力されるモード信号+SMは、スキャンクロック信号+ACLK、−BCLKがLレベルに保持されることで、Lレベル(キャプチャモード)となる。ラッチ制御部94のOR回路110の各々は、信号生成部96からクロック信号+SCLKが入力されることで、クロック信号+SCLKをクロック信号+CLKとしてラッチ回路64へ出力する。
これに対して、スキャンテスト対象回路92をMUX‐D方式で動作させる場合、ラッチ制御部94のOR回路108には、入力端子Binにモード信号+SMが入力される。スキャンテスト対象回路92をLSSD方式で動作させる場合、ラッチ制御部94の信号生成部96は、入力端子ACK、BCKが所定値(Lレベル)に保持される。
ラッチ制御部94の信号生成部96は、入力端子ACK、BCKにスキャンクロック信号+ACLK、−BCLKが入力されずLレベルに保持されていると、出力端子SCKo、MSoがLレベルとなる。OR回路108は、信号生成部96の出力端子MSoがLレベルとなることで入力端子AinがLレベルとなる。また、OR回路110の各々は、信号生成部96の出力端子SCKoがLレベルとなることで入力端子AinがLレベルとなる。
OR回路108は、入力端子AinがLレベルとなっていることで、入力端子Binに入力されるモード信号+SMをラッチ回路64の各々へ出力する。また、OR回路110の各々は、入力端子AinがLレベルとなっていることで入力端子Binに入力されるクロック信号+CLKを対応するラッチ回路64へ出力する。
このように、ラッチ制御部94は、スキャンテストの方式がMUX‐D方式かLSSD方式かにかかわらず、各ラッチ回路64に、クロック信号+CLK、及びモード信号+SMを出力する。ラッチ回路64は、スキャンテストに必要とするクロック信号+CLK、及びモード信号+SMが入力されることで、入力されたクロック信号+CLK、及びモード信号+SMで動作する。
従って、スキャンテスト対象回路92は、ラッチ制御部94をスキャン制御部18Aに接続することでLSSD方式によるスキャンテストが実行される。また、スキャンテスト対象回路92は、ラッチ制御部94をスキャン制御部18Bに接続することでMUX‐D方式によるスキャンテストが実行される。
半導体集積回路90は、MUX‐D方式で動作するラッチ回路64が組み込まれる際に、ラッチ回路64に合わせてラッチ制御部94が組み込まれることで、ラッチ回路64をLSSD方式又はMUX‐D方式の何れでも動作させることが可能となる。
図18には、ラッチ回路64及びラッチ制御部94を用いたスキャンテスト対象回路112を示す。スキャンテスト対象回路112は、スキャンテスト対象回路92及びスキャンテスト対象回路92Aを含む。スキャンテスト対象回路92Aは、各々がLSSD方式で動作する複数のラッチ回路54によりスキャンチェーンが形成されている。
スキャンテスト対象回路92の各ラッチ回路64は、組み合わせ回路14に接続され、スキャンテスト対象回路92Aの各ラッチ54は、組み合わせ回路14Bに接続されている。また、スキャンテスト対象回路112は、例えば、スキャンテスト対象回路92の最前段のラッチ回路64の入力端子Sinが、スキャンテスト対象回路92Aの最後段のラッチ回路54に接続されている。
スキャンテスト対象回路92及びスキャンテスト対象回路92Aは、LSSD方式でスキャンテストを行うスキャン制御部18Aに接続されている。スキャンテスト対象回路92Aの各ラッチ回路54には、スキャン制御部18Aからスキャンクロック信号+ACLK、−BCLKが入力され、スキャン制御回路18Aにより動作が制御される。
また、スキャンテスト対象回路92は、ラッチ制御部94がスキャン制御部18Aに接続され、ラッチ回路64の各々は、ラッチ制御部94に接続されている。また、ラッチ制御部94は、OR回路108の入力端子BinがLレベルとすることで、OR回路108の入力端子Binに入力されるモード信号+SMを所定値(+SM=0)に保持する。ラッチ制御部94は、スキャン制御部18Aから入力されるスキャンクロック信号+ACLK、−BCLKに基づいてクロック信号+SCLK、及びモード信号+SMaを生成してラッチ回路64の各々へ出力する。
ラッチ回路64は、ラッチ制御部94から入力されるクロック信号+CLK及びモード信号+SMにより動作が制御される。スキャンテスト対象回路92では、MUX‐D方式の制御信号により各ラッチ回路54が動作してスキャンテストを行う。
スキャンテスト対象回路112では、MUX‐D方式で動作するラッチ回路64に対してラッチ制御部94が設けられることで、スキャンテスト対象回路92がスキャンテスト対象回路92Aと同様にLSSD方式で動作する。
したがって、スキャンテスト対象回路112は、異なるスキャン方式のラッチ回路54、64が単一のスキャン方式(LSSD方式)により動作してスキャンテストを行うことができる。
半導体集積回路10等を設計する場合、例えば、EDA(Electronic Design Automation)ツールが用いられる。EDAツールにおいて、所定の機能回路を回路ブロック等として予め作成して保持し、半導体集積回路10等の回路設計を行う際に、予め作成した回路ブロックを組み込むことで設計効率の向上を図ることができる。この時、データラッチ部20とラッチ制御部22とを含むラッチ回路16を一つの回路ブロックとして保持する。また、ラッチ回路54とラッチ制御部74とを含む回路を一つの回路ブロックとして保持する。また、ラッチ回路64とラッチ制御部94を含む回路を一つの回路ブロックとして保持する。
このように保持した回路ブロックを、ラッチ回路として半導体集積回路10等に組み込むことで、半導体集積回路10等のスキャンテスト対象回路を設計する際に、スキャン方式として、LSSD方式又はMUX‐D方式の何れも適用することができる。これにより、半導体集積回路10等にスキャン方式が一致しないラッチ回路が配置された場合でも、何れか一つのスキャン方式を用いることができ、スキャンテスト対象回路の設計が極めて容易となる。
開示の技術は、上記実施の形態に記載に限らず、各部分が目的とする機能を含む形態であれば良い。また、本明細書に記載された全ての特許出願及び特許出願に開示される技術文献は、個々の文献、特許出願及び技術規格が参照により取り込まれることが具体的かつ個々に記された場合と同程度に、本明細書中に、参照により取り込まれる。
10、50、60、70、90 半導体集積回路
12、52、62、72、72A、88、92、92A、112 スキャンテスト対象回路
16 ラッチ回路
18、18A、18B スキャン制御部
20 データラッチ部
22、74、94 ラッチ制御部
24 第1ラッチ部
26 第2ラッチ部
28、30、32 スイッチ部
54 ラッチ回路
64 ラッチ回路
76、96 信号生成部

Claims (18)

  1. 第1の制御信号又は第2の制御信号に基づいて入力されたデータを保持するデータラッチ部と、
    第1のスキャン方式で前記データラッチ部を動作させる第1の動作信号が入力される第1の入力端子、及び第2のスキャン方式で前記データラッチ部を動作させる第2の動作信号が入力される第2の入力端子を備え、前記第1の入力端子に所定値が入力され、かつ前記第2の入力端子に前記第2の動作信号が入力された際に、前記第2の制御信号を出力して前記データラッチ部を制御し、前記第2の出力端子に所定値が入力され、かつ前記第1の入力端子に前記第1の動作信号が入力された際に、前記第1の制御信号を出力して前記データラッチ部を制御するラッチ制御部と、
    を含むラッチ回路。
  2. 前記データラッチ部は、前記第1の制御信号のみにより制御され、
    前記ラッチ制御部は、前記第1の入力端子に所定値が入力され、かつ前記第2の入力端子に前記第2の動作信号が入力された際に、前記第2の動作信号に基づいて前記第1の制御信号を出力する、
    請求項1記載のラッチ回路。
  3. 前記データラッチ部が、
    第1のデータを取り込むように動作する第1のスイッチ部と、
    第2のデータを取り込むように動作する第2のスイッチ部と、
    前記第1のスイッチ部から取り込まれた前記第1のデータ又は前記第2のスイッチ部から取り込まれた前記第2のデータを保持する第1ラッチ部と、
    前記第1ラッチ部が保持した前記第1のデータ又は前記第2のデータを取り込むように動作する第3のスイッチ部と、
    前記第1のスイッチ部から取り込まれた前記第1のデータ又は第2のデータを保持し、保持した第1のデータ又は前記第2のデータを出力する第2ラッチ部と、
    を含み、前記ラッチ制御部は、前記第1の制御信号として、前記第1のスイッチ部を動作させるための第1の操作信号、前記第2のスイッチ部を動作させるための第2の操作信号、及び前記第3のスイッチ部を動作させるための第3の操作信号を出力するか、又は、前記第2の制御信号として、前記第1のスイッチ部を動作させるための第4の操作信号、前記第2のスイッチ部を動作させるための第5の操作信号、及び前記第3のスイッチ部を動作させるための第6の操作信号を出力する、
    請求項1記載のラッチ回路。
  4. 前記第1の動作信号及び前記第2の動作信号の一方が、前記データの取り込みを第1のデータ又は第2のデータに切り替えるスキャンモード信号を含み、前記第1の動作信号及び前記第2の動作信号の他方が、互いに重ならない2つのスキャンクロック信号を含む、請求項1から請求項3の何れか1項記載のラッチ回路。
  5. 第1の制御信号又は第2の制御信号に基づいて入力されたデータを保持する複数のデータラッチ部と、
    第1のスキャン方式で前記データラッチ部を動作させる第1の動作信号が入力される第1の入力端子、及び第2のスキャン方式で前記データラッチ部を動作させる第2の動作信号が入力される第2の入力端子を備え、前記第1の入力端子に所定値が入力され、かつ前記第2の入力端子に前記第2の動作信号が入力された際に、前記第2の制御信号を出力して前記複数のデータラッチ部の各々を制御し、前記第2の出力端子に所定値が入力され、かつ前記第1の入力端子に前記第1の動作信号が入力された際に、前記第1の制御信号を出力して前記複数のデータラッチ部の各々を制御するラッチ制御部と、
    を含むスキャンテスト対象回路。
  6. 前記複数のデータラッチ部の各々が、前記第1の制御信号のみにより制御され、
    前記ラッチ制御部は、前記第1の入力端子に所定値が入力され、かつ前記第2の入力端子に前記第2の動作信号が入力された際に、前記第2の動作信号に基づいて前記第1の制御信号を出力する、
    請求項5記載のスキャンテスト対象回路。
  7. 前記データラッチ部が、
    組み合わせ回路から出力される第1のデータを取り込むように動作する第1のスイッチ部と、
    第2のデータを取り込むように動作する第2のスイッチ部と、
    前記第1のスイッチ部から取り込まれた前記第1のデータ又は前記第2のスイッチ部から取り込まれた前記第2のデータを保持する第1ラッチ部と、
    前記第1ラッチ部が保持した前記第1のデータ又は前記第2のデータを取り込むように動作する第3のスイッチ部と、
    前記第1のスイッチ部から取り込まれた前記第1のデータ又は第2のデータを保持し、保持した第1のデータ又は前記第2のデータを出力する第2ラッチ部と、
    を含み、前記ラッチ制御部は、前記第1の制御信号として、前記第1のスイッチ部を動作させるための第1の操作信号、前記第2のスイッチ部を動作させるための第2の操作信号、及び前記第3のスイッチ部を動作させるための第3の操作信号を出力するか、又は、前記第2の制御信号として、前記第1のスイッチ部を動作させるための第4の操作信号、前記第2のスイッチ部を動作させるための第5の操作信号、及び前記第3のスイッチ部を動作させるための第6の操作信号を出力する、
    請求項5記載のスキャンテスト対象回路。
  8. 前記ラッチ制御部の前記第1の入力端子に前記第1の動作信号を出力するか、又は前記ラッチ制御の前記第2の入力端子に前記第2の動作信号を出力するスキャン制御部を含む、請求項5から請求項7の何れか1項記載のスキャンテスト対象回路。
  9. 第1の制御信号に基づいて入力されたデータを保持する複数の第1のデータラッチ部を有する第1のスキャンテスト対象回路と、
    第2の制御信号に基づいて入力されたデータを保持する複数の第2のデータラッチ部、並びに、第1のスキャン方式で前記第2のデータラッチ部を動作させる第1の動作信号が入力される第1の入力端子、及び、第2のスキャン方式で前記第2のデータラッチ部を動作させる第2の動作信号が入力される第2の入力端子を有し、前記第2の入力端子に所定値が入力され、かつ前記第1の入力端子に前記第1の動作信号が入力された際に、前記第1の制御信号を出力して前記複数の第2のデータラッチ部の各々を制御するラッチ制御部を備える第2のスキャンテスト対象回路と、
    前記第1のスキャンテスト回路の前記複数の第1のデータラッチ部の各々、及び前記第2のスキャンテスト対象回路の前記ラッチ制御部に、前記第1の動作信号を出力するスキャン制御部と、
    を含むスキャンテスト対象回路。
  10. 前記第1の動作信号又は前記第2の動作信号の一方が、保持するデータの取り込みを第1のデータ又は第2のデータに切り替えるスキャンモード信号を含み、前記第1の動作信号又は前記第2の動作信号の他方が、互いに重ならない2つのスキャンクロック信号を含む、請求項5から請求項9の何れか1項記載のスキャンテスト対象回路。
  11. 第1の制御信号又は第2の制御信号に基づいて入力されたデータを保持する複数のデータラッチ部と、
    第1のスキャン方式で前記データラッチ部を動作させる第1の動作信号が入力される第1の入力端子、及び第2のスキャン方式で前記データラッチ部を動作させる第2の動作信号が入力される第2の入力端子を備え、前記第1の入力端子に所定値が入力され、かつ前記第2の入力端子に前記第2の動作信号が入力された際に、前記第2の制御信号を出力して前記複数のデータラッチ部の各々を制御し、前記第2の出力端子に所定値が入力され、かつ前記第1の入力端子に前記第1の動作信号が入力された際に、前記第1の制御信号を出力して前記複数のデータラッチ部の各々を制御するラッチ制御部と、
    を含む半導体集積回路。
  12. 前記複数のデータラッチ部の各々が、前記第1の制御信号のみにより制御され、
    前記ラッチ制御部は、前記第1の入力端子に所定値が入力され、かつ前記第2の入力端子に前記第2の動作信号が入力された際に、前記第2の動作信号に基づいて前記第1の制御信号を出力する、
    請求項11記載の半導体集積回路。
  13. 前記データラッチ部が、
    組み合わせ回路から出力される第1のデータを取り込むように動作する第1のスイッチ部と、
    第2のデータを取り込むように動作する第2のスイッチ部と、
    前記第1のスイッチ部から取り込まれた前記第1のデータ又は前記第2のスイッチ部から取り込まれた前記第2のデータを保持する第1ラッチ部と、
    前記第1ラッチ部が保持した前記第1のデータ又は前記第2のデータを取り込むように動作する第3のスイッチ部と、
    前記第1のスイッチ部から取り込まれた前記第1のデータ又は第2のデータを保持し、保持した第1のデータ又は前記第2のデータを出力する第2ラッチ部と、
    を含み、前記ラッチ制御部は、前記第1の制御信号として、前記第1のスイッチ部を動作させるための第1の操作信号、前記第2のスイッチ部を動作させるための第2の操作信号、及び前記第3のスイッチ部を動作させるための第3の操作信号を出力するか、又は、前記第2の制御信号として、前記第1のスイッチ部を動作させるための第4の操作信号、前記第2のスイッチ部を動作させるための第5の操作信号、及び前記第3のスイッチ部を動作させるための第6の操作信号を出力する、
    請求項11記載の半導体集積回路。
  14. 前記ラッチ制御部の前記第1の入力端子に前記第1の動作信号を出力するか、又は前記ラッチ制御の前記第2の入力端子に前記第2の動作信号を出力するスキャン制御部を含む、
    請求項11から請求項13の何れか1項記載の半導体集積回路。
  15. 第1の制御信号に基づいて入力されたデータを保持する複数の第1のデータラッチ部を有する第1のスキャンテスト対象回路と、
    第2の制御信号に基づいて入力されるデータを保持する複数の第2のデータラッチ部、並びに、第1のスキャン方式で前記第2のデータラッチ部を動作させる第1の動作信号が入力される第1の入力端子、及び、第2のスキャン方式で前記第2のデータラッチ部を動作させる第2の動作信号が入力される第2の入力端子を有し、前記第2の入力端子に所定値が入力され、前記第1の入力端子に前記第1の動作信号が入力された際に、前記第1の制御信号を出力して前記複数の第2のデータラッチ部の各々を制御するラッチ制御部を備える第2のスキャンテスト対象回路と、
    前記第1のスキャンテスト対象回路の前記複数の第1のデータラッチ部の各々、及び前記第2のスキャンテスト対象回路の前記ラッチ制御部に、前記第1の動作信号を出力するスキャン制御部と、
    を含む半導体集積回路。
  16. 前記第1の動作信号又は前記第2の動作信号の一方が、前記保持するデータの取り込みを第1のデータ又は第2のデータに切り替えるスキャンモード信号を含み、前記第1の動作信号又は前記第2の動作信号の他方が、互いに重ならない2つのスキャンクロック信号を含む、
    請求項11から請求項15の何れか1項記載の半導体集積回路。
  17. 第1の制御信号又は第2の制御信号に基づいて入力されるデータを保持する複数のデータラッチ部を備えるラッチ回路に対し、
    第1のスキャン方式で前記データラッチ部を動作させる第1の動作信号が所定値とされ、かつ第2のスキャン方式で前記データラッチ部を動作させる第2の動作信号が入力された際に、前記第2の動作信号に応じた第2の制御信号を出力して前記複数のデータラッチ部の各々を制御し、
    前記第2の動作信号が所定値とされ、かつ前記第1の動作信号が入力された際に、前記第1の動作信号に応じた第1の制御信号を出力して前記複数のデータラッチ部の各々を制御する、
    ことを含むラッチ回路の制御方法。
  18. 前記複数のデータラッチ部の各々が、前記第1の制御信号により制御される場合に、
    前記第1の動作信号が所定値とされ、前記第2の動作信号が入力された際に、前記第2の動作信号に基づいて前記第1の制御信号を出力して前記複数のデータラッチ部の各々を制御し、
    前記第2の動作信号が所定値とされ、かつ前記第1の動作信号が入力された際に、前記第1の動作信号を第1の制御信号として出力して前記複数のデータラッチ部の各々を制御する、
    ことを含むラッチ回路の制御方法。
JP2013077055A 2013-04-02 2013-04-02 ラッチ回路、スキャンテスト対象回路、半導体集積回路、及びラッチ回路の制御方法 Pending JP2014202532A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013077055A JP2014202532A (ja) 2013-04-02 2013-04-02 ラッチ回路、スキャンテスト対象回路、半導体集積回路、及びラッチ回路の制御方法
US14/225,620 US20140298126A1 (en) 2013-04-02 2014-03-26 Latch circuit, scan test circuit and latch circuit control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013077055A JP2014202532A (ja) 2013-04-02 2013-04-02 ラッチ回路、スキャンテスト対象回路、半導体集積回路、及びラッチ回路の制御方法

Publications (1)

Publication Number Publication Date
JP2014202532A true JP2014202532A (ja) 2014-10-27

Family

ID=51622080

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013077055A Pending JP2014202532A (ja) 2013-04-02 2013-04-02 ラッチ回路、スキャンテスト対象回路、半導体集積回路、及びラッチ回路の制御方法

Country Status (2)

Country Link
US (1) US20140298126A1 (ja)
JP (1) JP2014202532A (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9086457B2 (en) 2013-03-26 2015-07-21 International Business Machines Corporation Scan chain latch design that improves testability of integrated circuits
US9612281B2 (en) * 2014-11-20 2017-04-04 Qualcomm Incorporated High-speed flip-flop with robust scan-in path hold time
US10365328B2 (en) * 2017-06-29 2019-07-30 Globalfoundries Inc. Register array having groups of latches with single test latch testable in single pass
US10788877B1 (en) * 2020-02-11 2020-09-29 Globalfoundries Inc. Transition once multiplexer circuit

Also Published As

Publication number Publication date
US20140298126A1 (en) 2014-10-02

Similar Documents

Publication Publication Date Title
US8717078B2 (en) Sequential latching device with elements to increase hold times on the diagnostic data path
JP3587248B2 (ja) スキャン用フリップフロップ
JP2009222644A (ja) 半導体集積回路、及び設計自動化システム
US20090300448A1 (en) Scan flip-flop device
US9020084B2 (en) High frequency synchronizer
JP2007187458A (ja) スキャンフリップフロップ回路、及び、半導体集積回路装置
JP2014202532A (ja) ラッチ回路、スキャンテスト対象回路、半導体集積回路、及びラッチ回路の制御方法
JP5651058B2 (ja) スキャンフリップフロップ回路、スキャンテスト回路及びその制御方法
JP2009177659A (ja) パルスラッチ回路
JP4702137B2 (ja) スキャンテスト用フリップフロップ
JP2003156540A (ja) スキャンフリップフロップ及び半導体集積回路装置
US20150061740A1 (en) Scannable flop with a single storage element
US20230243887A1 (en) Clock shaper circuit for transition fault testing
EP3380854A1 (en) Scan logic for circuit designs with latches and flip-flops
US11017135B2 (en) Scan logic for circuit designs with latches and flip-flops
US20040019830A1 (en) Test apparatus of semiconductor integrated circuit with hold error preventing function
JP6534592B2 (ja) スキャンテスト回路及びスキャンテスト装置
JP2011055224A (ja) フリップフロップ回路
US8816759B2 (en) Electric circuit and semiconductor device
JP2016201623A (ja) フリップフロップ回路および半導体集積回路装置
JP4649064B2 (ja) 出力回路
JP2014087008A (ja) 半導体装置及びその設計方法
JP5231065B2 (ja) スキャン用フリップフロップ回路
JP6697798B2 (ja) 半導体集積回路
JP5286686B2 (ja) クロック乗換回路