KR20220119468A - 디코딩 방법, 장치, 네트워크 기기 및 저장 매체 - Google Patents

디코딩 방법, 장치, 네트워크 기기 및 저장 매체 Download PDF

Info

Publication number
KR20220119468A
KR20220119468A KR1020227025481A KR20227025481A KR20220119468A KR 20220119468 A KR20220119468 A KR 20220119468A KR 1020227025481 A KR1020227025481 A KR 1020227025481A KR 20227025481 A KR20227025481 A KR 20227025481A KR 20220119468 A KR20220119468 A KR 20220119468A
Authority
KR
South Korea
Prior art keywords
data
bank
soft
target
data bank
Prior art date
Application number
KR1020227025481A
Other languages
English (en)
Inventor
리 따이
줸웨이 구어
?k웨이 구어
보 덩
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 세인칩스 테크놀로지 컴퍼니 리미티드
Publication of KR20220119468A publication Critical patent/KR20220119468A/ko

Links

Images

Classifications

    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1105Decoding
    • 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/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/11Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits using multiple parity bits
    • H03M13/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • H03M13/1148Structural properties of the code parity-check or generator matrix
    • H03M13/116Quasi-cyclic LDPC [QC-LDPC] codes, i.e. the parity-check matrix being composed of permutation or circulant sub-matrices
    • 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
    • H03M13/2703Coding, 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 the interleaver involving at least two directions
    • H03M13/2707Simple row-column interleaver, i.e. pure block interleaving
    • 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
    • H03M13/2778Interleaver using block-wise interleaving, e.g. the interleaving matrix is sub-divided into sub-matrices and the permutation is performed in blocks of sub-matrices
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3769Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using symbol combining, e.g. Chase combining of symbols received twice or more
    • 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/63Joint error correction and other techniques
    • H03M13/6306Error control coding in combination with Automatic Repeat reQuest [ARQ] and diversity transmission, e.g. coding schemes for the multiple transmission of the same information or the transmission of incremental redundancy
    • 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/63Joint error correction and other techniques
    • H03M13/635Error control coding in combination with rate matching
    • H03M13/6362Error control coding in combination with rate matching by puncturing
    • 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/0045Arrangements at the receiver end
    • H04L1/0047Decoding adapted to other signal detection operation
    • 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/0067Rate matching
    • H04L1/0068Rate matching by puncturing
    • 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
    • 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]
    • H04L1/1819Hybrid protocols; Hybrid automatic repeat request [HARQ] with retransmission of additional or different redundancy
    • 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
    • H03M13/276Interleaving address generation
    • 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/45Soft decoding, i.e. using symbol reliability information
    • 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

Landscapes

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

Abstract

본 발명은 디코딩 방법, 장치, 네트워크 기기 및 저장 매체를 제공한다. 상기 방법은, 디인터리빙 전 데이터 및 소프트 비트 인코딩 위치를 수신하는 단계; 상기 디인터리빙 전 데이터를 분할하여 제1 데이터 뱅크를 획득하는 단계; 천공된 데이터를 획득하고, 상기 천공된 데이터에 따라 제2 데이터 뱅크를 획득하는 단계 - 상기 디인터리빙 전 데이터 및 상기 천공된 데이터는 상기 소프트 비트 인코딩 위치에 따라 인코딩 데이터에서 결정됨 -; 및 상기 소프트 비트 인코딩 위치, 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크에 따라 디코딩하여 디코딩 데이터를 획득하는 단계를 포함한다.

Description

