Verilog數(shù)字系統(tǒng)設(shè)計教程

出版時間:2008-6  出版社:北京航空航天大學(xué)出版社  作者:夏宇聞  頁數(shù):477  
Tag標(biāo)簽:無  

前言

  數(shù)字信號處理(DSP)系統(tǒng)的研究人員一直在努力尋找各種優(yōu)化的算法來解決相關(guān)的信號處理問題。當(dāng)他們產(chǎn)生了比較理想的算法思路后,就在計算機上用C語言或其他語言程序來驗證該算法,并不斷修改以期完善,然后與別的算法作性能比較。在現(xiàn)代通信和計算機系統(tǒng)中,對于DSP算法評價最重要的指標(biāo)是看它能否滿足工程上的需要。而許多工程上的需要都有實時響應(yīng)的要求,也就是所設(shè)計的數(shù)字信號處理(DSP)系統(tǒng)必須在限定的時間內(nèi),如在幾個毫秒(ms)甚至于幾個微秒(μs)內(nèi),對所輸入的大量數(shù)據(jù)完成相當(dāng)復(fù)雜的運算,并輸出處理結(jié)果。這時如果僅僅使用通用的微處理器,即使是專用于信號處理的微處理器,往往也無法滿足實時響應(yīng)的要求。因此,不得不設(shè)計專用的高速硬線邏輯來完成這樣的運算。設(shè)計這樣的有苛刻實時要求的、復(fù)雜的高速硬線運算邏輯是一件很有挑戰(zhàn)性的工作,即使有了好的算法而沒有好的設(shè)計工具和方法也很難完成?! 〗?0年來,我國在復(fù)雜數(shù)字電路設(shè)計技術(shù)領(lǐng)域與國外的差距越來越大。作為一名在大學(xué)講授專用數(shù)字電路與系統(tǒng)設(shè)計課程的老師深深感到責(zé)任的重大。我個人認(rèn)為,我國在這一技術(shù)領(lǐng)域的落后與大學(xué)的課程設(shè)置和教學(xué)條件有關(guān)。因為我們沒有及時把國外最先進(jìn)的設(shè)計方法和技術(shù)介紹給學(xué)生,也沒有給他們創(chuàng)造實踐的機會。1995年我受學(xué)校的委托,籌建世行貸款的電路設(shè)計自動化(EDA)實驗室。通過13年的摸索、實踐,逐步掌握了利用VerilogHDL設(shè)計復(fù)雜數(shù)字電路的仿真和綜合技術(shù)。在此期間為航天部等有關(guān)單位設(shè)計了衛(wèi)星信道加密用的復(fù)雜數(shù)字電路,提供給他們經(jīng)前后仿真驗證的VerilogHDL源代碼,得到很高的評價。在其后的幾年中又為該單位設(shè)計了衛(wèi)星下行信道RS(255,223)編碼/解碼電路和衛(wèi)星上行信道BCH(64,56)編碼/解碼電路,這幾個項目已先后通過有關(guān)單位的驗收。1999年到2000年期間,又成功地設(shè)計了用于小波(Wavelet)圖像壓縮/解壓縮的小波卷積器和改進(jìn)的零修剪樹算法(即SPIHT算法)的RTL級VerilogHDL模型。不但成功地對該模型進(jìn)行了仿真和綜合,而且制成的可重新配置硬線邏輯(采用ALTERAFLEX10K系列CPLD/10/30/50各一片)的PCI線路板,能完成約2000條C語句程序才能完成的圖像/解壓縮算法。運算結(jié)果與軟件完成的完全一致,而且速度比用微型計算機快得多。2003年由我協(xié)助指導(dǎo)的JPEG2000算法硬線邏輯設(shè)計,在清華同行的努力下完成了FPGA驗證后并成功地投片,該芯片目前已應(yīng)用于實時監(jiān)控系統(tǒng)。近年來我?guī)ьI(lǐng)的研究生分別為日本某公司、香港科技大學(xué)電子系、革新科技公司和神州龍芯集成電路設(shè)計公司完成多項設(shè)計,其中包括SATA接口、AMBA總線接口、LED控制器和USB控制器等在內(nèi)的多項IP設(shè)計,取得了良好的社會效益和聲譽。2006年秋,正式受聘于神州龍芯集成電路設(shè)計公司擔(dān)任技術(shù)顧問,為中國的龍芯二號等IC事業(yè)提供必要的技術(shù)支持?! ”緯窃?998年北京航空航天大學(xué)出版社出版的《復(fù)雜數(shù)字電路與系統(tǒng)的VerilogHDL設(shè)計技術(shù)》和2003年《Verilog數(shù)字系統(tǒng)設(shè)計教程》基礎(chǔ)上修訂的,是一本既有理論又有實踐的設(shè)計大全。由于教學(xué)、科研、技術(shù)資料翻譯和實驗室的各項工作很忙,只能利用零碎時間,一點一滴地把積累的教學(xué)經(jīng)驗和新收集到的材料補充輸入到計算機中,抽空加以整理。我們使用Verilog設(shè)計復(fù)雜數(shù)字邏輯電路雖然已經(jīng)有13年的時間,但仍舊在不斷地學(xué)習(xí)提高之中,書中難免存在疏忽、錯誤之處,敬請細(xì)心的讀者不吝指教。我之所以在原版基礎(chǔ)上把這本書再版,是想把原教材中一些不足的地方作一些必要的補充和修改,在大學(xué)生和研究生中加快Verilog設(shè)計技術(shù)的推廣,盡快培養(yǎng)一批掌握先進(jìn)設(shè)計技術(shù)的跨世紀(jì)的人才。期望本書能在這一過程中起到拋磚引玉的作用?! 』叵肫饋?,這本書實質(zhì)上是我們實驗室全體老師和同學(xué)們多年的勞動成果,其中在EDA實驗室工作過的歷屆研究生張琰、山崗、王靜璇、田玉文、馮文楠、楊柳、傅紅軍、龔劍、王書龍、胡瑛、楊雷、邢偉、管麗、劉曦、王進(jìn)磊、王煜華、蘇宇、張云帆、楊鑫、徐偉俊、邢小地、霍強、宋成偉、邢志成、李鵬、李琪、陳巖、趙宗民等都幫我做了許多工作,如部分素材的翻譯、整理、錄入和一些VerilogHDL模塊的設(shè)計修改和驗證?! ”敬卧侔媸窃诒緯?次印刷之后受北航出版社之托進(jìn)行的,趁此機會讓我衷心地感謝在編寫本書過程中所有給過我?guī)椭凸膭畹睦蠋熀屯瑢W(xué)們。  教學(xué)中使用的多媒體課件已在本書第3次印刷后交給出版社,有需要者可向北航出版社發(fā)行部索取,可以免費提供給有關(guān)教師指導(dǎo)教學(xué)和備課演示之用。

