FPGA器件扩展ASSP功能 扮演控制核心角色
扫描二维码
随时随地手机看文章
融合为电子技术的行业应用带来了更适合的方式,而FPGA与生俱来的属性更使得这些方式呈现出多样性。
周立功最近出了本名为《新编计算机基础教程》的书,观后认为,书中讲授电子技术知识的方式,蕴含计算机与半导体的渊源,使人仿佛再次看到那个年代亲手搭建第一台单板机的样子……他们不断追随,没过多久,单板机上的多个分离器件就被半导体工艺的进步给融合为集成电路。不可否认,这种融合为电子技术的行业应用带来了更适合的发展方式,而FPGA与生俱来的属性更使得这些方式呈现出多样性。
FPGA器件扩展ASSP功能
当不同电压的器件在一块PCB上集合时,面临兼容各种电平标准的问题,有了FPGA,情况大为改观。
在电子产品设计中,曾使用FPGA器件弥补ASSP器件功能上的不足。通用的MCU器件也许在智能家居主控单元中或者电表集抄器上无法提供足够的UART外设端口,FPGA的逻辑单元以及双口RAM资源的运用,能够以最少的硬件电路消耗完成多路UART接口的扩展,而且是轻松实现,因为各个FPGA厂家提供了经过充分验证的IP核。
同时,我们曾经也使用FPGA器件来增强或扩展ASSP器件已具备的功能。当不同电压标准的器件在一块PCB上集合时,设计者面临兼容各种电平标准的问题,或许MCU仅能够提供1.8V LVTTL,但有了FPGA的引入,情况将大为改观。FPGA的多电平标准Bank I/O能够完成1.8V LVTTL到3.3V LVCMOS、2.5V LVTTL等电平的完美桥接并不降低速度。
另外,我们还一直看重FPGA器件的高速的并行执行能力。数字0与1的翻转时间在FPGA器件中能够轻易小于零点几纳秒,这赋予了它无与伦比的集成电路速度。我们在大型的通信设备中能够看到他的性能,一些高速端口在处理数十条信道中的复杂的通信协议编码与解码,同时另一些I/O在并行处理多达10路的高速ADC送来的数据。
扮演控制核心角色
足够大的可编程逻辑门阵列将可以实现任何数字电路。内嵌式MCU与FPGA的融合是正在上演的重头戏。
后来,SoC的概念被提出,FPGA器件开始以控制核心的角色登台。如果所有的数字电路都是逻辑开关,那么足够大的可编程逻辑门阵列将可以实现任何数字电路。无疑,内嵌式MCU与FPGA的融合是正在上演的重头戏。
Altera半导体推出的NiosII软核处理器是标志性的SoC。NiosII处理器在FPGA逻辑中完整的运行软件编译代码并且不输性能,最重要的是能够与FPGA Fabric无缝连接,融合为一体。Altera半导体提供通过验证的一系列IP Core能够使得设计者轻易完成自定义的SoC系统搭建。我们看到大学中的爱好者在厂家的技术资料参考下能够顺利完成基于DDS技术的任意波形发生器设计,并带有LCD显示屏和触摸屏的人机交互GUI菜单,然后通过文件系统的支持将波形数据存入SD卡。
Microsemi公司的FPGA产品,早期在ProASIC3系列器件中实现嵌入ARM公司授权的标准MP7以及Cortex-M1内核,方式与Altera半导体的NiosII类似,但是这类方式有同一个短板——需要在FPGA器件外面增加额外的MCU所需内存器件,这使设计者又想起了传统的单板机式系统思路。不过很快,Microsemi半导体Fusion(融合)器件系列的诞生第一次使SoC的概念变得清晰。Fusion系列器件内嵌了多达512KB的用户可用FlashMemory,设计者可以在需要嵌入Cortex-M1或者8051S处理器内核的时候,将程序运行的C Code存储在器件内部的FlashMemory中,当然也可以用来存储字库、数组等用户数据。Fusion的另一个创新在于将多达30个通道并包含比较器等调理电路的ADC集成于单芯片内,实现模拟电路与数字电路的融合……现在,我们以上曾经做过的FPGA设计一定程度上可以统一到Fusion器件的单芯片SoC平台了。
利用Fusion的FPGA+Analog+“MCU”架构,我们曾成功协助设计者定制其专属的多核SoC系统。该产品的PCB面积有限,而传统的行业方案或许需要2-3颗MCU来并行处理才能够得以完成。基于设计者已有的软件算法,我们推荐一颗Fusion器件并顺利协助设计者嵌入2颗MCU软核完成设计,他同时将原来的PCB缩减50%。而实现的这些功能包括数据的多通道配置、数据格式的算法、系统的多路模拟量监控(ADC模拟模块)、GPRS的远程通信协议和加密算法。在以后的相当长的一段时间里,公司多次对设计者推荐这一项真正单芯片的软核SoC解决方案并不断获得认可,“融合”这个词的意义初显。
内嵌硬核处理器拉开序幕
硬核将晶圆面积变得更小而性能更高,也省去设计者调用软核处理器之外全总线挂接的调试步骤。
有了软核对于SoC技术的拓荒,半导体厂家开始考虑比较软核的逻辑单元门数与硬核的晶圆面积之间的平衡,于是,由FPGA半导体厂家主导的内嵌硬核处理器拉开序幕。Xilinx半导体与PowerPC的结合、Altera半导体与Cortex-A的结合、Microsemi半导体SmartFusion器件内部带有Cortex-M3硬核和通用外设部件……硬核利用半导体工艺的优势将晶圆面积变得更小而性能更高,同时也省去了设计者调用软核处理器之外全总线挂接的调试步骤,减少设计者自设计软核系统的不稳定因素。
通过长时间与Microsemi半导体的接触,发现设计者对SmartFusion系列器件在原有Fusion的结构基础上形成真正的硬件FPGA+Analog+MCU的结构有着更加快速的认可,并在设计推广中收获一些代表性的方案应用。在工业场合,SmartFusion器件采用的已被广泛应用的Cortex-M3标准ARM内核,使得设计者很容易将原来的同样内核MCU的设计无缝移植过来,同时,官方及周立功公司等提供完善的技术支持,设计者可以在SmartFusion器件的硬核和以太网MAC中运行实时操作系统支持TCP/IP协议,而官方也提供了广泛应用与工业的实时以太网IP解决方案。这样,设计者将多路ADC采集的模拟量数据整合上传,同时Cortex-M3接收主机端的控制指令通过AHB内部总线驱动FPGA逻辑部分的多路SVPWM实施MOSFET桥电路的精确控制。这样的应用在电机控制及高压变频器中是比较普遍的,而让人高兴的是,SmartFusion器件可以通过启动IAP方式使用内核来更新FPGA逻辑的程序,使器件远程更新变为现实,也提供了在这类较为危险的场合下为保障调试人员安全的一种解决方案。
前不久,帮助一位FPGA设计者分析几段HDL的设计,其中不同的编码方式使得同样功能的两个模块在时序上的布局布线竟产生了截然不同的差异,输出难以解释的混乱数据,期间百思不得其解。“或许他们(模块)想要平等的待遇”——仅仅打趣的一句话而已,没想到在更改为同样的编码位后问题得以解决!再次感慨现在的设计也需要融合哲学的思想!从电阻电容到集成电路,从开关管到可编程逻辑阵列,从8086的CPU雏形到盛行于世的ARM与SoC……当电火花遭遇半导体,人类的智慧使得它变得有序和富有灵魂!原来这是一场融合的大革命,持续百年并且仍在延续。