目录

一、功能介绍

二、互连框图

2.1 FPD Main Switch

2.2 Cache一致性互连

2.2.1 Full Coherency

2.2.2 I/O Coherency

2.2.3 ACP Coherency

2.3 互连子模块

三、互连寄存器


一、功能介绍

PS互连由多个Switch组成,这些Switch通过高级可扩展接口(AXI接口)点对点连接系统资源,用于master口和slave口之间传输地址、数据以及响应事务。ARM的AMBA 4.0 interconnect实现了用于QoS、调试和测试监测的完整的互连通信功能。
PS互连基于AXI HP数据通道交换机,有以下功能:
    互连交换机是基于ARM NIC-400
    Cache一致性互连(CCI-400)
    系统内存管理单元(SMMU)允许使用虚拟地址
    两个电源域(FPD和LPD)的互连分离
    QoS服务支持更好的AXI事务处理
    AXI性能监测器(APM)能够收集事务指标
    AXI超时模块(ATB)挂载在互连上作为看门狗
    AXI隔离模块(AIB)负责将AXI/APB的主机和从机隔离,为它们的关闭行为做准备
    PS和PL之间有以下接口:
(1)S_AXI_HPC[0:1]_FPD和S_AXI_HP[0:3]_FPD:可以被PL端AXI主口访问的高性能AXI从口
(2)M_AXI_HPM0/1_FPD:低延迟的可以访问PL端AXI从口的AXI主口
(3)S_AXI_ACE_FPD:可以被PL端AXI主口访问的双向AXI一致性扩展口
(4)S_AXI_ACP_FPD:可以被PL端AXI主口访问的缓存一致性加速从口
(5)S_AXI_LDP:低功耗域内可以被PL端AXI主口访问的AXI从口
(6)M_AXI_HPM0_LPD:低功耗域内可以访问PL端AXI从口的AXI主口


二、互连框图

PS整体互连框图如下图,我们来详细介绍下。

2.1 FPD Main Switch

128位的FPD主开关是FPD主机和LPD从机(包括OCM和TCM)的top互连中的一个开关。该开关的主要作用为:(1)提供到OCM的直接路径(绕过LPD互连),可以使延迟最小并提高FPD到OCM的吞吐量(2)提供了一个单独的路径来访问FPD主机的LPD外设寄存器。

2.2 Cache一致性互连

Cache一致性互连(CCI)将部分的interconnect和coherence功能合并成一个块。它提供了以下接口:
(1)2个ACE从端口(用于完全一致性,上图的S3/S4)
(2)3个ACE-lite从端口(用于I/O一致性,上图的S0/S1/S2)
(3)2个ACE-lite主端口(用于DDR,上图的M1/M2)
(4)1个ACE-lite主端口(用于非DDR内存映射访问,上图的M0)。
(5)1个分布式虚拟内存消息接口(用于系统内存管理单元SMMU,上图的DVM)
互连框图里显示了CCI端口连接,CCI寄存器是全局映射的,可以从LPD访问。

2.2.1 Full Coherency

完全(双向)一致的主口可以监测彼此的缓存,为了在APU和PL之间共享更细粒度的数据,系统可以在PL中实现缓存,然后让APU监测PL缓存,同时PL也可以窥探APU的缓存。

2.2.2 I/O Coherency

I/O(单向)一致的主口可以通过CCI ACE-Lite从口监测APU缓存,当APU数据正在和I/O主口共享时,当APU缓存刷新时,可以避免实现额外的软件需求来实现一致性。
所有的PS主口,包括RPU(不包括全功率DMA控制器、DisplayPort和S_AXI_HP{0:3}_FPD PS主口),都可以选择配置为I/O一致性。
PS中有两个DMA,一个位于LPD中,另一个位于FPD中。FPD DMA没有到CCI的物理通路,不支持I/O一致性。LPD DMA有一个通过CCI到DDR控制器的替代路径,这允许它被标记为I/O一致性。

