本文由智芯融高级射频工程师&专家级讲师WANG BIN向大家介绍Xilinx公司的Zynq SOC的硬件特点,Zynq是一款综合了FPGA和ARM系列的SOC芯片,将从以下几个方面来进行相关知识的介绍,包括,FPGA的应用,ARM的应用,内嵌处理器硬核的FPGA,Zynq的硬件资源,SOC的发展趋势。欢迎大家咨询了解。
FPGA的应用
FPGA 是可编程再设计的“万能”芯片。FPGA (Field Programmable Gate Array)现场可编程门阵列,是在硅片上预先设计实现的具有可编程特性的集成电路,它能够按照设计人员的需求配置为指定的电路结构,让客户不必依赖由芯片制造商设计和制造的 ASIC 芯片。
FPGA的核心优点:可编程灵活性高、开发周期短、并行计算可编程灵活性高。与ASIC的全定制电路不同,FPGA属于半定制电路。理论上,如果FPGA提供的门电路规模足够大,通过编程可以实现任意ASIC和DSP的逻辑功能。另外,编程可以反复,不像ASIC设计后固化不能修改。
由于FPGA内部结构的特点,它可以很容易地实现分布式的算法结构,这一点对于实现的高速数字信号处理十分有利。通过FPGA来实现分布式的算术结构,就可以有效地实现这些乘和累加操作。
FPGA自从诞生开始便是工业设计的宠儿,特别是在通信,语音,图像,人工智能等领域一直发挥着不可替代的作用。应用场景较为丰富,包括:ASIC 原型设计、汽车、收发器、消费电子、数据中心、高性能计算、工业、医疗、测试/测量、有线/无线通信等。其中通信、消费电子和汽车是主要应用场景,市场规模持续扩大。
AI领域
5G时代,人工智能领域的需求呈现持续快速爆发式增长。基于CPU的传统计算架构无法充分满足人工智能高性能并行计算的需求,FPGA是低功耗异构芯片,开发周期快,编程灵活,在AI领域应用广泛。
自动驾驶
对于自动驾驶来说,反应速度非常重要,主要用到摄像头、雷达和激光雷达。且设备需要不断更新,这时候FPGA的优势就凸显出来了,可以配合算法实现快速更新。
5G通信
可编程的核心特性与5G无线网络对灵活性、性价比和智能化的需求不谋而合。很多通信业务的应用场景是需要随时升级的,与FPGA相比,ASIC的灵活性不够,无法跟上算法的迭代更新,因此选择 FPGA是一个更好的选择。
工业互联网
FPGA在工业互联网的应用领域聚焦在五个方面:工业网络通信,机器视觉,工业机器人,边缘计算,工业云。这五个方面跨越多个应用场景,且在每个场景有一个共性:低延时,对计算性能要求高。基于这样的特性,FPGA将成为构建工业互联网发展的基石之一。
数据中心
FPGA已经在大型数据中心得到大规模应用,全球七大超级云计算数据中心包括微软、阿里云、腾讯云、百度云、Facebook都采用了FPGA加速服务器。人工智能的广泛应用场景的架构多样性,可以充分发挥FPGA的优势和特点,开创新型FPGA在数据中心的新局面。
ARM应用
ARM公司是一家知识产权(IP)供应商,它与一般的半导体公司最大的不同就是不制造芯片且不向终端用户出售芯片,而是通过转让设计方案,由合作伙伴生产出各具特色的芯片。ARM公司利用这种双赢的伙伴关系迅速成为了全球性RISC微处理器标准的缔造者。这种模式也给用户带来巨大的好处,因为用户只掌握一种ARM内核结构及其开发手段,就能够使用多家公司相同ARM内核的芯片。
目前ARM CPU 在移动端,物联网,以及工业控制等领域占绝对的统治地位
工业控制
作为 32 位的 RISC 架构,基于 ARM 核的微控制器芯片不但占据了高端微控制器市场的大部分市场份额,同时也逐渐向低端微控制器应用领域扩展, ARM 微控制器的低功耗、高性价比,向传统的 8 位 /16 位微控制器提出了挑战。
无线通讯
目前已有超过 85% 的无线通讯设备采用了 ARM 技术, ARM 以其高性能和低成本,在该领域的地位日益巩固。
消费类电子
ARM 技术在目前流行的数字音频播放器、数字机顶盒和游戏机中得到广泛采用。
成像和安全产品
现在流行的数码相机和打印机中绝大部分采用 ARM 技术。手机中的 32位 SIM 智能卡也采用了 ARM 技术。
内嵌处理器硬核的FPGA
即SoC FPGA,是在芯片设计之初,就在内部的硬件电路上添加了硬核处理器,是纯硬件实现的,不会消耗FPGA的逻辑资源,硬核处理器和FPGA逻辑在一定程度上是相互独立的,简单的说,就是SoC FPGA就是把一块ARM处理器和一块FPGA芯片封装成了一个芯片。
•ARM和FPGA 的结合更是给设计带来了高性能,高灵活性等便利,而且也是目前非常流行的设计方式
•目前支持ARM-SOC的FPGA器件有:Xilinx-ZYNQ( Artis, Kintex,Ultra-scale), Intel( Cyclone-5,Arria-10)。
ZYNQ硬件资源(最主流SOC的芯片)
下面引用Xilinx官方UG585的框图来介绍Zyqn的硬件资源:
PS端
PS即可编程系统部分,指的是ARM处理器部分。主要包括:
1、应用处理器APU(Application Processor Unit):
a、最高达双核ARM Cortex-A9多核处理器CPU
b、DMA控制器
c、通用的中断控制器等等
2、存储器接口Memory Interface:
a、DDR内存控制器接口,支持PS端的DDR内存读写控制。
b、QSPI接口:提供1-2个SPI接口,支持QSPI启动。
c、静态存储器控制器(Static Memory Controller):提供了NAND存储器的读/写和控制功能。
3、外部I/O口 (I/O Peripherals):
a、GPIO接口,PS端有54个通用GPIO接口,可以通过EMIO口扩展到PL端128个GPIO接口,最多192个GPIO接口。ETH接口,以太网控制器接口
b、USB接口,2个USB接口,支持USB2.0设备。
c、SD卡接口,可以作为Zyqn的启动设备,存储Linux系统等。
d、SPI接口,支持2个SPI接口。
e、CAN BUS工业接口。
f、UART接口X2,标准串口。
g、I2C接口。
4、内部接口 (Interconnect)主要是针对于PL部分通信的AXI接口等等和EMIO接口等等。
PL端
PL即可编程逻辑部分,指的是FPGA部分。PL和PS两者之间可以通过总线进行通信。如果在进行软件调试时,发现某些算法太慢,速度上不去,可以用FPGA的逻辑部分把这部分进行优化,从FPGA逻辑部分到ARM软件开发,可以在Xilinx的开发环境里切换。
主要包括:
包括可配置逻辑单元CLB
BRAM资源
数字信号处理DSP48E1单元
CMT时钟管理单元
Select I/O可配置的IO资源
GTX接口,低功耗的千兆收发器,最高可达12.5GB/s。
XADC模数转换器。
PCIE接口,可以配置PCIE接口。
ICF-BM7030
围绕Zynq的硬件资源可以进行开发板和硬件单板的开发,以7z030芯片为例,ICF-BM7030的开发板资源如下:
开发板集成和利用了大部分的PS和PL端接口,适合Zynq的研究项目和课题研究:
主芯片及外部接口标注如下图:
1:Xilinx Xc7z030-2ffg676I
2: 6位共阳数码管(PL)
3:电源 DC-12v/4A
4:千兆接口 (PL端)
5:语音输入、输出 (PL)
6:千兆接口(PS)
7:SD-CARD 接口(PS)
8:USB2.0高速接口(PS)
9:按键(PL)
10:开关(PL)
11:FPGA/ARM-JTAG
12:GPIO (PL)
13:HDMI (PL)
14:FMC(LPC)
15:SFP+接口(PL)
16:RISC-V JTAG外部接口
17:RISC-V JTAG内置USB接口,UART转USB接口
SOC的发展趋势
随着高速数字信号通信和处理的需求和发展,以及对更为完善的便携式系统的期望,构架系统模块的处理器就必须更加地强有力。这一要求对ARM和FPGA芯片市场提出了重要的挑战,其中最重要的三个方面是FPGA的功耗、性能和成本。目前已有许多研究来平衡这三方面的要求,如利用系统芯片(SOC)可以将尽可能多的功能集成在一片FPGA芯片上或FPGA芯片集上,使其性能上具有速率高、功耗低;在成本上价格低廉;而且还可以降低复杂性,便于使用。
今后高速ARM加FPGA技术的发展趋势,将是以系统芯片为核心,信息处理速度将达到每秒几十亿次乘加运算,因此,只有多系统芯片才能肩负此重任。嵌入式系统已经与SOC技术融合在一起,成为新一代信息技术的基础。基于ARM加FPGA的嵌入式系统不仅具有其他微处理器和单片机嵌入式系统的优点和技术特性,而且还可能利用并行算法操作,具有更高速的数字信号处理能力,为实现系统的实时性提供了更为有利的支持。ARM加FPGA系统必将成为现在以及未来工业领域的重要支柱。
原文链接:http://www.icfedu.cn/archives/10398
*声明:本文于网络整理,版权归原作者所有,如来源信息有误或侵犯权益,请联系我们删除或授权事宜。
‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧ END ‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧‧