KR20120071511A - 이동통신 시스템의 데이터 레이트 매칭 방법 및 장치 - Google Patents

이동통신 시스템의 데이터 레이트 매칭 방법 및 장치 Download PDF

Info

Publication number
KR20120071511A
KR20120071511A KR1020100133081A KR20100133081A KR20120071511A KR 20120071511 A KR20120071511 A KR 20120071511A KR 1020100133081 A KR1020100133081 A KR 1020100133081A KR 20100133081 A KR20100133081 A KR 20100133081A KR 20120071511 A KR20120071511 A KR 20120071511A
Authority
KR
South Korea
Prior art keywords
length
parameter
input data
data
parameters
Prior art date
Application number
KR1020100133081A
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 KR1020100133081A priority Critical patent/KR20120071511A/ko
Priority to US13/332,875 priority patent/US8792375B2/en
Publication of KR20120071511A publication Critical patent/KR20120071511A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/16Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
    • H04W28/18Negotiating wireless communication parameters
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0067Rate matching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/16Central resource management; Negotiation of resources or communication parameters, e.g. negotiating bandwidth or QoS [Quality of Service]
    • H04W28/18Negotiating wireless communication parameters
    • H04W28/22Negotiating communication rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W72/00Local resource management
    • H04W72/12Wireless traffic scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W74/00Wireless channel access
    • H04W74/08Non-scheduled access, e.g. ALOHA
    • H04W74/0833Random access procedures, e.g. with 4-step access
    • H04W74/0841Random access procedures, e.g. with 4-step access with collision treatment

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

병렬로 입력되는 부호화된 데이터에 대해 충돌없이 고속으로 병렬 인터리빙을 수행할 수 있는 이동통신 시스템의 데이터 레이트 매칭 방법 및 장치가 개시된다. 먼저 부호화된 입력 데이터의 길이(D)에 기초하여 제1 파라미터(f1) 집합을 산출하고, 입력 데이터의 길이(D)값을 구성하는 소수의 집합에 기초하여 제2 파라미터(f2) 집합을 산출한 후, 제1 파라미터(f1) 집합, 제2 파라미터(f2) 집합 및 입력 데이터의 길이(D)에 기초하여 인터리빙을 수행한다. 따라서, 부호화된 데이터에 대해 충돌없이 고속으로 인터리빙을 수행할 수 있다.

Description

