-
ARM
ARM(Advanced RISC Machine)处理器是英国Acorn有限公司设计的低功耗成本的第一款RISC微处理器。
ARM处理器本身是32位设计,但也配备16位指令集,一般来讲比等价32位代码节省达35%,却能保留32位系统的所有优势。
-
RISC
RISC(Reduced Instruction Set Computer,精简指令集计算机)
-
SOC
SOC(System on Chip)系统级芯片,或称为片上系统,意指它是一个产品,是一个有专用目标的集成电路,其中包含完整系统并有嵌入软件的全部内容。同时它又是一种技术,用以实现从确定系统功能开始,到软/硬件划分,并完成设计的整个过程。
-
FPGA
FPGA(Field Programmable Gate Array),现场可编程逻辑门阵列。
-
ZYNQ
ZYNQ系列是Xilinx2010.4推出的行业第一个可扩展处理平台。
赛灵思可扩展处理平台芯片硬件的核心本质就是将通用基础双ARMCortex-A9MPCore处理器系统作为“主系统”,结合低功耗28nm工艺技术,以实现高度的灵活性、强大的配置功能和高性能。由于该新型器件的可编程逻辑部分基于赛灵思28nm7系列FPGA,因此该系列产品的名称中添加了“7000”,以保持与7系列FPGA的一致性,同时也方便日后本系列新产品的命名。
Zynq-7000为何不是FPGA?
Zynq-7000可扩展处理平台是采用赛灵思新一代FPGA(Artix-7与Kintex-7FPGA)所采用的同一28nm可编程技术的最新产品系列。可编程逻辑可由用户配置,并通过“互连”模块连接在一起,这样可以提供用户自定义的任意逻辑功能,从而扩展处理系统的性能及功能。不过,与采用嵌入式处理器的FPGA不同,Zynq-7000产品系列的处理系统不仅能在开机时启动,而且还可根据需要配置可编程逻辑。采用这种方法,软件编程模式与全功能的标准ARM处理SoC毫无二致。
ZYNQ,往大了说,就是两大功能模块:
- PS
- PL
直白说,就是ARM的SOC部分;和FPGA部分
-
PS
PS(Processing System)处理系统,就是与FPGA无关的ARM的SOC的部分
-
PL
PL(Programmable Logic)可编程逻辑,就是FPGA部分。
之所以叫PL,而不是直接叫FPGA,主要是考虑到让搞软件的人理解方便。
-
APU
APU(Application Processor Unit),应用处理器单元。
位于PS里面的中心位置。其内包含:
也就是,处理器核心部分
-
TTC
TTC(Triple Time Counter),有三个独立通道的计数器,可以独立计数。挂在APB上,为系统或外设提供定时或计数服务。
-
WDT
看门狗定时器,有两个, 分别监视ARM-Cortex A9用的。 如果软件跑飞,无法清定时器,一段时间后,看门狗就复位。
-
SWDT
系统级看门狗定时器, 这个看门狗的时钟和复位信号,都可以来自于芯片外部, 这样,即使系统有严重故障,比如时钟频率本身都有问题了,仍然可以通过与系统无关的外部信号计数,计数满就复位。
-
SCU
SCU(Snoop Control Unit), 用来保持双核之间的数据Cache的一致性。 也就是是说,第一个A9处理器写存储时,只是写在了缓存里,没有进主存, 如果第二个A9读操作,涉及到第一个写脏了的数据段, SCU要保证第二个A9的缓存里是最新的数据。 如果第二个A9写同样数据段的数据,需要在第一个中体现出写的内容。 SCU的存在,才使得两个核成互相联系的“双核”,才能成为MPsoc。
-
References
相关推荐
【APU】浅谈APU(application processing unit)
1、APU区别于其他PS段的是什么?2、列举APU的主要部件。1、APU包含MPSoC/RFSoC器件中最强大的处理器集群:(1)Arm cortex - a53 -应用为中心(2)支持NEON支持的操作系统/管理程序,缓存,互连等。2、40位地址映射利用smmu访问全范围的内存。
FPGA的PS还有什么PL是什么意思
在FPGA中 PS: 处理系统 (Processing System) :就是与FPGA无关的ARM的SOC的部分。 PL: 可编程逻辑 (Progarmmable Logic): 就是FPGA部分。之所以叫PL,而不是叫FPGA,用英文简写可能便于理解区分,或者显得比较专业吧(/滑稽脸) 对于ZYNQ,,就是两大功能块,PS 部分和 PL部分, ARM的SOC部分,和FPGA部分。我们可以通过调用IP核,系统会使用AXI(Advanced eXtensible Interface) 接口将IP与处理器
FPGA||ZYNQ概念理解之: Cortex-A9 处理器及架构
源起 Zynq系列的亮点在于FPGA里包含了完整的ARM处理子系统(PS),每一颗Zynq系列的处理器都包含了Cortex-A9处理器,整个处理器的搭建都以处理器为重心,而且处理器子系统中继承了内存控制器和大量的外设,使Cortex-A9的核在Zynq-7000中完全独立于可编程逻辑单元,也就是说如果暂时没有用到可编程逻辑单元(PL),ARM处理器的子系统也可以独立工作,这与以前的FPGA有...
FPGA学习琐碎笔记(一)
一、FPGA硬件组成 1、CPU(处理器) FPGA的高端处理器主要由Xilinx(被AMD收购)与Altera(被Intel收购)两家制作。 FPGA的低端处理器制造厂商有紫光、复旦微、高云等。 其最小资源为CLB,CLB的数量决定了该FPGA芯片的资源大小。其外部晶振输入频率一般为50MHz,经过倍频可更高。 2、FLASH(闪存) FLASH一般用来存放代码文件,FLASH为非易失性存储器,即掉电后所存放数据不会丢失。 QSPI NOR FLASH理解:QSPI是一种传输协议,其相比较普
FPGA学习-PL控制PS端DDR的设计
FPGA设计论坛 2022-09-16 10:15 发表于陕西构建SoC系统,毕竟是需要实现PS和PL间的数据交互,而像上一讲那样PL主机与PL从机之间通过AXI4-Lite总线进行交互有点杀鸡用牛刀了。如果PS与PL端进行数据交互,可以直接设计PL端为从机,PS端向PL端的reg写入数据即可,但是对于图像处理等大数据量的数据交互来说,PL端的BRAM毕竟容量有限,很难用BRAM作为两者间的数据缓存器。对于这样的应用来说,利用DDR3作为PS端与PL端之间交互的数据缓存器是最合适不过的。 1.工程规划再Ze
Zynq术语详解,不懂啥是PL,PS,APU,SCU?那就进来看看吧
Zynq术语详解,不懂啥是PL,PS,APU,SCU?那就进来看看吧 PS: 处理系统 (Processing System) , 就是与FPGA无关的ARM的SOC的部分。 PL: 可编程逻辑 (Progarmmable Logic), 就是FPGA部分。之所以叫PL,而不是叫FPGA,我想,原因主要是考虑到让搞软件的兔子们不要看了以后望而生畏。逻辑嘛,搞软件的也要讲逻辑是不?可编程,软件就是编...
初识FPGA
大学的时候有一门verilog语言,觉得很难,不愿学。有学习套件是黑金的一块FPGA开发板,可能当时点灯和点数码管了。vivado 主要是写Verilog,做FPGA相关工作;vitis主要是写c语言,做ARM端的相关软件。PS (Processing System): 一个基于双ARM Cortex A9内核的处理系统。PL (Progarmmable Logic):可编程逻辑,即FPGA。可用PL端为PS端定制外设。今项目需要,使用FPGA中的ZYNQ,需要c语言开发,随即开始学习相关知识。
ZYNQ从放弃到入门(八)-PS和PL交互
之前的几篇文章主要集中在 Zynq SoC 的处理系统 (PS) 方面,包括:使用 MIO 和 EMIOZynq SoC 的中断结构Zynq 私有定时器和看门狗Zynq SoC 的三重定时器计数器 (TTC)然而,从设计角度来看,Zynq SoC 真正令人兴奋的方面是创建一个使用 Zynq 可编程逻辑 (PL) 的应用程序。使用 PL 将任务从 PS 加载到 PL 端,为...
【FPGA开发】ZYNQ中PS与PL交互操作总结、BRAM,DMA原理浅析、仿真操作
了解了总体框架后,可以对筛选出的,和数据交互有关的总线进行进一步学习,到这一步,就可以借鉴一些网络分享的琐碎知识点(当然也要结合UG585)RegOffset是地址偏移量,也就是在基地址的肩膀上,偏移多少个寄存器,注意,AXI总线是字节寻址的,映射地址时,按照4字节寻址。:注意总线颜色是AXI 32bit总线,PS和PL之间,共4个GP接口,每个方向各有两个,能实现双向的数据传输,和数据交互有关。:加速器一致性端口,PL端可以直接访问PS的缓存,提供缓存一致性访问,实现低延迟数据传输,和数据交互有关。
ZYNQ学习笔记(四):PL与PS数据交互——基于BRAM IP 核的(PS端读写+PL端读)控制实验
说起PS、PL数据交互,常见的有IO方式:MIO EMIO GPIO,还有利用BRAM或FIFO等,在上一篇文章ZYNQ学习笔记(三):PL与PS数据交互—— UART串口+AXI GPIO控制DDS IP核输出实验咱们学会了如何利用AXI GPIO IP核来实现PS(写)与PL(读)的数据交互,那么这篇文章来学习如何使用BRAM~在前面关于BRAM IP核的基础知识应该说的差不多了,那么我该怎么去写一个模块,能让它读出BRAM 0地址处的32位(4字节)的数据呢?input clk,
FPGA实践教程(八)PS与PL共享DDR
背景:很多时候需要PS与PL共享DDR作为global memory,例如卷积之中,PS将weight in与feature写入DDR,然后PL调用DDR进行运算,再将结果写入DDR进行下一次迭代。 目的:1. PS与PL共享DDR,读和写。并且像卷积一样需要三个指针。2. IPcore设置变量,能通过PS能查看到IPcore运行位置。3. 运用BRAM实现一定的数据搬运。 目录 一、I...
FPGA - ZYNQ 基于EMIO的PS和PL交互
在sdk开发中,sdk软件中提供了一些例程,在学习和开发的过程中可以查看学习这些例程更好的帮助我们学习和开发。
FPGA的PS基础1
那么PS先将数据写入cache缓存,再写入DDR3控制器,最后到DDR;PL端则是通过GP接口将数据写入DDR3控制器再到DDR3,这样间接实现了PS与PL的交互。AXI传输采用握手信号:例如写数据时:当主机的写数据有效信号wvalid和从机响应的有效信号wready同时拉高(在clk上升沿检测到),主机才能将数据写入。ps内核-----寄存器-------外设(通过配置寄存器来控制外设)那其实,PL就相当于PS的一个外设,就会有对应的地址和寄存器。需要注意的是,axi-lite最多32bit,
PS与PL之间AXI-Lite通信
PS与PL之间AXI-Lite通信 最好的学习方法莫过于把自己当作老师来教会别人。 QQ邮箱:522420615@qq.com,有问题希望大家一起友好交流。 FPGA最重要的组成部分莫过于PS部分与PL部分。 PS: 处理系统 (Processing System) , 就是与FPGA无关的ARM的SOC的部分。 PL: 可编程逻辑 (Progarmmable Logic), 就是FPGA部分。 简单的讲就是PL部分直接用代码来写电子电路,直接使用电子电路来进行数据采集及控制可以极大的提高采集频率及控制精
FPGA 的 PS 端(Processing System)全攻略:架构、启动、驱动到性能调优
本文系统介绍了FPGA中PS端(Processing System)的架构、功能以及与PL端(Programmable Logic)的分工协作。主要内容包括:PS与PL的互联结构(如AXI、NoC等接口)、启动流程、设备树配置、三种数据交互路径(寄存器/高速DMA/缓存一致性)、寄存器访问与中断处理、DMA缓冲管理、性能优化方法(带宽规划/CPU亲和/调度策略等)、时钟复位电源管理,以及开发流程建议。文章提供了实用的代码示例和优化清单,为FPGA异构系统开发提供了全面的技术指导。
什么是 zynq 的 ps 和pl 端?
通过PS和PL的协作,Zynq芯片能够同时满足复杂计算和高性能硬件加速的需求,是嵌入式开发中的强大工具。在Xilinx Zynq系列芯片(如Zynq-7000和Zynq UltraScale+)中,是芯片的两个主要部分,用于分别处理不同的任务。PS和PL是Zynq芯片的两大部分,功能上紧密集成,协同工作。,基于FPGA架构,允许用户根据需求实现自定义硬件逻辑。,它是基于ARM架构的处理器子系统。
FPGA概念理解(持续更新)
PS PS(Processing System)处理系统,就是与FPGA无关的ARM的SOC的部分 PL PL(Programmable Logic)可编程逻辑,就是FPGA部分。 之所以叫PL,而不是直接叫FPGA,主要是考虑到让搞软件的人理解方便。
FPGA实践教程(六)AXI-Lite实现PS与PL通信
背景:PS与PL的通信方式有AXI4,AXI-Lite,AXI-Stream。之前实现的为AXI-Stream s(side channel),并且编译环境为linux编译环境。现在改为基础的AXI-Lite的通信方式,编译环境变为SDK环境。 目的:实现AXI-Lite的通信。 AXI-lite的实现过程中,设计流程中三点至关重要,一是编写什么样的c程序并如何用HLS综合,二是系统如何搭建,...
3230




被折叠的 条评论
为什么被折叠?



