首页> 中国专利> 一种LTE物理层在多核DSP上动静态结合调度的方法

一种LTE物理层在多核DSP上动静态结合调度的方法

摘要

一种LTE物理层在多核DSP上动静态结合调度的方法,由调度控制核对当前的一个TTI内所需要完成的算法模块,进行模块细化、JOB配置、生成JOB控制表、建立JOBList操作,待调制数据到达后,调度控制核再根据相应JOB所对应的配置,通过核间消息派发JOB给调度执行核,如无空闲调度执行核时,调度控制核会将此JOB放入对应JOB队列中,待有对应的调度执行核空闲时,再将其派发,JOB完成后,调度控制核会利用JOB回收机制,将其释放,待规定时间到后,调度控制核会根据之前生成的JOBList进行检查,如有JOB未完成,则进入防错处理。本发明简化了LTE物理层在多核DSP上实现的复杂度,减少了程序实现难度,合理利用了DSP资源,提高了处理效率。

著录项

  • 公开/公告号CN102692905A

    专利类型发明专利

  • 公开/公告日2012-09-26

    原文格式PDF

  • 申请/专利权人 武汉邮电科学研究院;

    申请/专利号CN201210175592.1

  • 发明设计人 程经纬;管鲍;

    申请日2012-05-31

  • 分类号G05B19/418(20060101);

  • 代理机构武汉科皓知识产权代理事务所(特殊普通合伙);

  • 代理人薛玲

  • 地址 430074 湖北省武汉市洪山区邮科院路88号

  • 入库时间 2023-12-18 06:37:32

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2018-11-30

    专利权人的姓名或者名称、地址的变更 IPC(主分类):G05B19/418 变更前: 变更后: 申请日:20120531

    专利权人的姓名或者名称、地址的变更

  • 2014-04-02

    授权

    授权

  • 2012-11-21

    实质审查的生效 IPC(主分类):G05B19/418 申请日:20120531

    实质审查的生效

  • 2012-09-26

    公开

    公开

说明书

技术领域

本发明属于移动通信领域,具体涉及一种LTE物理层在多核DSP上动静态结合调度的方 法。

背景技术

LTE(Long Term Evolution,长期演进)项目是3G的演进,始于2004年3GPP的多伦多会议。 LTE并非人们普遍误解的4G技术,而是3G与4G技术之间的一个过渡,是3.9G的全球标准, 它改进并增强了3G的空中接入技术,采用OFDM和MIMO作为其无线网络演进的唯一标准。 在20MHz频谱带宽下能够提供下行326Mbit/s与上行86Mbit/s的峰值速率。改善了小区边缘 用户的性能,提高小区容量和降低系统延迟。

结合LTE物理层与现主流多核DSP(数字信号处理)芯片的特征,以及LTE基站对LTE物 理层在系统中的性能要求,由于LTE物理层中各算法模块的实现麻烦度已基本确定,所以各 模块如何高效的在多核DSP中运行起来必然成为提高物理层性能的关键技术。

LTE基站对LTE物理层在系统中的性能要求的主要特性如下:

(1)在规定时间内完成相应的工作,部分模块要求提前完成。

(2)各模块运行时间不定。

(3)无人机交互。

(4)部分模块执行比较频繁。

(5)每个TTI内所需要完成的模块可以提前知道,但每个TTI的解调数据最小却是按符 号传输的。TTI在LTE中就是一个时域上的一个基本单位,即一个子帧的长度,是 固定的等于1ms,一个子帧(即1个TTI)又包含两个0.5ms的时隙,每个时隙又包 含7个符号。

目前常见的调度算法如下:

(1)先来先服务调度算法(FCFS:First Come First Served):无法满足特性(1), 没有优先级概念。

(2)最短作业优先调度算法(SJF:Shortest Job First):无法满足特性(2),因为各 模块运行时间无法确定。

(3)时间片轮转调度算法:根据特性(3),所以此算法不适用。

(4)优先级调度算法:无法满足特性(4),部分模块需要独享一个核。

(5)多级反馈队列调度算法:与时间片轮调度算法类似,所以此算法不适用。

因此,本技术领域尚待提出更有效的解决方案。

发明内容

