Xilinx嵌入式设计
本文主要介绍如何创建AXI IP核,如何使用ZYNQ IP核进行嵌入式设计,如何创建Block Design,如何对嵌入式工程进行下载测试。
1 创建AIX IP核
- 新建工程intlk_cplr。
- 点击Tools→Create and Package New IP→Next→选择Create a new AXI4 peripheral,Next→输入相关信息,名称为intlk,IP位置放到工程文件夹下,Next→这里显示了AXI总线接口的名字,接口是Slave, 数据位宽为32位,IP寄存器设置6个,Next→ Finish。
- Flow Navigator→IP Catalog,打开IP Catalog界面,在User Repository/AXI Periphera下可以找到intlk_v1.0,此时这个IP还不具备任何功能。右键intlk_v1.0选择Edit in IP Packager→OK,会创建新的工程。
- 导入之前的源文件intlk_single和intlk_top,记得勾选复制文件到文件夹,复制的文件在intlk_cplr/ip_repo/intlk_1.0/src下,AXI文件在intlk_cplr/ip_repo/intlk_1.0/hdl下。
- 双击intlk_v1_0_S000_AXI_inst文件,在下图位置添加端口定义和自定义程序。注释掉226行到294行中对寄存器1-5的写操作,寄存器0的默认值改为1,注意时钟。
- 双击顶层文件intlk_v1_0打开,在下图位置添加管脚端口定义。
- 综合一下,检查是否有错误。
- 更新IP核:Sources→Design Sources→IP-XACT→component.xml。
- 选择前面没有打勾的Ports and Interfaces,点击Merge changes from Ports and Interfaces Wizard更新端口。
- 选择前面没有打勾的File Groups,点击Merge changes from File Groups Wizard更新文件。
- 选择Review and Package,点击Re-Package IP结束IP核的设置,关闭IP核的工程。
2 创建系统工程
- 点击IP INTEGRATOR→Create Block Design新建程序框图intlk_cplr。
- 点击①,在弹出的窗口中输入zynq,添加ZYNQ7 Processing System IP核,双击IP核进行设置(黑金ZYNQ-7020板卡)。
- Peripheral I/O Pins
- Bank 0选择LVCMOS 3.3V,Bank 1选择LVCMOS 1.8V
- 勾选Quad SPI Flash,选择Single SS 4bit IO,端口为MIO1-6。
- 勾选Ethernet 0,端口为MIO16-27。勾选MDIO,端口为MIO52-53。
- 勾选SD 0,端口为MIO40-45。勾选Card Detect,端口为MIO47。
- 勾选UART 1,端口为MIO48-49。
- MIO Configuration
- 将I/O Peripheral→Enet 0的IO Type改为HSTL 1.8V。Speed改为fast。
- Clock Configuration
- 默认输入时钟33.33MHz,CPU时钟666.67MHz,PL时钟50MHz。
- DDR Configuration
- DDR Controller Configuration/Memory Part选择MT41J256M16 RE-125。
- Peripheral I/O Pins
- 点击①,添加intlk IP核。选中输入输出引脚,右键选择Make External进行输出,输出引脚的名称可在左侧的External Port Properties中进行修改。如果后面有修改IP核的程序,需要右键intlk_cplr选择Report IP Status,更新IP核。
- 点击Run Block Automation进行自动连线。点击②按钮优化布局,点击③调整页面。选择Address Editor标签,展开processing_system7_0,可查看寄存器的起始地址为0x43C0_0000,写驱动程序的时候需要用到。
- 保存设置,点击④验证设计。
- 生成输出文件:Sources→Design Sources→右键intlk_cplr→选择Generate Output Products→Generate。弹出Generate Output Products对话框,表明开始产生设计文件,点击OK。窗口右上角表明正在运行,运行完后显示Ready。
- 生成封装:Sources→Design Sources→右键intlk_cplr→选择Create HDL Wrapper。
- 创建约束文件
3 程序下载测试
- 综合、实现、生成Bitstream。
- 点击File→Export→Export Hardware导出硬件信息,勾选Include bitstream→OK。
- 点击File→Launch SDK启动SDK。
- 点击File→New→Application Project,输入工程名点击Next,模版选择Hello World→Finish,
- 右键工程名选择Rus As→Run Configurations,选中Xilinx C/C++ application (System Debugger)→点击新建→勾选Reset entire system→Run。