作者duffrose (腻不药罐)
看板Electronics
标题Re: [问题] 请问关於delay加法器的写法
时间Tue Apr 8 23:42:35 2008
: reg shift_register[127:0];
: integer i ;
#########################################################
: always @ (posedge clk or negedge n_rst)begin
: if(!n_rst)begin
: shift_register <= 'b0 ;
: end
: else begin
: for(i=0 ; i<127 ; i=i+1)begin
: shifer_register[i+1] <=#(1) shifer_register[i] ;
: end
: end
: end
#########################################################
In the "#" segment, which can be coded in this way:
always @ ( posedge clk or negedgr n_rst)
begin
if (~n_rst) shift_register[127:0] <= 128'b0;
else shift_register[127:0] <= #1 {shift_register[126:0],in};
end
"in" is a signal from somewhere else.
That is it.
--
下溪追追追,翻船一大堆。
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 118.160.115.210
1F:→ sasako:拍写 我似乎忘记把in给shift_register[0]了..改一下 04/09 00:37
2F:推 sasako:这种写法比较强 没想到...又学了一招 04/09 00:40
3F:→ sasako:而且就算in是n个bit也是一样... 04/09 00:41
4F:推 bighead319:如果bit数n不大时,用shift的方式也许OK,但若像n=8 04/09 03:04
5F:→ bighead319:或更多时,若转移机率为1/2则每次约有64n bits switch 04/09 03:05
6F:→ bighead319:power表现就 ... 话说有一种东西叫Memory吧 04/09 03:07
7F:推 DinoZavolta:我记得"#1"在合成时会被合成器给忽略掉, 04/09 05:55
8F:→ DinoZavolta:那麽这样写的目的,纯粹只为了模拟是吗~?! 04/09 05:59
9F:→ duffrose:#1 只是为了模拟DFF的timing,给个delay在看波形时比较好 04/09 10:44
10F:→ aaming:谢谢S & D大 ^_^ 04/09 23:54