ZYNQ架构及ZYNQ芯片

zynq架构
双核arm cortex-a9 处理器:arm cortex-a9 是一个应用级的处理器,能运行完整的像linux 这样的操作系统
传统的现场可编程门阵列(field programmable gate array,fpga)逻辑部件:基于xilinx 7 系列的fpga 架构
这个架构实现了工业标准的axi 接口,在芯片的两个部分之间实现了高带宽、低延迟的连接。
这意味着处理器和逻辑部分各自都可以发挥最佳的用途,而不会有在两个分立的芯片之间的那种接口开销。
外设是处理器之外的功能部件,一般从事三种功能之一:(一)协处理器—— 辅助主处理器的单元,往往是被优化用于特定任务;(二)与外部接口交互的核心,如连接到led 和开关、编解码器等等;(三)额外的存储器单元。
ps 具有固定的架构,承载了处理器和系统存储区
而pl 完全是灵活的,给了设计者一面“ 空白画布” 来创建定制的外设,或重用标准外设。
zynq的soc设计流基本模型
zynq芯片
处理器系统(ps)
arm是一颗“硬”处理器,硬件处理器以外的另一种方案,就像xilinx 的microblaze这样的“软”处理器,这是由可编程逻辑部分的单元组合而成的。也就是说,一个软处理器的实现和部署在fpga 的逻辑结构里的任何其他ip 包是等价的。要求不高的任务可以从主的arm cortex-a9 处理器上脱离出来,分配给软处理器,软处理器与arm协同工作,提升整体性能
ps里并非只有arm 处理器,还有一组相关的处理资源,形成了一个应用处理器单元(application processing unit,apu),另外还有扩展外设接口、cache 存储器、存储器接口、互联接口和时钟发生电路
处理器系统外部接口——ps 和外部接口之间的通信主要是通过复用的输入/ 输出(multiplexed input/output,mio)实现的。这样的连接也可以通过扩展emio (extendedmio,emio)来实现,emio 并不是ps 和外部连接之间的直接通路,而是通过共用了pl 的i/o 资源来实现的。
可用的i/o 包括标准通信接口(spi,i2c,usb,sd,can,uart,gige)和通用输入/ 输出(general purpose input/output,gpio)
可编程逻辑(ps)
lut-查找表(https://www.cnblogs.com/lbf-19940424/p/6564885.html)
ff-触发器,一个实现1 位寄存的时序电路,带有复位功能。ff 的一种用处是实现锁存。
clb-可配置编程逻辑块
iob-输入/ 输出块(input/output blocks,iob)-实现了pl 逻辑资源之间的对接,并且提供物理设备“ 焊盘” 来连接外部电路。每个iob 可以处理一位的输入或输出信号。iob 通常位于芯片的周边。
除了通用的部分,还有两个特殊用途的部件:满足密集存储需要的块ram 和用于高速算术的dsp48e1 片
通用输入输出iob
通信接口--包括pciexpress、串行rapidio、scsi 和sata
其他可编程逻辑扩展接口--xadc,时钟,编程与调试
处理器系统与可编程逻辑的接口
1、axi标准--advanced extensible interface
有三类axi4总线协议
• axi4 [2] — 用于存储映射链接,它支持最高的性能:通过一簇高达256 个数据字(或“ 数据拍(data beats)”)的数据传输来给定一个地址。
• axi4-lite [2] — 一种简化了的链接,只支持每次连接传输一个数据(非批量)。axi4-lite也是存储映射的:这种协议下每次传输一个地址和单个数据。
• axi4-stream [1] — 用于高速流数据,支持批量传输无限大小的数据。没有地址机制,这种总线类型最适合源和目的地之间的直接数据流(非存储器映射)
互联(interconnect) — 互联实际上是一个开关,管理并直接传递所连接的axi 接口之间的通信。在ps 内有几个互联,其中有些还直接连接到pl (如图2.9),而另一些是只用于内部连接的。这些互联之间的连接也是用axi 接口所构成的。
接口(interface) — 用于在系统内的主机和从机之间传递数据、地址和握手信号的点对点连接。(m-主机,s-从机)
• 通用axi(general purpose axi) — 一条32 位数据总线,适合pl 和ps 之间的中低速通信。接口是透传的不带缓冲。总共有四个通用接口:两个ps 做主机,另两个pl 做主机。
• 加速器一致性端口(accelerator coherency port) — 在pl 和apu 内的scu之间的单个异步连接,总线宽度为64 位。这个端口用来实现apu cache 和pl的单元之间的一致性。pl 是做主机的。
• 高性能端口(high performance ports) — 四个高性能axi 接口,带有fifo缓冲来提供“ 批量” 读写操作,并支持pl 和ps 中的存储器单元的高速率通信。数据宽度是32 或64 位,在所有四个接口中pl 都是做主机的。
表 2.2 给出给出了每个接口的简述,标出了主机和从机 (按照惯例,主机是控制总线并发起会话的,而从机是做响应的)。注意接口命名的规范(在表 2.2 的第一列)是表示了 ps 的角色的,也就是说,第一个字母 “m” 表示 ps 是主机,而第一个字母 “s” 表示 ps 是从机。
2、emio接口
3、其他pl-ps信号
跨越ps-pl 边界的其他信号包括看门狗定时器、重启信号、中断和dma 接口信号。
安全
总结
附议:
本人觉得除了整体架构的创新,灵活的io也是zynq成为受欢迎的一部分:
multiplexed i/o (mio):ps端外设io复用,这是什么概念呢?前面介绍了zynq主要分ps/pl两大组成模块,ps端前面介绍的外设如usb/can/gpio/uart等都必要需要引脚与外界打交道,这里所谓的复用与常见的单片机、处理器里引脚复用的概念一样。 但是(这里划重点),zynq具有高达54个ps引脚支持mio,mio具有非常高的灵活度以达到灵活配置,这给硬件设计、pcb布板带来了极大的便利!,mio的配置利用vivado软件可以实现灵活配置,如下图所示。
硬件工程师往往发现对一个复杂的系统的布局布线,常常会很困难,也常因为不合理的布局布线而陷入emc深坑。zynq的io引脚高度灵活性,无疑在电路设计方面提供极大的方便,可实现非常灵活的pcb布局布线。从而在emc性能改善方面带来了很大便利。
灵活的ps-pl互连接口
extended multiplexed i/o (emio) :扩展mio,如果想通过ps来访问pl又不想浪费axi总线时,就可以通过emio接口来访问pl。54个i/o中,其中一部分只能用于mio,大部分可以用于mio或emio,少量引脚只能通过emio访问。
如上图,比如i2c0则可以通过emio映射到pl端的引脚输出,这无疑又增加了更多的灵活性!
ps-pl接口hp0-hp3:如上架构图中axi high-performance slave ports (hp0-hp3) 实现了ps-pl的接口
可配置的32位或64位数据宽度
只能访问片上存储器ocm(on chip memory)和ddr
axi fifo接口(afi)利用1kb fifos来缓冲大数据传输
ps-pl接口gp0-gp1:如上架构图中axi general-purpose ports
两个ps主接口连接到pl的两个从设备
32位数据宽度
一个连接到cpu内存的64位加速器一致端口(acp)axi从接口,acp 是 scu (一致性控制单元)上的一个 64 位从机接口,实现从 pl 到 ps 的异步 cache 一致性接入点。acp 是可以被很多 pl 主机所访问的,用以实现和 apu 处理器相同的方式访问存储子系统。这能达到提升整体性能、改善功耗和简化软件的效果。acp 接口的表现和标准的 axi 从机接口是一样的,支持大多数标准读和写的操作而不需要在 pl 部件中加入额外的一致性操作。
dma, 中断, 事件信号:
处理器事件总线信号事件信息到cpu
pl外设ip中断到ps通用中断控制器(gic)
四个dma通道rdy/ack信号
扩展多路复用i/o (emio)允许ps外设端口访问pl逻辑和设备i/o引脚。
时钟以及复位信号:
四个ps时钟带使能控制连接到pl
四个ps复位信号连接到pl


百亿负债重压金立,债券违约给重组再披“阴影”
vivoX9拆解探究:不单用料足,竟然还支持生活防水?
浙江电信助力提升车间生产效率
自制临时电源,dc 6v to 220v converter
基于光纤通信交互式远方自投装置的研发与应用
ZYNQ架构及ZYNQ芯片
洲明斩获2020金手指奖LED显示、智慧路灯两项大奖
虚拟现实技术构建火灾仿真场景让你体验火灾逃生
如何用电容来进行一个储能和滤波的作用?
共识算法是由谁推进演变的
世界冠军级FPV飞手和「人工智能AI」比飞飞机,谁赢了?
led工矿灯有什么优点
据英国汽车杂志,宝马X2的专利申报图近日曝光
支持802.11a/b/g/n/ac的5G WiFi模块介绍
宝马将与德企Duesenfeld合作回收利用96%的电动汽车电池
!销售/收购/维修HP8970B噪声系数仪HP8970B 小
聊聊关于pcb线路板镀金厚度
数字增强型高速ADC用于低功耗无线应用
RC Snubber吸收电路原理详解
音视频技术塔尖之争 网易云信如何C位出道