网站公告列表

  没有公告

加入收藏
设为首页
联系站长
您现在的位置: 61IC中国电子在线 >> EDA >> Xilinx >> 文章正文
  Xilinx授权:公开全部源代码的 PCIe DMA 引擎           ★★★ 【字体:
Xilinx授权:公开全部源代码的 PCIe DMA 引擎
作者:Xilinx    文章来源:Xilinx    点击数:    更新时间:2008-1-2    

这个DMA引擎在Xilinx 65nmV5器件的PCIe IP上测试通过;已经在ML506 ML555板上测试通过,欢迎大家下载使用和学习

 

Xilinx授权:公开全部源代码的 PCIe DMA 引擎

 

Readme

 

************************************************************************
** Copyright : 2007, Token2000 [ Email: TOKEN2000@163.COM ]
** This design is FREEWARE. All Rights Reserved.
************************************************************************
** DMA engine FREEWARE on Xilinx ML505/ML555 demo board with windows driver
** Author: Token2000 [ Email: TOKEN2000@163.COM ]
** Version: 1.0
** Filename: ReadMe.txt
** Date Last Modified:  12/3/2007
** Date Created:      11/1/2007
** Purpose:   Readme file with first design attempt. Please use this file
**     to find your way through the design.
************************************************************************
**
**  Disclaimer: LIMITED WARRANTY AND DISCLAMER.
**        These designs are provided to you "as is." The author reserves the
** right not to be responsible for the topicality, correctness, completeness
** or quality of the information provided. Liability claims regarding damage
** caused by the use of any information provided, including any kind of information
** which is incomplete or incorrect,will therefore be rejected. All offers
** are not-binding and without obligation. Parts of the pages or the complete
** content including all offers and information might be extended, changed or
** partly or completely deleted by the author without separate announcement.
**  Copyright:
**        The author intended not to use any copyrighted material for
** the publication or, if not possible, to indicate the copyright of the
** respective object. The copyright for any material created by the author
** is reserved. Author permit any duplication or use of objects free of charge.
************************************************************************

=======================================================================

This document contains the following sections:

1. Introduction
2. Directory Structure
3. DMA engine example design for ML505 es silicon and ML555 production silicon
4. Windows Driver and Application software
5. Run DMA demo on ML505/ML555
6. DMA Performance
7. Technical Support
8. Other Information

=======================================================================
1. Introduction
  This is a FREEWARE DMA engine design on Xilinx ML505/ML555 demo board.
  This FREEWARE includes:
    a. DMA engine design verilog source code
    b. Simulation testbench
    c. Simulation script for ModelSim
    d. P&R Implement script for ISE9.2 linux version
    f. Script to generate System ACE file for ML505
    g. Script to generate Xilinx Flash file for ML555
    h. Windows XP software device driver source code
    i. Windows XP software application source code
  ALL CONTENTS needed to rebuild the whole project is provided in this package.
 
  The development enviroments used for this FREEWARE includes:
    I.   ISE 9.2.03i with ise_92i_ip_update2_install (Linux version)
    II.  ModelSim 6.2e (Linux version)
    III. Verdi 2006 (Linux version)
    IV.  Microsoft WDK Build 6001 16549
    V.   Microsoft Visual Studio 2005

2. Directory Structure

|-DMA_Freeware        : Root directory for this FREEWARE
   |-pcie_software    : Windows driver and application software
      |-driver      : Windows driver for install
      |-PCIE       : Windows driver source code
      |-PCIEBoardTest   : Windows application source code
      |-run           : Windows application executable
   |-pcie_ml505esx1_prj : FPGA design for ML505 engineering sample silicon, pcie x1
      |-ml555cg      
       |-endpoint_blk_plus_v1_5
         |-doc      : IPcore document
         |-example_design: DMA engine source verilog source code
         |-implement     : DMA engine P&R directory
           |-results     : DMA engine P&R results
         |-simulation  : DMA engine simulation directory
           |-dsport     : pci express simulation model
           |-functional   : function smulation files
           |-novas           : function smulation script
           |-tests       : test cases
   |-pcie_ml555x4_prj   : FPGA design for ML555 production silicon, pcie x4
      |-ml555cg
       |-endpoint_blk_plus_v1_5
         |-doc           : IPcore document                              
         |-example_design: DMA engine source verilog source code      
         |-implement     : DMA engine P&R directory                   
           |-results       : DMA engine P&R results                 
         |-simulation    : DMA engine simulation directory            
           |-dsport        : pci express simulation model           
           |-functional    : function smulation files               
           |-novas           : function smulation script              
           |-tests       : test cases                                 
         