이동통신 시스템의 데이터 레이트 매칭 방법 및 장치{METHOD AND APPARATUS FOR DATA RATE MATCHING FOR MOBILE COMMUNICATION SYSTEMS}
본 발명은 이동통신 시스템의 데이터 전송에 관한 것으로, 더욱 상세하게는 이동통신 시스템의 데이터 레이트 매칭 방법 및 장치에 관한 것이다.
3GPP LTE 및 LTE-Advanced 시스템의 송신단 데이터 부호화 과정에서는, 터보 부호화 또는 콘볼루션 부호화된 데이터의 길이와 무선 전송에 요구되는 데이터 길이의 정합을 위하여 레이트 매처(Rate matcher)가 데이터 레이트 매칭을 수행하고, 수신단의 데이터 복호화 과정에서는 송신단과 역으로 무선 전송에서 수신된 데이터의 길이와 터보 복호기 또는 콘볼루션 복호기의 입력 데이터 길이와의 정합을 위하여 디레이트 매처(Derate matcher)가 데이터 디레이트 매칭(derate matching)을 수행한다.
그러나, 종래의 레이트 매처의 서브블록 인터리버는 입력 비트 데이터에 대한 단일 비트 입력에 대해서만 처리를 수행하도록 구성되었기 때문에 2비트 이상의 병렬 데이터 입력에 대해서는 처리가 불가능한 단점이 있다. 즉, 종래의 레이트 매처에 병렬로 데이터가 입력되는 경우 입력된 데이터가 저장되는 메모리에서 데이터의 충돌이 발생하는 문제가 있다.
상술한 바와 같은 단점을 극복하기 위한 본 발명의 목적은 병렬로 입력되는 부호화된 데이터에 대해 충돌없이 고속으로 병렬 인터리빙을 수행할 수 있는 이동통신 시스템의 데이터 레이트 매칭 방법을 제공하는 것이다.
또한, 본 발명의 다른 목적은 병렬로 입력되는 부호화된 데이터에 대해 충돌없이 고속으로 병렬 인터리빙을 수행할 수 있는 이동통신 시스템의 데이터 레이트 매칭 장치를 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.
상술한 본 발명의 목적을 달성하기 위한 본 발명의 일 측면에 따른 데이터 레이트 매칭 방법은, 복수의 인터리버 각각에 직렬 또는 병렬로 입력된 부호화된 입력 데이터의 길이(D)에 기초하여 제1 파라미터(f1) 집합을 산출하는 단계와, 상기 입력 데이터의 길이(D)값을 구성하는 소수의 집합에 기초하여 제2 파라미터(f2) 집합을 산출하는 단계 및 상기 제1 파라미터(f1) 집합, 상기 제2 파라미터 (f2) 집합 및 상기 입력 데이터의 길이(D)에 기초하여 인터리빙을 수행하는 단계를 포함한다.
상기 제1 파라미터(f1) 집합을 산출하는 단계는, 상기 입력 데이터의 길이(D)가 2의 배수가 아니거나 4의 배수인 경우에는 상기 제1 파라미터(f1) 및 상기 입력 데이터의 길이(D)의 최대 공약수가 1을 만족하는 모든 값을 상기 제1 파라미터로 산출할 수 있다.
상기 제1 파라미터(f1) 집합을 산출하는 단계는, 상기 입력 데이터의 길이(D)가 2의 배수이고, 4의 배수가 아닌 경우에는 상기 제1 파라미터(f1) 및 상기 입력 데이터의 길이(D)의 1/2의 최대 공약수가 1을 만족하는 모든 값을 상기 제1 파라미터로 산출할 수 있다.
상기 제2 파라미터(f2) 집합을 산출하는 단계는, 상기 입력 데이터의 길이(D)가 2의 배수가 아니거나 4의 배수인 경우 수학식
Figure pat00001
(여기서, P는 상기 입력 데이터의 길이(D)의 약수 중 소수의 집합, p는 상기 소수의 집합의 원소)를 이용하여 상기 제2 파라미터(f2) 집합을 산출할 수 있다.
상기 제2 파라미터(f2) 집합을 산출하는 단계는, 상기 입력 데이터의 길이(D)가 2의 배수이고 4의 배수가 아닌 경우, 제1 파라미터(f1) 및 제2 파라미터(f2)를 더한값이 홀수이고, 수학식
Figure pat00002
인 모든 p를 이용하여 상기 제2 파라미터(f2) 집합을 산출할 수 있다.
상기 인터리빙을 수행하는 단계는 수학식
Figure pat00003
(여기서, k=0,1,…,KΠ 이고, KΠ 는 매트릭스의 크기를 의미)에 상기 제1 파라미터(f1) 및 상기 제2 파라미터(f2)를 적용하여 인터리빙된 출력 데이터를 생성할 수 있다.
또한, 본 발명의 다른 목적을 달성하기 위한 본 발명의 일 측면에 따른 데이터 레이트 매칭 장치는 직렬 또는 병렬로 입력된 부호화된 입력 데이터의 길이(D)에 기초하여 제1 파라미터(f1) 집합을 산출하고, 상기 입력 데이터의 길이(D)값을 구성하는 소수의 집합에 기초하여 제2 파라미터(f2) 집합을 산출하며, 상기 제1 파라미터(f1) 집합, 상기 제2 파라미터 (f2) 집합 및 상기 입력 데이터의 길이(D)에 기초하여 인터리빙을 각각 수행하는 복수의 서브블록 인터리버를 포함하는 복수의 서브블록 인터리버를 포함한다.
상술한 바와 같은 이동통신 시스템의 데이터 레이트 매칭 방법 및 장치에 따르면, 송신기의 데이터 레이트 매칭 장치의 서브블록 인터리버에서 병렬 입력 데이터에 대한 병렬 처리 기능을 제공하고 입력 데이터의 길이에 따라 발생되는 더미 비트에 대한 신호처리를 제거함으로써, 고속의 효율적인 신호처리 기능을 제공한다.
또한, 수신기의 복호단에서도 본 발명에서 제안하는 서브블록 인터리버를 적용하여 데이터 레이트 디인터리빙 과정에서도 병렬 입력 데이터에 대한 신호처리 기능을 제공할 수 있다. 이는 전송 데이터에 대한 부호화기 및 복호화기에서 하드웨어 신호처리에 소요되는 시간의 감소를 의미하며, 이를 통해 이동통신 시스템에서 고속으로 데이터를 전송할 수 있는 이점이 있다.
도 1은 3GPP LTE 시스템의 레이트 매처(Rate Matcher)를 나타내는 블록도이다.
도 2는 서브블록 인터리버의 출력 메모리 주소를 나타낸다.
도 3은 서브블록 인터리버에 병렬로 데이터가 입력되는 경우의 출력 메모리 주소 및 충돌관계를 나타낸다.
도 4는 본 발명의 일 실시예에 따른 데이터 레이트 매칭 장치의 구성을 나타내는 블록도이다.
도 5는 본 발명의 일 실시예에 따른 서브블록 인터리버의 내부 메모리의 구성을 나타내는 개념도이다.
도 6은 본 발명의 일 실시예에 따른 서브블록 인터리버의 출력 주소를 나타낸다.
도 7은 본 발명의 다른 실시예에 따른 서브블록 인터리버의 내부 메모리의 구성을 나타내는 개념도이다.
도 8은 본 발명의 다른 실시예에 따른 서브블록 인터리버의 출력 주소를 나타낸다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.
그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가진 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 본 발명을 설명함에 있어 전체적인 이해를 용이하게 하기 위하여 도면상의 동일한 구성요소에 대해서는 동일한 참조부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 3GPP LTE 시스템의 레이트 매처(Rate Matcher)를 나타내는 블록도이고, 도 2는 서브블록 인터리버의 출력 메모리 주소를 나타낸다. 또한, 도 3은 서브블록 인터리버에 병렬로 데이터가 입력되는 경우의 출력 메모리 주소 및 충돌관계를 나타낸다.
터보 부호화된 데이터에 대한 데이터 레이트 매칭을 수행하는 레이트 매처는 3개의 비트 스트림 d(0) k, d(1) k, d(2) k에 대한 인터리빙을 수행하는 복수의 서브블록 인터리버(Sub-block interleaver)(10)와, 비트 수집부(20) 및 비트 선택부(30)로 구성된다.
입력된 비트 스트림 d(i) k 는 복수의 서브블록 인터리버(10)를 통해 v(i) k (k=0,1,…,KΠ)가 되고, 인터리빙된 데이터 스트림은 가상 순환 버퍼(virtual circular buffer)를 통하여 출력 비트 크기에 따라서 비트가 선택되어 qk가 출력된다(여기서 i=0,1,2).
서브블록 인터리버(10)는 입력 비트 d(i) 0, d(i) 1, d(i) 2,, d(i) D-1 (여기서, D는 입력 비트 수이고, i=0,1,2임)에 대해 인터리빙을 수행하여 출력 비트 v(i) 0, v(i) 1, v(i) 2, , v(i) KΠ-1 (여기서, KΠ는 아래에서 정의되고, i=0,1,2임)를 출력한다.
서브블록 인터리버(10)의 출력 비트 시퀀스는 다음과 같이 유도된다.
먼저, 매트릭스(matrix)의 열(column) 개수를 Csubblock=32로 할당하고(여기서, 매트릭스의 열 번호는 좌에서 우로 0, 1, 2,…, Csubblock-1 임), D≤(Rsubblock×Csubblock)를 만족하는 최소 정수 Rsubblock을 계산한다. 여기서, 직각 행렬(rectangular matrix)의 행(row) 번호는 상단에서 하단으로 0, 1, 2,…, Rsubblock-1 이다.
만약 (Rsubblock×Csubblock)>D 이면, ND=(Rsubblock×Csubblock-D)인 더미 비트(dummy bits)가 추가된다(즉, yk=<NULL>, k=0, 1,…, ND-1). 그리고, 입력 비트 시퀀스를 (Rsubblock×Csubblock) 매트릭스에 기록한다(즉, yND +k=d(i) k, k = 0, 1,…, D-1). 이 때 수학식 1과 같이 매트릭스의 행 0의 열 0 내에 있는 비트 y0 에서 시작하여 행에 따라 매트릭스를 구성한다.
Figure pat00004
이후,
Figure pat00005
Figure pat00006
의 경우에는 표 1의 컬럼간 치환 패턴(inter-column permutation pattern)
Figure pat00007
을 기반으로하여 매트릭스의 컬럼간 치환을 수행한다. 여기서, P(j)는 j번째 치환된 컬럼의 원래 컬럼 위치를 의미한다. 컬럼 치환을 수행한 후, 컬럼간 치환된 매트릭스는 수학식 2와 같다.
Figure pat00009
Figure pat00010
서브블록 인터리버(10)는 상술한 바와 같은 컬럼간 치환된
Figure pat00011
매트릭스를 컬럼 단위로 읽어서 출력을 생성한다. 서브블록 인터리빙된 비트는
Figure pat00012
이다. 여기서,
Figure pat00013
Figure pat00014
,
Figure pat00015
Figure pat00016
… , 그리고
Figure pat00017
이다.
또한,
Figure pat00018
의 경우 서브블록 인터리버(10)의 출력은
Figure pat00019
이 된다. 여기서,
Figure pat00020
이며,
Figure pat00021
이다.
비트 수집부(20)는 수학식 3에 의해 길이 Kw = 3KΠ 인 가상 순환 버퍼를 생성한다.
Figure pat00022
또한, 비트 수집부(20)는 수학식 4를 이용하여 레이트 매처의 비트 선택의 시작 위치 K0를 산출한다.
Figure pat00023
수학식 4에서, Rsubblock는 행의 개수를 의미하고, Ncb는 버퍼의 크기를 의미한다(예, Ncb = Kw), 또한, rvidx (rvidx = 0, 1, 2 or 3)는 HARQ의 리던던시 버전 번호(redundancy version number)를 의미한다.
비트 선택부(30)는 하기와 같은 방법으로 출력 데이터를 전송한다.
Set k = 0 and j = 0
while { k < E }
if
Figure pat00024
Figure pat00025
k = k +1
end if
j = j +1
end while
여기서, E는 레이트 매칭 출력 시퀀스의 길이를 의미하고, ek(k=0,1,…,E-1)는 레이트 매칭 출력 비트 시퀀스를 의미한다.
상술한 바와 같이 레이트 매처는 서브블록 인터리빙 과정에서 (Rsubblock ×Csubblock)>D이면, ND=(Rsubblock×Csubblock-D)인 더미 비트가 추가되며(즉, yk=<NULL>) 이러한 더미 비트는 레이트 매처의 출력 데이터 전송 과정에서 제거되어야 한다. 이와 같은 더미 비트의 제거를 수행을 포함하는 레이트 매처의 하드웨어 구현은 레이트 매처의 출력 데이터 길이가 Q임에도 불구하고, 레이터 매처 출력을 위한 데이터 처리는 Q+ND 개 만큼을 수행하여야 하며, 이는 레이터 매처 출력을 불연속적으로 만들고 이로 인하여 레이트 매처의 출력단과 인터페이스되는 모듈과의 신호 제어를 복잡하게 하는 단점이 있다.
또한, 상술한 레이트 매처의 서브블록 인터리버(10)는 입력 비트 데이터에 대한 단일 비트 입력에 대한 처리는 가능하지만, 2비트 이상의 병렬 데이터 입력에 대한 처리는 불가능하다.
예를 들어, 서브블록 인터리버의 입력 데이터 길이 D=64이고, 입력 데이터 시퀀스가 1비트씩 1개의 메모리에 입력되 경우 서브블록 인터리버의 입력 및 출력 데이터 관계는 하기와 같다.
- 인터리버 입력 비트 : d(i) 0, d(i) 1, d(i) 2,…,d(i) 63 , i=0,1,2
- 인터리버 출력 비트 : v(i) 0, v(i) 1, v(i) 2,…,v(i) 63 , i=0,1,2
- 인터리버의 주요 파라미터: Csubblock=32, Rsubblock=2, ND=0
상기한 인터리버 출력 비트에 상응하는 레이트 매처의 출력 데이터는 각 메모리의 데이터를 상기한 인터리버 주소 발생 방법을 통해 출력된다. 즉, 도 2에 도시한 바와 같이 1비트 입력 데이터에 대한 서브블록 인터리버의 출력 데이터 생성에 사용되는 메모리 주소는 1비트 출력에 대해 문제없이 처리된다.
그러나, 서브블록 인터리버의 입력 데이터 길이가 D=64이고, 입력 데이터 시퀀스가 2비트씩 병렬로 2개의 메모리에 입력되는 경우에는 도 3에 도시한 바와 같이 입력 데이터는 2비트씩 동시에 입력되고 각각 2개의 메모리에 저장된다.
- 인터리버 입력 비트
bank 0: d(i) 0, d(i) 2, d(i) 4,,d(i) 2k,,d(i) 62 , k=0,1,2,…,31, i=0,1,2
bank 1: d(i) 1, d(i) 3, d(i) 5,,d(i) 2k+1,,d(i) 63 , k=0,1,2,…,31, i=0,1,2
- 인터리버 출력 비트
bank 0: v(i) 0, v(i) 2, v(i) 4,,v(i) 2k,,v(i) 62 , k=0,1,2,…,31, i=0,1,2
bank 1: v(i) 1, v(i) 3, v(i) 5,,v(i) 2k+1,,d(i) 63 ,, k=0,1,2,…,31, i=0,1,2
- 인터리버의 주요 파라미터: Csubblock=32, Rsubblock=2, ND=0
도 3에 도시한 바와 같은 레이트 매처에서는 서브블록 인터리버에 데이터가 병렬로 입력되는 경우 2개의 메모리에 대한 충돌이 발생하는 문제가 있다.
도 4는 본 발명의 일 실시예에 따른 데이터 레이트 매칭 장치의 구성을 나타내는 블록도이다. 도 5는 본 발명의 일 실시예에 따른 서브블록 인터리버의 내부 메모리의 구성을 나타내는 개념도이다. 또한, 도 6은 본 발명의 일 실시예에 따른 서브블록 인터리버의 출력 주소를 나타낸다. 또한, 도 7은 본 발명의 다른 실시예에 따른 서브블록 인터리버의 내부 메모리의 구성을 나타내는 개념도이고, 도 8은 본 발명의 다른 실시예에 따른 서브블록 인터리버의 출력 주소를 나타낸다.
도 4 내지 도 8을 참조하면, 본 발명의 일 실시예에 따른 데이터 레이트 매칭 장치는 복수의 서브블록 인터리버(110), 비트 수집부(130) 및 비트 선택부(150)를 포함한다.
서브블록 인터리버(110)는 각각 병렬로 입력되는 3개의 정보 비트 스트림 d(0) k , d(1) k , d(2) k 에 대해 인터리빙을 수행하여, 인터리빙된 v(i) k (k = 0,1,…,K)을 출력한다. 인터리빙된 데이터 스트림 v(i) k 은 비트 수집부(130)에서 생성한 가상 순환 버퍼에 수집된 후, 비트 선택부(150)에 의해 출력 비트 크기에 따라 비트가 선택되어 qk(여기서 i = 0,1,2)로 출력된다.
서브블록 인터리버(110)는 입력 비트 d(i) 0, d(i) 1, d(i) 2,,d(i) D-1 (여기서, D는 입력 비트 수, i=0,1,2)에 대해 인터리빙을 수행하여
Figure pat00026
(여기서 k=0 ~ D-1이며,
Figure pat00027
는 서브블록 인터리버 주소)를 출력한다. 서브블록 인터리버의 출력 비트 시퀀스는 인터리버 주소에 따라
Figure pat00028
에 대하여 하기와 같이 유도된다.
서브블록 인터리버(110)는 하기의 수학식 5를 이용하여 입력 데이터에 대한인터리빙을 수행한다.
Figure pat00029
수학식 5에서, mod(a, b)는 a의 b에 대한 modulus 연산 값을 의미한다.
또한, 수학식 5에서, f1과 f2는 서브블록 인터리버(110)의 입력 데이터 길이 D에 따라서 다르게 설정되며, D가 2의 배수가 아니거나, D가 4의 배수인 경우 f1은 수학식 6과 같이 산출하고, f2는 수학식 7과 같이 산출한다.
Figure pat00030
수학식 6에서, gcd(a,b)는 a와 b의 최대 공약수를 의미한다.
Figure pat00031
또는, D가 2의 배수이고, 4의 배수가 아닌 경우, f1은 수학식 8과 같이 산출하고, f2는 수학식 9와 같이 산출한다.
Figure pat00032
Figure pat00033
예를 들어, D=40인 경우, P={2,5} 이며 D=23×5이므로, f1∈{3,7,9,11,13,..39} 이며, f2∈{10,20,30,40}이다.
상기 수학식 7 및 수학식 9에서, P는 서브블록 인터리버의 입력 데이터의 길이 D를 구성하는 소수의 집합을 의미하고, P의 원소는 P = {p1,p2,..pN}이다. 여기서,
Figure pat00034
이다.
Figure pat00035
이고,
Figure pat00036
를 계산하기 위해서 하기의 수학식 10 내지 수학식 12의 조건을 만족해야 한다.
Figure pat00037
Figure pat00038
Figure pat00039
상기 수학식 10 내지 수학식 12를 이용하여 계산된 결과를 이용하여 산출한 f2는 수학식 13과 같다.
Figure pat00040
예를 들어, D=90인 경우, P={2,3,5}이며 D=2×32×5 이므로, f1∈{7,11,13,..89} 이며, f2∈{2×3×5×1, 2×3×5×2, 2×3×5×3}이다. 이때, f1과 f2의 값 중 각 하나씩을 선택하여 인터리빙 주소 생성 다항식인 수학식 5를 이용하여 데이터를 인터리빙한다.
또는, D=64인 경우, P={2} 이며 D=2×2×2×2×2×2 이므로, f1∈{2} 이며, f2∈{4×1,4×2,4×3,,mod(4×m, D)} 이다(여기서 m=1,2,3,…). 이때, f1과 f2의 값 중 각 하나씩을 선택하여 인터리빙 주소 생성 다항식인 수학식 5를 이용하여 데이터를 인터리빙한다.
종래의 기술과 비교하여 본 발명의 일 실시예에 따른 서브블록 인터리버(10)는 입력 데이터 길이가 D=64이고, 2비트씩 병렬로 입력되는 경우 인터리빙 처리에서 메모리 충돌이 발생하지 않기 때문에 2비트씩 병렬 처리가 가능하게 된다. 이 때 일예로, 서브블록 인터리버(110)는 f1=3, f2=4를 적용하여 데이터 인터리빙을 수행할 수 있다.
즉, 하기와 같이 서브블록 인터리버에 2비트씩 데이터가 입력되는 경우 도 5 및 도 6에 도시한 바와 같이, 각각 2개의 메모리에 저장되며 이에 대한 출력 데이터는 각 메모리의 데이터를 상술한 방법에 따라 인터리빙하여 출력한다. 이때, 본 발명의 일 실시예에 따른 인터리빙 방법에서는 2개의 메모리에 대한 충돌없이 병렬 처리가 가능하다.
- 서브블록 인터리버 입력 비트
bank 0: d(i) 0, d(i) 2, d(i) 4,,d(i) 2k,,d(i) 62, k=0,1,2,…,31, i=0,1,2
bank 1: d(i) 1, d(i) 3, d(i) 5,,d(i) 2k+1,,d(i) 63, k=0,1,2,…,31, i=0,1,2
- 서브블록 인터리버 출력 비트
bank 0: v(i) 0, v(i) 2, v(i) 4,,v(i) 2k,,v(i) 62, k=0,1,2,…,31, i=0,1,2
bank 1: v(i) 1, v(i) 3, v(i) 5,,v(i) 2k+1,,d(i) 63, k=0,1,2,…,31, i=0,1,2
- 서브블록 인터리버의 주요 파라미터
Figure pat00041
, 여기서 f1=3, f2=4
또는, 하기와 같이 본 발명의 일 실시예에 따른 서브블록 인터리버에 입력 데이터 길이 D=64인 데이터가 4 비트씩 병렬 입력되는 경우 도 7 및 도 8에 도시한 바와 같이, 각각 4개의 메모리에 저장되며 이에 대한 출력 데이터는 각 메모리의 데이터를 상술한 방법에 따라 인터리빙하여 출력한다. 이때, 본 발명의 일 실시예에 따른 인터리빙 방법에서는 4개의 메모리에 대한 충돌없이 병렬 처리가 가능하다.
- 서브블록 인터리버 입력 비트
bank 0: d(i) 0, d(i) 4, d(i) 8,, d(i) 4k,, d(i) 60, k=0,1,2,…,15, i=0,1,2
bank 1: d(i) 1, d(i) 5, d(i) 9,, d(i) 4k+1,, d(i) 61, k=0,1,2,…,15, i=0,1,2
bank 2: d(i) 2, d(i) 6, d(i) 10,, d(i) 4k+2,, d(i) 62, k=0,1,2,…,15, i=0,1,2
bank 3: d(i) 3, d(i) 7, d(i) 11,, d(i) 4k+3,, d(i) 63, k=0,1,2,…,15, i=0,1,2
- 서브블록 인터리버 출력 비트
bank 0: v(i) 0, v(i) 4, v(i) 8,, v(i) 4k,, v(i) 60, k=0,1,2,…,15, i=0,1,2
bank 1: v(i) 1, v(i) 5, v(i) 9,, v(i) 4k+1,, v(i) 61, k=0,1,2,…,15, i=0,1,2
bank 2: v(i) 2, v(i) 6, v(i) 10,, v(i) 4k+2,, v(i) 62, k=0,1,2,…,15, i=0,1,2
bank 3: v(i) 3, v(i) 7, v(i) 11,, v(i) 4k+3,, v(i) 63, k=0,1,2,…,15, i=0,1,2
- 서브블록 인터리버의 주요 파라미터
Figure pat00042
, 여기서 f1=3, f2=4
이상 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (12)

  1. 복수의 인터리버를 포함하는 데이터 레이트 매칭 장치의 데이터 레이트 매칭 방법에 있어서,
    상기 복수의 인터리버 각각에 직렬 또는 병렬로 입력된 부호화된 입력 데이터의 길이(D)에 기초하여 제1 파라미터(f1) 집합을 산출하는 단계;
    상기 입력 데이터의 길이(D)값을 구성하는 소수의 집합에 기초하여 제2 파라미터(f2) 집합을 산출하는 단계; 및
    상기 제1 파라미터(f1) 집합, 상기 제2 파라미터 (f2) 집합 및 상기 입력 데이터의 길이(D)에 기초하여 인터리빙을 수행하는 단계를 포함하는 이동통신 시스템의 데이터 레이트 매칭 방법.
  2. 제1항에 있어서, 상기 제1 파라미터(f1) 집합을 산출하는 단계는,
    상기 입력 데이터의 길이(D)가 2의 배수가 아니거나 4의 배수인 경우에는 상기 제1 파라미터(f1) 및 상기 입력 데이터의 길이(D)의 최대 공약수가 1을 만족하는 모든 값을 상기 제1 파라미터로 산출하는 것을 특징으로 하는 이동통신 시스템의 데이터 레이트 매칭 방법.
  3. 제1항에 있어서, 상기 제1 파라미터(f1) 집합을 산출하는 단계는,
    상기 입력 데이터의 길이(D)가 2의 배수이고, 4의 배수가 아닌 경우에는 상기 제1 파라미터(f1) 및 상기 입력 데이터의 길이(D)의 1/2의 최대 공약수가 1을 만족하는 모든 값을 상기 제1 파라미터로 산출하는 것을 특징으로 하는 이동통신 시스템의 데이터 레이트 매칭 방법.
  4. 제1항에 있어서, 상기 제2 파라미터(f2) 집합을 산출하는 단계는,
    상기 입력 데이터의 길이(D)가 2의 배수가 아니거나 4의 배수인 경우 수학식 "
    Figure pat00043
    인 모든 p" (여기서, P는 상기 입력 데이터의 길이(D)의 약수 중 소수의 집합, p는 상기 소수의 집합의 원소)를 이용하여 상기 제2 파라미터(f2) 집합을 산출하는 것을 특징으로 하는 이동통신 시스템의 데이터 레이트 매칭 방법.
  5. 제1항에 있어서, 상기 제2 파라미터(f2) 집합을 산출하는 단계는,
    상기 입력 데이터의 길이(D)가 2의 배수이고 4의 배수가 아닌 경우, 제1 파라미터(f1) 및 제2 파라미터(f2)를 더한값이 홀수이고, 수학식 "
    Figure pat00044
    인 모든 p" 를 이용하여 상기 제2 파라미터(f2) 집합을 산출하는 것을 특징으로 하는 이동통신 시스템의 데이터 레이트 매칭 방법.
  6. 제1항에 있어서, 상기 인터리빙을 수행하는 단계는
    수학식 "
    Figure pat00045
    "(여기서, k=0,1,,KΠ 이고, KΠ 는 매트릭스의 크기를 의미)에 상기 제1 파라미터(f1) 및 상기 제2 파라미터(f2)를 적용하여 인터리빙된 출력 데이터를 생성하는 것을 특징으로 하는 이동통신 시스템의 데이터 레이트 매칭 방법.
  7. 직렬 또는 병렬로 입력된 부호화된 입력 데이터의 길이(D)에 기초하여 제1 파라미터(f1) 집합을 산출하고, 상기 입력 데이터의 길이(D)값을 구성하는 소수의 집합에 기초하여 제2 파라미터(f2) 집합을 산출하며, 상기 제1 파라미터(f1) 집합, 상기 제2 파라미터 (f2) 집합 및 상기 입력 데이터의 길이(D)에 기초하여 인터리빙을 각각 수행하는 복수의 서브블록 인터리버를 포함하는 복수의 서브블록 인터리버를 포함하는 이동통신 시스템의 데이터 레이트 매칭 장치.
  8. 제7항에 있어서,
    상기 복수의 서브블록 인터리버는 각각 상기 입력 데이터의 길이(D)가 2의 배수가 아니거나 4의 배수인 경우에는 상기 제1 파라미터(f1) 및 상기 입력 데이터의 길이(D)의 최대 공약수가 1을 만족하는 모든 값을 상기 제1 파라미터로 산출하는 것을 특징으로 하는 이동통신 시스템의 데이터 레이트 매칭 장치.
  9. 제7항에 있어서,
    상기 복수의 서브블록 인터리버는 각각 상기 입력 데이터의 길이(D)가 2의 배수이고, 4의 배수가 아닌 경우에는 상기 제1 파라미터(f1) 및 상기 입력 데이터의 길이(D)의 1/2의 최대 공약수가 1을 만족하는 모든 값을 상기 제1 파라미터로 산출하는 것을 특징으로 하는 이동통신 시스템의 데이터 레이트 매칭 장치.
  10. 제7항에 있어서,
    상기 복수의 서브블록 인터리버는 각각 상기 입력 데이터의 길이(D)가 2의 배수가 아니거나 4의 배수인 경우 수학식 "
    Figure pat00046
    인 모든 p" (여기서, P는 상기 입력 데이터의 길이(D)의 약수 중 소수의 집합, p는 상기 소수의 집합의 원소)를 이용하여 상기 제2 파라미터(f2) 집합을 산출하는 것을 특징으로 하는 이동통신 시스템의 데이터 레이트 매칭 장치.
  11. 제7항에 있어서,
    상기 복수의 서브블록 인터리버는 각각 상기 입력 데이터의 길이(D)가 2의 배수이고 4의 배수가 아닌 경우, 제1 파라미터(f1) 및 제2 파라미터(f2)를 더한값이 홀수이고, 수학식 "
    Figure pat00047
    인 모든 p"를 이용하여 상기 제2 파라미터(f2) 집합을 산출하는 것을 특징으로 하는 이동통신 시스템의 데이터 레이트 매칭 장치.
  12. 제7항에 있어서,
    상기 복수의 서브블록 인터리버는 각각 수학식
    Figure pat00048
    (여기서, k=0,1,,KΠ 이고, KΠ 는 매트릭스의 크기를 의미)에 상기 제1 파라미터(f1) 및 상기 제2 파라미터(f2)를 적용하여 인터리빙된 출력 데이터를 생성하는 것을 특징으로 하는 이동통신 시스템의 데이터 레이트 매칭 장치.
