SoC設計方法與實現

SoC設計方法與實現

《SoC設計方法與實現》是2007年電子工業出版社出版的圖書,作者是郭煒。

基本信息

內容簡介

《SoC設計方法與實現》是普通高等教育“十一五”國家級規劃教材。《SoC設計方法與實現》結合SoC設計的整體流程,對SoC設計方法學及如何實現進行了全面介紹。全書共分14章,主要內容包括:SoC的設計流程、SoC的架構設計、電子級系統設計、IP核的設計與選擇、RTL代碼編寫指南、先進的驗證方法、低功耗設計技術、可測性設計技術及後端設計的挑戰。書中不僅融入了很多來自於工業界的實踐經驗,而且介紹了SoC設計領域的最新成果,可以幫助讀者掌握工業化的解決方案,使讀者能夠及時了解SoC設計方法的最新進展。

書中不僅融入了很多來自於工業界的實踐經驗,而且介紹了SoC設計領域的最新成果,可以幫助讀者掌握工業化的解決方案,使讀者能夠及時了解SoC設計方法的最新進展。

圖書目錄

第1章 SoC設計緒論 1

1.1 微電子技術概述 1

1.1.1 積體電路的發展 1

1.1.2 積體電路產業分工 2

1.2 SoC概述 3

1.2.1 什麼是SoC 3

1.2.2 SoC的優勢 4

1.3 SoC設計的發展趨勢及面臨

的挑戰 5

1.3.1 SoC設計技術的發展與挑戰 5

1.3.2 SoC設計方法的發展與挑戰 10

1.3.3 未來的SoC 12

本章參考文獻 12

第2章 SoC設計流程 13

2.1 軟硬體協同設計 13

2.2 基於標準單元的SoC晶片設計

流程 15

本章參考文獻 19

第3章 SoC設計與EDA工具 20

3.1 電子系統級設計與工具 20

3.2 驗證的分類及相關工具 20

3.2.1 驗證方法的分類 21

3.2.2 動態驗證及相關工具 21

3.2.3 靜態驗證及相關工具 22

3.3 邏輯綜合及綜合工具 23

3.3.1 EDA工具的綜合流程 24

3.3.2 EDA工具的綜合策略 24

3.3.3 最佳化策略 24

3.3.4 常用的邏輯綜合工具 25

3.4 可測性設計與工具 25

3.4.1 測試和驗證的區別 25

3.4.2 常用的可測性設計 25

3.5 布局布線與工具 28

3.5.1 EDA工具的布局布線流程 28

3.5.2 布局布線工具的發展趨勢 28

3.6 物理驗證及參數提取與相關的工具 28

3.6.1 物理驗證的分類 29

3.6.2 參數提取 29

3.7 著名EDA公司與工具介紹 31

3.8 EDA工具的發展趨勢 32

本章參考文獻 33

第4章 SoC系統結構設計 34

4.1 SoC系統結構設計的總體目標與

各個階段 34

4.1.1 功能設計階段 35

4.1.2 套用驅動的系統結構設計階段 35

4.1.3 平台導向的系統結構設計階段 35

4.2 SoC中常用的處理器 35

4.2.1 通用處理器 36

4.2.2 DSP 37

4.2.3 可配置處理器 37

4.2.4 不同處理器的選擇 39

4.3 SoC中常用的匯流排 39

4.3.1 AMBA匯流排 40

4.3.2 CoreConnect匯流排 41

4.3.3 Wishbone匯流排 42

4.3.4 AVALON匯流排 42

4.3.5 開放核協定 42

4.3.6 複雜的片上匯流排結構 43

4.4 SoC中典型的存儲器 44

4.5 多核SoC的系統結構設計 45

4.5.1 可用的並發性 45

4.5.2 多核SoC設計中的系統結構

選擇 46

4.5.3 多核SoC的性能評價 47

4.5.4 幾種典型的多核SoC系統結構 48

4.6 SoC中的軟體結構 50

4.7 電子系統級(ESL)設計 53

4.7.1 ESL發展的背景 53

4.7.2 ESL設計基本概念 54

4.7.3 ESL設計的流程 54

4.7.4 ESL設計的特點 56

4.7.5 ESL設計的核心——事務級建模 58

4.7.6 事務級建模語言簡介及設計

實例 66

4.7.7 ESL設計的挑戰 79

本章參考文獻 80

第5章 IP復用的設計方法 81

5.1 IP的基本概念和IP分類 81

5.2 IP設計流程 83

5.2.1 設計目標 83

5.2.2 設計流程 83

5.3 IP的驗證 88

5.4 IP核的選擇 89

5.5 IP市場 90

5.6 IP復用技術面臨的挑戰 92

5.7 IP標準組織 93

5.8 基於平台的SoC設計方法 94