2.2.3 ACP Coherency

PL的主口一样可以通过APU的ACP端口去监测APU缓存,ACP访问还能被用于分配L2缓存。

2.3 互连子模块

PS互连有以下子模块:
(1)Xilinx内存保护模块,Xilinx memory protection unit,XMPU:FPD,OCM和DDR。
Xilinx内存保护模块(XMPU)为内存和FPD从口提供内存分片和TrustZone保护。
(2)Xilinx外设保护模块,Xilinx peripheral protection unit,XPPU。
Xilinx外设保护模块(XPPU)提供LDP外设隔离和IPI保护功能。可以通过配置XXPU来允许1个或多个主口访问LDP外设。
(3)系统内存管理模块,System memory management unit,SMMU。
系统内存管理单元(SMMU)为从口提供保护服务,并为I/O主口提供地址转换以识别超出其实际寻址能力的空间。在缺乏内存隔离的情况下,I/O器件会破坏系统内存,SMMU会提供设备隔离来防止DMA攻击。SMMU由译码控制单元(TCU)和多个译码缓冲单元(TBUs)组成。
(4)AXI超时模块,AXI timeout block,ATB,挂载在互连上作为看门狗。
AXI超时模块主要是为了确保互连不会因为没有响应而挂机卡死。该模块时刻监视跟踪着AXI上的事务,如果从口在设定的时间内不给主口响应,模块自身会产生一个响应给主口,防止互连因为等不到响应而挂死。超时模块的原理图如下,可以通过配置ATB_PRESCALE寄存器来设置超时值:
 
(5)AXI隔离模块,AXI and APB isolation block,AIB,负责将AXI/APB的主机和从机隔离,为它们的关闭行为做准备。
AXI隔离模块(AIB)负责将AXI/APB的主机和从机隔离,为它们的关闭行为做准备。AIB在隔离过程中管理AXI和APB接口,从而实现上电向断电状态的平稳过渡。AIB功能透明易懂,在正常事务期间零延迟。
(6)PS-PL之间的AXI接口
(7)AXI性能监视器,AXI performance monitor,APM。
AXI性能监控器(APM)在PS AXI互连的多个节点上收集实时事务度量指标来帮助系统软件分析实时活动。


三、互连寄存器

