萬能登陸器新開傳奇世界輕變傳奇中變_第1頁
萬能登陸器新開傳奇世界輕變傳奇中變_第2頁
萬能登陸器新開傳奇世界輕變傳奇中變_第3頁
萬能登陸器新開傳奇世界輕變傳奇中變_第4頁
萬能登陸器新開傳奇世界輕變傳奇中變_第5頁
已閱讀5頁,還剩49頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

DesignofXilinxFPGA

andNexys3TMBoard計算機工程系2022/11/121XilinxFPGA內(nèi)部結(jié)構和Nexys3TM開發(fā)板結(jié)構XilinxFPGA開發(fā)流程ISE開發(fā)環(huán)境的使用XilinxIPCore技術時序約束的設置UCF(用戶約束文件)的使用ISE報告的閱讀ChipScope的配置與使用Nexys3TM開發(fā)板主要模塊的設計基于XilinxFPGA可編程嵌入式開發(fā)技術§目錄§現(xiàn)場可編程邏輯門陣列(FPGA)

一種基于RAM的查找表(LookUpTable,LUT)而不是與或門來實

現(xiàn)組合邏輯,稱為現(xiàn)場可編程邏輯門陣列(FieldProgrammableGateArray,F(xiàn)PGA)16×1RAM(LUT)abcd輸出4輸入的與門如何用LUT實現(xiàn)?§現(xiàn)場可編程邏輯門陣列(FPGA)如何選購FPGA§FPGA廠商Xilinx和Altera占全球可編程邏輯器件市場份額的75%以上,(中國不具備制造FPGA的能力)

歐美公司多使用Xilinx的FPGA,亞太公司多使用Altera的FPGA

兩家公司總部位于美國圣何塞,產(chǎn)品大體類似,無論是器件還

是軟件都大體相同

初學者不必太在意選用哪家公司的FPGA,重點掌握一家公司

的FPGA結(jié)構和開發(fā)工具,掌握FPGA的基本設計理念,換個FPGA就和換個玩具一樣簡單§FPGA基本結(jié)構LogicBlockI/OBankPLL/RAM/Multiplier...

邏輯塊(LogicBlock)Altera:LAB,由LE構成Xilinx:CLB,由SLICE構成I/OBank:FPGA連接外部器件的各種電氣物理接口,普通I/O、電源、時鐘、PCI等PLL、RAM、硬乘法器等專用模塊§FPGA應用領域

邏輯粘合

實時控制

數(shù)字信號處理和協(xié)議實現(xiàn)(ASIC、DSP和FPGA)

片上系統(tǒng)§Spartan-6FPGABlockRAMDSP48CMTBUFGBUFIOI/OMemoryControllerMGTCLB§Spartan-6

FPGACLBSwitch

MatrixSlice0Slice1CINCOUTCLBcontainstwoslicesConnectedtoswitchmatrix

forroutingtoother

FPGAresourcesCarrychainruns

verticallythrough

Slice0only§ThreeTypesofSlicesinSpartan-6FPGAsSLICEM:Fullslice

25%LUTcanbeusedforlogicandmemory/SRLHaswidemultiplexersandcarrychainSLICEL:Logicandarithmeticonly25%LUTcanonlybeusedforlogic(notmemory)HaswidemultiplexersandcarrychainSLICEX:Logiconly50%LUTcanonlybeusedforlogic(notmemory)NowidemultiplexersorcarrychainSLICEXSLICEMSLICEXSLICELor§Spartan-6FPGASLICEFourLUTs(6-input)EightstorageelementsFourflip-flop/latchesFourflip-flopsF7MUXandF8MUXConnectsLUToutputstocreatewide

functionsOutputcandrivetheflip-flop/latchesCarrychain(Slice0only)ConnectedtotheLUTsandthefour

flip-flop/latchesLUT/RAM/SRLLUT/RAM/SRLLUT/RAM/SRLLUT/RAM/SRL01§6-InputLUTwithDualOutput6-inputLUTcanbetwo5-inputLUTswithcommoninputsMinimalspeedimpactto

a6-inputLUTOneortwooutputsAnyfunctionofsixvariablesor

twoindependentfunctionsof

