上次使用FPGA是2004年了,如今項目需要,重新使用FPGA,看了一個例程,蒙了!只認識modul,begin,其他一概不知了,原來使用的是VHDL語言,現在的都是Verilog語言,沒有辦法開始啃書吧!
paremeter 定義參數,相當於C中的define,不知道對不對。
input,output,inout輸入輸出還記得。
reg,wire模塊內使用
功能塊定義:assign,always。
數據類型定義,1‘b0(看例程都完全不知道是啥了)
begin:順序執行;
fork:並行執行;
=:阻塞賦值,一般用於組合邏輯,順序的;
<=:非阻塞賦值,並行的,一般用於時序邏輯,完全不記得,還以爲是邏輯運算。
位拼接{},我可能用到;
條件if,循環語句還記得;
順序塊begin:name,並行塊fork:name。
posedge negedge:上升沿,下降沿。
initial:只執行1次;always:不斷重複,兩者開始立即執行
task taskname
input a,b;
out c;
.....
end task。 調用taskname(x,y,z),x,y,z 與a,b,c一一對應,
function:
function[M-1,0]name
input [N-1,0] x
…
endfunction
使用與調用
reg[M-1,0] x;
reg[N-1,0] y;
x= funname(y);
差不多了,開始多屏顯示驅動設計。