精華區beta Electronics 關於我們 聯絡資訊
請問一個Verilog的問題~~ 我是要找出Conf_reg中為1的最大bit 例如Conf_reg[4:0] = 5'b10101; [1:0] Mux_reg; 根據以下的式子 則k最後為3 那麼Mux_reg = 2'b11; always@(Conf_reg) begin for(k=0;k<=3;k=k+1) if (Conf_reg[k+1] == 1'b1) Mux_reg = 2'dk; end endmodule 但是compile有錯誤~~ Error message是顯示syntex error... 想請問各位 應該怎麼修正呢 ?... Thanks -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.141.224.251
cvictor:Mux_reg = k; 09/18 08:43
> -------------------------------------------------------------------------- < 作者: tkhan (腦俠) 看板: Electronics 標題: Re: 請問一個Verilog的問題 時間: Wed Oct 5 16:50:09 2005 ※ 引述《slchen (風城遊子(B))》之銘言: : 請問一個Verilog的問題~~ : 我是要找出Conf_reg中為1的最大bit : 例如Conf_reg[4:0] = 5'b10101; : [1:0] Mux_reg; : 根據以下的式子 : 則k最後為3 : 那麼Mux_reg = 2'b11; : always@(Conf_reg) : begin : for(k=0;k<=3;k=k+1) : if (Conf_reg[k+1] == 1'b1) : Mux_reg = 2'dk; : end : endmodule : 但是compile有錯誤~~ : Error message是顯示syntex error... : 想請問各位 應該怎麼修正呢 ?... : Thanks 你是要找出在Conf_reg中出現1的數目, 還是Conf_reg中出現最先出現1的位置? 另外,for loop裏面的k值要宣告成integer.. 而且你的程式最大的問題是把verilog當做是C來寫.. 建議設計時能先把硬體大致的block畫出來再設計.. 不然很多人常常會把Software和Hardware的設計搞混了..orz.. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.66.243.97 > -------------------------------------------------------------------------- < 作者: VSBSC (vestige) 看板: Electronics 標題: Re: 請問一個Verilog的問題 時間: Wed Oct 5 21:29:26 2005 ※ 引述《tkhan (腦俠)》之銘言: : ※ 引述《slchen (風城遊子(B))》之銘言: : : 請問一個Verilog的問題~~ : : 我是要找出Conf_reg中為1的最大bit : : 例如Conf_reg[4:0] = 5'b10101; : : [1:0] Mux_reg; : : 根據以下的式子 : : 則k最後為3 : : 那麼Mux_reg = 2'b11; : : always@(Conf_reg) : : begin : : for(k=0;k<=3;k=k+1) begin : : if (Conf_reg[k+1] == 1'b1) : : Mux_reg = 2'dk; : : end end : : endmodule : : 但是compile有錯誤~~ : : Error message是顯示syntex error... : : 想請問各位 應該怎麼修正呢 ?... : : Thanks : 你是要找出在Conf_reg中出現1的數目, : 還是Conf_reg中出現最先出現1的位置? : 另外,for loop裏面的k值要宣告成integer.. : 而且你的程式最大的問題是把verilog當做是C來寫.. : 建議設計時能先把硬體大致的block畫出來再設計.. : 不然很多人常常會把Software和Hardware的設計搞混了..orz.. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.67.189.172