310 likes | 594 Views
書名 : Verilog 硬體描述語言數位電路 書局 : 儒林圖書 書號 : TB-027 作者 : 鄭信源. 1.1 近代數位設計. 使用軟體工具完成設計 系統複雜化 使用軟體工具完成符合性能要求的設計元件與系統 從低層次的閘設計到 由高層次功能單元組成的元件. / 1.1 近代數位設計. 近代數位設計 ( 續 ). 硬體描述語言 (HDL) 數位硬體以類似軟體方式的文字描述來代表 使用電子設計自動化( EDA )軟體工具 執行合成與模擬 合成是將規格轉換為實際的設計實作
E N D
書名: Verilog硬體描述語言數位電路書局:儒林圖書書號: TB-027作者:鄭信源
1.1 近代數位設計 • 使用軟體工具完成設計 • 系統複雜化 使用軟體工具完成符合性能要求的設計元件與系統 • 從低層次的閘設計到 由高層次功能單元組成的元件 / 1.1近代數位設計
近代數位設計(續) • 硬體描述語言(HDL) 數位硬體以類似軟體方式的文字描述來代表 • 使用電子設計自動化(EDA)軟體工具 執行合成與模擬 • 合成是將規格轉換為實際的設計實作 • 模擬是使規格或詳細的實作產生作用 以驗證是否正確的操作 • 合成與模擬EDA工具需使用圖形或文字的方式 將設計者的構想轉移到工具本身內 • 常見的HDL為Verilog與VHDL / 1.1近代數位設計
近代數位設計(續) • 設計高性能全客戶製作(full-custom) IC是 困難的工作 • 經常使用閘陣列建構半客戶製作 IC • 使用閘陣列的應用型積體電路(Application-Specific Integrated Circuit,ASIC)設計 • 可規劃邏輯(Programmable Logic) • 最早的可規劃邏輯裝置(PLD)是 可規劃邏輯陣列(PLA) • 可規劃陣列邏輯(PAL)是延伸PLA的概念 • 近年來的可規劃邏輯包括CPLD與FPGA / 1.1近代數位設計
1.5 可程式邏輯 1.5.1 基本概念 1.5.2 SPLD 1.5.3 CPLD 1.5.4 FPGA 1.5.6 晶片燒錄 / 1.5 可程式邏輯
基本概念 • 可程式邏輯概念 主要在完成所有7400或4000系列IC的邏輯設計 • 可程式邏輯裝置(PLD) • 以燒錄使用者組態IC執行要求的特定邏輯操作 • 這些IC稱為可程式邏輯裝置 / 1.5 可程式邏輯
基本概念(續) • 可程式邏輯裝置包含可程式陣列 • 可程式陣列是一個導體矩陣 在每個交接點使用可程式連接方式形成列與行 • 基本的可程式陣列包含 OR閘陣列與AND陣列 • 利用可程式的方式獲得想要的邏輯函數 陣列以鎔化保險絲的方式刪除從輸出函數選擇的變數 • 只有想要的變數能經由完整的保險絲連接到閘輸入 / 1.5 可程式邏輯
可程式陣列 (a)未程式化 (b)已程式化 圖1.9 基本可程式OR陣列實例 / 1.5 可程式邏輯
可程式陣列(續) (a)未程式化 (b)已程式化 圖1.10 基本可程式AND陣列實例 / 1.5 可程式邏輯
可程式邏輯裝置 • 包裝內包含數以千計的基本邏輯閘與序向邏輯函數 這些數位邏輯並未經組織以執行任何特定的函數 • 計算機輔助設計(CAD) • 設計者使用PLD發展軟體完成須要的邏輯 • 有兩種方式定義邏輯的組織 圖表(Schematic)與高階語言 • 高階語言即為硬體描述語言(HDL) / 1.5 可程式邏輯
可程式邏輯裝置(續) 圖1.11 可程式邏輯裝置 的設計流程 / 1.5 可程式邏輯
可程式邏輯裝置(續) • 可程式邏輯的三種主要型式 • SPLD(simple programmable logic device,簡單可程式邏輯裝置) • CPLD(complex programmable logic device,複雜可程式邏輯裝置) • FPGA(field-programmable gate array,場規劃閘陣列) / 1.5 可程式邏輯
1.5.2 SPLD • SPLD是最基本與最便宜的可程式邏輯型式 包含一些可組態的邏輯閘、可規劃的連接點與記憶元件 • SPLD是最早使用的可程式邏輯型式 • 典型的包裝是24至28隻接腳 • 為了使邏輯圖容易閱讀,通常會簡化接點表示 / 1.5 可程式邏輯
SPLD(續) 圖1.12 SPLD的簡 化接點表示 *內部接點的建立與否,能以PLD燒錄軟體決定 / 1.5 可程式邏輯
SPLD(續) • SPLD依使用技術可分為 • PLA(可程式邏輯陣列) • PAL(可程式陣列邏輯) • GAL(一般陣列邏輯) • PROM(可程式唯讀記憶體) / 1.5 可程式邏輯
PLA結構 圖1.13 SPLD的PLA結構 *PLA能以電的方式重新燒錄,或是將裝置暴露在紫外線下恢愎其連接 / 1.5 可程式邏輯
PAL結構 圖1.14 SPLD的PAL結構 *PAL是最普遍使用一次可程式邏輯裝置,以雙載子TTL或ECL技術完成 / 1.5 可程式邏輯
GAL結構 圖1.15 SPLD的GAL結構 *GAL使用EECMOS(可電性抹除CMOS)技術 / 1.5 可程式邏輯
PROM結構 圖1.16 PROM的基本結構 *受到固定AND閘的限制,PROM 主要不是應用在邏輯裝置,而是應用在位址記憶體 / 1.5 可程式邏輯
1.5.3 CPLD • PLD的技術限制 無法將PLD上基本的兩層次AND-OR結構調整到較大面積 • 大型的數位系統應用 必須增加積體電路的容量來設計較大的PLD • 積體電路生產廠商另外推出CPLD(複雜PLD)結構,以獲得要求的型式 • CPLD比SPLD有較高的容量 可將較複雜的邏輯電路燒錄其中 / 1.5 可程式邏輯
CPLD (續) • CPLD結構 由多個像PAL/GAL型式的SPLD陣列群組與可程式連結全部安裝在相同的晶片所組成 圖1.17 CPLD的 基本方塊圖 / 1.5 可程式邏輯
CPLD (續) 圖1.18 CPLD內的基本邏輯陣列方塊 • 每個PAL/GAL群組稱為邏輯陣列方塊(LAB) • 每個邏輯陣列方塊包含一些巨格(macrocell)的PAL/GAL陣列 • CPLD與SPLD都是建立在SOP(積項之和)的結構上 / 1.5 可程式邏輯
CPLD (續) • CPLD分類 依複雜的程度,包裝接腳約在44至160間 • CPLD的結構會因不同的廠家而有所不同 通常在一個LAB內約有32至數百個巨格,且 都是建構在PAL/GAL SOP邏輯陣列的基礎 • 典型的巨格有 一個AND陣列 一個乘積項選擇矩陣 一個OR閘與 一個可程式暫存器段 / 1.5 可程式邏輯
CPLD(續) • CPLD大多是使用EECMOS技術 建立巨格線與可程式連結陣列線間的連接 • 將巨格線與可程式陣列線間的電晶體燒錄為導通狀態以形成連接,或是截止狀態而無連接 • CPLD較著名的廠家有 Altera,Xilinx,Cypress與Lattice • 較普遍使用的CPLD有 • Altera公司的MAX 7000S系列 • Xilinx公司的XC9500系列 都有非揮發性記憶體特性 / 1.5 可程式邏輯
1.5.4 FPGA • FPGA(Field-Programmable Gate Array, 場規畫閘陣列) 與SPLD、CPLD在內部結構上是不相同的 • FPGA包含較多數目且較小的個別邏輯方塊,並且提供一個大的分散型連接結構來控制整個晶片 • FPGA使用查詢表(look-up table, LUT)解決特殊的邏輯要求 • CPLD使用積項之和(SOP)的AND/OR陣列 / 1.5 可程式邏輯
FPGA與CPLD在晶片設計上的差異 圖1.19 FPGA與CPLD內部結構的基本設計方法 (a)CPLD (b)FPGA *LAB:邏輯陣列方塊 *LB:邏輯方塊 / 1.5 可程式邏輯
FPGA基本結構 • FPGA內的邏輯方塊(LB)由數個邏輯元件(logic element, LE)所組成 • FPGA內由基本邏輯方塊組成 包含可程式列與行連接 • 典型的邏輯元件使用查詢表(LUT)產生邏輯函數 • 查詢表為真值表 列出所有可能的輸入組合與想要的輸出響應 / 1.5 可程式邏輯
FPGA基本結構方塊圖 圖1.20 FPGA基本結構方塊圖 / 1.5 可程式邏輯
FPGA基本結構方塊圖(續) 圖1.21 FPGA內的基本邏輯方塊組成 / 1.5 可程式邏輯
FPGA晶片 • 常見的FPGA晶片 • FPGA有比CPLD較高數量的邏輯閘 • Xilinx的XC4000系列與Altera的FLEX 10K系列 • FPGA晶片有揮非性的缺點 • 因記憶體使用SRAM而有揮非性的缺點 • 從晶片移除電源後,會失去其邏輯程式 • 每次在系統電源重新開啟後, 必須將其邏輯程式載入晶片 / 1.5 可程式邏輯
1.5.6 晶片燒錄 圖1.22 應用PLD發展 軟體燒錄PLD的流程 / 1.5 可程式邏輯