在一个范畴中,假如仅有不变的是改动,那么不需求对电子技能和规划办法的开展改动做多少回忆,就能见证到改动是怎么使规划工程师能够创立出下一代立异产品。微处理器得到大规模运用后,价廉物美的新技能为根据软件的改造性电子产品规划翻开了大门,这便是一个很好的比如。简言之,把规划的首要元素——在这儿是操控“智能”——转入到软范畴后,规划工程师就能够在更短时间内创立出更好、更智能、更廉价的产品。
这个改动意味着嵌入式软件开发人员是当今界说电子产品功用和特性的首要推动者,并且终究将把硬件出产出来。该办法的成功要素在于削减硬件复杂度和把规划的操控元素转变到可编程范畴带来的敞开灵活性。
今日,大容量、低成本可编程器材的到来给电子产品规划的开展带来了相同的期望,由于在软范畴界说体系硬件自身现已成为或许。比如大容量FPGA这样的大规模器材对满意这一需求十分抱负。这些期间一般可用于构建体系外设逻辑功用块的大件部分,包含总线接口、I/O块、乃至内存。把很多逻辑引进FPGA范畴对硬件开发具有深远影响,并为‘软’规划的新时代翻开了一扇大门,这为规划供给了史无前例的灵活性,一起具有削减板级尺度和复杂性的无量潜力。
尽管它具有对电子产品开发进程起到革命性效果的潜力,但大都嵌入式软件开发人员仍像曾经相同作业——在规划流程的开端阶段挑选分立的硬件处理器、创立物理渠道,然后写软件运用该渠道。人们在嵌入式体系开发的“软”硬件范畴短少探究,首要原因在于短少让C程序员在可编程硬件级发挥技巧的东西。的确,当时大都FPGA规划流首要都来自芯片规划范畴,需求十分专业的技巧。
把软规划进步一个水平
要逾越FPGA胶合逻辑运用需求更宽广的视界,包含充分使用可编程器材,把尽或许多的硬件引进到软范畴中。这包含引进处理器功用自身,今日,FPGA内的软处理器正越来越多地转变成嵌入式渠道。从根本上说,改用带FPGA的软处理器会带来结构灵活性、板卡尺度更小、更简略的长处。但深层次的运用会带来更吸引人的长处。
当使用了FPGA的可编程特性取得处理器顶层的笼统层时,就为嵌入式开发人员翻开了无限或许,——不仅在软件中完成笼统级规划,并且在硬件中也完成了。试想这样一个体系:处理器经过可装备硬件(本质上是一个硬件包裹)与其内存和外设衔接——这就笼统了处理器的接口。简略地对FPGA从头编程就改动了硬件包裹,体系规划师能够轻易地改动处理器内核,乃至在硬的或软的处理器之间转化,无需修正其他体系硬件。从体系的视点来看,一切处理器都是相似的,这就简化了硬件规划流程。当然,把这延伸到运用软件范畴也需求能够在处理器之间供给C等级兼容性的编译器。
这种体系的长处是不需求“事前”对处理器做出挑选。体系或许是运用某种处理器开发的,可是开发阶段发现需求更高的功用,又选用了更快的器材。由于包裹层的原因,处理器能够是软的、硬的、乃至是FPGA内部的硬件处理器内核,而不会影响周围的硬件,由于转化层只是创立出衔接外设的规范接口。实际上外设器材自身的衔接能够相同办法笼统。在这个计划中,FPGA为嵌入式体系的一切部件供给通用的衔接性,而有用地成为体系互连结构。换言之,它有用地成为规范接口“主干”,硬件和软件都能够轻松与处理器和外设沟通。
最终,在处理器之上引进通明的包裹层会创立出根据FPGA的开发环境,供给真实的处理器独立性。软件和硬件开发速度都进步了,处理器挑选能够放到规划流程的后期进行,有用的软件/硬件协同规划成为或许。
软件和硬件间进行转化
在可装备硬件中创立处理器和外设包裹层的主意的扩展便是主动生成运用专用的体系硬件,在硬件中履行软件算法——一种‘自己的’硬件协处理器。
从C代码中直接生成硬件的主意并不新鲜,有几个体系现已完成,到现在为止的主意是期望经过C类言语创立完好的体系硬件。在本质上,这与运用HDL(如VHDL 或Verilog)规划FPGA没有什么不同,需求软件开发人员学习和选用新的规划办法。真实对嵌入式开发人员有用的是使流程通明。规划东西有必要要能够处理规范 ANSI C代码的输入,把程序员挑选的功用转化为硬件。不仅如此,体系有必要要能够生成运用生成硬件所需的一切代码。嵌入式程序员以这种办法把专用算法从处理器卸载到专用硬件上,无需了解底层硬件的任何规划细节。
使用FPGA的悉数潜力
很明显,从东西视点来说充分使用可编程器材(如FPGA)带来的时机需求一个进步开发流程笼统等级的体系,这样规划的中心元素可经过相似的规划技能和流程轻松改动。这样的体系有必要能够共同整个电子产品开发进程,在单一、共同的环境中将硬件、软件和可编程硬件开发归纳在一起。
Altium Designer 引进简略、高层次的处理器完成这一方针,满意软件、FPGA和 PCB要求,一体化的产品开发环境在单一运用中把一切需求的流程归纳在一起(图1)。硬件和软件开发共同在渠道级 ,使快速软件/硬件协同规划成为或许。经过根据 FPGA的处理器和处理器包裹内核,规划师能够定坐落Altium Designer 或恣意受支撑的第三方处理器,一起保存规划的悉数功用,包含与 FPGA外设的便利衔接。Altium Designer根据 Viper的编译器确保在体系支撑的一切处理器结构间C等级代码的兼容性。