0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

浅谈ZYNQ芯片架构解析

电子工程师 ? 来源:CSDN技术社区 ? 作者:嵌入式客栈 ? 2021-04-28 10:18 ? 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

基于 ZYNQ 实现复杂嵌入式系统非常便利,其应用领域也越来越广泛,本文来从对 ZYNQ 芯片架构的理解来谈谈个人体会。

20210107111207154.gif

ZYNQ 主要由两大部分组成:

处理系统 PS(Processing System):

上图左上部分即是 PS 部分,包括:

同构双核 ARM Cortex A9 的对称多处理器 (Symmetric Multi-Processing,SMP)

丰富的外设,2×SPI,2×I2C,2×CAN,2×UART,2×SDIO,2×USB,2×GigE,GPIO

静态存储控制器:Quad-SPI,NAND,NOR

动态存储控制器:DDR3,DDR2,LPDDR2

编程逻辑 PL(Programmable logic):兼容赛灵思 7 系列 FPGA

基于 Artix?的芯片:Z-7010 以及 Z-7020

基于 Kintex?的芯片:Z-7030 以及 Z-7045

ZYNQ 处理系统端 PS 所有的外设都连接在 AMBA(Advanced Microcontroller Bus Architecture)总线,而基于 FPGA 设计的 IP 则可以通过 AXI 接口挂载在 AMBA 总线上,从而实现内部各组件的互联互通。这里涉及到两个概念:

AMBA 总线,熟悉 ARM 架构的朋友应该都大致了解, AMBA 是 ARM 公司的注册商标。是一种用于片上系统(SoC)设计中功能块的连接和管理的开放标准片上互连规范。它促进了具有总线结构及多控制器或组件的多核处理器设计开发。自成立以来,AMBA 已广为应用,远远超出了微控制器设备领域。如今,AMBA 已广泛用于各种 ASIC 和 SoC 部件,包括在现代便携式移动设备中使用的应用处理器。

高级可扩展接口 AXI(Advanced eXtensible Interface):是 ARM 公司 AMBA 3.0 和 AMBA 4.0 规范的一部分,是并行高性能,同步,高频,多主机,多从机通讯接口,主要设计用于片上通讯。为啥说 AXI 是 AMBA 的一部分,看看下面两个图就可以比较清晰的了解。

20210107111208749.gif

20210107111208162.gif

ZYNQ 的高度灵活性

灵活的 PS 端 IO 复用

Multiplexed I/O (MIO):PS 端外设 IO 复用,这是什么概念呢?前面介绍了 ZYNQ 主要分 PS/PL 两大组成模块,PS 端前面介绍的外设如 USB/CAN/GPIO/UART 等都必要需要引脚与外界打交道,这里所谓的复用与常见的单片机、处理器里引脚复用的概念一样。但是(这里划重点),ZYNQ 具有高达 54 个 PS 引脚支持 MIO,MIO 具有非常高的灵活度以达到灵活配置,这给硬件设计、PCB 布板带来了极大的便利!,MIO 的配置利用 vivado 软件可以实现灵活配置,如下图所示。

20210107111208109.gif

硬件工程师往往发现对一个复杂的系统的布局布线,常常会很困难,也常因为不合理的布局布线而陷入 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 访问。

20210107111208432.gif

如上图,比如 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

灵活的时钟系统

PS 时钟源:

PS 端具有 4 个外部时钟源引脚

PS 端具有 3 个 PLL 时钟模块

PS 端具有 4 个时钟源可输出到 PL

PL 端具有 7 个时钟源

PL 端时钟源域相对 PS 端不同

PL 端时钟可灵活来自 PL 端外部引脚,因为 FPGA 的硬可编程性,完全灵活配置

也可使用 PS 端的 4 个时钟源

注意

PL 和 PS 之间的时钟同步是由 PS 端处理

PL 不能提供时钟给 PS 使用

丰富的 IP 库

Zynq 是一种 SoC,具有大量的标准 IP,这些部件不再需要重新设计而直接可用。以这样的方式提升了设计抽象层级,加上重用预先测试和验证过的部件,开发将被加速,而成本则可以降低。就像常说的:“ 为什么要重新发明轮子呢?”。

