JP2006128635A - 半導体集積回路 - Google Patents

半導体集積回路 Download PDF

Info

Publication number
JP2006128635A
JP2006128635A JP2005265444A JP2005265444A JP2006128635A JP 2006128635 A JP2006128635 A JP 2006128635A JP 2005265444 A JP2005265444 A JP 2005265444A JP 2005265444 A JP2005265444 A JP 2005265444A JP 2006128635 A JP2006128635 A JP 2006128635A
Authority
JP
Japan
Prior art keywords
flip
flop
flops
clock
function
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.)
Ceased
Application number
JP2005265444A
Other languages
English (en)
Inventor
Genichiro Inoue
源一郎 井上
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2005265444A priority Critical patent/JP2006128635A/ja
Priority to US11/239,466 priority patent/US7383523B2/en
Publication of JP2006128635A publication Critical patent/JP2006128635A/ja
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • G06F1/10Distribution of clock signals, e.g. skew
    • 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/318583Design for test
    • 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/318594Timing aspects

Landscapes

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

Abstract

【課題】 機能変更用論理回路としての予備のフリップフロップを用いて機能修正を行う場合、各フリップフロップに供給されるクロック信号に悪影響を与えることがない半導体集積回路を提供する。
【解決手段】 半導体集積回路は、1の機能の実現に寄与する複数の通常のフリップフロップ110〜114と、複数の機能変更用フリップフロップ115〜116と、前記通常フリップフロップ及び前記予備フリップフロップについてタイミングが調整されたクロック信号を生成し、調整されたクロック信号を前記通常のフリップフロップ及び前記機能変更用フリップフロップに供給するクロックツリーシンセシス回路103とが配置されて構成されている。
【選択図】 図1

Description