【Zynq UltraScale+ MPSoC解密学习10】Zynq UltraScale+的PS互连相关推荐

  1. 【Zynq UltraScale+ MPSoC解密学习1】Zynq UltraScale+的基本介绍

    目录 前言 Zynq UltraScale+是啥? 和Zynq-7000的比较 处理器 FPGA(PL) 其他(参考ug1085) Zynq U+的应用 前言 前言就是唠嗑. 接触Zynq已一年有余, ...

  2. 【Zynq UltraScale+ MPSoC解密学习7】Zynq UltraScale+的PMU

    转载地址:http://t.zoukankan.com/idyllcheung-p-12556956.html 一.简单介绍 1.1 概念 PMU,platform measurement unit, ...

  3. 【Zynq UltraScale+ MPSoC解密学习4】Zynq UltraScale+的APU

    目录 一.名词介绍 1.1 APU 1.2 ARM内核 1.3 ARM架构 1.4 ARM架构和内核的对应关系 二.A53和A9的比较 ​ 2.1 ARM架构升级 2.2 数据处理性能升级 2.3 安 ...

  4. 【ZYNQ Ultrascale+ MPSOC FPGA教程】第二十一章 PS端UART读写控制

    原创声明: 本原创教程由芯驿电子科技(上海)有限公司(ALINX)创作,版权归本公司所有,如需转载,需授权并注明出处. 适用于板卡型号: AXU2CGA/AXU2CGB/AXU3EG/AXU4EV-E ...

  5. 【ZYNQ Ultrascale+ MPSOC FPGA教程】第二十三章 PS端DP的使用

    原创声明: 本原创教程由芯驿电子科技(上海)有限公司(ALINX)创作,版权归本公司所有,如需转载,需授权并注明出处. 适用于板卡型号: AXU2CGA/AXU2CGB/AXU3EG/AXU4EV-E ...

  6. 嵌入式开发之zynqMp ---Zynq UltraScale+ MPSoC 图像编码板zcu102

    嵌入式开发之zynqMp -Zynq UltraScale+ MPSoC 图像编码板zcu102 1.1 xilinx zynqMp 架构 1.1.1 16nm 级别工艺 Zynq UltraScal ...

  7. ZYNQ UltraScale+ MPSoC OpenAMP 2018.3

    ZYNQ OpenAMP 2018.3 ​ 本文只是对 UG1186 "入门指南"的补充和阐明(适用于 Zynq UltraScale+ MPSoC.) 目录 ZYNQ OpenA ...

  8. ultrascale和arm区别_ZYNQ UltraScale+ MPSoc FPGA初学笔记

    前言 最近要做新的设计用到Xilinx ZYNQ UltraScale+ MPSoc系列的芯片.文档看到吐,阅读间隙和妹子聊天,还被吐槽太闲.人生不易,我决定把近几日所学,整理成一篇文章,让大家少走点 ...

  9. 5、赛灵思-Zynq UltraScale+ MPSoC学习笔记:Petalinux 的设计流程及定制Linux系统

    5.赛灵思-Zynq UltraScale+ MPSoC学习笔记:Petalinux 的设计流程及定制Linux系统 声明:本文是学习赛灵思 Zynq UltraScale+ MPSoC 5EV过程中 ...

  10. 米尔电子zynq ultrascale+ mpsoc底板外设资源清单分享

    米尔电子推出的国内首款zynq ultrascale+ mpsoc平台核心板(及开发板):MYC-CZU3EG吸引了人工智能.工业控制.嵌入式视觉.ADAS.算法加速.云计算.有线/无线通信等应用行业 ...

最新文章

  1. 微信小程序导航栏设置透明
  2. python下载大文件-python-Django:允许用户下载大文件
  3. C++图形着色graph coloring算法(附完整源码)
  4. 知识管理系列---3.程序实现
  5. 第7章-2、INTEL8086处理器的寻址方式-1.1h
  6. oracle存储过程id递增,oracle存储过程——按id更新相关信息
  7. unity, itween, closed path
  8. 跨域小结(为什么form表单提交没有跨域问题,但ajax提交有跨域问题)
  9. mysql查询分数前三个_MySQL中查询获取每个班级成绩前三名的学生信息
  10. 计算机里保存文件时没有桌面,电脑在保存文件时桌面怎么不见了怎么办
  11. html 6位数支付密码,支付宝支付密码怎么设置长密码 支付宝支付密码取消6位数字密码设置长密码的方法...
  12. 【改写历史】--历史谁书写?谁将改写历史?
  13. 2015年12月学习计划
  14. 2011考研数学二第(11)题——第一类曲线积分球弧长
  15. 用python画漂亮的图案-使用 Python Turtle 设计简单而又美丽的图形
  16. tomcat守护进程
  17. step7注释乱码问题解决
  18. 华师大 OJ 2822
  19. IT培训行业揭秘(五)
  20. ACM_置换群 burnside引理 Polya定理

热门文章

  1. https 抓包解密
  2. 计算机控制系统信号的采样,计算机控制系统-信号采样与分析演示.ppt
  3. gif一键抠图 在线_不用下载的在线抠图软件哪里找?
  4. windows禅道环境搭建
  5. 解码平安:如何成为世界级综合金融集团
  6. 共享单车数据集_共享单车数据的数据可视化
  7. 程序员的自我修养 -- 读书笔记
  8. 【致远FAQ】A6+Cloud__V1.0_A6+cloud的M3端地址保存提示:not found
  9. 缺少计算机所需的介质驱动程序6,缺少计算机所需的介质驱动程序解决办法
  10. mysql添加字段语句_mysql增加字段 mysql数据库更新字段语句