基于Xilinx Zynq UtralScale+(MPSoC)ZCU102嵌入式评估板实现多个UIO开发并完成测试的实验

基于Xilinx Zynq UtralScale+(MPSoC)ZCU102嵌入式评估板实现多个UIO开发并完成测试的实验,第1张

当下最火的是AI,Machine Learning, Embedded Vision。FPGA老酒新装,在这个圈子里也可以掺和掺和。而谈到linux,这里从事传统嵌入式开发的朋友不在少数,八成都在谋求转型,寻个风口。急人所求,本篇软文以一个简单的实例来介绍一下FPGA的嵌入式linux里应用。隐去过多设计细节,重过程体验。新客们可以看个热闹,FPGA老玩家可以就此贵安。

本实验工程利用Xilinx Zynq UtralScale+(MPSoC)ZCU102嵌入式评估板上实现多个UIO,借助Xilinx的工具完成硬件工程和linux BSP的开发,最后通过测试应用程序完成测试。

ZCU102上的MPSOC集成固化了四核ARMCortex-A53,双核Cortex-R5以及Mali-400 MP2 GPU,这部分官方称为PS(processor system)。另外一部分就是FPGA,即PL(programming logical)。PS端实现控制,PL用来实现应用加速,两者通过AXI连接。跑这个小实验,呵呵,大材小用。只是本人手头正好有这个板子不得不装。筒子们可以去买了个ZYBO, ZED的板子试试身手。

实验报告

实验人员:
实验时间:
实验材料:

Xilinx Vivado 2017.2

硬件工程设计工具

有免费版本

Petalinux 2017.2

Linux BSP开发工具(基于yocto)

免费

ZCU102 EVB final v1.0

高端开发板一枚

收费,贵

PC

电脑一台

要快一点,空间大一点

硬件设计
建立Vivado工程,适配ZCU102 EVB。通过IP Integrator加入PS,在PL侧加入5个UIO输入,其中1个是GPIO模块(包含中断输出和设备内存),另外4个是PIN连接到ZCU102 EVB上的DIP开关,作为中断输入通过一个concat IP连接到PS的ps_pl_irq管脚。

板级细节请参考[1]UG1182,芯片资料参考[2]UG1085

IRQ source

Trigger type

IRQ number

Board Info

pl_irq_er

edge rising

121

SW13.8, DIP0

pl_irq_ef

edge falling
122
SW13.7, DIP1
pl_irq_lh

level high

123

SW13.6, DIP2

pl_irq_ll

level low
124

SW13.5, DIP3

axi_gpio_1

N/A

125

写好约束文件,

基于Xilinx Zynq UtralScale+(MPSoC)ZCU102嵌入式评估板实现多个UIO开发并完成测试的实验,基于Xilinx Zynq UtralScale+(MPSoC)ZCU102嵌入式评估板实现多个UIO开发并完成测试的实验,第2张


set_property PACKAGE_PIN AN13 [get_ports pl_irq_ll]
set_property IOSTANDARD LVCMOS33 [get_portspl_irq_ll]
set_property PACKAGE_PIN AM14 [get_ports pl_irq_lh]
set_property IOSTANDARD LVCMOS33 [get_portspl_irq_lh]
set_property PACKAGE_PIN AP14 [get_ports pl_irq_ef]
set_property IOSTANDARD LVCMOS33 [get_portspl_irq_ef]
set_property PACKAGE_PIN AN14 [get_ports pl_irq_er]
set_propertyIOSTANDARD LVCMOS33 [get_ports pl_irq_er]

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/dianzi/2598925.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-08-09
下一篇 2022-08-09

发表评论

登录后才能评论

评论列表(0条)

保存