JPH08262104A - シミュレータ回路、シーケンシャル論理回路、ならびに多位相回路を単一クロックエッジ回路に変換するための装置および方法 - Google Patents
シミュレータ回路、シーケンシャル論理回路、ならびに多位相回路を単一クロックエッジ回路に変換するための装置および方法Info
- Publication number
- JPH08262104A JPH08262104A JP7266836A JP26683695A JPH08262104A JP H08262104 A JPH08262104 A JP H08262104A JP 7266836 A JP7266836 A JP 7266836A JP 26683695 A JP26683695 A JP 26683695A JP H08262104 A JPH08262104 A JP H08262104A
- Authority
- JP
- Japan
- Prior art keywords
- signal
- circuit
- phase
- output terminal
- clock
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F5/00—Methods or arrangements for data conversion without changing the order or content of the data handled
- G06F5/06—Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/28—Testing of electronic circuits, e.g. by signal tracer
- G01R31/317—Testing of digital circuits
- G01R31/3181—Functional testing
- G01R31/3185—Reconfiguring for testing, e.g. LSSD, partitioning
- G01R31/318533—Reconfiguring for testing, e.g. LSSD, partitioning using scanning techniques, e.g. LSSD, Boundary Scan, JTAG
- G01R31/318552—Clock circuits details
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/261—Functional testing by simulating additional hardware, e.g. fault simulation
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K3/00—Circuits for generating electric pulses; Monostable, bistable or multistable circuits
- H03K3/02—Generators characterised by the type of circuit or by the means used for producing pulses
- H03K3/027—Generators characterised by the type of circuit or by the means used for producing pulses by the use of logic circuits, with internal or external positive feedback
- H03K3/037—Bistable circuits
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Quality & Reliability (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- Tests Of Electronic Circuits (AREA)
Abstract
(57)【要約】
【課題】 多位相回路を単一クロックエッジ回路に変換
するための方法を提供する。 【解決手段】 この方法は、入力端子でデータ信号を受
取るステップと、システムクロック周波数を有するシス
テムクロック信号を受取るステップと、システムクロッ
ク周波数から分割された周波数を有する位相クロック信
号を受取るステップとを含む。データ信号は、位相クロ
ック信号が活性であるとき出力端子に移され、かつ位相
クロック信号が活性であるときにシステムクロック信号
のエッジ遷移が発生すると、ラッチされる。位相クロッ
ク信号が不活性になると、ラッチされたデータ信号はシ
ステムクロック信号のエッジ遷移の発生の際再びラッチ
される。ラッチされたデータ信号は、位相クロック信号
が不活性になると、出力端子に移される。
するための方法を提供する。 【解決手段】 この方法は、入力端子でデータ信号を受
取るステップと、システムクロック周波数を有するシス
テムクロック信号を受取るステップと、システムクロッ
ク周波数から分割された周波数を有する位相クロック信
号を受取るステップとを含む。データ信号は、位相クロ
ック信号が活性であるとき出力端子に移され、かつ位相
クロック信号が活性であるときにシステムクロック信号
のエッジ遷移が発生すると、ラッチされる。位相クロッ
ク信号が不活性になると、ラッチされたデータ信号はシ
ステムクロック信号のエッジ遷移の発生の際再びラッチ
される。ラッチされたデータ信号は、位相クロック信号
が不活性になると、出力端子に移される。
Description
【0001】
【発明の分野】この発明は、デジタル回路およびデジタ
ル回路シミュレーションシステムに関し、より特定的に
は、多位相レベル検出設計を単一クロックエッジベース
のシステムに変換するデジタル回路およびデジタル回路
シミュレーションシステムに関する。
ル回路シミュレーションシステムに関し、より特定的に
は、多位相レベル検出設計を単一クロックエッジベース
のシステムに変換するデジタル回路およびデジタル回路
シミュレーションシステムに関する。
【0002】
【先行技術の説明】電子回路の設計およびその発展には
システムプロトタイプを組立てかつテストする作業が含
まれる。システムプロトタイプは、形態および機能にお
いてターゲット回路とさまざまな程度の類似性を有する
ブレッドボード回路、汎用コンピュータシステム上で動
作するシミュレートされた回路、ハードウェアシミュレ
ータ、またはエミュレータ等の形態をとり得る。プロト
タイプはターゲット回路の機能を効率よく模倣する限
り、適切な時間に相応なコストで構成されれば一般的に
有効である。
システムプロトタイプを組立てかつテストする作業が含
まれる。システムプロトタイプは、形態および機能にお
いてターゲット回路とさまざまな程度の類似性を有する
ブレッドボード回路、汎用コンピュータシステム上で動
作するシミュレートされた回路、ハードウェアシミュレ
ータ、またはエミュレータ等の形態をとり得る。プロト
タイプはターゲット回路の機能を効率よく模倣する限
り、適切な時間に相応なコストで構成されれば一般的に
有効である。
【0003】高度に複雑な電子回路およびシステムの設
計は、多くの能動素子を含む回路の分析を含む。LSI
およびVLSI回路に関しては、全システム応答の検査
は無数の回路素子のシミュレーションを含む。複雑な回
路の典型的なシミュレーションは、アーキテクチャ、動
作、機能、論理、およびトランジスタレベルのシミュレ
ーションを含む、抽象化のレベルの異なる回路分析によ
る階層的アプローチを用いて達成される。アーキテクチ
ャレベルでは、回路のアーキテクチャの抽象的な定義が
分析され、回路の目標を達成するさまざまな方法のため
のガイドラインが設定される。動作レベルのシミュレー
ションでは、回路の主要なブロックが定義され、それら
の相互作用が一覧され、回路の目標を達成するための全
データまたは制御フローの詳細が調べられる。機能レベ
ルのシミュレーションでは、回路における主要なブロッ
クの全論理応答が記述され、論理入力パラメータを出力
パラメータに関連付けるが、ブロック内の論理の内部実
現の詳細は考慮されない。論理レベルのシミュレーショ
ンは、各ブロックをゲートレベルで分析し、論理を最小
にし、ある場合には相対的タイミングの概念を導入す
る。トランジスタレベルシミュレーションは、回路内の
すべての素子の詳細なエミュレーションを含めて、回路
の過渡応答を調べる。階層的シミュレーションの有効性
は、異なるレベルの抽象化を混合し全回路の動作を調べ
る一方で、一時に1ブロックで回路素子の詳細な相互作
用を分析する能力によって決定される。
計は、多くの能動素子を含む回路の分析を含む。LSI
およびVLSI回路に関しては、全システム応答の検査
は無数の回路素子のシミュレーションを含む。複雑な回
路の典型的なシミュレーションは、アーキテクチャ、動
作、機能、論理、およびトランジスタレベルのシミュレ
ーションを含む、抽象化のレベルの異なる回路分析によ
る階層的アプローチを用いて達成される。アーキテクチ
ャレベルでは、回路のアーキテクチャの抽象的な定義が
分析され、回路の目標を達成するさまざまな方法のため
のガイドラインが設定される。動作レベルのシミュレー
ションでは、回路の主要なブロックが定義され、それら
の相互作用が一覧され、回路の目標を達成するための全
データまたは制御フローの詳細が調べられる。機能レベ
ルのシミュレーションでは、回路における主要なブロッ
クの全論理応答が記述され、論理入力パラメータを出力
パラメータに関連付けるが、ブロック内の論理の内部実
現の詳細は考慮されない。論理レベルのシミュレーショ
ンは、各ブロックをゲートレベルで分析し、論理を最小
にし、ある場合には相対的タイミングの概念を導入す
る。トランジスタレベルシミュレーションは、回路内の
すべての素子の詳細なエミュレーションを含めて、回路
の過渡応答を調べる。階層的シミュレーションの有効性
は、異なるレベルの抽象化を混合し全回路の動作を調べ
る一方で、一時に1ブロックで回路素子の詳細な相互作
用を分析する能力によって決定される。
【0004】あるシミュレータ、エミュレータ、および
検査ツールは、クロックごとに、クロックサイクルでの
システム変化を更新する。サイクルベースの、エッジト
リガされた、ラッチされた、またはエッジベースのシス
テムと呼ばれるこれらのツールは、クロック信号の立下
がりまたは立上がりエッジに関する情報を渡す。これら
のツールは、大抵はエッジトリガされたフリップフロッ
プを支持する単一クロックシステムである非常に簡単な
クロッキング構成を可能にすることにより、回路設計の
性能を正確に反映する。単一クロックエッジトリガシス
テムでは、すべてのシーケンシャルな素子は各クロック
サイクルの間に更新される。ラッチは本質的にトランス
ペアレントであるのでラッチの入力ライン上の信号への
変化がラッチ出力ライン上に直ぐに表わされる。図1に
示されている典型的な単一クロックエッジトリガドシス
テム100は、エッジトリガドフリップフロップ102
および104を、間隔をおいて配置された組合せ論理1
06の回路タイミングを制御するベーシックなシーケン
シャル回路素子として用いる。単一クロックエッジトリ
ガドシステム100は、図2に示された簡単な単一位相
クロッキング機構を用いてタイミングがとられる。この
クロッキング機構はクロックゲーティングを可能としな
い。
検査ツールは、クロックごとに、クロックサイクルでの
システム変化を更新する。サイクルベースの、エッジト
リガされた、ラッチされた、またはエッジベースのシス
テムと呼ばれるこれらのツールは、クロック信号の立下
がりまたは立上がりエッジに関する情報を渡す。これら
のツールは、大抵はエッジトリガされたフリップフロッ
プを支持する単一クロックシステムである非常に簡単な
クロッキング構成を可能にすることにより、回路設計の
性能を正確に反映する。単一クロックエッジトリガシス
テムでは、すべてのシーケンシャルな素子は各クロック
サイクルの間に更新される。ラッチは本質的にトランス
ペアレントであるのでラッチの入力ライン上の信号への
変化がラッチ出力ライン上に直ぐに表わされる。図1に
示されている典型的な単一クロックエッジトリガドシス
テム100は、エッジトリガドフリップフロップ102
および104を、間隔をおいて配置された組合せ論理1
06の回路タイミングを制御するベーシックなシーケン
シャル回路素子として用いる。単一クロックエッジトリ
ガドシステム100は、図2に示された簡単な単一位相
クロッキング機構を用いてタイミングがとられる。この
クロッキング機構はクロックゲーティングを可能としな
い。
【0005】エッジベースの設計に対する代替物として
レベル検出設計がある。トランスペアレントな装置とも
呼ばれるレベル検出設計は、クロック信号が活性である
間に情報を転送する。エッジトリガされる装置が、クロ
ック信号のエッジの中央にある小さいサンプリング時間
の間にその出力情報を更新するのとは対照的に、レベル
検出装置はクロックアクティビティの比較的長い時間の
間にその出力情報を更新する。
レベル検出設計がある。トランスペアレントな装置とも
呼ばれるレベル検出設計は、クロック信号が活性である
間に情報を転送する。エッジトリガされる装置が、クロ
ック信号のエッジの中央にある小さいサンプリング時間
の間にその出力情報を更新するのとは対照的に、レベル
検出装置はクロックアクティビティの比較的長い時間の
間にその出力情報を更新する。
【0006】典型的なエッジベースのシミュレーション
およびエミュレーションツールの使用はさまざまな理由
のために有利である。エッジベースのツールはより簡単
で、ゆえにより効率よく各動作を行なう。したがって、
エッジベースのツールは、より大きな回路設計をエミュ
レートしかつ一層素早くこのエミュレーションを行な
う。
およびエミュレーションツールの使用はさまざまな理由
のために有利である。エッジベースのツールはより簡単
で、ゆえにより効率よく各動作を行なう。したがって、
エッジベースのツールは、より大きな回路設計をエミュ
レートしかつ一層素早くこのエミュレーションを行な
う。
【0007】大きなマイクロプロセッサおよびほかの複
雑なシステム設計は多位相クロック上で動作するため、
性能が高められる。多位相クロックシステムでは、シー
ケンシャルな素子がクロックサイクルの選択された位相
上で条件付きで更新される。図3に示されている多位相
クロックベースのシステム300は好都合には、単一ク
ロックサイクルの逆相クロック信号によって生成される
多数のクロックエッジを使用して組合せ論理ブロック、
たとえば組合せ論理ブロック320、322、および3
24をより性能の高い回路において駆動する。システム
を改良するために性能向上がさまざまになされる。たと
えば、同位相のバックツーバックラッチ302および3
04または特定の条件信号(たとえば、ANDゲート3
10を使用して位相クロック信号とともにANDゲート
処理される組合せ論理ブロックB324からの条件信
号)で更新されるラッチ306が実現され、システム中
の回路素子の数が減じられ、それによってシステム30
0の大きさは低減される。多位相クロックシステム30
0は、図4のタイミング図に示された多位相クロッキン
グ機構を用いてタイミングがとれらる。
雑なシステム設計は多位相クロック上で動作するため、
性能が高められる。多位相クロックシステムでは、シー
ケンシャルな素子がクロックサイクルの選択された位相
上で条件付きで更新される。図3に示されている多位相
クロックベースのシステム300は好都合には、単一ク
ロックサイクルの逆相クロック信号によって生成される
多数のクロックエッジを使用して組合せ論理ブロック、
たとえば組合せ論理ブロック320、322、および3
24をより性能の高い回路において駆動する。システム
を改良するために性能向上がさまざまになされる。たと
えば、同位相のバックツーバックラッチ302および3
04または特定の条件信号(たとえば、ANDゲート3
10を使用して位相クロック信号とともにANDゲート
処理される組合せ論理ブロックB324からの条件信
号)で更新されるラッチ306が実現され、システム中
の回路素子の数が減じられ、それによってシステム30
0の大きさは低減される。多位相クロックシステム30
0は、図4のタイミング図に示された多位相クロッキン
グ機構を用いてタイミングがとれらる。
【0008】残念なことに、そのような複雑なシステム
の多位相機能性は典型的には単一クロックエッジベース
のツール上のシミュレーションまたはエミュレーション
を可能としない。多位相回路動作では、ある素子は特定
の位相クロックエッジでしか更新されない。しかしなが
ら、単一クロックエッジベースのツールでは、全てのシ
ーケンシャルな素子が各クロックサイクルの間に更新さ
れなければならない。さらに、多位相設計では極めて有
効なラッチの条件付き更新は、単一クロックエッジベー
スのシステムでは支持されない。なぜならそのような更
新は、すべてのシーケンシャルな素子はクロックエッジ
のそれぞれの指定された遷移上で更新されるという要件
に背くからである。
の多位相機能性は典型的には単一クロックエッジベース
のツール上のシミュレーションまたはエミュレーション
を可能としない。多位相回路動作では、ある素子は特定
の位相クロックエッジでしか更新されない。しかしなが
ら、単一クロックエッジベースのツールでは、全てのシ
ーケンシャルな素子が各クロックサイクルの間に更新さ
れなければならない。さらに、多位相設計では極めて有
効なラッチの条件付き更新は、単一クロックエッジベー
スのシステムでは支持されない。なぜならそのような更
新は、すべてのシーケンシャルな素子はクロックエッジ
のそれぞれの指定された遷移上で更新されるという要件
に背くからである。
【0009】
【発明の概要】この発明は好都合には、多位相回路を単
一クロックエッジ回路に変換する。
一クロックエッジ回路に変換する。
【0010】この発明は好都合には、回路エミュレー
タ、シミュレータ、回路ベースのシミュレータ、イベン
ト駆動シミュレータなどの単一クロックエッジテストシ
ステムを使用して多位相回路をエミュレートする。さま
ざまな回路が遊び状態にあるクロックエッジ間の「デッ
ド」時間を回避することによってテストシステムの速度
が非常に速まる。
タ、シミュレータ、回路ベースのシミュレータ、イベン
ト駆動シミュレータなどの単一クロックエッジテストシ
ステムを使用して多位相回路をエミュレートする。さま
ざまな回路が遊び状態にあるクロックエッジ間の「デッ
ド」時間を回避することによってテストシステムの速度
が非常に速まる。
【0011】さらに、この発明は、ラッチがロードされ
るかどうかを判断する論理条件信号を実現する。シーケ
ンシャルな素子の条件付更新は、従来のエッジベースの
システムでは禁じられている。
るかどうかを判断する論理条件信号を実現する。シーケ
ンシャルな素子の条件付更新は、従来のエッジベースの
システムでは禁じられている。
【0012】さらには、この発明は、同位相クロックに
よって能動化されるシーケンシャルな素子が組合せ論理
によって接続されかつ単一位相サイクル内で同時に更新
されるバックツーバックラッチを実現する。シーケンシ
ャルな素子のバックツーバック接続は従来のエッジベー
スのシステムでは禁じられている。
よって能動化されるシーケンシャルな素子が組合せ論理
によって接続されかつ単一位相サイクル内で同時に更新
されるバックツーバックラッチを実現する。シーケンシ
ャルな素子のバックツーバック接続は従来のエッジベー
スのシステムでは禁じられている。
【0013】このように第1の実施例に従えば、装置が
多位相回路を単一クロックエッジ回路に変換する。この
装置は、データ信号を受取るように接続されたデータ端
子と、フィードバック信号を受取るように接続されたフ
ィードバック端子と、位相クロック周波数を有する位相
クロック信号を受取るように接続された制御端子と、出
力端子とを有する第1の制御スイッチを含む。この装置
はまた、第1の制御スイッチ出力端子に接続された入力
端子と、第1の制御スイッチのフィードバック端子に接
続され、ラッチされたデータ信号を与える出力端子と、
位相クロック周波数の倍数であるシステムクロック周波
数を有するシステムクロック信号を受取るように接続さ
れたクロック端子とを有するラッチを含む。装置はさら
に、データ信号を受取るように接続された第1のデータ
端子と、ラッチの出力端子に接続された第2のデータ端
子と、位相クロック信号を受取るように接続された制御
端子と、出力端子とを有する第2の制御スイッチを含
む。
多位相回路を単一クロックエッジ回路に変換する。この
装置は、データ信号を受取るように接続されたデータ端
子と、フィードバック信号を受取るように接続されたフ
ィードバック端子と、位相クロック周波数を有する位相
クロック信号を受取るように接続された制御端子と、出
力端子とを有する第1の制御スイッチを含む。この装置
はまた、第1の制御スイッチ出力端子に接続された入力
端子と、第1の制御スイッチのフィードバック端子に接
続され、ラッチされたデータ信号を与える出力端子と、
位相クロック周波数の倍数であるシステムクロック周波
数を有するシステムクロック信号を受取るように接続さ
れたクロック端子とを有するラッチを含む。装置はさら
に、データ信号を受取るように接続された第1のデータ
端子と、ラッチの出力端子に接続された第2のデータ端
子と、位相クロック信号を受取るように接続された制御
端子と、出力端子とを有する第2の制御スイッチを含
む。
【0014】第2の実施例に従えば、多位相回路を単一
クロックエッジ回路に変換するための、以下のステップ
を含む方法が提供される。すなわちこの方法は、データ
信号を入力端子で受取るステップと、システムクロック
周波数を有するシステムクロック信号を受取るステップ
と、システムクロック周波数から分割された周波数を有
する位相クロック信号を受取るステップとを含む。デー
タ信号は、位相クロック信号が活性であるとき、出力端
子に移され、位相クロック信号が活性であるときシステ
ムクロック信号のエッジ遷移が起こると、ラッチされ
る。位相クロック信号が不活性であるとき、ラッチされ
たデータ信号は、システムクロック信号のエッジ遷移が
起こると再びラッチされる。ラッチされたデータ信号は
位相クロック信号が不活性であるとき、出力端子に移さ
れる。
クロックエッジ回路に変換するための、以下のステップ
を含む方法が提供される。すなわちこの方法は、データ
信号を入力端子で受取るステップと、システムクロック
周波数を有するシステムクロック信号を受取るステップ
と、システムクロック周波数から分割された周波数を有
する位相クロック信号を受取るステップとを含む。デー
タ信号は、位相クロック信号が活性であるとき、出力端
子に移され、位相クロック信号が活性であるときシステ
ムクロック信号のエッジ遷移が起こると、ラッチされ
る。位相クロック信号が不活性であるとき、ラッチされ
たデータ信号は、システムクロック信号のエッジ遷移が
起こると再びラッチされる。ラッチされたデータ信号は
位相クロック信号が不活性であるとき、出力端子に移さ
れる。
【0015】
【好ましい実施例の詳しい説明】この図面では、同じ参
照番号は同じ部品を示す。
照番号は同じ部品を示す。
【0016】図5を参照して、多位相回路を単一クロッ
クエッジ回路に変換するための、または単一クロックエ
ッジシミュレータを使用して多位相回路をエミュレート
するための多位相ラッチマッピング回路500は、エッ
ジ検出フリップフロップ502と、入力マルチプレクサ
506と、出力マルチプレクサ508とを含む。多位相
ラッチマッピング回路500への入力信号は、A入力ラ
イン510上のA信号と、制御ライン514を介する位
相クロック信号とを含む。出力信号Yが多位相ラッチマ
ッピング回路500によって生成され、出力ライン51
8上に与えられる。位相発生器530はシステムクロッ
ク信号から位相クロック信号を生成する。
クエッジ回路に変換するための、または単一クロックエ
ッジシミュレータを使用して多位相回路をエミュレート
するための多位相ラッチマッピング回路500は、エッ
ジ検出フリップフロップ502と、入力マルチプレクサ
506と、出力マルチプレクサ508とを含む。多位相
ラッチマッピング回路500への入力信号は、A入力ラ
イン510上のA信号と、制御ライン514を介する位
相クロック信号とを含む。出力信号Yが多位相ラッチマ
ッピング回路500によって生成され、出力ライン51
8上に与えられる。位相発生器530はシステムクロッ
ク信号から位相クロック信号を生成する。
【0017】多位相ラッチマッピング回路500は、多
位相回路を単一クロックエッジトリガド回路に変換すべ
く使用される。代わりに、多位相ラッチマッピング回路
500は、回路エミュレータ、シミュレータ、サイクル
ベースのシミュレータ、イベント駆動シミュレータなど
の単一クロックエッジトリガドテストシステム中で多位
相回路をエミュレートすべく使用される。
位相回路を単一クロックエッジトリガド回路に変換すべ
く使用される。代わりに、多位相ラッチマッピング回路
500は、回路エミュレータ、シミュレータ、サイクル
ベースのシミュレータ、イベント駆動シミュレータなど
の単一クロックエッジトリガドテストシステム中で多位
相回路をエミュレートすべく使用される。
【0018】入力マルチプレクサ506は、A入力ライ
ン510上のA信号およびフィードバックライン512
上のフィードバック信号を含む2つのデータ信号を受取
る第1の制御スイッチとして働く。入力マルチプレクサ
506は、イネーブル信号として働く位相クロック信号
を制御ライン514上で受取る。入力マルチプレクサ5
06はA信号とフィードバック信号との間で選択された
信号をエッジ検出フリップフロップ502のD入力端子
に渡す。制御信号514上のイネーブル信号は、入力マ
ルチプレクサ506がエッジ検出フリップフロップ50
2にA信号を渡したかフィードバック信号を渡したかを
判断する。たとえば、イネーブル信号が論理「1」であ
るとき、入力マルチプレクサ506はA信号をエッジ検
出フリップフロップ502のD入力端子に移す。そうで
なければ、フィードバック信号が選択され、エッジ検出
フリップフロップ502のD入力端子に与えられる。
ン510上のA信号およびフィードバックライン512
上のフィードバック信号を含む2つのデータ信号を受取
る第1の制御スイッチとして働く。入力マルチプレクサ
506は、イネーブル信号として働く位相クロック信号
を制御ライン514上で受取る。入力マルチプレクサ5
06はA信号とフィードバック信号との間で選択された
信号をエッジ検出フリップフロップ502のD入力端子
に渡す。制御信号514上のイネーブル信号は、入力マ
ルチプレクサ506がエッジ検出フリップフロップ50
2にA信号を渡したかフィードバック信号を渡したかを
判断する。たとえば、イネーブル信号が論理「1」であ
るとき、入力マルチプレクサ506はA信号をエッジ検
出フリップフロップ502のD入力端子に移す。そうで
なければ、フィードバック信号が選択され、エッジ検出
フリップフロップ502のD入力端子に与えられる。
【0019】エッジ検出フリップフロップ502は、D
フリップフロップのクロック入力CLK上で立上がりエ
ッジが検出されるとD入力端子上で受取られる信号をQ
出力端子に渡すDフリップフロップである。回路500
の例示的実施例では、クロック入力CLKに与えられる
クロック信号は、位相クロック信号周波数の倍数である
周波数を有するシステムクロック信号である。たとえ
ば、ある実施例では、システムクロック周波数は位相ク
ロック周波数の2倍である。エッジ検出フリップフロッ
プ502は、システムクロック遷移が多数介在するにも
かかわらず、多位相クロックシステムの特定の位相たと
えばφに関連の信号のレベルを位相φの全サイクルの間
中ずっと保持するように働く。典型的な回路または回路
のシミュレーションはいくつかの多位相ラッチマッピン
グ回路500を含む。
フリップフロップのクロック入力CLK上で立上がりエ
ッジが検出されるとD入力端子上で受取られる信号をQ
出力端子に渡すDフリップフロップである。回路500
の例示的実施例では、クロック入力CLKに与えられる
クロック信号は、位相クロック信号周波数の倍数である
周波数を有するシステムクロック信号である。たとえ
ば、ある実施例では、システムクロック周波数は位相ク
ロック周波数の2倍である。エッジ検出フリップフロッ
プ502は、システムクロック遷移が多数介在するにも
かかわらず、多位相クロックシステムの特定の位相たと
えばφに関連の信号のレベルを位相φの全サイクルの間
中ずっと保持するように働く。典型的な回路または回路
のシミュレーションはいくつかの多位相ラッチマッピン
グ回路500を含む。
【0020】出力マルチプレクサ508は、入力ライン
510上のA信号と、エッジ検出フリップフロップ50
2のQ出力端子から受取られた信号とを含む2つのデー
タ信号を受取る第2の制御スイッチとして働く。出力マ
ルチプレクサ508は、入力マルチプレクサ506と同
様に、制御ライン514上のイネーブルする位相クロッ
ク信号によって制御される。出力マルチプレクサ508
は、Y信号つまり多位相ラッチマッピング回路500の
出力信号を、出力ライン518上に生成する。制御ライ
ン514上のイネーブル信号は、出力マルチプレクサ5
08による、A信号510またはエッジ検出フリップフ
ロップ502のQ出力端子からの信号いずれかの出力ラ
イン518への転送を、制御する。たとえば、出力マル
チプレクサ508は、制御ライン514上のイネーブル
信号が論理「1」であるときA信号に等しい、そうでな
ければエッジ検出フリップフロップ502のQ出力端子
上の信号に等しいY信号を出力ライン518上に生成す
る。
510上のA信号と、エッジ検出フリップフロップ50
2のQ出力端子から受取られた信号とを含む2つのデー
タ信号を受取る第2の制御スイッチとして働く。出力マ
ルチプレクサ508は、入力マルチプレクサ506と同
様に、制御ライン514上のイネーブルする位相クロッ
ク信号によって制御される。出力マルチプレクサ508
は、Y信号つまり多位相ラッチマッピング回路500の
出力信号を、出力ライン518上に生成する。制御ライ
ン514上のイネーブル信号は、出力マルチプレクサ5
08による、A信号510またはエッジ検出フリップフ
ロップ502のQ出力端子からの信号いずれかの出力ラ
イン518への転送を、制御する。たとえば、出力マル
チプレクサ508は、制御ライン514上のイネーブル
信号が論理「1」であるときA信号に等しい、そうでな
ければエッジ検出フリップフロップ502のQ出力端子
上の信号に等しいY信号を出力ライン518上に生成す
る。
【0021】エッジ検出フリップフロップ502のQ出
力端子からの信号は、出力マルチプレクサ508の入力
端子に伝えられるのに加えて、入力マルチプレクサ50
6へのフィードバック信号としてフィードバックライン
512にフィードバックされる。
力端子からの信号は、出力マルチプレクサ508の入力
端子に伝えられるのに加えて、入力マルチプレクサ50
6へのフィードバック信号としてフィードバックライン
512にフィードバックされる。
【0022】エッジ検出フリップフロップ502は、典
型的には単一クロックエッジトリガド回路において使用
されるラッチである。そのようなラッチは、入力端子、
出力端子、およびイネーブル端子を有する。入力端子に
ある信号は、イネーブル端子に与えられるクロック信号
の選択されたエッジたとえばクロック信号の立下がりエ
ッジで、出力端子に渡される。多位相ラッチマッピング
回路500などの多位相回路を単一クロックエッジトリ
ガド回路に変換するために、入力マルチプレクサ506
はエッジ検出フリップフロップ502の入力端子に与え
られ、出力マルチプレクサ508はエッジ検出フリップ
フロップ502の出力端子に与えられる。制御ライン5
14上のイネーブル信号が活性化されたとき、たとえば
データ「1」になるとき、出力マルチプレクサ508
は、入力ライン510上のA信号を選択して出力ライン
518に転送する。
型的には単一クロックエッジトリガド回路において使用
されるラッチである。そのようなラッチは、入力端子、
出力端子、およびイネーブル端子を有する。入力端子に
ある信号は、イネーブル端子に与えられるクロック信号
の選択されたエッジたとえばクロック信号の立下がりエ
ッジで、出力端子に渡される。多位相ラッチマッピング
回路500などの多位相回路を単一クロックエッジトリ
ガド回路に変換するために、入力マルチプレクサ506
はエッジ検出フリップフロップ502の入力端子に与え
られ、出力マルチプレクサ508はエッジ検出フリップ
フロップ502の出力端子に与えられる。制御ライン5
14上のイネーブル信号が活性化されたとき、たとえば
データ「1」になるとき、出力マルチプレクサ508
は、入力ライン510上のA信号を選択して出力ライン
518に転送する。
【0023】制御ライン514上のイネーブル信号が不
活性化されたとき、たとえばデータが「0」値になると
き、システムクロック信号のエッジによってエッジ検出
フリップフロップ502中に最後にラッチされたデータ
値が利用可能になる。このように、イネーブル信号が不
活性化されたとき適切なA信号が入力ライン510上で
利用可能でなくても、エッジ検出フリップフロップ50
2によって記憶されることにより適切なデータが利用可
能である。
活性化されたとき、たとえばデータが「0」値になると
き、システムクロック信号のエッジによってエッジ検出
フリップフロップ502中に最後にラッチされたデータ
値が利用可能になる。このように、イネーブル信号が不
活性化されたとき適切なA信号が入力ライン510上で
利用可能でなくても、エッジ検出フリップフロップ50
2によって記憶されることにより適切なデータが利用可
能である。
【0024】図6を参照して、多位相ラッチマッピング
回路500のすべての素子を含みかつANDゲート60
2をさらに組入れる条件付ラッチマッピング回路600
の実施例が示されている。ANDゲート602は、選択
スイッチマルチプレクサ506および508への入力信
号の条件付活性化を提供する。ANDゲート602は、
2つの入力信号つまり位相信号φ1 と条件付入力ライン
604上の条件信号とを受取るように接続されている。
ANDゲート602は制御ライン514上でイネーブル
信号ENを生成し、これはANDゲート602からの結
果を入力マルチプレクサ506および出力マルチプレク
サ508の制御端子に運ぶ。このように、エッジ検出ラ
ッチがシステムクロックサイクルごとに更新し続ける間
に、論理条件信号はエッジ検出フリップフロップ502
の条件付ローディングを制御するように使用される。こ
うして、条件付動作を禁ずるエッジベースのシステムの
実用上の限界が回避される。
回路500のすべての素子を含みかつANDゲート60
2をさらに組入れる条件付ラッチマッピング回路600
の実施例が示されている。ANDゲート602は、選択
スイッチマルチプレクサ506および508への入力信
号の条件付活性化を提供する。ANDゲート602は、
2つの入力信号つまり位相信号φ1 と条件付入力ライン
604上の条件信号とを受取るように接続されている。
ANDゲート602は制御ライン514上でイネーブル
信号ENを生成し、これはANDゲート602からの結
果を入力マルチプレクサ506および出力マルチプレク
サ508の制御端子に運ぶ。このように、エッジ検出ラ
ッチがシステムクロックサイクルごとに更新し続ける間
に、論理条件信号はエッジ検出フリップフロップ502
の条件付ローディングを制御するように使用される。こ
うして、条件付動作を禁ずるエッジベースのシステムの
実用上の限界が回避される。
【0025】条件付入力ライン604上の論理条件信号
はさまざまな供給源から与えられる。組合せ論理は典型
的には論理条件信号を与える。しかしながら、外部信号
およびほかの適切な信号も通常論理条件信号として使用
される。
はさまざまな供給源から与えられる。組合せ論理は典型
的には論理条件信号を与える。しかしながら、外部信号
およびほかの適切な信号も通常論理条件信号として使用
される。
【0026】典型的な回路または回路のエミュレーショ
ンはいくつかの条件付ラッチマッピング回路600を含
む。こうして、条件付ラッチマッピング回路600は特
定の条件信号に従って更新され、そのような更新のタイ
ミングは多位相タイミング信号に対して適切に制御され
る。
ンはいくつかの条件付ラッチマッピング回路600を含
む。こうして、条件付ラッチマッピング回路600は特
定の条件信号に従って更新され、そのような更新のタイ
ミングは多位相タイミング信号に対して適切に制御され
る。
【0027】図7は、さまざまな多位相ラッチマッピン
グ回路500、704、および706を含む回路700
の一部分の一例を示す。多位相ラッチマッピング回路5
00は図5にも示されている。回路部分700もまた、
間隔をあけて配置された組合せ論理回路A710、B7
12、およびC714を含む。多位相クロック信号の2
つの位相、つまりφ1 およびφ2 は、データ信号として
多位相ラッチマッピング回路500、704、および7
06のさまざまな回路に送られる。多位相ラッチマッピ
ング回路500および704の2つは、φ1 信号によっ
て駆動される。多位相ラッチマッピング回路706はφ
2 信号によって条件付で駆動される。例示の回路700
では、条件ラッチ706の応答がそこに依存する条件信
号は組合せ論理回路C714内の回路によって生成され
る。ほかの例示的実施例では、条件信号が任意の適切な
態様において生成されてもよく、回路700に対して外
部で生じてもよい。
グ回路500、704、および706を含む回路700
の一部分の一例を示す。多位相ラッチマッピング回路5
00は図5にも示されている。回路部分700もまた、
間隔をあけて配置された組合せ論理回路A710、B7
12、およびC714を含む。多位相クロック信号の2
つの位相、つまりφ1 およびφ2 は、データ信号として
多位相ラッチマッピング回路500、704、および7
06のさまざまな回路に送られる。多位相ラッチマッピ
ング回路500および704の2つは、φ1 信号によっ
て駆動される。多位相ラッチマッピング回路706はφ
2 信号によって条件付で駆動される。例示の回路700
では、条件ラッチ706の応答がそこに依存する条件信
号は組合せ論理回路C714内の回路によって生成され
る。ほかの例示的実施例では、条件信号が任意の適切な
態様において生成されてもよく、回路700に対して外
部で生じてもよい。
【0028】回路700の多位相動作に関して、多位相
ラッチマッピング回路500の制御下で、位相φ1 信号
の指定されたレベル、たとえば論理「1」レベルの発生
のとき、信号ライン720上の信号Aの遷移が組合せ論
理B712に与えられる。組合せ論理B712が信号を
生成し、この信号は、組合せ論理ブロックB712から
信号ライン722に信号を伝搬する多位相ラッチマッピ
ング回路704の動作によって、組合せ論理C714に
与えられる。組合せ論理C714は信号ライン724上
に信号Cを生成し、さらに条件信号CONDを生成す
る。条件信号CONDおよび位相φ2 信号はANDゲー
ト730に与えられ、AND動作の結果はイネーブル信
号として多位相ラッチマッピング回路706に与えられ
る。位相φ 2 信号の指定されたレベル、(CONDが真
であるならば)たとえば論理「1」レベルの発生のとき
信号ライン724上の信号Cが回路706の出力に伝搬
され、組合せ論理A710に与えられ、信号ライン72
0上の信号Aを生成する。この信号の伝搬は、各位相ク
ロックφ1 およびφ2 の1サイクルで生じる。
ラッチマッピング回路500の制御下で、位相φ1 信号
の指定されたレベル、たとえば論理「1」レベルの発生
のとき、信号ライン720上の信号Aの遷移が組合せ論
理B712に与えられる。組合せ論理B712が信号を
生成し、この信号は、組合せ論理ブロックB712から
信号ライン722に信号を伝搬する多位相ラッチマッピ
ング回路704の動作によって、組合せ論理C714に
与えられる。組合せ論理C714は信号ライン724上
に信号Cを生成し、さらに条件信号CONDを生成す
る。条件信号CONDおよび位相φ2 信号はANDゲー
ト730に与えられ、AND動作の結果はイネーブル信
号として多位相ラッチマッピング回路706に与えられ
る。位相φ 2 信号の指定されたレベル、(CONDが真
であるならば)たとえば論理「1」レベルの発生のとき
信号ライン724上の信号Cが回路706の出力に伝搬
され、組合せ論理A710に与えられ、信号ライン72
0上の信号Aを生成する。この信号の伝搬は、各位相ク
ロックφ1 およびφ2 の1サイクルで生じる。
【0029】ラッチマッピング回路500および704
は、2つの位相φ1 シーケンシャルな素子が組合せ論理
によって接続される「バックツーバック」ラッチと考え
られるラッチを含む。
は、2つの位相φ1 シーケンシャルな素子が組合せ論理
によって接続される「バックツーバック」ラッチと考え
られるラッチを含む。
【0030】位相φ1 タイミング信号がマッピング回路
706に与えられる、回路700と同様の例示の回路
(図示せず)によって、すべての信号A、B、およびC
が同じ位相サイクルの間に更新される回路が達成され
る。この態様で動作する回路またはエミュレートされた
回路は、シーケンシャル論理のチェーンを介して1サイ
クルにつき1ブロック進むシステムよりずっと速い。
706に与えられる、回路700と同様の例示の回路
(図示せず)によって、すべての信号A、B、およびC
が同じ位相サイクルの間に更新される回路が達成され
る。この態様で動作する回路またはエミュレートされた
回路は、シーケンシャル論理のチェーンを介して1サイ
クルにつき1ブロック進むシステムよりずっと速い。
【0031】図5、7、および8を参照して、図8のタ
イミング図は、図7において示された回路部分700の
さまざまなライン上の例示的信号を示す。回路部分70
0は、図5に示された多位相ラッチマッピング回路50
0と同じ回路を複数含む。高周波数システムクロック信
号(CLK)800はシステムクロック入力信号をエッ
ジ検出フリップフロップ502に与える。位相1
(φ1 )信号802は制御ライン514上のイネーブル
信号であり、選択マルチプレクサ506および508を
制御すべく与えられる。信号804はA入力ライン51
0上で選択マルチプレクサ506および508の入力端
子に与えられる。信号804はシステムクロックCLK
800の立下がりエッジでフリップフロップ502にク
ロックされ、フィードバック信号(図示せず)を与え、
これはフィードバックライン512上を送られ、入力マ
ルチプレクサ506のフィードバック入力端子に与えら
れる。出力信号Yは、入力信号A804およびイネーブ
ル信号φ1 802に応答して多位相ラッチマッピング回
路500によって生成され、組合せ論理ブロックB71
2に与えられる。イネーブル信号φ1 が論理0に戻った
後、出力信号Yの状態はフリップフロップ502によっ
て維持される。組合せ論理ブロックB712は信号を生
成し、この信号はラッチマッピング回路704によって
伝搬され、B信号ライン722上に信号B806を生成
する。信号B806は信号A804の信号遷移を反映す
る。
イミング図は、図7において示された回路部分700の
さまざまなライン上の例示的信号を示す。回路部分70
0は、図5に示された多位相ラッチマッピング回路50
0と同じ回路を複数含む。高周波数システムクロック信
号(CLK)800はシステムクロック入力信号をエッ
ジ検出フリップフロップ502に与える。位相1
(φ1 )信号802は制御ライン514上のイネーブル
信号であり、選択マルチプレクサ506および508を
制御すべく与えられる。信号804はA入力ライン51
0上で選択マルチプレクサ506および508の入力端
子に与えられる。信号804はシステムクロックCLK
800の立下がりエッジでフリップフロップ502にク
ロックされ、フィードバック信号(図示せず)を与え、
これはフィードバックライン512上を送られ、入力マ
ルチプレクサ506のフィードバック入力端子に与えら
れる。出力信号Yは、入力信号A804およびイネーブ
ル信号φ1 802に応答して多位相ラッチマッピング回
路500によって生成され、組合せ論理ブロックB71
2に与えられる。イネーブル信号φ1 が論理0に戻った
後、出力信号Yの状態はフリップフロップ502によっ
て維持される。組合せ論理ブロックB712は信号を生
成し、この信号はラッチマッピング回路704によって
伝搬され、B信号ライン722上に信号B806を生成
する。信号B806は信号A804の信号遷移を反映す
る。
【0032】この例では、高周波数システムクロック信
号800は2つの位相φ1 信号802およびφ2 信号8
08に分割される。システムクロックの1立上がりエッ
ジは位相φ1 信号802に対応する。システムクロック
のその後に続く立上がりエッジは位相φ2 信号808に
対応し、その後位相信号φ1 およびφ2 が交互になる。
位相φ1 信号802および位相φ2 信号808の各々は
高周波数システムクロック信号800の半分の周波数を
有する。2つの位相信号φ1 およびφ2 は180°の相
互位相差を有する。2つの位相は説明を簡単にするため
に示されている。多位相ラッチマッピング回路500は
さらなる多数のクロック位相に対しても同じ態様で動作
することが理解されるべきである。
号800は2つの位相φ1 信号802およびφ2 信号8
08に分割される。システムクロックの1立上がりエッ
ジは位相φ1 信号802に対応する。システムクロック
のその後に続く立上がりエッジは位相φ2 信号808に
対応し、その後位相信号φ1 およびφ2 が交互になる。
位相φ1 信号802および位相φ2 信号808の各々は
高周波数システムクロック信号800の半分の周波数を
有する。2つの位相信号φ1 およびφ2 は180°の相
互位相差を有する。2つの位相は説明を簡単にするため
に示されている。多位相ラッチマッピング回路500は
さらなる多数のクロック位相に対しても同じ態様で動作
することが理解されるべきである。
【0033】エッジ検出フリップフロップ502は、シ
ステムクロック信号800の立下がりエッジごとに入力
マルチプレクサ506によって選択された信号をラッチ
する。エッジ検出フリップフロップ502のQ出力端子
にあるこのラッチされた信号は、入力マルチプレクサ5
06にすぐにフィードバックされる。入力マルチプレク
サ506は、位相φ1 信号が論理「1」であるとき入力
信号A804を選択し、そうでなければフィードバック
ライン512上の信号を選択する。
ステムクロック信号800の立下がりエッジごとに入力
マルチプレクサ506によって選択された信号をラッチ
する。エッジ検出フリップフロップ502のQ出力端子
にあるこのラッチされた信号は、入力マルチプレクサ5
06にすぐにフィードバックされる。入力マルチプレク
サ506は、位相φ1 信号が論理「1」であるとき入力
信号A804を選択し、そうでなければフィードバック
ライン512上の信号を選択する。
【0034】このようにして、エッジ検出フリップフロ
ップ502は、すべてのシーケンシャルな素子はシステ
ムクロックサイクルごとに更新されるというエッジベー
スシステムの要件を満たす。しかしながら、出力信号ラ
イン518上のデータ値はラッチされそれによって位相
φ1 サイクルの持続時間の間保持されるので多位相動作
が達成される。同様に、ラッチの条件付更新が図6に示
された態様で、さらに図7に示されたANDゲート73
0によって位相φ1 信号などの位相信号と条件付信号と
をAND処理することにより達成され、システムクロッ
ク信号はクロックエッジの指定された遷移ごとにすべて
のシーケンシャルな素子を連続的に更新する。
ップ502は、すべてのシーケンシャルな素子はシステ
ムクロックサイクルごとに更新されるというエッジベー
スシステムの要件を満たす。しかしながら、出力信号ラ
イン518上のデータ値はラッチされそれによって位相
φ1 サイクルの持続時間の間保持されるので多位相動作
が達成される。同様に、ラッチの条件付更新が図6に示
された態様で、さらに図7に示されたANDゲート73
0によって位相φ1 信号などの位相信号と条件付信号と
をAND処理することにより達成され、システムクロッ
ク信号はクロックエッジの指定された遷移ごとにすべて
のシーケンシャルな素子を連続的に更新する。
【0035】A信号804がφ1 クロックの全サイクル
またはそれ以上にわたって論理「0」であるとき、多位
相ラッチマッピング回路500はA信号804もフィー
ドバック信号も論理「0」である状況に置かれる。A信
号804が論理「1」の値をとるとき、入力マルチプレ
クサ506は、φ1 信号802の論理「1」レベルによ
って駆動されると、A信号論理「1」値をエッジ検出フ
リップフロップ502のD端子に渡す。同時に、出力マ
ルチプレクサ508がφ1 信号802の論理「1」レベ
ルによってまた駆動されると、A信号論理「1」値を出
力端子518に渡し、出力信号Yを送る。
またはそれ以上にわたって論理「0」であるとき、多位
相ラッチマッピング回路500はA信号804もフィー
ドバック信号も論理「0」である状況に置かれる。A信
号804が論理「1」の値をとるとき、入力マルチプレ
クサ506は、φ1 信号802の論理「1」レベルによ
って駆動されると、A信号論理「1」値をエッジ検出フ
リップフロップ502のD端子に渡す。同時に、出力マ
ルチプレクサ508がφ1 信号802の論理「1」レベ
ルによってまた駆動されると、A信号論理「1」値を出
力端子518に渡し、出力信号Yを送る。
【0036】エッジ検出フリップフロップ502はシス
テムクロック信号800の立下がりエッジでA信号論理
「1」をラッチし、それによってA信号論理「1」をQ
出力端子に渡す。このとき、φ1 信号802は論理
「0」の値をとるので出力マルチプレクサ508によっ
て渡される信号はエッジ検出フリップフロップ502の
Q出力端子からの論理「1」である。こうして、出力信
号Yは高周波数システムクロック信号(CLK)800
の2.5倍のサイクルの間論理「1」を表わす。
テムクロック信号800の立下がりエッジでA信号論理
「1」をラッチし、それによってA信号論理「1」をQ
出力端子に渡す。このとき、φ1 信号802は論理
「0」の値をとるので出力マルチプレクサ508によっ
て渡される信号はエッジ検出フリップフロップ502の
Q出力端子からの論理「1」である。こうして、出力信
号Yは高周波数システムクロック信号(CLK)800
の2.5倍のサイクルの間論理「1」を表わす。
【0037】エッジ検出フリップフロップ502Q出力
端子からの論理「1」データ値は、フィードバックライ
ン512上で入力マルチプレクサ506に送られ、φ1
信号802が論理「0」値を有するので、フィードバッ
ク信号をエッジ検出フリップフロップ502のD端子に
与える。フィードバック信号の論理「1」はこうして出
力マルチプレクサ508および出力端子518に出力信
号Yとして渡される。こうして、A信号804は高周波
数システムクロック信号(CLK)800の全サイクル
の間保持される。出力信号Yは、代替の論理レベルがA
信号804上に与えられφ1 信号802によって駆動さ
れるまで特定の論理レベルを保持する。
端子からの論理「1」データ値は、フィードバックライ
ン512上で入力マルチプレクサ506に送られ、φ1
信号802が論理「0」値を有するので、フィードバッ
ク信号をエッジ検出フリップフロップ502のD端子に
与える。フィードバック信号の論理「1」はこうして出
力マルチプレクサ508および出力端子518に出力信
号Yとして渡される。こうして、A信号804は高周波
数システムクロック信号(CLK)800の全サイクル
の間保持される。出力信号Yは、代替の論理レベルがA
信号804上に与えられφ1 信号802によって駆動さ
れるまで特定の論理レベルを保持する。
【0038】組合せ論理B712およびイネーブル信号
φ1 信号802の出力に応答して多位相ラッチマッピン
グ回路704によって生成された出力信号B806は、
組合せ論理ブロックC714に与えられる。組合せ論理
ブロックCはデータ信号を多位相ラッチマッピング回路
706に与え、これはC信号ライン724上に信号C8
10を生成する。信号C810は、組合せ論理C714
中で処理され、位相φ 2 信号808のマッピング回路7
06への付与の結果約180°の位相遅延だけシフトし
たものとして、信号B806の信号遷移を反映する。信
号C810は、条件信号CONDが論理「1」の値を有
し、したがってマッピング回路706をイネーブルする
と仮定したときの結果を表わしたものである。
φ1 信号802の出力に応答して多位相ラッチマッピン
グ回路704によって生成された出力信号B806は、
組合せ論理ブロックC714に与えられる。組合せ論理
ブロックCはデータ信号を多位相ラッチマッピング回路
706に与え、これはC信号ライン724上に信号C8
10を生成する。信号C810は、組合せ論理C714
中で処理され、位相φ 2 信号808のマッピング回路7
06への付与の結果約180°の位相遅延だけシフトし
たものとして、信号B806の信号遷移を反映する。信
号C810は、条件信号CONDが論理「1」の値を有
し、したがってマッピング回路706をイネーブルする
と仮定したときの結果を表わしたものである。
【0039】この発明はさまざまな実施例を参照して説
明されてきたが、これらの実施例は例示的であってこの
発明の範囲がそれらに限定されないことが理解されるで
あろう。説明された実施例の変形、修正、付加、および
改良が可能である。例示的実施例は回路、ならびにエミ
ュレーションシステム、シミュレーションシステムおよ
びほかのテストシステムに適用可能である。ラッチの
数、配置、および相互接続を変更してもよい。さにら、
さまざまな数の位相が多位相回路10で使用されてもよ
い。さらに、論理レベル「0」および論理レベル「1」
が回路のほとんどで交換されてもよい。さらに、多位相
ラッチマッピング回路の説明を簡単にするために例示的
実施例位相、φ1 およびφ2 の2つだけに分割されるシ
ステムクロックを示しているが、システムクロックをさ
らなる位相クロック信号φ3 ないしφn に分割してもよ
い。ここでのnは任意の正の整数である。これらのおよ
びほかの変形、修正、付加、および改良は前掲の特許請
求の範囲に定義されたようなこの発明の範囲内にあり得
る。
明されてきたが、これらの実施例は例示的であってこの
発明の範囲がそれらに限定されないことが理解されるで
あろう。説明された実施例の変形、修正、付加、および
改良が可能である。例示的実施例は回路、ならびにエミ
ュレーションシステム、シミュレーションシステムおよ
びほかのテストシステムに適用可能である。ラッチの
数、配置、および相互接続を変更してもよい。さにら、
さまざまな数の位相が多位相回路10で使用されてもよ
い。さらに、論理レベル「0」および論理レベル「1」
が回路のほとんどで交換されてもよい。さらに、多位相
ラッチマッピング回路の説明を簡単にするために例示的
実施例位相、φ1 およびφ2 の2つだけに分割されるシ
ステムクロックを示しているが、システムクロックをさ
らなる位相クロック信号φ3 ないしφn に分割してもよ
い。ここでのnは任意の正の整数である。これらのおよ
びほかの変形、修正、付加、および改良は前掲の特許請
求の範囲に定義されたようなこの発明の範囲内にあり得
る。
【図1】先行技術の単一クロックエッジトリガシステム
のブロック図である。
のブロック図である。
【図2】先行技術の単一クロックエッジトリガシステム
のタイミング図である。
のタイミング図である。
【図3】先行技術の多位相システムのブロック図であ
る。
る。
【図4】先行技術の多位相システムのタイミング図であ
る。
る。
【図5】この発明に従った多位相ラッチマッピング回路
の回路図である。
の回路図である。
【図6】この発明に従った条件付多位相ラッチマッピン
グ回路の回路図である。
グ回路の回路図である。
【図7】さまざまな多位相ラッチマッピング回路を含み
かつ間隔をあけて置かれた組合せ論理回路を有する回路
の一部分の一例を示す図である。
かつ間隔をあけて置かれた組合せ論理回路を有する回路
の一部分の一例を示す図である。
【図8】図7中に示された回路の部分のさまざまなライ
ン上の例示的信号を示すタイミング図である。
ン上の例示的信号を示すタイミング図である。
502 エッジ検出フリップフロップ 506 入力マルチプレクサ 508 出力マルチプレクサ 530 位相発生器
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ゴピ・ガナパシー アメリカ合衆国、78741 テキサス州、オ ースティン、ウイッカーシャム・レーン、 2501、ナンバー・2234 (72)発明者 デイビッド・ビー・ウィット アメリカ合衆国、78759 テキサス州、オ ースティン、パスファインダー・ドライ ブ、6318
Claims (29)
- 【請求項1】 単一クロックエッジシステムを使用して
多位相回路をシミュレートするためのシミュレータ回路
であって、 データノードと、 システムクロックノードと、 システムクロックノードに結合された入力端子および出
力端子を有する位相発生器と、 データノードに結合された第1の入力端子、第2の入力
端子、位相発生器の出力端子に結合された制御端子、お
よび出力端子を有する第1の制御スイッチと、 第1の制御スイッチ出力端子に結合された入力端子、第
1の制御スイッチの第1の入力端子に結合された出力端
子、およびシステムクロックノードに結合されたクロッ
ク端子を有するラッチと、 データノードに結合された第1の入力端子、ラッチの出
力端子に結合された第2の入力端子、位相発生器の出力
端子に結合された制御端子、および出力端子を有する第
2の制御スイッチとを含む、シミュレータ回路。 - 【請求項2】 条件信号ノードと、 位相発生器の出力端子に結合された第1の入力端子、条
件信号ノードに結合された第2の入力端子、ならびに第
1および第2の制御スイッチの制御端子に結合された出
力端子を有するANDゲートとをさらに含む、請求項1
に記載の回路。 - 【請求項3】 第1および第2の制御スイッチはマルチ
プレクサである、請求項1に記載の回路。 - 【請求項4】 ラッチはDフリップフロップである、請
求項1に記載の回路。 - 【請求項5】 データノードと、 システムクロックノードと、 システムクロックノードに結合された入力端子および出
力端子を有する位相発生器と、 データノードに結合されたデータ入力端子、位相発生器
の出力端子に結合されたイネーブル端子、および出力端
子を有する第1の多位相ラッチマッピング回路と、 第1の多位相ラッチマッピング回路の出力端子に結合さ
れた入力端子、および出力端子を有する組合せ論理ブロ
ックと、 組合せ論理ブロックの出力端子に結合されたデータ入力
端子、位相発生器の出力端子に結合されたイネーブル端
子、および出力端子を有する第2の多位相ラッチマッピ
ング回路とを含む、シーケンシャル論理回路。 - 【請求項6】 第1の多位相ラッチマッピング回路は、 データノードに結合された第1の入力端子、第2の入力
端子、位相発生器の出力端子に結合された制御端子、お
よび出力端子を有する第1の制御スイッチと、 第1の制御スイッチ出力端子に結合された入力端子、第
1の制御スイッチの第1の入力端子に結合された出力端
子、およびシステムクロックノードに結合されたクロッ
ク端子を有するラッチと、 データノードに結合された第1の入力端子、ラッチの出
力端子に結合された第2の入力端子、位相発生器の出力
端子に結合された制御端子、および出力端子を有する第
2の制御スイッチとを含む、請求項5に記載の回路。 - 【請求項7】 第1および第2の制御スイッチはマルチ
プレクサである、請求項6に記載の回路。 - 【請求項8】 ラッチはDフリップフロップである、請
求項6に記載の回路。 - 【請求項9】 条件信号ノードと、 位相発生器の出力端子に結合された第1の入力端子、条
件信号ノードに結合された第2の入力端子、ならびに第
1および第2の制御スイッチの制御端子に結合された出
力端子を有するANDゲートとをさらに含む、請求項5
に記載の回路。 - 【請求項10】 データノードに結合された第1の入力
端子、第2の入力端子、位相クロック周波数を有する位
相クロック信号を受取るように結合された制御端子、お
よび出力端子を有する第1の制御スイッチと、 第1の制御スイッチ出力端子に結合された入力端子、第
1の制御スイッチの第1の入力端子に結合された出力端
子、および位相クロック周波数の倍数であるシステムク
ロック周波数を有するシステムクロック信号を受取るよ
うに結合されたクロック端子を有するラッチと、 データノードに結合された第1の入力端子、ラッチの出
力端子に結合された第2の入力端子、位相クロック信号
を受取るように結合された制御端子、および出力端子を
有する第2の制御スイッチとを含む、多位相回路を単一
クロックエッジ回路に変換するための装置。 - 【請求項11】 第1の制御スイッチは、位相クロック
信号が活性であるとき第1の制御スイッチの第1の入力
端子から第1の制御スイッチ出力端子に信号を渡し、位
相クロック信号が不活性であるとき第1の制御スイッチ
の第2の入力端子から第1の制御スイッチ出力端子に信
号を渡す、請求項10に記載の装置。 - 【請求項12】 第2の制御スイッチは、位相クロック
信号が活性であるとき第2の制御スイッチの第1の入力
端子から第2の制御スイッチ出力端子に信号を渡し、位
相クロックが不活性であるとき第2の制御スイッチの第
2の入力端子から第2の制御スイッチ出力端子に信号を
渡す、請求項11に記載の装置。 - 【請求項13】 第2の制御スイッチは、位相クロック
信号が活性であるとき第2の制御スイッチの第1の入力
端子から第2の制御スイッチ出力端子に信号を渡し、位
相クロックが不活性であるとき第2の制御スイッチの第
2の入力端子から第2の制御スイッチ出力端子に信号を
渡す、請求項10に記載の装置。 - 【請求項14】 ラッチは、システムクロック信号のエ
ッジで入力端子上のデータをラッチする、請求項10に
記載の装置。 - 【請求項15】 装置は、単一クロックエッジトリガド
テストシステムを使用して多位相回路をエミュレートす
るためのエミュレートされた回路である、請求項10に
記載の装置。 - 【請求項16】 単一クロックエッジトリガドテストシ
ステムは、回路エミュレータ、シミュレータ、サイクル
ベースのシミュレータ、イベント駆動シミュレータから
選択されるシステムである、請求項15に記載の装置。 - 【請求項17】 第1および第2の制御スイッチはマル
チプレクサである、請求項10に記載の装置。 - 【請求項18】 ラッチはDフリップフロップである、
請求項10に記載の装置。 - 【請求項19】 位相クロック信号は条件信号であり、 条件信号を受取るように結合された第1の入力端子と、
無条件位相クロック信号を受取るように結合された第2
の入力端子と、第1の制御スイッチ制御端子および第2
の制御スイッチ制御端子に結合されて条件位相クロック
信号を与えるための出力端子とを有するANDゲートを
さらに含む、請求項10に記載の装置。 - 【請求項20】 データ信号とフィードバック信号との
間で入力信号を選択するために、位相クロック周波数を
有する位相クロック信号によって制御される入力マルチ
プレクサと、 入力マルチプレクサに結合されて入力信号を受取り、位
相クロック周波数の倍数であるシステムクロック周波数
を有するシステムクロック信号によって制御されてシス
テムクロック信号のクロックエッジで入力信号をラッチ
するためのフリップフロップと、 位相クロック信号によって制御されてデータ信号とラッ
チされた信号との間で出力信号を選択するための出力マ
ルチプレクサとを含み、ラッチされた信号はフィードバ
ック信号として入力マルチプレクサにフィードバックさ
れる、多位相回路を単一クロックエッジ回路に変換する
ための装置。 - 【請求項21】 位相クロック信号は条件信号であり、 条件信号と無条件位相クロック信号とをAND処理し、
条件位相クロック信号の結果を入力マルチプレクサおよ
び出力マルチプレクサに与えるためのANDゲートをさ
らに含む、請求項20に記載の装置。 - 【請求項22】 多位相回路を、回路エミュレータ、シ
ミュレータ、サイクルベースのシミュレータ、およびイ
ベント駆動シミュレータから選択される単一クロックエ
ッジトリガドシステムにおいてエミュレートするための
エミュレートされた回路である、請求項20に記載の装
置。 - 【請求項23】 多位相回路を単一クロックエッジ回路
に変換するための方法であって、 入力端子でデータ信号を受取るステップと、 システムクロック周波数を有するシステムクロック信号
を受取るステップと、 システムクロック周波数から分割された周波数を有する
位相クロック信号を受取るステップと、 位相クロック信号が活性であるときデータ信号を出力端
子に転送するステップと、 位相クロック信号が活性であるときシステムクロックの
エッジ遷移の際データ信号をラッチするステップと、 ラッチされたデータ信号を、位相クロック信号が不活性
であるときシステムクロック信号のエッジ遷移の際にラ
ッチするステップと、 位相クロック信号が不活性であるとき、ラッチされたデ
ータ信号を出力端子に移すステップとを含む、多位相回
路を単一クロックエッジ回路に変換する方法。 - 【請求項24】 多位相回路は、回路エミュレータ、シ
ミュレータ、サイクルベースのシミュレータ、イベント
駆動シミュレータから選択された単一クロックエッジト
リガシステムを使用してエミュレートされた回路であ
る、請求項23に記載の方法。 - 【請求項25】 条件信号を受取るステップと、 条件信号によって選択されたように位相クロック信号の
活性および不活性を制御するステップとをさらに含む、
請求項23に記載の方法。 - 【請求項26】 位相クロック信号によって制御された
マルチプレクサは、データ信号およびラッチされたデー
タ信号を選択的に出力端子に転送するように使用され
る、請求項23に記載の方法。 - 【請求項27】 位相クロック信号によって制御される
マルチプレクサは、システムクロックのエッジ遷移の際
データ信号およびラッチされたデータ信号を選択的にラ
ッチするように使用される、請求項23に記載の方法。 - 【請求項28】 データ信号およびラッチされたデータ
信号はDフリップフロップを使用してラッチされる、請
求項23に記載の方法。 - 【請求項29】 さらに位相クロック信号周波数は、シ
ステムクロック周波数の半分である、請求項23に記載
の方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US08/323,643 US5630100A (en) | 1994-10-17 | 1994-10-17 | Simulating multi-phase clock designs using a single clock edge based system |
| US08/323643 | 1994-10-17 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH08262104A true JPH08262104A (ja) | 1996-10-11 |
Family
ID=23260083
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7266836A Withdrawn JPH08262104A (ja) | 1994-10-17 | 1995-10-16 | シミュレータ回路、シーケンシャル論理回路、ならびに多位相回路を単一クロックエッジ回路に変換するための装置および方法 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5630100A (ja) |
| EP (1) | EP0708408A3 (ja) |
| JP (1) | JPH08262104A (ja) |
| KR (1) | KR960015214A (ja) |
Families Citing this family (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5809283A (en) * | 1995-09-29 | 1998-09-15 | Synopsys, Inc. | Simulator for simulating systems including mixed triggers |
| US6152612A (en) * | 1997-06-09 | 2000-11-28 | Synopsys, Inc. | System and method for system level and circuit level modeling and design simulation using C++ |
| JPH1131162A (ja) * | 1997-07-11 | 1999-02-02 | Mitsubishi Electric Corp | 論理回路のシミュレーション装置及び論理検証方法 |
| FR2779887B1 (fr) * | 1998-06-12 | 2000-08-04 | Sgs Thomson Microelectronics | Circuit elementaire de memorisation |
| US6199135B1 (en) * | 1998-06-12 | 2001-03-06 | Unisys Corporation | Source synchronous transfer scheme for a high speed memory interface |
| FR2793088B1 (fr) * | 1999-04-30 | 2001-06-22 | St Microelectronics Sa | Procede et dispositif de collecte des valeurs logiques de sortie d'une unite logique dans un circuit electronique |
| US6765973B1 (en) * | 2000-02-09 | 2004-07-20 | Motorola, Inc. | Low power apparatus and algorithm for sub-rate bit acquisition and synchronization of high speed clockless data streams |
| KR100352215B1 (ko) * | 2000-03-03 | 2002-09-12 | 세연에스앤알 주식회사 | 산업용 폐기물의 재처리 방법 |
| US20030018462A1 (en) * | 2001-07-16 | 2003-01-23 | Liang T. Chen | Multi-clock system simulation |
| US20050144580A1 (en) * | 2003-12-10 | 2005-06-30 | Berkram Daniel A. | Method and system for testing a logic design |
| US20060020726A1 (en) * | 2004-07-25 | 2006-01-26 | Kazuo Fujii | Controlling enablement and disablement of computing device component |
| US8058900B1 (en) * | 2008-04-14 | 2011-11-15 | Marvell Israel (M.I.S.L) Ltd. | Method and apparatus for clocking |
| TWI399925B (zh) * | 2010-01-20 | 2013-06-21 | Socle Technology Corp | 濾波電路及具有濾波電路之系統晶片 |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH0743733B2 (ja) * | 1985-12-11 | 1995-05-15 | 株式会社日立製作所 | 論理シミュレーション方法 |
| GB2198012B (en) * | 1986-11-20 | 1990-07-04 | Sony Corp | Clock signal multiplexers |
| US4757264A (en) * | 1987-10-08 | 1988-07-12 | American Telephone And Telegraph Company, At&T Bell Laboratories | Sample clock signal generator circuit |
| US4965524A (en) * | 1988-06-09 | 1990-10-23 | National Semiconductor Corp. | Glitch free clock select |
-
1994
- 1994-10-17 US US08/323,643 patent/US5630100A/en not_active Expired - Lifetime
-
1995
- 1995-10-09 EP EP95307119A patent/EP0708408A3/en not_active Withdrawn
- 1995-10-14 KR KR1019950035519A patent/KR960015214A/ko not_active Withdrawn
- 1995-10-16 JP JP7266836A patent/JPH08262104A/ja not_active Withdrawn
Also Published As
| Publication number | Publication date |
|---|---|
| US5630100A (en) | 1997-05-13 |
| KR960015214A (ko) | 1996-05-22 |
| EP0708408A2 (en) | 1996-04-24 |
| EP0708408A3 (en) | 1996-07-10 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5649176A (en) | Transition analysis and circuit resynthesis method and device for digital circuit modeling | |
| US5831866A (en) | Method and apparatus for removing timing hazards in a circuit design | |
| US20150161315A1 (en) | Verification of asynchronous clock domain crossings | |
| US6301553B1 (en) | Method and apparatus for removing timing hazards in a circuit design | |
| Mardari et al. | Design and FPGA-implementation of asynchronous circuits using two-phase handshaking | |
| US5630100A (en) | Simulating multi-phase clock designs using a single clock edge based system | |
| US7043596B2 (en) | Method and apparatus for simulation processor | |
| Cummings et al. | Asynchronous & synchronous reset design techniques-part deux | |
| US5886904A (en) | Latch optimization in hardware logic emulation systems | |
| Taylor et al. | Reduced complexity two-phase micropipeline latch controller | |
| Poole | Self-timed logic circuits | |
| US6028993A (en) | Timed circuit simulation in hardware using FPGAs | |
| EP1859372B1 (en) | Cross-bar switching in an emulation environment | |
| US5721695A (en) | Simulation by emulating level sensitive latches with edge trigger latches | |
| Ejlali et al. | FPGA-based fault injection into switch-level models | |
| Grinschgl et al. | Modular fault injector for multiple fault dependability and security evaluations | |
| Entrena et al. | Fault injection methodologies | |
| Sasao et al. | Realization of sequential circuits by look-up table rings | |
| McMillan et al. | VirtexDS: a Virtex device simulator | |
| US7260515B2 (en) | Method and apparatus for simulating transparent latches | |
| US20050177357A1 (en) | Static timing model for combinatorial gates having clock signal input | |
| Clark et al. | The verification of asynchronous circuits using CCS | |
| Meyer et al. | Fast, accurate, integrated gate and switch-level fault simulation | |
| Miczo et al. | The Effects of Modeling on Simulator Performance | |
| Bormann | GALS test chip on 130nm process |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20030107 |