Verilog HDL與數(shù)字系統(tǒng)設計簡明教程

出版時間:2009-2  出版社:人民郵電出版社  作者:吳戈  頁數(shù):292  
Tag標簽:無  

前言

  HDL(HardwareDescriptionLanguage,硬件描述語言)是伴隨著集成電路設計復雜度和集成度的急劇上升而出現(xiàn)的。  硬件工程師們總要畫電路圖,用一個個小元件搭出或大或小的系統(tǒng)原理圖。當電路圖中的元件多達百個以上時,無論是畫圖還是分析都會有一定的難度。同樣的情形也發(fā)生在集成電路設計中,當一個芯片內(nèi)必須包含上萬個甚至幾十萬、幾百萬個晶體管時(目前面市的頻率最高的CPU芯片內(nèi)已經(jīng)集成了近2億個晶體管),用原理圖的方式來設計和管理顯然是“不可能的任務”。于是出現(xiàn)了HDL設計方法,就像20世紀70年代高級編程語言迅速取代匯編語言一樣,從20世紀90年代以來,HDL逐漸取代了門級原理圖設計方法?! erilogHDL是1983年由位于英格蘭阿克頓市的GDA公司開發(fā)出來的。VerilogHDL的具體物理建模能力強,語法類似c語言,容易學習。Verilog在工業(yè)界被應用廣泛,美國大多數(shù)公司的RTL級代碼都是用Verilog寫的?! ”緯饕槍Τ鯇W者,在內(nèi)容安排上主要以語法講解和程序分析為主,并沒有介紹復雜系統(tǒng)的設計方法。初學者應當從本書的基本結(jié)構(gòu)和方法出發(fā),打好基礎,一旦成為一個熟練的設計師,就會發(fā)現(xiàn)Verilog只是一個工具,而對系統(tǒng)功能的考慮和時序的精細設計才是最需要設計人員考慮的。  本書的寫作目標是讓初學者順利入門,希望您在閱讀本書的過程中逐漸了解到VerilogHDL,是什么、如何寫、如何用,面對一段寫好的程序能夠做出正確分析,最終掌握設計流程和建模方法?! erilogHDL發(fā)展至今20多年積累的文檔、書籍和各種資料可謂不計其數(shù),本書作者試圖從這些資料中,找到更好的也是更適合初學者學習的內(nèi)容,用一種更好的組織方式,呈現(xiàn)給讀者,讓讀者從中受益?! 〈罅渴褂脤嵗в性敿毜淖⑨尯头治鍪潜緯淖畲筇攸c。書中提供大量程序?qū)嵗?,目的不僅僅是讓讀者在學習階段理解它們的建模方法和技巧,而且可以在設計階段把其中很多程序片段直接拿來使用,從而節(jié)省時間?! 嵺`是學好編程語言的最佳途徑,所以建議讀者在學習之余盡量能多動手編程并做仿真。如果您能把本書給出的實例全都調(diào)試一次,一定可以事半功倍。  本書由吳戈編寫,參加資料整理的還有何偉、張兵、劉兆宏、季建華、劉福剛、趙文革、黃弦、鄧玉春、曾慶華、石昀、朱元斌、錢文杰、陳功杰、汪洪、劉超、鐘曉媛等,在此一并表示感謝!

內(nèi)容概要

  《Verilog HDL與數(shù)字系統(tǒng)設計簡明教程》分3部分,第1部分(第1-6章)是語法部分,詳細講解Verilog HDL語法知識和基本應用;第2部分(第7-9章)是實例部分,通過從已公布的成熟源代碼中精選的50多個最具代表性的建模實例,輔以框圖和詳細注釋幫助讀者理解程序,從而學習典型電路單元的建模方法;第3部分(第10章)是系統(tǒng)設計實戰(zhàn),為初學者展示了一個小型系統(tǒng)的詳細設計流程?!  禫erilog HDL與數(shù)字系統(tǒng)設計簡明教程》內(nèi)容豐富、實用性強,適合高等院校相關專業(yè)高年級學生和研究生學習和閱讀,對參加相關工作的工程技術人員也有很強的參考價值。

書籍目錄

第1章 初識Verilog HDL1.1 什么是Verilog HDL1.2 主要功能1.3 設計流程1.4 基本結(jié)構(gòu)1.4.1 模塊的概念1.4.2 模塊調(diào)用1.4.3 測試模塊1.5 程序設計基礎1.5.1 程序格式1.5.2 注釋語句1.5.3 標識符和關鍵詞1.5.4 參數(shù)聲明1.5.5 預處理指令第2章 數(shù)據(jù)類型與表達式2.1 數(shù)據(jù)類型2.1.1 常量2.1.2 變量2.2 表達式2.2.1 操作數(shù)2.2.2 操作符第3章 行為建模方法3.1 數(shù)據(jù)流行為建模3.1.1 連續(xù)賦值語句3.1.2 線網(wǎng)聲明賦值3.1.3 時延的概念3.1.4 線網(wǎng)時延3.1.5 用數(shù)據(jù)流建模方式實現(xiàn)1位全加器3.2 順序行為建模3.2.1 過程結(jié)構(gòu)語句3.2.2 時序控制3.2.3 語句塊3.2.4 過程性賦值3.2.5 if語句3.2.6 case語句3.2.7 循環(huán)語句3.2.8 握手協(xié)議實例第4章 結(jié)構(gòu)建模方法4.1 Verilog HDL內(nèi)置基元4.1.1 內(nèi)置基本門4.1.2 上拉、下拉電阻4.1.3 MOS開關4.1.4 雙向開關4.1.5 給基元定義時延4.1.6 描述實例數(shù)組4.1.7 內(nèi)置基元建模實例4.2 用戶定義基元4.2.1 UDP的定義4.2.2 組合電路UDP4.2.3 時序電路UDP4.2.4 Verilog HDL速記符號4.2.5 電平觸發(fā)和邊沿觸發(fā)混合的UDP4.3 模塊實例化4.3.1 端口關聯(lián)方式4.3.2 懸空端口4.3.3 端口匹配4.3.4 模塊參數(shù)值4.3.5 建模實例4.4 行為描述和結(jié)構(gòu)描述的混合使用第5章 任務、函數(shù)及其他5.1 任務5.1.1 任務定義5.1.2 任務調(diào)用5.2 函數(shù)5.2.1 函數(shù)定義5.2.2 函數(shù)調(diào)用5.3 系統(tǒng)任務和函數(shù)5.3.1 顯示任務5.3.2 文件輸入/輸出任務5.3.3 時間標度任務5.3.4 仿真控制任務5.3.5 時序驗證任務5.3.6 仿真時間函數(shù)5.3.7 實數(shù)變換函數(shù)5.3.8 隨機函數(shù)5.4 其他重要概念5.4.1 禁止語句5.4.2 命名事件5.4.3 層次路徑名5.4.4 共享任務和函數(shù)5.4.5 VCD文件5.4.6 指定塊5.4.7 強度第6章 編寫測試程序6.1 測試模塊6.2 產(chǎn)生輸入信號6.2.1 特定值序列6.2.2 重復模式6.3 從文本文件中讀取向量6.4 向文本文件中寫入向量6.5 測試程序?qū)嵗?.5.1 半加器6.5.2 5位計數(shù)器6.5.3 2選1選擇器6.5.4 2-4解碼器6.5.5 D觸發(fā)器第7章 初級建模實例7.1 觸發(fā)器7.1.1 上升沿觸發(fā)器7.1.2 帶異步復位端的上升沿觸發(fā)器7.1.3 帶異步置位端的上升沿觸發(fā)器7.1.4 帶異步復位端和異步置位端的上升沿觸發(fā)器7.1.5 帶同步復位端的上升沿觸發(fā)器7.1.6 帶同步置位端的上升沿觸發(fā)器7.1.7 帶異步復位端和輸出使能端的上升沿觸發(fā)器7.2 鎖存器7.2.1 帶使能端的鎖存器7.2.2 可異步選通數(shù)據(jù)的鎖存器7.2.3 可選通使能端的鎖存器7.2.4 帶異步復位端的鎖存器7.3 編碼器7.4 解碼器7.5 多路數(shù)據(jù)選擇器7.5.1 用if-else構(gòu)造的4選1選擇器7.5.2 用case構(gòu)造的4選1選擇器7.5.3 用case構(gòu)造的12選1選擇器7.5.4 帶忽略位的多路選擇器7.6 計數(shù)器7.6.1 帶計數(shù)使能端和異步復位端的8位計數(shù)器7.6.2 可設定計數(shù)輸出并帶異步復位端的8位計數(shù)器7.6.3 可設定計數(shù)輸出并帶使能端、進位端和復位端的8位計數(shù)器7.7 輸入輸出緩沖器7.7.1 三態(tài)緩沖器7.7.2 雙向緩沖器7.8 加法器7.8.1 半加器7.8.2 全加器7.8.3 串行進位加法器7.8.4 超前進位加法器7.9 移位寄存器7.10 頻率轉(zhuǎn)換器7.11 模數(shù)轉(zhuǎn)換器第8章 高級建模實例8.1 狀態(tài)機建模8.1.1 乘法器狀態(tài)機8.1.2 交互狀態(tài)機8.1.3 Moore型有限狀態(tài)機8.1.4 Mealy型有限狀態(tài)機8.2 序列檢測器8.3 FIFO(先入先出電路)8.3.1 16×16FIFO8.3.2 4×16FIFO8.4 UART(通用異步收發(fā)器)第9章 程序綜合實例9.1 可綜合設計9.1.1 綜合的概念9.1.2 可綜合9.1.3 可綜合及不可綜合的結(jié)構(gòu)9.2 綜合實例9.2.1 組合邏輯電路9.2.2 時序邏輯電路9.2.3 存儲器9.2.4 布爾方程9.2.5 有限狀態(tài)機9.2.6 通用移位寄存器9.2.7 算術邏輯單元(ALU)9.2.8 二進制計數(shù)器9.2.9 加法器9.2.10 數(shù)值比較器9.2.11 解碼器9.2.12 三態(tài)門9.2.13 序列檢測器第10章 系統(tǒng)設計實戰(zhàn)10.1 系統(tǒng)功能分析10.1.1 計算機的基本結(jié)構(gòu)10.1.2 典型微處理器系統(tǒng)結(jié)構(gòu)及工作原理10.1.3 普通計算器的基本結(jié)構(gòu)10.2 系統(tǒng)設計規(guī)劃10.2.1 系統(tǒng)功能模塊劃分10.2.2 鍵盤輸入模塊10.2.3 寄存器組10.2.4 算術邏輯單元10.2.5 顯示部分10.2.6 系統(tǒng)結(jié)構(gòu)10.3 程序設計與仿真10.3.1 鍵盤輸入模塊程序與仿真10.3.2 ALU模塊程序與仿真10.3.3 顯示部分程序與仿真10.3.4 頂層模塊程序設計10.4 邏輯綜合

章節(jié)摘錄

  VeiilogHDL是一種硬件描述語言,可以在算法級、門級到開關級的多種抽象設計層次上對數(shù)字系統(tǒng)建模?! erilogHDL可以描述設計的行為特性、數(shù)據(jù)流特性、結(jié)構(gòu)組成以及包含響應監(jiān)控和設計驗證方面的時延和波形產(chǎn)生機制。此外,VerilogHDL提供了編程語言接口,通過該接口用戶可以在模擬、驗證期間從外部訪問設計,包括模擬的具體控制和運行。  VeillogHDL不僅定義了語法,而且對每個語法結(jié)構(gòu)都定義了清晰的模擬、仿真語義。因此,用這種語言編寫的模型能夠使用VerilogHDL仿真器進行驗證。VetilogHDL從C語言中繼承了多種操作符和結(jié)構(gòu),所以從形式上看VerilogHDL和C語言有很多相似之處。雖然VeillogHDL有一些不太容易理解的擴展功能,但是VerilogHDL的核心子集非常易于學習和使用,而且對大多數(shù)建模應用來說核心子集已經(jīng)足夠用了。完整的VeillogHDL足以對最復雜的芯片和完整的電子系統(tǒng)進行描述?! ?.2 主要功能  作為一種硬件描述語言,VerilogHDL可以直接描述硬件結(jié)構(gòu),也可以通過描述系統(tǒng)行為實現(xiàn)建模。VerilogHDL的主要特點和功能有:描述基本邏輯門,如and、or和nand等基本邏輯門都內(nèi)置在語言中,可以直接調(diào)用。描述基本開關模型,如nlrlos、pmos和cmos等基本開關都可以直接調(diào)用。允許用戶定義基元(uDP),這種方式靈活而有效,用戶定義的基元既可以是組合邏輯也可以是時序邏輯??梢灾付ㄔO計中的端口到端口的時延、路徑時延和設計的時序檢查。可采用多種方式進行建模。這些方式包括順序行為描述方式——使用過程化結(jié)構(gòu)建模,數(shù)據(jù)流行為方式——使用連續(xù)賦值語句方式建模,結(jié)構(gòu)化方式——使用門和模塊實例語句描述建模。

編輯推薦

  VerilogHDL發(fā)展至今20多年中積累的文檔、書籍和各種資料可謂不計其數(shù),《Verilog HDL與數(shù)字系統(tǒng)設計簡明教程》力圖從這些資料中,找到適合初學者學習的內(nèi)容,用一種更好的組織方式,將之呈現(xiàn)給讀者?! ∫哉Z法講解和程序分析為主,告訴讀者VerilogHDL是什么、如何寫、如何用,面對一段寫好的程序如何做出正確分析,并最終掌握設計流程和建模方法。  實例豐富、注釋和分析詳盡,可以在設計階段直接使用書上的程序,從而節(jié)省時間?! 〗ㄗh讀者在學習之余盡量多動手編程并做仿真。如果能把《Verilog HDL與數(shù)字系統(tǒng)設計簡明教程》給出的實例全都調(diào)試一次,一定可以事半功倍。

圖書封面

圖書標簽Tags

評論、評分、閱讀與下載


    Verilog HDL與數(shù)字系統(tǒng)設計簡明教程 PDF格式下載


用戶評論 (總計0條)

 
 

 

250萬本中文圖書簡介、評論、評分,PDF格式免費下載。 第一圖書網(wǎng) 手機版

京ICP備13047387號-7