[問題] 請大家幫我看一個verilog小程式
小弟又來問問題了= =
下面是我自己寫用verilog寫的小程式,在Quartus ii 中 compilation一直沒過
找了老半天都看不出哪裡錯了,可以幫我看一下哪裡出錯嗎?
module parallel_2_to_2(c0,A,B,F);
input c0;
input A;
input B;
output F;
reg F;
always @ (posedge c0 or negedge c0 );
begin
if (posedge c0)
F <= A;
else
F <= B;
end
endmodule
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.118.240.42
※ 文章網址: http://www.ptt.cc/bbs/Electronics/M.1416150448.A.D39.html
推
11/16 23:19, , 1F
11/16 23:19, 1F
請問是要加上什麼東西嗎? 不太懂耶@@ 我是這幾天剛才學的新手....
※ 編輯: di7101483 (140.118.240.42), 11/16/2014 23:25:09
推
11/16 23:46, , 2F
11/16 23:46, 2F
推
11/17 00:05, , 3F
11/17 00:05, 3F
→
11/17 00:22, , 4F
11/17 00:22, 4F
我把code改成這樣 還是不會過耶
module parallel_2_to_2(c0,A,B,F,reset);
input c0;
input A;
input B;
input reset;
output F;
reg F;
always @ (posedge c0 or negedge reset)
begin
if (!reset)
F <= A;
end
always @ (negedge c0 or negedge reset)
begin
if (!reset)
F <= B;
end
endmodule
※ 編輯: di7101483 (140.118.240.42), 11/17/2014 00:24:24
※ 編輯: di7101483 (140.118.240.42), 11/17/2014 00:25:18
※ 編輯: di7101483 (140.118.240.42), 11/17/2014 00:25:53
→
11/17 00:36, , 5F
11/17 00:36, 5F
reset是我剛剛去看範例模仿別人寫的程式
我這幾天看了老半天,其實我不太了解reset的意義和怎麼寫
請問reset是negative 1 或 positive 1 跑出來的結果會不一樣嗎?
請問reset是一定要有的嗎?
※ 編輯: di7101483 (140.118.240.42), 11/17/2014 00:43:00
我不懂e大說的 reset clock same source耶
嘗試一些寫法都失敗...
※ 編輯: di7101483 (140.118.240.42), 11/17/2014 00:47:41
→
11/17 01:26, , 6F
11/17 01:26, 6F
我一開始是先畫waveform才開始寫的
我已經用altpll把c0,A,B這幾個訊號畫出來了
但是主要執行的這個程式沒辦法跑,翻了幾本書也找不到出個所以然...
※ 編輯: di7101483 (140.118.240.42), 11/17/2014 01:35:28
推
11/17 01:49, , 7F
11/17 01:49, 7F
→
11/17 01:50, , 8F
11/17 01:50, 8F
→
11/17 02:07, , 9F
11/17 02:07, 9F
推
11/17 02:18, , 10F
11/17 02:18, 10F
→
11/17 02:18, , 11F
11/17 02:18, 11F
我剛剛也有想過是不是這個問題
但是我把code改成下面這樣後還是不行耶@@
module parallel_2_to_2(c0,c1,A,B,F);
input c0;
input c1;
input A;
input B;
output F;
reg F;
always @ (posedge c0 or negedge c1 )
begin
if (posedge c0)
F <= A;
else
F <= B;
end
endmodule
※ 編輯: di7101483 (140.118.240.42), 11/17/2014 02:34:02
推
11/17 02:36, , 12F
11/17 02:36, 12F
我把程式改成這樣
就可以了....
module parallel(c0,c1,A,B,F);
input c0;
input c1;
input A;
input B;
output F;
reg F;
always @ (posedge c0 or negedge c1 )
begin
if (!c1)
F <= A;
else
F <= B;
end
endmodule
但是我想問 always裡面的!c1 是讓c1做負緣觸發(negedge c1)嗎?
※ 編輯: di7101483 (140.118.240.42), 11/17/2014 03:32:12
推
11/17 04:50, , 13F
11/17 04:50, 13F
→
11/17 09:57, , 14F
11/17 09:57, 14F
→
11/17 09:57, , 15F
11/17 09:57, 15F
→
11/17 09:57, , 16F
11/17 09:57, 16F
→
11/17 09:57, , 17F
11/17 09:57, 17F
→
11/17 19:27, , 18F
11/17 19:27, 18F
推
11/18 15:46, , 19F
11/18 15:46, 19F
→
11/18 15:47, , 20F
11/18 15:47, 20F
→
11/18 15:47, , 21F
11/18 15:47, 21F
→
11/18 15:48, , 22F
11/18 15:48, 22F