为了克服现在方法的缺陷,本发明提出一种LTE物理层在多核DSP上动静态结合调度的 方法,能够更高效的利用DSP资源,提高LTE物理层在系统中的执行性能。

本发明的技术方案为一种LTE物理层在多核DSP上动静态结合调度的方法,设置一个核 为调度控制核,其他核作为调度执行核,调度控制核和调度执行核之间采用核间消息进行通 信;所有调度执行核中有一部分为动态核,其他的为静态核;当每个TTI的配置到达LTE基站 时,进行以下步骤,

步骤1,调度控制核将当前的一个TTI内所需要完成的算法模块细化为若干JOB,为每个 JOB编号,标明每个JOB的动静态核状态,以及设定每个JOB的优先级;生成JOB控制表,根 据JOB控制表建立JOB List;

步骤2,对当前JOB执行以下子步骤,

步骤2.1,由调度控制核派发当前JOB给调度执行核,实现方式为,调度控制核检查当前JOB 的动静态核状态,如为静态则将当前JOB派发给静态核,反之将当前JOB派发给动态核;

步骤2.2,若派发的相应调度执行核正忙,调度控制核将当前JOB放入对应的JOB队列中,进 入步骤3;否则由调度执行核执行当前JOB,并进入步骤3;

步骤2.3,在当前JOB执行完成后,调度执行核通知调度控制核,调度控制核先将当前JOB放 入回收队列,并将发出通知的调度执行核置成空闲状态,然后依据动静态核状态及优先级高 低查看当前JOB对应的JOB队列,如有JOB,则取出作为新的当前JOB并返回执行步骤2,如没 有JOB,调度执行核则进入空闲状态,然后调度控制核再将回收队列中的当前JOB释放,进入 步骤2.4;

步骤2.4,判断JOB List是否完成,如果JOB List完成,结束当前TTI的工作,如未完成则进入 步骤3;

步骤3,等待调制数据到来,在调制数据到来后,由调度控制核取相应JOB为当前JOB, 返回执行步骤2,直到JOB List完成。

而且,在规定时间内去检查JOB List是否完成,未完成则进行防错处理。

而且,一组静态的JOB对应一个静态核,每组静态的JOB对应一个独享的JOB队列, 无优先级;所有动态的JOB共享一组JOB队列,一组JOB队列中包括多个不同优先级的JOB 队列。

与现有多核调度方法相比,本发明简化了LTE物理层由于模块众多并且各模块执行周期 不定等因素造成的在多核DSP上实现的复杂度,减少了程序实现难度,可以更高效的利用 DSP资源,提高LTE物理层在系统中的执行性能。

附图说明

图1为本发明实施例中的调度控制核与调度执行核的示意图;

图2为本发明实施例中的JOB机制流程示意图;

图3为本发明实施例中的JOB回收机制流程示意图;

图4为本发明实施例中JOB List完成机制流程示意图;

图5为本发明实施例中动静态调度流程示意图;

图6为本发明实施例中LTE物理层上行链路模块细化示意图。

具体实施方式

本发明设置一个核为调度控制核,除了不能执行模块,还可以用来处理所有的接口消息; 剩余的核作为调度执行核。下面将说明本发明的典型实施例,以LTE物理层上行链路在 MSC81566核DSP(见图1)上面的应用为例,LTE物理层上行链路主要包含的算法模块有 PUSCH、PUCCH、PRACH和SRS。

LTE:Long Term Evolution,长期演进。

TTI:Transmission Time Interval,传输时间间隔。

PRACH:Physical Random Access Channel,物理随机接入信道。

PUCCH:Physical Uplink Control Channel,物理上行控制信道。

PUSCH:Physical Uplink Shared Channel,物理上行共享信道。

SRS:Sounding Reference Signal,探测参考信号。

第一步,对当前的一个TTI内所需要完成的算法模块进行初始处理,具体如下,见图2:

实施例中模块细化、JOB配置(包括编号、动静态、优先级):

