Verilogのinoutをシミュレートする方法について
わからないので質問させてください。
SRAMのシミュレーションモデルを書いてみて、いざ、シミュレータで
シミュレーションしようと思ったのですが、テストモジュールから
inoutであるdataへ接続する方法をwireでやるべきか、regでやるべきか不明で
困っています。
良い方法があれば教えていただけますでしょうか?
(できれば、シミュレーション対象のソースを変更しない方法がいいです)
また、Verilogのシミュレーションモデルを配布しているHPなどありましたら教えていただけますか?
よろしくお願いします。
A 回答 (2件)
- 最新から表示
- 回答順に表示
No.2
- 回答日時:
> ということは、O2海シミュレーションをかけなくてはならないのでしょうか?
質問の意図がよく分かりませんが, "2回"シミュレーションを実施しなければならないか?という疑問であれば, 1度で済みますがシミュレーションは必要な確認項目をすべて実施しなければなりません.
満たすべき仕様に応じて検討し, initial構文内に列挙すれば事足りるでしょう.
> 出力を見るときはそのままで、入力波形を見るときは出力をHi_Zするということでしょうか?
入出力の用語定義があいまいですが, 検証対象である擬似SRAMからの出力を見る場合(READ), テストベンチ内のregと信号が衝突しますのでregを事前にHi-zにしておく必要があります.
擬似SRAMへのWRITEを行う場合は入力値をregに書き込んであれげばwireを経由し検証対象へ入力される仕組みです.
誰が信号線をドライブしているのか?をイメージできると割と簡単に理解できると思います.
No.1
- 回答日時:
inout信号のシミュレーションはwireとregを組み合わせて実施可能.
出力値を取得する場合, regをHi-zにする必要があります.
以下, 参考(ただし未検証. 適当にインデントが必要)
module tb_target()
paramter STEP = 10;
wire DIO;
reg DO;
target U1( .DIO(DIO), ... );
assign DIO = DO;
initial begin
//-- WRITE
DO = 1'b0;
#STEPDO = 1'b1;
//-- READ
#STEPDO = 1'bz;
#STEPif ( DIO == ... ) ...
end
end module
お礼が遅れてしまい申し訳ありません。
図も入れていただき丁寧な説明ありがとうございました。
ということは、O2海シミュレーションをかけなくてはならないのでしょうか?
出力を見るときはそのままで、入力波形を見るときは出力をHi_Zするということでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 宇宙科学・天文学・天気 銀河のハビタブルゾーンを確率的セルオートマトンという数値的にシミュレーションした結果、「群島」の様な 2 2023/06/06 23:10
- 物理学 シミュレーション仮説は本当か? 6 2023/06/25 20:26
- その他(自然科学) 科学技術計算の仕事について 2 2023/02/04 18:09
- 物理学 マルチバース仮説は本当か? 5 2023/07/15 11:33
- その他(資産運用・投資) 積み立てNISAの利息や年利の計算方法 3 2022/05/07 15:03
- ドラマ 外国人です。聞き取れないところを教えてください 4 2023/06/19 15:20
- 物理学 シミュレーション空間 1 2023/07/31 20:57
- 医学 脳の病気についての質問です。 「脳が経験から自動的に導いたシミュレーションの中を人は生きていて、その 2 2022/08/01 22:08
- 医学 脳の病気についての質問です。 「脳が経験から自動的に導いたシミュレーションの中を人は生きていて、その 2 2022/08/01 22:42
- その他(パソコン・スマホ・電化製品) ios専用のbluetooth機器をandroidで接続する方法 4 2023/01/09 16:50
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PS4コントローラーをPCでゲーム...
-
AIに回答させるって
-
KEYENCEのシーケンスプログラム...
-
cout と cerrの違い
-
プログラムについての質問です...
-
printfとputcharの違いは
-
VBAのExecメソッドで画面を非表...
-
ListViewの複数選択について
-
バッチファイル フォルダサイ...
-
printfの書式%.*s
-
C# 標準出力のencodingをutf8に...
-
Windows Formアプリからコンソ...
-
ブランキング期間
-
AviUtl 出力の失敗
-
汎用人型決戦兵器「人造人間エ...
-
ACCESS クエリ→フォーム...
-
標準出力の上書き
-
C言語の標準関数の引数の順番に...
-
CRC16計算について
-
最近の画像生成AIについて。 長...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
PS4コントローラーをPCでゲーム...
-
4Kの外部モニターに出力すると...
-
コンセントの電力は入力と出力...
-
MMDでavi出力が出来ない
-
OBS配信すると、マイクが途切れ...
-
VBAでテキスト出力時のスペース...
-
cout と cerrの違い
-
COBOLのMOVEで桁数が異なる場合
-
ACCESS クエリ→フォーム...
-
アクセスでエクセルに出力する...
-
VBAのExecメソッドで画面を非表...
-
テキストファイルから特定の文...
-
Windows11対応の3入力1出力 USB...
-
VBAで有効数字の設定
-
スマホのバッテリー消費につい...
-
Excel VBAで値を変えながら、pd...
-
NTTのホームゲートウェイとOCN...
-
定格冷房能力(出力)とは 定格...
-
プログラムについての質問です...
-
PS5をMacBookProに出力したいの...
おすすめ情報