- 註冊時間
- 2006-2-9
- 最後登錄
- 2019-10-8
- 主題
- 查看
- 積分
- 4865
- 閱讀權限
- 250
- 文章
- 846
- 相冊
- 0
- 日誌
- 8
狀態︰
離線
|
老鳥這陣子有點時間,搞了一片FPGA實驗板來玩,從簡單的全加器、BCD計數器開始,昨天開始研究使用Verilog寫PWM產生器,在此之前就先研究一下除頻器,但也遇到了一些問題,不知道有沒有掏手可以幫一下...
功能是將25MHz除頻成1MHz
module OSC1M(clk_in,clk_1M);
input clk_in;
output clk_1M;
wire clk_in,clk_1M;
reg [4:0]count=5'h00;
always @(posedge clk_in)
begin
count = count+1;
clk_1M = count[4];
end
endmodule
這段在compile時出現錯誤:Error: C:/altera/90/BY4/1MOSC.v(11): (vlog-2110) Illegal reference to net "clk_1M".
想半天還是沒搞出來...
再來,模擬時,老鳥想灌一個25MHz的固定頻率來做輸入訊號,於是寫了一段testbench:
`timescale 1ms/100ms
module SOC1M_tb;
SOC1M dex(.clkin(clkin),.clkout(clkout));
parameter hperi=40;
initial begin
clkin=1'b0;
end
always begin
forever # hperi clkin=~clkin;
end
endmodule
這更慘!也還搞不清楚那邊出錯...= = "
有沒有高手可以幫忙看一下... |
|