模块细分以JOB为最小单位实现。实施例通过模块细化,将PUSCH划分成信道估计时隙0、 信道估计时隙1、信道均衡0、信道均衡1、信道均衡2、信道均衡3、解传输预编码0、解传输 预编码1、解传输预编码2、解传输预编码3、上行测量、信道解复用、控制信息译码、码块处 理这十四个JOB(最小执行体),并分别编号为⑴、⑵、⑶、⑷、⑸、⑹、⑺、⑻、⑼、⑽、 ⑾、⑿、⒀、⒁;PUSCH划分成PUCCH0、PUCCH1、PUCCH2、PUCCH3这四个JOB,SRS、 PRACH则分别为一个JOB,分别编号为⒂、⒃、⒄、⒅、⒆、⒇,编号顺序与相应调制数据 到达LTE基站的顺序一致。见图6所提供控制表,图中的箭头表示各JOB的上下游依赖关系: 执行信道估计时隙0之后,分别执行信道均衡0、信道均衡1,在信道均衡0之后执行解传输预 编码0、在信道均衡1之后执行解传输预编码1;同样的,执行信道估计时隙1之后,分别执行 信道均衡2、信道均衡3,在信道均衡2之后执行解传输预编码2、在信道均衡3之后执行解传输 预编码3;然后执行上行测量、信道解复用,信道解复用之后执行控制信息译码、码块处理。 PUCCH0、PUCCH1、PUCCH2、PUCCH3是依次执行,SRS、PRACH则可独立执行。按照这 种上下游依赖关系,将当前TTI内的所有JOB组成一条链,可以建立JOB List。

为便于调度起见,本发明进一步提出:一组静态的JOB对应一个静态核,每组静态的JOB 对应一个独享的JOB队列,无优先级;所有动态的JOB对应所有动态核,所有动态核共享一组 JOB队列,一组JOB队列中包括多个不同优先级的JOB队列,高优先级的JOB队列中的JOB优 先派发执行。对于无优先级或同优先级,按照先进先出原则派发。实施例中JOB动静态、JOB 优先级:核0用于调度控制核,记为调度控制核0,核1-5用于调度执行核,记为调度执行核1、 调度执行核2、调度执行核3、调度执行核4、调度执行核5,其中调度执行核1、调度执行核2、 调度执行核3为动态核,调度执行核4、调度执行核5为静态核;配置每个TTI里的所有JOB的 动静态核状态,当JOB的动静态核状态配置为静态时,在JOB执行之前就知道在哪一个调度执 行核上执行,当JOB的动静态核状态配置为动态时则不知。PUCCH执行比较频繁,分配静态 核,独享核4,有自己的JOB队列;核0只会派发这个JOB队列里的JOB给核4执行,无优先级。 PRACH由于受小区配置影响,执行周期不定,所以独享核5,有自己的JOB队列,无优先级。 PUSCH模块比较多,各模块执行时间不定,分配动态核,在核1-3中动态调度,设置一组JOB 队列,其中包括2个不同优先级的队列,核1-3共享这组队列;信道估计时隙0、信道估计时隙 1、信道均衡0、信道均衡1、信道均衡2、信道均衡3、解传输预编码0、解传输预编码1、解传 输预编码2、解传输预编码3这几个JOB优先级为1级,上行测量、信道解复用、控制信息译码、 码块处理优先级为2级。SRS可以根据PRACH的小区周期来定,如果SRS的UE周期与PRACH 的小区周期不相交,则可以独享核5,有自己的JOB队列,无优先级,反之,分配动态核,在 核1-3中动态调度,优先级为1级。见下表。

第二步:本发明的控制机制,具体如下:

本发明提出JOB回收机制,以便更新当前JOB的上下游依赖关系,将当前JOB状态置成完 成。调度控制核用于控制JOB的派发,回收等控制处理,不执行JOB,调度执行核仅用于执行 JOB以及完成后通知调度控制核,见图3:当某调度执行核对一个JOB执行完成后,调度执行 核已空闲,为了高效利用调度执行核,调度控制核先不做回收JOB的工作。调度执行核通过 核间消息通知调度控制核,调度控制核会将此JOB先放入回收队列,然后先依据此JOB的静动 态,如为静态JOB,则查看此JOB对应队列中的JOB,如为动态JOB,则找到此JOB对应队列 中的JOB,从高低优先级依次查看,如有JOB则将其取出并派发给刚才执行完的那个调度执行 核,让其执行,然后调度控制核空闲时,再将回收队列中的JOB释放。

