OpenVINOTM,给你看得见的未来!>>
电子产品世界 » 论坛首页 » 综合技术 » 用于无线手持设备设计的SDR技术

共1条 1/1 1 跳转至

用于无线手持设备设计的SDR技术

菜鸟
2003-05-07 18:21:00    评分
随着移动通信技术的飞速发展,新标准和新业务的推出越来越快,传统的设计开发平台已经无法满足设计的需要。本文介绍的具备自动DSP操作功能的高级编译器,为广大无线手持设备设计工程师提供了一个可针对DSP操作进行优化的高性能、可扩展的软件无线电(SDR)设计平台。 怎样才能实现真正的宽带无线手持设备和系统,这其中所必需的技术正面临着严峻的设计挑战。无线手持设备制造商所生产的产品必须能提供扩展性业务,并且能在全球通用。而产品设计师面临的挑战则在于要开发出高性能的宽带无线设备,同时又必须保证这些设备能够达到极高的电源利用率。 为了满足这些要求,不得不在设计和实现时进行一定的权衡和选择,这就使得对下一代基带处理器的要求变得极富挑战性。在实现设备整合时,硬件和软件方面都面临极大的挑战。而且要满足功耗约束条件,就必须在设计的每个阶段——结构设计、微结构设计、软件设计、算法设计、逻辑设计、电路设计和工艺设计阶段——都采用最新的技术。随着人们对带宽要求的增加,对性能的要求也急剧膨胀,这时,功耗方面的设计就更加困难。采用系统级芯片(SoC)集成和低压工艺技术能够设计出功率更低的SoC芯片,但这种单一的解决方案对流式多媒体应用来说还远远不够。 目前,在无线和有线通信市场,已有大量标准存在或已经被提出,而要及时实现这多种多样的标准就需要一种可编程平台。 在无线通信应用中,GSM和IS-54的数据速率都被限制在15kbps以下,而未来的第三代(3G)系统的数据速率将高达目前速率的100倍以上。这种更高的通信速率就对DSP处理提出了更高的要求。 3G无线通信的一个重要趋势是使用Java来实现应用软件。今后的3G无线系统将大量使用Java。同时,许多运营商也已经开始提供基于Java的业务。因此,有可能所有的3G系统都必须支持Java。 以前的通信系统由于运算要求不是很高,所以一直都采用硬件进行开发。这些系统中的DSP一般仅用于实现语音编码和定制硬件模块。而在高性能3G系统中,要实现一个系统可能需要使用超过二百万个逻辑门电路,这样,一个复杂的3G系统可能要花费几个月的时间才能完成。而且,逻辑设计完成后,设计中不论出现任何错误都必须重新纠正并重新制造设备,从而使设计的完成时间又推迟9个月。这种高强度的工作过程违背了对手持设备具备短开发周期的要求。下面我们将看到,Sanbridge设计小组在通信系统设计中采用的设计方法是如何加快设计进程的。 新的设计方法 Sanbridge设计小组并没有为传输系统的每个功能单独设计定制模块,而是设计了一个能够处理宽带通信业务的处理器。然后再对这个体积微小但功能强大的内核进行高度优化,并利用多个同样的处理器来为宽带通信提供平台。这种方法能够很好地适应半导体的发展,并且在系统配置时具有很大的灵活性,可从容应对未来标准的发展和任何所必需的现场修改。 在设计过程中,Sanbridgey小组采用Matlab来设计通信系统,因此可以确保获得传输系统所要求的误码率和误块率(block error rate)。然后,再将Matlab系统设计与定点C代码接口。自此以后,不再需要编程人员介入。Sanbridge公司高度优化的编译器能够很好地利用DSP操作的并发性,并优化SandBlaster DSP的性能。 [img]http://www.eetchina.com/ARTICLES/2003MAY/A/0305A_DC_S5F1_S.GIF[/img] 上述设计中独特地结合了SIMD Vector/DSP单元、并行压缩单元以及基于RISC的整数单元等多项现代技术。此外,复合指令(分成多组数据包加以执行)的使用也节约了指令空间。可以说,多种技术的有机结合使设计师能够高效地实现控制代码、DSP和Java处理。 动态转换 JVM转换设计师采用软件和硬件两种方法执行Java字节代码。软件方法的优点是执行起来非常灵活,而硬件方法的优点则在于执行的性能较高。当年开发的Delfa-Java结构引入了动态转换的概念,即将Java代码动态转换到基于RISC的多线程机中去,这种多线程机能够进行Vector SIMD DSP操作。随后,Sandbridge的工程师也自主开发出了动态转换功能。正是Java字节代码具备静态可决定的类型状态,这一重要特性加快了这种动态转换功能的开发。 在复杂DSP应用的开发中,人们关心的一个主要问题就是编程人员的劳动生产率。由于大多数传统DSP都是用汇编语言编写的,因此必须在软件设计上投入极大的努力才能完成一个应用程序的编制。以现代语音编码器为例,设计者往往要花费9个多月的时间才能完善设备的性能。随后的设计验证还要花上更长的时间。如果业界能够提供适合DSP使用的高效编译器,那么软件设计的劳动生产率就能大大提高。 Sanbridge公司的工具软件系列中曾为此提供了一种传统ISA编译器,GCC就是这类编译器中的一种。用ISA编译器可以把高级语言(HLL)编译成处理器指令集。而且,在将HLL代码转换成汇编语言时通常都会进行优化。如今,Sanbridge公司又开发出了一种高度优化的编译器。通过软件编译,该编译器能够将C/C++等高级语言高效地转换成最优化的机器语言。 这种编译器有其独特的一面:它能够自动进行DSP操作。该编译器采用了一种叫作语义分析的技术,在采用这种技术时,编译器必须搜索C语言结构序列的含义。这样,编程人员就可以采用独立于结构的方式(比如微控制器)编写C代码,而将设计重点放在所要实现的功能上。如果需要进行DSP操作,可用标准的C模数算法来实现。 这种编译器能够分析C代码,自动从中提取DSP操作,然后对优化后的DSP代码进行综合,而无需额外指定怎样用C代码编写DSP算法。采用这种技术后,软件设计者的劳动生产率比采用固有函数时的劳动生产率会有显著提高。 本文小结 编写DSP编译器的软件设计人员需要面对的另一个挑战是如何实现并行抽取。早期的VLIW机器减轻编译器负担的方法是允许指令选择完全正交化,但这样做会导致代码膨胀。通用机则已认识到了DSP操作的重要性,因而提供了专门的SIMD指令集扩展。不幸的是编译器技术还不能有效地使用这些指令集扩展,调用它们的唯一有效途径是使用库函数。 由于DSP应用可以处理多媒体指令集,因此Sanbridge结构充分使用了这些多媒体指令集。向量化编译器能够采用向量优化法有效地抽取这种并行操作。同时,这种编译器还能解决外部环路向量化的难题,而这通常是内部环路优化的要求之一。 作者:John Glossner 工程副总裁 Erdem Hokenek 首席硬件构造师 Mayan Moudgill 首席软件构造师 Sandbridge技术公司



关键词: 用于     无线     手持     设备     设计     技术     编译器     软件         

共1条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]