出版時(shí)間:2009-7 出版社:人民郵電出版社 作者:Peter Wilson 頁(yè)數(shù):230 字?jǐn)?shù):384000 譯者:杜生海
Tag標(biāo)簽:無(wú)
前言
本書(shū)①可以作為那些以現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)為硬件開(kāi)發(fā)平臺(tái)的工程師、學(xué)生和研究開(kāi)發(fā)人員的桌面常備參考書(shū)。這本書(shū)是仿照Numerical Recipe系列叢書(shū)的風(fēng)格編寫(xiě)的,這一系列書(shū)每本分別針對(duì)不同的編程語(yǔ)言,但目的不是教語(yǔ)言本身,而是教一些必要的方法與技巧,以使應(yīng)用程序能夠工作。本書(shū)的基本出發(fā)點(diǎn)與此類似,目的是提供一些方法和理解,以使讀者能夠開(kāi)發(fā)出實(shí)際可用的、能夠正確運(yùn)行于FPGA上的VHDL程序?! ⌒枰攸c(diǎn)強(qiáng)調(diào)的一點(diǎn)是,這本書(shū)并不是VHDL的語(yǔ)言參考手冊(cè)。其實(shí),這類手冊(cè)已經(jīng)出版了許多,我在書(shū)中推薦了一些。這本書(shū)有意寫(xiě)成一本VHDL4設(shè)計(jì)參考書(shū),可以看作是對(duì)傳統(tǒng)VHDL教材的一種補(bǔ)充。
內(nèi)容概要
本書(shū)是為FPGA工程師量身定制的設(shè)計(jì)參考指南,不僅介紹了FPGA基本概念,還介紹了設(shè)計(jì)邏輯和技巧,使讀者能夠開(kāi)發(fā)出實(shí)際高效的代碼?! ”緯?shū)適用于電子工程師閱讀,也可作為高等院校相關(guān)專業(yè)師生的參考指南。
作者簡(jiǎn)介
Peter Wilson博士,著名電子設(shè)計(jì)技術(shù)專家。IEEE1076.1.1標(biāo)準(zhǔn)(VHDLAMS的多能量域支持用組件)副主席,IEEE行為建模與仿真工作組技術(shù)項(xiàng)目組長(zhǎng)。現(xiàn)任教于英國(guó)南安普敦大學(xué),同時(shí)擔(dān)任美國(guó)阿肯色大學(xué)客座教授。其主要研究領(lǐng)域?yàn)榻Ec仿真,先后發(fā)表過(guò)百余篇頗有影響的技術(shù)論文。
書(shū)籍目錄
第一部分 概述 第1章 緒論 第2章 FPGA基礎(chǔ)知識(shí) 2.1 引言 2.2 FPGA的發(fā)展 2.3 可編程邏輯器件 2.4 現(xiàn)場(chǎng)可編程門(mén)陣列 2.5 FPGA設(shè)計(jì)技術(shù) 2.6 FPGA的設(shè)計(jì)約束 2.7 小結(jié) 第3章 VHDL基礎(chǔ) 3.1 引言 3.2 實(shí)體:模型接口 3.2.1 實(shí)體定義 3.2.2 端口 3.2.3 通用屬性語(yǔ)句 3.2.4 常數(shù) 3.2.5 實(shí)體舉例 3.3 構(gòu)造體:模型的行為 3.3.1 構(gòu)造體的基本定義 3.3.2 構(gòu)造體聲明 3.3.3 構(gòu)造體語(yǔ)句 3.4 進(jìn)程:VHDL中的基本功能單元 3.5 基本的變量類型和操作符 3.5.1 常數(shù) 3.5.2 信號(hào) 3.5.3 變量 3.5.4 布爾操作符 3.5.5 算術(shù)操作符 3.5.6 比較操作符 3.5.7 移位函數(shù) 3.5.8 拼接 3.6 判斷與循環(huán) 3.6.1 if-then-else語(yǔ)句 3.6.2 case語(yǔ)句 3.6.3 for語(yǔ)句 3.6.4 While循環(huán) 3.6.5 exit語(yǔ)句 3.6.6 next語(yǔ)句 3.7 層次化設(shè)計(jì) 3.7.1 函數(shù) 3.7.2 包 3.7.3 元件 3.7.4 過(guò)程 3.8 調(diào)試模型 3.9 基本數(shù)據(jù)類型 3.9.1 基本類型 3.9.2 數(shù)據(jù)類型:bit 3.9.3 數(shù)據(jù)類型:boolean 3.9.4 數(shù)據(jù)類型:integer 3.9.5 數(shù)據(jù)類型:字符型 3.9.6 數(shù)據(jù)類型:實(shí)數(shù) 3.9.7 數(shù)據(jù)類型:時(shí)間 3.10 小結(jié) 第4章 設(shè)計(jì)自動(dòng)化與FPGA測(cè)試 4.1 仿真 4.1.1 測(cè)試平臺(tái) 4.1.2 測(cè)試平臺(tái)的目標(biāo) 4.1.3 簡(jiǎn)單的測(cè)試平臺(tái):實(shí)例化元件 4.1.4 增加測(cè)試激勵(lì) 4.2 庫(kù) 4.2.1 引言 4.2.2 庫(kù)的使用 4.2.3 標(biāo)準(zhǔn)邏輯庫(kù) 4.2.4 std_logic類型定義 4.3 綜合 4.3.1 綜合設(shè)計(jì)流程 4.3.2 綜合相關(guān)事項(xiàng) 4.3.3 RTL設(shè)計(jì)流程 4.4 物理設(shè)計(jì)流程 4.5 布局布線 4.6 時(shí)序分析 4.7 設(shè)計(jì)缺陷 4.8 FPGA設(shè)計(jì)中的VHDL問(wèn)題 4.8.1 初始化 4.8.2 浮點(diǎn)數(shù)及其操作 4.9 小結(jié) 第二部分 應(yīng)用 第5章 圖像與高速處理 5.1 引言 5.2 攝像頭接口 5.2.1 硬件接口 5.2.2 數(shù)據(jù)率 5.2.3 拜爾模式 5.2.4 存儲(chǔ)器需求 5.3 開(kāi)始 5.4 確定接口 5.5 定義頂層設(shè)計(jì) 5.6 系統(tǒng)模塊定義與接口 5.6.1 系統(tǒng)分解 5.6.2 鼠標(biāo)和鍵盤(pán)接口 5.6.3 存儲(chǔ)器接口 5.6.4 顯示接口:VGA 5.7 攝像頭連接接口 5.8 PC接口 5.9 小結(jié) 第6章 嵌入式處理器 6.1 引言 6.2 一個(gè)簡(jiǎn)單的嵌入式處理器 6.2.1 嵌入式處理器架構(gòu) 6.2.2 基本指令 6.2.3 取指執(zhí)行周期 6.2.4 嵌入式處理器的寄存器分配 6.2.5 一個(gè)基本的指令集 6.2.6 結(jié)構(gòu)級(jí)還是行為級(jí) 6.2.7 機(jī)器碼指令集 6.2.8 微處理器的結(jié)構(gòu)單元 6.2.9 處理器函數(shù)包 6.2.10 程序計(jì)數(shù)器 6.2.11 指令寄存器 6.2.12 算術(shù)和邏輯單元 6.2.13 存儲(chǔ)器 6.2.14 微控制器 6.2.15 簡(jiǎn)單微處理器總結(jié) 6.3 FPGA中的軟核處理器 6.4 小結(jié) 第三部分 設(shè)計(jì)工具箱 第7章 串行通信 7.1 引言 7.2 曼徹斯特編解碼 7.3 不歸零編解碼 7.4 不歸零反轉(zhuǎn)編解碼 7.5 RS-232 7.5.1 引言 7.5.2 RS-232波特率產(chǎn)生器 7.5.3 RS-232接收器 7.6 通用串行總線 7.7 小結(jié) 第8章 數(shù)字濾波器 8.1 引言 8.2 S域到Z域的變換 8.3 用VHDL實(shí)現(xiàn)Z域的函數(shù) 8.3.1 引言 8.3.2 增益模塊 8.3.3 和與差 8.3.4 除法模型 8.3.5 單位延遲模型 8.4 基本低通濾波器模型 8.5 FIR濾波器 8.6 IIR濾波器 8.7 小結(jié) 第9章 安全系統(tǒng) 9.1 塊加密簡(jiǎn)介 9.2 費(fèi)斯特爾格子的結(jié)構(gòu) 9.3 數(shù)據(jù)加密標(biāo)準(zhǔn) 9.3.1 引言 9.3.2 DES的VHDL實(shí)現(xiàn) 9.3.3 DES的驗(yàn)證 9.4 高級(jí)加密標(biāo)準(zhǔn) 9.5 小結(jié) 第10章 存儲(chǔ)器 10.1 引言 10.2 用VHDL對(duì)存儲(chǔ)器進(jìn)行建模 10.3 只讀存儲(chǔ)器 10.4 隨機(jī)存取存儲(chǔ)器 10.5 SRAM 10.6 Flash存儲(chǔ)器 10.7 小結(jié) 第11章PS/2鼠標(biāo)接口 11.1 引言 11.2 PS/2鼠標(biāo)基礎(chǔ) 11.3 PS/2鼠標(biāo)命令 11.4 PS/2鼠標(biāo)數(shù)據(jù)包 11.5 PS/2操作模式 11.6 PS/2滾輪鼠標(biāo) 11.7 基本PS/2鼠標(biāo)處理模塊VHDL代碼 11.8 修改后的PS/2鼠標(biāo)處理模塊VHDL代碼 11.9 小結(jié) 第12章 PS/2鍵盤(pán)接口 12.1 引言 12.2 PS/2鍵盤(pán)基礎(chǔ) 12.3 PS/2鍵盤(pán)命令 12.4 PS/2鍵盤(pán)數(shù)據(jù)包 12.5 PS/2鍵盤(pán)操作模式 12.5.1 基本PS/2鍵盤(pán)處理模塊VHDL代碼 12.5.2 修改后的PS/2鍵盤(pán)處理模塊VHDL代碼 12.6 小結(jié) 第13章 一個(gè)簡(jiǎn)單的VGA接口 13.1 引言 13.2 基本像素時(shí)序 13.3 圖像處理 13.4 VGA接口的VHDL實(shí)現(xiàn) 13.5 水平同步 13.6 垂直同步 13.7 水平和垂直消隱脈沖 13.8 計(jì)算正確的像素?cái)?shù)據(jù) 13.9 小結(jié) 第四部分 優(yōu)化設(shè)計(jì) 第14章 綜合 14.1 引言 14.2 RTL綜合支持的VHDL 14.2.1 初始條件 14.2.2 并發(fā)邊沿 14.2.3 數(shù)字類型 14.2.4 wait語(yǔ)句 14.2.5 斷言 14.2.6 循環(huán) 14.3 一些引起綜合失敗的情況 14.4 綜合的內(nèi)容 14.4.1 總體設(shè)計(jì)結(jié)構(gòu) 14.4.2 控制器 14.4.3 數(shù)據(jù)路徑 14.5 小結(jié) 第15章 VHDL行為建模 15.1 引言 15.2 怎樣從RTL轉(zhuǎn)向行為級(jí) 15.3 小結(jié) 第16章 設(shè)計(jì)優(yōu)化 16.1 引言 16.2 邏輯優(yōu)化技術(shù) 16.3 改善性能 16.4 關(guān)鍵路徑分析 16.5 小結(jié) 第17章 VHDL-AMS 17.1 引言 17.2 VHDL-AMS簡(jiǎn)介 17.3 模擬引腳:TERMINAL 17.4 混合域建模 17.5 模擬變量:quantity 17.6 VHDL-AMS中的聯(lián)立方程 17.7 一個(gè)VHDL-AMS的例子 17.7.1 直流電壓源 17.7.2 電阻 17.8 VHDL-AMS中的微分方程 17.9 用VHDL-AMS進(jìn)行混合信號(hào)建模.154 17.10 一個(gè)基本的開(kāi)關(guān)模型 17.11 基本VHDL-AMS比較器模型 17.12 多領(lǐng)域建模 17.13 小結(jié) 第18章 設(shè)計(jì)優(yōu)化舉例:DES 18.1 引言 18.2 數(shù)據(jù)加密標(biāo)準(zhǔn) 18.3 MOODS 18.4 初始設(shè)計(jì) 18.4.1 簡(jiǎn)介 18.4.2 總體結(jié)構(gòu) 18.4.3 數(shù)據(jù)轉(zhuǎn)換 18.4.4 密鑰轉(zhuǎn)換 18.5 初始綜合 18.6 優(yōu)化數(shù)據(jù)路徑 18.7 最終綜合 18.8 結(jié)果 18.9 三重DES 18.9.1 引言 18.9.2 面積最?。旱鷮?shí)現(xiàn) 18.9.3 延遲最?。毫魉€方式 18.10 方案比較 18.11 小結(jié) 第五部分 基本技術(shù) 第19章 計(jì)數(shù)器 19.1 引言 19.2 基本二進(jìn)制計(jì)數(shù)器 19.3 綜合簡(jiǎn)單的二進(jìn)制計(jì)數(shù)器 19.4 移位寄存器 19.5 約翰遜計(jì)數(shù)器 19.6 BCD計(jì)數(shù)器 19.7 小結(jié) 第20章 鎖存器、觸發(fā)器和寄存器 20.1 引言 20.2 鎖存器 20.3 觸發(fā)器 20.4 寄存器 20.5 小結(jié) 第21章 串并轉(zhuǎn)換與并串轉(zhuǎn)換 21.1 串并轉(zhuǎn)換 21.2 并串轉(zhuǎn)換 21.3 小結(jié) 第22章 ALU功能 22.1 引言 22.2 邏輯功能 22.3 位加法器 22.4 n位結(jié)構(gòu)化加法器 22.5 n位可配置加法器 22.6 的補(bǔ)碼 22.7 小結(jié) 第23章 譯碼器與多路復(fù)用器 23.1 譯碼器 23.2 多路復(fù)用器 23.3 小結(jié) 第24章 VHDL中的有限狀態(tài)機(jī) 24.1 引言 24.2 狀態(tài)轉(zhuǎn)移圖 24.3 用VHDL實(shí)現(xiàn)有限狀態(tài)機(jī) 24.4 小結(jié) 第25章 VHDL中的定點(diǎn)算法 25.1 引言 25.2 基本定點(diǎn)類型 25.3 定點(diǎn)函數(shù) 25.3.1 定點(diǎn)數(shù)向std_logic_vector的轉(zhuǎn)換 25.3.2 定點(diǎn)數(shù)向?qū)崝?shù)的轉(zhuǎn)換 25.4 測(cè)試定點(diǎn)數(shù)函數(shù) 25.5 小結(jié) 第26章 二進(jìn)制乘法 26.1 引言 26.2 基本二進(jìn)制乘法 26.3 VHDL無(wú)符號(hào)乘法器 26.4 乘法函數(shù)的綜合 26.5 “簡(jiǎn)單的”乘法 26.6 小結(jié) 第27章 參考書(shū)目 27.1 引言 27.2 VHDL參考書(shū) 27.3 FPGA參考書(shū) 27.4 普通數(shù)字設(shè)計(jì)參考書(shū) 索引
章節(jié)摘錄
設(shè)計(jì)人員在進(jìn)行定制化電子設(shè)計(jì)時(shí),對(duì)于硬件平臺(tái)其實(shí)有很多種選擇,例如嵌入式處理器、專用集成電路(ASIC)、可編程微處理器(PIC)、現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA)以及可編程邏輯器件(PLD)。最終選擇哪種技術(shù)應(yīng)該主要取決于設(shè)計(jì)需求,而不是個(gè)人對(duì)于某種技術(shù)的偏好。 例如,如果某個(gè)設(shè)計(jì)需要一種可編程器件,以便于設(shè)計(jì)的多次變更,同時(shí)算法中又包含了一些乘法和循環(huán)這樣的復(fù)雜操作,那么選擇某種專門(mén)的信號(hào)處理設(shè)備(女IIDSP)就更有意義,因?yàn)榭梢院苋菀椎赜胏或者其他高級(jí)語(yǔ)言進(jìn)行編程。如果速度要求不是特別嚴(yán)格,而且需要一個(gè)小而便宜的硬件平臺(tái),那么通用微處理器(如PIC)將是理想的選擇。最后,如果要求硬件具有較高的性能,例如工作在數(shù)百兆赫茲,那么FPGA將是恰當(dāng)?shù)倪x擇,因?yàn)镕PGA不但有較高的性能,同時(shí)又具備可編程邏輯的靈活性和可重用性。 另外一個(gè)要考慮的因素是硬件設(shè)計(jì)中的優(yōu)化等級(jí)。例如,用C語(yǔ)言編寫(xiě)一個(gè)簡(jiǎn)單的程序,然后對(duì)PIc進(jìn)行編程,其性能可能很有限,因?yàn)樘幚砥鳠o(wú)法對(duì)關(guān)鍵函數(shù)進(jìn)行并行操作。而這在FPGA中卻可以用并行化和流水線方式很容易地實(shí)現(xiàn),其處理能力要比PIC高得多?! ∵x擇硬件平臺(tái)的一般原則是:先確定設(shè)計(jì)需求和硬件選項(xiàng),然后在考慮這些的基礎(chǔ)之上選擇一個(gè)合適的平臺(tái)?! ±?,如果設(shè)計(jì)需要一個(gè)能達(dá)到100MHz的時(shí)鐘,那么FPGA是不錯(cuò)的選擇。如果時(shí)鐘速率僅有3~4MHz,選擇FPGA顯然會(huì)使成本過(guò)高?! ∪绻O(shè)計(jì)中需要一個(gè)靈活的處理器,盡管今天的.FPGA已經(jīng)支持嵌入式處理器,但是用DSP或者PIC卻顯得更可取。如果設(shè)計(jì)中需要專門(mén)的硬件功能,很明顯FPGA是一個(gè)合適的選擇。 如果設(shè)計(jì)中需要如乘法和加法等特殊的硬件功能,那么DSP可能是最好的選擇,但是如果進(jìn)行定制化硬件設(shè)計(jì),F(xiàn)PGA更加適合?! ∪绻O(shè)計(jì)需要一些簡(jiǎn)單而且非常小的硬件模塊,PLD或者CPLD(復(fù)雜可編程邏輯器件)可能是最好的(簡(jiǎn)單而小巧的可編程邏輯)。不過(guò)如果設(shè)計(jì)中有乘法操作,或者有復(fù)雜的控制器和特殊的硬件功能,F(xiàn)PGA則是最合適的?! ∽龀鲞@種決定還與相關(guān)硬件的復(fù)雜度有關(guān)。例如,VGA控制器或許需要一個(gè)FPGA而不是PLD器件,主要是由于硬件的復(fù)雜度。另一個(gè)有關(guān)的因素是靈活性和可編程性。如果使用了FPGA,并且其中的資源沒(méi)有被用完(如使用了60%),那么若通信協(xié)議改變了,或者更新了,F(xiàn)PGA在將來(lái)還有足夠的空間支持多次的變更或升級(jí)?! ⊥ㄟ^(guò)這些簡(jiǎn)單的指導(dǎo),就可以對(duì)最好的平臺(tái)做出明智的選擇,而且基于這些假設(shè)可以選擇好具體的器件。大多數(shù)綜合軟件包都有一個(gè)好處,那就是讓用戶在最終選定硬件前可以測(cè)試多種設(shè)計(jì)平臺(tái)的性能和利用率(如PLD和FPGA等)。
編輯推薦
對(duì)于電路設(shè)計(jì)工程師和高校電氣工程專業(yè)的師生來(lái)說(shuō),閱讀《FPGA設(shè)計(jì)實(shí)戰(zhàn)》是快速入門(mén)并成為設(shè)計(jì)高手的一條捷徑。 FPGA技術(shù)成本低、使用靈活,已經(jīng)成為應(yīng)用廣泛的電路設(shè)計(jì)解決方案,應(yīng)用范圍遍及消費(fèi)電子、汽車電子、通信和工業(yè)控制等領(lǐng)域。 《FPGA設(shè)計(jì)實(shí)戰(zhàn)》是一部實(shí)例豐富的實(shí)戰(zhàn)寶典,涵蓋了電路設(shè)計(jì)的完整流程,從FPGA基礎(chǔ)知識(shí)入手,不但介紹了“FPGA做什么”,更詳細(xì)解讀了“用FPGA怎么做”。作者首先簡(jiǎn)潔而全面地概述了FPGA9口標(biāo)準(zhǔn)設(shè)計(jì)流程的基礎(chǔ)知識(shí),然后詳細(xì)闡述了兩個(gè)典型的綜合實(shí)例——高速視頻監(jiān)視系統(tǒng)和嵌入式處理器,并且給出了具體的代碼框架,為設(shè)計(jì)者點(diǎn)明實(shí)際應(yīng)用中的關(guān)鍵點(diǎn)和設(shè)計(jì)精髓。接下來(lái),《FPGA設(shè)計(jì)實(shí)戰(zhàn)》針對(duì)電路設(shè)計(jì)中幾個(gè)最常見(jiàn)的關(guān)鍵任務(wù),如串行通信、數(shù)字濾波器、安全系統(tǒng)、存儲(chǔ)器建模等,給出了可以直接應(yīng)用于實(shí)際項(xiàng)目的代碼示例。書(shū)的最后介紹了綜合和行為建模等設(shè)計(jì)后期的優(yōu)化。
圖書(shū)封面
圖書(shū)標(biāo)簽Tags
無(wú)
評(píng)論、評(píng)分、閱讀與下載
FPGA設(shè)計(jì)實(shí)戰(zhàn) PDF格式下載
250萬(wàn)本中文圖書(shū)簡(jiǎn)介、評(píng)論、評(píng)分,PDF格式免費(fèi)下載。 第一圖書(shū)網(wǎng) 手機(jī)版