本発明は、リペアセルとして予備のフリップフロップが予め埋めこまれた半導体集積回路に関する。
近年、半導体集積回路を搭載する商品の市場規模の増大、商品の多様化、ライフサイクルの短期間化、高機能化が著しい。このような状況下で、半導体集積回路には、短期間の開発と高機能が強く求められている。
また、半導体製造技術の進歩により、微細プロセスを用いて、従来では1つの半導体集積回路に搭載できなかったような大規模回路も、1つの半導体集積回路に集積できるようになってきている。
従って、半導体集積回路の設計には、短期間に、1つの半導体集積回路に莫大な回路を搭載するという設計手法を用いた設計技術が要求されている。
最先端の微細プロセスを用いて設計すれば、商品システムにおける半導体の総単価を下げる、大規模回路が1つの半導体集積回路に搭載できる等という利点はあるが、逆に拡散期間の増大、マスクの高価格化、シグナルインテグリティによるタイミング設計の難易度上昇、機能検証期間の長大化などの欠点もある。
これらの事情から、短期間に、高性能で、大規模な半導体集積回路を開発するために、下地マスク発注後に、配線層修正により、短期間で容易に機能修正が可能なように、所定機能を実現する論理回路以外に、予め機能変更用論理回路をリペアセルとして半導体集積回路内に埋め込んでおく手法が知られている。
上述のリペアセルを用いたレイアウト設計方法の一例として、特許文献1が挙げられる。
特許文献1により開示された技術によると、レイアウト設計開始後または半導体集積回路装置の拡散層のマスク形成中に見つかったタイミング制約違反や設計変更等を修正するために、最初の回路設計の段階で、後に生じる可能性のある回路変更を予測して、回路修正に要する予備のスタンダードセルを配置工程においてレイアウトに挿入する。回路修正の必要が生じた際には、挿入した予備のスタンダードセルと配線だけで回路変更を行う。
特開2000−150659号公報
従来技術によると、予め予備のスタンダードセルが配置されているので、配置された予備のスタンダードセルと配線だけで回路変更を行うことができるものの、回路変更に用いる予備のスタンダードセルにクロック信号を供給しようとすると、新たにクロック信号を供給するための配線を設ける必要があり、この配線により、本来の機能実現のためのスタンダードセルに対して供給されるクロック信号のタイミング調整のバランスが崩れてしまうという問題がある。また、予備のスタンダードセルへクロック信号を供給するため、配線を追加し変更することにより、追加変更される配線の近傍の信号線にクロストークの影響を与えてしまい、タイミングの悪化を引き起こしてしまうことがあるという問題がある。
これらの問題点のために、タイミングに悪影響をおこさずに修正を行うことが困難であり、結果として設計期間を短縮できないことがある。
上記問題点を解決するために、本発明は、予備のフリップフロップが用いられるように自回路が設計変更された場合であっても、自回路に搭載された各フリップフロップに供給されるクロック信号に悪影響を与えることがない半導体集積回路及びその製造方法を提供することを目的とする。
上記目的を達成するために、本発明は、所定の機能の実現のために設計された半導体集積回路であって、前記機能の実現に寄与する複数の通常フリップフロップと、複数の予備フリップフロップと、前記通常フリップフロップ及び前記予備フリップフロップについてタイミングが調整されたクロック信号を生成し、調整されたクロック信号を前記通常フリップフロップ及び前記予備フリップフロップに供給するクロック調整回路とが配置されていることを特徴とする。
この構成によると、予備のフリップフロップに対して、予めタイミングが調整されたクロック信号が供給されているので、予備のフリップフロップを用いるように配線の設計を変更しても、各フリップフロップに供給されるクロック信号に悪影響を与えることはないという優れた効果を奏する。
こうして、例えば不具合によって機能修正が行われた場合であっても、各フリップフロップに供給されるクロックのタイミング調整をする必要がないので、この分だけ設計期間を短縮することができる。
ここで、各予備フリップフロップが備えるデータ入力端子は、固定された論理値の入力を受け付けるとしてもよい。
また、各予備フリップフロップが備えるデータ出力端子は、他のいずれの端子にも接続されていないとしてもよい。
また、各予備フリップフロップが備えるデータ出力端子は、他のフリップフロップのスキャン入力端子を除いて、他のフリップフロップが有するいずれの端子にも接続されていないとしてもよい。なお、予備フリップフロップが有するデータ出力端子が、他のフリップフロップが有するスキャン入力端子に接続される場合には、バッファ回路やインバータ回路を介してもよいことは言うまでもない。
これらの構成によると、各予備フリップフロップは、前記機能の実現に寄与せず、用いられていないので、後の設計変更により、各予備フリップフロップを別の用途に用いることができる。
ここで、前記半導体集積回路において、さらに、前記複数の通常フリップフロップ及び前記複数の予備フリップフロップを順次接続するスキャンパス配線、及び前記複数の通常フリップフロップ及び前記複数の予備フリップフロップに接続するスキャン制御信号配線のいずれか、又は前記スキャンパス配線及び前記スキャン制御信号配線の双方が配置されているとしてもよい。
この構成によると、通常フリップフロップ及び予備フリップフロップに対してスキャンパステストが容易に実現できる。
なお、従来技術によると、さらに、故障検出率を上げる為に、予備フリップフロップもスキャンパスの対象にすると、新規にスキャンパスに追加するための配線追加や、スキャン制御信号の配線追加によって、追加される配線の近傍の信号線に、クロストークの影響を与えてしまい、タイミングの悪化を引き起こしてしまう場合がある。本発明は、この問題点を解決している。
ここで、前記半導体集積回路は、複数の機能ブロックから構成され、前記予備フリップフロップは、いずれかの1個の機能ブロック内に前記通常フリップフロップと混在して配置され、又は前記機能ブロックの外側近傍に配置されているとしてもよい。
この構成によると、予備フリップフロップが、前記機能ブロックの内部又は周辺に配置されているので、前記機能ブロックの果たす役割を修正する場合又はその役割にさらに別の機能を追加する場合に、短い配線経路により実現することができる。
ここで、複数の機能ブロックのうち少なくとも1個の機能ブロックは、複数のサブ機能ブロックを含み、各サブ機能ブロックは、所定の動作期間において動作し、前記半導体集積回路は、さらに、クロック信号を分岐してサブ機能ブロック毎にサブクロック信号を生成し、生成したサブクロック信号の各サブ機能ブロックへの供給を制御するクロック供給制御回路を備えるとしてもよい。
この構成によると、各サブ機能ブロックに対して、サブクロック信号の供給を制御できるので、サブ機能ブロック機能毎にその稼動及び停止を制御することができる。前記サブ機能ブロックにサブクロック信号が供給されず、サブ機能ブロック機能の稼動が停止している場合には、消費電力が低減される。
ここで、いずれか1個の前記サブ機能ブロックは、前記通常フリップフロップと、前記予備フリップフロップとを備え、前記クロック供給制御回路は、前記サブ機能ブロックが動作しない停止期間において、前記通常フリップフロップ及び前記予備フリップフロップへの前記サブクロック信号の供給を停止するとしてもよい。
この構成によると、前記サブ機能ブロックに対して、サブクロック信号の供給を停止できるので、前記サブ機能ブロックの稼動を停止させることができる。
ここで、前記クロック供給制御回路は、イネーブル信号に応じて、サブクロック信号を前記サブ機能ブロックへ供給し、又は供給を停止する論理回路を備えるとしてもよい。
この構成によると、イネーブル信号に応じて、サブ機能ブロック機能毎にその稼動及び停止を制御することができる。
ここで、前記複数のサブ機能ブロックのうち1のサブ機能ブロックは、前記予備フリップフロップのみで構成されており、前記クロック供給制御回路は、イネーブル信号に応じて、サブクロック信号を前記サブ機能ブロックへ供給し、又は供給を停止する論理回路を備えるとしてもよい。
この構成によると、イネーブル信号に応じて、予備フリップフロップのみから構成される前記サブ機能ブロック機能の稼動及び停止を制御することができるので、予備フリップフロップが用いられていない段階において、半導体集積回路の消費電力を節約することができ、また、いずれか又は全ての予備フリップフロップが用いられるように配線の修正がされた段階において、当該サブ機能ブロックに対してサブクロック信号を供給することができる。
ここで、前記クロック供給制御回路は、サブクロック信号の供給の停止を示す前記イネーブル信号を取得し、前記サブ機能ブロックへのサブクロック信号の供給を常時停止するとしてもよい。
この構成によると、サブクロック信号の供給の停止を示すイネーブル信号に応じて、予備フリップフロップのみから構成される前記サブ機能ブロック機能の稼動を停止するので、予備フリップフロップが用いられていない段階において、半導体集積回路の消費電力を節約することができる。
ここで、前記クロック調整回路は、ツリー状に配置された複数のクロックバッファを備え、タイミングが調整されたクロック信号を供給するとしてもよい。
この構成によると、複数のクロックバッファがツリー状に配置されているので、入力された原クロック信号を枝状に分岐して、複数の調整されたクロック信号を生成することができる。
以上説明したように、本発明の半導体集積回路は、予備フリップフロップに関して、機能修正又は機能追加が確定していない段階であっても、各通常フリップフロップ及び各予備フリップフロップに対して、予めタイミングが調整されたクロック信号を供給する。
さらに、予備フリップフロップにタイミング調整されたゲーティッドクロック信号を供給することが望ましい。また、予備フリップフロップのみに供給されるゲーティッドクロック信号を設けることが好ましい。
また、機能修正又は機能追加を行うか否かが確定していない段階であっても、予備フリップフロップをスキャンパスの対象にしておき、スキャンパスのための接続配線や、スキャン制御信号の接続配線を行うことが好ましい。
このように、本発明の半導体集積回路は、予めタイミング調整されたクロック信号を予備フリップフロップに供給しているので、不具合などが発生して機能修正や機能追加が行われた場合であっても、クロック信号のタイミングを調整する必要がなく、その分だけ設計期間を短縮することができる。
また、本発明は、所定の機能の実現する半導体集積回路の製造方法であって、前記機能の実現に寄与する複数の通常フリップフロップを配置するステップと、複数の予備フリップフロップを配置するステップと、前記通常フリップフロップ及び前記予備フリップフロップについてタイミングが調整されたクロック信号を生成し、調整されたクロック信号を前記通常フリップフロップ及び前記予備フリップフロップに供給するクロック調整回路を配置するステップとから構成される。
ここで、前記製造方法は、さらに、前記複数の通常フリップフロップ及び前記複数の予備フリップフロップを順次接続するスキャンパス配線、及び前記複数の通常フリップフロップ及び前記複数の予備フリップフロップに接続するスキャン制御信号配線を配置するとしてもよい。なお、予備フリップフロップが有するデータ出力端子が、他のフリップフロップが有するスキャン入力端子に接続される場合には、バッファ回路やインバータ回路を介してもよいことは言うまでもない。
これらの製造方法を用いて半導体集積回路を製造することにより、上述したように、クロック信号のタイミングを調整する必要がなく、その分だけ設計期間を短縮することができる。
1.第1の実施の形態
本発明に係る第1の実施の形態としての半導体集積回路10(図示していない)について説明する。半導体集積回路10は、所望の機能を実現するために、複数のスタンダードセル(フリップフロップ、インバータ等)が配置された1以上のセル配置層、1以上のメタル配線層及びその他の層から構成されている。各セルは、メタル配線層上に配されている信号線を介して、他のセル等と接続されている。半導体集積回路10は、機能ブロック101を含む複数の機能ブロックから構成される。
ここでは、第1の実施の形態における半導体集積回路10を構成する機能ブロック101について説明する。
1.1 機能ブロック101の構成
クロック構成を中心として説明すると、機能ブロック101は、図1に示すように、クロック入力端子102、信号線121、クロックツリーシンセシス回路(以下、CTS回路と称す)103、信号線123、124、通常のフリップフロップ110〜114、機能変更用フリップフロップ115〜117から構成されている。ここで、図1は、機能ブロック101について、そのクロック構成を中心に、模式的に単純化して表現したレイアウト構成図を示している。
また、本来の機能及び予備的な機能を実現するための構成を中心として説明すると、機能ブロック101は、図2に示すように、入力端子201、フリップフロップ110〜114、機能変更用フリップフロップ115〜117、1以上のセルから構成されるセル集合211〜215、信号線221〜231及び出力端子202から構成されている。ここで、図2は、機能ブロック101について、本来の機能及び予備的な機能を実現するための構成を中心に、模式的に単純化して表現したレイアウト構成図を示している。
機能ブロック101は、クロック入力端子102を介して、外部からクロック信号を受け取る。また、機能ブロック101は、入力端子201を介して、外部から信号を受け取り、内部で生成した信号を、出力端子202を介して、外部へ出力する。
(1)CTS回路103の構成
CTS回路103は、クロック信号の分配のためにクロックバッファをツリー状に接続して構成したものであり、図1に示すように、入力端子125、クロックバッファ104〜106、信号線122、出力端子126及び出力端子127から構成されている。入力端子125は、クロックバッファ104の入力端子に接続され、クロックバッファ104の出力端子は、信号線122に接続されている。また、信号線122は、クロックバッファ105及び106の入力端子にそれぞれ接続され、クロックバッファ105及び106の出力端子は、それぞれ、出力端子126及び出力端子127に接続されている。
このように、クロックバッファ104〜106は、クロックバッファ104をルートとし、クロックバッファ105、106をリーフとする2段階の、言い換えると、2層のツリー構造を形成している。
クロックバッファ104〜106の駆動能力及び信号線122の配線長は、機能ブロック101内に配置されたフリップフロップ110〜114及び機能変更用フリップフロップ115〜117に対して、所定のクロックスキューを満たしながらクロック信号が供給されるように、タイミング調整されている。
このようにしてCTS回路103は、クロック入力端子102を介して、外部から受け取ったクロック信号を調整し、調整されたクロック信号を、出力端子126及び127から外部へ出力する。
(2)フリップフロップ110〜114及び機能変更用フリップフロップ115〜117の構成
フリップフロップ110〜114及び機能変更用フリップフロップ115〜117は、それぞれ、スキャン機能付きのD型フリップフロップであり、外部との接続のために、データ入力端子D、スキャン入力端子SI、スキャンイネーブル端子SE、データ出力端子Q、反転データ出力端子NQ、クロック入力端子CK及びその他の端子を備えている。なお、スキャン機能付きのD型フリップフロップについては、公知であるので説明を省略する。
本明細書に付随する図面において、これらのフリップフロップと、他のセルとの接続関係を明確にするために、これらのフリップフロップの表記方法の一例を図3に示す。図3に示すフリップフロップ151は、データ入力端子152、スキャン入力端子153、スキャンイネーブル端子154、データ出力端子156、反転データ出力端子157、クロック入力端子155を備え、フリップフロップ161は、データ入力端子162、スキャン入力端子163、スキャンイネーブル端子164、データ出力端子166、反転データ出力端子167、クロック入力端子165を備えている。
フリップフロップ151及び161において、記号「D」、「SI」、「SE」、「Q」、「NQ」及び三角形の表示が、それぞれ、データ入力端子D、スキャン入力端子SI、スキャンイネーブル端子SE、データ出力端子Q、反転データ出力端子NQ及びクロック入力端子CKを示している。
なお、図3に示すフリップフロップ151及び161は、データ入力端子D及びスキャン入力端子SIの記載位置と、データ出力端子Q及び反転データ出力端子NQの記載位置とを左右に入れ換えて表示し、表現方法のみが異なるものであり、同一のフリップフロップである。
フリップフロップ110〜114は、機能ブロック101の本来の機能を実現するためのフリップフロップである。
機能変更用フリップフロップ115〜117は、予備的であり待機状態にあるフリップフロップであって、半導体集積回路10に不具合が生じたときにメタル配線層のみの修正で対処できるように、機能ブロック101内でフリップフロップ110〜114と混在させながら、かつ修正される可能性が高い箇所(多くのフリップフロップが集積している箇所等)に配置されている。機能変更用フリップフロップ115〜117のデータ入力端子は、全て論理値「0」が入力されるように構成され、機能ブロック101の本来の機能実現には寄与していない。機能変更用フリップフロップ115〜117のデータ出力端子及び反転データ出力端子は、どこにも接続されていない、つまり、開放されており、浮いている。
(3)各セルの接続関係
クロック入力端子102は、信号線121を介して、CTS回路103の入力端子125と接続されている。CTS回路103の第1の出力端子126は、信号線123を介して、フリップフロップ110、111、112及び機能変更用フリップフロップ115のクロック入力端子にそれぞれ接続されている。また、CTS回路103の第2の出力端子127は、信号線124を介して、フリップフロップ113、114及び機能変更用フリップフロップ116、117のクロック入力端子にそれぞれ接続されている。
入力端子201は、信号線221を介して、フリップフロップ110のデータ入力端子に接続されており、フリップフロップ110のデータ出力端子は、信号線222、セル集合211及び信号線223を介して、フリップフロップ111のデータ入力端子に接続されており、フリップフロップ111のデータ出力端子は、信号線224、セル集合212及び信号線225を介して、フリップフロップ112のデータ入力端子に接続されており、フリップフロップ112のデータ出力端子は、信号線226、セル集合213、信号線227、セル集合214及び信号線228を介して、フリップフロップ113のデータ入力端子に接続されており、フリップフロップ113のデータ出力端子は、信号線229、セル集合215及び信号線230を介して、フリップフロップ114のデータ入力端子に接続されており、フリップフロップ114のデータ出力端子は、信号線231を介して、出力端子202に接続されている。
1.2 メタル配線層が修正された後に製造された半導体集積回路の構成
上述したように構成される半導体集積回路10を使用した際に不具合が生じると、発生した不具合を解消するために、機能変更用フリップフロップ115〜117の全て又はいずれかのフリップフロップのデータ入力端子、データ出力端子及び反転データ出力端子が、他のセル等と接続されるように、メタル配線層の設計が修正される。
こうして、メタル配線層の設計が修正された後において製造された新たな半導体集積回路10a(図示していない)では、機能変更用フリップフロップ115〜117のいずれか又は全てのフリップフロップは、メタル配線層を介して、他のセル等と接続され、フリップフロップ110〜114と同様に、これらの機能変更用フリップフロップは、CTS回路103から出力されるクロック信号により同期をとりながら、動作することになる。
メタル配線層の設計が修正された後において製造された新たな半導体集積回路10aを構成する機能ブロック101aについて説明する。
メタル配線層の設計の修正により、図2に示すフリップフロップ114のデータ出力端子と、出力端子202とを結合する信号線231が廃止され、信号線231に代えて、新たに、フリップフロップ114のデータ出力端子と機能変更用フリップフロップ117のデータ入力端子とを結合する信号線232と、機能変更用フリップフロップ117のデータ出力端子と出力端子202とを結合する信号線233とが、新たにメタル配線層上に設けられる。
その結果、機能ブロック101aにおいては、図4に示すように、フリップフロップ114のデータ出力端子が、信号線232を介して、機能変更用フリップフロップ117のデータ入力端子に接続され、機能変更用フリップフロップ117のデータ出力端子は、信号線233を介して、出力端子202に接続される。
機能ブロック101aにおいて、その他の部分については、図2に示す機能ブロック101の構成と同じである。
1.3 第1の実施の形態のまとめ
以上説明したように、クロック入力端子102を介して受信したクロック信号は、CTS回路103によってタイミング調整され、タイミング調整されたクロック信号がフリップフロップ110〜114及び機能変更用フリップフロップ115〜117のすべてに対して供給される。
このように、機能変更用フリップフロップ115〜117に対して、他のフリップフロップと同様に、CTS回路103によって予めタイミング調整されたクロック信号が入力されているので、メタル配線層のマスク修正によって、機能変更用フリップフロップ115〜117のうちの一部もしくは全部の機能変更用フリップフロップを使用するように、機能ブロック101の動作を変更する場合であっても、このときにタイミング調整を行う必要はなく、クロック信号供給経路に関する配線層修正を行う必要がない。したがって、クロック信号の配線層修正によってフリップフロップ110〜114および機能変更用フリップフロップ115〜117に供給するクロック信号のタイミングに影響を及ぼすことがない。また、設計の当初から、タイミング調整、クロストークについて、機能変更用フリップフロップ115〜117のクロック配線を加味して設計できるので、後で修正するよりも設計が容易である。
1.4 第1の実施の形態の変形例
第1の実施の形態の変形例としての半導体集積回路10b(図示していない)を構成する機能ブロック101bは、機能ブロック101と同様の構成に加えて、さらに、フリップフロップ110〜114及び機能変更用フリップフロップ115〜117についてのスキャンパステストを行う機能を備えている。
具体的には、機能ブロック101bは、機能ブロック101と同様の構成に加えて、図5に示すように、さらに、スキャンデータ入力端子241、スキャンイネーブル信号入力端子242、信号線251〜259、信号線261、スキャンデータ出力端子243を含んで構成される。図5は、半導体集積回路10bを構成する機能ブロック101bのスキャン構成を中心に、模式的に単純化したレイアウト構成図である。図1と同一の構成要素については同一の符号を付し、これらの構成要素の説明は省略する。
信号線251〜259をスキャンパス配線と呼び、信号線261をスキャン制御信号配線と呼ぶ。
スキャンデータ入力端子241は、信号線251を介して、フリップフロップ110のスキャン入力端子SIに接続されており、フリップフロップ110のデータ出力端子Qは、信号線252を介して、フリップフロップ111のスキャン入力端子SIに接続されている。フリップフロップ111のデータ出力端子Qは、信号線253を介して、機能変更用フリップフロップ115のスキャン入力端子SIに接続されており、機能変更用フリップフロップ115のデータ出力端子Qは、信号線254を介して、フリップフロップ112のスキャン入力端子SIに接続されている。フリップフロップ112のデータ出力端子Qは、信号線255を介して、機能変更用フリップフロップ116のスキャン入力端子SIに接続されている。機能変更用フリップフロップ116のデータ出力端子Qは、信号線256を介して、フリップフロップ113のスキャン入力端子SIに接続されており、フリップフロップ113のデータ出力端子Qは、信号線257を介して、フリップフロップ114のスキャン入力端子SIに接続されている。フリップフロップ114のデータ出力端子Qは、信号線258を介して、機能変更用フリップフロップ117のスキャン入力端子SIに接続されており、機能変更用フリップフロップ117のデータ出力端子Qは、信号線259を介して、スキャンデータ出力端子243に接続されている。
また、スキャンイネーブル信号入力端子242は、信号線261と接続され、フリップフロップ110〜114、機能変更用フリップフロップ115〜117の各スキャンイネーブル端子SEは、信号線261と接続されている。
機能ブロック101bは、外部からスキャンデータ入力端子241を介して、スキャンデータを受信する。受信したスキャンデータは、信号線251、フリップフロップ110、信号線252、フリップフロップ111、信号線253、機能変更用フリップフロップ115、信号線254、フリップフロップ112、信号線255、機能変更用フリップフロップ116、信号線256、フリップフロップ113、信号線257、フリップフロップ114、信号線258、機能変更用フリップフロップ117、信号線259及びスキャンデータ出力端子243を介して、外部へ出力される。
また、機能ブロック101bは、外部からスキャンイネーブル信号入力端子242を介して、スキャンイネーブル信号を受信し、受信したスキャンイネーブル信号を信号線261を介して、出力する。フリップフロップ110〜114及び機能変更用フリップフロップ115〜117の各スキャンイネーブル端子SEは、信号線261を介して、スキャンイネーブル信号を受信する。スキャンイネーブル信号は、論理値「1」又は論理値「0」をとる。論理値「1」は、各フリップフロップ及び各機能変更用フリップフロップに対するスキャンシフト動作の指示を示し、論理値「0」は、各フリップフロップ及び各機能変更用フリップフロップに対する通常動作の指示を示す。
これによって、スキャンイネーブル信号入力端子242に入力されるスキャンイネーブル信号が論理値「1」のときには、フリップフロップ110〜114及び機能変更用フリップフロップ115〜117は、それぞれ、スキャンシフト動作を行う。また、スキャンイネーブル信号入力端子242に入力されるスキャンイネーブル信号が論理値「0」のときには、フリップフロップ110〜114及び機能変更用フリップフロップ115〜117は、それぞれ、通常動作する。
(変形例のまとめ)
以上説明したように、機能ブロック101bが、スキャンイネーブル信号入力端子242を介して、論理値「1」のスキャンイネーブル信号を受信すると、フリップフロップ110〜114、機能変更用フリップフロップ115〜117のすべてのフリップフロップはスキャンシフト動作状態となり、スキャンデータ入力端子241から入力したスキャンデータ信号は、直列接続されたフリップフロップ110、111、機能変更用フリップフロップ115、フリップフロップ112、機能変更用フリップフロップ116、フリップフロップ113、114、機能変更用フリップフロップ117により構成されるスキャンパス接続を介して、スキャンデータ出力端子243から外部へ出力される。
メタル配線層のマスク修正によって、機能変更用フリップフロップ115〜117のうちの一部、又は全部の機能変更用フリップフロップを使用するように、機能ブロック101bの動作を変更する場合であっても、機能変更用フリップフロップ115〜117は、それぞれ既に、スキャンイネーブル信号を受信でき、またスキャンデータチェーンも既に設定されているため、スキャンに関する配線層修正を行う必要がない。
1.5 設計の手順1
第1の実施の形態の変形例としての半導体集積回路10bの設計の手順について、図6に示すフローチャートを用いて説明する。
最初に、所定の機能を実現する回路設計を行う。つまり、通常のフリップフロップ、AND、NOR等の標準セルを配置する通常のレイアウト設計を行う(ステップS101)。
次に、上記の標準セルを配置して空いた場所に、機能変更用フリップフロップ、機能変更用AND、NOR等の基本ゲートを追加して配置するレイアウト設計を行う(ステップS102)。
次に、通常のフリップフロップと機能変更用フリップフロップとに対して、共通にクロック信号のタイミングを調整する。つまり、標準セルの配置位置、配線のレイアウトの変更を行いながら、タイミングを合わせる(ステップS103)。
さらに、通常のフリップフロップと機能変更用フリップフロップとに対して、スキャンパス接続及びスキャン制御信号接続のための信号線のレイアウトを行う(ステップS104)。
こうして、通常のフリップフロップ及び機能変更用フリップフロップが配置されたレイアウト設計が完成し、完成した設計に基づいて、半導体集積回路10bを製造する。
次に製造された半導体集積回路10bがテストされるなどしてその不具合が発見された場合には、次のようにして修正がなされる。
機能変更用フリップフロップの修正が必要か否かが判断され、必要でないなら(ステップS105)、機能変更用フリップフロップを使わずに修正がなされる(ステップS106)。こうして修正が完了する。
機能変更用フリップフロップの修正が必要と判断された場合に(ステップS105)、さらに、配線層のみで修正が可能か否かが判断され、修正が可能でない場合に(ステップS107)、トランジスタ自体を追加するなど拡散層を修正することにより下地を含めて修正する(ステップS108)。こうして修正が完了する。
配線層のみで修正が可能である場合に(ステップS107)、機能変更用フリップフロップや機能変更用のAND、NOR等の基本ゲートを、配線層による配線でつなぐことにより、回路・レイアウトを修正する(ステップS109)。これ以降、接続された機能変更用フリップフロップは、通常のフリップフロップとして動作する。こうして修正が完了する。
1.6 設計の手順2
第1の実施の形態の半導体集積回路10の設計の手順について、図7に示すフローチャートを用いて説明する。
最初に、所定の機能を実現する回路設計を行う。つまり、通常のフリップフロップ、AND、NOR等の標準セルを配置する通常のレイアウト設計を行う(ステップS101)。
次に、上記の標準セルを配置して空いた場所に、機能変更用フリップフロップ、機能変更用AND、NOR等の基本ゲートを追加して配置するレイアウト設計を行う(ステップS102)。
次に、通常のフリップフロップと機能変更用フリップフロップとに対して、共通にクロック信号のタイミングを調整する。つまり、標準セルの配置位置、配線のレイアウトの変更を行いながら、タイミングを合わせる(ステップS103)。
こうして、通常のフリップフロップ及び機能変更用フリップフロップが配置されたレイアウト設計が完成し、完成した設計に基づいて、半導体集積回路10を製造する。
次に製造された半導体集積回路10がテストされるなどしてその不具合が発見された場合には(ステップS121)、機能変更用フリップフロップの修正が必要か否かが判断され、必要でないなら(ステップS105)、機能変更用フリップフロップを使わずに修正がなされる(ステップS106)。こうして修正が完了する。
機能変更用フリップフロップの修正が必要と判断された場合に(ステップS105)、さらに、配線層のみで修正が可能か否かが判断され、修正が可能でない場合に(ステップS107)、トランジスタ自体を追加するなど拡散層を修正することにより下地を含めて修正する(ステップS108)。こうして修正が完了する。
配線層のみで修正が可能である場合に(ステップS107)、機能変更用フリップフロップや機能変更用のAND、NOR等の基本ゲートを、配線層による配線でつなぐことにより、回路・レイアウトを修正する(ステップS109)。次に、通常のフリップフロップと、元の機能変更用フリップフロップであって配線層の修正による通常のフリップフロップとなったものとに対して、スキャンパス接続及びスキャン制御信号接続のための信号線のレイアウトを行う(ステップS122)。
これ以降、修正の対象となった機能変更用フリップフロップは、通常のフリップフロップとして動作する。こうして修正が完了する。
1.7 第1の実施の形態及び変形例のまとめ
以上のように、本願発明における第1の実施の形態及びその変形例によると、例えメタル配線層の修正によって、機能変更用フリップフロップ115〜117の一部又は全部の機能変更用フリップフロップを使用して、機能ブロック101又は101bの動作を変更する場合でも、クロック信号、スキャンデータ信号、スキャンイネーブル信号の配線層修正を行う必要はない。
これらの配線層修正が必要であった従来の場合と比較して、配線層修正によって発生していたクロストーク等の新たな影響を他の信号線に発生させることを防止することができ、さらに、他のフリップフロップに接続しているクロック信号の新たなタイミング調整を行う必要をなくすことができる。結果として、配線層修正の設計期間を大幅に短縮することができる。
2.第2の実施の形態
本発明に係る第2の実施の形態としての半導体集積回路30(図示していない)について説明する。半導体集積回路30は、所望の機能を実現するために、複数のスタンダードセル(フリップフロップ、インバータ等)が配置された1以上のセル配置層、1以上のメタル配線層及びその他の層から構成されている。各セルは、メタル配線層上に配されている信号線を介して、他のセル等と接続されている。半導体集積回路30は、機能ブロック301及び機能ブロック411を含む複数の機能ブロックから構成される。
2.1 機能ブロック411の構成
機能ブロック411は、図8に示すように、入力端子364、クロックバッファ353、信号線371、クロックゲーティング回路350、クロックゲーティング回路351及び図示していないその他の回路を含んで構成されている。
ここで、入力端子364、クロックバッファ353、信号線371、クロックゲーティング回路350及びクロックゲーティング回路351は、クロック供給制御回路を構成している。
入力端子364は、信号線を介して、クロックバッファ353の入力端子に接続され、クロックバッファ353の出力端子は、信号線371を介して、クロックゲーティング回路350のクロック端子360及びクロックゲーティング回路351のクロック端子362に接続されている。また、クロックゲーティング回路350の出力端子及びクロックゲーティング回路351の出力端子は、それぞれ、クロック入力端子302及びクロック入力端子332を介して、機能ブロック301へ接続されている。
クロックゲーティング回路350は、クロック端子360を介して受信するクロック信号を、イネーブル信号入力端子361を介して受信するイネーブル信号に応じてゲーティングする(停止させる)ことにより、ゲーティッドクロック信号を生成し、生成したゲーティッドクロック信号を、クロック入力端子302を介して、機能ブロック301へ出力する。ここで、ゲーティッドクロック信号とは、供給・停止をコントロールされたクロック信号のことをいう。
イネーブル信号入力端子361を介して受信するイネーブル信号は、論理値「0」及び「1」のいずれかをとる。イネーブル信号が論理値「0」である場合、クロックゲーティング回路350は、クロック信号の供給を停止する。一方、イネーブル信号が論理値「1」である場合、クロックゲーティング回路350は、クロック信号を供給する。
また、イネーブル信号入力端子361を介して受信するイネーブル信号は、一定期間、論理値「0」をとる。また、イネーブル信号入力端子361を介して受信するイネーブル信号は、別の一定期間、論理値「1」をとる。これらの期間が繰り返される。
クロックゲーティング回路351は、クロック端子362を介して受信するクロック信号を、イネーブル信号入力端子363を介して受信するイネーブル信号に応じてゲーティングすることにより、ゲーティッドクロック信号を生成し、生成したゲーティッドクロック信号を、クロック入力端子332を介して、機能ブロック301へ出力する。
イネーブル信号入力端子363を介して受信するイネーブル信号は、論理値「0」及び「1」のいずれかをとる。イネーブル信号が論理値「0」である場合、クロックゲーティング回路351は、クロック信号の供給を停止する。一方、イネーブル信号が論理値「1」である場合、クロックゲーティング回路351は、クロック信号を供給する。
また、イネーブル信号入力端子363を介して受信するイネーブル信号は、一定期間、論理値「0」をとる。また、イネーブル信号入力端子363を介して受信するイネーブル信号は、別の一定期間、論理値「1」をとる。これらの期間が繰り返される。
2.2 機能ブロック301の構成
機能ブロック301は、図8及び図9に示すように、クロック入力端子302、332、入力端子380、サブ機能ブロック301a、サブ機能ブロック301b及び出力端子402から構成されている。
ここで、図8は、機能ブロック301について、そのクロック構成を中心に、模式的に単純化して表現したレイアウト構成図を示している。また、図9は、機能ブロック301について、本来の機能及び予備的な機能を実現するための構成を中心に、模式的に単純化して表現したレイアウト構成図を示している。
2.2.1 サブ機能ブロック301a
クロック構成を中心として説明すると、サブ機能ブロック301aは、図8に示すように、信号線373、CTS回路303、信号線375、376、クロックゲーティング回路352、通常のフリップフロップ310〜314、機能変更用フリップフロップ315〜317から構成されている。
また、本来の機能及び予備的な機能を実現するための構成を中心として説明すると、サブ機能ブロック301aは、図9に示すように、フリップフロップ310〜314、機能変更用フリップフロップ315〜317、1以上のセルから構成されるセル集合451〜454、信号線381〜390から構成されている。
サブ機能ブロック301aは、クロック入力端子302を介して、ゲーティッドクロック信号を受信して動作する。また、サブ機能ブロック301aは、入力端子380を介して、外部から信号を受け取り、内部で生成した信号を、信号線390を介して、サブ機能ブロック301bへ出力する。
サブ機能ブロック301aは、クロック入力端子302を介して、ゲーティッドクロック信号を受信する期間において、動作する。ゲーティッドクロック信号を受信しない期間において、動作を停止する。
(1)CTS回路303
CTS回路303は、クロックバッファ304〜306の駆動能力や配線長の調整により、サブ機能ブロック301a内のフリップフロップ310〜314及び機能変更用フリップフロップ315〜317のタイミング調整を行う回路である。CTS回路303でタイミング調整を行う対象となる回路群は、機能ブロック301が実現する機能のうち分割された機能を実現する1つのサブ機能ブロック301aである。
CTS回路303は、CTS回路103と同様に、クロック信号の分配のためにクロックバッファをツリー状に接続して構成したものであり、図8に示すように、クロックバッファ304〜306及び信号線374から構成され、1個の入力端子と2個の出力端子とを備えている。クロック入力端子302は、クロックバッファ304の入力端子に接続され、クロックバッファ304の出力端子は、信号線374に接続されている。また、信号線374は、クロックバッファ305及び306の入力端子にそれぞれ接続され、クロックバッファ305及び306の出力端子は、それぞれ、信号線375及び信号線376に接続されている。
このように、クロックバッファ304〜306は、クロックバッファ304をルートとし、クロックバッファ305、306をリーフとするツリー構造を形成している。
クロックバッファ304〜306の駆動能力及び信号線374の配線長は、サブ機能ブロック301a内に配置されたフリップフロップ310〜314及び機能変更用フリップフロップ315〜317に対して、所定のクロックスキューを満たしながらクロック信号が供給されるように、タイミング調整されている。
このようにしてCTS回路303は、クロック入力端子302を介して、機能ブロック411から受け取ったクロック信号を調整し、調整されたクロック信号を、信号線375及び376を介して、各フリップフロップ及び各機能変更用フリップフロップへ出力する。
(2)フリップフロップ310〜314及び機能変更用フリップフロップ315〜317
フリップフロップ310〜314及び機能変更用フリップフロップ315〜317は、それぞれ、スキャン機能付きのD型フリップフロップであり、外部との接続のために、データ入力端子D、スキャン入力端子SI、スキャンイネーブル端子SE、データ出力端子Q、反転データ出力端子NQ、クロック入力端子CK及びその他の端子を備えている。
フリップフロップ310〜314は、サブ機能ブロック301aの本来の機能を実現するためのフリップフロップである。
機能変更用フリップフロップ315〜317は、半導体集積回路30に不具合が生じたときにメタル配線層のみの修正で対処できるように、サブ機能ブロック301a内でフリップフロップ310〜314と混在させながら、かつ修正される可能性が高い箇所(多くのフリップフロップが集積している箇所等)に配置されている。機能変更用フリップフロップ315〜317のデータ入力端子は、全て論理値「0」が入力されるように構成され、サブ機能ブロック301aの本来の機能実現には寄与していない。機能変更用フリップフロップ315〜317のデータ出力端子及び反転データ出力端子は、どこにも接続されていない、つまり、開放されており、浮いている。
(3)クロックゲーティング回路352
クロックゲーティング回路352は、信号線376及び自身のクロック入力端子を介して受信するクロック信号を、イネーブル信号入力端子365から受信するイネーブル信号に応じてゲーティングする(停止させる)ことにより、ゲーティッドクロック信号を生成し、生成したゲーティッドクロック信号を、機能変更用フリップフロップ317のクロック入力端子へ出力する。
ここで、イネーブル信号入力端子365は、常に、停止させることを示すイネーブル信号を出力する。
(4)各セルの接続関係
クロック入力端子302は、信号線373を介して、CTS回路303の入力端子と接続されている。CTS回路303の第1の出力端子は、信号線375を介して、フリップフロップ310、311、312及び機能変更用フリップフロップ315のクロック入力端子にそれぞれ接続されている。また、CTS回路303の第2の出力端子は、信号線376を介して、フリップフロップ313、314、機能変更用フリップフロップ316及びクロックゲーティング回路352のクロック入力端子にそれぞれ接続されている。さらに、クロックゲーティング回路352のクロック出力端子は、機能変更用フリップフロップ317のクロック入力端子に接続されている。
入力端子380は、信号線381を介して、フリップフロップ310のデータ入力端子に接続されており、フリップフロップ310のデータ出力端子は、信号線382、セル集合451及び信号線383を介して、フリップフロップ311のデータ入力端子に接続されており、フリップフロップ311のデータ出力端子は、信号線384、セル集合452及び信号線385を介して、フリップフロップ312のデータ入力端子に接続されており、フリップフロップ312のデータ出力端子は、信号線386、セル集合453、信号線387を介して、フリップフロップ313のデータ入力端子に接続されており、フリップフロップ313のデータ出力端子は、信号線388、セル集合454及び信号線389を介して、フリップフロップ314のデータ入力端子に接続されており、フリップフロップ314のデータ出力端子は、信号線390を介して、サブ機能ブロック301bに接続されている。
2.2.2 サブ機能ブロック301b
クロック構成を中心として説明すると、サブ機能ブロック301bは、図8に示すように、信号線372、CTS回路333、信号線378、379、フリップフロップ340〜344、機能変更用フリップフロップ345〜347から構成されている。
また、本来の機能及び予備的な機能を実現するための構成を中心として説明すると、サブ機能ブロック301bは、図9に示すように、フリップフロップ340〜344、機能変更用フリップフロップ345〜347、1以上のセルから構成されるセル集合455〜458、信号線390〜399から構成されている。
サブ機能ブロック301bは、クロック入力端子332を介して、ゲーティッドクロック信号を受信して動作する。また、サブ機能ブロック301bは、信号線390を介して、サブ機能ブロック301aから信号を受け取り、内部で生成した信号を、信号線399及び出力端子402を介して、外部へ出力する。
サブ機能ブロック301bは、クロック入力端子332を介して、ゲーティッドクロック信号を受信する期間において、動作する。ゲーティッドクロック信号を受信しない期間において、動作を停止する。
(1)CTS回路333
CTS回路333は、クロックバッファ334〜336の駆動能力や配線長の調整により、サブ機能ブロック301b内のフリップフロップ340〜344及び機能変更用フリップフロップ345〜347のタイミング調整を行う回路である。CTS回路333でタイミング調整を行う対象となる回路群は、機能ブロック301が実現する機能のうち分割された機能を実現する1つのサブ機能ブロック301bである。
CTS回路333は、CTS回路103と同様に、クロック信号の分配のためにクロックバッファをツリー状に接続して構成したものであり、図8に示すように、クロックバッファ334〜336及び信号線377から構成され、1個の入力端子と2個の出力端子とを備えている。クロック入力端子332は、クロックバッファ334の入力端子に接続され、クロックバッファ334の出力端子は、信号線377に接続されている。また、信号線377は、クロックバッファ335及び336の入力端子にそれぞれ接続され、クロックバッファ335及び336の出力端子は、それぞれ、信号線379及び信号線378に接続されている。
このように、クロックバッファ334〜336は、クロックバッファ334をルートとし、クロックバッファ335、336をリーフとするツリー構造を形成している。
クロックバッファ334〜336の駆動能力及び信号線377の配線長は、サブ機能ブロック301b内に配置されたフリップフロップ340〜344及び機能変更用フリップフロップ345〜347に対して、所定のクロックスキューを満たしながらクロック信号が供給されるように、タイミング調整されている。
このようにしてCTS回路333は、クロック入力端子332を介して、機能ブロック411から受け取ったクロック信号を調整し、調整されたクロック信号を、信号線378及び379を介して、各フリップフロップ及び各機能変更用フリップフロップへ出力する。
(2)フリップフロップ340〜344及び機能変更用フリップフロップ345〜347
フリップフロップ340〜344及び機能変更用フリップフロップ345〜347は、それぞれ、スキャン機能付きのD型フリップフロップであり、外部との接続のために、データ入力端子D、スキャン入力端子SI、スキャンイネーブル端子SE、データ出力端子Q、反転データ出力端子NQ、クロック入力端子CK及びその他の端子を備えている。
フリップフロップ340〜344は、サブ機能ブロック301bの本来の機能を実現するためのフリップフロップである。
機能変更用フリップフロップ345〜347は、半導体集積回路30に不具合が生じたときにメタル配線層のみの修正で対処できるように、サブ機能ブロック301b内でフリップフロップ340〜344と混在させながら、かつ修正される可能性が高い箇所(多くのフリップフロップが集積している箇所等)に配置されている。機能変更用フリップフロップ345〜347のデータ入力端子は、全て論理値「0」が入力されるように構成され、サブ機能ブロック301bの本来の機能実現には寄与していない。機能変更用フリップフロップ345〜347のデータ出力端子及び反転データ出力端子は、どこにも接続されていない、つまり、開放されており、浮いている。
(3)各セルの接続関係
クロック入力端子332は、信号線372を介して、CTS回路333の入力端子と接続されている。CTS回路333の第1の出力端子は、信号線379を介して、フリップフロップ340、341、342及び機能変更用フリップフロップ345のクロック入力端子にそれぞれ接続されている。また、CTS回路333の第2の出力端子は、信号線378を介して、フリップフロップ343、344及び機能変更用フリップフロップ346、347のクロック入力端子にそれぞれ接続されている。
サブ機能ブロック301aのフリップフロップ314のデータ出力端子は、信号線390を介して、フリップフロップ340のデータ入力端子に接続されており、フリップフロップ340のデータ出力端子は、信号線391、セル集合455及び信号線392を介して、フリップフロップ341のデータ入力端子に接続されており、フリップフロップ341のデータ出力端子は、信号線393、セル集合456及び信号線394を介して、フリップフロップ342のデータ入力端子に接続されており、フリップフロップ342のデータ出力端子は、信号線395、セル集合457、信号線396を介して、フリップフロップ343のデータ入力端子に接続されており、フリップフロップ343のデータ出力端子は、信号線397、セル集合458及び信号線398を介して、フリップフロップ344のデータ入力端子に接続されており、フリップフロップ344のデータ出力端子は、信号線399を介して、出力端子402に接続されている。
2.3 メタル配線層が修正された後に製造された半導体集積回路の構成
上述したように構成される半導体集積回路30を使用した際に不具合が生じると、発生した不具合を解消するために、機能変更用フリップフロップ315〜317、345〜347の全て又はいずれかのフリップフロップのデータ入力端子、データ出力端子及び反転データ出力端子が、他のセル等と接続されるように、メタル配線層の設計が修正される。
こうして、メタル配線層の設計が修正された後において製造された新たな半導体集積回路30a(図示していない)では、機能変更用フリップフロップ315〜317、345〜347のいずれか又は全てのフリップフロップは、メタル配線層を介して、他のセル等と接続され、フリップフロップ310〜314、340〜344と同様に、これらの機能変更用フリップフロップは、CTS回路303又はCTS回路333から出力されるクロック信号により同期をとりながら、動作することになる。
メタル配線層の設計が修正された後において製造された新たな半導体集積回路30aを構成する機能ブロック301cについて説明する。
機能ブロック301cは、図10に示すように、サブ機能ブロック301a及びサブ機能ブロック301bbから構成される。
サブ機能ブロック301aは、図9に示すサブ機能ブロック301aと同じであり、変更はされていない。
メタル配線層の設計の修正により、図9に示すフリップフロップ344のデータ出力端子と、出力端子402とを結合する信号線399が廃止され、信号線399に代えて、新たに、フリップフロップ344のデータ出力端子と機能変更用フリップフロップ347のデータ入力端子とを結合する信号線400と、機能変更用フリップフロップ347のデータ出力端子と出力端子402とを結合する信号線401とが、新たにメタル配線層上に設けられる。
その結果、図10に示すように、サブ機能ブロック301bbにおいて、フリップフロップ344のデータ出力端子が、信号線400を介して、機能変更用フリップフロップ347のデータ入力端子に接続され、機能変更用フリップフロップ347のデータ出力端子は、信号線401を介して、出力端子402に接続される。
サブ機能ブロック301bbにおいて、その他の部分については、図9に示すサブ機能ブロック301bの構成と同じである。
2.4 第2の実施の形態の変形例
第2の実施の形態の変形例としての半導体集積回路30b(図示していない)を構成する機能ブロック301dは、機能ブロック301と同様の構成に加えて、さらに、フリップフロップ310〜314、340〜344及び機能変更用フリップフロップ315〜317、345〜347についてのスキャンパステストを行う機能を備えている。
具体的には、機能ブロック301dは、機能ブロック301と同様の構成に加えて、図11に示すように、さらに、スキャンデータ入力端子431、スキャンイネーブル信号入力端子432、信号線460、信号線461〜469、信号線471〜478、スキャンデータ出力端子433を含んで構成される。図11は、半導体集積回路30bを構成する機能ブロック301dのスキャン構成を中心に、模式的に単純化したレイアウト構成図である。図8と同一の構成要素については同一の符号を付し、これらの構成要素の説明は省略する。
信号線461〜469及び信号線471〜478をスキャンパス配線と呼び、信号線460をスキャン制御信号配線と呼ぶ。
スキャンデータ入力端子431は、信号線461を介して、フリップフロップ310のスキャン入力端子SIに接続されており、フリップフロップ310のデータ出力端子Qは、信号線462を介して、フリップフロップ311のスキャン入力端子SIに接続されている。フリップフロップ311のデータ出力端子Qは、信号線463を介して、機能変更用フリップフロップ315のスキャン入力端子SIに接続されており、機能変更用フリップフロップ315のデータ出力端子Qは、信号線464を介して、フリップフロップ312のスキャン入力端子SIに接続されている。フリップフロップ312のデータ出力端子Qは、信号線465を介して、機能変更用フリップフロップ316のスキャン入力端子SIに接続されている。機能変更用フリップフロップ316のデータ出力端子Qは、信号線466を介して、フリップフロップ313のスキャン入力端子SIに接続されており、フリップフロップ313のデータ出力端子Qは、信号線467を介して、フリップフロップ314のスキャン入力端子SIに接続されている。フリップフロップ314のデータ出力端子Qは、信号線468を介して、機能変更用フリップフロップ317のスキャン入力端子SIに接続されており、機能変更用フリップフロップ317のデータ出力端子Qは、信号線469を介して、フリップフロップ340のスキャン入力端子SIに接続されている。
フリップフロップ340のデータ出力端子Qは、信号線471を介して、フリップフロップ341のスキャン入力端子SIに接続されている。フリップフロップ341のデータ出力端子Qは、信号線472を介して、機能変更用フリップフロップ345のスキャン入力端子SIに接続されており、機能変更用フリップフロップ345のデータ出力端子Qは、信号線473を介して、フリップフロップ342のスキャン入力端子SIに接続されている。フリップフロップ342のデータ出力端子Qは、信号線474を介して、機能変更用フリップフロップ346のスキャン入力端子SIに接続されている。機能変更用フリップフロップ346のデータ出力端子Qは、信号線475を介して、フリップフロップ343のスキャン入力端子SIに接続されており、フリップフロップ343のデータ出力端子Qは、信号線476を介して、フリップフロップ344のスキャン入力端子SIに接続されている。フリップフロップ344のデータ出力端子Qは、信号線477を介して、機能変更用フリップフロップ347のスキャン入力端子SIに接続されており、機能変更用フリップフロップ347のデータ出力端子Qは、信号線478を介して、スキャンデータ出力端子433に接続されている。
また、スキャンイネーブル信号入力端子432は、信号線460と接続され、フリップフロップ310〜314、フリップフロップ340〜344、機能変更用フリップフロップ315〜317、機能変更用フリップフロップ345〜347の各スキャンイネーブル端子SEは、信号線460と接続されている。
機能ブロック301dは、外部からスキャンデータ入力端子431を介して、スキャンデータを受信する。受信したスキャンデータは、信号線461、フリップフロップ310、信号線462、フリップフロップ311、信号線463、機能変更用フリップフロップ315、信号線464、フリップフロップ312、信号線465、機能変更用フリップフロップ316、信号線466、フリップフロップ313、信号線467、フリップフロップ314、信号線468、機能変更用フリップフロップ317、信号線469、フリップフロップ340、信号線471、フリップフロップ341、信号線472、機能変更用フリップフロップ345、信号線473、フリップフロップ342、信号線474、機能変更用フリップフロップ346、信号線475、フリップフロップ343、信号線476、フリップフロップ344、信号線477、機能変更用フリップフロップ347、信号線478及びスキャンデータ出力端子433を介して、外部へ出力される。
また、機能ブロック301dは、外部からスキャンイネーブル信号入力端子432を介して、スキャンイネーブル信号を受信し、受信したスキャンイネーブル信号を信号線460を介して、出力する。フリップフロップ310〜314、340〜344、及び機能変更用フリップフロップ315〜317、345〜347の各スキャンイネーブル端子SEは、信号線460を介して、スキャンイネーブル信号を受信する。スキャンイネーブル信号は、論理値「1」又は論理値「0」をとる。なお、スキャンイネーブル信号については、上述した通りであるので、これ以上の説明を省略する。
これによって、スキャンイネーブル信号入力端子432に入力されるスキャンイネーブル信号が論理値「1」のときには、フリップフロップ310〜314、340〜344及び機能変更用フリップフロップ315〜317、345〜347は、それぞれ、スキャンシフト動作を行う。また、スキャンイネーブル信号入力端子432に入力されるスキャンイネーブル信号が論理値「0」のときには、フリップフロップ310〜314、340〜344及び機能変更用フリップフロップ315〜317、345〜347は、それぞれ、通常動作する。
(変形例のまとめ)
以上説明したように、機能ブロック301dが、スキャンイネーブル信号入力端子432を介して、論理値「1」のスキャンイネーブル信号を受信すると、フリップフロップ310〜314、340〜344及び機能変更用フリップフロップ315〜317、345〜347のすべてのフリップフロップはスキャンシフト動作状態となり、スキャンデータ入力端子431から入力されたスキャンデータ信号は、直列接続されたフリップフロップ310、311、機能変更用フリップフロップ315、フリップフロップ312、機能変更用フリップフロップ316、フリップフロップ313、314、機能変更用フリップフロップ317、フリップフロップ340、341、機能変更用フリップフロップ345、フリップフロップ342、機能変更用フリップフロップ346、フリップフロップ343、344、機能変更用フリップフロップ347により構成されるスキャンパス接続を介して、スキャンデータ出力端子433から外部へ出力される。
メタル配線層のマスク修正によって、機能変更用フリップフロップ315〜317、345〜347のうちの一部、又は全部の機能変更用フリップフロップを使用するように、機能ブロック301dの動作を変更する場合であっても、機能変更用フリップフロップ315〜317、345〜347は、それぞれ既に、スキャンイネーブル信号を受信でき、またスキャンデータチェーンも既に設定されているため、スキャンに関する配線層修正を行う必要がない。
2.5 設計の手順
第2の実施の形態の変形例としての半導体集積回路30bの設計の手順について、図12に示すフローチャートを用いて説明する。
最初に、サブ機能ブロックを含み、所定の機能を実現する回路設計を行う。つまり、通常のフリップフロップ、AND、NOR等の標準セルを配置する通常のレイアウト設計を行う(ステップS101a)。
次に、サブ機能ブロック単位で、上記の標準セルを配置して空いた場所に、機能変更用フリップフロップ、機能変更用AND、NOR等の基本ゲートを追加して配置するレイアウト設計を行う(ステップS102a)。
次に、通常のフリップフロップと機能変更用フリップフロップとに対して、共通にクロック信号のタイミングを調整する。つまり、標準セルの配置位置、配線のレイアウトの変更を行いながら、タイミングを合わせる(ステップS103)。
さらに、通常のフリップフロップと機能変更用フリップフロップとに対して、スキャンパス接続及びスキャン制御信号接続のための信号線のレイアウトを行う(ステップS104)。
こうして、通常のフリップフロップ及び機能変更用フリップフロップが配置されたレイアウト設計が完成し、完成した設計に基づいて、半導体集積回路30bを製造する。
次に製造された半導体集積回路30bがテストされるなどしてその不具合が発見された場合には、次のようにして修正がなされる。
機能変更用フリップフロップの修正が必要か否かが判断され、必要でないなら(ステップS105)、機能変更用フリップフロップを使わずに修正がなされる(ステップS106)。こうして修正が完了する。
機能変更用フリップフロップの修正が必要と判断された場合に(ステップS105)、さらに、配線層のみで修正が可能か否かが判断され、修正が可能でない場合に(ステップS107)、トランジスタ自体を追加するなど拡散層を修正することにより下地を含めて修正する(ステップS108)。こうして修正が完了する。
配線層のみで修正が可能である場合に(ステップS107)、サブ機能ブロック単位で、機能変更用フリップフロップや機能変更用のAND、NOR等の基本ゲートを、配線層による配線でつなぐことにより、回路・レイアウトを修正する(ステップS109a)。これ以降、機能変更用フリップフロップは、通常のフリップフロップとして動作する。こうして修正が完了する。
2.6 第2の実施の形態及びその変形例のまとめ
第2の実施の形態及びその変形例では、上述したように、各々のサブ機能ブロック内のフリップフロップ及び機能変更用フリップフロップは同期して動作を行うようにタイミング調整が行われる。しかし、1のサブ機能ブロックと他のサブ機能ブロックとの間で、フリップフロップ及び機能変更用フリップフロップが同期して動作を行うようにタイミングを揃える必要は必ずしもない。
また、第2の実施の形態及びその変形例では、機能変更用フリップフロップ315〜317、345〜347は、半導体集積回路30又は30bに不具合が生じたときにメタル配線層のみの修正で対処できるように、機能ブロック内の修正される可能性が高い箇所に配置されており、各機能変更用フリップフロップデータのデータ入力端子Dには全て論理値「0」が入力されている。
また、第2の実施の形態及びその変形例では、機能変更用フリップフロップ315〜317は、それぞれ、自身のクロック入力端子CKを介して、CTS回路303から出力されるゲーティッドクロック信号を受信する。また、機能変更用フリップフロップ345〜347は、それぞれ、自身のクロック入力端子を介して、CTS回路333から出力されるゲーティッドクロック信号を受信する。
また、第2の実施の形態及びその変形例によれば、第1の実施の形態と同様の効果を得ることができる。さらに第2の実施の形態及びその変形例によれば、以下の効果を得ることもできる。
従来の機能変更用フリップフロップは、設計変更がされない限り、クロック信号を供給されていないため電力は消費しないものの、不具合による機能修正のために使用されるとなれば常に動作する。このため、機能変更用フリップフロップを使用する場合に電力消費を十分に低減することができない。また、第1の実施の形態では、機能変更用フリップフロップを使用するか否かに関わらず、機能変更用フリップフロップに対して遅延調整されたクロック信号を供給するため、電力消費の無駄が生じてしまう。第2の実施の形態のように、機能変更用フリップフロップをゲーティッドクロックの対象とすることで、機能修正によって機能変更用フリップフロップを使用する場合でも、必要な場合のみ動作させることが可能となり、消費電力を低減させることができる。
3.第3の実施の形態
本発明に係る第3の実施の形態としての半導体集積回路50(図示していない)について説明する。半導体集積回路50は、所望の機能を実現するために、複数のスタンダードセル(フリップフロップ、インバータ等)が配置された1以上のセル配置層、1以上のメタル配線層及びその他の層から構成されている。各セルは、メタル配線層上に配されている信号線を介して、他のセル等と接続されている。半導体集積回路50は、機能ブロック501及び機能ブロック601を含む複数の機能ブロックから構成される。
3.1 機能ブロック601の構成
機能ブロック601は、図13に示すように、入力端子651、クロックバッファ507、信号線652、クロックゲーティング回路560、クロックゲーティング回路561及び図示していないその他の回路を含んで構成されている。
入力端子651は、信号線を介して、クロックバッファ507の入力端子に接続され、クロックバッファ507の出力端子は、信号線652を介して、クロックゲーティング回路560のクロック端子570及びクロックゲーティング回路561のクロック端子572に接続されている。また、クロックゲーティング回路560の出力端子及びクロックゲーティング回路561の出力端子は、それぞれ、クロック入力端子502及びクロック入力端子542を介して、機能ブロック501と接続されている。
クロックゲーティング回路560は、クロック端子570を介して受信するクロック信号を、イネーブル信号入力端子571を介して受信するイネーブル信号に応じてゲーティングする(停止させる)ことにより、ゲーティッドクロック信号を生成し、生成したゲーティッドクロック信号を、クロック入力端子502を介して、機能ブロック501へ出力する。ここで、ゲーティッドクロック信号とは、供給・停止をコントロールされたクロック信号のことをいう。
クロックゲーティング回路561は、クロック端子572を介して受信するクロック信号を、イネーブル信号入力端子573を介して受信するイネーブル信号に応じてゲーティングすることにより、ゲーティッドクロック信号を生成し、生成したゲーティッドクロック信号を、クロック入力端子542を介して、機能ブロック501へ出力する。ここで、イネーブル信号入力端子573を介して受信するイネーブル信号は、常に、論理値「0」である。論理値「0」は、機能変更用フリップフロップ550〜553に対して、クロック信号を供給しないことを示す。つまり、機能変更用フリップフロップ550〜553に対して供給されるクロック信号は、常に停止状態に固定されている。
なお、イネーブル信号入力端子573を介して受信するイネーブル信号は、常に、論理値「1」であるとしてもよい。論理値「1」は、機能変更用フリップフロップ550〜553に対して、クロック信号を供給することを示す。つまり、機能変更用フリップフロップ550〜553に対して供給されるクロック信号は、常に供給状態に固定されているとしてもよい。
3.2 機能ブロック501の構成
クロック構成を中心として説明すると、機能ブロック501は、図13に示すように、クロック入力端子502、信号線653、CTS回路503、信号線655、信号線656、通常のフリップフロップ510〜517、クロック入力端子542、信号線657、CTS回路543、信号線659、信号線660、機能変更用フリップフロップ550〜553から構成されている。ここで、図13は、機能ブロック501について、そのクロック構成を中心に、模式的に単純化して表現したレイアウト構成図を示している。
また、本来の機能及び予備的な機能を実現するための構成を中心として説明すると、機能ブロック501は、図14に示すように、入力端子698、フリップフロップ510〜517、機能変更用フリップフロップ550〜553、1以上のセルから構成されるセル集合671〜676、信号線681〜695及び出力端子699から構成されている。ここで、図14は、機能ブロック501について、本来の機能及び予備的な機能を実現するための構成を中心に、模式的に単純化して表現したレイアウト構成図を示している。
(1)CTS回路503及びCTS回路543の構成
CTS回路503は、クロック信号の分配のためにクロックバッファをツリー状に接続して構成したものであり、図13に示すように、クロックバッファ504〜506、信号線654から構成され、1個の入力端子と2個の出力端子とを備えている。クロックバッファ504の入力端子は、クロック入力端子502に接続され、クロックバッファ104の出力端子は、信号線654に接続されている。また、信号線654は、クロックバッファ505及び506の入力端子にそれぞれ接続され、クロックバッファ505及び506の出力端子は、それぞれ、信号線655及び信号線656に接続されている。
このように、クロックバッファ504〜506は、クロックバッファ504をルートとし、クロックバッファ505、506をリーフとするツリー構造を形成している。
クロックバッファ504〜506の駆動能力及び信号線654の配線長は、機能ブロック501内に配置されたフリップフロップ510〜517に対して、所定のクロックスキューを満たしながらクロック信号が供給されるように、タイミング調整されている。
このようにしてCTS回路503は、クロック入力端子502を介して、機能ブロック601から受け取ったクロック信号を調整し、調整されたクロック信号を外部へ出力する。
CTS回路543は、クロック信号の分配のためにクロックバッファをツリー状に接続して構成したものであり、図13に示すように、クロックバッファ544〜546及び信号線658から構成され、1個の入力端子と2個の出力端子とを備えている。クロックバッファ544の入力端子は、クロック入力端子542に接続され、クロックバッファ544の出力端子は、信号線658に接続されている。また、信号線658は、クロックバッファ545及び546の入力端子にそれぞれ接続され、クロックバッファ545及び546の出力端子は、それぞれ信号線660及び信号線659に接続されている。
このように、クロックバッファ544〜546は、クロックバッファ544をルートとし、クロックバッファ545、546をリーフとするツリー構造を形成している。
クロックバッファ544〜546の駆動能力及び信号線658の配線長は、機能ブロック501内に配置された機能変更用フリップフロップ550〜553に対して、所定のクロックスキューを満たしながらクロック信号が供給されるように、タイミング調整されている。
このようにしてCTS回路543は、クロック入力端子542を介して、機能ブロック601から受け取ったクロック信号を調整し、調整されたクロック信号を外部へ出力する。
ここで、CTS回路503、543は、異なるゲーティッドクロック信号を入力としてタイミング調整を行うものの、通常のフリップフロップ510〜517と、機能変更用フリップフロップ550〜553の全てが同期して動作を行うようにタイミング調整される。
(2)フリップフロップ510〜517及び機能変更用フリップフロップ550〜553
フリップフロップ510〜517及び機能変更用フリップフロップ550〜553は、それぞれ、スキャン機能付きのD型フリップフロップであり、外部との接続のために、データ入力端子D、スキャン入力端子SI、スキャンイネーブル端子SE、データ出力端子Q、反転データ出力端子NQ、クロック入力端子CK及びその他の端子を備えている。
フリップフロップ510〜517は、機能ブロック501の本来の機能を実現するためのフリップフロップである。
機能変更用フリップフロップ550〜553は、半導体集積回路50に不具合が生じたときにメタル配線層のみの修正で対処できるように、機能ブロック501内でフリップフロップ510〜517と混在させながら、かつ修正される可能性が高い箇所(多くのフリップフロップが集積している箇所等)に配置されている。機能変更用フリップフロップ550〜553のデータ入力端子は、全て論理値「0」が入力されるように構成され、機能ブロック501の本来の機能実現には寄与していない。機能変更用フリップフロップ550〜553のデータ出力端子及び反転データ出力端子は、どこにも接続されていない、つまり、開放されており、浮いている。
(3)各セルの接続関係
クロック入力端子502は、信号線653を介して、CTS回路503の入力端子と接続されている。CTS回路503の第1の出力端子は、信号線655を介して、フリップフロップ510〜512、515のそれぞれのクロック入力端子に接続されている。CTS回路503の第2の出力端子は、信号線656を介して、フリップフロップ513〜514、516〜517のそれぞれのクロック入力端子に接続されている。
また、クロック入力端子542は、信号線657を介して、CTS回路543の入力端子と接続されている。CTS回路543の第1の出力端子は、信号線660を介して、機能変更用フリップフロップ550〜551のそれぞれのクロック入力端子に接続されている。CTS回路543の第2の出力端子は、信号線659を介して、機能変更用フリップフロップ552〜553のそれぞれのクロック入力端子に接続されている。
さらに、入力端子698は、信号線681を介して、フリップフロップ510のデータ入力端子に接続されており、フリップフロップ510のデータ出力端子は、信号線682、セル集合671及び信号線683を介して、フリップフロップ511のデータ入力端子に接続されており、フリップフロップ511のデータ出力端子は、信号線684、セル集合672及び信号線685を介して、フリップフロップ512のデータ入力端子に接続されており、フリップフロップ512のデータ出力端子は、信号線686、セル集合673、信号線687を介して、フリップフロップ516のデータ入力端子に接続されており、フリップフロップ516のデータ出力端子は、信号線688、セル集合674及び信号線689を介して、フリップフロップ513のデータ入力端子に接続されており、フリップフロップ513のデータ出力端子は、信号線690、セル集合675、信号線691を介して、フリップフロップ514のデータ入力端子に接続されており、フリップフロップ514のデータ出力端子は、信号線692を介して、フリップフロップ517のデータ入力端子に接続されており、フリップフロップ517のデータ出力端子は、信号線693、セル集合676、信号線694を介して、フリップフロップ515のデータ入力端子に接続されており、フリップフロップ515のデータ出力端子は、信号線695を介して、出力端子699に接続されている。
3.3 メタル配線層が修正された後に製造された半導体集積回路の構成
上述したように構成される半導体集積回路50を使用した際に不具合が生じると、発生した不具合を解消するために、機能変更用フリップフロップ550〜553の全て又はいずれかのフリップフロップのデータ入力端子、データ出力端子及び反転データ出力端子が、他のセル等と接続されるように、メタル配線層の設計が修正される。
こうして、メタル配線層の設計が修正された後において製造された新たな半導体集積回路50a(図示していない)では、機能変更用フリップフロップ550〜553のいずれか又は全てのフリップフロップは、メタル配線層を介して、他のセル等と接続され、これらの機能変更用フリップフロップは、CTS回路543から出力されるクロック信号により同期をとりながら、動作することになる。
メタル配線層の設計が修正された後において製造された新たな半導体集積回路50aを構成する機能ブロック501aについて説明する。
メタル配線層の設計の修正により、図14に示す入力端子698と、フリップフロップ510のデータ入力端子とを結合する信号線681が廃止され、信号線681に代えて、新たに、入力端子698と機能変更用フリップフロップ550のデータ入力端子とを結合する信号線696と、機能変更用フリップフロップ550のデータ出力端子とフリップフロップ510のデータ入力端子とを結合する信号線697とが、新たにメタル配線層上に設けられる。
その結果、機能ブロック501aにおいては、図15に示すように、入力端子698と機能変更用フリップフロップ550のデータ入力端子とが、信号線696により接続され、機能変更用フリップフロップ550のデータ出力端子とフリップフロップ510のデータ入力端子とが信号線697により接続される。
機能ブロック501aにおいて、その他の部分については、図14に示す機能ブロック501の構成と同じである。
3.4 第3の実施の形態の変形例
第3の実施の形態の変形例としての半導体集積回路50b(図示していない)を構成する機能ブロック501bは、機能ブロック501と同様の構成に加えて、さらに、フリップフロップ510〜517及び機能変更用フリップフロップ550〜553についてのスキャンパステストを行う機能を備えている。
具体的には、機能ブロック501bは、機能ブロック501と同様の構成に加えて、図16に示すように、さらに、スキャンデータ入力端子631、スキャンイネーブル信号入力端子632、信号線701〜713、信号線721、スキャンデータ出力端子633を含んで構成される。図16は、半導体集積回路50bを構成する機能ブロック501bのスキャン構成を中心に、模式的に単純化したレイアウト構成図である。図13と同一の構成要素については同一の符号を付し、これらの構成要素の説明は省略する。
信号線701〜713をスキャンパス配線と呼び、信号線721をスキャン制御信号配線と呼ぶ。
スキャンデータ入力端子631は、信号線701を介して、機能変更用フリップフロップ550のスキャン入力端子SIに接続されており、機能変更用フリップフロップ550のデータ出力端子Qは、信号線702を介して、フリップフロップ510のスキャン入力端子SIに接続されている。フリップフロップ510のデータ出力端子Qは、信号線703を介して、フリップフロップ511のスキャン入力端子SIに接続されており、フリップフロップ511のデータ出力端子Qは、信号線704を介して、機能変更用フリップフロップ551のスキャン入力端子SIに接続されている。機能変更用フリップフロップ551のデータ出力端子Qは、信号線705を介して、フリップフロップ512のスキャン入力端子SIに接続されている。フリップフロップ512のデータ出力端子Qは、信号線706を介して、フリップフロップ516のスキャン入力端子SIに接続されており、フリップフロップ516のデータ出力端子Qは、信号線707を介して、機能変更用フリップフロップ552のスキャン入力端子SIに接続されている。機能変更用フリップフロップ552のデータ出力端子Qは、信号線708を介して、フリップフロップ513のスキャン入力端子SIに接続されており、フリップフロップ513のデータ出力端子Qは、信号線709を介して、機能変更用フリップフロップ553のスキャン入力端子SIに接続されている。機能変更用フリップフロップ553のデータ出力端子Qは、信号線710を介して、フリップフロップ514のスキャン入力端子SIに接続されており、フリップフロップ514のデータ出力端子Qは、信号線711を介して、フリップフロップ517のスキャン入力端子SIに接続されており、フリップフロップ517のデータ出力端子Qは、信号線712を介して、フリップフロップ515のスキャン入力端子SIに接続されており、フリップフロップ515のデータ出力端子Qは、信号線713を介して、スキャンデータ出力端子633に接続されている。
また、スキャンイネーブル信号入力端子632は、信号線721と接続され、フリップフロップ510〜517、機能変更用フリップフロップ550〜553の各スキャンイネーブル端子SEは、信号線721と接続されている。
機能ブロック501bは、外部からスキャンデータ入力端子631を介して、スキャンデータを受信する。受信したスキャンデータは、信号線701、機能変更用フリップフロップ550、信号線702、フリップフロップ510、信号線703、フリップフロップ511、信号線704、機能変更用フリップフロップ551、信号線705、フリップフロップ512、信号線706、フリップフロップ516、信号線707、機能変更用フリップフロップ552、信号線708、フリップフロップ513、信号線709、機能変更用フリップフロップ553、信号線710、フリップフロップ514、信号線711、フリップフロップ517、信号線712、フリップフロップ515、信号線713及びスキャンデータ出力端子633を介して、外部へ出力される。
また、機能ブロック501bは、外部からスキャンイネーブル信号入力端子632を介して、スキャンイネーブル信号を受信し、受信したスキャンイネーブル信号を信号線721を介して、出力する。フリップフロップ510〜517及び機能変更用フリップフロップ550〜553の各スキャンイネーブル端子SEは、信号線721を介して、スキャンイネーブル信号を受信する。スキャンイネーブル信号は、論理値「1」又は論理値「0」をとる。スキャンイネーブル信号は、については、上述した通りであるので、これ以上の説明を省略する。
これによって、スキャンイネーブル信号入力端子632に入力されるスキャンイネーブル信号が論理値「1」のときには、フリップフロップ510〜517及び機能変更用フリップフロップ550〜553は、それぞれ、スキャンシフト動作を行う。また、スキャンイネーブル信号入力端子632に入力されるスキャンイネーブル信号が論理値「0」のときには、フリップフロップ510〜517及び機能変更用フリップフロップ550〜553は、それぞれ、通常動作する。
(変形例のまとめ)
以上説明したように、機能ブロック501bが、スキャンイネーブル信号入力端子632を介して、論理値「1」のスキャンイネーブル信号を受信すると、フリップフロップ510〜517、機能変更用フリップフロップ550〜553のすべてのフリップフロップはスキャンシフト動作状態となり、スキャンデータ入力端子631から入力したスキャンデータ信号は、直列接続された機能変更用フリップフロップ550、フリップフロップ510、フリップフロップ511、機能変更用フリップフロップ551、フリップフロップ512、フリップフロップ516、機能変更用フリップフロップ552、フリップフロップ513、機能変更用フリップフロップ553、フリップフロップ514、フリップフロップ517、フリップフロップ515により構成されるスキャンパス接続を介して、スキャンデータ出力端子633から外部へ出力される。
メタル配線層のマスク修正によって、機能変更用フリップフロップ550〜553のうちの一部、又は全部の機能変更用フリップフロップを使用するように、機能ブロック501bの動作を変更する場合であっても、機能変更用フリップフロップ550〜553は、それぞれ既に、スキャンイネーブル信号を受信でき、またスキャンデータチェーンも既に設定されているため、スキャンに関する配線層修正を行う必要がない。
3.5 第3の実施の形態及びその変形例のまとめ
第3の実施の形態においては、クロック入力端子542から供給されるゲーティッドクロック信号は、CTS回路543を介して、機能変更用フリップフロップ550〜553へのみ供給されている。言い換えれば、機能変更用フリップフロップ550〜553のみで一つのサブ機能ブロックを構成しており、クロック入力端子542から供給されるゲーティッドクロック信号は、通常のフリップフロップ510〜517には供給されていない。
したがって、機能修正が行われない場合には、イネーブル信号入力端子573より入力されるイネーブル信号を常時ネゲートすることにより、機能変更用フリップフロップ550〜553をまとめて停止できるので、消費電力を大きく低減させることができる。
また、機能修正を行う場合には、CTS回路503に接続されたフリップフロップ510〜517と、CTS回路543に接続された機能変更用フリップフロップ550〜553の間でタイミング調整も行われており、設計期間を短縮することができる。
また、第3の実施の形態によれば、第2の実施の形態と同様の効果を得ることができる。さらに、第3の実施の形態によれば、機能変更用フリップフロップのみに供給されるタイミング調整されたゲーティッドクロック信号を設けることにより、機能修正を行わない場合には、まとめて機能変更用フリップフロップを停止させることができ、したがって、さらなる消費電力の低減が図れる。
4.その他の変形例
以上説明してきた第1〜第3の実施の形態は、あくまで一例であり、本発明は、これに限定されるものではない。
(1)上記の各実施の形態及び各変形例において、論理値「0」と「1」とは逆であってもよい。
つまり、上記の各実施の形態及び各変形例において、スキャンイネーブル信号入力端子を介して、論理値「1」のスキャンイネーブル信号を受信すると、各フリップフロップ及び各機能変更用フリップフロップは、スキャンシフト動作状態となり、論理値「0」のスキャンイネーブル信号を受信すると、各フリップフロップ及び各機能変更用フリップフロップは、通常動作するとしているが、論理値「1」のスキャンイネーブル信号を受信すると、通常動作し、論理値「0」のスキャンイネーブル信号を受信すると、スキャンシフト動作状態となるとしてもよい。
(2)CTS回路は各機能ブロック内に配置されるものである必要はなく、例えば、CTS回路のみをまとめた機能ブロックを別途設けて、そこから各機能ブロックにクロック供給を行うようにしても良い。
また、上記の各実施の形態において、各CTS回路は、2段階の(又は2層の)ツリー構造を形成しているが、本発明は、この構成には限定されない。各CTS回路は、クロックバッファが3段階以上に、言い換えると、3層以上に連結されて、構成されるとしてもよい。
(3)機能変更用フリップフロップを必ずしも機能ブロック内に備える必要はなく、機能ブロック外であってその近傍にまとめて配置しても良い。
(4)機能変更用フリップフロップに対して、タイミング調整されたクロック信号の接続とスキャンパスの接続の双方を行う必要もなく、どちらか一方の接続のみを行うとしてもよい。この場合に接続に応じた設計期間の短縮が図れる。
(5)上記の各実施の形態及びそれらの変形例において説明したように、各機能変更用フリップフロップのデータ出力端子及び反転データ出力端子は、どこにも接続されていない。
また、各機能変更用フリップフロップのデータ出力端子及び反転データ出力端子は、他の通常のフリップフロップのスキャン入力端子及び他の機能変更用フリップフロップのスキャン入力端子以外には、どこにも接続されていないとしてもよい。
(6)上記の第2の実施の形態及びその変形例において、機能ブロック411に代えて、別の機能ブロックを備え、この別の機能ブロックは、予め定められた所定期間のみ、クロック入力端子302を介して、機能ブロック301に対してクロック信号を供給し、また、別の所定期間のみ、クロック入力端子332を介して、機能ブロック301に対してクロック信号を供給するとしてもよい。
(7)第1〜第3の実施の形態及びこれらの変形例を組み合わせるとしてもよい。例えば、あるクロック配線はゲーティングされておらず、また別のクロック配線はゲーティングされて通常のフリップフロップと機能変更用フリップフロップの双方に接続しており、さらに別のクロック配線は機能変更用フリップフロップのみに接続するような構成としても良い。
本発明は、低消費電力と設計期間の短縮を両立できるので、リペアセルを用いる半導体集積回路に利用可能である。
本発明を構成する半導体集積回路は、電器機器製造産業において、経営的に、また継続的及び反復的に、製造し、販売することができる。また、本発明を構成する半導体集積回路は、電器機器を使用するあらゆる産業において、各種の電器機器に組み込まれて、経営的に、また継続的及び反復的に使用することができる。
第1の実施の形態の半導体集積回路10を構成する機能ブロック101のクロック構成を中心に模式的に単純化したレイアウト構成図である。 半導体集積回路10を構成する機能ブロック101の本来の機能及び予備的な機能を実現するための構成を中心に模式的に単純化したレイアウト構成図である。 本明細書に付随する図面におけるフリップフロップの表記方法の一例を示す。 メタル配線層の設計が修正された後において製造された新たな半導体集積回路10aを構成する機能ブロック101aの本来の機能及び予備的な機能を実現するための構成を中心に模式的に単純化したレイアウト構成図である。 第1の実施の形態の変形例としての半導体集積回路10bを構成する機能ブロック101bのスキャン構成を中心に、模式的に単純化したレイアウト構成図である。 第1の実施の形態の変形例としての半導体集積回路10bの設計の手順を示すフローチャートである。 第1の実施の形態の半導体集積回路10の設計の手順を示すフローチャートである。 第2の実施の形態の半導体集積回路30を構成する機能ブロック301のクロック構成を中心に模式的に単純化したレイアウト構成図である。 半導体集積回路30を構成する機能ブロック301の本来の機能及び予備的な機能を実現するための構成を中心に模式的に単純化したレイアウト構成図である。 メタル配線層の設計が修正された後において製造された新たな半導体集積回路30aを構成する機能ブロック301cの本来の機能及び予備的な機能を実現するための構成を中心に模式的に単純化したレイアウト構成図である。 第2の実施の形態の変形例としての半導体集積回路30bを構成する機能ブロック301dのスキャン構成を中心に、模式的に単純化したレイアウト構成図である。 第2の実施の形態の変形例としての半導体集積回路30bの設計の手順を示すフローチャートである。 第3の実施の形態の半導体集積回路50を構成する機能ブロック501及び機能ブロック601のクロック構成を中心に模式的に単純化したレイアウト構成図である。 半導体集積回路50を構成する機能ブロック501の本来の機能及び予備的な機能を実現するための構成を中心に模式的に単純化したレイアウト構成図である。 メタル配線層の設計が修正された後において製造された新たな半導体集積回路50aを構成する機能ブロック501aの本来の機能及び予備的な機能を実現するための構成を中心に模式的に単純化したレイアウト構成図である。 第3の実施の形態の変形例としての半導体集積回路50bを構成する機能ブロック501bのスキャン構成を中心に、模式的に単純化したレイアウト構成図である。
符号の説明
102 クロック入力端子
103 CTS回路
110〜114 通常のフリップフロップ
115〜117 機能変更用フリップフロップ
241 スキャンデータ入力端子
242 スキャンイネーブル信号入力端子
243 スキャンデータ出力端子
302 クロック入力端子
303 CTS回路
310〜314 通常のフリップフロップ
340〜344 通常のフリップフロップ
315〜317 機能変更用フリップフロップ
345〜347 機能変更用フリップフロップ
332 クロック入力端子
333 CTS回路
431 スキャンデータ入力端子
432 スキャンイネーブル信号入力端子
433 スキャンデータ出力端子
502 クロック入力端子
503 CTS回路
510〜517 通常のフリップフロップ
542 クロック入力端子
543 CTS回路
550〜553 機能変更用フリップフロップ
631 スキャンデータ入力端子
632 スキャンイネーブル信号入力端子
633 スキャンデータ出力端子