fivevariables5-LUTDA5A4A3A2A15-LUTDA5A4A3A2A1A6A5A4A3A2A1O6O56-LUT§SLICEMUsedasDistributedRAMUsesthesamestoragethatisusedforthelook-uptablefunctionSynchronouswrite,asynchronousreadCanbeconvertedtosynchronousreadusingtheflip-flopsavailableinthesliceVariousconfigurationsSingleportOneLUT6=64x1or32x2RAMCascadableupto256x1RAMDualport(D)1read/writeport+1read-onlyportSimpledualport(SDP)1write-onlyport+1read-onlyportQuad-port(Q)1read/writeport+3read-onlyportsSingle

PortDual

PortSimple

DualPortQuad

Port32x232x432x632x864x164x264x364x4128x1

128x2256x132x2D32x4D64x1D64x2D128x1D32x6SDP64x3SDP32x2Q64x1QEachporthasindependentaddressinputs§Spartan-6FPGABlockRAM18kbsizeCanbesplitintotwoindependent9-kb

memoriesPerformanceupto300MHzMultipleconfigurationoptionsTruedual-port,simpledual-port,single-portTwoindependentportsaccesscommondataIndividualaddress,clock,writeenable,clockenableIndependentwidthsforeachportByte-writeenableDual-PortBRAM18kMemory§Spartan-6FPGADSP48A1SlicePCIND:A:BXMC18X18PZ+/-00C48OPMODE[3:0]OPMODE[5]OPMODE[7]PCOUTOPMODE[6,4]PBCINDA4818BCCOUTCFOUTBCOUTCIN12181818DualB,D

RegisterWithPre-adder181848183618

MFOUT483618x18signedmultiplier48-bitadd/subtract/accumulatePipelineregistersforhighspeedCascadepathsforwidefunctionsPre-adderA0A1§Spartan-6FPGAClockManagementTile(CMT)dcm1_clkout<9:0>dcm2_clkout<9:0>10PLLpll_clkout<5:0>6CLKINCLKFBCLKOUT<5:0>DCM10CLKINCLKFBCLKINCLKFBDCMClocksfromBUFGCLKOUT<9:0>CLKOUT<9:0>GCLKInputsFeedbackclocksfromBUFIO2FB§Spartan-6LX/LXTFPGAs§Nexys3TM開發(fā)板XilinxSpartan-6LX16:2,278slices-four6-inputLUTs-eightflip-flops576KbitsblockRAMtwoclocktiles-fourDCMs-twoPLLs32DSPslices500MHz+clockspeeds16M字節(jié)偽SRAM16M字節(jié)并行FLASH16M字節(jié)串行FLASH電源和程序燒寫§Nexys3TM開發(fā)板§Nexys3TM開發(fā)板——配套工具AdeptSystem通過高速USB2與開發(fā)板連接,自動識別Nexys3TM開發(fā)板:

燒寫FPGA和FLASH

進行板級測試

和FPGA進行數(shù)據(jù)傳輸XilinxFPGA內(nèi)部結(jié)構和Nexys3TM開發(fā)板結(jié)構XilinxFPGA開發(fā)流程ISE開發(fā)環(huán)境的使用XilinxIPCore技術時序約束的設置UCF(用戶約束文件)的使用ISE報告的閱讀ChipScope的配置與使用Nexys3TM開發(fā)板主要模塊的設計基于XilinxFPGA可編程嵌入式開發(fā)技術§目錄§FPGA總體開發(fā)流程需求分析和模塊劃分明確需求和功能定義,進行可行性分析。FPGA選型(哪個廠家、哪個系列、多少邏輯資源、多少I/O接口、多少PLL、多少內(nèi)嵌存儲器、多少內(nèi)嵌模塊等)。設計輸入到綜合優(yōu)化原理圖輸入、代碼輸入、搭建SOPC或者IP核的配置和使用代碼輸入完成后,進行功能仿真(不涉及任何時序、延遲參數(shù),單純功能驗證)。工具可選用Modelsim,也可選用FPGA廠商EDA環(huán)境中(ISE/QuartusII)自帶的仿真工具。采用Testbench進行測試。綜合將高層次描述轉(zhuǎn)換為底層邏輯單元(但并不是實際FPGA芯片的底層模塊)。可以選用第三方綜合工具Synplify,推薦使用ISE或QuartusII自帶的綜合工具?!约业臇|西自己最了解§FPGA總體開發(fā)流程實現(xiàn)、時序分析和資源報告使用ISE或者QuartusII提供的時序編輯器對不同路徑進行時序約束,包括全局約束、I/O接口約束以及時序例外約束。實現(xiàn)包括翻譯、映射、布局布線三個步驟。每一個步驟都會生成時序報告,但布局布線后的時序報告及包含邏輯器件的延遲,也包括了布線延遲,其時序報告最準確。查看資源使用報告,分析資源使用情況,對電路結(jié)構進行優(yōu)化。仿真測試到板級調(diào)試FPGA能不能像軟件一樣連一個仿真器到板子上,然后進行單步調(diào)試,或者設置斷點呢?——給待測設計添加激勵,通過回放波形觀察測試結(jié)果。設計輸入階段——功能仿真(甚至是不可綜合的代碼);綜合優(yōu)化后——門級網(wǎng)表仿真(不包含布局布線延時信息);實現(xiàn)后——時序仿真(包含各類延時信息)。這三類仿真不需要全都做?!霧PGA總體開發(fā)流程仿真測試到板級調(diào)試板級調(diào)試最大的困難就是很難觀測到FPGA內(nèi)部節(jié)點的狀態(tài)。在FPGA剩余資源足夠多的情況下,可以使用ISE或QuartusII提供的在線邏輯分析儀進行調(diào)試,如Chipscope或者SignalTaPII?!靀ilinxFPGA開發(fā)流程主流程(必須做)驗證流程(不是必須)