KR1020100133081A 2010-12-23 2010-12-23 이동통신 시스템의 데이터 레이트 매칭 방법 및 장치 KR20120071511A (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020100133081A KR20120071511A (ko) 2010-12-23 2010-12-23 이동통신 시스템의 데이터 레이트 매칭 방법 및 장치
US13/332,875 US8792375B2 (en) 2010-12-23 2011-12-21 Data rate matching method and apparatus for use in mobile communication systems

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020100133081A KR20120071511A (ko) 2010-12-23 2010-12-23 이동통신 시스템의 데이터 레이트 매칭 방법 및 장치

Publications (1)

Publication Number Publication Date
KR20120071511A true KR20120071511A (ko) 2012-07-03

Family

ID=46316664

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100133081A KR20120071511A (ko) 2010-12-23 2010-12-23 이동통신 시스템의 데이터 레이트 매칭 방법 및 장치

Country Status (2)

Country Link
US (1) US8792375B2 (ko)
KR (1) KR20120071511A (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10306516B2 (en) * 2017-02-22 2019-05-28 Ceva D.S.P. Ltd. Rate matching for wireless communication

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2268853C (en) * 1999-04-13 2011-08-02 Wen Tong Rate matching and channel interleaving for a communications system
US6728927B2 (en) * 2000-05-26 2004-04-27 Her Majesty The Queen In Right Of Canada, As Represented By The Minister Of Industry Through The Communications Research Centre Method and system for high-spread high-distance interleaving for turbo-codes
JP4364405B2 (ja) * 2000-06-12 2009-11-18 三菱電機株式会社 通信装置および通信方法
US6785859B2 (en) * 2000-08-04 2004-08-31 Texas Instruments Incorporated Interleaver for variable block size
KR100393608B1 (ko) * 2000-09-29 2003-08-09 삼성전자주식회사 유.엠.티.에스시스템내 터보부호화기의 내부 인터리버 및인터리빙 수행 방법
EP1257064B1 (en) * 2001-05-10 2008-11-19 STMicroelectronics S.r.l. Prunable S-random block interleaver method and corresponding interleaver
US7372837B2 (en) * 2001-10-26 2008-05-13 Texas Instrument Incorporated Incremental redundancy using two stage rate matching for automatic repeat request to obtain high speed transmission
JP3624874B2 (ja) * 2001-11-19 2005-03-02 日本電気株式会社 インターリービング順序発生器、インターリーバ、ターボエンコーダ、及びターボデコーダ
US6903665B2 (en) * 2002-10-30 2005-06-07 Spacebridge Semiconductor Corporation Method and apparatus for error control coding in communication systems using an outer interleaver
JP4265345B2 (ja) * 2003-08-22 2009-05-20 日本電気株式会社 携帯電話機、インターリーブパラメータ演算装置、方法及びプログラム
KR100809619B1 (ko) * 2003-08-26 2008-03-05 삼성전자주식회사 이동 통신 시스템에서 블록 저밀도 패러티 검사 부호부호화/복호 장치 및 방법
JP4909498B2 (ja) * 2004-02-27 2012-04-04 日本電気株式会社 インターリーブパラメータ演算方法/プログラム/プログラム記録媒体/装置、携帯電話機
US7512863B2 (en) * 2005-10-12 2009-03-31 Qualcomm Corporation Turbo code interleaver for low frame error rate
US20070189231A1 (en) * 2006-02-14 2007-08-16 Chang Li F Method and system for implementing a bufferless HARQ processor

Also Published As

Publication number Publication date
US8792375B2 (en) 2014-07-29
US20120163211A1 (en) 2012-06-28

Similar Documents

Publication Publication Date Title
JP5379127B2 (ja) レートマッチングによる計算効率の高い畳み込み符号化
RU2604992C2 (ru) Устройство, содержащее кольцевой буфер и способ для присвоения вариантов избыточности кольцевому буферу
US20130318416A1 (en) Rate Matching And Channel Interleaving For A Communications System
JP2000068862A (ja) 誤り訂正符号化装置
KR101435830B1 (ko) 인터리빙 수행 방법
US8555133B2 (en) Rate matching apparatus and rate matching method thereof
JP4376905B2 (ja) 誤り訂正符号化装置および誤り訂正復号装置
US8356225B2 (en) Data derate matcher for supporting HARQ and method thereof
US20100158053A1 (en) Derate matching method and apparatus
KR20080041488A (ko) 병렬 인터리빙 장치 및 방법
CN109327276B (zh) 安全编码方法、解码方法及设备
TW200926618A (en) Devices and methods for bit-level coding and decoding of turbo codes, and a set of interleaving instructions recognizable by a data processing device
KR20060121312A (ko) 컨볼루션 터보 부호 인터리버
KR20120071511A (ko) 이동통신 시스템의 데이터 레이트 매칭 방법 및 장치
CN101667839B (zh) 交织方法
JP2023519407A (ja) データ通信のためのコーディング方法および装置
CN109391364B (zh) 一种信息处理方法及装置
CN109391365B (zh) 一种交织方法及装置
CN101582737B (zh) 卷积Turbo码交织器和解交织器
JP3628013B2 (ja) 信号送信装置および符号化装置
Ma et al. Efficient implementation of quadratic permutation polynomial interleaver in turbo codes
CN116318552B (zh) Turbo码的交织或解交织方法及其器件、通信芯片和装置
JP4308226B2 (ja) 誤り訂正符号化装置
KR20040037624A (ko) 인터리빙된 데이터 열의 디인터리빙 방법 및 장치
JP2015050541A (ja) インタリーブ装置、デインタリーブ装置、インタリーブ方法、デインタリーブ方法

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid