参考简易寄存器接口SMMR.csdn8位CPU设计n8_cpu.csdnZynq AXI-Lite 总线原理与实现.csdn高级外设总线APB.csdn一、目标PL 导出1 个中断引脚和1 个调试引脚。PS 通过 AXI 接口连续向 PL 写入64 个u32数据。PL 在接收到第一个写数据时拉高调试引脚在接收到最后一个写数据时拉低调试引脚用于测量PS→PL 写传输耗时。PL 收到全部数据后对每个数据执行1运算并产生中断通知 PS。PS 响应中断后连续读取全部 64 个数据。PL 在响应第一个读数据时拉高调试引脚在响应最后一个读数据时拉低调试引脚用于测量PL→PS 读传输耗时。PS 对读取结果进行一致性校验验证 PL 数据处理是否正确。在相同测试条件下分别采用AXI4-Lite与AXI4-Full实现上述功能对比两种接口在读写传输效率及总线事务特性上的差异。关注点PS → PL 写传输耗时GPIOPL → PS 读传输耗时GPIO数据一致性校验结果AXI4-Lite 与 AXI4-Full 的性能对比二、寄存器映射整个 IP 共使用17 个u32寄存器。地址索引名称属性说明0CTRL_STATUSR/W控制与状态寄存器1~65DATAxR/W64个数据寄存器三、CTRL_STATUS 寄存器定义Bit属性名称说明0ROBUSY1PL 正在处理数据0空闲。1RODONE164 个数据处理完成0未完成。2RWIRQ_EN1使能处理完成中断0禁止中断。3W1CIRQ_CLR写1清除DONE标志及中断请求写0无效。31:4ROReserved保留固定读取为0。四、数据处理流程PS │ 写 DATA0 ~ DATA63 │ ▼ PL │ 第一个写数据 → GPIO High │ 接收全部 64 个数据 │ 最后一个写数据 → GPIO Low │ DATA[i] DATA[i] 1 │ DONE 1IRQ 1 │ ▼ PS │ 响应中断 │ 连续读取 DATA0 ~ DATA63 │ ▼ PL │ 第一个读数据 → GPIO High │ 最后一个读数据 → GPIO Low │ ▼ PS │ 校验数据并写 IRQ_CLRBD