Adding_Your_Own_Peripheral_第1頁
Adding_Your_Own_Peripheral_第2頁
Adding_Your_Own_Peripheral_第3頁
Adding_Your_Own_Peripheral_第4頁
Adding_Your_Own_Peripheral_第5頁
已閱讀5頁,還剩46頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、 2007 xilinx, inc. all rights reservedthis material exempt per department of commerce license exception tsu adding your own peripheral 2007 xilinx, inc. all rights reservedobjectivesafter completing this module, you will be able to:describe the basic plb bus transactionsdifferentiate between free- a

2、nd evaluation-based ip delivered in the edkidentify the requirements for integrating your peripherallist the steps involved in creating and importing peripherals using create/import ip wizardidentify the limitations of creating peripherals with the wizard 2007 xilinx, inc. all rights reservedoutline

3、plb bus and interfacingxps directory structurexps peripheral device filesip delivery in the edkcreate and import peripheral wizard 2007 xilinx, inc. all rights reservedoverviewperipherals are connected to the microprocessor by using the data and address busesxilinx has implemented the ibm coreconnec

4、t bus architectureprocessor local bus (plb) version 4.6 of the coreconnect bus architecture is designed for easy connection of on-chip peripheral devicesany custom peripheral that connects to the plb bus must do the following: meet the principles of the plb protocol meet the requirements of the plat

5、form generator this allows you to take advantage of the simple automated flow that generates system-level architecture 2007 xilinx, inc. all rights reservedfeaturesplatform generator supports the following features of the plb v4.6 for plb peripherals:32-bit address bus 32, 64, or 128-bit data widths

6、electable shared bus or point-to-point interconnect topologypoint-to-point optimization available for one master, 1 slave configurationpoint-to-point topology supports 0 cycle latency via arbitration removalselectable address pipelining support (2 level only)watchdog timer for address phase request

7、timeout generationdynamic master request priority based arbitrationvectored resets and address/qualifier registers 2007 xilinx, inc. all rights reservedtransactionsplb_size communicates information about transaction data width, type, and length, as shown below“0000”: single data beat, plb_be indicat

8、es number of bytes“0001”: 4-word cache line“0010”: 8-word cache line“0011”: 16-word cache line“0100”-”0111” and “1110”“1111”: reserved“1010”: word burst transfer“1011”: double word burst transfer“1100”: quad word burst transfer“1101”: octal word burst transfer length of burst specified by plb_be 200

9、7 xilinx, inc. all rights reservedaddress and data phasesstart of addressphasetermination of address phase/start of data phaseexample of a read transaction (refer to edk docs for detailed signal descriptions)termination of read transaction4-word cachelinetransactionaddress4 words beingreaddetermines

10、 ifread(1) or write(0) 2007 xilinx, inc. all rights reservedpoint-to-point bus topologyfor configurations with single master and single slave (results in reduced address phase)latency reduced due to eliminationof arbitration and address decodelogic, as well as the interface registersbetween master a

11、nd slave 2007 xilinx, inc. all rights reservedconnecting devices to the plbthere are four plbv46 ipif modules availableslave singleslave burstmaster singlemaster burstautomatically generated by create/import peripheral wizard (will cover this later)plbv46 ipif templates provided for connecting custo

12、m peripherals 2007 xilinx, inc. all rights reservedslave singlemain target use is for register access in the user ip design supports 32-bit address and 32-bit data bus only single read and write data transfers are supported no burst transfers 2007 xilinx, inc. all rights reservedslave burstmain targ

13、et use is for higher throughput slaves such as memory controllers and bridges supports 32-bit address bus and 32-bit, 64-bit, or 128-bit data bus single read and write data transfers, fixed length burst transfers (up to 16 data beats), and cacheline transfers are supported 2007 xilinx, inc. all righ

14、ts reservedmaster singlemain target use is for register access in the user ip design supports 32-bit address and 32-bit data bus only single read and write data transfers are supported no burst transfers uses reduced locallink interface to connect to user ip design 2007 xilinx, inc. all rights reser

15、vedmaster burstmain target use is for high performance, high data throughput master devices supports 32-bit address bus and 32-bit, 64-bit, or 128-bit data bus single read and write data transfers and fixed length burst transfers (up to 16 data beats) can be initiated to slaves of the same or differ

16、ent sizes with master burst, the user ip reads and writes from the plb master via the xilinx locallink interface protocol 2007 xilinx, inc. all rights reservedoutlineplb bus and interfacingxps directory structurexps peripheral device filesip delivery in the edkcreate and import peripheral wizard 200

17、7 xilinx, inc. all rights reservedplatform generator searches the following directories for ip:pcores directory (located in theproject directory)myprocessoriplib directory (user defined)repository directory listed using project project options device and repository tab$xilinx_edk/edk/hw/xilinxproces

