FPGA中verilog语言这个U 表示什么意思?
程序最开头有个这个:`defineUD#1always@(posedgeSYSCLKornegedgeRST_B)beginif(!RST_B)LED_SCAN_CNT<...
程序最开头有个这个:`define UD #1
always @ (posedge SYSCLK or negedge RST_B)
begin
if(!RST_B)
LED_SCAN_CNT <= `UD 24'h0;
else
LED_SCAN_CNT <= `UD LED_SCAN_CNT_N;
end
1:这个 `UD 有什么作用呢?
2:LED_SCAN_CNT <= `UD LED_SCAN_CNT_N;这个句子表示什么意思? 展开
always @ (posedge SYSCLK or negedge RST_B)
begin
if(!RST_B)
LED_SCAN_CNT <= `UD 24'h0;
else
LED_SCAN_CNT <= `UD LED_SCAN_CNT_N;
end
1:这个 `UD 有什么作用呢?
2:LED_SCAN_CNT <= `UD LED_SCAN_CNT_N;这个句子表示什么意思? 展开
3个回答
2013-09-17
展开全部
1、开头不是定义了 UD #1 ;`UD 就代表调用#1,为了方便修改所有延时。你想你只需要修改#1,就可以改程序中所有调用的地方。
2、LED_SCAN_CNT <= #1 LED_SCAN_CNT_N;这个是寄存器赋值。
2、LED_SCAN_CNT <= #1 LED_SCAN_CNT_N;这个是寄存器赋值。
追问
这里的延时有什么作用?单位是ns?
追答
只有在仿真的时候才有用,通常为了模拟真实器件的延时。
综合的时候是忽略的,因为库单元中已经包含延时模型。
单位是由文件头`timescale 1ns/1ps 决定的,前一个时间代表单位,后一个代表最小精度。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
那是定义了一个延时 LED_SCAN_CNT <= `UD LED_SCAN_CNT_N的意思就是先延时一个时间单位,然后将LED_SCAN_CNT_N的值赋给LED_SCAN_CNT
更多追问追答
追问
求教这里的延时有什么作用?单位是ns?
追答
没什么用 这种写法都是仿真的时候用的 是不可综合成电路的 延时就是延时呗 就是等一会再赋值啊 能有什么作用啊
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询