前言LogicandComputerDesignFundamentals本書的目的是為廣大讀者提供學(xué)習(xí)邏輯設(shè)計、數(shù)字系統(tǒng)設(shè)計和計算機設(shè)計的基礎(chǔ)知識。本書第5版突出了課程內(nèi)容方面的最新發(fā)展。從1997年的第1版開始,作者就不斷對其進(jìn)行修改,提供一種獨一無二的將邏輯設(shè)計與計算機設(shè)計原理結(jié)合在一起的方法,并特別強調(diào)硬件。過去幾年,教材一直緊跟行業(yè)的發(fā)展趨勢,新增加了一些內(nèi)容(如硬件描述語言),刪除或者弱化了某些不太重要的內(nèi)容,修改了某些內(nèi)容以反映計算機技術(shù)和計算機輔助設(shè)計所發(fā)生的變化。
新版的變化第5版反映了相關(guān)技術(shù)與設(shè)計實踐方面的一些變化,與過去相比,要求計算機系統(tǒng)設(shè)計者在一個更高的層次上進(jìn)行設(shè)計抽象并管理更大范圍的復(fù)雜性問題。在不同抽象層次進(jìn)行邏輯、數(shù)字系統(tǒng)和計算機設(shè)計所涉及的內(nèi)容已經(jīng)不能同日而語,本書新版的目的就是要在計算機系統(tǒng)設(shè)計特別是在邏輯層次上更為有效地彌補現(xiàn)在的教學(xué)狀況與工業(yè)實現(xiàn)之間的鴻溝。同時,新版仍然保持著過去的章節(jié)組織,方便教師針對電氣與計算機工程和計算機科學(xué)專業(yè)的學(xué)生根據(jù)需要選講部分內(nèi)容。新版的變化包括:
第1章的更新包括對計算機系統(tǒng)抽象層次的討論,以及它們的作用,還簡要介紹了數(shù)字設(shè)計的過程。為加強國際化,第1章還有一些關(guān)于字符編碼的新內(nèi)容。
本書在第2章就開始介紹硬件描述語言(HDL),比以前的版本更早。對于涉及組合和時序邏輯設(shè)計的章節(jié),都會給出電路的HDL描述以及邏輯框圖與狀態(tài)圖,從而表明在當(dāng)代數(shù)字系統(tǒng)設(shè)計實踐中HDL變得日益重要。關(guān)于傳播延遲(數(shù)字系統(tǒng)基本的一階設(shè)計約束)的內(nèi)容已經(jīng)移到了第2章。
第3章結(jié)合原來第3章中有關(guān)功能模塊的內(nèi)容和原來第4章中有關(guān)算術(shù)電路模塊的內(nèi)容,展現(xiàn)一組常見的組合邏輯功能模塊,這些功能模塊的HDL模型在本章隨處可見。第3章介紹分層設(shè)計的概念。
時序電路出現(xiàn)在第4章。這一章包括原來第5章中對設(shè)計過程的描述和原來第6章中的時序電路定時、輸入同步和亞穩(wěn)態(tài)的相關(guān)知識。有關(guān)JK觸發(fā)器和T觸發(fā)器的描述放到了教材的配套網(wǎng)站上。
第5章討論一些與數(shù)字硬件實現(xiàn)相關(guān)的話題,包括互補金屬氧化物(CMOS)門和可編程邏輯的設(shè)計。除包含原來第6章中的大部分內(nèi)容外,現(xiàn)在的第5章還簡要地介紹了測試與驗證對設(shè)計成本的影響。由于使用本教材的很多課程都用現(xiàn)場可編程門陣列(FPGA)來進(jìn)行實驗練習(xí),所以我們對FPGA的敘述進(jìn)行了擴充,通過一個簡單的、基本的FPGA結(jié)構(gòu)來講解許多商用FPGA系列中都會出現(xiàn)的基本可編程元器件。
剩下的章節(jié)(包括計算機設(shè)計在內(nèi))已經(jīng)進(jìn)行了更新,以便反映從上一個版本以來出現(xiàn)的最新變化。重要的更新包括將高阻緩沖器從原來的第2章移動到6.8節(jié)中,以及在第9章增加了如何在高級語言中用過程調(diào)用和返回來實現(xiàn)函數(shù)調(diào)用的相關(guān)討論。
除了提供完整的數(shù)字和計算機設(shè)計內(nèi)容之外,第5版還特別強調(diào)現(xiàn)代設(shè)計的基本原理。從簡單的組合邏輯應(yīng)用到在RISC核上構(gòu)建CISC結(jié)構(gòu),多個例子的清晰解釋和漸進(jìn)式的設(shè)計過程可以詮釋書中內(nèi)容。完整的傳統(tǒng)內(nèi)容包括計算機輔助設(shè)計、問題形式化、解決方案驗證,以及綜合能力培養(yǎng),而靈活性則體現(xiàn)在可選的邏輯設(shè)計、數(shù)字系統(tǒng)設(shè)計和計算機設(shè)計,以及硬件描述語言的相關(guān)內(nèi)容中(不選、選用VHDL或選用Verilog)。
經(jīng)過這次修訂,本書第1~4章講解邏輯設(shè)計,第5~7章討論數(shù)字系統(tǒng)設(shè)計,第8~12章重點介紹計算機設(shè)計。這樣的安排可以逐漸地、自底向上地完成各種函數(shù)設(shè)計,并將其應(yīng)用到后續(xù)章節(jié)自頂向下的計算機設(shè)計中,為讀者提供牢固的數(shù)字系統(tǒng)設(shè)計基礎(chǔ)。下面是各章相關(guān)內(nèi)容的概括。
邏輯設(shè)計第1章介紹數(shù)字計算機、計算機系統(tǒng)抽象層次、嵌入式系統(tǒng),以及包括數(shù)制、算術(shù)運算和編碼在內(nèi)的信息表示。
第2章研究門電路和它們的類型,以及設(shè)計和成本優(yōu)化的基本方法。概念包括布爾代數(shù)、代數(shù)優(yōu)化和卡諾圖優(yōu)化、傳播延遲,以及在VHDL和Verilog中使用結(jié)構(gòu)和數(shù)據(jù)流模型表示的門級硬件描述語言模型。
第3章從一個現(xiàn)代邏輯設(shè)計過程的概述開始,設(shè)計過程的詳細(xì)步驟包括問題形式化、邏輯優(yōu)化、用與非門和或非門進(jìn)行工藝映射,組合邏輯設(shè)計的實例中還包括驗證。另外,這一章還包括函數(shù)和構(gòu)建組合設(shè)計模塊,包括使能和輸入定值、譯碼、編碼、代碼轉(zhuǎn)換、選擇、分配、加法、減法、遞增、遞減、填充、擴展和移位以及它們的實現(xiàn)。本章還包括許多邏輯模塊的VHDL和Verilog模型。
第4章包括時序電路分析和設(shè)計。討論了鎖存器和邊沿觸發(fā)式觸發(fā)器,并著重講解了D觸發(fā)器。本章的重點是狀態(tài)機圖和狀態(tài)表的形式化表示。時序電路完整的設(shè)計過程包括規(guī)格說明、形式化、狀態(tài)分配、觸發(fā)器輸入和輸出方程確定、優(yōu)化、工藝映射以及驗證。時序電路通常都太復(fù)雜,不能用傳統(tǒng)的狀態(tài)圖來表示,但可以用狀態(tài)機圖模型來表示,這一章通過現(xiàn)實世界的兩個例子來闡述和說明這一觀點。這一章包括用VHDL和Verilog來描述觸發(fā)器和時序電路,介紹了VHDL和Verilog程序行為的語言結(jié)構(gòu)以及用于驗證的測試程序。本章最后介紹了時序電路的
譯者序LogicandComputerDesignFundamentals如今我們生活在信息時代。試想,如果沒有了網(wǎng)絡(luò)、計算機、手機和電視,世界會變得怎樣?答案一定是世界將變得暗淡無光,甚至是悲慘的!數(shù)字電路與計算機技術(shù)作為其他技術(shù)的重要基礎(chǔ)之一,成就了當(dāng)今人們高效有序、豐富多彩的工作與生活。從發(fā)明晶體管和集成電路到現(xiàn)在,數(shù)字電路和數(shù)字系統(tǒng)設(shè)計技術(shù)已經(jīng)紅紅火火地走過了半個世紀(jì),計算機技術(shù)更是在最近三十多年跳躍式地發(fā)展。人們對未來充滿著更多美好的期望,數(shù)字電路與計算機必將承載著這一切向更廣范圍、更高水準(zhǔn)延伸與發(fā)展。
從1997年至今,本書英文版已經(jīng)發(fā)行了5個版本,均受到了讀者的廣泛好評。除了為讀者提供學(xué)習(xí)邏輯設(shè)計、數(shù)字系統(tǒng)設(shè)計和計算機設(shè)計的基礎(chǔ)知識之外,第5版還包含相關(guān)研究領(lǐng)域和行業(yè)的最新發(fā)展情況。與過去相比,現(xiàn)代工業(yè)實踐要求計算機系統(tǒng)設(shè)計者在一個更高的層次上進(jìn)行設(shè)計抽象并管理更大范圍的復(fù)雜性問題。在不同抽象層次進(jìn)行邏輯、數(shù)字系統(tǒng)和計算機設(shè)計所涉及的內(nèi)容已經(jīng)不能同日而語,本書新版更為有效地彌補了計算機系統(tǒng)設(shè)計(特別是在邏輯層次上)的教學(xué)狀況與工業(yè)實現(xiàn)之間的鴻溝。
本書以通用計算機為線索,由淺入深地講解了邏輯設(shè)計、數(shù)字系統(tǒng)設(shè)計和計算機設(shè)計。其中,第1~4章為邏輯設(shè)計,包括數(shù)字系統(tǒng)與信息、硬件描述語言和組合邏輯電路、組合邏輯設(shè)計、時序電路;第5~7章為數(shù)字系統(tǒng)設(shè)計,包括數(shù)字硬件實現(xiàn)技術(shù)、寄存器與寄存器傳輸以及存儲器基礎(chǔ),在第5章還增加了測試與驗證對設(shè)計成本的影響;第8~12章為計算機設(shè)計,包括計算機設(shè)計基礎(chǔ)、指令集結(jié)構(gòu)、RISC與CISC中央處理器、輸入/輸出與通道以及存儲系統(tǒng),所有內(nèi)容都進(jìn)行了更新,以反映最新的變化。書中附有60多個主要來自現(xiàn)代日常生活的產(chǎn)品設(shè)計的真實例子和問題,可以激發(fā)讀者的學(xué)習(xí)興趣。配套網(wǎng)站(www.pearsonhighered.com/mano)提供了大量的輔助信息,包括教師手冊、補充讀物、所有例子的VHDL和Verilog源文件、有關(guān)工具及網(wǎng)站的鏈接和習(xí)題解答等。從其編排可以清楚地看出,本書不僅可以作為計算機科學(xué)、計算機工程、電子技術(shù)、機電一體化等專業(yè)學(xué)生學(xué)習(xí)硬件的一本教材,也可以作為弱電類工程師和計算機科學(xué)工作者的理想?yún)⒖紩?
本書第1、2、4、5章由鄺繼順翻譯,第6、7、11、12章由尤志強翻譯,第8、9、10章由凌純清翻譯,蔡曉敏翻譯了第3章,張明和與潘波參與了翻譯工作,鄺繼順對全部譯文進(jìn)行了審校與潤色。感謝袁曉坊、何海珍、王偉征、周穎波、張玲、袁文澹、劉鐵橋在第4版的翻譯中做的工作。由于譯者水平有限,譯文中疏漏和錯誤在所難免,歡迎廣大讀者批評指正。
譯者