內(nèi)容概要

本書講述了自20世紀(jì)90年代開始在美國和其他先進(jìn)的工業(yè)化國家逐步推廣的利用硬件描述語言(Verilog HDL)建模、仿真和綜合的設(shè)計復(fù)雜數(shù)字邏輯電路與系統(tǒng)的方法和技術(shù)。書中內(nèi)容從算法和計算的基本概念出發(fā),講述如何由硬線邏輯電路來實現(xiàn)復(fù)雜數(shù)字邏輯系統(tǒng)的方法。全書共分4部分。第一部分共8章,即Verilog數(shù)字設(shè)計基礎(chǔ)篇,可作為本科生的入門教材。第二部分共10章,即設(shè)計和驗證篇,可作為本科高年級學(xué)生或研究生學(xué)習(xí)數(shù)字系統(tǒng)設(shè)計的參考書。第三部分為實踐篇,共提供12個上機練習(xí)和實驗范例。第四部分是語法篇,即Verilog 硬件描述語言參考手冊;IEEE Verilog13642001標(biāo)準(zhǔn)簡介,以反映Verilog語法的最新變化,可供讀者學(xué)習(xí)、查詢之用。    本書的教學(xué)方式以每2學(xué)時講授一章為宜,每次課后需要花10 h復(fù)習(xí)思考。完成10章學(xué)習(xí)后,就可以開始做上機練習(xí),由簡單到復(fù)雜,由典型到一般,循序漸進(jìn)地學(xué)習(xí)Verilog HDL基礎(chǔ)知識。按照書上的步驟,可以使大學(xué)電子類及計算機工程類本科及研究生,以及相關(guān)領(lǐng)域的設(shè)計工程人員在半年內(nèi)掌握Verilog HDL設(shè)計技術(shù)。    本書可作為電子工程類、自動控制類、計算機類的大學(xué)本科高年級及研究生教學(xué)用書,亦可供其他工程人員自學(xué)與參考。

作者簡介

  夏宇聞,北京航空航天大學(xué)EDA實驗室教授。

書籍目錄

