微控制器在汽车和消费性电子市场上得到了广泛的应用,其主要优势在于能够以相对较低的成本来实现系统高度整合。然而,这类产品也有潜在的成本问题。例如,如果元件功能不切合需求,就必须采用外部逻辑、软件或者其它整合元件来进行扩展。而且,随着最终市场需求的迅速变化,微控制器会很快过时。许多具有一定数量专用接口的特殊功能微控制器在经过短期试用后,并不能完全满足市场需求。因此,系统供货商不得不重新设计硬件和软件,甚至在某些情况下对处理器内部核心进行改动。
ASSP微控制器面临的两难局面传统微控制器生产厂商面临着影响整个市场的两难问题。微控制器是专用产品,因此,对每一种应用都必须采用新的、不同特性的微控制器。为了能够以一种微控制器内部核心结构来应对更广阔的市场,生产厂商提供系列微控制器,其型号接口和功能各不相同。可是这些混合特性在很多时候并不能完全满足用户需求,因此,为了扩大客户群,必须围绕在具体的内部核心结构,开发出新的接口和功能。
当采用较老旧技术以较低的生产成本来实现微控制器时,这种策略将会非常成功。然而,现在为提高系统整合度,而采用了最新的制程技术,这样一来,开发新型微控制器的成本便大幅增加。只有很少的客户有很大的产量需求,这表示专门针对一个客户来生产这类专用元件并不是可行的商业行为。结果,新型微控制器趋向于成为标准产品而不是专用元件,产品功能越来越多,以便吸引整个市场。虽然这些附加特性使得微控制器的功能更强,但也大幅地提高了成本,更难应用于对成本敏感的市场,例如汽车和消费性电子行业。若不从根本上着手芯片功能,将很难解决这一两难问题。
灵活的微控制器解决方案对该问题的一种可行解决方案是采用FPGA来灵活地实现芯片功能。这些元件大幅地缩短了工程开发时间,降低了芯片多次试制的成本,是微控制器有力的替代方案。在设计过程中,FPGA不像微控制器那样会漏掉某些特性,它可以进行编程,并可依据需要重新编程,可快速完成原型开发,更迅速地将产品推向市场。如果需求变化了,还可以在现场对其进行更新,甚至是元件已经在产品中应用了。
汽车系统影像控制器应用就是FPGA优于传统控制器的一个例子。尽管汽车市场需要低成本FPGA来实现影像方面的各种功能,但这必须采用大量的芯片,因此,在可编程元件中实现复杂功能的成本便太高了。
而灵活的微控制器不但性能价格比较好,而且较切合用户的需求。它的性能价格比之所以较好,是因为采用了90nm结构化ASIC-Altera HardCopy元件做为基本芯片,其功能在大量经过预先定义和灵活的建构模块库中进行选择,可以针对客户需求进行订制。在开发过程中,HardCopy 结构化ASIC与传统的微控制器不同,它支持从原型FPGA到微控制器的无缝移植。CPU和总线架构都是灵活的微控制器方案所独有的,可以针对专门的客户应用,以合适的功能和特性映像到设计中。HardCopy系列的特点包括:
1.芯片:
● 比FPGA快50%;● 内部核心功率消耗比FPGA低70%;● 晶粒小60%至85%.
2. 软件:
● 统一的FPGA和HardCopy设计环境;● 功率消耗和性能管理工具;● 价格低廉,使用方便。
3. 封装:
● 与FPGA接脚至接脚相容;● 低成本产品封装;● 不需要重制电路板。
RISC CPU这一方案中使用的CPU是Altera Nios II嵌入式处理器,与一般情况不同,它并不固定在预定的芯片中,而是利用实际工具,依据系统架构的要求而自动产生,和整个电路需要的其它逻辑一起装入到 FPGA中。这样,便可以依据专门应用,对处理器内部核心进行参数化设置,以占用较少的逻辑,实现较合适的功能。
Nios II处理器采用标准RISC架构,具有单独的地址总线和数据总线,宽度都是32位。两种总线透过单独的缓冲区进行工作,还可以在总线系统中进一步分开。最后,系统设计人员可确定程序代码和数据是使用不同的内存,还是要放在共享内存中。Nios II处理器含有每一个处理器的大部分功能单元,设置决定了其特性。例如,可以依据要求来选择硬件乘法器、移位缓存器和硬件除法器。指令和数据缓冲区也是如此,其容量大小可以不同,也可以完全不用。
总线架构传统上,微控制器一直采用单个总线,由仲裁器对总线监控,以便进行资源分配。这对总线而言非常不利,做为系统的中心资源,它很快就会成为瓶颈所在。因此,较新的系统采用了多层总线,特别是多条总线平行工作的SoC之中。Altera的Avalon总线结构工作原理相似,不同之处在于其它多层总线中,层数都是固定不变的,而Avalon可以自由选择所需要的层数。
考虑到EMC和功率消耗问题,有时可以采用和系统其它部分运行速率不同的周边模块。当以更高的速率运行内存接口,便可使存取时间相对较短,而系统其它部分运行在较低时钟速率时,这种方法便比较有用。还可以将许多采用低时钟速率便能够工作的模块整合到一起。为满足EMC或者功率消耗要求,使用SOPC Builder能够轻松地将这些单元与其它运行速率很高的系统分开。这样可以自动产生同步但不同时钟域所需的逻辑,而设计人员只需要指定哪些模块运行在指定的时钟域上即可。
图1 汽车信息娱乐平台