|
發(fā)現(xiàn)一本很好的FPGA開發(fā)全攻略電子書分享給大家學(xué)習(xí),下面是封面:
目錄
前言 2
第一章、為什么工程師要掌握FPGA開發(fā)知識(shí)? 5
第二章、FPGA基本知識(shí)與發(fā)展趨勢(shì) 7
2.1 FPGA結(jié)構(gòu)和工作原理 7
2.1.1 夢(mèng)想成就偉業(yè) 7
2.1.2 FPGA結(jié)構(gòu) 8
2.1.3 軟核、硬核以及固核的概念 15
2.1.4 從可編程器件發(fā)展看FPGA未來趨勢(shì) 15
第三章、FPGA主要供應(yīng)商與產(chǎn)品 17
3.1.1 賽靈思主要產(chǎn)品介紹 17
第四章、FPGA開發(fā)基本流程 29
4.1 典型FPGA開發(fā)流程與注意事項(xiàng) 29
4.2 基于FPGA的SOC設(shè)計(jì)方法 32
基于FPGA的典型SOC開發(fā)流程為 32
第五章、FPGA實(shí)戰(zhàn)開發(fā)技巧 33
5.1 FPGA器件選型常識(shí) 33
5.1.1器件的供貨渠道和開發(fā)工具的支持 33
5.1.2 器件的硬件資源 33
5.1.3 電氣接口標(biāo)準(zhǔn) 34
5.1.4 器件的速度等級(jí) 35
5.1.5 器件的溫度等級(jí) 35
5.1.6 器件的封裝 35
5.1.7 器件的價(jià)格 35
5.2 如何進(jìn)行FPGA設(shè)計(jì)早期系統(tǒng)規(guī)劃 36
5.3.綜合和仿真技巧 37
5.3.1 綜合工具XST的使用 37
5.3.2 基于ISE的仿真 42
5.3.3 和FPGA接口相關(guān)的設(shè)置以及時(shí)序分析 45
5.3.4 綜合高手揭秘XST的11個(gè)技巧 51
5.4 大規(guī)模設(shè)計(jì)帶來的綜合和布線問題 52
5.5 FPGA相關(guān)電路設(shè)計(jì)知識(shí) 54FPGA開發(fā)全攻略—工程師創(chuàng)新設(shè)計(jì)寶典 上冊(cè) 基礎(chǔ)篇
5.5.1 配置電路 54
5.5.2 主串模式——最常用的FPGA配置模式 56
5.5.3 SPI串行Flash配置模式 58
5.5.4 從串配置模式 62
5.5.5 JTAG配置模式 63
5.5.6 System ACE配置方案 64
5.6 大規(guī)模設(shè)計(jì)的調(diào)試經(jīng)驗(yàn) 68
5.6.1 ChipScope Pro組件應(yīng)用實(shí)例 68
5.7 FPGA設(shè)計(jì)的IP和算法應(yīng)用 74
5.7.1 IP核綜述 74
5.7.2 FFT IP核應(yīng)用示例 75
5.8 賽靈思 FPGA的專用HDL開發(fā)技巧 79
5.8.1 賽靈思 FPGA的體系結(jié)構(gòu)特點(diǎn) 79
5.8.2 賽靈思 FPGA 芯片專用代碼風(fēng)格 79
ISE與EDK開發(fā)技巧之時(shí)序篇 83
5.10 新一代開發(fā)工具ISE Design Suit10.1介紹 85
5.10.1 ISE Design Suit10.1綜述 85
5.10.2 ISE Design Suit 10.1的創(chuàng)新特性 85
5.11 ISE與第三方軟件的配合使用技巧 92
5.11.1 Synplify Pro軟件的使用 92
5.11.2 ModelSim軟件的使用 99
5.11.3 Synplify Pro、ModelSim和ISE的聯(lián)合開發(fā)流程 104
5.11.4 ISE與MATLAB的聯(lián)合使用 105
5.12 征服FPGA低功耗設(shè)計(jì)的三個(gè)挑戰(zhàn) 108
5.13 高手之路——FPGA設(shè)計(jì)開發(fā)中的進(jìn)階路線 111
附錄一、FPGA開發(fā)資源總匯 112
附錄二、編委信息與后記 113
附錄三、版權(quán)聲明 114
第一章、為什么工程師要掌握FPGA開發(fā)知識(shí)?
作者:張國(guó)斌、田耘
2008 年年初,某著名嵌入式系統(tǒng) IT 公司為了幫助其產(chǎn)品售后工程師和在線技術(shù)支持工程師更好的理解其 產(chǎn)品,舉行了 ASIC/FPGA 基礎(chǔ)專場(chǎng)培訓(xùn).由于后者因?yàn)楸C苤贫榷荒芙佑|到板級(jí)電路圖和 LAYOUT,同時(shí) 因 ASIC/FPGA 都是典型的 SoC 應(yīng)用,通常只是將 ASIC/FPGA 當(dāng)作黑盒來理解,其猜測(cè)性讀圖造成公司與外部 及公司內(nèi)部大量的無效溝通.培訓(xùn)結(jié)束后 , 參與者紛紛表示 ASIC/FPGA 的白盒式剖析極大提高了對(duì)產(chǎn)品的理解, 有效解決了合作伙伴和客戶端理解偏異性問題,參加培訓(xùn)的工程師小 L 表示 :“FPGA 同時(shí)擁有強(qiáng)大的處理功能 和完全的設(shè)計(jì)自由度,以致于它的行業(yè)對(duì)手 ASIC 的設(shè)計(jì)者在做 wafer fabrication 之前 , 也大量使用 FPGA 來做 整個(gè)系統(tǒng)的板級(jí)仿真,學(xué)習(xí) FPGA 開發(fā)知識(shí)不但提升了我們的服務(wù)質(zhì)量從個(gè)人角度講也提升了自己的價(jià)值。”
實(shí)際上,小 L 只是中國(guó)數(shù)十萬 FPGA 開發(fā)工程師中一個(gè)縮影,目前,隨著 FPGA 從可編程邏輯芯片升級(jí)為 可編程系統(tǒng)級(jí)芯片,其在電路中的角色已經(jīng)從最初的邏輯膠合延伸到數(shù)字信號(hào)處理、接口、高密度運(yùn)算等更廣 闊的范圍,應(yīng)用領(lǐng)域也從通信延伸到消費(fèi)電子、汽車電子、工業(yè)控制、醫(yī)療電子等更多領(lǐng)域,現(xiàn)在,大批其他 領(lǐng)域的工程師也像小 L 一樣加入到 FPGA 學(xué)習(xí)應(yīng)用大軍中。未來,隨著 FPGA 把更多的硬核如 PowerPC™ 處 理器等集成進(jìn)來,以及采用新的工藝將存儲(chǔ)單元集成,F(xiàn)PGA 越來越成為一種融合處理、存儲(chǔ)、接口于一體的 超級(jí)芯片,“FPGA 會(huì)成為一種板級(jí)芯片,未來的電子產(chǎn)品可以通過配置 FPGA 來實(shí)現(xiàn)功能的升級(jí),實(shí)際上,某 些通信設(shè)備廠商已經(jīng)在嘗試這樣做了。”賽靈思公司全球資深副總裁湯立人這樣指出。可以想象,未來,F(xiàn)PGA 開發(fā)能力對(duì)工程師而言將成為類似 C 語言的基礎(chǔ)能力之一,面對(duì)這樣的發(fā)展趨勢(shì),你還能簡(jiǎn)單地將 FPGA 當(dāng)成 一種邏輯器件嗎?還能對(duì) FPGA 的發(fā)展無動(dòng)于衷嗎?
電子產(chǎn)品設(shè)計(jì)趨勢(shì)的變化
自電子產(chǎn)品誕生之日起,電子產(chǎn)品開發(fā)流程和方法就隨著電子元器件的不斷演進(jìn)而變化,從最早的電子管 器件到晶體管再到集成電路,工程師在設(shè)計(jì)產(chǎn)品時(shí),所采用的工具和方法都有所不同,但是總的來說貫穿電子 設(shè)計(jì)的統(tǒng)一思路是 :使用印刷電路板上的分立、現(xiàn)成元件、連接器或 IC 創(chuàng)建物理平臺(tái)實(shí)現(xiàn)所需要的功能。例如, 在 60 年代,如果要設(shè)計(jì)一個(gè)收音機(jī),工程師必須通過在 PCB 板上通過晶體管、電阻、電容、電感、電線、濾 波器、二極管等電路搭建出一個(gè)物理平臺(tái),實(shí)現(xiàn)對(duì) RF 信號(hào)的調(diào)諧、濾波、放大等,最后實(shí)現(xiàn)收音機(jī)的功能。集 成電路出現(xiàn)以后,一些分立器件被集成到一顆芯片上,但是總的設(shè)計(jì)思路沒有變化,還是要在一個(gè) PCB 板上通 過無源器件和 IC 搭建出一個(gè)物理平臺(tái),實(shí)現(xiàn)信號(hào)的接收、處理和輸出。但是,隨著 FPGA 等可編程器件的誕生, 設(shè)計(jì)思路正發(fā)生著微妙的變化——隨著更多功能從分立器件移到可編程領(lǐng)域,各種不同的設(shè)計(jì)流程交匯到了一 起。現(xiàn)在,有效的電子設(shè)計(jì)是將板卡設(shè)計(jì)、可編程邏輯設(shè)計(jì)和軟件開發(fā)融合在一起,未來,隨著 FPGA 融合處 理、存儲(chǔ)于一體,板卡設(shè)計(jì)將融合進(jìn)可編程邏輯設(shè)計(jì)中,電子產(chǎn)品設(shè)計(jì)將演變?yōu)榭删幊踢壿嬙O(shè)計(jì)和嵌入式軟件 設(shè)計(jì),那時(shí),電子設(shè)計(jì)將更體現(xiàn)一種“軟”設(shè)計(jì),一種通過開發(fā)語言和工具實(shí)現(xiàn)的設(shè)計(jì),而 FPGA 將成為這種
“軟”設(shè)計(jì)的載體,以 FPGA 形式存在的低成本、大規(guī)模可編程器件可以隨時(shí)隨地獲得,這使設(shè)計(jì)者有可能將所
有系統(tǒng)核心功能都轉(zhuǎn)移到軟設(shè)計(jì)中,并利用這種設(shè)計(jì)的優(yōu)勢(shì)。 這些“軟”設(shè)計(jì)優(yōu)勢(shì)包括:更容易保護(hù)系統(tǒng)功能使其不被仿制或逆向工程,編程到設(shè)計(jì)中的“軟”元素容易更新,
使設(shè)計(jì)過程更具連續(xù)性。好的工具所設(shè)計(jì)的軟設(shè)計(jì)不依賴于事先指定的硬件平臺(tái)。而且,設(shè)計(jì)可以在最終硬件 平臺(tái)內(nèi)繼續(xù)進(jìn)行,即使產(chǎn)品已經(jīng)移交客戶也仍然可行。即“軟”設(shè)計(jì)將成為電子設(shè)計(jì)的發(fā)展方向。
另一點(diǎn),現(xiàn)今及未來的電子產(chǎn)品都在追求智能化和個(gè)性化,智能化只能通過軟件來實(shí)現(xiàn),個(gè)性化呢,需要 工程師簡(jiǎn)單地修改就可體現(xiàn)不同的特色,另外也需要保護(hù)自己的設(shè)計(jì)不被仿制,要做到這點(diǎn),也需要可編程器件。
每個(gè)工程師都希望自的產(chǎn)品永遠(yuǎn)與眾不同。與眾不同就是要讓產(chǎn)品與競(jìng)爭(zhēng)產(chǎn)品不一樣,讓購(gòu)買者選擇你的 產(chǎn)品而不選擇競(jìng)爭(zhēng)對(duì)手的產(chǎn)品。但是,怎么樣才能在日益全球化的市場(chǎng)中保持與眾不同呢?
不要再指望在硬件上能達(dá)到目的,因?yàn)楝F(xiàn)在幾乎每個(gè)人都能獲得同樣的芯片。當(dāng)現(xiàn)有物理硬件中實(shí)現(xiàn)的任 何功能受到市場(chǎng)的歡迎的同時(shí),大量的仿制就出現(xiàn)了。
所以要將產(chǎn)品的區(qū)別建立在編程器件智能上,保護(hù)有價(jià)值的 IP,并且使競(jìng)爭(zhēng)對(duì)手很難對(duì)其進(jìn)行逆向工程。 而且,即使硬件已經(jīng)制造出來,產(chǎn)品仍可以通過“軟”設(shè)計(jì)進(jìn)行創(chuàng)新并為產(chǎn)品增值,產(chǎn)品的成功就有了保障。 而這些,都離不開可編程器件。可編程器件是實(shí)現(xiàn)“軟”設(shè)計(jì)的保障和載體。
電子設(shè)計(jì)工程師設(shè)計(jì)方法和設(shè)計(jì)內(nèi)容在不斷變化
電子設(shè)計(jì)工程師的設(shè)計(jì)方法和內(nèi)容其實(shí)也在一直變化,電子管時(shí)代,設(shè)計(jì)工程師要掌握電子管的性能和設(shè) 計(jì)要點(diǎn),晶體管時(shí)代,設(shè)計(jì)工程師要熟悉跟中電路的作用和搭建,集成電路誕生以后,設(shè)計(jì)工程師要熟悉 IC 管 腳的作用和功能,而設(shè)計(jì)工具從最早的草稿圖、軟件輔助設(shè)計(jì)也發(fā)展到電子設(shè)計(jì)自動(dòng)化工具 (EDA 軟件 ),以 FPGA 為代表的可編程器件誕生后,設(shè)計(jì)工程師不但要設(shè)計(jì)硬件電路更要熟悉 HDL、Verilog 等 IC 設(shè)計(jì)語言,此外, 還要熟悉接口、數(shù)字信號(hào)處理、算法、EDA 設(shè)計(jì)方法學(xué)等等,電子工程師要學(xué)習(xí)的知識(shí)日益增多。
未來的硬件工程師是什么樣的?
那么,未來的的硬件設(shè)計(jì)工程師是什么樣的?或者說未來的硬件設(shè)計(jì)工程是怎樣的?而已這樣說 :以 VHDL 或者 Verilog 語言來表達(dá)設(shè)計(jì)意圖、以 FPGA 做為硬件載體、以計(jì)算機(jī)為設(shè)計(jì)開發(fā)工具,以 EDA 軟件為 開發(fā)環(huán)境、以 SoC、IP 等為綜合設(shè)計(jì)的方法,已經(jīng)成為硬件設(shè)計(jì)工程的主要特征。可以預(yù)見,F(xiàn)PGA 將成為未 來的硬件工程師必用的設(shè)計(jì)元素之一。
另外,F(xiàn)PGA 在應(yīng)用中的其他顯著優(yōu)勢(shì)是可以減少 BOM 整合多個(gè)分立的數(shù)字器件 ( 例如一個(gè)很小很便宜的 CPLD 可以替換好幾個(gè) 74 系列芯片 )、降低 PCB 布線難度 (MGT/GTP 等串行收發(fā)器將原本與需要三五十條線并 行數(shù)據(jù)線替換為少量的串行線路 )、可定制性 ( 可以自己寫代碼來支持非標(biāo)準(zhǔn)的接口 ),可擴(kuò)展性 ( 可編程易修 改方便升級(jí) )、加速面市時(shí)間 ( 只需關(guān)心功能實(shí)現(xiàn),不需要再花時(shí)間制成專用 IC) 等,這樣 FPGA 帶給設(shè)計(jì)的公 司的好處已經(jīng)不是從成本體現(xiàn)了,它可以大幅度提升開發(fā)的效率!
綜上所述,我們就明白為什么工程師要掌握 FPGA 開發(fā)知識(shí)了,希望本書有助于大家了解和掌握 FPGA 開發(fā)。
第二章、FPGA基本知識(shí)與發(fā)展趨勢(shì)
FPGA 是英文 Field Programmable Gate Array 的縮寫,即現(xiàn)場(chǎng)可編程門陣列,它是在 PAL、GAL、CPLD 等可編程器件的基礎(chǔ)上進(jìn)一步發(fā)展的產(chǎn)物。它是作為專用集成電路 (ASIC) 領(lǐng)域中的一種半定制電路而出現(xiàn)的, 既解決了定制電路的不足,又克服了原有可編程器件門電路數(shù)有限的缺點(diǎn)。它是當(dāng)今數(shù)字系統(tǒng)設(shè)計(jì)的主要硬件 平臺(tái),其主要特點(diǎn)就是完全由用戶通過軟件進(jìn)行配置和編程,從而完成某種特定的功能,且可以反復(fù)擦寫。在 修改和升級(jí)時(shí),不需額外地改變 PCB 電路板,只是在計(jì)算機(jī)上修改和更新程序,使硬件設(shè)計(jì)工作成為軟件開發(fā) 工作,縮短了系統(tǒng)設(shè)計(jì)的周期,提高了實(shí)現(xiàn)的靈活性并降低了成本,因此獲得了廣大硬件工程師的青睞。
2.1 FPGA 結(jié)構(gòu)和工作原理
2.1.1 夢(mèng)想成就偉業(yè)
1984 年,在硅谷工作的 Bernie Vonderschmitt、Ross Freeman 和 Jim Barnett 共同構(gòu)建了一個(gè)設(shè)想,他們 夢(mèng)想創(chuàng)立一家不同于一般的公司。他們希望創(chuàng)建一家在整個(gè)新領(lǐng)域內(nèi)開發(fā)和推出先進(jìn)技術(shù)的公司。并且,他們 還希望以這種方式領(lǐng)導(dǎo)它 :在這里工作的人們熱愛他們的工作、享受工作的樂趣,并對(duì)他們所從事的工作著迷。
完整的pdf格式文檔51黑下載地址(共114頁):
FPGA開發(fā)全攻略.pdf
(4.84 MB, 下載次數(shù): 108)
2018-9-9 21:12 上傳
點(diǎn)擊文件名下載附件
|
|