1 |
8 |
weng_ziti |
0. This directory contains simulation environment for the pcie_sg_dma design.
|
2 |
6 |
weng_ziti |
tf64_pcie_trn.v is the simulation file in Verilog HDL.
|
3 |
|
|
sg_sim.mpf is the ModelSim project file. So your ModelSim version has to support mixed HDL because the design files are mostly written in VHDL. If you want to help in translating this simulation into VHDL, contact me via
|
4 |
|
|
weng.ziti@gmail.com. Thanks in advance.
|
5 |
|
|
|
6 |
|
|
1. To start the simulation, open the sg_sim.mpf in ModelSim, and simulate the tf64_pcie_trn.v after compiling the work library.
|
7 |
|
|
|
8 |
|
|
2. The simulation takes the tlpControl module as the kernel UUT and tries to emulate the behavior of the PCIe core on the TRN layer.
|
9 |
|
|
Block RAM (bram_controller) is simulated for the RAM memory.
|
10 |
|
|
FIFO_Wrapper is simulated for the one-hole type memory.
|
11 |
|
|
Three BARs are implemented in the design,
|
12 |
|
|
BAR[0] -- 4KB, registers; for PIO
|
13 |
|
|
BAR[1] -- 1MB, BRAM; for PIO and DMA
|
14 |
|
|
BAR[2] -- 4KB, FIFO; for half-bus (32-bit) PIO and and full-bus (64-bit) DMA
|
15 |
|
|
|
16 |
|
|
3. The TLP sending is done in the taks TLP_Feed_Rx, which simplifies the cycles control over an RX TLP sending.
|
17 |
|
|
This also enables the user to build his or her simulation on the TRN layer.
|
18 |
|
|
|
19 |
|
|
4. This simulation runs for about 10 us and is sequenced with following 5 major test cases,
|
20 |
|
|
(1) BAR[0] PIO write and read
|
21 |
|
|
(2) BAR[1] PIO write and read
|
22 |
|
|
(3) BAR[2] PIO write and read
|
23 |
|
|
(4) BAR[1] DMA write and read
|
24 |
|
|
(5) BAR[2] DMA write and read
|
25 |
|
|
FSM_Tx_Desc_MRd process feeds CplD to the DMA descriptor MRd for DMA cases.
|
26 |
|
|
|
27 |
|
|
5. The process of FSM_TLP_Fmt is to check the validity of TX TLP format.
|
28 |
|
|
The process of FSM_Rx_Fmt is to check the validity of RX TLP format, namely verification of verification.
|
29 |
|
|
The simulation stops at any format failure if you try to develop your own simulations.
|
30 |
|
|
|
31 |
|
|
6. Any questions or suggestions, send me email to weng.ziti@gmail.com.
|