如图5,每个TTI的配置到后,调度控制核首先会对其进行模块细化、JOB配置(包括初始 化、编号、动静态、优先级)、生成JOB控制表(确定JOB上下依赖关系)、建立JOB List操 作(通过JOB控制表,根据JOB上下依赖关系,构造JOB List)。等待调制数据到来后,由调 度控制核派发第一个JOB给调度执行核,派发过程中,调度控制核会检查这个JOB的动静态核 状态,如为静态,则将其派发给静态核,反之,派发给动态核;后续的JOB会按照上面的流 程进行,如果派发JOB时,发现相应的调度执行核正忙,则将其放入对应JOB队列中,否则执 行该JOB。根据本发明提出的队列优先级机制:如果没有空闲核时,此JOB可以进入对应的JOB 队列,同等优先级的JOB,使用FIFO机制。如果有JOB执行完成后,调度执行核会通知调度 控制核,调度控制核会先将此JOB放入回收队列,并将此调度执行核置成空闲状态,然后依 据优先级高低查看JOB队列,如有JOB,则将其取出,并派发给才置成空闲状态的调度执行核, 让其执行,然后调度控制核再将回收队列中的JOB释放,以此流程,所有的JOB将会在此机制 下执行完毕,若查看JOB队列时无JOB,则会等待调制数据到来后,再次派发下一个JOB。JOB List完成时,可结束对初始处理所得JOB List的处理,直到下一个TTI的配置到后重复进行这 个流程。

具体实施时,可以在调度控制核将回收队列中的当前JOB释放后,检查JOB List是否完成。 为提高可靠性起见,还可以制定定时检查JOB List完成机制:将每个TTI里的JOB连接成JOB List,规定时间到后,由调度控制核检查JOB List是否完成,如JOB未全部完成,则需要作相 应的防错处理(例如暂停当前的JOB执行,并将当前TTI剩余的JOB丢弃)。见图4:实施例设 定的相应实现流程为,调度执行核在当前执行的JOB执行完成后,通过核间消息通知调度控 制核,若达到预设的时间阈值,调度控制核检查JOB List的完成状态,完成则结束流程,未完 成则进行防错处理。若未达到预设的时间阈值且JOB List未完成时,继续取JOB List的下一个 JOB进行处理,直到JOB List完成。

为便于实施参考起见,提供实施例的具体执行流程,包括以下步骤:

步骤1,调度控制核将当前的一个TTI内所需要完成的算法模块细化为若干JOB,为每个 JOB编号,标明每个JOB的动静态核状态,以及设定每个JOB的优先级;生成JOB控制表,根 据JOB控制表建立JOB List;

步骤2,在当前的一个TTI内,当有某个JOB的调制数据(IQ数据,指的就是基站接收 到的UE发射的数据)到达后,就将该JOB设为当前JOB,对当前JOB执行以下子步骤,

步骤2.1,由调度控制核派发当前JOB给调度执行核,实现方式为,调度控制核检查当前JOB 的动静态核状态,如为静态则将当前JOB派发给静态核,反之将当前JOB派发给动态核;

步骤2.2,若派发的相应调度执行核正忙,调度控制核将当前JOB放入与当前JOB对应的JOB 队列中,进入步骤3;否则由调度执行核执行当前JOB,并进入步骤3;

步骤2.3,本步骤是由调度执行核执行JOB完成后触发的,在当前JOB执行完成后,调度执 行核通知调度控制核,调度控制核先将当前JOB放入回收队列,并将发出通知的调度执行核 置成空闲状态,然后依据动静态核状态及优先级高低查看当前JOB对应的JOB队列,如有 JOB,则取出作为新的当前JOB并返回执行步骤2,如没有JOB,调度执行核则进入空闲状 态,然后调度控制核再将回收队列中的当前JOB释放,进入步骤2.4;

步骤2.4,判断JOB List是否完成,如果JOB List完成,将JOB List状态位置成完成,并结束当 前TTI的工作,如未完成则进入步骤3;

步骤3,等待调制数据到来,在调制数据到来后,由调度控制核取相应JOB为当前JOB, 返回执行步骤2,直到JOB List完成。

以上所述仅为本发明的实施例而已,并不用以限制本发明。凡是在本发明的精神和原则 之内所作的任何修改、等同替换和改进等,均包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号