Vivado 内置了大量的 IP 可供使用,比如数学计算 IP,信号处理 IP、图像视频处理 IP,通信互连(以太网、DDS、调制、软件无线电、错误校验)、处理器 IP(MicroBlaze 等)、甚至人工智能算法 IP。

比如信号处理 IP,由于采用 FPGA 硬逻辑实现信号处理无需 CPU 计算,对于实现复杂的信号运算(比如实现一个非常高阶的 FIR 滤波、多点 FFT 计算)具有非常大优势。

20210107111208327.gif

双 ARM 硬核处理器

如架构图,ZYNQ 内置了双 ARM Cortex-A9 硬核,对软件设计提供了极大的灵活性,在该处理器上可运行 LinuxAndroid 等复杂的操作系统,相比常规 FPGA 嵌软核 IP 的做法具有更强大的运算处理能力,你可能会说其处理器的运算能力相比时下的其他 ARM 芯片或稍有不足,但基本能满足常规的医疗、工业领域等嵌入式系统应用需求。

PL/PS 的有机结合

通过前面的简要分析介绍,不难发现 PL 可编程硬件逻辑及处理器单元的结合做的非常好。

PL 端:可设计出高灵活的外设系统,同时可编程硬件逻辑电路,可实现真正的硬并行处理、硬实时系统

PS 端:PL 端与 PS 的有机结合,有可实现对这种高灵活、硬并行、硬实时处理系统实现集中软件管理

试想,如果一个系统需要实现硬实时、硬并行,复杂外设互连系统:

或许会采用多微控制器(比如单片机)+处理器方案,微处理器实现实时需求,处理器运行 Linux 实现上层业务逻辑的方式。

或者采用 FPGA+处理器来实现。

这两种方案技术复杂度都非常高,硬件电路 PCB 设计比较复杂,软件开发以及维护也会增加复杂度。而 ZYNQ 则可以很好的解决此类系统设计需求,真正做到 system on chip,这也是 SOC 的一个很好的体现。

总结一下

