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

俯瞰zynq


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的一部分,看看下面两个图就可以比较清晰的了解。

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软件可以实现灵活配置,如下图所示。

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

灵活的时钟系统

  • 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计算)具有非常大优势。

双ARM硬核处理器

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

PL/PS的有机结合

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

  • PL端:可设计出高灵活的外设系统,同时可编程硬件逻辑电路,可实现真正的硬并行处理、硬实时系统
  • PS端:PL端与PS的有机结合,有可实现对这种高灵活、硬并行、硬实时处理系统实现集中软件管理

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

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

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

总结一下

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

1.2020年第8期《单片机与嵌入式系统应用》电子刊新鲜出炉!

2.除了考虑技术,还要重点考虑物联网的社会属性!

3.传感器+MCU成大趋势!30家国产MCU厂商综合实力对比

4.Arm前总裁:Arm卖给任何半导体公司都是坏消息!

5.新唐科技与达成RT-Thread战略合作!

6.国务院抛出集成电路政策大礼包,最高免税十年

免责声明:本文系网络转载,版权归原作者所有。如涉及作品版权问题,请与我们联系,我们将根据您提供的版权证明材料确认版权并支付稿酬或者删除内容。

vertex系列芯片和zynq系列芯片结构的异同_使用ZYNQ实现复杂嵌入式系统,真的好用!...相关推荐

  1. 华为p50鸿蒙系统手机价格,华为P50系列屏幕、镜头、芯片、价格全曝光,预装鸿蒙系统?...

    上半年安卓旗舰手机陆续发布,雷军表示小米11Ultra定位「安卓之光」,不少网友开玩笑"华为P50系列将采用鸿蒙系统,小米自然就能冲击安卓机皇".由于特殊原因影响,华为P50系列发 ...

  2. vivo X70系列搭载自研V1芯片9月9日发布

    在上半年发布的vivo60以其出众的设计和强大的影像功能深受消费者喜欢,下半年vivo将乘胜追击,推出更加优秀的vivo X70系列,这次vivo这一次跳脱出了大众化的思维,深挖用户的体验.在近日召开 ...

  3. 华大芯片入坑系列-1

    华大芯片入坑系列-1 运行环境 创建模板-不带库 创建模板-带驱动库ddl 开发板:EV-HC32F460-LQFP100-050-V1.3 IDE: keil5 资源地址: 官网. 运行环境 华大芯 ...

  4. 杰理ac18芯片_杰理科技推出:「梧桐」系列双模音视频 AIoT 芯片

    近日,杰理科技正式推出「梧桐」WiFi/BT 双模音视频 AIoT 芯片,包括针对高端智能音箱的芯片 AC7901.全功能芯片 AC7902.WiFi 蓝牙控制器 AC7903 系列芯片.作为旗下高端 ...

  5. NJR日清纺微理光R5445系列 单节锂电池保护芯片,内置驱动器高位Nch FET开关温度保护

    NJR日清纺微理光R5445系列 单节锂电池保护芯片,内置驱动器高位Nch FET开关温度保护 产品名称:单节锂电池保护芯片 产品系列:R5445(新款) 代理品牌:NISSHINBO(日清纺微电子) ...

  6. 理光R5445系列 单节锂电池保护芯片,内置驱动器高位Nch FET开关温度保护

    产品名称:单节锂电池保护芯片 产品系列:R5445(新款) 代理品牌:NISSHINBO(日清纺微电子),原日本理光微电子 产品封装:WLCSP-8-P4 交期时间:现货一般当天交货,预定需电话详情 ...

  7. 国产汽车级可编程线性霍尔传感器CHA611,可以替代Allegro的A1363系列产品,解决汽车级芯片缺货难题

    A1363是Allegro的一款SIP封装0至>1000A传感器IC产品,A1363是带先进的温度补偿和高带宽(120kHz)模拟输出的低噪音.高精度.可编程线性霍尔效应传感器IC,但由于目前国 ...

  8. linux嵌入式开发arm7,基于ARM7系列芯片嵌入式平台上实现的设计方案-嵌入式系统-与非网...

    本文介绍的方法是在用ARM7系列芯片S3C4510B和μClinux构建的嵌入式平台上实现的.在嵌入式系统设计过程中,系统的掉电保护越来越受到重视整个掉电保护实现的基本思路是:产生掉电信号,捕捉掉电信 ...

  9. STM32Gx系列进入NMI中断造成芯片死机的解决办法

    STM32Gx系列进入NMI中断造成芯片死机的解决办法 提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 STM32Gx系列进入NMI中断造成芯片死机的解决办法 前言 一.问 ...

最新文章

  1. <script type =“text / template”> ... </ script>的说明
  2. 编写python脚本完成图片拼接
  3. 使用Set求两个数组的并集|| 交集||差集
  4. html worker api,worker_threads 工作线程
  5. DDD中的聚合和UML中的聚合以及组合的关系
  6. 快照隔离(Snapshot Isolation)简单介绍和例子
  7. HijackThis日志细解【简明教程增强版】(六)
  8. 绝对位置,但相对于父位置
  9. [转载] python语言中表示赋值的符号是_Python 语言中 asterisk 符号用法小结
  10. [导入]OGRE中用到的设计模式
  11. V4L2像素格式及其对应的含义
  12. 互联网日报 | 6月3日 星期四 | 华为正式发布HarmonyOS 2;联想会员数突破1.4亿;今年全国高考报名人数1078万...
  13. 机器学习之用Hog+Svm人脸检测、交通标志和字符识别等(初学者)
  14. 新方法使虚拟现实中的无限行走变为可能
  15. PCIe学习笔记之pcie结构和配置空间
  16. Ubuntu 下安装新世纪五笔输入法
  17. python 发送邮件
  18. IPFS系列 - 分布式哈希表(DHT)
  19. IT忍者神龟之Microsoft Office Enterprise 2007 简体版 企业版 序列号
  20. 【重要】有三AI-终极VIP会员首次发布,除课程外还享有5大权益

热门文章

  1. 《神经科学:探索脑》学习笔记(第6章 神经递质系统)
  2. jvisualvm 连接 docker 监控springboot jvm
  3. 艰涩难懂,不存在的,消息队列其实很简单
  4. c# picturebox 刷新_C# picturebox画图问题
  5. css3,background-clip/background-origin的使用场景,通俗讲解
  6. 微信公众号删除cookie失败,cookie设置了过期时间不管用,微信公众号cookie比较诡异,删不掉,解决办法,原生JS封装cookie统一操作删除cookie,读取cookie,删除cookie
  7. 怎么修改电脑或者Apple手机、iPad等设备上图标的大小
  8. synchronized锁升级那点事
  9. 「建模学习」游戏中的场景建模,原来是靠3D扫描建模技术完成?
  10. 从零搭建 SpringCloud 服务