Claims (14)

  1. 所定の機能の実現のために設計された半導体集積回路であって、
    前記機能の実現に寄与する複数の通常フリップフロップと、
    複数の予備フリップフロップと、
    前記通常フリップフロップ及び前記予備フリップフロップについてタイミングが調整されたクロック信号を生成し、調整されたクロック信号を前記通常フリップフロップ及び前記予備フリップフロップに供給するクロック調整回路と
    が配置されていることを特徴とする半導体集積回路。
  2. 各予備フリップフロップが備えるデータ入力端子は、固定された論理値の入力を受け付ける
    ことを特徴とする請求項1に記載の半導体集積回路。
  3. 各予備フリップフロップが備えるデータ出力端子は、他のいずれの端子にも接続されていない
    ことを特徴とする請求項1に記載の半導体集積回路。
  4. 各予備フリップフロップが備えるデータ出力端子は、他のフリップフロップのスキャン入力端子を除いて、他のフリップフロップが有するいずれの端子にも接続されていない
    ことを特徴とする請求項1に記載の半導体集積回路。
  5. 前記半導体集積回路において、さらに、
    全ての前記複数の通常フリップフロップ及び前記複数の予備フリップフロップを順次接続するスキャンパス配線、及び前記複数の通常フリップフロップ及び前記複数の予備フリップフロップに接続するスキャン制御信号配線のいずれか、又は前記スキャンパス配線及び前記スキャン制御信号配線の双方が配置されている
    ことを特徴とする請求項1に記載の半導体集積回路。
  6. 前記半導体集積回路は、複数の機能ブロックから構成され、
    前記予備フリップフロップは、いずれかの1個の機能ブロック内に前記通常フリップフロップと混在して配置され、又は前記機能ブロックの外側近傍に配置されている
    ことを特徴とする請求項1に記載の半導体集積回路。
  7. 複数の機能ブロックのうち少なくとも1個の機能ブロックは、複数のサブ機能ブロックを含み、各サブ機能ブロックは、所定の動作期間において動作し、
    前記半導体集積回路は、さらに、クロック信号を分岐してサブ機能ブロック毎にサブクロック信号を生成し、生成したサブクロック信号の各サブ機能ブロックへの供給を制御するクロック供給制御回路を備える
    ことを特徴とする請求項6に記載の半導体集積回路。
  8. いずれか1個の前記サブ機能ブロックは、前記通常フリップフロップと、前記予備フリップフロップとを備え、
    前記クロック供給制御回路は、前記サブ機能ブロックが動作しない停止期間において、前記通常フリップフロップ及び前記予備フリップフロップへの前記サブクロック信号の供給を停止する
    ことを特徴とする請求項7に記載の半導体集積回路。
  9. 前記クロック供給制御回路は、イネーブル信号に応じて、サブクロック信号を前記サブ機能ブロックへ供給し、又は供給を停止する論理回路を備える
    ことを特徴とする請求項7記載の半導体集積回路。
  10. 前記複数のサブ機能ブロックのうち1のサブ機能ブロックは、前記予備フリップフロップのみで構成されており、
    前記クロック供給制御回路は、イネーブル信号に応じて、サブクロック信号を前記サブ機能ブロックへ供給し、又は供給を停止する論理回路を備える
    ことを特徴とする請求項7記載の半導体集積回路。
  11. 前記クロック供給制御回路は、サブクロック信号の供給の停止を示す前記イネーブル信号を取得し、前記サブ機能ブロックへのサブクロック信号の供給を常時停止する
    ことを特徴とする請求項10記載の半導体集積回路。
  12. 前記クロック調整回路は、ツリー状に配置された複数のクロックバッファを備え、タイミングが調整されたクロック信号を供給する
    ことを特徴とする請求項1記載の半導体集積回路。
  13. 所定の機能の実現する半導体集積回路の製造方法であって、
    前記機能の実現に寄与する複数の通常フリップフロップを配置するステップと、
    複数の予備フリップフロップを配置するステップと、
    前記通常フリップフロップ及び前記予備フリップフロップについてタイミングが調整されたクロック信号を生成し、調整されたクロック信号を前記通常フリップフロップ及び前記予備フリップフロップに供給するクロック調整回路を配置するステップと、
    から構成される半導体集積回路の製造方法。
  14. 前記製造方法は、さらに、
    前記複数の通常フリップフロップ及び前記複数の予備フリップフロップを順次接続するスキャンパス配線、及び前記複数の通常フリップフロップ及び前記複数の予備フリップフロップに接続するスキャン制御信号配線を配置する
    ことを特徴とする請求項13に記載の半導体集積回路の製造方法。
