(57)【要約】【課題】仮想通信インターフェイス回路の検証を迅速に行う。【解決手段】サイズ決定部１１は、レジスタに格納された４つの数値のうちいずれかの数値をランダムに決定し、サイズ記憶部１３を参照し、決定した数値に予め割り当てられたサイズを送信データのサイズとして決定し、仮想送信回路２０は、送信指示部３０２により決定されたサイズの送信データを仮想通信インターフェイス回路３０に送信する。サイズ記憶部１３は、４つの数値のうち、３つの数値に対して、仮想バッファ３１の容量と同一サイズを割り当て、残りの１つの数値に対しては仮想バッファ３１の容量未満の数値を割り当てている。【選択図】図２
2007102303.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ空間内において、仮想的に送信データを送信する仮想送信回路と、前記送信データを仮想通信ケーブルを介して仮想的に受信し、前記送信データを仮想的に蓄積する所定容量の仮想バッファを備える仮想通信インターフェイス回路とを生成する仮想回路生成手段と、
前記仮想送信回路から前記仮想通信インターフェイス回路に対して１度に送信される送信データのサイズを、前記仮想バッファの容量以下の範囲内でランダムに決定し、決定したサイズの送信データを前記仮想送信回路から仮想的に送信させる送信指示手段と、
前記仮想送信回路が送信する送信データと前記仮想通信インターフェイス回路により受信されたデータとを基に、前記仮想通信インターフェイス回路を検証する検証手段としてコンピュータを機能させ、
前記送信指示手段は、前記送信データのサイズをランダムに決定するに際して、前記送信データのサイズが、前記仮想バッファの容量と同一のサイズである最大サイズになる確率を、前記最大サイズ未満になる確率よりも高くすることを特徴とする回路シミュレーションプログラム。
【請求項２】
前記送信指示手段は、
ｎ（ｎは２以上の整数）個の数値をそれぞれ仮想的に記憶する仮想レジスタと、
前記ｎ個の数値と、予め定められた前記送信データのサイズとを対応付けて記憶するサイズ記憶部と、
前記ｎ個の数値のうちいずれかの数値をランダムに決定し、決定した数値に対応付けられたサイズを送信データのサイズとして決定するサイズ決定部とを備え、
前記サイズ記憶部は、前記最大サイズが対応付けられた数値の個数を、前記最大サイズ未満のサイズが対応付けられた数値の個数よりも多くしたことを特徴とする請求項１記載の回路シミュレーションプログラム。
【請求項３】
前記仮想回路生成手段は、前記仮想通信インターフェイス回路により受信された送信データを仮想的にＤＭＡ転送する仮想ＤＭＡ転送実行回路を更に生成し、
前記検証手段は、前記仮想送信回路から送信された送信データと、前記仮想ＤＭＡ転送実行回路によりＤＭＡ転送された送信データとの一致の有無を判定することで、前記仮想通信インターフェイス回路を検証することを特徴とする請求項１又は２記載の回路シミュレーションプログラム。
【請求項４】
前記仮想通信インターフェイス回路は、ＵＳＢ規格に準拠したものであることを特徴とする請求項１〜３のいずれかに記載の回路シミュレーションプログラム。
【請求項５】
コンピュータ空間内において、仮想的に送信データを送信する仮想送信回路と、前記送信データを仮想通信ケーブルを介して仮想的に受信し、前記送信データを仮想的に蓄積する所定容量の仮想バッファを備える仮想通信インターフェイス回路とを生成する仮想回路生成手段と、
前記仮想送信回路から前記仮想通信インターフェイス回路に対して１度に送信される送信データのサイズを、前記仮想バッファの容量以下の範囲内でランダムに決定し、決定したサイズの送信データを前記仮想送信回路から仮想的に送信させる送信指示手段と、
前記仮想送信回路が送信する送信データと前記仮想通信インターフェイス回路により受信されたデータとを基に、前記仮想通信インターフェイス回路を検証する検証手段とを備え、
前記送信指示手段は、前記送信データのサイズをランダムに決定するに際して、前記送信データのサイズが、前記仮想バッファの容量と同一のサイズである最大サイズになる確率を、前記最大サイズ未満になる確率よりも高くすることを特徴とする回路シミュレーション装置。
【発明の詳細な説明】
【技術分野】
【０００１】
コンピュータ空間内に仮想的に構成された仮想通信インターフェイス回路を検証する回路シミュレーションプログラム及び回路シミュレーション装置に関するものである。
【背景技術】
【０００２】
ＵＳＢ等の通信インターフェイス回路においては、通常、回路内にバッファを備えており、そのバッファのサイズを１単位としてデータが送信される。このような通信インターフェイス回路の検証は、例えば通信インターフェイス回路に対して通信ケーブルを介して送信回路を接続し、送信回路から通信インターフェイス回路に送信データを送信し、送信回路から送信される送信データと、通信インターフェイス回路により受信される送信データとが一致するか否かを判定することで行われる。
【０００３】
ここで、送信回路から通信インターフェイス回路に対して送信データを送信する場合、通信インターフェイス回路のバッファのサイズが例えば５１２バイトとすると、送信回路は、１〜５１２の中から１の数値をランダムに決定し、決定した数値分のサイズのデータを送信データから取り出して送信するという処理を繰り返して送信データを通信インターフェイス回路に対して送信していた。
【０００４】
なお、本発明に関連する技術として、特許文献１では、検証時間の短縮を図ることを目的として、２値ＦｏｎｔＤａｔａ圧縮・伸長処理回路の検証に疑似２値ＦｏｎｔＤａｔａを使用する検証方法が提案されている。
【特許文献１】特開２００１−３３１１６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の検証方法では、最大の送信データのサイズである５１２バイトが選ばれる確率は１／５１２になってしまうため、送信データが最大サイズで連続的に送信されるケースが非常に少なくなってしまい、送信データのサイズがバッファのサイズに比べて遙かに大きい場合、送信データの送信が完了するまでに膨大な時間を要する結果、通信インターフェイス回路の検証を速やかに行うことができないという問題がある。
【０００６】
本発明は上記問題点を解決するためになされたものであり、仮想通信インターフェイス回路の検証を迅速に行うことができる回路シミュレーションプログラム及び回路シミュレーション装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明による画像形成装置は、コンピュータ空間内において、仮想的に送信データを送信する仮想送信回路と、前記送信データを仮想通信ケーブルを介して仮想的に受信し、前記送信データを仮想的に蓄積する所定容量の仮想バッファを備える仮想通信インターフェイス回路とを生成する仮想回路生成手段と、前記仮想送信回路から前記仮想通信インターフェイス回路に対して１度に送信される送信データのサイズを、前記仮想バッファの容量以下の範囲内でランダムに決定し、決定したサイズの送信データを前記仮想送信回路から仮想的に送信させる送信指示手段と、前記仮想送信回路が送信する送信データと前記仮想通信インターフェイス回路により受信されたデータとを基に、前記仮想通信インターフェイス回路を検証する検証手段としてコンピュータを機能させ、前記送信指示手段は、前記送信データのサイズをランダムに決定するに際して、前記送信データのサイズが、前記仮想バッファの容量と同一のサイズである最大サイズになる確率を、前記最大サイズ未満になる確率よりも高くすることを特徴とする。
【０００８】
また、上記構成において、前記送信指示手段は、ｎ（ｎは２以上の整数）個の数値をそれぞれ仮想的に記憶する仮想レジスタと、前記ｎ個の数値と、予め定められた前記送信データのサイズとを対応付けて記憶するサイズ記憶部と、前記ｎ個の数値のうちいずれかの数値をランダムに決定し、決定した数値に対応付けられたサイズを送信データのサイズとして決定するサイズ決定部とを備え、前記サイズ記憶部は、前記最大サイズが対応付けられた数値の個数を、前記最大サイズ未満のサイズが対応付けられた数値の個数よりも多くしたことが好ましい。
【０００９】
また、上記構成において、前記仮想回路生成手段は、前記仮想通信インターフェイス回路により受信された送信データを仮想的にＤＭＡ転送する仮想ＤＭＡ転送実行回路を更に生成し、前記検証手段は、前記仮想送信回路から送信された送信データと、前記仮想ＤＭＡ転送実行回路によりＤＭＡ転送された送信データとの一致の有無を判定することで、前記仮想通信インターフェイス回路を検証することが好ましい。
【００１０】
また、上記構成において、前記仮想通信インターフェイス回路は、ＵＳＢ規格に準拠したものであることが好ましい。
【００１１】
本発明による回路シミュレーション装置は、コンピュータ空間内において、仮想的に送信データを送信する仮想送信回路と、前記送信データを仮想通信ケーブルを介して仮想的に受信し、前記送信データを仮想的に蓄積する所定容量の仮想バッファを備える仮想通信インターフェイス回路とを生成する仮想回路生成手段と、前記仮想送信回路から前記仮想通信インターフェイス回路に対して１度に送信される送信データのサイズを、前記仮想バッファの容量以下の範囲内でランダムに決定し、決定したサイズの送信データを前記仮想送信回路から仮想的に送信させる送信指示手段と、前記仮想送信回路が送信する送信データと前記仮想通信インターフェイス回路により受信されたデータとを基に、前記仮想通信インターフェイス回路を検証する検証手段とを備え、前記送信指示手段は、前記送信データのサイズをランダムに決定するに際して、前記送信データのサイズが、前記仮想バッファの容量と同一のサイズである最大サイズになる確率を、前記最大サイズ未満になる確率よりも高くすることを特徴とする。
【発明の効果】
【００１２】
請求項１、５記載の発明によれば、送信指示手段は、送信データのサイズをランダムに決定するに際して、送信データのサイズが、仮想バッファの容量と同一サイズとなる確率を、仮想バッファの容量未満となる確率よりも高くなるように設定しているため、仮想送信回路から送信データを連続して送信する場合、仮想バッファのサイズで送信データが送信される回数が多くなる結果、送信データを速やかに送信することができ、検証を速やかに行うことができる。
【００１３】
請求項２記載の発明によれば、仮想レジスタはｎ個の数値を記憶しており、サイズ決定部は、ｎ個の数値をランダムに決定し、決定した数値に対して予め割り当てられたサイズを送信データのサイズとして決定するが、このサイズを決定する際に用いられるサイズ記憶部は、仮想バッファの容量と同一サイズである最大サイズが割り当てられた数値の個数が最大サイズ未満のサイズが割り当てられた数値の個数よりも多くされているため、送信データが最大サイズで送信される回数が多くなる結果、仮想通信インターフェイス回路の動作検証を済みやかに行うことができる。また、サイズ決定部は、１〜最大サイズの範囲内から１の数値をランダムに決定するのではなく、仮想レジスタに記憶されているｎ個の数値の中から１の数値をランダムに決定しているため、１〜最大サイズの範囲内の数値をランダムに決定する場合に比べて、数値範囲が狭くすることが可能となり、送信データのサイズを決定する処理を速やかに行うことができる。
【００１４】
請求項３記載の発明によれば、仮想ＤＭＡ転送実行回路を含めた回路システムにおいて、仮想通信インターフェイス回路の検証を行うことができる。
【００１５】
請求項４記載の発明によれば、ＵＳＢ規格に準拠した仮想通信インターフェイス回路の検証を速やかに行うことができる。
【発明を実施するための最良の形態】
【００１６】
以下、本発明の実施の形態による回路シミュレーション装置について説明する。図１は、本実施の形態による回路シミュレーション装置のハードウェア構成を示すブロック図である。図１に示す回路シミュレーション装置は、公知のコンピュータから構成され、入力装置１、ＲＯＭ（リードオンリメモリ）２、ＣＰＵ（中央演算処理装置）３、ＲＡＭ（ランダムアクセスメモリ）４、外部記憶装置５、表示装置６、及び記録媒体駆動装置７を備えている。各ブロックはバスラインに接続され、このバスラインを介して種々のデータ等が入出力され、ＣＰＵ３の制御の下、種々の処理が実行される。
【００１７】
入力装置１は、キーボード、マウス等から構成され、操作者が種々のデータ及び操作指令等を入力するために使用される。ＲＯＭ２には、ＢＩＯＳ（Basic Input/Output System）等のシステムプログラム等が記憶されている。ＣＰＵ３は、外部記憶装置５に記憶された所定のＯＳ（Operating System）及び回路シミュレーションプログラムを実行することで、コンピュータを仮想回路生成部３０１、送信指示部３０２、及び検証部３０３として機能させる。
【００１８】
仮想回路生成部３０１は、入力装置１を用いてユーザにより入力され、ＶＥＲＩＬＯＧやＶＨＤＬ等のハードウェア記述言語を用いて記述されたプログラムに従って、コンピュータ空間内に仮想的に回路を生成する。本実施の形態では図２に示すように仮想送信回路２０、仮想通信インターフェイス回路３０及び仮想ＤＭＡ転送実行回路４０を生成する。送信指示部３０２は、仮想送信回路２０に対して、種々の指令を行う。検証部３０３は、仮想通信インターフェイス回路３０の検証を行う。
【００１９】
ＲＡＭ４は、ＣＰＵ３の作業領域等として用いられる。外部記憶装置５は、ハードディスクドライブ等から構成され、ＯＳ及び後述する回路シミュレーションプログラム等が記憶されている。
【００２０】
記録媒体駆動装置７は、ＣＤ−ＲＯＭドライブ、フレキシブルディスクドライブ等から構成される。回路シミュレーションプログラムは、ＣＤ−ＲＯＭ、フレキシブルディスク等のコンピュータ読み取り可能な記録媒体８に記録され、記録媒体駆動装置７により記録媒体８から読み出され、外部記憶装置５にインストールされる。表示装置６は、液晶表示装置、ＣＲＴ（陰極線管）等から構成され、ＣＰＵ３の制御の下、シミュレーション結果等を表示する。
【００２１】
図２は、本回路シミュレーション装置の機能ブロック図を示している。本回路シミュレーション装置は、入力装置１、送信指示部３０２、仮想送信回路２０、仮想通信インターフェイス回路３０、仮想ＤＭＡ転送実行回路４０、及び検証部３０３を備えている。
【００２２】
仮想送信回路２０は、実在するＵＳＢ規格に準拠したデータを送信する送信装置（例えばパソコン）を模して、ハードウェア記述言語によりコンピュータ空間内に仮想的に構築された回路であり、送信指示部３０２により決定されたサイズを有し、かつ、仮想通信インターフェイス回路３０を検証するための送信データを、仮想通信インターフェイス回路３０に対して送信する。
【００２３】
具体的には、仮想送信回路２０は、仮想通信インターフェイス回路３０の種々の動作を検証するために、種々の動作に対して予め定められたパターンを有する送信データを記憶しており、ユーザからの操作指令に従って指定された検証動作に対応する送信データを特定し、特定した送信データを仮想通信インターフェイス回路３０に対して送信する。
【００２４】
ここで、仮想送信回路２０は、特定した送信データから、送信指示部３０２によって指定されたサイズ分のデータを分割送信データとして取り出し、分割送信データを繰り返し送信することで全ての送信データを送信する。
【００２５】
仮想通信ケーブルＣ１は、実在するＵＳＢの通信ケーブルを模して、ハードウェア記述言語によりコンピュータ空間内に仮想的に構築された通信インターフェイスである。
【００２６】
仮想通信インターフェイス回路３０は、実在するＵＳＢの通信インターフェイス回路を模して、ハードウェア記述言語によりコンピュータ空間内に仮想的に構築された回路であり、仮想通信ケーブルＣ１を介して仮想通信インターフェイス回路３０と接続されている。また、仮想通信インターフェイス回路３０は、仮想送信回路２０からの分割送信データを、仮想通信ケーブルＣ１を介して受信し、データを一時的に記憶する仮想バッファ３１を備えている。この仮想バッファ３１は、ＵＳＢ（universal serial bus）規格によって定められたバッファの記憶容量（例えば５１２バイト）を有している。
【００２７】
仮想ＤＭＡ転送実行回路４０は、ＤＭＡコントローラ、ＣＰＵ、メモリ、及びこれらを相互接続するバスライン等から構成され、ＤＭＡコントローラが仮想バッファ３１に記憶された分割送信データを、バスラインを介してメモリに直接送信するＤＭＡ転送を実行するＤＭＡ転送システムを模して、ハードウェア記述言語によりコンピュータ空間内に仮想的に構築された回路である。
【００２８】
検証部３０３は、ＤＭＡコントローラがメモリに対してＤＭＡ転送した送信データと、仮想送信回路２０が仮想通信インターフェイス回路３０に対して送信した送信データとの一致の有無を判定することにより、仮想通信インターフェイス回路３０の動作検証を行う。
【００２９】
送信指示部３０２は、サイズ決定部１１、仮想レジスタ１２、及びサイズ記憶部１３を備えている。サイズ決定部１１は、「００」、「０１」、「１０」、「１１」の４つの数値の中から１つの数値をランダムに決定し、決定した数値に対して予め対応付けられた分割送信データのサイズを、サイズ記憶部１３を参照して決定する。
【００３０】
仮想レジスタ１２は、コンピュータ空間内に仮想的に生成されたレジスタであり、上記「００」、「０１」、「１０」、「１１」の数値を記憶している。サイズ記憶部１３は、仮想レジスタ１２が記憶する数値と、各数値に対して予め定められた分割送信データのサイズとを対応づけて記憶する。
【００３１】
図３は、サイズ記憶部１３が記憶するデータのデータ構造を示した図である。図３に示すように、サイズ記憶部は、仮想レジスタ１２が記憶する数値と、各数値に対して予め割り当てられた分割送信データのサイズとを対応付けて記憶している。図３の例では、「００」、「０１」、「１１」に対して分割送信データの最大サイズ（例えば５１２バイト）が割り当てられ、「１１」に対して最大サイズ未満のサイズが割り当てられている。
【００３２】
これによって、仮想送信回路２０から最大サイズの分割送信データが送信される確率が７５％となり、最大サイズ未満のサイズの分割送信データが送信される確率が２５％となり、最大サイズの分割送信データが送信される確率が最大サイズ未満の分割送信データが送信される確率よりも高くなる。
【００３３】
なお、サイズ決定部１１は、「１１」を決定した場合、１〜分割送信データの最大サイズより１小さい数値（例えば５１１＝（５１２−１））の範囲内からいずれか１つの数値をランダムに決定し、決定した数値を分割送信データのサイズとしてもよい。
【００３４】
ここで、仮想レジスタ１２は上記４つの数値を記憶するものとしたが、これに限定されず、５つ以上、若しくは２つ以上３つ以下の数値を記憶してもよい。また、仮想レジスタ１２が記憶する数値は、２ビットのデータであったが、これに限定されず、数値の種類に応じてビット数を適宜増やしても良い。
【００３５】
更に、サイズ記憶部１３は、仮想送信回路２０から最大サイズの分割送信データが送信される確率を７５％としたが、これに限定されず、５１％以上７４％以下としても良いし、７６％以上９９％以下としてもよい。
【００３６】
次に、図４に示すフローチャートを用いて本回路シミュレーション装置の動作について説明する。まず、ステップＳ１において、仮想送信回路２０は、入力装置１を介してユーザによりなされた仮想通信インターフェイス回路３０の検証動作を指定するための操作指令を受け付けると（Ｓ１でＹＥＳ）、指定された検証動作に対して予め定められた送信データを決定する（Ｓ２）。
【００３７】
ステップＳ３において、仮想送信回路２０は、決定した送信データのうち、１回に送信するべきデータである分割送信データのサイズの決定要求を送信指示部３０２に出力する。
【００３８】
ステップＳ４において、サイズ決定部１１は、仮想送信回路２０から出力された決定要求を受信すると、仮想レジスタ１２に記憶された数値のうち、いずれか１の数値をランダムに決定する。
【００３９】
ステップＳ５において、サイズ決定部１１は、決定した数値に対して予め割り当てられた送信データのサイズを、サイズ記憶部１３を参照して決定し、決定したサイズを分割送信データのサイズとして仮想送信回路２０に通知する（Ｓ６）。
【００４０】
ステップＳ７において、仮想送信回路２０は、ステップＳ６にて通知されたサイズ分のデータを分割送信データとして、ステップＳ２で決定された送信データから取り出し、取り出した分割送信データを、仮想通信ケーブルＣ１を介して仮想通信インターフェイス回路３０に送信する。
【００４１】
ステップＳ８において、仮想通信インターフェイス回路３０は、仮想送信回路２０から送信された分割送信データが仮想バッファ３１に格納されると、仮想バッファ３１に格納された分割送信データを仮想ＤＭＡ転送実行回路４０に送信する。ステップＳ８において、仮想ＤＭＡ転送実行回路４０は、受信した分割送信データに対してＤＭＡ転送を実行する。
【００４２】
ステップＳ９において、検証部３０３は、仮想ＤＭＡ転送実行回路４０によりＤＭＡ転送が行われた分割送信データと、仮想送信回路２０から送信された分割送信データとの一致の有無を判定する。
【００４３】
ステップＳ１０において、仮想送信回路２０は、ステップＳ２で決定した送信データの送信が完了した場合は（ステップＳ１０でＹＥＳ）、処理を終了し、全ての送信データの送信が完了していない場合は（ステップＳ１０でＮＯ）、処理をステップＳ３に戻し、サイズ決定部１１に対して次に送信する分割送信データのサイズの決定要求を送信指示部３０２に出力する。
【００４４】
以上説明したように、本シミュレーション回路によれば、送信指示部３０２は、仮想送信回路２０が１度に送信する分割送信データのサイズを決定するに際して、サイズ記憶部１３を参照するが、サイズ記憶部１３は、４つの数値のうち、３つの数値に対して分割送信データの最大サイズ（＝仮想バッファ３１の容量と同一サイズ）が割り当てられているため、分割送信データが最大サイズとなる確率が７５％となる結果、仮想通信インターフェイス回路３０の動作検証を行うために送信される送信データを速やかに仮想通信インターフェイス回路３０に送信することが可能となり、仮想通信インターフェイス回路３０の動作検証を効率よく速やかに終了させることができる。
【００４５】
なお、上記実施の形態では、検証部３０３は、分割送信データが送信されるたびに、一致の有無を判定していたが、これに限定されず、ステップＳ２で決定した送信データの全ての送信が終了した後で、一致の有無を判定してもよい。
【００４６】
また、上記実施の形態では、ＵＳＢの通信インターフェイス回路が採用されていたが、これに限定されず、Ｘ．２５等のシリアルインターフェイス回路やセントロニクス等のパラレルのインターフェイス回路等を採用してもよい。
【図面の簡単な説明】
【００４７】
【図１】本実施の形態による回路シミュレーション装置のハードウェア構成を示すブロック図である。
【図２】本回路シミュレーション装置の機能ブロック図を示している。
【図３】サイズ記憶部が記憶するデータのデータ構造を示した図である。
【図４】回路シミュレーション装置の動作を示すフローチャートである。
【符号の説明】
【００４８】
３０２  送信指示部
１１  サイズ決定部
１２  仮想レジスタ
１３  サイズ記憶部
２０  仮想送信回路
３０  仮想通信インターフェイス回路
３１  仮想バッファ
４０  ＤＭＡ転送実行回路
３０３  検証部
Ｃ１  仮想通信ケーブル
【図１】
2007102303.tif 000003
【図２】
2007102303.tif 000004
【図３】
2007102303.tif 000005
【図４】
2007102303.tif 000006