FPGA重點整理
- 使用參數:大寫表示常數,小寫表示信號變數
- [大:小]
- Verilog語法中忽略 空格 tab 換行
- 大小寫代表不同的識別字
- $monitor連續監視變數
- $display僅被呼叫一次
- $finish結束模擬
- integer 整數 parameter 參數
- always內之輸出變數必用reg宣告
- 不可交=將任意值直接指定給暫存器 reg
- 運算式等號右邊較位元數大於左邊位元數,則右邊較高之位元捨去,而左邊位元大於右邊位元數,則右邊位元補0至與左邊位元數相同
- y=s?a:b s=1時y=a s=0時y=b
- a={4{2'b01}}; a=8'b01010101;
- a={a,2{a,b,c}}; a={a,a,b,c,a,b,c};
- 要記得實體化模組
- module XXX (); 後面要加分號
- endmodule 後面不加分號
- 依順序與依名稱之差異
- <資料型態><位元><變數名稱><陣列長度>; reg [3:0] data [7:0];//8個4位元之暫存器data
- initial 內之程式碼僅執行一次,多個initial區塊時,則會並行執行
- always 內之程式碼將重複執行 碰到$finish、$stop停止
- 測試模組reg對input wire對output
- 測試平台之模組宣告不加 ,輸出入變數
- 測試磨阻止需要宣告設計本體input output為reg wire其餘的不用宣告
- 測試平台模組內的輸出入宣告變數(reg wire),要與實體或模組()內的變數一致
- out [3:0] a,b; 表a,b皆為4位元output
- 變數名稱第一個字元不不可以是數字
- if、case必在always內
- always@(posedge clk or posedge rst) 非同步rest
沒有留言:
張貼留言
文章有誤或有問題麻煩您留言告知! 謝謝您~~