背景:FPGA的片上单片机(PS:processor),在FPGA中起重要作用。在我们所有的设计流程中反复涉及PS。
目的:查阅相关资料我们了解PS的相关知识。
查阅资料,Zynq HW 2013.3 Slides
目录
1.2、SCU:snoop control unit窥探控制单元
1.3、ACP(accelerator coherency port)
1.4、NEON processing与FPU engine
一、概览
了解片上PS,片上处理器由下面几个部分组成:处理器,外设,内存,AXI总线。
对我们来说较为重要的是AXI总线,因为AXI总线连接了PS与PL(Programmable logic,可以认为是IPcore或者FPGA板子)
1.1、Cache
cache分L1 cache和L2 cache,其中L1 cache分为 I-chcahe与D-cache
L2 cache 为512K,它有一些重要的接口:
- AXI-M(主接口) 用于DDR控制器
- AXI-M(主接口)用于PS与PL中所有的slave device(从设备)
- AXI-S(从接口slave interface)用于SCU(snoop control unit窥探控制单元)
1.2、SCU:snoop control unit窥探控制单元
1.3、ACP(accelerator coherency port)
1.4、NEON processing与FPU engine
关于FPU,参考UG585
1.5、AP soc时钟生成模式
这点对于我们影响较多,生成的时钟被用于CPU,DDR,PL和所有外设。
PS_CLK一般为30-60MHz,四个普通的时钟线路可以用于PL
1.6、DDR内存接口
支持16bit和32bit的DDR数据总线宽度
1.7、PS与PL之间的接口
4个GP,4个HP和1个ACP
二、PS设定
在vivado通过系统集成,然后创建高层的HDL(硬件描述语言Hardware Description Language),然后输出到SDK,SDK根据相应的HDL生成BSP,通过生成的BSP创建相应的SW app,变为ELF送入FPGA板子。
2.1 EMIO
的作用:提供PL与PL的IO口与PS peripheral的连接
2.2 IO peripherals
软件中configuration的顺序按照重要性来列,上面的通常先使能。
2.3 DDR
接口的速度可以在clock configuration和DDR configuration窗口被设定。
2.4 DDR3的最大速率为533MHz
三、Zynq-7000的外设
不同的外设连在不同的接口上,例如有MIO,EMIO,下面为他们连接的分类。
vivado也会自动的根据子系统分配PL外设地址。OCM为片上存储器,On-Chip Memory