JP2006302995A - 半導体集積回路、回路レイアウト装置、回路レイアウト方法および回路レイアウトプログラム - Google Patents
半導体集積回路、回路レイアウト装置、回路レイアウト方法および回路レイアウトプログラム Download PDFInfo
- Publication number
- JP2006302995A JP2006302995A JP2005119447A JP2005119447A JP2006302995A JP 2006302995 A JP2006302995 A JP 2006302995A JP 2005119447 A JP2005119447 A JP 2005119447A JP 2005119447 A JP2005119447 A JP 2005119447A JP 2006302995 A JP2006302995 A JP 2006302995A
- Authority
- JP
- Japan
- Prior art keywords
- generating
- clock
- semiconductor chip
- flip
- scan chain
- 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
Links
Images
Landscapes
- Tests Of Electronic Circuits (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
Abstract
【課題】 遅延調整用バッファを挿入することなく、ホールドタイムエラーを防止する。
【解決手段】 クロック到達にかかる実時間の遅い順にフリップフロップFF1、FF2のスキャンパスP1〜P3を繋ぎ直すことで、フリップフロップFF2のデータ入力端子DBにスキャンパスP11を接続し、フリップフロップFF2のデータ出力端子QBとフリップフロップFF1のデータ入力端子DAをスキャンパスP12を介して接続し、フリップフロップFF1のデータ出力端子QAにスキャンパスP13を接続する。
【選択図】 図2
【解決手段】 クロック到達にかかる実時間の遅い順にフリップフロップFF1、FF2のスキャンパスP1〜P3を繋ぎ直すことで、フリップフロップFF2のデータ入力端子DBにスキャンパスP11を接続し、フリップフロップFF2のデータ出力端子QBとフリップフロップFF1のデータ入力端子DAをスキャンパスP12を介して接続し、フリップフロップFF1のデータ出力端子QAにスキャンパスP13を接続する。
【選択図】 図2
Description
本発明は半導体集積回路、回路レイアウト装置、回路レイアウト方法および回路レイアウトプログラムに関し、特に、半導体集積回路のスキャン設計方法に適用して好適なものである。
LSI内の論理回路およびクロック信号線のレイアウトでは、シフト時のミスシフトを防止するために、クロックスキュー(クロック信号の到達時間の差)が抑制されるように論理回路の配置や配線が行われている。
また、例えば、特許文献1には、ノーマルファンクションのタイミングを崩すことなくLSIのレイアウトを行えるようにするため、セットアップまたはホールドが収束できていない箇所に遅延調整用バッファを挿入し、遅延調整を行ったときのフリップフロップへのクロック到達時間を考慮に入れて、フリップフロップのクロック到達時間の値をもとにスキャンチェーンをリオーダリングし、スキャンチェーンを再構成する方法が開示されている。
特開2003−256488号公報
また、例えば、特許文献1には、ノーマルファンクションのタイミングを崩すことなくLSIのレイアウトを行えるようにするため、セットアップまたはホールドが収束できていない箇所に遅延調整用バッファを挿入し、遅延調整を行ったときのフリップフロップへのクロック到達時間を考慮に入れて、フリップフロップのクロック到達時間の値をもとにスキャンチェーンをリオーダリングし、スキャンチェーンを再構成する方法が開示されている。
しかしながら、特許文献1に開示された方法では、クロック到達時間を考慮してスキャンチェーンをリオーダリングするためには、遅延調整用バッファを挿入する必要があり、消費電力の増大を招くという問題があった。
そこで、本発明の目的は、遅延調整用バッファを挿入することなく、ホールドタイムエラーを防止することが可能な半導体集積回路、回路レイアウト装置、回路レイアウト方法および回路レイアウトプログラムを提供することである。
そこで、本発明の目的は、遅延調整用バッファを挿入することなく、ホールドタイムエラーを防止することが可能な半導体集積回路、回路レイアウト装置、回路レイアウト方法および回路レイアウトプログラムを提供することである。
上述した課題を解決するために、本発明の一態様に係る半導体集積回路によれば、半導体チップに配置された複数のフリップフロップと、クロック到達にかかる実時間の遅い順に前記フリップフロップのデータ入力端子を順次接続する配線とを備えることを特徴とする。
これにより、配線を繋ぎ直すことで、クロックスキューに起因するホールドタイムエラーを防止することが可能となる。このため、クロックスキューに起因するホールドタイムエラーを防止するために、遅延調整用バッファを挿入する必要がなくなることから、レイアウト設計にかかる時間を短縮することが可能となるとともに、消費電力の増大を抑制することができる。
これにより、配線を繋ぎ直すことで、クロックスキューに起因するホールドタイムエラーを防止することが可能となる。このため、クロックスキューに起因するホールドタイムエラーを防止するために、遅延調整用バッファを挿入する必要がなくなることから、レイアウト設計にかかる時間を短縮することが可能となるとともに、消費電力の増大を抑制することができる。
また、本発明の一態様に係る半導体集積回路によれば、半導体チップに配置された複数のフリップフロップと、前記フリップフロップにクロック信号を分配するクロックツリーと、前記クロックツリーにおけるクロック到達にかかる実時間の遅い順に前記フリップフロップを接続するスキャンチェーンとを備えることを特徴とする。
これにより、スキャンチェーンを繋ぎ直すことで、クロックスキューに起因するホールドタイムエラーを防止することが可能となり、レイアウト設計にかかる時間を短縮することが可能となるとともに、消費電力の増大を抑制することができる。
これにより、スキャンチェーンを繋ぎ直すことで、クロックスキューに起因するホールドタイムエラーを防止することが可能となり、レイアウト設計にかかる時間を短縮することが可能となるとともに、消費電力の増大を抑制することができる。
また、本発明の一態様に係る回路レイアウト装置によれば、半導体チップに配置されるセルにクロック信号を分配するためのクロックツリーを生成するクロックツリー生成手段と、前記半導体チップに配置されるセルの配置情報を生成する配置情報生成手段と、前記半導体チップに配置されるセルの配線情報を生成する配線情報生成手段と、前記セルに配線された実配線の遅延量を評価する遅延量評価手段と、前記遅延量評価手段にて評価された遅延量に基づいて、クロック到達時間の遅い順に前記セルを繋ぎ直したスキャンチェーンを構築するスキャンチェーン構築手段と、前記スキャンチェーンに基づいて前記セルの再配線情報を生成する再配線情報生成手段とを備えることを特徴とする。
これにより、スキャンチェーンを繋ぎ直すことで、クロックスキューに起因するホールドタイムエラーを防止することが可能となるとともに、実配線の遅延量に基づいてクロック到達時間を評価することが可能となる。このため、クロックスキューに起因するホールドタイムエラーを防止するために、遅延調整用バッファを挿入する必要がなくなり、消費電力の増大を抑制することが可能となるとともに、クロック到達時間を精度よく求めることが可能となり、ホールドタイムエラーを確実に修正することができる。
また、本発明の一態様に係る回路レイアウト方法によれば、半導体チップに配置されるセルにクロック信号を分配するためのクロックツリーを生成するステップと、前記半導体チップに配置されるセルの配置情報を生成するステップと、前記半導体チップに配置されるセルの配線情報を生成するステップと、前記セルに配線された実配線の遅延量を評価するステップと、前記評価された遅延量に基づいて、クロック到達時間の遅い順に前記セルを繋ぎ直したスキャンチェーンを構築するステップと、前記スキャンチェーンに基づいて前記セルの再配線情報を生成するステップとを備えることを特徴とする。
これにより、遅延調整用バッファを挿入する必要がなく、ホールドタイムエラーを防止することが可能となるとともに、実配線の遅延量に基づいてクロック到達時間を評価することが可能となり、消費電力の増大を抑制しつつ、ホールドタイムエラーを確実に修正することができる。
また、本発明の一態様に係る回路レイアウトプログラムによれば、半導体チップに配置されるセルにクロック信号を分配するためのクロックツリーを生成するステップと、前記半導体チップに配置されるセルの配置情報を生成するステップと、前記半導体チップに配置されるセルの配線情報を生成するステップと、前記セルに配線された実配線の遅延量に基づいて、クロック到達時間の遅い順に前記セルを繋ぎ直したスキャンチェーンを構築するステップと、前記スキャンチェーンに基づいて前記セルの再配線情報を生成するステップとをコンピュータに実行させることを特徴とする。
また、本発明の一態様に係る回路レイアウトプログラムによれば、半導体チップに配置されるセルにクロック信号を分配するためのクロックツリーを生成するステップと、前記半導体チップに配置されるセルの配置情報を生成するステップと、前記半導体チップに配置されるセルの配線情報を生成するステップと、前記セルに配線された実配線の遅延量に基づいて、クロック到達時間の遅い順に前記セルを繋ぎ直したスキャンチェーンを構築するステップと、前記スキャンチェーンに基づいて前記セルの再配線情報を生成するステップとをコンピュータに実行させることを特徴とする。
これにより、回路レイアウトプログラムをコンピュータに実行させることで、遅延調整用バッファを挿入する必要がなく、ホールドタイムエラーを防止することが可能となるとともに、実配線の遅延量に基づいてクロック到達時間を評価することが可能となり、消費電力の増大を抑制しつつ、ホールドタイムエラーを確実に修正することができる。
以下、本発明の実施形態に係る回路レイアウト方法について図面を参照しながら説明する。
図1および図2は、本発明の一実施形態に係るスキャンチェーンの生成方法を説明する図、図3(a)は、図1のスキャンチェーンにおけるホールドタイムエラーを説明するタイミングチャート、3(b)は、図2のスキャンチェーンにおけるホールドタイムエラーの改善効果を説明するタイミングチャートである。
図1および図2は、本発明の一実施形態に係るスキャンチェーンの生成方法を説明する図、図3(a)は、図1のスキャンチェーンにおけるホールドタイムエラーを説明するタイミングチャート、3(b)は、図2のスキャンチェーンにおけるホールドタイムエラーの改善効果を説明するタイミングチャートである。
図1において、フリップフロップFF1の後段にはフリップフロップFF2が配置されている。そして、各フリップフロップFF1、FF2のクロック信号入力端子CLKA、CLKBには、バッファBを介してクロックパスCPが接続されている。また、フリップフロップFF1のデータ入力端子DAにはスキャンパスP1が接続され、フリップフロップFF1のデータ出力端子QAとフリップフロップFF2のデータ入力端子DBは、スキャンパスP2を介して接続され、フリップフロップFF2のデータ出力端子QBにはスキャンパスP3が接続されている。
そして、図3(a)において、スキャンパスP1を介してデータ入力端子DAに入力されたデータはフリップフロップFF1に保持され、データ出力端子QAから出力される。そして、フリップフロップFF1のデータ出力端子QAから出力されたデータはスキャンパスP2を介してフリップフロップFF2のデータ入力端子DBに入力される。そして、データ入力端子DBに入力されたデータは、クロック信号入力端子CLKBに入力されるクロック信号に同期してフリップフロップFF2に保持され、データ出力端子QBから出力される。
ここで、フリップフロップFF2のクロック信号入力端子CLKBには、フリップフロップFF2のクロック信号入力端子CLKBに対して遅延時間DL1だけ遅れてクロック信号が入力されるものとする。また、フリップフロップFF1のデータ出力端子QAから出力されたデータは、遅延時間DL2だけ遅れてフリップフロップFF2のデータ入力端子DBに入力されるものとする。この場合、クロック信号入力端子CLKBに入力されるクロック信号が立ち上がる時点では、今回のデータがフリップフロップFF2にて保持される前に、次回のデータがフリップフロップFF2のデータ入力端子DBに入力されるので、データの筒抜けが発生する。
そこで、クロック到達にかかる実時間の遅い順にフリップフロップFF1、FF2のスキャンパスP1〜P3を繋ぎ直すようにする。すなわち、図2において、図1の各フリップフロップFF1、FF2のクロック信号入力端子CLKA、CLKBには、バッファBを介してクロックパスCPが接続されている。また、フリップフロップFF2のデータ入力端子DBにはスキャンパスP11が接続され、フリップフロップFF2のデータ出力端子QBとフリップフロップFF1のデータ入力端子DAは、スキャンパスP12を介して接続され、フリップフロップFF1のデータ出力端子QAにはスキャンパスP13が接続されている。
そして、図3(b)において、スキャンパスP11を介してデータ入力端子DBに入力されたデータはフリップフロップFF2に保持され、データ出力端子QBから出力される。そして、フリップフロップFF2のデータ出力端子QBから出力されたデータはスキャンパスP12を介してフリップフロップFF1のデータ入力端子DAに入力される。そして、データ入力端子DAに入力されたデータは、クロック信号入力端子CLKAに入力されるクロック信号に同期してフリップフロップFF1に保持され、データ出力端子QAから出力される。
ここで、図3(a)と同様に、フリップフロップFF2のクロック信号入力端子CLKBには、フリップフロップFF2のクロック信号入力端子CLKBに対して遅延時間DL1だけ遅れてクロック信号が入力されるものとする。一方、フリップフロップFF2のデータ出力端子QBから出力されたデータは、図3(a)の遅延時間DL2より大きな遅延時間DL3だけ遅れてフリップフロップFF1のデータ入力端子DAに入力されるものとする。この場合、クロック信号入力端子CLKAに入力されるクロック信号が立ち上がる時点では、今回のデータがフリップフロップFF1にて保持される前に、次回のデータがフリップフロップFF1のデータ入力端子DAに入力されることはないので、データの筒抜けは発生しない。
これにより、クロック到達にかかる実時間の遅い順にフリップフロップFF1、FF2の配線を繋ぎ直すことで、クロックスキューに起因するホールドタイムエラーを防止することが可能となる。このため、クロックスキューに起因するホールドタイムエラーを防止するために、遅延調整用バッファを挿入する必要がなくなることから、レイアウト設計にかかる時間を短縮することが可能となるとともに、消費電力の増大を抑制することができる。
図4は、本発明の一実施形態に係るスキャンチェーンの生成方法を示すフローチャートである。
図4において、半導体チップに配置されるセルにクロック信号を分配するためのクロックツリーを生成する(ステップS1)。なお、セルの構成要素としては、フリップフロップを用いることができる。次に、半導体チップに配置されるセルの配置情報を生成する(ステップS2)。次に、半導体チップに配置されるセルの配線情報を生成する(ステップS3)。次に、セルに配線された実配線の遅延量を評価する(ステップS4)。そして、評価された実配線の遅延量に基づいて、クロック到達時間の遅い順にセルを繋ぎ直したスキャンチェーンを構築する(ステップS5)。そして、スキャンチェーンに基づいてセルの再配線情報を生成する(ステップS6)。
図4において、半導体チップに配置されるセルにクロック信号を分配するためのクロックツリーを生成する(ステップS1)。なお、セルの構成要素としては、フリップフロップを用いることができる。次に、半導体チップに配置されるセルの配置情報を生成する(ステップS2)。次に、半導体チップに配置されるセルの配線情報を生成する(ステップS3)。次に、セルに配線された実配線の遅延量を評価する(ステップS4)。そして、評価された実配線の遅延量に基づいて、クロック到達時間の遅い順にセルを繋ぎ直したスキャンチェーンを構築する(ステップS5)。そして、スキャンチェーンに基づいてセルの再配線情報を生成する(ステップS6)。
これにより、クロック到達にかかる実時間の遅い順にスキャンチェーンを繋ぎ直すことができ、クロックスキューに起因するホールドタイムエラーを防止することが可能となるとともに、実配線の遅延量に基づいてクロック到達時間を評価することが可能となる。このため、クロックスキューに起因するホールドタイムエラーを防止するために、遅延調整用バッファを挿入する必要がなくなり、消費電力の増大を抑制することが可能となるとともに、クロック到達時間を精度よく求めることが可能となり、ホールドタイムエラーを確実に修正することができる。
FF1、FF2 フリップフロップ、B バッファ、P1〜P3、P11〜P13 スキャンパス、CP クロックパス、DA、DB データ入力端子、QA、QB データ出力端子、CLKA、CLKB クロック信号入力端子
Claims (5)
- 半導体チップに配置された複数のフリップフロップと、
クロック到達にかかる実時間の遅い順に前記フリップフロップのデータ入力端子を順次接続する配線とを備えることを特徴とする半導体集積回路。 - 半導体チップに配置された複数のフリップフロップと、
前記フリップフロップにクロック信号を分配するクロックツリーと、
前記クロックツリーにおけるクロック到達にかかる実時間の遅い順に前記フリップフロップを接続するスキャンチェーンとを備えることを特徴とする半導体集積回路。 - 半導体チップに配置されるセルにクロック信号を分配するためのクロックツリーを生成するクロックツリー生成手段と、
前記半導体チップに配置されるセルの配置情報を生成する配置情報生成手段と、
前記半導体チップに配置されるセルの配線情報を生成する配線情報生成手段と、
前記セルに配線された実配線の遅延量を評価する遅延量評価手段と、
前記遅延量評価手段にて評価された遅延量に基づいて、クロック到達時間の遅い順に前記セルを繋ぎ直したスキャンチェーンを構築するスキャンチェーン構築手段と、
前記スキャンチェーンに基づいて前記セルの再配線情報を生成する再配線情報生成手段とを備えることを特徴とする回路レイアウト装置。 - 半導体チップに配置されるセルにクロック信号を分配するためのクロックツリーを生成するステップと、
前記半導体チップに配置されるセルの配置情報を生成するステップと、
前記半導体チップに配置されるセルの配線情報を生成するステップと、
前記セルに配線された実配線の遅延量を評価するステップと、
前記評価された遅延量に基づいて、クロック到達時間の遅い順に前記セルを繋ぎ直したスキャンチェーンを構築するステップと、
前記スキャンチェーンに基づいて前記セルの再配線情報を生成するステップとを備えることを特徴とする回路レイアウト方法。 - 半導体チップに配置されるセルにクロック信号を分配するためのクロックツリーを生成するステップと、
前記半導体チップに配置されるセルの配置情報を生成するステップと、
前記半導体チップに配置されるセルの配線情報を生成するステップと、
前記セルに配線された実配線の遅延量に基づいて、クロック到達時間の遅い順に前記セルを繋ぎ直したスキャンチェーンを構築するステップと、
前記スキャンチェーンに基づいて前記セルの再配線情報を生成するステップとをコンピュータに実行させることを特徴とする回路レイアウトプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005119447A JP2006302995A (ja) | 2005-04-18 | 2005-04-18 | 半導体集積回路、回路レイアウト装置、回路レイアウト方法および回路レイアウトプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005119447A JP2006302995A (ja) | 2005-04-18 | 2005-04-18 | 半導体集積回路、回路レイアウト装置、回路レイアウト方法および回路レイアウトプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006302995A true JP2006302995A (ja) | 2006-11-02 |
Family
ID=37470968
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005119447A Pending JP2006302995A (ja) | 2005-04-18 | 2005-04-18 | 半導体集積回路、回路レイアウト装置、回路レイアウト方法および回路レイアウトプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006302995A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7480844B2 (en) * | 2005-03-18 | 2009-01-20 | Fujitsu Limited | Method for eliminating hold error in scan chain |
-
2005
- 2005-04-18 JP JP2005119447A patent/JP2006302995A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7480844B2 (en) * | 2005-03-18 | 2009-01-20 | Fujitsu Limited | Method for eliminating hold error in scan chain |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2007272687A (ja) | 半導体集積回路のタイミング検証方法及びタイミング検証装置 | |
JP2007027841A (ja) | 半導体集積回路の設計装置と方法並びにプログラム | |
JP2007170959A (ja) | 半導体集積回路とその設計方法 | |
US7913219B2 (en) | Orientation optimization method of 2-pin logic cell | |
JP2006343151A (ja) | スキャンテスト回路及びその配置方法 | |
US7162707B2 (en) | Scan path timing optimizing apparatus determining connection order of scan path circuits to realize optimum signal timings | |
JP2002083000A (ja) | 論理回路設計方法及び論理回路 | |
JP2014001937A (ja) | スキャンテスト方法、プログラムおよびスキャンテスト回路 | |
JP4473163B2 (ja) | スキャンチェーンのホールドエラー解消方法 | |
JP2006302995A (ja) | 半導体集積回路、回路レイアウト装置、回路レイアウト方法および回路レイアウトプログラム | |
JP2012146865A (ja) | 半導体集積回路、スキャンテスト回路設計方法 | |
JP2008219535A (ja) | 同期回路 | |
JP2013019694A (ja) | スキャンテスト回路およびスキャンテスト回路生成方法 | |
JP2006302996A (ja) | 半導体集積回路、回路レイアウト装置、回路レイアウト方法および回路レイアウトプログラム | |
JP7069608B2 (ja) | 半導体設計支援装置、半導体設計支援方法及びプログラム | |
JP2011108803A (ja) | 半導体集積回路のレイアウト設計方法、半導体集積回路 | |
JPWO2008056468A1 (ja) | 半導体集積回路とそのレイアウト手法 | |
JP2012137986A (ja) | 半導体集積回路のレイアウト設計装置、半導体集積回路のレイアウト設計方法及びプログラム | |
JP2005116793A (ja) | 半導体集積回路及びそのクロック配線方法 | |
JP2007303941A (ja) | 半導体装置及び観測用フリップフロップの配置方法 | |
JPH11125662A (ja) | 半導体集積回路及びフルスキャン実行方法 | |
JP2008172156A (ja) | 半導体集積回路 | |
JP2009187110A (ja) | クロック分配回路の設計方法 | |
JP6530288B2 (ja) | 半導体装置および半導体装置のテスト方法 | |
KR100267782B1 (ko) | 타이밍체크가 가능한 칩(chip) |