綜合:

將設計編譯為由基本邏輯單元構成的邏

輯連接網(wǎng)表(并非真實門級電路)。

實現(xiàn)與布局布線:

實現(xiàn)是將邏輯網(wǎng)表配置到具體FPGA上,

布局布線是其中重要環(huán)節(jié)。布局是將邏

輯網(wǎng)表中的單元配置到芯片內(nèi)部的硬件

結(jié)構上;布線是根據(jù)布局的拓撲,利用

芯片內(nèi)的連線資源,連接各個元件。

器件編程:

產(chǎn)生數(shù)據(jù)流文件(.bit),下載到FPGA

芯片中。

功能仿真(前仿真):

只對電路邏輯功能驗證,沒有延遲信息。

綜合后仿真:

檢查綜合結(jié)果是否和原設計一致,主要

評估門延時帶來的影響。

時序仿真和驗證(后仿真):

將布局布線的延時信息反標注到設計網(wǎng)

表中,檢測有無時序違規(guī),此時延時最

全,最精確。

板級仿真與驗證:

主要應用于高速電路設計中,對信號完

整性和電子干擾等特性進行分析,使用

第三方工具完成?!靀ilinxFPGA開發(fā)流程(示例)內(nèi)容:2輸入邏輯門的設計與實現(xiàn)目標:

學會ISE的使用(Verilog代碼編寫、功能仿真、綜合、實現(xiàn)、程序燒寫)AdeptSystem的使用(bit文件的燒寫)Nexys3TM開發(fā)板上LED燈和SlideSwitch的使用§XilinxFPGA開發(fā)流程(示例)基于ISE的FPGA開發(fā)環(huán)境標題欄菜單欄工具欄程序編輯區(qū)過程管理區(qū)信息顯示區(qū)工程管理區(qū)§XilinxFPGA開發(fā)流程(示例)新建工程(一)輸入工程名稱指定工程路徑

指定文件輸入類型-HDL文件-原理圖文件

點擊Next按鈕§XilinxFPGA開發(fā)流程(示例)新建工程(二)選擇所使用的芯片-產(chǎn)品系列-產(chǎn)品型號-封裝方式

綜合工具(XST)

仿真工具(ISim)

使用的編程語言-Verilog-VHDL

點擊Next按鈕§XilinxFPGA開發(fā)流程(示例)新建工程(三)§XilinxFPGA開發(fā)流程(示例)設計輸入(一)在工程管理區(qū)任意位置

單擊鼠標右鍵在彈出的菜單中選擇NewSource命令

彈出左圖所示窗口

輸入方式選擇Verilog

給定輸入文件的名稱和

路徑單擊Next按鈕進入端口

定義對話框§XilinxFPGA開發(fā)流程(示例)設計輸入(二)端口名稱

端口方向MSB表示信號最高位LSB表示信號最低位

端口定義這一步可以略

過,在源程序中添加§XilinxFPGA開發(fā)流程(示例)設計輸入(三)在程序編輯區(qū)編寫程序§XilinxFPGA開發(fā)流程(示例)功能仿真(一)