5.8.1 平台的組成與分類 95

5.8.2 基於平台的SoC設計方法流程

與特點 95

5.8.3 基於平台的設計實例 96

本章參考文獻 97

第6章 RTL代碼編寫指南 98

6.1 編寫RTL代碼之前的準備 98

6.1.1 與團隊共同討論設計中的問題 98

6.1.2 根據晶片結構準備設計說明書 98

6.1.3 匯流排設計的考慮 99

6.1.4 模組的劃分 99

6.1.5 對時鐘的處理 102

6.1.6 IP的選擇及設計復用的考慮 102

6.1.7 對可測性的考慮 103

6.1.8 對晶片速度的考慮 104

6.1.9 對布線的考慮 104

6.2 可綜合RTL代碼編寫指南 104

6.2.1 可綜合RTL代碼的編寫準則 104

6.2.2 利用綜合進行代碼質量檢查 107

6.3 調用Synopsys DesignWare來

最佳化設計 108

本章參考文獻 109

第7章 同步電路設計及其與異步信號

互動的問題 110

7.1 同步電路設計 110

7.1.1 同步電路的定義 110

7.1.2 同步電路的時序收斂問題 110

7.1.3 同步電路設計的優點與缺陷 111

7.2 全異步電路設計 112

7.2.1 異步電路設計的基本原理 112

7.2.2 異步電路設計的優點與缺點 114

7.3 異步信號與同步電路互動的問題

及其解決方法 114

7.3.1 亞穩態 115

7.3.2 異步控制信號的同步及其RTL

實現 118

7.3.3 異步時鐘域的數據同步及其RTL

實現 122

7.4 SoC設計中的時鐘規劃策略 126

本章參考文獻 127

第8章 綜合策略與靜態時序分析方法 128

8.1 邏輯綜合 128

8.1.1 什麼是邏輯綜合 128

8.1.2 流程介紹 128

8.1.3 SoC設計中常用的綜合策略 130

8.2 物理綜合的概念 131

8.2.1 物理綜合的產生背景 131

8.2.2 操作模式 132

8.3 實例——用Synopsys的工具Design

Compiler (DC)進行邏輯綜合 133

8.3.1 指定庫檔案 133

8.3.2 讀入設計 134

8.3.3 定義工作環境 134

8.3.4 設定約束條件 135

8.3.5 設定綜合最佳化策略 137

8.3.6 設計腳本舉例 137

8.4 靜態時序分析 139

8.4.1 基本概念 139

8.4.2 實例——用Synopsys的工具

PrimeTime進行時序分析 142

8.5 統計靜態時序分析 148

8.5.1 傳統的時序分析的局限 149

8.5.2 統計靜態時序分析的概念 149

8.5.3 統計靜態時序分析的步驟 150

本章參考文獻 150

第9章 SoC功能驗證 151

9.1 功能驗證概述 151

9.1.1 功能驗證的概念 151

9.1.2 SoC功能驗證的問題 152

9.1.3 SoC功能驗證的發展趨勢 152

9.2 功能驗證方法與驗證規劃 152

9.3 系統級功能驗證 153

9.3.1 系統級的功能驗證 153

9.3.2 軟硬體協同驗證 155

9.4 仿真驗證自動化 157

9.4.1 激勵的生成 157

9.4.2 回響的檢查 158

9.4.3 覆蓋率的檢測 159

9.5 形式驗證 160

9.5.1 形式驗證的理論基礎 160

9.5.2 相等性檢查在SoC中的套用 162

9.5.3 半形式驗證在SoC中的套用 162

9.6 基於斷言的驗證 163

9.6.1 斷言語言 164

9.6.2 基於斷言的驗證 166

9.6.3 斷言的其他用途 167

本章參考文獻 168

第10章 可測性設計 169

10.1 積體電路測試概述 169

10.1.1 測試的概念和原理 169

10.1.2 測試及測試矢量的分類 169

10.1.3 自動測試設備 170

10.2 故障建模及ATPG原理 171

10.2.1 故障建模的基本概念 171

10.2.2 常見故障模型 171

10.2.3 ATPG基本原理 174

10.2.4 ATPG的工作原理 174

10.2.5 ATPG工具的使用步驟 175

10.3 可測性設計基礎 175

10.3.1 可測性的概念 175

10.3.2 可測性設計的優勢和不足 177

10.4 掃描測試(SCAN) 177

10.4.1 基於故障模型的可測性 177

10.4.2 掃描測試的基本概念 178

10.4.3 掃描測試原理 179

10.4.4 掃描設計規則 181

10.4.5 掃描測試的可測性設計流程及

相關EDA工具 182

10.5 存儲器的內建自測 183

10.5.1 存儲器測試的必要性 183

10.5.2 存儲器測試方法 184

