本当に混乱します。Verilog VCSでコンパイラを正しくコンパイルするとプログラムが正しく出力されますが、コンパイラがIVLで別の出力を得るとき
私はVerilogプログラミングを行い、VCSでコンパイルして実行しました。予想されるクロックサイクルで正しい値を与えています。
私はそれを実行するとivl32ですが、少し異なる値を与えています。
私は完全に混乱しています。
問題はどうなるでしょうか?
本当に混乱します。Verilog VCSでコンパイラを正しくコンパイルするとプログラムが正しく出力されますが、コンパイラがIVLで別の出力を得るとき
私はVerilogプログラミングを行い、VCSでコンパイルして実行しました。予想されるクロックサイクルで正しい値を与えています。
私はそれを実行するとivl32ですが、少し異なる値を与えています。
私は完全に混乱しています。
問題はどうなるでしょうか?
主要なElectronic Design Automation(EDA)ツールベンダーは、それぞれ独自の SystemVerilogシミュレータを備えています。このツールは、異なる時間に異なる人物、特にシミュレーションアルゴリズムによって作成されています。だから一般的に彼らは同じように行動する。
あり不確定性と呼ばれ、手入れがモデルやテストベンチは、不確定性が問題ではない、というように書かれているように注意する必要があります。
不確定性:LRM例から不確か
参照:初期の実行が割り当てステートメントとインターリーブされているので
assign b = a;
initial
begin
a = 1;
#1 a = 0;
$display(b);
end
、Bの値が '0' または「1からBできます'、異なるシミュレータは異なる出力を与える。
Questasim:
-- Compiling module chk
Top level modules:
chk
Reading pref.tcl
# 10.4
# vsim -lib work chk -c -do "run -all; quit -f" -appendlog -l qverilog.log -vopt
# ** Note: (vsim-3813) Design is being optimized due to module recompilation...
# // Questa Sim-64
# // Version 10.4 linux_x86_64 Dec 2 2014
# //
# // Copyright 1991-2014 Mentor Graphics Corporation
# // All Rights Reserved.
# //
# // THIS WORK CONTAINS TRADE SECRET AND PROPRIETARY INFORMATION
# // WHICH IS THE PROPERTY OF MENTOR GRAPHICS CORPORATION OR ITS
# // LICENSORS AND IS SUBJECT TO LICENSE TERMS.
# // THIS DOCUMENT CONTAINS TRADE SECRETS AND COMMERCIAL OR FINANCIAL
# // INFORMATION THAT ARE PRIVILEGED, CONFIDENTIAL, AND EXEMPT FROM
# // DISCLOSURE UNDER THE FREEDOM OF INFORMATION ACT, 5 U.S.C. SECTION 552.
# // FURTHERMORE, THIS INFORMATION IS PROHIBITED FROM DISCLOSURE UNDER
# // THE TRADE SECRETS ACT, 18 U.S.C. SECTION 1905.
# //
# Loading work.chk(fast)
# run -all
# ----*---- Value of b is :: 0 ----*----
# quit -f
# End time: 14:32:20 on May 10,2016, Elapsed time: 0:00:01
# Errors: 0, Warnings: 0
INCISIV:あなたのコードでレースしている場合は
irun: 12.20-s015: (c) Copyright 1995-2013 Cadence Design Systems, Inc.
Recompiling... reason: file './me.v' is newer than expected.
expected: Tue May 10 14:31:09 2016
actual: Tue May 10 14:33:54 2016
file: me.v
module worklib.chk:v
errors: 0, warnings: 0
Caching library 'worklib' ....... Done
Elaborating the design hierarchy:
Top level design units:
chk
Building instance overlay tables: .................... Done
Generating native compiled code:
worklib.chk:v <0x5f262bc0>
streams: 1, words: 825
Loading native compiled code: .................... Done
Building instance specific data structures.
Design hierarchy summary:
Instances Unique
Modules: 1 1
Registers: 1 1
Scalar wires: 1 -
Initial blocks: 1 1
Cont. assignments: 0 1
Writing initial simulation snapshot: worklib.chk:v
Loading snapshot worklib.chk:v .................... Done
ncsim> source /sib/tools/Cadence/Install/INCISIV122/tools/inca/files/ncsimrc
ncsim> run
----*---- Value of b is :: 1 ----*----
ncsim: *W,RNQUIE: Simulation is complete.
ncsim> exit
その後、この問題のキンクが発生することがあります。
シミュレータの動作が競合する原因となっているコードを表示してください。 – sharvil111