18、soriplib/pcores (unix)%xilinx_edk%edkhwxilinxprocessoriplibpcores (pc)peripheral storagesimmodelsproject directorypcorespcoreshdlnetlistdataverilogvhdlmyprocessoriplibmpdbbdpaouser peripherals can be located in the project directory or a peripheral repository 2007 xilinx, inc. all rights reservedout

19、lineplb bus and interfacingxps directory structurexps peripheral device filesip delivery in the edk create and import peripheral wizard 2007 xilinx, inc. all rights reservedsimulation generatorhardware platform generationlibrary generationembedded softwaredevelopmentisetoolsip library or user reposi

20、torymsslibgen.acompiler (gcc).olinker (gcc)elfmhsplatgendrivers,mddmpd, paopcorehdlsystem andwrapper vhdsystem.bmmsynthesis (xst)ngcngdbuilducfngdmapncd, pcfparncdbitgensystem.bitbitinitdownload.bitimpactsystem_bd.bmmsimgenbehavioralvhd modelsimgenstructuralvhd modelsimgentimingvhd modelsimulationip

21、 modelsise modelstestbenchstimuluscompedklibcompxlibapplicationsource.c, .h, .sxps peripheral device filesdownload.cmdedk swlibraries 2007 xilinx, inc. all rights reservedxps peripheral device filesmicroprocessor peripheral definition (mpd)provides default parameters and options for peripheral devic

22、e in xpsperipheral analysis order (pao)contains the list of hdl files that are needed for synthesis and defines the analyze order for compilation black-box definition (bbd)manages the file locations of optimized hardware netlists for the black-box sections of your peripheral design 2007 xilinx, inc.

23、 all rights reservedmpd fileperipheral options select various options hdl language supported device architectures supported processors provide description 2007 xilinx, inc. all rights reservedmpd filebus interfaces and parametersentity xps_gpio is generic ( c_baseaddr : std_logic_vector(0 to 31) :=

24、xffffffff; c_highaddr : std_logic_vector(0 to 31) := x00000000; c_splb_awidth : integer range 32 to 36 := 32; c_splb_dwidth : integer range 32 to 128 := 32; c_splb_p2p : integer range 0 to 1 := 0; c_splb_mid_width : integer range 1 to 4 := 1; c_splb_num_masters : integer range 1 to 16 := 1; c_splb_n

25、ative_dwidth : integer range 32 to 128 := 32; c_splb_support_bursts: integer range 0 to 1 := 0; c_family : string := virtex5; c_gpio_width : integer := 32; c_all_inputs : integer range 0 to 1 := 0; c_interrupt_present : integer range 0 to 1 := 0; c_is_bidir : integer range 0 to 1 := 1; c_dout_defaul

26、t : std_logic_vector := x0000_0000; c_tri_default : std_logic_vector := xffff_ffff; c_is_dual : integer range 0 to 1 := 0; c_all_inputs_2 : integer range 0 to 1 := 0; c_is_bidir_2 : integer range 0 to 1 := 1; c_dout_default_2 : std_logic_vector := x0000_0000; c_tri_default_2 : std_logic_vector := xf

27、fff_ffff );specify possible bus interfacesover-rides hdl generics 2007 xilinx, inc. all rights reservedmpd filelists peripheral signal ports that are accessible in xpsbus signalsuser data andcontrol signals 2007 xilinx, inc. all rights reservedpao fileupdate this sectionorder of dependencycontains a

28、 list of hdl files required for synthesis, and defines the analyze order for compilation 2007 xilinx, inc. all rights reservedbbd filethe ngc netlists are copied into the project/implementation directorythe bbd file should have option style = mix for the tools to copy the filesexample of a single fi

29、le without options:filesblackbox.ngcexample of multiple file selections without options:filesblackbox1.ngc, blackbox2.ngc, blackbox3.ednmanages file locations of optimized hardware netlists for black-box sections of the peripheral design 2007 xilinx, inc. all rights reservedexample of a bbd filewith

30、 multiple file selectionsc_familyc_rpmc_fpu_typefiles virtex2true fullopb_fpu_full.edf virtex2 true liteopb_fpu_lite.edf virtex2p true fullopb_fpu_full.edf virtex2p true liteopb_fpu_lite.edf virtex falsefullopb_fpu_full_noram32x1d.edf, ram32x1ds.edf virtex falseliteopb_fpu_lite_noram32x1d.edf, ram32

31、x1ds.edf 2007 xilinx, inc. all rights reservedfile usagethree ways to integrate your own ip into xps:as a black boxsynthesized with xst or a third-party synthesis toolrequires mpd and bbd filesbbd file should have option style = mix as a sourcesynthesized with the rest of the processor systemuses xs

32、trequires mpd and pao filesmixuses netlist and source filesrequires mpd, pao, and bbd filesbbd file should have option style = mix 2007 xilinx, inc. all rights reservedoutlineplb bus and interfacingxps directory structurexps peripheral device filesip delivery in the edkcreate and import peripheral w

33、izard 2007 xilinx, inc. all rights reservedip coresxilinx has created a wide variety of ip cores:bus infrastructure coresbusses: plb, opbbridges: plb2opb , opb2plbcommunication: high-speed10/100 ethernet mac, can controller, hdlc interface, flexray, most, usb2communication: low-speedserial periphera

