maste
This commit is contained in:
@@ -1,2 +1,11 @@
|
|||||||
# palladium_z2_demo
|
# RISC-V Demo for Palladium Z2
|
||||||
|
|
||||||
|
## 目录结构
|
||||||
|
|
||||||
|
riscv_demo/
|
||||||
|
├── design/
|
||||||
|
│ └── top.v # RISC-V 顶层模块
|
||||||
|
├── testbench/
|
||||||
|
│ └── testbench.v # 测试激励
|
||||||
|
└── scripts/
|
||||||
|
└── run_all.tcl # Palladium Z2 脚本
|
||||||
|
|||||||
@@ -0,0 +1,13 @@
|
|||||||
|
`timescale 1ns/1ps
|
||||||
|
module top (
|
||||||
|
input clk,
|
||||||
|
input reset_n,
|
||||||
|
output [31:0] pc_out
|
||||||
|
);
|
||||||
|
reg [31:0] pc;
|
||||||
|
always @(posedge clk or negedge reset_n) begin
|
||||||
|
if (!reset_n) pc <= 0;
|
||||||
|
else pc <= pc + 4;
|
||||||
|
end
|
||||||
|
assign pc_out = pc;
|
||||||
|
endmodule
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
# run_all.tcl - Palladium Z2 Demo Script
|
||||||
|
puts "INFO: Starting Palladium Z2 simulation..."
|
||||||
|
set DESIGN_NAME "top"
|
||||||
|
set WORK_DIR "./work"
|
||||||
|
file mkdir $WORK_DIR
|
||||||
|
cd $WORK_DIR
|
||||||
|
|
||||||
|
# 加载设计(示例,实际需替换为你的编译命令)
|
||||||
|
puts "INFO: Loading design into Palladium Z2..."
|
||||||
|
if {[catch {load_design -format verilog -top $DESIGN_NAME} err]} {
|
||||||
|
puts "ERROR: Failed to load design: $err"
|
||||||
|
exit 1
|
||||||
|
}
|
||||||
|
|
||||||
|
# 配置波形数据库
|
||||||
|
puts "INFO: Setting up waveform database..."
|
||||||
|
database -open waves -shm
|
||||||
|
probe -create -all -depth all -database waves
|
||||||
|
|
||||||
|
# 运行仿真
|
||||||
|
puts "INFO: Running simulation for 1000 cycles..."
|
||||||
|
run 1000
|
||||||
|
|
||||||
|
# 调试信息
|
||||||
|
if {[task_exists show_cpu_pc]} {
|
||||||
|
show_cpu_pc
|
||||||
|
} else {
|
||||||
|
puts "WARNING: show_cpu_pc task not found"
|
||||||
|
}
|
||||||
|
|
||||||
|
# 保存波形
|
||||||
|
if {[file exists waves.shm]} {
|
||||||
|
puts "INFO: Saving waveform traces..."
|
||||||
|
trace -name basic -database waves -add *
|
||||||
|
trace -save -database waves ./wave_debug.trn
|
||||||
|
} else {
|
||||||
|
puts "WARNING: No waveform database found"
|
||||||
|
}
|
||||||
|
|
||||||
|
puts "INFO: Simulation completed successfully."
|
||||||
|
exit 0
|
||||||
@@ -0,0 +1,63 @@
|
|||||||
|
## xeDebug starts at 09/22/2025 14:48:07, PID: 100527
|
||||||
|
REMOTEHOST=172.16.10.16
|
||||||
|
BLT_LIBRARY=/edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/etc/ui/blt
|
||||||
|
XDG_SESSION_ID=21345
|
||||||
|
HOSTNAME=scmp23
|
||||||
|
S3_ROOT=/edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/bin/64bit
|
||||||
|
HOST=scmp23
|
||||||
|
TERM=xterm
|
||||||
|
SHELL=/bin/csh
|
||||||
|
AXIS_HOME=/edatools/cadence/IXCOM/IXCOM23.03.005/tools.lnx86
|
||||||
|
SSH_CLIENT=172.16.10.16 53482 22
|
||||||
|
QTHOME=/edatools/cadence/WXE/WXE23.03.s005/tools.lnx86
|
||||||
|
TIX_LIBRARY=/edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/etc/ui/tix
|
||||||
|
TK_LIBRARY=/edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/etc/ui/tk
|
||||||
|
USERPATH=/edatools/cadence/XCELIUM/XCELIUM23.09.001/bin:/edatools/cadence/XCELIUM/XCELIUM23.09.001/tools.lnx86/bin:/edatools/cadence/XCELIUM/XCELIUM23.09.001/tools.lnx86/inca/bin:/edatools/cadence/XCELIUM/XCELIUM23.09.001/tools/cdsgcc/gcc/bin:/edatools/cadence/IXCOM/IXCOM23.03.005/bin:/edatools/cadence/WXE/WXE23.03.s005/share/vxe/gift/misc:/edatools/cadence/WXE/WXE23.03.s005/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin
|
||||||
|
QTDIR=/usr/lib64/qt-3.3
|
||||||
|
QTINC=/usr/lib64/qt-3.3/include
|
||||||
|
SSH_TTY=/dev/pts/0
|
||||||
|
QT_GRAPHICSSYSTEM_CHECKED=1
|
||||||
|
GROUP=domain users
|
||||||
|
USER=xuejin.wang
|
||||||
|
LD_LIBRARY_PATH=/edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/lib/64bit:/edatools/cadence/IXCOM/IXCOM23.03.005/tools.lnx86/lib/64bit:/edatools/cadence/IXCOM/IXCOM23.03.005/tools.lnx86/lib/64bit:/usr/lib64:/edatools/cadence/XCELIUM/XCELIUM23.09.001/tools/systemc/lib/64bit/gnu:/edatools/cadence/XCELIUM/XCELIUM23.09.001/tools.lnx86/lib/64bit:/edatools/cadence/IXCOM/IXCOM23.03.005/tools.lnx86/lib/64bit:/edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/lib/64bit
|
||||||
|
LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=01;05;37;41:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.jpg=01;35:*.jpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.axv=01;35:*.anx=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=01;36:*.au=01;36:*.flac=01;36:*.mid=01;36:*.midi=01;36:*.mka=01;36:*.mp3=01;36:*.mpc=01;36:*.ogg=01;36:*.ra=01;36:*.wav=01;36:*.axa=01;36:*.oga=01;36:*.spx=01;36:*.xspf=01;36:
|
||||||
|
TCL_LIBRARY=/edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/etc/qel
|
||||||
|
HOSTTYPE=x86_64-linux
|
||||||
|
OS_BITS=64bit
|
||||||
|
HDLICE_HOME=/edatools/cadence/IXCOM/IXCOM23.03.005/tools.lnx86
|
||||||
|
MAIL=/var/spool/mail/xuejin.wang
|
||||||
|
PATH=/edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/../bin:/edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/bin:/edatools/cadence/XCELIUM/XCELIUM23.09.001/bin:/edatools/cadence/XCELIUM/XCELIUM23.09.001/tools.lnx86/bin:/edatools/cadence/XCELIUM/XCELIUM23.09.001/tools.lnx86/inca/bin:/edatools/cadence/XCELIUM/XCELIUM23.09.001/tools/cdsgcc/gcc/bin:/edatools/cadence/IXCOM/IXCOM23.03.005/bin:/edatools/cadence/WXE/WXE23.03.s005/share/vxe/gift/misc:/edatools/cadence/WXE/WXE23.03.s005/bin:/usr/lib64/qt-3.3/bin:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/bin:/sbin
|
||||||
|
XE_HARDWARE=z2
|
||||||
|
PWD=/home/xuejin.wang/demo06/scrits
|
||||||
|
_LMFILES_=/edatools/modules/WXE23.03.s005:/edatools/modules/IXCOM23.03.005:/edatools/modules/XCELIUM2309
|
||||||
|
LANG=C
|
||||||
|
MODULEPATH=/usr/share/Modules/modulefiles:/etc/modulefiles
|
||||||
|
LOADEDMODULES=WXE23.03.s005:IXCOM23.03.005:XCELIUM2309
|
||||||
|
DBOUT=./dbFiles
|
||||||
|
LM_LICENSE_FILE=5280@172.16.10.96:5280@172.16.10.97:5280@172.16.10.95:5280@172.16.10.94
|
||||||
|
KRB5CCNAME=KEYRING:persistent:1140202441
|
||||||
|
QTHDLHOME=/edatools/cadence/IXCOM/IXCOM23.03.005/tools.lnx86
|
||||||
|
SHLVL=1
|
||||||
|
HOME=/home/xuejin.wang
|
||||||
|
OSTYPE=linux
|
||||||
|
XE_ROOT=/edatools/cadence/WXE/WXE23.03.s005
|
||||||
|
VENDOR=unknown
|
||||||
|
USERLIBPATH=/edatools/cadence/XCELIUM/XCELIUM23.09.001/tools/systemc/lib/64bit/gnu:/edatools/cadence/XCELIUM/XCELIUM23.09.001/tools.lnx86/lib/64bit:/edatools/cadence/IXCOM/IXCOM23.03.005/tools.lnx86/lib/64bit:/edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/lib/64bit
|
||||||
|
MACHTYPE=x86_64
|
||||||
|
LOGNAME=xuejin.wang
|
||||||
|
QTLIB=/usr/lib64/qt-3.3/lib
|
||||||
|
SSH_CONNECTION=172.16.10.16 53482 172.16.10.128 22
|
||||||
|
AXIS_ARCH=lib/x86-lx2-64
|
||||||
|
MODULESHOME=/usr/share/Modules
|
||||||
|
DBIN=.:/edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/lib/64bit:/edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/bin:/edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/bin/64bit:./64bit:./dbFiles:/edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/etc/et3:/edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/bin/x86-lx2-64:/et3mach
|
||||||
|
LESSOPEN=||/usr/bin/lesspipe.sh %s
|
||||||
|
XDG_RUNTIME_DIR=/run/user/1140202441
|
||||||
|
DISPLAY=localhost:10.0
|
||||||
|
HSV_ROOT=/edatools/cadence/WXE/WXE23.03.s005
|
||||||
|
JE_MALLOC_CONF=dirty_decay_ms:10000,muzzy_decay_ms:5000,narenas:4
|
||||||
|
CDNS_VRAPI_SEQ_DELTA_EN=1
|
||||||
|
CDNS_VRAPI_INST_RELVL_EN=1
|
||||||
|
CDNS_XBT_LOG_NAME=./tmp/xmsim-aidLogs_pid100527.log
|
||||||
|
QTLOG_FILE=xe.msg
|
||||||
|
CvAlEgAlRoOt=100527
|
||||||
|
|
||||||
@@ -0,0 +1,56 @@
|
|||||||
|
|
||||||
|
## xeDebug starts at 09/22/2025 14:48:07 xuejin.wang V23.03.342.s005, HOST: scmp23, PID: 100527, DISPLAY: localhost:10.0
|
||||||
|
xeDebug
|
||||||
|
## 64bit program from /edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/bin on Linux 3.10.0-1160.el7.x86_64 64bit
|
||||||
|
(c) 1991-2023 Cadence Design Systems, Inc. All rights reserved worldwide.
|
||||||
|
See files in <rootdir>/share/vxe/install/Copyrights
|
||||||
|
#)libdbg.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libdbk.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libdbs.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libdbserver.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libvec.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libvcp.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libcbid.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libdbgfv.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libswfv.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libinfinifile.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libcorun.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libdrtl.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libsdl.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libsdltm.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libaba.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libsst2w.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libfsdb.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libfsdb_wrapper.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libvw.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libvcd.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libtcf.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libsaif.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libsaifr.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libqtutil.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libdbgutil.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libeclutil.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libCompilerRT.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libdb.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libsmDB.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libtypedb.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libudqr.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libhdldb.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libhdlucdb.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libhwConfig.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libdb3.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libsideFile.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libmembin.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libtcl.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libtk.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libtkdnd.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libtix.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libfvenginei.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libzcompress.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libqt.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libqtutil.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libxeconfig.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libsd.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
## xeDebug exits at 09/22/2025 14:48:15 Status: -1, PID: 100527
|
||||||
|
## xeDebug Elapsed time: 0:00:08, CPU time: 0:00:00.02, Memory Usage: 1.3G
|
||||||
|
## Child Proc. CPU time: 0:00:00.21
|
||||||
+113
@@ -0,0 +1,113 @@
|
|||||||
|
|
||||||
|
## xeDebug starts at 09/22/2025 14:48:07 xuejin.wang V23.03.342.s005, HOST: scmp23, PID: 100527, DISPLAY: localhost:10.0
|
||||||
|
xeDebug
|
||||||
|
## 64bit program from /edatools/cadence/WXE/WXE23.03.s005/tools.lnx86/bin on Linux 3.10.0-1160.el7.x86_64 64bit
|
||||||
|
(c) 1991-2023 Cadence Design Systems, Inc. All rights reserved worldwide.
|
||||||
|
See files in <rootdir>/share/vxe/install/Copyrights
|
||||||
|
#)libdbg.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libdbk.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libdbs.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libdbserver.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libvec.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libvcp.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libcbid.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libdbgfv.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libswfv.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libinfinifile.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libcorun.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libdrtl.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libsdl.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libsdltm.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libaba.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libsst2w.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libfsdb.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libfsdb_wrapper.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libvw.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libvcd.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libtcf.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libsaif.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libsaifr.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libqtutil.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libdbgutil.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libeclutil.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libCompilerRT.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libdb.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libsmDB.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libtypedb.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libudqr.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libhdldb.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libhdlucdb.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libhwConfig.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libdb3.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libsideFile.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libmembin.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libtcl.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libtk.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libtkdnd.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libtix.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libfvenginei.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libzcompress.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libqt.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libqtutil.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libxeconfig.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
#)libsd.so - 23H1_WXE, V23.03.342.s005
|
||||||
|
* System parameters:
|
||||||
|
vm/overcommit_memory: 2
|
||||||
|
vm/overcommit_ratio: 100
|
||||||
|
vm/oom_dump_tasks: 1
|
||||||
|
vm/oom_kill_allocating_task: 0
|
||||||
|
% ulimit -a
|
||||||
|
core file size (blocks, -c) 0
|
||||||
|
data seg size (kbytes, -d) unlimited
|
||||||
|
scheduling priority (-e) 0
|
||||||
|
file size (blocks, -f) unlimited
|
||||||
|
pending signals (-i) 13413065
|
||||||
|
max locked memory (kbytes, -l) unlimited
|
||||||
|
max memory size (kbytes, -m) unlimited
|
||||||
|
open files (-n) 16384
|
||||||
|
pipe size (512 bytes, -p) 8
|
||||||
|
POSIX message queues (bytes, -q) 819200
|
||||||
|
real-time priority (-r) 0
|
||||||
|
stack size (kbytes, -s) 32768
|
||||||
|
cpu time (seconds, -t) unlimited
|
||||||
|
max user processes (-u) 13413065
|
||||||
|
virtual memory (kbytes, -v) unlimited
|
||||||
|
file locks (-x) unlimited
|
||||||
|
* CPU info:
|
||||||
|
Number of CPUs: 144
|
||||||
|
Name: Intel(R) Xeon(R) Gold 6240L CPU @ 2.60GHz
|
||||||
|
Vendor: GenuineIntel, family: 6, model: 85, stepping: 7
|
||||||
|
CPU min MHz: 1000.0000, BogoMIPS: 5200.00, virtualization: VT-x
|
||||||
|
L1d cache: 32K, L1i cache: 32K, L2 cache: 1024K, L3 cache: 25344K
|
||||||
|
* Memory info:
|
||||||
|
total used free shared buffers cached
|
||||||
|
Mem (GB): 3274 109 3165 0 0 7
|
||||||
|
Swap (GB): 3 0 3
|
||||||
|
* Load info:
|
||||||
|
6490 threads
|
||||||
|
Load (avg): 1 min (% CPU) | 5 min (% CPU) | 15 min (% CPU)
|
||||||
|
0.04 ( 0% CPU) | 0.03 ( 0% CPU) | 0.05 ( 0% CPU)
|
||||||
|
System info: scmp23 - xeDebug - 100527 363095 - qtInit - 2025-09-22 14:48:07 - 0.04 0% 0.03 0% 0.05 0% - 3274 109 3165 7 3 0 3
|
||||||
|
000,000 s: WARNING (legacy-52177): There is no remote shell in your path.
|
||||||
|
000,000 s: Check the value of XE_SECURE_CONNECTION and your OS environment.
|
||||||
|
000,000 s: REPORT (legacy-55007): CDN_FV_NO_LOCAL_HOST value is auto. CDN_FV_NO_LOCAL_HOST setting is auto.
|
||||||
|
000,000 s: XE> * Memory info:
|
||||||
|
total used free shared buffers cached
|
||||||
|
Mem (GB): 3274 109 3165 0 0 7
|
||||||
|
Swap (GB): 3 0 3
|
||||||
|
* Load info:
|
||||||
|
6492 threads
|
||||||
|
Load (avg): 1 min (% CPU) | 5 min (% CPU) | 15 min (% CPU)
|
||||||
|
0.04 ( 0% CPU) | 0.03 ( 0% CPU) | 0.05 ( 0% CPU)
|
||||||
|
System info: scmp23 - xeDebug - 100527 363095 - qtExit - 2025-09-22 14:48:15 - 0.04 0% 0.03 0% 0.05 0% - 3274 109 3165 7 3 0 3
|
||||||
|
Peak usage info for xeDebug (pid 100527, ppid 363095) on scmp23: CPU usage 0.00, Peak mem (Res 0 GB, Virt 1 GB), freePhyMem 3166 GB, totalPhyMem 3275 GB, freeSwap 4 GB, totalSwap 4 GB
|
||||||
|
source run_all.tcl
|
||||||
|
000,008 s: INFO: Starting Palladium Z2 simulation...
|
||||||
|
000,008 s: INFO: Loading design into Palladium Z2...
|
||||||
|
000,008 s: ERROR: Failed to load design: invalid command name "load_design"
|
||||||
|
000,008 s: xe> exit 1
|
||||||
|
000,008 s: INFO (legacy-45111): Unhandled exception found: in make_fileptr(): No such file or directory. Exiting...
|
||||||
|
DRM memory info: scmp23 - xeDebug - 100527 - 363095 - unknown unlimited
|
||||||
|
## xeDebug exits at 09/22/2025 14:48:15 Status: -1, PID: 100527
|
||||||
|
## xeDebug Elapsed time: 0:00:08, CPU time: 0:00:00.02, Memory Usage: 1.3G
|
||||||
|
## Child Proc. CPU time: 0:00:00.21
|
||||||
@@ -0,0 +1,47 @@
|
|||||||
|
`timescale 1ns/1ps
|
||||||
|
|
||||||
|
module testbench;
|
||||||
|
// 1. 声明变量(限制位宽为 128 位,即 16 字符)
|
||||||
|
reg clk;
|
||||||
|
reg reset_n;
|
||||||
|
wire [31:0] pc_out;
|
||||||
|
integer fd;
|
||||||
|
reg [8*16:1] dump_path; // 16 字符足够存储路径
|
||||||
|
|
||||||
|
// 实例化被测设计
|
||||||
|
top uut (
|
||||||
|
.clk(clk),
|
||||||
|
.reset_n(reset_n),
|
||||||
|
.pc_out(pc_out)
|
||||||
|
);
|
||||||
|
|
||||||
|
// 2. 生成时钟
|
||||||
|
initial begin
|
||||||
|
clk = 0;
|
||||||
|
forever #5 clk = ~clk;
|
||||||
|
end
|
||||||
|
|
||||||
|
// 3. 波形生成和错误处理
|
||||||
|
initial begin
|
||||||
|
// 初始化路径(显式赋值)
|
||||||
|
dump_path = "./wave.vcd"; // 自动填充低位,高位补零
|
||||||
|
|
||||||
|
// 尝试创建文件
|
||||||
|
fd = $fopen(dump_path, "w");
|
||||||
|
if (fd == 0) begin
|
||||||
|
$display("ERROR: Cannot open %s for writing!", dump_path);
|
||||||
|
$finish;
|
||||||
|
end
|
||||||
|
$fclose(fd);
|
||||||
|
|
||||||
|
// 初始化波形记录(添加 +access+r)
|
||||||
|
$dumpfile(dump_path);
|
||||||
|
$dumpvars(0, testbench); // 记录所有信号
|
||||||
|
$display("Waveform will be saved to %s", dump_path);
|
||||||
|
|
||||||
|
// 复位和仿真控制
|
||||||
|
reset_n = 0;
|
||||||
|
#100 reset_n = 1;
|
||||||
|
#10000 $finish;
|
||||||
|
end
|
||||||
|
endmodule
|
||||||
@@ -0,0 +1,46 @@
|
|||||||
|
`timescale 1ns/1ps
|
||||||
|
|
||||||
|
module testbench;
|
||||||
|
// 1. 在模块开头声明所有变量
|
||||||
|
reg clk;
|
||||||
|
reg reset_n;
|
||||||
|
wire [31:0] pc_out;
|
||||||
|
integer fd; // 文件描述符
|
||||||
|
string dump_path = "/tmp/wave.vcd"; // 字符串变量
|
||||||
|
|
||||||
|
|
||||||
|
// 实例化被测设计
|
||||||
|
top uut (
|
||||||
|
.clk(clk),
|
||||||
|
.reset_n(reset_n),
|
||||||
|
.pc_out(pc_out)
|
||||||
|
);
|
||||||
|
|
||||||
|
// 2. 生成时钟
|
||||||
|
initial begin
|
||||||
|
clk = 0;
|
||||||
|
forever #5 clk = ~clk; // 100MHz 时钟
|
||||||
|
end
|
||||||
|
|
||||||
|
// 3. 波形生成和错误处理
|
||||||
|
initial begin
|
||||||
|
// 尝试创建文件
|
||||||
|
fd = $fopen(dump_path, "w");
|
||||||
|
if (fd == 0) begin
|
||||||
|
$display("ERROR: Cannot open %s for writing!", dump_path);
|
||||||
|
$finish;
|
||||||
|
end
|
||||||
|
$fclose(fd);
|
||||||
|
|
||||||
|
// 初始化波形记录
|
||||||
|
$dumpfile(dump_path);
|
||||||
|
$dumpvars(0, testbench);
|
||||||
|
$display("Waveform will be saved to %s", dump_path);
|
||||||
|
|
||||||
|
// 复位和仿真控制
|
||||||
|
reset_n = 0;
|
||||||
|
#100 reset_n = 1;
|
||||||
|
#1000 $finish;
|
||||||
|
end
|
||||||
|
|
||||||
|
endmodule
|
||||||
@@ -0,0 +1,49 @@
|
|||||||
|
`timescale 1ns/1ps
|
||||||
|
|
||||||
|
module testbench;
|
||||||
|
// 1. 声明变量(纯 Verilog)
|
||||||
|
reg clk;
|
||||||
|
reg reset_n;
|
||||||
|
wire [31:0] pc_out;
|
||||||
|
integer fd; // 文件描述符
|
||||||
|
reg [8*80:1] dump_path; // 用 reg 数组模拟字符串
|
||||||
|
|
||||||
|
// 实例化被测设计
|
||||||
|
top uut (
|
||||||
|
.clk(clk),
|
||||||
|
.reset_n(reset_n),
|
||||||
|
.pc_out(pc_out)
|
||||||
|
);
|
||||||
|
|
||||||
|
// 2. 生成时钟
|
||||||
|
initial begin
|
||||||
|
clk = 0;
|
||||||
|
forever #5 clk = ~clk; // 100MHz 时钟
|
||||||
|
end
|
||||||
|
|
||||||
|
// 3. 波形生成和错误处理
|
||||||
|
initial begin
|
||||||
|
// 初始化路径(用字符串拼接模拟)
|
||||||
|
dump_path = "/tmp/wave.vcd"; // Verilog 中直接赋值 reg 数组
|
||||||
|
|
||||||
|
// 尝试创建文件
|
||||||
|
fd = $fopen(dump_path, "w");
|
||||||
|
if (fd == 0) begin
|
||||||
|
$display("ERROR: Cannot open ", dump_path, " for writing!"); // 字符串拼接
|
||||||
|
$finish;
|
||||||
|
end
|
||||||
|
$fclose(fd);
|
||||||
|
|
||||||
|
// 初始化波形记录
|
||||||
|
$dumpfile(dump_path);
|
||||||
|
$dumpvars(0, testbench);
|
||||||
|
$display("Waveform will be saved to ", dump_path); // 字符串拼接
|
||||||
|
|
||||||
|
// 复位和仿真控制
|
||||||
|
reset_n = 0;
|
||||||
|
#100 reset_n = 1;
|
||||||
|
#1000 $finish;
|
||||||
|
end
|
||||||
|
|
||||||
|
endmodule
|
||||||
|
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
`timescale 1ns/1ps
|
||||||
|
|
||||||
|
module testbench;
|
||||||
|
// 1. 声明变量(限制字符串位宽)
|
||||||
|
reg clk;
|
||||||
|
reg reset_n;
|
||||||
|
wire [31:0] pc_out;
|
||||||
|
integer fd;
|
||||||
|
reg [8*128:1] dump_path; // 限制为 128 字节(足够存储路径)
|
||||||
|
|
||||||
|
// 实例化被测设计
|
||||||
|
top uut (
|
||||||
|
.clk(clk),
|
||||||
|
.reset_n(reset_n),
|
||||||
|
.pc_out(pc_out)
|
||||||
|
);
|
||||||
|
|
||||||
|
// 2. 生成时钟
|
||||||
|
initial begin
|
||||||
|
clk = 0;
|
||||||
|
forever #5 clk = ~clk;
|
||||||
|
end
|
||||||
|
|
||||||
|
// 3. 波形生成和错误处理
|
||||||
|
initial begin
|
||||||
|
// 初始化路径(显式赋值)
|
||||||
|
dump_path = "./wave.vcd";
|
||||||
|
|
||||||
|
// 尝试创建文件
|
||||||
|
fd = $fopen(dump_path, "w");
|
||||||
|
if (fd == 0) begin
|
||||||
|
$display("ERROR: Cannot open %s for writing!", dump_path);
|
||||||
|
$finish;
|
||||||
|
end
|
||||||
|
$fclose(fd);
|
||||||
|
|
||||||
|
// 初始化波形记录(添加 +access+r)
|
||||||
|
$dumpfile(dump_path);
|
||||||
|
$dumpvars(0, testbench); // 记录所有信号
|
||||||
|
$display("Waveform will be saved to %s", dump_path);
|
||||||
|
|
||||||
|
// 复位和仿真控制
|
||||||
|
reset_n = 0;
|
||||||
|
#100 reset_n = 1;
|
||||||
|
#1000 $finish;
|
||||||
|
end
|
||||||
|
|
||||||
|
endmodule
|
||||||
@@ -0,0 +1,48 @@
|
|||||||
|
`timescale 1ns/1ps
|
||||||
|
|
||||||
|
module testbench;
|
||||||
|
// 1. 声明变量(限制字符串位宽)
|
||||||
|
reg clk;
|
||||||
|
reg reset_n;
|
||||||
|
wire [31:0] pc_out;
|
||||||
|
integer fd;
|
||||||
|
reg [8*128:1] dump_path; // 限制为 128 字节(足够存储路径)
|
||||||
|
|
||||||
|
// 实例化被测设计
|
||||||
|
top uut (
|
||||||
|
.clk(clk),
|
||||||
|
.reset_n(reset_n),
|
||||||
|
.pc_out(pc_out)
|
||||||
|
);
|
||||||
|
|
||||||
|
// 2. 生成时钟
|
||||||
|
initial begin
|
||||||
|
clk = 0;
|
||||||
|
forever #5 clk = ~clk;
|
||||||
|
end
|
||||||
|
|
||||||
|
// 3. 波形生成和错误处理
|
||||||
|
initial begin
|
||||||
|
// 初始化路径(显式赋值)
|
||||||
|
dump_path = "./wave.vcd";
|
||||||
|
|
||||||
|
// 尝试创建文件
|
||||||
|
fd = $fopen(dump_path, "w");
|
||||||
|
if (fd == 0) begin
|
||||||
|
$display("ERROR: Cannot open %s for writing!", dump_path);
|
||||||
|
$finish;
|
||||||
|
end
|
||||||
|
$fclose(fd);
|
||||||
|
|
||||||
|
// 初始化波形记录(添加 +access+r)
|
||||||
|
$dumpfile(dump_path);
|
||||||
|
$dumpvars(0, testbench); // 记录所有信号
|
||||||
|
$display("Waveform will be saved to %s", dump_path);
|
||||||
|
|
||||||
|
// 复位和仿真控制
|
||||||
|
reset_n = 0;
|
||||||
|
#100 reset_n = 1;
|
||||||
|
#1000 $finish;
|
||||||
|
end
|
||||||
|
|
||||||
|
endmodule
|
||||||
@@ -0,0 +1,46 @@
|
|||||||
|
`timescale 1ns/1ps
|
||||||
|
|
||||||
|
module testbench;
|
||||||
|
// 1. 声明所有变量
|
||||||
|
reg clk;
|
||||||
|
reg reset_n;
|
||||||
|
wire [31:0] pc_out;
|
||||||
|
integer fd;
|
||||||
|
string dump_path = "/tmp/wave.vcd"; // SystemVerilog 支持直接赋值
|
||||||
|
|
||||||
|
// 实例化被测设计
|
||||||
|
top uut (
|
||||||
|
.clk(clk),
|
||||||
|
.reset_n(reset_n),
|
||||||
|
.pc_out(pc_out)
|
||||||
|
);
|
||||||
|
|
||||||
|
// 2. 生成时钟
|
||||||
|
initial begin
|
||||||
|
clk = 0;
|
||||||
|
forever #5 clk = ~clk;
|
||||||
|
end
|
||||||
|
|
||||||
|
// 3. 波形生成和错误处理
|
||||||
|
initial begin
|
||||||
|
// 尝试创建文件
|
||||||
|
fd = $fopen(dump_path, "w");
|
||||||
|
if (fd == 0) begin
|
||||||
|
string err_msg = $sformatf("ERROR: Cannot open %s for writing!", dump_path); // SystemVerilog 格式化
|
||||||
|
$display("%s", err_msg);
|
||||||
|
$finish;
|
||||||
|
end
|
||||||
|
$fclose(fd);
|
||||||
|
|
||||||
|
// 初始化波形记录
|
||||||
|
$dumpfile(dump_path);
|
||||||
|
$dumpvars(0, testbench);
|
||||||
|
$display("Waveform will be saved to %s", dump_path); // 部分工具支持 %s
|
||||||
|
|
||||||
|
// 复位和仿真控制
|
||||||
|
reset_n = 0;
|
||||||
|
#100 reset_n = 1;
|
||||||
|
#1000 $finish;
|
||||||
|
end
|
||||||
|
|
||||||
|
endmodule
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
s1(22Sep2025:14:47:22): xmverilog +acc+rbn -64bit design/top.v testbench/testbench.v
|
||||||
@@ -0,0 +1,10 @@
|
|||||||
|
xmverilog(64): 23.09-s001: (c) Copyright 1995-2023 Cadence Design Systems, Inc.
|
||||||
|
TOOL: xmverilog 23.09-s001: Started on Sep 22, 2025 at 14:47:21 CST
|
||||||
|
xmverilog
|
||||||
|
+acc+rbn
|
||||||
|
-64bit
|
||||||
|
design/top.v
|
||||||
|
testbench/testbench.v
|
||||||
|
xmverilog: *E,FILEMIS: Cannot find the provided file design/top.v.
|
||||||
|
xmverilog: *E,FILEMIS: Cannot find the provided file testbench/testbench.v.
|
||||||
|
TOOL: xmverilog 23.09-s001: Exiting on Sep 22, 2025 at 14:47:22 CST (total: 00:00:01)
|
||||||
Reference in New Issue
Block a user