디코딩 방법, 장치, 네트워크 기기 및 저장 매체
본 발명은 통신 분야에 관한 것으로, 구체적으로 디코딩 방법, 장치, 네트워크 기기 및 저장 매체에 관한 것이다.
통신 시스템에서, 레이트 매칭의 작용은 채널 인코더에 의해 출력된 부호율을 조절하여 레이트 매칭 모듈에 의해 출력된 비트 수가 시스템에 의해 할당된 물리적 리소스가 베어링할 수 있는 비트 수와 일치하도록 하는 것이다. 레이트 매칭 과정은 일반적으로 인터리빙을 동반하며, 인터리빙은 인코딩 데이터를 스크램블링하여 신호에 오류가 발생할 때 오류를 이산화하는데 사용되고, 오류 수정 처리의 난이도를 감소시킴으로써, 인코딩 데이터를 보호하고, 인코딩 성능의 안정성을 향상시킨다.
3GPP NR 프로토콜은 업링크 및 다운링크 트래픽 채널에서 저밀도 패리티 검사 부호(Low Density Parity Check Code, LDPC)를 사용하고, 인코딩 후 먼저 레이트 매칭을 수행한 다음 인터리빙을 수행하는데, 이러한 여러개의 과정은 모두 코드 블록(Code Block, CB)을 단위로 하며, 레이트 매칭은 링 버퍼 기반의 레이트 매칭 메커니즘을 사용하고, 인터리빙은 일반적으로 사용되는 R행 C열 그룹화 인터리빙을 사용한다. 디인터리빙, 레이트 디-매칭은 레이트 매칭, 인터리빙의 역 과정이다. LDPC 디코딩은 처리율(throughput) 요구를 만족하기 위해 일반적으로 하나의 주기에서 Zc개의 소프트 비트를 판독하여 처리해야 하는데, 즉 레이트 디-매칭 또는 디코더는 Zc개의 소프트 비트를 함께 조합해야 하고, 레이트 디-매칭 과정에서 x/Zc 또는 x%Zc 등 어드레싱 동작의 수행을 간접적으로 요구하며, 여기서, x는 디코더에서 소프트 비트의 위치이고, Zc는 LDPC 인코딩에 사용되는 리프팅 팩터이며, 이와 대응되게 8개의 값이 있고, 또한 모두 소수(prime number)이므로, 이러한 어드레싱 동작의 구현이 복잡하다.
본 발명은 디코딩 방법, 장치, 네트워크 기기 및 저장 매체를 제공한다.
본 발명의 실시예는,
디인터리빙 전 데이터 및 소프트 비트 인코딩 위치를 수신하는 단계;
상기 디인터리빙 전 데이터를 분할하여 제1 데이터 뱅크를 획득하는 단계;
천공된 데이터를 획득하고, 상기 천공된 데이터에 따라 제2 데이터 뱅크를 획득하는 단계 - 상기 디인터리빙 전 데이터 및 상기 천공된 데이터는 상기 소프트 비트 인코딩 위치에 따라 인코딩 데이터에서 결정됨 - ; 및
상기 소프트 비트 인코딩 위치, 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크에 따라 디코딩하여 디코딩 데이터를 획득하는 단계를 포함하는 디코딩 방법을 제공한다.
본 발명의 실시예는,
디인터리빙 전 데이터 및 소프트 비트 인코딩 위치를 수신하도록 구성되는 디인터리빙 전 데이터 수신 모듈;
상기 디인터리빙 전 데이터를 분할하여 제1 데이터 뱅크를 획득하도록 구성되는 제1 데이터 뱅크 생성 모듈;
천공된 데이터를 획득하고, 상기 천공된 데이터에 따라 제2 데이터 뱅크를 획득하도록 구성되는 제2 데이터 뱅크 생성 모듈 - 상기 디인터리빙 전 데이터 및 상기 천공된 데이터는 상기 소프트 비트 인코딩 위치에 따라 인코딩 데이터에서 결정됨 - ; 및
상기 소프트 비트 인코딩 위치, 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크에 따라 디코딩하여 디코딩 데이터를 획득하도록 구성되는 디코딩 데이터 결정 모듈을 포함하는 디코딩 장치를 제공한다.
본 발명의 실시예는 네트워크 기기를 제공하되, 상기 네트워크 기기는 적어도 하나의 프로세서 및 메모리를 포함하고; 상기 프로세서는 메모리에 저장된 프로그램을 실행하여 본 발명의 실시예 중 어느 하나에 따른 방법을 구현하도록 구성된다.
본 발명의 실시예는 저장 매체를 제공하되, 상기 저장 매체에는 컴퓨터 프로그램이 저장되고, 상기 컴퓨터 프로그램은 프로세서에 의해 실행될 경우 본 발명의 실시예 중 어느 하나에 따른 방법을 구현한다.
본 발명의 상기 실시예 및 다른 측면 및 그 실시형태와 관련하여 도면의 설명, 구체적인 실시형태 및 청구범위에서 추가적인 설명이 제공된다.
도 1은 본 발명의 실시예에서 송신측과 수신측이 인터랙션하는 흐름도이다.
도 2는 본 발명의 실시예에서 디코딩 방법의 흐름도이다.
도 3은 본 발명의 실시예에서 인코딩 데이터 구조의 모식도이다.
도 4는 본 발명의 실시예가 적용되는 응용 장면의 모식도이다.
도 5는 본 발명의 실시예에서 소프트 비트 저장 포맷의 모식도이다.
도 6은 본 발명의 실시예에서 뱅크 처리의 타이밍도이다.
도 7은 본 발명의 실시예에서 레이트 매칭 후 데이터의 모식도이다.
도 8은 본 발명의 실시예에서 인터리빙 매트릭스의 모식도이다.
도 9는 본 발명의 실시예에서 다른 인터리빙 매트릭스의 모식도이다.
도 10은 본 발명의 실시예에서 디코딩 장치의 모식도이다.
이하, 본 발명의 목적, 기술적 해결수단 및 장점을 보다 명확하도록 하기 위해, 도면을 참조하면서 본 발명의 실시예를 상세하게 설명한다. 설명해야 할 것은, 모순되지 않는 한, 본 발명의 실시예 및 실시예의 특징은 임의로 서로 조합될 수 있다.
본 발명의 실시예에 따른 기술적 해결수단을 설명하기 전에, 이해의 편의를 위해, 먼저 송신측과 수신측의 통신 과정과 관련된 데이터 처리를 설명하되, 구체적으로 도 1에 도시된 바와 같다.
송신측은 송신 대상인 전송 블록에 따라 순환 중복 검사(Cyclic Redundancy Check, CRC) 코드를 생성하고, 전송 블록을 분할하여 전송 뱅크로서 CB를 형성하며, 각 CB의 CRC를 산출한다. 각 코드 블록에 대해 저밀도 패리티 검사(Low Density Parity Check, LDPC) 인코딩을 수행하여 CB에 대응되는 인코딩 데이터를 획득하고, 인코딩 데이터에 대해 레이트 매칭 및 인터리빙을 순차적으로 수행하여 출력 결과를 캐스케이드하며, 스크램블링, 변조, 역 고속 푸리에 변환을 순차적으로 수행하여 설정 주파수로 전송하고, 무선 인터페이스를 통해 수신측에 송신한다.
수신측은 수신된 데이터에 따라 각각 고속 푸리에 변환, 채널 추정 및 복조, 디스크램블링 및 디코드 블록 캐스케이드를 순차적으로 수행한 다음, 각 코드 블록에 대응되는 데이터를 디인터리빙하고, 획득된 디인터리빙 전 데이터에 대해 레이트 디-매칭 및 소프트 병합을 수행함으로써, 디코딩 대상인 데이터를 획득한 다음, 디코딩 대상인 데이터에 대해 LDPC 디코딩을 수행하여 디코딩 데이터를 획득하되, 디코딩 데이터와 인코딩 데이터는 동일하다. 마지막으로, 획득된 코드 블록에 대해 CRC 검증을 수행하고, CRC 검증을 통과한 다수의 코드 블록에 대해 디코드 블록 분할을 수행하여 전송 블록을 획득한다. 이와 동시에, 전송 블록에 대해 CRC 검증을 수행하고, 검증을 통과한 전송 블록은 송신측에 의해 실제로 송신된 데이터로 되며, 수신측은 상기 데이터에 대해 후속 처리를 수행할 수 있다.
여기서,
하나의 CB의 모든 시스템 비트와 CRC 검사 비트를 더하여 K'개의 비트로 설정하고, 그 중 L개의 CRC 검사 비트(L>0)가 있으며, 대응되는 시퀀스는 다음과 같다.
c0, c1, c2, ......cK’-1
현재 프로토콜은 기본 그래프 1(BG1) 또는 기본 그래프 2(BG2)의 두 가지 LDPC 검사 매트릭스가 있다고 규정하였다.
기본 그래프가 결정된 후, K’ 및 기본 그래프에 따라, 상기 CB 인코딩 시 사용된 LDPC 리프팅 팩터 Zc를 유일하게 결정할 수 있다.
리프팅 팩터 Zc는 수학식 Zc=a×2j에 기반하여 결정될 수 있다. 여기서 j=0,1,...,7이며, Zc≤384이고, 동시에 a는 소수이며 집합{2,3,5,7,9,11,13,15} 중 임의의 하나이다. Zc는 하나의 코드 블록에 포함된 정보 비트와 CRC 검사 비트 수의 합, 및 LDPC 기본 그래프(값은 1 또는 2임)에 의해 결정된다.
LDPC 인코딩 후, 즉 레이트 매칭 전의 N개의 비트 시퀀스는 다음과 같다.
d0, d1, d2, ......dN-1
여기서, 시스템 비트는 다음과 같다.
Figure pct00001
이로부터 시스템 비트는 다음과 같음을 알 수 있다.
Figure pct00002
고정 및 천공되어 수신측에 송신되지 않는다.
필러 비트(Filler Bits) 위치는 다음과 같다(K-K'개의 필러 비트를 포함).
ds=<NULL>, s=K’-2Zc, ..., K-1
여기서, 기본 그래프 1인 경우, K=22Zc이고; 기본 그래프 2인 경우, K=10Zc이다.
나머지 비트는 LDPC 검사 매트릭스에 따라 생성된 검사 비트이다.
이어서, 레이트 매칭을 수행한다.
E를 레이트 매칭 후 출력된 비트 수로 설정하면, 레이트 매칭 과정은 다음과 같다.
Figure pct00003
여기서, Ncb≤N이고, Ncb는 제한된 버퍼 기반의 레이트 매칭에서의 링 버퍼 실제 크기이며;
k0은 상이한 리던던시 버전의 레이트 매칭 시작 위치이고, k0에 대응되는 크기(즉, K’-2Zc번째 소프트 비트와의 사이에 포함된 소프트 비트 수)는 Zc의 정수배이다.
상기 코드 블록 레이트 매칭 후 출력된 비트 수, 즉 송신측에 의해 실제로 송신된 비트 수의 값은 Qm의 정수배여야 한다.
그 다음, 인터리빙을 수행한다.
Figure pct00004
여기서, Qm은 변조 차수이고, E는 레이트 매칭 후 출력된 비트 수이며, Qm으로 나누어 떨어질 수 있다.
상기 인터리빙은 행열 인터리버이되, 행 수 R=Qm이며, 열 수 C=E/Qm이다.
마지막으로, 코드 블록 캐스케이드, 스크램블링, 변조, 레이어 매핑, 역 고속 푸리에 변환 등 처리를 수행하고, 안테나를 통해 송신하여 처리한다. 변조 시, 1열 Qm행 소프트 비트는 모두 동일한 성상 포인트(Constellation Point)에 변조된다.
실시예
도 2는 본 발명의 실시예에 따른 디코딩 방법의 흐름도이고, 본 실시예는 통신 데이터의 수신측에서 통신 데이터에 대해 디인터리빙 및 레이트 디-매칭을 수행하는 경우에 적용될 수 있다. 상기 방법은 본 발명의 실시예에 따른 디코딩 장치에 의해 수행될 수 있고, 상기 장치는 소프트웨어 및/또는 하드웨어 방식으로 구현될 수 있으며, 일반적으로 네트워크 기기에 집적될 수 있다. 도 2에 도시된 바와 같이, 구체적으로 다음과 같은 단계 S110, S120, S130, S140를 포함한다.
단계 S110에서, 디인터리빙 전 데이터 및 소프트 비트 인코딩 위치를 수신한다.
디인터리빙 전 데이터는 소프트 비트일 수 있다. 디인터리빙 전 데이터는 실제로 송신측에 의해 행 별로 인터리빙 매트릭스(interleaving matrix)에 기록되고 열 별로 판독된 비트 데이터이고, 송신측의 하나의 비트는 수신측의 하나의 소프트 비트에 대응된다. 디인터리빙 전 데이터는 송신측이 CB를 인터리빙하여 획득한 인터리빙 데이터와 동일해야 하지만, 무선 인터페이스(air interface)를 통해 전송되기 때문에, 수신측에 의해 수신된 데이터는 반드시 정확한 것은 아니며, 즉 디인터리빙 전 데이터는 인터리빙 데이터와 반드시 동일한 것은 아니다.
소프트 비트 인코딩 위치는 적어도 인코딩 데이터(즉, 디코딩 데이터)에서 디인터리빙 전 데이터 중 각 소프트 비트의 위치를 포함한다. 소프트 비트 인코딩 위치는 수신된 인터리빙 매트릭스에 따라 결정될 수 있고, 송신측에 의해 직접 수신측으로 송신될 수도 있다. 인코딩 데이터는 송신측이 인코딩을 수행한 후 또한 레이트 매칭 및 인터리빙을 수행하기 전의 데이터이다.
본 발명의 실시예의 디코딩 과정은 수신된 디인터리빙 전 데이터에 대해 레이트 디-매칭및 소프트 병합(soft combining)을 수행하여 디코딩 대상인 데이터를 획득하고 디코딩 대상인 데이터를 디코딩하는 과정이다. 디코딩 대상인 데이터는 디코딩하여 디코딩 데이터를 획득하는데 사용되고, 인코딩 데이터와 디코딩 대상인 데이터는 동일하다. 실제로, 디코딩하기 전에, 먼저 어떠한 처리도 거치지 않은 인코딩 데이터로 복원해야 하며, 이에 따라 정확한 디코딩을 구현한다.
소프트 비트는 수신측이 신호를 수신한 후 판단하지 않고, 양자화를 위해 아날로그량을 직접 출력하는 비트를 의미한다.
단계 S120에서, 상기 디인터리빙 전 데이터를 분할하여 제1 데이터 뱅크를 획득한다.
제1 데이터 뱅크는 적어도 2개의 소프트 비트를 포함하고, 소프트 비트를 조합하는데 사용되며, 레이트 디-매칭 및 소프트 병합의 처리 뱅크로 사용되어 처리된다.
상기 디인터리빙 전 데이터를 분할하는 것은 실제로 디인터리빙 전 데이터에 포함된 모든 소프트 비트를 그룹화하는 것이다.
단계 S130에서, 천공된 데이터(punctured data)를 획득하고, 상기 천공된 데이터에 따라 제2 데이터 뱅크를 생성한다. 여기서, 상기 디인터리빙 전 데이터 및 상기 천공된 데이터는 상기 소프트 비트 인코딩 위치에 따라 인코딩 데이터에서 결정된다.
여기서, 단계 S120의 순서는 단계 S130과 조절되어 단계 S130 이후에 수행될 수 있거나, 단계 S130과 동시에 수행될 수도 있으며, 본 발명의 실시예는 이에 대해 구체적으로 제한하지 않는다.
실제로, 본 발명의 실시예에서 레이트 매칭은 송신측이 물리적 채널의 베어링 능력을 매칭하기 위해 비트를 반복하거나 데이터를 천공하는 것이다. 천공은 물리적 채널이 베어링할 수 없는 비트를 리던던시 데이터로서 펑쳐링하며, 동시에 뒤에 있는 소프트 비트를 순차적으로 하나씩 앞으로 이동시키는 것이다. 반복은 반복 효과를 달성하기 위해 버퍼에서 숫자를 주기적으로 가져오는 것으로, 반복된 비트는 인접하지 않는다. 레이트 디-매칭은 반대되는 것으로, 펑쳐링된 비트를 복원하고 반복된 비트를 병합하는 것이다. 여기서, 천공 및 반복은 모두 선택적이다. 본 발명의 실시예에서 레이트 매칭은 링 버퍼를 기반으로 하는 레이트 매칭 메커니즘이다.
천공된 데이터는 레이트 매칭 과정에서 펑쳐링된 소프트 비트이다. 천공된 데이터는 디인터리빙 전 데이터와 조합하여 인코딩 데이터와 동일한 디코딩 대상인 데이터를 생성하는데 사용된다.
제2 데이터 뱅크는 적어도 2개의 소프트 비트를 포함하고, 소프트 비트를 조합하는데 사용되고, 인코딩 데이터 중 펑쳐링된 처리 뱅크로 사용되며, 제1 데이터 뱅크와 조합하여 디코딩 대상인 데이터를 형성하는데 사용된다.
실제로, 인코딩 데이터는 소프트 비트 시퀀스로 간주될 수 있고, 레이트 매칭을 통해 디인터리빙 전 데이터를 획득하며, 인코딩 데이터에서 삭제된 데이터는 천공된 데이터에 속한다. 도 3에 도시된 바와 같이, 인코딩 데이터는 시스템 비트, 필러 비트(3) 및 검사 비트를 포함한다. 여기서, 통신 표준에서, 시스템 비트에 포함된 처음 2Zc개의 비트는 천공된 데이터로 고정된다. 이 밖에, 시스템 비트는 또한 다른 천공된 데이터를 포함할 수 있고, 검사 비트에는 다른 다른 천공된 데이터가 존재할 수도 있다. 설명해야 할 것은, 시스템 비트에 포함된 다른 천공된 데이터, 검사 비트에 포함된 천공된 데이터 및 필러 비트는 모두 존재하거나 존재하지 않을 수 있다. 여기서, 처음 2Zc개의 비트는 천공된 데이터로 고정되지만, 상기 천공된 데이터의 복원 동작은 레이트 디-매칭에 속하지 않는다. 나머지 천공된 데이터의 복원 동작은 레이트 디-매칭에 속한다.
소프트 비트 인코딩 위치는 인코딩 데이터에서 디인터리빙 전 데이터 중 각 소프트 비트의 위치 및 인코딩 데이터에서 천공된 데이터 중 각 소프트 비트의 위치를 포함한다. 인코딩 데이터는 레이트 매칭 과정을 완료한 다음 인터리빙 등 동작을 수행한다. 이에 따라, 인코딩 데이터는 소프트 비트 인코딩 위치에 대해, 인코딩 데이터에서 천공된 데이터 중 소프트 비트가 위치한 위치에 따라, 천공된 데이터를 결정할 수 있다. 디인터리빙 전 데이터는 다양한 형태의 데이터를 포함할 수 있는데, 예를 들어, 반복된 소프트 비트를 획득하여 반복하여 형성된 데이터; 재전송된 소프트 비트를 획득하여 형성된 데이터; 반복되지 않은 소프트 비트를 획득하여 형성된 데이터 등을 포함할 수 있다. 여기서, 반복된 소프트 비트, 재전송된 소프트 비트 및 반복되지 않은 소프트 비트는 디인터리빙 전 데이터에 위치함으로써, 인코딩 데이터에서 반복된 소프트 비트, 재전송된 소프트 비트 및 반복되지 않은 소프트 비트의 위치에 따라, 인코딩 데이터에서 디인터리빙 전 데이터 중 각 소프트 비트의 위치를 결정할 수 있다. 여기서, 반복된 소프트 비트는 실제로 반복적으로 나타난 것인데, 즉 인코딩 데이터에서 디인터리빙 전 데이터 중 다수의 소프트 비트의 위치와 동일하다.
예시적인 일 실시형태에서는, 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크의 뱅크 길이는 모두 타깃 길이이고, 상기 타깃 길이는 리프팅 팩터에 따라 결정되며, 상기 타깃 길이는 상기 리프팅 팩터와 관련된 나누어 떨어지는 조건을 만족시킨다.
타깃 길이는 제1 데이터 뱅크 및 제2 데이터 뱅크에 포함된 소프트 비트의 최대 개수를 결정하는데 사용된다. 리프팅 팩터는 송신측에서 인코딩에 사용되는 리프팅 팩터를 의미할 수 있고, 비트 수 확장의 배수를 특성화한다.
뱅크의 길이를 모두 타깃 길이로 구성하고 리프팅 팩터에 따라 결정함으로써, 뱅크의 길이를 합리적으로 구성할 수 있고, 동시에 각 뱅크의 길이는 동일하므로, 뱅크 중의 소프트 비트를 어드레싱하는데 편리하다.
실제로, 수신측은 하나의 CB를 처리하고, CB가 정확하게 디코딩된 경우, 상기 CB의 디인터리빙 및 레이트 디-매칭 과정이 종료된다.
CB가 처음으로 전송될 경우, 일반적으로 HARQ 중 상기 CB에 저장된 이력 병합 데이터를 리셋한다. 디인터리빙 전 데이터와 관련된 코드 블록 처리가 완료되면, 상기 코드 블록의 관련 데이터를 삭제하거나 코드 블록의 관련 데이터에 코드 블록 식별자를 추가하여, 상기 코드 블록의 관련 데이터와 다음 코드 블록의 관련 데이터를 구분할 수 있다. 여기서, 코드 블록 식별자는 각 코드 블록의 유효 구간을 표시하는데 사용된다.
수신측이 전송된 모든 데이터를 수신한 후, 링 버퍼 포맷으로 HARQ에 저장되고, 인코딩 후의 원래 순서로 LDPC 디코더에 저장된다. 디코딩이 매번 1개의 Zc의 데이터를 처리하므로, 하나의 주소에 Zc개의 소프트 비트를 저장해야 한다. 마지막 주소에 저장될 경우, 마지막 주소에 속한 수신된 소프트 비트의 총 개수는 Zc보다 작으면, 0으로 채워 마지막 주소의 소프트 비트의 개수가 Zc와 같도록 할 수 있다.
여기서, 하나의 선택 가능한 실시예에서, 타깃 길이는 리프팅 팩터와 관련된 나누어 떨어지는 조건을 만족시켜야 하고, 리프팅 팩터가 타깃 길이로 나누어 떨어질 수 있음을 의미하므로, 하나의 데이터 뱅크의 데이터가 상이한 Zc에 속하는 경우가 존재하지 않음으로, 하나의 데이터 뱅크의 데이터가 2개의 Zc에 걸쳐 있지 않도록 보장하고, LDPC 디코더의 저장 포맷과 매칭될 수 있으며, n개의 데이터 뱅크의 데이터는 마침 하나의 주소에 저장 가능한 Zc개의 소프트 비트와 동일하므로, 하나의 주소를 초과하지 않도록 보장함으로써, 처리의 복잡성을 감소시킨다.
예시적인 일 실시형태에서는, 상기 타깃 길이는 리프팅 팩터와 2의 설정값의 거듭제곱의 비율이고, 상기 제1 개수는 설정 개수 임계값 이하이며, 상기 설정 개수 임계값은 작동 주파수 및 사용 가능한 리소스에 따라 결정된다.
예시적으로, CB는 LDPC 인코딩을 사용하고, 리프팅 팩터는 LDPC 인코딩의 리프팅 팩터이다.
리프팅 팩터 Zc는 수학식 Zc=a×2j에 기반하여 결정될 수 있다. 여기서 j=0,1,...,7이며, Zc≤384이고, 동시에 a는 소수이며 집합{2,3,5,7,9,11,13,15} 중 임의의 하나이다. Zc는 하나의 코드 블록에 포함된 정보 비트와 CRC 검사 비트 수의 합, 및 LDPC 기본 그래프(값은 1 또는 2임)에 의해 결정된다.
뱅크의 길이를 모두 타깃 길이로 구성하고 리프팅 팩터에 따라 결정함으로써, 뱅크의 길이를 합리적으로 구성할 수 있고, 동시에 각 뱅크의 길이는 동일하므로, 뱅크 중의 소프트 비트를 어드레싱하는데 편리하다.
예시적인 일 실시형태에서는, 상기 타깃 길이는 리프팅 팩터와 2의 설정값의 거듭제곱의 비율이고, 상기 제1 개수는 설정 개수 임계값 이하이며, 상기 설정 개수 임계값은 작동 주파수 및 사용 가능한 리소스에 따라 결정된다.
구체적으로, 타깃 길이는 Zs이다. 임계값을 A로 설정하고, Zs≤A이며, A는 작동 주파수 및 사용 가능한 리소스에 따라 결정되고, 설정값은 m이다. 구체적으로, Zs는 다음과 같은 과정에 따라 결정된다.
Zs=Zc;
m=0;
Zs가 A보다 크면, Zs=Zs/2, m=m+1로 하되, Zs가 Zs≤A를 만족시킬 때까지 이 과정을 반복한다.
리프팅 팩터에 따라 타깃 길이를 결정하여, 뱅크의 길이를 합리적으로 구성할 수 있기에, 한 번에 처리되는 소프트 비트가 너무 많거나 너무 적은 것을 방지함으로써, 소프트 비트의 레이트 매칭 효율을 향상시킨다.
단계 S140에서, 상기 소프트 비트 인코딩 위치, 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크에 따라 디코딩하여 디코딩 데이터를 획득한다.
소프트 비트 인코딩 위치, 제1 데이터 뱅크 및 제2 데이터 뱅크는 디코딩 대상인 데이터를 결정하는데 사용된다. 구체적으로, 제1 데이터 뱅크 및 제2 데이터 뱅크는 조합되어 디코딩 대상인 데이터를 형성할 수 있고, 상기 디코딩 대상인 데이터를 디코딩하여 디코딩 데이터를 획득한다. 조합 방식은 제1 데이터 뱅크와 제2 데이터 뱅크의 위치 관계를 알아야 하고, 소프트 비트 인코딩 위치에 따라 인코딩 데이터(즉, 디코딩 대상인 데이터)에서 제1 데이터 뱅크 및 제2 데이터 뱅크 중 소프트 비트의 위치를 결정할 수 있음으로써, 위치 관계에 따라 제1 데이터 뱅크 및 제2 데이터 뱅크를 배열하여 디코딩 대상인 데이터를 획득할 수 있음을 이해할 수 있다.
예시적인 일 실시형태에서는, 상기 소프트 비트 인코딩 위치, 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크에 따라 디코딩하는 상기 단계는, 상기 소프트 비트 인코딩 위치 및 각 상기 제1 데이터 뱅크 중 첫 번째 소프트 비트에 따라 각 상기 제1 데이터 뱅크의 뱅크 인코딩 위치를 결정하는 단계; 상기 소프트 비트 인코딩 위치 및 각 상기 제2 데이터 뱅크 중 첫 번째 소프트 비트에 따라 각 상기 제2 데이터 뱅크의 뱅크 인코딩 위치를 결정하는 단계; 각 상기 뱅크 인코딩 위치에 따라 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크를 디코더에서 매칭되는 저장 주소에 각각 저장하여 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크를 배열하고, 디코딩 대상인 데이터를 형성하여, 상기 디코더가 상기 디코딩 대상인 데이터를 디코딩하도록 하는 단계를 포함한다.
여기서, 제1 데이터 뱅크 및 제2 데이터 뱅크는 소프트 비트 시퀀스로 간주될 수 있다. 인코딩 데이터에서 소프트 비트 시퀀스 중 첫 번째 소프트 비트의 위치를 인코딩 데이터에서 상기 소프트 비트 시퀀스의 위치, 즉, 뱅크의 뱅크 인코딩 위치로 사용할 수 있다. 각 뱅크 중 첫 번째 소프트 비트를 제외한 위치는 소프트 비트 사이의 순서, 즉 상대적 위치, 및 뱅크 인코딩 위치에 따라 결정될 수 있다.
이와 대응되게, 각 뱅크를 저장할 경우, 뱅크 인코딩 위치에 대응되는 저장 주소에 첫 번째 소프트 비트를 기록하고, 상기 저장 주소의 1비트 만큼 오프셋된 주소에 다음 소프트 비트를 기록한 다음, 후속적으로 주소를 오프셋한 후 후속의 소프트 비트를 순차적으로 기록하는데, 이와 같이 유추하여 뱅크 중의 소프트 비트를 순서에 따라 디코더에 하나씩 기록한다.
디코더에서 매칭되는 저장 주소와 뱅크 인코딩 위치는 대응된다. 각 제1 데이터 뱅크 및 각 제2 데이터 뱅크의 뱅크 인코딩 위치에 따라 매칭되는 위치에 각각 저장되므로, 저장하는 동시에 뱅크 인코딩 위치에 따라 각 제1 데이터 뱅크 및 각 제2 데이터 뱅크를 배열함으로써, 스플라이싱(splicing) 조합하여 디코딩 대상인 데이터를 형성한다.
소프트 비트 인코딩 위치에 따라 각 제1 데이터 뱅크 및 각 제2 데이터 뱅크의 뱅크 인코딩 위치를 결정하고, 각 제1 데이터 뱅크 및 각 제2 데이터 뱅크를 뱅크 인코딩 위치와 매칭되는 저장 주소에 대응되게 저장하여, 디코더에서 각 제1 데이터 뱅크 및 각 제2 데이터 뱅크를 배열 및 조합하므로, 정확한 레이트 디-매칭을 보장함으로써, 정확하게 스플라이싱하여 디코딩 대상인 데이터를 형성한다.
본 발명의 실시예에 따른 디코딩 방법, 장치, 네트워크 기기 및 저장 매체는, 디인터리빙 전 데이터 중의 소프트 비트를 분할하여 다수의 제1 데이터 뱅크를 형성하고, 아울러, 천공된 데이터를 획득하며, 소프트 비트를 분할하여 다수의 제2 데이터 뱅크를 생성하고, 소프트 비트 인코딩 위치, 제1 데이터 뱅크 및 제2 데이터 뱅크에 따라 디코딩 대상인 데이터를 형성하여 디코딩함으로써, 다수의 소프트 비트를 뱅크로 형성하여 처리하므로, 종래 기술에서 레이트 디-매칭 과정에서 소프트 비트를 하나씩 처리함으로 인해 레이트 디-매칭 효율이 낮은 문제를 해결하고, 레이트 디-매칭 및 디코딩 과정에서 소프트 비트를 하나씩 단독으로 어드레싱하는 경우를 감소시킬 수 있으며, 레이트 디-매칭 및 디코딩 효율을 향상시킬 수 있다.
예시적인 일 실시형태에서는, 디인터리빙 전 데이터를 수신하고, 상기 디인터리빙 전 데이터를 분할하여 제1 데이터 뱅크를 획득하는 상기 단계는, 디인터리빙 매트릭스에 의해 열 별로 출력된 소프트 비트를 다중 채널에서 병렬 수신하는 단계; 각 채널에서 수신된 소프트 비트를 순차적으로 저장하여 다수의 제3 데이터 뱅크를 생성하는 단계; 설정 주기 개수의 클록 주기에 따라 각 상기 제3 데이터 뱅크를 순차적으로 소프트 병합하여, 다수의 제1 데이터 뱅크를 형성하는 단계를 포함한다.
실제로, 디인터리빙 전 데이터는 디인터리빙 매트릭스에서 획득된 것이다. 디인터리빙 매트릭스는 열 별로 출력하되, 인터리빙 매트릭스에는 모두 Qm개의 행이 있고, 각 열은 Qm개의 소프트 비트를 출력한다. 디인터리빙 전 열 별로 출력된 소프트 비트를 다중 채널에서 병렬 수신하고, 하나의 설정 주기 개수의 클록 주기 내에, 각 채널은 최대로 하나의 소프트 비트를 수신한다. 각 채널은 수신된 소프트 비트를 각각 수신 순서에 따라 저장하는데, 즉 하나의 채널에 저장된 소프트 비트는 디인터리빙 매트릭스 중의 하나의 행의 소프트 비트이다.
Qm개의 직병렬 변환 모듈을 구성할 수 있고, 각 직병렬 변환 모듈은 병렬로 작동하며, 각 직병렬 변환 모듈은 디인터리빙 매트릭스의 하나의 행을 처리하여 소프트 비트를 다중 채널에서 병렬 수신하고, 순차적으로 저장함으로써, 제3 데이터 뱅크의 소프트 비트 수집을 독립적으로 완료하여 하나의 제3 데이터 뱅크를 형성한다. 이와 동시에, 소프트 비트 위치에 따라 인코딩 데이터에서 제3 데이터 뱅크 중 수신된 첫 번째 소프트 비트의 위치를 결정하고, 이 위치를 제3 데이터 뱅크의 뱅크 인코딩 위치로 사용하며, 형성된 제3 데이터 뱅크는 다음 처리 모듈에 송신되어 후속 처리된다.
Qm개의 직병렬 변환 모듈은 Qm의 정수배의 제3 데이터 뱅크를 생성할 수 있다. 제3 데이터 뱅크의 처리 과정에서, 직렬 처리 방식으로 각 제3 데이터 뱅크를 각각 순차적으로 처리한다.
여기서, 소프트 병합은 하이브리드 자동 반복 요청(Hybrid Automatic Repeat request, HARQ) 기반의 병합을 의미한다. 실제로, 송신측은 데이터 패킷을 송신한 후 수신측이 정확히 수신했다는 메시지의 피드백을 기다려야 하는데, 피드백이 없으면, 송신측은 상기 데이터 패킷 또는 상기 데이터 패킷의 일부를 재전송하여 수신측이 정확한 데이터 패킷을 수신할 수 있도록 보장한다. 수신측은 제3 데이터 뱅크를 획득한 후, HARQ 메모리에서 매칭되는 버퍼 데이터를 병합할 수 있고, 병합된 뱅크를 제1 데이터 뱅크로 사용하며, 동시에, 상기 제1 데이터 뱅크는 정확하게 전송된 유효 데이터 뱅크다.
여기서, 직렬 처리의 순서를 결정하는 방식은, 설정 규칙(예를 들어, 폴링)에 따라 순차적으로 다중 채널에서 하나의 채널을 선택하여 형성된 제3 데이터 뱅크를 처리 뱅크로 사용하여 처리하는 방식일 수 있다.
설정 주기 개수의 클록 주기는 제3 데이터 뱅크의 처리 주파수로 사용되는데, 즉 다중 채널에서 하나의 채널을 선택하여 형성된 제3 데이터 뱅크의 선택 주파수로 사용된다. 설정 주기 개수의 클록 주기는 필요에 따라 설정될 수 있다. 일반적으로 하나의 클록 주기의 지속 시간은 하나의 제3 데이터 뱅크의 처리 태스크를 완료하기에 충분하지 않고, 다수의 클록 주기를 하나의 처리 주기로서 선택하여 하나의 제3 데이터 뱅크의 처리 태스크를 완료할 수 있다.
디인터리빙 매트릭스에 의해 출력된 소프트 비트를 병렬로 수신하고, 소프트 비트를 순차적으로 저장하여 제3 데이터 뱅크를 형성하며, 소프트 비트를 뱅크로 변환하고, 동시에 각 제3 데이터 뱅크를 직렬로 처리함으로써, 뱅크 형태로 처리하여 소프트 비트의 처리 효율을 향상시킨다.
예시적인 일 실시형태에서는, 각 채널에서 수신된 소프트 비트를 순차적으로 저장하여 다수의 제3 데이터 뱅크를 생성하는 상기 단계는, 수신된 타깃 소프트 비트가 필러 비트 시작 인접 조건을 만족하면, 상기 타깃 소프트 비트를 수신된 마지막 소프트 비트로 사용하여 현재 제3 데이터 뱅크를 생성하고, 다음 소프트 비트를 계속하여 수신하여 다음 제3 데이터 뱅크를 생성하는 단계를 포함한다.
실제로, 인코딩 데이터는 필러 비트를 포함할 수 있고, 필러 비트는 디인터리빙 전 데이터에 존재하지 않음으로써, 디인터리빙 전 데이터를 저장할 경우, 현재 제3 데이터 뱅크에서 필러 비트의 위치를 미리 남겨둘 수 있으며, 수신된 다음 소프트 비트에 따라 다음 제3 데이터 뱅크를 생성한다. 여기서, 타깃 소프트 비트가 마침 현재 제3 데이터 뱅크 중의 마지막 소프트 비트이면, 현재 제3 데이터 뱅크에서 필러 비트의 위치를 미리 남겨둘 필요없이 현재 제3 데이터 뱅크를 직접 생성한다. 수신된 다음 소프트 비트에 따라 새로운 제3 데이터 뱅크를 형성하며, 수신된 다음 소프트 비트는 제3 데이터 뱅크의 첫 번째 소프트 비트이다.
실제로, 제3 데이터 뱅크를 미리 구축할 수 있고, 여기에 수신된 소프트 비트를 채우는 동시에 필러 비트의 위치에는 소프트 비트를 채우지 않고, 위치를 미리 남겨둔다.
필러 비트 시작 인접 조건은 인코딩 데이터에서 수신된 소프트 비트의 위치가 타깃 길이 만큼 오프셋된 위치가 필러 비트의 위치인지 여부를 결정하는데 사용된다. 타깃 소프트 비트는 인코딩 데이터에서 위치가 타깃 길이 만큼 오프셋된 위치가 필러 비트의 위치인 소프트 비트를 의미한다. 타깃 소프트 비트는 현재 제3 데이터 뱅크 중의 소프트 비트의 획득을 종료할지 여부를 결정하는데 사용된다. 현재 제3 데이터 뱅크는 현재 생성할 제3 데이터 뱅크를 의미한다. 현재 제3 데이터 뱅크는 상기 타깃 소프트 비트를 디인터리빙 전 데이터에서 수신된 마지막 소프트 비트로 사용할 수 있고, 타깃 소프트 비트가 현재 제3 데이터 뱅크 중의 마지막 소프트 비트이면, 직접 현재 제3 데이터 뱅크를 생성하며; 아니면, 필러 비트의 위치를 미리 남겨두고, 현재 제3 데이터 뱅크를 생성하는데, 이때, 상기 현재 제3 데이터 뱅크에 포함되고 디인터리빙 전 데이터에 속하는 소프트 비트의 개수는 타깃 길이보다 작다.
실제로, 인코딩 데이터 중의 소프트 비트를 배열 순서에 따라 넘버링할 수 있고, 순번은 소프트 비트의 위치로 사용된다.
구체적으로, 필러 비트 시작 인접 조건은 인코딩 데이터에서 소프트 비트의 위치가 K’-2Zc-1인지 여부를 포함한다. 소프트 비트의 위치가 K’-2Zc-1이면, 상기 소프트 비트가 필러 비트 시작 인접 조건을 만족한다고 결정한다.
다음 소프트 비트를 계속하여 수신하고, 상기 소프트 비트를 새로운 제3 데이터 뱅크의 첫 번째 소프트 비트로 사용하여 새로운 제3 데이터 뱅크를 생성한다.
제3 데이터 뱅크에서 필러 비트의 위치를 미리 남겨두어, 인코딩 데이터에서 제3 데이터 뱅크 중 소프트 비트의 위치가 모두 연속적이도록 보장할 수 있음으로써, 후속적으로 제3 데이터 뱅크를 배열할 경우, 정확하게 배열할 수 있으므로, 하나의 제3 데이터 뱅크에 비연속적인 다수의 소프트 비트가 포함되어 대응되는 제1 데이터 뱅크가 분할 처리되어야만 배열 및 조합될 수 있는 것을 방지하고, 직접 제1 데이터 뱅크를 단위로 하여 배열 및 조합할 수 있음으로써, 제1 데이터 뱅크의 처리 효율을 향상시킨다.
예시적인 일 실시형태에서는, 상기 제3 데이터 뱅크를 소프트 병합하여 제1 데이터 뱅크를 형성하는 상기 단계는, 상기 제3 데이터 뱅크에 대응되는 뱅크 인코딩 위치에 따라, 병합 대상인 집합에서 상기 제3 데이터 뱅크와 매칭되는 병합 대상인 뱅크를 조회하고 병합하여 제1 데이터 뱅크를 획득하는 단계; 상기 제1 데이터 뱅크에 따라 상기 병합 대상인 집합에서 상기 매칭된 병합 대상인 뱅크를 업데이트하는 단계를 포함하되, 상기 병합 대상인 뱅크의 뱅크 길이는 상기 타깃 길이이고, 상기 병합 대상인 뱅크는 이력 병합 데이터를 저장하는데 사용되며, 상기 이력 병합 데이터는 상기 제3 데이터 뱅크 중 소프트 비트와 병합하여 상기 제3 데이터 뱅크 중 소프트 비트를 업데이트하는데 사용된다.
병합 대상인 집합은 이력 병합 데이터를 저장하는데 사용되고, 이력 병합 데이터는 병합 대상인 뱅크의 형태로 저장된다. 이력 병합 데이터의 기본값은 0이고, 처음 전송된 데이터를 병합 대상인 집합에 저장하여 이력 병합 데이터로 사용할 수 있으며, 수신측이 정확하게 디코딩할 수 있으면, 디코딩하여 획득된 디코딩 데이터를 후속 처리하고, 병합 대상인 집합 중의 데이터는 리셋되거나 다음 CB를 위해 새로운 병합 대상인 집합을 구성할 수 있다. 수신측이 정확하게 디코딩할 수 없는 것을 발견하면, 송신측이 데이터를 재전송하도록 요청한다. 여기서, 상기 재전송 데이터는 CB 중의 모든 데이터이거나 CB 중의 일부 데이터일 수 있다. 수신측은 두 번째 재전송된 데이터와 저장된 처음 전송된 데이터, 즉 이력 병합 데이터에 따라 병합을 수행하고, 병합된 데이터에 따라 이력 병합 데이터를 업데이트하며, 디코딩하고, 정확하게 디코딩되면, 디코딩하여 획득된 디코딩 데이터를 후속 처리하며; 정확하게 디코딩할 수 없으면, 데이터를 재전송하도록 계속하여 요청하며, 상기 단계를 반복한다.
이력 병합 데이터는 실제로 과거에 전송된 데이터를 병합한 후의 데이터이다. 디인터리빙 전 데이터에 오류가 존재할 수 있으므로, 대응되게 형성된 제3 데이터 뱅크에 오류가 존재하는데, 이때 이력 병합 데이터에 따라 수정할 수 있음으로써, 정확한 제1 데이터 뱅크를 형성하도록 보장한다.
병합 대상인 집합은 HARQ 메모리에 위치하고, HARQ 메모리에서 병합 대상인 뱅크의 저장 위치는 제3 데이터 뱅크의 뱅크 인코딩 위치와 대응된다. 따라서, 제3 데이터 뱅크의 뱅크 인코딩 위치에 따라, HARQ 메모리에서 매칭되는 병합 대상인 뱅크를 조회할 수 있다.
실제로, 본 발명의 실시예에서 소프트 병합은, HARQ 메모리에서 제3 데이터 뱅크와 매칭되는 병합 대상인 뱅크를 판독하는 것이다. 병합 대상인 뱅크 중의 소프트 비트와 제3 데이터 뱅크 중의 소프트 비트는 일대일로 대응되어, 병합을 병렬로 완료한다. 제3 데이터 뱅크 중의 소프트 비트를 병합된 후의 소프트 비트로 대체하여, 제1 데이터 뱅크를 획득하여 디코더에 송신하여 저장하고, 동시에 1부를 복사하여 HARQ 메모리에 다시 기록하며, 원래의 병합 대상인 뱅크를 업데이트하여 다음 번의 소프트 병합 동작을 수행한다.
소프트 병합 집합 중의 병합 대상인 뱅크의 저장 주소와 제3 데이터 뱅크의 뱅크 인코딩 위치를 대응되게 구성하여 제3 데이터 뱅크와 매칭되는 병합 대상인 뱅크를 정확하게 조회하여 병합함으로써, 제3 데이터 뱅크를 단위로 하여 소프트 병합 동작을 수행하고, 소프트 병합 동작의 효율을 향상시키며, 데이터 신뢰성을 향상시킨다.
예시적인 일 실시형태에서는, 타깃 주기 개수와 동일하거나 타깃 주기 개수의 1/2에 따라 결정하고, 상기 설정 주기 개수는 정수이며, 상기 타깃 주기 개수는 상기 제3 데이터 뱅크의 소프트 병합 시작부터 제1 데이터 뱅크의 생성까지 필요한 지속 시간에 대응되는 클록 주기 개수를 포함한다.
구체적으로, 하나의 제3 데이터 뱅크가 HARQ 메모리에서 판독을 시작해서부터 소프트 병합을 완료하며, 최종적으로 동일한 주소에 다시 기록된 클록 주기 수가 Q인 것으로 가정하면, P는 Q 또는 Q/2일 수 있고, Q가 홀수이면, P는 Q/2의 정수부분에 1을 가한 수치이다. Q는 타깃 주기 개수고, P는 설정 주기 개수다.
설정 주기 개수를 구성하여 제3 데이터 뱅크의 처리 주파수를 유연하게 구현할 수 있다.
예시적인 일 실시형태에서는, 상기 설정 주기 개수는 타깃 주기 개수의 1/2에 따라 결정되고, 상기 설정 주기 개수는 정수이며; 상기 제3 데이터 뱅크를 소프트 병합하여 제1 데이터 뱅크를 형성하는 상기 단계는, 현재 처리된 제3 데이터 뱅크에 대응되는 뱅크 인코딩 위치 및 직전 제3 데이터 뱅크에 대응되는 뱅크 인코딩 위치에 따라, 상기 현재 처리된 제3 데이터 뱅크에 의해 획득된 제1 데이터 뱅크가 반복 레이트 매칭 조건을 만족한다고 결정되면, 상기 직전 제3 데이터 뱅크에 대응되는 병합 대상인 뱅크에 따라 상기 현재 처리된 제3 데이터 뱅크와 매칭되는 병합 대상인 뱅크를 결정하는 단계를 포함한다.
반복 레이트 매칭 조건은 직렬 처리된 연속적인 2개의 제3 데이터 뱅크 중의 소프트 비트가 동일한지 여부를 판단하는데 사용되고, 구체적으로, 이 2개의 제3 데이터 뱅크에 대응되는 뱅크의 인코딩이 동일한지 여부에 따라 판단할 수 있다. 현재 처리된 제3 데이터 뱅크에 대응되는 뱅크 인코딩 위치와 직전 제3 데이터 뱅크에 대응되는 뱅크 인코딩 위치가 동일하면, 이 2개의 제3 데이터 뱅크 중의 소프트 비트는 동일함을 나타내고, 현재 처리된 제3 데이터 뱅크가 반복 레이트 매칭 조건을 만족한다고 결정한다.
실제로, 하나의 제3 데이터 뱅크는 HARQ 메모리에서 판독을 시작해서부터, 소프트 병합을 완료하며, 최종적으로 동일한 주소에 다시 기록된 지속 시간은 타깃 주기 개수다. 설정 주기 개수는 타깃 주기 개수의 1/2이거나, 1/2의 정수부분을 취한 수치인데, 이는 하나의 제3 데이터 뱅크가 동일한 주소에 다시 기록되는 과정이 완료되지 않은 상황에서, 다른 제3 데이터 뱅크가 처리되기 시작하는 것, 즉 HARQ 메모리에서 대응되는 병합 대상인 뱅크를 판독하기 시작하는 것을 의미한다. 이때, 반복 레이트 매칭 조건을 만족시키는 2개의 제3 데이터 뱅크에 대응되는 병합 대상인 뱅크는 실제로 하나이고, 두 번째 처리된 제3 데이터 뱅크가 HARQ 메모리에서 판독한 병합 대상인 뱅크는 실제로 업데이트되지 않은 것이므로, 처음 처리된 제3 데이터 뱅크에 의해 획득된 제1 데이터 뱅크를 그대로 두 번째 처리된 제3 데이터 뱅크에 의해 획득된 병합 대상인 뱅크로 사용하여 병합할 수 있고, 병합 대상인 집합에서 업데이트된 후의 병합 대상인 뱅크를 판독하기 위해 대기하는 처리 시간 및 판독 횟수를 감소시킬 수 있다.
이 밖에, 설정 주기 개수가 타깃 주기 개수이면, 이때, 임의의 연속적인 2개의 제3 데이터 뱅크에서, 하나의 제3 데이터 뱅크가 제1 데이터 뱅크를 형성하여 다시 기록된 후에, 다른 하나의 제3 데이터 뱅크가 처리되기 시작됨으로써, 레이트 매칭의 반복은 이 2개의 제3 데이터 뱅크의 처리에 영향을 미치지 않는다.
예시적인 일 실시형태에서는, 천공된 데이터를 획득하고, 상기 천공된 데이터에 따라 제2 데이터 뱅크를 생성하는 상기 단계는, 다수의 제로 세팅 뱅크를 생성하는 단계 - 상기 제로 세팅 뱅크에 포함된 각 소프트 비트는 0이고, 상기 제로 세팅 뱅크의 뱅크 길이는 타깃 길이이며, 각 상기 제로 세팅 뱅크에 포함된 총 소프트 비트의 개수는 리프팅 팩터와 2의 곱이고, 각 상기 제로 세팅 뱅크에 대응되는 뱅크 인코딩 위치는 각 상기 제1 데이터 뱅크에 대응되는 뱅크 인코딩 위치의 앞에 있음 - ; 상기 인코딩 데이터에 필러 비트가 존재하면, 필러 비트를 획득하고, 필러 뱅크를 생성하는 단계 - 상기 필러 뱅크의 뱅크 길이는 타깃 길이임 - ; 반복 레이트 매칭 조건을 만족시키는 제1 데이터 뱅크가 존재하거나 상기 인코딩 데이터에 리던던시 버전 전 천공 데이터가 존재하면, 리던던시 버전 전 비트를 획득하고, 리던던시 버전 전 뱅크를 생성하는 단계 - 상기 리던던시 버전 전 뱅크의 뱅크 길이는 타깃 길이이고, 각 상기 리던던시 버전 전 뱅크에 각각 대응되는 뱅크 인코딩 위치는 모두 각 상기 제1 데이터 뱅크에 대응되는 뱅크 인코딩 위치의 앞에 있음 - ; 반복 레이트 매칭 조건을 만족시키는 제1 데이터 뱅크가 존재하거나 상기 인코딩 데이터에 리던던시 버전 후 천공 데이터가 존재하면, 리던던시 버전 후 비트를 획득하고, 리던던시 버전 후 뱅크를 생성하는 단계 - 상기 리던던시 버전 후 뱅크의 뱅크 길이는 타깃 길이이고, 각 상기 리던던시 버전 후 뱅크에 각각 대응되는 뱅크 인코딩 위치는 모두 각 상기 제1 데이터 뱅크에 대응되는 뱅크 인코딩 위치의 뒤에 있음 - ;를 포함한다.
구체적으로 도 3에 도시된 바와 같이, 인코딩 데이터는 제로 세팅 소프트 비트(1), 리던던시 버전 전 천공 데이터(2), 필러 비트(3) 및 리던던시 버전 후 천공 데이터(5)를 포함할 수 있다. 여기서, 제로 세팅 소프트 비트(1)는 인코딩 데이터에 반드시 포함되는 소프트 비트이다. 인코딩 데이터는 리던던시 버전 전 천공 데이터(2), 필러 비트(3) 및 리던던시 버전 후 천공 데이터(5) 중 적어도 하나를 포함하거나 모두 포함하지 않을 수 있다. 여기서, 송신측이 수신측에 송신한 실제 데이터는 디인터리빙 전 데이터(4)이고, 디인터리빙 전 데이터(4)에는 필러 비트(3)가 포함되지 않는다. 이 밖에, 후속 데이터(6)는 본 CB 이후의 전송 데이터이다.
일반적으로, 인코딩 데이터에서 소프트 비트의 위치는 도 3의 0부터 시작하여 통계된다. 인코딩 데이터에서 처음 2Zc개의 소프트 비트가 고정되어 천공되므로, 수신측에 송신되지 않음으로써, 직접 처음 2Zc개의 소프트 비트 이후의 첫 번째 소프트 비트로부터 시작하여 통계할 수 있다. k0은 상이한 리던던시 버전의 레이트 매칭 시작 위치이고, k1은 이번에 전송된 리던던시 버전의 종료 위치이며, Nr은 상기 CB가 이미 수신된 다수의 리던던시 버전에서 링 버퍼에서의 수신된 모든 소프트 비트의 위치 최댓값이고, Nr≤Ncb이다. LDPC 인코딩을 사용할 때, 기본 그래프 1인 경우, K=22Zc이고; 기본 그래프 2인 경우, K=10Zc이다. K’는 하나의 CB에 포함된 정보 비트와 CRC 검사 비트 수의 합이다. Ncb는 링 버퍼에서의 종료 위치이다.
이와 대응되게, 제로 세팅 뱅크는 제로 세팅 소프트 비트(1)를 분할하여 형성된 뱅크고, 제로 세팅 뱅크에 포함된 모든 소프트 비트는 모두 0이다. 또한, 모든 제로 세팅 뱅크의 뱅크 인코딩 위치는 모두 인코딩 데이터의 링 버퍼 이전인데, 즉 인코딩 데이터에서 디인터리빙 전 데이터(4)의 각 소프트 비트의 위치의 앞, 즉 디인터리빙 전 데이터(4)에 의해 형성된 제1 데이터 뱅크의 뱅크 인코딩 위치의 앞에 있다. 구체적으로, 타깃 길이가 Zs이면, 제로 세팅 뱅크의 개수는 2Zc개이다. 제로 세팅 뱅크는 시스템 비트에서 고정된 처음 2Zc개의 소프트 비트로 형성된 데이터 뱅크다.
필러 뱅크는 필러 비트(3)를 분할하여 형성된 뱅크다. 필러 비트(3)는 로컬 스토리지에서 획득될 수 있고, HARQ 메모리에서 판독될 수도 있다. 필러 비트(3)는 일반적으로 송신측과 수신측에 의해 미리 규정된 소프트 비트이다. 이와 동시에 필러 비트(3)는 리던던시 버전 전 천공 데이터(2)와 리던던시 버전 후 천공 데이터(5) 사이에 위치하고, 디인터리빙 전 데이터(4) 사이에 위치함으로써, 형성된 필러 뱅크의 뱅크 인코딩 위치는 제1 데이터 뱅크의 뱅크 인코딩 위치 사이에 위치한다. 구체적으로, 인코딩 데이터에서 필러 비트(3)의 시작 위치는 K’-2Zc이고, 종료 위치는 K-2Zc이며, 대응되는 필러 뱅크의 뱅크 인코딩 위치는 K’-2Zc와 K-2Zc 사이에 위치한다.
반복 레이트 매칭 조건을 만족시키는 제1 데이터 뱅크가 존재하면, E≥Ncb-(K-K’)인 것을 나타낸다. 인코딩 데이터에 리던던시 버전 전 천공 데이터(2)가 존재하면, 첫 번째 제1 데이터 뱅크의 뱅크 인코딩 위치가 0인 것을 나타낸다. 리던던시 버전 전 천공 데이터(2)는 HARQ 메모리에서 판독될 수 있다. 리던던시 버전 전 뱅크는 리던던시 버전 전 천공 데이터(2)를 분할하여 형성된 뱅크다. 인코딩 데이터에서 리던던시 버전 전 천공 데이터(2)의 시작 위치는 0이고, 종료 위치는 k0이며, 대응되는 리던던시 버전 전 뱅크의 뱅크 인코딩 위치는 0과 k0 사이에 위치한다. 이와 동시에, 리던던시 버전 전 천공 데이터(2)는 인코딩 데이터에서 디인터리빙 전 데이터(4)의 각 소프트 비트의 위치의 앞에 있고, 대응되는 리던던시 버전 전 뱅크의 뱅크 인코딩 위치는 디인터리빙 전 데이터(4)에 의해 형성된 제1 데이터 뱅크의 뱅크 인코딩 위치의 앞에 있다.
인코딩 데이터에 리던던시 버전 후 천공 데이터가 존재하면, E+k0≥Ncb인 것을 나타낸다. 리던던시 버전 후 천공 데이터(5)는 HARQ 메모리에서 판독될 수 있다. 리던던시 버전 후 뱅크는 리던던시 버전 후 천공 데이터(5)를 분할하여 형성된 뱅크다. 인코딩 데이터에서 리던던시 버전 후 천공 데이터(5)의 시작 위치는 k1이고, 종료 위치는 Nr이며, 대응되는 리던던시 버전 후 뱅크의 뱅크 인코딩 위치는 k1과 Nr 사이에 위치한다. 동시에, 리던던시 버전 후 천공 데이터(5)는 인코딩 데이터에서 디인터리빙 전 데이터(4)의 각 소프트 비트의 위치의 뒤에 있고, 대응되는 리던던시 버전 후 뱅크의 뱅크 인코딩 위치는 디인터리빙 전 데이터(4)에 의해 형성된 제1 데이터 뱅크의 뱅크 인코딩 위치의 뒤에 있다.
다수의 제2 데이터 뱅크를 구성하고, 상이한 천공 방식에 따라 복원하여 제2 데이터 뱅크를 획득함으로써, 복원된 천공 데이터의 정확성을 보장하고, 동시에, 복원된 천공 데이터는 뱅크 형태에 따라 소프트 비트를 하나씩 대체하여 복원함으로써, 레이트 디-매칭 속도를 향상시킨다.
이 밖에, HARQ 메모리에 직접 리던던시 버전 전 뱅크에 따라 리던던시 버전 전 천공 데이터를 저장할 수 있음으로써, 직접 HARQ 메모리에서 리던던시 버전 전 뱅크를 판독한다. HARQ 메모리에 직접 리던던시 버전 후 뱅크에 따라 리던던시 버전 후 천공 데이터를 저장할 수 있음으로써, 직접 HARQ 메모리에서 리던던시 버전 후 뱅크를 판독한다.
일 예시에서, 도 4에 도시된 모듈을 통해 각 뱅크의 처리 과정을 구현할 수 있다.
디코드 블록 캐스케이드 모듈은 디코드 블록 분할을 완료하고, 각 클록 주기에서 디인터리빙 매트릭스의 동일한 열의 Qm개의 소프트 비트를 출력한다. 디코드 블록 캐스케이드 모듈은 디인터리빙 매트릭스에서 열 별로 Qm 채널의 직병렬 변환 모듈에 병렬로 출력한다.
각 직병렬 변환 모듈은 디코드 블록의 분할 데이터를 수신하도록 구성되고, Qm 채널의 병렬 처리를 구현하며, 각 채널은 Zs개의 소프트 비트의 수집을 독립적으로 완료하여 제3 데이터 뱅크를 형성하고, 디인터리빙 중재 모듈에 송신하여 처리한다.
디인터리빙 중재 모듈은 Qm 채널에서 직병렬 변환을 완료한 후의 제3 데이터 뱅크에서 하나를 선택하고 레이트 디-매칭 모듈에 직렬로 송신하여 처리하도록 구성된다.
레이트 디-매칭 모듈은 디인터리빙 중재 모듈에 의해 송신된 제1 데이터 뱅크(Zs개의 소프트 비트를 포함)에 대해 HARQ 병합 처리를 완료하고 레이트 디-매칭(천공 레이트 매칭)을 완료하도록 구성된다.
HARQ 메모리는 레이트 디-매칭 모듈에 병합 대상인 뱅크를 제공하는 역할을 하고, 디코더는 디코딩에 사용되되, 디코더는 LDPC 디코더이다. 구체적으로, LDPC 디코더 및 HARQ 메모리 중 각 소프트 비트의 저장 포맷은 도 5에 도시된 바와 같다. Zc=208, Zs=13이면, 즉 각 뱅크(Bank)가 13개의 소프트 비트를 순차적으로 저장하면, 각 Bank는 상위 11개의 소프트 비트 위치를 보존한다.
실제로, 인터리빙 매트릭스에서, 각 행 별로 복수 개(즉, Zs개)의 데이터를 수집해야만 처리하기 시작하고, 상이한 행에서 수집된 데이터의 처리 방식은 직렬 처리이므로, 재판독, 재기록을 방지할 수 있다.
여기서, Zs는 임의로 설정되지 않는다. 실제로, 디코더는 Zc개의 데이터의 처리 블록을 단위로 하여 처리하는 것으로, Zc가 Zs로 나누어 떨어질 수 없으면, Zs개의 데이터가 상이한 처리 블록에 속하게 되므로, 데이터 처리의 복잡성을 크게 증가시킨다. 따라서, Zc가 Zs로 나누어 떨어지도록 구성할 수 있음으로써, Zs개의 데이터가 2개의 처리 블록을 걸쳐 있지 않도록 보장하고, 데이터 처리의 복잡성을 감소시킨다.
구체적으로, 각 뱅크에 뱅크 식별자를 구성하고, 뱅크 중의 소프트 비트에 비트 식별자를 구성할 수 있다. 뱅크 식별자 및 비트 식별자를 통해 각 소프트 비트를 결정한다. 즉, 뱅크 중의 각 소프트 비트는 어느 뱅크를 조회하는 가를 통해 뱅크를 결정한 후, 뱅크에서 어느 소프트 비트를 조회하는 가를 통해 결정할 수 있다.
각 Zc 길이의 뱅크가 (2m)개의 Zs 길이의 뱅크를 포함하도록 구성할 수 있고, Zs 길이의 뱅크에 따라 Zs_i를 넘버링하여 Zc 길이의 뱅크에 대응되는 주소 Zs_i>>m, 및 Zc 길이의 뱅크에 속하는 어느 Zs 길이의 뱅크: Zs_i%(2m)을 직접 획득한다. 따라서, 각 Zs 길이의 뱅크의 어드레싱이 아주 간단해진다. 예를 들어, Zs가 16이고, Zc/Zs=24이면, Zs_i/24 및 Zs_i%24를 산출해야 하는데, 이러면 산출이 비교적 간단해짐으로써, 어드레싱 동작을 간소화한다.
먼저, 타깃 길이 Zs=a×2m을 산출하고, Zs≤A가 더 바람직하면, A는 24를 취한다.
이어서, 디인터리빙 전 데이터의 시작 위치 과련 파라미터, 즉 디인터리빙 매트릭스 중 각 행의 첫 번째 열 중의 소프트 비트가 어느 뱅크에 위치하고 또한 상기 뱅크에서 몇 번째 소프트 비트인가를 산출한다.
구체적으로, 링 버퍼에서 디인터리빙 매트릭스 중 각 행의 소프트 비트의 위치를 ks[i]로 설정하면,
Figure pct00005
이고,
i=0,1,...Qm-1이다.
이와 대응되게, 이번 전송 리던던시 버전의 종료 위치 k0이 속하는 뱅크는 다음과 같다.
Figure pct00006
그 다음, 필러 비트의 상대적 위치 K’, K 및 제한된 링 버퍼 레이트 매칭 Ncb 에서의 소프트 비트가 속하는 뱅크 및 뱅크에서 몇 번째 소프트 비트인가를 산출한다.
Figure pct00007
Figure pct00008
마지막으로, 실제 사용된 링 버퍼 크기 Nr이 어느 뱅크에 속하는 가를 산출한다.
Figure pct00009
(1) 디인터리빙 과정:
프리픽스 복조 모듈은 각 층의 하나의 성상 포인트(constellation point)의 복조가 Qm개의 소프트 비트에 대응되므로, i번째 소프트 비트는 디인터리빙 매트릭스의 i번째 행에 대응되고, i는 0, 1, ... Qm-1을 취한다. 각 순환의 복조 모듈은 동시에 nL 레이어 소프트 비트를 출력할 수 있고, nL의 값은 1, 2, 3 또는 4이다. 디스크램블링 모듈은 nL 레이어를 직렬 처리하고, 각 클록 주기에서 한 레이어의 소프트 비트를 순차적으로 출력한다.
Qm개의 직병렬 변환 모듈은 병렬로 작동하고, 각 직병렬 변환 모듈은 i번째 채널의 소프트 비트를 처리하며, 각 채널의 각 클록 주기에서 최대로 1개의 소프트 비트를 수신하며, i는 0, 1, ... Qm-1을 취한다.
직병렬 변환의 목적은 주소 a 및 오프셋 주소에 따라 Zs개의 소프트 비트를 수집하여 하나의 뱅크를 형성하여, 후속 레이트 디-매칭 및 HARQ 처리된 처리 뱅크로 사용한다. i번째 Zs 길이의 뱅크 중의 소프트 비트는 다음과 같다.
Zs×a+m, m=0,1,...Zs-1
Qm개의 직병렬 변환 모듈은 독립적으로 작동하고, 구체적인 처리는 다음과 같다.
CB 데이터가 도착하기 전에, Qm개의 직병렬 변환 모듈의 초기화 처리를 완료한다.
각 뱅크는 주소 a 및 오프셋 o개의 카운터를 포함하고, 주소 a는 뱅크 인코딩 위치다.
초기화는 구체적으로 다음과 같다.
a=ks_nZs[i]
o=ks_oZs[i]
직병렬 변환 모듈과 관련된 저장이 리셋된다.
초기화 완료 후, 각 직병렬 변환 모듈이 E/Qm개의 소프트 비트의 수집 및 처리를 완료할 때까지 순환하면서 소프트 비트를 기다리고, 상기 수집 및 처리를 완료되면, 상기 CB의 디인터리빙 처리를 종료한다.
프리픽스 모듈이 1개의 소프트 비트를 보내올 때마다, 상기 소프트 비트를 상기 뱅크의 o번째 위치에 저장하고, 뱅크의 주소 a 및 오프셋 o를 업데이트하며, o의 초기값은 0이고, 순차적으로 하기와 같이 처리한다.
ar=a;
o=o+1;
flag=1.
o가 Zs와 같으면, 하나의 뱅크의 수집이 종료됨을 나타내고, 상기 수집된 Zs개의 소프트 비트를 하나의 제3 데이터 뱅크로 사용하고, 주소 ar은 뱅크 인코딩 위치로서 디인터리빙 중재 모듈에 송신된 후, 직병렬 변환 모듈과 관련된 저장을 리셋하며, flag를 0으로 설정하며, 동시에, o를 0으로 설정하며, a=a+1이다.
o가 Kp_oZs[0]과 같으며 a가 Kp_nZs[0]과 같으면, 인코딩 데이터에서 현재 소프트 비트의 다음 소프트 비트가 필러 비트 시작 위치에 있음을 나타내므로, 건너 뛰어야 하는데, 즉 수신된 다음 소프트 비트는 필러 비트 종료 위치의 뒤에 있는 소프트 비트이다. flag가 1과 같으면, 직병렬 변환 모듈에 저장된 소프트 비트를 하나의 제3 데이터 뱅크로 사용하고, 주소 ar은 뱅크 인코딩 위치로서 디인터리빙 중재 모듈에 송신된 후, 직병렬 변환 모듈과 관련된 저장을 리셋하며, flag를 0으로 설정하고, 동시에, o를 K_oZs로 설정하며, a=K_nZs이다.
o가 Kp_oZs[0]과 같으며 a가 Kp_nZs[0]과 같으면, 인코딩 데이터에서 현재 소프트 비트의 다음 소프트 비트가 필러 비트 시작 위치, 즉 도 3에서 K’-2Zc에 대응되는 위치에 있음을 나타내므로, 건너 뛰어야 하는데, 즉 수신된 다음 소프트 비트는 필러 비트 종료 위치의 뒤에 있는 소프트 비트이다. flag가 1과 같으면, 직병렬 변환 모듈에 저장된 소프트 비트를 하나의 제3 데이터 뱅크로 사용하고, 주소 ar은 뱅크 인코딩 위치로서 디인터리빙 중재 모듈에 송신된 후, 직병렬 변환 모듈과 관련된 저장을 리셋하며, flag를 0으로 설정하고, 동시에, o를 K_oZs로 설정하며, a=K_nZs, 즉 도 3에서 K-2Zc에 대응되는 위치이다.
o가 Ncb_oZs와 같으며 a가 Ncb_nZs와 같으면, 현재 소프트 비트가 링 버퍼의 종료 위치, 즉 도 3에서 Ncb에 대응되는 위치에 있음을 나타내므로, 0 위치로 순환해야 한다. flag가 1과 같으면, 직병렬 변환 모듈에 저장된 소프트 비트를 하나의 제3 데이터 뱅크로 사용하고, 주소 ar은 뱅크 인코딩 위치로서 디인터리빙 중재 모듈에 송신된 후, 직병렬 변환 모듈과 관련된 저장을 리셋하며, flag를 0으로 설정하고, 동시에, o를 0으로 설정하며, a도 0으로 설정한다.
(2) 디인터리빙 중재:
디인터리빙 중재 모듈은 Qm 채널 직병렬 변환 모듈의 기록 상황에 따라 처리할 하나의 채널 또는 다중 채널의 번호를 기록한다. 그 다음, P개의 클록 주기(P>0)마다 폴링 메커니즘에 따라 다중 채널 데이터에서 하나의 채널의 제3 데이터 뱅크 및 뱅크 인코딩 위치 ar을 순차적으로 선택하여 레이트 디-매칭 모듈에 송신하여 처리하고, 선택된 채널 수 번호는 처리 대상인 태스크에서 제거된다.
바람직하게는, Q는 4이고, P는 2를 취하며, 구체적인 타이밍도는 도 6과 같다. 직렬 처리의 연속적인 인접한 2개의 처리된 제3 데이터 뱅크가 동일한 주소 ar인지 여부를 판단하되, 주소가 동일하면, 반복 레이트 매칭이고, 다음 제3 데이터 뱅크는 HARQ 메모리에서 병합 대상인 뱅크를 판독하지 않고 직접 직전 제3 데이터 뱅크가 병합된 후의 결과를 사용하는데, 즉 형성된 제1 데이터 뱅크를 계속하여 병합한다. 주소가 다르면, 다음 제3 데이터 뱅크는 HARQ에서 데이터를 판독한다. 이와 같이, 반복 레이트 매칭은 전후 2개의 처리된 제3 데이터 뱅크가 반복되는지 여부만 판단하면 되므로, 반복 레이트 매칭의 판단 및 처리를 크게 간소화한다.
일 예시에서, K’=8384, Zc=384, Ncb=11904이고, 이와 대응되게, LDPC 인코딩에 의해 형성된 인코딩 데이터는 8448*3+2*384개의 소프트 비트를 포함하고, 여기서, 처음 2Zc=768개의 소프트 비트를 천공된 데이터로서 펑쳐링하며, 가운데 8384~8447번째 소프트 비트는 모두 필러 소프트 비트이고, 천공된 데이터로서 펑쳐링되며, 펑쳐링된 소프트 비트는 다시 넘버링되고, 처음 0~767개의 소프트 비트는 펑쳐링되며, 768번째의 소프트 비트로부터 시작하여 소프트 비트 인코딩 위치를 0으로 다시 결정하는데, 이때, 데이터가 펑쳐링된 후의 데이터는 0~9567이고, 이중, 필러 비트는 7616~7679이며, 나머지 소프트 비트는 0~7615, 및 7680~9567이다. 레이트 매칭을 거친후, 필러 비트를 펑쳐링하고, 나머지 소프트 비트를 4번 반복하며, 레이트 매칭 후의 데이터를 형성하고, 도 7에 도시된 바와 같이, 레이트 매칭 후의 데이터는 총 4*11840개의 비트인데, 즉 실제로 송신된 비트의 개수는 4*11840이다. 레이트 매칭 후의 데이터를 인터리빙하는데, 즉 행에 따라 기록하고 열 별로 판독한다. 도 8에 도시된 바와 같이, 인터리빙 매트릭스는 4행(순환 개수와 같음)이고, 총 11840열이다. 도 9에 도시된 바와 같이, 인터리빙 매트릭스는 4행(순환 개수와 같음)이고, 총 11839열이다.
도 8에 있어서, 인터리빙 매트릭스 중 각 행은 모두 0~7615(세로선으로 채워진 영역), 7680~11903(사선으로 채워진 영역)인데, 즉 인터리빙 매트릭스의 상이한 행, 동일한 열의 소프트 비트에 저장된 위치는 동일하다. 도 9에 있어서, 인터리빙 매트릭스의 각 행은 각각 0~7615(세로선으로 채워진 영역), 7680~11902(사선으로 채워진 영역); 11903(사선으로 채워진 영역), 0~7615(세로선으로 채워진 영역), 7680~11901(사선으로 채워진 영역); 11902~11903(사선으로 채워진 영역), 0~7615(세로선으로 채워진 영역), 7680~11900(사선으로 채워진 영역); 11901~11903(사선으로 채워진 영역), 0~7615(세로선으로 채워진 영역), 7680~11899(사선으로 채워진 영역)인데, 즉 인터리빙 매트릭스의 상이한 행, 상이한 열의 소프트 비트에 저장된 위치는 동일하다. 종래 기술에서, 반복 레이트 디-매칭을 수행할 경우, 행 별로 판단해야 하지만, 도 9의 경우, 열 오프셋 상황에 따라 동일한 위치에 저장된 소프트 비트를 행 별로 조회해야 한다.
본 발명의 실시예에서, 1개의 클록 주기 내에 각 행의 소프트 비트를 병렬로 수신하고, 직렬 처리하는데, 즉 상이한 행에서 각각 획득된 데이터 뱅크를 직렬 처리한 후, 처리 과정에서 인접한 2개의 Zs 길이의 뱅크의 뱅크 인코딩 위치가 동일한지 여부만 판단하면 되고, 동일하면, 직전 Zs 길이의 뱅크에 대응되는 합병 결과에 직접 다음 Zs 길이의 뱅크를 병합하면 되고, 병합 대상인 집합에서 대응되는 병합 대상인 뱅크를 다시 조회 및 판독할 필요가 없으므로, 병합 대상인 집합에서 조회 및 판독하는 시간과 처리 데이터의 양을 절약한다.
도 8에 도시된 인터리빙 매트릭스인 경우, 출력된 소프트 비트는 각각 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2…인데, 이때 직렬 처리 과정에서, 연속 4번의 처리에 대응되는 것은 모두 뱅크 인코딩 위치가 0인 데이터 뱅크다. 이에 따라, 행 별로 판단하는 것을 고려할 필요 없고, 처리 과정에서 인접한 2개의 데이터 뱅크만 통해 레이트 디-매칭의 복잡성을 크게 감소시킨다.
나머지의 경우, 도 9에 도시된 인터리빙 매트릭스에 의해 출력된 소프트 비트는 각각 0, 11903, 11902, 11901, 1, 0, 11903, 11902…이고, 데이터 뱅크는 5개로 간격을 두고, 한 번 반복되는데, 이는 다음 데이터 뱅크가 처리될 때 직전 데이터 뱅크의 데이터가 이미 HARQ에 기록되면 다음 데이터 뱅크가 직접 HARQ에서 대응되는 데이터를 판독하기 때문이므로, 반복 레이트 매칭 병합 처리를 자연적으로 완료하게 된다. 반복 레이트 매칭의 판단을 수행할 필요도 없으므로, 레이트 디-매칭 효율을 향상시킨다.
(3) 레이트 디-매칭 및 HARQ 병합
각 CB가 새로 전송될 경우, 초기화 처리 시, CB에 대응되는 HARQ 메모리에 저장된 병합 대상인 뱅크를 모두 리셋해야 하고, 관련 주소에 직접 0을 기입하거나 플래그 비트를 사용하여 식별하거나 다른 임의의 등가적 방법으로 CB에 대응되는 병합 대상인 뱅크의 버퍼를 구현할 수 있다.
레이트 디-매칭은 실제로 디인터리빙 중재 모듈의 주소 ar에 따라 HARQ 메모리에서 ar에 대응되는 Zs개의 소프트 비트, 즉 병합 대상인 뱅크를 판독한다. 제3 데이터 뱅크 및 병합 대상인 뱅크에서 형성된 두 그룹의 Zs개의 소프트 비트는 일대일로 대응되도록 각자 병렬되어 병합을 완료하고, Zs개의 HARQ 병합 모듈로 병렬 처리해야 한다. 병합 완료 후, Zs개의 병합된 결과, 즉 제1 데이터 뱅크를 LDPC 디코더 주소가 2+(ar/2m)인 뱅크 위치에 기입하고, 제1 데이터 뱅크의 소프트 비트를 순서에 따라 상기 뱅크 위치에서 주소가 ar%2m인 위치에 순차적으로 기입한다. 실제로, 디코더 저장 시, 뱅크에 따라 저장하는데, 즉 제1 데이터 뱅크를 매칭되는 뱅크 위치에 기입하고, 상기 뱅크 위치의 어드레싱은 구현하기 쉬운 시프트 선택기(shift selector)로 구현된다. 이와 동시에, 제1 데이터 뱅크를 ar에 대응되는 HARQ 메모리에 다시 기입하고, 대응되는 병합 대상인 뱅크를 커버리지한다.
이 밖에, 레이트 디-매칭으로 제3 데이터 뱅크를 처리함과 동시에, 마찬가지로 뱅크를 단위로 하여 다음과 같은 디펑쳐링(de-puncturing) 처리를 순차적으로 완료한다.
3.1) 시스템 비트의 처음 2Zc개의 비트를 고정하여 천공하고, 반복 레이트 매칭의 여부에 관계없이 LDPC 주소가 0~2m+1-1인 모든 뱅크를 모두 0으로 기입하여 제로 세팅 뱅크를 형성해야 한다.
3.2) K’==K이면, 이 단계를 건너 뛰고, 아니면 다음과 같은 처리를 수행해야 한다.
필러 비트를 획득하여 필러 뱅크를 생성하고, 필러 뱅크에 대응되는 뱅크 인코딩 위치 ap는 실제로 인코딩 데이터 중 주소 구간 Kp_nZs~Kp_nZs-1에서 값을 취하고, LDPC 디코더 주소가 2+(ap/2m)인 뱅크 위치에 순차적으로 기입하며, 필러 뱅크의 소프트 비트를 순서에 따라 이 뱅크 위치에서 주소가 ap%2m인 위치에 순차적으로 기입한다. 여기서, 각 소프트 비트의 기입값은 표현할 수 있는 양의 최댓값이다.
3.3) 반복 레이트 매칭이 존재하면, 즉 E≥Ncb-(K-K’)이거나, 또는 ks_nZs[0] 및 ks_oZs[0]가 모두 0과 같으면, 이 단계를 건너 뛰고, 아니면 다음과 같은 처리를 수행한다.
HARQ 메모리에서 뱅크 인코딩 위치 ap와 매칭되는 리던던시 버전 전 천공 데이터를 획득하여 리던던시 버전 전 뱅크를 생성한다. 리던던시 버전 전 뱅크의 뱅크 인코딩 위치 ap는 실제로 인코딩 데이터 중 주소 구간 0~k_nZs[0]-1에서 값을 취하고, LDPC 디코더 주소가 2+(ap/2m)인 뱅크 위치에 순차적으로 기입하며, 뱅크의 소프트 비트를 순서에 따라 이 뱅크 위치에서 주소가 ap%2m인 위치에 순차적으로 기입한다.
3.4) 반복 레이트 매칭이 존재하면, 즉 E≥Ncb-(K-K’) 또는 E+k0≥Ncb이면, 이 단계를 건너 뛰고, 아니면 다음과 같은 처리를 수행한다.
HARQ 메모리에서 뱅크 인코딩 위치 ap와 매칭되는 리던던시 버전 후 천공 데이터를 획득하여 리던던시 버전 후 뱅크를 생성한다. 리던던시 버전 후 뱅크의 뱅크 인코딩 위치 ap는 실제로 인코딩 데이터 중 주소 구간 k1_nZs~Nr_nZs에서 값을 취하고, LDPC 디코더 주소가 2+(ap/2m)인 뱅크 위치에 순차적으로 기입하며, 뱅크의 소프트 비트를 순서에 따라 이 뱅크 위치에서 주소가 ap%2m인 위치에 순차적으로 기입한다.
따라서, 제1 데이터 뱅크 및 제2 데이터 뱅크를 인코딩 데이터 중의 위치 관계에 따라 저장하고, 디코딩 대상인 데이터로 배열하고 스플라이싱하여, 디코더가 디코딩을 수행하도록 하여 디코딩 데이터를 획득한다.
구체적으로, 타이밍은 도 6을 참조할 수 있고, 하나의 직사각형은 하나의 클록 주기인데, 이때, Q는 4개의 클록 주기이고, P는 2개의 클록 주기이다. 2개의 클록 주기 마다 디인터리빙 중재 모듈은 하나의 제3 데이터 뱅크를 선택하여 레이트 디-매칭 모듈에 입력하여 처리시킨다. 도 6에 도시된 지속 시간에서, 디인터리빙 중재 모듈은 총 7개의 제3 데이터 뱅크를 선택하여 레이트 디-매칭 모듈에 직렬로 입력하여 순차적으로 처리시킨다. 구체적으로, 첫 번째 P의 주기 내에, HARQ 메모리에서, 0번째 제3 데이터 뱅크에 따라 병합 대상인 뱅크를 조회하기 시작하고; 두 번째 P의 주기 내에, 0번째 제3 데이터 뱅크와 매칭되는 병합 대상인 뱅크를 획득하며; 세 번째 P의 주기 내에, 0번째 제3 데이터 뱅크를 소프트 병합하고, 동시에 첫 번째 제3 데이터 뱅크에 따라 병합 대상인 뱅크를 조회하기 시작하며; 네 번째 P의 주기 내에, 0번째 제3 데이터 뱅크를 소프트 병합하여 형성된 제1 데이터 뱅크를 HARQ 메모리에 다시 기입하거나 및/또는 디코더에 기입하고, 동시에, 첫 번째 제3 데이터 뱅크와 매칭되는 병합 대상인 뱅크를 획득한다. 이와 같이 유추한다. 이 밖에, 제2 데이터 뱅크는 임의의 P의 주기 내에 생성되어 디코더에 저장될 수 있다.
도 10은 본 발명의 실시예에 따른 디코딩 장치의 모식도이다. 본 실시예는 본 발명의 상기 어느 한 실시예에 따른 디코딩 방법을 구현하는 대응되는 장치이고, 상기 장치는 네트워크 기기에 설치될 수 있다.
디인터리빙 전 데이터 수신 모듈(310)은, 디인터리빙 전 데이터 및 소프트 비트 인코딩 위치를 수신하도록 구성된다.
제1 데이터 뱅크 생성 모듈(320)은, 상기 디인터리빙 전 데이터를 분할하여 제1 데이터 뱅크를 획득하도록 구성된다.
제2 데이터 뱅크 생성 모듈(330)은, 천공된 데이터를 획득하고, 상기 천공된 데이터에 따라 제2 데이터 뱅크를 획득하도록 구성되되, 상기 디인터리빙 전 데이터 및 상기 천공된 데이터는 상기 소프트 비트 인코딩 위치에 따라 인코딩 데이터에서 결정된다.
디코딩 데이터 결정 모듈(340)은, 상기 소프트 비트 인코딩 위치, 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크에 따라 디코딩하여 디코딩 데이터를 획득하도록 구성된다.
본 발명의 실시예에 따른 디코딩 방법, 장치, 네트워크 기기 및 저장 매체는, 디인터리빙 전 데이터 중의 소프트 비트를 분할하여 다수의 제1 데이터 뱅크를 형성하고, 이와 동시에, 천공된 데이터를 획득하며, 소프트 비트를 분할하여 다수의 제2 데이터 뱅크를 생성하고, 소프트 비트 인코딩 위치, 제1 데이터 뱅크 및 제2 데이터 뱅크에 따라 디코딩 대상인 데이터를 형성하여 디코딩함으로써, 다수의 소프트 비트를 뱅크로 형성하여 처리하므로, 종래 기술에서 레이트 디-매칭 과정에서 소프트 비트를 하나씩 처리함으로 인해 레이트 디-매칭 효율이 낮은 문제를 해결하고, 레이트 디-매칭 및 디코딩 과정에서 소프트 비트를 하나씩 단독으로 어드레싱하는 경우를 감소시킬 수 있으며, 레이트 디-매칭 및 디코딩 효율을 향상시킬 수 있다.
일 실시형태에서는, 상기 디코딩 데이터 결정 모듈(340)은 또한, 상기 소프트 비트 인코딩 위치 및 각 상기 제1 데이터 뱅크 중 첫 번째 소프트 비트에 따라 각 상기 제1 데이터 뱅크의 뱅크 인코딩 위치를 결정하고; 상기 소프트 비트 인코딩 위치 및 각 상기 제2 데이터 뱅크 중 첫 번째 소프트 비트에 따라, 각 상기 제2 데이터 뱅크의 뱅크 인코딩 위치를 결정하며; 각 상기 뱅크 인코딩 위치에 따라 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크를 디코더에서 매칭되는 저장 주소에 각각 저장하여 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크를 배열하고, 디코딩 대상인 데이터를 형성하여, 상기 디코더가 상기 디코딩 대상인 데이터를 디코딩하도록 구성된다.
일 실시형태에서는, 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크의 뱅크 길이는 모두 타깃 길이이고, 상기 타깃 길이는 리프팅 팩터에 따라 결정된다.
일 실시형태에서는, 상기 타깃 길이는 리프팅 팩터와 2의 설정값의 거듭제곱의 비율이고, 상기 제1 개수는 설정 개수 임계값 이하이며, 상기 설정 개수 임계값은 작동 주파수 및 사용 가능한 리소스에 따라 결정된다.
일 실시형태에서는, 상기 제1 데이터 뱅크 생성 모듈(320)은 또한, 디인터리빙 매트릭스에 의해 열 별로 출력된 소프트 비트를 다중 채널에서 병렬 수신하고; 각 채널에서 수신된 소프트 비트를 순차적으로 저장하여 다수의 제3 데이터 뱅크를 생성하며; 설정 주기 개수의 클록 주기에 따라, 각 상기 제3 데이터 뱅크를 순차적으로 소프트 병합하여 다수의 제1 데이터 뱅크를 형성하도록 구성된다.
일 실시형태에서는, 상기 제1 데이터 뱅크 생성 모듈(320)은 또한, 수신된 타깃 소프트 비트가 필러 비트 시작 인접 조건을 만족하면, 상기 타깃 소프트 비트를 수신된 마지막 소프트 비트로 사용하여 현재 제3 데이터 뱅크를 생성하고, 다음 소프트 비트를 계속하여 수신하여 다음 제3 데이터 뱅크를 생성하도록 구성된다.
일 실시형태에서는, 상기 제1 데이터 뱅크 생성 모듈(320)은 또한, 상기 제3 데이터 뱅크에 대응되는 뱅크 인코딩 위치에 따라, 병합 대상인 집합에서 상기 제3 데이터 뱅크와 매칭되는 병합 대상인 뱅크를 조회하고 병합하여 제1 데이터 뱅크를 획득하고; 상기 제1 데이터 뱅크에 따라 상기 병합 대상인 집합에서 상기 매칭된 병합 대상인 뱅크를 업데이트하도록 구성되되, 상기 병합 대상인 뱅크의 뱅크 길이는 상기 타깃 길이이고, 상기 병합 대상인 뱅크는 이력 병합 데이터를 저장하는데 사용되며, 상기 이력 병합 데이터는 상기 제3 데이터 뱅크 중 소프트 비트와 병합하여 상기 제3 데이터 뱅크 중 소프트 비트를 업데이트하는데 사용된다.
일 실시형태에서는, 상기 설정 주기 개수는 타깃 주기 개수와 동일하거나 타깃 주기 개수의 1/2에 따라 결정되고, 상기 설정 주기 개수는 정수이며, 상기 타깃 주기 개수는 상기 제3 데이터 뱅크의 소프트 병합 시작부터 제1 데이터 뱅크의 생성까지 필요한 지속 시간에 대응되는 클록 주기 개수를 포함한다.
일 실시형태에서는, 상기 설정 주기 개수는 타깃 주기 개수의 1/2에 따라 결정되고, 상기 설정 주기 개수는 정수이며; 상기 제1 데이터 뱅크 생성 모듈(320)은 또한, 현재 처리된 제3 데이터 뱅크에 대응되는 뱅크 인코딩 위치 및 직전 제3 데이터 뱅크에 대응되는 뱅크 인코딩 위치에 따라, 상기 현재 처리된 제3 데이터 뱅크에 의해 획득된 제1 데이터 뱅크가 반복 레이트 매칭 조건을 만족한다고 결정되면, 상기 직전 제3 데이터 뱅크에 대응되는 병합 대상인 뱅크에 따라 상기 현재 처리된 제3 데이터 뱅크와 매칭되는 병합 대상인 뱅크를 결정하도록 구성된다.
일 실시형태에서는, 상기 제2 데이터 뱅크 생성 모듈(330)은 또한, 다수의 제로 세팅 뱅크를 생성하고, 상기 제로 세팅 뱅크에 포함된 각 소프트 비트는 0이며, 상기 제로 세팅 뱅크의 뱅크 길이는 타깃 길이이고, 각 상기 제로 세팅 뱅크에 포함된 총 소프트 비트의 개수는 리프팅 팩터와 2의 곱이며, 각 상기 제로 세팅 뱅크에 대응되는 뱅크 인코딩 위치는 각 상기 제1 데이터 뱅크에 대응되는 뱅크 인코딩 위치의 앞에 있고; 상기 인코딩 데이터에 필러 비트가 존재하면, 필러 비트를 획득하고, 필러 뱅크를 생성하며, 상기 필러 뱅크의 뱅크 길이는 타깃 길이이고; 반복 레이트 매칭 조건을 만족시키는 제1 데이터 뱅크가 존재하거나 상기 인코딩 데이터에 리던던시 버전 전 천공 데이터가 존재하면, 리던던시 버전 전 비트를 획득하고, 리던던시 버전 전 뱅크를 생성하며, 상기 리던던시 버전 전 뱅크의 뱅크 길이는 타깃 길이이고, 각 상기 리던던시 버전 전 뱅크에 각각 대응되는 뱅크 인코딩 위치는 모두 각 상기 제1 데이터 뱅크에 대응되는 뱅크 인코딩 위치의 앞에 있으며; 반복 레이트 매칭 조건을 만족시키는 제1 데이터 뱅크가 존재하거나 상기 인코딩 데이터에 리던던시 버전 후 천공 데이터가 존재하면, 리던던시 버전 후 비트를 획득하고, 리던던시 버전 후 뱅크를 생성하며, 상기 리던던시 버전 후 뱅크의 뱅크 길이는 타깃 길이이고, 각 상기 리던던시 버전 후 뱅크에 각각 대응되는 뱅크 인코딩 위치는 모두 각 상기 제1 데이터 뱅크에 대응되는 뱅크 인코딩 위치의 뒤에 있도록 구성된다.
상기 디코딩 장치는 본 발명의 실시예에 따른 디코딩 방법을 수행할 수 있고, 수행된 디코딩 방법에 대응되는 기능 모듈 및 유익한 효과를 갖는다.
본 발명은 네트워크 기기를 제공하되, 상기 네트워크 기기는 프로세서 및 메모리를 포함하고; 상기 프로세서는 메모리에 저장된 프로그램을 실행하여 상기 실시예에 따른 방법을 구현하도록 구성된다. 여기서, 네트워크 기기는 기기에 전원을 공급하는 전원 기기이다.
메모리는 컴퓨터 판독 가능 저장 매체로서, 소프트웨어 프로그램, 컴퓨터에 의해 실행 가능한 프로그램 및 모듈, 예를 들어 본 발명의 실시예에 따른 디코딩 방법에 대응되는 프로그램 명령/모듈을 저장하도록 구성될 수 있다.
메모리는 주로 프로그램 저장 영역 및 데이터 저장 영역을 포함할 수 있고, 여기서, 프로그램 저장 영역은 운영 체제, 적어도 하나의 기능에 필요한 응용 프로그램을 저장할 수 있으며; 데이터 저장 영역은 단말기의 사용에 따라 구축된 데이터 등을 저장할 수 있다. 이 밖에, 메모리는 고속 랜덤 액세스 메모리를 포함할 수 있고, 적어도 하나의 자기 디스크 메모리, 플래시 메모리, 또는 다른 비일시적 고체 상태 메모리와 같은 비일시적 메모리를 더 포함할 수 있다. 일부 실시예에서, 메모리는 프로세서에 대해 원격으로 설치된 메모리를 더 포함할 수 있고, 이러한 원격 메모리는 네트워크를 통해 기기에 연결될 수 있다. 상기 네트워크의 구현예로 인터넷, 인트라넷, 근거리 통신망, 이동 통신망 및 이들의 조합을 포함하지만, 이에 한정되지 않는다.
본 발명은 저장 매체를 제공하되, 상기 저장 매체에는 컴퓨터 프로그램이 저장되고, 상기 컴퓨터 프로그램은 프로세서에 의해 실행될 경우 상기 실시예에 따른 방법을 구현한다.
본 발명의 실시예에 따른 컴퓨터 저장 매체는 하나 이상의 컴퓨터 판독 가능한 매체의 임의의 조합을 사용할 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터 판독 가능 신호 매체 또는 컴퓨터 판독 가능 저장 매체일 수 있다. 컴퓨터 판독 가능 저장 매체는 예를 들어, 전자, 자기, 광학, 전자기, 적외선 또는 반도체 시스템, 장치 또는 소자, 또는 이들의 임의의 조합일 수 있지만, 이에 한정되지 않는다. 컴퓨터 판독 가능 저장 매체의 보다 구체적인 예(일일이 나열하지 않음)는 하나 이상의 도선에 의해 전기적으로 연결되는, 휴대용 컴퓨터 자기 디스크, 하드 디스크, RAM, 판독 전용 메모리(Read Only Memory, ROM), 소거 가능 프로그램 가능 판독 전용 메모리(Erasable Programmable Read Only Memory, EPROM), 플래시 메모리, 광섬유, 휴대용 CD-ROM, 광학 저장 장치, 자기 저장 장치 또는 이들의 임의의 적절한 조합을 포함한다. 본 발명에서, 컴퓨터 판독 가능 저장 매체는 명령 실행 시스템, 장치 또는 소자 또는 이들과 결합되어 사용될 수 있는 프로그램을 포함하거나 저장할 수 있는 임의의 유형 매체(tangible medium)일 수 있다.
컴퓨터 판독 가능 신호 매체는 컴퓨터 판독 가능 프로그램 코드를 베어링하는 베이스 밴드 또는 캐리어의 일부로 전파되는 데이터 신호를 포함할 수 있다. 이러한 전파된 데이터 신호는 전자기 신호, 광학 신호, 또는 이들의 임의의 적절한 조합을 포함하지만 이에 한정되지 않는 다양한 형태를 취할 수 있다. 컴퓨터 판독 가능 신호 매체는 또한 명령 실행 시스템, 장치 또는 소자에 의해 사용되거나 이와 결합하여 사용하기 위한 프로그램을 송신, 전파 또는 전송할 수 있는 컴퓨터 판독 가능 매체 이외의 임의의 컴퓨터 판독 가능 매체일 수 있다.
컴퓨터 판독 가능 매체에 포함된 프로그램 코드는 무선, 전선, 광 케이블, 무선 주파수(Radio Frequency, RF) 등, 또는 이들의 임의의 적절한 조합을 포함하지만 이에 한정되지 않는 임의의 적절한 매체에 의해 전송될 수 있다.
하나 이상의 프로그래밍 언어, 또는 이들의 조합으로 본 발명의 동작을 수행하기 위한 컴퓨터 프로그램 코드를 작성할 수 있고, 상기 프로그래밍 언어는 Java, Smalltalk, C++를 비롯한 객체 지향 프로그래밍 언어, 및 "C" 언어 또는 유사한 프로그래밍 언어를 비롯한 통상적인 절차적 프로그래밍 언어를 포함한다. 프로그램 코드는 완전히 사용자의 컴퓨터에서 실행되거나, 부분적으로 사용자의 컴퓨터에서 실행되거나, 하나의 독립형 소프트웨어 패키지로서 실행되거나, 일부는 사용자의 컴퓨터에서 실행되고 일부는 원격 컴퓨터에서 실행되거나, 또는 완전히 원격 컴퓨터 또는 서버에서 실행될 수 있다. 원격 컴퓨터의 경우 원격 컴퓨터는 LAN 또는 WAN을 포함한 임의의 종류의 네트워크를 통해 사용자의 컴퓨터에 연결되거나 외부 컴퓨터에 연결될 수 있다(예를 들어, 인터넷 서비스 제공 업체를 이용하여 인터넷을 통해 연결).
상술한 내용은 본 발명의 예시적인 실시예일 뿐 본 발명의 보호범위를 한정하지 않는다.
당업자는 사용자 단말기라는 용어가 휴대폰, 휴대용 데이터 처리 장치, 휴대용 네트워크 웹브라우저 또는 차량 탑재 이동국과 같은 임의의 적절한 타입의 무선 사용자 기기를 포함함을 이해해야 한다.
일반적으로, 본 발명의 다양한 실시예는 하드웨어 또는 전용 회로, 소프트웨어, 로직 또는 이들의 임의의 조합에서 구현될 수 있다. 예를 들어, 일부 측면에서는 하드웨어에서 구현될 수 있고, 다른 측면에서는 컨트롤러, 마이크로프로세서 또는 다른 컴퓨팅 장치에 의해 실행될 수 있는 펌웨어 또는 소프트웨어에서 구현될 수 있지만, 본 발명은 이에 한정되지 않는다.
본 발명의 실시예는 모바일 장치의 데이터 프로세서를 통해 컴퓨터 프로그램 명령을 실행하여 구현될 수 있는데, 예를 들어 프로세서 엔티티에서, 또는 하드웨어를 통해, 또는 소프트웨어와 하드웨어의 조합을 통해 구현될 수 있다. 컴퓨터 프로그램 명령은 어셈블리 명령, 명령 세트 아키텍처(ISA) 명령, 기계 명령, 기계 관련 명령, 마이크로코드, 펌웨어 명령, 상태 설정 데이터, 또는 하나 이상의 프로그래밍 언어의 임의의 조합으로 작성된 소스 코드 또는 목적 코드일 수 있다.
본 발명의 도면의 임의의 논리 흐름의 블록도는 프로그램 단계를 나타내거나 서로 연결된 논리 회로, 모듈 및 기능을 나타내거나, 프로그램 단계와 논리 회로, 모듈 및 기능의 조합을 나타낼 수 있다. 컴퓨터 프로그램은 메모리에 저장될 수 있다. 메모리는 로컬 기술 환경에 적절한 임의의 타입일 수 있고 또한 판독 전용 메모리(ROM), 랜덤 액세스 메모리(RAM), 광학 저장 장치 및 시스템(디지털 다기능 디스크(DVD) 또는 콤팩트 디스크(CD)) 등과 같은 임의의 적절한 데이터 저장 기술을 사용하여 구현될 수 있다. 컴퓨터 판독 가능 매체는 비일시적 저장 매체를 포함할 수 있다. 데이터 프로세서는 범용 컴퓨터, 전용 컴퓨터, 마이크로프로세서, 디지털 신호 프로세서(DSP), 주문형 집적 회로(ASIC), 프로그래 가능 논리 소자(FGPA) 및 멀티 코어 프로세서 아키텍처 기반 프로세서와 같은 로컬 기술 환경에 적절한 임의의 타입일 수 있지만, 이에 한정되지 않는다.
위에서 예시적이고 비제한적인 예시를 통해 본 발명의 예시적인 실시예에 대한 상세한 설명을 제공하였다. 하지만 도면 및 청구범위와 결합하여 고려하면, 본 발명의 범위를 벗어나지 않은 전제 하에 이상의 실시예에 대해 진행된 다양한 수정 및 조절은 당업자에게 있어서 자명한 것이다. 따라서, 본 발명의 적절한 범위는 청구범위에 의해 결정될 것이다.