工程管理區(qū)將view設置為Simulation工程管理區(qū)任意位置單擊鼠標右鍵在彈出的菜單中選擇NewSource在類型中選擇VerilogTestFixture輸入測試文件名,單擊Next按鈕選擇要進行測試的模塊,如gates2,

點擊Next,再單擊Finish按鈕ISE自動生成了基本的信號并對被測模

塊做了例化。我們只需在initial…end

塊中的“//Addstimulushere”后面添

加測試向量§XilinxFPGA開發(fā)流程(示例)功能仿真(二)

過程管理區(qū)會顯示與仿真有關的進程,如上圖所示右鍵單擊其中的SimulateBehavioralModel項選擇彈出菜單中的ProcessProperties項§XilinxFPGA開發(fā)流程(示例)功能仿真(三)

SimulationRunTime就是仿真時間的設置,可將其修改為任意時長?!靀ilinxFPGA開發(fā)流程(示例)功能仿真(四)在工程管理區(qū)選中測試代碼在過程管理區(qū)雙擊SimulateBehavioralModelISE將啟動ISESimulator,可以得到仿真結(jié)果§XilinxFPGA開發(fā)流程(示例)綜合與實現(xiàn)(一)所謂綜合,就是將HDL設計輸入翻譯成由邏輯門、RAM、觸發(fā)器等基

本邏輯單元的連接(網(wǎng)表),并根據(jù)目標和要求(約束條件)優(yōu)化所生成

的邏輯連接在工程管理區(qū)的view中選擇Implementation

在過程管理區(qū)雙擊Synthesize-XST,就開始綜合過程§XilinxFPGA開發(fā)流程(示例)綜合與實現(xiàn)(二)綜合前,模塊中的輸入輸

出信號添加管腳約束,需

要在工程中添加UCF文件在工程管理區(qū)單擊鼠標右

鍵,點擊NewSource,選擇ImplementationConstraintsFile,出現(xiàn)一

個空白的約束文件,添

加各種約束(管腳、時鐘、

面積等)§XilinxFPGA開發(fā)流程(示例)綜合與實現(xiàn)(三)管腳約束:NET“signal”

LOC=“pin”

參考Nexys3TM的ReferenceManual、原理圖或開發(fā)板/Board/Nexys3_rm.pdf或/Board/Nexys3_sch.pdf

管腳分配文件:/Board/Nexys3_Master.ucf§XilinxFPGA開發(fā)流程(示例)pushbutton和slideswitch只

能被設置為input,若設置為output可能會出現(xiàn)“短路”pushbutton按下時為高電平,

松開時為低電平slideswitch產(chǎn)生的高低電平

與其位置相關LED在輸入高電平時被點亮§XilinxFPGA開發(fā)流程(示例)綜合與實現(xiàn)(四)如果綜合后完全正確,則在Synthesize-XST前面有一個打勾的綠色小圓圈如果有警告,則出現(xiàn)一個帶感嘆號的黃色小圓圈

如果有錯誤,則出現(xiàn)一個帶叉的紅色小圓圈如果綜合正確,XST將給出初步的資源消耗情況,點擊DesignSummary,

即可查看§XilinxFPGA開發(fā)流程(示例)綜合與實現(xiàn)(四)§XilinxFPGA開發(fā)流程(示例)綜合與實現(xiàn)(五)綜合完成后,下一個步驟就是實現(xiàn)(Implementation)所謂實現(xiàn),指將綜合輸出的邏輯網(wǎng)表翻譯成所選器件的底層模塊,將設計

映射到具體器件上,進行布局布線,達到在選定FPGA上實現(xiàn)設計的目的實現(xiàn)分3個步驟:翻譯(Translate)邏輯網(wǎng)表、映射(Map)到器件單元與布局

布線(Place&Route)在過程管理區(qū)雙擊ImplementationDesign,就自動完成實現(xiàn)的3個步驟,

得到精確的資源占用情況§XilinxFPGA開發(fā)流程(示例)綜合與實現(xiàn)(五)§XilinxFPGA開發(fā)流程(示例)布局布線后仿真—

—后仿(一)雙擊圖過程管理區(qū)的ImplementDesign->Place&Route->GeneratePost-Place&RouteStaticTiming,反標時序信息,生成布局布線后仿

真模型§XilinxFPGA開發(fā)流程(示例)布局布線后仿真—

—后仿(二)在工程管理區(qū)將view設置為

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論