`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(局部)以内的,大多数仿真不需要这么高的精度,尤其是做功能仿真的时候。

相关推荐
Kong_19945 小时前
芯片开发学习笔记·二十九——大模型基础知识与 KV Cache 详解
fpga开发·芯片开发
m0_46644103詹湛7 小时前
FPGA 定点数、小数与负数的加减乘除原理
fpga开发
zlinear数据采集卡9 小时前
D223上位机C#开发实战:从帧解析到波形显示的完整实现
开发语言·arm开发·嵌入式硬件·fpga开发·开源·c#
zlinear数据采集卡12 小时前
D223 ADC数据处理流水线:从原始采样值到工程单位的完整转换链
开发语言·arm开发·嵌入式硬件·fpga开发·开源·c#
FPGA小迷弟12 小时前
Vivado中高速收发器GTX/GTH的配置与调试实战
fpga开发·fpga·硬件开发
minglie112 小时前
简易寄存器接口SMMR---iic控制器
fpga开发
FPGA小迷弟13 小时前
Vivado ILA与VIO调试工具实战指南:从入门到精通
fpga开发·fpga·硬件开发
FPGA小迷弟19 小时前
FPGA状态机设计详解:从Moore到Mealy的完整指南
fpga开发·fpga
zlinear数据采集卡1 天前
D223的PWM电机控制:6路独立脉冲+加减速算法深度解析
arm开发·stm32·嵌入式硬件·算法·fpga开发·架构
zlinear数据采集卡2 天前
ZLinear产品线全景对比:D223 vs DABL7606 vs DABL-G511选型指南
arm开发·嵌入式硬件·算法·fpga开发·开源