背景 論理シミュレーションは、LSI設計において、設計回路の論理機能、および信 号伝播タイミングを検証する工程である。この工程は、多大な計算時間を必要と することから高速化が強く望まれているとともに、遅延の詳細度変更など種々の 要求に適応できる柔軟性も要求されている。 ソフトウェア論理シミュレータの並列化は、高速かつ柔軟なシミュレーション を実現する有望な方法である。ICOTでは、将来の超並列計算機を用いた超高速 シミュレーション実現の第一歩として、PIM上に並列論理シミュレータを開発し た。 システム仕様 本シミュレータは、組み合わせ回路、順序回路(非同期回路も含む)ともに扱う ことができる。信号値モデルとしては、Hi,Lo,X(不定)を用いる3値モデル を、また、遅延値モデルとしては、各ゲートに異なる値を割り当てることができ る非単一遅延モデルを採用した。なお、本シミュレータはゲートのみを扱うため、 フリップフロップなど機能ブロックは全てゲートに分解して記述する。 並列離散事象シミュレーションとタイムワープ機構 並列論理シミュレーションは、並列離散事象シミュレーションの問題として扱 われる。ここでは、ゲートに対応したオブジェクトが互いにメッセージを交換し、 その状態を変化させていくことでシミュレーションが進行するように問題をモデ ル化する。メッセージは事象(信号値変化)情報をもち、その生起時刻が刻印され ている(タイムスタンプ)。正しいシミュレーション結果を得るためには、各オブ ジェクトで時刻順にメッセージを処理していかなければならないため、時刻管理 機構が必要になる。 本シミュレータでは、分散的な時刻管理機構の一つであるタイムワープ機構を 採用した。タイムワープ機構では、各オブジェクトは時刻順にメッセージが到着 すると仮定して、履歴を保存しつつメッセージ処理を進める。メッセージが遅れ て到着した場合は履歴を巻き戻し(ロールバック)、処理をやり直す。また、誤っ て送信されたメッセージは、アンチメッセージを用いて取り消す。 ロールバック処理のオーバヘッドは性能に悪影響を及ぼすことが懸念さるため、 本シミュレータでは、このオーバヘッドを小さく抑える幾つかの工夫を加え、PIM 上での効率的な動作を実現した。 - 52 -