`timescale 1ns/1ps的意义

使用Xilinx的IDE创建新代码文件的时候,IDE会自动添加上一个`timescale 1ns/1ps。

1、`timescale 1ns/1ps只作用于软件仿真,不参与实际的编译。

2、`timescale 1ns/1ps的功能和定义

`timescale 仿真延时/仿真精度

以下面的一段代码为例

复制代码
module sim_prbs_test;
    reg clk;
    reg reset;
    wire [7:0] prbs_out;
    wire error;

    prbs_test uut (
        .clk(clk),
        .reset(reset),
        .prbs_out(prbs_out),
        .error(error)
    );

    initial begin
        clk = 0;
        reset = 1;
        #10 reset = 0;
        #1000 $stop;
    end

    always #5 clk = ~clk;

    initial begin
        $monitor("Time: %0d, PRBS Out: %b, Error: %b", $time, prbs_out, error);
    end
endmodule

`timescale 1ns/1ps的含义:

11ns表示仿真延时, #1 = 1ns,比如代码中的#10 reset = 0; 就是等待10ns后,reset置0.

21ps是仿真的计算精度,也就是仿真后的结果图上能呈现的最小颗粒度是1ps,颗粒度越小,仿真计算的过程越漫长,所以大型仿真计算最好根据实际情况调整这个值,以提高仿真速度。1ps其实是非常小的结果,1ps对应的频率是1THz,如下图的时间轴。

而FPGA内部的逻辑通常也就是在500MHz(局部)以内的,大多数仿真不需要这么高的精度,尤其是做功能仿真的时候。

相关推荐
博览鸿蒙3 天前
FPGA开发使用的语言
fpga开发·fpga
明德扬3 天前
机器人多摄像头如何做FPGA多路视频聚合?
学习·fpga开发·fpga
JoYER_cc4 天前
FPGA 调试实录:LED 闪烁程序从踩坑到仿真验证的完整经验总结
fpga开发
ktd0074 天前
复旦微开发环境搭建流程备忘录
fpga开发
ERROR:994 天前
陈工,试试Agent开发FPGA
fpga开发
威嵌神州4 天前
复旦微 FMQL100TAI 开发 8 问:仿真器、系统、接口高频问题解答
人工智能·嵌入式硬件·fpga开发
北京青翼科技4 天前
青翼基于PCIe的VU13P FPGA信号处理板
fpga开发·fpga开发板·图像处理卡·pcie板卡
szxinmai主板定制专家4 天前
NXP LS1046A 硬件方案: LS1046A+FPGA 异构加速架构实践
大数据·图像处理·人工智能·嵌入式硬件·fpga开发
Riwuarua5 天前
从近似0基础开始FPGA开发 -- part.14 JESD204协议、IP核与嵌入式初始化
fpga开发·jesd
第二层皮-合肥6 天前
Vivado 自动生成的 AXI‑Lite 从机 IP 的操作步骤
fpga开发