JP2005265444A 2004-09-30 2005-09-13 半導体集積回路 Ceased JP2006128635A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005265444A JP2006128635A (ja) 2004-09-30 2005-09-13 半導体集積回路
US11/239,466 US7383523B2 (en) 2004-09-30 2005-09-30 Semiconductor integrated circuit

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2004287056 2004-09-30
JP2005265444A JP2006128635A (ja) 2004-09-30 2005-09-13 半導体集積回路

Publications (1)

Publication Number Publication Date
JP2006128635A true JP2006128635A (ja) 2006-05-18

Family

ID=36098324

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005265444A Ceased JP2006128635A (ja) 2004-09-30 2005-09-13 半導体集積回路

Country Status (2)

Country Link
US (1) US7383523B2 (ja)
JP (1) JP2006128635A (ja)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009010804A (ja) * 2007-06-29 2009-01-15 Renesas Technology Corp 半導体集積回路の配置配線方法及び半導体集積回路の配置配線支援プログラム
JP2009175025A (ja) * 2008-01-25 2009-08-06 Nec Corp 半導体集積回路装置及びクロックスキュー計測方法
WO2010100830A1 (ja) * 2009-03-05 2010-09-10 日本電気株式会社 半導体装置、回路修正方法、設計支援装置及び設計支援プログラムが格納された記録媒体
US7919981B2 (en) 2007-07-31 2011-04-05 Renesas Electronics Corporation Integrated circuit design based on scan design technology
JP2013224917A (ja) * 2012-03-22 2013-10-31 Renesas Electronics Corp スキャンテスト回路、テストパタン生成制御回路及びスキャンテスト制御方法

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7555464B2 (en) * 2006-03-01 2009-06-30 Sony Corporation Multiple DRM management
JP2008147331A (ja) * 2006-12-08 2008-06-26 Matsushita Electric Ind Co Ltd 半導体集積回路及び半導体集積回路の修正方法
US7917882B2 (en) * 2007-10-26 2011-03-29 Mips Technologies, Inc. Automated digital circuit design tool that reduces or eliminates adverse timing constraints due to an inherent clock signal skew, and applications thereof
US7971162B2 (en) * 2008-02-18 2011-06-28 International Business Machines Corporation Verification of spare latch placement in synthesized macros
US8296707B2 (en) * 2010-11-17 2012-10-23 International Business Machines Corporation Implementing spare latch placement quality determination
US20130117618A1 (en) * 2011-11-03 2013-05-09 Freescale Semiconductor, Inc Scan testing of integrated circuit with clock gating cells
US20140266376A1 (en) * 2013-03-15 2014-09-18 Analog Devices, Inc. Active clock tree for data converters
US9135389B2 (en) 2013-09-25 2015-09-15 United Microelectronics Corporation Clock skew adjusting method and structure
US10417104B2 (en) * 2015-09-22 2019-09-17 Nxp Usa, Inc. Data processing system with built-in self-test and method therefor
US9934348B2 (en) * 2015-12-18 2018-04-03 International Business Machines Corporation Adjusting scan connections based on scan control locations
KR20170089646A (ko) * 2016-01-27 2017-08-04 에스케이하이닉스 주식회사 반도체 메모리 장치 및 그것을 포함하는 데이터 저장 장치
US10436841B2 (en) * 2018-01-25 2019-10-08 Mellanox Technologies, Ltd. Use of wrapper cells to improve signal routing in integrated circuits
CN113311319B (zh) * 2021-06-01 2024-02-13 成都海光集成电路设计有限公司 集成电路芯片与配置方法以及测试系统和测试方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11274311A (ja) * 1998-03-24 1999-10-08 Matsushita Electric Ind Co Ltd 半導体集積回路設計方法、及び半導体集積回路
JP2002329784A (ja) * 2001-05-07 2002-11-15 Matsushita Electric Ind Co Ltd 半導体回路

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4213064A (en) * 1978-04-04 1980-07-15 Nasa Redundant operation of counter modules
US4588944A (en) * 1983-06-13 1986-05-13 Sperry Corporation Fully scan-set testable embedded edge-triggered dual D and J-K flip-flops through testing as inverter strings
US5655113A (en) * 1994-07-05 1997-08-05 Monolithic System Technology, Inc. Resynchronization circuit for a memory system and method of operating same
US5592493A (en) * 1994-09-13 1997-01-07 Motorola Inc. Serial scan chain architecture for a data processing system and method of operation
KR970001564U (ko) * 1995-06-21 1997-01-21 자동차용 후부차체의 보강구조
US5719878A (en) * 1995-12-04 1998-02-17 Motorola Inc. Scannable storage cell and method of operation
US5717700A (en) * 1995-12-04 1998-02-10 Motorola, Inc. Method for creating a high speed scan-interconnected set of flip-flop elements in an integrated circuit to enable faster scan-based testing
US6031981A (en) * 1996-12-19 2000-02-29 Cirrus Logic, Inc. Reconfigurable gate array cells for automatic engineering change order
US5774476A (en) * 1997-02-03 1998-06-30 Motorola, Inc. Timing apparatus and timing method for wrapper cell speed path testing of embedded cores within an integrated circuit
JP2000150659A (ja) 1998-11-18 2000-05-30 Matsushita Electric Ind Co Ltd 半導体集積回路装置のレイアウト設計方法
AU1913500A (en) * 1998-11-25 2000-06-13 Nanopower, Inc. Improved flip-flops and other logic circuits and techniques for improving layouts of integrated circuits
JP2001022816A (ja) * 1999-07-12 2001-01-26 Matsushita Electric Ind Co Ltd 半導体集積回路装置のレイアウト方法
US6839393B1 (en) * 1999-07-14 2005-01-04 Rambus Inc. Apparatus and method for controlling a master/slave system via master device synchronization
US6255845B1 (en) * 1999-11-16 2001-07-03 Advanced Micro Devices, Inc. Efficient use of spare gates for post-silicon debug and enhancements
US6535043B2 (en) * 2000-05-26 2003-03-18 Lattice Semiconductor Corp Clock signal selection system, method of generating a clock signal and programmable clock manager including same
US6600341B2 (en) * 2001-05-01 2003-07-29 Lattice Semiconductor Corp. Integrated circuit and associated design method using spare gate islands
JP2003006253A (ja) * 2001-06-20 2003-01-10 Mitsubishi Electric Corp ロジック回路設計方法およびその方法をコンピュータに実行させるプログラム
JP3773863B2 (ja) * 2001-07-19 2006-05-10 三菱電機株式会社 半導体装置
US6934921B1 (en) * 2002-01-04 2005-08-23 Cisco Technology, Inc. Resolving LBIST timing violations
US7464310B2 (en) * 2002-09-30 2008-12-09 Broadcom Corporation Programmable state machine of an integrated circuit
FR2846491B1 (fr) * 2002-10-25 2005-08-12 Atmel Corp Architecture comprenant des cellules de remplacement pour reparer des erreurs de conception dans des circuits integres apres fabrication
US7131081B2 (en) * 2003-02-14 2006-10-31 Nec Laboratories America, Inc. Scalable scan-path test point insertion technique
JP3866216B2 (ja) * 2003-04-10 2007-01-10 松下電器産業株式会社 半導体集積回路およびその検査方法
US20040230933A1 (en) * 2003-05-15 2004-11-18 Weaver Edward G. Tool flow process for physical design of integrated circuits
TWI235841B (en) * 2003-07-02 2005-07-11 Realtek Semiconductor Corp Multi-clock domain logic device for performing scan test with single scan clock and method thereof
US7716626B2 (en) * 2004-03-30 2010-05-11 Oki Semiconductor Co., Ltd. Method of designing a circuit layout of a semiconductor device
US7331027B2 (en) * 2004-07-20 2008-02-12 International Business Machines Corporation Method for swapping circuits in a metal-only engineering change
US7331028B2 (en) * 2004-07-30 2008-02-12 Lsi Logic Corporation Engineering change order scenario manager

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11274311A (ja) * 1998-03-24 1999-10-08 Matsushita Electric Ind Co Ltd 半導体集積回路設計方法、及び半導体集積回路
JP2002329784A (ja) * 2001-05-07 2002-11-15 Matsushita Electric Ind Co Ltd 半導体回路

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009010804A (ja) * 2007-06-29 2009-01-15 Renesas Technology Corp 半導体集積回路の配置配線方法及び半導体集積回路の配置配線支援プログラム
US7919981B2 (en) 2007-07-31 2011-04-05 Renesas Electronics Corporation Integrated circuit design based on scan design technology
JP2009175025A (ja) * 2008-01-25 2009-08-06 Nec Corp 半導体集積回路装置及びクロックスキュー計測方法
WO2010100830A1 (ja) * 2009-03-05 2010-09-10 日本電気株式会社 半導体装置、回路修正方法、設計支援装置及び設計支援プログラムが格納された記録媒体
JPWO2010100830A1 (ja) * 2009-03-05 2012-09-06 日本電気株式会社 半導体装置、回路修正方法、設計支援装置及び設計支援プログラム
JP2013224917A (ja) * 2012-03-22 2013-10-31 Renesas Electronics Corp スキャンテスト回路、テストパタン生成制御回路及びスキャンテスト制御方法