第一部分 Verilog數(shù)字設(shè)計基礎(chǔ)  第1章 Verilog的基本知識  1.1 硬件描述語言HDL  1.2 Verilog HDL的歷史      1.2.1 什么是Verilog HDL      1.2.2 Verilog HDL的產(chǎn)生及發(fā)展    1.3 Verilog HDL和 VHDL的比較  1.4 Verilog的應(yīng)用情況和適用的設(shè)計  1.5 采用Verilog HDL設(shè)計復(fù)雜數(shù)字電路的優(yōu)點      1.5.1 傳統(tǒng)設(shè)計方法——電路原理圖輸入法      1.5.2 Verilog HDL設(shè)計法與傳統(tǒng)的電路原理圖輸入法的比較      1.5.3 Verilog的標(biāo)準(zhǔn)化與軟核的重用      1.5.4 軟核、固核和硬核的概念及其重用  1.6 采用硬件描述語言(Verilog HDL)的設(shè)計流程簡介      1.6.1 自頂向下(Top_Down)設(shè)計的基本概念      1.6.2 層次管理的基本概念      1.6.3 具體模塊的設(shè)計編譯和仿真的過程      1.6.4 具體工藝器件的優(yōu)化、映像和布局布線  小結(jié)  思考題 第2章 Verilog語法的基本概念  概述    2.1 Verilog模塊的基本概念  2.2 Verilog用于模塊的測試  小結(jié)  思考題 第3章 模塊的結(jié)構(gòu)、數(shù)據(jù)類型、變量和基本運算符號  概述  3.1 模塊的結(jié)構(gòu)      3.1.1 模塊的端口定義      3.1.2 模塊內(nèi)容      3.1.3 理解要點      3.1.4 要點總結(jié)  3.2 數(shù)據(jù)類型及其常量和變量      3.2.1 常量      3.2.2 變量  3.3 運算符及表達(dá)式      3.3.1 基本的算術(shù)運算符      3.3.2 位運算符  小結(jié)  思考題 第4章 運算符、賦值語句和結(jié)構(gòu)說明語句  概述  4.1 邏輯運算符  4.2 關(guān)系運算符  4.3 等式運算符  4.4 移位運算符  4.5 位拼接運算符  4.6 縮減運算符  4.7 優(yōu)先級別  4.8 關(guān) 鍵 詞  4.9 賦值語句和塊語句   4.9.1 賦值語句   4.9.2 塊語句  小結(jié)  思考題 第5章 條件語句、循環(huán)語句、塊語句與生成語句  概述  5.1 條件語句(if_else語句)  5.2 case語句  5.3 條件語句的語法  5.4 多路分支語句  5.5 循環(huán)語句   5.5.1 forever語句   5.5.2 repeat語句   5.5.3 while語句   5.5.4 for語句  5.6 順序塊和并行塊   5.6.1 塊語句的類型   5.6.2 塊語句的特點  5.7 生成塊   5.7.1 循環(huán)生成語句   5.7.2 條件生成語句   5.7.3 case生成語句  5.8舉例   5.8.1 四選一多路選擇器   5.8.2 四位計數(shù)器  小結(jié)  思考題 第6章 結(jié)構(gòu)語句、系統(tǒng)任務(wù)、函數(shù)語句和顯示系統(tǒng)任務(wù)   概述  6.1 結(jié)構(gòu)說明語句      6.1.1 initial語句      6.1.2 always語句  6.2 task和function說明語句      6.2.1 task和function說明語句的不同點      6.2.2 task說明語句      6.2.3 function說明語句      6.2.4 函數(shù)的使用舉例      6.2.5 自動(遞歸)函數(shù)      6.2.6 常量函數(shù)      6.2.7 帶符號函數(shù)   6.3 關(guān)于使用任務(wù)和函數(shù)的小結(jié)    6.4 常用的系統(tǒng)任務(wù)      6.4.1 $display和$write任務(wù)      6.4.2 文件輸出      6.4.3 顯示層次      6.4.4 選通顯示       6.4.5 值變轉(zhuǎn)儲文件  6.5 其他系統(tǒng)函數(shù)和任務(wù)   小結(jié)  思考題  第7章 調(diào)試用系統(tǒng)任務(wù)和常用編譯預(yù)處理語句  概述  7.1 系統(tǒng)任務(wù) $monitor  7.2 時間度量系統(tǒng)函數(shù)$time  7.3 系統(tǒng)任務(wù)$finish  7.4 系統(tǒng)任務(wù)$stop  7.5 系統(tǒng)任務(wù)$readmemb和$readmemh  7.6 系統(tǒng)任務(wù) $random  7.7 編譯預(yù)處理      7.7.1 宏定義?define      7.7.2 文件包含"處理?include      7.7.3 時間尺度?timescale      7.7.4 條件編譯命令?ifdef、?else、?endif      7.7.5 條件執(zhí)行  小結(jié)  思考題 第8章 語法概念總復(fù)習(xí)練習(xí)  概述  小結(jié)第二部分 設(shè)計和驗證部分 第9章 Verilog HDL模型的不同抽象級別  概述  9.1 門級結(jié)構(gòu)描述      9.1.1 與非門、或門和反向器及其說明語法      9.1.2 用門級結(jié)構(gòu)描述D觸發(fā)器      9.1.3 由已經(jīng)設(shè)計成的模塊構(gòu)成更高一層的模塊  9.2 Verilog HDL的行為描述建模      9.2.1 僅用于產(chǎn)生仿真測試信號的Verilog HDL行為描述建模      9.2.2 Verilog HDL建模在TopDown設(shè)計中的作用和行為建模的可綜合性問題  9.3 用戶定義的原語  小結(jié)  思考題 第10章 如何編寫和驗證簡單的純組合邏輯模塊  概述  10.1 加法器  10.2 乘法器  10.3 比較器  10.4 多路器  10.5 總線和總線操作  10.6 流水線  小結(jié)  思考題 第11章 復(fù)雜數(shù)字系統(tǒng)的構(gòu)成  概述  11.1 運算部件和數(shù)據(jù)流動的控制邏輯      11.1.1 數(shù)字邏輯電路的種類      11.1.2 數(shù)字邏輯電路的構(gòu)成  11.2 數(shù)據(jù)在寄存器中的暫時保存  11.3 數(shù)據(jù)流動的控制  11.4 在Verilog HDL設(shè)計中啟用同步時序邏輯  11.5 數(shù)據(jù)接口的同步方法  小結(jié)  思考題 第12章 同步狀態(tài)機的原理、結(jié)構(gòu)和設(shè)計  概述  12.1 狀態(tài)機的結(jié)構(gòu)  12.2 Mealy狀態(tài)機和Moore狀態(tài)機的不同點  12.3 如何用Verilog來描述可綜合的狀態(tài)機      12.3.1 用可綜合Verilog模塊設(shè)計狀態(tài)機的典型辦法      12.3.2 用可綜合的Verilog模塊設(shè)計、用獨熱碼表示狀態(tài)的狀態(tài)機      12.3.3 用可綜合的Verilog模塊設(shè)計、由輸出指定的碼表示狀態(tài)的狀態(tài)機      12.3.4 用可綜合的Verilog模塊設(shè)計復(fù)雜的多輸出狀態(tài)機時常用的方法  小結(jié)  思考題 第13章 設(shè)計可綜合的狀態(tài)機的指導(dǎo)原則  概述  13.1 用Verilog HDL語言設(shè)計可綜合的狀態(tài)機的指導(dǎo)原則  13.2 典型的狀態(tài)機實例  13.3 綜合的一般原則  13.4 語言指導(dǎo)原則  13.5 可綜合風(fēng)格的Verilog HDL模塊實例      13.5.1 組合邏輯電路設(shè)計實例      13.5.2 時序邏輯電路設(shè)計實例  13.6 狀態(tài)機的置位與復(fù)位      13.6.1 狀態(tài)機的異步置位與復(fù)位      13.6.2 狀態(tài)機的同步置位與復(fù)位    小結(jié)    思考題  第14章 深入理解阻塞和非阻塞賦值的不同  概述    14.1 阻塞和非阻塞賦值的異同      14.1.1 阻塞賦值      14.1.2 非阻塞賦值  14.2 Verilog模塊編程要點  14.3 Verilog的層次化事件隊列  14.4 自觸發(fā)always塊  14.5 移位寄存器模型  14.6 阻塞賦值及一些簡單的例子  14.7 時序反饋移位寄存器建?! ?4.8 組合邏輯建模時應(yīng)使用阻塞賦值  14.9 時序和組合的混合邏輯——使用非阻塞賦值  14.10 其他阻塞和非阻塞混合使用的原則  14.11 對同一變量進(jìn)行多次賦值  14.12 常見的對于非阻塞賦值的誤解  小結(jié)  思考題 第15章 較復(fù)雜時序邏輯電路設(shè)計實踐  概述  小結(jié)  思考題 第16章 復(fù)雜時序邏輯電路設(shè)計實踐  概述      16.1 二線制I2C CMOS串行EEPROM的簡單介紹      16.2 I2C總線特征介紹      16.3 二線制I2C CMOS串行EEPROM的讀寫操作       16.4 EEPROM的Verilog HDL程序     總結(jié)  思考題 第17章 簡化的 RISC_CPU設(shè)計  概述    17.1 課題的來由和設(shè)計環(huán)境介紹    17.2 什么是CPU    17.3  RISC_CPU結(jié)構(gòu)     17.3.1 時鐘發(fā)生器     17.3.2 指令寄存器      17.3.3 累加器      17.3.4 算術(shù)運算器      17.3.5 數(shù)據(jù)控制器      17.3.6 地址多路器      17.3.7 程序計數(shù)器      17.3.8 狀態(tài)控制器      17.3.9 外圍模塊  17.4 RISC_CPU 操作和時序      17.4.1 系統(tǒng)的復(fù)位和啟動操作      17.4.2 總線讀操作      17.4.3 總線寫操作    17.5 RISC_CPU尋址方式和指令系統(tǒng)    17.6 RISC_CPU模塊的調(diào)試       17.6.1 RISC_CPU模塊的前仿真      17.6.2 RISC_CPU模塊的綜合      17.6.3 RISC_CPU模塊的優(yōu)化和布局布線  小結(jié)  思考題 第18章 虛擬器件/接口、IP和基于平臺的設(shè)計方法及其在大型數(shù)字系統(tǒng)設(shè)計中的作用  概述  18.1 軟核和硬核、宏單元、虛擬器件、設(shè)計和驗證IP以及基于平臺的設(shè)計方法  18.2 設(shè)計和驗證IP供應(yīng)商  18.3 虛擬模塊的設(shè)計  18.4 虛擬接口模塊的實例  小結(jié)  思考題第三部分 設(shè)計示范與實驗練習(xí) 概述 練習(xí)一 簡單的組合邏輯設(shè)計 練習(xí)二 簡單分頻時序邏輯電路的設(shè)計 練習(xí)三 利用條件語句實現(xiàn)計數(shù)分頻時序電路 練習(xí)四 阻塞賦值與非阻塞賦值的區(qū)別 練習(xí)五 用always塊實現(xiàn)較復(fù)雜的組合邏輯電路 練習(xí)六 在Verilog HDL中使用函數(shù) 練習(xí)七 在Verilog HDL中使用任務(wù)(task) 練習(xí)八 利用有限狀態(tài)機進(jìn)行時序邏輯的設(shè)計 練習(xí)九 利用狀態(tài)機實現(xiàn)比較復(fù)雜的接口設(shè)計 練習(xí)十 通過模塊實例調(diào)用實現(xiàn)大型系統(tǒng)的設(shè)計 練習(xí)十一 簡單卷積器的設(shè)計  附錄一 A/D轉(zhuǎn)換器的Verilog HDL模型機所需要的技術(shù)參數(shù)  附錄二  2K*8位 異步 CMOS 靜態(tài)RAM HM65162模型 練習(xí)十二 利用SRAM設(shè)計一個FIFO第四部分 語法篇 語法篇1 關(guān)于Verilog HDL的說明  一、 關(guān)于 IEEE 1364標(biāo)準(zhǔn)  二、  Verilog簡介  三、 語法總結(jié)  四、 編寫Verilog HDL源代碼的標(biāo)準(zhǔn)  五、 設(shè)計流程 語法篇2 Verilog硬件描述語言參考手冊  一、 Verilog HDL語句與常用標(biāo)志符(按字母順序排列)  二、 系統(tǒng)任務(wù)和函數(shù)(System task and function)  三、 常用系統(tǒng)任務(wù)和函數(shù)的詳細(xì)使用說明  四、 Command Line Options 命令行的可選項  五、 IEEE Verilog 13642001標(biāo)準(zhǔn)簡介參考文獻(xiàn)

