集成了数据通信,定位服务和视频娱乐的高端汽车信息娱乐系统需要高性能的可编程处理技术,其最佳实现方法是在主流汽车信息通信系统构架中集成FPGA协处理器。本文讲述汽车娱乐系统的需求,讨论主流系统构架,以及FPGA协处理器是如何集成到软硬件体系中,以满足高性能处理、灵活性和降低成本的要求。
娱乐电子消费已经成为区分豪华轿车的标志之一,推动了汽车性能的快速发展,设计者必须在性能,成本和灵活性上进行综合考虑。高端应用包括卫星电话,后座娱乐,导航,各种音频回放,语音合成、识别以及其他新的应用。
带动汽车娱乐系统发展的核心技术同先前的汽车应用有显著的不同。不同于其他领域的汽车电子消费,这些娱乐应用要高度的可视化,并且需求变化很快。此外,过时的娱乐系统将是新车卖不动的主要原因,也是汽车转售和租赁的主要障碍。
传统的汽车电子消费主要满足一般标准,例如长的换代周期,低成本和长期的温度要求。这些要求也是汽车娱乐系统所需的。在汽车设计上,设计者面临长换代周期中经历系统性能快速发展的挑战,而不再是长换代周期中的小改进。新的需求使得系统结构必须具有灵活性和很好的性能表现,而这在基于专用标准
产品(ASSP)的传统应用系统结构架中是无法实现的。
现在的基本车内娱乐系统要求能够支持具有图形人性界面的平面显示系统,能够显示动态地图和汽车信息。这种系统围绕高度标准化的微处理器实现,周围是各种标准接口和支持低端图形处理的简单硬件加速设备。它虽然以非常低的成本满足了中等汽车娱乐系统的市场需求,但是可以扩展到顶级豪华轿车的高端应用上。顶级应用包括视频图像和通信。各种支持这些应用的标准(视频:MPEG2,MPEG4,H.264;通信:GSM/EDGE,WCDMA,1xEVDO,卫星电话,卫星电视,数字视频广播和WiFi)均基于多种信号处理算法。这些算法要求非常高的可编程处理能力。现在有三种半导体技术可以实现这些非常复杂的算法。
这三种技术是可编程数字信号处理器(DSP),专用标准产品(ASSP)和现场可编程门阵列(FPGA)。DSP为信号处理应用提供了性能很高的可编程处理器。DSP处理器非常灵活,功耗低,成本效能高,但是缺乏硬件加速能力,无法为现在的尖端图像处理和无线通信算法提供所需的计算功能。ASSP通常含有DSP处理器,为单个视频或通信标准提供较好的解决方案,但是不能法通过编程来实现不同的标准要求。而FPGA同时具有很高的信号处理能力和可编程能力,能够满足很多标准和应用场合的要求。与其他两种技术不同,高性能、灵活的FPGA技术可以实现各种可能的算法。
前面所讲的信息通信系统需要额外的处理芯片以满足高端应用。这些芯片一般是在存储器或视频处理总线上集成了处理器的ASIC和ASSP,成为专用协处理器。FPGA应用上的强大之处在于对这种专用硬件的替代。FPGA和处理器配合使用,一般称为FPGA协处理器。以这种方式使用FPGA可以使新的专用加速器按需求下载到FPGA里,应用于任何高性能场合中。在高级军事多标准无线电中,这种概念被广泛采用,称为软件无线电(SDR)。SDR系统中,一个简单的无线单元以“一键式”方式自动适应不同的无线标准,可以应用于面向未来的装备中。这种方式还减少了处理器的数量,这些处理器在系统执行不同任务时,往往处于空闲的状态。软件无线电技术可以应用于汽车市场的通信和视频领域。
FPGA在视频处理和无线连接上的灵活性同样可以降低成本,提高系统价值。现在的基本构架需要为每个新的视频编解码器或者无线标准附加ASSP。以一个FPGA代替多个ASSP可以减少系统必须配置的各种体系结构,延长汽车的使用寿命。在基本车内娱乐系统构架中扩展使用FPGA可以使单个高端平台通过编程满足宽视频和无线标准的要求。这同样可以应用于高级汽车娱乐系统系统中。
一个前沿的汽车娱乐系统体系结构实例已经由Delphi Delco电子系统公司出版。该平台利用标准的SH-4微处理器和一个协同ASIC,日立的HD64404“Amanda”外设12,,满足了80%的中等汽车市场的基本功能需求。该系统提供了一个具有标准API层的通用控制处理器,将硬件外设和协处理器分离。协同ASIC提供了外设和集成图形处理器的基本功能。图形处理器支持图形和比例函数的交互,但是不能实现视频编解码器功能或其他的DSP应用。该系统为所有的娱乐应用提供了基本功能,但仍需为视频编解码器和无线通信功能附加ASIC和ASSP。
Delphi体系中的Amanda协同芯片采用双处理总线,Piexl总线用于视频处理等高性能数据流,而Register总线进行控制应用。这两个总线都连在SH-4 MPX总线和一个外部存储接口上。总线和存储接口的结合使用为基于FPGA协处理器的无线通信平台和灵活的视频编解码器提供了理想的接口。
协处理技术将FPGA和控制器或者DSP处理器紧密结合,使它们不再陷于主要的算法过程,而将标准的程序接口驻留在控制处理器中。这种集成方式非常适用于主要数据流或者算法驻留在FPGA或相关存储器的情况。算法由控制处理器产生的低速控制信号进行控制。
这种体系结构可以应用于无线通信,以单个FPGA支持GSM/EDGE,WCDMA,1xEVDO和各种802.11协议中的数字处理。否则,对每一个标准都需要特定的硬件设计,从而增加了成本,限制了应用范围。
此外,FPGA协处理技术,可应用于图象处理,能够以单个FPGA支持包括MPEG2,MPEG4和H.264在内的多路视频编解码器。实际上,可以同样采用无线通信技术中使用的FPGA。
FPGA协处理器通过基于直接内存读写(DMA)的接口,集成在处理器系统中。嵌入式处理器的软件层对每一个协处理器都有应用接口,通过适当的应用协处理器,将初始化程序写入到FPGA中。一旦初始化完成后,软件调用协处理器控制参数,时序和输入、输出数据流。根据采用的不同标准,在FPGA协处理器和控制处理器之间可能需要高级的
通信对话,也可能FPGA协处理器单独进行工作,在这种情况下,控制处理器简单的将算法加载后,便不再参与处理过程。
每个加载到FPGA上的程序都必须同周围系统紧密结合。采用FPGA进行编程,需要一个定义好的系统接口,每个基于FPGA的加速器通过它进行通信。一般而言,FPGA需要多个接口连接到控制处理器,存储器和别的外设或者连接器上。FPGA也可以同时有几个协处理器,共享一个控制处理器接口。每个外设或者协处理器可以有附加总线,进行高性能的数据流处理。
视频编解码器具有相应的输入和输出。Delphi体系结构的视频输入接口是Amanda协同ASIC的一部分,对视频流采用ITU-R BT.656接口标准。可以进行后级处理,使用ASIC以适用于不同的显示屏。FPGA可能需要连接到另外两个总线上,即存储器总线和主控制器的PCI/MPX总线,它们都与协同芯片相连。通过这三个连接,由存储接口实现宽带通信,PCI/MPX总线实现控制通信,这样,FPGA可以支持视频和通信应用。
FPGA为协同主处理器工作的专用处理体系提供了一个可编程平台。FPGA程序与标准处理器体系的程序有根本不同。FPGA提供了可编程逻辑单元,布线,DSP处理模块,存储器和I/O的高性能硬件结构。FPGA的体系结构运行起来同标准的ASSP非常相似,都是通过软硬件开发工具设计实现系统的特定功能。这些开发工具输出的二值图样装入到FPGA中后,定义了所有可编程逻辑单元,布线,DSP处理模块等的功能。二值图样在系统运行时,由主处理器加载。可以产生各种程序图样以支持MPEG2,MPEG4,H.264,GSM/EDGE,WCDMA,1xEVDO,GPS,3D图形加速器或者任何其他可用于汽车信息通信系统的算法。根据娱乐系统中不同的用户菜单选项,专用程序由主处理器下载到FPGA中,并处于主处理器的控制之下。
由主处理器控制专用硬件加速器,一般通过寄存器和存储接口实现,每个寄存器控制部分硬件加速器的运行。这适用于Delphi系统的默认协同芯片,也适用于下载到协同FPGA中的协处理器体系。通过使用FPGA可以直接将寄存器和存储器接口标准化,以控制任何编程实现的协处理器。标准化的接口可以定义怎样读取和写入协处理器数据,怎样开始和停止这一过程,怎样进行复位,并包括了一组寄存器实现控制专用操作。所有这些寄存器都是FPGA内线性地址映射的一部分,这样,软件物理器件驱动器能够很容易的读取寄存器。
协处理器的软件物理器件驱动器与硬件寄存器接口相比,具有更高级的抽象功能。软件驱动器实现了系统算法参数到控制寄存器的映射,因此可以很容易的编写和维护应用软件。底层的硬件改变时,高层的模型器件驱动器可以保持不变。Delphi系统中的软件体系提出了几个抽象层,将算法实现从其软硬件物理实现中分离出来,为软件或硬件协处理器算法提供了强有力的支持。FPGA协处理器非常适用于这种Delphi软硬件体系。
FPGA可以设计应用到许多基本体系和Delphi结构相似的系统中去。这些系统包括一个或者多个控制器或DSP处理器,可以使用FPGA加速实现需要高性能处理的任务。实现FPGA协处理器的关键在于为FPGA设计不同的硬件加速器,外部控制处理器集成硬件加速器,产生进行硬件加速控制的软件层。所需硬件加速器应用包括视频和通信的主流算法。这些应用有广阔的市场,已经开始服务于那些致力于设计标准专用知识产权(IP)硬件加速器的专业公司。这类公司提供通用算法,直接应用到先进的低成本FPGA上。可以直接购买商用MPEG2,MPEG4,H.264,WiFi的IP模块,以及许多其他的视频和通信标准IP模块。
图2的例子是Amphion公司的MPEG4解码器IP模块,适用于ASIC或FPGA应用场合。
下一步是在FPGA中集成硬件加速器,利用外部总线进行控制,数据输入和输出。设计者可以使用一种新的开发工具,很容易的实现这种集成。利用来自Altera的系统集成工具--SOPC Builder,设计者从可用的IP列表中选择合适的IP模块。进行选择时,参数化菜单显示不同结构的选项,这些选项由使用者在执行前进行设置。设置好参数后,模块便被包含到别的外设列表中,处理器由工程师进行集成。每个独立IP模块被选择并参数化后,他们将被集成到处理体系中去。
设计者使用SOPC Builder可以定义高性能的交换结构,将各种硬件加速器和外设连接到外部的主处理器上。这种交换结构通过鼠标点击直观的模块连接矩阵来实现。体系结构定义好之后,SOPC Builder自动将各种IP综合到一起,产生HDL描述,自动综合到最终的FPGA程序里。系统运行时,最终的程序下载到FPGA中,实现承载专用算法的协处理器功能。
硬件集成完成后,
软件物理器件驱动器将高级软件控制从指定的寄存器和用于控制硬件加速器的内存映射体系中分离。控制硬件加速器的寄存器和存储器都是参数化IP模块的标准元件。多个外设和加速器的集成需要具有FPGA可编程特性的寄存器和内存映射。SOPC Builder在将IP集成到用户定义的交换体系中时,自动生成寄存器和内存映射。
每个IP模块包括一套定义好的软件物理器件驱动器,用于外部的主处理器对IP模块控制。SOPC Builder自动将各种软件物理器件驱动器集成在一起,并使每个驱动器和进行IP模块控制的寄存器及内存映射相关联。SOPC Builder以这种方式自动产生FPGA协处理器和控制处理器的软硬件体系结构,并把它们集成到一起。SOPC Builder为满足快速发展的FPGA技术而开发,以实现各种复杂的系统。
可编程逻辑器件诞生20年以来,由最初低水平的胶合逻辑,快速发展到现在的低成本、高性能的可编程处理器件。两个关键因素促进了FPGA性能和成本的进步:FPGA体系结构的发展和FPGA半导体生产工艺的发展。FPGA体系结构已经发展到能够将可编程逻辑单元和可编程布线集成为阵列的形式。在早期的低密度FPGA中,仅将简单的处理单元进行连接。随着FPGA密度的增加,阵列结构实现了大量的并行处理功能。FPGA体系结构包括存储模块,DSP模块和遍及整个处理阵列的可编程I/O。现在的处理体系结构很容易满足汽车信息通信的性能要求。
另一个推动FPGA发展的关键因素是生产工艺技术,以及它对性能和成本的影响。FPGA利用最新的生产技术来增加密度,提高性能并降低成本。同时,FPGA也促进了工艺技术的发展。FPGA在半导体工艺技术的发展中,具有重要的作用,这是因为在其早期的生产中,采用普通结构,生产了大量的产品。FPGA采用普通结构可以对产品缺陷进行很好的统计测量,这对仔细调整生产工艺技术以获得高产非常重要。FPGA和生产工艺技术的相互促进发展大大增加了FPGA的密度,同时降低了元件价格。因此,现在的低成本FPGA,例如Altera的Cyclone系列器件,可以和专用ASIC和ASSP在价格上相竞争。
汽车娱乐系统正在快速发展,技术不断进步,成为区分汽车等级的标志。前沿的系统体系结构服务于主流汽车市场,附加ASSP和软件可以支持高端市场。FPGA提供了性能互补的和灵活的协处理平台,将许多协同ASSP加强到同一个可再编程平台上。FPGA协处理器,例如前面提到的Delphi体系结构,非常适合于主流的汽车娱乐系统。汽车生产公司采用FPGA协处理器作为高端汽车娱乐系统的一部分,可以通过软件编程提供许多高端视频和通信功能,而这仅由ASSP是无法实现的。在高端灵活的汽车娱乐系统中使用FPGA可以在汽车上市以及汽车的整个生命周期里,实现向上促销的销售新模式。在汽车上市和以后的使用中,具有娱乐系统的汽车可以提升其自身的销售价格。娱乐系统还是对以前出租过的汽车进行估价的重要衡量因素。