CN1319300A - 移动通信系统中按照无线电链路协议发送可变长度数据的装置和方法 - Google Patents

移动通信系统中按照无线电链路协议发送可变长度数据的装置和方法 Download PDF

Info

Publication number
CN1319300A
CN1319300A CN00801541A CN00801541A CN1319300A CN 1319300 A CN1319300 A CN 1319300A CN 00801541 A CN00801541 A CN 00801541A CN 00801541 A CN00801541 A CN 00801541A CN 1319300 A CN1319300 A CN 1319300A
Authority
CN
China
Prior art keywords
data
rlp
controller
sequence number
frame
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN00801541A
Other languages
English (en)
Other versions
CN1144441C (zh
Inventor
张勋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN1319300A publication Critical patent/CN1319300A/zh
Application granted granted Critical
Publication of CN1144441C publication Critical patent/CN1144441C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/06Optimizing the usage of the radio link, e.g. header compression, information sizing, discarding information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/04Error control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W80/00Wireless network protocols or protocol adaptations to wireless operation
    • H04W80/04Network layer protocols, e.g. mobile IP [Internet Protocol]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/324Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the data link layer [OSI layer 2], e.g. HDLC

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Communication Control (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种在移动通信系统中用于发送数据的方法。所述方法包括:将数据流分段为至少一个具有可变数据长度的连续帧,数据流被分段为多个具有可变数据长度的连续块,每个所述连续块被分段为多个具有字节长度的子连续块;在每个连续帧的头部附加首标,所述首标包括用于指明对应于头部的连续块的序列号的第一组比特以及用于指明对应于头部的子连续块的序列号的第二组比特:以及发送附加了首标的连续帧。

Description

移动通信系统中 按照无线电链路协议发送可变长度数据的装置和方法
                       发明背景
1.发明领域
本发明一般涉及CDMA(码分多址)移动通信系统,具体涉及无线电环境中按照用于有效数据发送的无线电链路协议(RLP),发送数据的装置和方法。
2.相关技术说明
总的来说,CDMA移动通信系统已经从主要提供话音服务的IS-95标准发展为既提供高速数据服务又提供话音服务的CDMA-2000标准。CDMA-2000标准可提供高质量的话音服务、运动图像服务以及因特网搜索服务。
图1表示了由CDMA-2000标准定义的分组数据服务示例。在图1中,移动台(MS)包括终端设备(TE)和移动终端(MT)。基站由BS/MSC(基站/移动交换中心)表示,并且互通功能块(IWF)将BS/MSC与数据网络(例如,因特网)连接起来。IWF块是在使用不同协议时用于在不同协议之间进行转换的设备。在图1中,移动台的上层服务(或Web(网络)服务)处理器与IWF块形成了经过网络协议(例如,因特网协议(IP))处理器和链路协议(例如,点对点协议(PPP))处理器进行传递的消息。然后,以链路协议包的形式将由上层服务处理器组装的数据最终发送给下层,并且下层采用适当的协议(例如,EIA-232,RLP,等)来发送数据。
图1表示了在TE与MT之间使用EIA-232控制器的示例。按照IS-2000标准通过连接的物理信道对生成的RLP帧进行发送,IS-2000标准是CDMA-2000标准的一部分。将通过连接的物理信道在基站接收到的RLP包恢复为链路协议包,并将恢复后的包通过中继层发送给IWF块。一般地讲,按照IS-658标准来运行基站与IWF块之间的接口。在IWF块中,链路协议层从链路协议包读取数据并将数据发送给网络协议处理器,最终将数据发送给上层服务处理器。本发明的目的之一是通过RLP将链路协议包分配到无线电链路协议(RLP)帧。
以上说明了将数据从移动台发送到基站的过程,应当指出的是,可以以相同的方式将数据从基站发送到移动台。为了提供各种服务,CDMA-2000标准支持各种与图1中不同的方案。但是,不同的方案具有一个共同的特征,即通过RLP经物理无线电信道来发送具有上层服务数据的链路协议包。
RLP类型-3规范只生成具有适当大小的RLP帧,从而填充当前RateSet(速率集)1的9.6Kbsp或19.2Kbsp的物理信道帧,或者生成具有适当大小的RLP帧,从而填充Rate Set 2的14.4Kbsp或28.8Kbsp的物理信道帧。因此,当物理信道以153.6Kbsp的或230.4Kbsp的较高速率运行时,采用一种方法来填充一个物理信道帧中的几个RLP帧。如果物理信道支持高于153.6Kbsp或230.4Kbsp(是RLP类型-3规范中支持的最大速率)的速率,例如,如果物理信道支持307.2Kbsp、460.8Kbsp、614.4Kbsp以及1036.8Kbsp的速率,那么在一个物理信道帧中可以填充更多的RLP帧。但是,与采用一个大的RLP帧来填充一个物理信道的方法相比,这种方法会在帧首标上引起不断增大的负荷,并产生无用的帧部分,从而减小帧效率。因此,需要采用新的方法来发送比当前的RLP类型-3帧更大的RLP帧。
RLP类型-3执行的重要操作是创建并分析一个分段帧。也就是说,当要发送的重发帧的大小比可发送的数据块的大小大时,RLP将要发送的重发帧的数据部分(或部分)分段为几个分段帧。RLP类型-3规范按下列步骤执行分段过程。
首先,RLP类型-3最多可创建3个分段。各个分段分别以FIRST、SECOND和LAST这3个值来进行区分。当需要有多于3个的分段时,RLP类型-3则不发送重发帧,直到能够采用3个分段帧来发送重发帧为止。
其次,只有在接收到所有的分段后,才执行分段帧的重新组装过程。也就是说,如果没有接收到FIRST、SECOND和LAST分段帧中的任意一个,那么就需要重新发送所有的分段。
RLP类型-3规范创建具有以填充到Rate Set 1的9.6Kbsp或19.2Kbsp的物理信道帧的大小的RLP帧,以及具有填充到Rate Set 2的14.4Kbsp或28.8Kbsp的物理信道帧的大小的RLP帧,从而即使是在9.6Kbsp或19.2Kbsp这样的最低发送速率下,也能够发送最多的3个分段。但是,当物理信道在较高的发送速率下使用较大的RLP帧来提高发送效率时,则需要采用与现有的分段方法不同的新的分段方法。
                        发明概述
本发明的一个目的是在移动通信系统中,创建不同长度的RLP帧,并通过采用块单元中的序列号和数据字节单元中的序列号来发送数量增加的数据。
本发明的另一个目的是在移动通信系统中,采用块单元中的序列号和数据字节单元中的序列号来发送RLP帧,以减小RLP帧首标的大小,从而提高发送效率。
本发明的另一个目的是在移动通信系统中,采用块单元中的序列号和数据字节单元中的序列号来发送RLP帧,以有效地创建用于请求重发RLP块或数据段的NAK(否定确认)帧,从而采用一个NAK帧来执行数量增加的重发请求。
为了实现上述或其他目的,提供了一种在移动通信系统中发送数据的方法。所述方法包括以下步骤:将数据流分段为至少一个具有可变数据长度的连续帧、将数据流分段为多个具有可变数据长度的连续块、将每个所述的连续块分段为多个具有字节长度的子连续块、在连续帧的每个头部附加首标,该首标包括用于指明对应于头部的连续块序列号的第一组比特以及用于指明对应于头部的子连续块的序列号的第二组比特、以及发送附有首标的连续帧。
                   附图的简要说明
通过参照附图以及下面的详细说明,将会更清楚地理解本发明的上述和其它目的、特征和优点,附图中:
图1是表示用于执行包数据服务的一般CDMA通信系统的示意图;
图2是表示可应用本发明的根据RLP的发送和接收数据的设备的示意图;
图3是表示按照本发明的实施例,数据发送器的示意图;
图4是表示按照本发明的实施例,数据接收器的示意图;
图5A到5D是表示按照本发明的实施例,生成的帧的格式的示意图;
图6A到6C是表示按照本发明的实施例,生成的LTU(逻辑发送单元)的格式的示意图;
图7是表示按照本发明的实施例,数据块和RLP帧的格式的示意图;
图8A到8F是表示当通过基本信道来发送和接收按照本发明的实施例生成的RLP帧时,所用的各种帧格式的示意图;
图9A到9B是表示当通过辅助信道来发送和接收按照本发明的实施例生成的RLP帧时,所用的各种帧格式的示意图;
图10是表示按照本发明的实施例,发送基本信道的过程的流程图;
图11是表示按照本发明的实施例,接收基本信道的过程的流程图;
图12是表示按照本发明的实施例,发送辅助信道的过程的流程图;以及
图13是表示按照本发明的实施例,接收辅助信道的过程的流程图;
                 优选实施例的详细说明
下面将参照附图说明本发明的优选实施例。在下面的说明中,没有详细说明公认的功能或结构,以避免出现不必要的细节而混淆本发明。
图2表示可应用本发明的根据RLP发送和接收数据的移动通信系统的结构。
参照图2,物理层处理器150和250按照IS-2000规范,分别同移动台与基站之间的一个物理信道相连接,分别通过连接的物理信道将由相关RLP处理器130和230提供的RLP帧发送给其他方的物理层,并且将通过物理信道接收的RLP帧分别发送给RLP处理器130和230。多路复用/多路分解控制器140和240内置于各个RLP与物理层处理器之间。
多路复用/多路分解控制器140和240具有将目的地和大小的信息附加在从RLP处理器130和230接收到的RLP帧的头部,并且将多路复用后的RLP帧发送给物理层处理器150和250的多路复用功能。此外,多路复用/多路分解控制器140和240具有检测从物理层处理150和250接收到的RLP帧的目的地和大小的信息,然后将检测结果发送给上层RLP处理器130和230的多路分解功能。发送数据缓冲器122和222是用于存储从链路协议(即PPP)处理110和210接收到的数据的存储设备。发送数据缓冲器122和222分别根据RLP处理器130和230的请求顺序地按所需的大小对存储的包进行分段。接收数据缓冲器124和224分别顺序地存储由RLP处理器130和230提供的数据。EIA-232控制器或IS-658控制器将存储的数据发送给PPP处理器或IWF块。EIA-232控制器或IS-658控制器分别按照EIA-232规范或IS-658规范进行操作,并执行数据缓冲器122、124、222和224与链路协议处理器110和210之间的数据交换。对于当前的CDMA-2000分组服务,可采用EIA-232控制器和IS-658控制器之外的控制器。基于此原因,在图2中没有表示控制器。
图3表示了按照本发明的实施例的数据发送器。参照图3,用于发送RLP帧的RLP处理器130包括RLP控制器131、L_V(S)寄存器132以及前向重排序(resequencing)缓冲器(或重发缓冲器)133。RLP控制器131通过从发送数据缓冲器122接收数据来生成RLP帧,并将填充了生成的RLP帧的数据块发送给多路复用/多路分解控制器140。前向重排序缓冲器133是用于存储重排序数据的存储设备。L_V(S)寄存器132通过RLP控制器131将存储在发送数据缓冲器122中的发送数据分段为几个块,为每个块分配一个序列号(“块序列号”),并在为每个数据字节附加序列号时,计算所用的序列号(“数据序列号”)。
图4表示了按照本发明的实施例的数据接收器。参照图4,用于接收RLP帧的RLP处理器130包括RLP控制器131、E寄存器134、L_V(N)寄存器135、L_V(R)寄存器136、NAK列表137以及重排缓冲器138。RLP控制器131从多路复用/多路分解控制器140接收RLP帧,并检查是否是按顺序接收数据。如果是按顺序地接收数据,那么RLP控制器131将数据存储在接收数据缓冲器124中。否则,RLP控制器131将数据存储在重排缓冲器138中,并将被要求重发的部分记录在NAK(否定确认)列表137中,并且在发送下一个控制帧时,将存储在NAK列表137中的部分填充到控制帧中。
E寄存器134记录破坏的(或坏的)数据块的数目。当多路复用/多路分解控制器140将破坏的数据块通知给RLP控制器131时,RLP控制器131将该值记录在E寄存器134中,以便在需要进行重新建立时使用。L_V(N)寄存器135存储要接收的数据字节中第一个接收失败的数据字节的序列号。L_V(R)寄存器136存储下一个要接收的新的数据字节的序列号。例如,如果接收1到7的序列号的数据字节,其中3和4的序列号的数据字节被破坏(或接收失败),那么L_V(N)寄存器135存储第一个接收失败的数据字节的序列号3,而L_V(R)寄存器136存储下一个要接收的新的数据字节序列号8。
按照本发明的实施例生成可变长度的RLP帧以及发送/接收生成的RLP帧的操作,大致可分为由多路复用/多路分解控制器140和240执行的操作,和由RLP处理器130和230执行的操作。因为多路复用/多路分解控制器140与240具有相同的操作,而RLP处理器130与230也具有相同的操作,所以为简化起见,按照本发明的实施例的操作说明,将仅限于对多路复用/多路分解控制器140和RLP处理器130进行说明。
A.按照本发明的一个实施例多路复用/多路分解控制器的Tx/Rx操作
1.多路复用/多路分解控制器的Tx(发送)操作
通过当前连接的物理信道,不仅可以同时发送分组数据,也可以同时发送各种其他类型的信息,包括话音数据。因此,任何提供要发送给多路复用/多路分解控制器的数据的过程都视作一个“服务”或“服务块”。此外,将多路复用/多路分解控制器140与物理层处理器150相互交换的发送单元称作“信息比特”或称作“物理帧的净荷”,并且将上层服务块,包括RLP处理器130,与多路复用/多路分解控制器140相互交换的发送单元称作“RLP帧”或视作“数据块”。
发送方的多路复用/多路分解控制器140应该生成要发送给物理层处理器150的信息比特,并在每个设置时间(例如20ms)发送生成的信息比特。也就是说,多路复用/多路分解控制器140应该生成要被填充在将通过对应于所有当前连接的物理信道的物理信道进行发送的帧的净荷中的信息比特,并发送生成的信息比特。IS-2000规范定义了基本信道(FCH)、专用控制信道(DCC)以及辅助信道(SCH)。在将生成的信息比特发送给物理层处理器150以便通过基本信道、专用控制信道和辅助信道中的任意一个进行发送时,多路复用/多路分解控制器140发送下列字段。
-SDU:采用要实际发送的信息比特填充该字段。如果没有要发送的信息比特,那么采用在多路复用/多路分解控制器与物理层之间先前确定的空值来填充该字段。
-FRAME_SIZE:采用填有信息比特的物理信道帧的大小信息来填充该字段。当SDU字段中填充的是空值时,在物理层忽略该字段值。
-FRAME_RATE:该字段指明填有信息比特的物理信道帧的发送速率。当SDU字段中填充的是空值时,在物理信道中忽略该字段值。
当发送方的多路复用/多路分解控制器140将上述字段值发送给物理层处理器150时,物理层处理器150以指定的编码和解调的方法对提供的值进行处理,然后将处理后的结果发送给接收方。
为了生成要发送给物理信道的逻辑发送单元的净荷或信息比特,发送方的多路复用/多路分解控制器140使用将在对应于逻辑信道当前连接的物理信道的服务中发送的数据块。对应于逻辑信道连接的物理信道的服务,参照能够将其数据块发送给将要发送当前生成的信息比特的物理信道的服务。采用IS-2000规范定义的信令消息和信令过程,可用用于连接移动台与基站之间的服务以及连接服务的逻辑信道与物理信道的过程。
当决定为对应于逻辑信道当前连接的物理信道的服务而发送数据块时,按照优先级顺序,发送方的多路复用/多路分解控制器140从服务接收适当长度的数据块(参见图5A)。多路复用/多路分解控制器140创建服务标识符和多路复用帧MuxPDU(参见图5B),在多路复用帧MuxPDU中,长度信息附加在数据块上,从而当从服务接收数据块时,能够知道用于发送从接收方的多路复用/多路分解控制器接收到的数据块的服务。多路复用帧MuxPDU可以包括由几个服务提供的几个数据块和信令消息。可以在每一个或每几个MuxPDU上附加用于检查错误的CRC(循环冗余码)。如图5C所示,当附加了用于检查在每几个MuxPDU上的错误的CRC时,将一个CRC和由CRC保护的信息比特的一部分称为“逻辑发送单元(LTU)”。当插入CRC以便将要发送给物理层的信息比特分段为几个部分并在每个分段部分执行错误检查时,即为“使用逻辑发送单元”。此处,分段后的信息比特的每个部分被称作“逻辑发送单元”,并且除了CRC以外,由CRC保护的逻辑发送单元的剩余部分被称作“逻辑发送单元的净荷”(图5C)(一个或几个MuxPDU)。该逻辑发送单元成为一个基本单元,用于确定在接收方,多路复用/多路分解控制器是否正确地接收了物理帧。如果没有使用逻辑发送单元,用于确定是否正确地接收了物理帧的基本单元就成为信息比特。
发送方的多路复用/多路分解控制器140应该预先知道对应于当前发送的物理信道的可能的发送速率和信息比特的大小,并且还应该知道是否使用逻辑发送单元,如果使用,那么应该知道逻辑发送单元的大小是多少,以及CRC生成方法。这种配置既用于按照物理层提供的物理信道的当前条件来确定由多路复用/多路分解控制器140生成的信息比特的大小,也用于在移动台与基站之间的预先确定的限制范围内,确定生成逻辑发送单元的方法。如果决定使用逻辑发送单元,那么发送方的多路复用/多路分解控制器140在逻辑发送单元的净荷中填充包括数据块的MuxPDU,将填充MuxPDU或填充比特模式填充在剩余部分中,然后产生用于生成的逻辑发送单元的净荷的CRC。发送方的多路复用/多路分解控制器140按照逻辑发送单元的数目所要求的次数重复上述过程,顺序地在信息比特中填充逻辑发送单元,在剩余部分中填充0,然后为物理层处理器150提供得到的信息比特。
如果决定不使用逻辑发送单元,那么多路复用/多路分解控制器140在信息比特中填充包括数据块的MuxPDU,将填充MuxPDU或填充比特模式填充在剩余部分中,然后将生成的信息比特发送给物理信道。
当没有更多的要发送的数据块时,多路复用/多路分解控制器140采用附加有由接收方的多路复用/多路分解控制器预先指定的特定服务标识符的MuxPDU,或采用由接收方的多路复用/多路分解控制器预先指定的常规比特模式,以便填充信息比特的剩余部分。此处,附加了特定服务标识符的MuxPDU被称作“填充MuxPDU”,并且常规比特模式被称作“填充比特模式”。
在上述过程中,当没有从对应于与逻辑信道连接的物理信道的服务以及信令消息发生器中接收到信令消息或数据块时,多路复用/多路分解控制器140根据当前要发送的物理信道而进行不同的操作。也就是说,对于专用控制信道或辅助信道,多路复用/多路分解控制器140向SDU发送一个空值。对于基本信道,多路复用/多路分解控制器140将由接收方的多路复用/多路分解控制器预先指定的常规比特模式作为信息比特向物理信道发送。此处,常规比特模式被称作“空业务”。
发送“空数据块”表明服务没有要向发送方的多路复用/多路分解控制器发送的数据块。空数据块是指没有内容的数据块,并且只能用于特殊的用途。
2.多路复用/多路分解控制器的Rx(接收)操作
如图2所示,接收方的物理层处理器150采用指定的解码和解调方法对接收到的信号进行分析,并将填充在接收到的物理帧中的信息比特发送给接收方的多路复用/多路分解控制器140。当将分析后的信息比特发送给接收方的多路复用/多路分解控制器140时,物理层处理器150发送下列信息。
-SDU:采用要实际发送的信息比特填充该字段。如果没有接收到信息比特或者接收了已破坏的帧,那么在多路复用/多路分解控制器与物理层处理器150之间采用先前确定的空值来填充该字段。
-FRAME_QUALITY:该字段指明接收到的帧是否是有效帧。
-FRAME_SIZE:采用接收到的物理信道帧的大小信息来填充该字段。按照接收到的物理信道帧的发送速率确定该字段的值。
-FRAME_RATE:采用接收到的物理信道帧的发送速率填充该字段。
接收方的多路复用/多路分解控制器140应该预先知道对应于当前接收到的物理信道的信息比特的发送速率和大小(长度和数目),并且还应该知道是否使用了逻辑发送单元,如果使用了,那么应该知道逻辑发送单元的大小是多少,以及CRC生成方法。按照在移动台与基站之间的预先确定的限制范围内由物理信道处理器150提供的上述信息,可确定这种配置。
如果接收方的多路复用/多路分解控制器140判断出没有接收到物理信道帧,在SDU中填充了空值,并填充了FRAME_QUALITY字段以指明接收到有效帧,那么接收方的多路复用/多路分解控制器140将没有接收到帧的消息通知给对应于逻辑信道连接的物理信道的所有服务。
当接收方的物理层处理器150没有在SDU中填充空值,或者没有填充FRAME_QUALITY字段以指明接收到已破坏的帧时,那么基于接收方的物理层处理器150提供的配置和信息,接收方的多路复用/多路分解控制器140判断对于接收到的帧是否使用逻辑发送单元。
如果使用逻辑发送单元,那么接收方的多路复用/多路分解控制器140确定逻辑发送单元的长度、CRC检查方法以及逻辑发送单元的数量。多路复用/多路分解控制器140将接收到的信息比特分为数量与逻辑发送单元数量相同的逻辑发送单元。由于多路复用/多路分解控制器140预先知道逻辑发送单元的长度和数量,因此通过将接收到的信息比特分为数量与逻辑发送单元的数量相同的组,它能够分开逻辑发送单元。
当分配的物理信道发送接收到的信息比特时,接收方的多路复用/多路分解控制器140基于从物理信道发送的FRAME_QUALITY字段,判断接收到的信息是否被破坏。如果接收到的信息比特已被破坏并且接收到的信息比特被分段为几个逻辑发送单元,那么,多路复用/多路分解控制器140对按上述过程划分的每个逻辑发送单元的CRC进行重新分析,从而确定是否存在无错误逻辑发送单元。
如果存在错误逻辑发送单元,那么对应于错误的逻辑发送单元,多路复用/多路分解控制器140将通知给对应于与逻辑信道连接的物理信道的所有服务:接收到坏数据块。
当接收到的信息比特被破坏,并且接收到的信息比特不具有用于检查每一个或每几个MuxPDU的错误的CRC时,接收方的多路复用/多路分解控制器140将接收到坏数据块的消息通知给对应于与逻辑信道连接的物理信道的所有服务。
当接收到无错误的逻辑发送单元或信息比特时,接收方的多路复用/多路分解控制器140从LTU的填充比特模式或信息比特中将无错误的MuxPDU分离出来。如果分离出的MuxPDU不是空业务或填充MuxPDU,那么多路复用/多路分解控制器140将包含在MuxPDU中的数据块和数据块的长度发送给由MuxPDU的服务标识符指定的服务。
在完成接收过程后,如果接收了无错误的逻辑发送单元或信息比特,并且在逻辑信道对应于物理信道的服务中,存在有不能接收数据块的服务,那么接收方的多路复用/多路分解控制器140通知接收到空数据块。
B.按照发明的实施例的多路复用/多路分解控制器的Tx/Rx操作
通过下面的详细描述,将会更清楚地理解按照本发明的实施例,多路复用/多路分解控制器140的发送/接收操作。IS-2000标准规定了几种专用的业务信道,如基本信道、辅助信道以及专用控制信道。因此,可以分两种情况来描述按照发明的实施例的多路复用/多路分解控制器140的发送/接收操作。一种情况是应用于基本信道,另一种情况是应用于辅助信道。由于专用控制信道可应用于基本信道仅在96.Kbps或14.4Kbps下操作的特殊情况,所以这里不再对专用控制信道进行单独的描述。此外,可以对使用逻辑发送单元的情况以及不使用逻辑发送单元的其他情况进行单独的描述。这里,使用逻辑发送单元的情况与在发送和接收数据之前采用卷积码对数据进行编码的情况相对应,并且不使用逻辑发送单元的情况与在发送和接收数据之前采用turbo(快速)码对数据进行编码的情况相对应。
1.基本信道和辅助信道的信息比特数
在按照本发明的实施例描述操作之前,首先在图1到4中显示了由IS-2000标准规定的基本信道的信息比特数以及辅助信道的信息比特数。更具体地说,表1和2表示了由IS-2000标准规定的基本信道的信息比特数,而表3和4表示了由IS-2000标准规定的辅助信道的信息比特数。表1和3表示了基于9600bps的发送速率时Rate Set 1的信息比特数,表2和4表示了基于14400bps的发送速率时Rate Set 2的信息比特数。表1IS-2000基本信道的信息比特数(Rate Set 1)
    发送速率    信息比特数
    9600bps     172比特
    4800bps     80比特
    2700bps     40比特
    1500bps     16比特
表2IS-2000基本信道的信息比特数(Rate Set 2)
    发送速率    信息比特数
    14400bps     267比特
    7200bps     125比特
    3600bps     55比特
    1800bps     21比特
表3IS-2000辅助信道的信息比特数(Rate Set 1)
    发送速率    信息比特数
    9600bps     172比特
    19200bps     360比特
    38400bps     744比特
    76800bps     1512比特
    153600bps     3048比特
    307200bps     6120比特
    614400bps     12264比特
表4IS-2000辅助信道的信息比特数(Rate Set 2)
    发送速率     信息比特数
    14400bps     267比特
    28800bps     552比特
    57600bps     1128比特
    115200bps     2280比特
    230400bps     4584比特
    460800bps     9192比特
    1036800bps     20712比特
应该注意的是表1到4没有显示IS-2000规定的所有信息比特的大小。
当对应于具有足够多表3和4中所显示的比特的信息比特数使用LTU(逻辑发送单元)时,可按下面的表5和6来计算LTU的大小和数量。此处,可通过将LTU的大小与LTU的数量相乘后加上剩余的比特的方法,来计算信息比特数。另外,LTU的净荷大小是从表5和6中减去16得到的值,其中16是CRC的大小。表5应用于辅助信道的LTU(Rate Set 1)
    发送速率 LTU的大小 LTU的数量 剩余比特
    9600bps     -     无    -
    19200bps     -     无    -
    38400bps  368比特     2  8比特
    76800bps  376比特     4  8比特
    153600bps  376比特     8  40比特
    307200bps  760比特     8  40比特
    614400bps  1528比特     8  40比特
表6应用于辅助信道的LTU(Rate Set 2)
    发送速率 LTU的大小 LTU的数量 剩余比特
    14400bps     -     无     -
    28800bps     -     无     -
    57600bps  560比特     2     8比特
    115200bps  568比特     4     8比特
    230400bps  568比特     8  40比特
    460800bps  1144比特     8  40比特
    1036800bps  2584比特     8  40比特
应该注意,在表5和6中,对于最初的两个发送速率,不使用LTU。也就是说,当连接了具有这样的发送速率的辅助信道时,发送方和接收方的多路复用/多路分解控制器遵循信息比特处理规则。
下面表7到12中显示了本发明的实施例中提出的用于填充信息比特的MuxPDU格式。表7和8表示了用于基本信道(FCH)的信息比特的MuxPDU格式。表9和10表示了在使用了LTU的情况下,用于辅助信道(SCH)的信息比特的MuxPDU格式。表10和12表示了在没有使用LTU的情况下,用于辅助信道的信息比特的MuxPDU格式。如上所述,在下面的表7和8中,专用控制信道应用于辅助信道只接受9600bps或144600bps的发送速率的特殊情况,专用控制信道只接受对应于9600bps或144600bps的发送速率的MuxPDU格式。表7用于FCH的信息比特的MuxPDU格式(Rate Set 1)
Tx速率 第一服务数据块  信令消息   服务数据块  服务标识符  MuxPDU首标
9600bps  171比特    -    -   -  ‘0’
9600bps  80比特 80比特    -   - ‘0001’
9600bps  40比特 128比特    -   - ‘0101’
9600bps  16比特 152比特    -   - ‘1001’
9600bps    - 168比特    -   - ‘1101’
9600bps  80比特    - 85比特 3比特 ‘0011’
9600bps  40比特    - 125比特 3比特 ‘0111’
9600bps  16比特    - 149比特 3比特 ‘1011’
9600bps    -    - 165比特 3比特 ‘1111’
4800bps  80比特    -    -   -     -
2700bps  40比特    -    -   -     -
1500bps  16比特    -    -   -     -
表8
     用于FCH的信息比特的MuxPDU格式(Rate Set 2)
Tx速率 第一服务数据块   信令消息   服务数据块  服务标识符   MuxPDU首标
14400bps  266比特    -    -    -  ‘0’
 124比特 138比特    -    - ‘00001’
 54比特 208比特    -    - ‘00011’
 20比特 242比特    -    - ‘00101’
   - 262比特    -    - ‘00111’
 124比特    - 135比特  3比特 ‘01001’
 54比特    - 205比特  3比特 ‘01011’
 20比特    - 239比特  3比特 ‘01101’
   -    - 259比特  3比特 ‘01111’
 20比特 222比特 17比特  3比特 ‘10001’
7200bps  124比特    -    -    -  ‘0’
 54比特 67比特    -    - ‘0001’
 20比特 101比特    -    -  0011’
   - 121比特    -    - ‘0101’
 54比特    - 64比特  3比特 ‘0111’
 20比特    - 98比特  3比特 ‘1001’
   -    - 118比特  3比特 ‘1011’
 20比特 81比特 17比特  3比特 ‘1101’
3600bps  54比特    -    -    -  ‘0’
 20比特 32比特    -    - ‘001’
   - 52比特    -    - ‘011’
 20比特    - 29比特  3比特 ‘101’
   -    - 49比特  3比特 ‘111’
1800bps  20比特    -    -    -  ‘0’
   -    - 17比特  3比特  ‘1’
在表7和8中,附加在MuxPDU上的是MuxPdu首标,该MuxPdu首标是用于对包含在MuxPDU中的数据块进行分段的信息。MuxPDU首标置于MuxPDU的尾部以便按字节排放数据块。表9用于SCH的信息比特的MuxPDU格式(Rate Set 1,使用LTU)
Tx速率   服务标识符  长度标记  长度字段   服务数据块的长度
38400bps  3比特 ‘000’   - 最大346比特
76800bps  3比特 ‘000’   - 最大354比特
153600bpS  3比特 ‘000’   - 最大354比特
307200bpS  3比特 ‘000’   - 最大738比特
614400bpS  3比特 ‘000’   - 最大1506比特
每个速率  3比特 ‘101’ 8比特 最大2034比特
每个速率  3比特 ‘110’ 16比特 最大524266比特
表10用于SCH的信息比特的MuxPDU格式(Rate Set 1,未使用LTU)
Tx速率   服务标识符   长度标记  长度字段   服务数据块的长度
19200bps  3比特 ‘000’   - 最大354比特
38400bps  3比特 ‘000’   - 最大738比特
76800bps  3比特 ‘000’   - 最大1506比特
153600bps  3比特 ‘000’   - 最大3042比特
153600bps  3比特 ‘100’ 8比特 最大3034比特
307200bps  3比特 ‘000’   - 最大6112比特
307200bps  3比特 ‘100’ 8比特 最大6104比特
614400bps  3比特 ‘000’   - 最大12258比特
614400bps  3比特 ‘100’ 8比特 最大12250比特
每个速率  3比特 ‘101’ 8比特 最大2034比特
每个速率 3比特 ‘110’ 16比特 最大524266比特
表11用于SCH的信息比特的MuxPDU格式(Rate Set 2,使用LTU)
Tx速率   服务标识符  长度标记   长度字段    服务数据块的长度
57600bps  3比特 ‘000’    - 最大538比特
115200bps  3比特 ‘000’    - 最大546比特
23040bps  3比特 ‘000’    - 最大546比特
460800bps  3比特 ‘000’    - 最大1122比特
1036800bps  3比特 ‘000’    - 最大2562比特
1036800bps  3比特 ‘100’ 8比特 最大2554比特
每个速率  3比特 ‘101’ 8比特 最大2034比特
每个速率  3比特 ‘110’ 16比特 最大524266比特
表12用于SCH的信息比特的MuxPDU格式(Rate Set 2,未使用LTU)
Tx速率   服务标识符  长度标记    长度字段   服务数据块的长度
28800bps  3比特 ‘000’     - 最大546比特
57600bps  3比特 ‘000’     - 最大1122比特
115200bps  3比特 ‘000’     - 最大2274比特
115200bps  3比特 ‘100’   8比特 最大2266比特
230400bps  3比特 ‘000’     - 最大4578比特
230400bps  3比特 ‘100’   8比特 最大4570比特
460800bps  3比特 ‘000’     - 最大9186比特
460800bps  3比特 ‘100’   8比特 最大9178比特
1036800bps  3比特 ‘000’     - 最大20706比特
1036800bps  3比特 ‘100’   8比特 最大20698比特
每个速率  3比特 ‘101’   8比特 最大2034比特
每个速率  3比特 ‘110’   16比特 最大524266比特
在表7到12中,服务标识符可按下面的表13进行定义。
表13服务标识符
   服务标识符      服务
    ‘000’      保留
    ‘001’     第一服务
    ‘010’     第二服务
    ‘011’     第三服务
    ‘100’     第四服务
    ‘101’     第五服务
‘110’ 第六服务
    ‘111’     空服务
在表13中,“空服务”是预先确定的专用服务标识符,用于将MuxPDU是填充MuxPDU的消息通知给接收方的多路复用/多路分解控制器。可从表13看出,表7和12的MuxPDU格式就可以识别由最多的6个服务提供的数据块。
表7和8表示了在基本信道上发送的MuxPDU格式。此处,在没有服务标识符的情况下,只基于MuxPDU首标就可以识别第一服务,因为MuxPDU首标是‘0’的情况与第一服务相对应。基于表7和8的服务标识符,可以确定对应于第二到第六服务的数据块。因此,表7或8的服务标识符可以具有从‘010’到‘110’的值。当采用表7或8的MuxPDU格式将基本信道中的第一服务的数据块全部填充为1时,接收方的多路复用/多路分解控制器指定空业务,该空业务不与发送方的多路复用/多路分解控制器中的任何业务相对应。所以,当从基本信道接收到的MuxPDU只有第一服务的数据块并且数据块全部填充为1时,接收方的多路复用/多路分解控制器确定数据块是空业务。
如上所述,在表7和8中,可以在专用控制信道上发送9600bps或14400bps的发送速率时允许的MuxPDU格式。基于表7或8所示的服务标识符,可确定对应于第二到第六服务的数据块。应该注意的是专用控制信道不需要业务。
表7和8中,在9600bps或14400bps的发送速率时允许的MuxPDU格式中,当在9600bps或14400bps下的发送速率连接辅助信道时,可发送只包含一个服务数据块而不是信令消息的MuxPDU格式。如上所述,基于表7或8所示的服务标识符,可确定对应于第二到第六服务的数据块。
表9到12表示了在以19200bps、28800bps或更高的发送速率连接辅助信道时发送的MuxPDU格式。基于表9或12所示的服务标识符,可确定对应于第一到第六服务的数据块。因此,表9到12所示的服务标识符可以具有从‘010’到‘110’的值。对于‘000’的长度标记,表9到12的MuxPDU格式包括具有对应于表中的发送速率的长度的服务块。在表9到12的MuxPDU格式中,当长度标记设置为‘100’、‘101’或‘110’时,可采用长度字段来计算MuxPDU的大小。也就是说,当长度标记设置为‘100’时,表9到12的MuxPDU格式含有具有通过从对应于表中的发送速率的长度中减去一个值来确定长度的服务块,所述值是通过将长度字段中指明的值与8相乘来确定的。例如,如果通过以614400bps的发送速率连接并且不使用LTU的辅助信道而接收到的MuxPDU具有设置为‘100’的长度标记和设置为‘00000010’的长度字段,那么包含在接收到的MuxPDU中的服务块的长度为表9中的12250-(2×8)=12234比特。当长度标记设置为‘101’或‘110’时,表9到12的MuxPDU格式含有具有通过从一个值中减去6比特来确定长度的服务块,其中,所述值是通过将8与长度字段中指明的值加1后相乘得到的值,6比特是MuxPDU的大小。也就是说,如果通过以614400bps的发送速率连接并且不使用LTU的辅助信道而接收到的MuxPDU具有设置为‘110’的长度标记和设置为‘0000 0101 1111 1001’(十进制为1529)的长度字段,那么包含在接收到的MuxPDU中的服务块的长度为(1529+1)×8-6=12234。
2.FCH上多路复用/多路分解控制器的Tx操作
假设连接了采用RLP的6个服务,那么发送方的多路复用/多路分解控制器的操作如下所述。该操作按照图10所示的过程来执行。
首先,图3的多路复用/多路分解控制器140按照QoS(服务质量)保证规则,确定服务的发送次序和数据块的大小。也就是说,多路复用/多路分解控制器向信令LAC层询问一个可能的大小(图10的步骤S10),并对信令LAC层的数据块确定一个具有适当大小的数据块(步骤S11)。多路复用/多路分解控制器确定发送服务的次序(步骤S12),请求第一服务提供具有确定大小的数据块(步骤S13),并从第一服务接收在确定的大小范围内的数据块(步骤S14)。对于将要发送给基本信道的数据块,应该按照表7和8中MuxPDU允许的数据块的大小和数量以及其组合,请求RLP处理器生成具有适当大小的数据块。此后,多路复用/多路分解控制器累加要发送的数据块,并计算可被发送的剩余数据块(步骤S15)。然后,多路复用/多路分解控制器确定是否能采用累加的数据块来组装MuxPDU。如果不能组装MuxPDU,那么多路复用/多路分解控制器返回步骤S12,以请求相应的服务提供数据块,并且得到请求的数据块。否则,如果能够组装MuxPDU,那么多路复用/多路分解控制器采用累加的数据块对MuxPDU进行组装(步骤S17)。多路复用/多路分解控制器从表4选择适当的比特模式,并将选中的比特模式附加在MuxPDU首标上。多路复用/多路分解控制器以信息比特将生成的MuxPDU发送给物理信道(步骤S18)。
对于在上述过程中未能生成数据块的RLP处理器,多路复用/多路分解控制器请求RLP处理器生成一个空的数据块,以便能够使RLP处理器知道它不能生成数据块。另外,如果在上述过程中每个RLP处理器都未能提供数据块,那么多路复用/多路分解控制器RLP对空业务进行组装并将其作为信息比特发送给物理信道。
3.FCH上多路复用/多路分解控制器的Rx操作
对于通过基本信道发送的信息比特,接收方的多路复用/多路分解控制器操作方法如下。该操作是按照图11所示的过程执行的。多路复用/多路分解控制器分析接收到的信息的发送速率和MuxDPU首标(图11的步骤S20),并基于分析的结果,区分数据块(步骤S21和S22)。为了区分数据块,需要根据Rate Set创建参照表7和8。如果接收到的信息比特的最后1位设置为‘0’,那么除最后1位以外的所有信息比特构成第一服务的数据块,从而将该数据块与数据块的长度信息一起发送给第一服务(步骤S23)。
否则,当在上述过程中接收到的信息比特的最后1位设置为‘1’时,接收方的多路复用/多路分解控制器将最后4比特作为用于Rate Set 1的MuxPDU,并将最后5比特作为用于Rate Set 2的MuxPDU。从表7和8中搜索具有MuxPDU的比特模式的组合。如果没有具有相同比特模式的组合,那么接收方的多路复用/多路分解控制器将接收到的信息比特视作坏比特。否则如果存在具有相同比特模式的组合,那么多路复用/多路分解控制器按照表7和8中指定的数据块的大小和位置来分离数据块和服务标识符。例如,对于Rate Set 1,如果是以9600bps的速率接收信息比特并且MuxPDU首标是‘0011’,那么接收到的MuxPDU的前80比特构成第一服务的数据块,接下来的85比特构成其它服务的数据块,并且剩余的3比特是服务标识符。按照表7和8中规定的组合,可以没有服务标识符。
参照表7和8,将上述过程中分离的数据块发送给相应的服务。可在不分析服务标识符的情况下,将数据块和数据块的长度信息一起发送给第一服务和信令层。但是,如果存在服务标识符,那么服务标识符与表13进行比较以将数据块和数据块的长度信息一起发送给相应的服务。在这个示例中,接收方的多路复用/多路分解控制器将80-比特数据块及其长度信息发送给第一服务,将85-比特数据块连同长度信息一起发送给由服务标识符指明的服务。如果服务标识符的值设置为‘000’、‘001’或‘111’,那么接收方的多路复用/多路分解控制器将接收到的信息比特视作坏的比特。如果接收到的信息比特是坏比特,那么多路复用/多路分解控制器通知所有在基本信道上有逻辑信道的服务已接收了坏的数据块,并通知各个服务可以发送的数据块的最大长度。例如,对于表7中用于Rate Set 1的MuxPDU格式,向第一服务发送171比特,向第二到第六服务发送165比特。
否则,如果接收到的信息比特没有被破坏,只有一个数据块并且与第一服务相对应的数据块全部填充为1,那么接收方的多路复用/多路分解控制器丢弃信息比特,将其视作空业务,并通知所有在基本信道上有逻辑信道的服务没有接收数据块。当信息比特没有被破坏,并且在基本信道上有逻辑信道的服务中的一个或多个服务没有接收数据块时,接收方的多路复用/多路分解控制器通知这些服务接收了空数据块。应该注意的是,对于空业务,根据服务,通知没有接收到数据块和通知接收到空数据块有不同的含义。
4.SCH上多路复用/多路分解控制器的Tx操作
在生成辅助信道的信息比特时,多路复用/多路分解控制器按照发送速率来生成与表5或6中所示的数量相同的LTU。LTU具有表5或6所示的大小。由于LTU具有16-比特的CRC,因此能够通过LTU实际发送的MuxPDU的最大容量根据发送速率而变化。
例如,在使用307.2Kbps的辅助信道并生成了LTU时,LTU的净荷包括MuxPDU,这样MuxPDU的最大容量为744比特(从LTU净荷的760比特中减去16 CRC比特而得)。当多路复用/多路分解控制器在生成辅助信道的信息比特的同时生成LTU时,根据Rate Set的可能的MuxPDU格式如表9和11所示。如果多路复用/多路分解控制器生成MuxPDU以填充LTU的净荷,那么多路复用/多路分解控制器生成用于LTU净荷的16-比特CRC。这里生成16-比特CRC的方法与用于辅助信道中生成16-比特CRC的方法相同。以这种方式,多路复用/多路分解控制器生成数量与表5或6中规定的数量相同的LTU,并顺序地将其置于信息比特中,然后在向物理层处理器发送之前将剩余部分填充为0。
如果在生成辅助信道的信息比特时没有生成LTU,那么多路复用/多路分解控制器根据发送速率来生成表3或4中指定的大小的辅助信道信息比特。在这种情况下,对于9600bps或14400bps的发送速率,信息比特只能运载只填充了由表7和8指定的一个服务数据块的MuxPDU。多路复用/多路分解控制器生成MuxPDU,从而采用生成的MuxPDU来填充信息比特,然后将生成的信息比特/MuxPDU发送给物理层处理器。
如果没有生成LTU,那么对于19200bps或28800bps或更高的发送速率,多路复用/多路分解控制器可以使用表10和12中的MuxPDU格式。多路复用/多路分解控制器生成MuxPDU,从而采用生成的MuxPDU来填充信息比特,然后将生成的信息比特/MuxPDU发送给物理层处理器。
按照图12所示的过程执行辅助信道中的发送操作。多路复用/多路分解控制器按照QoS保证规则确定发送服务的次序以及数据块的大小。然后,多路复用/多路分解控制器按照优先级次序向各个服务的RLP发送数据块请求(表12的步骤S30)。也就是说,多路复用/多路分解控制器向具有最高优先级的第一服务的RLP处理器发送可能的数据块请求(步骤S30),并从第一服务的RLP处理器接收相应的数据块或空数据块(步骤S31)。当接收到不是空数据块而不是数据块时,多路复用/多路分解控制器采用接收到的数据块生成MuxPDU(步骤S32)。生成的MuxPDU组装在信息比特中。
如果在生成辅助信道的信息比特时生成了LTU,那么多路复用/多路分解控制器应该请求RLP处理器按照表9或11中MuxPDU允许的数据块以及当前正在生成的LTU剩余部分的大小来生成具有适当大小的数据块。也就是说,当接收到数据块时,多路复用/多路分解控制器计算LTU或信息比特的剩余部分的大小(步骤S33),并确定计算出的大小是否大于或等于MuxPDU可能的大小(步骤S34)。如果计算出的大小是大于或等于MuxPDU可能的大小,那么多路复用/多路分解控制器向具有第二最高优先级的第二服务的RLP处理器请求具有可能大小的数据块(步骤S35),并从第二服务的RLP处理器接收相应的数据块或空数据块(步骤S36)。在所有服务的RLP处理器上重复执行该操作。
如果在生成辅助信道的信息比特时没有生成LTU,那么对于9600bps或14400bps的发送速率,多路复用/多路分解控制器请求各个服务按照优先级顺序生成能够发送给表7和8中指定的辅助信道的数据块,以便生成在表7和8指定的MuxPDU格式中能够发送给辅助信道的一个MuxPDU格式。如果任何一个服务生成了数据块,多路复用/多路分解控制器就将其组装在MuxPDU中。
对于19200bps或28800bps的发送速率,如果在生成辅助信道的信息比特时没有生成LTU,那么多路复用/多路分解控制器应该请求RLP处理器按照表10或12中MuxPDU允许的数据块以及当前正在生成的LTU剩余部分的大小来生成具有适当大小的数据块(步骤S32到S38)。
如果多路复用/多路分解控制器在生成辅助信道的信息比特时填充了LTU净荷或信息比特,那么多路复用/多路分解控制器应该知道还没有填充的LTU净荷以及信息比特的剩余部分的长度。多路复用/多路分解控制器请求服务生成用于剩余部分的数据块。如果从某个服务接收到不是空数据块的数据块,那么多路复用/多路分解控制器按如下所述根据该数据块的长度进行操作。
首先,如果接收到的数据块的长度比LTU净荷或信息比特的剩余部分短4比特,那么基于表13,多路复用/多路分解控制器按照由其接收数据块的服务,通过在数据块首标处附加3-比特的服务标识符和设置为‘0’的长度标记来对MuxPDU进行组装。多路复用/多路分解控制器将生成的MuxPDU置于LTU净荷或信息比特的剩余部分中,从而完成LTU净荷或信息比特。
其次,如果发送的数据块的长度比LTU净荷或信息比特的剩余部分短14比特或更多,那么多路复用/多路分解控制器创建一个如表9或12所示的具有8-比特或16-比特长度字段的MuxPDU。也就是说,当创建的数据块等于或小于2034比特时,多路复用/多路分解控制器基于表13根据发送服务附加一个3-比特的服务标识符,并将3-比特长度标记设置为‘101’,将8-比特长度字段设置为通过从表示为字节的将服务标识符、长度标记、长度类型字段、长度字段以及数据块相加而得的MuxPDU的总长度中减去1所得的值。如果创建的数据块大于2034比特,那么多路复用/多路分解控制器基于表13根据发送服务附加一个3-比特的服务标识符,并将3-比特长度标记设置为‘110’,将16-比特长度字段设置为通过从表示为字节的将服务标识符、长度标记、长度类型字段、长度字段以及数据块相加而得的MuxPDU的总长度中减去1所得的值。多路复用/多路分解控制器可以生成表8到12所示的具有8-比特长度字段和‘100’长度字段的MuxPDU。也就是说,通过在按字节指明与表9到12所示的数据块的最大值相比小多少的8-比特长度字段中进行填充,可以创建MuxPDU。当创建的MuxPDU的大小不是整数时,即当MuxPDU的长度不是以字节的形式表示时,多路复用/多路分解控制器丢弃数据块。如果创建的MuxPDU的大小是整数时,多路复用/多路分解控制器在数据块的头部附加服务标识符、长度标记、长度类型字段以及长度字段,从而创建MuxPDU。多路复用/多路分解控制器将创建的MuxPDU填充在LTU净荷或信息比特的剩余部分中。
在顺序地将生成的MuxPDU置于LTU的净荷中后,重复对剩余部分执行上述过程。在该过程中,如果没有更多的具有适当大小的数据块,则多路复用/多路分解控制器通过将服务标识符设置为‘111’并将长度标记设置为‘000’来填充前剩余部分中的前6个比特,然后在剩余部分中全部填充0,从而填充LTU净荷或信息比特。
在生成LTU的情况下,如果生成的LTU的数量与表5或6中指定的数量相同,那么多路复用/多路分解控制器顺序地将所有生成的LTU置于信息比特中。如表5或6所示,多路复用/多路分解控制器将剩余部分全部填充为0,并将其发送给物理信道处理器。
在没有生成了LTU的情况下,如果在上述过程填充了表3或4中指定的所有信息比特,那么多路复用/多路分解控制器将其发送给物理层处理器。
图6A到6C表示了按本发明的实施例生成的LTU格式。LTU构成一个通过物理信道发送的信息帧(物理帧或信息比特),并且每个LTU是由多路复用帧MuxPDU和CRC组成的。尽管下面将描述信息帧是由LTU组成的情况,但信息帧可以仅由MuxPDU组成而不含CRC。包含在LTU中连续的多路复用帧MuxPDU可具有给定的长度(例如,如图5C所示的744比特),并且每个多路复用帧MuxPDU是由图5B所示的首标和顺序的RLP帧(或数据块)组成。RLP帧包括发送数据。至少有一个多路复用帧MuxPDU是由多个子多路复用帧组成的,并且每个子多路复用帧是由包括RLP服务标识符字段和指明发送数据长度的长度指示字段的首标以及顺序数据块组成的。也就是说,多路复用帧MuxPDU可以是由用于特殊服务的数据块和指明数据块的首标组成,也可以是由多个子多路复用帧组成的,其中每个子多路复用帧是由用于特殊服务的数据块和指明数据块的首标组成的。图6A表示多路复用帧MuxPDU是由一个子多路复用帧组成的情况,即只包括一个数据块。图6B表示多路复用帧MuxPDU是由多个子多路复用帧组成的情况,即包括多个数据块。生成数据块(或RLP帧)的操作由图3的RLP控制器131执行,生成多路复用帧MuxPDU的操作由图3的多路复用/多路分解控制器140执行,并且生成信息帧(物理帧)的操作由图2的物理层处理器150执行。
参照图6A,第一LTU与从第一服务接收738-比特数据块的情况相对应,该数据块正好比LTU净荷(744比特)短6个比特,这样服务标识符就设置为第一服务‘001’,长度标记设置为‘000’,然后LTU的净荷中填充接收到的数据块。此处,服务标识符和长度标记构成多路复用帧MuxPDU的首标。如表9到13所示,‘001’的服务标识符指明后续数据块的长度。例如,参照表9,假设采用LTU并且发送速率在Rate Set 1时是307200bps,如果多路复用帧只包括一个数据块并且长度标记为‘000’,那么服务数据块的长度是728比特。
参照图6B,第二LTU与从第二服务接收330-比特数据块的情况相对应,该数据块比剩余的LTU净荷(744比特-330比特=414比特)短大于14的比特,并且比2034比特短,2034比特是表12所示的每个发送速率都可用的服务数据块的最大长度,所以,服务标识符就设置为第二服务‘010’,长度标记设置为‘101’,然后长度字段设置为从MuxPDU的总长度43字节(344比特)中减去1而得的值‘00101010(=42)’。剩余的50字节(400比特)的LTU净荷部分与没有从服务接收到数据块的情况相对应。在这种情况中,生成填充MuxPDU并将其置于该部分中。此处,服务标识符与长度标记组成多路复用帧MuxPDU的首标。LTU,即多路复用帧是由两个子多路复用帧组成的。在第一子多路复用帧中,‘010’的服务标识符表明后续数据块是用于第二服务。‘010’的长度标记和‘00101010’的长度字段表明用于第二服务的包含于MuxPDU中的数据块的长度。
第二子多路复用帧是通过对第二服务进行数据块填充和将填充MuxPDU填充在LTU净荷中来组装的。如表13所示,‘111’的服务标识符表明后续数据块是用于空服务,而‘000’的长度标记表明用于空服务的数据块的长度。
参照图6C,第三LTU与在生成LTU时服务没有提供数据块的情况相对应。在这种情况下,生成填充MuxPDU并将其置于LTU中。通过在信息比特中填充图6A到6C所示的LTU并将剩余的比特设置为‘000’,来完成信息比特(或信息帧)的生成。
5.SCH上多路复用/多路分解控制器的Rx操作
接收方的多路复用/多路分解控制器按下列方法对通过辅助信道(SCH)发送信息比特进行操作。该操作按图13所示的过程执行。
对于使用LTU的信息比特,按照表5或6所示的发送速率划分LTU。例如,对于通过在307.2Kbps下连接的辅助信道接收的信息比特,LTU分段为表5所示的760比特的单元。如果信息比特没有错误,多路复用/多路分解控制器将MuxPDU从每个LTU或信息比特中分离(图13的步骤S40)。在分离了MuxPUD后,多路复用/多路分解控制器确定将被发送数据块的服务的RLP(步骤S41),并将接收到的数据块发送给相应服务的RLP。此处,连同接收到的数据块一起发送数据块的长度信息(步骤S42和步骤S43)。在每个单独的MuxPDU上,都执行将接收到的数据块以及数据块的长度信息发送给相应服务的RLP的操作。
否则,如果信息比特有错误,那么多路复用/多路分解控制器在每个LTU上执行CRC检查。对于没有错误的LTU,多路复用/多路分解控制器分离MuxPDU。而对于有错误的LTU,多路复用/多路分解控制器通知所有在辅助信道上具有逻辑信道的服务:接收了坏的数据块,并通知那些具有最大数据块长度的服务:各个服务可以以LTU发送,然后丢弃信息比特。例如,如图6A到6C所示,在通过以307.2Kbps连接的辅助信道接收到LTU中发送的数据块的最大长度是738比特。
对于接收到的没有使用LTU生成的信息比特,对于9600bps或14400bps的发送速率,按照表7或8分离MuxPDU。MuxPDU分离方法与基本信道中的方法相同。但是,在辅助信道中,由于只有一个从具有对应于辅助信道的逻辑信道的服务接收的数据块能够在MuxPDU中存在,所以认为具有不同MuxPDU首标的信息比特已被破坏。
对于接收到的没有使用LTU生成的信息比特,对于19200bps或28800bps的发送速率,在所有信息比特上分离MuxPDU。如果信息比特有错误,那么多路复用/多路分解控制器通知所有在辅助信道上具有逻辑信道的服务接收了坏的数据块,并丢弃信息比特。
如下所示,在从LTU净荷或信息比特中分离MuxPDU时,基于服务标识符、长度标记和长度字段,可以知道MuxPDU的数据块应发送给哪个服务,并且知道接收到的MuxPDU的全部长度。
首先,接收方的多路复用/多路分解控制器在LTU净荷或信息比特的头部开始进行MuxPDU分离。
第二,如果正在被分析的MuxPDU的服务标识符,按表13所示被设置为‘111’,那么接收方的多路复用/多路分解控制器丢弃LTU净荷或信息比特的所有剩余部分。
第三,如果正在被分析的MuxPDU的服务标识符,按表13所示被设置为‘000’,那么接收方的多路复用/多路分解控制器将认为LTU净荷或信息比特已被破坏。
第四,如果正在被分析的MuxPDU的服务标识符按表13所示被设置为‘001’和‘110’之间的一个值,以表示在辅助信道上具有逻辑信道的服务之一,那么将分析下一个3-比特长度标记。如果服务标识符没有指明在辅助信道上具有逻辑信道的服务之一,那么多路复用/多路分解控制器将认为LTU净荷或信息比特已被破坏。
第五,如果3-比特长度标记设置为‘000’,那么LTU净荷或信息比特的剩余部分构成一个MuxPDU。因此,MuxPDU的数据块将发送给上层服务,其中MuxPDU具有从剩余部分的长度中减去6比特而得的长度。
第六,如果3-比特长度标记设置为‘100’、‘101’或‘110’,那么将分析下一个3-比特长度字段。如果3-比特长度字段不是设置为‘000’、‘101’或‘110’,那么接收方的多路复用/多路分解控制器将认为LTU净荷或信息比特已被破坏。
第七,如果3-比特长度类型字段设置为‘100’,那么对应于通过从可以填充在LTU净荷或信息比特中的MuxPDU的最大容量中减去8-比特长度字段值与8的乘积而得到的长度的部分组成一个MuxPDU。因此,排除了14-比特首标的MuxPDU的部分将作为数据块同数据块的长度信息一起被发送给上层服务。
第八,如果3-比特长度类型字段设置为‘101’或‘110’,那么将分析下一个8-比特或16-比特长度字段。如果将该长度字段值加1得到的值比以字节表示LTU净荷或信息比特的剩余部分而确定的值,那么接收方的多路复用/多路分解控制器将认为LTU净荷或信息比特已被破坏。
第九,如果将长度字段值加1得到的值小于或等于以字节表示LTU净荷或信息比特的剩余部分而确定的值,那么得到的值是MuxPDU的长度。因此,由从以具有LTU净荷或信息比特的剩余部分确定的长度值的MuxPDU中减去14-比特或22-比特首标而得到的剩余部分将作为数据块与其长度信息一起被发送给上层服务。
最后,如果在确定MuxPDU后存在LTU净荷或信息比特的剩余部分,那么在剩余部分上将再次执行上述过程。
C.按照发明的实施例的RLP控制器的Tx/Rx操作
按照本发明的实施例执行的图3和4中所示的RLP控制器131的操作将按下述分解。
1.RLP控制器的数据发送操作
RLP控制器131接收存储在发送数据缓冲器122中的数据流,并且在多路复用/多路分解控制器140请求数据块时,生成具有所请求的数据块大小的RLP帧。存储在发送数据缓冲器122中的数据流被视作具有无限大的长度。因此,RLP控制器131发送数据流时不需要区分开始部分和结尾部分。
RLP控制器131将存储在发送数据缓冲器122中的数据流分段为具有适当长度的块。这些块既可以具有相同的大小也可以具有不同的大小。但是,在任意一种情况下,这些块都具有超过一个字节的大小并且最大为NDATA字节。
RLP控制器131将0到(NBLOCK-1)的序列号分配给块。在下列描述中,分配给块的序列号被视作“块序列号”。RLP控制器131将序列号0分配给第一个生成的块。当生成新块时,RLP控制器131将通过对先前块的序列号加1后所得的序列号分配给新块。如果分配给先前块的序列号为(NBLOCK-1),那么RLP控制器131将序列号0分配给新块。
此外,RLP控制器131将从0到(NDATA-1)的序列号分配给新块中的数据字节。在下列描述中,分配给数据字节的序列号被视作“数据序列号”。RLP控制器131将序列号0分配给块中的第一数据字节。RLP控制器131将通过对先前字节的序列号加1后所得的序列号分配给下一个字节。由于块能够具有NDATA的最大容量,所以0到(NDATA-1)的序列号足够用于数据序列号。
通过使用块序列号和数据序列号,就可以指定特定的数据字节。在下列描述中,使用块序列号和数据序列号来指定特定数据字节的方法被视作“双向寻址”。
当多路复用/多路分解控制器140请求数据块时,RLP控制器131采用具有适当大小的数据从第一个块中的第一字节创建RLP帧。RLP控制器131将数据段中的块序列号和数据序列号填入RLP帧中,从而接收方的RLP控制器可以知道包含于接收到的RLP帧中的相应数据段是对应于哪个块中的哪个数据字节。
当RLP帧中块的大小比NDATA字节小时,RLP控制器131将创建RLP帧,从而接收方的RLP控制器就可以知道被发送块的结束。也就是说,当发送的数据块具有小于NDATA字节的数据时,RLP控制器131向接收方的RLP控制器指明块的结束,这样接收方的RLP控制器将等待下一个块。为此,本发明定义了“块结束标记”。也就是说,发送方的RLP控制器将块结束标记与RLP帧一起发送。在发送其大小小于NDATA字节的块的最后部分时,RLP控制器131将1-比特的块结束标记设置为‘1’,否则将1-比特的块结束标记设置为‘0’。当接收到块结束标记设置为‘1’的RLP帧时,RLP控制器131等待具有下一个序列号的块中的第一数据字节。
此过程以示例的方式显示在图7中。在图7中,NDATA假定为6。在图7中,RLP控制器131按多路复用/多路分解控制器140的请求创建5个RLP帧。当多路复用/多路分解控制器140请求其中可填充6个数据字节的数据块时,RLP控制器131创建图7所示的第一RLP帧A。因为具有序列号0的第一个块有6-字节数据,所以RLP控制器131可以只采用BLOCK_0创建RLP帧。由于是采用从序列号为0的块中序列号为0的数据字节开始的数据段来创建RLP帧,所以RLP控制器131在RLP帧首标中指明了块序列号0和数据序列号0。此外,由于序列号为0的块的大小是预定大小NDATA字节(6字节),所以RLP控制器131将块结束标记设置为‘0’。
当多路复用/多路分解控制器140请求其中可填充4-字节数据的数据块时,RLP控制器131创建图7所示的第二RLP帧B。由于在图7中已经发送了第一个块,所以RLP控制器131采用序列号为1的第二个块来创建RLP帧。在图7中,由于序列号为1的块具有4-字节数据,所以RLP控制器131可以只采用BLOCK_1来创建RLP帧。由于是采用从序列号为1的块中序列号为0的数据字节开始的数据段来创建RLP帧,所以RLP控制器131在RLP帧首标中指明了块序列号1和数据序列号0。此外,由于序列号为1的块的大小是小于6字节的4字节,并且填充了BLOCK_1的最后部分(数据字节#3),所以RLP控制器131将块结束标记设置为‘1’。
当多路复用/多路分解控制器140再次请求其中可填充4-字节数据的数据块时,RLP控制器131创建图7所示的第三RLP帧C。由于在图7中已经发送了第一和第二个块,所以RLP控制器131采用序列号为2的第三个块来创建RLP帧。在图7中,由于序列号为2的块具有6-字节数据,所以RLP控制器131采用BLOCK_2的最前面的4个字节来创建RLP帧。由于是采用从序列号为2的块中序列号为0的数据字节开始的数据段来创建RLP帧,所以RLP控制器131在RLP帧首标中指明了块序列号2和数据序列号0。此外,由于序列号为2的块的大小是6个字节,所以RLP控制器131将块结束标记设置为‘0’。
当多路复用/多路分解控制器140再次请求其中可填充4-字节数据的数据块时,RLP控制器131创建图7所示的第四RLP帧D。由于在图7中已经发送了序列号为2的块中最前面的4个字节(数据字节#0到数据字节#3),所以RLP控制器131创建起始于序列号为2的第三个块中的第5个数据字节(数据字节#4)的RLP帧。在图7中,由于序列号为2的块有2-字节未发送的数据,所以RLP控制器131不能够只采用BLOCK_2中的数据来填充RLP帧。因此,RLP控制器131也采用序列号为3的下一个块中的数据来创建RLP帧。也就是说,RLP控制器131采用序列号为2的块中的最后2字节和序列号为3的块中的最后的2字节来创建具有4-字节数据的RLP帧。由于是采用从序列号为2的块中序列号为4的数据字节开始的数据段来创建RLP帧,所以RLP控制器131在RLP帧首标中指明了块序列号2和数据序列号4。此外,由于序列号为2的块的大小是6字节,并且没有填充序列号为3的块的最后部分(数据字节#4),所以RLP控制器131将块结束标记设置为‘0’。
当多路复用/多路分解控制器140再次请求其中可填充4-字节数据的数据块时,RLP控制器131创建图7所示的第五RLP帧E。由于在图7中已经发送了序列号为3的块中最前面的2个字节(数据字节#0和数据字节#1),所以RLP控制器131创建起始于序列号为3的第四个块中的第3个数据字节(数据字节#2)的RLP帧。在图7中,由于序列号为3的块有3-字节未发送的数据(数据字节#2到数据字节#4),并且没有更多的数据,所以RLP控制器131只采用BLOCK_3中的数据来创建RLP帧。也就是说,RLP控制器131采用序列号为3的块中的最后3字节来创建具有3-字节数据的RLP帧。由于是采用从序列号为3的块中序列号为2的数据字节开始的数据段来创建RLP帧,所以RLP控制器131在RLP帧首标中指明了块序列号3和数据序列号2。此外,由于序列号为3的块的大小是小于6字节的5个字节,并且填充了序列号为3的块的最后部分(数据字节#4),所以RLP控制器131将块结束标记设置为‘1’。
如上所述,按照本发明的实施例,RLP控制器131将数据流分段为多个如图7所示的RLP帧(连续帧)。将数据流分为多个具有可变长度的连续块BLOCK0-BLOCK3,并且每个连续块被再次分段为多个具有字节长度的子连续块。例如,将连续块BLOCK0分段为0到5的每个都具有字节长度的子连续块。RLP控制器131通过将数据流分段为多个RLP帧来进行发送,其中首标附加在每个RLP帧的头部。首标是由块序列号、数据序列号以及块结束标记组成的。块序列号是指明包含于相应RLP帧中子连续块所属的连续块的唯一号的第一组比特。此处,块序列号是相应RLP帧的第一子连续块所属的连续块的号。数据序列号是指明相应RLP帧的第一子连续块的号的第二组比特。块结束标记指明包含于一个或多个RLP帧中的连续块的大小是否小于预定大小(NDATA字节)以及是否包含块的最后部分。
当没有数据发送时,RLP控制器131发送空数据块。
当以上述方法创建块时,RLP控制器131填充(创建的块的序列号、包含于创建的块中的数据段的大小以及包含于创建的数据块中的数据段)发送项目(entry),并将发送项目存储在前向重排序缓冲器133中。前向重排序缓冲器133将重发项目保持一段预定时间,并且当RLP控制器131从接收方的RLP控制器接收到重新发送的请求时,将存储的重发项目中具有所请求的序列号的重发项目发送给RLP控制器131。RLP控制器131采用存储在已发送的重发项目中的数据段中接收方RLP控制器所请求的数据部分,来创建要发送的重发RLP帧。RLP控制器131以与创建发送新数据的RLP帧的方式来创建RLP帧,即使当创建重发RLP帧时也是如此。也就是说,RLP控制器131将数据段的块序列号和数据序列号填充到RLP帧中,从而使得接收方的RLP控制器可以知道包含于接收到的RLP帧中的相应数据段是与哪个块中的哪个数据字节相对应。此外,当RLP帧中发送的块的大小小于NDATA字节时,RLP控制器131应创建RLP帧,以便接收方的RLP控制器可以知道发送块的结束,例如,在发送新数据时。另外,RLP控制器131应向接收方的RLP控制器指明至少填充在接收到的RLP帧中的数据段的第一数据字节是重发的数据字节。为此,本发明定义了“重发标记”。例如,当包含于RLP帧中的第一字节是重发字节时,发送方的RLP控制器将重发标记设置为‘1’,否则,将重发标记设置为‘0’。当接收到其中重发标记为‘1’的RLP帧时,接收方的RLP控制器执行用于处理重发数据的过程。
2.RLP控制器的数据接收操作
每当多路复用/多路分解控制器140提供接收到的RLP帧时,RLP控制器131都检测接收到的RLP帧中是否填充了新数据或重发数据。可基于重发标记来执行该操作。如果接收方的RLP帧的重发标记被设置为‘0’,则意味着RLP帧中填充了新数据,这样RLP控制器131就检测接收到的RLP帧的块序列号和数据序列号。如果序列号与当前等待的块序列号和数据序列号相等,则意味着没有丢失新数据。因此,RLP控制器131将接收到的数据段存储在接收数据缓冲器124中。否则,如果序列号不相等,RLP控制器131则请求发送方的RLP控制器对应于丢失的序列号来重发块和数据,并将接收到的新块的数据段存储在重排缓冲器138中。
RLP控制器131按以下所述来确定丢失的序列号。在双向寻址中,RLP控制器131认为存在于块序列号和数据序列号之间希望被接收的序列号以及接收到的新数据段的第一字节的块序列号和数据序列号为丢失的序列号。因此,RLP控制器131将希望被接收的块序列号和数据序列号作为NAK项目存储在NAK列表137中,并确定具有以上块序列号和数据序列号的数据字节的下一个数据字节的块序列号和数据序列号。当确定的下一个数据字节的块序列号和数据序列号不等于接收到的新数据段的第一字节的块序列号和数据序列号时,RLP控制器131将确定的块序列号和数据序列号作为NAK项目存储在NAK列表137中,并再次确定下一个数据字节的块序列号和数据序列号,然后重复以上过程。否则,如果下一个数据字节的块序列号和数据序列号等于接收到的新数据段的第一字节的块序列号和数据序列号,那么RLP控制器131将结束NAK项目的添加过程。
在双向寻址中,当存在具有块序列号B_SEQ和数据序列号D_SEQ的数据字节时,采用下面的等式1来确定该数据字节的下一个字节的块序列号B_SEQNEXT和数据序列号D_SEQNEXT。
[等式1]
D_SEQNEXT=D_SEQ+1    (当D_SEQ不等于(NDATA-1)时)或
0                    (当D_SEQ等于(NDATA-1)时)
B_SEQNEXT=B_SEQ+1    (当D_SEQ不等于(NDATA-1)时)或
(B_SEQ+1)模NBLOCK   (当D_SEQ等于(NDATA-1)时)
在等式1中,执行模操作以计算用‘模’符号左边的项目值除以右边的项目值后所得的余数。
RLP控制器131采用丢失数据字节的块序列号、丢失数据字节的数据块序列号、指明是否接收了丢失的数据字节的标记、重发定时器以及故障定时器来创建NAK项目,并将创建的NAK项目存储在NAK列表137中。
在完成了对丢失数据字节进行的NAK项目添加过程后,RLP控制器131采用等式1,为接收到的块的数据段的每个数据字节分配唯一的块序列号和数据序列号。也就是说,RLP控制器131将接收到的块序列号和数据序列号分配给接收到的数据段的第一数据字节。然后,RLP控制器131采用等式1和先前数据字节的块序列号和数据序列号,为接收到的数据段的数据字节分配块序列号和数据序列号。
在给接收到的块的数据字节分配了序列号后,RLP控制器131将由接收到的数据字节的块序列号组成的重排序缓冲器项目、接收到的数据字节的数据序列号、接收到的数据字节以及用于指明接收到数据字节是否是块的最后数据字节的标记存储在重排缓冲器138中,从而在出现丢失数据时,对整个数据字节进行重新排序。特别是,如果发送方的RLP控制器指出了接收到的块的大小是小于NDATA字节的,并且此时接收到的RLP帧中的块的最后部分已被填充,那么RLP控制器131在创建接收到的最后数据字节的重排序缓冲器项目时,相应地对块结束标记进行设置。
在处理了填充有新数据的RLP帧后,RLP控制器131按以下所述来计算下一个新数据的块序列号和数据序列号。也就是说,如果发送方的RLP控制器指出接收到的块的大小是小于NDATA字节的,并且此时接收到的RLP帧中的块的最后部分已被填充,那么RLP控制器131将块序列号设置为下一个新块的序列号,并将数据序列号设置为‘0’。如上所述,下一个新块的序列号是通过将前面的块的序列号加1得到的。如果前面块的序列号分配为(NBLOCK-1),那么新块的序列号将为0。如果发送方的RLP控制器指出接收到的块的大小是等于NDATA字节的,并且此时接收到的RLP帧中的具有小于NDATA字节大小的块的最后部分没有被填充,那么RLP控制器131将保留块序列号,并仅将数据序列号增加到与接收到的数据段的一样大。如果增加后的数据序列号大于NDATA,则认为已接收了该块的所有数据。因此,RLP控制器131将块序列号设置为下一个新块的块序列号,并将数据序列号设置为增加后的数据序列号与NDATA之间的差值。
如果接收到的RLP帧控制器中的重发标记设置为‘1’,那么接收到的RLP帧具有重发的数据段,这样,RLP控制器131就可以采用等式1为接收到的块中的数据段的每个数据字节分配块序列号和数据序列号。也就是说,RLP控制器131将接收到的块序列号和数据序列号分配给接收到的数据段的第一数据字节。然后,RLP控制器131采用等式1及先前数据字节的块序列号和数据序列号,将块序列号和数据序列号分配给接收到的数据段的每个数据字节。
在该过程之后,RLP控制器131在NAK列表137中搜索NAK项目,在该NAK项目时接收到的数据字节的块序列号和数据序列号是一致的。如果已经接收了搜索到的NAK项目,RLP控制器131就丢弃数据字节。如果搜索到的NAK项目是还没有接收到的项目中最早的项目之一,则意味着已经接收了至所接收数据字节的所有数据字节。然后,RLP控制器131对接收到的存储在重排缓冲器138中的连续数据按照序列号的顺序进行重新排序,接着将其发送给接收数据缓冲器124,并且RLP控制器131对用于指明是否接收丢失的数据字节的标记进行设置,以指明接收丢失的数据字节。如果NAK项目不是还没有接收到的最早项目之一,则RLP控制器131对用于指明是否接收丢失的数据字节的标记进行设置,以指明接收丢失的数据字节,并将接收到的数据字节存储在重排缓冲器138中。RLP控制器131创建重排序缓冲器项目并将其存储在重排缓冲器138中,该重排序缓冲器项目是由接收到的数据字节的块序列号、接收到的数据字节的数据序列号以及指明接收到的数据字节是否是用于数据字节的块的最后数据字节的标记组成的。当出现先前丢失的数据字节并且接收了具有连续序列号的数据帧时,如上所述,将存储的数据提供给接收数据缓冲器124。
在处理了接收到的RLP帧后,对于NAK列表137中每个NAK项目上的重发请求,RLP控制器131执行调整定时器的操作。也就是说,如果确定了接收到的RLP帧具有新发送的数据字节或者发送方的RLP控制器没有发送任何数据,则意味着发送方的RLP控制器没有重发请求,从而RLP控制器131应再次请求重发。因此,RLP控制器131将还没有接收到的NAK项目的重发定时器或故障定时器减去1,并且当该值为‘1’时,再次产生重发请求,否则,丢弃重发请求,仅将接收到的剩余部分发送给接收数据缓冲器124。
3.数据发送之前RLP控制器的操作
在开始进行操作之前,RLP控制器131将图3和4所示的L_V(S)寄存器132、L_V(R)寄存器136、L_V(N)寄存器135以及E寄存器134初始化为0。在开始进行操作之前,RLP控制器131将前向重排序缓冲器133、NAK列表137以及重排缓冲器138清空。最后,RLP控制器131将所有与重发相关的定时器的状态钝化。
图8A到8F和图9A到9B中显示了RLP控制器131能够发送给多路复用/多路分解控制器的数据块的类型。更具体地说,图8A到8F显示了可以通过基本信道发送的RLP帧,图9A到9B显示了可以通过辅助信道信道发送的RLP帧。在下面的描述中,将认为RLP帧为下列所述。将图8A到8F或下面表14中所示的SYNC、SYNC/ACK、ACK或NAK帧视作“控制帧”,并且将填充了数据的帧视作“数据帧”。将数据帧分为填充了新发送的数据部分的新数据帧以及只填充了重发数据部分的重发数据帧。将只具有12-比特SEQ字段的帧视作“空闲帧”。
在图8A到8F中,通过基本信道发送的数据块可用控制帧、数据帧或空闲帧。在图9A和9B中,通过辅助信道发送的数据块只可用数据帧。
RLP控制器131在发送数据之前执行重建过程。RLP控制器131连续地将SYNC帧作为数据块发送给多路复用/多路分解控制器140。
RLP控制器131从多路复用/多路分解控制器140接收SYNC帧,并连续地将SYNC/ACK帧发送给多路复用/多路分解控制器140,直到接收既不是空数据块也不是SYNC帧的物理信道帧为止。
当接收到SYNC/ACK帧时,RLP控制器131将ACK帧发送给多路复用/多路分解控制器140。RLP控制器131连续地发送ACK帧,直到从多路复用/多路分解控制器140接收既不是空数据块也不是SYNC/ACK帧的物理信道帧。当接收了物理信道帧,并且接收到的数据块不是空数据块而且具有不是SYNC/ACK帧的RLP帧时,RLP控制器131开始数据发送。
当接收到ACK帧时,RLP控制器131开始数据发送。RLP控制器131可以将除SYNC、SYNC/ACK、ACK帧以外的其它帧发送给多路复用/多路分解控制器140。
4.RLP控制器的FCH数据发送操作
发送方的多路复用/多路分解控制器140向RLP控制器131发送要通过基本信道发送的数据块的请求,从而使得RLP控制器131生成帧。在向RLP控制器131发送数据块请求时,发送方的多路复用/多路分解控制器140也发送要由RLP控制器131进行创建的数据块的大小信息T。这里假设发送方的多路复用/多路分解控制器140所请求的数据块的大小T在Rate Set 1时总是171比特,在Rate Set 2时总是266比特。
RLP控制器131按照以下的优先级顺序来创建要通过基本信道发送的数据块。
1.控制帧(SYNC、SYCN/ACK、ACK、NAK)
2.重发数据帧
3.数据帧
4.空闲帧
当存在要发送的控制帧时,RLP控制器131按如下所述创建控制帧。对于SYNC、SYCN/ACK和ACK帧,RLP控制器131将SEQ字段设置为‘00000000’,按照帧类型设置CTL字段,并附加FCS字段,如图8A所示。FCS字段是由RFC-1662规定的多项式创建的16-比特帧检查序列。FCS字段是为所有前面的比特而创建的。RLP控制器131根据多路复用/多路分解控制器140提供的大小信息,将FCS字段后的部分全部设置为‘0’。RLP控制器131将作为数据块的最后1比特的TYPE字段设置为‘1’,然后将生成的数据块发送给多路复用/多路分解控制器140。
当存在要重发的数据时,RLP控制器131生成NAK帧,并将其发送给多路复用/多路分解控制器。NAK帧具有下面表14中所示的结构。表14NAK帧
    字段     长度
    SEQ     8比特
    CTL     8比特
    NAK_COUNT     2比特
               将下面的字段填充NAK_COUNT+1次
    NAK_TYPE_AND_UNIT     4比特
    当NAK_TYPE_AND_UNIT是‘0001’时,在下面的字段中填充
    FIRST     12比特
    LAST     12比特
当NAK_TYPE_AND_UNIT是‘0010’时或者是表15或16中定义的值时,在下面的字段中填充
    NAK_MAP_SEQ     12比特
    NAK_MAP     8比特
    当NAK_TYPE_AND_UNIT是‘1111’时,在下面的字段中填充
    NAK_MAP_SEQ     12比特
    FIRST     13比特
    LAST     13比特
    对于所有NAK_TYPE,在下面的字段中填充
    PADDING_1     可变长度
    FCS     16比特
    PADDING_2     可变长度
    TYPE     1比特
在表14中,RLP控制器131按以下所述创建NAK帧。表14的SEQ字段设置为‘00000000’,CTL字段设置为‘00011100’,并且TYPE字段设置为‘1’。RLP控制器131将NAK_COUNT字段设置为由从包含于NAK帧中的重发请求数中减去1而得到的值。
RLP控制器131执行(NAK_COUNT+1)重发请求。正如表14中可见的,重发请求是按照NAK_TYPE_AND_UNIT字段的值,由NAK_TYPE_AND_UNIT字段与FIRST和LAST或与NAK_MAP_SEQ和NAK_MAP字段组成的。当重发请求的NAK_TYPE_AND_UNIT字段设置为‘0001’时,RLP控制器131采用不断请求重发的第一个块的第一序列号填充FIRST字段,采用最后的块的块序列号填充LAST字段。
当RLP控制器131将NAK_TYPE_AND_UNIT字段设置为‘0010’时,以NAK_MAP的方法在具有NAK_MAP_SEQ字段和NAK_MAP字段的块上执行重发请求。当请求重发几个不连续的块时,RLP控制器131将NAK_TYPE_AND_UNIT字段设置为‘0010’并按以下所述填充NAK_MAP字段。NAK_MAP的方法在NAK_MAP_SEQ字段中填充重发请求的第一个块的块序列号,并且当需要请求重发对应于序列号为(NAK_MAP_SEQ+n)模212的块时,将从NAK_MAP字段的最高有效位(MSB)开始的第n个比特设置为‘1’,其中n可以为1到8的值。例如,对于设置为‘0010’的NAK_TYPE_AND_UNIT字段和Rate Set 1,如果(NAK_MAP_SEQ)字段设置为‘0’并且NAK_MAP字段设置为‘10000000’,那么RLP控制器在接收到字段值时,应该对块序列号为0的块和块序列号为1的块进行重发。
当请求重发块的部分段时,RLP控制器131可以按下面表15或16所示来设置NAK_TYPE_AND_UNIT字段。当RLP控制器131按表15或16所示来设置NAK_TYPE_AND_UNIT字段时,以NAK_MAP的方法在具有NAK_MAP_SEQ字段和NAK_MAP字段的块的部分段上执行重发请求。表15NAK_TYPE_AND_UNIT字段(Rate Set 1)
    字段值     序列号的数
    ‘0011’     19
    ‘0100’     41
    ‘0101’     42
    ‘0110’     90
    ‘0111’     186
    ‘1000’     378
    ‘1001’     762
    ‘1010’     1530
表16NAK_TYPE_AND_UNIT字段(Rate Set 2)
    字段值   序列号的数
    ‘0011’     31
    ‘0100’     65
    ‘0101’     66
    ‘0110’     138
    ‘0111’     282
    ‘1000’     318
    ‘1001’     570
    ‘1010’     1146
    ‘1011’     2586
RLP控制器131基于表15或16填充NAK_MAP字段和NAK_MAP_SEQ字段。在NAK_MAP_SEQ字段中填充请求重发块的块序列号,在NAK_MAP字段中填充表15或16所示单元中被请求重发的块中数据段的数据序列号。每当从NAK_MAP字段的最高有效位(MSB)开始的第n个比特设置为‘1’,则通过使用NAK_MAP,RLP控制器131就请求重发属于对应于从((n-1)*U)到(n*U-1)数据序列号的块的数据字节,其中U表示由NAK_TYPE_AND_UNIT字段确定的单元。数值‘n’可以是从1到8的中的一个值。例如,对于Rate Set 1,当NAK_TYPE_AND_UNIT字段设置为‘0011’、NAK_MAP_SEQ字段设置为‘0’并且NAK_MAP字段设置为‘10000000’时,RLP控制器131应该重发块序列号为0的块的数据部分中数据序列号为0到18的数据字节。即,在接收字段值时,重发第1到第19数据字节。
当请求重发属于块的数据字节时,RLP控制器131可以将NAK_TYPE_AND_UNIT字段设置为‘1111’。当RLP控制器131将NAK_TYPE_AND_UNIT字段设置为‘1111’时,重发请求包括NAK_MAP_SEQ字段、FIRST字段以及LAST字段。RLP控制器131将填充有请求重发的数据段的块的块序列号填充在NAK_MAP_SEQ字段中,将请求重发的数据段的第一字节的数据序列号填充在FIRST字段中,将最后字节的数据序列号填充在LAST字段。
RLP控制器131创建(NAK_COUNT+1)发送请求以将其填充在NAK帧中,在FCS字段中填充0用于字节校准,并填充FCS字段。FCS字段是由RFC-1662规定的多项式创建的16-比特帧检查序列。FCS字段是为所有前面的比特而创建的。在填充了FCS字段后,RLP控制器131在数据块的剩余部分中填充0。
为了创建要通过基本信道发送的新数据帧,RLP控制器131按如下所示进行操作。
在发送了先前定义的或在最先创建新数据帧时定义的块中的所有数据字节后,RLP控制器131定义用于数据流的剩余部分的新块。其中,将定义新块的方法分为模式A和模式B。在模式A中,定义新块以使得数据段的大小与多路复用/多路分解控制器140所请求的数据块中可填充的数据大小相同。在模式B中,定义新块,以使得无论多路复用/多路分解控制器140所请求的数据块的大小是多少,新块都有NDATA字节。在定义新块时,RLP控制器131可以选择模式A或模式B。在实施例中,NBLOCK和NDATA分别定义为28和29
图8A到8F表示了可通过基本信道发送的可用格式。图8A表示了控制帧如SYNC、SYNC/ACK和ACK帧的发送格式。图8B到8E表示了数据帧的发送格式。最后,图8F表示了空闲帧的发送格式。通过下面的描述,将会清楚地了解每种发送格式的结构。
在创建填充有新数据的基本信道RLP帧时,RLP控制器131使用21-比特序列号寄存器L_V(S)132。RLP控制器131将序列号寄存器L_V(S)132中21-比特值的高12位定为块序列号B_SEQ,并将低9位定为数据序列号D_SEQ。
如果D_SEQ值不是0,RLP控制器131确定块中具有还没有发送的数据部分。也就是说,RLP控制器131确定应发送对应于块序列号为B_SEQ的块中的具有D_SEQ到(NDATA-1)的数据序列号的数据字节。因此,RLP控制器131采用图8D到8E的帧格式以发送数据段。当满足下列条件时,可以采用图8D的格式。
首先,还没有发送的数据流中的数据字节的数量大于可采用图8D的格式发送的B,即在Rate Set 1时为19字节或更大,而在Rate Set 2时为31字节或更大。
第二,D_SEQ值是可采用图8D的格式发送的数据字节的数量B的几倍,即在Rate Set 1时为多个19,而在Rate Set 2时为多个31。
在采用图8D的格式发送新数据时,RLP控制器131首先采用作为数据部分的块序列号的B_SEQ值的低8位来设置SEQ字段。此外,RLP控制器131采用通过将以图8D的格式发送的数据字节的数量B除以D_SEQ值而得到的商来设置SEG字段。
在采用图8D的格式发送新数据时,RLP控制器131将TYPE字段设置为‘1’,将重发标记REXMIT字段设置为‘0’,将CTL字段设置为‘01’,然后采用发送数据来填充DATA字段。
在采用图8E的格式发送新数据时,RLP控制器131首先采用作为数据部分的块序列号的B_SEQ值的低8位来设置SEQ字段。此外,RLP控制器131采用D_SEQ值来设置SEG字段。
在采用图8E的格式发送新数据时,RLP控制器131将TYPE字段设置为‘1’,将重发标记REXMIT字段设置为‘0’,将CTL字段设置为‘01’,采用发送数据来填充DATA字段,然后将LEN字段设置为填充在DATA字段中的数据字节的数。
在采用图8D或8E的格式发送新数据时,RLP控制器131在满足下列条件时将块结束标记END字段设置为‘1’,否则将END字段设置为‘0’。
首先,在发送以后,数据流中没有其它还未发送的数据。
第二,将发送的数据字节的数量N与D_SEQ值相加得到的值不等于NDATA或几倍的NDATA
在发送了新数据帧后,REP控制器131按以下所述更新L_V(S)寄存器132。首先,当块结束标记END字段设置为‘0’时,如果在以上过程中发送的新数据的大小是N,那么RLP控制器131将L_V(S)寄存器132加上N值。其次,在以上过程中,当块结束标记END字段设置为‘1’时,RLP控制器131将L_V(S)寄存器132的高12位的值加上1,并将L_V(S)寄存器132的低9位的值设置为‘0’。
当D_SEQ值为0时,RLP控制器131定义新块。如上所述,对于模式A和模式B,该操作具有不同的过程。如果RLP控制器131按照模式B对新块进行定义,那么RLP控制器131将如下所述进行操作。
在模式A中,RLP控制器131确定新块大小的最小值M为可采用图8B的格式发送的数据字节的数量B,即在Rate Set 1时为20字节,在Rate Set 2时为32字节,并确定还没有发送的数据流中的数据字节的数量。当确定的最小值M与可采用图8B的格式发送的数据字节的数量B相等时,RLP控制器131采用图8B的格式,否则采用图8C的格式。
在采用图8B的格式发送新数据时,RLP控制器131首先采用数据部分的块序列号B_SEQ值的低8位来设置SEQ字段。由于采用图8B的格式发送的数据总是从数据序列号0开始并且具有小于NDATA的大小,所以总是将块结束标记设置为‘1’。因此,尽管图8B的格式不包括数据序列号和块结束标记,但是接收方的RLP控制器在接收到图8B的格式时,将数据序列号视作‘0’,将块结束标记视作‘1’。
在采用图8B的格式发送新数据时,RLP控制器131将TYPE字段设置为‘0’,将重发标记REXMIT字段设置为‘0’,然后采用发送数据填充DATA字段。
在采用图8C的格式发送新数据时,RLP控制器131首先采用数据部分的块序列号B_SEQ值的低8位来设置SEQ字段。由于采用图8C的格式发送的数据总是从数据序列号0开始并且具有小于NDATA的大小,所以总是将块结束标记设置为‘1’。因此,尽管图8C的格式不包括数据序列号和块结束标记,但是接收方的RLP控制器在接收到图8C的格式时,将数据序列号视作‘0’,将块结束标记视作‘1’。
在采用图8C的格式发送新数据时,RLP控制器131将TYPE字段设置为‘1’,将重发标记REXMIT字段设置为‘0’,将CTL字段设置为‘001’,采用发送数据填充DATA字段,然后将LEN字段设置为填充在DATA字段中的数据字节的数量。
在发送了新数据帧后,RLP控制器131按以下所述更新L_V(S)寄存器132。RLP控制器131将L_V(S)寄存器132加上NDATA值。
如果RLP控制器131按照模式B对新块进行定义,那么RLP控制器131将如下所述进行操作。在模式B中,RLP控制器131设置新块的大小为NDATA字节与还没有发送的数据流中数据字节的数量中的最小值M。在确定了新块的大小后,RLP控制器131定义新块具有与由还没有发送的数据流中数据字节确定的块大小相同的数据。在定义了新块后,RLP控制器131如上所述,执行用于发送块的剩余部分的过程。
RLP控制器131将新定义的块存储在前向重排序缓冲器133中,为接收方的重发请求做准备。RLP控制器131在重发项目中填充生成块的块序列号、包含于生成块中的数据段的大小以及包含于生成块中的数据段,并将其存储在前向重排序缓冲器133中。在从接收方接收到重发请求时,RLP控制器131应该从前向重排序缓冲器133中检测对应于所请求的块序列号和数据序列号的数据字节,并重发检测到的数据字节。RLP控制器131将请求重发的块序列号定为块序列号B_SEQ,将发送数据段中第一字节的数据序列号确定为数据序列号D_SEQ。
在发送重发的数据帧时,RLP控制器131可以采用图8B到8E的格式。在满足下列条件时,RLP控制器131采用图8B或8C的格式。
首先,对整个块发出重发请求。
其次,重发块的大小等于或小于能够采用图8B的格式发送的数据字节的数量B,即在Rate Set 1时为20字节,在Rate Set 2时为32字节。
在采用图8B或8C的格式重发块时,如果块的大小等于能够采用图8B的格式发送的数据字节的数量B,那么RLP控制器131采用图8B的格式,否则,就采用图8C的格式。
在采用图8B的格式重发块时,RLP控制器131首先采用数据部分的块序列号B_SEQ的低8位来设置SEQ字段。
在采用图8B的格式重发块时,RLP控制器131将TYPE字段设置为‘0’,将REXMIT字段设置为‘1’,并采用重发数据填充DATA字段。
在采用图8C的格式重发块时,RLP控制器131首先采用数据部分的块序列号B_SEQ的低8位来设置SEQ字段。
在采用图8C的格式重发块时,RLP控制器131将TYPE字段设置为‘1’,将REXMIT字段设置为‘1’,将CTL字段设置为‘001’,采用重发数据来填充DATA字段,并且采用填充在DATA字段中的数据字节的数量来填充LEN字段。
当不满足上述条件时,RLP控制器131采用图8D或8E的格式。在满足下列条件时,RLP控制器131可以采用图8D的格式。
首先,重发块中数据段的大小是大于能够采用图8D的格式发送的数据字节的数量B的,即在Rate Set 1时为19字节或更大,在Rate Set 2时为31字节或更大。
其次,重发块中数据段的第一数据字节的数据序列号D_SEQ是能够采用图8D的格式发送的数据字节的数量B的几倍,即在Rate Set 1时为多个19,在Rate Set 2时为多个31。
在采用图8D的格式重发块中的数据段时,RLP控制器131首先采用数据部分的块序列号B_SEQ的低8位来设置SEQ字段。此外,RLP控制器131采用通过由使用图8D的格式发送的数据字节的数量B除以D_SEQ值而得到的商来设置SEG字段。
在采用图8D的格式重发块中的数据段时,RLP控制器131将TYPE字段设置为‘1’,将REXMIT字段设置为‘1’,将CTL字段设置为‘01’,并采用重发数据来填充DATA字段。
在采用图8E的格式重发块中的数据段时,RLP控制器131首先采用数据部分的块序列号B_SEQ的低8位来设置SEQ字段。此外,RLP控制器131采D_SEQ值设置SEG字段。
在采用图8E的格式重发块中的数据段时,RLP控制器131将TYPE字段设置为‘1’,将REXMIT字段设置为‘1’,将CTL字段设置为‘1’,采用重发数据来填充DATA字段,并且采用填充在DATA字段中的数据字节的数量来填充LEN字段。
在采用采用图8D或8E的格式重发数据时,如果满足下列条件,RLP控制器131将块结束标记END字段设置为‘1’,否则将END字段设置为‘0’。
首先,在发送后,块中的数据段中没有其他还未重发的数据。
其次,通过将发送的数据字节的数量N与D_SEQ相加得到的值不等于NDATA或多个NDATA
当多路复用/多路分解控制器140请求具有16、20或32比特的长度的数据块时,并且当没有新的发送数据或没有新的重发数据,并且没有要发送的控制帧时,RLP控制器131可以采用图8F的格式发送空闲帧。为了组装空闲帧,RLP控制器131采用L_V(S)寄存器132的高12位填充SEQ字段。RLP控制器131向多路复用/多路分解控制器140发送数据块,该数据块是填充了0的剩余部分。
5.RLP控制器的FCH数据接收操作
多路复用/多路分解控制器140为RLP控制器131提供数据块和接收到的数据块的大小信息T。
在接收到控制帧中的SYNC、SYNC/ACK和ACK帧时,RLP控制器131执行重建过程。在接收到控制帧中的NAK帧时,RLP控制器131根据表14分析NAK帧,从而重发请求的块或块的数据段。
当以图8B到8E的格式接收了新数据时,RLP控制器131采用21-比特序列号寄存器L_V(R)136。RLP控制器131将序列号寄存器L_V(R)136中21-比特值的高12位定为等待发送的块序列号B_SEQR,并将低9位定为等待发送的数据序列号D_SEQR。首先,RLP控制器131按照下列的等式2,采用接收到的帧的8-比特SEQ字段和序列号寄存器L_V(R)136来计算块序列号B_SEQ。
[等式2]
B_SEQ=[B_SEQR+{28+SEQ-(B_SEQR模28)}模28]模212    (2)
在以图8B或8C的格式接收新数据帧时,RLP控制器131将接收到的数据段中第一数据字节的数据序列号定为‘0’。在以图8B或8C的格式接收新数据帧时,RLP控制器131认为块结束标记END字段为‘1’。
在以图8D的格式接收新数据帧时,RLP控制器131将接收到的数据段中第一数据字节的数据序列号D_SEQ定为通过将接收到的帧的5-比特SEG字段值与可采用图8D的格式发送的数据字节的数量B相乘后得到的值。
在以图8E的格式接收新数据帧时,RLP控制器131将接收到的数据段中第一数据字节的数据序列号D_SEQ定为接收到的帧的9-比特SEG值。
在以图8D或8E的格式接收新数据帧时,RLP控制器131将END字段值定为接收到的帧的1-比特END字段值。
在以图8B到8E的格式接收了重发数据帧时,RLP控制器131应该具有图4所示的NAK列表137。如上所述,NAK列表137中的每个NAK项目是由丢失数据字节的块序列号、丢失数据字节的数据序列号、指明是否接收了丢失数据字节的标记、重发定时器以及故障定时器组成的。RLP控制器131检测12-比特块序列号值的低8位与填充在接收到的重发帧的8-比特SEQ字段中的相一致的NAK项目。如果有检测到的NAK项目,RLP控制器131将存储在NAK项目中的块序列号B_SEQ定为接收到的数据段的块序列号。否则,如果没有检测到的NAK项目,RLP控制器131则丢弃接收到的帧。
在以图8B或8C的格式接收重发数据帧时,RLP控制器131将接收到的数据段中第一数据字节的数据序列号D_SEQ定为‘0’。
在以图8B或8C的格式接收重发数据帧时,RLP控制器131将END字段定为‘1’。
在以图8D的格式接收重发数据帧时,RLP控制器131将接收到的数据段中第一数据字节的数据序列号D_SEQ定为通过将接收到的帧的5-比特SEG字段值与可采用图8D的格式发送的数据字节的数量B相乘后得到的值。
在以图8E的格式接收重发数据帧时,RLP控制器131将接收到的数据段中第一数据字节的数据序列号D_SEQ定为接收到的帧的9-比特SEG字段值。
在以图8D或8E的格式接收重发数据帧时,RLP控制器131将END字段值定为接收到的帧的1-比特END字段值。
在接收到图8B到8E所示的格式时,RLP控制器131将接收到的数据段中第一数据字节的数据序列号定为按上述过程确定的D_SEQ字段值。在确定了接收到的数据段中第一数据字节的块序列号B_SEQ和数据序列号D_SEQ以后,RLP控制器131采用等式1计算剩余数据字节的序列号。
在处理接收到的数据段中的数据字节时,RLP控制器131采用L_V(N)寄存器135,L_V(N)寄存器135是12-比特序列号寄存器。RLP控制器131将序列号寄存器L_V(N)135中21-比特值的高12位定为等待发送的块序列号B_SEQN,并将低9位定为等待发送的数据序列号D_SEQN。基于下面的表17,RLP控制器131确定接收到的数据段中各个数据字节的块序列号和数据序列号。
表17
情况 决    策
情况1 对于块序列号和数据序列号的两对,<B1,D1>和<B2,D2>,当B1=B2且D1=D2时,<B1,D1>=<B2,D2>
情况2 如果B2是序列号(B1+NBLOCK/2)模NBLOCK到(B1+NBLOCK-1)模NBLOCK中的一个,那么<B1,D1>大于<B2,D2>
情况3 如果B1=B2,且D2是序列号(D1+NDATA/2)模NDATA到(D1+NDATA-1)模NDATA中的一个,那么<B1,D1>大于<B2,D2>
情况4 如果<B1,D1>不等于或不大于<B2,D2>,那么<B1,D1>小于<B2,D2>
RLP控制器131按如下所述采用表17将接收到的数据段中每个数据字节的块序列号和数据序列号的<B,D>对与<B_SEQR,D_SEQR>和<B_SEQN,D_SEQN>进行比较。此处,SEQR是存储在用于存储接下来所需的块序列号和数据序列号的L_V(R)寄存器136中的21-比特序列号值:B_SEQR是SEQR的高12位的序列号,D_SEQR是SEQR的低9位的序列号。SEQN是存储在用于存储应首先重发的块序列号和数据序列号的L_V(N)寄存器135中的21-比特序列号值:B_SEQN是SEQN的高12位的序列号,D_SEQN是SEQN的低9位的序列号。
首先,如果<B,D>等于或大于<B_SEQN,D_SEQN>并小于<B_SEQR,D_SEQR>,那么RLP控制器131将其视作重发的数据。
第二,如果<B,D>等于或大于<B_SEQR,D_SEQR>并且B值小于通过在B_SEQR与E寄存器134相加的和上执行模28的操作而得到的值,那么RLP控制器131认为其是新数据。
第三,如果<B,D>等于或大于通过在<B_SEQR,D_SEQR>与E寄存器134相加的和上执行模28的操作而得到的值,那么RLP控制器131认为其是复制数据。
RLP控制器131将丢弃认为是复制数据的数据字节,因为复制数据是先前已接收到的数据。
如果认为接收到的数据字节是新数据字节或是重发数据字节,那么RLP控制器131执行下列操作。
首先,如果接收到的数据字节的<B,D>大于或等于<B_SEQN,D_SEQN>并小于<B_SEQR,D_SEQR>,那么RLP控制器131创建重排序缓冲器项目并将接收到的数据字节存储在重排缓冲器138中,其中,重排序缓冲器项目是由接收到的数据字节的块序列号、接收到的数据字节的数据序列号以及指明接收到的数据字节是否是块中的最后数据字节的标记组成的。当数据字节是接收到的数据段的最后数据字节并且END值设置为‘1’时,设置用于指明接收到的数据字节是否是块中的最后数据字节的标记以便指明‘LAST’。此处,如果<B,D>等于<B_SEQN,D_SEQN>,那么RLP控制器131向接收数据缓冲器顺序地发送存储在重排缓冲器138中的重排序缓冲器项目中的、从具有<B_SEQN,D_SEQN>序列号的重排序缓冲器项目到具有可连续发送的序列号的重排序缓冲器项目的存储的数据字节。如果将用于指明接收到的最后发送的数据字节所属的重排序缓冲器项目的数据字节是否是块的最后数据字节的标记设置为指明最后字节的值,那么RLP控制器131将L_V(N)寄存器135的高12位设置为存储在重排序缓冲器项目中的块序列号的下一个块序列号,并将低9位设置为‘0’。否则,如果没有设置标记以指明最后字节,那么RLP控制器131采用表1设置<B_SEQN,D_SEQN>以指明最后发送的数据字节的下一个数据字节,然后分别将L_V(N)寄存器135的高12位和低9位设置为B_SEQN值和D_SEQN值。RLP控制器131记录下在具有与那些接收到的数据字节相同的块序列号和数据序列号的NAK项目处接收到等待的数据帧的情况。
第二,如果接收到的数据字节的<B,D>等于<B_SEQR,D_SEQR>并且<B_SEQR,D_SEQR>等于<B_SEQN,D_SEQN>,那么RLP控制器131采用等式1增加<B_SEQR,D_SEQR>和<B_SEQN,D_SEQN>两者以指明下一个字节。此处,如果数据字节是接收到的数据段的最后数据字节并且END值设置为‘1’,那么RLP控制器131将L_V(N)寄存器135的高12位设置为B_SEQN值的下一个块序列号,将低9位设置为‘0’,并且类似地,将L_V(R)寄存器136的高12位设置为B_SEQR值的下一个块序列号,将低9位设置为‘0’。否则RLP控制器131分别将L_V(N)寄存器135的高12位和低9位设置为B_SEQN值和D_SEQN值,分别将L_V(R)寄存器136的高12位和低9为设置为B_SEQR值和D_SEQR值。RLP控制器131将接收到的数据字节提供给接收数据缓冲器。
第三,如果接收到的数据字节的<B,D>等于<B_SEQR,D_SEQR>并且<B_SEQR,D_SEQR>不等于<B_SEQN,D_SEQN>,那么RLP控制器131采用等式1增加<B_SEQR,D_SEQR>以指明下一个字节。此处,如果数据字节是接收到的数据段的最后数据字节并且END值设置为‘1’,那么RLP控制器131将L_V(R)寄存器136的高12位设置为B_SEQR值的下一个块序列号,将低9位设置为‘0’。否则RLP控制器131分别将L_V(R)寄存器136的高12位和低9为设置为B_SEQR值和D_SEQR值。在这种情况下,RLP控制器131将接收到的数据字节创建为重排序缓冲器项目并将接收到的数据字节存储在重排缓冲器138中,其中重排序缓冲器项目是由接收到的数据字节的块序列号、接收到的数据字节的数据序列号、接收到的数据字节以及指明接收到的数据字节是否是块中的最后数据字节的标记组成的。当数据字节是接收到的数据段的最后数据字节并且END值设置为‘1’时,设置用于指明接收到的数据字节是否是块中的最后数据字节的标记以便指明‘LAST’。
第四,如果接收到的数据字节的<B,D>大于<B_SEQR,D_SEQR>,那么RLP控制器131为NAK列表137中的每个数据字节创建一个项目,从而请求重发<B_SEQR,D_SEQR>的数据字节到先前的<B,D>的数据字节。如上所述,每个项目是由丢失数据字节的块序列号、丢失数据字节的数据序列号、指明是否接收丢失数据的标记、重发定时器以及故障定时器组成的。此外,RLP控制器131将接收到的数据字节存储在重排缓冲器138中,并采用等式1增加<B_SEQR,D_SEQR>以指明下一个数据字节。如果数据字节是接收到的数据段的最后数据字节并且END值设置为‘1’,那么RLP控制器131将L_V(R)寄存器136的高12位设置为B_SEQR值的下一个块序列号,将低9位设置为‘0’。否则RLP控制器131分别将L_V(R)寄存器136的高12位和低9为设置为B_SEQR值和D_SEQR值。
同时,在以图8F的格式接收到空闲帧时,RLP控制器131将块序列号B_SEQ设置为12-比特SEQ字段值并将数据序列号D_SEQR设置为‘0’。如果接收到的空闲帧的<B_SEQ,D_SEQ>大于<B_SEQR,D_SEQR>,那么RLP控制器131为NAK列表137中的每个数据字节创建一个项目,从而请求重发先前的<B_SEQR,D_SEQR>的数据字节到先前的<B_SEQ,D_SEQ>的数据字节。如上所述,每个项目是由丢失数据字节的块序列号、丢失数据字节的数据序列号、指明是否接收丢失数据的标记、重发定时器以及故障定时器组成的。此外,RLP控制器131将L_V(R)寄存器136的高12位设置为B_SEQR值的下一个块序列号,将低9位设置为‘0’。如果接收到的空闲帧的<B_SEQ,D_SEQ>小于<B_SEQR,D_SEQR>,那么RLP控制器131执行重建过程。
如果多路复用/多路分解控制器140通知RLP控制器131接收了坏的数据块,则RLP控制器131将存储在E寄存器134中的值加1并将得到的结果值存储在E寄存器134。如果通过在将增加后的E寄存器134的值与B_SEQR相加的和上执行模28操作得到的值大于B_SEQN值,那么RLP控制器131执行重建过程。
如果存在正确接收的并且不是空数据块的任何数据块,或者如果多路复用/多路分解控制器140通知RLP控制器131没有接收到帧,那么RLP控制器131将E寄存器134设置为‘0’。
6.RLP控制器的SCH数据发送操作
发送方的多路复用/多路分解控制器140向RLP控制器131发送要通过辅助信道发送的数据块的请求,使得RLP控制器131生成帧。发送方的多路复用/多路分解控制器140还向RLP控制器131发送RLP控制器131应创建的数据块的大小信息T。
RLP控制器131按照下列的优先级次序创建要通过辅助信道发送的数据块。
1.重发数据帧
2.数据帧
RLP控制器131按如下所述创建要通过辅助信道发送的新数据帧。
当首次创建新数据帧时或当已经发送了先前定义的块中的数据字节时,RLP控制器131定义用于数据流的剩余数据的新块。其中,与基本信道中的一样,将定义新块的方法分为模式A和模式B。在模式A中,定义新块以使得数据段的数据大小与多路复用/多路分解控制器140所请求的数据块中可填充的数据大小相同。在模式B中,定义新块以使得无论多路复用/多路分解控制器140所请求的数据块的大小是多少,新块都有NDATA字节。在定义新块时,RLP控制器131可以选择模式A或模式B。
图9A到9B表示了可在模式A或模式B中通过辅助信道发送的帧格式。在模式B中创建的新数据帧可以具有图9A的格式。在模式A创建的新数据帧可以具有图9B的格式。在创建填充有新数据帧的辅助信道RLP帧时,RLR控制器131使用21-比特序列号寄存器L_V(S)132。RLP控制器131将序列号寄存器L_V(S)132中21-比特值中的高12位定为块序列号B_SEQ,并将低9位定为数据序列号D_SEQ。
参照图9A,可通过辅助信道发送的数据帧是由1-比特的TYPE字段、1-比特REXMIT(重发标记)字段、8-比特SEQ(序列号)字段以及DATA字段组成的。
参照图9B,可通过辅助信道发送的数据帧是由1-比特的TYPE字段、1-比特REXMIT字段、9-比特SEG(数据序列号)字段、1-比特END(块结束标记)字段、6-比特RSVD(保留)字段、8-比特SEQ(序列号)字段以及DATA字段组成的。
如果确定的D_SEQ值不是0,那么RLP控制器131确定块中具有还没有发送的数据部分。也就是说,RLP控制器131确定应发送对应于块序列号B_SEQ的块中的具有D_SEQ到(NDATA-1)的数据序列号的数据字节。因此,RLP控制器131采用图9B的格式以发送数据段。
在采用图9B的格式发送新数据时,RLP控制器131首先采用数据部分的块序列号B_SEQ的低8位来设置SEQ字段。此外,RLP控制器131将SEG字段设置为D_SEQ值。
在采用图9B的格式发送新数据时,RLP控制器131将TYPE字段设置为‘1’,将REXMIT字段设置为‘0’,然后采用重发数据来填充DATA字段。
在采用图9B的格式发送新数据时,如果满足下列条件,RLP控制器131将块结束标记END字段设置为‘1’,否则,将END字段设置为‘0’。
首先,在发送以后,数据流中没有余留还未发送的数据。
第二,将发送的数据字节的数量N与D_SEQ值相加得到的值不等于NDATA或几倍的NDATA
在发送了新数据帧后,RLP控制器131更新L_V(S)寄存器132。如果发送的新数据的大小是N,那么RLP控制器131按如下所述将L_V(S)寄存器132的值加上N值。
首先,在以上过程中,当块结束标记END字段设置为‘0’时,如果发送的新数据的大小是N,那么RLP控制器131将L_V(S)寄存器132加上N值。
其次,在以上过程中,当块结束标记END字段设置为‘1’时,RLP控制器131将L_V(S)寄存器132的高12位的值加上1,并将L_V(S)寄存器132的低9位的值设置为‘0’。
如果D_SEQ值为0,那么RLP控制器131定义新块。如上所述,该操作在模式A和模式B中的执行过程是不同的。如果RLP控制器131按照模式B对新块进行定义,那么RLP控制器131将按如下所述进行操作。
在模式B中,RLP控制器131确定新块的大小为可采用图9A的格式发送的数据字节的数量与还没有发送的数据流中数据字节的数量中的最小值M。
在采用图9A的格式发送新数据时,RLP控制器131首先采用数据部分的块序列号B_SEQ的低8位来设置SEQ字段。由于采用图9A的格式发送的数据总是从数据序列号0开始并且具有小于NDATA的大小,所以总是将块结束标记设置为‘1’。因此,尽管图9A的格式不包括数据序列号和块结束标记,但是接收方的RLP控制器在接收到图9A的格式时,将数据序列号视作‘0’,将块结束标记视作‘1’。
在采用图9A的格式发送新数据时,RLP控制器131将TYPE字段设置为‘0’,将重发标记REXMIT字段设置为‘0’,然后采用发送数据来填充DATA字段。
在发送了新数据后,RLP控制器131按如下所述更新L_V(S)寄存器132。RLP控制器131将L_V(S)寄存器132的值加上NDATA值。
如果RLP控制器131按照模式B对新块进行定义,那么RLP控制器131将按如下所述进行操作。在模式B中,RLP控制器131确定新块的大小为NDATA字节与还没有发送的数据流中数据字节的数量中的最小值M。在确定了新块的大小后,RLP控制器131定义新块具有大小与还没有发送的数据流中数据字节的块大小相同的数据。在定义了新块后,RLP控制器131如上所述地执行用于发送块的剩余部分的过程。
RLP控制器131将新定义的块存储在前向重排序缓冲器133中,为接收方的重发请求做准备。
在发送重发数据帧时,RLP控制器131可以采用图9A或9B的格式。在满足下列条件时,RLP控制器131采用图9A的格式。
首先,对整个块发出重发请求。
其次,重发块的大小等于或小于能够采用图9A的格式发送的数据字节的数量B,即通过从多路复用/多路分解控制器140请求的数据块的大小T中减去RLP首标的10比特而得到的值。
在采用图9A的格式重发块时,RLP控制器131首先采用数据部分的块序列号B_SEQ的低8位来设置SEQ字段。在采用图9A的格式重发块时,RLP控制器131将TYPE字段设置为‘0’,将REXMIT字段设置为‘1’,并采用重发数据来填充DATA字段。当不满足上述条件时,RLP控制器131采用图9B的格式。
在采用图9B的格式重发块中的数据段时,RLP控制器131首先采用数据部分的块序列号B_SEQ的低8位来设置SEQ字段。此外,RLP控制器131采D_SEQ值设置SEG字段。
在采用图9B的格式重发数据时,RLP控制器131将TYPE字段设置为‘1’,将REXMIT字段设置为‘1’,并采用重发数据来填充DATA字段。
在采用图9B的格式重发数据时,如果满足下列条件,RLP控制器131将END字段设置为‘1’,否则将END字段设置为‘0’。
首先,在发送后,块中的数据段中没有其他还未重发的数据。
其次,通过将发送的数据字节的数量N与D_SEQ相加得到的值不等于NDATA或多个NDATA
当没有要发送的新数据、重发数据或控制帧时,RLP控制器131向多路复用/多路分解控制器140发送空数据块。
7.RLP控制器的SCH数据接收操作
多路复用/多路分解控制器140向RLP控制器131提供数据块和有关接收到的数据块的大小T的信息。
当以图9A和9B的格式接收到新数据帧时,RLP控制器131采用21-比特序列号寄存器L_V(R)136。RLP控制器131将序列号寄存器L_V(R)136的21-比特值的高12位定为等待发送的块序列号B_SEQR,将低9位定为等待发送的数据序列号D_SEQR。首先,RLP控制器131按照等式2采用接收到的帧的8-比特SEQ字段和序列号寄存器L_V(R)136来计算块序列号B_SEQ。
在以图9A的格式接收到新数据帧时,RLP控制器131将接收到的数据段中第一数据字节的数据序列号D_SEQ定为‘0’。在以图9A的格式接收到新数据帧时,RLP控制器131将块结束标记END字段设置为‘1’。
在以图9B的格式接收到新数据帧时,RLP控制器131将接收到的数据段中第一数据字节的数据序列号D_SEQ定为接收到的帧的9-比特SEG字段值。在以图9B的格式接收到新数据帧时,RLP控制器131将END字段值定为接收到的帧的1-比特END字段值。
在以图9A或9B的格式接收到重发数据帧时,RLP控制器131应同在基本信道中一样具有NAK列表137。RLP控制器131检测其中12-比特块序列号值的低8位与填充在接收到的重发帧中8-比特SEQ字段中的值相一致的NAK项目。如果存在检测到的NAK项目,那么RLP控制器131将存储在NAK项目中的块序列号B_SEQ定为接收到的数据段的块序列号。否则,如果没有检测到的NAK项目,RLP控制器131则丢弃接收到的帧。
在以图9A的格式接收到重发数据帧时,RLP控制器131将接收到的数据段中第一数据字节的数据序列号D_SEQ定为‘0’。在以图9A的格式接收到重发数据帧时,RLP控制器131将END字段值定为‘1’。
在以图9B的格式接收到重发数据帧时,RLP控制器131将接收到的数据段中第一数据字节的数据序列号D_SEQ定为接收到的帧的9-比特SEG字段值。在以图9B的格式接收到重发数据帧时,RLP控制器131将END字段值定为接收到的帧的1-比特END字段值。
在接收到图9A或9B所示的格式时,RLP控制器131将接收到的数据段中第一数据字节的数据序列号设置为上述过程中确定的D_SEQ字段值。在确定了接收到的数据段中第一数据字节的块序列号B_SEQ和数据序列号D_SEQ以后,RLP控制器131采用等式1计算剩余数据字节的序列号。
在处理接收到的数据段中的数据字节时,RLP控制器131采用L_V(N)寄存器135,L_V(N)寄存器135是21-比特序列号寄存器。RLP控制器131将序列号寄存器L_V(N)135的21-比特值的高12位定为等待发送的块序列号B_SEQN,将低9位定为等待发送的数据序列号D_SEQN。基于表17,RLP控制器131确定接收到的数据段中各个数据字节的块序列号和数据序列号。
如下所述,RLP控制器131采用表17将接收到的数据段中每个数据字节的一对块序列号和数据序列号<B,D>对与<B_SEQR,D_SEQR>和<B_SEQN,D_SEQN>进行比较。
首先,如果<B,D>等于或大于<B_SEQN,D_SEQN>并且小于<B_SEQR,D_SEQR>,那么RLP控制器131将其视作重发的数据。
第二,如果<B,D>等于或大于<B_SEQR,D_SEQR>并且B值小于通过在B_SEQR与E寄存器134相加的和上执行模28的操作而得到的值,那么RLP控制器131将其视作新数据。
第三,如果<B,D>等于或大于通过在<B_SEQR,D_SEQR>与E寄存器134相加的和上执行模28的操作而得到的值,那么RLP控制器131将其视作复制数据。
RLP控制器131将丢弃认为是复制数据的数据字节,因为复制数据是先前已接收到的数据。
如果认为接收到的数据字节是新数据字节或是重发数据字节,那么RLP控制器131执行下列操作。
首先,如果接收到的数据字节的<B,D>大于或等于<B_SEQN,D_SEQN>并小于<B_SEQR,D_SEQR>,那么RLP控制器131创建重排序缓冲器项目并将接收到的数据字节存储在重排缓冲器138中,其中,重排序缓冲器项目是由接收到的数据字节的块序列号、接收到的数据字节的数据序列号以及指明接收到的数据字节是否是块中的最后数据字节的标记组成的。当数据字节是接收到的数据段的最后数据字节并且END值设置为‘1’时,设置用于指明接收到的数据字节是否是块中的最后数据字节的标记以指示‘LAST’。此处,如果<B,D>等于<B_SEQN,D_SEQN>,那么RLP控制器131将存储在重排缓冲器138中的重排序缓冲器项目中、从具有<B_SEQN,D_SEQN>序列号的重排序缓冲器项目到具有可连续发送的序列号的重排序缓冲器项目的存储的数据字节,向接收数据缓冲器顺序地发送。如果将用于指明接收到的最后发送的数据字节所属的重排序缓冲器项目的数据字节是否是块的最后数据字节的标记设置为指明最后字节的值,那么RLP控制器131将L_V(N)寄存器135的高12位设置为存储在重排序缓冲器项目中的块序列号的下一个块序列号,并将低9位设置为‘0’。否则,如果没有设置标记以指明最后字节,那么RLP控制器131采用表1设置<B_SEQN,D_SEQN>以指明最后发送的数据字节的下一个数据字节,然后分别将L_V(N)寄存器135的高12位和低9位设置为B_SEQN值和D_SEQN值。RLP控制器131记录下在具有同那些接收到的数据字节一样的块序列号和数据序列号的NAK项目处接收到等待的数据帧的情况。
第二,如果接收到的数据字节的<B,D>等于<B_SEQR,D_SEQR>并且<B_SEQR,D_SEQR>等于<B_SEQN,D_SEQN>,那么RLP控制器131采用等式1增加<B_SEQR,D_SEQR>和<B_SEQN,D_SEQN>以指明下一个字节。此处,如果数据字节是接收到的数据段的最后数据字节并且END值设置为‘1’,那么RLP控制器131将L_V(N)寄存器135的高12位设置为B_SEQN值的下一个块序列号,将低9位设置为‘0’,并且类似地,将L_V(R)寄存器136的高12位设置为B_SEQR值的下一个块序列号,将低9位设置为‘0’。否则RLP控制器131分别将L_V(N)寄存器135的高12位和低9位设置为B_SEQN值和D_SEQN值,分别将L_V(R)寄存器136的高12位和低9为设置为B_SEQR值和D_SEQR值。RLP控制器131将接收到的数据字节提供给接收数据缓冲器。
第三,如果接收到的数据字节的<B,D>等于<B_SEQR,D_SEQR>并且<B_SEQR,D_SEQR>不等于<B_SEQN,D_SEQN>,那么RLP控制器131采用等式1增加<B_SEQR,D_SEQR>以指明下一个字节。此处,如果数据字节是接收到的数据段的最后数据字节并且END值设置为‘1’,那么RLP控制器131将L_V(R)寄存器136的高12位设置为B_SEQR值的下一个块序列号,将低9位设置为‘0’。否则RLP控制器131分别将L_V(R)寄存器136的高12位和低9为设置为B_SEQR值和D_SEQR值。在这种情况下,RLP控制器131将接收到的数据字节创建为重排序缓冲器项目并将接收到的数据字节存储在重排缓冲器138中,其中重排序缓冲器项目是由接收到的数据字节的块序列号、接收到的数据字节的数据序列号、接收到的数据字节以及指明接收到的数据字节是否是块中的最后数据字节的标记组成的。当数据字节是接收到的数据段的最后数据字节并且END值设置为‘1’时,设置用于指明接收到的数据字节是否是块中的最后数据字节的标记以指示‘LAST’。
第四,如果接收到的数据字节的<B,D>大于<B_SEQR,D_SEQR>,那么RLP控制器131为NAK列表137中的每个数据字节创建一个项目,从而请求重发<B_SEQR,D_SEQR>的数据字节到先前的<B,D>的数据字节。如上所述,每个项目是由丢失数据字节的块序列号、丢失数据字节的数据序列号、指明是否接收丢失数据的标记、重发定时器以及故障定时器组成的。此外,RLP控制器131将接收到的数据字节存储在重排缓冲器138中,并采用等式1增加<B_SEQR,D_SEQR>以指明下一个数据字节。如果数据字节是接收到的数据段的最后数据字节并且END值设置为‘1’,那么RLP控制器131将L_V(R)寄存器136的高12位设置为B_SEQR值的下一个块序列号,将低9位设置为‘0’。否则RLP控制器131分别将L_V(R)寄存器136的高12位和低9为设置为B_SEQR值和D_SEQR值。
如果多路复用/多路分解控制器通知RLP控制器131接收了坏的数据块,RLP控制器131则将存储在E寄存器134中的值加1并将得到的结果值存储在E寄存器134中。如果通过在增加后的E寄存器134的值与B_SEQR值相加的和上执行模28操作而得到的值大于B_SEQN值,那么RLP控制器131执行重建过程。
如果存在正确接收的并且不是空数据块的数据块,或者如果多路复用/多路分解控制器指出没有接收到帧,那么RLP控制器131将E寄存器134设置为‘0’。
8.数据发送之后RLP控制器的操作
在处理了所有接收到的帧后,RLP控制器131执行下列操作。当接收到的数据块包括新数据帧或者没有从接收方的RLP控制器接收帧时,RLP控制器131按照旧项目的次序对NAK列表137中的NAK项目执行下列过程。
首先,如果故障定时器没有溢出并且已经将包含于NAK项目中的序列号发送了三次,那么RLP控制器131将故障定时器的值减1。如果故障定时器的值变为‘0’,那么RLP控制器131执行下列操作。如果RLP控制器131已经接收了对应于NAK项目已具有的序列号的重发数据字节,那么RLP控制器131删除NAK项目。否则,如果RLP控制器131还没有接收到对应于NAK项目已具有的序列号的重发数据字节,那么考虑到没有接收到对应于NAK项目的序列号的数据字节,RLP控制器131顺序地发送接收到的数据字节,接收到的数据字节大于存储在重排缓冲器138中的NAK列表的块序列号和数据序列号,并且接收到的数据字节可以被连续地发送给上层链路协议。然后,RLP控制器131删除NAK项目。RLP控制器131将L_V(N)寄存器135设置为下一个将接收的数据字节的序列号。
其次,如果故障定时器没有计满并且NAK项目具有的序列号包含在已发送了两次的NAK中,那么RLP控制器131将故障定时器的值减1。如果故障定时器的值变为‘0’,那么RLP控制器131执行下列操作。如果RLP控制器131已经接收了对应于NAK项目已具有的序列号的重发数据字节,那么RLP控制器131删除NAK项目并将L_V(N)寄存器135设置为下一个将接收的数据帧的序列号。否则,如果RLP控制器131未能接收到数据字节,那么RLP控制器131将NAK项目的故障定时器设置为适当的值。RLP控制器131包括接下来要发送的三个NAK帧中NAK项目的块序列号和数据序列号。
对于应新添加的NAK项目,RLP控制器131将重发定时器设置为适当的值,并包括接下来要发送的两个NAK帧中NAK项目的序列号。
如上所述,新的移动通信系统采用用于指明包含于RLP帧中的服务的连续块的块序列号和用于指明连续块的子连续块的数据序列号,对RLP帧进行发送和接收。对于多个服务,通过采用双向寻址来使用块序列号和数据序列号,可以有效地发送或重发数量增加的数据字节。
尽管本发明是参照其特定的优选实施例来描述的,但本领域的技术人员应该理解,在不脱离由所附权利要求限定的本发明特定精神和范围的情况下,可以对其进行形式和细节的各种修改。

Claims (9)

1.一种在移动通信系统中用于发送数据的方法,所述方法包括下列步骤
将数据流分段为至少一个具有可变数据长度的连续帧,数据流被分段为多个具有可变数据长度的连续块,每个所述连续块被分段为多个具有字节长度的子连续块;
在每个连续帧的头部附加首标,所述首标包括用于指明对应于头部的连续块的序列号的第一组比特以及用于指明对应于头部的子连续块的序列号的第二组比特;以及
发送附加了首标的连续帧。
2.如权利要求1所述的方法,其中,包含于每个连续帧中的每个连续块的大小小于预定大小,并且所述首标包括用于指明是否包括连续块的最后子连续块的标记。
3.如权利要求1所述的方法,其中,将包含于每个连续帧中的每个连续块的大小确定为所要求的大小。
4.如权利要求1所述的方法,其中,包含于每个连续帧中的每个连续块的大小彼此相等。
5.一种在移动通信系统中用于发送数据的装置,所述装置包括:
数据缓冲器,用于存储将要发送的数据流,数据流被分段为多个连续块,每个所述的块被分段为多个具有字节长度的子连续块;
寄存器,用于存储连续块的块序列号和子连续块的数据序列号;
控制器,用于附加对应于无线电链路协议(RLP)帧的头部的首标,并发送附加了首标的RLP帧,所述RLP帧包括指明对应于头部的连续块的序列号的块序列号以及指明对应于头部的子连续块的序列号的数据序列号。
6.如权利要求5所述的装置,其中,包含于相应的RLP帧中的每个连续块的大小小于预定大小,并且所述首标包括用于指明是否包括连续块的最后子连续块的标记。
7.如权利要求6所述的装置,还包括前向重排序缓冲器,用于存储已发送的RLP帧的以重发已发送的RLP帧。
8.如权利要求5所述的装置,其中,将包含于每个连续帧中的每个连续块的大小确定为所要求的大小。
9.如权利要求5所述的装置,其中,包含于每个连续帧中的每个连续块的大小彼此相等。
CNB008015414A 1999-05-27 2000-05-27 移动通信系统中按照无线电链路协议发送可变长度数据的装置和方法 Expired - Fee Related CN1144441C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1019990020081A KR20000075358A (ko) 1999-05-27 1999-05-27 이동통신시스템에서 라디오링크프로토콜에 따른 가변길이의 데이터 송수신 장치 및 방법
KR1999/20081 1999-05-27

Publications (2)

Publication Number Publication Date
CN1319300A true CN1319300A (zh) 2001-10-24
CN1144441C CN1144441C (zh) 2004-03-31

Family

ID=19589240

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB008015414A Expired - Fee Related CN1144441C (zh) 1999-05-27 2000-05-27 移动通信系统中按照无线电链路协议发送可变长度数据的装置和方法

Country Status (10)

Country Link
US (1) US6961326B1 (zh)
EP (2) EP2824887B1 (zh)
JP (1) JP3426224B2 (zh)
KR (2) KR20000075358A (zh)
CN (1) CN1144441C (zh)
AU (1) AU752469B2 (zh)
BR (1) BR0006154A (zh)
CA (1) CA2338063C (zh)
RU (1) RU2204215C2 (zh)
WO (1) WO2000074344A1 (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100507892C (zh) * 2004-09-02 2009-07-01 北京中星微电子有限公司 一种适应于串行外围设备接口总线通信方法
CN1806401B (zh) * 2003-07-14 2010-10-20 三星电子株式会社 在无线分组数据通信系统中生成分组数据以支持多个服务的方法和设备
CN103746945A (zh) * 2013-12-30 2014-04-23 上海华为技术有限公司 一种数据传输装置及方法

Families Citing this family (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001230795A (ja) 2000-02-16 2001-08-24 Sony Corp 無線伝送方法および無線伝送装置
US7120172B1 (en) 2000-09-15 2006-10-10 Lucent Technologies Inc. Radio link protocol framing system for high speed data transfer over digital cellular mobile telecommunication networks
KR100857777B1 (ko) * 2001-03-26 2008-09-09 엘지전자 주식회사 하이브리드 자동 재송 요구 방식을 이용한 가변 길이의 패킷 송수신 방법
US7542482B2 (en) 2001-08-16 2009-06-02 Qualcomm Incorporated Method and apparatus for message segmentation in a wireless communication system
US6839566B2 (en) 2001-08-16 2005-01-04 Qualcomm, Incorporated Method and apparatus for time-based reception of transmissions in a wireless communication system
FI112141B (fi) * 2001-08-23 2003-10-31 Nokia Corp Ei-transparentti datasiirto matkaviestinverkossa
US7355971B2 (en) * 2001-10-22 2008-04-08 Intel Corporation Determining packet size in networking
US7224703B2 (en) * 2001-12-12 2007-05-29 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for segmenting a data packet
US7142565B2 (en) * 2002-02-21 2006-11-28 Qualcomm, Incorporated Method and apparatus for radio link control of signaling messages and short messages data services in a communication system
US8171300B2 (en) 2002-04-30 2012-05-01 Qualcomm Incorporated Security method and apparatus
ATE278279T1 (de) * 2002-06-20 2004-10-15 Siemens Ag Verfahren zur datenübertragung
CA2393373A1 (en) 2002-07-15 2004-01-15 Anthony Gerkis Apparatus, system and method for the transmission of data with different qos attributes.
KR100953630B1 (ko) * 2002-12-13 2010-04-20 엘지전자 주식회사 전송 데이터율 전달용 물리 채널의 운용 방법
US8009697B2 (en) * 2003-07-07 2011-08-30 Broadcom Corporation Method and apparatus for segmentation of messages in a communications system
US7817663B2 (en) 2003-07-14 2010-10-19 Samsung Electronics Co., Ltd. Method and apparatus for generating packet data to support multiple services in a wireless packet data communication system
JP2006050519A (ja) * 2003-10-24 2006-02-16 Sony Corp 無線通信システム、無線通信装置及び無線通信方法、並びにコンピュータ・プログラム
KR100574960B1 (ko) 2003-11-25 2006-05-02 삼성전자주식회사 패이로드 안에서의 프레임 분할방법
KR100614962B1 (ko) * 2004-02-11 2006-08-25 엘지전자 주식회사 이동통신 단말기
US7616663B1 (en) * 2004-03-04 2009-11-10 Verizon Corporate Services Group, Inc. Method and apparatus for information dissemination
JP4499489B2 (ja) * 2004-06-18 2010-07-07 株式会社エヌ・ティ・ティ・ドコモ 送信装置、受信装置、通信システム及び通信方法
US7590150B1 (en) * 2004-09-30 2009-09-15 Ceterus Networks, Inc. Method and apparatus for transport of multiple TDM and data clients over multiple variable data rate streams
CN1761255B (zh) 2004-10-13 2010-04-28 华为技术有限公司 数字集群系统中传输数据的方法
KR100810290B1 (ko) 2004-12-14 2008-03-07 삼성전자주식회사 무선 통신 시스템에서 데이터 버스트 할당 방법 및 시스템
US20060133422A1 (en) * 2004-12-22 2006-06-22 Maughan Robert R Maintaining message boundaries for communication protocols
WO2006106377A1 (en) * 2005-04-07 2006-10-12 Nokia Corporation Blind transport format detection based on decoder metric
JP4908497B2 (ja) 2005-05-04 2012-04-04 テレフオンアクチーボラゲット エル エム エリクソン(パブル) 移動システムにおける複数経路通信方法および配置構成(arrangement)
KR100913900B1 (ko) 2005-05-04 2009-08-26 삼성전자주식회사 이동통신 시스템에서 미리 정의된 길이 지시자를 이용해서 패킷 데이터를 송수신하는 방법 및 장치
US7944992B2 (en) * 2005-06-17 2011-05-17 Telefonaktiebolaget Lm Ericsson (Publ) Multicarrier CDMA system
US7965736B2 (en) 2005-08-24 2011-06-21 Qualcomm Incorporated Transmission of multiplex protocol data units in physical layer packets
DE602006019463D1 (de) * 2005-11-01 2011-02-17 Research In Motion Ltd Verfahren zum erhalten und verwalten eines abwärtsstrecken-funkstreckensteuerdatenblocks in einer egprs-mobilelektronik-kommunikationseinrichtung
US20070169152A1 (en) * 2005-12-30 2007-07-19 Daniel Roodnick Data and wireless frame alignment for error reduction
FR2901436B1 (fr) * 2006-05-19 2008-07-04 Airbus France Sas Dispositif de reception de messages, en particulier dans le cadre d'echanges securises de donnees, aeronef et procede associes
US7885263B2 (en) * 2006-08-16 2011-02-08 Lg Electronics Inc. Multi-link RLP enhancements
KR101261900B1 (ko) 2006-09-26 2013-05-08 에스케이텔레콤 주식회사 다중-rlp에서의 연속 rlp 일련번호 설정 방법 및장치
JP5663168B2 (ja) * 2006-12-15 2015-02-04 テレフオンアクチーボラゲット エル エム エリクソン(パブル) シングルビットのセグメンテーションのインジケータ
US20080159190A1 (en) * 2006-12-28 2008-07-03 Mediatek Inc. Wireless Transmission Method, Apparatus, And System
US20100103914A1 (en) * 2006-12-28 2010-04-29 Mediatek Inc. Wireless Transmission Method, Apparatus, And System
KR101435832B1 (ko) 2007-03-19 2014-08-29 엘지전자 주식회사 이동통신 시스템에서의 무선 프로토콜 처리방법 및이동통신 송신기
WO2008115025A1 (en) 2007-03-22 2008-09-25 Lg Electronics Inc. Method of transmitting data block in wireless communication system
US8355336B2 (en) 2008-02-13 2013-01-15 Qualcomm Incorporated Methods and apparatus for formatting headers in a communication frame
KR100883605B1 (ko) * 2008-02-22 2009-02-13 엘지전자 주식회사 하이브리드 자동 재송 요구 방식을 이용한 가변 길이의패킷 송수신 방법
CN101257441B (zh) * 2008-02-29 2011-12-21 华为技术有限公司 转发报文的方法、设备、系统和接收报文的设备
JP5071178B2 (ja) * 2008-03-14 2012-11-14 富士通株式会社 パケット伝送装置
BR112012005215A2 (pt) 2009-09-09 2023-02-14 Fraunhofer Ges Forschung Conceito de transmissão para um fluxo unitário de acesso
US9577788B2 (en) 2011-06-15 2017-02-21 Denso Corporation Coding apparatus, coding method, data communication apparatus, and data communication method
JP5445526B2 (ja) * 2011-07-12 2014-03-19 株式会社デンソー データ通信方法及びデータ通信装置
RU2491719C1 (ru) * 2012-02-06 2013-08-27 Общество с ограниченной ответственностью "Интеллектуальные технологии мониторинга" (ООО "Интеллектуальные технологии мониторинга") Способ и устройство передачи и приема информации по электросетям
CN104009937B (zh) * 2013-02-22 2018-03-02 中兴通讯股份有限公司 一种增强型传输选择标准配置信息传输方法及装置
US9398490B2 (en) * 2013-03-15 2016-07-19 Trane International Inc. Method of fragmenting a message in a network
AU2013407433B2 (en) * 2013-12-11 2017-07-20 Sca Hygiene Products Ab Scheme for addressing protocol frames to target devices
KR20160114676A (ko) 2014-01-29 2016-10-05 후아웨이 테크놀러지 컴퍼니 리미티드 무선 네트워크에서의 데이터 처리 장치, 및 무선 네트워크 시스템
WO2015152414A1 (ja) * 2014-04-04 2015-10-08 エヌ・ティ・ティ・コミュニケーションズ株式会社 通信システム、送信装置、受信装置、通信装置、通信方法、及びプログラム
GB2548859B (en) * 2016-03-30 2019-12-04 Xaar Technology Ltd A droplet deposition apparatus
CN115211127A (zh) * 2020-03-13 2022-10-18 华为技术有限公司 传输流ts的处理方法、装置和系统

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1220830A (en) * 1984-12-28 1987-04-21 David S. Drynan Transmitting sequence numbers of information in a packet data transmission system
US6088342A (en) * 1997-05-05 2000-07-11 Nokia Mobile Phones Limited Dynamic configuration of radio link protocol in a telecommunications system
JP3172387B2 (ja) * 1994-06-01 2001-06-04 インターナショナル・ビジネス・マシーンズ・コーポレ−ション 入出力通信サブシステム及び方法
US5546549A (en) * 1994-06-01 1996-08-13 International Business Machines Corporation Multi-path channel (MPC) interface with user transparent, unbalanced, dynamically alterable computer input/output channels
FI98027C (fi) * 1995-01-10 1997-03-25 Nokia Telecommunications Oy Pakettiradiojärjestelmä ja päätelaitteisto pakettiradiojärjestelmää varten
WO1999004338A1 (en) * 1997-07-15 1999-01-28 Comsat Corporation Method and apparatus for adaptive control of forward error correction codes
US6353907B1 (en) * 1997-10-29 2002-03-05 At&T Corp. Incremental redundancy radio link protocol
US6226301B1 (en) * 1998-02-19 2001-05-01 Nokia Mobile Phones Ltd Method and apparatus for segmentation and assembly of data frames for retransmission in a telecommunications system
US6542490B1 (en) * 1999-01-29 2003-04-01 Nortel Networks Limited Data link control proctocol for 3G wireless system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1806401B (zh) * 2003-07-14 2010-10-20 三星电子株式会社 在无线分组数据通信系统中生成分组数据以支持多个服务的方法和设备
CN100507892C (zh) * 2004-09-02 2009-07-01 北京中星微电子有限公司 一种适应于串行外围设备接口总线通信方法
CN103746945A (zh) * 2013-12-30 2014-04-23 上海华为技术有限公司 一种数据传输装置及方法
CN103746945B (zh) * 2013-12-30 2017-06-27 上海华为技术有限公司 一种数据传输装置及方法

Also Published As

Publication number Publication date
US6961326B1 (en) 2005-11-01
EP2824887B1 (en) 2019-03-06
CA2338063A1 (en) 2000-12-07
RU2204215C2 (ru) 2003-05-10
JP3426224B2 (ja) 2003-07-14
EP1101337A1 (en) 2001-05-23
BR0006154A (pt) 2001-04-17
KR20010085311A (ko) 2001-09-07
KR20000075358A (ko) 2000-12-15
EP1101337B1 (en) 2014-07-23
CA2338063C (en) 2005-06-14
WO2000074344A1 (en) 2000-12-07
AU752469B2 (en) 2002-09-19
KR100383611B1 (ko) 2003-05-16
CN1144441C (zh) 2004-03-31
AU5110100A (en) 2000-12-18
JP2003501890A (ja) 2003-01-14
EP1101337A4 (en) 2006-08-02
EP2824887A1 (en) 2015-01-14

Similar Documents

Publication Publication Date Title
CN1144441C (zh) 移动通信系统中按照无线电链路协议发送可变长度数据的装置和方法
CN1152486C (zh) 移动通信系统中根据无线链路协议交换可变长度数据的装置和方法
CN1969528A (zh) 用于点对多点传输系统的点对点修复响应机制
CN1185844C (zh) 压缩数据分组中头域的技术
CN1131624C (zh) 短信元复用atm传送系统及传送方法
CN1287543C (zh) 发送设备和发送控制方法、以及接收设备和接收控制方法
CN1265674C (zh) 用于在数据通信系统内选择服务扇区的方法和装置
CN1228952C (zh) 发射机和发射控制方法
CN1227848C (zh) 用于产生和发送最佳蜂窝标识符码的方法
CN1296686A (zh) 发送接收装置
CN1791249A (zh) 无线基站和移动台
CN1767535A (zh) 数据安全层协议单元以及相关装置和方法
CN1241380C (zh) 传输装置和传输控制方法、接收装置和接收控制方法
CN1934825A (zh) 通过通信协议传送广播/多播会话的参数
CN1437421A (zh) 在移动通信系统中重排业务流模板的装置和方法
CN1383337A (zh) 数据链路传输控制方法、移动通信系统、数据链路传输控制装置、基站、移动台、移动台控制程序以及可机读的记录媒体
CN2631163Y (zh) 一种时分双工/码分多址(tdd/cd ma)通信系统
CN1374811A (zh) 在移动无线系统内管理处理资源的方法
CN1894921A (zh) 发送台、接收台、通信方法、通信程序和记录了通信程序的计算机可读记录介质
CN1430363A (zh) 控制下行链路数据信道的传输功率的设备和方法
CN1669350A (zh) 数据包传输/发送方法及移动通信系统
CN1248519C (zh) 通信系统、多播交换设备及通信方法
CN1348664A (zh) 网关中的电信业务标识
CN1841989A (zh) 实现有线网络内的高吞吐量带宽分配的方法和系统
CN1890624A (zh) 电子装置及其控制方法、主机装置及其控制方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20040331