硬件描述語言複習筆記

第一章

         1、控制複雜性的藝術:

                   A、抽象:管理複雜性的關鍵技術在於抽象即隱蔽不重要的細節

                   B、約束:對設計選擇的一種內在限制,目的是爲了可以更有效的在更高的抽象層

                            次上工作

                   C、三條原則:

                            層次化:一個系統劃分爲模塊和子模塊

                            模塊化:所有模塊有定義好的功能和藉口

                            規整化:模塊間尋求一致,這樣模塊易於被重新使用

              2、數字系統:

                   數的進制、補碼

3、   NML= VIL – VOL

          NMH= VOH– VIH

4、什麼是數字系統的靜態約束

靜態約束要求對於給定的有效邏輯輸入,每個電路元件應該能產生有效的邏輯輸出。

 

第二章

1、  數字電路:

(1)一個或多個離散變量輸入端

(2)一個或多個離散變量輸出端

(3)功能規範描述輸入和輸出的關係

(4)時序規範描述當輸入改變是輸出響應的延遲。

一個包含離散電壓值輸入和輸出的模塊由節點和元件組成;節點是一段導線,通過電壓傳遞離散變量,分爲輸入節點、輸出節點和內部節點;元件是帶有輸入、輸出、功能規範(描述輸入和輸出的關係)、時序規範(描述當輸入改變時輸出響應的延遲)的電路

2、組合電路:無記憶(只跟當前輸入有關)

A、 每一個電路元件本身都是組合電路;

B、 每一個電路節點或者是一個電路的輸入,或者僅僅連接到一個電路元件的一個輸出端口

C、 電路不能包含迴路:經過電路的每條路徑最多隻能經過每個電路節點一次邏輯電路:

有記憶(和當前輸入有關,跟以前的輸入也有關)

              一般而言所有不是組合電路的電路都可以稱爲時序電路

A、 每一個電路元件是寄存器或組合電路

B、 至少有一個電路元件是寄存器

C、 所有寄存器接受同一個時鐘信號

D、 每一個環路至少包含一個寄存器

2、  布爾表達式

         或與式、與或式、最大項和最小項

最小項就是有若干積(“與”構成了最小項,真值表相與取值爲1的)的和(或)構成。是與或式。

最大項就是有若干和(“或”構成了最大項,真值表中相或取0的)的積(與)。是或與式。

4、X和Z

         非法值X:符號X表示電路節點的值未知或未知,通常會發生在此節點同時被0或者1驅動(稱之爲競爭)

浮空值Z:符號Z表示節點既沒有被高電平驅動也沒有被低電平驅動。這個節點被稱爲浮空,高阻態,或者高Z態

5、組合邏輯模塊

多路選擇器是一種最常用的組合邏輯電路。它從幾個可能的輸入中根據選擇信號的值來選擇一個作爲輸出。見54頁例子2.12

譯碼器有N個輸入和2N個輸出。它的每一個輸出都取決於輸入的組合。

6、時序

         組合邏輯電路的時序特徵包括傳輸延遲和最小延遲的特徵

                   傳輸延遲:

                            輸入改變直到對應的一個和多個輸出到達它們最終的值所經歷的最長時間

                   最小延遲(污染延遲):

                            當一個輸入發生變化到任何一個輸出開始改變的最短時間

         關鍵路徑(耗時最長),最短路徑(耗時最短)

毛刺:一個輸入信號的改變可能會導致多個輸出信號的改變。這被稱爲毛刺或者衝突。

 

第三章

1、  鎖存器和觸發器

a)        D鎖存器是電平敏感的,D觸發器是邊沿觸發的

 

 Latch:鎖存器     Flop:觸發器

2、 有限狀態自動機(必考)熟練掌握如何如何使用有限狀態機來設計數字系統包括編碼

Moore型有限狀態機的輸出僅僅取決於當前的狀態

Mealy 型有限狀態機的輸出取決於當前的狀態和輸入值

3、  時序邏輯電路的時序

建立時間約束

保持時間約束

A、 動態約束:動態約束是指同步時序電路的輸入在時鐘沿附近的建立和維持孔徑時間內必須保持穩定。

B、 系統時序

C、 時鐘偏移

D、 亞穩態

E、  同步器

 

第四章

模擬階段,在模塊上加入輸入,並檢查輸出已驗證模塊的操作是否正確。在綜合階段,將模塊的文字描述轉換成邏輯門。

三態緩衝器

                   moduletristate(input  [3:0] a,

                            input     en,

                     output [3:0] y);

                                 assign y = en ? a: 4'bz;

endmodule


例 8’b11   的各部分含義以及存儲

1、  時序邏輯

寄存器

可復位寄存器

帶使能端的寄存器

多寄存器

鎖存器

2、  測試程序

測試程序是用於測試其他待測試模塊的硬件描述語言模塊。此程序包含了向待測試模塊提供輸入的語句,已測試是否產生了理想的正確輸出。輸入和期待的輸出模式成爲測試向量。

1)        被測元件實例化

2)        形成激勵信號

3)        輸出結果處理和預期結果比較

本章主要是代碼的書寫,應注意

 

第五章

1、算數電路:

加法

減法:加法器求反加一

比較器:寄存器數據通路,複用器控制通路

2、數字系統:

定點數系統

3、存儲器陣列

可編程邏輯陣列(PLA)

現場可編程門陣列(FPGA)

 

用case語句可以實現計數器

Always@(posedge clk,posedgereset)

Begin

If(!reset)

Q<=0;

Else

 Q<=Q+1;

End

 

第六章

體系結構前面部分幾節的概念

體系結構設計準則

Simplicity favors regularity簡單有助於歸整化

Make the common case fast加快常見功能

Smaller is faster越小設計越快

Good design demands good compromises好的設計需要折中

彙編語言

MIPS體系結構中R/I/J指令差別

R-Type:     registeroperands

I-Type:      immediateoperand

J-Type:      forjumping (we’ll discuss later)

 

第七章

微結構前面部分的概念

單週期:每個指令都在單個週期內執行

多週期:每個指令被分解成一系列較短的步驟

流水線:每個指令被分解成一系列的步驟在一次執行多個指令。

 

單週期處理器着重掌握,包括編碼

 

單週期mips處理器一個週期的步驟

1.取指令

2.從寄存器文件讀取源操作數

3.即時符號擴展

4.存儲器地址的計算

5.從內存中讀取數據,並把它寫回寄存器文件

6.確定的下一條指令的地址

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章