Claims (13)

  1. 디코딩 방법으로서,
    디인터리빙 전 데이터 및 소프트 비트 인코딩 위치를 수신하는 단계;
    상기 디인터리빙 전 데이터를 분할하여 제1 데이터 뱅크를 획득하는 단계;
    천공된 데이터를 획득하고, 상기 천공된 데이터에 따라 제2 데이터 뱅크를 획득하는 단계 - 상기 디인터리빙 전 데이터 및 상기 천공된 데이터는 상기 소프트 비트 인코딩 위치에 따라 인코딩 데이터에서 결정됨 - ; 및
    상기 소프트 비트 인코딩 위치, 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크에 따라 디코딩하여 디코딩 데이터를 획득하는 단계를 포함하는 디코딩 방법.
  2. 제1항에 있어서,
    상기 소프트 비트 인코딩 위치, 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크에 따라 디코딩하는 상기 단계는,
    상기 소프트 비트 인코딩 위치 및 각 상기 제1 데이터 뱅크 중 첫 번째 소프트 비트에 따라 각 상기 제1 데이터 뱅크의 뱅크 인코딩 위치를 결정하는 단계;
    상기 소프트 비트 인코딩 위치 및 각 상기 제2 데이터 뱅크 중 첫 번째 소프트 비트에 따라 각 상기 제2 데이터 뱅크의 뱅크 인코딩 위치를 결정하는 단계;
    각 상기 뱅크 인코딩 위치에 따라 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크를 디코더에서 매칭되는 저장 주소에 각각 저장하여 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크를 배열하고, 디코딩 대상인 데이터를 형성하는 단계; 및
    상기 디코더를 통해 상기 디코딩 대상인 데이터를 디코딩하는 단계를 포함하는 디코딩 방법.
  3. 제1항에 있어서,
    상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크의 뱅크 길이는 모두 타깃 길이이고, 상기 타깃 길이는 리프팅 팩터에 따라 결정되는 디코딩 방법.
  4. 제3항에 있어서,
    상기 타깃 길이는 리프팅 팩터와 2의 설정값의 거듭제곱의 비율이고, 상기 제1 개수는 설정 개수 임계값 이하이며, 상기 설정 개수 임계값은 작동 주파수 및 사용 가능한 리소스에 따라 결정되는 디코딩 방법.
  5. 제2항에 있어서,
    디인터리빙 전 데이터를 수신하고, 상기 디인터리빙 전 데이터를 분할하여 제1 데이터 뱅크를 획득하는 상기 단계는,
    인터리빙 매트릭스에 의해 열 별로 출력된 소프트 비트를 다중 채널에서 병렬 수신하는 단계;
    각 채널에서 수신된 소프트 비트를 순차적으로 저장하여 다수의 제3 데이터 뱅크를 생성하는 단계; 및
    설정 주기 개수의 클록 주기에 따라 각 상기 제3 데이터 뱅크를 순차적으로 소프트 병합하여 다수의 제1 데이터 뱅크를 형성하는 단계를 포함하는 디코딩 방법.
  6. 제5항에 있어서,
    각 채널에서 수신된 소프트 비트를 순차적으로 저장하여 다수의 제3 데이터 뱅크를 생성하는 상기 단계는,
    수신된 타깃 소프트 비트가 필러 비트 시작 인접 조건을 만족하면, 상기 타깃 소프트 비트를 수신된 마지막 소프트 비트로 사용하여 현재 제3 데이터 뱅크를 생성하고, 다음 소프트 비트를 계속하여 수신하여 다음 제3 데이터 뱅크를 생성하는 단계를 포함하는 디코딩 방법.
  7. 제5항에 있어서,
    상기 제3 데이터 뱅크를 소프트 병합하여 제1 데이터 뱅크를 형성하는 상기 단계는,
    상기 제3 데이터 뱅크에 대응되는 뱅크 인코딩 위치에 따라, 병합 대상인 집합에서 상기 제3 데이터 뱅크와 매칭되는 병합 대상인 뱅크를 조회하고 병합하여 제1 데이터 뱅크를 획득하는 단계; 및
    상기 제1 데이터 뱅크에 따라 상기 병합 대상인 집합에서 상기 매칭된 병합 대상인 뱅크를 업데이트하는 단계를 포함하되,
    상기 병합 대상인 뱅크의 뱅크 길이는 타깃 길이이고, 상기 병합 대상인 뱅크는 이력 병합 데이터를 저장하는데 사용되며, 상기 이력 병합 데이터는 상기 제3 데이터 뱅크 중 소프트 비트와 병합하여 상기 제3 데이터 뱅크 중 소프트 비트를 업데이트하는데 사용되는 디코딩 방법.
  8. 제5항에 있어서,
    상기 설정 주기 개수는 타깃 주기 개수와 동일하거나 타깃 주기 개수의 1/2에 따라 결정되고, 상기 설정 주기 개수는 정수이며, 상기 타깃 주기 개수는 상기 제3 데이터 뱅크의 소프트 병합 시작부터 제1 데이터 뱅크의 생성까지 필요한 시간에 대응되는 클록 주기 개수를 포함하는 디코딩 방법.
  9. 제8항에 있어서,
    상기 설정 주기 개수는 타깃 주기 개수의 1/2에 따라 결정되고, 상기 설정 주기 개수는 정수이며;
    상기 제3 데이터 뱅크를 소프트 병합하여 제1 데이터 뱅크를 형성하는 상기 단계는,
    현재 처리된 제3 데이터 뱅크에 대응되는 뱅크 인코딩 위치 및 직전 제3 데이터 뱅크에 대응되는 뱅크 인코딩 위치에 따라, 상기 현재 처리된 제3 데이터 뱅크에 의해 획득된 제1 데이터 뱅크가 반복 레이트 매칭 조건을 만족한다고 결정되면, 상기 직전 제3 데이터 뱅크에 대응되는 병합 대상인 뱅크에 따라 상기 현재 처리된 제3 데이터 뱅크와 매칭되는 병합 대상인 뱅크를 결정하는 단계를 포함하는 디코딩 방법.
  10. 제2항에 있어서,
    천공된 데이터를 획득하고, 상기 천공된 데이터에 따라 제2 데이터 뱅크를 생성하는 상기 단계는,
    다수의 제로 세팅 뱅크를 생성하는 단계 - 상기 제로 세팅 뱅크에 포함된 각 소프트 비트는 0이고, 상기 제로 세팅 뱅크의 뱅크 길이는 타깃 길이이며, 각 상기 제로 세팅 뱅크에 포함된 총 소프트 비트의 개수는 리프팅 팩터와 2의 곱이고, 각 상기 제로 세팅 뱅크에 대응되는 뱅크 인코딩 위치는 각 상기 제1 데이터 뱅크에 대응되는 뱅크 인코딩 위치의 앞에 있음 - ;
    상기 인코딩 데이터에 필러 비트가 존재하면, 필러 비트를 획득하고, 필러 뱅크를 생성하는 단계 - 상기 필러 뱅크의 뱅크 길이는 타깃 길이임 - ;
    반복 레이트 매칭 조건을 만족시키는 제1 데이터 뱅크가 존재하거나 상기 인코딩 데이터에 리던던시 버전 전 천공 데이터가 존재하면, 리던던시 버전 전 비트를 획득하고, 리던던시 버전 전 뱅크를 생성하는 단계 - 상기 리던던시 버전 전 뱅크의 뱅크 길이는 타깃 길이이고, 각 상기 리던던시 버전 전 뱅크에 각각 대응되는 뱅크 인코딩 위치는 모두 각 상기 제1 데이터 뱅크에 대응되는 뱅크 인코딩 위치의 앞에 있음 - ; 및
    반복 레이트 매칭 조건을 만족시키는 제1 데이터 뱅크가 존재하거나 상기 인코딩 데이터에 리던던시 버전 후 천공 데이터가 존재하면, 리던던시 버전 후 비트를 획득하고, 리던던시 버전 후 뱅크를 생성하는 단계 - 상기 리던던시 버전 후 뱅크의 뱅크 길이는 타깃 길이이고, 각 상기 리던던시 버전 후 뱅크에 각각 대응되는 뱅크 인코딩 위치는 모두 각 상기 제1 데이터 뱅크에 대응되는 뱅크 인코딩 위치의 뒤에 있음 - ; 를 포함하는 디코딩 방법.
  11. 디코딩 장치로서,
    디인터리빙 전 데이터 및 소프트 비트 인코딩 위치를 수신하도록 구성되는 디인터리빙 전 데이터 수신 모듈;
    상기 디인터리빙 전 데이터를 분할하여 제1 데이터 뱅크를 획득하도록 구성되는 제1 데이터 뱅크 생성 모듈;
    천공된 데이터를 획득하고, 상기 천공된 데이터에 따라 제2 데이터 뱅크를 획득하도록 구성되는 제2 데이터 뱅크 생성 모듈 - 상기 디인터리빙 전 데이터 및 상기 천공된 데이터는 상기 소프트 비트 인코딩 위치에 따라 인코딩 데이터에서 결정됨 - ; 및
    상기 소프트 비트 인코딩 위치, 상기 제1 데이터 뱅크 및 상기 제2 데이터 뱅크에 따라 디코딩하여 디코딩 데이터를 획득하도록 구성되는 디코딩 데이터 결정 모듈을 포함하는 디코딩 장치.
  12. 적어도 하나의 프로세서 및 메모리를 포함하는 네트워크 기기로서,
    상기 프로세서는 메모리에 저장된 프로그램을 실행하여 제1항 내지 제10항 중 어느 한 항에 따른 방법을 구현하도록 구성되는 네트워크 기기.
  13. 컴퓨터 프로그램이 저장된 저장 매체로서,
    상기 컴퓨터 프로그램은 프로세서에 의해 실행될 경우 제1항 내지 제10항 중 어느 한 항에 따른 방법을 구현하는 저장 매체.

