IC 仿真实践 SoC V1.1 · RISC-V 基础版 SoC V1.1 资料 soc_verification_environment.html

diagrams/soc_verification_environment.html

SoC 验证环境

To_Customer/soc/ · Makefile · top.f · test.v · sw/ · UVM + Ibex DV

编译与仿真总流程

Makefile comp / run_* filelist/top.f ibex·dma·isp·apb·matrix VCS comp comp/simv sw/ 场景 riscv-gcc → .vmem mem.data top.f 分层(顺序) incdir: UVM · Ibex · prim · i2c/uart/busmatrix/pad -f ibex_core*.f · dma.f · isp.f · apb_filelist.f · busmatrix_filelist.f · model.f top: monitior.v · core2ahb · cmsdk_ahb_to_sram · top.v test/test.v clk_cpu 10ns · prest/rst force pad[21:22] clk/rst SPI0 环回 pad[1..13] soc_top inst_soc_top UVM + Ibex DV +UVM_TESTNAME=$(TEST) google_riscv-dv 与 sw mem.data 并行 simv 运行 make run_uart_test → 拷贝 sw/uart_test + common sed CTEST_NAME · 本地 make → xxx.vmem → mem.data ./simv +UVM_TESTNAME=... +UVM_VERBOSITY top/qspi_device.sv 片外 SPI 从机

sw/ 软件场景一览

目录make 目标验证侧重
uart_testrun_uart_testUART 0x20010000 寄存器/FIFO
spi_testrun_spi_testQSPI 0x20000000 基址
isp_testrun_isp_testISP 与存储/总线协同(整片)
mem_testrun_mem_testSRAM 读写与对齐
ledrun_led简单 GPIO/LED
soc_dma_testrun_soc_dma_testDMA target/src/xfer 0x30000000
soc_dma_test1/2run_soc_dma_test1/2DMA 变体场景
simple_systemrun_simple_system最小系统启动
commonMakefile · link.ld · crt0.S · riscv32-gcc

Makefile 关键目标

comp

清空 comp/ → 拷贝 filelist → sed 路径 → vcs -f top.f → comp/simv

run_<场景>

拷贝 comp + sw 场景 → 生成 vmem → mem.data → 执行 SIMV

debug_<场景>

同 run_*,保留目录便于 Verdi 后仿真

run_all

CO + comp + run(TEST 默认 spi1,推荐直接用场景名)