KR20030008553A - 고속 순방향 패킷 접속 방식 시스템의 데이터 재전송장치및 방법 - Google Patents

고속 순방향 패킷 접속 방식 시스템의 데이터 재전송장치및 방법 Download PDF

Info

Publication number
KR20030008553A
KR20030008553A KR1020010043247A KR20010043247A KR20030008553A KR 20030008553 A KR20030008553 A KR 20030008553A KR 1020010043247 A KR1020010043247 A KR 1020010043247A KR 20010043247 A KR20010043247 A KR 20010043247A KR 20030008553 A KR20030008553 A KR 20030008553A
Authority
KR
South Korea
Prior art keywords
data
error
retransmission
reorder buffer
channel
Prior art date
Application number
KR1020010043247A
Other languages
English (en)
Inventor
김성훈
이현우
이국희
최성호
장진원
Original Assignee
삼성전자 주식회사
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 삼성전자 주식회사 filed Critical 삼성전자 주식회사
Priority to KR1020010043247A priority Critical patent/KR20030008553A/ko
Publication of KR20030008553A publication Critical patent/KR20030008553A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1812Hybrid protocols; Hybrid automatic repeat request [HARQ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1835Buffer management
    • H04L1/1841Resequencing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명은 고속 순방향 패킷 접속(High Speed Downlink Packet Access)방식을 적용하는 통신시스템의 패킷 데이터 전송 장치 및 방법에 관한 것으로, 특히 오류 발생한 패킷 데이터의 재전송이 성공적으로 수행될때까지 상기 오류 발생한 패킷 데이터에 일련되어 수신된 정상 패킷 데이터들을 대기시켜 놓은 다음, 상기 재전송이 성공적으로 수행되면 상기 재전송 성공한 패킷 데이터외 상기 대기시켜놓았던 정상 패킷 데이터들을 일련되게 상위 계층으로 전송하여 불필요한 중복전송이나 폐기를 방지한다.

Description

고속 순방향 패킷 접속 방식 시스템의 데이터 재전송장치 및 방법{APPARATUS FOR RETRANSMITTING USER DATA AND METHOD THEREOF IN HIGH SPEED DATA PACKET ACCESS SYSTEM}
본 발명은 고속 순방향 패킷 접속(High Speed Downlink Packet Access)방식을 사용하는 부호분할다중접속 통신시스템의 패킷 데이터 전송 장치 및 방법에 관한 것으로, 특히 오류 발생한 패킷 데이터에 대한 재전송이 성공한 이후 일련되는 패킷 데이터들을 전송하는장치 및 방법에 관한 것이다.
일반적으로, 고속 순방향 패킷 접속(High Speed Downlink Packet Access: 이하 "HSDPA"라 칭한다.)방식은 UMTS(Universal Mobile Terrestrial System) 통신 시스템에서 순방향 고속 패킷 데이터 전송을 지원하기 위한 순방향 데이터 채널인 고속 순방향 공통 채널(High Speed - Downlink Shared Channel:HS-DSCH)과 이와 관련된 제어채널들을 포함한 데이터 전송방식을 총칭한다. 상기 HSDPA를 지원하기 위해서 적응적 변조방식 및 코딩 방식(Adaptive Modulation and Coding: 이하 "AMC"라 한다), 복합 재전송 방식(Hybrid Automatic Retransmission Request: 이하 "HARQ"라 함) 및 빠른 셀 선택(Fast Cell Select: 이하 "FCS"라 함)방식이 제안되었다. 이하 도 1을 참조하여 상기 UMTS 통신시스템의 구조를 설명하기로 한다.
상기 도 1은 통상적인 부호분할 다중 접속 통신 시스템의 구성을 개략적으로 도시한 도면이다.
먼저, UMTS 통신시스템은 코어 네트워크(Core Network, 이하 "CN"이라 칭하기로 한다)(100)와 복수개의 무선 네트워크 서브시스템(Radio Network Subsystem: 이하 "RNS"라 칭하기로 한다)(110), (120)들과 단말기(UE: User Element, 이하 UE라 칭하기로 한다)(130)로 구성된다. 상기 RNS(110) 및 RNS(120)는 무선 네트워크 제어기(Radio Network Controller:이하 "RNC"라 칭하기로 한다) 및 복수개의 기지국(Node B, 이하 "Node B"라 칭하기로 한다)들로 구성된다. 예를 들면, 상기 RNS(110)은 RNC(111)과 복수개의 Node B(113), (115)들로 구성된다. 상기 RNC는 그 역할에 따라 Serving RNC(이하 "SRNC"라 칭한다), Drift RNC(이하 "DRNC"라 칭한다) 또는 Controlling RNC(이하 "CRNC"라 칭한다)로 분류된다. 상기 SRNC와 DRNC는 각각의 UE에 따라 그 기능이 정의되며 UE의 정보를 관리하고 상기 CN과의 데이터 전송을 담당하는 RNC를 그 UE의 SRNC라 칭하며 상기 UE의 데이터가 상기 UE의 해당 SRNC가 아닌 다른 RNC를 거쳐 상기 해당 SRNC로 송수신되는 경우 상기 해당 SRNC가 아닌 RNC를 그 UE의 DRNC라 칭한다. 그리고, 상기 Node B들 각각을 제어하는 RNC를 각 Node B의 CRNC라 칭한다. 상기 도1에서는 UE(130)의 정보를 RNC(111)가 관리하고 있으면 상기 RNC(111)가 상기 UE(130)의 SRNC가 되고, 상기 UE(130)가 이동하여 UE(130)의 데이터가 RNC(121)를 통해 송수신되면 상기 RNC(121)가 DRNC가 된다. 그리고 Node B(113)을 제어하는 RNC(111)가 상기 Node B(113)의 CRNC가된다.
그러면 여기서 상기 도 1을 참조하여 상기 HSDPA를 지원하기 위한 방식들인 AMC 방식과, FCS 방식과, HARQ 방식에 대해서 설명하기로 한다.
첫 번째로, AMC 방식에 대해 설명하기로 한다.
상기 AMC 방식은 상기 도1의 특정 Node B(123)과 UE(130) 사이의 채널 상태에 따라 서로 다른 데이터 채널의 변조방식과 코딩방식을 결정하여, 상기 Node B(123) 전체의 사용효율을 향상시키는 데이터 전송 방식을 말한다. 따라서 상기 AMC 방식은 복수개의 변조방식들과 복수개의 코딩방식들을 가지며, 상기 변조방식들과 코딩방식들을 조합하여 데이터 채널 신호를 변조 및 코딩한다. 통상적으로 상기 변조방식들과 코딩방식들의 조합들 각각을 변조 및 코딩 스킴(Modulation and Coding Scheme: 이하 "MCS"라 함)라고 하며, 상기 MCS 수에 따라 레벨(level) 1에서 레벨(level) n까지 복수개의 MCS들을 정의할 수 있다. 즉, 상기 AMC 방식은 상기 MCS의 레벨(level)을 상기 UE(130)과 현재 무선 접속되어 있는 기지국(123) 사이의 채널 상태에 따라 적응적으로 결정하여 상기 Node B 전체 시스템 효율을 향상시키는 방식이다.
두 번째로, FCS 방식을 설명하기로 한다.
상기 FCS 방식은 상기 HSDPA 방식을 사용하고 있는 UE가 셀 중첩지역, 즉 소프트 핸드오버 영역에 위치할 경우 복수개의 셀들 중 채널 상태가 좋은 셀을 빠르게 선택하는 방법이다. 상기 FCS 방식은 구체적으로,(1) 상기 HSDPA를 사용하고 있는 UE(130)가 Node B(123)와 Node B(125)의 셀 중첩지역에 진입할 경우, 상기 UE(130)는 복수의 셀들, 즉 복수개의 Node B와의 무선 링크(이하 "Radio Link"라 칭한다.)를 설정한다. 이때 상기 UE(130)와 Radio Link를 설정한 셀들의 집합을 액티브 셋(active set)이라 칭한다. (2) 상기 액티브 셋에 포함된 셀들 중에서 가장 양호한 채널상태를 유지하고 있는 셀로부터만 HSDPA용 패킷 데이터를 수신하여 전체적인 간섭(interference)을 감소시킨다. 여기서, 상기 액티브 셋에서 채널상태가 가장 양호하여 HSDPA 패킷 데이터를 전송하는 셀을 베스트 셀(best cell)이라 하고, 상기 UE(130)는 상기 액티브 셋에 속하는 셀들의 채널 상태를 주기적으로 검사하여 현재베스트 셀보다 채널 상태가 더 좋은 셀이 발생할 경우 상기 현재의 베스트 셀을 새로 발생한 채널 상태가 더 좋은 셀로 바꾸기 위해 베스트 셀 지시자(Best Cell Indicator) 등을 상기 액티브 셋에 속해있는 셀들로 전송한다. 상기 베스트 셀 지시자에는 베스트 셀로 선택된 셀의 식별자가 포함되어 전송되고, 이에 상기 액티브 셋내의 셀들은 상기 베스트 셀 지시자를 수신하고 상기 베스트 셀 지시자에 포함된 셀 식별자를 검사한다. 그래서 상기 액티브 셋 내의 셀들 각각은 상기 베스트 셀 지시자가 자신에게 해당하는 베스트 셀 지시자인지를 검사하고, 상기 검사결과 베스트 셀로 선택된 해당 셀은 고속 순방향 공통 채널(HS-DSCH)을 이용해서 상기 UE(130)로 패킷 데이터를 전송한다.
세번째로, HARQ 방식, 특히 다채널 정지-대기 혼화 자동 재전송 방식(n-channel Stop And Wait Hybrid Automatic Retransmission Request:이하 "n-channel SAW HARQ"라 칭한다.)을 설명하기로 한다.
상기 HARQ 방식은 ARQ(Automatic Retransmission Request) 방식의 전송 효율을 증가시키기 위해 다음과 같은 2 가지 방안을 새롭게 적용한 것이다. 첫 번째 방안은 상기 HARQ는 UE와 Node B 사이에서의 재전송 요구 및 응답을 수행하는 것이고, 두 번째 방안은 오류가 발생한 데이터들을 일시적으로 저장하였다가 해당 데이터의 재전송 데이터와 결합(Combining)해서 전송하는 것이다. 또한 HSDPA 방식에서는 종래의 멈춤-대기 자동 재전송(Stop and Wait ARQ::SAW ARQ) 방식의 단점을 보완하기 위해서 상기 n-channel SAW HARQ라는 방식을 도입하였다. 상기 SAW ARQ방식의 경우 이전 패킷 데이터에 대한 ACK를 수신하여야만 다음 패킷데이터를 전송한다. 그런데, 이렇게 이전 패킷 데이터에 대한 ACK를 수신한 후에만 다음 패킷데이터를 전송하기 때문에 패킷 데이터를 현재 전송할 수 있음에도 불구하고 ACK을 대기하여야 하는 경우가 발생할 수 있다. 상기 n-channel SAW HARQ 방식에서는 상기 이전 패킷 데이터에 대한 ACK를 받지 않은 상태에서 다수의 패킷 데이터들을 연속적으로 전송해서 채널의 사용 효율을 높일 수 있다. 즉, UE와 Node B간에 n 개의 논리적인 채널(Logical Channel)들을 설정하고, 특정 시간 또는 채널 번호로 상기 n 개의 채널들 각각을 식별 가능하다면, 패킷 데이터를 수신하게 되는 상기 UE는 임의의 시점에서 수신한 패킷데이터가 어느 채널을 통해 전송된 패킷 데이터인지를 알 수 있으며, 수신되어야 할 순서대로 패킷 데이터들을 재구성하거나, 해당 패킷 데이터를 소프트 컴바이닝(soft combining) 하는 등 필요한 조치를 취할 수 있다.
그러면 여기서 상기 n-channel SAW HARQ 방식을 상기 도1을 참조하여 구체적으로 설명하면 다음과 같다.
UE(130)와 Node B(123)사이에 4-channel SAW HARQ 방식이 적용되고 있으며, 상기 4개의 채널들 각각은 1에서 4까지 논리적 식별자를 부여받았다고 가정한다. 상기 UE(130)와 Node B(123)의 물리계층(Physical Layer)에는 각 채널에 대응되는 HARQ 프로세서(processor)를 구비한다. 여기서, 상기 HARQ 프로세서는 전송되는 패킷 데이터들중 오류가 발생한 패킷 데이터를 일시적으로 저장하였다가, 해당 패킷이 재전송 되면 soft combining을 실행하는 프로세서이다. 상기 Node B(123)는 최초 전송하는 코딩 블룩(coded block: 한 TTI동안 전송되는 사용자 데이터를 의미하며, 하기에서 설명할 전송 블록 셋(TBS: Transport Block Set, 이하 "TBS"라 칭하기로 한다)와 일대일 대응된다)으로부터 1이라는 채널 식별자를 부여 상기 UE(130)로 전송한다. 여기서, 상기 채널 식별자는 채널 번호등과 같이 직접 부여될 수도 있고, 특정 시간대에 전송하는 것(특정 시간대에는 특정 채널을 통한 코딩된 블록들만을 전송하는 것)으로 암시될 수도 있다. 상기 최초 전송한 코딩 블록에 오류가 발생하였다면, 상기 UE(130)는 상기 오류 발생한 코딩 블록의 채널 식별자에서 지정하고 있는 채널 번호, 일 예로 채널 번호 1, 즉 채널 1과 대응되는 HARQ processor 1로 상기 오류 발생한 코딩 블록을 전달하고 상기 채널 1로 수신한 최초 전송 코딩 블록에 대한 NACK를 상기 Node B(123)로 전송한다.
그러면 상기 Node B(123)는 상기 채널 1의 코딩 블록에 대한 ACK의 수신여부와 관계없이 다음 코딩 블록을 채널 2을 통하여 전송한다. 만약 상기 다음 코딩 블록에 대해서도 오류가 발생하면 그 코딩 블록도 대응되는 HARQ processor, 즉 HARQ processor 2로 전달된다. 그리고 상기 Node B(123)이 상기 채널 1을 통해 최초 전송한코딩 블록에 대한 NACK를 상기 UE(130)로부터 수신하면, 상기 채널 1을 통해 상기 오류 발생한 해당 코딩 블록을 재전송한다. 그러면 상기 UE(130)는 상기 재전송된 코딩 블록의 채널 식별자를 통해 상기 HARQ processor 1로 상기 재전송된 코딩 블록을 전달한다. 상기 HARQ processor 1은 이전에 저장하고 있던 코딩 블록, 즉 오류 발생한 코딩 블록과 상기 재전송된 코딩 블록을 소프트 컴바이닝한다. 이와 같이 n-channel SAW HARQ 방식에서는 채널 식별자와 HARQ processor를 일대일 대응시키는 방식으로, 즉 채널 식별자에서 지정한 채널 번호에 해당하는 HARQ processor를 일대일 대응하여 구비함으로써 ACK가 수신될 때까지 사용자 데이터 전송을 지연시키지 않고도 최초 전송된 코딩 블록과 재전송된 코딩 블록을 적절하게 대응시킬 수 있다.
그리고 상기 4-channel SAW HARQ의 실제 패킷 데이터 송수신 시점을 도 11을 참조하여 설명하기로 한다.
상기 도 11은 통상적인 n-channel SAW HARQ 방식을 적용하는 시스템에서 패킷 데이터 송수신 시점의 예들을 도시한 도면이다.
상기 도 11에 도시되어 있는 바와 같이 n-channel SAW HARQ에는 2 가지 동작방식이 있다. 첫 번째 동작 방식은 모든 코딩 블록들은 전송되는 순서에 따라 채널이 고정적으로 할당되는 방식이고, 두 번째 방식은 코딩 블록들의 전송 순서와 채널이 패킷 데이터가 전송되는 상태 및 경우에 따라 가변적으로 할당되는 방식이다. 상기 도 11에서 a로 도시된 부분은 상기 첫번째 방식인 고정 채널 할당 방식의 일 예를, 상기 도 11에서 b로 도시된 부분은 상기 두번째 방식인 가변 채널 할당 방식의 일 예를 도시한 것이다. 그리고 상기 도 11의 a 및 b 모두 1에서 24까지의 순서를 가진 코딩 블록이 4-channel SAW HARQ 방식으로 전송되는 상황을 가정하며, t0, t1, t2에서 채널 2를 통해 전송되는 코딩 블록에 오류가 발생한 것으로 가정한다. 또한, 상기 도 11에서는 상기 모든 코딩 블록들에 순서에 따른 번호가 지정되어 있는 것으로 도시하였으나, 상기 모든 코딩 블록들의 번호는 설명상 편의를 위해 부여한 것이며, 실제 송수신 동작에서는 상기 코딩 블록들에 별도의 번호를 부여하는 것이 필요하지 않을 수도 있음에 유의하여야 한다.
그러면 첫 번째로, 상기 도 11의 a에 해당하는 고정 채널 할당 방식을 설명하기로 한다. 여기서, 상기 도 11의 a는 24개의 코딩 블록들이 4-channel HARQ 방식을 통해 전송된 경우 UE의 물리 계층 엔터티에 수신되는 시점을 도시하였으며, 첫번째로 수신된 코딩 블록부터 설명의 편의를 위해 그 코딩블록 번호를 1부터 일련번호를 부여하였다. 상기 일련번호는 상기에서 설명한 바와 같이 실제 코딩 블록들에 직접 부여되는 번호일 수도 있고, 상위계층에서 물리계층으로 전달되는 순서를 의미하는 번호일 수도 있다. 상기 코딩 블록들은 1번 코딩 블록은 첫번째 1번 채널로, 2번 코딩 블록은 첫번째 2번 채널로, 3번 코딩 블록은 첫번째 3번 채널로, 4번 코딩 블록은 첫번째 4번 채널로, 5번 코딩 블록은 두번째 1번 채널 순으로 송신측에서 전송되었다. 이 때 첫번째 2번 채널에서 2 번 코딩 블록에 대해서 오류가 발생하였으므로, 두번째 2번 채널인 t1에서는 6번 코딩 블록대신 상기 오류 발생한 2번 코딩 블록이 재전송된다. 즉 1번, 3번, 4번, 5번 코딩 블록이 성공적으로 전송되었고, 2번 코딩 블록은 전송 실패하였다. 두번째 3번 채널에서 7번 코딩 블록이 전송될지 또는 6번 코딩 블록이 전송될 지에 따라 상기 고정 채널 할당 방식과 가변 채널 할당 방식으로 구분되며, 상기 7번 코딩 블록이 전송되는 경우가 고정 채널 할당 방식이다. 상기 고정 채널 할당 방식은 1에서 24까지의 모든 코딩 블록들이 어느 채널을 통해 전송되고 수신될 것인지를 미리 정해놓은 방식이다. 일 예로 상기 {1,5,9,13,17,21} 코딩 블록들은 항상 1번 채널로, {2,6,10,14,18,22} 코딩블록들은 항상 2번 채널로, {3,7,11,15,19,23} 코딩 블록들은 항상 3번 채널로, {4,8,12,16,20,24} 코딩 블록들은 항상 4번 채널로 전송되고 수신되는 것이다. 그러므로 상기 도 11의 a에 도시되어 있는 바와 같이 첫번째 2번 채널(t1), 두번째 2번 채널(t2), 세번째 2번 채널(t3)로는 2번 코딩 블록이 전송 및 재전송되고, 2번 채널을 통해 전송되어야 할 {6,10,14,18,22} 코딩 블록들의 전송은 2번 채널을 통해 상기 2번 코딩 블록의 전송이 성공될 때까지 지연된다. 상기 도 11의 a에 도시된 바와 같이 t3에서 2번 채널을 통해 2번 코딩 블록이 성공적으로 전송되었으므로, 4번째 2번 채널(t4)에서는 상기 2번 코딩 블록으로 인해 전송이 지연되었던 6번 코딩 블록이 전송되고, 5번째 2번 채널에서는 10번 코딩 블록이 전송된다.
두 번째로, 상기 도 11의 b에 해당하는 가변 채널 할당 방식을 설명하기로 한다.
상기 가변 채널 할당 방식을 설명함에 있어서도 상기 고정 채널 할당 방식을 설명할때와 동일하게 코딩 블록 번호를 부여한다. 상기 가변 채널 할당 방식은 상기 코딩블록들이 어느 채널을 통해 전송되고 수신될 것인지 미리 정해져 있지 않아 상황에 따라 가변적이며, 오류가 발생하지 않은 코딩 블록들은 순차적으로 전송되도록 하는 방식이다. 상기 가변 채널 할당 방식의 패킷 데이터 송수신 시점의 일 예를 도시한 상기 도 11의 b를 설명하기로 한다. 상기 도 11의 b에 도시한 바와 같이 1번 코딩 블록은 첫번째 1번 채널로, 2번 코딩 블록은 첫번째 2번 채널로, 3번 코딩 블록은 첫번째 3번 채널로, 4번 코딩 블록은 첫번째 4번 채널로, 5번 코딩 블록은 두번째 1번 채널로 전송되었다. 이 때 첫번째 2번 채널에서 2 번 코딩 블록에 대해서 오류가 발생하였으므로, 두번째 2번 채널인 t1에서는 6번 코딩블록대신 상기 오류 발생하였었던 2번 코딩 블록이 재전송된다. 즉 1번, 3번, 4번, 5번 코딩 블록이 성공적으로 전송되었고, 2번 코딩 블록은 전송 실패하였다. 상기 가변 채널 할당 방식은 코딩 블록들이 전송되어야 할 순서와 채널이 미리 결정되어 있지 않으므로 다음 순서는 코딩 블록 6번이며, 두 번째 3번 채널(t1`)을 통해서 상기 6번 코딩 블록이 전송된다. 이와 마찬가지로 세 번째 2번 채널까지는 {1,3,4,5,6,7,8} 코딩 블록들이 성공적으로 전송되었으므로, 세 번째 3번 채널(t2')을 통해서는 9번 코딩 블록이 전송되고, 네 번째 2번 채널까지는 {1,2,3,4,5,6,7,8,9,10,11} 코딩 블록들이 성공적으로 전송되었으므로, 네 번째 3번 채널(t3')을 통해서는 12번 코딩 블록이 전송된다. 하기 설명에서는 상기 n-channel SAW HARQ 방식을 적용함에 있어 상기 고정 채널 할당 방식과 가변 채널 할당 방식을 포괄함에 유의하여야 한다.
도2는 통상적인 고속 순방향 패킷 접속방식을 사용하는 부호분할 다중 접속 통신시스템의 프로토콜 스택을 도시한 도면이다.
상기 도 2를 참조하면, HSDPA방식은 상기 도 2에 도시되어 있는 바와 같이 Node B(123)와 UE(130)에 MAC-h(220)와 MAC-h(320)가 위치하고 있으며, 상기 MAC-h는 HS-DSCH 상위 계층 데이터 전송 스케줄링(Scheduling)등을 수행한다. 상기 Node B(123)와 UE(130)에는 각각 물리계층 엔터티(PHYsical layer entity)(210),(310)가 위치하고 있으며, 상기 물리계층 엔터티(210),(310)는 HS-DSCH 상위 계층 데이터가 전송되는 HS-PDSCH(High Speed-Physical Downlink Shared Channel)의 송수신과HARQ를 담당한다. 그리고 상기 UE(130)에는 MAC-c/sh(common/shared) 엔터티(330)와, MAC-d(dedicated) 엔터티(340)가 존재하여 상기 MAC-h(320)와 함께 MAC 엔터티를 구성한다. 상기 MAC-h 엔터티(320)는 상기에서 설명한 바와 같이 HSDPA를 위해 새롭게 도입된 엔터티이며, 상기 MAC-c/sh 엔터티(330)와 MAC-d 엔터티(340)는 상기 Node B(123)에 대한 SRNC(121)의 MAC-c/sh 엔터티(251)나 MAC-d 엔터티(253)가 전송 블록 셋(TBS: Transport Block Set) 별로 삽입한 헤더(header)를 처리해서 RLC-PDU(Protocol Data Unit)로 생성하는 역할을 수행한다. 여기서, 상기 MAC-c/sh 엔터티와 MAC-d 엔터티는 본 발명의 실시에들을 설명함에 있어 동작에 영향을 미치지 않기 때문에 그 상세한 설명을 생략하기로 한다.
상기 도 2에서 설명한 프로토콜 스택을 참조하여 도 3에서는 패킷 데이터 전송에 따른 계층간 처리 과정을 설명하기로 한다.
상기 도3은 통상적인 부호분할다중접속 통신시스템에서 계층간 패킷 데이터 전송에 따른 처리 과정을 도시한 도면이다.
상기 도 3을 참조하면, 상기 도 3에 도시한 바와 같이 UE(130)의 물리계층 엔터티(310)은 Uu 인터페이스를 통해서 하기와 같은 3 가지 종류의 신호를 상기 Node B(123)의 물리계층 엔터티(210)와 주고 받는다. 첫 번째는 상기 Node B(123)가 전송하는 순방향 제어 정보에 관련된 신호인 DL control signal(301)이고, 두번째는 상기 Node B(123)로부터 HS-PDSCH(High Speed-Physical Downlink Shared Channel)를 통해서 전송되는 코딩 블록을 전송하는 HS-PDSCH 채널 신호(302)이며, 번째는 역방향 제어 정보에 관련된 신호인 UL control signal(303)이다.
여기서, 상기 DL control signal(301)을 통해서 전송되는 방향 제어 정보로는 상기 UE(130)에게 HS-PDSCH의 수신 시점을 알려주는 정보, 상기 HS-PDSCH에 사용될 MCS level에 대한 정보, 상기 HS-PDSCH에 사용될 OVSF(Orthogonal Variable Spreading Factor) 코드에 관한 정보 등이 있을 수 있다. 그리고 상기 HS-PDSCH 채널 신호(302)에서 상기 HS-PDSCH는 HS-DSCH의 상위계층 데이터가 전달되는 물리채널을 의미하며, 상기 HS-PDSCH는 복수개의 OVSF 코드로 확산될 수 있으며, 상기 MCS level에 따라변조되고 채널 코딩(channel coding)된다. 상기 HS-PDSCH를 통해서 한 TTI(Transmission Time Interval)동안 전송되는 사용자 데이터를 코딩 블록이라고 칭하며 상기 코딩 블록은 채널 코딩이 완료된 시점의 상위계층 데이터를 의미하며, 복수개의 TB(Transport Block)들로 구성될 수 있다. 상기 TB은 상기 MAC-h 엔터티(320)와 물리계층 엔터티(310) 사이에 교환되는 상위계층 데이터들의 기본 전송 단위이며, 한 번의 TTI 동안 교환되는 상기 TB들의 집합을 전송 블록 셋(TBS: Transport Block Set, 이하 "TBS"라 칭하기로 한다)이라고 칭하며, 상기 코딩 블록과 대응되는 개념이다. 그래서, 상기 HS-PDSCH 채널 신호(302)를 통해 전송되는 데이터들은 상기 코딩 블록들이 된다. 또한, 상기 UL control signal(303)을 통해서 전송되는 역방향 제어 정보로는 상기 코딩블록에 대한 ACK이나 NACK 정보, AMC를 지원하기위한 채널 품질 정보 등이 있을 수 있다.
상기 UE(130)의 물리계층 엔터티(310)는 Uu 인터페이스를 통해 상기 Node B(123)의 물리 계층 엔터티(210)로부터 코딩 블록을 수신하면 CRC(Cyclic Redundancy Check) 연산을 수행해서 상기 물리 계층 엔터티(210)로부터 수신한 코딩 블록의 오류 발생 여부를 검사한다. 상기 검사 결과 상기 수신한 코딩 블록에 대해서 오류가 발생하지 않은 경우 상기 물리 계층 엔터티(310)는 상기 수신한 코딩 블록을 PHY-DATA-IND(304) 프리미티브(primitive)를 통해 상기 MAC-h 엔터티(320)로 전달한다. 한편, 상기 검사 결과 상기 수신한 코딩 블록에 대해 오류가 발생하였을 경우 상기 물리계층 엔터티(310)는 상기 오류 발생한 코딩 블록을 데이터 패스(306)을 통해 HARQ processor set(315)으로 전달한다. 그러면 상기 HARQ processor set(315)은 상기 코딩 블록에 해당하는 해당 HARQ processor를 찾아 상기 코딩 블록을 전달한다. 여기서, 상기 도 3에는 편의상 HARQ processor set(315)만을 도시하였지만 상기 HARQ processor set(315)은 해당 시점의 HARQ 채널 수와 동일한 수의 HARQ processor들로 구성된다. 일 예로 상기 HARQ 채널 수가 4개일 경우 상기 HARQ processor set(315)을 구성하는 HARQ processor의 개수는 4개가 되는 것이며, 그래서 상기 해당 채널에 해당하는 코딩 블록을 해당 HARQ processor에서 처리하도록 전달하게 된다.
상기 오류가 발생한 코딩 블록은 상기 HARQ processor set(315)의 해당 HARQ processor에서 이후에 해당 채널을 통해 재전송된 코딩 블록과 소프트 컴바이닝되고, 상기 HARQ processor는 상기 미리 저장되어 있던 오류 발생한 코딩 블록과 상기 재전송된 블록을 소프트 컴바이닝한 코딩 블록을 상기 데이터 패스(306)를 통해 상기 물리계층 엔터티(310)로 전달한다. 상기 HARQ processor로부터 소프트 컴바이닝된 코딩 블록을 수신한 물리 계층 엔터티(310)는 상기 컴바이닝된 코딩 블록에 대한 CRC 연산을 수행하여 해당 코딩 블록이 오류가 제거되었다면 상기 MAC-h 엔터티(320)로 전달한다. 한편, 상기 CRC 연산을 수행한 후 상기 코딩 블록에 대해 오류가 여전히 존재한다면, 상기 물리 계층 엔터티(310)는 상기 코딩 블록을 다시 해당 HARQ processor로 전달한다.
그리고 나서 상기 물리계층 엔터티(310)는 상기 오류가 발생하지 않은 TBS이나, 오류가 발생했었으나 소프트 컴바이닝을 통해 오류를 제거한 TBS를 TFI(Transport Format Indicator), CRC 연산 결과를 포함한 PHY-DATA-IND 프리미티브(304)를 상기 MAC-h 엔터티(320)로 전달한다. 여기서, 상기 TFI는 수신한 데이터를 처리하기 위해 필요한 정보에 대한 논리적 식별자이며, error protection의 종류, coding rate, puncturing limit 등 물리계층과 관련된 정보 및 TB와 TBS의 크기 같은 정보들을 담고 있다. 그리고 상기 CRC 연산 결과는, 상기 HSDPA 방식이 아닌 패킷 데이터 전송 방식의 경우 TB별 오류 발생 여부를 지시하는 정보이다. 기존 패킷 데이터 전송 방식에서는 전송측의 MAC 엔터티가 물리계층 엔터티로 TB들을 전달하면, 물리계층에서 상기 TB 마다 CRC를 삽입해서 전송하고, 수신측의 물리계층 엔터티는 TB 별로 CRC 연산을 수행해서 오류 발생 여부를 판단하고 그 결과를 MAC 엔터티로 전달한다. 그러나 상기 HSDPA 방식에서는 TB별이 아닌 코딩 블록 별로 CRC를 삽입하는 방안이 고려되고 있다. 이 경우, 상기 CRC 결과는 하나의 코딩 블록에 대응되는 TBS에 대한 오류 발생 여부에 대한 정보가 될 수 있다. 만약 상기 HSDPA 방식에서도 TB별로 CRC를 삽입하고 CRC 연산을 수행한다면, 상기 CRC 연산 결과는 기존 방식과 마찬가지로 각 TB별 오류 발생 여부에 관한 정보가 될 수 있다. 이렇게, 최초 수신한 코딩 블록에 오류가 발생하지 않았을 경우, 또는 최초 전송에서는 오류가 발생하였었으나 HARQ processor에서 오류가 제거된 경우, 상기 코딩 블록은 TBS 형태로 상기 MAC-h 엔터티(320)로 전달되고 계속해서 MAC-c/sh 엔터티(330), MAC-d 엔터티(340)를 거쳐 MAC-DATA-IND프리미티브를 통해 RLC 엔터티(350)로 전달된다.
기존 UMTS 시스템에서는 오류가 발생한 데이터의 재전송은 RLC가 담당하며, MAC과 물리계층은 이에 관여하지 않았다. 그러나 HSDPA 방식에서는 물리계층에 HARQ 기능이 부가되기 때문에, RLC와는 독립적으로 오류 발생에 따른 재전송 제어 기능을 수행하게 된다. 여기서, 상기 RLC의 동작을 설명하면 다음과 같다. RLC는 동작 방식에 따라 통과 모드(Transparent Mode::TM), 비인지 모드(Unacknowledged Mode: UM), 인지 모드(Acknowledged Mode: AM)로 구분되며, 상기 HSDPA방식은 UM과 AM에서만 동작한다.
첫 번째로 상기 UM의 동작을 설명하기로 한다.
UE와 Nodd B가 RLC UM 모드로 RLC 재전송을 수행하는 경우, 상기 RLC는 상위 계층에서 서비스 데이터 유니트(Service Data Unit:SDU)가 내려오면 미리 정해진 크기로 SDU를 정합시킨다. 만약 상기 SDU가 미리 정해진 크기보다 크다면 분할하고, 작다면 연접한다. 여기서, 상기 SDU가 그 크기에 따라 분할되거나 연접되어서 만들어진 하나의 데이터 단위(이를 "PDU"라 칭하기로 한다)에 하기에서 설명할 헤더가 삽입되면 결국 상기 RLC의 기본 단위인 RLC-PDU로 생성되는 것이다. 상기 정합과정이 완료되면, 상기 정합된 PDU 각각에 일련번호인 시퀀스 번호(Sequence Number:SN), 길이 지시자(Length Indicator::LI)를 포함한 헤더가 삽입된다. 상기시퀀스 번호는 상기 정합과정이 완료된 PDU들에 순차적으로 할당되며, 상기 길이 지시자는 한 SDU의 시작점과 끝점을 나타낸다. 상기 SDU의 시작점과 끝점을 코딩하는 방법은 상기 한 SDU에서 분할된 PDU들 중 첫 번째 PDU의 길이 지시자에 임의의 SDU가 시작된다는 정보를 코딩하고, 마지막 PDU의 길이 지시자에는 상기 SDU의 종료점을 코딩한다. 그러나, 첫 번째 및 마지막이 아닌 중간에 존재하는 중간 PDU들에는 상기 길이 지시자가 삽입되지 않는다. 상기 헤더가 삽입된 데이터들을 RLC 프로토콜 데이터 유니트(Protocol Data Unit:PDU)라고 하며, 이렇게 생성된 RLC-PDU들은 상대편인 수신측 RLC로 전송된다. 상기 수신측 RLC는 각RLC-PDU들의 시퀀스 번호를 검사해서 상기 시퀀스 번호가 연속적이지 않을 경우, 즉 미수신 RLC-PDU가 발견될 경우, 먼저 수신한 RLC-PDU들의 길이 지시자를 검사해서 상기 수신한 RLC-PDU들 중 미수신 RLC-PDU와 동일한 SDU에 속하는 RLC-PDU가 있는지 확인한다. 결국 이것은 시작점과 끝점이 미수신 RLC-PDU를 포함하고 있는 SDU에 속하는 RLC-PDU들을 의미하며, 상기 미수신 RLC-PDU와 동일한 SDU에 속하는 나머지 RLC-PDU들은 정상 수신되었음에도 불구하고 폐기된다.
두 번째로 상기 AM의 동작을 설명하기로 한다. 상위 계층에서 RLC로 서비스 데이터 유니트(Service Data Unit:SDU)가 도착하면 상기 RLC는 미리 정해진 크기로 SDU를 정합시킨다. 만약 상기 SDU가 미리 정해진 크기보다 크다면 분할하고, 작다면 연접한다. 상기 정합과정이 완료되면, 상기 RLC-PDU 각각에 시퀀스 번호와, 길이지시자를 포함한 헤더가 삽입된다. 상기 헤더가 삽입된 데이터들, 즉 RLC-PDU들은 상대편인 수신측 RLC로 전송되고, 상기 수신측 RLC는 각 RLC-PDU들의 시퀀스 번호를 검사해서 상기 시퀀스 번호가 연속적이지 않을 경우, 즉 미수신 RLC-PDU가 발견될 경우 다음과 같은 동작을 취한다. 먼저 해당 시점에서 송신측 RLC로 재전송 요구를 할 지를 결정한다. 상기 재전송 요구는 RLC STATUS PDU라는 제어 PDU를 이용해서 전달되며, RLC STATUS PDU 전송 조건은 여러 가지로 설정될 수 있다. 상기에서 설명한 바와 같이 미수신 RLC-PDU가 발생했을 경우 상기 RLC-STATUS PDU를 전송할 수도 있고, 일정 시간이 지난 후에 상기 RLC STATUS PDU를 전송할 수도 있다. 만약 상기 RLC STATUS PDU를 전송하기로 결정하였다면, 상기 RLC는 미수신 RLC-PDU들의 시퀀스 번호를 상기 RLC STATUS PDU에 포함시켜 상기 송신측 RLC로 전송하고, 이에 상기 송신측은 상기 재전송 요구된 해당 RLC-PDU들을 재전송 한다.
상기 RLC UM과 RLC AM이 물리계층의 HARQ와 함께 동작할 경우 다음과 같은 문제점들이 발생할 수 있다. 상기 RLC는 하위 계층이 RLC-PDU를 순차적으로 전달한다는 가정 하에 오류 발생한 RLC-PDU에 대한 재전송 제어를 수행한다. 그러나 물리계층이 HARQ를 수행하게 되면, MAC에서 RLC로 올려주는 RLC-PDU들이 순차적이지 않을 수 있으며, 이렇게 순차적으로 RLC-PDU들이 전달되지 않음으로 인해서 재전송이 비효율적으로 수행된다. 예를 들어 RLC-PDU 일련번호, 즉 시퀀스 번호가 1,2,3,4,5,6,7 인 RLC-PDU들이 송신측인 Node B에서 수신측인 UE로 전송되었으며, 이 중 3번과 4번 RLC-PDU에 오류가 발생했다고 가정한다. 그러면 상기 UE의 물리계층은 시퀀스 번호 1,2,5,6,7인 RLC-PDU가 정상적으로 수신되었기 때문에 이 들을 MAC으로 전달하고, 상기 MAC은 상기 물리 계층으로부터 전달받은 시퀀스 번호 1, 2, 5, 6, 7인 RLC-PDU들을 RLC로 전달한다. 한편, 상기 시퀀스 번호 3번과 4번RLC-PDU는 상기 UE와 Node B의 물리계층에서 HARQ 과정을 거쳐 재전송이 정상 처리되었을 경우에 상기 UE의 RLC로 전달된다. 그러나, 상기에서 설명한 바와 같이 상기 RLC는 하위 계층이 순차적으로 RLC-PDU를 전달하는 것으로 가정하기 때문에, MAC으로부터 시퀀스 번호 1,2,5,6,7 번 RLC-PDU를 수신하면, 시퀀스 번호 3번 4번 RLC-PDU가 아직 수신되지 않았다는 사실을 인지한다. 상기 RLC가 UM으로 동작하고 있을 경우, 1번 RLC-PDU의 길이 지시자에 임의의 SDU가 시작한다는 정보가 코딩되어 있고, 7번 RLC-PDU의 길이 지시자에 임의의 SDU의 종료점이 코딩되어 있으며, 2번, 5번, 6번, 7번 RLC-PDU에는 길이 지시자가 삽입되지 않았다면, 상기 수신측 RLC은 1,2,5,6,7번 RLC-PDU와 3,4번 RLC-PDU가 동일한 SDU에 속해있다는 것을 인지하고 1,2,5,6,7번 RLC-PDU를 폐기하게 되어, 결과적으로 불필요한 RLC-PDU 폐기가 발생한다. 그리고 상기 RLC가 AM으로 동작하고 있을 경우, 3번과 4번 RLC-PDU에 대한 재전송 요구를 담고 있는 RLC STATUS PDU가 전송될 것이고, 결과적으로 3번과 4번 RLC-PDU는 불필요하게 재전송된다. 즉, 이미 물리계층에서 오류 발생한 RLC-PDU에 대해서 재전송 요구를 수행하여 HARQ 동작을 수행하고 있음에도 불구하고 다시 상기 RLC에서 재전송 동작을 반복하거나 불필요한 폐기 동작을 실행한다는 문제점이 있다.
따라서, 본 발명의 목적은 고속순방향패킷접속 방식을 사용하는 통신시스템에서 오류 발생한 데이터에 대한 재전송을 물리계층에서 완료시켜 순차적으로 상위계층으로 전송하는 장치 및 방법을 제공함에 있다.
본 발명의 다른 목적은 고속 순방향 패킷 접속 방식을 사용하는 통신시스템의 MAC에서 초기 전송에 성공한 데이터들을 대기시켜 오류 발생한 데이터들에 대한 재전송 성공시 순차적으로 상위 계층으로 전송하는 장치 및 방법을 제공함에 있다.
상기한 목적들을 달성하기 위한 본 발명의 장치는; 초기 전송과 재전송 요구에 응답하여 재전송을 하고, 상기 재전송을 위한 복합 재전송 프로세서 셋을 구비하는 고속 순방향 패킷 접속 서비스를 사용하는 통신시스템에서 데이터 전송 장치에 있어서, 수신 데이터에 대한 오류 발생 여부를 판단하고, 상기 판단결과 오류 발생한 데이터를 상기 복합 재전송 프로세서 셋으로 전송함과 동시에 재전송 요구하며, 특정 프리미티브를 통해 상기 오류 발생한 데이터에 대한 제어정보만을 그 상위계층으로 전달하며, 상기 판단결과 오류 발생하지 않은 데이터를 상기 프리미티브를 통해 상기 오류 발생하지 않은 데이터와 상응하는 제어정보를 함께 재순서 버퍼로 전달하는 물리 계층 엔터티와, 상기 프리미티브를 분석하고, 상기 프리미티브가 오류 발생한 데이터임을 나타낼 경우 위치 셋을 생성하고, 상기 위치셋에 상기 수신된 데이터들의 상태를 나타내는 원소들을 저장하고, 상기 위치셋의 원소들에 상응하여 포인터 셋을 생성하며, 상기 오류 발생한 데이터 이후에 전달되는 오류 발생하지 않은 연속적인 데이터들을 상기 오류 발생한 데이터에 대한 재전송이 성공할 때까지 대기시켜 상기 재전송 성공한 데이터부터 상기 오류 발생하지 않은 데이터들을 연속되게 상위계층으로 전달하는 재순서 버퍼를 포함함을 특징으로 한다.
상기한 목적들을 달성하기 위한 본 발명의 방법은; 초기 전송과 재전송 요구에 응답하여 재전송을 하고, 상기 재전송을 위한 복합 재전송 프로세서 셋과, 수신 데이터에 대한 오류 발생 여부를 판단하여 해당 정보들을 포함하는 프리미티브를 전송하는 물리 계층 엔터티를 구비하는 고속 순방향 패킷 접속 서비스를 사용하는 통신시스템에서 데이터 전송 방법에 있어서, 상기 물리 계층 엔터티로부터 수신되는 프리미티브를 분석하여 상기 프리미티브가 상기 수신 데이터에 대한 오류 발생을 나타낼 경우 위치 셋을 생성하는 과정과, 상기 생성한 위치 셋에 상기 수신 데이터의 오류 발생을 나타내는 원소를 저장한 후 상기 위치셋에 저장한 정보에 상응하여 포인터 셋을 생성하는 과정과. 상기 생성한 포인터 셋에 상기 수신 데이터의 오류 발생의 형태를 나타내는 원소를 저장하는 과정과, 이후 수신되는 프리미티브들이 그 해당 데이터에 대한 오류 발생을 나타내지 않을 경우 상기 위치 셋의 원소와 포인터 셋의 해당 원소들을 정상상태임으로 저장함과 동시에 그 오류 발생하지 않은 데이터들을 대기시키고. 상기 오류 발생한 데이터의 재전송이 성공하는 시점에서 상기 재전송 성공한 데이터와 상기 포인터 셋에 연속적으로 정상상태로 저장되어 있는 원소들에 대응하는 데이터들을 연속적으로 상기 상위 계층으로 전송하는 과정을 포함함을 특징으로 한다.
도1은 통상적인 부호분할다중접속 통신시스템의 구성을 개략적으로 도시한 도면.
도2는 통상적인 고속순방향패킷접속 방식을 사용하는 부호분할다중접속 통신시스템의 프로토콜 스택을 도시한 도면.
도3은 통상적인 부호분할다중접속 통신시스템에서 계층간 패킷 데이터 전송에 따른 처리 과정을 도시한 도면.
도4는 본 발명의 일 실시 예에 따른 부호분할다중접속 통신시스템에서 계층간 패킷 데이터 전송에 따른 처리 과정을 도시한 도면.
도5는 본 발명의 다른 실시 예에 따른 수신측 물리 계층 엔터티의 패킷 데이터 처리 과정을 도시한 도면.
도6은 본 발명의 또 다른 실시 예에 따른 라우팅부의 동작 과정을 도시한 순서도.
도 7은 본 발명의 또 다른 실시예에 따른 위치 매트릭스 및 포인터 매트릭스천이 상태를 도시한 도면
도 8a 및 도 8b는 본 발명의 또 다른 실시예에 따른 재순서 버퍼 제어기의 동작 과정을 도시한 순서도
도 9는 본 발명의 또 다른 실시예에 따른 위치 매트릭스 천이 상태의 일 예를 도시한 도면
도 10은 본 발명의 또 다른 실시예에 따른 포인터 매트릭스 천이 상태의 일 예를 도시한 도면
도 11은 통상적인 n-channel SAW HARQ 방식을 적용하는 시스템에서 패킷 데이터 송수신 시점의 예들을 도시한 도면
도 12는 본 발명의 또 다른 실시예에 따른 위치 셋 및 포인터 셋 천이 상태를 도시한 도면
도 13은 본 발명의 또 다른 실시예에 따른 위치 셋 천이 상태의 일 예를 도시한 도면
도 14은 본 발명의 또 다른 실시예에 따른 포인터 셋 천이 상태의 일 예를 도시한 도면
도 15는 본 발명의 또 다른 실시예에 따른 부호분할 다중 접속 통신시스템에서 계층간 패킷 데이터 전송에 다른 처리 과정을 도시한 도면
도 16a 및 도 16b는 본 발명의 또 다른 실시예에 따른 재순서 버퍼의 동작 과정을 도시한 순서도
도 17a 및 도 17b는 본 발명의 또 다른 실시예에 따른 재순서 버퍼의 동작 과정을 도시한 순서도
이하, 본 발명에 따른 바람직한 실시예를 첨부한 도면을 참조하여 상세히 설명한다. 하기의 설명에서는 본 발명에 따른 동작을 이해하는데 필요한 부분만이 설명되며 그 이외 부분의 설명은 본 발명의 요지를 흩트리지 않도록 생략될 것이라는 것을 유의하여야 한다.
도4는 본 발명의 일 실시 예에 따른 부호분할다중접속 통신시스템에서 계층간 패킷 데이터 전송에 따른 처리 과정을 도시한 도면이다.
상기 도 4를 참조하면, 수신측을 상기 도 2에서 설명한 UE(123)로, 송신측을 상기 도 2에서 설명한 Node B(123)로 가정하고 설명하기로 한다. 상기 UE(130)의 물리계층(PHY) 엔터티(310)는 Uu 인터페이스를 통해서 상기 Node B(123)로부터 코딩 블록을 수신하고 해당 코딩 블록의 채널을 확인한다. 그러면, 상기 물리 계층 엔터티(310)는 상기 Node B(123)로부터 수신한 코딩 블록이 재전송된 코딩 블록인지 혹은 초기 전송된 코딩 블록인지를 판단할 수 있다. 상기 물리 계층 엔터티(310)가 상기 Node B(123)로부터 수신한 코딩 블록이 재전송 코딩 블록인지 초기 전송 코딩 블록인지를 판단하는 방법은 상기 수신한 코딩블록의 채널에 해당하는 HARQ processor에 코딩 블록이 저장되어 있는지 여부를 판단하는 것이다. 즉, 상기 HARQ processor에 해당 코딩 블록이 저장되어 있을 경우, 상기 수신한 코딩 블록은 재전송된 코딩 블록이며, 상기 HARQ processor에 해당 코딩 블록이 저장되어 있지 않을 경우 상기 수신한 코딩 블록은 초기 전송된 코딩 블록이라고 판단한다. 이렇게 HARQ processor에 해당 코딩 블록이 존재하는지 여부를 가지고서 판단하는 방법 이외에 송신측에서 각 코딩 블록에 재전송인지 초기 전송인지를 표시하는 정보를 포함시켜 전송하면 상기 물리 계층 엔터티(130)가 상기 송신측으로부터 수신한 코딩 블록이 재전송된 코딩 블록인지 혹은 초기 전송된 코딩 블록인지를 판단하는 것이 가능하다. 그리고 상기 채널은 n-channel SAW의 채널을 의미하며, 하기의 설명에서는 설명상 편의를 위해 간단히 채널로 명한다.
상기 판단 결과 상기 수신된 코딩 블록이 재전송된 코딩 블록일 경우, 이 코딩 블록은 HARQ processor set(315)로 전달된다. 그러면 상기 HARQ processor set(315)은 상기 재전송된 코딩 블록을 상기 코딩 블록의 수신된 채널에 해당하는 HARQ processor로 전달한다. 그래서 상기 해당하는 HARQ processor는 미리 저장되어 있는 코딩 블록과 현재 수신한 코딩 블록을 소프트 컴바이닝(soft combining)하여 상기 소프트 컴바이닝된 코딩 블록을 상기 물리 계층 엔터티(310)로 출력한다. 그러면 상기 물리 계층 엔터티(310)는 상기 소프트 컴바이닝된 코딩블록에 대한 CRC 연산을 수행하고, 상기 CRC 연산 결과 해당 코딩 블록에 오류가 발생하지 않은 것으로 판명되면, 상기 물리 계층 엔터티(310)는 상기 코딩 블록에 대한 TBS와, TFI, CRC 결과와, 상기 HARQ processor 상태와, 해당 코딩 블록의 채널 번호와, 소프트 컴바이닝 여부를 포함하는 PHY-DATA-IND 프리미티브(417)를 각종 정보들과, 또한 상황에 따라 어떤 정보는 포함되고 어떤 정보는 포함되지 않는지 등에 대한 상세한 설명은 하기에서 하기로 하고 여기에서는 그 상세한 설명을 생략하기로 한다. 그리고, 해당 코딩 블록에 해당하는 채널로 ACK을 나타내는 UL control signal(303)을 전송하여 상기 해당 코딩 블록이 정상 처리되었음을 상기 Node B(123)로 알려준다.
한편, 상기 코딩 블록에 대한 CRC 연산 결과 해당 코딩 블록에 오류가 발생한 것으로 판명되면, 상기 물리 계층 엔터티(310)는 상기 PHY-DATA-IND를 상기 라우팅부(411)로 전달하고, 상기 코딩 블록의 채널에 대응되는 HARQ processor로 상기 코딩 블록을 전달하여 재전송에 준비하도록 하고,상기 해당 코딩 블록에 해당하는 채널로 NACK을 나타내는 UL control signal(303)을 전송하여 상기 해당 코딩 블록이 오류 발생하였음을 상기 Node B(123)로 알려준다. 여기서, 상기 코딩블록에 대한 오류 발생시 전송되는 PHY-DATA-IND(417)는 상기 정상 처리 되었을 경우와 다른 점이 있는데, 이는 상기 코딩 블록에 대한 TBS를 전송하지 않는다는 점이다. 그 이유는 상기 코딩 블록에 대한 재전송을 위한 소프트 컴바이닝 과정을 상기 HARQ processor에서 수행하기 때문이며, 상기 오류 발생한 코딩 블록은 상기 HARQ processor로 전달되어 저장된다.
그리고, 상기에서 현재 수신된 코딩 블록이 초기 전송된 코딩 블록일 경우, 상기 물리 계층 엔터티(310)는 상기 초기 전송된 코딩 블록에 대한 CRC 연산을 수행한다. 상기 CRC 연산 결과 상기 코딩 블록에 오류가 발생하지 않은 것으로 판명되면, 상기 물리 계층 엔터티(310)는 PHY-DATA-IND(417)를 상기 라우팅부(411)로 전달하고, 해당 코딩블록에 대응되는 채널로 ACK을 나타내는 UL control signal(303)을 전송하여 상기 해당 코딩 블록이 정상 처리되었음을 상기 Node B(123)로 알려준다. 여기서, 상기 초기 전송 코딩 블록에 대한 PHY-DATA-IND(417)는 상기 코딩 블록에 대한 TBS와, TFI와, CRC 결과와, HARQ processor 상태와, 상기 코딩 블록의 채널 번호와, 소프트 컴바이닝 여부를 나태는 정보가 포함된다.
한편, 상기 초기 전송된 코딩 블록에 대한 CRC 연산 결과 해당 코딩 블록에 오류가 발생한 것으로 판명되면, 상기 물리 계층 엔터티(310)는 PHY-DATA-IND(417)를 상기 라우팅부(411)로 전달하고, 해당 코딩 블록의 채널에 대응되는 HARQ processor로 상기 코딩 블록을 전달하고, 해당 코딩 블록에 해당하는 채널로 NACK을 나타내는 UL control signal(303)을 전송하여 상기 해당 코딩 블록이 오류 발생하였음을 상기 Node B(123)로 알려준다. 여기서, 상기 오류 발생한 초기 전송 코딩 블록에 대한 PHY-DATA-IND(417)는 상기 코딩 블록에 대한 TFI와, CRC 결과와, HARQ processor 상태와, 상기 코딩 블록의 채널 번호와, 소프트 컴바이닝 여부를 나태는 정보가 포함된다.
상기 도 4에서 상기 UE(130)의 물리계층 엔터티(310)로 수신된 코딩 블록이 초기 전송 코딩 블록 혹은 재전송 코딩 블록일 경우의 코딩 블록 처리 과정과, 상기 수신된 코딩 블록이 초기 전송 코딩 블록일 경우 오류 발생했을 경우 혹은 오류 발생하지 않았을 경우의 코딩 블록 처리 과정과, 상기 수신된 코딩 블록이 재전송 코딩 블록일 경우 오류 발생했을 경우 혹은 오류 발생하지 않았을 경우의 코딩 블록 처리 과정을 각각 설명하였다.
그러면 상기 코딩 블록 처리과정에서 실질적으로 상기 물리계층 엔터티(310)가 수행하는 동작을 도 5를 참조하여 설명하기로 한다.
상기 도5는 본 발명의 다른 실시 예에 따른 수신측 물리 계층 엔터티의 패킷 데이터 처리 과정을 도시한 도면이다. 먼저, 501단계에서 상기 물리계층 엔터티(310)로 코딩 블록이 입력되면, 기 물리계층 엔터티(310)는 502단계로 진행하여 상기 코딩 블록이 재전송된 코딩 블록인지를 검사한다. 상기 검사 결과 상기 입력된 코딩 블록이 재전송된 코딩 블록인 경우, 싱기 물리 계층 엔터티(310)는502-1단계로 진행하고, 상기 502-1단계에서 상기 물리 계층(310)는 상기 코딩 블록을 해당 HARQ processor로 전달하여 소프트 컴바이닝 하도록 제어한다. 여기서 상기 HARQ processor는 상기 소프트 컴바이닝을 수행한 후 그 결과를 상기 물리 계층 엔터티(310)로 전달해 주기 때문에 상기 물리 계층 엔터티(310)는 상기 소프트 컴바이닝 결과를 판단하는 것이 가능하게 된다. 이렇게, 상기 HARQ processor로부터 상기 코딩 블록에 대한 소프트 컴바이닝 결과를 수신하면 상기 물리 계층 엔터티(310)는 502-2단계로 진행하여 상기 소프트 컴바이닝 결과를 가지고서 CRC 연산을 수행하여 오류 발생 여부를 판단한다. 상기 판단결과 상기 CRC 오류가 발생되지 않았을 경우, 즉 소프트 컴바이닝에 성공한 경우 상기 물리계층 엔터티(310)는 502-3단계로 진행하여 상기 라우팅부(411)로 파라미터 셋(parameter set) 1이 삽입된 PHY-DATA-IND(417)을 전달하고 하기에서 설명할 806단계로 진행한다
한편, 상기 판단 결과 상기 CRC 오류가 발생하였을 경우, 즉 소프트 컴바이닝에 실패한 경우, 상기 물리 계층 엔터티(310)는 502-4단계로 진행하여 상기 CRC 오류 발생한 코딩 블록을 해당 HARQ processor로 다시 전달하고 502-5단계로 진행한다. 상기 502-5단계에서 상기 물리계층 엔터티(310)는 상기 라우팅부(411)로 파라미터 셋 2가 삽입된 PHY-DATA-IND(417)을 전달하고 하기에서 설명할 806단계로 진행한다.
또한, 상기 502단계에서 상기 수신한 코딩 블록이 재전송 코딩 블록이 아닐 경우, 상기 물리계층 엔터티(310)는 503단계로 진행한다. 상기 503단계에서 상기 물리 계층 엔터티(310)는 상기 코딩 블록에 대한 CRC 연산을 수행하여 CRC 오류가발생하였는지를 검사한다. 상기 검사 결과 상기 코딩 블록에 대해 CRC 오류가 발생한 것으로 판명된 경우, 상기 물리 계층 엔터티(310)는 503-1단계로 진행하여 상기 코딩 블록을 해당 HARQ processor로 전달하고 503-2단계로 진행한다. 상기 503-2단계에서 상기 물리계층 엔터티(310)는 상기 라우팅부(411)로 파라미터 셋 3이 삽입된 PHY-DATA-IND(417)을 전달하고 하기에서 설명할 806단계로 진행한다. 한편, 상기 503단계에서 검사 결과 상기 CRC 오류가 발생하지 않은 것으로 판단되면, 상기 물리계층 엔터티(310)는 504단계로 진행하여 상기 라우팅부(411)로 파라미터 셋 4가 삽입된 PHY-DATA-IND(417)을 전달하고 하기에서 설명할 806단계로 진행한다.
여기서, 상기 도 5를 설명하며 사용된 상기 PHY-DATA-IND(417)에 삽입되는 파라미터 셋들, 즉 파라미터 셋 1, 파라미터 셋 2, 파라미터 셋 3, 파라미터 셋 4는 하기 표1에 나타낸 바와 같다.
상기 파라미터 셋 1에서 TBS는 소프트 컴바이닝에 성공한 상위 계층 데이터들을 의미하며, 코딩 블록과 대응된다. TFI는 상기 TBS의 크기와, TBS를 구성하는 TB의 크기에 대한 논리적 식별자이다. CRC 결과는 'success'로 셋되며, HARQ processor 상태는 해당 PHY-DATA-IND(417)가 라우팅부(411)로 전달되는 시점에, HARQ processor들에 코딩된 블록이 하나라도 저장되어 있으면 'processing'으로, 하나도 없으면 'clear'로 세팅된다. 그리고 상기 소프트 컴바이닝(Soft combining) 여부는 'Y'로 셋되고, 채널 번호에는 해당 코딩 블록의 채널 번호가 기입된다.
상기 파라미터 셋 2에는 해당 시점에 상기 라우팅부(411)로 전달될 상위 계층 데이터가 존재하지 않으므로, TBS는 포함되지 않는다. TFI는 HARQ processor에 저장되어 있는 코딩블록에 대응되는 TBS와 TB의 크기에 대한 정보가 기입된다. 상기 CRC 결과는 상기에서 설명한 502-2단계의 결과에 따라 'fail'로 설정된다. HARQ processor 상태와 소프트 컴바이닝(soft combining) 여부, 채널 번호는 파라미터 셋 1과 동일한 의미를 가진다.
상기 파라미터 셋 3과 파라미터 셋 4의 파라미터들도 마찬가지로 설정된다. 상기 파라미터 셋들에서 CRC 결과는 TB별로 주어질 수 도 있고, TBS별로 주어질 수도 있다. 상기 CRC 결과는 TBS 별로 주어진 것으로 가정하였다. 그러나 CRC결과가 TB별로 주어질 경우, 그 TB이 포함된 TBS의 TB들 중 하나라도 'fail'일 경우, 상기 라우팅부(411)는 TBS 전체가 'fail'인 것으로 간주한다.
다음으로 상기 라우팅부(411)의 동작을 도 6을 참조하여 설명하기로 한다.
상기 도 6은 본 발명의 또 다른 실시예에 따른 라우팅부의 동작 과정을 도시한 순서도이다.
601단계에서 상기 라우팅부(411)로 PHY-DATA-IND(417)가 입력되면, 상기 라우팅부(411)는 HARQ processor 상태 파라미터와 CRC 결과 파라미터를 검사하고 602단계로 진행한다. 상기 602단계에서 상기 라우팅부(411)는 상기 HARQ processor 파라미터에서 나타내는 상태와 상기 CRC 결과 파라미터에서 나타내는 상태를 검사하여 HARQ processor 상태가 'clear'으로, CRC결과가 'success'로 세팅되어 있으면, 상기 라우팅부(411)는 602-1단계로 진행하여 상기 PHY-DATA-IND(417)에 포함되어 있던 TBS, TFI, CRC 결과를 MAC-h 엔터티(320)로 전달한 후 602-2단계로 진행한다. 상기 602-2단계에서 상기 라우팅부(411)는 상기 HARQ processor 상태, soft combining 여부, 채널 번호 파라미터는 버리고 806단계로 진행한다.
또한, 상기 602단계에서 상기 HARQ processor 파라미터에서 나타내는 상태와 상기 CRC 결과 파라미터에서 나타내는 상태가 각각 'clear' 및 'success'로 세팅되어 있지 않을 경우 상기 라우팅부(411)는 603단계로 진행한다. 상기 603단계에서 상기 라우팅부(411)는 상기 HARQ processor 상태가 clear으로, CRC결과가 fail로 세팅되어 있는지 검사하고, 상기 HARQ processor 상태가 clearing으로, CRC결과가 fail로 세팅되어 있을 경우 603-1단계로 진행한다. 상기 603-1단계에서 상기 라우팅부(411)는 상기 PHY-DATA-IND(417)에 포함되어 있는 TFI, CRC 결과, HARQ processor 상태, soft combining 여부, 채널 번호 파라미터를 재순서 버퍼 제어기(413)로 전달하고 806단계로 진행한다.
또한, 상기 603단계에서 상기 HARQ processor 파라미터에서 나타내는 상태와상기 CRC 결과 파라미터에서 나타내는 상태가 각각 'clear' 및 'fail'로 세팅되어 있지 않을 경우 상기 라우팅부(411)는 604단계로 진행한다. 상기 604단계에서 상기 라우팅부(411)는 상기 HARQ processor 상태가 processing으로, CRC결과 상태가 success로 세팅되어 있는지를 검사한다. 상기 검사 결과 상기 HARQ processor 상태가 processing으로, CRC결과 상태가 success로 세팅되어 있을 경우 상기 라우팅부(411)는 604-1단계로 진행한다.상기 604-1단계에서 상기 라우팅부(411)는 상기 PHY-DATA-IND(417)에 포함되어 있는 TFI, CRC 결과, HARQ processor 상태, soft combining 여부, 채널 번호 파라미터를 재순서 버퍼 제어기(413)로 전달하고 604-2단계로 진행한다. 상기 604-2단계에서 상기 라우팅부(411)는 상기 PHY-DATA-IND(417)에 포함되어 있는 TBS와 채널 번호 파라미터는 재순서 버퍼(450)로 전달하고 806단계로 진행한다.
또한, 상기 604단계에서 상기 HARQ processor 파라미터에서 나타내는 상태와 상기 CRC 결과 파라미터에서 나타내는 상태가 각각 'processing' 및 'success'로 세팅되어 있지 않을 경우, 즉 상기 HARQ processor 상태가 processing으로, CRC결과가 fail로 셋 되어 있으면 상기 라우팅부(411)는 605단계로 진행한다. 상기 605단계에서 상기 라우팅부(411)는 상기 PHY-DATA-IND(417)에 포함되어 있는 TFI, CRC 결과, HARQ processor 상태, soft combining 여부, 채널 번호 파라미터를 상기 재순서 버퍼 제어기(413)로 전달한다. 여기서 상기 재순서 버퍼(415)는 순서 뒤바뀜 현상이 일어난, 즉 일련된 시퀀스 번호대로 수신되지 않은 TBS 들을 임시로 저장하는 버퍼이며, 상기 재순서 버퍼 제어기(413)의 제어에 따라 TBS의 순서를 재구성한다. 상기 재순서 버퍼 제어기(413)는 MAC-h 엔터티(320)로 TFI와 CRC 결과값을 전달한다.
그리고 하기에서 설명할 재순서 버퍼 제어기(413)에서 생성하는 위치 매트릭스와 재순서 버퍼(415)에서 생성하는 포인터 매트릭스의 갱신 방법은, n-channel SAW HARQ 가 어떤 모드에서 동작되는가에 따라 달라진다는 점을 유의하여야 한다.
상기 재순서 버퍼 제어기(413)는 상기 라우팅부(411)에서 전달받은 파라미터들을이용해서 HARQ Status 변수 관리, 위치 매트릭스(Position Matrix) 생성 및 갱신, 재순서 버퍼(415)로 오류 통보 신호 및 전달 통보 신호 전송. MAC-h 엔터티(320)로 TFI 및 CRC 결과 전달을 수행한다. 여기서, 상기 TFI는 상기 라우팅부(411)에서 전달받은 값을 그대로 전달한다. HARQ status 변수는 최초 'empty'로 초기화되며, HARQ processor 상태 파라미터가 'processing'으로 설정된 PHY-DATA-IND(417)이 수신되면, 'occupied'로 세팅된다. 상기 HARQ processor 상태 파라미터가 'clear'로 설정된 PHY-DATA-IND(417)이 수신되면, 'empty'로 리셋된다. 상기 HARQ status 변수는, 임의의 PHY-DATA-IND(417)를 수신한 재순서 버퍼 제어기(413)가 위치매트릭스를 생성해야 할 지 여부를 지시한다.
그러면 상기 위치 매트릭스 및 포인터 매트릭스의 원소 값 설정 및 갱신 과정을 도 7을 참조하여 설명하기로 한다.
상기 도 7은 본 발명의 또 다른 실시예에 따른 위치 매트릭스 및 포인터 매트릭스천이 상태를 도시한도면이다. 상기 도 7에서 도시한 a가 위치 매트릭스를, b가 포인터 매트릭스를 나타낸다. 상기 위치 매트릭스는 a에 도시한 바와 같이 열은채널 번호, 행은 순차적으로 증가하는 일련번호로 구성된다. 그리고 하기에서 더 상세히 설명하겠지만 상기 위치 매트릭스를 형성하는 각 원소들은 다음과 같이 그 상태에 따른 개의 원소값, 즉 R, P, N으로 저장된다. 상기 R은 PHY-DATA-IND(417)에 삽입되어 있는 TBS와 대응되고, P는 물리계층 엔터티(310)의 HARQ processor에 저장되어 있는 코딩 블록과 대응되며 해당 코딩 블록이 soft combining에 성공해서 MAC-h 엔터티(320)로 전달되면 R로 갱신되며, N은 향후 P또는 R로 재설정된다. 상기 재순서 버퍼 제어기(413)는 HARQ status 변수가 'empty'에서 'occupied'로 바뀌는 시점에서 상기 위치 매트릭스를 생성한다. 또 한 상기 HARQ status 변수가 'occupied'에서 'empty'로 바뀌는 시점에서 상기 위치 매트릭스를 제거한다. 상기 HARQ status가 'empty'인 상태에서 수신한 임의의 PHY-DATA-IND(417)의 HARQ processor 상태 파라미터가 'processing'으로 설정되어 있고 상기 PHY-DATA-IND(417)의 채널 번호 파라미터가 n이라면, HARQ status 변수는 'occupied'로 바뀌고 이에 따라 위치매트릭스가 생성된 뒤 PSS(1,n)이 위치 매트릭스의 최초 원소가 되며, 그 원소값은 P로 설정된다. PSS(1,1)에서 PSS(1,n-1)까지의 원소들은 위치 매트릭스 상에서 값을 가지지 않는다. 만약 n-channel SAW HARQ에 N개의 채널이 사용된다면, 열의 개수는 N이 된다.
그러면 상기 위치 매트릭스 원소값 갱신 과정을 상세히 설명히기로 한다.
상기 위치 매트릭스 원소값은 PHY-DATA-IND(417)가 도착할 때 마다 갱신된다. 즉, 상기 PHY-DATA-IND(417)이 도착할 때 마다 상기 위치 매트릭스의 원소값들은 상기 도의 7 a에 도시되어 있는 바와 같이 순서대로 하나씩 생성된다. 이 때 각원소의 열은 해당 PHY-DATA-IND(417)의 채널번호와 일치한다. 만약 CRC 결과 파라미터가 'fail', soft combining 여부 파라미터가 'N'으로 설정되어 있다면, 상기 위치 매트릭스의 해당 원소는 P로 설정된다. 또한 상기 CRC 결과 파라미터가 'fail', soft combining 여부 파라미터가 'Y'로 설정되어 있다면, 상기 위치 매트릭스의 해당 원소는 N으로 설정된다. 또한 상기 CRC 결과 파라미터가 'success', soft combining 여부 파라미터가 'N'으로 설정되어 있다면, 상기 위치 매트릭스의 해당 원소는 R로 설정된다. 또한 상기 CRC 결과 파라미터가 'success', soft combining 여부 파라미터가 'Y'로, 채널 번호 파라미터가 x로 설정되어 있다면, 상기 위치 매트릭스의 해당 원소는 N으로 설정되고, 해당 원소와 동일한 열에 속한 원소 중 P로 설정되어 있던 원소의 원소값을 R로 변경한다. 이 후 상기 해당 원소와 동일한 열에 속한 P로 설정되어 있던 원소를 PSS(P/N_to_R)로 표시하기로 하며, 하나의 열에 존재할 수 있는 P의 최대 개수는 1이다. 하기 PS4 명명된 갱신 규칙은 재설정에 관한 규칙이며, 후에 참조하기 위해 PS4로 명명한다.
PS4. 여기서, 상기 PSS(P/N_to_R)이 첫 번째 행에 위치하며, 좌측에 원소가 존재하지 않을 경우(이하 PSS_first로 표기), 즉 PSS(P/N_to_R)이 PSS(1,N)이고 PSS(1,1)에서 PSS(1,N-1)이 상기 위치 매트릭스에 존재하지 않을 경우 상기 위치 매트릭스는 다음과 같이 갱신된다.
PS4-1.상기 PSS(P/N_to_R) 이 후 원소 중, P 또는 N으로 설정되어 있는 첫 번째 원소까지 모든 원소와 PSS(P/N_to_R)을 위치 매트릭스에서 제거한다.
PS4-2.상기 제거되지 않고 남은 원소들의 열은 그대로 두고, 행은 최대한 작은 수로 변경한다. 예를 들어 남은 원소들이 PSS(3,1) 에서 PS(3,3) 까지라면 이 들을 PSS(1,1) 에서 PSS(1,3)으로 변경한다.
그리고 P는 존재하지 않고, N은 존재하는 열에 대해서는 해당 열과 채널 번호가 대응되는 PHY-DATA-IND(417)가 도착할 때 마다, 해당 원소를 최상위 N부터 대응시킨다. 예를 들어, PSS(1,2), PSS(2,2), PSS(3,2)가 N으로 설정되어 있으며, 2 열에 P가 존재하지 않을 때, 채널 번호 파라미터가 2로 설정되어 있는 PHY-DATA-IND(417)가 도착되었다면, 위치 매트릭스 PSS(1,2)가 해당 TBS와 대응된다. 즉 상기 PHY-DATA-IND(417)의 CRC 결과 파라미터가 'fail'이라면 PSS(1,2)는 P로 설정되고, 'success' 라면 PSS(1,2)는 R로 설정된다. 또한 상기 수신한 PHY-DATA-IND(417)의 HARQ processor 상태 파라미터가 'clear'로 설정된 경우, 상기 위치 매트릭스는 제거되고, HARQ status 변수는 'empty'가 된다.
또한 상기 재순서 버퍼 제어기(413)는 이벤트 1(Event 1)이 발생할 때 마다 상기 재순서 버퍼(415)로 오류 통보 신호를 전송한다. 여기서, 상기 이벤트 1(Event 1)은 상기 재순서 버퍼 제어기(413)이 CRC 결과 파라미터가 'fail'로 설정된 임의의 PHY-DATA-IND(417)을 수신하는 경우를 나타낸다. 상기 이벤트 1이 발생하면, 위치 매트릭스의 해당 원소가 P또는 N으로 갱신되며, 오류 통보 신호에는 해당 원소의 위치 정보가 삽입된다. 즉, PSS(n,m)이 P또는 N으로 설정되면, 오류 통보 신호에 상기 n과 m 이 함께 전송된다. 또한, 상기 재순서 버퍼 제어기(413)는 이벤트 2(Event 2)가 발생할 때 마다 상기 재순서 버퍼(415)로 전달 통보 신호를 전송한다. 여기서, 상기 이벤트 2는 CRC 결과 파라미터가 'success'로, softcombining 여부 파라미터가 'Y'로 설정된 PHY-DATA-IND(417)를 수신하는 경우를 나타낸다. 상기 이벤트 2가 발생하면 상기 위치 매트릭스의 해당 원소는 N으로, PSS(P/N_to_R)은 R로 설정되며, 상기 전달 통보 신호에는 PSS(P/N_to_R)의 매트릭스상의 위치가 함께 전송된다. 상기 이벤트 2가 발생하고, PSS(P/N_to_R)이 PSS_first라면 상기 재순서 버퍼(415)에서 순서 뒤바뀜 현상이 해결된, 즉 위치 매트릭스에서 일련된 순서를 가지는 TBS들이 MAC-h 엔터티(320)로 전달된다. 이 때 상기 재순서 버퍼 제어기(413)는 상기 TBS들과 함께 상기 TBS들 각각에 대응되는 TFI, CRC 결과 파라미터를 전송한다. 이 때 상기 CRC 결과 파라미터에는 해당 TBS의 최종 CRC 결과값을 기입한다.
그러면 여기서 상기 재순서 버퍼 제어기(413)의 동작을 도 8a 및 도 8b를 참조하여 설명하기로 한다. 상기 도 8a 및 도 8b는 본 발명의 또 다른 실시예에 따른 재순서 버퍼 제어기의 동작 과정을 도시한 순서도이다. 801 단계에서 TFI, CRC 결과값, HARQ processor 상태, 채널 번호, soft combining 여부를 타나태는 파라미터들이 입력되면, 즉 상기 라우팅부(411)에서 전송한 상기 물리계층 엔터티(310)에서 전송한 PHY-DATA-IND(417)가 입력되면 상기 재순서 버퍼 제어기(413)는 802단계로 진행하여 HARQ status 변수와 HARQ processor 상태 파라미터를 검사한다. 상기 검사 결과 상기 HARQ status 변수가 'empty'로 설정되어 있고, HARQ processor 상태가 'clear'로 설정되어 있다면 상기 재순서 버퍼 제어기(413)는 상기 파라미터들을 무시하고 어떤 동작도 취하지 않고 종료한다.
상기 802단계에서 상기 검사 결과 상기 HARQ status 변수가 'empty'로 설정되어 있고, HARQ processor 상태가 'clear'로 설정되어 있지 않다면 상기 재순서 버퍼 제어기(413)는 803단계로 진행한다. 상기 803단계에서 상기 재순서 버퍼 제어기(413)는 상기 HARQ status 변수가 'empty'로 설정되어 있고, HARQ processor 상태가 'processing'으로 설정되어 있는지 검사 한다. 상기 검사 결과 상기 HARQ status 변수가 'empty'로 설정되어 있고, HARQ processor 상태가 'processing'으로 설정되어 있다면 803-1단계로 진행하여 위치 매트릭스를 생성하여 상기 위치 매트릭스의 첫번째 원소(PSS_first)를 PSS(1,채널 번호)의 위치에 P로 설정하고 803-2단계로 진행한다. 상기 803-2단계에서 상기 재순서 버퍼 제어기(413)는 해당 원소의 TFI를 저장하고 PSS_first의 위치와 값(1,채널 번호, P)이 포함된 오류 통보 신호를 상기 재순서 버퍼로 전송하고 종료한다.
상기 803단계에서 상기 검사 결과 상기 HARQ status 변수가 'empty'로 설정되어 있고, HARQ processor 상태가 'processing'로 설정되어 있지 않다면 상기 재순서 버퍼 제어기(413)는 804단계로 진행한다. 상기 804단계에서 상기 재순서 버퍼 제어기(413)는 상기 HARQ status가 'occupied'로 설정되어 있고, CRC 결과값이 'fail'으로 설정되어 있는지 검사한다. 상기 검사 결과 상기 HARQ status가 'occupied'로 설정되어 있고, CRC 결과값이 'fail'으로 설정되어 있다면 상기 재순서 버퍼 제어기(413)는 804-1단계로 진행한다. 상기 804-1단계에서 상기 재순서 버퍼 제어기(413)는 상기 위치 매트릭스 갱신 규칙에 의해 위치 매트릭스를 갱신하고 804-2단계로 진행한다. 상기 804-2단계에서 상기 재순서 버퍼 제어기(413)는 해당 원소의 TFI를 저장하고, 해당 원소의 위치와 값을 포함하는 오류 통보 신호를 상기재순서 버퍼(415)로 전송하고 종료한다.
상기 804단계에서 상기 검사 결과 상기 HARQ status 변수가 'occupied'로 설정되어 있고, HARQ processor 상태가 'fail'로 설정되어 있지 않다면 상기 재순서 버퍼 제어기(413)는 805단계로 진행한다. 상기 805단계에서 상기 재순서 버퍼 제어기(413)는 상기 HARQ status가 'occupied'로, CRC 결과값이 'success'로 soft combining 여부가 'N'로 설정되어 있는지 검사한다. 상기 검사 결과 상기 HARQ status가 'occupied'로, CRC 결과값이 'success'로 soft combining 여부가 'N'로 설정되어 있다면 상기 재순서 버퍼 제어기(413)는 805-1단계로 진행한다. 상기 805-1단계에서 상기 재순서 버퍼 제어기(413)는 동일한 채널 번호에 해당하는 열에 P로 설정된 원소가 존재하는 검사한다. 상기 검사 결과 만약 P로 설정된 원소가 있다면, 상기 재순서 버퍼 제어기(413)는 805-3단계로 진행한다. 상기 805-3단계에서 상기 재순서 버퍼 제어기(413)는 해당 시점에서 생성되어야 할 PSS원소(PSS_update)를 생성하고 R로 설정하고 동시에 805-4단계에서 상기 새로 생성된 PSS 원소와 대응하는 TFI를 저장한 후 종료한다. 일 예로 PSS_update를 예를 들어 설명하면, 위치 매트릭스의 PSS(2,2)까지 생성된 상황에서 수신한 파라미터들 중 채널 번호 파라미터가 3 이었다면, PSS_update는 PSS(2,3)이 된다. 만약 위치 매트릭스가 PSS(2,4)까지 생성된 상황에서 수신한 파라미터들 중 채널 번호 파라미터가 1이었다면, PSS_update는 PSS(3,1)이 된다. 한편, 상기 805-1 단계에서 해당 열에 P로 설정된 원소가 없다면, 상기 재순서 버퍼 제어기(413)는 805-2단계로 진행한다. 상기 805-2단계에서 상기 재순서 버퍼 제어기(413)는 상기 해당 채널 번호에 해당하는 열 중 최상단 열에 대응되는 원소를 R로 설정하고 TFI를 저장한 후 종료한다. 이 때 PSS_update는 생성되지 않는다.
상기 805단계에서 상기 검사 결과 상기 HARQ status 변수가 'occupied'로, CRC 결과값 상태가 'fail'로, 소프트 컴바이닝 여부 상태가 'N'으로 설정되어 있지 않다면 상기 재순서 버퍼 제어기(413)는 806단계로 진행한다. 상기 806단계에서 상기 재순서 버퍼 제어기(413)는 상기 HARQ status가 'occupied'로, CRC 결과값이 'success'로 soft combining 여부가 'Y'로 설정되어 있는지 검사한다. 상기 검사 결과 HARQ status가 'occupied'로, CRC 결과값이 'success'로 soft combining 여부가 'Y'로 설정되어 있을 경우 상기 재순서 버퍼 제어기(413)는 807단계로 진행한다. 상기 807단계에서 상기 재순서 버퍼 제어기(413)는 해당 시점에서 갱신되는 원소(PSS_updated)는 N으로 설정하고, PSS(P/N_to_R)은 R로 재설정하고 808단계로 진행한다. 상기 808단계에서 상기 재순서 버퍼 제어기(413)는 PSS_updated의 위치와 값을 포함하는 전달 통보 신호를 전송하고, 해당 원소(PSS_updated)의 TFI를 저장한 후 809단계로 진행한다. 상기 809단계에서 상기 재순서 버퍼 제어기(413)는 상기 PSS(P/N_to_R)이 첫번째 행에 위치하고 있으며 좌측에 다른 원소가 존재하지 않는 원소(PSS_first)인지를 검사한다. 상기 검사 결과 상기 PSS(P/N_to_R)이 첫번째 행에 위치하고 있으며 좌측에 다른 원소가 존재하지 않는 원소(PSS_first)일 경우 상기 재순서 버퍼 제어기(413)는 809-1단계로 진행한다. 상기 809-1단계에서 상기 재순서 버퍼 제어기(413)는 위치 매트릭스 갱신 규칙 PS4와 같이 위치 매트릭스를 재설정하고 809-2단계로 진행한다. 상기 809-2단계에서 상기 재순서 버퍼 제어기(413)는 상기 재순서 버퍼(415)에 저장되어 있는 순서 뒤바뀜 현상이 해결된, 즉 일련된 시퀀스 번호들을 가지는 TBS 들이 상기 MAC-h 엔터티(320)로 전달하도록 제어하고, 상기 전송되는 TBS 들의 TFI와 CRC 결과값을 함께 전달하고 종료한다. 다시 말하면 상기 재순서 버퍼 제어기(413)는 위치 매트릭스 갱신 과정에서 상기 위치 매트릭스에서 제거되는 원소들에 해당하는 TFI들과 CRC 결과값들을 상기 MAC-h 엔터티(320)로 전달한다.
그러면, 상기 위치 매트릭스 및 포인터 매트릭스의 상태 천이 과정의 일 예를 도 9 및 도 10을 참조하여 설명하기로 한다.
상기 도 9는 본 발명의 또 다른 실시예에 따른 위치 매트릭스 천이 상태의 일 예를 도시한 도면이다. 상기 도 9에 도시한 a는 코딩 블록들이 UE(130)의 물리계층 엔터티(310)에 도착하는 시점을 나타내고, 9b는 상기 9a의 도착 시점 t0에서 t1까지의 위치 매트릭스 구조를, c는 시점 t2까지의 위치 매트릭스 구조를, 9d는 t3까지의 위치 매트릭스 구조를, e는 위치 매트릭스의 재설정을,f는 위치 매트릭스의 재설정후의 구조를 나타낸다.
상기 도 9를 참조하면, UE(130)의 물리계층 엔터티(310)에 HARQ processor가 4개 설정되어 있으며, 각 HARQ processor들은 채널 1, 채널 2, 채널 3, 채널 4를 각각 할당받았고, 상기 재순서 버퍼 제어기(413)의 HARQ status는 'empty'로 설정되어 있다고 가정한다. 상기 도 9의 a에서 시점 t0에서 t1까지 3개의 코딩 블록들이 도착했으며, 채널 2에서 코딩 블록에 최초로 오류가 발생하였다. 상기 채널 1을 통해 1번 코딩 블록이 수신되면, 상기 UE(130)의 물리계층 엔터티(310)는 CRC연산을 수행하고, 상기 CRC 연산 결과 오류가 발생하지 않은 것으로 판단하고, HARQ processor에 코딩 블록이 저장되어 있지 않은 것을 확인하면 파라미터 셋 4로 구성된 PHY-DATA-IND(417)을 라우팅부(411)로 전달한다. 여기서, 상기 파라미터 셋 4 = {TBS, TFI, CRC 결과값: success, HARQ processor 상태: clear, 채널 번호 : 1, soft combining 여부 : N}로 설정된다. 상기 라우팅부(411)는 수신한 PHY-DATA-IND(417)의 파라미터들을 검사하고, HARQ processor 상태가 'clear', CRC 결과값이 'success'로 설정되어 있으므로, TBS, TFI, CRC 결과 값은 MAC-h 엔터티(320)로 전달하고 나머지 파라미터들은 폐기한다.
상기 채널 2를 통해 2번 코딩 블록이 수신되면, 상기 UE(130)의 물리계층 엔터티(310)는 CRC 연산을 수행하고, 상기 CRC 연산 결과 상기 채널 2를 통해 수신한 2번 코딩 블록에 오류가 발생한 것으로 판단한다. 그러면 상기 물리계층 엔터티(310)는 해당 코딩블록을 HARQ processor 2로 전달하고, 파라미터 셋 3를 가지는 PHY-DATA-IND(417)를 상기 라우팅부(411)로 전달한다. 여기서, 상기 파라미터 셋 3 = {TFI, CRC 결과값: fail, HARQ processor 상태: processing, 채널 번호 : 2, soft combining 여부 : N}로 설정된다. 상기 HARQ processor 상태는 상기 채널 2에서 수신한 2번 코딩 블록이 HARQ processor 2에 저장되어 있으므로 'processing'으로 설정된다. 상기 라우팅부(411)는 상기 PHY-DATA-IND(417)을 수신하여 그 파라미터들을 검사한다. HARQ processor 상태가 'processing', CRC 결과값이 'fail'이므로 아래 파라미터들을 재순서 버퍼 제어기(413)로 전달한다. 이때 전달되는 파라미터들은 {TFI, CRC 결과값: fail, HARQ processor 상태: processing,채널 번호 : 2, soft combining 여부 : N}이다. 상기 재순서 버퍼 제어기(413)는 자신이 관리하는 HARQ status 변수가 'empty'로 설정되어 있고, 수신한 HARQ processor 상태 파라미터가 'processing'으로 설정되어 있으므로 위치 매트릭스를 생성한다. 상기 생성된 위치 매트릭스에서 PSS_first는 PSS(1,2)가 되고, 값은 P로 설정된다. 상기 재순서 버퍼 제어기(413)는 수신한 TFI값을 PSS(1,2)와 대응시켜서 저장하고, PSS(1,2)는 P라는 오류 통보 신호를 재순서 버퍼(415)로 전송하고, HARQ status 변수를 'occupied'로 재설정한다.
상기 채널 3을 통해 3번 코딩 블록이 수신되면, 상기 UE(130)의 물리계층 엔터티(310)는 CRC 연산을 수행하고, 상기 CRC 연산 결과 상기 3번 코딩 블록에 대해 오류가 발생하지 않은 것으로 판단한다. 상기 3번 채널을 통해 수신한 코딩 블록이 재전송된 코딩블록이 아니고 오류가 발생하지 않았으므로 파라미터 셋 4로 구성된 PHY-DATA-IND(417)을 상기 라우팅부(411)로 전달한다. 여기서, 상기 파라미터 셋 4 = {TBS, TFI, CRC 결과값: success, HARQ processor 상태: processing, 채널 번호 : 3, soft combining 여부 : N}로 설정된다. 상기 라우팅부(411)는 상기 물리계층 엔터티(310)로부터 PHY-DATA-IND(417)을 수신하여 그 파라미터들을 검사한다. 상기 라우팅부(411)는 상기 HARQ processor 상태가 'processing', CRC 결과값이 'success'이므로, TBS는 상기 재순서 버퍼(415)로, {TFI, CRC 결과값: success, HARQ processor 상태: processing, 채널 번호 : 3, soft combining 여부 : N} 파라미터들은 상기 재순서 버퍼 제어기(413)로 전달한다. 상기 재순서 버퍼제어기(413)는 자신이 관리하는 HARQ status 변수가 'occupied'로 설정되어 있고, 수신한 CRC 결과값이 'success', soft combining 여부는 'N'으로 설정되어 있으므로, 위치 매트릭스의 PSS(1,3)을 R로 설정하고, 수신한 TFI값을 PSS(1,3)와 대응시켜서 저장한다.
이렇게, 최초 TTI 동안 코딩 블록들을 수신하게 되면 상기 도 9의 b와 같이 위치 매트릭스가 생성된다. t1에서 t2 사이에서는 4번 코딩 블록과 5번 코딩 블록에는 오류가 발생하지 않았으나, 2번 코딩 블록과 7번 코딩 블록에는 오류가 발생하였다. n-channel SAW의 가변 채널 할당 방식에서 동작하고 있으므로, 두번째 3번 채널에서 6번 코딩 블록이 아니라 7번 코딩 블록이 전송 및 수신되었다. 상기 2번 코딩 블록에 오류가 발생하였으며, 7번 코딩 블록에 오류가 발생하였으므로, PSS(1,4), PSS(2,1), PSS(2,3)는 각각 R, R, P로 설정된다. PSS(2,2)가 N으로 설정되는 과정은 다음과 같다. 2번째 2번 채널을 통해 2번 코딩 블록을 수신한 UE의 물리계층 엔터티는, HARQ processor 2에 코딩된 블록이 저장되어 있으므로, 두 코딩된 블록의 soft combining을 수행하고, CRC 연산을 실행한다. CRC 연산 결과가 오류가 존재함을 지시하면, 물리계층 엔터티는 soft combine된 코딩된 블록을 HARQ processor 2로 전달하고, 파라미터 셋2로 구성된 PHY-DATA-IND을 MAC 엔터티로 전달한다. 여기서, 상기 파라미터 셋 2 = {TFI, CRC 결과값: fail, HARQ processor 상태: processing, 채널 번호 : 2, soft combining 여부 :Y}로 설정된다. 상기 라우팅부(411)는 상기 PHY-DATA-IND(417)의 HARQ processor 상태가 'processing', CRC 결과가 'fail'이므로 {TFI, CRC 결과값: fail, HARQ processor 상태: processing, 채널 번호 : 2, soft combining 여부 :Y}와 같은 파라미터들을 상기재순서 버퍼 제어기(413)로 전달한다. 상기 재순서 버퍼 제어기(413)는 HARQ status 변수가 'occupied'로 설정되어 있고, CRC 결과값이 'fail'로 설정되어 있으며, soft combining 여부 파라미터가 'Y'로 설정되어 있으므로, PSS(2,2)를 N으로 설정하고, 오류 통보 신호를 상기 재순서 버퍼(415)로 전달하고, TFI를 저장한다.
그리고 이후 t2에서 t3까지 다시 6개의 코딩 블록이 도착할 때 마다 상기 위치 매트릭스는 도 9의 d와 같이 갱신된다. 이후 t3에서 입력된 2번 코딩 블록이 HARQ processor 2에서 소프트 컴바이닝한 것이 CRC 오류 검사를 통해 오류가 발생하지 않았다고 판단되면, 상기 위치 매트릭스는 상기 도 9의 e, f와 같이 갱신된 뒤 재설정된다. 이를 상세히 설명하면 상기 t3에서 4번째 2번 채널을 통해 2번 코딩 블록이 상기 UE(130)의 물리계층 엔터티(310)로 입력되면, 상기 물리계층엔터티(310)는 HARQ processor 2에 미리 저장되어 있는 코딩 블록과 소프트 컴바이닝한 후에 CRC 연산을 수행한다. 상기 CRC 연산 결과 상기 소프트 컴바이닝한 결과가 오류가 없는 것으로 판명되면 파라미터 셋1으로 구성된 PHY-DATA-IND(417)를 상기 라우팅부(411)로 전달한다. 여기서, 상기 파라미터 셋 1= {TBS, TFI, CRC 결과값: success, HARQ processor 상태: processing, 채널 번호 : 2, soft combining 여부 :Y}로 설정된다. 상기 라우팅부(411)는 상기 수신한 PHY-DATA-IND(417)의 HARQ processor 상태가 'processing', CRC 결과가 'success'로 설정되어 있으므로, TBS는 상기 재순서 버퍼(415)로, {TFI, CRC 결과값: success, HARQ processor 상태: processing, 채널 번호 : 2, soft combining 여부 :Y}와 같은 파라미터들을 상기 재순서 버퍼 제어기(413)로 전달한다.
이에 상기 재순서 버퍼 제어기(413)는, HARQ status 변수가 'occupied'로, CRC 결과값이 'success'로, soft combining 여부가 'Y'로 설정되어 있으므로, 지금 갱신될 PSS 원소인 PSS(4,2)를 N으로 설정하고, 2열에 속한 원소 중 P로 설정되어 있는 원소 P(1,2)를 P에서 R로 변경한다(도 9의 e참조). 상기 P(1,2)가 첫 번째 행에 위치하고 있으며, 좌측에 다른 원소가 존재하지 않으므로, P(1,2) 이 후에 P 또는 N으로 설정되어 있는 최초의 원소인 P(2,2)까지의 모든 원소를 상기 위치 매트릭스에서 제거한다(도 9의 f참조). 이 때 상기 재순서 버퍼 제어기(413)는 'P(1,2)= R'이라는 정보를 담고 있는 전달 통보 신호를 상기 재순서 버퍼(415)로 전송한다. 또한 상기 위치 매트릭스에서 제거된 원소들의 TFI와 CRC 결과값들은 상기 MAC-h 엔터티(320)로 전달된다.
상기 재순서 버퍼(450)의 동작은 다음과 같다.
상기 재순서 버퍼(450)는 TBS를 전달받은 순서, 오류 통보 신호, 전달 통보 신호를 이용해서 포인터 매트릭스를 생성하고 관리한다. 상기 재순서 버퍼(425)는 상기 재순서 버퍼 제어기(413)로부터 전달통보신호를 전달받으면 순서 뒤바뀜 현상이 제거된, 즉 일련된 시퀀스 번호들을 가지는 TBS들이 자신의 버퍼에 저장되어 있을 경우, 이들을 상기 MAC-h엔터티(320)로 전달한다. 그러면, 상기 포인터 매트릭스의 생성과 관리 과정을 도 10을 참조하여 설명하기로 한다.
상기 도 10은 본 발명의 또 다른 실시 예에 따른 포인터 매트릭스 천이 상태의 일 예를 도시한 도면이다. 여기서 상기 포인터 매트릭스의 원소들은 TBS들이 상기 재순서 버퍼(415)에 저장되어 있는 위치를 지정한다.
먼저, 재순서 버퍼 제어기(413)에서 오류통보신호를 전달받을 당시 상기 순서 버퍼(415)에 포인터 매트릭스가 존재하지 않을 경우 상기 도 7의 b와 같은 포인터 매트릭스를 생성한다. 이때 상기 생성되는 포인트 매트릭스는 상기 오류통보신호를 통해서 전달되는 PSS(1,n)의 값을 PTS(1,n)에 대응시킨다. 상기 라우팅부(411)로부터 TBS와 채널번호가 전달되면 상기 채널번호에 해당하는 포인터 매트릭스 원소를 생성한다. 이때 각 TBS에 대응되는 PTS를 R로 설정한다. 그리고 상기 재순서 버퍼 제어기(413)에서 오류통보신호를 전달받으면, 상기 재순서 버퍼(415)는 상기 전달받은 값을 상기 포인터 매트릭스의 해당 PTS 원소에 대응시킨다. 또한, 상기 라우팅부(411)에서 TBS를 전달받고, 상기 재순서 버퍼 제어기(413)에서 전달 통보 신호를 전달받으면 상기 전달 통보 신호에 삽입된 PSS원소 값에 따라 상기 포인터 매트릭스의 PTS 원소 값을 대응시키며, 상기 TBS를 상기 PTS 원소에 대응시킨다. 이 때 상기 전달 통보 신호에는 항상 PSS(P/N_to_R)이 삽입되므로 상기 포인터 매트릭스에서 변하는 값은 항상 R로 변경된다. 상기 갱신 과정이 진행되면, 갱신된 원소의 열에서 아직 생성되지 않은 행 중 최상위 행에 속하는 행의 원소를 생성하고 N을 설정한다. 예를 들어, PTS(1,2)가 R로 변경되었으며, PTS(3,1)까지의 원소만 존재한다면, PTS(3,2)를 새로 생성하고 그 값을 N으로 설정한다. 상기 과정에 의해서 R로 변경된 PTS 원소가 만약 1 행에 위치하고 있으며, 좌측에 다른 원소가 존재하고 있지 않을 경우 다음과 같은 과정을 수행한다.
(1) R로 변경된 원소 이 후의 원소들 중 P 또는 N으로 설정된 최초의 원소까지의 모든 원소에 대응되는 TBS들과 R로 변경된 원소에 대응되는 TBS를 상기 MAC-h엔터티(320)로 전달하고 상기 MAC-h 엔터티(320)로 전달한 원소들을 포인터 매트릭스에서 제거한다.
(2) 상기 포인트 매트릭스에서 제거되지 않고 남은 원소들의 열은 그대로 두고, 행은 최대한 작은 수로 변경한다. 예를 들어 남은 원소들이 PTS(3,1) 에서 PTS(3,3) 까지라면, 이 들을 PTS(1,1) 에서 PTS(1,3)으로 변경한다.
(3) P는 존재하지 않고, N은 존재하는 열에 대해서는, 해당 열과 채널 번호가 대응되는 TBS가 도착할 때마다 해당 TBS의 원소를 최상위 N부터 대응시킨다.
(4) 상기 재순서 버퍼(415)에 TBS가 저장되어 있지 않거나, 포인터 매트릭스에서 모든 원소가 제거되면 상기 포인터 매트릭스는 제거된다.
그래서 상기 도 10의 a는 코딩 블록들이 UE(130)의 물리계층 엔터티(310)에 도착하는 시점을 나타내고, 상기 도10의 b는 시점 t2에서 t5까지의 포인터 매트릭스의 구조를, 상기 도 10의 c는 시점 t7까지의 포인터 매트릭스 구조를, 상기 도 10의 d는 시점 t13까지의 포인터 매트릭스의 구조를, 상기 도 10의 e는 시점 t14까지의 포인터 매트릭스 구조를 , 상기 도 10의 f는 포인터 매트릭스의 재설정 후의 구조를 나타낸다.
상기 도 10을 참조하면, 상기 도10의 a에 나타낸 바와 같이 시점 t2에서 PHY-DATA-IND(417)가 라우팅부(411)에 도착하고, 재순서 버퍼 제어기(413)에서 위치 매트릭스가 생성되면 상기 재순서 버퍼 제어기(413)는 {PSS(1,2) = P}라는 오류통보신호를 상기 재순서 버퍼(415)로 전달한다. 상기 재순서 버퍼(415)는 상기 오류통보신호를 수신함에 따라 포인터 매트릭스를 생성하고, PTS(1,2)를 P로 설정한다. 이 후 t3, t4, t5에서 상기 라우팅부(411)가 상기 재순서 버퍼(415)로 TBS를 전달하면, 상기 재순서 버퍼(415)는 상기 도 10의 b에 나타낸 바와 같이 각 TBS에 대응되는 원소들을 R로 설정한다. t6에서 상기 물리계층 엔터티(310)는 파라미터 셋 2로 구성된 PHY-DATA-IND(417)를 상기 라우팅부(411)로 전달하고, 이에 상기 라우팅부(411)는 다음과 같은 파라미터들, 즉{TFI, CRC 결과값: fail, HARQ processor 상태: processing, 채널 번호 : 2, soft combining 여부 :Y}를 상기 재순서 버퍼 제어기(413)로 전달한다. 상기 재순서 버퍼 제어기(413)는 상기 CRC 결과값이 'fail', soft combining 여부가 'Y'이므로, 해당 시점에서 생성될 PSS 원소 즉, PSS(2,2)를 N으로 설정하고, {PSS(2,2)=N}이라는 오류통보신호를 상기 재순서 버퍼(415)로 전달한다. 상기 재순서 버퍼(415)는 PTS(2,2)를 N으로 설정하고, PTS(2,3)도 해당 시점에 전달받은 오류통보신호를 통해 P로 설정된다.
그리고 t14 에서 상기 물리계층 엔터티(310)가 2번 채널을 통해 전송된 2번 코딩 블록에 대한 soft combining에 성공하면 파라미터 셋 1로 구성된 PHY-DATA-IND(417)를 상기 라우팅부(411)로 전송하고, 상기 라우팅부(411)는 TBS를 상기 재순서 버퍼(415)로 나머지 파라미터들을 재순서 버퍼 제어기(413)로 전달한다. 상기 재순서 버퍼 제어기(413)는 상기 전달받은 파라미터들을 기초로 위치 매트릭스를 갱신하고, {PSS(1,2)=R}이라는 전달 통보 신호를 상기 재순서 버퍼(415)로 전송한다. 그러면 상기 재순서 버퍼(415)는 상기 라우팅부(411)가 전달한 TBS와 PTS(1,2)를 대응시킨다. 상기 전달 통보 신호에 의한 포인터 매트릭스 갱신이므로 상기 포인터 매트릭스 갱신 규칙에 따라 PTS(4,2)를 생성하고 N을 설정한다(도 10의 e 참조). 또한 PTS(1,2)는 포인터 매트릭스의 1 행에 위치하고 있으며, 좌측에 다른 원소가 존재하지 않으므로, 이 후 최초로 N 또는 P로 설정되어 있는 원소 PTS(2,2)까지의 모든 원소 PTS(1,2), PTS(1,3), PTS(1,4), PTS(2,1)에 대응되는 TBS들을 상기 MAC-h 엔터티(320)로 전달하고, 상기 MAC-h 엔터티(320)에 전달한 원소들을 상기 포인터 매트릭스에서 제거한 뒤 나머지 원소들은 1 행 위로 이동시킨다(도 10의 f참조).
지금까지는 상기 n-channel SAW HARQ 방식에서 고정 채널 할당 방식을 사용할 경우를 설명하였다. 이제 다음으로 상기 n-channel SAW HARQ 방식에서 가변 채널 할당 방식을 사용할 경우를 설명하기로 한다.
먼저, 상기 n-channel SAW HARQ 방식에서 상기 가변 채널 할당 방식이 사용된 경우 상기 재순서 버퍼 제어기(413)는 위치 매트릭스 대신 위치 셋(SET)을, 상기 재순서 버퍼(415)는 상기 포인터 매트릭스 대신 포인터 셋(SET)을 생성 및 갱신한다는 점에서 상기 고정 채널 할당 방식과 차이가 존재한다. 상기 재순서 버퍼 제어기(413)의 다른 동작 과정들과 상기 재순서 버퍼(415)의 다른 동작 과정들 및 상기 물리계층 엔터티(310)와 라우팅부(411)의 동작 과정들은 상기 가변 채널 할당방식과 상기 고정 채널 할당 방식이 동일하므로 그 상세한 설명을 생략한다.
그러면 여기서 상기 n-channel SAW HARQ 방식의 가변 채널 할당 방식에서 위치 셋의 갱신과정을 도 12를 참조하여 설명하기로 한다.
상기 도 12는 본 발명의 또 다른 실시 예에 따른 위치 셋 및 포인터 셋 천이 상태를 도시한 도면이다. 먼저, 상기 위치 셋은 상기 도 12의 a에 나타낸 바와 같이 좌측에서 우측으로 순차적으로 증가하는 원소들로 구성된다. 그리고 상기 재순서 버퍼 제어기(413)는 HARQ status 변수가 'empty'에서 'occupied'로 바뀌는 시점에서 상기 위치 셋을 생성하고, 상기 HARQ status 변수가 'occupied'에서 'empty'로 바뀌는 시점에서 상기 생성되어 있는 위치 셋을 제거한다. 또한 상기 재순서 버퍼 제어기(413)는 상기 HARQ status가 'empty'인 상태에서 수신한 임의의 PHY-DATA-IND(417)의 HARQ processor 상태 파라미터가 'processing'으로 설정되어 있고 상기 PHY-DATA-IND(417)의 채널 번호 파라미터가 n이라면, PSS(1)이 상기 위치 셋의 최초 원소로 , 그 원소값은 P로 설정한다. 상기 재순서 버퍼 제어기(413)는 PSS(1)에 대응되는 PHY-DATA-IND(417)의 TFI와 채널 번호를 저장한다. 그리고 상기 재순서 버퍼 제어기(413)는 상기 PHY-DATA-IND(417)가 도착할 때마다 상기 위치 셋을 다음과 같이 갱신한다.
상기 갱신 과정을 설명하면, 우선 상기 PHY-DATA-IND(417)이 도착할 때마다 상기 위치 셋의 원소는 좌에서 우로 순차적으로 하나씩 생성된다. 만약 상기 PHY-DATA-IND(417)의 CRC 결과 파라미터가 'fail', soft combining 여부 파라미터가 'N'으로 설정되어 있다면 상기 재순서 버퍼 제어기(413)는 상기 위치 셋의 해당 원소는 P로 설정하고, 해당 원소의 채널 번호를 저장한다. 만약 상기 CRC 결과 파라미터가 'fail', soft combining 여부 파라미터가 'Y'로 설정되어 있다면 상기 재순서 버퍼 제어기(413)는 상기 위치 셋의 해당 원소를 생성하지 않는다. 만약 상기 CRC 결과 파라미터가 'success', soft combining 여부 파라미터가 'N'으로 설정되어 있다면상기 재순서 버퍼 제어기(413)는 상기 위치 셋의 해당 원소는 R로 설정한다. 만약 상기 CRC 결과 파라미터가 'success', soft combining 여부 파라미터가 'Y'로, 채널 번호 파라미터가 x로 설정되어 있다면 상기 재순서 버퍼 제어기(413)는 상기 위치 셋의 해당 원소는 생성하지 않으며, 상기 채널 번호 x에 대응되고 P로 설정되어 있던 원소를 R로 변경한다. 이후 상기 해당 원소와 동일한 채널번호에 대응되고 P로 설정되어 있던 원소를 PSS(P_to_R)로 표시한다. 만약 상기 PSS(P_to_R)이 최좌측에 위치하면(이하 PSS_first로 표기) 상기 위치 셋은 다음과 같이 갱신된다.
(1) PSS(P_to_R) 이 후 원소들 중 P로 설정되어 있는 첫 번째 원소까지 모든 원소와 PSS(P_to_R)을 상기 위치 셋에서 제거한다. (2) 상기 제거되지 않고 남은 원소들을 최대한 좌측으로 이동시킨다. 예를 들어 남은 원소들이 PSS(3) 에서 PS(7) 까지라면 이 들을 PSS(1) 에서 PSS(5)로 변경한다. (3) 수신한 PHY-DATA-IND(417)의 HARQ processor 상태 파라미터가 'clear'로 설정된 경우 상기 위치 셋은 제거된다.
그리고 상기 재순서 버퍼 제어기(413)는 이벤트 1-1(Event 1-1)이 발생할 때 마다 상기 재순서 버퍼(415)로 오류 통보 신호를 전송한다. 여기서, 상기 이벤트 1-1은 상기 CRC 결과 파라미터가 'fail'로, soft combining 여부가 'N'으로 설정된 임의의 PHY-DATA-IND(417)을 수신하는 경우를 의미한다. 상기 이벤트 1-1이 발생하면 상기 위치 셋의 해당 원소는 P로 설정되게 되며, 오류 통보 신호에는 해당 원소의 위치 정보와 채널 정보가 삽입된다. 즉, PSS(n)이 P로 설정되면, 오류 통보 신호에 n과 함께 상기 PSS(n)에 대응되는 PHY-DATA-IND(417)의 채널번호 파라미터도함께 전송되는 것이다.
또한 상기 재순서 버퍼 제어기(413)는 이벤트 2-2(Event 2-2)가 발생할 때마다 상기 재순서 버퍼(415)로 전달 통보 신호를 전송한다. 여기서, 상기 이벤트 2-2는 상기 CRC 결과 파라미터가 'success'로, soft combining 여부 파라미터가 'Y'로 설정된 PHY-DATA-IND(417)를 수신하는 경우를 의미한다. 상기 이벤트 2-2가 발생하면 상기 위치 셋의 해당 원소는 생성되지 않으며, PSS(P_to_R)은 R로 설정되고, 상기 전달 통보 신호에는 상기 PSS(P_to_R)의 위치와 채널 번호가 함께 전송된다. 또한 상기 이벤트 2-2가 발생하고 상기 PSS(P_to_R)이 PSS_first라면 상기 재순서 버퍼(415)에서 순서 뒤바뀜 현상이 해결된, TBS들이 상기 MAC-h 엔터티(320)로 전달된다. 이 때 상기 재순서 버퍼 제어기(413)는 각 TBS와 대응되는 TFI, CRC 결과 파라미터를 함께 전송하고, 상기 CRC 결과 파라미터에는 해당 TBS의 최종 CRC 결과값을 기입한다.
또한 상기 n-channel SAW HARQ 방식의 가변 채널 할당 방식에서 상기 포인터 셋의 갱신방법은 다음과 같다.
상기 재순서 버퍼(415)는 상기 재순서 버퍼 제어기(413)에서 오류통보신호를 전달받았을 때 상기 포인터 매트릭스가 존재하지 않을 경우 상기 도 12의 b와 같은 포인터 매트릭스를 생성한다. 그리고, 상기 재순서 버퍼(415)는 오류통보신호를 통해서 전달되는 PSS(1) 값을 PTS(1) 값에 대응시킨다. 그리고 상기 라우팅부(411)로부터 TBS가 전달되면 상기 재순서 버퍼(415)는 좌에서 우로 상기 포인터 셋을 채워나간다. 여기서, 상기 각 TBS에 대응되는 PTS를 R로 설정한다. 또한 상기 재순서버퍼(415)는 상기 재순서 버퍼 제어기(413)에서 오류통보신호를 전달받으면 상기 전달받은 값을 해당 PTS 원소에 대응시키고 그 채널 번호를 저장한다. 상기 라우팅부(411)에서 TBS를 전달받고, 상기 재순서 버퍼 제어기(413)에서 전달 통보 신호를 전달받으면 상기 재순서 버퍼(415)는 상기 전달 통보 신호에 삽입된 PSS원소 값에 따라 PTS 원소 값을 대응시키고, 상기 TBS를 상기 PTS 원소에 대응시킨다. 이 때 상기 전달 통보 신호에는 항상 PSS(P_to_R)이 삽입되므로 상기 포인터 셋에서 변하는 값은 항상 R로 변경된다. 상기 포인터 셋의 갱신 과정에 의해서 R로 변경된 PTS 원소가 만약 최좌측에 위치하고 있다면 다음과 같은 과정을 수행한다.
(1) R로 변경된 원소 이 후 원소들 중 P 로 설정된 최초의 원소까지의 모든 원소에 대응되는 TBS들과 R로 변경된 원소에 대응되는 TBS를 상기 MAC-h 엔터티(320)로 전달하고 상기 MAC-h(320)로 전달한 원소들을 상기 포인터 셋에서 제거한다. (2)상기 제거되지 않고 남은 원소들을 최좌측으로 이동시킨다. 예를 들어 남은 원소들이 PTS(3) 에서 PTS(7) 까지라면 이 들을 PTS(1) 에서 PTS(5)로 변경한다.(3) 상기 재순서 버퍼(415)에 TBS가 저장되어 있지 않거나 상기 포인터 셋에서 모든 원소가 제거되면 상기 포인터 셋은 제거된다.
그러면, 상기 n-channel SAW HARQ 방식에서 가변 채널 할당 방식을 사용하는 경우 위치 셋의 생성 및 갱신에 따른 상태 천이 과정을 도 13을 참조하여 설명하기로 한다.
상기 도 13은 본 발명의 또 다른 실시 예에 따른 위치 셋 천이 상태의 일 예를 도시한 도면이다. 특히, 상기 도 13에 도시한 a는 코딩 블록들이 UE(130)의 물리계층 엔터티(310)에 도착하는 시점을 나타내고, 상기 도 13의 b는 상기 도 13의 a에 나타낸 바와 같이 시점 t0에서 t1까지의 위치 셋 구조를, 상기 도 13의 c는 시점 t2까지의 위치 셋 구조를, 도 13의 d는 t3까지의 위치 셋 구조를, 상기 도 13의 e는 위치 셋의 재설정을, 상기 도 13의 f는 위치 셋의 재 설정후의 구조를 나타낸다.
상기 도 13을 참조하면, UE(130)의 물리계층 엔터티(310)에 HARQ processor가 4개 설정되어 있으며, 각 HARQ processor들은 채널 1, 채널 2, 채널 3, 채널 4를 각각 할당받았고, 상기 재순서 버퍼 제어기(413)의 HARQ status는 'empty'로 설정되어 있다고 가정한다. 상기 도 9의 a에서 시점 t0에서 t1까지 3개의 코딩 블록들이 도착했으며, 채널 2에서 코딩 블록에 최초로 오류가 발생하였다. 상기 채널 1을 통해 1번 코딩 블록이 수신되면, 상기 UE(130)의 물리계층 엔터티(310)는 CRC 연산을 수행하고, 상기 CRC 연산 결과 오류가 발생하지 않은 것으로 판단하고, HARQ processor에 코딩 블록이 저장되어 있지 않은 것을 확인하면 파라미터 셋 4로 구성된 PHY-DATA-IND(417)을 라우팅부(411)로 전달한다. 여기서, 상기 파라미터 셋 4 = {TBS, TFI, CRC 결과값: success, HARQ processor 상태: clear, 채널 번호 : 1, soft combining 여부 : N}으로 설정된다. 상기 라우팅부(411)는 수신한 PHY-DATA-IND(417)의 파라미터들을 검사하고, HARQ processor 상태가 'clear', CRC 결과값이 'success'로 설정되어 있으므로, TBS, TFI, CRC 결과 값은 MAC-h 엔터티(320)로 전달하고 나머지 파라미터들은 폐기한다.
상기 채널 2를 통해 2번 코딩 블록이 수신되면, 상기 UE(130)의 물리계층 엔터티(310)는 CRC 연산을 수행하고, 상기 CRC 연산 결과 상기 채널 2를 통해 수신한 2번 코딩 블록에 오류가 발생한 것으로 판단한다. 그러면 상기 물리계층 엔터티(310)는 해당 코딩 블록을 HARQ processor 2로 전달하고, 파라미터 셋 3를 가지는 PHY-DATA-IND(417)를 상기 라우팅부(411)로 전달한다. 여기서, 상기 파라미터 셋 3 = {TFI, CRC 결과값: fail, HARQ processor 상태: processing, 채널 번호 : 2, soft combining 여부 : N}으로 설정된다. 상기 HARQ processor 상태는 상기 채널 2에서 수신한 2번 코딩 블록이 HARQ processor 2에 저장되어 있으므로 'processing'으로 설정된다. 상기 라우팅부(411)는 상기 PHY-DATA-IND(417)을 수신하여 그 파라미터들을 검사한다. HARQ processor 상태가 'processing', CRC 결과값이 'fail'이므로 아래 파라미터들을 재순서 버퍼 제어기(413)로 전달한다. 이때 전달되는 파라미터들은 {TFI, CRC 결과값: fail, HARQ processor 상태: processing, 채널 번호 : 2, soft combining 여부 : N}이다. 상기 재순서 버퍼 제어기(413)는 자신이 관리하는 HARQ status 변수가 'empty'로 설정되어 있고, 수신한 HARQ processor 상태 파라미터가 'processing'으로 설정되어 있으므로 위치 셋을 생성한다. 상기 생성된 위치 셋에서 PSS_first는 PSS(1)가 되고, 값은 P로 설정된다. 상기 재순서 버퍼 제어기(413)는 수신한 TFI값을 PSS(1)와 대응시켜서 저장하고, PSS(1)는 P라는 오류 통보 신호를 재순서 버퍼(415)로 전송하고, HARQ status 변수를 'occupied'로 재설정한다.
상기 채널 3을 통해 3번 코딩 블록이 수신되면, 상기 UE(130)의 물리계층 엔터티(310)는 CRC 연산을 수행하고, 상기 CRC 연산 결과 상기 3번 코딩 블록에 대해오류가 발생하지 않은 것으로 판단한다. 상기 3번 채널을 통해 수신한 코딩 블록이 재전송된 코딩 블록이 아니고 오류가 발생하지 않았으므로 파라미터 셋 4로 구성된 PHY-DATA-IND(417)을 상기 라우팅부(411)로 전달한다. 여기서, 상기 파라미터 셋 4 = {TBS, TFI, CRC 결과값: success, HARQ processor 상태: processing, 채널 번호 : 3, soft combining 여부 : N}으로 설정된다. 상기 라우팅부(411)는 상기 물리계층 엔터티(310)로부터 PHY-DATA-IND(417)을 수신하여 그 파라미터들을 검사한다. 상기 라우팅부(411)는 상기 HARQ processor 상태가 'processing', CRC 결과값이 'success'이므로, TBS는 상기 재순서 버퍼(415)로, {TFI, CRC 결과값: success, HARQ processor 상태: processing, 채널 번호 : 3, soft combining 여부 : N} 파라미터들은 상기 재순서 버퍼 제어기(413)로 전달한다. 상기 재순서 버퍼 제어기(413)는 자신이 관리하는 HARQ status 변수가 'occupied'로 설정되어 있고, 수신한 CRC 결과값이 'success', soft combining 여부는 'N'으로 설정되어 있으므로, 위치 셋의 PSS(2)을 R로 설정하고, 수신한 TFI값을 PSS(2)와 대응시켜서 저장한다.
이렇게, 최초 TTI 동안 코딩 블록들을 수신하게 되면상기 도 13의 b와 같이 위치 셋이 생성된다. t1에서 t2 사이에서는 4번 코딩 블록과 5번 코딩 블록에는 오류가 발생하지 않았으나, 2번 코딩 블록과 6번 코딩 블록에는 오류가 발생하였다. 또한, 상기 n-channel SAW 방식의 가변 채널 할당 방식에서 동작하고 있으므로, 2 번째 3번 채널에서 6번 코딩 블록이 전송 및 수신되었다. 4 번과 5번 코딩 블록에서는 오류가 발생하지 않았으므로, 4번 과 5번 코딩 블록에 대한PHY-DATA-IND(417)의 CRC 결과는 'success', soft combining 여부가 'N'으로 설정되며, 상기 재순서 버퍼 제어기(413)는 해당 파라미터들을 수신하면 PSS(3)과 PSS(4)를 R로 설정한다. 두 번째 2 번 채널로 수신된 2번 코딩 블록에 오류가 발생하였으므로, 해당 PHY-DATA-IND(417)의 CRC 결과는 'fail', soft combining 여부는 'Y'로 설정되며, 상기 재순서 버퍼 제어기(413)는 해당 파라미터를 수신하더라도 새로운 원소를 생성시키지 않는다. 또한, 상기 6번 코딩 블록에 오류가 발생하였으므로, 해당 PHY-DATA-IND(417)에 대한 PSS(5)는 P로 설정된다. 상기와 같은 과정들이 진행되고 나면, 상기 도 13의 c와 같은 위치 셋이 설정된다.
그리고 이후 t2에서 t3까지 다시 6개의 코딩 블록이 도착하였다. 상기에서 설명한 바와 마찬가지로 각 코딩 블록에 대한 CRC 연산이 수행되고, 소프트 컴바이닝이 실행된 뒤, PHY-DATA-IND(417)이 라우팅부(411)에 도착하고, 상기 PHY-DATA-IND(417)이 포함하고 있는 해당 파라미터들이 상기 재순서 버퍼 제어기(413)에 도착하면 상기 위치 셋의 해당 원소들은 상기 도 13의 d와 같이 갱신된다.
또한 t3에서 입력된 2번 코딩 블록이 HARQ processor 2에서 소프트 컴바이닝에 성공하면 상기 위치 셋은 상기 도 13의 e, f와 같이 갱신된 뒤 재설정된다. 즉, 상기 t3에서 4번째 2번 채널을 통해 2번 코딩 블록이 UE(130)의 물리계층 엔터티(310)로 입력되면, 상기 물리계층 엔터티(310)는 HARQ processor 2에 저장되어 있는 코딩 블록과 소프트 컴바이닝한 후에 CRC 연산을 수행한다. 상기 CRC 연산 결과 상기 4번째 2번 채널을 통해 수신한 2번 코딩 블록에 대해 오류가 없는 것으로 판명되면 파라미터 셋1로 구성된 PHY-DATA-IND(417)를 라우팅부(411)로 전달한다. 여기서, 상기 파라미터 셋 1 = {TBS, TFI, CRC 결과값: success, HARQ processor 상태: processing, 채널 번호 : 2, soft combining 여부 :Y}로 설정된다.
상기 라우팅부(411)는 상기 물리 계층 엔터티(310)로부터 수신한 PHY-DATA-IND(417)의 HARQ processor 상태가 'processing', CRC 결과가 'success'로 설정되어 있으므로, TBS는 상기 재순서 버퍼(415)로, {TFI, CRC 결과값: success, HARQ processor 상태: processing, 채널 번호 : 2, soft combining 여부 :Y}와 같은 파라미터들은 상기 재순서 버퍼 제어기(413)로 전달한다. 상기 재순서 버퍼 제어기(413)는 상기 파라미터들을 상기 라우팅부(411)로부터 수신하게 되고, HARQ status 변수가 'occupied'로, CRC 결과값이 'success'로, soft combining 여부가 'Y'로 설정되어 있다. PSS(1)이 채널번호 2와 대응되며 P로 설정되어 있으므로, PSS(1)을 R로 변경한다. (도 13의 e참조). 상기 PSS(1)이 최좌측에 위치하고 있으므로, PSS(1) 이 후에 P 로 설정되어 있는 최초의 원소인 PSS(5)까지의 모든 원소를 상기 위치 셋에서 제거한다(도 13의 f참조). 이 때 상기 재순서 버퍼 제어기(413)는 {PSS(1)= R}이라는 정보를 담고 있는 전달 통보 신호를 상기 재순서 버퍼(415)로 전송한다. 또한 상기 위치 셋에서 제거된 원소들의 TFI와 CRC 결과값들은 MAC-h 엔터티(320)로 전달된다.
상기에서는 위치 셋의 상태 천이를 상기 도 13을 참조하여 설명하였으며, 다음으로 포인터 셋의 천이 상태를 도 14를 참조하여 설명하기로 한다.
상기 도 14는 본 발명의 또 다른 실시 예에 따른 포인터 셋 천이 상태의 일 예를 도시한 도면이다. 상기 도 14를 설명함에 있어, 상기 도 14에 도시되어 있는 a는 코딩 블록들이 UE(130)의 물리계층 엔터티(310)에 도착하는 시점을 나타내고, b는 시점 t2에서 t5까지의 포인터 셋의 구조를, c는 시점 t7까지의 포인터 셋의 구조를, d는 시점 t13까지의 포인터 셋의 구조를, e는 시점 t14까지의 포인터 셋 구조를 나타내고, f는 포인터 셋의 재설정 후의 구조를 나타낸다.
우선, 도 14의 a에 도시된 바와 같이 시점 t2에서 PHY-DATA-IND(417)가 라우팅부(411)에 도착하고, 재순서 버퍼 제어기(413)에서 위치 셋이 생성되면, 상기 재순서 버퍼 제어기(413)는 {PSS(1) = P}라는 오류통보신호를 재순서 버퍼(415)로 전달한다. 상기 재순서 버퍼(415)는 상기 재순서 버퍼 제어기(413)로부터 상기 오류통보신호를 수신하면 포인터 셋을 생성하고, PTS(1)을 P로 설정한다. 이후 t3, t4, t5에서 상기 라우팅부(411)가 상기 재순서 버퍼(415)로 TBS를 전달하면, 상기 재순서 버퍼(415)는 상기 도 14의 b와 같이 각 TBS에 대응되는 원소들을 R로 설정한다. t6에서 물리계층 엔터티(310)는 파라미터 셋 2로 구성된 PHY-DATA-IND(417)를 상기 라우팅부(411)로 전달하고, 상기 라우팅부(411)는 {TFI, CRC 결과값: fail, HARQ processor 상태: processing, 채널 번호 : 2, soft combining 여부 :Y}와 같은 파라미터들을 상기 재순서 버퍼 제어기(413)로 전달한다. 상기 재순서 버퍼 제어기(413)는 CRC 결과값이 'fail', 소프트 컴바이닝 여부가 'Y'이므로 상기 위치 셋을 갱신하지 않으며, 상기 재순서 버퍼(415)로 오류 통보 신호 역시 전송하지 않아 상기 포인터 셋도 갱신되지 않는다.
t14 에서 상기 물리계층 엔터티(310)가 2 번 채널에 대한 소프트 컴바이닝에 성공하면, 파라미터 셋 1로 구성된 PHY-DATA-IND(417)를 상기 라우팅부(411)로 전송하고, 상기 라우팅부(411)는 TBS는 상기 재순서 버퍼(415)로 나머지 파라미터들은 상기 재순서 버퍼 제어기(413)로 전달한다. 상기 재순서 버퍼 제어기(413)는 상기 라우팅부(411)로부터 전달받은 파라미터들을 기초로 상기 위치 셋을 갱신하고, {PSS(1)=R}이라는 전달통보신호를 상기 재순서 버퍼로 전송한다. 그러면 상기 재순서 버퍼(415)는 PTS(1)을 R로 재설정하고(도 14e), 상기 라우팅부(411)가 전달한 TBS와 PTS(1)를 대응시킨다. 또한 PTS(1)는 상기 포인터 셋의 최좌측에 위치하고 있으므로, 이 후 최초로 P로 설정되어 있는 원소 PTS(5)까지의 모든 원소 PTS(1), PTS(2), PTS(3), PTS(4)에 대응되는 TBS들을 상기 MAC-h 엔터티(320)로 전달하고 상기 MAC-h 엔터티(320)로 전송한 원소들을 상기 포인터 셋에서 제거한 뒤, 나머지 원소들은 최좌측으로 이동시킨다.(도 14의 f참조).
지금까지 상기의 설명들에서는 데이터 재전송을 위해 라우팅부(411)와, 재순서 버퍼 제어기(413)와, 재순서 버퍼(415)가 상호 관련되어 동작하는 경우를 설명하였다. 그러나 상기 라우팅부(411)와, 재순서 버퍼 제어기(413) 및 재순서 버퍼(415)는 하나의 모듈, 즉 상기 라우팅부(411)와 재순서 버퍼 제어기(413) 및 재순서 버퍼(415)의 기능이 통합된 하나의 모듈, 즉 도 15에 도시되어 있는 바와 같이 재순서 버퍼(1511)만을 사용하여 상기 데이터 재전송을 위한 동작이 수행 가능하다. 그러므로 이하 상기 재순서 버퍼(1511)만을 통한 데이터 재전송 과정을 설명하기로 한다.
우선, 상기 재순서 버퍼(1511)가 동작할 경우에도 이제까지 상기 라우팅부(411), 재순서 버퍼 제어기(413) 및 재순서 버퍼(415)가 모두 동작할 경우와 물리계층의 동작은 동일하다. 또한 n-channel SAW HARQ 방식의 고정 채널 할당방식과 가변 채널 할당 방식에서 모두 동작하며, 상기 고정 채널 할당방식에서 동작할 경우 상기 재순서 버퍼(1511)는 위치 매트릭스를 생성 및 갱신하고, 상기 가변 채널 할당 방식에서 동작할 경우 위치 셋을 생성 및 갱신한다. 그리고 상기 고정 채널 할당 방식 및 가변 채널 할당 방식 모두에서 상기 재전송 버퍼(1511)가 상기 도 4의 재전송 버퍼 제어기(413)와 동일한 방식으로 HARQ status변수를 관리한다. 상기 도 15에는 상기 재순서 버퍼(1511)만 추가된 구조가 도시되어 있으며 그 각 구성부들의 동작은 상기에서 설명한 바와 동일하므로 그 상세한 설명을 생략하기로 한다. 그리고 또한 상기 도 5에서 설명한 동작 과정 역시 동일하므로 그 상세한 설명을 생략하기로 한다.
이제 도 16a 및 도 16b를 참조하여 상기 재순서 버퍼(1511)의 동작, 특히 상기 고정 채널 할당 방식을 사용할 경우를 설명하기로 한다.
상기 도 16a 및 도 16b는 본 발명의 또 다른 실시예에 따른 재순서 버퍼의 동작 과정을 도시한 순서도이다.
먼저, 1601 단계에서 물리 계층 엔터티(310)로부터 PHY-DATA-IND(417)가 전달되면, 상기 PHY-DATA-IND(417)에 포함되어 있는 TBS, TFI, CRC 결과값, HARQ processor 상태, 채널 번호, soft combining 여부 파라미터들이 입력되면 상기 재순서 버퍼(1511)는 1602단계로 진행한다. 이때 상기 물리계층 엔터티(310)가 전달하는 PHY-DATA-IND(417)에 파라미터 셋 2 또는 3 이 포함된 경우, TBS는 입력되지 않으며, 파라미터 셋 1이나 4 가 포함된 경우 TBS가 함께 입력된다. 상기 1602 단계에서 상기 재순서 버퍼(1511)는 HARQ status 변수와 HARQ processor 상태 파라미터를 검사하여 상기 HARQ status 변수가 'empty'로 설정되어 있고, HARQ processor 상태가 'clear'로 설정되어 있는지를 검사한다. 상기 검사 결과 상기 HARQ status 변수가 'empty'로 설정되어 있고, HARQ processor 상태가 'clear'로 설정되어 있을 경우 상기 재순서 버퍼(1511)는 1602-1단계로 진행한다. 상기 1602-1단계에서 상기 재순서 버퍼(1511)는 TBS, TFI, CRC 결과값은 MAC-h 엔터티(320)로 전달하고 나머지 파라미터들은 폐기하고 종료한다.
상기 1602단계에서 상기 HARQ status 변수가 'empty'로, HARQ processor 상태가 'clear'로 설정되어 있지 않다면 상기 재순서 버퍼(1511)는 1603단계로 진행한다. 상기 1603단계에서 상기 재순서 버퍼(1511)는 상기 HARQ status 변수가 'empty'로 설정되어 있고, HARQ processor 상태가 'processing'으로 설정되어 있는지 검사한다. 상기 검사 결과 상기 HARQ status 변수가 'empty'로 설정되어 있고, HARQ processor 상태가 'processing'으로 설정되어 있다면 상기 재순서 버퍼(1511)는 1603-1단계로 진행한다. 상기 1603-1단계에서 상기 재순서 버퍼(1511)는 위치 매트릭스를 생성시키고, 상기 생성된 위치 매트릭스의 첫 번째 원소(PSS_first)를 PSS(1,채널 번호)의 위치에 P로 설정하고 1603-2단계로 진행한다. 여기서, 상기 재순서 버퍼(1511)가 위치 매트릭스를 생성하는 것은 상기 동작들이 고정 채널 할당 방식에서 수행되고 있기 때문이며, 하기 도 17a 및 도 17b에서는 가변 채널 할당방식에서 상기 재순서 버퍼(1511)가 동작할 때 과정을 설명할 것이며 이때는 상기 위치 매트릭스 대신 위치 셋이 생성된다. 그리고 상기 1603-2단계에서 상기 재순서 버퍼(1511)는 해당 원소의 TFI와 TBS를 저장하고 HARQ status 변수를 'occupied'로 설정하고 종료한다.
상기 1603단계에서 상기 HARQ status 변수가 'empty'로, HARQ processor 상태가 'processing'으로 설정되어 있지 않다면 상기 재순서 버퍼(1511)는 1604단계로 진행한다. 상기 1604단계에서 상기 재순서 버퍼(1511)는 상기 HARQ status 변수가 'occupied'로 설정되어 있고, CRC 결과값이 'fail'로 설정되어 있는지 검사한다. 상기 검사 결과 상기 HARQ status가 'occupied'로 설정되어 있고, CRC 결과값이 'fail'로 설정되어 있다면 상기 재순서 버퍼(1511)는 1604-1단계로 진행한다. 상기 1604-1단계에서 상기 재순서 버퍼(1511)는 상기에서 설명한 위치 매트릭스 갱신 규칙에 의해 위치 매트릭스를 갱신하고 1604-2단계로 진행한다. 상기 1604-2단계에서 상기 재순서 버퍼(1511)는 해당 원소의 TFI를 저장하고 종료한다.
상기 1604단계에서 상기 HARQ status 변수가 'occupied'로, CRC 결과값이 "fail"로 설정되어 있지 않다면 상기 재순서 버퍼(1511)는 1605단계로 진행한다. 상기 1605단계에서 상기 재순서 버퍼(1511)는 상기 HARQ status가 'occupied'로, CRC 결과값이 'success'로 soft combining 여부가 'N'으로 설정되어 있는지 검사한다. 상기 검사 결과 상기 HARQ status가 'occupied'로, CRC 결과값이 'success'로 soft combining 여부가 'N'으로 설정되어 있다면 상기 재순서 버퍼(1511)는 1605-1단계로 진행한다. 상기 1605-1단계에서 상기 재순서 버퍼(1511)는 동일한 채널 번호에 해당하는 열에 P로 설정된 원소가 존재하는 검사한다. 상기 검사 결과 상기 P로 설정된 원소가 있다면 상기 재순서 버퍼(1511)는 1605-3단계로 진행한다. 상기 1605-3단계에서 상기 재순서 버퍼(1511)는 해당 시점에서 생성되어야 할 PSS원소(PSS_update)를 생성하고 R로 설정하고 1605-4단계로 진행한다. 여기서, 상기 PSS_update를 일 예를 들어 설명하면, 상기 위치 매트릭스의 PSS(2,2)까지 생성된 상황에서 수신한 파라미터들 중 채널 번호 파라미터가 3 이었다면, PSS_update는 PSS(2,3)이 된다. 만약 위치 매트릭스가 PSS(2,4)까지 생성된 상황에서 수신한 파라미터들 중 채널 번호 파라미터가 1이었다면, PSS_update는 PSS(3,1)이 된다. 상기 1605-4 단계에서 상기 재순서 버퍼(1511)는 새로 생성된 PSS원소와 수신한 TFI 및 TBS를 대응시켜 저장하고 종료한다.
상기 1605-1 단계에서 검사 결과 상기 해당 열에 P로 설정된 원소가 없다면 상기 재순서 버퍼(1511)는 1605-2단계로 진행한다. 상기 1605-2단계에서 상기 재순서 버퍼(1511)는 상기 해당 채널 번호에 해당하는 열 중 최상단 열에 대응되는 원소를 R로 설정하고 TFI 와 TBS를 저장하고 종료한다. 이 때 PSS_update는 생성되지 않는다.
한편, 상기 1605단계에서 상기 HARQ status가 'occupied'로, CRC 결과값이 'success'로 soft combining 여부가 'N'으로 설정되어 있지 않다면 상기 재순서 버퍼(1511)는 1606단계로 진행한다. 상기 1606단계에서 상기 재순서 버퍼(1511)는 상기 HARQ status가 'occupied'로, CRC 결과값이 'success'로 soft combining 여부가 'Y'로 설정되어 있는지 검사한다. 상기 검사 결과 상기 HARQ status가 'occupied'로, CRC 결과값이 'success'로 soft combining 여부가 'Y'로 설정되어 있다면 상기 재순서 버퍼(1511)는 1607단계로 진행한다. 상기 1607단계에서 상기 재순서 버퍼(1511)는 해당 시점에서 생성되는 원소(PSS_updated)는 N으로 설정하고, PSS(P/N_to_R)은 R로 재설정하고 1608단계로 진행한다. 상기 1608단계에서 상기 재순서 버퍼(1511)는 해당 원소(PSS_updated)의 TFI와 TBS를 저장하고 1609단계로 진행한다..
상기 1609단계에서 상기 재순서 버퍼(1511)는 상기 PHY-DATA-IND(417)의 해당 원소에 의해서 갱신된 원소인 PSS(P/N_to_R)이 첫 번째 행에 위치하고 있으며 좌측에 다른 원소가 존재하지 않는 원소(PSS_first)인지를 검사한다. 상기 검사 결과 상기 해당 원소에 의해서 갱신된 원소인 PSS(P/N_to_R)이 첫 번째 행에 위치하고 있으며 좌측에 다른 원소가 존재하지 않는 원소(PSS_first)라면 상기 재순서 버퍼(1511)는 1609-1단계로 진행한다. 상기 1609-1단계에서 상기 재순서 버퍼(1511)는 상기에서 설명한 바와 같이 위치 매트릭스 재설정 규칙에 따라 상기 위치 매트릭스를 재설정하고 1609-2단계로 진행한다. 상기 1609-2단계에서 상기 재순서 버퍼(1511)는 순서 뒤바뀜 현상이 해결된, 즉 일련의 시퀀스 번호들을 가지는 TBS 들과 TFI 및 CRC 결과값들을 MAC-h 엔터티(320)로 전달하고 종료한다.
이제 도 17a 및 도 17b를 참조하여 상기 재순서 버퍼(1511)의 동작, 특히 상기 가변 채널 할당 방식을 사용할 경우를 설명하기로 한다.
상기 도 17a 및 도 17b는 본 발명의 또 다른 실시예에 따른, 가변 채널 할당방식에서 재순서 버퍼의 동작 과정을 도시한 순서도이다.
먼저, 1701단계에서 물리 계층 엔터티(310)로부터 PHY-DATA-IND(417)가 입력되면 재순서 버퍼(1511)는 상기 PHY-DATA-IND(417)의 TBS, TFI, CRC 결과값, HARQ processor 상태, 채널 번호, soft combining 여부 파라미터들이 입력하고 1702단계로 진행한다. 이 때 상기 물리계층 엔터티(310)이 전달하는 PHY-DATA-IND(417)에 파라미터 셋 2 또는 3 이 포함된 경우, TBS는 입력되지 않으며, 파라미터 셋 1이나 4 가 포함된 경우 TBS가 함께 입력된다. 상기 1702 단계에서 상기 재순서 버퍼(1511)는 HARQ status 변수와 HARQ processor 상태 파라미터를 검사하여 상기 HARQ status 변수가 'empty'로 설정되어 있고, HARQ processor 상태가 'clear'로 설정되어 있는지 검사한다. 상기 검사 결과 상기 HARQ status 변수가 'empty'로 설정되어 있고, HARQ processor 상태가 'clear'로 설정되어 있다면 상기 재순서 버퍼(1511)는 TBS, TFI, CRC 결과값은 MAC-h 엔터티(320)로 전달하고 나머지 파라미터들은 폐기하고 종료한다.
상기 1702단계에서 상기 HARQ status 변수가 'empty'로, HARQ processor 상태가 'clear'로 설정되어 있지 않다면 상기 재순서 버퍼(1511)는 1703단계로 진행한다. 상기 1703단계에서 상기 재순서 버퍼(1511)는 상기 HARQ status 변수가 'empty'로 설정되어 있고, HARQ processor 상태가 'processing'로 설정되어 있는지 검사한다. 상기 검사 결과 상기 HARQ status 변수가 'empty'로 설정되어 있고, HARQ processor 상태가 'processing'으로 설정되어 있다면 상기 재순서 버퍼(1511)는 1703-1단계로 진행한다. 상기 1703-1단계에서 상기 재순서 버퍼(1511)는 위치 셋을 생성시키고, 상기 생성된 위치 셋의 첫 번째 원소(PSS_first)인 PSS(1)의 위치를 P로 설정하고 1703-2단계로 진행한다. 상기 1703-2단계에서 상기 재순서 버퍼(1511)는 또한 해당 원소의 TFI와 채널번호를 저장하고, HARQ status 변수를 'occupied'로 설정한 후 종료한다.
상기 1703단계에서 상기 HARQ status 변수가 'empty'로, HARQ processor 상태가 'processing'으로 설정되어 있지 않다면 상기 재순서 버퍼(1511)는 1704단계로 진행한다. 상기 1704단계에서 상기 재순서 버퍼(1511)는 HARQ status가 'occupied'로 설정되어 있고, CRC 결과값이 'fail'로 설정되어 있는지 검사한다. 상기 검사 결과 상기 HARQ status가 'occupied'로 설정되어 있고, CRC 결과값이 'fail'로 설정되어 있다면 상기 재순서 버퍼(1511)는 1704-1단계로 진행한다. 상기 1704-1단계에서 상기 재순서 버퍼(1511)는 상기 위치 셋의 해당 원소를 생성한 뒤 P로 설정하고 1704-2단계로 진행한다. 상기 1704-2단계에서 상기 재순서 버퍼(1511)는 해당 원소의 TFI와 채널 번호를 저장하고 종료한다.
상기 1704단계에서 상기 HARQ status가 'occupied'로, CRC 결과값이 'fail'로 설정되어 있지 않다면 상기 재순서 버퍼(1511)는 1705단계로 진행한다. 상기 1705단계에서 상기 재순서 버퍼(1511)는 상기 HARQ status가 'occupied'로, CRC 결과값이 'success'로 soft combining 여부가 'N'로 설정되어 있는지 검사한다. 상기 검사 결과 상기 HARQ status가 'occupied'로, CRC 결과값이 'success'로 soft combining 여부가 'N'으로 설정되어 있다면 상기 재순서 버퍼(1511)는 1705-1단계로 진행한다. 상기 1705-1단계에서 상기 재순서 버퍼(1511)는 해당 시점에서 생성되어야 할 PSS원소(PSS_update)를 생성하고 R로 설정한 후 1705-2단계로 진행한다.1705-2단계에서는 새로 생성된 PSS원소와 수신한 TFI 및 TBS를 대응시켜 저장한다.
상기 1706단계에서 검사 결과 상기 HARQ status가 'occupied'로, CRC 결과값이 'success'로 soft combining 여부가 'Y'로 설정되어 있다면, 상기 재순서 버퍼(1511)는 1707단계로 진행한다. 상기 1707단계에서 상기 재순서 버퍼(1511)는 PSS(P_to_R)은 R로 재설정하고 1708단계로 진행한다. 상기 1708단계에서 상기 재순서 버퍼(1511)는 해당 원소(PSS_updated)의 TFI와 TBS를 저장하고 1709단계로 진행한다. 상기 1709단계에서 상기 재순서 버퍼(1511)는 해당 원소가 PSS(P_to_R)이 첫번째 행에 위치하고 있으며 좌측에 다른 원소가 존재하지 않는 원소(PSS_first)인지를 검사한다. 상기 검사 결과 상기 PSS(P_to_R)이 첫번째 행에 위치하고 있으며 좌측에 다른 원소가 존재하지 않는 원소(PSS_first)라면 상기 재순서 버퍼(1511)는 1709-1단계로 진행한다. 상기 1709-1단계에서 상기 재순서 버퍼(1511)는 상기 위치 셋 갱신 규칙에서 설명한 바와 같이 상기 위치 셋을 재설정하고 1709-2단계로 진행한다. 상기 1709-2단계에서 상기 재순서 버퍼(1511)는 순서 뒤바뀜 현상이 해결된 TBS 들과 TFI 및 CRC 결과값들을 MAC-h 엔터티(320)로 전달하고 종료한다.
상기 도 17a 및 도 17b에서 설명한 위치 셋 생성 및 갱신 방식은 다음과 같다.
우선 위치 셋은 상기 도 12의 a에서 나타낸 바와 같이 좌측에서 우측으로 순차적으로 증가하는 원소로 구성된다. 그리고 상기 재순서 버퍼(1511)는 HARQ status 변수가 'empty'에서 'occupied'로 바뀌는 시점에서 위치 셋을 생성하며, 또한, HARQ status 변수가 'occupied'에서 'empty'로 바뀌는 시점에서 상기 생성되어있는 위치 셋을 제거한다. 또한 HARQ status가 'empty'인 상태에서 수신한 임의의 PHY-DATA-IND(417)의 HARQ processor 상태 파라미터가 'processing'으로 설정되어 있으면, PSS(1)이 상기 위치 셋의 최초 원소로 생성되며, P로 설정된다. 상기 재순서 버퍼(1511)는 PSS(1)에 대응되는 PHY-DATA-IND(417)의 TFI와 채널 번호를 저장한다. 그리고 상기 PHY-DATA-IND(417)가 도착할 때 마다 상기 위치 셋은 다음과 같이 갱신된다.
(1) PHY-DATA-IND(417)이 도착할 때 마다 상기 위치 셋의 원소는 좌에서 우로 순차적으로 하나씩 생성된다.
(2) 만약 CRC 결과 파라미터가 'fail', soft combining 여부 파라미터가 'N'으로 설정되어 있다면 상기 위치 셋의 해당 원소는 P로 설정되고, 재순서 버퍼는 해당 원소의 채널 번호를 저장한다.
(3) 만약 CRC 결과 파라미터가 'fail', soft combining 여부 파라미터가 'Y'로 설정되어 있다면 상기 위치 셋의 해당 원소를 생성하지 않는다.
(4) 만약 CRC 결과 파라미터가 'success', soft combining 여부 파라미터가 'N'으로 설정되어 있다면 상기 위치 셋의 해당 원소는 R로 설정되고, 재전송 버퍼는 TBS, TFI를 해당 원소와 대응시켜 저장한다.
(5) 만약 CRC 결과 파라미터가 'success', soft combining 여부 파라미터가 'Y'로, 채널 번호 파라미터가 x로 설정되어 있다면 상기 위치 셋의 해당 원소는 생성되지 않으며, 채널 번호 x에 대응되고 P로 설정되어 있던 원소(이하 PSS(P_to_R)로 표기)를 R로 변경되고, 상기 재전송 버퍼(1511)는 TBS와 TFI를 PSS(P_to_R)과대응시켜 저장한다.
(4) 만약 PSS(P_to_R)이 최좌측에 위치하면(이하 PSS_first로 표기), 위치 셋은 다음과 같이 갱신된다.
우선, PSS(P_to_R) 이 후 원소 중, P로 설정되어 있는 첫 번째 원소까지 모든 원소와 PSS(P_to_R)은 위치 셋에서 제거되며, 제거된 원소에 해당하는 TBS 들과 TFI 들과 CRC 결과값들은 MAC-h(320)로 전달된다. 이 때 CRC 결과값들은 'success'로 설정된다. 그리고 상기 제거되지 않고 남은 원소들을 최대한 좌측으로 이동시킨다. 예를 들어 남은 원소들이 PSS(3) 에서 PS(7) 까지라면, 이 들을 PSS(1) 에서 PSS(5)로 변경한다. 그리고 수신한 PHY-DATA-IND(417)의 HARQ processor 상태 파라미터가 'clear'로 설정된 경우 상기 위치 셋은 제거된다.
상술한 바와 같은 본 발명은 고속 순방향 패킷 접속 방식을 사용하는 통신 시스텡에서 데이터 전송시 오류가 발생할 경우 이후 수신되는 정상 데이터들을 대기시켜 상기 오류 발생한 데이터에 대한 재전송을 성공적으로 처리한 후에 상기 성공적으로 재전송된 데이터 이후의 일련된 정상 데이터들을 순차적으로 전송함으로써 상위계층에서 정상적인 데이터 수신을 가능하게 한다는 이점을 가진다.
또한 상기 일련된 순서로 데이터를 상위 계층으로 전송함으로써 상위계층의 데이터 재전송 요구 및 이에 따른 중복 데이터 재전송을 제거한다는 이점을 가진다.
또한 상기 일련된 순서로 데이터를 상위 계층으로 전송함으로써 상위계층에서 일련된 순서로 수신되지 않아 데이터를 폐기하는 경우를 제거한다는 이점을 가진다.

Claims (21)

  1. 초기 전송과 재전송 요구에 응답하여 재전송을 하고, 상기 재전송을 위한 복합 재전송 프로세서 셋을 구비하는 고속 순방향 패킷 접속 서비스를 사용하는 통신시스템에서 데이터 전송 장치에 있어서,
    수신 데이터에 대한 오류 발생 여부를 판단하고, 상기 판단결과 오류 발생한 데이터를 상기 복합 재전송 프로세서 셋으로 전송함과 동시에 재전송 요구하며, 특정 프리미티브를 통해 상기 오류 발생한 데이터에 대한 제어정보만을 그 상위계층으로 전달하며, 상기 판단결과 오류 발생하지 않은 데이터를 상기 프리미티브를 통해 상기 오류 발생하지 않은 데이터와 상응하는 제어정보를 함께 재순서 버퍼로 전달하는 물리 계층 엔터티와,
    상기 프리미티브를 분석하고, 상기 프리미티브가 오류 발생한 데이터임을 나타낼 경우 위치 셋을 생성하고, 상기 위치셋에 상기 수신된 데이터들의 상태를 나타내는 원소들을 저장하고, 상기 위치셋의 원소들에 상응하여 포인터 셋을 생성하며, 상기 오류 발생한 데이터 이후에 전달되는 오류 발생하지 않은 연속적인 데이터들을 상기 오류 발생한 데이터에 대한 재전송이 성공할 때까지 대기시켜 상기 재전송 성공한 데이터부터 상기 오류 발생하지 않은 데이터들을 연속되게 상위계층으로 전달하는 재순서 버퍼를 포함함을 특징으로 하는 상기 장치.
  2. 제1항에 있어서,
    상기 위치 셋은;
    상기 수신된 데이터가 오류 발생할 경우 생성되며, 상기 수신된 데이터에 대한 오류 발생함을 나타내는 원소와 상기 오류 발생한 데이터에 대한 재전송 상태를 나타내는 원소와, 상기 수신된 데이터가 오류 발생하지 않음을 나타내는 원소를 저장함을 특징으로 하는 상기 장치.
  3. 제1항에 있어서,
    상기 포인터 셋은;
    상기 위치 셋에서 설정되는 원소들에 상응하여 상기 수신 데이터에 대한 비정상 상태 혹은 정상 상태임을 나타내는 원소들을 저장함을 특징으로 하는 상기 장치.
  4. 제3항에 있어서,
    상기 비정상 상태는 상기 수신데이터가 최초 오류 발생한 상태이거나 혹은 상기 오류 발생에 따른 재전송 실패 상태임을 나타냄을 특징으로 하는 상기 장치.
  5. 제1항에 있어서,
    상기 프리미티브는;
    상기 수신 데이터가 오류 발생하였을 경우 적어도 상기 데이터가 수신된 채널 번호와, 상기 복합 재전송 프로세서 상태와, 상기 데이터에 대한 소프트 컴바이닝 여부를 나타내는 정보를 포함함을 특징으로 하는 상기 장치.
  6. 제5항에 있어서,
    상기 복합 재전송 프로세서 상태 정보는 상기 복합 재전송 프로세서 셋중 상기 수신 데이터의 채널에 해당하는 복합 재전송 프로세서에 현재 데이터가 저장되어 있는지 여부를 나타내는 정보임을 특징으로 하는 상기 장치.
  7. 제2항에 있어서,
    상기 재순서 버퍼는 상기 포인터 셋의 원소들이 연속적으로 정상임을 나타낼 경우 상기 연속적으로 정상인 원소들에 대응하는 데이터들을 상기 상위계층으로 전송함을 특징으로 하는 상기 장치.
  8. 제1항에 있어서,
    상기 고속 순방향 패킷 접속 서비스는 가변 채널 할당 방식에서 동작함을 특징으로 하는 상기 장치.
  9. 제1항에 있어서,
    상기 고속 순방향 패킷 접속 서비스가 고정 채널 할당 방식에서 동작할 경우 상기 재순서 버퍼는 상기 위치셋에 대응하는 위치 매트릭스와, 상기 포인터 셋에 대응하는 포인터 매트릭스를 생성함을 특징으로 하는 상기 장치.
  10. 초기 전송과 재전송 요구에 응답하여 재전송을 하고, 상기 재전송을 위한 복합 재전송 프로세서 셋과, 수신 데이터에 대한 오류 발생 여부를 판단하여 해당 정보들을 포함하는 프리미티브를 전송하는 물리 계층 엔터티를 구비하는 고속 순방향 패킷 접속 서비스를 사용하는 통신시스템에서 데이터 전송 방법에 있어서,
    상기 물리 계층 엔터티로부터 수신되는 프리미티브를 분석하여 상기 프리미티브가 상기 수신 데이터에 대한 오류 발생을 나타낼 경우 위치 셋을 생성하는 과정과,
    상기 생성한 위치 셋에 상기 수신 데이터의 오류 발생을 나타내는 원소를 저장한 후 상기 위치셋에 저장한 정보에 상응하여 포인터 셋을 생성하는 과정과.
    상기 생성한 포인터 셋에 상기 수신 데이터의 오류 발생의 형태를 나타내는 원소를 저장하는 과정과,
    이후 수신되는 프리미티브들이 그 해당 데이터에 대한 오류 발생을 나타내지 않을 경우 상기 위치 셋의 원소와 포인터 셋의 해당 원소들을 정상상태임으로 저장함과 동시에 그 오류 발생하지 않은 데이터들을 대기시키고. 상기 오류 발생한 데이터의 재전송이 성공하는 시점에서 상기 재전송 성공한 데이터와 상기 포인터 셋에 연속적으로 정상상태로 저장되어 있는 원소들에 대응하는 데이터들을 연속적으로 상기 상위 계층으로 전송하는 과정을 포함함을 특징으로 하는 상기 방법.
  11. 제10항에 있어서,
    상기 위치 셋은;
    상기 수신된 데이터가 오류 발생할 경우 생성되며, 상기 수신된 데이터에 대한 오류 발생함을 나타내는 원소와 상기 오류 발생한 데이터에 대한 재전송 상태를 나타내는 원소와, 상기 수신된 데이터가 오류 발생하지 않음을 나타내는 원소를 저장함을 특징으로 하는 상기 방법.
  12. 제10항에 있어서,
    상기 포인터 셋은;
    상기 위치 셋에서 설정되는 원소들에 상응하여 상기 수신 데이터에 대한 비정상 상태 혹은 정상 상태임을 나타내는 원소들을 저장함을 특징으로 하는 상기 방법.
  13. 제12항에 있어서,
    상기 비정상 상태는 상기 수신데이터가 최초 오류 발생한 상태이거나 혹은 상기 오류 발생에 따른 재전송 실패 상태임을 나타냄을 특징으로 하는 상기 방법.
  14. 제10항에 있어서,
    상기 프리미티브는;
    상기 수신 데이터가 오류 발생하였을 경우 적어도 상기 데이터가 수신된 채널 번호와, 상기 복합 재전송 프로세서 상태와, 상기 데이터에 대한 소프트 컴바이닝 여부를 나타내는 정보를 포함함을 특징으로 하는 상기 방법.
  15. 제14항에 있어서,
    상기 복합 재전송 프로세서 상태 정보는 상기 복합 재전송 프로세서 셋중 상기 수신 데이터의 채널에 해당하는 복합 재전송 프로세서에 현재 데이터가 저장되어 있는지 여부를 나타내는 정보임을 특징으로 하는 상기 방법.
  16. 제10항에 있어서,
    상기 고속 순방향 패킷 접속 서비스는 가변 채널 할당 방식에서 동작함을 특징으로 하는 상기 방법.
  17. 제10항에 있어서,
    상기 고속 순방향 패킷 접속 서비스가 고정 채널 할당 방식에서 동작할 경우 상기 프리미티브가 상기 수신 데이터에 대한 오류 발생을 나타낼 경우 상기 위치 셋에 대응하는 위치 매트릭스와, 상기 포인터 셋에 대응하는 포인터 매트릭스를 생성함을 특징으로 하는 상기 방법.
  18. 초기 전송과 재전송 요구에 응답하여 재전송을 하고, 상기 재전송을 위한 복합 재전송 프로세서 셋과, 수신 데이터에 대한 오류 발생 여부를 판단하여 해당 정보들을 포함하는 프리미티브를 전송하는 물리 계층 엔터티를 구비하는 고속 순방향 패킷 접속 서비스를 사용하는 통신시스템에서 데이터 전송 방법에 있어서,
    상기 물리 계층 엔터티로부터 수신되는 프리미티브가 해당 데이터의 오류 발생을 나타낼 경우 상기 오류 발생한 데이터에 대한 정보만을 저장하는 과정과,
    상기 오류 발생한 데이터 이후 상기 물리 계층 엔터티로부터 연속 수신되는 프리미티브들 각각의 해당 데이터가 정상임을 나타낼 경우 상기 오류 발생한 데이터에 대한 재전송이 성공하는 시점까지 상기 정상 데이터들을 대기시키는 과정과,
    상기 오류 발생한 데이터에 대한 재전송이 성공하면 그 시점에서 상기 재전송 성공한 데이터와 상기 대기시키고 있던 정상 데이터들을 연속적으로 상위계층으로 전송하는 과정을 포함함을 특징으로 하는 상기 방법.
  19. 제18항에 있어서,
    상기 프리미티브는;
    상기 수신 데이터가 오류 발생하였을 경우 적어도 상기 데이터가 수신된 채널 번호와, 상기 복합 재전송 프로세서 상태와, 상기 데이터에 대한 소프트 컴바이닝 여부를 나타내는 정보를 포함함을 특징으로 하는 상기 방법.
  20. 제19항에 있어서,
    상기 복합 재전송 프로세서 상태 정보는 상기 복합 재전송 프로세서 셋중 상기 수신 데이터의 채널에 해당하는 복합 재전송 프로세서에 현재 데이터가 저장되어 있는지 여부를 나타내는 정보임을 특징으로 하는 상기 방법.
  21. 제18항에 있어서,
    상기 고속 순방향 패킷 접속 서비스는 가변 채널 할당 방식에서 동작함을 특징으로 하는 상기 방법.
KR1020010043247A 2001-07-18 2001-07-18 고속 순방향 패킷 접속 방식 시스템의 데이터 재전송장치및 방법 KR20030008553A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020010043247A KR20030008553A (ko) 2001-07-18 2001-07-18 고속 순방향 패킷 접속 방식 시스템의 데이터 재전송장치및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020010043247A KR20030008553A (ko) 2001-07-18 2001-07-18 고속 순방향 패킷 접속 방식 시스템의 데이터 재전송장치및 방법

Publications (1)

Publication Number Publication Date
KR20030008553A true KR20030008553A (ko) 2003-01-29

Family

ID=27715596

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020010043247A KR20030008553A (ko) 2001-07-18 2001-07-18 고속 순방향 패킷 접속 방식 시스템의 데이터 재전송장치및 방법

Country Status (1)

Country Link
KR (1) KR20030008553A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004038990A1 (en) * 2002-10-24 2004-05-06 Samsung Electronics Co., Ltd. Apparatus for controlling hybrid automatic repeat request (harq) in a mobile communication system
KR100981491B1 (ko) * 2003-06-18 2010-09-10 삼성전자주식회사 이동통신 시스템에서 복합 자동 재전송 방식으로 순방향응답 신호 전송 장치 및 방법

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004038990A1 (en) * 2002-10-24 2004-05-06 Samsung Electronics Co., Ltd. Apparatus for controlling hybrid automatic repeat request (harq) in a mobile communication system
KR100981491B1 (ko) * 2003-06-18 2010-09-10 삼성전자주식회사 이동통신 시스템에서 복합 자동 재전송 방식으로 순방향응답 신호 전송 장치 및 방법

Similar Documents

Publication Publication Date Title
KR100876765B1 (ko) 이동 통신 시스템에서 데이터 재전송 장치 및 방법
CN101321047B (zh) 协议数据单元再传输的用户终端设备及节点b
CN101043301B (zh) 一种无线通信系统中的数据重排重组方法及其基站
KR101084135B1 (ko) 무선 통신 시스템의 송수신 단에서의 상태 pdu송수신방법
TWI220832B (en) A scheme to prevent HFN un-synchronization for UM RLC in a high speed wireless communication system
US7130295B2 (en) Data retransmission apparatus and method in a mobile communication system
JP3746271B2 (ja) パケットのインシーケンス送達を用いたハイブリッド自動再送要求方式
JP5087939B2 (ja) 無線通信装置、送信方法
TWI646814B (zh) Data transmission method and related equipment
JP2008048325A (ja) 無線通信装置
JP2003111147A (ja) 高速順方向パケット接続方式を使用する通信システムでの高速媒体接続制御階層エンティティリセット方法
JP2009044370A (ja) 無線通信装置、送信方法、受信方法
CN100550714C (zh) Arq系统中的传输控制方法
KR100516554B1 (ko) 고속 순방향 패킷 접속 통신 시스템에서 프로토콜 데이터유닛 처리 방법
US20060114936A1 (en) Enhanced processing methods for wireless base stations
US10530538B2 (en) Hybrid automatic repeat request method and system
KR20030004618A (ko) 고속순방향패킷전송 시스템의 패킷 데이터 재전송 장치 및방법
KR101084136B1 (ko) 무선 통신 시스템의 송수신 단에서 상태정보를 포함하는pdu를 송수신하는 방법
KR20030079631A (ko) 고속순방향패킷접속방식을 사용하는 이동통신시스템에서전송 블록의 크기 정보 송/수신장치 및 방법
KR20030008553A (ko) 고속 순방향 패킷 접속 방식 시스템의 데이터 재전송장치및 방법
JP2006148784A (ja) 通信方法、及び通信装置
KR20030004959A (ko) 고속 순방향 패킷 접속 방식을 사용하는 시스템의 데이터재전송 방법
KR20080071737A (ko) 이동 통신 시스템에서 재전송 프로토콜 데이터 유닛의 처리방법 및 장치
JP2010068442A (ja) 移動通信装置

Legal Events

Date Code Title Description
WITN Withdrawal due to no request for examination