高速下行分组接入协议栈的实现方法和基站
技术领域
本发明涉及高速下行分组接入(High Speed Downlink Packet Access,HSDPA)技术,尤其涉及一种高速下行分组接入协议栈的实现方法和基站。
背景技术
为了满足用户对高速分组数据业务的日益增长的需求,3GPP在TD-SCDMA版本5(Release5)规范中引入了HSDPA技术。HSDPA通过采用自适应调制编码(Adaptive Modulation and Coding,AMC)、混合自动重传请求(Hybrid Automatic Repeat reQuest,HARQ)和快速小区选择(Fast Cell Selection,FCS)技术,引入高阶调制(例如,16QAM),在基站(Node B)中增加了一个MAC-hs实体,用于数据的快速调度,以便获得比版本4(Release 4)更高的用户峰值速率和小区数据吞吐率。
本质上,HSDPA是一些无线增强技术的集合,是3GPP Release5无线接入网络(Radio Access Network,RAN)的一个重要特性。利用HSDPA技术可以在3G现有技术的基础上使下行数据峰值速率有很大的提高。与Release4版本时分同步码分多址(Time Division-Synchronous Code Division Multiple Access,TD-SCDMA)系统相比,引入HSDPA技术主要是通过修改空中接口来增强系统性能,主要操作在用户设备(User Equipment,UE)、Node B的物理层(L1)和MAC层(L2),而无线链路控制(Radio Link Control,RLC)和分组数据汇聚协议(Packet Data Convergence Protocol,PDCP)基本不需改动。无论是在UE侧还是Node B侧,在MAC层增加了MAC-hs实体,与高速下行链路共享信道(High Speed Downlink Shared Channel,HS-DSCH)相关的操作都在MAC-hs实体完成。MAC-hs实体除了具有流控制和优先级处理功能外,还需要完成HARQ协议的相关操作,包括调度、重传、重排等。另外无线资源控制(Radio Resource Control,RRC)和Node B应用部分(Node B Application Part,NBAP)协议需要提供相应流程支持。基本原理都是通过引入高速下行共享信道HS-DSCH增强空中接口,并在通用移动电信系统(UMTS TerrestrialRadio Access Network,UTRAN)中增加相应的功能实体。从底层来看主要通过引入AMC、HARQ等链路自适应技术和快速调度、MAC-hs协议等关键技术来实现更高的数据吞吐量,降低时延和提高峰值速率。
图1示出现有技术中MAC-hs在协议栈的位置。如图1所示,MAC-hs实体11属于MAC层,位于MAC-d实体12的下方,位于物理层的上方。MAC-hs也位于RRC13的下方。MAC层与物理层之间通过驱动相连,MAC-hs实体与物理层通过原语(primitive)进行信息交互。
在UTRAN侧MAC-hs实体负责完成HSDPA对应的所有功能。在UTRAN侧的MAC-hs实体位于MAC-d实体的下方,物理层的上方。MAC-hs实体将具有相同优先级的MAC-d协议数据单元(ProtocolData Unit,PDU)复用成一个MAC-hs PDU,再加上MAC-hs PDU的数据包头,形成一个完整的MAC-hs PDU,通过MAC-hs实体与物理层之间的传输信道HS-DSCH发送给物理层。同时MAC-hs实体和物理层之间通过原语来完成控制信息的交互,在上行方向物理层通过物理信道HS-SICH从UE端将反馈信息传输到网络侧,然后物理层通过原语的形式将控制信息上报给MAC-hs实体,MAC-hs实体根据这些控制信息完成MAC-hs PDU的形成和调度;在下行方向,MAC-hs实体将传输信道HS-DSCH中要发送的MAC-hs PDU的相关控制信息通过原语传递给物理层,物理层再将这些控制信息通过物理信道HS-SCCH发送给UE侧。
图2示出现有技术中UTRAU侧MAC-hs实体的结构示意图。如图2所示,MAC-hs实体包括优先级队列分配模块21、HARQ实体22、TFRC选择模块23。
但是,MAC-hs实体和物理层之间的时延较长,影响了系统的运行效率。
发明内容
本发明要解决的一个技术问题是提供一种HSDPA协议栈的实现方法,能够减少时延,提高系统运行效率。
本发明提供一种HSDPA协议栈的实现方法,包括:在物理层中实现MAC-hs实体;MAC-hs实体通过共享内存方式实现与物理层中其他模块的通信。
进一步,该方法还包括:MAC-hs实体通过驱动转发机制实现与MAC层的通信。
进一步,该方法还包括:在DSP上实现包括MAC-hs实体的物理层;在计算机设备上实现MAC层。MAC-hs实体通过驱动缓冲区和MAC层交换原语。
进一步,MAC-hs实体包括:调度/优先级处理模块,用于根据HARQ实体和数据流的优先级来管理HS-DSCH的资源;根据相关上行信令信道的状态报告是传新数据还是重传;为传输的新数据设置优先级识别和传输序号;HARQ实体,用于处理和HARQ相关的任务,负责处理ACK或NACK、数据队列优先级的设置、传输数据块的编号设置、HARQ进程的标识;TFRC选择模块,用于管理在HS-DSCH上数据的传输,选择合适的传输格式与资源。
本发明提供的HSDPA协议栈的实现方法,在物理层中实现MAC-hs实体,MAC-hs实体通过共享内存方式实现与物理层中其他模块的通信,减少了MAC-hs实体和物理层之间由于驱动导致的时延,提高了系统的运行效率。
本发明要解决的另一个技术问题是提供一种基站,能够减少时延,提高系统运行效率。
本发明提供一种基站,包括计算机设备和数字信号处理器,其中在数据信号处理器上实现包括MAC-hs实体的物理层,MAC-hs实体通过共享内存方式实现与物理层中其他模块的通信。
进一步,该基站在计算机设备上实现MAC层;MAC-hs实体通过驱动转发机制实现与MAC层的通信。
进一步,MAC-hs实体包括:调度/优先级处理模块,用于根据HARQ实体和数据流的优先级来管理HS-DSCH的资源;根据相关上行信令信道的状态报告是传新数据还是重传;为传输的新数据设置优先级识别和传输序号;HARQ实体,用于处理和HARQ相关的任务,负责处理ACK或NACK、数据队列优先级的设置、传输数据块的编号设置、HARQ进程的标识;TFRC选择模块,用于管理在HS-DSCH上数据的传输,选择合适的传输格式与资源。
本发明提供的基站,在DSP上实现包括MAC-hs实体的物理层,MAC-hs实体通过共享内存方式实现与物理层中其他模块的通信,减少了MAC-hs实体和物理层之间由于驱动导致的时延,提高了系统的运行效率。
附图说明
图1示出现有技术中MAC-hs在协议栈的位置;
图2示出现有技术中UTRAU侧MAC-hs实体的结构示意图;
图3示出本发明的MAC-hs在协议栈的位置;
图4示出本发明的MAC-hs实体的结构示意图;
图5示出本发明的HSDPA协议栈的实现方法的一个实施例的流程图;
图6示出本发明的HSDPA协议栈的实现方法的另一个实施例的流程图;
图7示出现有技术的架构下HSDPA各信道数据间时序关系;
图8示出本发明的架构下HSDPA各信道数据间时序关系。
具体实施方式
下面参照附图对本发明进行更全面的描述,其中说明本发明的示例性实施例。
本发明的基本思想是,将HSDPA低层协议栈中的关键模块MAC-hs实体从MAC层移植到物理层实现,应用新的接口机制,从而减少MAC-hs实体和原物理层模块之间的时延,提高系统的运行效率。
图3示出本发明的MAC-hs在协议栈的位置。如图3所示,在本发明的架构下,MAC-hs实体31是物理层中的一个模块,与物理层其他模块34一起在数字信号处理(Digital Signal Processing,DSP)芯片中实现。MAC-hs实体31和物理层其他模块34在接口信息交换上,采用共享循环缓冲器(buffer)的方式(例如共享DSP中寄存器),方便地进行数据的访问和操作,实现零时延的优势。在本发明的架构下,MAC层与物理层之间通过驱动相连,负责数据传递;MAC-hs实体31与MAC层的多个模块,例如MAC-d实体32和RRC33,通过原语进行信息交互。原语是由若干多机器指令构成的完成某种特定功能的一段程序,运用抽象的方法来表示层间信息的控制,具有不可分割性,其作用是为了实现层间的通信和控制。
图4示出本发明的MAC-hs实体的结构示意图。如图4所示,MAC-hs实体40包括调度/优先级处理模块401、HARQ实体402和传输格式与资源结合(Transport Format and Resource Combination,TFRC)选择模块403。其中调度/优先级处理模块401包括优先级队列分配单元4011、优先级队列缓冲器4012和调度单元4013。调度/优先级处理模块401用于根据HARQ实体和数据流的优先级来管理HS-DSCH的资源;根据相关的上行信令信道的状态,报告是传新数据还是重传;为传输的新数据设置优先级识别(Queue ID)和传输序号(Transmission sequence number,TSN)。HARQ实体402用于处理和HARQ相关的所有任务,如负责处理ACK或NACK;数据队列优先级(Queue ID)的设置、传输数据块的编号(TFN)设置、HARQ进程的标识(HARQ Process Identifier)。TFRC选择模块403用于管理在HS-DSCH上数据的传输,选择合适的传输格式与资源。对于优先级队列缓冲器4012,用于存储具有相同优先级的MAC-d数据流;优先级队列分配单元4011,用于将MAC-d流根据数据的优先级分配到对应的优先级队列缓冲器4012;调度单元4013,用于根据优先级决定在传输时间间隔内,HS-DSCH是发送新的数据块还是发送等待重传的数据块。该单元遍历重传队列,若重传队列不空,则找出重传队列中具有最高优先级的等待重传PDU;若重传队列为空,说明没有需要重传的PDU,则发送新的PDU。
下面参考图4介绍各个模块在上下行过程中相互配合的具体流程。在下行过程中,调度/优先级处理模块401根据终端上报的信息来决定进行重传或者新的传输。若发送新的数据,则完成MAC-d PDU的不同优先级的队列划分和Queue ID分配。对于选定的优先级队列,HARQ实体403为相应队列的新数据添加TSN和Queue ID,形成MAC-hsPDU,存储到缓冲区并发送给终端等待回复;若重传,则指示HARQ实体403对重传队列中相应的MAC-hs PDU进行重传。在上行过程中,HARQ实体403接受ACK/NACK信息,并将信息报告给调度/优先级处理模块401。调度/优先级处理模块401接收信息,决定是否进行重传或者新的传输。
图5示出本发明的HSDPA协议栈的实现方法的一个实施例的流程图。如图5所示,在步骤502,在物理层中实现MAC-hs实体的功能。将MAC-hs层从MAC层移植到物理层。在步骤504,MAC-hs实体通过共享内存的方式实现与物理层中其他相关模块的通信。
图6示出本发明的HSDPA协议栈的实现方法的另一个实施例的流程图。
如图6所示,在步骤602,在DSP上实现物理层,该物理层包括MAC-hs实体对应的功能模块。
在步骤604,在计算机设备(例如,PC)上实现MAC层。
在步骤606,MAC-hs实体通过共享内存方式实现与物理层中其他相关模块的通信。
在步骤608,MAC-hs实体通过驱动转发机制实现与MAC层的通信。MAC-hs实体通过驱动缓冲区和MAC层交换原语。
进一步,根据本发明HSDPA协议栈的实现方法,可以在DSP中实现MAC-hs模块代码的优化。DSP开发工具能够同时支持C语言和汇编语言,并且具有软件流水技术。汇编语言比机器语言易于读写、调试和修改,同时具有机器语言全部优点,目标代码简短,占用内存少,执行速度快,是高效的程序设计语言,更适合低层操作。可以在部分模块上使用汇编语言来实现,以便进一步优化系统,提高运行效率。另外,可以在物理层上打开优化功能,更加节省时钟消耗。对于在DSP上实现的MAC-hs实体,在编写和调试DSP程序时,对模块中性能影响比较大的程序段用线性汇编编写,并使用汇编优化器优化该段代码,以便使代码获得最好的性能。在DSP开发工具中能够充分实现MAC-hs实体代码的优化,具体的优化措施包括但不限于:对HARQ实体部分采用线性汇编完成;使用intrinsics替换复杂的C语言,例如C6416编译器提供了许多intrinsics,可以快速优化C代码;对短字节的数据使用宽长度的存储器访问,如使用字访问两个short类型数据,将两个short类型数据分别放在32位寄存器的高16位和低16位字段;改进C语言循环程序,使之更有利于软件流水技术优化,开启汇编优化器选项,编译器能从程序中收集信息,尝试对程序循环实现软件流水。
通过结合或者单独使用上述方法,可以有效解决由时延引起的系统不稳定问题,限制二层的时延,减小数据丢失和由于HS-DSCH重传而引起的拥塞,更好地适应信道的快速变化,更大可能地匹配不同无线信道条件下的数据速率,提高体系统的可靠性和稳定性。
需要指出的是,本发明的方法和架构不仅适用于TD-SCDMA网络,同样适用于WCDMA网络。本领域的技术人员可以根据本发明的教导完成在WCDMA等网络中的实现。
图7示出现有技术的架构下HSDPA各信道数据间时序关系。在现有技术的架构下,MAC-hs实体和物理层之间通过驱动相连,由于驱动的存在产生了时延。如图7所示,MAC层在第1个子帧发出HS-SCCH的数据包,经过驱动,至少产生一个子帧的时延,物理层最快在第2个子帧收到;UE在第3个子帧接收物理层处理后的HS-SCCH数据,而下行HS-DSCH与HS-SCCH信道之间的时间间隔是1个子帧,即从UE下行到上行的处理需要2个子帧的时延;间隔一个子帧后,UE侧回复响应,因此,完成一个完整地HS-DSCH与HS-SCCH的下行发和收到确认至少需要7个子帧的时延。当MAC的处理周期是8个子帧时,所能忍受驱动带来的时延只有1个子帧的时间。同时,两个层实体完成一次通信过程时,需要请求(REQUEST)、指示(INDICATION)、响应(RESPONSE)、确认(CONFIRM)四种原语类型,这种“请求-确认”模式影响了HSDPA业务的工作效率。MAC层是在PC中实现的,由于操作系统自身的特点,在实现MAC-hs时,会更消耗更多的时钟周期。考虑到HSDPA兼容支持MAC的处理周期是4个子帧的情况,以及驱动存在1到4个子帧随机概率时延不稳定性,可以把MAC-hs实体处理放到DSP中实现,从而消除了驱动时延的影响。
图8示出本发明的架构下HSDPA各信道数据间时序关系。如图8所示,MAC-hs实体在第1个子帧发出HS-SCCH的数据包,物理层其他模块在第1个子帧就能收到;UE在第2个子帧接收到物理层处理后的HS-SCCH数据;下行HS-DSCH与HS-SCCH信道之间的时间间隔是1个子帧,即从UE下行到上行的处理需要2个子帧的时延;间隔一个子帧后,在第5帧UE侧回复响应HS-SICH,在第5帧内该HS-SICH到达物理层以及MAC-hs实体,因此,完成一个完整地HS-DSCH与HS-SCCH的下行发和收到确认只需要5个子帧的时延。物理层是在DSP中实现的,DSP是实时处理系统,将之前由协议栈内部实现的MAC-hs放到DSP内部实现,有利于提高运行效率;同时,可以保证协议栈和物理层的独立性。
本发明提供的HSDPA低层协议栈的优化实现方案,可以就现有技术,方便添加HSDPA功能,拓展性好,解决了时延问题,提高了运行效率,实现较高的吞吐量。根据本发明的方法,可以有效解决由时延引起的不稳定问题,限制二层的时延,减小数据丢失和由于HS-DSCH重传而引起的拥塞,更好地适应信道的快速变化,更大可能地匹配不同无线信道条件下的数据速率,提高体系统的可靠性和稳定性。
本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。