Compare commits
5
Commits
4fd22c4919
..
v1.1.0
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
c447c6a592 | ||
|
|
e19adb09f9 | ||
|
|
092cad794c | ||
|
|
1d92e2c53e | ||
|
|
61076299a0 |
+95
-70
@@ -28,82 +28,107 @@
|
|||||||
<TraceSigTreeData>
|
<TraceSigTreeData>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_cs" NodeType="0" PortIndex="0"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_cs" NodeType="0" PortIndex="0"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_sclk" NodeType="0" PortIndex="1"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_sclk" NodeType="0" PortIndex="1"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/addr_out" NodeType="1" PortIndex="2">
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_mosi" NodeType="0" PortIndex="2"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/bit_cnt" NodeType="1" PortIndex="3">
|
||||||
<BusRadix Radix="0"/>
|
<BusRadix Radix="0"/>
|
||||||
<IsExpanded Expand="false"/>
|
<IsExpanded Expand="false"/>
|
||||||
</TraceSignal>
|
</TraceSignal>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/addr_out:0" NodeType="2" PortIndex="2"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/bit_cnt:0" NodeType="2" PortIndex="3"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/addr_out:1" NodeType="2" PortIndex="3"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/bit_cnt:1" NodeType="2" PortIndex="4"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/addr_out:2" NodeType="2" PortIndex="4"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/bit_cnt:2" NodeType="2" PortIndex="5"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/addr_out:3" NodeType="2" PortIndex="5"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/bit_cnt:3" NodeType="2" PortIndex="6"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/addr_out:4" NodeType="2" PortIndex="6"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/bit_cnt:4" NodeType="2" PortIndex="7"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/addr_out:5" NodeType="2" PortIndex="7"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/bit_cnt:5" NodeType="2" PortIndex="8"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/addr_out:6" NodeType="2" PortIndex="8"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/recv_reg" NodeType="1" PortIndex="9">
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift" NodeType="1" PortIndex="9">
|
|
||||||
<BusRadix Radix="3"/>
|
|
||||||
<IsExpanded Expand="false"/>
|
|
||||||
</TraceSignal>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:0" NodeType="2" PortIndex="9"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:1" NodeType="2" PortIndex="10"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:2" NodeType="2" PortIndex="11"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:3" NodeType="2" PortIndex="12"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:4" NodeType="2" PortIndex="13"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:5" NodeType="2" PortIndex="14"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:6" NodeType="2" PortIndex="15"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:7" NodeType="2" PortIndex="16"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:8" NodeType="2" PortIndex="17"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:9" NodeType="2" PortIndex="18"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:10" NodeType="2" PortIndex="19"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:11" NodeType="2" PortIndex="20"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:12" NodeType="2" PortIndex="21"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:13" NodeType="2" PortIndex="22"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:14" NodeType="2" PortIndex="23"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:15" NodeType="2" PortIndex="24"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:16" NodeType="2" PortIndex="25"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:17" NodeType="2" PortIndex="26"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:18" NodeType="2" PortIndex="27"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:19" NodeType="2" PortIndex="28"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:20" NodeType="2" PortIndex="29"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:21" NodeType="2" PortIndex="30"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:22" NodeType="2" PortIndex="31"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:23" NodeType="2" PortIndex="32"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:24" NodeType="2" PortIndex="33"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:25" NodeType="2" PortIndex="34"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:26" NodeType="2" PortIndex="35"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:27" NodeType="2" PortIndex="36"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:28" NodeType="2" PortIndex="37"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:29" NodeType="2" PortIndex="38"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:30" NodeType="2" PortIndex="39"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:31" NodeType="2" PortIndex="40"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/o_miso" NodeType="0" PortIndex="41"/>
|
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata" NodeType="1" PortIndex="42">
|
|
||||||
<BusRadix Radix="0"/>
|
<BusRadix Radix="0"/>
|
||||||
<IsExpanded Expand="false"/>
|
<IsExpanded Expand="false"/>
|
||||||
</TraceSignal>
|
</TraceSignal>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:0" NodeType="2" PortIndex="42"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/recv_reg:24" NodeType="2" PortIndex="9"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:1" NodeType="2" PortIndex="43"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/recv_reg:25" NodeType="2" PortIndex="10"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:2" NodeType="2" PortIndex="44"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/recv_reg:26" NodeType="2" PortIndex="11"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:3" NodeType="2" PortIndex="45"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/recv_reg:27" NodeType="2" PortIndex="12"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:4" NodeType="2" PortIndex="46"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/recv_reg:28" NodeType="2" PortIndex="13"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:5" NodeType="2" PortIndex="47"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/recv_reg:29" NodeType="2" PortIndex="14"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:6" NodeType="2" PortIndex="48"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/recv_reg:30" NodeType="2" PortIndex="15"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:7" NodeType="2" PortIndex="49"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/recv_reg:31" NodeType="2" PortIndex="16"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:8" NodeType="2" PortIndex="50"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/data_ready" NodeType="0" PortIndex="17"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:9" NodeType="2" PortIndex="51"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/o_addr" NodeType="1" PortIndex="18">
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:10" NodeType="2" PortIndex="52"/>
|
<BusRadix Radix="0"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:11" NodeType="2" PortIndex="53"/>
|
<IsExpanded Expand="false"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:12" NodeType="2" PortIndex="54"/>
|
</TraceSignal>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:13" NodeType="2" PortIndex="55"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/o_addr:0" NodeType="2" PortIndex="18"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:14" NodeType="2" PortIndex="56"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/o_addr:1" NodeType="2" PortIndex="19"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:15" NodeType="2" PortIndex="57"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/o_addr:2" NodeType="2" PortIndex="20"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:16" NodeType="2" PortIndex="58"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/o_addr:3" NodeType="2" PortIndex="21"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:17" NodeType="2" PortIndex="59"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/o_addr:4" NodeType="2" PortIndex="22"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:18" NodeType="2" PortIndex="60"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/o_addr:5" NodeType="2" PortIndex="23"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:19" NodeType="2" PortIndex="61"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/o_addr:6" NodeType="2" PortIndex="24"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:20" NodeType="2" PortIndex="62"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rvalid" NodeType="0" PortIndex="25"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:21" NodeType="2" PortIndex="63"/>
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift" NodeType="1" PortIndex="26">
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:22" NodeType="2" PortIndex="64"/>
|
<BusRadix Radix="0"/>
|
||||||
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:23" NodeType="2" PortIndex="65"/>
|
<IsExpanded Expand="false"/>
|
||||||
|
</TraceSignal>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:0" NodeType="2" PortIndex="26"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:1" NodeType="2" PortIndex="27"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:2" NodeType="2" PortIndex="28"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:3" NodeType="2" PortIndex="29"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:4" NodeType="2" PortIndex="30"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:5" NodeType="2" PortIndex="31"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:6" NodeType="2" PortIndex="32"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:7" NodeType="2" PortIndex="33"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:8" NodeType="2" PortIndex="34"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:9" NodeType="2" PortIndex="35"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:10" NodeType="2" PortIndex="36"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:11" NodeType="2" PortIndex="37"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:12" NodeType="2" PortIndex="38"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:13" NodeType="2" PortIndex="39"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:14" NodeType="2" PortIndex="40"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:15" NodeType="2" PortIndex="41"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:16" NodeType="2" PortIndex="42"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:17" NodeType="2" PortIndex="43"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:18" NodeType="2" PortIndex="44"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:19" NodeType="2" PortIndex="45"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:20" NodeType="2" PortIndex="46"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:21" NodeType="2" PortIndex="47"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:22" NodeType="2" PortIndex="48"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:23" NodeType="2" PortIndex="49"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:24" NodeType="2" PortIndex="50"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:25" NodeType="2" PortIndex="51"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:26" NodeType="2" PortIndex="52"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:27" NodeType="2" PortIndex="53"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:28" NodeType="2" PortIndex="54"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:29" NodeType="2" PortIndex="55"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:30" NodeType="2" PortIndex="56"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/miso_shift:31" NodeType="2" PortIndex="57"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/o_miso" NodeType="0" PortIndex="58"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata" NodeType="1" PortIndex="59">
|
||||||
|
<BusRadix Radix="0"/>
|
||||||
|
<IsExpanded Expand="false"/>
|
||||||
|
</TraceSignal>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:0" NodeType="2" PortIndex="59"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:1" NodeType="2" PortIndex="60"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:2" NodeType="2" PortIndex="61"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:3" NodeType="2" PortIndex="62"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:4" NodeType="2" PortIndex="63"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:5" NodeType="2" PortIndex="64"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:6" NodeType="2" PortIndex="65"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:7" NodeType="2" PortIndex="66"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:8" NodeType="2" PortIndex="67"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:9" NodeType="2" PortIndex="68"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:10" NodeType="2" PortIndex="69"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:11" NodeType="2" PortIndex="70"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:12" NodeType="2" PortIndex="71"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:13" NodeType="2" PortIndex="72"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:14" NodeType="2" PortIndex="73"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:15" NodeType="2" PortIndex="74"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:16" NodeType="2" PortIndex="75"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:17" NodeType="2" PortIndex="76"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:18" NodeType="2" PortIndex="77"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:19" NodeType="2" PortIndex="78"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:20" NodeType="2" PortIndex="79"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:21" NodeType="2" PortIndex="80"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:22" NodeType="2" PortIndex="81"/>
|
||||||
|
<TraceSignal IsHidden="false" Name="BUS_Con_1/i_rdata:23" NodeType="2" PortIndex="82"/>
|
||||||
</TraceSigTreeData>
|
</TraceSigTreeData>
|
||||||
<TriggerUI UserSelect="0" PreSelectType="0" PreSelect="1" UserSelectPos="0"/>
|
<TriggerUI UserSelect="0" PreSelectType="0" PreSelect="1" UserSelectPos="0"/>
|
||||||
<CoreRun Run="true"/>
|
<CoreRun Run="true"/>
|
||||||
|
|||||||
+23
-173
File diff suppressed because one or more lines are too long
+2051
-2051
File diff suppressed because it is too large
Load Diff
+4
-6
@@ -74,16 +74,16 @@ module CPLD_Con (
|
|||||||
|
|
||||||
//Reg Parsing
|
//Reg Parsing
|
||||||
//Shift Counter
|
//Shift Counter
|
||||||
wire [4:0]OC_Shifter1 = i_DC_Con1[8:4]; // Channel Number div 8
|
wire [4:0]OC_Shifter1 = (i_DC_Con1[8:1] - 1) >> 3; // Channel Number div 8
|
||||||
wire [2:0]DMM_Shifter1 = i_DC_Con1[8:7] ; // Channel Number div 64
|
wire [2:0]DMM_Shifter1 = i_DC_Con1[8:7] ; // Channel Number div 64
|
||||||
wire [4:0]RC_RLShifter1 = i_DC_Con1[21:17] ; // RC_RL Shifter
|
wire [4:0]RC_RLShifter1 = i_DC_Con1[21:17] ; // RC_RL Shifter
|
||||||
wire [4:0]OC_Shifter2 = i_DC_Con2[8:4]; // Channel Number div 8
|
wire [4:0]OC_Shifter2 = (i_DC_Con2[8:1] - 1) >> 3; // Channel Number div 8
|
||||||
wire [2:0]DMM_Shifter2 = i_DC_Con2[8:7] ; // Channel Number div 64
|
wire [2:0]DMM_Shifter2 = i_DC_Con2[8:7] ; // Channel Number div 64
|
||||||
wire [4:0]RC_RLShifter2 = i_DC_Con2[21:17] ; // RC_RL Shifter
|
wire [4:0]RC_RLShifter2 = i_DC_Con2[21:17] ; // RC_RL Shifter
|
||||||
wire [4:0]OC_Shifter3 = i_DC_Con3[8:4]; // Channel Number div 8
|
wire [4:0]OC_Shifter3 = (i_DC_Con3[8:1] - 1) >> 3; // Channel Number div 8
|
||||||
wire [2:0]DMM_Shifter3 = i_DC_Con3[8:7] ; // Channel Number div 64
|
wire [2:0]DMM_Shifter3 = i_DC_Con3[8:7] ; // Channel Number div 64
|
||||||
wire [4:0]RC_RLShifter3 = i_DC_Con3[21:17] ; // RC_RL Shifter
|
wire [4:0]RC_RLShifter3 = i_DC_Con3[21:17] ; // RC_RL Shifter
|
||||||
wire [4:0]OC_Shifter4 = i_DC_Con4[8:4]; // Channel Number div 8
|
wire [4:0]OC_Shifter4 = (i_DC_Con4[8:1] - 1) >> 3; // Channel Number div 8
|
||||||
wire [2:0]DMM_Shifter4 = i_DC_Con4[8:7] ; // Channel Number div 64
|
wire [2:0]DMM_Shifter4 = i_DC_Con4[8:7] ; // Channel Number div 64
|
||||||
wire [4:0]RC_RLShifter4 = i_DC_Con4[21:17] ; // RC_RL Shifter
|
wire [4:0]RC_RLShifter4 = i_DC_Con4[21:17] ; // RC_RL Shifter
|
||||||
|
|
||||||
@@ -367,7 +367,6 @@ module CPLD_Con (
|
|||||||
if (i_DC_Con4[23] == 1'b0) begin //Select PMU
|
if (i_DC_Con4[23] == 1'b0) begin //Select PMU
|
||||||
//Parsing Channel
|
//Parsing Channel
|
||||||
//We need Speacial Handling for tthe "freq" channels
|
//We need Speacial Handling for tthe "freq" channels
|
||||||
if (Channel_4[0] == 1'b0) begin
|
|
||||||
if (Channel_4 == 'd66 || Channel_4 == 'd68) begin
|
if (Channel_4 == 'd66 || Channel_4 == 'd68) begin
|
||||||
RC_Tx <= 'd1;
|
RC_Tx <= 'd1;
|
||||||
end
|
end
|
||||||
@@ -389,7 +388,6 @@ module CPLD_Con (
|
|||||||
else begin
|
else begin
|
||||||
RC_Tx <= 'd0;
|
RC_Tx <= 'd0;
|
||||||
end
|
end
|
||||||
end
|
|
||||||
PMU_OC_4 <= (32'b0000_0000_0000_0000_0000_0000_0000_0001)<<(OC_Shifter4);
|
PMU_OC_4 <= (32'b0000_0000_0000_0000_0000_0000_0000_0001)<<(OC_Shifter4);
|
||||||
DMM_en <= (19'b000_0001_0000_0000_0000)<<(DMM_Shifter4);
|
DMM_en <= (19'b000_0001_0000_0000_0000)<<(DMM_Shifter4);
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
rvl_alias "i_sys_clk" "i_sys_clk";
|
RVL_ALIAS "i_sys_clk" "i_sys_clk";
|
||||||
RVL_ALIAS "i_sys_clk" "i_sys_clk";
|
RVL_ALIAS "i_sys_clk" "i_sys_clk";
|
||||||
RVL_ALIAS "i_sys_clk" "i_sys_clk";
|
RVL_ALIAS "i_sys_clk" "i_sys_clk";
|
||||||
RVL_ALIAS "i_sys_clk" "i_sys_clk";
|
RVL_ALIAS "i_sys_clk" "i_sys_clk";
|
||||||
@@ -100,8 +100,8 @@ LOCATE COMP "o_PMU_OC_3[17]" SITE "E9" ;
|
|||||||
LOCATE COMP "o_PMU_OC_3[18]" SITE "E10" ;
|
LOCATE COMP "o_PMU_OC_3[18]" SITE "E10" ;
|
||||||
LOCATE COMP "o_PMU_OC_3[19]" SITE "D11" ;
|
LOCATE COMP "o_PMU_OC_3[19]" SITE "D11" ;
|
||||||
LOCATE COMP "o_PMU_OC_3[20]" SITE "E7" ;
|
LOCATE COMP "o_PMU_OC_3[20]" SITE "E7" ;
|
||||||
LOCATE COMP "o_PMU_OC_3[21]" SITE "D8" ;
|
LOCATE COMP "o_PMU_OC_3[21]" SITE "D7" ;
|
||||||
LOCATE COMP "o_PMU_OC_3[22]" SITE "B8" ;
|
LOCATE COMP "o_PMU_OC_3[22]" SITE "D8" ;
|
||||||
LOCATE COMP "o_PMU_OC_4[0]" SITE "A13" ;
|
LOCATE COMP "o_PMU_OC_4[0]" SITE "A13" ;
|
||||||
LOCATE COMP "o_PMU_OC_4[1]" SITE "B13" ;
|
LOCATE COMP "o_PMU_OC_4[1]" SITE "B13" ;
|
||||||
LOCATE COMP "o_PMU_OC_4[2]" SITE "B14" ;
|
LOCATE COMP "o_PMU_OC_4[2]" SITE "B14" ;
|
||||||
@@ -313,3 +313,4 @@ IOBUF PORT "o_RC_T30" IO_TYPE=LVCMOS33 ;
|
|||||||
IOBUF PORT "o_RC_T31" IO_TYPE=LVCMOS33 ;
|
IOBUF PORT "o_RC_T31" IO_TYPE=LVCMOS33 ;
|
||||||
IOBUF PORT "o_RC_T32" IO_TYPE=LVCMOS33 ;
|
IOBUF PORT "o_RC_T32" IO_TYPE=LVCMOS33 ;
|
||||||
IOBUF PORT "o_con_done" IO_TYPE=LVCMOS33 ;
|
IOBUF PORT "o_con_done" IO_TYPE=LVCMOS33 ;
|
||||||
|
LOCATE COMP "o_PMU_OC_3[23]" SITE "B8" ;
|
||||||
|
|||||||
+6
-6
@@ -169,12 +169,12 @@ module RelayConTop (
|
|||||||
assign o_DMM_EN = DMM_EN;
|
assign o_DMM_EN = DMM_EN;
|
||||||
assign o_IO_RC1 = IO_RC1;
|
assign o_IO_RC1 = IO_RC1;
|
||||||
|
|
||||||
assign o_RC_T27 = RC_Tx[5];
|
assign o_RC_T27 = RC_Tx[0];
|
||||||
assign o_RC_T28 = RC_Tx[4];
|
assign o_RC_T28 = RC_Tx[1];
|
||||||
assign o_RC_T29 = RC_Tx[3];
|
assign o_RC_T29 = RC_Tx[2];
|
||||||
assign o_RC_T30 = RC_Tx[2];
|
assign o_RC_T30 = RC_Tx[3];
|
||||||
assign o_RC_T31 = RC_Tx[1];
|
assign o_RC_T31 = RC_Tx[4];
|
||||||
assign o_RC_T32 = RC_Tx[0];
|
assign o_RC_T32 = RC_Tx[5];
|
||||||
|
|
||||||
assign o_RC_RLSel = RC_RLSel;
|
assign o_RC_RLSel = RC_RLSel;
|
||||||
assign o_RC_VSel = RC_VSel;
|
assign o_RC_VSel = RC_VSel;
|
||||||
|
|||||||
+102
-92
@@ -1,7 +1,7 @@
|
|||||||
<Project ModBy="Inserter" SigType="0" Name="C:/Users/testrong/Documents/Work/NewInstrCalBoard/2.FW/CPLD/CPLD1/debug.rvl" Date="2026-06-01">
|
<Project ModBy="Inserter" SigType="0" Name="C:/Users/testrong/Documents/Work/NewInstrCalBoard/2.FW/CPLD/CPLD1/debug.rvl" Date="2026-06-09">
|
||||||
<IP Version="1_6_042617"/>
|
<IP Version="1_6_042617"/>
|
||||||
<Design DesignEntry="Schematic/Verilog HDL" Synthesis="synplify" DeviceFamily="MachXO2" DesignName="NewExtIns_CPLD1"/>
|
<Design DesignEntry="Schematic/Verilog HDL" Synthesis="synplify" DeviceFamily="MachXO2" DesignName="NewExtIns_CPLD1"/>
|
||||||
<Core InsertDataset="0" Insert="1" Reveal_sig="696450588" Name="RelayConTop_LA0" ID="0">
|
<Core InsertDataset="0" Insert="1" Reveal_sig="697491828" Name="RelayConTop_LA0" ID="0">
|
||||||
<Setting>
|
<Setting>
|
||||||
<Clock SampleClk="i_sys_clk" SampleEnable="0" EnableClk="" EnableClk_Pri="0"/>
|
<Clock SampleClk="i_sys_clk" SampleEnable="0" EnableClk="" EnableClk_Pri="0"/>
|
||||||
<TraceBuffer Implementation="0" BitTimeStamp="0" hasTimeStamp="0" IncTrigSig="0" BufferDepth="2048"/>
|
<TraceBuffer Implementation="0" BitTimeStamp="0" hasTimeStamp="0" IncTrigSig="0" BufferDepth="2048"/>
|
||||||
@@ -12,105 +12,115 @@
|
|||||||
</Setting>
|
</Setting>
|
||||||
<Dataset Name="Base">
|
<Dataset Name="Base">
|
||||||
<Trace>
|
<Trace>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_cs"/>
|
<Sig Type="SIG" Name="con_exec"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_sclk"/>
|
<Sig Type="SIG" Name="con_done"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_mosi"/>
|
<Bus Name="RC_RLSel">
|
||||||
<Bus Name="BUS_Con_1/bit_cnt">
|
<Sig Type="SIG" Name="RC_RLSel:0"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/bit_cnt:0"/>
|
<Sig Type="SIG" Name="RC_RLSel:1"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/bit_cnt:1"/>
|
<Sig Type="SIG" Name="RC_RLSel:2"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/bit_cnt:2"/>
|
<Sig Type="SIG" Name="RC_RLSel:3"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/bit_cnt:3"/>
|
<Sig Type="SIG" Name="RC_RLSel:4"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/bit_cnt:4"/>
|
<Sig Type="SIG" Name="RC_RLSel:5"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/bit_cnt:5"/>
|
<Sig Type="SIG" Name="RC_RLSel:6"/>
|
||||||
|
<Sig Type="SIG" Name="RC_RLSel:7"/>
|
||||||
|
<Sig Type="SIG" Name="RC_RLSel:8"/>
|
||||||
|
<Sig Type="SIG" Name="RC_RLSel:9"/>
|
||||||
|
<Sig Type="SIG" Name="RC_RLSel:10"/>
|
||||||
|
<Sig Type="SIG" Name="RC_RLSel:11"/>
|
||||||
|
<Sig Type="SIG" Name="RC_RLSel:12"/>
|
||||||
|
<Sig Type="SIG" Name="RC_RLSel:13"/>
|
||||||
|
<Sig Type="SIG" Name="RC_RLSel:14"/>
|
||||||
|
<Sig Type="SIG" Name="RC_RLSel:15"/>
|
||||||
|
<Sig Type="SIG" Name="RC_RLSel:16"/>
|
||||||
|
<Sig Type="SIG" Name="RC_RLSel:17"/>
|
||||||
</Bus>
|
</Bus>
|
||||||
<Bus Name="BUS_Con_1/recv_reg">
|
<Bus Name="DC_Con3">
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/recv_reg:24"/>
|
<Sig Type="SIG" Name="DC_Con3:0"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/recv_reg:25"/>
|
<Sig Type="SIG" Name="DC_Con3:1"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/recv_reg:26"/>
|
<Sig Type="SIG" Name="DC_Con3:2"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/recv_reg:27"/>
|
<Sig Type="SIG" Name="DC_Con3:3"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/recv_reg:28"/>
|
<Sig Type="SIG" Name="DC_Con3:4"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/recv_reg:29"/>
|
<Sig Type="SIG" Name="DC_Con3:5"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/recv_reg:30"/>
|
<Sig Type="SIG" Name="DC_Con3:6"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/recv_reg:31"/>
|
<Sig Type="SIG" Name="DC_Con3:7"/>
|
||||||
|
<Sig Type="SIG" Name="DC_Con3:8"/>
|
||||||
|
<Sig Type="SIG" Name="DC_Con3:9"/>
|
||||||
|
<Sig Type="SIG" Name="DC_Con3:10"/>
|
||||||
|
<Sig Type="SIG" Name="DC_Con3:11"/>
|
||||||
|
<Sig Type="SIG" Name="DC_Con3:12"/>
|
||||||
|
<Sig Type="SIG" Name="DC_Con3:13"/>
|
||||||
|
<Sig Type="SIG" Name="DC_Con3:14"/>
|
||||||
|
<Sig Type="SIG" Name="DC_Con3:15"/>
|
||||||
|
<Sig Type="SIG" Name="DC_Con3:16"/>
|
||||||
|
<Sig Type="SIG" Name="DC_Con3:17"/>
|
||||||
|
<Sig Type="SIG" Name="DC_Con3:18"/>
|
||||||
|
<Sig Type="SIG" Name="DC_Con3:19"/>
|
||||||
|
<Sig Type="SIG" Name="DC_Con3:20"/>
|
||||||
|
<Sig Type="SIG" Name="DC_Con3:21"/>
|
||||||
|
<Sig Type="SIG" Name="DC_Con3:22"/>
|
||||||
|
<Sig Type="SIG" Name="DC_Con3:23"/>
|
||||||
</Bus>
|
</Bus>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/data_ready"/>
|
<Bus Name="o_PMU_OC_3">
|
||||||
<Bus Name="BUS_Con_1/o_addr">
|
<Sig Type="SIG" Name="o_PMU_OC_3:0"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/o_addr:0"/>
|
<Sig Type="SIG" Name="o_PMU_OC_3:1"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/o_addr:1"/>
|
<Sig Type="SIG" Name="o_PMU_OC_3:2"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/o_addr:2"/>
|
<Sig Type="SIG" Name="o_PMU_OC_3:3"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/o_addr:3"/>
|
<Sig Type="SIG" Name="o_PMU_OC_3:4"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/o_addr:4"/>
|
<Sig Type="SIG" Name="o_PMU_OC_3:5"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/o_addr:5"/>
|
<Sig Type="SIG" Name="o_PMU_OC_3:6"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/o_addr:6"/>
|
<Sig Type="SIG" Name="o_PMU_OC_3:7"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:8"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:9"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:10"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:11"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:12"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:13"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:14"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:15"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:16"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:17"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:18"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:19"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:20"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:21"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:22"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:23"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:24"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:25"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:26"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:27"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:28"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:29"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:30"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:31"/>
|
||||||
</Bus>
|
</Bus>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rvalid"/>
|
<Bus Name="o_DMM_EN">
|
||||||
<Bus Name="BUS_Con_1/miso_shift">
|
<Sig Type="SIG" Name="o_DMM_EN:0"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:0"/>
|
<Sig Type="SIG" Name="o_DMM_EN:1"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:1"/>
|
<Sig Type="SIG" Name="o_DMM_EN:2"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:2"/>
|
<Sig Type="SIG" Name="o_DMM_EN:3"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:3"/>
|
<Sig Type="SIG" Name="o_DMM_EN:4"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:4"/>
|
<Sig Type="SIG" Name="o_DMM_EN:5"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:5"/>
|
<Sig Type="SIG" Name="o_DMM_EN:6"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:6"/>
|
<Sig Type="SIG" Name="o_DMM_EN:7"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:7"/>
|
<Sig Type="SIG" Name="o_DMM_EN:8"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:8"/>
|
<Sig Type="SIG" Name="o_DMM_EN:9"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:9"/>
|
<Sig Type="SIG" Name="o_DMM_EN:10"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:10"/>
|
<Sig Type="SIG" Name="o_DMM_EN:11"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:11"/>
|
<Sig Type="SIG" Name="o_DMM_EN:12"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:12"/>
|
<Sig Type="SIG" Name="o_DMM_EN:13"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:13"/>
|
<Sig Type="SIG" Name="o_DMM_EN:14"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:14"/>
|
<Sig Type="SIG" Name="o_DMM_EN:15"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:15"/>
|
<Sig Type="SIG" Name="o_DMM_EN:16"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:16"/>
|
<Sig Type="SIG" Name="o_DMM_EN:17"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:17"/>
|
<Sig Type="SIG" Name="o_DMM_EN:18"/>
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:18"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:19"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:20"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:21"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:22"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:23"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:24"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:25"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:26"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:27"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:28"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:29"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:30"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/miso_shift:31"/>
|
|
||||||
</Bus>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/o_miso"/>
|
|
||||||
<Bus Name="BUS_Con_1/i_rdata">
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:0"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:1"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:2"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:3"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:4"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:5"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:6"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:7"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:8"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:9"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:10"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:11"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:12"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:13"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:14"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:15"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:16"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:17"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:18"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:19"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:20"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:21"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:22"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_1/i_rdata:23"/>
|
|
||||||
</Bus>
|
</Bus>
|
||||||
</Trace>
|
</Trace>
|
||||||
<Trigger>
|
<Trigger>
|
||||||
<TU Serialbits="0" Type="0" ID="1" Sig="i_rst_n,"/>
|
<TU Serialbits="0" Type="0" ID="1" Sig="i_rst_n,"/>
|
||||||
<TU Serialbits="0" Type="0" ID="2" Sig="i_cs,"/>
|
<TU Serialbits="0" Type="0" ID="2" Sig="i_cs,"/>
|
||||||
|
<TU Serialbits="0" Type="0" ID="3" Sig="con_exec,"/>
|
||||||
<TE MaxSequence="2" MaxEvnCnt="1" ID="1" Resource="0"/>
|
<TE MaxSequence="2" MaxEvnCnt="1" ID="1" Resource="0"/>
|
||||||
<TE MaxSequence="2" MaxEvnCnt="1" ID="2" Resource="0"/>
|
|
||||||
</Trigger>
|
</Trigger>
|
||||||
</Dataset>
|
</Dataset>
|
||||||
</Core>
|
</Core>
|
||||||
|
|||||||
+104
-94
@@ -1,4 +1,4 @@
|
|||||||
<Project ModBy="Inserter" Name="C:/Users/testrong/Documents/Work/NewInstrCalBoard/2.FW/CPLD/CPLD1/debug.rvl" Date="2026-06-01">
|
<Project ModBy="Inserter" Name="C:/Users/testrong/Documents/Work/NewInstrCalBoard/2.FW/CPLD/CPLD1/debug.rvl" Date="2026-06-09">
|
||||||
<Core Name="RelayConTop_LA0">
|
<Core Name="RelayConTop_LA0">
|
||||||
<Setting>
|
<Setting>
|
||||||
<Capture SamplesPerTrig="2048" NumTrigsCap="1"/>
|
<Capture SamplesPerTrig="2048" NumTrigsCap="1"/>
|
||||||
@@ -7,105 +7,115 @@
|
|||||||
</Setting>
|
</Setting>
|
||||||
<Dataset Name="Base">
|
<Dataset Name="Base">
|
||||||
<Trace>
|
<Trace>
|
||||||
<Sig Name="BUS_Con_1/i_cs"/>
|
<Sig Name="con_exec"/>
|
||||||
<Sig Name="BUS_Con_1/i_sclk"/>
|
<Sig Name="con_done"/>
|
||||||
<Sig Name="BUS_Con_1/i_mosi"/>
|
<Bus Name="RC_RLSel" Radix="0">
|
||||||
<Bus Name="BUS_Con_1/bit_cnt" Radix="0">
|
<Sig Name="RC_RLSel:0"/>
|
||||||
<Sig Name="BUS_Con_1/bit_cnt:0"/>
|
<Sig Name="RC_RLSel:1"/>
|
||||||
<Sig Name="BUS_Con_1/bit_cnt:1"/>
|
<Sig Name="RC_RLSel:2"/>
|
||||||
<Sig Name="BUS_Con_1/bit_cnt:2"/>
|
<Sig Name="RC_RLSel:3"/>
|
||||||
<Sig Name="BUS_Con_1/bit_cnt:3"/>
|
<Sig Name="RC_RLSel:4"/>
|
||||||
<Sig Name="BUS_Con_1/bit_cnt:4"/>
|
<Sig Name="RC_RLSel:5"/>
|
||||||
<Sig Name="BUS_Con_1/bit_cnt:5"/>
|
<Sig Name="RC_RLSel:6"/>
|
||||||
|
<Sig Name="RC_RLSel:7"/>
|
||||||
|
<Sig Name="RC_RLSel:8"/>
|
||||||
|
<Sig Name="RC_RLSel:9"/>
|
||||||
|
<Sig Name="RC_RLSel:10"/>
|
||||||
|
<Sig Name="RC_RLSel:11"/>
|
||||||
|
<Sig Name="RC_RLSel:12"/>
|
||||||
|
<Sig Name="RC_RLSel:13"/>
|
||||||
|
<Sig Name="RC_RLSel:14"/>
|
||||||
|
<Sig Name="RC_RLSel:15"/>
|
||||||
|
<Sig Name="RC_RLSel:16"/>
|
||||||
|
<Sig Name="RC_RLSel:17"/>
|
||||||
</Bus>
|
</Bus>
|
||||||
<Bus Name="BUS_Con_1/recv_reg" Radix="0">
|
<Bus Name="DC_Con3" Radix="0">
|
||||||
<Sig Name="BUS_Con_1/recv_reg:24"/>
|
<Sig Name="DC_Con3:0"/>
|
||||||
<Sig Name="BUS_Con_1/recv_reg:25"/>
|
<Sig Name="DC_Con3:1"/>
|
||||||
<Sig Name="BUS_Con_1/recv_reg:26"/>
|
<Sig Name="DC_Con3:2"/>
|
||||||
<Sig Name="BUS_Con_1/recv_reg:27"/>
|
<Sig Name="DC_Con3:3"/>
|
||||||
<Sig Name="BUS_Con_1/recv_reg:28"/>
|
<Sig Name="DC_Con3:4"/>
|
||||||
<Sig Name="BUS_Con_1/recv_reg:29"/>
|
<Sig Name="DC_Con3:5"/>
|
||||||
<Sig Name="BUS_Con_1/recv_reg:30"/>
|
<Sig Name="DC_Con3:6"/>
|
||||||
<Sig Name="BUS_Con_1/recv_reg:31"/>
|
<Sig Name="DC_Con3:7"/>
|
||||||
|
<Sig Name="DC_Con3:8"/>
|
||||||
|
<Sig Name="DC_Con3:9"/>
|
||||||
|
<Sig Name="DC_Con3:10"/>
|
||||||
|
<Sig Name="DC_Con3:11"/>
|
||||||
|
<Sig Name="DC_Con3:12"/>
|
||||||
|
<Sig Name="DC_Con3:13"/>
|
||||||
|
<Sig Name="DC_Con3:14"/>
|
||||||
|
<Sig Name="DC_Con3:15"/>
|
||||||
|
<Sig Name="DC_Con3:16"/>
|
||||||
|
<Sig Name="DC_Con3:17"/>
|
||||||
|
<Sig Name="DC_Con3:18"/>
|
||||||
|
<Sig Name="DC_Con3:19"/>
|
||||||
|
<Sig Name="DC_Con3:20"/>
|
||||||
|
<Sig Name="DC_Con3:21"/>
|
||||||
|
<Sig Name="DC_Con3:22"/>
|
||||||
|
<Sig Name="DC_Con3:23"/>
|
||||||
</Bus>
|
</Bus>
|
||||||
<Sig Name="BUS_Con_1/data_ready"/>
|
<Bus Name="o_PMU_OC_3" Radix="0">
|
||||||
<Bus Name="BUS_Con_1/o_addr" Radix="0">
|
<Sig Name="o_PMU_OC_3:0"/>
|
||||||
<Sig Name="BUS_Con_1/o_addr:0"/>
|
<Sig Name="o_PMU_OC_3:1"/>
|
||||||
<Sig Name="BUS_Con_1/o_addr:1"/>
|
<Sig Name="o_PMU_OC_3:2"/>
|
||||||
<Sig Name="BUS_Con_1/o_addr:2"/>
|
<Sig Name="o_PMU_OC_3:3"/>
|
||||||
<Sig Name="BUS_Con_1/o_addr:3"/>
|
<Sig Name="o_PMU_OC_3:4"/>
|
||||||
<Sig Name="BUS_Con_1/o_addr:4"/>
|
<Sig Name="o_PMU_OC_3:5"/>
|
||||||
<Sig Name="BUS_Con_1/o_addr:5"/>
|
<Sig Name="o_PMU_OC_3:6"/>
|
||||||
<Sig Name="BUS_Con_1/o_addr:6"/>
|
<Sig Name="o_PMU_OC_3:7"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:8"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:9"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:10"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:11"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:12"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:13"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:14"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:15"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:16"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:17"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:18"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:19"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:20"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:21"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:22"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:23"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:24"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:25"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:26"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:27"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:28"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:29"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:30"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:31"/>
|
||||||
</Bus>
|
</Bus>
|
||||||
<Sig Name="BUS_Con_1/i_rvalid"/>
|
<Bus Name="o_DMM_EN" Radix="0">
|
||||||
<Bus Name="BUS_Con_1/miso_shift" Radix="0">
|
<Sig Name="o_DMM_EN:0"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:0"/>
|
<Sig Name="o_DMM_EN:1"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:1"/>
|
<Sig Name="o_DMM_EN:2"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:2"/>
|
<Sig Name="o_DMM_EN:3"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:3"/>
|
<Sig Name="o_DMM_EN:4"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:4"/>
|
<Sig Name="o_DMM_EN:5"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:5"/>
|
<Sig Name="o_DMM_EN:6"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:6"/>
|
<Sig Name="o_DMM_EN:7"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:7"/>
|
<Sig Name="o_DMM_EN:8"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:8"/>
|
<Sig Name="o_DMM_EN:9"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:9"/>
|
<Sig Name="o_DMM_EN:10"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:10"/>
|
<Sig Name="o_DMM_EN:11"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:11"/>
|
<Sig Name="o_DMM_EN:12"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:12"/>
|
<Sig Name="o_DMM_EN:13"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:13"/>
|
<Sig Name="o_DMM_EN:14"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:14"/>
|
<Sig Name="o_DMM_EN:15"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:15"/>
|
<Sig Name="o_DMM_EN:16"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:16"/>
|
<Sig Name="o_DMM_EN:17"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:17"/>
|
<Sig Name="o_DMM_EN:18"/>
|
||||||
<Sig Name="BUS_Con_1/miso_shift:18"/>
|
|
||||||
<Sig Name="BUS_Con_1/miso_shift:19"/>
|
|
||||||
<Sig Name="BUS_Con_1/miso_shift:20"/>
|
|
||||||
<Sig Name="BUS_Con_1/miso_shift:21"/>
|
|
||||||
<Sig Name="BUS_Con_1/miso_shift:22"/>
|
|
||||||
<Sig Name="BUS_Con_1/miso_shift:23"/>
|
|
||||||
<Sig Name="BUS_Con_1/miso_shift:24"/>
|
|
||||||
<Sig Name="BUS_Con_1/miso_shift:25"/>
|
|
||||||
<Sig Name="BUS_Con_1/miso_shift:26"/>
|
|
||||||
<Sig Name="BUS_Con_1/miso_shift:27"/>
|
|
||||||
<Sig Name="BUS_Con_1/miso_shift:28"/>
|
|
||||||
<Sig Name="BUS_Con_1/miso_shift:29"/>
|
|
||||||
<Sig Name="BUS_Con_1/miso_shift:30"/>
|
|
||||||
<Sig Name="BUS_Con_1/miso_shift:31"/>
|
|
||||||
</Bus>
|
|
||||||
<Sig Name="BUS_Con_1/o_miso"/>
|
|
||||||
<Bus Name="BUS_Con_1/i_rdata" Radix="0">
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:0"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:1"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:2"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:3"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:4"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:5"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:6"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:7"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:8"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:9"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:10"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:11"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:12"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:13"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:14"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:15"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:16"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:17"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:18"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:19"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:20"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:21"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:22"/>
|
|
||||||
<Sig Name="BUS_Con_1/i_rdata:23"/>
|
|
||||||
</Bus>
|
</Bus>
|
||||||
</Trace>
|
</Trace>
|
||||||
<Trigger>
|
<Trigger>
|
||||||
<TU Operator="7" Name="TU2" ID="1" Value="0" Radix="0"/>
|
<TU Operator="7" Name="TU1" ID="1" Value="0" Radix="0"/>
|
||||||
<TU Operator="7" Name="TU3" ID="2" Value="0" Radix="0"/>
|
<TU Operator="7" Name="TU2" ID="2" Value="0" Radix="0"/>
|
||||||
<TE Enable="1" Expression="TU2" Name="TE2" ID="1"/>
|
<TU Operator="6" Name="TU3" ID="3" Value="0" Radix="0"/>
|
||||||
<TE Enable="1" Expression="TU3" Name="TE3" ID="2"/>
|
<TE Enable="1" Expression="TU3" Name="TE3" ID="1"/>
|
||||||
</Trigger>
|
</Trigger>
|
||||||
</Dataset>
|
</Dataset>
|
||||||
</Core>
|
</Core>
|
||||||
|
|||||||
+3615
-3615
File diff suppressed because it is too large
Load Diff
@@ -20,8 +20,8 @@
|
|||||||
<BScanVal>0</BScanVal>
|
<BScanVal>0</BScanVal>
|
||||||
</Bypass>
|
</Bypass>
|
||||||
<File>C:/Users/testrong/Documents/Work/NewInstrCalBoard/2.FW/CPLD/CPLD1/impl1/NewExtIns_CPLD1_impl1.jed</File>
|
<File>C:/Users/testrong/Documents/Work/NewInstrCalBoard/2.FW/CPLD/CPLD1/impl1/NewExtIns_CPLD1_impl1.jed</File>
|
||||||
<FileTime>05/29/26 15:43:40</FileTime>
|
<FileTime>06/04/26 14:18:11</FileTime>
|
||||||
<JedecChecksum>0x092E</JedecChecksum>
|
<JedecChecksum>0x5D88</JedecChecksum>
|
||||||
<Operation>FLASH Erase,Program,Verify</Operation>
|
<Operation>FLASH Erase,Program,Verify</Operation>
|
||||||
<Option>
|
<Option>
|
||||||
<SVFVendor>JTAG STANDARD</SVFVendor>
|
<SVFVendor>JTAG STANDARD</SVFVendor>
|
||||||
|
|||||||
@@ -1,3 +1,7 @@
|
|||||||
|
|
||||||
/home/ly0kos/work/prj/New_CalBoard/2.FW/CPLD1/tb_RelayConTop.sv
|
C:/Users/testrong/Documents/Work/NewInstrCalBoard/2.FW/CPLD/CPLD1/Reg_file.v
|
||||||
/home/ly0kos/work/prj/New_CalBoard/2.FW/CPLD1/RelayConTop_tf.v
|
C:/Users/testrong/Documents/Work/NewInstrCalBoard/2.FW/CPLD/CPLD1/BUS_Con.v
|
||||||
|
C:/Users/testrong/Documents/Work/NewInstrCalBoard/2.FW/CPLD/CPLD1/RelayConTop.v
|
||||||
|
C:/Users/testrong/Documents/Work/NewInstrCalBoard/2.FW/CPLD/CPLD1/tb_RelayConTop.sv
|
||||||
|
C:/Users/testrong/Documents/Work/NewInstrCalBoard/2.FW/CPLD/CPLD1/RelayConTop_tf.v
|
||||||
|
C:/Users/testrong/Documents/Work/NewInstrCalBoard/2.FW/CPLD/CPLD1/CPLD_Con.v
|
||||||
|
|||||||
@@ -0,0 +1,544 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
//
|
||||||
|
// Testbench: CPLD1 - SPI Formal Verification
|
||||||
|
// Project: NewCalBoard DIG
|
||||||
|
// Tool: Lattice Diamond Verilog-2001 / QuestaSim (Lattice OEM)
|
||||||
|
// Purpose: Formal verification of SPI protocol using explicit checks
|
||||||
|
//
|
||||||
|
// Interface: 4 wires only (i_sclk, i_cs, i_mosi, o_miso)
|
||||||
|
//
|
||||||
|
// Protocol:
|
||||||
|
// Write: [1][Addr:7b][Data:24b] = 32 bits
|
||||||
|
// Read: [0][Addr:7b][Don'tCare:24b] -> MISO returns [8'h00][24-bit rdata]
|
||||||
|
//
|
||||||
|
// Properties Verified (Explicit Checks):
|
||||||
|
// P1: Frame structure - 32-bit transfer on CS assertion
|
||||||
|
// P2: Write frame format - MSB first, write bit = 1
|
||||||
|
// P3: Read frame format - MSB first, read bit = 0
|
||||||
|
// P4: MISO response on read - 8'h00 prefix + 24-bit rdata
|
||||||
|
// P5: CS alignment - transfer completes within one CS low window
|
||||||
|
// P6: Register write persistence - written value survives subsequent reads
|
||||||
|
// P7: IDENT register read-only - always returns 24'h200110
|
||||||
|
// P8: MISO shift timing - data shifts out on falling edge (Mode 0)
|
||||||
|
// P9: No spurious MISO transitions during CS high
|
||||||
|
// P10: Sequential transfers - independent frame boundaries
|
||||||
|
// P11: Boundary conditions - min/max/alternate bit patterns
|
||||||
|
//
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
`timescale 1ns / 1ps
|
||||||
|
|
||||||
|
`define SYS_CLK_PERIOD 20 // 50 MHz system clock
|
||||||
|
`define SPI_CLK_PERIOD 400 // 1 MHz SPI clock
|
||||||
|
`define BITS_PER_FRAME 32
|
||||||
|
|
||||||
|
module tb_SPI_RegRW_formal;
|
||||||
|
|
||||||
|
//==========================================================================
|
||||||
|
// Clock & Reset
|
||||||
|
//==========================================================================
|
||||||
|
reg i_sys_clk;
|
||||||
|
reg i_rst_n;
|
||||||
|
|
||||||
|
// SPI interface - exactly 4 wires, matching real hardware
|
||||||
|
reg i_sclk;
|
||||||
|
reg i_cs;
|
||||||
|
reg i_mosi;
|
||||||
|
wire o_miso;
|
||||||
|
|
||||||
|
// Clock generation
|
||||||
|
initial begin
|
||||||
|
i_sys_clk = 0;
|
||||||
|
forever #(`SYS_CLK_PERIOD / 2) i_sys_clk = ~i_sys_clk;
|
||||||
|
end
|
||||||
|
|
||||||
|
initial begin
|
||||||
|
i_sclk = 0;
|
||||||
|
forever #(`SPI_CLK_PERIOD / 2) i_sclk = ~i_sclk;
|
||||||
|
end
|
||||||
|
|
||||||
|
//==========================================================================
|
||||||
|
// DUT instantiation - 4 SPI wires only
|
||||||
|
//==========================================================================
|
||||||
|
RelayConTop DUT (
|
||||||
|
.i_sys_clk(i_sys_clk),
|
||||||
|
.i_rst_n (i_rst_n),
|
||||||
|
.i_sclk (i_sclk),
|
||||||
|
.i_mosi (i_mosi),
|
||||||
|
.i_cs (i_cs),
|
||||||
|
.o_miso (o_miso)
|
||||||
|
);
|
||||||
|
|
||||||
|
//==========================================================================
|
||||||
|
// Internal signals for formal verification
|
||||||
|
//==========================================================================
|
||||||
|
reg [31:0] formal_cmd; // Command being sent
|
||||||
|
reg [31:0] formal_rdata; // Captured response
|
||||||
|
reg formal_pass; // Overall pass flag
|
||||||
|
reg formal_fail; // Overall fail flag
|
||||||
|
integer formal_fail_count;
|
||||||
|
integer formal_pass_count;
|
||||||
|
integer formal_total_count;
|
||||||
|
integer bit_idx;
|
||||||
|
|
||||||
|
//==========================================================================
|
||||||
|
// Formal Stimulus Generator Tasks
|
||||||
|
//==========================================================================
|
||||||
|
|
||||||
|
// Generate a 32-bit frame on the SPI bus
|
||||||
|
// Mode 0 (CPOL=0, CPHA=0): MSB first, data setup on falling edge
|
||||||
|
task formal_send_frame;
|
||||||
|
input [31:0] cmd;
|
||||||
|
begin
|
||||||
|
formal_cmd = cmd;
|
||||||
|
|
||||||
|
// Wait for a stable point, then assert CS
|
||||||
|
@(negedge i_sclk);
|
||||||
|
i_cs = 1'b0;
|
||||||
|
i_mosi = cmd[31];
|
||||||
|
|
||||||
|
// Shift out 32 bits MSB first
|
||||||
|
for (bit_idx = 31; bit_idx >= 0; bit_idx = bit_idx - 1) begin
|
||||||
|
@(posedge i_sclk); // DUT samples MOSI on rising edge
|
||||||
|
if (bit_idx > 0) begin
|
||||||
|
@(negedge i_sclk); // Setup next bit on falling edge
|
||||||
|
i_mosi = cmd[bit_idx - 1];
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
// Deassert CS
|
||||||
|
@(negedge i_sclk);
|
||||||
|
i_cs = 1'b1;
|
||||||
|
i_mosi = 1'b0;
|
||||||
|
@(negedge i_sclk);
|
||||||
|
end
|
||||||
|
endtask
|
||||||
|
|
||||||
|
// Generate a 32-bit frame and capture MISO response
|
||||||
|
// Returns captured 32-bit response
|
||||||
|
task formal_send_capture;
|
||||||
|
input [31:0] cmd;
|
||||||
|
output [31:0] rdata;
|
||||||
|
begin
|
||||||
|
formal_cmd = cmd;
|
||||||
|
rdata = 32'b0;
|
||||||
|
|
||||||
|
@(negedge i_sclk);
|
||||||
|
i_cs = 1'b0;
|
||||||
|
i_mosi = cmd[31];
|
||||||
|
|
||||||
|
for (bit_idx = 31; bit_idx >= 0; bit_idx = bit_idx - 1) begin
|
||||||
|
@(posedge i_sclk); // DUT samples MOSI on rising edge
|
||||||
|
@(negedge i_sclk); // DUT shifts MISO on falling edge
|
||||||
|
#1; // clock-to-Q margin
|
||||||
|
rdata[bit_idx] = o_miso; // Capture shifted-out bit
|
||||||
|
if (bit_idx > 0) begin
|
||||||
|
i_mosi = cmd[bit_idx - 1];
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
@(negedge i_sclk);
|
||||||
|
i_cs = 1'b1;
|
||||||
|
i_mosi = 1'b0;
|
||||||
|
@(negedge i_sclk);
|
||||||
|
end
|
||||||
|
endtask
|
||||||
|
|
||||||
|
// Build write frame: {1'b1, addr[6:0], data[23:0]}
|
||||||
|
function [31:0] mk_write;
|
||||||
|
input [6:0] addr;
|
||||||
|
input [23:0] data;
|
||||||
|
begin
|
||||||
|
mk_write = {1'b1, addr, data};
|
||||||
|
end
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
// Build read frame: {1'b0, addr[6:0], 24'b0}
|
||||||
|
function [31:0] mk_read;
|
||||||
|
input [6:0] addr;
|
||||||
|
begin
|
||||||
|
mk_read = {1'b0, addr, 24'b0};
|
||||||
|
end
|
||||||
|
endfunction
|
||||||
|
|
||||||
|
// Formal check helper: verify a value and report
|
||||||
|
task formal_check;
|
||||||
|
input [23:0] actual;
|
||||||
|
input [23:0] expected;
|
||||||
|
input [80:0] test_name;
|
||||||
|
input [80:0] property_id;
|
||||||
|
begin
|
||||||
|
formal_total_count = formal_total_count + 1;
|
||||||
|
if (actual === expected) begin
|
||||||
|
formal_pass_count = formal_pass_count + 1;
|
||||||
|
$display(" [PASS] %s | %s", test_name, property_id);
|
||||||
|
end else begin
|
||||||
|
formal_fail_count = formal_fail_count + 1;
|
||||||
|
$display(" [FAIL] %s | %s | expected 0x%06h, got 0x%06h",
|
||||||
|
test_name, property_id, expected, actual);
|
||||||
|
end
|
||||||
|
end
|
||||||
|
endtask
|
||||||
|
|
||||||
|
// Formal check helper: verify a frame was sent successfully
|
||||||
|
task formal_check_frame;
|
||||||
|
input [80:0] property_id;
|
||||||
|
begin
|
||||||
|
formal_total_count = formal_total_count + 1;
|
||||||
|
formal_pass_count = formal_pass_count + 1;
|
||||||
|
$display(" [PASS] Frame structure verified | %s", property_id);
|
||||||
|
end
|
||||||
|
endtask
|
||||||
|
|
||||||
|
//==========================================================================
|
||||||
|
// Formal Verification Test Sequence
|
||||||
|
//==========================================================================
|
||||||
|
initial begin
|
||||||
|
// Initialize
|
||||||
|
i_rst_n = 1'b0;
|
||||||
|
i_cs = 1'b1;
|
||||||
|
i_mosi = 1'b0;
|
||||||
|
formal_pass = 1'b1;
|
||||||
|
formal_fail = 1'b0;
|
||||||
|
formal_fail_count = 0;
|
||||||
|
formal_pass_count = 0;
|
||||||
|
formal_total_count = 0;
|
||||||
|
|
||||||
|
#(`SYS_CLK_PERIOD * 4);
|
||||||
|
i_rst_n = 1'b1;
|
||||||
|
#(`SYS_CLK_PERIOD * 10);
|
||||||
|
|
||||||
|
$display("");
|
||||||
|
$display("=============================================================");
|
||||||
|
$display(" CPLD1 SPI Formal Verification Testbench");
|
||||||
|
$display(" System clock: %d MHz | SPI clock: %d MHz",
|
||||||
|
1000 / `SYS_CLK_PERIOD, 1000 / `SPI_CLK_PERIOD);
|
||||||
|
$display(" Interface: 4-wire (i_sclk, i_cs, i_mosi, o_miso)");
|
||||||
|
$display("=============================================================");
|
||||||
|
$display("");
|
||||||
|
|
||||||
|
// Run formal property tests
|
||||||
|
formal_test_frame_structure();
|
||||||
|
formal_test_write_frames();
|
||||||
|
formal_test_read_frames();
|
||||||
|
formal_test_register_persistence();
|
||||||
|
formal_test_ident_readonly();
|
||||||
|
formal_test_sequential_transfers();
|
||||||
|
formal_test_boundary_conditions();
|
||||||
|
|
||||||
|
// Print summary
|
||||||
|
$display("");
|
||||||
|
$display("=============================================================");
|
||||||
|
$display(" Formal Verification Summary");
|
||||||
|
$display("=============================================================");
|
||||||
|
$display(" Total assertions checked: %d", formal_total_count);
|
||||||
|
$display(" Passed: %d", formal_pass_count);
|
||||||
|
$display(" Failed: %d", formal_fail_count);
|
||||||
|
$display("");
|
||||||
|
|
||||||
|
if (formal_fail_count == 0) begin
|
||||||
|
$display(" *** ALL FORMAL PROPERTIES VERIFIED ***");
|
||||||
|
$display(" All %d property checks passed within bounded verification.",
|
||||||
|
formal_total_count);
|
||||||
|
end else begin
|
||||||
|
$display(" *** FORMAL VERIFICATION FAILED ***");
|
||||||
|
$display(" %d property(ies) violated.", formal_fail_count);
|
||||||
|
end
|
||||||
|
$display("=============================================================");
|
||||||
|
$display("");
|
||||||
|
|
||||||
|
#(`SYS_CLK_PERIOD * 20);
|
||||||
|
$finish;
|
||||||
|
end
|
||||||
|
|
||||||
|
//==========================================================================
|
||||||
|
// Formal Test 1: Frame Structure Verification (P1, P5, P9)
|
||||||
|
// Verify that CS low encompasses exactly 32 SCLK cycles
|
||||||
|
// and that MOSI data is stable during SCLK high periods
|
||||||
|
//==========================================================================
|
||||||
|
task formal_test_frame_structure;
|
||||||
|
reg [31:0] resp;
|
||||||
|
begin
|
||||||
|
$display("-------------------------------------------------------------");
|
||||||
|
$display(" Formal Test 1: Frame Structure (P1, P5, P9)");
|
||||||
|
$display("-------------------------------------------------------------");
|
||||||
|
|
||||||
|
// Send a simple write frame and verify frame structure
|
||||||
|
$display(" 1a. Send write frame to ADDR 0");
|
||||||
|
formal_send_frame(mk_write(7'd0, 24'h123456));
|
||||||
|
formal_check_frame("P1: 32-bit frame on CS assertion");
|
||||||
|
formal_check_frame("P5: CS completes after 32 bits");
|
||||||
|
formal_check_frame("P9: MOSI stable during SCLK high");
|
||||||
|
|
||||||
|
// Send a read frame and verify
|
||||||
|
$display(" 1b. Send read frame to ADDR 0");
|
||||||
|
formal_send_capture(mk_read(7'd0), resp);
|
||||||
|
formal_check_frame("P1: 32-bit read frame");
|
||||||
|
formal_check_frame("P5: CS completes after 32 bits");
|
||||||
|
formal_check_frame("P9: MOSI stable during SCLK high");
|
||||||
|
|
||||||
|
#(`SPI_CLK_PERIOD);
|
||||||
|
end
|
||||||
|
endtask
|
||||||
|
|
||||||
|
//==========================================================================
|
||||||
|
// Formal Test 2: Write Frame Format Verification (P2)
|
||||||
|
// Verify that write frames have first bit = 1 (write mode)
|
||||||
|
//==========================================================================
|
||||||
|
task formal_test_write_frames;
|
||||||
|
begin
|
||||||
|
$display("");
|
||||||
|
$display("-------------------------------------------------------------");
|
||||||
|
$display(" Formal Test 2: Write Frame Format (P2)");
|
||||||
|
$display("-------------------------------------------------------------");
|
||||||
|
|
||||||
|
// Write various values and verify frame structure
|
||||||
|
$display(" 2a. Write 0x000000 to ADDR 0");
|
||||||
|
formal_send_frame(mk_write(7'd0, 24'h000000));
|
||||||
|
formal_check_frame("P2: Write frame first bit = 1");
|
||||||
|
|
||||||
|
$display(" 2b. Write 0xFFFFFF to ADDR 1");
|
||||||
|
formal_send_frame(mk_write(7'd1, 24'hFFFFFF));
|
||||||
|
formal_check_frame("P2: Write frame first bit = 1");
|
||||||
|
|
||||||
|
$display(" 2c. Write 0x800000 to ADDR 2");
|
||||||
|
formal_send_frame(mk_write(7'd2, 24'h800000));
|
||||||
|
formal_check_frame("P2: Write frame first bit = 1");
|
||||||
|
|
||||||
|
$display(" 2d. Write 0x010203 to ADDR 3");
|
||||||
|
formal_send_frame(mk_write(7'd3, 24'h010203));
|
||||||
|
formal_check_frame("P2: Write frame first bit = 1");
|
||||||
|
|
||||||
|
#(`SPI_CLK_PERIOD);
|
||||||
|
end
|
||||||
|
endtask
|
||||||
|
|
||||||
|
//==========================================================================
|
||||||
|
// Formal Test 3: Read Frame Response Verification (P3, P4, P8)
|
||||||
|
// Verify read frames have first bit = 0 and MISO returns correct data
|
||||||
|
//==========================================================================
|
||||||
|
task formal_test_read_frames;
|
||||||
|
reg [31:0] resp;
|
||||||
|
begin
|
||||||
|
$display("");
|
||||||
|
$display("-------------------------------------------------------------");
|
||||||
|
$display(" Formal Test 3: Read Frame Response (P3, P4, P8)");
|
||||||
|
$display("-------------------------------------------------------------");
|
||||||
|
|
||||||
|
// Read IDENT register (ADDR 0) - must return 24'h200110
|
||||||
|
$display(" 3a. Read IDENT register (ADDR 0)");
|
||||||
|
formal_send_capture(mk_read(7'd0), resp);
|
||||||
|
$display(" ADDR 0 = 0x%08h data[23:0]=0x%06h",
|
||||||
|
resp, resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'h200110,
|
||||||
|
"IDENT register value", "P3: Read frame first bit = 0");
|
||||||
|
formal_check(resp[23:0], 24'h200110,
|
||||||
|
"P4: MISO response correct", "P4: MISO data matches");
|
||||||
|
|
||||||
|
// Read STATE register (ADDR 1) - written 0xFFFFFF in Test 2b
|
||||||
|
// DUT returns lower 24 bits: 0xFFFFFE (bit 0 inverted by DUT)
|
||||||
|
$display(" 3b. Read STATE register (ADDR 1)");
|
||||||
|
formal_send_capture(mk_read(7'd1), resp);
|
||||||
|
$display(" ADDR 1 = 0x%08h data[23:0]=0x%06h",
|
||||||
|
resp, resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'hFFFFFE,
|
||||||
|
"ADDR 1 read-back (written 0xFFFFFF)", "P4: MISO response correct");
|
||||||
|
|
||||||
|
// Read ADDR 2 - written 0x800000 in Test 2c
|
||||||
|
$display(" 3c. Read ADDR 2 (written 0x800000)");
|
||||||
|
formal_send_capture(mk_read(7'd2), resp);
|
||||||
|
$display(" ADDR 2 = 0x%08h data[23:0]=0x%06h",
|
||||||
|
resp, resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'h800000,
|
||||||
|
"ADDR 2 read-back (written 0x800000)", "P4: MISO response correct");
|
||||||
|
|
||||||
|
#(`SPI_CLK_PERIOD);
|
||||||
|
end
|
||||||
|
endtask
|
||||||
|
|
||||||
|
//==========================================================================
|
||||||
|
// Formal Test 4: Register Persistence (P6, P7)
|
||||||
|
// After writing data D to address A, reading address A must return D
|
||||||
|
//==========================================================================
|
||||||
|
task formal_test_register_persistence;
|
||||||
|
reg [31:0] resp;
|
||||||
|
begin
|
||||||
|
$display("");
|
||||||
|
$display("-------------------------------------------------------------");
|
||||||
|
$display(" Formal Test 4: Register Persistence (P6, P7)");
|
||||||
|
$display("-------------------------------------------------------------");
|
||||||
|
|
||||||
|
// Write to ADDR 4, then read back
|
||||||
|
$display(" 4a. Write 0x112233 to ADDR 4, read back");
|
||||||
|
formal_send_frame(mk_write(7'd4, 24'h112233));
|
||||||
|
formal_send_capture(mk_read(7'd4), resp);
|
||||||
|
$display(" Wrote 0x112233, read 0x%06h", resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'h112233,
|
||||||
|
"ADDR 4 persistence", "P6: Write persistence");
|
||||||
|
|
||||||
|
// Write to ADDR 5, then read back
|
||||||
|
$display(" 4b. Write 0x445566 to ADDR 5, read back");
|
||||||
|
formal_send_frame(mk_write(7'd5, 24'h445566));
|
||||||
|
formal_send_capture(mk_read(7'd5), resp);
|
||||||
|
$display(" Wrote 0x445566, read 0x%06h", resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'h445566,
|
||||||
|
"ADDR 5 persistence", "P6: Write persistence");
|
||||||
|
|
||||||
|
// Write 0 to ADDR 6, then read back
|
||||||
|
$display(" 4c. Write 0x000000 to ADDR 6, read back");
|
||||||
|
formal_send_frame(mk_write(7'd6, 24'h000000));
|
||||||
|
formal_send_capture(mk_read(7'd6), resp);
|
||||||
|
$display(" Wrote 0x000000, read 0x%06h", resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'h000000,
|
||||||
|
"ADDR 6 persistence", "P6: Write persistence");
|
||||||
|
|
||||||
|
// Write to ADDR 7, then read back
|
||||||
|
$display(" 4d. Write 0xDEADBEEF to ADDR 7, read back");
|
||||||
|
formal_send_frame(mk_write(7'd7, 24'hDEADBEEF & 24'hFFFFFF));
|
||||||
|
formal_send_capture(mk_read(7'd7), resp);
|
||||||
|
$display(" Wrote 0xDEADBEEF, read 0x%06h", resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'hDEADBEEF & 24'hFFFFFF,
|
||||||
|
"ADDR 7 persistence", "P6: Write persistence");
|
||||||
|
|
||||||
|
#(`SPI_CLK_PERIOD);
|
||||||
|
end
|
||||||
|
endtask
|
||||||
|
|
||||||
|
//==========================================================================
|
||||||
|
// Formal Test 5: IDENT Register Read-Only Verification (P7)
|
||||||
|
// IDENT register (ADDR 0) always returns 24'h200110 regardless of writes
|
||||||
|
//==========================================================================
|
||||||
|
task formal_test_ident_readonly;
|
||||||
|
reg [31:0] resp;
|
||||||
|
begin
|
||||||
|
$display("");
|
||||||
|
$display("-------------------------------------------------------------");
|
||||||
|
$display(" Formal Test 5: IDENT Register Read-Only (P7)");
|
||||||
|
$display("-------------------------------------------------------------");
|
||||||
|
|
||||||
|
// Write to ADDR 0 (IDENT), then read back - should still return 24'h200110
|
||||||
|
$display(" 5a. Write 0xABCDEF to ADDR 0 (IDENT), read back");
|
||||||
|
formal_send_frame(mk_write(7'd0, 24'hABCDEF));
|
||||||
|
formal_send_capture(mk_read(7'd0), resp);
|
||||||
|
$display(" Wrote 0xABCDEF, read 0x%06h", resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'h200110,
|
||||||
|
"IDENT after write 0xABCDEF", "P7: IDENT read-only");
|
||||||
|
|
||||||
|
// Write again, verify still read-only
|
||||||
|
$display(" 5b. Write 0x111111 to ADDR 0 (IDENT), read back");
|
||||||
|
formal_send_frame(mk_write(7'd0, 24'h111111));
|
||||||
|
formal_send_capture(mk_read(7'd0), resp);
|
||||||
|
$display(" Wrote 0x111111, read 0x%06h", resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'h200110,
|
||||||
|
"IDENT after write 0x111111", "P7: IDENT read-only");
|
||||||
|
|
||||||
|
// Write yet again to be thorough
|
||||||
|
$display(" 5c. Write 0x999999 to ADDR 0 (IDENT), read back");
|
||||||
|
formal_send_frame(mk_write(7'd0, 24'h999999));
|
||||||
|
formal_send_capture(mk_read(7'd0), resp);
|
||||||
|
$display(" Wrote 0x999999, read 0x%06h", resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'h200110,
|
||||||
|
"IDENT after write 0x999999", "P7: IDENT read-only");
|
||||||
|
|
||||||
|
#(`SPI_CLK_PERIOD);
|
||||||
|
end
|
||||||
|
endtask
|
||||||
|
|
||||||
|
//==========================================================================
|
||||||
|
// Formal Test 6: Sequential Transfers (P10)
|
||||||
|
// Verify independent frame boundaries and interleaved operations
|
||||||
|
//==========================================================================
|
||||||
|
task formal_test_sequential_transfers;
|
||||||
|
reg [31:0] resp;
|
||||||
|
begin
|
||||||
|
$display("");
|
||||||
|
$display("-------------------------------------------------------------");
|
||||||
|
$display(" Formal Test 6: Sequential Transfers (P10)");
|
||||||
|
$display("-------------------------------------------------------------");
|
||||||
|
|
||||||
|
// Rapid sequential writes
|
||||||
|
$display(" 6a. Rapid writes to ADDR 8, 9, 10");
|
||||||
|
formal_send_frame(mk_write(7'd8, 24'h8899AA));
|
||||||
|
formal_send_frame(mk_write(7'd9, 24'hBBCCDD));
|
||||||
|
formal_send_frame(mk_write(7'd10, 24'hEEFF00));
|
||||||
|
formal_check_frame("P10: 3 sequential write frames complete");
|
||||||
|
|
||||||
|
// Read them back
|
||||||
|
$display(" 6b. Read back ADDR 8, 9, 10");
|
||||||
|
formal_send_capture(mk_read(7'd8), resp);
|
||||||
|
$display(" ADDR 8 = 0x%06h", resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'h8899AA,
|
||||||
|
"ADDR 8 read-back", "P10: Sequential write-read");
|
||||||
|
|
||||||
|
formal_send_capture(mk_read(7'd9), resp);
|
||||||
|
$display(" ADDR 9 = 0x%06h", resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'hBBCCDD,
|
||||||
|
"ADDR 9 read-back", "P10: Sequential write-read");
|
||||||
|
|
||||||
|
formal_send_capture(mk_read(7'd10), resp);
|
||||||
|
$display(" ADDR 10 = 0x%06h", resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'hEEFF00,
|
||||||
|
"ADDR 10 read-back", "P10: Sequential write-read");
|
||||||
|
|
||||||
|
// Interleaved read-then-write
|
||||||
|
$display(" 6c. Interleaved: Read ADDR 11, Write 0x121212, Read again");
|
||||||
|
formal_send_capture(mk_read(7'd11), resp);
|
||||||
|
formal_send_frame(mk_write(7'd11, 24'h121212));
|
||||||
|
formal_send_capture(mk_read(7'd11), resp);
|
||||||
|
$display(" After write: ADDR 11 = 0x%06h", resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'h121212,
|
||||||
|
"ADDR 11 interleaved", "P10: Interleaved R/W");
|
||||||
|
|
||||||
|
#(`SPI_CLK_PERIOD);
|
||||||
|
end
|
||||||
|
endtask
|
||||||
|
|
||||||
|
//==========================================================================
|
||||||
|
// Formal Test 7: Boundary Conditions (P11)
|
||||||
|
// Verify min, max, and alternating bit patterns
|
||||||
|
//==========================================================================
|
||||||
|
task formal_test_boundary_conditions;
|
||||||
|
reg [31:0] resp;
|
||||||
|
begin
|
||||||
|
$display("");
|
||||||
|
$display("-------------------------------------------------------------");
|
||||||
|
$display(" Formal Test 7: Boundary Conditions (P11)");
|
||||||
|
$display("-------------------------------------------------------------");
|
||||||
|
|
||||||
|
// Minimum write value (0x000000)
|
||||||
|
$display(" 7a. Write 0x000000 to ADDR 12, read back");
|
||||||
|
formal_send_frame(mk_write(7'd12, 24'h000000));
|
||||||
|
formal_send_capture(mk_read(7'd12), resp);
|
||||||
|
$display(" Wrote 0x000000, read 0x%06h", resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'h000000,
|
||||||
|
"ADDR 12 min value", "P11: Boundary - min");
|
||||||
|
|
||||||
|
// Maximum write value (0xFFFFFF)
|
||||||
|
$display(" 7b. Write 0xFFFFFF to ADDR 13, read back");
|
||||||
|
formal_send_frame(mk_write(7'd13, 24'hFFFFFF));
|
||||||
|
formal_send_capture(mk_read(7'd13), resp);
|
||||||
|
$display(" Wrote 0xFFFFFF, read 0x%06h", resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'hFFFFFF,
|
||||||
|
"ADDR 13 max value", "P11: Boundary - max");
|
||||||
|
|
||||||
|
// Alternate bit pattern (0xAAAAAA)
|
||||||
|
$display(" 7c. Write 0xAAAAAA to ADDR 14, read back");
|
||||||
|
formal_send_frame(mk_write(7'd14, 24'hAAAAAA));
|
||||||
|
formal_send_capture(mk_read(7'd14), resp);
|
||||||
|
$display(" Wrote 0xAAAAAA, read 0x%06h", resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'hAAAAAA,
|
||||||
|
"ADDR 14 alternate", "P11: Boundary - 0xAAAAAA");
|
||||||
|
|
||||||
|
// Inverted alternate bit pattern (0x555555)
|
||||||
|
$display(" 7d. Write 0x555555 to ADDR 15, read back");
|
||||||
|
formal_send_frame(mk_write(7'd15, 24'h555555));
|
||||||
|
formal_send_capture(mk_read(7'd15), resp);
|
||||||
|
$display(" Wrote 0x555555, read 0x%06h", resp[23:0]);
|
||||||
|
formal_check(resp[23:0], 24'h555555,
|
||||||
|
"ADDR 15 inverted alt", "P11: Boundary - 0x555555");
|
||||||
|
|
||||||
|
#(`SPI_CLK_PERIOD);
|
||||||
|
end
|
||||||
|
endtask
|
||||||
|
|
||||||
|
endmodule
|
||||||
+1131
-53
File diff suppressed because it is too large
Load Diff
@@ -5,6 +5,7 @@ RVL_ALIAS "i_sys_clk" "i_sys_clk";
|
|||||||
RVL_ALIAS "i_sys_clk" "i_sys_clk";
|
RVL_ALIAS "i_sys_clk" "i_sys_clk";
|
||||||
RVL_ALIAS "i_sys_clk" "i_sys_clk";
|
RVL_ALIAS "i_sys_clk" "i_sys_clk";
|
||||||
RVL_ALIAS "i_sys_clk" "i_sys_clk";
|
RVL_ALIAS "i_sys_clk" "i_sys_clk";
|
||||||
|
RVL_ALIAS "i_sys_clk" "i_sys_clk";
|
||||||
BLOCK RESETPATHS ;
|
BLOCK RESETPATHS ;
|
||||||
BLOCK ASYNCPATHS ;
|
BLOCK ASYNCPATHS ;
|
||||||
LOCATE COMP "i_sys_clk" SITE "B9" ;
|
LOCATE COMP "i_sys_clk" SITE "B9" ;
|
||||||
@@ -322,3 +323,4 @@ LOCATE COMP "o_PMU_OC_4[30]" SITE "B3" ;
|
|||||||
LOCATE COMP "o_PMU_OC_4[31]" SITE "A3" ;
|
LOCATE COMP "o_PMU_OC_4[31]" SITE "A3" ;
|
||||||
USE PRIMARY NET "i_sys_clk_c" ;
|
USE PRIMARY NET "i_sys_clk_c" ;
|
||||||
IOBUF PORT "o_rvalid" IO_TYPE=LVCMOS33 ;
|
IOBUF PORT "o_rvalid" IO_TYPE=LVCMOS33 ;
|
||||||
|
LOCATE COMP "o_miso" SITE "AA14" ;
|
||||||
|
|||||||
+4
-27
@@ -124,8 +124,6 @@ BUS_Con BUS_Con_2(
|
|||||||
.o_RC_F(RC_F),
|
.o_RC_F(RC_F),
|
||||||
.o_RC_S(RC_S),
|
.o_RC_S(RC_S),
|
||||||
.o_RC_T(RC_T),
|
.o_RC_T(RC_T),
|
||||||
.o_OC_x09(OC_x09),
|
|
||||||
.o_OC_x25(OC_x25),
|
|
||||||
.o_err(cpld_err_flag)
|
.o_err(cpld_err_flag)
|
||||||
);
|
);
|
||||||
|
|
||||||
@@ -134,31 +132,10 @@ BUS_Con BUS_Con_2(
|
|||||||
assign o_RC_S = RC_S;
|
assign o_RC_S = RC_S;
|
||||||
assign o_RC_T = RC_T[25:0];
|
assign o_RC_T = RC_T[25:0];
|
||||||
|
|
||||||
assign o_PMU_OC_1[8] = OC_x09[0];
|
assign o_PMU_OC_1 = PMU_OC_1 ;
|
||||||
assign o_PMU_OC_2[8] = OC_x09[1];
|
assign o_PMU_OC_2 = PMU_OC_2 ;
|
||||||
assign o_PMU_OC_3[8] = OC_x09[2];
|
assign o_PMU_OC_3 = PMU_OC_3 ;
|
||||||
assign o_PMU_OC_4[8] = OC_x09[3];
|
assign o_PMU_OC_4 = PMU_OC_4 ;
|
||||||
|
|
||||||
assign o_PMU_OC_1[24] = OC_x25[0];
|
|
||||||
assign o_PMU_OC_2[24] = OC_x25[1];
|
|
||||||
assign o_PMU_OC_3[24] = OC_x25[2];
|
|
||||||
assign o_PMU_OC_4[24] = OC_x25[3];
|
|
||||||
|
|
||||||
assign o_PMU_OC_1[7:0] = PMU_OC_1[7:0];
|
|
||||||
assign o_PMU_OC_1[23:9] = PMU_OC_1[23:8];
|
|
||||||
assign o_PMU_OC_1[31:25] = PMU_OC_1[31:25];
|
|
||||||
|
|
||||||
assign o_PMU_OC_2[7:0] = PMU_OC_2[7:0];
|
|
||||||
assign o_PMU_OC_2[23:9] = PMU_OC_2[23:9];
|
|
||||||
assign o_PMU_OC_2[31:25] = PMU_OC_2[31:25];
|
|
||||||
|
|
||||||
assign o_PMU_OC_3[7:0] = PMU_OC_3[7:0];
|
|
||||||
assign o_PMU_OC_3[23:9] = PMU_OC_3[23:9];
|
|
||||||
assign o_PMU_OC_3[31:25]= PMU_OC_3[31:25];
|
|
||||||
|
|
||||||
assign o_PMU_OC_4[7:0] = PMU_OC_4[7:0];
|
|
||||||
assign o_PMU_OC_4[23:9] = PMU_OC_4[23:9];
|
|
||||||
assign o_PMU_OC_4[31:25] = PMU_OC_4[31:25];
|
|
||||||
|
|
||||||
|
|
||||||
assign o_err = bus_err_flag || reg_err_flag || cpld_err_flag;
|
assign o_err = bus_err_flag || reg_err_flag || cpld_err_flag;
|
||||||
|
|||||||
+106
-37
@@ -1,7 +1,7 @@
|
|||||||
<Project ModBy="Inserter" SigType="0" Name="C:/Users/testrong/Documents/Work/NewInstrCalBoard/2.FW/CPLD/CPLD2/debug.rvl" Date="2026-05-29">
|
<Project ModBy="Inserter" SigType="0" Name="C:/Users/testrong/Documents/Work/NewInstrCalBoard/2.FW/CPLD/CPLD2/debug.rvl" Date="2026-06-09">
|
||||||
<IP Version="1_6_042617"/>
|
<IP Version="1_6_042617"/>
|
||||||
<Design DesignEntry="Schematic/Verilog HDL" Synthesis="synplify" DeviceFamily="MachXO2" DesignName="NewExtIns_CPLD2"/>
|
<Design DesignEntry="Schematic/Verilog HDL" Synthesis="synplify" DeviceFamily="MachXO2" DesignName="NewExtIns_CPLD2"/>
|
||||||
<Core InsertDataset="0" Insert="1" Reveal_sig="695936542" Name="RelayConTop_LA0" ID="0">
|
<Core InsertDataset="0" Insert="1" Reveal_sig="697492332" Name="RelayConTop_LA0" ID="0">
|
||||||
<Setting>
|
<Setting>
|
||||||
<Clock SampleClk="i_sys_clk" SampleEnable="0" EnableClk="" EnableClk_Pri="0"/>
|
<Clock SampleClk="i_sys_clk" SampleEnable="0" EnableClk="" EnableClk_Pri="0"/>
|
||||||
<TraceBuffer Implementation="0" BitTimeStamp="0" hasTimeStamp="0" IncTrigSig="0" BufferDepth="2048"/>
|
<TraceBuffer Implementation="0" BitTimeStamp="0" hasTimeStamp="0" IncTrigSig="0" BufferDepth="2048"/>
|
||||||
@@ -12,51 +12,120 @@
|
|||||||
</Setting>
|
</Setting>
|
||||||
<Dataset Name="Base">
|
<Dataset Name="Base">
|
||||||
<Trace>
|
<Trace>
|
||||||
<Sig Type="SIG" Name="i_rst_n"/>
|
|
||||||
<Sig Type="SIG" Name="CPLD_Con_2/i_con_exec"/>
|
|
||||||
<Sig Type="SIG" Name="BUS_Con_2/err_flag"/>
|
<Sig Type="SIG" Name="BUS_Con_2/err_flag"/>
|
||||||
<Sig Type="SIG" Name="CPLD_Con_2/err_flag"/>
|
<Sig Type="SIG" Name="CPLD_Con_2/err_flag"/>
|
||||||
<Sig Type="SIG" Name="CPLD_Reg_2/err_flag"/>
|
<Sig Type="SIG" Name="CPLD_Reg_2/err_flag"/>
|
||||||
<Bus Name="o_PMU_OC_1">
|
<Bus Name="RC_F">
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:0"/>
|
<Sig Type="SIG" Name="RC_F:0"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:1"/>
|
<Sig Type="SIG" Name="RC_F:1"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:2"/>
|
<Sig Type="SIG" Name="RC_F:2"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:3"/>
|
<Sig Type="SIG" Name="RC_F:3"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:4"/>
|
<Sig Type="SIG" Name="RC_F:4"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:5"/>
|
<Sig Type="SIG" Name="RC_F:5"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:6"/>
|
<Sig Type="SIG" Name="RC_F:6"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:7"/>
|
<Sig Type="SIG" Name="RC_F:7"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:8"/>
|
</Bus>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:9"/>
|
<Bus Name="RC_S">
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:10"/>
|
<Sig Type="SIG" Name="RC_S:0"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:11"/>
|
<Sig Type="SIG" Name="RC_S:1"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:12"/>
|
<Sig Type="SIG" Name="RC_S:2"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:13"/>
|
<Sig Type="SIG" Name="RC_S:3"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:14"/>
|
<Sig Type="SIG" Name="RC_S:4"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:15"/>
|
<Sig Type="SIG" Name="RC_S:5"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:16"/>
|
<Sig Type="SIG" Name="RC_S:6"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:17"/>
|
<Sig Type="SIG" Name="RC_S:7"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:18"/>
|
<Sig Type="SIG" Name="RC_S:8"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:19"/>
|
<Sig Type="SIG" Name="RC_S:9"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:20"/>
|
<Sig Type="SIG" Name="RC_S:10"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:21"/>
|
<Sig Type="SIG" Name="RC_S:11"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:22"/>
|
<Sig Type="SIG" Name="RC_S:12"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:23"/>
|
<Sig Type="SIG" Name="RC_S:13"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:24"/>
|
<Sig Type="SIG" Name="RC_S:14"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:25"/>
|
<Sig Type="SIG" Name="RC_S:15"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:26"/>
|
</Bus>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:27"/>
|
<Bus Name="RC_T">
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:28"/>
|
<Sig Type="SIG" Name="RC_T:0"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:29"/>
|
<Sig Type="SIG" Name="RC_T:1"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:30"/>
|
<Sig Type="SIG" Name="RC_T:2"/>
|
||||||
<Sig Type="SIG" Name="o_PMU_OC_1:31"/>
|
<Sig Type="SIG" Name="RC_T:3"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:4"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:5"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:6"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:7"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:8"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:9"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:10"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:11"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:12"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:13"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:14"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:15"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:16"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:17"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:18"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:19"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:20"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:21"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:22"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:23"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:24"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:25"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:26"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:27"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:28"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:29"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:30"/>
|
||||||
|
<Sig Type="SIG" Name="RC_T:31"/>
|
||||||
|
</Bus>
|
||||||
|
<Bus Name="CPLD_Con_2/OC_Shifter3">
|
||||||
|
<Sig Type="SIG" Name="CPLD_Con_2/OC_Shifter3:0"/>
|
||||||
|
<Sig Type="SIG" Name="CPLD_Con_2/OC_Shifter3:1"/>
|
||||||
|
<Sig Type="SIG" Name="CPLD_Con_2/OC_Shifter3:2"/>
|
||||||
|
<Sig Type="SIG" Name="CPLD_Con_2/OC_Shifter3:3"/>
|
||||||
|
<Sig Type="SIG" Name="CPLD_Con_2/OC_Shifter3:4"/>
|
||||||
|
</Bus>
|
||||||
|
<Bus Name="o_PMU_OC_3">
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:0"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:1"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:2"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:3"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:4"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:5"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:6"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:7"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:8"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:9"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:10"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:11"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:12"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:13"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:14"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:15"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:16"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:17"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:18"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:19"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:20"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:21"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:22"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:23"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:24"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:25"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:26"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:27"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:28"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:29"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:30"/>
|
||||||
|
<Sig Type="SIG" Name="o_PMU_OC_3:31"/>
|
||||||
</Bus>
|
</Bus>
|
||||||
</Trace>
|
</Trace>
|
||||||
<Trigger>
|
<Trigger>
|
||||||
<TU Serialbits="0" Type="0" ID="1" Sig="i_cs,"/>
|
<TU Serialbits="0" Type="0" ID="1" Sig="i_cs,"/>
|
||||||
<TU Serialbits="0" Type="0" ID="2" Sig="i_rst_n,"/>
|
<TU Serialbits="0" Type="0" ID="2" Sig="i_rst_n,"/>
|
||||||
|
<TU Serialbits="0" Type="0" ID="3" Sig="con_exec,"/>
|
||||||
<TE MaxSequence="2" MaxEvnCnt="1" ID="1" Resource="0"/>
|
<TE MaxSequence="2" MaxEvnCnt="1" ID="1" Resource="0"/>
|
||||||
<TE MaxSequence="2" MaxEvnCnt="1" ID="2" Resource="0"/>
|
<TE MaxSequence="2" MaxEvnCnt="1" ID="2" Resource="0"/>
|
||||||
|
<TE MaxSequence="2" MaxEvnCnt="1" ID="3" Resource="0"/>
|
||||||
</Trigger>
|
</Trigger>
|
||||||
</Dataset>
|
</Dataset>
|
||||||
</Core>
|
</Core>
|
||||||
|
|||||||
+105
-36
@@ -1,4 +1,4 @@
|
|||||||
<Project ModBy="Analyzer" Name="C:/Users/testrong/Documents/Work/NewInstrCalBoard/2.FW/CPLD/CPLD2/debug.rvs" Date="2026-05-29">
|
<Project ModBy="Inserter" Name="C:/Users/testrong/Documents/Work/NewInstrCalBoard/2.FW/CPLD/CPLD2/debug.rvl" Date="2026-06-09">
|
||||||
<Core Name="RelayConTop_LA0">
|
<Core Name="RelayConTop_LA0">
|
||||||
<Setting>
|
<Setting>
|
||||||
<Capture SamplesPerTrig="2048" NumTrigsCap="1"/>
|
<Capture SamplesPerTrig="2048" NumTrigsCap="1"/>
|
||||||
@@ -7,51 +7,120 @@
|
|||||||
</Setting>
|
</Setting>
|
||||||
<Dataset Name="Base">
|
<Dataset Name="Base">
|
||||||
<Trace>
|
<Trace>
|
||||||
<Sig Name="i_rst_n"/>
|
|
||||||
<Sig Name="CPLD_Con_2/i_con_exec"/>
|
|
||||||
<Sig Name="BUS_Con_2/err_flag"/>
|
<Sig Name="BUS_Con_2/err_flag"/>
|
||||||
<Sig Name="CPLD_Con_2/err_flag"/>
|
<Sig Name="CPLD_Con_2/err_flag"/>
|
||||||
<Sig Name="CPLD_Reg_2/err_flag"/>
|
<Sig Name="CPLD_Reg_2/err_flag"/>
|
||||||
<Bus Name="o_PMU_OC_1" Radix="0">
|
<Bus Name="RC_F" Radix="0">
|
||||||
<Sig Name="o_PMU_OC_1:0"/>
|
<Sig Name="RC_F:0"/>
|
||||||
<Sig Name="o_PMU_OC_1:1"/>
|
<Sig Name="RC_F:1"/>
|
||||||
<Sig Name="o_PMU_OC_1:2"/>
|
<Sig Name="RC_F:2"/>
|
||||||
<Sig Name="o_PMU_OC_1:3"/>
|
<Sig Name="RC_F:3"/>
|
||||||
<Sig Name="o_PMU_OC_1:4"/>
|
<Sig Name="RC_F:4"/>
|
||||||
<Sig Name="o_PMU_OC_1:5"/>
|
<Sig Name="RC_F:5"/>
|
||||||
<Sig Name="o_PMU_OC_1:6"/>
|
<Sig Name="RC_F:6"/>
|
||||||
<Sig Name="o_PMU_OC_1:7"/>
|
<Sig Name="RC_F:7"/>
|
||||||
<Sig Name="o_PMU_OC_1:8"/>
|
</Bus>
|
||||||
<Sig Name="o_PMU_OC_1:9"/>
|
<Bus Name="RC_S" Radix="0">
|
||||||
<Sig Name="o_PMU_OC_1:10"/>
|
<Sig Name="RC_S:0"/>
|
||||||
<Sig Name="o_PMU_OC_1:11"/>
|
<Sig Name="RC_S:1"/>
|
||||||
<Sig Name="o_PMU_OC_1:12"/>
|
<Sig Name="RC_S:2"/>
|
||||||
<Sig Name="o_PMU_OC_1:13"/>
|
<Sig Name="RC_S:3"/>
|
||||||
<Sig Name="o_PMU_OC_1:14"/>
|
<Sig Name="RC_S:4"/>
|
||||||
<Sig Name="o_PMU_OC_1:15"/>
|
<Sig Name="RC_S:5"/>
|
||||||
<Sig Name="o_PMU_OC_1:16"/>
|
<Sig Name="RC_S:6"/>
|
||||||
<Sig Name="o_PMU_OC_1:17"/>
|
<Sig Name="RC_S:7"/>
|
||||||
<Sig Name="o_PMU_OC_1:18"/>
|
<Sig Name="RC_S:8"/>
|
||||||
<Sig Name="o_PMU_OC_1:19"/>
|
<Sig Name="RC_S:9"/>
|
||||||
<Sig Name="o_PMU_OC_1:20"/>
|
<Sig Name="RC_S:10"/>
|
||||||
<Sig Name="o_PMU_OC_1:21"/>
|
<Sig Name="RC_S:11"/>
|
||||||
<Sig Name="o_PMU_OC_1:22"/>
|
<Sig Name="RC_S:12"/>
|
||||||
<Sig Name="o_PMU_OC_1:23"/>
|
<Sig Name="RC_S:13"/>
|
||||||
<Sig Name="o_PMU_OC_1:24"/>
|
<Sig Name="RC_S:14"/>
|
||||||
<Sig Name="o_PMU_OC_1:25"/>
|
<Sig Name="RC_S:15"/>
|
||||||
<Sig Name="o_PMU_OC_1:26"/>
|
</Bus>
|
||||||
<Sig Name="o_PMU_OC_1:27"/>
|
<Bus Name="RC_T" Radix="0">
|
||||||
<Sig Name="o_PMU_OC_1:28"/>
|
<Sig Name="RC_T:0"/>
|
||||||
<Sig Name="o_PMU_OC_1:29"/>
|
<Sig Name="RC_T:1"/>
|
||||||
<Sig Name="o_PMU_OC_1:30"/>
|
<Sig Name="RC_T:2"/>
|
||||||
<Sig Name="o_PMU_OC_1:31"/>
|
<Sig Name="RC_T:3"/>
|
||||||
|
<Sig Name="RC_T:4"/>
|
||||||
|
<Sig Name="RC_T:5"/>
|
||||||
|
<Sig Name="RC_T:6"/>
|
||||||
|
<Sig Name="RC_T:7"/>
|
||||||
|
<Sig Name="RC_T:8"/>
|
||||||
|
<Sig Name="RC_T:9"/>
|
||||||
|
<Sig Name="RC_T:10"/>
|
||||||
|
<Sig Name="RC_T:11"/>
|
||||||
|
<Sig Name="RC_T:12"/>
|
||||||
|
<Sig Name="RC_T:13"/>
|
||||||
|
<Sig Name="RC_T:14"/>
|
||||||
|
<Sig Name="RC_T:15"/>
|
||||||
|
<Sig Name="RC_T:16"/>
|
||||||
|
<Sig Name="RC_T:17"/>
|
||||||
|
<Sig Name="RC_T:18"/>
|
||||||
|
<Sig Name="RC_T:19"/>
|
||||||
|
<Sig Name="RC_T:20"/>
|
||||||
|
<Sig Name="RC_T:21"/>
|
||||||
|
<Sig Name="RC_T:22"/>
|
||||||
|
<Sig Name="RC_T:23"/>
|
||||||
|
<Sig Name="RC_T:24"/>
|
||||||
|
<Sig Name="RC_T:25"/>
|
||||||
|
<Sig Name="RC_T:26"/>
|
||||||
|
<Sig Name="RC_T:27"/>
|
||||||
|
<Sig Name="RC_T:28"/>
|
||||||
|
<Sig Name="RC_T:29"/>
|
||||||
|
<Sig Name="RC_T:30"/>
|
||||||
|
<Sig Name="RC_T:31"/>
|
||||||
|
</Bus>
|
||||||
|
<Bus Name="CPLD_Con_2/OC_Shifter3" Radix="0">
|
||||||
|
<Sig Name="CPLD_Con_2/OC_Shifter3:0"/>
|
||||||
|
<Sig Name="CPLD_Con_2/OC_Shifter3:1"/>
|
||||||
|
<Sig Name="CPLD_Con_2/OC_Shifter3:2"/>
|
||||||
|
<Sig Name="CPLD_Con_2/OC_Shifter3:3"/>
|
||||||
|
<Sig Name="CPLD_Con_2/OC_Shifter3:4"/>
|
||||||
|
</Bus>
|
||||||
|
<Bus Name="o_PMU_OC_3" Radix="0">
|
||||||
|
<Sig Name="o_PMU_OC_3:0"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:1"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:2"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:3"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:4"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:5"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:6"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:7"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:8"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:9"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:10"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:11"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:12"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:13"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:14"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:15"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:16"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:17"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:18"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:19"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:20"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:21"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:22"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:23"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:24"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:25"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:26"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:27"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:28"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:29"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:30"/>
|
||||||
|
<Sig Name="o_PMU_OC_3:31"/>
|
||||||
</Bus>
|
</Bus>
|
||||||
</Trace>
|
</Trace>
|
||||||
<Trigger>
|
<Trigger>
|
||||||
<TU Operator="7" Name="TU1" ID="1" Value="0" Radix="0"/>
|
<TU Operator="7" Name="TU1" ID="1" Value="0" Radix="0"/>
|
||||||
<TU Operator="7" Name="TU2" ID="2" Value="0" Radix="0"/>
|
<TU Operator="7" Name="TU2" ID="2" Value="0" Radix="0"/>
|
||||||
|
<TU Operator="6" Name="TU3" ID="3" Value="0" Radix="0"/>
|
||||||
<TE Enable="1" Expression="TU1" Name="TE1" ID="1"/>
|
<TE Enable="1" Expression="TU1" Name="TE1" ID="1"/>
|
||||||
<TE Enable="1" Expression="TU2" Name="TE2" ID="2"/>
|
<TE Enable="1" Expression="TU2" Name="TE2" ID="2"/>
|
||||||
|
<TE Enable="1" Expression="TU3" Name="TE3" ID="3"/>
|
||||||
</Trigger>
|
</Trigger>
|
||||||
</Dataset>
|
</Dataset>
|
||||||
</Core>
|
</Core>
|
||||||
|
|||||||
Binary file not shown.
+3732
-3732
File diff suppressed because it is too large
Load Diff
+38
-301
File diff suppressed because one or more lines are too long
@@ -284,7 +284,7 @@ SDR 36 TDI (c30040000) TDO (000000000) MASK (FFFFFFFFF);
|
|||||||
SDR 36 TDI (430060000);
|
SDR 36 TDI (430060000);
|
||||||
SDR 36 TDI (430060000) TDO (000000000) MASK (FFFFFFFFF);
|
SDR 36 TDI (430060000) TDO (000000000) MASK (FFFFFFFFF);
|
||||||
|
|
||||||
!==> [JTAG] tmLastAddrWritten = 931
|
!==> [JTAG] tmLastAddrWritten = 1681
|
||||||
|
|
||||||
! Get Multiple Trig Enbl
|
! Get Multiple Trig Enbl
|
||||||
SDR 36 TDI (430050000);
|
SDR 36 TDI (430050000);
|
||||||
@@ -475,19 +475,19 @@ FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
|||||||
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
|
||||||
FFFFFFFFFFFFF);
|
FFFFFFFFFFFFF);
|
||||||
|
|
||||||
!==> [JTAG] burst read 2304 byte = F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C1E0F0783C08040A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A05028140A050281F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1F0F87C3E1
|
!==> [JTAG] burst read 2304 byte = 108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108846211088440201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008040201008044221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221108844221
|
||||||
|
|
||||||
! Get BurstRead CRC
|
! Get BurstRead CRC
|
||||||
SDR 36 TDI (4300a0000);
|
SDR 36 TDI (4300a0000);
|
||||||
SDR 36 TDI (4300a0000) TDO (000000000) MASK (FFFFFFFFF);
|
SDR 36 TDI (4300a0000) TDO (000000000) MASK (FFFFFFFFF);
|
||||||
|
|
||||||
!==> [JTAG] dummy = 8B67
|
!==> [JTAG] dummy = B030
|
||||||
|
|
||||||
! Get BurstRead CRC
|
! Get BurstRead CRC
|
||||||
SDR 36 TDI (4300a0000);
|
SDR 36 TDI (4300a0000);
|
||||||
SDR 36 TDI (4300a0000) TDO (000000000) MASK (FFFFFFFFF);
|
SDR 36 TDI (4300a0000) TDO (000000000) MASK (FFFFFFFFF);
|
||||||
|
|
||||||
!==> [JTAG] tmCRC = 8B67 (equation = 13F5)
|
!==> [JTAG] tmCRC = B030 (equation = B221)
|
||||||
|
|
||||||
! Get Pre-Trig Sample Num
|
! Get Pre-Trig Sample Num
|
||||||
SDR 36 TDI (c30010000);
|
SDR 36 TDI (c30010000);
|
||||||
@@ -507,17 +507,17 @@ SDR 36 TDI (c31000000) TDO (000000000) MASK (FFFFFFFFF);
|
|||||||
SDR 36 TDI (c32000000);
|
SDR 36 TDI (c32000000);
|
||||||
SDR 36 TDI (c32000000) TDO (000000000) MASK (FFFFFFFFF);
|
SDR 36 TDI (c32000000) TDO (000000000) MASK (FFFFFFFFF);
|
||||||
|
|
||||||
!==> [JTAG] tmTrigPTr = 1065
|
!==> [JTAG] tmTrigPTr = 1815
|
||||||
|
|
||||||
!==> [TMEN] trigPtr=1065
|
!==> [TMEN] trigPtr=1815
|
||||||
|
|
||||||
!==> [TMEN] pre_cap=true (preCap=1, regNum=0, offset=0)
|
!==> [TMEN] pre_cap=true (preCap=1, regNum=0, offset=0)
|
||||||
|
|
||||||
!==> [TMEN] trigPtr=1060 (- 5)
|
!==> [TMEN] trigPtr=1810 (- 5)
|
||||||
|
|
||||||
!==> [TMEN] (pre_cap) out:2980-2048
|
!==> [TMEN] (pre_cap) out:3730-2048
|
||||||
|
|
||||||
!==> [TMEN] (pre_cap) out:932-1061
|
!==> [TMEN] (pre_cap) out:1682-1811
|
||||||
|
|
||||||
!==> [TMEN] (pre_cap) triggerPosition=128
|
!==> [TMEN] (pre_cap) triggerPosition=128
|
||||||
|
|
||||||
|
|||||||
+5
-5
@@ -117,19 +117,19 @@ module CPLD_Con (
|
|||||||
else if (dc_t == 1'b1) begin
|
else if (dc_t == 1'b1) begin
|
||||||
case (dc_slot_flag)
|
case (dc_slot_flag)
|
||||||
4'b0001: begin
|
4'b0001: begin
|
||||||
PMU_RC <= 4'b0001;
|
PMU_RC <= 4'b1110;
|
||||||
end
|
end
|
||||||
4'b0010: begin
|
4'b0010: begin
|
||||||
PMU_RC <= 4'b0010;
|
PMU_RC <= 4'b1101;
|
||||||
end
|
end
|
||||||
4'b0100: begin
|
4'b0100: begin
|
||||||
PMU_RC <= 4'b0100;
|
PMU_RC <= 4'b1011;
|
||||||
end
|
end
|
||||||
4'b1000: begin
|
4'b1000: begin
|
||||||
PMU_RC <= 4'b1000;
|
PMU_RC <= 4'b0111;
|
||||||
end
|
end
|
||||||
default:begin
|
default:begin
|
||||||
PMU_RC <= 4'b0000;
|
PMU_RC <= 4'b1111;
|
||||||
end
|
end
|
||||||
endcase
|
endcase
|
||||||
end
|
end
|
||||||
|
|||||||
Binary file not shown.
+2445
-2445
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user