黄灵
【摘 要】 随着信息技术的不断快速发展,多核CPU无论是在运行速度上,还是在数据处理的复杂程度上,都要远远高于以往的CPU系统。本文对基于多核CPU的软件无线电平台进行了较为详细的分析,在深入分析多核CPU相关原理的基础之上,进而分析了整个软件无线电平台的研发与应用。
【关键词】 多核CPU 软件无线电平台 研发及应用技术
随着我国国民经济的持续较快发展,信息技术在很多行业都得到了广泛的应用。其中,软件无线电平台作为一个新兴技术,其发展潜力不可估量。因此,本文在深入分析多核CPU的基础之上,将多核CPU的相关原理融入到软件无线电平台的研发与应用中,希望能够进一步促进我国信息技术的不断发展。
1 多核CPU
提到多核CPU,就不得不对全球最大的CPU生产厂家——intel进行分析。对于计算机来说,CPU的运行速度直接决定了其数据的处理能力,想要提升CPU的运行速度,可以采取两种方式:(1)增加单位面积CPU的数据处理能力;(2)采取并行处理模式,在此基础上,多核CPU便应运而生了。
2 软件无线电平台
软件无线电平台的设计目的,可以简单概括为:实现模拟信号的数字化。软件无线电平台之所以能够实现模拟信号的数字化,主要在于其开放性与通用性。软件无线电平台主要由三大部分构成:ADC、DAC变换器以及射频模拟前端。除此之外,一些更加先进的软件无线电平台还包括高速数字信号处理单元这一元件。对于软件无线电平台来说,最为关键的元件为DAC变换器和ADC,这两大元件直接承担了软件无线电平台的模拟信号数字化任务。
3 SORA平台
本文分析的软件无线电平台,是基于多核CPU的SORA平台。SORA平台是目前使用较多的软件无线电平台,不仅能够依托商用个人电脑,而且能够实现可编程化。除此之外,SORA平台既具备一般软件无线电平台灵活性、开放性和通用性的特点,又具备基于硬件软件无线电平台的高性能特征。
3.1 SORA平台架构
无论哪种软件无线电平台,其平台架构是最重要的研究内容,SORA平台也不例外。SORA平台由两大主要部分构成:硬件架构和软件架构。
(1)硬件架构。SORA平台作为一种基于多核CPU的软件无线电平台,其硬件设计的方式为模块化设计。简而言之,就是将射频控制电路板(Radio Control Board,RCB),通过射频转接板(Radio Adaptor Board,RAB)连接不同的射频前端(Radio Frontend,RF)。
从以上分析能够看出:SORA平台的硬件关键在于射频控制板。射频控制板不仅能够充当主机和数字信号之间的传输连接,而且能够形成一个较为独特的缓冲区域。该缓冲区域能够有效减少甚至消除普通基于多核CPU的软件无线电平台存在的数据传输延迟抖动的问题。
(2)软件架构。相比硬件架构,SORA平台的软件架构更具特点。顾名思义,基于多核CPU的软件无线电平台,其操作应该依托商用PC,SORA平台也不例外。SORA平台的软件架构依托于windows操作系统,同时在编程方面,由于很好地满足了用户的无线通讯协议,因此,不仅构建了一种灵活、便捷的编程环境,而且使用户实现了MAC层的相关功能。
3.2 多核流水线处理技术
SORA平台作为一个有代表性的基于多核CPU的软件无线电平台,其必然具备多核CPU与软件无线电平台的两大优势,其中,多核流水线处理技术就是其众多技术优势中具有代表性的一大优势。
之所以要采用多核流水线处理技术,原因在于,很多基于多核CPU的软件无线电平台,必须要有一些高速的无线通信协议,而在这种高速无线通信协议的条件下,单个CPU核心的计算能力仍然无法满足物理层的计算需求。SORA平台作为一个具有代表性的基于多核CPU的软件无线电平台,其必然要利用当代CPU中多核心的特性,利用多个CPU核心的并行计算,从而达到加快处理速度的目的。不仅如此,多个CPU核心的并行计算还能够满足物理层信号处理的计算需求。因此,这种多核技术应该是可扩展的。与此同时,由于软件无线电平台信号处理算法的复杂度会随着无线技术的发展而呈现出越来越复杂的状态,这就要求其必须要利用多核心、多处理器以及多计算机进行并行计算才能更好地满足物理层算法的计算需求。
所谓的多核流水线处理技术,可以概括为通过多个模块的协同配合,从而实现对相关物理层进行信号处理。多个模块处于一种流水线式的信号处理状态,由于不同模块具有不同的数据类型和数据储存量,因此其信息处理速度也不尽相同。
SORA平台所采用的多核流水线处理技术,其调度方式为静态调度。之所以选择静态的调度方式,主要原因在于:SORA平台整体的数据流执行为一个静态的过程,加上整个软件无线电平台采用的是一个多模块的操作模式,因此,多核流水线处理技术可以简要概括为:首先,对相关模块进行分类,按照执行模式将其分为静态和动态;然后,确定分类后的模块是否处于可调度状态;第三,对SORA平台的数据流进行分割;最后,将分割后的各子数据流分别分配到多核CPU上,从而完成了整个模拟数字的信号化处理。
多核流水线处理技术采用静态调度模式的优势在于:在进行不同子数据流的多核分配过程中,由于同步缓冲区的存在,会降低整个软件无线电平台的运行速度,而当实行静态调度时,相邻的子数据流会自动的被分配到不同的CPU核心,这样就有效减少了同步缓冲区的存在数量,从而达到既降低同步操作带来的额外开销,同时又提升了SORA平台的整体运行效率。
4 实时性支持
对于软件无线电平台,尤其是基于多核CPU的软件无线电平台,其实时性支持十分重要。
软件无线电平台在实时性的保证上,主要依靠严格的资源计算和分配,基于多核CPU的软件无线电平台同样如此,软件无线电平台的实时性通过实时操作系统来实现。实时操作系统按照任务的难易程度,将平台内的所有资源调动起来,从而达到在最短时间内完成最高效的任务调度。
相反,对于非实时操作系统来说,由于整个平台内部存在着上百个任务同时运行,而且非实时操作系统的资源配置方式较为简单,即简单按照任务的时间长度进行区间划分,非实时操作系统将各个时间区间分配到不同的数据处理任务当中。由于划分方式较为简单,因此容易出现任务暂停的情况,即如果某一时间区间已经结束,但是相应的任务还没有完成,那么该作业就会被暂停,从而放弃CPU,而系统与此同时就会将CPU分配给下一个任务。
对于基于多核CPU的软件无线电平台来说,无论是实时性操作系统,还是非实时性操作系统,想要保证运行速度,就要优化整个平台的任务分配。通常的方法是按照任务的优先等级进行划分,即紧迫型的任务能够优先进入系统,进而优先得到处理。基于以上情况,基于多核CPU的软件无线电平台引入了最高优先权调度算法。
所谓的最高优先权调度算法,指的是:首先,系统将CPU分配到最高优先权的任务中;然后,在一段时间内,这一任务就是系统所有任务中优先权最高的;这时,如果出现一个比现有任务优先权更高的任务,那么相应的调度程序就会暂停目前正在运行的任务,与此同时,将CPU分配给新的更具优先权的任务。通过以上分析,能够看出:优先权调度算法的优势在于,在所有的任务当中,CPU的分配能够优先照顾到更加紧迫的任务。因此,优先权调度算法通常运用在较为严格的软件无线电平台当中。除此之外,优先权调度算法还运用在一些对性能要求较高的批处理以及分时系统当中。
当前,很多基于多核CPU的软件无线电平台采用的都是优先权调度算法,其中,Windows操作系统采用的也是这种方法。新的多核CPU以及超线程CPU,内部就有超过1个的CPU执行体,可以在同一时刻同时运行多个任务。在具有多核处理器的非实时操作系统中,可以将某一些CPU核心分配给无线信号处理任务,使其独占CPU核心运行,以此保证无线信号处理任务不被其它任务打断,保证实时性。
5 结语
综上所述,对于基于多核CPU的软件无线电平台来说,无论是其硬件、软件构造、处理技术还是调度模式,都要服务于整个平台的流畅的信息数字化过程。因此,在实际的研究当中,相关技术人员应该大力加强平台的研发与应用研究,特别是要对其处理技术和调度模式进行深入分析。随着我国工业化、信息化进程的不断加快,未来基于多核CPU软件无线电平台的应用领域必将更加广泛,这就要求广大科研人员勇攀高峰,研发出一些更多更好的基于多核CPU的软件无线电平台。
参考文献:
[1]曹铁军.软件无线电技术研究[D].大连理工大学,2008.
[2]骑志刚.基于软件无线电的多标准基带平台-WCDMA向HSDPA的平滑演[D].上海:上海交通大学,2004.
[3]夏少波,许娥.软件无线电SDR的关键技术研究[J].无线通信技,2010(51).
[4]杨小牛,褛才义,徐建良.软件无线电原理与应用[M].北京:电子工业出版社,2001:1-7.
[5]钮心沂,杨义先.软件无线电技术与应用[M].北京:北京邮电大学出版社,2000:3-8.
[6]李忠琦.面向软件无线电的片上网络关键技术研究[D].电子科技大学,2009.