背景技术
HSPA包括了高速下行分组接入(简称,HSDPA)和高速上行分组接入(简称,HSUPA)两项技术,在TD-SCDMA系统中分别实现了单载波下行速率峰值2.8Mbps和上行速率峰值2.2Mbps。在高速率的数据交互过程中对数据的处理能力提出了更高的要求。
在TD-SCDMA移动终端(简称,UE)中,媒体接入控制(简称,MAC)层负责处理数据在物理层和协议栈之间的交互,在HSUPA业务中,MAC层需要对发送的数据进行组装,MAC层从无线链路层(简称,RLC)获取一个或多个MAC_d协议数据单元(简称,PDU),将这些MAC_d PDU组装成一个MAC_e PDU,在组装过程中,需要添加一个MAC头到MAC_e PDU,该MAC头的长度不一定是字节的整数倍,因此,在MAC层进行数据组装时,需要对MAC_d PDU进行以比特为单位偏移后再组装成相应的MAC_e PDU。同理,在HSDPA业务中,MAC层接收到的数据是包含有MAC头的MAC_hs PDU,MAC层需要去掉MAC头,再将数据分割组装成一个或多个MAC_dPDU,同样的,由于该MAC头的长度不一定是字节的整数倍,因此,需要对MAC_hs PDU进行以比特为单位的偏移后再组装成相应的MAC_d PDU。
现有技术实现MAC层HSPA数据组装的方法主要是采用软件来完成的。
现有技术实现MAC层HSUPA数据组装的方法如附图1所示:
1、CPU将MAC头信息的前m个字节顺序存放到MAC_e PDU中;
2、CPU读出含有MAC头信息最后k比特数据的字节,根据偏移长度k截取该字节中的k个MAC头信息比特;
所述偏移长度k=MAC头信息比特数-(m×8);
3、CPU读取一个MAC_d PDU的首字节,截取其前8-k位比特信息,与MAC头信息比特拼接成一个完整的字节,作为MAC_e PDU的第一个字节保存到MAC-e PDU;
4、CPU读取该MAC_d PDU的第二个字节,截取其前8-k位比特信息与该MAC_d PDU首字节的后k比特信息拼接成一个字节,作为MAC_e PDU的第二个字节保存到MAC层所申请的MAC-e PDU存储空间;
5,以此类推,依次读取该MAC_d PDU的所有字节,每读取一个字节,截取其前8-k位比特信息与前一个字节的后k比特拼接成一个字节,顺序保存到MAC-e PDU,直到将该MAC_d PDU的最后一个字节的前8-k位比特信息与倒数第二个字节的后k比特拼接成一个字节;
6、判断是否还有其他的MAC_d PDU存在,如有则将剩下的最后一个字节的后k位比特信息与下一个MAC_d PDU的第一个字节的前8-k位比特信息拼接成一个字节并顺序保存到MAC-e PDU;否则执行步骤8;
7、重复步骤4、5直到将所有MAC_d PDU拼接完成;
8、将剩下的最后一个字节的后k位比特信息添加8-k位任意信息形成一个完整的字节,作为MAC_e PDU的最后一个字节保存到MAC-e PDU,完成MAC_e PDU数据的组装。
现有技术MAC层实现HSDPA数据组装的方法如附图2所示:
1、CPU读取MAC-hs PDU的第m+1和m+2两个字节,根据偏移长度k截取前一个字节的后8-k比特和后一个字节的前k比特拼接成一个字节,保存到RLC层指定的MAC_d PDU存储空间的第一个字节位置;
所述偏移长度k=MAC头信息比特数-(m×8);
2、CPU继续读取下一个字节,将其前k比特与前一个字节的后8-k比特进行拼接,判断当前MAC_d PDU的长度是否达到RLC层指定的MAC_d PDU长度,如是,则将拼接好的字节放到下一个MAC_dPDU的第一个字节位置,否则将拼接好的字节顺序存放到当前MAC_dPDU存储空间;
3、重复步骤2,直到将MAC_hs PDU的最后一个字节的前k比特与倒数第二个字节的后8-k比特拼接,顺序存放到指定的MAC_dPDU;
4、将MAC_hs PDU最后一个字节剩下的后8-k比特直接丢弃,完成MAC层HSDPA数据组装。
现有技术实现HSPA数据组装的方法存在以下几点不足:
1、由于现有技术在数据拼接中采用软件实现的方式,因此,在实现数据拼接操作时只能以字节为单位读取数据,然后通过“与”、“或”等操作将两个字节中的某些比特位拼接成一个字节,在实现数据的拼接过程中,在HSUPA中,每个字节都需要读取两次,在HSDPA中,除尾字节外,每个字节也需要读取两次,浪费了大量的时间,降低了系统数据传输的效率。
2、现有技术实现数据组装的过程全部由CPU控制完成,数据的读取、字节的拼接、数据的存储都要由CPU来实现,由于HSPA传输的数据量较大,使得每次数据组装时都会长时间占用CPU,耗费了大量的系统资源,不利于其他系统任务的及时处理机系统处理进程的优化。
现有技术中,软件只能以字节为单位实现数据的存取,而硬件则可实现以组合逻辑的方法在字节中读取任意比特,再将读取的每8比特组合为一字节存储。
发明内容
针对上述现有HSPA数据组装方法存在的问题,本发明提出了一种HSPA数据组装实现方法及装置,利用硬件组合逻辑可以以比特为单位实现数据存取的特点,使用硬件装置来完成HSPA数据组装。
本发明实现HSUPA数据组装的技术方案是:
采用硬件装置来实现HSUPA数据组装;
1、CPU将MAC头信息、MAC头信息比特数、MAC_e PDU首地址及HSUPA数据组装命令发送给HSUPA数据组装硬件装置;
2、硬件装置将MAC头信息的前m个字节顺序保存到MAC_e PDU的前m个存储单元;
3、硬件装置将MAC头信息剩余k比特保存作为偏移信息;
4、硬件装置依次读取每条数据组装命令,根据命令读取所指示的MAC_d PDU数据,对每个MAC_d PDU,将其与偏移信息实施按比特拼接后以字节为单位顺序存放到MAC_e PDU,用其最后的k比特数据更新偏移信息;
5、硬件装置将最后一条命令所指示的MAC_d PDU的最后k比特数据补足为一个字节,顺序存放到MAC_e PDU,完成本次HSUPA数据组装;
其中,所述
为向下取整,偏移长度k=MAC头信息比特数-(m×8);
所述数据组装命令包括MAC_d PDU的首地址及长度,数据组装命令的条数等于所需组装的MAC_d PDU的个数。
所述根据命令读取所指示的MAC_d PDU数据,对每个MAC_dPDU,将其与偏移信息实施按比特拼接后以字节为单位顺序存放到MAC_e PDU包括:
从命令所指示的MAC_d PDU首地址开始,每次顺序读取n个字节的数据到硬件装置的缓存器,如MAC_d PDU中剩余未读取数据不足n个字节,则读取全部剩余未读取字节到硬件装置的缓存器;
每读取一次数据,将偏移信息与缓存器中的前8-k比特拼接为一 个字节,并顺序存放到MAC_e PDU,此后以8比特为单位,将缓存器中剩余的数据顺序读出并以字节的形式存放到MAC_e PDU,直到缓存器中剩余最后k比特数据,用缓存器中的最后k比特数据更新偏移信息;
其中,所述n取值范围为1~L,L是硬件装置缓存器的长度。
优选的,所述硬件装置以命令队列的方式存放、读取CPU发送的HSUPA数据组装命令。
本发明实现HSDPA数据组装的技术方案是:
采用硬件装置来实现HSDPA数据组装;
1、CPU将MAC头信息比特数、MAC_hs PDU首地址及HSDPA数据组装命令发送给HSDPA数据组装硬件装置;
2、硬件装置依次读取数据组装命令,从MAC_hs PDU首地址+m开始,顺序读取MAC_hs PDU数据,根据偏移长度k对读取的数据实施按比特拼接,并以字节为单位将拼接后的数据顺序存放到命令所指示的MAC_d PDU;
3、存放的数据长度达到数据组装命令所指定的长度后,读取下一条命令,继续顺序读取MAC_hs PDU数据并实施比特拼接,从命令指定的地址开始以字节的形式顺序存放拼接后的数据,直到完成最后一条命令所指定MAC_d PDU的存放;
其中,所述 为向下取整,偏移长度k=MAC头信息比特数-(m×8);
所述HSDPA数据组装命令包括MAC_d PDU首地址及长度,HSDPA数据组装命令的条数等于所需组装的MAC_d PDU个数。
所述顺序读取MAC_hs PDU数据,根据偏移长度k对读取的数据实施按比特拼接,并以字节为单位将拼接后的数据顺序存放到命令所指示的MAC_d PDU包括:
从MAC_hs PDU首地址+m开始,每次顺序从MAC_hs PDU中读取n个字节的数据到硬件装置的缓存器中,如MAC_hs PDU中剩余未 读取数据不足n个字节,则读取全部剩余未读取字节到硬件装置的缓存器中;如是第一次从MAC_hs PDU读取数据,则将缓存器中前k比特数据丢弃,否则将偏移信息与缓存器中第一个字节的前k比特数据拼接成一个字节,顺序保存到命令所指示的MAC_d PDU;从缓存器中的第k+1比特开始,以8比特为单位依次读取缓存器中的数据并以字节的形式顺序存放到命令所指示的MAC_d PDU,将缓存器中的最后8-k比特数据保存作为偏移信息;
其中,所述n取值范围为1~L,L是硬件装置缓存器的长度。
优选的,所述硬件装置以命令队列的方式存放、读取CPU发送的HSDPA数据组装命令。
本发明还公开了一种HSUPA数据组装的装置,包括:
接口模块,用于完成本装置与CPU及存储器之间的数据交互,包括,接收来自CPU的数据组装命令、MAC头信息、MAC头信息比特数、MAC_e PDU首地址;为本装置数据组装模块与外部存储器之间提供数据信息交互接口;完成数据组装后产生中断信号发送给CPU;
命令队列存储模块,以命令队列的形式存储数据组装命令;
偏移信息存储模块,用于存储偏移信息;
目的地址存储模块,用于存储目的地址;
数据组装模块,包括数据缓存器和比特拼接逻辑模块,用于实现HSUPA数据组装,从命令队列存储模块读取数据组装命令,通过接口模块读取MAC_d PDU数据,完成数据按比特拼接,通过接口模块将数据存放到目的地址存储模块所指示的MAC_e PDU。
所述数据组装模块实现数据组装的过程包括:数据组装模块依次从命令队列存储模块中读取数据组装命令,每读取一条命令后,通过接口模块从命令所指示的MAC_d PDU首地址开始,每次顺序读取n个字节的数据到硬件装置的缓存器,每读取一次数据,将偏移信息模块中的偏移信息与缓存器中的前8-k比特拼接为一个字节,并顺序存放到MAC_e PDU,此后以8比特为单位,将缓存器中剩余的数据顺序读出并以字节的形式顺序存放到MAC_e PDU,直到缓存器中剩余 最后k比特数据,用缓存器中的最后k比特数据更新偏移信息模块中的偏移信息;
完成对最后一条命令所指示的MAC_d PDU的数据组装后,将偏移信息模块中偏移信息补足为一个字节,顺序存放到MAC_e PDU;
其中,所述n取值范围为1~L,L是硬件装置缓存器的长度。
本发明还公开了一种HSDPA数据组装的装置,包括:
接口模块,用于完成本装置与CPU及存储器之间的数据交互,包括,接收来自CPU的数据组装命令、MAC头信息比特数、MAC_hs PDU首地址;为本装置数据组装模块与外部存储器之间提供数据信息交互接口;完成数据组装后产生中断信号发送给CPU;
命令队列存储模块,以命令队列的形式存储数据组装命令;
偏移信息存储模块,用于存储偏移信息;
源地址存储模块,用于存储源地址;
数据组装模块,包括数据缓存器和比特拼接逻辑模块,用于实现HSDPA数据组装,从命令队列存储模块读取数据组装命令,通过接口模块从源地址存储器所指示的地址读取MAC_hs PDU数据,完成数据按比特拼接,通过接口模块将数据存放到数据组装命令所指示的MAC_d PDU。
所述数据组装模块实现数据组装的过程包括:数据组装模块依次读取命令队列存储模块中的数据组装命令,每读取一条命令后,通过接口模块从源地址存储器所指示的源地址开始,每次顺序从MAC_hsPDU中读取n个字节的数据到硬件装置的缓存器中,如是第一次从MAC_hs PDU读取数据,则将缓存器中的前k比特数据丢弃,否则将偏移信息存储模块中的偏移信息与缓存器中第一个字节的前k比特数据拼接成一个字节,顺序保存到命令所指示的MAC_d PDU存储空间;从缓存器中的第k+1比特开始,以8比特为单位依次读取缓存器中的数据并以字节的形式顺序存放到命令所指示的MAC_d PDU,将缓存器中的最后8-k比特数据保存到偏移信息存储模块中作为偏移信息;直到完成最后一命令所指示的MAC_d PDU的组装;
其中,所述n取值范围为1~L,L是硬件装置缓存器的长度。
本发明的技术方案通过硬件装置来实现HSPA数据组装,利用硬件逻辑实现对数据的按比特操作,减少了对数据操作的次数,提高了数据组装的速率,从而提高了HSPA数据传输的效率;此外,CPU一次性将数据组装的命令发送给硬件装置,由硬件装置完成数据组装的工作,在一次数据组装完成后CPU才会介入,进行后续处理,HSPA数据组装占用CPU和总线的时间大大的减少,有效降低了HSPA数据组装过程对CPU和系统资源的消耗。
具体实施方式
为清楚说明本发明的技术方案,下面给出优选的实施例并结合附图详细说明。
具体实施例1
本实施例为本发明的HSUPA数据组装方法的一个优选实施例,总体流程如附图3所示:
1、CPU将MAC头信息字节、MAC头信息比特数、MAC_e PDU首地址及HSUPA数据组装命令给HSUPA数据组装硬件装置;
其中所述数据组装命令包括MAC_d PDU的首地址及长度,数据组装命令的条数等于所需组装的MAC_d PDU的个数;;
本实施例中,每个MAC_d PDU长度为336比特;
2、硬件装置将MAC头信息的前m个字节顺序保存到MAC_e PDU 的前m个存储单元;
3、硬件装置将MAC头信息剩余k比特保存作为偏移信息,并本地保存CPU发送过来的其他信息;
硬件装置将MAC头信息剩余k比特保存作为偏移信息字节的高k比特,将HSUPA数据组装命令保存到命令队列,将MAC_e PDU首地址+m作为目的地址保存;
其中,偏移长度k=MAC头信息比特数-(m×8);
4、硬件装置依次读取每条数据组装命令,根据命令读取所指示的MAC_d PDU,将其与偏移信息实施按比特拼接,并以字节为单位顺序存放到MAC_e PDU,用其最后的k比特数据更新偏移信息;
401、硬件装置从命令队列中读取一条命令,将命令中指示的将要进行组装的MAC_d PDU首地址作为源地址;
402、判断MAC_d PDU中剩余未读取字节数是否大于等于n,如是则执行步骤403,否则执行步骤404;
其中,所述n的取值范围为1~L,L为硬件装置缓存器长度;
403、硬件装置从源地址开始,顺序读取n个字节的数据到其缓存器中,将源地址加n,执行步骤405;
404、硬件装置读取MAC_d PDU全部剩余未读取字节到其缓存器中;
405、将偏移信息字节的高k比特与缓存器中的前8-k比特拼接为一个字节,存放到目的地址所指示的存储单元,将目的地址加1;
所述拼接方式为将偏移信息字节的高k比特作为字节的前k比特,缓存器中的前8-k比特作为字节的后8-k;
406、以8比特为单位,将缓存器中剩余的数据顺序读出并以字节的形式存放到目的地址所指示的存储单元,每存放一个字节,将目的地址加1;
407、用缓存器中的最后k比特数据更新偏移信息字节高k比特;
408、判断从当前MAC_d PDU读取的数据长度是否已达到命令所指示的MAC_d PDU长度,如是,执行步骤409;否则执行步骤402;
409、判断命令队列是否为空,如是则执行步骤5,否则执行步骤401;
5、硬件装置将偏移信息字节高k比特数据补足为一个字节,存放到目的地址所指示的存储单元;
具体补足方法为,将偏移信息字节高k比特数据作为字节的前k比特,在其后补充任意8-k比特数据,形成一个完整的字节。
6、硬件装置产生HSUPA数据组装完成中断,发送给CPU,通知CPU本次HSUPA数据组装完成。
具体实施例2
本实施例为本发明的HSDPA数据组装方法的一个优选实施例,总体流程参加图4。
1、CPU将MAC头信息比特数、MAC_hs PDU首地址及HSDPA数据组装命令发送给HSDPA数据组装硬件装置;
所述HSDPA数据组装命令包括MAC_d PDU首地址及长度,HSDPA数据组装命令的条数等于MAC_d PDU个数;
本实施例中,每个MAC_d PDU长度为336比特;
2、硬件装置本地保存CPU发送过来的信息;
硬件装置将MAC_hs PDU首地址+m保存作为源地址,将数据组装命令保存到命令队列;
3、硬件装置依次读取数据组装命令,从源地址开始,读取MAC_hsPDU数据,根据偏移长度k对读取的数据实施按比特拼接并以字节为单位将拼接后的数据顺序存放到命令所指示的MAC_d PDU;
所述偏移长度k=MAC头信息比特数-(m×8);
301、从命令队列中读取一条命令,并从命令中获取MAC_d PDU首地址作为目的地址;
302、判断MAC_hs PDU中剩余未读取字节数是否大于等于n,如是则执行步骤303,否则执行步骤304;
303、从源地址指向的存储单元开始顺序读取n个字节的数据到数据组装模块的缓存器中,将源地址加n,执行步骤305;
304、从源地址指向的存储单元开始顺序读取MAC_hs PDU全部剩余未读取字节到硬件装置的缓存器中;
305、判断是否是第一次读取MAC_hs PDU,如是则执行步骤307,否则执行步骤306;
306、将偏移信息字节的低8-k比特与缓存器的前k比特拼接成一个字节存放到目的地址所指示的存储单元,目的地址加1;
所述拼接方式为将偏移信息字节的低8-k比特作为字节的前8-k比特,将缓存器的前k比特作为字节的后k比特。
307、从缓存器第k+1比特开始,以8比特为单位依次读取数据,并以字节的形式顺序存放到目的地址指示的存储单元,每存放一个字节,将目的地址加1;
308、将缓存器中剩余的最后8-k比特数据保存到偏移信息字节的低8-k位;
309、判断已存放到当前MAC_d PDU的数据长度是否达到命令所指示的MAC_d PDU长度,如是执行步骤310,否则执行步骤302;
310、判断命令队列是否为空,如是执行步骤4、否则执行步骤301;
4、硬件装置产生HSDPA数据组装完成中断,发送给CPU,通知CPU本次HSDPA数据组装完成。
具体实施例3
本实施例为本发明HSUPA数据组装的装置的一个优选实施例,其结构参见图7,包括:
接口模块,用于完成本装置与CPU及存储器之间的数据交互,包括,接收来自CPU的数据组装命令、MAC头信息、MAC头信息比特数、MAC_e PDU首地址;为本装置数据组装模块与外部存储器之间 提供数据信息交互接口;完成数据组装后产生中断信号发送给CPU;
命令队列存储模块,以命令队列的形式存储数据组装命令;
偏移信息存储模块,用于存储偏移信息;
目的地址存储模块,用于存储目的地址;
数据组装模块,包括数据缓存器和比特拼接逻辑模块,用于实现HSUPA数据组装,从命令队列存储模块读取数据组装命令,通过接口模块读取MAC_d PDU数据,完成数据按比特拼接,通过接口模块将数据存放到目的地址存储模块所指示的MAC_e PDU。
下面介绍一下本具体实施例装置的工作流程:
1、CPU将HSUPA数据组装命令、MAC头信息、MAC头信息比特数、MAC_e PDU首地址一次性发送到本装置接口模块;
2、接口模块将MAC头信息的前m个字节从MAC_e PDU首地址开始顺序存放到MAC_e PDU中;
3、接口模块将HSUPA数据组装命令发送到命令队列存储模块以命令队列的方式保存,将MAC头信息剩余的k比特保存到偏移信息存储模块作为偏移信息字节的高k比特,将MAC_e PDU首地址+m保存到目的地址存储模块作为目的地址,将偏移长度k发送给数据组装模块;
其中,所述偏移长度k=MAC头信息比特数-(m×8);
4、数据组装模块从命令队列存储模块中读取一条数据组装命令,将命令中所包含的MAC_d PDU首地址作为源地址;
5、数据组装模块判断MAC_d PDU剩余未读取的字节数是否大于等于n;
如是,数据组装模块通过接口模块,从源地址所指向的存储单元开始顺序读取n个字节的数据到其缓存器,将源地址加n;
否则,数据组装模块通过接口模块,从源地址所指向的存储单元开始顺序将剩余的字节全部读取到其缓存器;
其中,所述n为每次从MAC_d PDU数据中读取的字节数,其取值根据硬件装置的缓存器的长度设定,取值范围为1~L,L是MAC_dPDU的长度,本实施例中,n=L=8;
6、数据组装模块的比特拼接逻辑单元从偏移信息存储模块中读取偏移信息字节的高k比特,与缓存器中的前8-k比特拼接为一个字节,通过接口模块存放到目的地址,将目的地址存储模块中的目的地址加1;
所述拼接方式为,将偏移信息字节的高k比特作为字节的前k比特,将缓存器中的前8-k比特作为字节的后8-k比特;
7、此后,比特拼接逻辑单元以8比特为单位,将缓存器中剩余的数据顺序读出并以字节的形式通过接口模块存放到目的地址,每存放一个字节,将目的地址存储模块中的目的地址加1;
8、数据组装模块用缓存器中的最后k比特数据更新偏移信息模块中偏移信息字节高k比特;
9、数据组装模块判断从当前MAC_d PDU读取的数据长度是否已达到命令所指示的MAC_d PDU长度;如是,执行步骤10,否则返回步骤5;
10、数据组装模块判断命令队列是否为空,如是则将偏移信息模块中偏移信息字节高k比特补足为一个字节,通过接口模块存放到目的地址;否则返回步骤4;
11、数据组装模块通知接口模块数据组装完成,接口模块产生HSUPA数据组装完成中断,发送给CPU。
具体实施例4
本实施例为本发明HSDPA数据组装的装置的一个优选实施例,其结构参见图8,包括:
接口模块,用于完成本装置与CPU及存储器之间的数据交互,包括,接收来自CPU的数据组装命令、MAC头信息比特数、MAC_hs PDU首地址;为本装置数据组装模块与外部存储器之间提供数据信息交互接口;完成数据组装后产生中断信号发送给CPU;
命令队列存储模块,以命令队列的形式存储数据组装命令;
偏移信息存储模块,用于存储偏移信息;
源地址存储模块,用于存储源地址;
数据组装模块,包括数据缓存器和比特拼接逻辑模块,用于实现HSDPA数据组装,从命令队列存储模块读取数据组装命令,通过接口模块从源地址存储器所指示的地址读取MAC_hs PDU数据,完成数据按比特拼接,通过接口模块将数据存放到数据组装命令所指示的MAC_d PDU。
下面介绍一下本具体实施例装置的工作流程:
1、CPU将MAC头信息比特数、MAC_hs PDU首地址及HSDPA数据组装命令发送给HSDPA数据组装硬件装置接口模块;
2、硬件装置接口模块将MAC_hs PDU首地址+m保存到源地址存储模块作为源地址,将数据组装命令保存到命令队列存储模块,将偏移长度发送给数据组装模块;
3、数据组装模块从命令队列中读取一条命令,并从命令中获取MAC_d PDU首地址作为目的地址;
4、数据组装模块判断MAC_hs PDU剩余未读取的字节数是否大于等于n;
如是,通过接口模块从源地址存储模块中的源地址指向的存储单元开始顺序读取n个字节的数据到其缓存器中,将源地址存储模块中的源地址加n;
否则、从源地址存储模块中的源地址指向的存储单元开始顺序读取顺序读取全部剩余未读取字节到数据组装模块的缓存器中;
其中,所述n为每次从MAC_d PDU数据中读取的字节数,其取值根据硬件装置的缓存器的长度设定,取值范围为1~L,L是MAC_dPDU的长度,本实施例中,n=L=8;
5、数据组装模块判断是否是第一次读取MAC_hs PDU,如是6, 否则执行步骤7;
6、数据组装模块的比特拼接逻辑单元将偏移信息模块中的偏移信息字节的低8-k比特与缓存器的前k比特拼接成一个字节存放到目的地址所指示的存储单元,将目的地址加1;
所述偏移长度k=MAC头信息比特数-(m×8);
所述拼接方式为将偏移信息字节的低8-k比特作为字节的前8-k比特,将缓存器的前k比特作为字节的后k比特。
7、比特拼接逻辑单元从缓存器第k+1比特开始,以8比特为单位依次读取数据,并以字节的形式顺序存放到目的地址指示的存储单元,每存放一个字节,将目的地址加1;
8、数据组装模块将缓存器中剩余的最后8-k比特数据保存到偏移信息模块中作为偏移信息字节的低8-k位;
9、数据组装模块判断已存放到当前MAC_d PDU的字节数是否达到命令所指示的MAC_d PDU长度,如是执行步骤10,否则执行步骤4;
10、数据组装模块判断命令队列是否为空,如是执行步骤11、否则执行步骤3;
11、数据组装通知接口模块本次HSDPA数据组装完成,接口模块产生HSDPA数据组装完成中断,发送给CPU。
以上所述仅为本发明的优选实施例,并不用于限制本发明,显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。