章節(jié)摘錄

  第一部分 VerilOG數(shù)字設(shè)計基礎(chǔ)  數(shù)字通信和自動化控制等領(lǐng)域的高速發(fā)展和世界范圍內(nèi)的高技術(shù)競爭對數(shù)字系統(tǒng)提出了越來越高的要求,特別是需要設(shè)計具有實時信號處理能力的專用集成電路,要求把包括多個CPU內(nèi)核在內(nèi)的整個電子系統(tǒng)綜合到一個芯片(SOC)上。設(shè)計并驗證這樣復(fù)雜的電路及系統(tǒng)已不再是簡單的個人勞動,而需要綜合許多專家的經(jīng)驗和知識才能夠完成。近10年來電路制造工藝技術(shù)進(jìn)步非常迅速,目前國際上60 nm的制造工藝,已達(dá)到工業(yè)化生產(chǎn)的規(guī)模,而電路設(shè)計能力遠(yuǎn)遠(yuǎn)落后于制造技術(shù)的進(jìn)步。在數(shù)字邏輯設(shè)計領(lǐng)域,迫切需要一種共同的工業(yè)標(biāo)準(zhǔn)來統(tǒng)一對數(shù)字邏輯電路及系統(tǒng)的描述,這樣就能把系統(tǒng)設(shè)計工作分解為邏輯設(shè)計(前端)、電路實現(xiàn)(后端)和驗證三個互相獨立而又相關(guān)的部分。由于邏輯設(shè)計的相對獨立性就可以把專家們設(shè)計的各種常用數(shù)字邏輯電路和組件(如FFT算法、DCT算法部件,DDRAM讀寫控制器等)建成宏單元(megcell)或軟(固/硬)核,也稱作Soft(firm/hard)Core,即IP(知識產(chǎn)權(quán)內(nèi)核的英文縮寫)庫供設(shè)計者引用,設(shè)計者可以直接利用它們的行為模型設(shè)計并驗證其他電路,以減少重復(fù)勞動,提高工作效率。電路的實現(xiàn)則可借助于綜合工具和IP的重復(fù)利用,以及布局布線工具(與具體工藝技術(shù)有關(guān))自動地完成?! erilog HDL和VHDL這兩種工業(yè)標(biāo)準(zhǔn)的產(chǎn)生順應(yīng)了歷史的潮流,因而得到了迅速的發(fā)展。美國、日本等國由于高級設(shè)計工程師人力資源成本遠(yuǎn)高于中國,所以,近年來把許多設(shè)計工作轉(zhuǎn)移到中國大陸,以降低設(shè)計成本。作為新世紀(jì)的中國大學(xué)生和年輕的電子工程師應(yīng)該盡早掌握這種新的設(shè)計方法,使我國在復(fù)雜數(shù)字電路及系統(tǒng)的設(shè)計競爭中逐步縮小與美國等先進(jìn)的工業(yè)發(fā)達(dá)國家的差距?! 〉?章 Verilog的基本知識  1.1 硬件描述語言HDL  硬件描述語言(HDL,hardware description language)是一種用形式化方法來描述數(shù)字電路和系統(tǒng)的語言。數(shù)字電路系統(tǒng)的設(shè)計者利用這種語言可以從上層到下層(從抽象到具體)逐層描述自己的設(shè)計思想,用一系列分層次的模塊來表示極其復(fù)雜的數(shù)字系統(tǒng)。然后利用電子設(shè)計自動化(以下簡稱為EDA)工具逐層進(jìn)行仿真驗證,再把其中需要變?yōu)榫唧w物理電路的模塊組合經(jīng)由自動綜合工具轉(zhuǎn)換到門級電路網(wǎng)表。接下去再用專用集成電路(ASIC)或現(xiàn)場可編程門陣列(FPGA)自動布局布線工具把網(wǎng)表轉(zhuǎn)換為具體電路布線結(jié)構(gòu)的實現(xiàn)。在制成物理器件之前,還可以用Verilog的門級模型(原語元件或UDP)來代替具體基本元件。因其邏輯功能和延時特性與真實的物理元件完全一致,所以在仿真工具的支持下能驗證復(fù)雜數(shù)字系統(tǒng)物理結(jié)構(gòu)的正確性,使投片的成功率達(dá)到l00%。目前,這種稱為高層次設(shè)計(high—level—design)的方法已被廣泛采用。據(jù)統(tǒng)計,目前在美國硅谷約有90%以上的ASIC和FPGA已采用Verilog硬件描述語言方法進(jìn)行設(shè)計?! ∮布枋稣Z言的發(fā)展至今已有近30年的歷史,并成功地應(yīng)用于設(shè)計的各個階段:建模、仿真、驗證和綜合等。到20世紀(jì)80年代,已出現(xiàn)了上百種硬件描述語言,并對設(shè)計自動化曾起到了極大的促進(jìn)和推動作用。但是,這些語言一般各自面向特定的設(shè)計領(lǐng)域與層次,而且眾多的語言使用戶無所適從。因此急需一種面向設(shè)計的多領(lǐng)域、多層次、并得到普遍認(rèn)同的標(biāo)準(zhǔn)硬件描述語言。進(jìn)入20世紀(jì)80年代后期,硬件描述語言向著標(biāo)準(zhǔn)化的方向發(fā)展。最終,VHDL和Verilog HDL語言適應(yīng)了這種趨勢的要求,先后成為IEEE標(biāo)準(zhǔn)。把硬件描述語言用于自動綜合還只有10多年的歷史。最近l0多年來,用綜合工具把可綜合風(fēng)格的HDL模塊自動轉(zhuǎn)換為具體電路發(fā)展非常迅速,大大地提高了復(fù)雜數(shù)字系統(tǒng)的設(shè)計生產(chǎn)率。在美國和日本等先進(jìn)電子工業(yè)國,Verilog語言已成為設(shè)計數(shù)字系統(tǒng)的基礎(chǔ)。本書第一部分將通過具體例子,由淺入深地幫助同學(xué)們學(xué)習(xí): ?。?)Verilog的基本語法; ?。?)簡單的可綜合Verilog模塊與邏輯電路的對應(yīng)關(guān)系; ?。?)簡單的Verilog測試模塊和它的意義。  書中第二部分將通過較復(fù)雜的設(shè)計實例,幫助同學(xué)們掌握:  (1)如何編寫復(fù)雜的多層次的可綜合風(fēng)格的Verilog HDL模塊; ?。?)如何用可綜合的Verilog模塊構(gòu)成一個可靠的復(fù)雜IP軟核和固核模塊; ?。?)如何借助于Verilog語言,并利用已有的虛擬行為模塊對所設(shè)計的系統(tǒng)模塊(由可綜合的自主和商業(yè)IP模塊組成)進(jìn)行全面可靠的測試和驗證(包括軟/硬件協(xié)同測試的基本概念)?! ?.2 Verilog HDL的歷史  1.2.1什么是Verilog HDL  Verilog HDL是硬件描述語言的一種,用于數(shù)字電子系統(tǒng)設(shè)計。該語言允許設(shè)計者進(jìn)行各種級別的邏輯設(shè)計,進(jìn)行數(shù)字邏輯系統(tǒng)的仿真驗證、時序分析、邏輯綜合。它是目前應(yīng)用最廣泛的一種硬件描述語言。據(jù)有關(guān)文獻(xiàn)報道,目前在美國使用Verilog HDL進(jìn)行設(shè)計的工程師大約有l(wèi)0多萬人,全美國有200多所大學(xué)教授用Veril09硬件描述語言的設(shè)計方法。在我國臺灣地區(qū)幾乎所有著名大學(xué)的電子和計算機工程系都講授Verilog有關(guān)的課程?! ?.2.2 Verilog HDL的產(chǎn)生及發(fā)展  Verilog HDL是在1983年由GDA(GateWay Design Automation)公司的Phil Moorby首創(chuàng)的。Phil Moorby后來成為Veril09—XL的主要設(shè)計者和Cadence公司(Cadence DesignSystem)的第一個合伙人。在1984至1985年,Moorby設(shè)計出了第一個名為Veril09—XL的仿真器;l986年,他對Verilog HDL的發(fā)展又作出了另一個巨大貢獻(xiàn),即提出了用于快速門級仿真的XL算法?! ‰S著VerilOG—XL算法的成功,Verilog HDL語言得到迅速發(fā)展。1989年,Cadence公司收購了GDA公司,Verilog HDL語言成為Cadence公司的私有財產(chǎn)。l990年,Cadence公司決定公開Verilog HDL語言,于是成立了0VI(Open Verilog International)組織來負(fù)責(zé)促進(jìn)Verilog HDL語言的發(fā)展?;赩erilog HDL的優(yōu)越性,IEEE于1995年制定了VerilogHDL的IEEE標(biāo)準(zhǔn),即Verilog HDLl364—1995;2001年發(fā)布了Verilog HDLl364—2001標(biāo)準(zhǔn);2005年SystemVerilog IEEE l800—2005標(biāo)準(zhǔn)的公布,更使得Veril09語言在綜合、仿真驗證和模塊的重用等性能方面都有大幅度的提高?! D1.1展示了Veril09的發(fā)展歷史和未來?! ?.3 Verilog HDL和VHDL的比較  Verilog HDL和VHDL都是用于邏輯設(shè)計的硬件描述語言,并且都已成為IEEE標(biāo)準(zhǔn)。VHDL是在1987年成為IEEE標(biāo)準(zhǔn),Verilog HDL則在1995年才正式成為IEEE標(biāo)準(zhǔn)。之所以VHDL比Verilog HDL早成為IEEE標(biāo)準(zhǔn),這是因為VHDL是由美國軍方組織開發(fā)的,而Verilog HDL則是從一個普通的民間公司的私有財產(chǎn)轉(zhuǎn)化而來,基于Verilog HDL的優(yōu)越性,才成為IEEE標(biāo)準(zhǔn),因而有更強的生命力。  VHDL其英文全名為VHSIC Hardware Description Language,而VHSIC則是VeryHigh Speed Integerated Circuit的縮寫詞,意為甚高速集成電路,故VHDL其準(zhǔn)確的中文譯名為甚高速集成電路的硬件描述語言?! erilog HDL和VHDL作為描述硬件電路設(shè)計的語言,其共同的特點在于:能形式化地抽象表示電路的行為和結(jié)構(gòu);支持邏輯設(shè)計中層次與范圍的描述;可借用高級語言的精巧結(jié)構(gòu)來簡化電路行為的描述;具有電路仿真與驗證機制以保證設(shè)計的正確性;支持電路描述由高層到低層的綜合轉(zhuǎn)換;硬件描述與實現(xiàn)工藝無關(guān)(有關(guān)工藝參數(shù)可通過語言提供的屬性包括進(jìn)去);便于文檔管理;易于理解和設(shè)計重用?! 〉荲erilog HDL和VHDL又各有其自己的特點。由于Verilog HDL早在1983年就已推出,至今已有20多年的應(yīng)用歷史,因而Verilog HDL擁有更廣泛的設(shè)計群體,成熟的資源也遠(yuǎn)比VHDL豐富。與VHDL相比Verilog HDL的最大優(yōu)點是:它是一種非常容易掌握的硬件描述語言,只要有C語言的編程基礎(chǔ),通過20學(xué)時的學(xué)習(xí),再加上一段實際操作,一般同學(xué)可在2~3個月內(nèi)掌握這種設(shè)計方法的基本技術(shù)。而掌握VHDL設(shè)計技術(shù)就比較困難。這是因為VHDL不很直觀,需要有Ada編程基礎(chǔ),一般認(rèn)為至少需要半年以上的專業(yè)培訓(xùn),才能掌握VHDL的基本設(shè)計技術(shù)。2005年,SystemVerilog IEEEl800—2005標(biāo)準(zhǔn)公布以后,集成電路設(shè)計界普遍認(rèn)為Verilog HDL將在10年內(nèi)全面取代VHDL成為ASIC設(shè)計行業(yè)包攬設(shè)計、測試和驗證功能的的唯一語言。圖1.2所示的是Verilog HDL和VHDL建模能力的比較圖,供讀者參考。-2005標(biāo)準(zhǔn),不但使Veril09的可綜合性能和系統(tǒng)仿真性能方面有大幅度的提高,而且在IP的重用方面(包括設(shè)計和驗證模塊的重用)也有重大的突破。因此,Verilog HDL不但作為學(xué)習(xí)HDL設(shè)計方法的入門和基礎(chǔ)是比較合適的,而且對于ASIC設(shè)計專業(yè)人員而言,也是必須掌握的基本技術(shù)。學(xué)習(xí)掌握Verilog HDL建模、仿真、綜合、重用和驗證技術(shù)不僅可以使同學(xué)們對數(shù)字電路設(shè)計技術(shù)有更進(jìn)一步的了解,而且可以為以后學(xué)習(xí)高級的行為綜合、物理綜合、IP設(shè)計和復(fù)雜系統(tǒng)設(shè)計和驗證打下堅實的基礎(chǔ)。  1.4 Verilog的應(yīng)用情況和適用的設(shè)計  近10多年以來,EDA界一直對在數(shù)字邏輯設(shè)計中究竟采用哪一硬件描述語言爭論不休。  近二三年來,美國、日本和我國臺灣地區(qū)電子設(shè)計界的情況已經(jīng)清楚地表明,在高層次數(shù)字系統(tǒng)設(shè)計領(lǐng)域,Verilog已經(jīng)取得壓倒性的優(yōu)勢;

