浅谈FPFA之ZYNQ
高可靠新能源行业顶尖自媒体
在这里有电力电子、新能源干货、行业发展趋势分析、最新产品介绍、众多技术达人与您分享经验,欢迎关注微信公众号:电力电子技术与新能源(Micro_Grid),论坛:www.21micro-grid.com,建立的初衷就是为了技术交流,作为一个与产品打交道的技术人员,市场产品信息和行业技术动态也是必不可少的,希望大家不忘初心,怀有一颗敬畏之心,做出更好的产品!
FPGA这几年在AI等应用领域逐渐火爆起来,但是FPGA最大的市场还是在嵌入式领域。我曾有过几年在通讯设备厂商工作的经历,在通讯领域中就会大量的使用FPGA。我看到的主要有2种应用场景:IO扩展,算法实现。当然FPGA的应用场景肯定不局限与这两个应用场景,这里只是举个例子而已。
比如当时我们的系统里面有一个叫做小系统的电路模块,这个模块我们是由一片嵌入式的CPU,一片CPLD,还有FLASH等元器件组成。CPU用于版本控制,系统配置等功能,CPLD实现对CPU的IO扩展。经过这片CPLD的IO扩展,CPU可以实现对系统其它主要器件进行配置,比如对其它CPU,DSP,FPGA等器件的配置。采用这种架构,还可以实现系统版本的在线升级,双boot设计等等系统功能。
还有就是系统大的架构,也是由一块功能较强大的嵌入式CPU,再加几片DSP以及1片FPGA组成。系统的输入数据经过CPU初步处理以后分发给DSP或者FPGA进行处理。这里DSP和FPGA就是实现一些算法或者协议。
从这两个例子我们可以看出,通常的应用,FPGA相对于CPU来说都处于从属地位。根据之前我们的介绍大家知道,CPU更适合做一些控制类的事情,适合做判断,而FPGA和DSP等更适合做一些固定的计算或者IO扩展。就像CPU更适合做manager,而DSP和FPGA更适合做工程师,负责干活。
基于这样的应用特点,各个厂商都在做一些努力。比如FPGA厂商就开始集成一些CPU核,比如Xilinx最早可以添加Pico Blaze和Micro Blaze这样的软核到FPGA的设计当中,在某些特定型号的FPGA中也会包含PowerPC的硬核。但是那时的产品是需要FPGA先运行起来,然后CPU才可以运行。这显然和我们之前提到的一些应用场景不太匹配,所以我感觉那时的FPGA+CPU的产品并没有获得巨大的成功。而另外一个方面,像TI,他们则将一片ARM的CPU核和一片DSP核集成到了一起,CPU负责控制,DSP负责算法加速。TI的这个系列的产品获得了巨大的市场成功。很多的嵌入式设计都采用了他们的这个方案。
这也就引出了我要给大家介绍的ZYNQ及其后续的MPSoc系列产品。ZYNQ及其后续的MPSoc系列产品本质上就是CPU+FPGA架构。与他之前的产品不同的是这些系列的产品中,CPU是主,FPGA是辅。芯片上电以后,CPU会先启动。比如Xilinx的ZYNQ系列芯片是在2010年前后发布的,但是据我所知也就是近几年开始上量的。因为ZYNQ使用起来不容易,工程师既要懂CPU,又要懂FPGA,或许还要熟悉Linux等嵌入式设计,相关的工程师培训起来很不容易。随着越老越多的工程师开始熟悉ZYNQ这个系列的产品,也就有越来越多的工程师开始喜欢上了ZYNQ。而且我们可以把ZYNQ简单的看作一个CPU,这样很多从事嵌入式设计的工程师,即使不懂FPGA,也可以先把ZYNQ当作一个普通的CPU使用起来了。其实我最开始入门FPGA,也是从microblaze这样的CPU软核开始的。我们未来也会沿着这个思路和大家讨论一些ZYNQ的设计方法。
说明:本文来源网络;文中观点仅供分享交流,不代表本公众号立场,转载请注明出处,如涉及版权等问题,请您告知,我们将及时处理。