作者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