FFT 发表于 2010-6-26 01:32:18

在begin---end中竟然有两次的赋值,这样能实现吗 Verilog代码的意思

在begin---end中竟然有两次的赋值,这样能实现吗
请教高手们一段Verilog代码的意思
在仿真的测试模块中CLK是所需的时钟信号,是用下面这段代码实现的,可是触发条件为posedge CLK”,而此时CLK时钟信号还没有产生呢呀,怎么可能有上升沿呢??而且在begin---end中竟然有两次的赋值,这样能实现吗?? 谢谢啦

initial CLK <= 1'b1;
initial CLK_N <= 1'b0;
always @(posedge CLK) begin
CLK <= #(`tCK/2) 1'b0;   
CLK_N <= #(`tCK/2) 1'b1;
CLK <= #(`tCK) 1'b1;
CLK_N <= #(`tCK) 1'b0;
end

ANG 发表于 2010-6-26 02:29:35

请不要重复发贴!

CHANG 发表于 2010-6-26 03:47:57

倍频的?<br>
取决于tCK了

CTT 发表于 2010-6-26 05:06:34

可以实现有CLK个initial值,但是这段代码如果综合的话会有很大的问题,综合的时候不考虑 initial和#(`tCK/2)这种延时

interi 发表于 2010-6-26 06:25:27

..汗. 这个代码含有initial.. 只能跑behav仿真 完全不能综合.

CHAN 发表于 2010-6-26 06:45:26

貌似altera的ddrsdramcontroller core 的tb里面就用这个生成的时钟

interig 发表于 2010-6-26 07:32:02

希望lz用可综合的书写模式写code,结构代码和测试代码至少要分开!

CTT 发表于 2010-6-26 08:27:07

偶是学VHDL的,Verilog以后再学

UFP 发表于 2010-6-26 10:08:05

原帖由 坐等红杏 于 2007-6-11 16:24 发表
       
        http://www.edacn.net/bbs/images/common/back.gif

<br>
竟然还有两个initial!! 这个没有问题阿,有两个initial可以的。只要不是给同一个信号赋值

CHA 发表于 2010-6-26 11:53:06

原帖由 tezhong 于 2007-6-24 11:41 发表
       
        http://www.edacn.net/bbs/images/common/back.gif

<br>
希望lz用可综合的书写模式写code,结构代码和测试代码至少要分开! 这明显是验证用的代码
页: [1] 2
查看完整版本: 在begin---end中竟然有两次的赋值,这样能实现吗 Verilog代码的意思