3. DMA engine example design for ML505 es silicon and ML555 production silicon
 3.1 Place and Route: run the implement.sh script
  [Token2000@LinuxWS01]$cd ~/DMA_Freeware/pcie_ml505esx1_prj/ml505cg/endpoint_blk_plus_v1_5/implement/
  [Token2000@LinuxWS01]$source implement.sh
  ** NOTE: Before P&R, check you have installed ISE9.2.3 with IP update2. Also,
  ** NOTE: you may need to register for a free PCI express IPcore license from www.xilinx.com
 
 3.2 Simulation: run the simulate_mti.do script
  [Token2000@LinuxWS01]$cd ~/DMA_Freeware/pcie_ml505esx1_prj/ml505cg/endpoint_blk_plus_v1_5/simulation/novas
  [Token2000@LinuxWS01]$vsim &
  In modelsim, "do simulate_mti.do"
  ** NOTE: Before simulation, check you have installed modelsim 6.x.
  ** NOTE: To setup Xilinx simulation library, check sim.pdf in ISE9.2 directory.You can use following command line.
  **   [Token2000@LinuxWS01]$compxlibgui &
  ** NOTE: Verdi (debussy) is for waveform browsing, if do not installed. You may remark following lines from board.v
  **  initial begin
  **      $fsdbDumpfile("bmd.fsdb");
  **      $fsdbDumpvars;
  **  end
  
4. Windows Driver and Application software
 4.1 Compile Windows driver: open a command line window from Microsoft WDK.
  D:\> cd D:\DMA_Freeware\pcie_software\PCIE
  D:\> bld
  ** NOTE: Before Compile Windows driver, check you have installed Microsoft WDK Build 6001 16549
  
 4.2 Compile Windows application software:
  D:\> cd D:\work\PCI\PCIEBoardTest     (assuming it is the software home directory)
  open PCIEBoardTest.vcproj with Microsoft VS2005, then build it. 
   ** NOTE: Before Compile Windows driver, check you have installed Microsoft Visual Studio 2005
  
5. Run DMA demo on ML505/ML555
 5.1 Run DMA demo on ML505 (ES silicon):
  I. download ml505_pcie_x1_plus_design_creation.pdf from Xilinx.com. Set boot from SYSACE CFG6.
  II. copy DMA_Freeware\pcie_ml505esx1_prj\ml505cg\endpoint_blk_plus_v1_5\implement\pcie_x1_plus_v1_5es_imp.ace into CF6 postion of CF card
  III. According to ml505_pcie_x1_plus_design_creation.pdf, setup ML505 in your PC.
  IV. Power on, when windows ask for driver, assign to DMA_Freeware\pcie_software\driver\PCIE.inf
  V. After driver installation. run DMA_Freeware\pcie_software\run\PCIEBoardTest.exe for a test.
  ** NOTE: Make sure your PC have been 100% power-off, before plug or unplug ML505/ML555.
  
 5.2 Run DMA demo on ML555 (production silicon):
  I. download ug201.pdf from Xilinx.com. Set JUMP to boot from XCF32P U1, REV0. Set PCIE switch.
  II. Burn DMA_Freeware\pcie_ml555x4_prj\ml555cg\endpoint_blk_plus_v1_5\implement\ml555xcf32p.mcs into XCF32P U1.
     Detail steps is in "Programming the PROM" section of ug201.pdf
  III. According to ug201.pdf, setup ML555 in your PC.
  IV. Power on, when windows ask for driver, assign to DMA_Freeware\pcie_software\driver\PCIE.inf
  V. After driver installation. run DMA_Freeware\pcie_software\run\PCIEBoardTest.exe for a test.
   ** NOTE: Make sure your PC have been 100% power-off, before plug or unplug ML505/ML555.

6. DMA Performance
 Performance Screen shots can be found at DMA_Freeware\pcie_software
 screenshot_X1.jpg, screenshot_X4.jpg, screenshot_X4_read.jpg, screenshot_X4_write.jpg
 The PC platform is DELL GX280 (Intel 915G chipset). GX280 is the cheapest PC I can found.
 I got 218MBps(W)/172MBps(R) on ML505 PCIx1, 445MBps(W)/683MBps(R) on ML555 PCIx4
 You may get better performance on new PC (INTEL 965G/P35/3000X/5000X chipset) than my old GX280. :)
  
7. Technical Support
 Send email to Token2000 [ Email: TOKEN2000@163.COM ].
 Or post your question on www.edacn.net, I used to visit the website twice a week.

8. Other Information
 If you want more help or design service, contact Token2000 [ Email: TOKEN2000@163.COM ].

Have a happy journey with the fantastic PCI express.

Sincerely
Token2000 [ Email: TOKEN2000@163.COM ]

               欢迎点击进入:TI德州中文网   (国内唯一针对TI应用的中文技术网站)    文章录入:admin    责任编辑:admin 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    最新热点 最新推荐 相关文章
    XILINX Platform Cable USB(…
    Xilinx ISE 8.2i 软件手册和…
    基于Xilinx FPGA的流媒体播放…
    Xilinx FPGA设计快速入门— …
    Xilinx低成本显示器解决方案
    Xilinx FPGA全局时钟和第二全…
    用PowerPC860实现FPGA配置
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    站长:61IC 湘ICP备05002478号