34、l interface, iic interface, uart 16550, uart litedma and counterfixed interval timer, watchdog timer, central dma controllermemory controllers forblock ram, ddr/ddr2/sdram (multi-port available), sram/flash (multi-port available), compact flashgeneral purpose i/ogeneral purpose i/o (gpio)interproces

35、sor communicationmailbox, mutexsee ip catalog or xilinx web for complete listing of free and evaluation ip cores 2007 xilinx, inc. all rights reservedip core informationthe size of each core is available in the data sheetfor example, the opb_ethernetlite_v1_01_b data sheet contains the following tab

36、le:data sheet provided for each core (right-click on core in ip catalog to access) 2007 xilinx, inc. all rights reservedprocessor system sizethe processor ip calculator is an online tool that helps you easily estimate the processor ip core size it out! 2007 xilinx, inc. all rights reservedoutlineplb

37、 bus and interfacingxps directory structurexps peripheral filesip delivery in the edkcreate and import peripheral wizard 2007 xilinx, inc. all rights reservedcreate and import peripheral wizardthe wizard helps you create your own peripheral and then import it into your design the wizard generates th

38、e necessary core description files into the user-selected directoryyou can start the wizard after creating a new project or opening an existing project in xpsthe user peripheral can be imported directly through the wizard by skipping the creation optionensure that the peripheral complies with xilinx

39、 implementation of the ibm coreconnect bus architecture standard 2007 xilinx, inc. all rights reservedstarting the ip wizardthe create and import peripheral wizard can be started after creating a project and using hardware create or import peripheral or opening an existing project or using start pro

40、grams xilinx ise design suite 10.1 edk accessories create and import peripheral wizard 2007 xilinx, inc. all rights reservedselect the flow and directoryselect the target directory project directory or user repository2select create peripheral flow1the project directory assigned as the target directo

41、ry will allow the peripheral to be available to the project without importing it. user repository will allow multiple projects to access the same peripheral by importing it in a project 2007 xilinx, inc. all rights reservedselecting a peripheral name and busprovide the peripheral name and version3se

42、lect the bus to which the peripheral will attach4 2007 xilinx, inc. all rights reservedselecting various functionalitiesconfigure the slave interface6select the functionality5 2007 xilinx, inc. all rights reservedselect software registersconfigure the swaccessible registers7 2007 xilinx, inc. all ri

43、ghts reservedselect ipif signalsselect the ipif signalsavailable to the user logic8 2007 xilinx, inc. all rights reservedselect optional bus functional modeloptional bus functional modelsimulation template9 2007 xilinx, inc. all rights reservedselect optional implementations supportoptional implemen

44、tation tools support10 you can select to generate hdl in verilog you can select to generate project file so you can synthesize using xst and use ise implementation tools you can select to generate software drivers 2007 xilinx, inc. all rights reservedgenerate peripheral templatefinish11since the pro

45、ject directory was assigned as the target directory the peripheral will appear in the ip catalog under project local pcores folder 2007 xilinx, inc. all rights reservedimporting a peripheralselect import peripheral flowidentify the project directoryor repository12 this step is not needed if the peri

46、pheral was created in the current project directory use this step to import peripherals (make a local copy) created in a shared environment 2007 xilinx, inc. all rights reservedcustom ip name and source the name of the peripheral must match the top-level entity name or module name the user version n

47、ame is optional source file types can be a combination of hdl sources, netlists, and documentation files the top-level hdl must conform to the coreconnect bus architecture standardselect hdl source files4enter the top entity name and version name3 2007 xilinx, inc. all rights reservedcustom ip hdl a

48、nd location the hdl language can be vhdl, verilog, or mixed source files can already be in a project source files can be browsed select the libraries and source files in order of dependency, from lowest to highestselect hdl source files and libraries6select language and browse to source files5 2007

49、xilinx, inc. all rights reservedbus interface if coreconnect bus architecture naming conventions are followed, the ports are matched; if not, you must assign themverify bus port connections8select bus interface7 2007 xilinx, inc. all rights reservedinterrupt sourceselect interrupt source and sensiti

50、vity10define bus interface parameters9 select interrupting signal source, type (level versus edge), and polarity this will be presented only if interrupt present 2007 xilinx, inc. all rights reservedattributesselect port attributes that require special handling12select parameter attributes that requ

51、ire special handling11 the parameters are listed view or change the parameter default values the changed value is reflected in the mpd file the ports area is listed view or change the parameter default values the changed value is reflected in the mpd file 2007 xilinx, inc. all rights reservedimporti

52、ng custom ip if the netlist and documentation files were selected earlier, the corresponding gui displays, requesting their locations if not, the finished gui displays if the save box is checked, the previously generated files will also be savedthe peripheral will appear under the peripheral or project repository fo

溫馨提示

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

最新文檔

評論

0/150

提交評論