5 vmap ecp5u_black_boxes "/home/soft/lattice/diamond/3.10_x64/cae_library/simulation/blackbox/ecp5u_black_boxes"
7 # compile the IP core ###############
8 vlog -novopt -y /home/soft/lattice/diamond/3.10_x64/cae_library/simulation/verilog/ecp5u +libext+.v ../../../../sgmii_channel_smi_beh.v
9 vcom ../../../../sgmii_channel_smi.vhd
11 # compile components of an sgmii channel ###############
12 vlog -novopt -y /home/soft/lattice/diamond/3.10_x64/cae_library/simulation/verilog/ecp5u +libext+.v ../../src/rtl/template/ecp5um/register_interface_hb.v
13 vlog -novopt -y /home/soft/lattice/diamond/3.10_x64/cae_library/simulation/verilog/ecp5u +libext+.v ../../src/rtl/template/ecp5um/rate_resolution.v
15 # compile top level hardware components ###############
16 vlog +define+RSL_SIM_MODE -novopt -y /home/soft/lattice/diamond/3.10_x64/cae_library/simulation/verilog/ecp5u +libext+.v ../../../models/ecp5um/pcs_serdes/sgmii_channel_smi_pcs_softlogic.v
17 vlog -novopt -y /home/soft/lattice/diamond/3.10_x64/cae_library/simulation/verilog/ecp5u +libext+.v ../../../models/ecp5um/pcs_serdes/sgmii_channel_smi_pcs.v
18 vlog -novopt -y /home/soft/lattice/diamond/3.10_x64/cae_library/simulation/verilog/ecp5u +libext+.v ../../../models/ecp5um/pmi_fifo_dc/pmi_fifo_dc.v
20 # compile top level wrapper ###############
21 vlog -novopt -y /home/soft/lattice/diamond/3.10_x64/cae_library/simulation/verilog/ecp5u +libext+.v ../../src/rtl/top/ecp5um/top_hb.v
23 # compile testbench components of sgmii_node ###############
24 vlog -novopt -y /home/soft/lattice/diamond/3.10_x64/cae_library/simulation/verilog/ecp5u +libext+.v ../../../testbench/sgmii_node.v
26 # compile testbench components of mii monitor ###############
27 vlog -novopt -y /home/soft/lattice/diamond/3.10_x64/cae_library/simulation/verilog/ecp5u +libext+.v ../../../testbench/port_parser_mii.v
28 vlog -novopt -y /home/soft/lattice/diamond/3.10_x64/cae_library/simulation/verilog/ecp5u +libext+.v ../../../testbench/port_monitor.v
29 vlog -novopt -y /home/soft/lattice/diamond/3.10_x64/cae_library/simulation/verilog/ecp5u +libext+.v ../../../testbench/mii_monitor.v
31 # compile the testbench ###############
32 vlog -novopt -y /home/soft/lattice/diamond/3.10_x64/cae_library/simulation/verilog/ecp5u +libext+.v ../../../testbench/tb_hb.v
36 vsim -novopt -t ps -L ecp5u_black_boxes tb -l testcase.log
42 add wave -divider {Control Signals}
43 add wave -format Logic -radix hexadecimal sim:/tb/top/rst_n
44 add wave -format Logic -radix hexadecimal sim:/tb/top/sgmii_mode
45 add wave -divider {Host Bus Signals}
46 add wave -format Logic -radix hexadecimal sim:/tb/top/hcs_n
47 add wave -format Logic -radix hexadecimal sim:/tb/top/hwrite_n
48 add wave -format Logic -radix hexadecimal sim:/tb/top/haddr
49 add wave -format Logic -radix hexadecimal sim:/tb/top/hdatain
50 add wave -format Logic -radix hexadecimal sim:/tb/top/hdataout
51 add wave -format Logic -radix hexadecimal sim:/tb/top/hready_n
52 add wave -divider {(G)MII Inbound Signals}
53 add wave -format Logic -radix hexadecimal sim:/tb/top/in_ce_source
54 add wave -format Logic -radix hexadecimal sim:/tb/top/in_ce_sink
55 add wave -format Logic -radix hexadecimal sim:/tb/top/en_in_mii
56 add wave -format Literal -radix hexadecimal sim:/tb/top/data_in_mii
57 add wave -format Logic -radix hexadecimal sim:/tb/top/err_in_mii
58 add wave -divider {(G)MII Outbound Signals}
59 add wave -format Logic -radix hexadecimal sim:/tb/top/out_ce_source
60 add wave -format Logic -radix hexadecimal sim:/tb/top/out_ce_sink
61 add wave -format Logic -radix hexadecimal sim:/tb/top/dv_out_mii
62 add wave -format Literal -radix hexadecimal sim:/tb/top/data_out_mii
63 add wave -format Logic -radix hexadecimal sim:/tb/top/err_out_mii
64 add wave -format Logic -radix hexadecimal sim:/tb/top/col_out_mii
65 add wave -format Logic -radix hexadecimal sim:/tb/top/crs_out_mii
66 add wave -divider {SERDES Outbound Signals}
67 add wave -format Logic -radix hexadecimal sim:/tb/top/hdoutp0
68 add wave -format Logic -radix hexadecimal sim:/tb/top/hdoutn0
69 add wave -divider {SERDES Inbound Signals}
70 add wave -format Logic -radix hexadecimal sim:/tb/top/hdinp0
71 add wave -format Logic -radix hexadecimal sim:/tb/top/hdinn0
74 # run simulation cycles