Verdi实现信号的平移

在Verilog/System verilog中,# xxx 可以实现延迟指定时间的功能,而在使用verdi查看信号波形并进行分析时,同样也可以实现类似的功能。

(注 :这种信号平移是有其应用场景的,例如,在某些仿真模型中,为了模拟实际的信号延迟,信号的实际跳变沿往往和时钟的上升沿不是完全对齐的,而是存在一定时间的错开,这样,在将该信号与clk相与时,就会出现毛刺,从而干扰后续的分析)

下面,以时钟信号clk为例,展示verdi对信号进行平移的实现方法。

左移指定时间

原始波形

为了进行左移,首先选中clk信号,然后单击Signal ,选择Logical Operation... 。

进入如下界面后,在Name处设置平移后信号的名称,在图中,<<-即为对信号进行左移的符号,其使用方法为n<<-,表示将信号向左平移n个单位时间 ,这里,单位时间由timescale决定,在下图中,为10ps,因此语句100<<-/test/clk表示将clk信号左移100×10ps=1ns。

编辑完毕后,点击Create/Modified ,然后点击Close 。

平移后的信号如下图所示:

由图可知,平移后的clk相对与原clk信号,向左偏移了100×10ps=1ns,符合预期。

向右平移指定时间

如图所示,右移指定时间的语法为->>n,表示将信号右移n个时间单位 。在上图中,clk信号被向右移动了1000×10ps=10ns,如下图所示:

为了便于展示,图中clk向右平移了5ns,只需将逻辑表达式中的1000改为500即可。

相关推荐
逐光者9331 小时前
超前进位加法器:原理、推导与 Verilog 实现
fpga开发
szxinmai主板定制专家2 小时前
ZYNQ PL+PS 架构拆解|工业自动化与电力物联网高速数据采集、预处理与协议上云
arm开发·人工智能·物联网·fpga开发·数据采集卡·rk3576
szxinmai主板定制专家3 小时前
告别 ARM 实时性短板:基于 ZYNQ 的电力故障录波 + 工业振动数据采集系统设计
arm开发·人工智能·fpga开发·zynq·数据采集卡·arm+fpga·rk3588+fpga
FPGA小徐5 小时前
FPGA 实现 Canny 边缘检测|大白话原理 + 专业工程解析
fpga开发
辰丁电子16 小时前
allegro入门教程-菜单栏Analyze
fpga开发·pcb设计·pcb工艺·pcb·layout
鸥梨菌Honevid18 小时前
UVM 中 raise_objection 与 drop_objection 的作用与重要性详解
fpga开发
叶子野格1 天前
《FPGA基本知识累积:看开发指南要懂的术语》
学习·fpga开发
傻童:CPU1 天前
vivado中ILA出现no connect
fpga开发
松小白song2 天前
【硬核排错实录】FPGA DDS 波形卡死:寄存器有值但正弦 / 三角 / 自定义波形完全不输出(双通道失效终极解决)
fpga开发
星夜离尘562 天前
UART偶发乱码:波特率分频误差之外,还要算采样漂移
fpga开发·uart