10.5.3 BIST的基本概念 185

10.5.4 存儲器的測試算法 186

10.5.5 BIST模組在設計中的集成 188

10.6 邊界掃描測試 190

10.6.1 邊界掃描測試原理 190

10.6.2 IEEE 1149.1標準 190

10.6.3 邊界掃描測試策略和相關

工具 194

10.7 其他DFT技術 194

10.7.1 微處理器核的可測性設計 194

10.7.2 Logic BIST 196

10.8 DFT技術在SoC中的套用 197

10.8.1 模組級的DFT技術 197

10.8.2 SoC中的DFT套用 198

本章參考文獻 199

第11章 低功耗設計 200

11.1 為什麼需要低功耗設計 200

11.2 功耗的類型 201

11.3 低功耗設計方法 205

11.4 低功耗技術 206

11.4.1 工藝最佳化 206

11.4.2 電壓最佳化 207

11.4.3 門控時鐘技術 208

11.4.4 門級最佳化技術 211

11.4.5 低功耗SoC系統的動態管理 213

11.4.6 低功耗SoC設計技術的綜合

考慮 214

11.5 低功耗分析和工具 215

11.6 低功耗設計趨勢 216

本章參考文獻 217

第12章 後端設計 218

12.1 時鐘樹綜合 218

12.2 布局規劃 222

12.3 布線 224

12.4 ECO技術 226

12.5 功耗分析 227

12.6 信號完整性的考慮 228

12.6.1 信號完整性的挑戰 228

12.6.2 壓降和電遷移 230

12.6.3 信號完整性問題的預防、分析

和修正 231

12.7 物理驗證 232

12.8 可製造性設計/面向良品率

的設計 233

12.8.1 DFM/DFY的基本概念 233

12.8.2 DFM/DFY方法 234

12.8.3 典型的DFM/DFY問題及解決

方法 234

12.8.4 DFM/DFY技術的發展趨勢 237

12.9 後端設計技術的發展趨勢 237

本章參考文獻 238

第13章 SoC中數模混合信號IP的設計

與集成 239

13.1 SoC中的數模混合信號IP 239

13.2 數模混合信號IP的設計流程 239

13.3 基於SoC復用的數模混合信號

(AMS)IP包 241

13.4 數模混合信號(AMS)IP的設計

及集成要點 241

13.4.1 接口信號 241

13.4.2 模擬與數字部分的整體布局 242

13.4.3 電平轉換器的設計 242

13.4.4 電源的布局與規劃 243

13.4.5 電源/地線上跳動噪聲的消除 244

13.4.6 其他方面的考慮 244

13.5 數模混合IP在SoC設計中存在

的問題和挑戰 245

13.6 SoC混合集成的新趨勢 245

本章參考文獻 248

第14章 I/O環的設計和晶片封裝 249

14.1 I/O單元介紹 249

14.2 高速I/O的噪聲影響 249

14.3 靜電保護 250

14.3.1 ESD的模型及相應的測試

方法 251

14.3.2 ESD保護電路的設計 253

14.4 I/O環的設計 256

14.4.1 考慮對晶片的尺寸的影響 256

14.4.2 考慮對晶片封裝的影響 257

14.4.3 考慮對噪聲的影響 258

14.4.4 考慮對晶片ESD的影響 258

14.5 SoC晶片封裝 258

14.5.1 微電子封裝的功能 258

14.5.2 微電子封裝的發展趨勢 259

14.5.3 當前的封裝技術 259

14.5.4 封裝技術發展的驅動力 261

本章參考文獻 262

第15章 課程設計 263

15.1 基於ESL設計方法的Motion-JPEG

視頻解碼器設計 263

15.1.1 實驗內容 263

15.1.2 實驗準備工作 264

15.1.3 SoCLib ESL仿真平台及MJPEG

解碼流程的介紹 265

15.1.4 實驗1 構建基於SoCLib的

單核SoC 266

15.1.5 實驗2 構建基於SoCLib的

MPSoC 272

15.1.6 實驗3 系統軟體開發——嵌入式操

作系統及設備驅動設計 278

15.1.7 實驗4 面向MJPEG解碼的MPSoC

系統最佳化 279

15.2 實驗——基於ARM7TDMI處理器

的SoC設計 281

15.2.1 任務目標 281

15.2.2 設計參考 281

15.2.3 建議使用的EDA工具 281

15.2.4 基本SoC設計方案 282

15.2.5 實驗要求 284

15.3 項目進度管理 284

15.3.1 項目任務與進度階段 284

15.3.2 進度的管理 284

本章參考文獻 291

附錄A Pthread多執行緒編程接口 292

附錄B SoCLib系統支持包 295

相關詞條

相關搜尋

熱門詞條

聯絡我們