KR1020227025481A 2019-12-26 2020-12-28 디코딩 방법, 장치, 네트워크 기기 및 저장 매체 KR20220119468A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201911370321.X 2019-12-26
CN201911370321.XA CN113055021A (zh) 2019-12-26 2019-12-26 译码方法、装置、网络设备及存储介质
PCT/CN2020/140278 WO2021129877A1 (zh) 2019-12-26 2020-12-28 译码方法、装置、网络设备及存储介质

Publications (1)

Publication Number Publication Date
KR20220119468A true KR20220119468A (ko) 2022-08-29

Family

ID=76505665

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227025481A KR20220119468A (ko) 2019-12-26 2020-12-28 디코딩 방법, 장치, 네트워크 기기 및 저장 매체

Country Status (6)

Country Link
US (1) US11843396B2 (ko)
EP (1) EP4084338A4 (ko)
JP (1) JP2023508449A (ko)
KR (1) KR20220119468A (ko)
CN (1) CN113055021A (ko)
WO (1) WO2021129877A1 (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114050892B (zh) * 2021-11-11 2023-12-05 杭州红岭通信息科技有限公司 一种降低上行harq合并缓存空间大小的方法
CN114448572B (zh) * 2022-01-28 2023-09-15 芯翼信息科技(上海)有限公司 软比特处理方法、装置、介质和设备
CN115173994B (zh) * 2022-06-29 2023-09-08 哲库科技(北京)有限公司 Pbch接收方法、装置、设备、存储介质
CN115173997B (zh) * 2022-07-01 2023-07-18 北京神经元网络技术有限公司 Pdcch盲检测的译码过滤处理方法、设备及介质

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2003270863A1 (en) 2002-09-30 2004-04-23 Advent Networks, Inc. Implementing request/reply programming semantics using publish/subscribe middleware
KR20100071490A (ko) * 2008-12-19 2010-06-29 한국전자통신연구원 디레이트 매칭하는 방법 및 그 장치
WO2011069277A1 (en) * 2009-12-10 2011-06-16 Texas Instruments Incorporated Method for high-efficient implementation of de-rate matching including harq combining for lte
KR101641147B1 (ko) * 2010-01-26 2016-08-03 삼성전자주식회사 인코딩 장치
KR20130001098A (ko) * 2011-06-24 2013-01-03 삼성전자주식회사 통신/방송 시스템에서 데이터 송수신 장치 및 방법
CN105680983B (zh) * 2014-11-21 2019-01-11 深圳市中兴微电子技术有限公司 一种解速率匹配和解交织的方法和装置
US9584163B2 (en) * 2014-11-24 2017-02-28 Zenith Electronics Llc Length and rate compatible LDPC encoder and decoder
CN108011691B (zh) * 2016-10-27 2021-04-06 电信科学技术研究院 一种低密度奇偶校验码的传输方法及装置
CN108574562B (zh) * 2017-03-14 2020-09-29 华为技术有限公司 数据传输方法及装置
CN114553368B (zh) * 2017-03-22 2024-05-17 三星电子株式会社 在通信或广播系统中使用harq传输的装置和方法
CN107248904B (zh) * 2017-07-31 2020-04-17 北京理工大学 一种基于联合编码的ldpc码差错控制方法
US10103843B1 (en) * 2017-12-08 2018-10-16 Qualcomm Incorporated On the fly interleaving/rate matching and deinterleaving/de-rate matching for 5G NR
US20210119848A1 (en) * 2019-10-22 2021-04-22 Nvidia Corporation Parallel de-rate-matching and layer demapping for physical uplink shared channel

Also Published As

Publication number Publication date
JP2023508449A (ja) 2023-03-02
CN113055021A (zh) 2021-06-29
EP4084338A4 (en) 2023-02-08
US20230031031A1 (en) 2023-02-02
WO2021129877A1 (zh) 2021-07-01
US11843396B2 (en) 2023-12-12
EP4084338A1 (en) 2022-11-02

Similar Documents

Publication Publication Date Title
KR20220119468A (ko) 디코딩 방법, 장치, 네트워크 기기 및 저장 매체
US11165537B2 (en) Method for encoding information bit sequence in communication network
KR102574081B1 (ko) 하이브리드 자동 반복 요구 레이트-대립 폴라 코드들을 구성하는 장치 및 방법
JP5567219B2 (ja) フィードバック情報送信方法及びユーザ機器
JP7471357B2 (ja) 符号化方法、復号方法、装置、および装置
US8433987B2 (en) Method for high-efficient implementation of de-rate matching including HARQ combining for LTE
US20160308644A1 (en) Polar code processing method and system, and wireless communications apparatus
KR100734389B1 (ko) 궤환 정보를 이용한 부호어 재전송/복호 방법 및 송수신장치
CN108400838B (zh) 数据处理方法及设备
WO2018210244A1 (zh) 一种Polar码传输方法及装置
US10999005B2 (en) Method and device for polar code rate matching
CN110430010A (zh) 信息处理的方法、设备和通信系统
WO2018196765A1 (zh) Polar码传输方法及装置
US8924831B2 (en) Systems and methods for network coding using convolutional codes
US11342945B2 (en) Method and apparatus for processing rate matching of polar codes
RU2461970C2 (ru) Способ и устройство для приема данных
WO2018028476A1 (zh) 一种数据发送的方法及装置、通信设备
JP7092795B2 (ja) データ処理方法およびデータ処理装置
KR20220028123A (ko) sidelink 레이트 매칭 및 자원 매핑을 위한 방법 및 장비
WO2019047741A1 (zh) 比特交织、解交织方法及装置
CN107786300B (zh) 一种数据发送方法及装置
US20180351700A1 (en) Convolutional code data sending method and apparatus
US8977913B2 (en) Method, device and baseband chip for receiving service data in a communication system
WO2018141292A1 (zh) 数据处理方法及设备
KR101737831B1 (ko) 무선 통신 시스템에서 전송할 시퀀스를 콤포넌트 캐리어에 매핑하는 방법