ZYNQ 这种高度灵活性,丰富的外设,丰富的 IP 库,以及 vivado 强大易用的开发环境,对使用 ZYNQ 进行嵌入式系统设计带来了非常多优势。
编辑:lyn

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式系统
    +关注

    关注

    41

    文章

    3686

    浏览量

    131598
  • 处理系统
    +关注

    关注

    0

    文章

    93

    浏览量

    16973
  • 存储控制器
    +关注

    关注

    0

    文章

    24

    浏览量

    9364
  • Zynq芯片
    +关注

    关注

    0

    文章

    3

    浏览量

    1791
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    【PZ-ZU15EG-KFB】——ZYNQ UltraScale + 异构架构下的智能边缘计算标杆

    璞致电子推出PZ-ZU15EG-KFB异构计算开发板,搭载Xilinx ZYNQ UltraScale+ XCZU15EG芯片,整合四核ARM Cortex-A53、双核Cortex-R5F
    的头像 发表于 07-22 09:47 ?151次阅读
    【PZ-ZU15EG-KFB】——<b class='flag-5'>ZYNQ</b> UltraScale + 异构<b class='flag-5'>架构</b>下的智能边缘计算标杆

    GPU架构深度解析

    GPU架构深度解析从图形处理到通用计算的进化之路图形处理单元(GPU),作为现代计算机中不可或缺的一部分,已经从最初的图形渲染专用处理器,发展成为强大的并行计算引擎,广泛应用于人工智能、科学计算
    的头像 发表于 05-30 10:36 ?463次阅读
    GPU<b class='flag-5'>架构</b>深度<b class='flag-5'>解析</b>

    ip6806芯片的详细参数解析

    本文深入解析了英集芯IP6806无线充电发射端控制芯片的技术细节,包括其基础架构、核心参数、功能特性、应用场景以及智能控制和安全防护功能。其输入电压范围宽,输出功率高,效率高,过压、过流、过温保护机制完善,兼容性强。
    的头像 发表于 05-10 09:03 ?602次阅读
    ip6806<b class='flag-5'>芯片</b>的详细参数<b class='flag-5'>解析</b>

    解锁未来汽车电子技术:软件定义车辆与区域架构深度解析

    解锁未来汽车电子技术:软件定义车辆与区域架构深度解析 ——立即下载白皮书,抢占智能汽车发展先机 *附件:解锁未来汽车电子技术:软件定义车辆与区域架构深度解析.pdf 为什么这份白皮书值
    的头像 发表于 04-27 11:58 ?635次阅读

    NVIDIA Blackwell数据手册与NVIDIA Blackwell架构技术解析

    NVIDIA Blackwell数据手册与NVIDIA Blackwell 架构技术解析
    的头像 发表于 03-20 17:19 ?859次阅读

    从零开始驯服Linux(一):ZYNQ-Linux启动文件构建全解析

    本帖最后由 jf_85110202 于 2025-3-20 17:42 编辑 从零开始驯服Linux(一):ZYNQ-Linux启动文件构建全解析 ZYNQ系列芯片集成了ARM
    发表于 03-20 16:48

    芯片架构设计的关键要素

    芯片架构设计的目标是达到功能、性能、功耗、面积(FPA)的平衡。好的芯片架构能有效提升系统的整体性能,优化功耗,并确保在成本和时间的限制下完成设计任务。
    的头像 发表于 03-01 16:23 ?684次阅读

    电鸿系统技术架构解析,触觉智能推出多款电鸿适配硬件方案

    电鸿系统技术架构解析,触觉智能推出多款电鸿适配硬件方案
    的头像 发表于 02-26 16:21 ?930次阅读
    电鸿系统技术<b class='flag-5'>架构</b><b class='flag-5'>解析</b>,触觉智能推出多款电鸿适配硬件方案

    奶泡棒专用芯片详细解析

    奶泡棒专用芯片详细解析
    的头像 发表于 02-24 11:23 ?384次阅读

    芯片封测架构芯片封测流程

    在此输入导芯片封测芯片封测是一个复杂且精细的过程,它涉及多个步骤和环节,以确保芯片的质量和性能。本文对芯片封测架构
    的头像 发表于 12-31 09:15 ?1587次阅读
    <b class='flag-5'>芯片</b>封测<b class='flag-5'>架构</b>和<b class='flag-5'>芯片</b>封测流程

    ZYNQ核心板学习笔记

    此款开发板使用的是 Xilinx 公司的 Zynq7000 系列的芯片,型号为 XC7Z020-2CLG484I,484 个引脚的 FBGA 封装。
    的头像 发表于 10-24 18:08 ?2805次阅读
    <b class='flag-5'>ZYNQ</b>核心板学习笔记

    正点原子ZYNQ7015开发板!ZYNQ 7000系列、双核ARM、PCIe2.0、SFPX2,性能强悍,资料丰富!

    ! 正点原子Z15 ZYNQ开发板,搭载Xilinx Zynq7000系列芯片,核心板主控芯片的型号是XC7Z015CLG485-2。开发板由核心板+底板组成,外设资源丰富,板载1路P
    发表于 09-14 10:12

    [XILINX] 正点原子ZYNQ7035/7045/7100开发板发布、ZYNQ 7000系列、双核ARM、PCIe2.0、SFPX2!

    7000系列芯片,核心板支持Xilinx Zynq-7035、Zynq-7045和Zynq-7100三种型号。开发板由核心板+底板组成,外设资源丰富,板载2路千兆以太网接口(PS+PL
    发表于 09-02 17:18

    主流芯片架构包括哪些类型

    主流芯片架构芯片设计领域中的核心组成部分,它们决定了芯片的功能、性能、功耗等多个方面。当前,全球范围内主流的芯片
    的头像 发表于 08-22 11:08 ?2887次阅读

    自动驾驶三大主流芯片架构分析

    当前主流的AI芯片主要分为三类,GPU、FPGA、ASIC。GPU、FPGA均是前期较为成熟的芯片架构,属于通用型芯片。ASIC属于为AI特定场景定制的
    的头像 发表于 08-19 17:11 ?2464次阅读
    自动驾驶三大主流<b class='flag-5'>芯片</b><b class='flag-5'>架构</b>分析