晶片EDA實戰:新一代晶片驗證語言Eagle和PVM驗證平台

易敏

  • 出版商: 機械工業
  • 出版日期: 2024-07-29
  • 售價: $834
  • 貴賓價: 9.5$792
  • 語言: 簡體中文
  • 頁數: 403
  • 裝訂: 平裝
  • ISBN: 7111754905
  • ISBN-13: 9787111754909
  • 相關分類: 半導體
  • 立即出貨 (庫存 < 4)

買這商品的人也買了...

商品描述

本書從晶片驗證的目的出發,完善了功能覆蓋率的定義,闡述了新的隨機測試方法,
即“功能覆蓋率直接驅動的隨機測試方法”,以及一種新的驗證語言EagleLang,即Eagle語言。
此程式語言具有類似腳本語言的簡潔語法,專用於晶片驗證,也可用於文字處理、數學運算、多執行緒程式設計等應用領域。
語言的編譯執行具有接近C++語言的效率,eagle是該語言的編譯器工具。
晶片模擬驗證效率是影響晶片專案週期的主要因素,本書提出了新一代的驗證方法學PVM(Parallel Verification Methodology),
採用多核心平行技術搭建的PVM驗證平台,具備執行效率高的特點,可有效實現晶片模擬驗證加速。
另外,在PVM驗證平台中採用工廠模式與動態程式技術,可實現驗證元件、測試案例的動態生成,減少驗證平台、測試案例的編譯時間。
本書主要適合晶片驗證工程師、晶片驅動軟體開發工程師、晶片系統建模工程師、晶片設計工程師閱讀。
本書也可以作為從事晶片EDA工具開發的軟體工程師、編譯器開發軟體工程師的參考書籍。
本書也可以作為大學師生了解晶片設計與驗證技術的參考書籍。

目錄大綱

