通过EDK创建XPS工程主要是产生配置FPGA的bitstream 文件和对应内核的BSP(Board Support Package)文件。
1.Base System Builder wizard
a.进入EDK,首先可以看到就是下面的窗口,选中Base System Builder wizard,点击OK
[url=https://6eyzew.bay.livefilestore.com/y1mvoZfjpIF5ir9LhbafAKKZRdiNYXE7EqIQKmijeLYLVk73fpmGND5hiNMLrdDLpURw-G1reWouoUYaf4VkO-2DIZRDCF2V7yRvv4lAXtHHhSZ1MJ8AroZvxR_LaTIr81XPcZzrSoiaCAsPUX4MjkPRQ/image5[1].png][/url]
图1.基本系统建立对话框
b.指定XPS工程目录路径,点击OK。
图2.指定XPS工程路径
c.进入Base System Builder欢迎界面,选择创建新的设计。点击Next
图3.Base System Builder 欢迎界面
d.选择开发板类型,如果找不到对应的开发板,需要到Xilinx网站上下载对应的xbd(Xilinx board definition)文件,放到EDK安装目录下的EDK\board\Xilinx\boards\Xilinx_XUP_V2P\data。图4
图4.选择开发板
e.配置PPC405属性。图5
图5.Configure PPC
f.配置IO设备。串口,以太网接口以及SystemACE接口(该接口用于CF卡配置FPGA)图6
图6.Configure IO interface
g.配置IO设备。未选中LED、DIPSWs、PushButton.图7
图7. 配置外围设备
h.配置IO设备接口。添加256MB DDR SDRAM 图8
图8.内存配置
i.配置外围设备,选择PLB_BRAM_IF_CNTLR 128KB Memory 图9
图9.配置PLB_BRAM_IF_CNTLR Memory size
j.软件配置,添加内存测试程序。图10
图10.测试程序选择
k.配置内存测试应用程序。图11
图11Configure MemoryTest Application
l.系统生成。(主要设备的信息,以及总线地址)图12
图12.System Generate
m.相关文件的生成以及路径。图13
图13 完成配置
2.setting the software platform
完成后会跳出一个Next Step对话框。选择配置drivers 和Libraries(Software Platform)图14
图14.Next Step
a.选择OS:Linux_mv131,支持Linux2.4的内核。MV是Monta Vista。该一家开发嵌入式linux的商业公司。与Xilinx有合作,开发Xilinx的嵌入式IP在linux下的驱动。图15
图15.配置OS
b.Configuration for OS。Mem_SIZE:0x10000000(256MB),PLB_CLOCK_PREQ_HZ:100000000(100MHz)。
TARGET_DIR:D:/BSP(自定义,用于生成板级生成包,也就是生成linux2.4内核下的驱动)。图16
图16 Configuration for OS:Linux_mv131
c.配置驱动(默认),所有的驱动都罗列出来。都会在BSP下生成驱动。图17
图17驱动配置(默认)
注:opb_uart16550和opb_ethernet在生成bitstream时有license的限制。需要在xilinx网上去申请。请参考:
Xilinx IP Evaluation License 申请指南
3.生成bitstream 文件
EDK会自动生成系统总线图。在左侧的Applications栏中,右键选中Default:ppc405_0_bootloop.选中Mark to initialize BRAMs。TestApp_Memory:不要选中Mark to initialize BRAMs,图标会显示一个红叉。
图18 System Bus Connect
a.bitstream 生成。
点击Hardware—Generate Bitstream
图19.Generate Bitstream
现在EDK窗口下方的Console Windows会显示运作的过程,如果出错会在该窗口中有问题提示。
一切顺利的话,会有如下提示,system.bit生成成功。图20. 在工程目录下面implementation会找到system.bit文件
图20.Console Windows文字提示
点击Device Configuration---update Bitstream。在工程目录下面implementation会找到download.bit文件
图21.Update Bitstream
注:download.bit和system.bit都是用来配置FPGA的文件,download.bit是在system.bit基础之上增加了由Software Application 的elf文件。最后要下载至FPGA中的是download.bit。
因为IP core License的问题。会有如下提示(图22)。如果没有申请下面两个IP License,在生成Bitstream过程中会报错。
图22.Design License Status
4.生成BSP文件
点击Generate Libraries and BSPs。图22 完成后在Target_dir:D:/BSP 有两文件:arch和drivers。图23
图23 Generate BSP 图24 BSP tree
在BSP tree下面有用的是xilinx_ocp,xilinx_sysace.xilinx_enet。最终这些目录都要覆盖到Linux2.4 kernel source tree下面。
至此已经完成
注:尽管在Base System Builder wizard中添加了TestApp_Memory application.但是在后来没有使用到。主要是因为TestApp_Memory是用来测试硬件系统。而且如果需要使用TestApp_Memory,在Software Platform 中应该选项standalone作为OS.然后在Application,选中TestApp_Memory:Mark to initialize BRAMs.去选ppc405_0_bootloop:Mark to initialize BRAMs.其他步骤相同。
使用TestApp_Memory Application的具体过程。
图25 EDK部分工具栏
功能说明:
- Generate Netlist
- Generate Bitstream
- Generate Libraries and Drivers
- Build all user Application
- Generate Linker Script for software application platform
- Update Bitstream
- Download Bitstream to FPGA
a.第一步就是Base System Builder wizard,内容配置不变
b.在OS Platform 选择Standalone
c.图18,在左侧有个Application中,在TestApp_Memory右键选中Mark to initialize BRAMs,而不要选择ppc405_0_bootloop:Mark to initialize BRAMs
d.如图25所示,按顺序点击1,2,3,4,6
e.USB,串口线与主机连接,开发板与主机连接。
f.配置串口通信软件(本人用的是putty),我用的是USB_Serial,所以对应的是COM6。一般在Windows下应该是COM1或者COM2。而比特率是9600.点击open。
[url=https://6eyzew.bay.livefilestore.com/y1m9t44wuXhOrepCZhkMz5m-Td4hFc_tWMv5Ob1nM8KchtK8BwwkCqBhOHL0IK-AUKf2Eaj6UgILmcWsyd41z_Ct2mePITUfgi9JMqSb-NnyRJWH5Al2dn1CGXooQbQz_RoRctmyGSvnGknscuDtoySEg/image[4]%2012F8FB9A.png][img=410,395]https://6eyzew.bay.livefilestore.com/y1mST0DVuOCRuxUwzdzG2pItcrZ5vLNBryRFy0GbS0JAREgGAIhLcXS-eisL3BU7D5bVqr6vMGEunokRH0ZdABzkg2GnbLWqjxlzUccqI8aLzc2C7GIZmXjS2iST9cK42iaAQ2ub5Gxf3OLhJ2f_BhoQw/image_thumb[1]%203E1FD7B8.png[/img][/url]
图26.putty串口通信配置
g.点击7,通过iMPACT下载至FPGA,然后会跳出如下信息
图27.Memory测试成功测试
h.如果显示如上信息说明硬件测试成功。
|