Files
FPGA-Neural/sim/memory_interface.vcd
T
2026-09-02 13:09:20 +02:00

1146 lines
8.6 KiB
Plaintext

$date
Wed Sep 2 11:47:57 2026
$end
$version
Icarus Verilog
$end
$timescale
1ps
$end
$scope module memory_interface_tb $end
$var wire 1 ! ready $end
$var wire 16 " rdata [15:0] $end
$var wire 1 # mem_wr $end
$var wire 16 $ mem_wdata [15:0] $end
$var wire 1 % mem_req $end
$var wire 1 & mem_ready $end
$var wire 16 ' mem_rdata [15:0] $end
$var wire 22 ( mem_addr [21:0] $end
$var parameter 32 ) ADDR_WIDTH $end
$var parameter 32 * DATA_WIDTH $end
$var reg 22 + addr [21:0] $end
$var reg 1 , clk $end
$var reg 1 - req $end
$var reg 1 . rst $end
$var reg 16 / wdata [15:0] $end
$var reg 1 0 wr $end
$scope module dut $end
$var wire 22 1 addr [21:0] $end
$var wire 1 , clk $end
$var wire 1 - req $end
$var wire 1 . rst $end
$var wire 16 2 wdata [15:0] $end
$var wire 1 0 wr $end
$var wire 1 & mem_ready $end
$var wire 16 3 mem_rdata [15:0] $end
$var parameter 32 4 ADDR_WIDTH $end
$var parameter 32 5 DATA_WIDTH $end
$var parameter 2 6 STATE_IDLE $end
$var parameter 2 7 STATE_WAIT $end
$var reg 22 8 mem_addr [21:0] $end
$var reg 1 % mem_req $end
$var reg 16 9 mem_wdata [15:0] $end
$var reg 1 # mem_wr $end
$var reg 16 : rdata [15:0] $end
$var reg 1 ! ready $end
$var reg 2 ; state [1:0] $end
$upscope $end
$scope module memory $end
$var wire 22 < addr [21:0] $end
$var wire 1 , clk $end
$var wire 1 % req $end
$var wire 1 . rst $end
$var wire 16 = wdata [15:0] $end
$var wire 1 # wr $end
$var parameter 32 > ADDR_WIDTH $end
$var parameter 32 ? DATA_WIDTH $end
$var parameter 32 @ DEPTH $end
$var parameter 32 A READ_LATENCY $end
$var reg 1 B busy $end
$var reg 22 C pending_addr [21:0] $end
$var reg 16 D pending_wdata [15:0] $end
$var reg 1 E pending_wr $end
$var reg 16 F rdata [15:0] $end
$var reg 1 & ready $end
$var integer 32 G delay_count [31:0] $end
$var integer 32 H i [31:0] $end
$upscope $end
$scope task read_mem $end
$var reg 22 I address [21:0] $end
$var reg 16 J expected [15:0] $end
$var reg 16 K received [15:0] $end
$upscope $end
$scope task write_mem $end
$var reg 22 L address [21:0] $end
$var reg 16 M data [15:0] $end
$upscope $end
$upscope $end
$enddefinitions $end
$comment Show the parameter values. $end
$dumpall
b10 A
b1000000000000 @
b10000 ?
b10110 >
b1 7
b0 6
b10000 5
b10110 4
b10000 *
b10110 )
$end
#0
$dumpvars
bx M
bx L
bx K
bx J
bx I
bx H
bx G
bx F
xE
bx D
bx C
xB
bx =
bx <
bx ;
bx :
bx 9
bx 8
bx 3
b0 2
b0 1
00
b0 /
1.
0-
0,
b0 +
bx (
bx '
x&
x%
bx $
x#
bx "
x!
$end
#5000
b0 $
b0 9
b0 =
b0 (
b0 8
b0 <
0#
0%
0!
b0 "
b0 :
b0 ;
b0 G
b0 D
b0 C
0E
0B
0&
b0 '
b0 3
b0 F
b1000000000000 H
1,
#10000
0,
#15000
b1000000000000 H
1,
#20000
0,
#25000
b1001000110100 M
b1 L
0.
1,
#30000
0,
#35000
1-
10
b1001000110100 /
b1001000110100 2
b1 +
b1 1
1,
#40000
0,
#45000
0-
b1 ;
1%
b1001000110100 $
b1001000110100 9
b1001000110100 =
b1 (
b1 8
b1 <
1#
1,
#50000
0,
#55000
b10 G
b1001000110100 D
b1 C
1E
1B
0%
1,
#60000
0,
#65000
b1 G
1,
#70000
0,
#75000
b0 G
1,
#80000
0,
#85000
0B
1&
1,
#90000
0,
#95000
0&
b0 ;
1!
1,
#100000
0,
#105000
0!
b1001000110100 J
b1 I
1,
#110000
0,
#115000
1-
00
1,
#120000
0,
#125000
0-
b1 ;
1%
0#
1,
#130000
0,
#135000
b10 G
0E
1B
0%
1,
#140000
0,
#145000
b1 G
1,
#150000
0,
#155000
b0 G
1,
#160000
0,
#165000
0B
1&
b1001000110100 '
b1001000110100 3
b1001000110100 F
1,
#170000
0,
#175000
b1001000110100 K
0&
b0 ;
1!
b1001000110100 "
b1001000110100 :
1,
#180000
0,
#185000
0!
b1010101111001101 M
b10000 L
1,
#190000
0,
#195000
1-
10
b1010101111001101 /
b1010101111001101 2
b10000 +
b10000 1
1,
#200000
0,
#205000
0-
b1 ;
1%
b1010101111001101 $
b1010101111001101 9
b1010101111001101 =
b10000 (
b10000 8
b10000 <
1#
1,
#210000
0,
#215000
b10 G
b1010101111001101 D
b10000 C
1E
1B
0%
1,
#220000
0,
#225000
b1 G
1,
#230000
0,
#235000
b0 G
1,
#240000
0,
#245000
0B
1&
1,
#250000
0,
#255000
0&
b0 ;
1!
1,
#260000
0,
#265000
0!
b1010101111001101 J
b10000 I
1,
#270000
0,
#275000
1-
00
1,
#280000
0,
#285000
0-
b1 ;
1%
0#
1,
#290000
0,
#295000
b10 G
0E
1B
0%
1,
#300000
0,
#305000
b1 G
1,
#310000
0,
#315000
b0 G
1,
#320000
0,
#325000
0B
1&
b1010101111001101 '
b1010101111001101 3
b1010101111001101 F
1,
#330000
0,
#335000
b1010101111001101 K
0&
b0 ;
1!
b1010101111001101 "
b1010101111001101 :
1,
#340000
0,
#345000
0!
b101010110101010 M
b100000000 L
1,
#350000
0,
#355000
1-
10
b101010110101010 /
b101010110101010 2
b100000000 +
b100000000 1
1,
#360000
0,
#365000
0-
b1 ;
1%
b101010110101010 $
b101010110101010 9
b101010110101010 =
b100000000 (
b100000000 8
b100000000 <
1#
1,
#370000
0,
#375000
b10 G
b101010110101010 D
b100000000 C
1E
1B
0%
1,
#380000
0,
#385000
b1 G
1,
#390000
0,
#395000
b0 G
1,
#400000
0,
#405000
0B
1&
1,
#410000
0,
#415000
0&
b0 ;
1!
1,
#420000
0,
#425000
0!
b101010110101010 J
b100000000 I
1,
#430000
0,
#435000
1-
00
1,
#440000
0,
#445000
0-
b1 ;
1%
0#
1,
#450000
0,
#455000
b10 G
0E
1B
0%
1,
#460000
0,
#465000
b1 G
1,
#470000
0,
#475000
b0 G
1,
#480000
0,
#485000
0B
1&
b101010110101010 '
b101010110101010 3
b101010110101010 F
1,
#490000
0,
#495000
b101010110101010 K
0&
b0 ;
1!
b101010110101010 "
b101010110101010 :
1,
#500000
0,
#505000
0!
b1 M
b1000000000 L
1,
#510000
0,
#515000
1-
10
b1 /
b1 2
b1000000000 +
b1000000000 1
1,
#520000
0,
#525000
0-
b1 ;
1%
b1 $
b1 9
b1 =
b1000000000 (
b1000000000 8
b1000000000 <
1#
1,
#530000
0,
#535000
b10 G
b1 D
b1000000000 C
1E
1B
0%
1,
#540000
0,
#545000
b1 G
1,
#550000
0,
#555000
b0 G
1,
#560000
0,
#565000
0B
1&
1,
#570000
0,
#575000
0&
b0 ;
1!
1,
#580000
0,
#585000
0!
b10 M
b1000000001 L
1,
#590000
0,
#595000
1-
b10 /
b10 2
b1000000001 +
b1000000001 1
1,
#600000
0,
#605000
0-
b1 ;
1%
b10 $
b10 9
b10 =
b1000000001 (
b1000000001 8
b1000000001 <
1,
#610000
0,
#615000
b10 G
b10 D
b1000000001 C
1B
0%
1,
#620000
0,
#625000
b1 G
1,
#630000
0,
#635000
b0 G
1,
#640000
0,
#645000
0B
1&
1,
#650000
0,
#655000
0&
b0 ;
1!
1,
#660000
0,
#665000
0!
b11 M
b1000000010 L
1,
#670000
0,
#675000
1-
b11 /
b11 2
b1000000010 +
b1000000010 1
1,
#680000
0,
#685000
0-
b1 ;
1%
b11 $
b11 9
b11 =
b1000000010 (
b1000000010 8
b1000000010 <
1,
#690000
0,
#695000
b10 G
b11 D
b1000000010 C
1B
0%
1,
#700000
0,
#705000
b1 G
1,
#710000
0,
#715000
b0 G
1,
#720000
0,
#725000
0B
1&
1,
#730000
0,
#735000
0&
b0 ;
1!
1,
#740000
0,
#745000
0!
b1 J
b1000000000 I
1,
#750000
0,
#755000
1-
00
b1000000000 +
b1000000000 1
1,
#760000
0,
#765000
0-
b1 ;
1%
b1000000000 (
b1000000000 8
b1000000000 <
0#
1,
#770000
0,
#775000
b10 G
b1000000000 C
0E
1B
0%
1,
#780000
0,
#785000
b1 G
1,
#790000
0,
#795000
b0 G
1,
#800000
0,
#805000
0B
1&
b1 '
b1 3
b1 F
1,
#810000
0,
#815000
b1 K
0&
b0 ;
1!
b1 "
b1 :
1,
#820000
0,
#825000
0!
b10 J
b1000000001 I
1,
#830000
0,
#835000
1-
b1000000001 +
b1000000001 1
1,
#840000
0,
#845000
0-
b1 ;
1%
b1000000001 (
b1000000001 8
b1000000001 <
1,
#850000
0,
#855000
b10 G
b1000000001 C
1B
0%
1,
#860000
0,
#865000
b1 G
1,
#870000
0,
#875000
b0 G
1,
#880000
0,
#885000
0B
1&
b10 '
b10 3
b10 F
1,
#890000
0,
#895000
b10 K
0&
b0 ;
1!
b10 "
b10 :
1,
#900000
0,
#905000
0!
b11 J
b1000000010 I
1,
#910000
0,
#915000
1-
b1000000010 +
b1000000010 1
1,
#920000
0,
#925000
0-
b1 ;
1%
b1000000010 (
b1000000010 8
b1000000010 <
1,
#930000
0,
#935000
b10 G
b1000000010 C
1B
0%
1,
#940000
0,
#945000
b1 G
1,
#950000
0,
#955000
b0 G
1,
#960000
0,
#965000
0B
1&
b11 '
b11 3
b11 F
1,
#970000
0,
#975000
b11 K
0&
b0 ;
1!
b11 "
b11 :
1,
#980000
0,
#985000
0!
b0 M
b1100000000 L
1,
#990000
0,
#995000
1-
10
b0 /
b0 2
b1100000000 +
b1100000000 1
1,
#1000000
0,
#1005000
0-
b1 ;
1%
b0 $
b0 9
b0 =
b1100000000 (
b1100000000 8
b1100000000 <
1#
1,
#1010000
0,
#1015000
b10 G
b0 D
b1100000000 C
1E
1B
0%
1,
#1020000
0,
#1025000
b1 G
1,
#1030000
0,
#1035000
b0 G
1,
#1040000
0,
#1045000
0B
1&
1,
#1050000
0,
#1055000
0&
b0 ;
1!
1,
#1060000
0,
#1065000
0!
b0 J
b1100000000 I
1,
#1070000
0,
#1075000
1-
00
1,
#1080000
0,
#1085000
0-
b1 ;
1%
0#
1,
#1090000
0,
#1095000
b10 G
0E
1B
0%
1,
#1100000
0,
#1105000
b1 G
1,
#1110000
0,
#1115000
b0 G
1,
#1120000
0,
#1125000
0B
1&
b0 '
b0 3
b0 F
1,
#1130000
0,
#1135000
b0 K
0&
b0 ;
1!
b0 "
b0 :
1,
#1140000
0,
#1145000
0!
b1111111111111111 M
b1100000001 L
1,
#1150000
0,
#1155000
1-
10
b1111111111111111 /
b1111111111111111 2
b1100000001 +
b1100000001 1
1,
#1160000
0,
#1165000
0-
b1 ;
1%
b1111111111111111 $
b1111111111111111 9
b1111111111111111 =
b1100000001 (
b1100000001 8
b1100000001 <
1#
1,
#1170000
0,
#1175000
b10 G
b1111111111111111 D
b1100000001 C
1E
1B
0%
1,
#1180000
0,
#1185000
b1 G
1,
#1190000
0,
#1195000
b0 G
1,
#1200000
0,
#1205000
0B
1&
1,
#1210000
0,
#1215000
0&
b0 ;
1!
1,
#1220000
0,
#1225000
0!
b1111111111111111 J
b1100000001 I
1,
#1230000
0,
#1235000
1-
00
1,
#1240000
0,
#1245000
0-
b1 ;
1%
0#
1,
#1250000
0,
#1255000
b10 G
0E
1B
0%
1,
#1260000
0,
#1265000
b1 G
1,
#1270000
0,
#1275000
b0 G
1,
#1280000
0,
#1285000
0B
1&
b1111111111111111 '
b1111111111111111 3
b1111111111111111 F
1,
#1290000
0,
#1295000
b1111111111111111 K
0&
b0 ;
1!
b1111111111111111 "
b1111111111111111 :
1,
#1300000
0,
#1305000
0!
1,