本書(shū)系統(tǒng)地論述了Xilinx FPGA開(kāi)發(fā)方法、開(kāi)發(fā)工具、實(shí)際案例及開(kāi)發(fā)技巧,內(nèi)容涵蓋Xilinx器件概述、Verilog HDL開(kāi)發(fā)基礎(chǔ)與進(jìn)階、Xilinx FPGA電路原理與系統(tǒng)設(shè)計(jì)、基于ISE Foundation的邏輯設(shè)計(jì)、時(shí)序分析、邏輯開(kāi)發(fā)專題、基于EDK的嵌入式系統(tǒng)設(shè)計(jì)、基于System Generator的DSP系統(tǒng)設(shè)計(jì)、數(shù)字信號(hào)處理專題以及SERDES技術(shù)專題共10章。各章均以實(shí)戰(zhàn)開(kāi)發(fā)為目的,結(jié)合版本的軟硬件特征,覆蓋了FPGA的各主要應(yīng)用領(lǐng)域。配套光盤(pán)中包含了書(shū)中所有的實(shí)例代碼,便于讀者快速動(dòng)手實(shí)踐。書(shū)中融匯了作者多年的工程開(kāi)發(fā)經(jīng)驗(yàn),希望能夠極力幫助讀者提高工程開(kāi)發(fā)能力。
本書(shū)適合作為電子信息工程、通信工程、自動(dòng)化、計(jì)算機(jī)科學(xué)與技術(shù)等相關(guān)專業(yè)的高年級(jí)本科生及研究生的教學(xué)用書(shū),也可以作為從事FPGA設(shè)計(jì)工作的工程師的參考圖書(shū)。
徐文波:京郵電大學(xué)信號(hào)與信息處理專業(yè)博士,現(xiàn)執(zhí)教于北京郵電大學(xué)信息與通信工程學(xué)院,長(zhǎng)期從事信號(hào)處理理論及實(shí)際開(kāi)發(fā)的教學(xué)與研究工作,發(fā)表多篇相關(guān)學(xué)術(shù)論文。
田耘:北京郵電大學(xué)信號(hào)與信息處理專業(yè)碩士學(xué)位,長(zhǎng)期從事信號(hào)處理領(lǐng)域中的FPGA技術(shù)開(kāi)發(fā),博學(xué)FPGA技術(shù)專家,著有多部FPGA相關(guān)技術(shù)圖書(shū)。
1.2.3軟核、硬核及固核
1.2.4Xilinx主流FPGA
1.3Xilinx軟件工具
1.3.1ISE Foundation軟件
1.3.2EDK開(kāi)發(fā)工具
1.3.3System Generator DSP工具
1.3.4ChipScope Pro
1.3.5PlanAhead
1.4本書(shū)案例驗(yàn)證平臺(tái)--S6 CARD開(kāi)發(fā)板
1.4.1S6 CARD開(kāi)發(fā)板的組成與功能
1.4.2S6 CARD板卡引腳約束說(shuō)明
本章小結(jié)
第2章Verilog HDL開(kāi)發(fā)基礎(chǔ)與進(jìn)階
2.1Verilog HDL語(yǔ)
第3章Xilinx FPGA電路原理與系統(tǒng)設(shè)計(jì)
FPGA器件基于SRAM結(jié)構(gòu)來(lái)實(shí)現(xiàn)可編程特性,具有集成度高、邏輯功能強(qiáng)等特點(diǎn),但掉電后編程信息立即丟失,芯片在每次加電時(shí),都必須重新下載設(shè)計(jì)文件所生成的配置數(shù)據(jù)。正是這一特性使得用FPGA來(lái)實(shí)現(xiàn)數(shù)字系統(tǒng)時(shí),不但能減小電路板的面積、縮短開(kāi)發(fā)周期、提高系統(tǒng)運(yùn)行的性,而且還可無(wú)限次重復(fù)擦寫(xiě),能夠完成數(shù)字系統(tǒng)的在線重配置,易于設(shè)備功能的更改和升級(jí)。因此,如何快速、高效地將配置數(shù)據(jù)寫(xiě)入目標(biāo)器件,并且保障其在掉電后再次上電能自動(dòng)地恢復(fù)配置,就成為整個(gè)系統(tǒng)的關(guān)鍵所在。目前,配置FPGA的方式有多種,可以通過(guò)JTAG口配置(一般用在調(diào)試過(guò)程),可以通過(guò)PROM、Flash來(lái)配置,也可以通過(guò)CPU或者CPLD進(jìn)行配置。本章主要介紹Xilinx FPGA常用配置電路的原理以及相應(yīng)的軟件操作。3.1FPGA配置電路FPGA配置電路可看成用戶設(shè)計(jì)和硬件電路之間的連接紐帶。隨著制造工藝的發(fā)展和應(yīng)用范圍的擴(kuò)展,F(xiàn)PGA配置電路呈現(xiàn)多元化發(fā)展,最終目的都是在一定的外部條件下,、快速地實(shí)現(xiàn)FPGA系統(tǒng)配置。只有正確地理解了配置電路,才能在實(shí)際開(kāi)發(fā)中選擇的解決方案。本節(jié)主要從宏觀上介紹FPGA配置電路的組成、工作流程以及不同方式之間的差異。3.1.1Xilinx FPGA配置電路FPGA芯片是基于SRAM工藝的,不具備非易失特性,因此斷電后將丟失內(nèi)部邏輯配置。在每次上電后,都需要從外部非易失存儲(chǔ)器中導(dǎo)入配置比特流。硬件配置是FPGA開(kāi)發(fā)的最關(guān)鍵的一步,只有將HDL代碼下載到FPGA芯片中,才能進(jìn)而調(diào)試并最終實(shí)現(xiàn)相應(yīng)的功能。完成FPGA配置,必須要有類似于單片機(jī)仿真器的下載電纜才能完成,典型的FPGA配置系統(tǒng)如圖3-1所示。
圖3-1FPGA配置系統(tǒng)組成
在FPGA配置系統(tǒng)中,編程軟件由FPGA提供商提供,設(shè)計(jì)人員要掌握其操作方法; 下載電纜是固定的JTAG電路,只要將其連接在PC上以及目標(biāo)板上即可; 只有目標(biāo)板上的配置電路需要設(shè)計(jì)人員設(shè)計(jì)。其中,JTAG鏈路是器件編程的關(guān)鍵傳輸樞紐。因此JTAG鏈路的工作原理、FPGA的各種配置電路以及編程軟件的操作是本章的重點(diǎn)內(nèi)容。將配置數(shù)據(jù)從PC上加載到Xilinx FPGA芯片中的整個(gè)配置過(guò)程,可分為以下步驟。 1. 初始化通上電后,如果FPGA滿足以下條件: Bank2的I/O輸出驅(qū)動(dòng)電壓Vcc0_2大于1V; 器件內(nèi)部的供電電壓Vccint為2.5V,器件便會(huì)自動(dòng)進(jìn)行初始化。在系統(tǒng)上電的情況下,通過(guò)對(duì)PROG引腳置低電平,便可以對(duì)FPGA進(jìn)行重新配置。初始化過(guò)程完成后,DONE信號(hào)將會(huì)變低。2. 清空配置存儲(chǔ)器在完成初始化過(guò)程后,器件會(huì)將INIT信號(hào)置低電平,同時(shí)開(kāi)始清空配置存儲(chǔ)器。在清空完配置存儲(chǔ)器后,INIT信號(hào)將會(huì)重新被置為高電平。用戶可以通過(guò)將PROG或INIT信號(hào)(INIT為雙向信號(hào))置為低電平,從而達(dá)到延長(zhǎng)清空配置存儲(chǔ)器的時(shí)間,以確保存儲(chǔ)器被清空。3. 加載配置數(shù)據(jù)配置存儲(chǔ)器的清空完成后,器件對(duì)配置模式腳M[2:0]/M[1:0]進(jìn)行采樣,以確定用何種方式來(lái)加載配置數(shù)據(jù)。4. CRC錯(cuò)誤檢查器件在加載配置數(shù)據(jù)的同時(shí),會(huì)根據(jù)一定的算法產(chǎn)生一個(gè)CRC值,這個(gè)值將會(huì)和配置文件中內(nèi)置的CRC值進(jìn)行比較,如果兩者不一致,則說(shuō)明加載發(fā)生錯(cuò)誤,INIT引腳將會(huì)被置低電平,加載過(guò)程被中斷。此時(shí)若要進(jìn)行重新配置,只需將PROG置為低電平即可。5. START-UPSTART-UP階段是FPGA由配置狀態(tài)過(guò)渡到用戶狀態(tài)的過(guò)程。在START-UP完成后,F(xiàn)PGA便可實(shí)現(xiàn)用戶編程的功能。在START-UP階段中,F(xiàn)PGA會(huì)進(jìn)行以下操作: (1) 將DONE信號(hào)置高電平,若DONE信號(hào)沒(méi)有置高,則說(shuō)明數(shù)據(jù)加載過(guò)程失敗; (2) 在配置過(guò)程中,器件的所有I/O引腳均為三態(tài),此時(shí),全局三態(tài)信號(hào)GTS置低電平,這些I/O腳將會(huì)從三態(tài)切換到用戶設(shè)置的狀態(tài); (3) 全局復(fù)位信號(hào)GSR置低電平,所有觸發(fā)器進(jìn)入工作狀態(tài); (4) 全局寫(xiě)允許信號(hào)GWE置低電平,所有內(nèi)部RAM有效。整個(gè)過(guò)程需要8個(gè)時(shí)鐘周期C0~C7。在默認(rèn)的情況下,這些操作都和配置時(shí)鐘CCLK同步。在DONE信號(hào)置高電平之前,GTS、GSR、GWE都保持高電平。如果選用JTAG配置電路,則所有操作都和JTAG電路的TCK保持同步。3.1.2Xilinx FPGA常用的配置引腳對(duì)于FPGA芯片而言,無(wú)論何種配置方式,都必須通過(guò)FPGA相應(yīng)的引腳把設(shè)計(jì)加載到FPGA芯片中。和配置有關(guān)的引腳可以分為專用引腳和復(fù)用引腳兩類,前者只能用于FPGA配置,而后者在配置過(guò)程結(jié)束后,還可當(dāng)作普通I/O使用。專用的配置引腳有: 配置模式腳M[2:0]或者M(jìn)[1:0]; 配置時(shí)鐘CCLK; 配置邏輯異步復(fù)位PROG; 啟動(dòng)控制DONE及邊界掃描TDI、TDO、TMS、TCK。非專用配置引腳有: Din、D0: D7、CS、WRITE、BUSY、INIT。當(dāng)然,部分專用配置引腳在配置結(jié)束后也可作為普通引腳使用。例如,在Spartan-3A系列FPGA中,3個(gè)FPGA引腳M2、M1和M0用于選擇配置模式,其配置說(shuō)明如表3-1所示,M[2:0]的值在INIT_B輸出變高后才有效。在FPGA配置完成后,M[2:0]可以作為普通I/O使用。
表3-1Spartan-3A配置模式選擇以及特性
主串模式SPI模式BPI模式從并模式從串模式JTAG
模式配置引腳M[2:0]=UP=DOWN數(shù)據(jù)寬度單比特單比特字節(jié)寬度字節(jié)寬度單比特單比特
配置數(shù)據(jù)存儲(chǔ)器類型Xilinx系列PROM標(biāo)準(zhǔn)SPI串行FLASHXilinx系列PROM或并行NOR FLASH外部CPU、MCU或Xilinx并行PROM外部CPU、MCU
配置時(shí)鐘源FPGA提供FPGA提供FPGA提供CCLK引腳上的外部時(shí)鐘TCK信號(hào)
配置所需引腳數(shù)813462180配置菊花鏈中的FPGA從串從串從并從并從串JTAG
是否需要額外配置主機(jī)否否否使用Xilinx并行PROM不需要,否則需要外部主機(jī)否
在Spartan-6系列FPGA中,配置模式引腳為M[1:0]的形式,只有M1和M0兩個(gè)引腳。其基本原理和Spartan-3A系列FPGA中的M[2:0]一致,只是在具體選擇內(nèi)容上不同,如表3-2所示。
表3-2Spartan-6配置模式選擇以及特性
配置模式M[1:0]總線寬度CCLK方向
主Serial/SPI011, 2, 4輸出主SelectMAP/BPI008, 16輸出JTAGxx1輸入(TCK)從SelectMAP108, 16輸入從Serial111輸入
3.1.3Xilinx FPGA配置電路分類FPGA配置方式靈活多樣,根據(jù)FPGA芯片是否能夠主動(dòng)加載配置數(shù)據(jù)分為主模式、從模式以及JTAG模式。典型的主模式都是加載片外非易失(斷電不丟數(shù)據(jù))性存儲(chǔ)器中的配置比特流,讀取配置數(shù)據(jù)所需的時(shí)鐘信號(hào)(稱為CCLK,通過(guò)FPGA芯片的CCLK引腳發(fā)出)由FPGA內(nèi)部產(chǎn)生,且FPGA控制整個(gè)配置過(guò)程。從模式需要外部的主智能終端(如處理器、微控制器或者DSP等)將數(shù)據(jù)下載到FPGA中,寫(xiě)入數(shù)據(jù)的時(shí)鐘(仍然通過(guò)CCLK引腳進(jìn)入FPGA)由外圍器件產(chǎn)生,其較大的優(yōu)點(diǎn)就是FPGA的配置數(shù)據(jù)可以放在系統(tǒng)的任何存儲(chǔ)部位,包括Flash、硬盤(pán)、網(wǎng)絡(luò),甚至在其余處理器的運(yùn)行代碼中。JTAG模式為調(diào)試模式,可將PC中的比特文件流下載到FPGA中,斷電即丟失。此外,目前Xilinx還有基于Internet的、成熟的可重構(gòu)邏輯技術(shù)System ACE解決方案。1. 主模式在主模式下,F(xiàn)PGA上電后,自動(dòng)將配置數(shù)據(jù)從相應(yīng)的外存儲(chǔ)器讀入到SRAM中,實(shí)現(xiàn)內(nèi)部結(jié)構(gòu)映射; 主模式根據(jù)比特流的位寬又可以分為: 串行模式(單比特流)和并行模式(字節(jié)寬度比特流)兩大類。例如,主串行模式、主SPI Flash串行模式、內(nèi)部主SPI Flash串行模式、主BPI并行模式以及主并行模式,如圖3-2所示。2. 從模式在從模式下,F(xiàn)PGA作為從屬器件,由相應(yīng)的控制電路或微處理器提供配置所需的時(shí)序,實(shí)現(xiàn)配置數(shù)據(jù)的下載。從模式也根據(jù)比特流的位寬不同分為串、并模式兩類,具體包括從串行模式、JTAG模式和從并行模式3大類,其概要說(shuō)明如圖3-3所示。
圖3-2常用主模式下載方式示意圖
圖3-3常用的從模式下載方式示意圖
3. JTAG模式在JTAG模式中,PC和FPGA通信的時(shí)鐘為JTAG接口的TCLK,數(shù)據(jù)直接從TDI進(jìn)入FPGA,完成相應(yīng)功能的配置。目前,主流的FPGA芯片都支持各類常用的主、從配置模式以及JTAG,以減少配置電路失配性對(duì)整體系統(tǒng)的影響。在主配置模式中,F(xiàn)PGA自己產(chǎn)生時(shí)鐘,并從外部存儲(chǔ)器中加載配置數(shù)據(jù),其位寬可以為單比特或者字節(jié); 在從模式中,外部的處理器通過(guò)同步串行接口,按照比特或字節(jié)寬度將配置數(shù)據(jù)送入FPGA芯片。此外,多片F(xiàn)PGA可以通過(guò)JTAG菊花鏈的形式共享同一塊外部存儲(chǔ)器,同樣一片/多片F(xiàn)PGA也可以從多片外部存儲(chǔ)器中讀取配置數(shù)據(jù)以及用戶自定義數(shù)據(jù)。
3.2JTAG電路的原理與設(shè)計(jì)3.2.1JTAG電路的工作原理1. JTAG電路簡(jiǎn)介
JTAG(Joint Test Action Group)即聯(lián)合測(cè)試行動(dòng)小組。目前,JTAG已成為一種國(guó)際標(biāo)準(zhǔn)測(cè)試協(xié)議,主要用于各類芯片的內(nèi)部測(cè)試。現(xiàn)在大多數(shù)高級(jí)器件(包括FPGA、MCU、DSP以及CPU等)都支持JTAG協(xié)議。標(biāo)準(zhǔn)的JTAG接口是4線接口: TMS、TCK、TDI以及TDO,分別為模式選擇、時(shí)鐘、數(shù)據(jù)輸入和數(shù)據(jù)輸出信號(hào)線。JTAG電路的功能模塊如圖3-4所示。
圖3-4JTAG電路的內(nèi)部結(jié)構(gòu)示意圖
JTAG最初是用來(lái)對(duì)芯片進(jìn)行測(cè)試的,基本原理是在器件內(nèi)部定義一個(gè)TAP(Test Access Port,測(cè)試訪問(wèn)口)端口,通過(guò)專用的JTAG測(cè)試工具對(duì)內(nèi)部節(jié)點(diǎn)進(jìn)行測(cè)試。此外,JTAG協(xié)議允許多個(gè)器件通過(guò)JTAG接口串聯(lián)在一起,形成一個(gè)JTAG鏈,能實(shí)現(xiàn)對(duì)各個(gè)器件分別測(cè)試。此外,JTAG接口還常用于實(shí)現(xiàn)ISP(In-System Programmable,在線編程),對(duì)Flash等器件進(jìn)行編程。JTAG在線編程的特征也改變了傳統(tǒng)生產(chǎn)流程,將以前先對(duì)芯片進(jìn)行預(yù)編程再裝到板上的工藝簡(jiǎn)化為: 先固定器件到電路板上,再用JTAG編程,從而大大加快工程進(jìn)度。2. JTAG邊界掃描電路邊界掃描測(cè)試(Boundary Sean Test,BST)一般采用4線接口(在5線接口中,有一條為主復(fù)位信號(hào)),也可以通過(guò)PC的RS-232接口就能模擬BST的功能。BST標(biāo)準(zhǔn)接口是用來(lái)對(duì)電路板進(jìn)行測(cè)試的,可在器件正常工作時(shí)捕獲功能數(shù)據(jù)。器件的邊界掃描單元能夠迫使邏輯追蹤引腳信號(hào),或從器件核心邏輯信號(hào)中捕獲數(shù)據(jù),和預(yù)期的結(jié)果進(jìn)行比較,根據(jù)比較結(jié)果給出掃描狀態(tài),以提示用戶電路設(shè)計(jì)是否正確。典型邊界掃描測(cè)試電路的結(jié)構(gòu)如圖3-5所示。
圖3-5JTAG鏈掃描結(jié)構(gòu)示意圖
邊界掃描測(cè)試提供了一個(gè)串行掃描路徑,遵守IEEE規(guī)范的器件之間的引腳連接情況。IEEE 1149.1標(biāo)準(zhǔn)所規(guī)定的BST結(jié)構(gòu)為: 當(dāng)器件工作在JTAG BST模式時(shí),使用4個(gè)專用的I/O引腳和一個(gè)可選引腳TRST作為JTAG引腳。這4個(gè)專用I/O引腳為T(mén)DI 、TDO、 TMS 和TCK。所有JTAG引腳的核心功能如表3-3所示。3. JTAG電路時(shí)序JTAG電路的時(shí)序如圖3-6所示,所有基于JTAG的操作都必須同步于JTAG時(shí)鐘信號(hào)TCK。在TCK的上升沿讀取或輸出有效數(shù)據(jù),有嚴(yán)格的建立、保持時(shí)間要求,且JTAG電路追求穩(wěn)定性,因此一般情況下JTAG的時(shí)鐘不會(huì)太高。
表3-3JTAG引腳說(shuō)明
引腳名名稱功 能 描 述
TDI測(cè)試數(shù)據(jù)輸入引腳JTAG指令和測(cè)試編程數(shù)據(jù)的輸入引腳,數(shù)據(jù)在TCK信號(hào)的上升沿時(shí)刻讀入TDO測(cè)試數(shù)據(jù)輸出引腳 JTAG指令和測(cè)試編程數(shù)據(jù)的串行輸出引腳,數(shù)據(jù)在TCK信號(hào)的下降沿時(shí)刻讀出; 如果數(shù)據(jù)沒(méi)有輸出,則處于三態(tài)TMS測(cè)試模式選擇引腳 該數(shù)據(jù)引腳是控制信號(hào),它決定了TAP控制器的轉(zhuǎn)換; TMS信號(hào)必須在TCK上升沿之前建立,在用戶狀態(tài)下TMS信號(hào)應(yīng)是高電平TCK測(cè)試時(shí)鐘輸入引腳 JTAG鏈路的時(shí)鐘信號(hào),直接輸入到邊界掃描電路; 所有操作都在其上升沿或下降沿時(shí)刻發(fā)生TRST測(cè)試復(fù)位輸入引腳 用于異步初始化或復(fù)位JTAG邊界掃描電路,低電平有效
圖3-6JTAG電路的時(shí)序關(guān)系示意圖
4. FPGA芯片中JTAG掃描電路的工作流程JTAG邊界掃描測(cè)試由測(cè)試訪問(wèn)端口的控制器管理,只要FPGA上電后電壓正確,且JTAG鏈路完整,則JTAG電路可立即正常工作,清空J(rèn)TAG配置寄存器等待外界響應(yīng),整體流程如圖3-7所示。
圖3-7JTAG邊界掃描流程示意圖
TMS、TRST 和TCK引腳管理TAP控制器的操作,TDI和TDO為數(shù)據(jù)寄存器提供串行通道。TDI也為指令寄存器提供數(shù)據(jù),然后為數(shù)據(jù)寄存器產(chǎn)生控制邏輯。對(duì)于選擇寄存器、裝載數(shù)據(jù)、檢測(cè)和將結(jié)果移出的控制信號(hào),由測(cè)試時(shí)鐘(TCK)和測(cè)試模式(TMS)選擇兩個(gè)控制信號(hào)決定。在4線接口標(biāo)準(zhǔn)中,利用TDI、TDO、TCK、TMS 4個(gè)信號(hào),它們合成為T(mén)AP測(cè)試處理端口(Test Access Port); 測(cè)試復(fù)位信號(hào)(TRST,一般以低電平有效)一般作為可選的第5個(gè)端口信號(hào)。3.2.2Xilinx JTAG下載線下載線一端以JTAG的方式和FPGA/PROM芯片相連,另一端則通過(guò)USB/并口和計(jì)算機(jī)相連,為設(shè)計(jì)人員提供了由PC配置FPGA/PROM芯片的數(shù)據(jù)鏈路。本節(jié)介紹目前常用的Xilinx下載線,以及簡(jiǎn)易下載線的制作方法。
1. Xilinx下載線介紹根據(jù)下載線和PC連接方式的不同,可以將其分為USB下載線和并口下載線兩大類。USB下載線速度快,穩(wěn)定度高,當(dāng)然價(jià)格也比較昂貴,目前Xilinx公司提供的USB下載線分為USB Ⅰ和USB Ⅱ。并口下載線根據(jù)下載速度的不同,可分為Parallel Cable Ⅳ(簡(jiǎn)稱為PC4)和Parallel Cable Ⅲ兩類(簡(jiǎn)稱為PC3): PC4可適用于Xilinx公司所有芯片,速度比PC3快8倍,價(jià)格大約為USB Ⅰ下載線的1/3; PC3采用簡(jiǎn)單的EPP模式,透?jìng)魇綄?shí)現(xiàn),成本低廉,但下載速度緩慢,且不具備配置電壓自適應(yīng)的功能,已經(jīng)不能用于Xilinx公司新型FPGA的開(kāi)發(fā),存在一定的應(yīng)用局限性。無(wú)論哪種下載線,在FPGA端都具有標(biāo)準(zhǔn)的4根JTAG接口、電源引腳以及地(VCC、GND、TCK、TMS、TDI和TDO),共6個(gè)信號(hào)端口,也被稱為JTAG連接器。也有一種常見(jiàn)的10腳JTAG連接器,其中多了1個(gè)GND信號(hào)以及3根懸空信號(hào)(NC)。在實(shí)際工程中,有一條性能穩(wěn)定的下載線,不僅能避免配置錯(cuò)誤(如利用PC3并口下載線配置Spartan-6、Virtex-6等容量較大的芯片時(shí)失敗概率非常高),還能提高配置的成功率和時(shí)間(在實(shí)際中,完整正確的配置電路也不能保障每次配置都成功)。下面對(duì)Xilinx各種下載線的特點(diǎn)和性能進(jìn)行簡(jiǎn)要總結(jié),如表3-4所示,供讀者參考。
表3-4Xilinx下載線性能的簡(jiǎn)要總結(jié)
USB下載線Parallel Cable Ⅳ下載線Parallel Cable Ⅲ下載線
器件編號(hào)HW-USB-GHW-PC4HW-PC3
連接目標(biāo)USB 1.1或USB 2.0接口PC并口(DB25)PC并口(DB25)
支持的I/O電壓1.5V、1.8V、2.5V、3.3V、5V1.5V、1.8V、2.5V、3.3V、5V3.3V、5V工作電壓需求USB總線供電總線供電或使用外部電源總線供電
硬件配置模式支持Xilinx全系列配置模式支持Xilinx全系列配置模式支持Xilinx全系列配置模式
支持的操作系統(tǒng)Windows 2000/XP/Vista/7
Red Hat Enterprise Linux Workstation 3.0&4.0
SUSE Linux 9&10
支持的芯片所有的Xilinx FPGA、CPLD、PROM
目標(biāo)較大時(shí)鐘速率24Mb/s5Mb/s是否支持在系統(tǒng)編程支持支持支持
2. PC3并行下載的電路原理圖首先對(duì)PC的打印接口進(jìn)行簡(jiǎn)單介紹。PC上的打印接口共有25根連線(一般也稱為DB25),如圖3-8所示。其中18~25都是地線,因此實(shí)際共有17根線,分成3類: 8根數(shù)據(jù)線,可進(jìn)行數(shù)據(jù)輸出; 5根狀態(tài)線,作為輸入; 4根控制線,作為輸出。這3組線分別由打印口的3個(gè)寄存控制器控制,即數(shù)據(jù)口、狀態(tài)口和控制口。只要對(duì)這3個(gè)寄存器讀或?qū)懀涂梢暂斎牖蜉敵鰯?shù)據(jù)。并口下載線主要完成PC并口和FPGA芯片JTAG接口之間的數(shù)據(jù)適配。Xilinx公司PC3并口下載電纜的原理圖是公開(kāi)的,結(jié)構(gòu)簡(jiǎn)單,成本低廉,有興趣的讀者可以自己動(dòng)手制作,在電子市場(chǎng)上則一般需要數(shù)十元。下載電纜的接口電路比較簡(jiǎn)單,簡(jiǎn)易連接關(guān)系見(jiàn)圖3-8,制作時(shí)間非常短,半天時(shí)間即可。接口電路只完成了電平轉(zhuǎn)換和簡(jiǎn)單的譯碼工作,不涉及信號(hào)時(shí)序的改變。其中74HC125為Philips公司生產(chǎn)的4輸入三態(tài)驅(qū)動(dòng)器,用來(lái)增強(qiáng)信號(hào)強(qiáng)度; LED用來(lái)給出下載信息指示。詳細(xì)的元件清單如表3-5所示。下載線的供電由電路板供電,即由JTAG連接器的VCC提供,因此和電路板的距離不能太長(zhǎng),一般為20cm左右; 和并口連接端可以適當(dāng)延長(zhǎng),但也不應(yīng)當(dāng)超過(guò)1m,一般選擇50cm左右,否則容易發(fā)生下載錯(cuò)誤。此外,肖特基二極管應(yīng)選取低壓降的管子,以保障下載線正常工作。
整體而言,本書(shū)具有以下三項(xiàng)特色:首先,從邏輯設(shè)計(jì)、數(shù)字信號(hào)處理、嵌入式系統(tǒng)設(shè)計(jì)和高速連接功能等四個(gè)方面系統(tǒng)地介紹了Xilinx FPGA的開(kāi)發(fā)與應(yīng)用,條理清晰、思路明確,符合FPGA目前和未來(lái)的發(fā)展趨勢(shì);其次,較為詳細(xì)介紹了Xilinx FPGA的開(kāi)發(fā)技巧,融入了作者的工程開(kāi)發(fā)經(jīng)驗(yàn),對(duì)于初學(xué)者和工程開(kāi)發(fā)人員來(lái)講都具有強(qiáng)的可讀性;,極為地介紹了賽靈思公司的ISE、System Generator以及EDK開(kāi)發(fā)軟件,非常系統(tǒng)和完整。因此,對(duì)于在校研究生、高年級(jí)本科生及從事FPGA開(kāi)發(fā)的工程師來(lái)說(shuō),本書(shū)是一本較為理想的EDA教材和工程工具書(shū),我鄭重地將其推薦給大家!希望通過(guò)本書(shū)的出版,使更多的讀者掌握賽靈思FPGA的開(kāi)發(fā)技能,更好地促進(jìn)FPGA開(kāi)發(fā)技術(shù)的普及和推廣。
——賽靈思(Xilinx)公司中國(guó)區(qū)大學(xué)計(jì)劃經(jīng)理謝凱年博士
感覺(jué)就是英文手冊(cè)的翻譯,Verilog那章更本就是浪費(fèi),介紹也不詳細(xì),大家都會(huì)去看轉(zhuǎn)本講Verilog的書(shū)籍。
剛剛拿到書(shū),看了下序言和目錄部分,感覺(jué)還不錯(cuò)!,
內(nèi)容很詳細(xì)、很充實(shí),講解的也很細(xì)致,很有幫助,送貨、服務(wù)都很好
很厚,隨手翻了翻,還可以,算不上最好的但也不差。工程性很強(qiáng),介紹的內(nèi)容也比較前沿。內(nèi)容偏軟件設(shè)計(jì)和編譯,對(duì)demo板的調(diào)試方面沒(méi)涉及。
講解全面細(xì)致,有基礎(chǔ)有擴(kuò)展,適合想在該領(lǐng)域有一定作為的人看
書(shū)很好,包裝不錯(cuò),是正版。內(nèi)容講述通俗易懂,適合初學(xué)者,也可以作為工具書(shū)。
東西很好,是正版,不過(guò)每次都在包裹里夾樓盤(pán)廣告ORZ
書(shū)是不錯(cuò),可是快遞也太慢了吧,明明顯示的是第二天到,卻過(guò)了2天才到,這就是失信!
書(shū)不錯(cuò),就是沒(méi)有任何包裝,就一層塑料袋子,書(shū)邊角都磕了凹進(jìn)去了。
一次性買(mǎi)了三本,這一本主要講xilinx的軟件操作,挺好的。
很快,第二天就拿到了,圖書(shū)質(zhì)量也很也,買(mǎi)書(shū)一直當(dāng)當(dāng),好多次了,還要來(lái)買(mǎi)
作為初學(xué)者來(lái)講還是很不錯(cuò)的一本書(shū),內(nèi)容感覺(jué)比較容易接受,講的也比較細(xì)致。
一部基礎(chǔ)書(shū),實(shí)用性還是有的,適合想上手xilinx片的同仁
我就在那么多說(shuō)書(shū)頁(yè)破損的。。。。為什么我買(mǎi)當(dāng)當(dāng)沒(méi)遇到過(guò)一次?
感覺(jué)里面的很多東西還是沒(méi)用上,盡管寫(xiě)得很好,應(yīng)用很全,但感覺(jué)只是比較籠統(tǒng),這本書(shū)比較基礎(chǔ),適合入門(mén),不夠深入
內(nèi)容比較全面,對(duì)于xilinx的學(xué)習(xí)有幫助,不錯(cuò)不錯(cuò)
很少見(jiàn) 且 很實(shí)用的FPGA開(kāi)發(fā)教程 新手必備啊
買(mǎi)了幾本這樣的工具書(shū),還是這本比較有參考性
對(duì)于學(xué)FPGA的人來(lái)說(shuō)很有用,順帶吐槽一下物流!
書(shū)的內(nèi)容沒(méi)的說(shuō),講得挺好,就只是發(fā)來(lái)的書(shū)有劃傷的痕跡,強(qiáng)迫癥傷不起
書(shū)的內(nèi)容是蠻好的,但是我收到的書(shū)有被茶水泡過(guò)的污漬,后面幾是頁(yè)都是皺皺的,怎么可以這樣!之前買(mǎi)書(shū)也沒(méi)有這種情況,希望當(dāng)當(dāng)以后發(fā)書(shū)的時(shí)候要好好檢查一下!
總體來(lái)說(shuō)還不錯(cuò),講Xilinx的器件比較多
書(shū)很好,物流很給力,唯一的不足就是書(shū)封面由于包裝留下了劃痕
FPGA很經(jīng)典的一本書(shū) 對(duì)于工程師和研究生來(lái)說(shuō)都很有用!!!
自學(xué)找工作用得到 內(nèi)容全面清晰易懂 性價(jià)比高 是正品
這本書(shū)比較經(jīng)典。適合fpga進(jìn)階。因?yàn)樗辉诰心嘤谡Z(yǔ)言,而是尋找規(guī)律,把這些常用模式弄懂了,其實(shí)才是真正理解了硬件描述語(yǔ)言。推薦大家讀讀
相對(duì)比較滿意的一本書(shū),至少解決了我工作中不懂的問(wèn)題,或者在我不清楚的地方給了提示。蠻不錯(cuò)的,適合用Xilinx芯片做FPGA開(kāi)發(fā)的工作者自我提高。
學(xué)習(xí)FPGA很好的一本書(shū),作為開(kāi)發(fā)教程非常棒,里面的很多內(nèi)容都有用
最近要用到xilinx公司的FPGA芯片,買(mǎi)來(lái)學(xué)習(xí)下,開(kāi)卷有益。