Altera是“可编程芯片系统”解决方案的倡导者,总部位于美国加州,向全国近14000家客户提供超值的可编程解决方案。
Altera新产品系列将可编程逻辑的内在优势 灵活性、产品及时面世和更高级性能以及集成化结合作一起,为满足大范围的系统需求而开发设计。Altera可编程解决方案包括:先进的FPGA、CPLD和结构化ASIC技术,全面内嵌的软件开发工具,IP内核,可定制嵌入式处理器,现成的开发包等等。
引言
微控制器在汽车和消费类市场上得到了广泛的应用,主要优势在于能够以相对较低的成本实现系统高度集成。然而,这类产品也有潜在的成本问题。例如,如果元件功能不切合要求,就必须采用外部逻辑、软件或者其他集成器件来进行扩展。而且,随着最终市场需求的迅速变化,微控制器会很快过时。许多具有一定数量专用接口的特殊功能微控制器在经过短期试用后,并不能完全满足市场需求。因此,系统供应商不得不重新设计硬件和软件,甚至在某些情况下对处理器内核进行改动。
ASSP微控制器面临的两难
传统微控制器生产商面临影响整个市场的两难问题。微控制器是专用产品,因此,对每一种应用,必须采用新的不同特性的微控制器。为了能够以一种微控制器内核结构来应对更广阔的市场,生产商提供系列微控制器,其型号接口和功能各不相同。可是这些混合特性在很多时候并不能完全满足用户需求,因此,为了扩大客户群,必须围绕具体内核结构开发新的接口和功能。
采用老技术以较低的生产成本来实现微控制器时,这种策略非常成功。然而,现在为提高系统集成而采用了最新的工艺技术,这样,开发新型微控制器的成本大大增加。只有很少的客户需求有很大的产量,这表明专门针对一个客户来生产这类专用器件并不是可行的商业行为。结果,新型微控制器趋向于标准产品而不是专用器件,功能越来越多,以吸引整个市场。虽然这些附加特性使微控制器功能更强,但也大大提高了成本,更难应用于对成本敏感的市场,例如汽车和消费类行业。不从根本上着手芯片功能,很难解决这一两难问题。
可编程的微控制器解决方案
对该问题一种可能的解决方案是采用FPGA来灵活地实现芯片功能。这些器件大大缩短了工程开发时间,降低了芯片多次试制的成本,是微控制器有力的替代方案。在设计过程中,FPGA不像微控制器那样会漏掉某些特性,它可以编程,并根据需要重新编程,快速完成原型开发,更迅速地将产品推向市场。如果需求变化了,还可以在现场对其进行更新 甚至是器件已经在产品中应用了。
实现可编程的微控制器方案中使用的CPU是Altera?Nios?II嵌入式处理器,与一般情况不同,它并不固定在预定的芯片中,而是利用实际工具,根据系统体系结构的要求而自动生成,和整个电路需要的其他逻辑一起装入到FPGA中。这样,可以根据专门应用,对处理器内核进行参数化设置(使用Altera的SOPC?Builder工具),占用最少的逻辑,实现最合适的功能。
Nios?II处理器采用标准RISC体系结构,具有单独的地址总线和数据总线,都是32位宽。两种总线通过单独的缓冲进行工作,还可以在总线系统中进一步分开。最后,系统设计人员确定代码和数据是使用不同的存储器,还是放在共享存储器中。Nios?II处理器含有每一处理器的大部分功能单元,设置决定了其特性。例如,可以根据要求来选择硬件乘法器、桶形移位寄存器和硬件除法器。指令和数据缓冲也是如此,其容量大小可以不同,也可以完全不用。
图1是一个典型的汽车信息娱乐平台,这个系统中,NIOS II 替代传统的CPU作为系统的核心控制器,采用低成本的Cyclone系列FPGA,NIOS?II能提供超过100?DMIPS的运算性能,如果在Altera高端的FPGA或是Hardcopy实现NIOS?II,系统性能能达到200?DMIPS以上。另外客户可以采用用户指令来进一步提高系统的性能,Altera也提供C-to-H工具来帮助快速实现硬件加速和客户指令。
图1 汽车信息娱乐平台(略)
系统中2D/3D图形处理传统上也是用CPU来实现的,占用大量的CPU资源,一方面使得CPU不得不运行在很高的系统时钟频率上,对整个系统的可靠性设计造成很大的挑战,另一方面也使得系统很难处理实时、高分辨率的图像。采用NIOS?II加上FPGA则完全解决这些问题。Altera及合作伙伴设计了一个基于FPGA的图形加速引擎,用户可以把这个模块根据自己的需要修改后添加到NIOS?II系统当中。有关这个图形加速引擎的一些主要特性包括:
高质量的图像宣染;
低的资源消耗,仅需要3到7千逻辑单元;
灵活的设计方便用户增加新的功能。
系统中其他的功能模块包括内存控制器、SPI及CAN总线都可以采用Altera或是第三方合作伙伴的IP模块,不需要自己开发。
连接各个模块的总线在NIOS系统当中采用Avalon总线结构。传统的微控制器一直采用单总线,由仲裁器对总线监控,分配资源。这对总线而言非常不利,作为系统的中心资源,它很快就成为瓶颈。因此,较新的系统采用了多层总线,特别是多条总线并行工作的SoC。Altera的Avalon总线结构工作原理相似,不同之处在于 其他多层总线中,层数都是固定不变的,而Avalon可以自由选择所需要的层数。图2显示了Avalon总线的多主结构可以大大提高系统的性能。
图2 Avalon多主总线结构(略)
在FPGA中实现微控制器
使用FPGA进行原型开发意味着工程师可以在系统运行器件,在真实的环境中进行测试。这样,工程师能够确定仿真过程中难以发现的潜在设计缺陷。
软件开发已经是整个开发周期中的主要部分。软件开发需要大量的时间和资源,因此,原型系统能够缩短整个开发时间。它还可以发现小毛病和兼容性问题,新的硬件功能可以实现以前软件无法解决的功能。
对系统进行现场测试有利于发现系统和器件缺陷,而这在实验室中却难以实现。在很多情况下,销售人员为获得订单而有必要进行系统演示。对于最初的规范,还需要加入某些新特性和功能。不论是以前没有发现的问题还是加入新特性,FPGA原型开发可以迅速进行修改,没有较大的一次性工程成本,而且生产周期较短。
可编程的微控制器解决方案中的最终目标是ASIC开发。建立并测试原型系统后,将设计交给Altera,转为HardCopy结构化ASIC。与其他的结构化ASIC不同,HardCopy器件使用和FPGA原型相同的构建模块,因此,不必重新对设计进行综合,或者进行更多的验证。使用HardCopy器件的周转时间较短,设计人员可以很快完成FPGA逻辑,尽可能地降低成本。
结论
下一代汽车电子系统需要采用非常专业的低成本器件,以满足市场需求。考虑到目前工艺技术开发成本的攀升,对传统微控制器进行专门处理有些不切实际。而针对较大市场范围的多功能器件价格昂贵,也不实用。相反,可编程的微控制器方案针对具体应用开发合适的微控制器,在FPGA中实现原型开发。设计完成后,甚至是在设计过程中就可以立即进行验证、软件开发和现场测试。对于批量生产,FPGA设计直接映射到HardCopy结构化ASIC,而不用重新综合或者再次验证。 |