📄 k7r323682m.vhd
字号:
VARIABLE MemData0A : MemStore; VARIABLE MemData1A : MemStore; VARIABLE MemData2A : MemStore; VARIABLE MemData3A : MemStore; VARIABLE MemData0B : MemStore; VARIABLE MemData1B : MemStore; VARIABLE MemData2B : MemStore; VARIABLE MemData3B : MemStore; VARIABLE wrop : boolean := false; VARIABLE rdop : boolean := false; VARIABLE waddr : NATURAL; VARIABLE raddr : NATURAL; VARIABLE datatmp : INTEGER; -- No Weak Values Variables VARIABLE BW0Neg_nwv : UX01 := 'U'; VARIABLE BW1Neg_nwv : UX01 := 'U'; VARIABLE BW2Neg_nwv : UX01 := 'U'; VARIABLE BW3Neg_nwv : UX01 := 'U'; VARIABLE BW0Neg_reg : UX01 := 'U'; VARIABLE BW1Neg_reg : UX01 := 'U'; VARIABLE BW2Neg_reg : UX01 := 'U'; VARIABLE BW3Neg_reg : UX01 := 'U'; VARIABLE RNeg_nwv : UX01 := 'U'; VARIABLE WNeg_nwv : UX01 := 'U'; VARIABLE dat0_reg : std_logic_vector(HiDbit downto 0); VARIABLE dat1_reg : std_logic_vector(HiDbit downto 0); VARIABLE dat2_reg : std_logic_vector(HiDbit downto 0); VARIABLE dat3_reg : std_logic_vector(HiDbit downto 0); VARIABLE dout_tmpA : std_logic_vector(35 downto 0):= (OTHERS=>'Z'); VARIABLE dout_tmpB : std_logic_vector(35 downto 0):= (OTHERS=>'Z'); VARIABLE dout_regA : std_logic_vector(35 downto 0); VARIABLE dout_regB : std_logic_vector(35 downto 0); -- mem file FILE mem_file : text IS mem_file_name; VARIABLE ind : NATURAL := 0; VARIABLE buf : line; VARIABLE init_time : boolean := true; BEGIN BW0Neg_nwv := To_UX01 (s => BW0NIn); BW1Neg_nwv := To_UX01 (s => BW1NIn); BW2Neg_nwv := To_UX01 (s => BW2NIn); BW3Neg_nwv := To_UX01 (s => BW3NIn); RNeg_nwv := To_UX01 (s => RInt); WNeg_nwv := To_UX01 (s => WInt); -------------------------------------------------------------------- -- Timing Check Section -------------------------------------------------------------------- IF (TimingChecksOn) THEN VitalSetupHoldCheck ( TestSignal => RInt, TestSignalName => "RNeg", RefSignal => KIn, RefSignalName => "K", SetupLow => tsetup_RNeg_K, HoldLow => thold_RNeg_K, CheckEnabled => TRUE, RefTransition => '/', HeaderMsg => InstancePath & PartID, TimingData => TD_RNeg_K, XOn => XOn, MsgOn => MsgOn, Violation => Tviol_RNeg_K ); VitalSetupHoldCheck ( TestSignal => WInt, TestSignalName => "WNeg", RefSignal => KIn, RefSignalName => "K", SetupLow => tsetup_RNeg_K, HoldLow => thold_RNeg_K, CheckEnabled => TRUE, RefTransition => '/', HeaderMsg => InstancePath & PartID, TimingData => TD_WNeg_K, XOn => XOn, MsgOn => MsgOn, Violation => Tviol_WNeg_K ); VitalSetupHoldCheck ( TestSignal => BW0NIn, TestSignalName => "BW0Neg", RefSignal => KIn, RefSignalName => "K", SetupLow => tsetup_RNeg_K, HoldLow => thold_RNeg_K, CheckEnabled => ( WNeg_nwv = '0'), RefTransition => '/', HeaderMsg => InstancePath & PartID, TimingData => TD_BW0Neg_K, XOn => XOn, MsgOn => MsgOn, Violation => Tviol_BW0Neg_K ); VitalSetupHoldCheck ( TestSignal => BW1NIn, TestSignalName => "BW1Neg", RefSignal => KIn, RefSignalName => "K", SetupLow => tsetup_RNeg_K, HoldLow => thold_RNeg_K, CheckEnabled => ( WNeg_nwv = '0'), RefTransition => '/', HeaderMsg => InstancePath & PartID, TimingData => TD_BW1Neg_K, XOn => XOn, MsgOn => MsgOn, Violation => Tviol_BW1Neg_K ); VitalSetupHoldCheck ( TestSignal => BW2NIn, TestSignalName => "BW2Neg", RefSignal => KIn, RefSignalName => "K", SetupLow => tsetup_RNeg_K, HoldLow => thold_RNeg_K, CheckEnabled => ( WNeg_nwv = '0'), RefTransition => '/', HeaderMsg => InstancePath & PartID, TimingData => TD_BW2Neg_K, XOn => XOn, MsgOn => MsgOn, Violation => Tviol_BW2Neg_K ); VitalSetupHoldCheck ( TestSignal => BW3NIn, TestSignalName => "BW3Neg", RefSignal => KIn, RefSignalName => "K", SetupLow => tsetup_RNeg_K, HoldLow => thold_RNeg_K, CheckEnabled => ( WNeg_nwv = '0'), RefTransition => '/', HeaderMsg => InstancePath & PartID, TimingData => TD_BW3Neg_K, XOn => XOn, MsgOn => MsgOn, Violation => Tviol_BW3Neg_K ); VitalSetupHoldCheck ( TestSignal => BW0NIn, TestSignalName => "BW0Neg", RefSignal => KNegIn, RefSignalName => "KNeg", SetupLow => tsetup_RNeg_K, HoldLow => thold_RNeg_K, CheckEnabled => ( WNeg_nwv = '0'), RefTransition => '/', HeaderMsg => InstancePath & PartID, TimingData => TD_BW0Neg_KNeg, XOn => XOn, MsgOn => MsgOn, Violation => Tviol_BW0Neg_KNeg ); VitalSetupHoldCheck ( TestSignal => BW1NIn, TestSignalName => "BW1Neg", RefSignal => KNegIn, RefSignalName => "KNeg", SetupLow => tsetup_RNeg_K, HoldLow => thold_RNeg_K, CheckEnabled => ( WNeg_nwv = '0'), RefTransition => '/', HeaderMsg => InstancePath & PartID, TimingData => TD_BW1Neg_KNeg, XOn => XOn, MsgOn => MsgOn, Violation => Tviol_BW1Neg_KNeg ); VitalSetupHoldCheck ( TestSignal => BW2NIn, TestSignalName => "BW2Neg", RefSignal => KNegIn, RefSignalName => "KNeg", SetupLow => tsetup_RNeg_K, HoldLow => thold_RNeg_K, CheckEnabled => ( WNeg_nwv = '0'), RefTransition => '/', HeaderMsg => InstancePath & PartID, TimingData => TD_BW2Neg_KNeg, XOn => XOn, MsgOn => MsgOn, Violation => Tviol_BW2Neg_KNeg ); VitalSetupHoldCheck ( TestSignal => BW3NIn, TestSignalName => "BW3Neg", RefSignal => KNegIn, RefSignalName => "KNeg", SetupLow => tsetup_RNeg_K, HoldLow => thold_RNeg_K, CheckEnabled => ( WNeg_nwv = '0'), RefTransition => '/', HeaderMsg => InstancePath & PartID, TimingData => TD_BW3Neg_KNeg, XOn => XOn, MsgOn => MsgOn, Violation => Tviol_BW3Neg_KNeg ); VitalSetupHoldCheck ( TestSignal => Dat0In, TestSignalName => "Dat0In", RefSignal => KNegIn, RefSignalName => "KNeg", SetupLow => tsetup_D0_K, HoldLow => thold_D0_K, CheckEnabled => ( WNeg_nwv = '0' AND BW0Neg_nwv = '0'), RefTransition => '/', HeaderMsg => InstancePath & PartID, TimingData => TD_D0_KNeg, XOn => XOn, MsgOn => MsgOn, Violation => Tviol_D0_KNeg ); VitalSetupHoldCheck ( TestSignal => Dat1In, TestSignalName => "Dat1In", RefSignal => KNegIn, RefSignalName => "KNeg", SetupLow => tsetup_D0_K, HoldLow => thold_D0_K, CheckEnabled => ( WNeg_nwv = '0' AND BW1Neg_nwv = '0'), RefTransition => '/', HeaderMsg => InstancePath & PartID, TimingData => TD_D1_KNeg, XOn => XOn, MsgOn => MsgOn, Violation => Tviol_D1_KNeg ); VitalSetupHoldCheck ( TestSignal => Dat2In, TestSignalName => "Dat2In", RefSignal => KNegIn, RefSignalName => "KNeg", SetupLow => tsetup_D0_K, HoldLow => thold_D0_K, CheckEnabled => ( WNeg_nwv = '0' AND BW2Neg_nwv = '0'), RefTransition => '/', HeaderMsg => InstancePath & PartID, TimingData => TD_D2_KNeg, XOn => XOn, MsgOn => MsgOn, Violation => Tviol_D2_KNeg ); VitalSetupHoldCheck ( TestSignal => Dat3In, TestSignalName => "Dat3In", RefSignal => KNegIn, RefSignalName => "KNeg", SetupLow => tsetup_D0_K, HoldLow => thold_D0_K, CheckEnabled => ( WNeg_nwv = '0' AND BW3Neg_nwv = '0'), RefTransition => '/', HeaderMsg => InstancePath & PartID, TimingData => TD_D3_KNeg, XOn => XOn, MsgOn => MsgOn, Violation => Tviol_D3_KNeg ); VitalSetupHoldCheck ( TestSignal => Dat0In, TestSignalName => "Dat0In", RefSignal => KIn, RefSignalName => "K", SetupLow => tsetup_D0_K, HoldLow => thold_D0_K, CheckEnabled => ( WNeg_nwv = '0' AND BW0Neg_nwv = '0'), RefTransition => '/', HeaderMsg => InstancePath & PartID, TimingData => TD_D0_K, XOn => XOn, MsgOn => MsgOn, Violation => Tviol_D0_K );
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -