JP2008047121A - 半導体集積回路の間接シミュレーション方法及び装置 - Google Patents
半導体集積回路の間接シミュレーション方法及び装置 Download PDFInfo
- Publication number
- JP2008047121A JP2008047121A JP2007209734A JP2007209734A JP2008047121A JP 2008047121 A JP2008047121 A JP 2008047121A JP 2007209734 A JP2007209734 A JP 2007209734A JP 2007209734 A JP2007209734 A JP 2007209734A JP 2008047121 A JP2008047121 A JP 2008047121A
- Authority
- JP
- Japan
- Prior art keywords
- signal
- input
- core
- semiconductor integrated
- integrated circuit
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/32—Circuit design at the digital level
- G06F30/33—Design verification, e.g. functional simulation or model checking
- G06F30/3308—Design verification, e.g. functional simulation or model checking using simulation
- G06F30/3312—Timing analysis
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L22/00—Testing or measuring during manufacture or treatment; Reliability measurements, i.e. testing of parts without further processing to modify the parts as such; Structural arrangements therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
- G06F30/396—Clock trees
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L21/00—Processes or apparatus adapted for the manufacture or treatment of semiconductor or solid state devices or of parts thereof
- H01L21/02—Manufacture or treatment of semiconductor devices or of parts thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2115/00—Details relating to the type of the circuit
- G06F2115/02—System on chip [SoC] design
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2115/00—Details relating to the type of the circuit
- G06F2115/08—Intellectual property [IP] blocks or IP cores
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2119/00—Details relating to the type or aim of the analysis or the optimisation
- G06F2119/12—Timing analysis or timing optimisation
Abstract
【課題】コアIPモデルを用いて実際コアIP回路を含む半導体集積回路のインテグレイションをシミュレーションすることができる半導体集積回路の間接シミュレーション方法及び間接シミュレーション装置を提供する。
【解決手段】半導体集積回路の間接シミュレーション方法は、入力及び出力ピンでサークルチェーンを構成して実際コアIP回路に代わるコアIPモデルを提供し、コアIPモデルに対するテストベンチを生成し、生成されたテストベンチを用いてコアIPモデルが含まれた半導体集積回路のインテグレイションをシミュレーションする。
【選択図】 図2
【解決手段】半導体集積回路の間接シミュレーション方法は、入力及び出力ピンでサークルチェーンを構成して実際コアIP回路に代わるコアIPモデルを提供し、コアIPモデルに対するテストベンチを生成し、生成されたテストベンチを用いてコアIPモデルが含まれた半導体集積回路のインテグレイションをシミュレーションする。
【選択図】 図2
Description
本発明は半導体集積回路のシミュレーション方法に係り、より詳細にはSOCレベルでの半導体集積回路に含まれるコアIPをシミュレーションする方法に関する。
コアIPを含むSOC/ASIC製品の問題点の中に、SOCレベル内でコアIP間のインテグレイション過ちで発生した問題点がある。これによって、デザインを再度検討するに費用と時間とが必要になる。また、顧客にコアIPを提供しながら配布されたテストガイドが理解し難しい。また、SOC/ASICデザイン過程でコアIPを検証するためにコアIPのreal Net−Listが必要であり、このようなコアIPを含むSOC/ASICデザインを検証するのに負荷と時間とがあまりも多く必要である。
現在のtime−to−marketが重要な状況で、顧客は提供されたテストガイドのみを見てデザインに対する検証を省略したりもする。さらに、コアIPのreal Net−Listを提供することができない海外や制約された場合には検証手続きがないのでデザインに対する問題発生可能性がより高くなる。
従って、実際コアIPと同一の形態を保持し、実際コアIPの内部検証をすることができるコアIPモデルの必要性が浮き彫りになった。
前記問題点を解決するための本発明の目的は、実際コアIPに代るコアIPモデルを用いて半導体集積回路の間接シミュレーション方法を提供することにある。
本発明の他の目的は、実際コアIPに代るコアIPモデルを用いて半導体集積回路の間接シミュレーション装置を提供することにある。
本発明のさらなる目的は、コアIPモデルを用いて実際コアIPを検証することができる半導体集積回路のコアIPテスト方法を提供することにある。
前記目的を達成するための本発明一実施例による半導体集積回路の間接シミュレーション方法は、入力及び出力ピンでサークルチェーンを構成して実際コアIP回路に代るコアIPモデルを提供する段階と、前記コアIPモデルに対するテストベンチを生成する段階と、前記生成されたテストベンチを用いて前記コアIPモデルを含む半導体集積回路のインテグレイションをする段階と、前記インテグレイションされた半導体集積回路をシミュレーションする段階と、
を含む。
を含む。
前記コアIPモデルの前記入力及び出力ピンは、前記実際コアIP回路の入力及び出力ピンに同じ名前で対応され実際コアIP回路がインテグレイションされた半導体集積回路でチェックが必要な入力及び出力ピンであることができる。
前記コアIPモデルの入力ピンは、第1及び第2入力信号が印加される第1入力ピン及び第2入力ピン、イネイブル信号が印加される第3入力ピン、テストモード信号が印加される第4入力ピン及びクロック信号が印加される第5入力ピンで構成され、出力ピンは少なくとも一つ以上であることができる。
前記コアIPモデルは、前記イネイブル信号の活性化可否に応じて前記コアIPモデルの動作モードが区分されることができる。前記コアIPモデルの動作モードは、前記イネイブル信号が非活性化されるときの伝搬モードと前記イネイブル信号が活性化されるときのサークルシフトモードとに区分することができる。前記伝搬モードでは前記第1及び第2入力ピンに印加される前記第1及び第2入力信号が前記サークルチェーンを経ないで前記出力ピンに出力することができる。前記サークルシフトモードでは前記第1及び第2入力信号が前記サークルチェーンを経て前記出力ピンに出力されることができる。
前記コアIPモデルは、前記イネイブル信号と前記テストモード信号との印加を受け選択信号を出力する第1論理モジュールと、前記第1入力信号と第1フィードバック信号との印加を受け、前記選択信号に応答して前記第1入力信号と前記第1フィードバック信号とのうち一つを選択する第1選択モジュールと、前記第2入力信号と第2フィードバック信号との印加を受け、前記選択信号に応答して前記第2入力信号と前記第1フィードバック信号とのうち一つを選択する第2選択モジュールと、前記第1選択モジュールから提供された第1選択された信号と前記クロック信号との印加を受け第1遅延信号を出力する第1遅延モジュールと、前記第2選択回路から提供された第2選択された信号と前記クロック信号との印加を受け第2遅延信号を出力する第2遅延モジュールと、前記第1遅延信号及び第2遅延信号の印加を受けAND信号を出力する第2論理モジュールと、前記AND信号と前記第1遅延信号との印加を受け前記選択信号に応答して前記AND信号と前記第1遅延信号のうち一つを選択する第3選択モジュールと、前記第3選択モジュールから提供された第3遅延された信号と前記クロック信号との印加を受け第3遅延信号を出力する第3遅延モジュールと、を含む。前記第2選択モジュールの出力信号は前記第1フィードバック信号であり、前記第3選択モジュールの出力信号は第1フィードバック信号である。
前記第1乃至第3選択モジュールは、2−to−1MUXで構成することができる。前記第1及び第2論理モジュールは、ANDゲートで構成することができる。前記第1乃至第3遅延モジュールは、D−フリップ・フロップで構成することができる。前記D−フリップ・フロップは、前記クロックの上昇エッジからトリガすることができる。
前記目的を達成するための本発明に一実施例による半導体集積回路の間接シミュレーション装置は、入力及び出力ピンでサークルチェーンを構成して実際コアIP回路に代わるコアIPモデルを提供するモデリングツールと、前記コアIPモデルに対するテストベンチを生成するテストベンチ生成器と、前記生成されたテストベンチを用いて前記コアIPモデルを含む半導体集積回路をインテグレイションするインテグレータと、前記インテグレイションンされた半導体集積回路をSOCレベルでシミュレーションするシミュレータと、を含む。
前記目的を達成するための本発明の一実施例による半導体集積回路のコアIPテスト方法は、入力モジュール出力モジュールで構成されたサークルチェーンを含むコアIPモデルを提供する段階と、前記コアIPモデルに対するテストベンチを生成する段階と、前記生成されたテストベンチを用いて前記コアIPモデルを含む半導体集積回路をインテグレイションする段階と、前記インテグレイションされた半導体集積回路をシミュレーションする段階と、前記シミュレーション結果に基づいて前記コアIPモデルが代る実際コアIPを検証する段階と、を含む。
前記入力モジュールは、2つの入力を具備し、それぞれの第1入力端子に入力信号の印加を受ける第1乃至第4入力選択モジュール、及び前記入力選択モジュールから提供された第1選択された信号の印加をそれぞれ受けクロック信号に同期して第1遅延された信号を出力する第1乃至第4入力遅延モジュールを含む。前記第4入力遅延モジュールから提供された第1遅延された信号は前記第3入力選択モジュールの第2入力端子に印加され、前記第3入力遅延モジュールから提供された第1遅延された信号は前記第2入力選択モジュールの第2入力端子に印加され、記第2入力遅延モジュールから提供された第1遅延された信号は前記第1入力選択モジュールの第2入力端子に印加される。
前記出力モジュールは、2つの入力を具備しそれぞれの第1入力端子にそれぞれ前記第1乃至第3入力遅延モジュールの出力の印加を受ける第1乃至第3出力選択モジュールと、前記出力選択モジュールから提供された第2選択された信号の印加を受け前記クロック信号に同期し第2遅延された信号を出力する第1乃至第3出力遅延モジュールを含む。前記第1出力遅延モジュールの出力は前記第2出力選択モジュールの第2入力端子に印加され、前記第2出力遅延モジュールの出力は前記第3出力選択モジュールの第2入力端子に印加され、前記第3出力遅延モジュールの出力は前記第4出力選択モジュールの第2入力端子に印加され、前記第1入力遅延モジュールは前記第1出力選択モジュールの第2入力端子に印加される。前記コアIPモデルは、前記選択モジュールそれぞれにイネイブル信号とテストモード信号の入力を受け選択信号を印加する論理モジュールをさらに含むことができる。
前記選択信号の活性化可否に応じて前記コアIPモデルの動作モードが異なることができる。前記選択信号が非活性化になると、前記コアIPモデルは伝搬モードで動作することができる。前記伝搬モードでは、前記入力信号をサークルチェーンを経ないで出力することができる。前記選択信号が活性化になると、前記コアIPモデルはサークルシフトモードで動作することができる。
以下、図面を参照して本発明の望ましい一実施例をより詳細に説明する。
図1はシステムオンチップSOCレベルでの実際コアIP回路を含む半導体集積回路を示す概略的なブロック図である。
実際コアIP回路を含む半導体集積回路100は入力信号が印加される入力パッド111〜115と出力信号が出力される出力パッド115とコアIP回路110及びロジック回路120、130を含む。
コアIP回路110は入力ピン131〜135と出力ピン136を含む。コアIP回路110の入力ピン131〜135には入力パッド111〜115に印加される信号がロジック回路120を経て印加される。コアIP110の出力ピン136から出力される信号はロジック回路130を経て出力パッド116に出力される。このようなコアIP110を含む集積回路100をSOCレベルで検証するのにあまりにも多くの負荷と時間とが必要である。
図2は図1の実際コアIP回路に代るコアIPモデルの構成を示す概略的なブロック図である。
図3は本発明の一実施例による半導体集積回路の間接シミュレーション方法を示す順序図である。
図3を参照すると、本発明の一実施例による半導体集積回路の間接シミュレーション方法は入力及び出力ピンでサークルチェーンを構成して実際コアIP回路に代るコアIPモデルを提供する段階S310、コアIPモデルに対するテストベンチを生成する段階S320、生成されたテストベンチを用いてコアIPモデルを含む半導体集積回路のインテグレイションをする段階S330、及びインテグレイションされた半導体集積回路を出力する段階S340を含む。コアIPモデルは図2のコアIPモデルを使用することができる。
図2を参照すると、コアIPモデル200は入力ピン211〜215が全部5個である。コアIPモデル200の入力ピン211〜215は実際コアIP回路110の入力ピン131〜135に同じ名前で対応する。コアIPモデルの出力ピン216も実際コアIP回路110の出力ピン116に同じ名前で対応する。出力ピンは一つ以上であることができる。勿論、入力パッドが入力ピンより多いとすることもできる。第1入力ピン211及び第2入力ピン212には入力信号が印加され、第3入力ピン213にはイネイブル信号が印加される。第4入力ピン214にはテストモード信号が印加され、第5入力ポン215にはクロック信号が印加される。
コアIPモデル200は第1選択モジュール220、第2選択モジュール230、第1論理モジュール210、第1遅延モジュール240、第2遅延モジュール250、第2論理モジュール260、第3選択モジュール270及び第3遅延モジュール280を含む。第3遅延モジュール280の出力は出力ピン216に連結される。選択モジュール220、230、270は2−to−1MUXで実現することができる。論理モジュール210、260はANDゲートで実現することができる。遅延モジュール240、250、280はDフリップ・フロップで実現することができる。勿論、モジュールは同じ機能を有する異なる素子でも実現することができるのは当然のことである。
第1論理モジュール220は第1入力信号と第2遅延モジュール250の出力信号である第2遅延された信号の印加を受け第1論理モジュールの出力信号である選択信号によって第1入力信号と第2遅延信号のうち一つを選択して第1選択された信号を出力する。第2選択モジュール230は第2入力信号と第3遅延モジュール280の出力信号である第3遅延された信号との印加を受け選択信号によって2つの信号のうち一つの信号を選択して第2選択された信号を出力する。
第1遅延モジュール240は第1選択された信号の印加を受けクロック信号の上昇エッジから第1遅延された信号を出力する。第2遅延モジュール250は第2選択された信号の印加を受けクロック信号の上昇エッジから出力する。第2遅延された信号は第1選択モジュール220に印加される。第2論理モジュール260は第1遅延された信号と第2遅延された信号とを論理積してAND信号を出力する。第3選択モジュール270は第1遅延された信号とAND信号との印加を受け、選択信号によって2つの信号のうち一つの信号を選択して第3選択された信号を出力する。第3遅延モジュール280は第3選択された信号の印加を受けクロック信号の上昇エッジから第3遅延された信号を出力する。第3遅延モジュール280の出力信号は出力ピン216に出力され、また、第2選択モジュール230に印加される。
例えば、選択モジュール220、230、270は2つの入力端子を有することができる。選択モジュール220、230、270に印加される選択信号がどんな入力端子が開放されるかを決定する。論理0であると選択モジュール220、230、270の一番目の端子が選択され選択信号が論理1であると二番目の入力端子が選択されると過程しよう。
テストモード信号は常に論理1であるとすると、第1論理モジュール210に印加されるイネイブル信号によって選択信号の出力値が異なる。
まず、イネイブル信号が論理0であると、選択信号も論理0になるので、選択モジュール220、230、270では一番目の入力端子に印加される信号が選択される。即ち、第1選択モジュール220では第1選択モジュール220の一番目の入力端子に入ってくる第1入力信号が選択され、第2選択モジュール230では第2選択モジュール230の一番目の入力端子に入ってくる第2入力信号が選択される。第1遅延モジュール240は第1入力信号をクロック信号の上昇エッジで半クロック遅延させ第1遅延された信号を出力し、第2遅延モジュール250は第2入力信号をクロック信号の上昇エッジで半クロック遅延させ第2遅延された信号を出力する。第2論理モジュール260は第1遅延された信号と第2遅延された信号とが同時に論理1のときのみ論理1であるAND信号を出力する。AND信号は第3選択モジュール270を経て第3遅延モジュール280でクロック信号の上昇エッジで半クロック遅延され、出力ピン216に第3遅延された信号として出力される。
次に、イネイブル信号が論理1であると選択信号も論理1になるので選択モジュール220、230、270では二番目入力端子に印加される信号が選択される。即ち、第1選択モジュール220では第1選択モジュール220の二番目の入力端子に入ってくる第2遅延モジュール250の出力信号である第2遅延された信号が選択される。第2選択モジュール230では第2選択モジュール230の二番目入力端子に入ってくる第3遅延モジュール280の出力信号である第3遅延された信号が選択される。この際、第3遅延された信号はクロック信号の上昇エッジで一つのクロックずつそれぞれ遅延された第1入力信号と第2入力信号の論理積された信号である。このような式で選択信号が1であると出力信号の値が入力信号にシフトされる。即ち、選択信号の値によって出力信号が入力信号にシフトされなかったりシフトされたりするようにできる。即ち、コアIPモデルは伝搬モード及びサークルシフトモードを含む動作モードで動作することができる。伝搬モードの場合、サークルチェーンが開けてあるので入力信号が入力される毎に出力ピンから出力信号が一度ずつ出力される。従って、出力信号がシフトなしに出力ピンで出力される場合である。サークルシフトモードの場合、サークルチェーンが閉めてあるので出力信号が出力ピンから出力され、第2選択モジュール230に戻って第2入力信号に代って第2選択モジュール230を通る。従って、出力信号はシフトされ再度出力ピンで出力される場合である。勿論、図2で選択信号が論理1の時選択モジュール220、230、270で0で表示された入力端子の信号を選択することができるように構成することができる。また、遅延モジュール240、250、280はクロックの下降エッジで動作するように構成されることもできる。図2のコアIPモデルは入力が2つであり出力が一つであることをモデリングしたが入力の個数と出力の個数とをさらに多くもできる。
図4は図2のコアIPモデルの動作を示すタイミングダイアグラムである。図4でCLKはクロック信号を示し、A−PINは第1入力信号を示しB−PINは第2入力信号を示す。Enableはイネイブル信号を示しC−PINは出力ピン216の出力信号を示す。図4ではテストモード信号は論理1であると仮定しテストモード信号を示さない。
図4を参照すると、イネイブル信号が論理0であるか論理1であるかの可否に従ってコアIPモデルの動作モードが区分される。即ち、図2のコアIPモデルの動作で説明したようにイネイブル信号が論理0の時は入力信号が出力ピンに伝搬される。イネイブル信号が論理1の時は出力信号が入力信号にシフトされ再度出力ピンで出力される。
図5は本発明の一実施例による半導体集積回路の間接シミュレーション装置を示すブロック図である。
図5を参照すると、本発明の一実施例による半導体集積回路の間接シミュレーション装置500はモデリングツール510、テストベンチ生成器520、インテグレータ530及びシミュレータ540を含む。
モデリングツール510は図2のコアIPモデルを提供する。コアIPモデルは入力及び出力ピンでサークルチェーンを構成して実際のコアIP回路に代る。モデリングツール510から提供されるコアIPモデルは図2の構成を有している。テストベンチ生成器520はコアIPモデルに対するテストベンチを生成する。インテグレータ530は生成されたテストベンチを用いてコアIPモデルを含む半導体集積回路をインテグレイションする。シミュレータ540はインテグレイションされた半導体集積回路をシステムオンチップレベルでシミュレーションしてシミュレーション結果を出力する。このシミュレーション結果に基づいて実際コアIP回路のインテグレイションを早くて正確に検証することができる。
図6は本発明の一実施例による半導体集積回路のコアIPテスト方法を示す順序図である。
図6を参照すると、本発明の一実施例による半導体集積回路のコアIPテスト方法は、入力モジュール及び出力モジュールで構成されたサークルチェーンを含むコアIPモデルを提供する段階S610、コアIPモデルに対するテストベンチを生成する段階S620、生成されたテストベンチを用いてコアIPモデルを含む半導体集積回路をインテグレイションする段階S630、インテグレイションされた半導体集積回路をシミュレーションする段階S640、及びシミュレーション結果に基づいてコアIPモデルが代る実際コアIPを検証する段階S650を含む。
図7は図6の半導体集積回路のコアIPテスト方法で提供されるコアIPモデルの構成を示すブロック図である。
図6を参照すると、本発明の一実施例によるコアIPテスト方法で提供されるコアIPモデルは入力モジュール710と出力モジュール750と論理モジュール720を含む。
入力モジュール710は第1乃至第4入力選択モジュール711、713、715、717及び第1乃至第4入力遅延モジュール721、723、725、727を含む。入力選択モジュール711、713、715、717は2つの入力端子と選択端子とを具備するが、選択端子には論理モジュール720から出力される選択信号が印加される。第1乃至第4入力選択モジュールの第1入力端子それぞれには入力信号DataI[0]、 DataI[1]、 DataI[2]、 DataI[3]が入力される。選択信号はイネイブル信号とテストモード信号との論理積である。選択信号に基づいて入力選択モジュール711、713、715、717から選択される入力端子が異なる。
入力選択モジュール711、713、715、717の出力信号である第1選択された信号はそれぞれの入力遅延モジュール721、723、725、727に入力される。入力遅延モジュールはクロック信号の上昇エッジで第1選択された信号を半クロック遅延させ第1遅延された信号を出力する。また、第2入力遅延モジュール723から提供された第1遅延された信号は第1入力選択モジュール711の第2入力端子に印加され、第3入力遅延モジュール725から提供された第1遅延された信号は第2入力選択モジュール713の第2入力端子に印加され、第4入力遅延モジュール727から提供された第1遅延された信号は第3入力選択モジュール715の第2入力端子に印加される。入力選択モジュール711、713、715、717は2−to−1MUXで構成することができ、入力遅延モジュール721、723、725、727はD−フリップ・フロップで構成することができる。勿論、このようなモジュールは同じ機能をする異なるモジュールで構成することができる。
出力モジュール750は第1乃至第3出力選択モジュール及び第1乃至第3出力遅延モジュール761、763、765を含む。出力選択モジュール751、723、755は二つの入力端子と選択端子とを含み、選択端子に印加される選択信号によって2つの入力端子に印加される信号のうち一つの信号を選択する。第1乃至第3出力選択モジュール751、723、755は第1乃至第3入力遅延モジュールから提供された第1遅延された信号を第1入力端子に印加を受ける。第1出力選択モジュール751の第2入力端子には第1入力遅延モジュール721から提供された第1遅延された信号が印加される。第1乃至第3出力選択モジュール751、723、755から提供された第2選択された信号は出力信号 DataO[0]、 DataO[1]、 DataO[2]として出力される。
第1乃至第3出力遅延モジュール761、763、765は第2選択された信号の印加を受け、半クロック遅延させクロック信号の上昇エッジから第2遅延された信号を出力する。第1出力遅延モジュール761から提供された第2遅延された信号は第2出力選択モジュール753の第2入力端子に印加される。第2出力遅延モジュール763から提供された第2遅延された信号は第3出力選択モジュール755の第2入力端子に印加される。第3出力遅延モジュール765から提供された第2遅延された信号は第4入力選択モジュール717の第2入力端子に印加される。出力選択モジュール751、753、755は2−to−1MUXで構成することができ、出力遅延モジュール761、763、765はD−フリップ・フロップで構成することができる。勿論、このようなモジュールは同じ機能をする異なるモジュールで構成することができる。
図8は図7のコアIPモデルの動作を示すタイミング図である。
図7と図8とを参照して、図7のコアIPモデルの全体的な動作を説明する。
例えば、論理モジュール720に入力されるテストモード信号は論理1でありイネイブル信号が論理0であると論理モジュール720から出力される選択信号は論理0になる。このようになると入力選択モジュール711、713、715、717では第1入力端子に印加される入力信号 DataI[0]、 DataI[1]、 DataI[2]、 DataI[3]が選択される。入力選択モジュール711、713、715、717から提供された第1選択された信号は入力遅延モジュール721、723、725、727から半クロック遅延され、第1遅延された信号として出力される。入力遅延モジュールから提供された第1遅延された信号は出力選択モジュール751、753、755から選択され出力信号DataO[0]、 DataO[1]、 DataO[2]に出力される。ここで、入力信号は4ビットであるが出力信号が3ビットであるのは第4入力遅延モジュール727から提供された第1遅延された信号が出力モジュールに印加されないからである。即ち、イネイブル信号が論理0の時は入力信号が伝搬され出力信号として出力される。従って、イネイブル信号が論理0のとき、コアIPモデルは伝搬モードで動作する。
次に、イネイブル信号が論理1の時は選択モジュールから第2入力端子に印加される信号が選択される。第3出力遅延モジュール767から提供された第2遅延された信号が第4入力選択モジュール717の第2入力端子に印加され、遅延モジュールと選択モジュールとはサークルチェーンの形態に連結されている。従って、イネイブル信号が論理1の時の出力信号が7クロック遅延されて出力される。ここで、7はコアIPモデルに含まれる遅延モジュールの個数である。これは図8のタイミング図でも確認することができる。この際、コアIPモデルはサークルシフトモードで動作すると言える。このサークルシフトモードでは出力信号が入力信号にシフトされて再度出力信号として出力される。出力信号が入力信号に影響を及ばすのである。このようにして入力と出力との関係でコアIPモデルが代る実際のコアIP回路のインテグレイションがまともに行われたかを検証することができる。実際コアIP回路に代るコアIPモデルに含まれるモジュールの個数が実際コアIP回路に含まれる論理ゲートの個数よりずっと少ない。従って、実際コアIP回路を含むシステムオンチップレベルでの半導体集積回路のインテグレイションを検証する時間よりコアIPモデルを含む半導体集積回路のインテグレイションを検証する時間が少なくかかる。例えば、約1/20程度の時間がかかる。
前述したように、本発明の実施例による半導体集積回路の間接シミュレーション方法及び間接シミュレーション装置と半導体集積回路のコアIPテスト方法は、実際コアIP回路に代るコアIPモデルを使用する。また、コアIPモデルを含む半導体集積回路をインテグレイションして実際コアIPモデルのインテグレイションを早い時間に少ない負荷で検証することができる。
以上、本発明を実施例によって詳細に説明したが、本発明はこれに限定されず、本発明が属する技術分野において通常の知識を有する者であれば、本発明の思想と精神を離れることなく、本発明を修正または変更できる。
110 コアIP回路
120、130 ロジック回路
500 間接シミュレーション装置
510 モデリングツール
520 テストベンチ生成器
530 インテグレータ
540 シミュレータ
710 入力モジュール
720 論理モジュール
750 出力モジュール
120、130 ロジック回路
500 間接シミュレーション装置
510 モデリングツール
520 テストベンチ生成器
530 インテグレータ
540 シミュレータ
710 入力モジュール
720 論理モジュール
750 出力モジュール
Claims (31)
- 入力及び出力ピンでサークルチェーンを構成して実際コアIP回路に代るコアIPモデルを提供する段階と、
前記コアIPモデルに対するテストベンチを生成する段階と、
前記生成されたテストベンチを用いて前記コアIPモデルを含む半導体集積回路のインテグレイションをする段階と、
前記インテグレイションされた半導体集積回路をシミュレーションする段階と、
を含むことを特徴とする半導体集積回路の間接シミュレーション方法。 - 前記コアIPモデルの前記入力及び出力ピンは、前記実際コアIP回路の入力及び出力ピンに同じ名前で対応され実際コアIP回路がインテグレイションされた半導体集積回路でチェックが必要な入力及び出力ピンであることを特徴とする請求項1記載の半導体集積回路の間接シミュレーション方法。
- 前記コアIPモデルの入力ピンは、第1及び第2入力信号が印加される第1入力ピン及び第2入力ピン、イネイブル信号が印加される第3入力ピン、テストモード信号が印加される第4入力ピン及びクロック信号が印加される第5入力ピンで構成され、出力ピンは少なくとも一つ以上であることを特徴とする請求項2記載の半導体集積回路の間接シミュレーション方法。
- 前記コアIPモデルは、前記イネイブル信号の活性化可否に応じて前記コアIPモデルの動作モードが区分されることを特徴とする請求項3記載の半導体集積回路の間接シミュレーション方法。
- 前記コアIPモデルの動作モードは、前記イネイブル信号が非活性化されるときの伝搬モードと前記イネイブル信号が活性化されるときのサークルシフトモードとに区分されることを特徴とする請求項4記載の半導体集積回路の間接シミュレーション方法。
- 前記伝搬モードでは前記第1及び第2入力ピンに印加される前記第1及び第2入力信号が前記サークルチェーンを経ないで前記出力ピンに出力されることを特徴とする請求項5記載の半導体集積回路の間接シミュレーション方法。
- 前記サークルシフトモードでは前記第1及び第2入力信号が前記サークルチェーンを経て前記出力ピンに出力されることを特徴とする請求項6記載の半導体集積回路の間接シミュレーション方法。
- 前記コアIPモデルは、
前記イネイブル信号と前記テストモード信号との印加を受け選択信号を出力する第1論理モジュールと、
前記第1入力信号と第1フィードバック信号との印加を受け、前記選択信号に応答して前記第1入力信号と前記第1フィードバック信号のうち一つを選択する第1選択モジュールと、
前記第2入力信号と第2フィードバック信号との印加を受け、前記選択信号に応答して前記第2入力信号と前記第1フィードバック信号のうち一つを選択する第2選択モジュールと、
前記第1選択モジュールから提供された第1選択された信号と前記クロック信号との印加を受け第1遅延信号を出力する第1遅延モジュールと、
前記第2選択回路から提供された第2選択された信号と前記クロック信号との印加を受け第2遅延信号を出力する第2遅延モジュールと、
前記第1遅延信号及び第2遅延信号の印加を受けAND信号を出力する第2論理モジュールと、
前記AND信号と前記第1遅延信号との印加を受け前記選択信号に応答して前記AND信号と前記第1遅延信号のうち一つを選択する第3選択モジュールと、
前記第3選択モジュールから提供された第3遅延された信号と前記クロック信号との印加を受け第3遅延信号を出力する第3遅延モジュールと、を含み、
前記第2遅延された信号は前記第1フィードバック信号であり、前記第3遅延された信号は第1フィードバック信号であることを特徴とする請求項3記載の半導体集積回路の間接シミュレーション方法。 - 前記第1乃至第3選択モジュールは、2−to−1MUXで構成されることを特徴とする請求項8記載の半導体集積回路の間接シミュレーション方法。
- 前記第1及び第2論理モジュールは、ANDゲートで構成されることを特徴とする請求項8記載の半導体集積回路の間接シミュレーション方法。
- 前記第1乃至第3遅延モジュールは、D−フリップ・フロップで構成されることを特徴とする請求項8記載の半導体集積回路の間接シミュレーション方法。
- 前記D−フリップ・フロップは、前記クロックの上昇エッジからトリガされることを特徴とする請求項11記載の半導体集積回路の間接シミュレーション方法。
- 入力及び出力ピンでサークルチェーンを構成して実際コアIP回路に代わるコアIPモデルを提供するモデリングツールと、
前記コアIPモデルに対するテストベンチを生成するテストベンチ生成器と、
前記生成されたテストベンチを用いて前記コアIPモデルを含む半導体集積回路をインテグレイションするインテグレータと、
前記インテグレイションされた半導体集積回路をSOCレベルでシミュレーションするシミュレータと、
を含むことを特徴とする半導体集積回路の間接シミュレーション装置。 - 前記コアIPモデルの前記入力及び出力ピンは前記実際コアIP回路の入力及び出力ピンに同じ名前で対応され、実際コアIP回路がインテグレイションされた半導体集積回路でチェックの必要な入力及び出力ピンであることを特徴とする請求項13記載の半導体集積回路の間接シミュレーション装置。
- 前記コアIPモデルの入力ピンは、第1及び第2入力信号が印加される第1入力ピン及び第2入力ピン、イネイブル信号が印加される第3入力ピン、テストモード信号が印加される第4入力ピン及びクロック信号が印加される第5入力ピンで構成され、出力ピンは少なくとも一つ以上であることを特徴とする請求項14記載の半導体集積回路の間接シミュレーション装置。
- 前記コアIPモデルは、前記イネイブル信号の活性化可否によって前記コアIPモデルの動作モードが区分されることを特徴とする請求項15記載の半導体集積回路の間接シミュレーション装置。
- 前記コアIPモデルは、前記イネイブル信号と前記テストモード信号との印加を受け選択信号を出力する第1論理回路と、
第1入力信号と第1フィードバック信号との印加を受け、前記選択信号に応答して前記第1入力信号と前記第1フィードバック信号のうち一つを選択する第1選択回路と、
前記第2入力信号と第2フィードバック信号との印加を受け、前記選択信号に応答して前記第2入力信号と前記第1フィードバック信号のうち一つを選択する第2選択回路と、
前記第1選択回路から提供された第1選択された信号と前記クロック信号との印加を受け第1遅延信号を出力する第1遅延回路と、
前記第2選択回路から提供された第2選択された信号と前記クロック信号との印加を受け第2遅延信号を出力する第2遅延回路と、
前記第1遅延信号及び第2遅延信号の印加を受けAND信号を出力する第2論理回路と、
前記AND信号と前記第1遅延信号との印加を受け前記選択信号に応答して前記アンド信号と前記第1遅延信号のうち一つを選択する第3選択回路と、
前記第3選択回路から提供された第3遅延された信号と前記クロック信号との印加を受け第3遅延信号を出力する第3遅延回路と、を含み、
前記第2遅延された信号は前記第1フィードバック信号であり、前記第3遅延された信号は第1フィードバック信号であることを特徴とする請求項15記載の半導体集積回路の間接シミュレーション装置。 - 前記第1乃至第3選択回路は、2−to−1MUXであることを特徴とする請求項17記載の半導体集積回路の間接シミュレーション装置。
- 第1及び第2論理回路は、ANDゲートで構成されることを特徴とする請求項17記載の半導体集積回路の間接シミュレーション装置。
- 前記第1乃至第3遅延回路は、D−フリップ・フロップで構成されることを特徴とする請求項17記載の半導体集積回路の間接シミュレーション装置。
- 前記D−フリップ・フロップは、前記クロックの上昇エッジからトリガされることを特徴とする請求項20記載の半導体集積回路の間接シミュレーション装置。
- 入力モジュール及び出力モジュールで構成されたサークルチェーンを含むコアIPモデルを提供する段階と、
前記コアIPモデルに対するテストベンチを生成する段階と、
前記生成されたテストベンチを用いて前記コアIPモデルを含む半導体集積回路をインテグレイションする段階と、
前記インテグレイションされた半導体集積回路をシミュレーションする段階と、
前記シミュレーション結果に基づいて前記コアIPモデルが代る実際コアIPを検証する段階と、
を含むことを特徴とする半導体集積回路のコアIPテスト方法。 - 前記コアIPモデルの前記入力モジュールは、
2つの入力を具備し、それぞれの第1入力端子に入力信号の印加を受ける第1乃至第4入力選択モジュールと、
前記入力選択モジュールから提供された第1選択された信号の印加をそれぞれ受けクロック信号に同期して第1遅延された信号を出力する第1乃至第4入力遅延モジュールを含み、
前記第4入力遅延モジュールから提供された第1遅延された信号は前記第3入力選択モジュールの第2入力端子に印加され、
前記第3入力遅延モジュールから提供された第1遅延された信号は前記第2入力選択モジュールの第2入力端子に印加され、
前記第2入力遅延モジュールから提供された第1遅延された信号は前記第1入力選択モジュールの第2入力端子に印加されることを特徴とする請求項22記載の半導体集積回路のコアIPテスト方法。 - 前記コアIPモデルの前記出力モジュールは、2つの入力を具備しそれぞれの第1入力端子にそれぞれ前記第1乃至第3入力遅延モジュールの出力の印加を受ける第1乃至第3出力選択モジュールと、
前記出力選択モジュールから提供された第2選択された信号の印加を受け前記クロック信号に同期し第2遅延された信号を出力する第1乃至第3出力遅延モジュールを含み、
前記第1出力遅延モジュールから提供された第2遅延された信号は前記第2出力選択モジュールの第2入力端子に印加され、
前記第2出力遅延モジュールから提供された第2遅延された信号は前記第3出力選択モジュールの第2入力端子に印加され、
前記第3出力遅延モジュールから提供された第2遅延された信号は前記第4入力選択モジュールの第2入力端子に印加され、
前記第1出力遅延モジュールから提供された第1遅延された信号は前記第1出力選択モジュールの第2入力端子に印加されることを特徴とする請求項23記載の半導体集積回路のコアIPテスト方法。 - 前記コアIPモデルは、前記選択モジュールそれぞれにイネイブル信号とテストモード信号との入力を受け選択信号を印加する論理モジュールをさらに含むことを特徴とする請求項24記載の半導体集積回路のコアIPテスト方法。
- 前記選択信号は、テストモード信号とイネイブル信号との論理積であることを特徴とする請求項25記載の半導体集積回路のコアIPテスト方法。
- 前記選択信号の活性化可否に応じて前記コアIPモデルの動作モードが異なることを特徴とする請求項26記載の半導体集積回路のコアIPテスト方法。
- 前記選択信号が非活性化になると、前記コアIPモデルは伝搬モードで動作することを特徴とする請求項27記載の半導体集積回路のコアIPテスト方法。
- 前記伝搬モードでは、前記入力信号がサークルチェーンを経ないで出力されることを特徴とする請求項28記載の半導体集積回路のコアIPテスト方法。
- 前記選択信号が活性化になると、前記コアIPモデルはサークルシフトモードで動作することを特徴とする請求項27記載の半導体集積回路のコアIPテスト方法。
- 前記サークルシフトモードでは、前記入力信号がサークルチェーンを経て出力されることを特徴とする請求項30記載の半導体集積回路のコアIPテスト方法。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060075951A KR100750184B1 (ko) | 2006-08-11 | 2006-08-11 | 반도체 집적 회로의 간접 시뮬레이션 방법 및 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2008047121A true JP2008047121A (ja) | 2008-02-28 |
Family
ID=38614741
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007209734A Pending JP2008047121A (ja) | 2006-08-11 | 2007-08-10 | 半導体集積回路の間接シミュレーション方法及び装置 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7991604B2 (ja) |
JP (1) | JP2008047121A (ja) |
KR (1) | KR100750184B1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011107967A (ja) * | 2009-11-17 | 2011-06-02 | Fujitsu Semiconductor Ltd | 設計検証装置、設計検証方法及び設計検証プログラム |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8479129B1 (en) | 2010-05-21 | 2013-07-02 | Marvell International Ltd. | Dynamic time domain randomization techniques for SOC and IP verification |
US8645897B1 (en) * | 2013-01-07 | 2014-02-04 | Freescale Semiconductor, Inc. | Integrated circuit design verification system |
US9811618B1 (en) * | 2013-03-07 | 2017-11-07 | Xilinx, Inc. | Simulation of system designs |
US9390208B2 (en) | 2013-06-14 | 2016-07-12 | Synopsys, Inc. | Formal verification of temporal properties expressed using local variables |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6782511B1 (en) * | 1999-05-26 | 2004-08-24 | Cadence Design Systems, Inc. | Behavioral-synthesis electronic design automation tool business-to-business application service provider |
US6169438B1 (en) * | 1999-09-20 | 2001-01-02 | Oak Technology, Inc. | Circuit and method for selectively delaying electrical signals |
US6678645B1 (en) | 1999-10-28 | 2004-01-13 | Advantest Corp. | Method and apparatus for SoC design validation |
JP2001235524A (ja) | 2000-02-22 | 2001-08-31 | Matsushita Electric Ind Co Ltd | 半導体集積回路装置およびそのテスト方法、ram/romテスト回路およびそのテスト方法 |
US6996799B1 (en) * | 2000-08-08 | 2006-02-07 | Mobilygen Corporation | Automatic code generation for integrated circuit design |
US20020173942A1 (en) * | 2001-03-14 | 2002-11-21 | Rochit Rajsuman | Method and apparatus for design validation of complex IC without using logic simulation |
US6697982B2 (en) * | 2001-05-04 | 2004-02-24 | Texas Instruments Incorporated | Generating netlist test vectors by stripping references to a pseudo input |
US7089135B2 (en) * | 2002-05-20 | 2006-08-08 | Advantest Corp. | Event based IC test system |
US7454323B1 (en) * | 2003-08-22 | 2008-11-18 | Altera Corporation | Method for creation of secure simulation models |
KR20050060865A (ko) | 2003-12-17 | 2005-06-22 | 한국전자통신연구원 | 신호 단자 단락과 정상 동작 검출을 위하여 에스오씨아이피 코아를 스캔 시험할 수 있는 집적회로 장치 및 그방법 |
-
2006
- 2006-08-11 KR KR1020060075951A patent/KR100750184B1/ko not_active IP Right Cessation
-
2007
- 2007-08-01 US US11/888,535 patent/US7991604B2/en not_active Expired - Fee Related
- 2007-08-10 JP JP2007209734A patent/JP2008047121A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011107967A (ja) * | 2009-11-17 | 2011-06-02 | Fujitsu Semiconductor Ltd | 設計検証装置、設計検証方法及び設計検証プログラム |
Also Published As
Publication number | Publication date |
---|---|
US20090216512A9 (en) | 2009-08-27 |
KR100750184B1 (ko) | 2007-08-17 |
US7991604B2 (en) | 2011-08-02 |
US20080040090A1 (en) | 2008-02-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6763489B2 (en) | Method for scan testing of digital circuit, digital circuit for use therewith and program product for incorporating test methodology into circuit description | |
US5878055A (en) | Method and apparatus for verifying a single phase clocking system including testing for latch early mode | |
US7139988B2 (en) | Modeling metastability in circuit design | |
US7289946B1 (en) | Methodology for verifying multi-cycle and clock-domain-crossing logic using random flip-flop delays | |
Karimi et al. | Detection, diagnosis, and recovery from clock-domain crossing failures in multiclock SoCs | |
JP2008047121A (ja) | 半導体集積回路の間接シミュレーション方法及び装置 | |
US20070129923A1 (en) | Dynamic synchronizer simulation | |
JP4846128B2 (ja) | 半導体装置およびそのテスト方法 | |
JP4264436B2 (ja) | フリップフロップ機能素子、半導体集積回路、半導体集積回路設計方法及び半導体集積回路設計装置 | |
US7228515B2 (en) | Methods and apparatuses for validating AC I/O loopback tests using delay modeling in RTL simulation | |
JP7204697B2 (ja) | 半導体集積回路 | |
US7080333B1 (en) | Verifying logic synthesizers | |
JP4748349B2 (ja) | テスタシミュレーション装置及びテスタシミュレーション方法 | |
US20080069277A1 (en) | Method and apparatus for modeling signal delays in a metastability protection circuit | |
WO2017199790A1 (ja) | 半導体集積回路 | |
US7424417B2 (en) | System and method for clock domain grouping using data path relationships | |
JP2008107872A (ja) | 半導体集積回路 | |
KR20150117775A (ko) | 테스트 장치 및 그의 동작 방법 | |
JP2011203158A (ja) | 半導体集積回路のテスト回路、テスト方法、テストパタン作成方法、及びテストパタン作成プログラム | |
KR20110071254A (ko) | 시스템온칩 테스트 장치 및 이를 포함하는 시스템온칩 | |
JP5625241B2 (ja) | 半導体装置及びその試験方法 | |
JP2010002345A (ja) | Acテスト容易化回路およびacテスト方法 | |
JP2863779B2 (ja) | タイミング検証方法及び検証装置及びテストパターン生成方法 | |
JP2006092072A (ja) | 回路機能検証方法 | |
Bell | A multi-parameter functional side channel analysis method for hardware Trojan detection in untrusted FPGA bitstreams |