2013年3月18日 星期一

fpga 0318 講義


作業 3.
  請寫出 VLSI 作業 2 正緣觸發之 D 正反器,要寫以下版本:

a. gate level 版                檔名:dff_gate.v,gate level 版必須使用 XCircuit 畫出正緣觸發 D 正反器之電路圖。
b. rtl level 版 (alway @)       檔名:dff_rtl.v

請撰寫可自我偵測錯誤之 testfixture,並且適用於上述兩個不同版本之 DFF 電路,其輸出為 test_dff.dmp,檔名為 test_dff.v。

p2-6
數字表示:

 8'hec          ->  8'h 指有 8個位元 hex 數字,其值為 ec
16'd2048        -> 16'd 指有16個位元 digital 數字,其值為 2048
  o -> 八進位、b-> 二進元

24'b111111111111111111111111 = 24'b1111_1111_1111_1111_1111_1111


x -> unknown
z -> 高阻抗

# 10 test ok
# 20 test ok
# 30 test fail

p2-11

表 2-2 關鍵字,關鍵字的重要性在於我們不能拿關鍵字來當變數。例如以下寫法很糟糕:

reg if;

因為 if 為關鍵字,使用 if 當變數會有問題。


P3-7

範例 3-3

assign mount = s ? ma : mb;

if s = 1 mount = ma;
if s = 0 mount = mb;

P3-15

assign dbus = (enable == 1) ?  value1: 4'bz;

http://www.cse.psu.edu/~cg577/DOCUMENTS/codingstandards/verilog.html

儘量不要使用巢狀 ? : 來寫程式,以免看不懂,如上述網頁之例子。


P3-9 資料型態

1. 數值 0 1 x z

2. 連接線

3. 暫存器

4. 向量 ?

reg [7:0] a; -> a7a6a5a4a3a2a1a0
                27            s0
reg [0:7] b; -> a0a1 ........ a7

a 跟 b 有何不同 ? (大印地安 V.S. 小印地安)
http://www.prudentman.idv.tw/2007/11/big-endianlittle-endian.html

5. 數字 -> 無號數

6. 參數 -> 有限狀態機

7. 陣列、記憶體 -> 本學期沒有用到

8. 三態 -> 雙向埠

沒有留言:

張貼留言