Also Published As

Publication number Publication date
US7383523B2 (en) 2008-06-03
US20060066357A1 (en) 2006-03-30

Similar Documents

Publication Publication Date Title
JP2006128635A (ja) 半導体集積回路
US20030182528A1 (en) Single-chip microcomputer
JP2009038072A (ja) 半導体集積回路及びその開発方法
JP2007027841A (ja) 半導体集積回路の設計装置と方法並びにプログラム
JP2010223793A (ja) 半導体集積回路およびそのテスト方法
JP3851810B2 (ja) プログラマブル論理回路およびそのクロック制御方法
KR101102371B1 (ko) 반도체 장치 및 반도체 장치의 구동 방법
US8683405B2 (en) Multi-layer distributed network
JP4878727B2 (ja) 半導体集積回路
JPH1197540A (ja) 半導体回路におけるクロック供給装置およびその設計方法
JP2005116793A (ja) 半導体集積回路及びそのクロック配線方法
JP2007329586A (ja) 半導体集積回路装置並びにその設計装置及び設計方法
JP2008219535A (ja) 同期回路
JP2006331190A (ja) クロック制御回路
JP2012137986A (ja) 半導体集積回路のレイアウト設計装置、半導体集積回路のレイアウト設計方法及びプログラム
US6292043B1 (en) Semiconductor integrated circuit device
JP2002329784A (ja) 半導体回路
JP4862680B2 (ja) クロック信号分配回路、情報処理装置及びクロック信号分配方法
JP2006269900A (ja) 半導体集積回路の設計方法
JP2007109773A (ja) 大規模半導体集積回路装置
JP2000082745A (ja) 半導体装置
JP2005259781A (ja) 半導体集積回路の製造方法
JP2006302995A (ja) 半導体集積回路、回路レイアウト装置、回路レイアウト方法および回路レイアウトプログラム
JP5805052B2 (ja) クロック回路
JP2004266034A (ja) 半導体集積回路、および半導体集積回路の設計方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080514

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110621

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110801

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110816

A045 Written measure of dismissal of application [lapsed due to lack of payment]

Free format text: JAPANESE INTERMEDIATE CODE: A045

Effective date: 20111220