前言
第一篇驗證方法學基礎
晶片驗證目的/
1.1晶片驗證與晶片品質/
1.2晶片驗證品質度量方法/
1.2.1代碼覆蓋率/
1.2.2斷言覆蓋率/
1.2.3功能覆蓋率/
1.2.4覆蓋率度量方法比較/
1.3功能覆蓋率/
1.3.1驗證目標定義/
1.3.2晶片系統模型/
1.3.3激勵數據模型/
1.3.4功能覆蓋率定義/
1.3.5交組合功能覆蓋率/
1.3.6順序組合功能覆蓋率/
1.3.7功能覆蓋率直接驅動的隨機驗證方法學/
晶片驗證方法/
2.1驗證方法/
2.1.1晶片驗證方法演進/
2.1.2驗證效率成本問題/
2.1.3測試和驗證的概念辨析/
2.2驗證效率提升/
2.2.1當前存在的效率問題/
2.2.2程式設計效率和編譯效率提升/
2.2.3執行效率提升/
2.3晶片驗證流程管理/
2.3.1晶片項目段劃分/
2.3.2驗證分層/
2.3.3全面度量管理/
2.3.4驗證技術手段/
2.3.5驗證技術發展思考/目錄
第二篇Eagle程式語言
Eagle語言概述/
3.1驗證語言設計背景/
3.1.1晶片驗證語言發展/
3.1.2驗證語言設計需求/
3.1.3Eagle語言設計思想與理念/
3.2語言概況/
3.2.1初識Eagle語言/
3.2.2代碼原始檔/
3.2.3package程式/
3.2.4編譯工程/
3.2.5程式碼行和程式碼區塊/
3.2.6註釋/
3.3函數/
3.3.1函數的定義/
3.3.2函數的參數和返回值/
3.4面向對象/
3.4.1類的基本定義/
3.4.2建構子和析構函數/
3.4.3類的繼承/
3.4.4類限定符/
3.4.5類屬性符/
3.4.6對象別名/
3.5記憶體管理/
3.6程序越界/
3.7關鍵字和作符/
3.8預定義系統參數/
3.9控制語法/
3.9.1if條件控制語句/
3.9.2for[]循環控制語句/
3.9.3for()循環控制語句/
3.9.4foreach…in…迴圈控制語句/
3.9.5while和dowhile循環控制語句/
3.9.6switch… case… others…條件控制語句/
3.9.7break和continue循環控制語句/
3.9.8return返回語句/基本資料型態/
4.1數字常數/
4.2字串常數/
4.3參數常數/
4.4枚舉型別/
4.5變數的型別及作用域/
4.6列印輸出語句/
4.6.1資訊輸出等級/
4.6.2一般文法/
4.6.3格式化列印輸出/
4.7bool型態/
4.7.1bool型別定義/
4.7.2邏輯運算/
4.7.3邏輯表達式/
4.8int型別/
4.9uint型別/
4.10float類型/
4.11string類型/
4.11.1字串定義/
4.11.2切片作/
4.11.3常用作函數/
4.11.4字串支援的運算子/
4.12list/rlist資料結構設計/
4.12.1list定義/
4.12.2list元素切片/
4.12.3物件替換作符(.=)/
4.12.4list的作函數/
4.13dict/rdict資料結構設計/
4.13.1dict定義/
4.13.2dict元素切片/
4.13.3dict作函數/
驗證用資料型態/
5.1bit資料結構設計/
5.1.1bit類型定義/
5.1.2bit位元切片/
5.1.3bit位標記/
5.1.4bit位元域定義/
5.1.5點等作符“.=”/
5.1.6bit資料型別交賦值/
5.1.7bit作函數/
5.1.8bit位元運算/
5.1.9bit算術運算/
5.2byte資料結構設計/
5.2.1byte資料類型定義/
5.2.2byte資料類型位元組切片方式/
5.2.3byte資料類型切片標記/
5.2.4byte位域定義/
5.2.5點等作符“.=”/
5.2.6基於標記進行byte類型數據
比較/
5.2.7byte資料型別交賦值/
5.2.8byte作函數/
5.3cover資料結構設計/
5.3.1cross交組合/
5.3.2comb排列組合/
5.3.3sequence順序組合/
5.3.4複雜cross交組合定義/
5.3.5trans跳變序列/
5.3.6變數關聯約束/
5.3.7cover資料結構定義/
5.3.8cover資料結構實現定向測試和
隨機測試/
5.3.9feedby()函數/
5.3.10cover資料作函數/
多線程編程/
6.1設計背景/
6.2生產者-消費者模式/
6.3tube通訊管道/
6.4函數多執行緒執行/
6.5物件多執行緒執行/
6.6線程變數/
庫及庫開發/
7.1系統庫/
7.1.1randint類/
7.1.2系統函數/
7.1.3math數學庫/
7.1.4time庫/
7.1.5演算法庫/
7.2目錄和文件庫/
7.2.1dir類/
7.2.2file類別/
7.3正規表達式/
7.3.1正規表示式語法/
7.3.2regexp類/
7.4sqlite3資料庫/
7.4.1eglSQLite3DB類別/
7.4.2eglSQLite3Statement類別/
7.4.3eglSQLite3Query類別/
7.4.4資料庫使用範例/
7.5庫開發工程/
7.5.1程式設計介面/
7.5.2編譯工程類型/
7.5.3庫開發:Eagle原始檔/
7.5.4函式庫開發:C/C++原始檔/
7.5.5函式庫開發:Eagle、C/C++原始檔/
7.5.6庫開發:Eagle原始檔、動態庫/
7.5.7函式庫開發:C/C++原始檔、動態函式庫/
7.5.8函式庫開發:Eagle、C/C++原始檔、動態函式庫/
第三篇PVM與DVM驗證平台PVM驗證平台平行架構設計/
8.1驗證平台設計需求/
8.1.1數位晶片常用類型/
8.1.2驗證平台功能需求/
8.1.3工程類需求/
8.2PVM驗證平台設計/
8.2.1傳統驗證平台架構分析/
8.2.2PVM基礎驗證平台/
8.2.3資料檢測驗證組件(monVC)/
8.2.4驅動驗證組件(drvVC)/
8.2.5暫存器塊(regBlock)/
8.2.6記憶體驗證組件(memVC)/
8.2.7服務驗證組件(svrVC)/
8.3PVM驗證平台整體架構/
8.3.1PVM驗證平台架構層次/
8.3.2PVM執行過程/
8.3.3PVM啟動/
8.3.4PVM整合/
8.4DPI介面函數/
8.4.1DPI介面函數總表/
8.4.2發送驗證元件DPI介面函數/
8.4.3接收驗證組件D