內容簡介
本書共分7章內容:首先,整體介紹VLSI設計技術的發展現狀和重點問題。其次,系統講述硬體描述語言、可程式邏輯器件、邏輯綜合、自動布局布線等理論知識。第三,融合工程實踐,對SoC設計和測試流程中的理念和方法展開論述。
書籍目錄
1SoC設計概述(1)
1.1發展概貌(1)
1.2主要設計方法——自頂向下方法(2)
1.3設計流程中的重點問題(3)
1.4工具的支持(5)
2硬體描述語言Verilog(6)
2.1Verilog語言的一般結構(6)
2.1.1模組(6)
2.1.2數據流描述方式(6)
2.1.3行為描述方式(7)
2.1.4結構描述方式(8)
2.1.5混合描述方式(8)
2.2Verilog語言要素(9)
2.2.1標識符、注釋和語言書寫的格式(9)
2.2.2系統任務和函式(10)
2.2.3編譯指令(10)
2.2.4值集合(11)
2.2.5數據類型(13)
2.2.6位選擇和部分選擇(15)
2.2.7參數(15)
2.3表達式與操作符(16)
2.4結構描述方式(19)
2.4.1常用的內置基本門(19)
2.4.2門時延問題(20)
2.4.3門實例數組(20)
2.4.4模組和連線埠(21)
2.4.5模組實例語句(21)
2.4.6模組使用舉例(22)
2.5數據流描述方式(23)
2.5.1連續賦值語句(23)
2.5.2舉例(24)
2.5.3連線說明賦值(24)
2.5.4時延(24)
2.5.5連線時延(25)
2.5.6舉例(26)
2.6行為描述方式(27)
2.6.1過程結構(27)
2.6.2時序控制(28)
2.6.3語句塊(30)
2.6.4過程性賦值(32)
2.6.5if語句(34)
2.6.6case語句(34)
2.6.7循環語句(35)
2.7設計共享(36)
2.7.1任務(36)
2.7.2函式(37)
2.7.3系統任務和系統函式(38)
2.8HDL仿真軟體簡介(41)
3可程式邏輯器件(51)
3.1引言(51)
3.2GA概述(51)
3.3PLD概述(52)
3.3.1PLD的基本結構(52)
3.3.2PLD的分類(53)
3.3.3PROM陣列結構(53)
3.3.4PLA陣列結構(54)
3.3.5PAL(GAL)陣列結構(54)
3.3.6FPGA(Field Programmable Gate Array)(55)
3.3.7PLD的開發(60)
3.4FPGA的開發實例(61)
3.4.1Quartus II的啟動(62)
3.4.2建立新設計項目(63)
3.4.3建立新的Verilog HDL檔案(65)
3.4.4建立新的原理圖檔案(66)
3.4.5設定時間約束條件(67)
3.4.6引腳綁定(69)
3.4.7編譯(70)
3.4.8仿真(72)
3.4.9器件編程(74)
4邏輯綜合(76)
4.1引言(76)
4.2組合邏輯綜合介紹(76)
4.3二元決定圖(BinaryDecision Diagrams)(79)
4.3.1ROBDD的原理(79)
4.3.2ROBDD的套用(81)
4.4Verilog HDL與邏輯綜合(82)
4.5邏輯綜合的流程(86)
4.6門級網表的驗證(90)
4.6.1功能驗證(90)
4.6.2時序驗證(91)
4.7邏輯綜合對電路設計的影響(91)
4.7.1Verilog編程風格(92)
4.7.2設計分割(94)
4.7.3設計約束條件的設定(95)
4.8時序電路綜合舉例(96)
4.9Synopsys邏輯綜合工具簡介(102)
4.9.1實例電路——m序列產生器(103)
4.9.2利用Synopsys的Design Compiler進行綜合的基本過程(104)
4.10總結(109)
5自動布局布線(110)
5.1自動布局布線的一般方法和流程(110)
5.1.1數據準備和輸入(110)
5.1.2布局規劃、預布線、布局(111)
5.1.3時鐘樹綜合(112)
5.1.4布線(114)
5.1.5設計規則檢查和一致性檢查(115)
5.1.6輸出結果(115)
5.1.7其他考慮(115)
5.2自動布局布線軟體介紹(115)
5.2.1Apollo一般情況介紹(116)
5.2.2Apollo庫的檔案結構(116)
5.2.3邏輯單元庫——TSMC 0.25μm CMOS庫(117)
5.3自動布局布線的處理實例(117)
5.3.1電路實例(117)
5.3.2數據準備和導入(127)
5.3.3數據導入步驟(127)
5.3.4布圖(129)
5.3.5預布線(133)
5.3.6單元布局(135)
5.3.7布線(137)
5.3.8數據輸出(139)
5.3.9自動布局布線的最佳化(140)
6SoC設計(143)
6.1SoC的基本概念(143)
6.1.1SoC的特徵和條件(143)
6.1.2SoC的設計方法學問題(144)
6.2基於平台的SoC設計方法(149)
6.2.1一般方法(149)
6.2.2設計分工(151)
6.3ARM平台SoC設計方法(153)
6.3.1簡介(153)
6.3.2標準的SoC平台(155)
6.3.3支持工具和驗證方法(158)
6.3.4作業系統連線埠(163)
6.3.5ARM的擴展IP(163)
6.3.6第三方夥伴計畫(164)
6.4研究方向(164)
7SoC測試方法(166)
7.1引言(166)
7.2測試步驟(166)
7.3常用的可測試性設計方法(168)
7.3.1掃描路徑法(168)
7.3.2內建自測試法(170)
7.3.3邊界掃描法(172)
7.4缺陷和故障(177)
7.4.1缺陷分類(177)
7.4.2故障模型及其分類(177)
7.5測試向量生成(183)
7.6SoC測試面臨的挑戰(184)
參考文獻(186)3-4,7