(57)【特許請求の範囲】
【請求項１】
シリアルバスからの命令とデータを入力する入力部と、前記シリアルバスへ前記命令の応答を出力する出力部から構成されるインタフェース回路であって、前記入力部と前記出力部はそれぞれ、インタフェース回路の動作サイクル高速モードあるいは通常モードに設定するためのモードフラグと、前記モードフラグの状態を判定するための判定手段と、上記モードフラグの状態によりデファイナを切り換える手段と、前記デファイナにより前記インタフェース回路の入出力信号を制御する手段と、前記命令をデコードする命令デコード回路と、転送回数を計数するカウンタと、前記カウンタの値へ１を加算する加算器と、前記データをビットシフトするシフトレジスタと、転送回数を保持する転送回数保持部と前記転送回数保持部と前記カウンタの値を比較する比較回路をから構成される動作サイクル制御機構を有することを特徴とするインタフェース回路。
【請求項２】
請求項１記載のインタフェース回路と前記インタフェース回路からの命令を実行する内部論理回路を有することを特徴とする論理装置。
【請求項３】
請求項１記載のインタフェース回路をそれぞれが有する中央処理装置と入出力装置と記憶装置を相互に接続したことを特徴とする情報処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明はインタフェース回路に関し、特にインタフェース回路の論理検証を容易にするための制御機構に関する。
【０００２】
【従来の技術】
従来のシミュレーション高速化あるいは効率化方式は、例えば特開平１１−９６１９６号公報「回路変換方法及び回路設計支援装置」、特開平１０−１４９３８５号公報「論理回路のシミュレーション装置及びそのシミュレーション方法」で開示されているようにシミュレーションの対象である論理回路の出力動作タイミングを変更することなく、データ転送回数を減少させるために論理回路を変換する手段や特定の組み合わせ回路を抽出してレジスタを削減しレジスタの割り付け位置を変更する手段、あるいは、クロック信号の簡略化、レジスタ信号の変数変換等を指定したりしてシミュレーションの高速化を図っていた。
【０００３】
従来から用いられていた大規模回路のシミュレーション手法としてイベントドリブン方式とサイクルベース方式などが挙げられる。イベントドリブン法とは、ある時刻である素子の入力に変化があれば、次の時刻でその素子の論理演算を行い、変化がなければ何も行わない手法である。信号の値の変化（イベント）を検出して、順次信号値を伝搬させていき、全ての信号に変化が無くなった時に初めて、時刻の更新を行う。
【０００４】
サイクルベース方式は、あらかじめシミュレーションモデルの処理に依存関係を静的に解析し、イベントドリブン方式でシミュレーションした場合とクロックの区切りで結果が一致するようにプロセス等の実行順序を決定して、１クロック毎に回路全体を決められた回数だけ評価する。サイクルベース方式のシミュレーションはタイミングを検証するために用いられるのではなく、機能の確認に目的を絞って高速に検証を行うために用いられる。
【０００５】
【発明が解決しようとする課題】
例えば特開平１１−９６１９６号公報「回路変換方法及び回路設計支援装置」、特開平１０−１４９３８５号公報「論理回路のシミュレーション装置及びそのシミュレーション方法」で開示されている上述の手段は、ＬＳＩ等の設計対象ハードウェアの大規模化に伴って、シミュレーション高速化のため何れも特定回路の抽出行程や判定する要素が必要であり、そのプロセスに多大な設計工数を要する。また、ハードウェアモデルと異なる論理回路とは異なる回路を生成してシミュレートを実施することからその正当性を検証するためのデバッグに要す時間が発生する問題がある。
【０００６】
サイクルベース方式は、クロック信号以外の信号の代入予約記述に書かれた遅延を許さないか、無視されることが多い。サイクルベース方式のシミュレーションは、イベントドリブン方式に較べて高速化することが可能であるが、装置あるはＬＳＩ内の動作サイクルと装置間またはＬＳＩ間の動作サイクル異なる構成においては、動作サイクルが遅いものに依存してシミュレーション時間がかかる。このことにより、例えば接続先の装置あるいはＬＳＩの内部論理を検証するまでにシミュレーション時間を要することから、ＬＳＩ内部論理の競合評価等が効率良く実施できない。
【０００７】
本発明の目的は、本来の動作とは別に効率と高速化のための動作サイクル制御機構、例えば、ｎクロックで動作するインタフェースを４分の１の１／４ｎクロックで動作させる機構を用意し、この高速化機能を使用して論理検証または実機の評価を実施する場合には特定命令によりモードフラグを設定してデファイナ信号の制御を切り換えることにより高速転送を実施して論理検証または実機の評価を行い、また、実動作環境において、例えば装置間が数メートから数十メートルあるいはそれ以上のケーブルで接続される場合、上述した動作サイクル切り換え機構により動作可能なモードに設定し、パルスジェネレータ等の外部装置を用いて直接信号を入力し接続先装置の論理回路を高速かつ効率的に評価することである。
【０００８】
【課題を解決するための手段】
本発明第一のインタフェース回路は、シリアルバスからの命令とデータを入力する入力部と、前記シリアルバスへ前記命令の応答を出力する出力部から構成されるインタフェース回路であって、前記入力部と前記出力部はそれぞれ、インタフェース回路の動作サイクル高速モードあるいは通常モードに設定するためのモードフラグと、前記モードフラグの状態を判定するための判定手段と、上記モードフラグの状態によりデファイナクロックを切り換える手段と、前記デファイナクロックにより前記インタフェース回路の入出力信号を制御する手段と、前記命令をデコードする命令デコード回路と、転送回数を計数するカウンタと、前記カウンタの値へ１を加算する加算器と、前記データをビットシフトするシフトレジスタと、転送回数を保持する転送回数保持部と前記転送回数保持部と前記カウンタの値を比較する比較回路をから構成される動作サイクル制御機構を有する。
【００１１】
本発明の論理装置は、本発明第一のインタフェース回路と前記インタフェース回路からの命令を実行する内部論理回路を有する。
【００１２】
本発明の情報処理装置は、本発明第一のインタフェース回路をそれぞれが有する中央処理装置と入出力装置と記憶装置を相互に接続した。
【００１４】
【発明の実施の形態】
次に、本発明の実施の形態について図面を参照して詳細に説明する。まず、本発明の実施の形態の動作について図面を参照して説明する。図１は、本発明実施の形態の動作サイクル制御機構９を有するインタフェース回路１０を用いて相互に接続した論理装置１の構成と論理装置１のＨＤＬ記述のシミュレータ２へ入力を示すブロック図である。図１を参照すると、動作サイクル制御機構９を具備する装置Ａ３と、それぞれ異なるクロックで動作し上記装置Ａ３と同様に動作サイクル制御機構９を有するインタフェース回路１０を具備するＬＳＩＡ４６、ＬＳＩＢ４７、ＬＳＩＣ４８から構成される装置Ｂ４と、装置Ａ３と同様に動作サイクル制御機構９を有するインタフェース回路１０を具備する複数のＬＳＩＤ５１とＬＳＩＥ５２から構成される他接続装置５から構成され、それぞれ装置Ａ３，装置Ｂ４，他接続装置５は装置Ｂ４と接続する装置間は同一あるいは異なる動作サイクルでデータ転送が行われる。動作サイクル制御機構９の具体的な機構は、図２と３を用いて説明する。
【００１５】
それぞれ装置Ａ３，装置Ｂ４，他接続装置５およびＬＳＩＡ４６、ｌＳＩＢ４７、ＬＳＩＣ４８、ＬＳＩＤ５１とＬＳＩＥ５２には全装置基本クロックと異種クロックが供給され、更に各装置あるいはＬＳＩ内部の保持あるいは格納するタイミングを規定するデファイナ信号により動作する。また、上記装置間のインタフェースの動作サイクルは、上記装置あるいは装置内の動作サイクルより同一あるいは遅い周波数で制御され動作する。
【００１６】
上記の各装置の論理回路における論理検証を実施するため装置Ａ３，装置Ｂ４，他接続装置５の論理回路のハードウェア記述言語（例えば、ＨＤＬ  、Hardware description Language）で記述されたものより論理検証モデル１を作成し、上記論理検証モデルの動作検証をするためのシミュレータ２より動作検証を実施する。ハードウェア記述言語には、例えば、ＨＤＬ（Hardware description Language）等を用いる。
【００１７】
次に図２を参照し、上記動作サイクル制御機構９を含むインタフェース回路１０に関して説明する。図２は、本発明実施の形態のインタフェース回路１０の構成を示すブロック図である。図１における装置Ａ３と装置Ｂ４あるいは装置Ｂ４と他接続装置５を接続するインタフェース回路１０は次の要素から構成される。
【００１８】
各装置間の入出力を制御する命令ストローブ、命令コード、シリアルバス使用要求信号を含む制御線１０２，制御線１０４、上記制御線１０２、制御線１０４に付随するアドレス、送信先コード、およびデータを転送するシリアルバス１０１、接続される装置の出力を制御線１０２と信号線１０３を介して受信する入力部１２、入力部１２で受信したコマンドコードをデコードする命令デコード回路１４、信号線１０６を介して入力部１２より送出される信号と信号線１０８を介して命令デコード回路１４より出力される信号線１０９より、接続先の装置から送信される命令の転送回数を保持する転送回数保持部１５、命令デコード回路１４より信号線１１０を介し受信した各命令に応じて転送回数を計数し転送終了時にリセットされるカウンタ１６、カウンタ１６の値をカウントアップする加算回路１７を有する。カウントアップの際に信号線１１２によりカウンタ１６へ書き込まれる。
【００１９】
また、信号線１０７を介して送信される命令コードおよび信号線１０８を介して送出されるアドレス（Ａ）、送出先コード（Ｃ）、データ（Ｄ）をカウンタ１６の値によりビットシフトしながら格納するシフトレジスタ１９、信号線１１１を介して送出される転送回数保持部１５の出力と信号線１１３を介して送信される値を比較する比較回路１８を有する。比較回路１８は転送回数保持部１５とカウンタ１６の値を比較し一致した場合は“１”を出力し、一致しない場合は“０”を出力する。比較回路１８で“１”を出力した場合は、接続先の装置あるいはＬＳＩが送出した命令を受信側の装置あるいはＬＳＩが全データである命令コード、アドレス、送出先コード、データを受信完了とみなし、信号線１１４を介して受信した命令のストローブ信号を送信すると同時にシフトレジスタ１９に格納された命令コード、アドレス、送信先コード、データを信号線１１５により内部論理回路１１に送信する。
【００２０】
さらに、判定回路２２は、比較回路１８の出力が“１”でかつシフトレジスタ１９に格納された情報を判定し、左記出力は信号線１１６を介してよりモードフラグ２１に設定される。モードフラグ２１に設定された値は信号線１１７を介してデファイナ切り換え回路２０に送信され、デファイナ切り換え回路２０は信号線１１９を介して送信されるデファイナ信号を切り換える。デファイナ切り換え回路２０の出力は信号線１１８を介して、動作サイクル制御機構９内の転送回数保持部１５、カウンタ１６、シフトレジスタ１９、モードフラグ２１、および入力部１２に配信され制御する。
【００２１】
出力部１３は、入力部１２より送信される信号を制御する動作サイクル制御機構９を具備しており、信号線１２０を介して送信されるスタート信号と信号線１２１を介して送信される命令コード、アドレス、送出先コード、データを受信し、信号線１１９を介して配信されるデファイナ信号を動作サイクル制御機構９内のデファイナ切り換え回路２０により切り換えられ接続先への出力が制御される。出力処理部１３の出力は、制御線１０４を介して命令ストローブ、命令コード、シリアルバス使用要求信号を含む信号を送信し、信号線１０５を介してシリアルバス１０１に接続し、各装置間あるいはＬＳＩ間で各々の命令が処理される。
【００２２】
内部論理回路１１は、格納部、論理算術機能部等を具備しており各命令処理を行う。
【００２３】
図３は、本発明実施の形態のインタフェース回路１０が有するデファイナ切り替え回路２０の構成を示すブロック図である。デファイナ切り換え回路２０は、信号線１１９を介して送信されるデファイナ信号をフリップフロップ３０からフリップフロップ３１へ、さらにフリップフロップ３２に順次格納し、上記出力の各々と論理和回路３３、論理和回路３４および論理和回路３５により論理和をとる。上記各々のフリップフロップ３０からフリップフロップ３１へ、さらにフリップフロップ３２の出力および論理和回路３３、論理和回路３４および論理和回路３５の出力は、信号線１１７を介して送信されるモードフラグ２１の設定値によりデファイナ信号がセレクタ３６により選択され、信号線１１８を介して動作サイクル制御機構９内の転送回数保持部１５、カウンタ１６、シフトレジスタ１９、モードフラグ２１、および入力部１２に配信され制御する。
【００２４】
次に図４を参照して装置間で転送される命令の一例を示す。図４は、本発明実施の形態のインタフェース回路１０により転送される命令の例を示す図である。装置Ａ３、装置Ｂ４、他接続装置５間では複数の命令が送受信されるが、ここでは８バイトライト命令実行時の転送サイクルに関して説明する。ｐｈａｓｅ（相）は、各命令毎のデータ長により可変であり、装置間のインタフェースを占有する個々のサイクルの相を示す。ここでは、８バイトライト命令を一例としているため、計８０ｐｈａｓｅを要してデータ転送が実施される。１６バイト命令では１４４，６４バイトライト命令では５２８ｐｈａｓｅを要する。
【００２５】
Ｓｔｒｏｂｅは、シリアルバス使用要求が許可され、命令の有効信号を示し各命令の先頭Ｐｈａｓｅに同期して”１”となる。尚、図中では明記していないが、Ｓｔｒｏｂｅ信号が”１”のＰｈａｓｅで命令コード（ここでは、８バイト命令のコード）が接続元の装置から送信される。Ｄａｔａは、シリアルバス１０１を介して送信される８ビットの送信先コードＣ（０）からＣ（８）、８ビット幅のアドレスＡ（０）からＡ（８）、８バイト幅のデータＤ（０）からＤ（６４）をビットシリアルに転送するケースでの転送サイクル毎の相を示している。
【００２６】
次に、図５および図６を参照して装置間あるいはＬＳＩ間で実行される８バイトライト命令実行時の動作を説明する。図５は、本発明実施の形態のインタフェース回路１０により転送される８バイトライト命令通常動作時のタイミングチャートを示す図である。ここでは、上述したことと同様に図３における装置Ａ３と装置Ｂ４のＬＳＩＡ４６に関して説明する。装置Ａ３の内部論理回路１１およびＬＳＩＡ４６の内部回路はＣＬＫ１で動作するものとする。通常の装置Ａ３とＬＳＩＡ４６間はＣＬＫ１の４分の１サイクルで動作すものとする。
【００２７】
図５は、動作サイクル制御機構９のモードフラグ２１にａｌｌ”０”が設定される通常動作時のケースであり、装置およびＬＳＩＡ４６に取り込まれたデファイナ信号（ＤＥＦ＿ＯＵＴ）が直接対応する回路に配信される。通常動作時は、Ｔ００＝１，Ｔ０４＝１，Ｔ０８＝１の様に４Ｔに１回のサイクルで”１”となる。１ＴはＣＬＫ１の１クロック分を示す。ＳＴＢ１は、シリアルバス要求が許可され送信元の装置が命令を送信する有効信号である。この信号は、インタフェース仕様に準拠して４Ｔ間”１”となる。ＳＴＢ２は送信先で受信したストローブ信号でありＴ０１〜Ｔ０４で”１”となる。同時に命令コードが送信元の装置より送信される。ＣＮＴは、図１のカウンタ１６に格納される値であり、各命令の図４におけるＰｈａｓｅの値を示し、送信される転送回数に応じて加算回路１７によりカウントアップする。
【００２８】
ＤＡＴＡ１は、送信元の装置がシリアルバス１０１を介して送出される送信先コード（Ｃ）、アドレス（Ａ）、データ（Ｄ）である。ＤＡＴＡ２は、受信側の装置が転送サイクルに従って順次データを受信しているものである。Ｄ６３は８バイトライト命令のデータの最終ビットであり、受信側の装置はＴ３２１で全データを受信することとなる。ＳＴＢ３は、内部論理回路１１に８バイト命令を出力するストローブ信号であり、カウンタ１６と転送回数保持部１５の値が一致したＴ３２１に”１”となる。同時にシフトレジスタ１９に格納された送出先コード（Ｃ）、アドレス（Ａ）、データ（Ｄ）が内部論理回路１１に送信され各々の命令毎に処理される。つまり、通常動作時は３２１Ｔを要して８バイト命令が受信され処理される。
【００２９】
次に動作サイクル制御機構９によりデータ高速化したケースを説明する。このケースは、動作検証を高速化する場合のみ使用するものである。実際の装置間では高速化モードは実行されないことから、前処理としてインタフェース仕様上でリザーブコードあるいは使用されていないアドレスにデファイナを切り換えるための命令を割り付ける。ここでは、アドレス＝ＦＦ（ｈｅｘ）に割り当てることとする。初期動作は上述した動作と同様とであり４分の１Ｔのサイクルで転送され、受信した命令を判定回路２２により、モードフラグ２１をａｌｌ”０”以外の高速モードに設定する。この場合、ＬＳＩ内の内部論理回路１１では上記命令（アドレス＝ＦＦ（ｈｅｘ））を無効とする。装置元では既に設定が完了していることからモードフラグ２１に設定された値に応じてデファイナ切り換え回路２０により切り換えられ、その出力（ＤＥＦ＿ＯＵＴ）により制御された動作がシミュレートされる。
【００３０】
図６は、本発明実施の形態のインタフェース回路１０により転送される８バイトライト命令高速モード動作時のタイミングチャートを示す図である。デファイナ（ＤＥＦ＿ＯＵＴ）は、”１”のままレベル信号となる。よって、ＣＬＫ１と同期して発行元より送信される命令が処理される。Ｔ０１でＰｈａｓｅ１の情報が受信され、Ｔ８０で８バイト命令の全情報を受信し、Ｔ８１より内部論理回路１１で各命令の処理が実施される。
【００３１】
高速モードにすることにより、３２１Ｔを要していたものが８０Ｔに短縮されることから論理検証を効率的に実施することが可能であり、装置あるいはＬＳＩ内の内部論理回路１１を通常時より短い時間で検証することが可能となる。高速モードにするための命令を既存のテストベクトルに追加するものであり、論理設計者の負担は殆どない。また、高速モードを実際のＨＷコーディングでインプリメントするが、ＬＳＩ全体のＨＷボリュームからすると極めて少量であり問題とならない。また、従来の特定機能の抽出工程や論理回路変換工程が不要となり、左記工程に対するデバッグ作業がないことから高速かつ効率的な論理検証が実現可能である。本実施例では装置Ａ３と装置Ｂ４ないのＬＳＩＡ４６に関して一例をあげたが、他の装置間に関しても上述した機構を具備して論理検証を実施することにより装置全体の論理検証の高速化と効率化を実現するものである。
【００３２】
図７は、本発明実施の形態の動作サイクル制御機構９を有する論理装置１の外部装置６０を使用した評価時の構成を示すブロック図である。図３の装置Ａ３と装置Ｂ４が実動作環境において、例えば装置間が数メートから数十メートルあるいはそれ以上のケーブルで接続される場合、図３の装置Ａ３の代わりにパルスジェネレータ等の外部装置６０を使用し、上述した動作サイクル制御機構９により動作可能なデファイナ出力に切り換え、装置Ｂ４内のＬＳＩおよび装置Ｂ４に接続される他装置の論理回路の動作検証を行う。
【００３３】
つまり、装置間が数メートから数十メートあるいはそれ以上のケーブル接続され、データ転送に時間がかかるインタフェースにおいても、直接上記外部デバイス装置より信号の入力が可能となることから装置Ａ３と直接接続をしなくても装置自体の論理回路における動作検証が可能となり効率的な評価が可能となる。よって、早期に品質を向上できると同時に短期開発が可能となる。
【００３４】
図８は、本発明実施の形態の情報処理装置の構成を示すブロック図である。中央処理装置９０１、記憶装置９０２、入出力装置９０３それぞれがシリアルバス１０１により接続されており相互にデータ、命令の転送を行い処理を実行する。
【００３５】
【発明の効果】
本発明の効果は、装置あるいはＬＳＩ間のインタフェースの信号線を変更することなく、比較的少量のＨＷで動作サイクルを制御する機構を付加することにより、接続先の装置あるいはＬＳＩ内部の論理検証を加速させ、論理検証時間を大幅に短縮する。
【００３６】
また、異なる動作クロックで動作する装置間あるいはＬＳＩ間においても上述した機構を具備することにより容易にデファイナ信号を切り換え、最大限のデータ転送を実現することから高速かつ効率的な論理検証が可能となる。また、実動作環境において、例えば装置間が数メートから数十メートルあるいはそれ以上のケーブルで接続される場合、上述した動作サイクル切り換え機構により高速動作モードに設定し、外部装置（パルスジェネレータ）等を用いて直接信号を入力し接続先装置の論理回路を高速かつ効率的に評価が可能となる。
【００３７】
上述の通り、本発明を実施することにより高速かつ効率的な論理回路の検証を実現し、論理回路の検証を加速させることから短期間で装置あるいはＬＳＩの品質を向上することが可能であり、装置開発ＴＡＴが短縮できる効果がある。つまり、装置あるいはＬＳＩ設計において、シミュレーションによる論理回路検証および開発後の実動作環境での論理検証回路検証を高速かつ効率的に実施することが可能となる。
【図面の簡単な説明】
【図１】本発明実施の形態の動作サイクル制御機構９を有するインタフェース回路１０を用いて相互に接続した論理装置１の構成と論理装置１のＨＤＬ記述のシミュレータ２へ入力を示すブロック図である。
【図２】本発明実施の形態のインタフェース回路１０の構成を示すブロック図である。
【図３】本発明実施の形態のインタフェース回路１０が有するデファイナ切り替え回路２０の構成を示すブロック図である。
【図４】本発明実施の形態のインタフェース回路１０により転送される命令の例を示す図である。
【図５】本発明実施の形態のインタフェース回路１０により転送される８バイトライト命令通常動作時のタイミングチャートを示す図である。
【図６】本発明実施の形態のインタフェース回路１０により転送される８バイトライト命令高速モード動作時のタイミングチャートを示す図である。
【図７】本発明実施の形態の動作サイクル制御機構９を有する論理装置１の外部装置を使用した評価時の構成を示すブロック図である。
【図８】本発明実施の形態の情報処理装置の構成を示すブロック図である。
【符号の説明】
１    論理装置
２    シミュレータ
３    装置Ａ
４    装置Ｂ
５    他接続装置
９    動作サイクル制御機構
１０    インタフェース回路
１１    内部論理回路
１２    入力部
１３    出力部
１４    命令デコード回路
１５    転送回数保持部
１６    カウンタ
１７    加算回路
１８    比較回路
１９    シフトレジスタ
２０    デファイナ切り替え回路
２１    モードフラグ
２２    判定回路
３０    フリップフロップ
３１    フリップフロップ
３２    フリップフロップ
３３    論理和回路
３４    論理和回路
３５    論理和回路
３６    セレクタ
４６    ＬＳＩＡ
４７    ＬＳＩＢ
４８    ＬＳＩＣ
５１    ＬＳＩＤ
５２    ＬＳＩＥ
６０    外部装置
１０１    シリアルバス
１０２    制御線
１０３    信号線
１０４    制御線
１０５    信号線
１０６    信号線
１０７    信号線
１０８    信号線
１０９    信号線
１１０    信号線
１１１    信号線
１１２    信号線
１１３    信号線
１１４    信号線
１１５    信号線
１１６    信号線
１１７    信号線
１１８    信号線
１１９    信号線
１２０    信号線
１２１    信号線
９０１    中央処理装置
９０２    記憶装置
９０３    入出力装置
【図１】
0003678656.tif 000002
【図２】
0003678656.tif 000003
【図３】
0003678656.tif 000004
【図４】
0003678656.tif 000005
【図５】
0003678656.tif 000006
【図６】
0003678656.tif 000007
【図７】
0003678656.tif 000008
【図８】
0003678656.tif 000009