pl到ps的中断资源分为两组,第一组的中断号为61-68;第二组的中断号为8-15.中断号分别是61-68,和84-91。一旦PL这边有触发信号产生,就能够进入PS端设置的中断函数内,在中断函数中我们执行这条中断线上对应的任务。 GIC(Generic Interrupt Controller)是一种集中式资源,是中断与CPU之间的桥梁,同时也是各CPU之间...
注册中断处理程序:通过调用Xil_ExceptionRegisterHandler函数来注册中断处理程序。当中断发生时,PS部分会调用这个处理程序来响应中断。 连接中断源到GIC:通过调用XScuGic_Connect函数将PL部分的中断源连接到GIC上。这样,当PL部分触发中断时,GIC就能够识别并分发这个中断。 设置中断触发类型和优先级:通过调用XScuGic_SetPriTri...
主函数,比较简单明了,完成串口初始化和串口中断初始化,等待中断触发,进入中断处理函数完成串口收发操作等。 三、ps-pl共享axilite设计框架 在Block Design中分别添加几个模块,zynq处理器,处理器复位模块以及axi协议转换和axi互联模块,下图中的pl_uart与pl侧串口的axilite的Master实现对user_axilite的读写访问。zynq处...
PL和PS之间的中断有: 两个CPU都具有各自16个软件中断,CPU可以中断自己,也可以中断其他CPU,上升沿触发,不可修改 CPU的私有中断,这些中断都是固定死的,不能修改: 从PL来的中断先反转然后送到中断控制器,所以触发类型变成active low了。 共享中断就是一些端口共用一个中断请求线, PL部分有16个共享中断,他们的触发...
打开顶层文件,加一个非门(因为PS这边貌似只支持上升沿中断和高电平中断) 在约束文件里面添加触发IRQ的引脚(这里用的是KEY4,HDMI座子旁边的那个按键) 执行生成位文件 结束之后将原来的SDK目录删掉 重新导入硬件和位文件之后打开SDK 将该文件夹拷贝到Ubuntu的里 ...
ARM和FPGA的交互是这个芯片最重要的部分,PL和PS的交互使用中断是较为快捷的方法,本文使用bram存储数据并通过外部pl端发出中断通知ps端读写数据。程序思路是按键产生中断,按键是直接连到pl端的,驱动产生异步通知,应用开始往BRAM写数据,然后再读取数据(阻塞读取),均打印出来比较 ...
1 中断概念 中断学习 2 ZYNQ 中断框图 上图为 zynq 中断分布框图。可以看到部分 PL 到 PS 部分的中断,经过中断控制分配器(ICD), 同时进入 CPU1 和 CPU0。查询下面表格,可以看到 PL 到 PS 部分一共有 20 个中断可以使用。4 个快速中断(PPI),即 IRQF2P[19:16];16 个共享中断(SPI),即 IRQF2P[7:0]...
Zynq PS 和 PL 通过以下接口互连: 两个32 位主 AXI 端口(PS 主) 两个32 位从 AXI 端口(PL 主) 四个32/64 位从机高性能端口(PL 主机) 1个 64 位从加速器一致性端口 (ACP)(PL 主控) 从PS 到 PL 的四个时钟 PS 到 PL 中断 PL 到 PS 中断 ...
学会Zynq(8)PL中断示例(SPI) PL中断 双核Zynq中共有20个PL到PS的中断。IRQF[15:0]是16个共享外设中断(SPI),可配选择上升沿触发或高电平触发,中断号为61-68和84-91。 另外还有4个私有外设中断(PPI)IRQF2P[19:16],每个CPU都有一个来自PL的FIQ(快速中断)和IRQ,其中断敏感类型固定。