編輯推薦

  《普通高等教育"十一五"國家級規(guī)劃教材?北京高等教育精品教材?Verilog數(shù)字系統(tǒng)設(shè)計教程(第2版)》可作為電子工程類、自動控制類、計算機類的大學(xué)本科高年級及研究生教學(xué)用書,亦可供其他工程人員自學(xué)與參考。  《Verilog數(shù)字系統(tǒng)設(shè)計教程》是在1998年北京航空航天大學(xué)出版社出版的《復(fù)雜數(shù)字電路與系統(tǒng)的Verilog HDL設(shè)計技術(shù)》和2003年《Verilog數(shù)字系統(tǒng)設(shè)計教程》基礎(chǔ)上修訂的,是一本既有理論又有實踐的設(shè)計大全。

圖書封面

圖書標(biāo)簽Tags

評論、評分、閱讀與下載


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


用戶評論 (總計152條)

 
 

  •   有志于成為數(shù)字邏輯設(shè)計工程師的同學(xué),都建議好好讀一讀這本書國內(nèi)至今所見對verilog介紹最詳細(xì)全面的著作,深入淺出,簡潔易懂。其中的不少經(jīng)驗與技巧是很不錯的,時序約束講得很詳細(xì),也有簡單的例程,也算真的是深入淺出了。有些地方只提到表面而不講詳細(xì),如SDRAM的驅(qū)動,他并沒有深入講解SDRAM驅(qū)動代碼該怎么寫,但我相信要講清楚確實是非常難的。 不適合連verilog HDL都不知的入門生,因為它沒有講HDL基礎(chǔ)的。很適合自學(xué),對掌握數(shù)字系統(tǒng)設(shè)計很見效果,同時對學(xué) VHDL也很有幫助
  •   這本是夏宇聞老師的VerilogHDL數(shù)字系統(tǒng)設(shè)計第二版,是初學(xué)HDL不可缺少的教材,對Verilog講得很詳細(xì)。從這本書入手,肯定能學(xué)到很多東西!
  •   內(nèi)容循序漸進(jìn),從Verilog的基礎(chǔ)知識到復(fù)雜數(shù)字邏輯設(shè)計,很全面。
  •   Verilog數(shù)字系統(tǒng)設(shè)計教程適合verilog初學(xué)者,是大家學(xué)習(xí)verilog的首選
  •   Verilog數(shù)字系統(tǒng)設(shè)計教程是數(shù)字芯片設(shè)計學(xué)習(xí)的一本很好書籍,極力推薦!!
  •   Verilog數(shù)字系統(tǒng)設(shè)計教程在書店沒買到,在當(dāng)當(dāng)上看到了,真好,以后都回來當(dāng)當(dāng)....
  •   作者是國內(nèi)很有名氣的,也是較早將verilog hdl引入國內(nèi)的,在這方面寫的教材也是最為經(jīng)典的。這本書講解了相關(guān)語法和要點,比較適合入門。
  •   我是天大自動化的。因為是零基礎(chǔ)學(xué)習(xí)FPGA,所以先學(xué)習(xí)verilog語言。
    優(yōu)點:夏老師的這本書講解verilog是非常詳盡的。
    缺點是關(guān)于仿真工具使用的講解過于粗略。
    可以先用這本書把verilog語法和基礎(chǔ)的實例學(xué)明白,然后仿真工具的使用參考其他書或看視頻教程。
  •   終于買到一本適合初學(xué)者用的Verilog HDL書了,這可是夏宇聞教授的傾力之作,為培養(yǎng)我國高端人才,縮小我國與發(fā)達(dá)國家在IC領(lǐng)域的差距而編寫的。本人也是Verilog HDL初學(xué)者,力薦這本書!
  •   夏老師的這本書講的很詳細(xì),例子已很多,值得認(rèn)真去學(xué)習(xí),推薦學(xué)習(xí)verilog HDL的初學(xué)者購買。
  •   學(xué)習(xí)verilog hdl很好的一本書
  •   書中內(nèi)容從算法和計算的基本概念出發(fā),講述如何由硬線邏輯電路來實現(xiàn)復(fù)雜數(shù)字邏輯系統(tǒng)的方法
  •   想學(xué)HDL的,可以拿這本入門,這本是Verilog HDL,和VHDL還是有一定區(qū)別的~要注意哈
  •   夏文宇老師的這本書,從0基礎(chǔ)開始,深入淺出,舉得例子也是典型的電路的實例,是一本入門到熟練掌握Verilog語言的必備工具書。
  •   相當(dāng)經(jīng)典的數(shù)字與Verilog方面的資料,可以買一本收藏,學(xué)習(xí),忘記可以查閱,基本上有這一本就差不多了,不過可以配合其他FPGA方面書籍
  •   一直就想買這本書,大二剛學(xué)完數(shù)電,覺得應(yīng)該趁熱打鐵學(xué)學(xué)Verilog等硬件編程語言,現(xiàn)在書到了,可以開始配合硬件學(xué)習(xí)了
  •   紙張很舒服,前邊講得很細(xì),后邊都是應(yīng)用的例子。

    是學(xué)習(xí)Verilog的入門好書?。。∫部梢宰鳛閷懗绦虻恼Z法手冊。。。

    很不錯??!
  •   這是一本教父式的啟蒙書,雖然是Verilog語言的,但內(nèi)容層次鮮明,由淺入深,越能引發(fā)讀者的思考和興趣,而且還時不時穿插一些簡單但經(jīng)典的例子來生動的說明,對于一些讓人容易產(chǎn)生思考的混亂的問題,作者能夠一針見血的點出要害,給你這樣的一本書,再多的贊美之詞也是白搭?。?!
  •   只要有C基礎(chǔ) 這本書是學(xué)習(xí)verilog的比較好的入門書
  •   Verilog 詳細(xì)的語法學(xué)習(xí)用書
  •   深入淺出的介紹了Verilog及其FPGA設(shè)計,收獲很大,夏老師的這本書堪稱經(jīng)典
  •   學(xué)習(xí)Verilog的必備書籍,后面還有語法總結(jié),很不錯!
  •   夏宇聞老師的這本書對Verilog進(jìn)行了詳細(xì)系統(tǒng)的介紹,理論與實踐相結(jié)合,可以很快入門的
  •   一本學(xué)習(xí)Verilog語言非常好的教材,建議新手入門者一定要購買,絕對物超所值
  •   很經(jīng)典的verilog語法書。
  •   國內(nèi)最經(jīng)典的Verilog語法書籍,作者夏宇聞老師是國內(nèi)較早研究Verilog得人。當(dāng)當(dāng)?shù)臅捕际钦娴?,質(zhì)量沒得說!
  •   Verilog的經(jīng)典大作,學(xué)習(xí)Verilog語言的必備書籍
  •   經(jīng)過一番考慮,還是決定用這本書作為公司的FPGA/Verilog培訓(xùn)用書.價錢,內(nèi)容,難易都較適中,適合初學(xué)者入門
  •   很好的入門書籍,學(xué)習(xí)verilog的必備書籍,買了不后悔
  •   一本非常不錯的verilog學(xué)習(xí)書籍,既能入門,又能提高
  •   學(xué)習(xí)Verilog,如果只能推薦一本,就是這本
    名副其實的從入門到進(jìn)階
  •   最經(jīng)典的verilog書,正在學(xué)習(xí)中!
  •   以前有學(xué)過Verilog語言,現(xiàn)在看著北航元老寫的這本書真的好像是如魚得水,真的,可能是我有點基礎(chǔ)所以覺得這本書好吧。但是作為初學(xué)者這本書也很適合,沒有哪一本書你不用功就能看得很懂的,沒有那本書是完美的,不求最好,只求更好嘛,謝謝
  •   很好的一本Verilog入門書,慢慢看,需要耐心…
  •   學(xué)習(xí)Verilog的好教程,推薦
  •   受益匪淺,詳細(xì)介紹了verilog語言的重要知識點,而且章節(jié)安排適宜,非常適合入門,收藏中
  •   夏宇聞教授寫的書真是好的沒法說,通俗易懂,學(xué)習(xí)Verilog必備書籍。
  •   Verilog的語法講得非常詳細(xì)
  •   書拿到手,第一感覺是蠻好的,內(nèi)容還沒有細(xì)看,不過很多人都推薦這本書,應(yīng)該能對verilog有個清晰的了解吧。
  •   很經(jīng)典的一本書,推薦學(xué)習(xí)VERILOG的人看!
  •   學(xué)習(xí)verilog的經(jīng)典教材 很好理解
  •   書不錯,基礎(chǔ)內(nèi)容講得很詳細(xì),并且還附帶有好多例程,非常適合verilog初學(xué)者。
  •   是一本學(xué)習(xí)verilog的好書,不過感覺怎么狀態(tài)機那塊寫的內(nèi)容有點少呢?!總的來說不錯啊,作者也挺牛的
  •   verilog經(jīng)典入門書。實用性強
  •   verilog 不錯的選擇,學(xué)習(xí)中。。。
  •   對學(xué)習(xí)Verilog很有用
  •   的確是一本不錯的verilog學(xué)習(xí)書籍,推薦.
  •   這是夏宇聞老師的經(jīng)典書籍,比以前的版本厚實了些,在國內(nèi)完全可以作為學(xué)習(xí)Verilog的教科書,非常推薦....
  •   還要詳加練習(xí)verilog
  •   這本書是中國的VERILOG之父 夏宇聞老師編寫的經(jīng)典教程,適合初學(xué)者。物流很快,送貨的阿姨很好。
  •   書很好,只是送來的時候封面破了一個小洞,但是很不錯,學(xué)Verilog就推薦這本書!
  •   這本書內(nèi)容比較豐富,也很容易上手,非常經(jīng)典的一本關(guān)于verilog的編程教材。
  •   老師推薦的書,也是學(xué)校的教材,因為要考verilog,干脆就買了一本。
  •   介紹verilog語言的好書
  •   verilog入門經(jīng)典書籍,推薦認(rèn)真閱讀!
  •   verilog的入門級書籍,值得擁有
  •   本人初學(xué)FPGA,對于verilog入門很有幫助
  •   學(xué)Verilog必備手冊!
  •   非常好,verilog講的淺顯易懂,便于自學(xué)。
  •   對于初學(xué)CPLD和Verilog的我來說,這本書講的內(nèi)容還是挺細(xì)的,非常不錯~~
  •   很經(jīng)典的verilog書,不過有些例子是錯的,。。。
  •   這樣一本很詳細(xì)的講verilog的書還是很值的。
  •   Verilog里講得非常不錯的一本書了,但是讓人比較遺憾的是,小的印刷錯誤太多了~~~
  •   這本書有一定難度,但作者是真的有水平,適合有毅力的人鉆研Verilog!
  •   絕好的Verilog教材,贊一個···
  •   講的很好,很透徹,是一本關(guān)于Verilog很好的教材~~
  •   介紹verilog的經(jīng)典教材,不用多數(shù),看看就知道。
  •   內(nèi)容豐富 verilog經(jīng)典書籍
  •   學(xué)Verilog的人大概都知道,就不多說了
  •   值得一讀的好書!初學(xué)Verilog比較方便!
  •   Verilog的必備書籍!
  •   Verilog方面寫的不錯,學(xué)Verilog的朋友可以看看……
  •   verilog很經(jīng)典的書籍
  •   不愧是verilog的大師,寫的非常好,挺適合初學(xué)者的。。。
  •   Verilog的經(jīng)典
  •   Verilog必讀!~
  •   作者在數(shù)字系統(tǒng)設(shè)計領(lǐng)域工作多年,總結(jié)出了這樣一本好書,中文原創(chuàng)的技術(shù)書太少了,而這正是其中之一,有自己的風(fēng)格,適合中國學(xué)生一步一步的跟著學(xué)習(xí),有很好的指導(dǎo)作用,對于驗證領(lǐng)域也有所涉及,總之,買的很值得。
  •   只要有硬件經(jīng)驗,和一點編程基礎(chǔ),理解起來會很快,并且可以很快的去編寫一些代碼在ModelSim作仿真實驗。書中從簡單的邏輯門直到RISC指令集的CPU設(shè)計方法都有講。而且也講的很通俗易懂。這本書,沒話說。
  •   絕對必讀的數(shù)字系統(tǒng)設(shè)計學(xué)習(xí)教程。
    滿分。
  •   這本書將知識娓娓道來,細(xì)致深入,很不錯的一本書,如果學(xué)過C語言和數(shù)字邏輯電路,還是可以很快接受的~~
  •   本書是夏宇聞教授在VerilogHDL數(shù)字系統(tǒng)設(shè)計的一部名作,另外還有《VerilogHDL_數(shù)字設(shè)計與綜合第二版》是國外作品,夏宇聞教授翻譯,也挺不錯
  •   書的內(nèi)容不錯 適合想學(xué)數(shù)字系統(tǒng)設(shè)計的童鞋用
  •   整本書比較好,是周立功推薦的,我立馬去買了一本,和這學(xué)期要上的數(shù)字電路一起學(xué)習(xí)。希望有所收獲!
  •   本書囊括了從簡單的語法到復(fù)雜的設(shè)計,很適合初學(xué)者
  •   學(xué)數(shù)字電路的必讀之書!
  •   我是學(xué)數(shù)字ic的,這本書是eda語言絕對的經(jīng)典參考書,前面是基礎(chǔ),后面是提高~
  •   這本書適合初學(xué)者慢慢的到一定水平的編程者。。
    書分幾個部分,后面的CPU的編程是在前面幾章的基礎(chǔ)上的。
    總之此書循序漸進(jìn)。好書!
  •   這一章關(guān)于組合邏輯電路和時序邏輯電路,還有競爭與冒險,以及如何消除,很透徹,也很容易明白。
  •   作為硬件描述語言的入門教材很不錯
  •   非常不錯的一本書,但是在講語法的時候略微簡單了一點,后面進(jìn)階的部分難度也很大。難度跳躍性太大,不推薦初學(xué)者自學(xué)。
  •   講的VHDL語言很好,系統(tǒng)設(shè)計很明了
  •   當(dāng)時學(xué)數(shù)字IC用的書,很好的資料
  •   非常不錯······ 很值得看·· 不僅從語法上給出詳細(xì)的介紹,而且從設(shè)計實例中給出詳細(xì)的講解
  •   書中對veriloghdl講解的很細(xì)致,提到有很多設(shè)計建議。
    學(xué)fpga必備的教材和參考書?。?!
  •   學(xué)習(xí)FPGA入門教程,語法寫得很詳細(xì),各種小例子上課都用得到,要深入學(xué)習(xí)也未嘗不可,只要熟讀一定有用
  •   正在做TCP/IP的硬件應(yīng)用,這本書對于基礎(chǔ)不好的我?guī)椭艽?/li>
  •   書不錯,適合學(xué)習(xí)語法
  •   很不錯的一本書,內(nèi)容很詳細(xì),對初學(xué)者是個不錯的選擇,可以系統(tǒng)的學(xué)習(xí)一下
  •   語言講解的還可以,但感覺結(jié)合硬件的地方不多
  •   硬件語言的經(jīng)典之作,老師推薦的
 

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

京ICP備13047387號-7