KR101209824B1 - 블록 인터리빙 장치 - Google Patents
블록 인터리빙 장치 Download PDFInfo
- Publication number
- KR101209824B1 KR101209824B1 KR1020110104062A KR20110104062A KR101209824B1 KR 101209824 B1 KR101209824 B1 KR 101209824B1 KR 1020110104062 A KR1020110104062 A KR 1020110104062A KR 20110104062 A KR20110104062 A KR 20110104062A KR 101209824 B1 KR101209824 B1 KR 101209824B1
- Authority
- KR
- South Korea
- Prior art keywords
- input
- input stream
- stream
- multiplexer
- horizontal
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/27—Coding, 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/2778—Interleaver 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/65—Purpose and implementation aspects
- H03M13/6502—Reduction of hardware complexity or efficient processing
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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
Landscapes
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Error Detection And Correction (AREA)
Abstract
본 발명은 블록 인터리빙 장치에 관한 것으로, 본 발명은 M 비트의 입력 스트림을 모듈러 k에 의해 블록 인터리빙 또는 디인터리빙하는 혼합 기수 시스템을 이용한 블록 인터리빙 장치에 있어서, M개의 셀을 포함하되, 열의 개수가 k이고 행의 개수가 M/k인 배열의 어레이 프로세서를 포함하며, 상기 M개의 셀 각각은, 상기 입력 스트림 중 수평 입력 스트림이 입력되는 제1 멀티플렉서, 상기 입력 스트림 중 수직 입력 스트림이 입력되는 제2멀티플렉서, 상기 제1 멀티플렉서의 출력단에 입력단이 연결되고, 상기 수직 입력 스트림을 수평 방향으로 출력하는 제1 저장부, 상기 제2멀티플렉서의 출력단에 입력단이 연결되고, 상기 수평 입력 스트림을 수직 방향으로 출력하는 제2 저장부를 포함할 수 있다.
본 발명의 인터리빙 모드에서, 상기 어레이 프로세서는 상기 M개의 셀의 모든 제1저장부에 상기 수평 입력 스트림이 모두 입력되면, 상기 제1 저장부에 저장된 상기 수평 입력 스트림을 상기 제2 저장부에 복사하는 특징이 있다.
본 발명의 인터리빙 모드에서, 상기 어레이 프로세서는 상기 M개의 셀의 모든 제1저장부에 상기 수평 입력 스트림이 모두 입력되면, 상기 제1 저장부에 저장된 상기 수평 입력 스트림을 상기 제2 저장부에 복사하는 특징이 있다.
Description
본 발명은 블록 인터리빙 장치에 관한 것으로, 다중 대역 직교 주파수 분할 다중 접속 통신 시스템에서 혼합 기수 시스템을 이용한 블록 인터리빙 장치에 관한 것이다.
블록 인터리빙(block interleaving) 장치는 다중 대역 직교 주파수 분할 다중 접속 통신 시스템(Multi-band Orthogonal Frequency Division Multiplex; 이하 ‘MB-OFDM’이라 함)을 포함한 많은 통신 시스템에서 사용되는 중요한 구성 요소 중 하나로서, 데이터 전송시 채널에서의 버스트 에러(burst error)에 대한 강성(robustness)을 증가시키기 위해 입력 비트 시퀀스(input bit sequence)가 인접하지 않도록 일정 블록 단위로 비트 시퀀스를 재배열하는 인터리빙 장치이다.
아래에서는 설명의 편의상 블록 인터리빙 장치를 인터리버(interleaver)로 지칭한다.
이러한 인터리버는 심볼 인터리빙(symbol interleaving), 톤 인터리빙(tone interleaving) 및 순환 시프트(cyclic shift)의 3단계 처리 절차를 순차적으로 수행하며, 각 단계 사이에 임시 데이터를 저장하는 데이터 메모리를 사용한다. 종래의 인터리버는 각 인터리빙 단계 사이에 사용되는 데이터 메모리에 따른 회로의 면적이 크고, 3단계의 처리 절차의 순차적인 수행에 따라 처리 시간이 길어지는 단점이 있었다.
이와 같은 인터리버의 문제점을 극복하기 위해서, 등록번호 10-0884098호(명칭: 다중 대역 직교 주파수 분할 다중 접속 통신 시스템에서 혼합 기수 시스템을 이용한 블록 인터리빙 장치 및 방법)에서는 혼합 기수 시스템(MRS, Mixed Radix System)에 기반하여 데이터 메모리에 따른 회로 면적이 작고 3단계의 인터리빙 처리 절차를 동시에 수행하는 새로운 인터리빙 장치 및 방법을 제안하였다.
이 특허에서 인터리버는 2차원으로 이루어진 셀들의 배열의 형태를 갖는 회로로 구현되었다.
도 1 은 종래 블록 인터리빙 장치에 포함되는 셀의 구조도를 나타내는 도면이다.
도 1 에 도시된 바와 같이, 종래 인터리버에 포함되는 각각의 셀들은 두 개의 메모리 장치인 플립플롭(flip-flop)(11, 12)과 셀의 네트워킹을 위한 멀티플렉서(multiplexer)(21, 22, 23, 24)를 포함한다.
도 1 에 도시된 바와 같이, 종래 인터리버는 일정 블록단위의 입력 비트 시퀀스를 외부로부터 입력 받는 입력 단계와 입력 받은 데이터 블록을 재배열하여 외부로 출력하는 출력 단계로 이루어진다. 입력 단계가 수행되는 동안에도 이전에 입력 받은 데이터 블록에 대해 출력단계가 수행되어 입력단계와 출력단계는 동시에 이루어진다. 인터리버 회로의 구현에 따라 각 단계에 따라 2차원 배열에서 해당 데이터가 이동해야 하는 방향이 정해진다. 가령 인터리빙의 입력단계와 디인터리빙의 출력단계에서는 데이터가 수평방향으로 이동하고 인터리빙의 출력단계와 디인터리빙의 입력단계에서는 데이터가 수직방향으로 이동하도록 구현한다.
이에 따라 도 1 의 셀은 플립플롭(FF0, 11)가 인터리빙 입력단계를 수행하며 데이터를 수평방향으로 이동시키는 동안 플립플롭(FF1, 12)이 이전에 입력 받은 데이터 블록에 대해 출력단계를 수행하며 데이터를 수직방향으로 이동시킨다. 이와 같이 데이터 블록들을 셀 네트워킹을 통해 모두 이동시키면 이번에는 플립플롭(FF0, 11)은 출력단계를 수행하며 데이터를 수직으로 이동시키고, 플립플롭(FF1, 12)은 새로운 입력단계를 수행하며 데이터를 수평으로 이동시킨다. 이와 같이 셀 내부의 두 개의 플립플롭은 입력단계와 출력단계를 교차로 수행할 수 있도록 대칭적인 구조를 갖는다.
상기와 같이 셀의 네트워킹을 통하여 인터리버의 인터리빙은 이루어지며, 도 1 의 인터리버는 하나의 회로 구현으로 인터리빙과 인터리빙의 역과정인 디인터리빙(de-interleaving)을 모두 처리할 수 있다.
하지만, 실제 통신 모뎀에서는 인터리빙 되어야 하는 데이터 보다 디인터리빙 되어야 하는 데이터의 양이 더 많다. 인터리빙은 모뎀의 데이터 전송 모드에서 사용되지만 디인터리빙은 데이터 수신 모드에서 사용되고, 데이터 수신 모드에서 입력 받는 데이터는 연판정(soft decision) 결과 값이기 때문이다.
연판정은 하나의 비트에 해당하는 신호를 수신하였을 때 그 값을 0 또는 1로만 판단하지 않고, 판단값의 신뢰성에 해당하는 값을 포함하여 디인터리빙 이후에 오류 정정의 성능을 높이기 위해 사용된다. 연판정 값이 신뢰성에 해당하는 값을 포함하므로 데이터의 양이 많게 된다.
따라서, 데이터 전송 모드에서는 1개의 인터리빙 회로만이 필요한 반면, n개의 비트로 이루어진 연판정 값을 사용하는 데이터 수신 모드에서는 n개의 디인터리빙 회로가 필요하다. 1개의 회로만이 인터리빙과 디인터리빙을 위해 공유할 수 있으므로 n-1개의 회로는 오로지 디인터리빙 만을 위해 사용된다. 따라서, 인터리빙과 디인터리빙 모두를 위해 제안된 도 1 과 같은 대칭적인 셀 구조는 디인터리빙 만을 위해 보다 복잡도를 낮추도록 개선할 여지가 있다.
상기한 특허에서 모듈들의 외곽에 위치하는 셀들은 인터리빙 설정값에 모듈들의 외곽에 위치하는 셀들의 입력을 해당 모듈의 내부의 셀이나 다른 모듈의 셀의 출력과 연결하기 위해서, 다른 셀들에 비하여 멀티플렉서가 더 많은 입력을 받도록 되어 복잡도가 크다. 상기 특허에서의 구현 예시와 같이 인터리버가 한 클럭 주기에 하나의 데이터 비트를 입력 받아 출력하는 경우에는 대부분의 셀이 도 1 과 같이 셀 외부로부터 2개의 데이터 비트를 입력 받는 일반 셀들이다.
하지만, 많은 고속 통신 모뎀들은 회로의 동작 주파수를 낮추기 위해 한 클럭 주기(clock period)에 복수개의 데이터 비트를 입력 받아 출력하도록 구현한다. 한 클럭 주기 동안 R개의 데이터 비트를 입출력하는 경우 인터리버는 R회 언폴딩(unfolding)된 회로 구조를 갖게 된다. 즉, 인터리버의 셀들은 R회의 셀의 네트워킹 이후에 입력 받아야 할 데이터를 한 번의 네트워킹을 통해 입력 받는 구조로 구현되어 네트워킹이 보다 복잡해진다. 이때, 모듈의 외곽에 위치하는 셀들뿐만 아니라 R값이 클수록 많은 수의 셀들이 셀 외부로부터 3개 이상의 데이터 비트를 입력 받게 된다.
MB-OFDM 모뎀에서 데이터 전송속도에 따라 R=10과 R=20을 지원하도록 구현한 결과 평균적으로 셀들이 외부로부터 4개의 데이터 비트를 입력 받아 셀들의 멀티플렉서의 복잡도가 크게 증가하는 것을 확인하였다.
본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 그 목적은 회로 복잡도를 줄일 수 있는 셀 구조를 갖는 블록 인터리빙 장치를 제공한다.
상기와 같은 목적을 달성하기 위한 본 발명의 제 1 측면에 따른 블록 인터리빙 장치는 M 비트의 입력 스트림을 모듈러 k에 의해 블록 인터리빙 또는 디인터리빙하는 혼합 기수 시스템을 이용한 것으로서, M개의 셀을 포함하되, 열의 개수가 k이고 행의 개수가 M/k인 배열의 어레이 프로세서를 포함하며, 상기 M개의 셀 각각은, 상기 입력 스트림 중 수평 입력 스트림이 입력되는 제1 멀티플렉서, 상기 입력 스트림 중 수직 입력 스트림이 입력되는 제2멀티플렉서, 상기 제1 멀티플렉서의 출력단에 입력단이 연결되고, 상기 수직 입력 스트림을 수평 방향으로 출력하는 제1 저장부, 상기 제2멀티플렉서의 출력단에 입력단이 연결되고, 상기 수평 입력 스트림을 수직 방향으로 출력하는 제2 저장부를 포함한다.
이때, 인터리빙 모드에서, 상기 어레이 프로세서는 상기 M개의 셀의 모든 제1저장부에 상기 수평 입력 스트림이 모두 입력되면, 상기 제1 저장부에 저장된 상기 수평 입력 스트림을 상기 제2 저장부에 복사한다.
또한, 본 발명의 제 2 측면에 따른 블록 인터리빙 장치는 M 비트의 입력 스트림을 모듈러 k에 의해 블록 인터리빙 또는 디인터리빙하는 혼합 기수 시스템을 이용한 것으로서, M개의 셀을 포함하되, 열의 개수가 k이고 행의 개수가 M/k인 배열의 어레이 프로세서를 포함하며, 상기 M개의 셀 각각은, 상기 입력 스트림 중 수평 입력 스트림이 입력되는 제1 저장부, 상기 제1저장부의 출력단에 입력단이 연결되고, 상기 입력 스트림 중 수직 입력 스트림이 입력되는 제1멀티플렉서, 상기 제1 멀티플렉서의 출력단에 입력단이 연결되고, 상기 수평 입력 스트림을 수직 방향으로 출력하는 제2 저장부를 포함한다.
이때, 인터리빙 모드에서, 상기 어레이 프로세서는 상기 M개의 셀의 모든 제1저장부에 상기 수평 입력 스트림이 모두 입력되면, 상기 제1 저장부에 상기 수평 입력 스트림을 상기 제2 저장부에 복사한다.
본 발명의 제 3 측면에 따른 블록 인터리빙 장치는 M 비트의 입력 스트림을 모듈러 k에 의해 블록 인터리빙 또는 디인터리빙하는 혼합 기수 시스템을 이용한 것으로서, M개의 셀로 열의 개수가 k이고, 행의 개수가 M/k인 배열의 어레이 프로세서를 포함하며, 상기 M개의 셀 각각은, 상기 입력 스트림 중 수직 입력 스트림이 입력되는 제1 저장부, 상기 제1저장부의 출력단에 입력단이 연결되고, 상기 입력 스트림 중 수평 입력 스트림이 입력되는 제1멀티플렉서, 상기 제1 멀티플렉서의 출력단에 입력단이 연결되고, 상기 수직 입력 스트림을 수평 방향으로 출력하는 제2 저장부를 포함한다.
이때, 디인터리빙 모드에서, 상기 어레이 프로세서는 상기 M개의 셀의 모든 제1저장부에 상기 수직 입력 스트림이 모두 입력되면, 상기 제1 저장부에 상기 수직 입력 스트림을 상기 제2 저장부에 복사한다.
본 발명은 제1 플립플롭과 제2 플립플롭의 역할을 고정하여 각 플립플롭은 수평 또는 수직 방향으로만 데이터(비트)를 출력시킴으로써, 종래에 비해 플립플롭의 출력 데이터의 이동 방향을 선택하기 위한 멀티플렉서 회로가 필요 없어 셀의 회로 복잡도를 줄일 수 있다.
도 1 은 종래 블록 인터리빙 장치에 포함되는 셀의 구조도를 나타내는 도면이다.
도 2 는 본 발명에 따른 어레이 프로세서를 포함하는 블록 인터리빙 장치를 나타내는 도면이다.
도 3은 도 2의 블록 인터리빙 장치의 인터리빙 모드에서 스트림의 이동 경로를 나타내는 도면이다.
도 4 는 도 2 의 블록 인터리빙 장치의 디인터리빙 모드에서 스트림의 이동 경로를 나타내는 도면이다.
도 5 는 도 2 의 셀의 구조도이다.
도 6 은 본 발명에 따른 셀 구조를 포함한 블록 인터리빙의 인터리빙 모드에서 스트림의 이동 경로를 나타내는 도면이다.
도 7 은 본 발명에 따른 셀 구조를 포함한 블록 인터리빙의 디인터리빙 모드에서 스트림의 이동 경로를 나타내는 도면이다.
도 8 은 본 발명에 따른 언폴딩된 회로에서의 셀 구조를 나타내는 도면이다.
도 9 는 도 3의 인터리빙 모드에만 사용되는 셀의 구조도이다.
도 10 은 도 4의 디인터리빙 모드에서만 사용되는 셀의 구조도이다.
도 2 는 본 발명에 따른 어레이 프로세서를 포함하는 블록 인터리빙 장치를 나타내는 도면이다.
도 3은 도 2의 블록 인터리빙 장치의 인터리빙 모드에서 스트림의 이동 경로를 나타내는 도면이다.
도 4 는 도 2 의 블록 인터리빙 장치의 디인터리빙 모드에서 스트림의 이동 경로를 나타내는 도면이다.
도 5 는 도 2 의 셀의 구조도이다.
도 6 은 본 발명에 따른 셀 구조를 포함한 블록 인터리빙의 인터리빙 모드에서 스트림의 이동 경로를 나타내는 도면이다.
도 7 은 본 발명에 따른 셀 구조를 포함한 블록 인터리빙의 디인터리빙 모드에서 스트림의 이동 경로를 나타내는 도면이다.
도 8 은 본 발명에 따른 언폴딩된 회로에서의 셀 구조를 나타내는 도면이다.
도 9 는 도 3의 인터리빙 모드에만 사용되는 셀의 구조도이다.
도 10 은 도 4의 디인터리빙 모드에서만 사용되는 셀의 구조도이다.
아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
도 2 는 본 발명에 따른 어레이 프로세서를 포함하는 블록 인터리빙 장치를 나타내는 도면이다.
도 2 의 블록 인터리빙 장치는 M 비트의 입력 스트림을 모듈러 k에 의해 블록 인터리빙 또는 디인터리빙하는 혼합 기수 시스템(MRS, Mixed-Radix System)을 이용한 장치로서, M은 어레이 프로세서의 셀(100)의 수이다.
도 2 에서 어레이 프로세서는 크기가 ((M/k)*k)를 가지는 2차원 어레이로 구성되며, 각 셀(100)은 4개의 인접 셀들과 연결된다.
도 3은 도 2의 블록 인터리빙 장치의 인터리빙 모드에서 스트림의 이동 경로를 나타내는 도면으로, 실선은 입력 스트림의 이동 경로이고, 점선은 출력 스트림의 이동 경로이다.
도 3에 도시된 바와 같이, 인터리빙 모드에서 입력 스트림은 수평 방향으로 좌측 상단 셀에서 우측 하단 셀까지 순차적으로 입력되고, 입력 스트림의 첫 번째 비트가 마지막 셀에 도달하여 입력 단계가 완료되면 수평 방향으로 입력된 수평 입력 스트림은 우측 상단 셀부터 순차적으로 수직 방향으로 출력된다.
도 4 는 도 2 의 블록 인터리빙 장치의 디인터리빙 모드에서 스트림의 이동 경로를 나타내는 도면으로, 실선은 입력 스트림의 이동 경로이고, 점선은 출력 스트림의 이동 경로이다.
도 4에 도시된 바와 같이, 디인터리빙 모드에서 입력 스트림은 수직 방향으로 좌측 하단 셀에서 우측 상단 셀까지 순차적으로 입력되고, 입력 스트림의 첫 번째 비트가 마지막 셀에 도달하여 입력 단계가 완료되면 수직 방향으로 입력된 수직 입력 스트림은 우측 하단 셀부터 순차적으로 수평 방향으로 출력된다.
이와 같이, 본 발명에서는 하나의 블록 인터리빙 장치를 이용하여 인터리빙과 디인터리빙이 모두 가능하다. 이는 어레이 프로세서를 구성하는 셀의 네트워킹에 의해 가능하며, 아래에서는 셀의 구조 및 셀의 네트워킹 방법에 대해서 구체적으로 설명한다.
도 5 는 도 2 의 셀의 구조도이다.
도 5에 도시된 바와 같이, 각각의 셀(100)은 2개의 제 1 멀티플렉서(31) 및 제 2 멀티플렉서(32)를 포함하고, 비트 스트림 저장 기능을 갖는 2개의 제 1 플립플롭(41) 및 제 2 플립플롭(42)를 포함한다.
제 1 멀티플렉서(31)는 2개의 입력단과 1개의 출력단을 포함하며, 입력단 중 제 1 입력단은 입력 스트림 중 수평 방향으로 입력되는 수평 입력 스트림을 입력 받고, 제 2 입력단은 제 2 플립플롭(42)의 출력단과 연결되어 수직 방향으로 입력되는 수직 입력 스트림을 입력 받는다.
제 1 플립플롭(41)은 1개의 입력단과 2개의 출력단을 포함하며, 입력단은 제1멀티플렉서(31)의 출력단에 연결되어 있고 출력단은 제 2 멀티플렉서(32) 및 수평 방향 출력단과 연결되어 있다. 제 1 플립플롭(41)은 제 1 멀티플렉서(31)에서 입력되는 수평 입력 스트림을 일시적으로 저장했다가 제 2 멀티플렉서(32)로 출력하고, 제 1 멀티플렉서(31)에서 입력되는 수직 입력 스트림을 수평 방향으로 출력한다.
제 2 멀티플렉서(32)는 2개의 입력단과 1개의 출력단을 포함하며, 입력단 중 제 1 입력단은 제 1 플립플롭(41)의 출력단과 연결되어 수평 입력 스트림을 입력 받고, 제 2 입력단은 입력 스트림 중 수직 방향으로 입력되는 수직 입력 스트림을 입력 받는다.
제 2 플립플롭(42)은 1개의 입력단과 2개의 출력단을 포함하며, 입력단은 제 2 멀티플렉서(32)의 출력단에 연결되어 있고 출력단은 제 1 멀티플렉서(31) 및 수직 방향 출력단에 연결되어 있다. 제 2 플립플롭(42)은 제 2 멀티플렉서(42)에서 입력되는 수직 방향 스트림을 일시적으로 저장했다가 제 1 멀티플렉서(31)로 출력하고, 제 2 멀티플렉서(32)에서 입력되는 수평 입력 스트림을 수직 방향으로 출력한다.
이러한 셀의 구조를 이용하여 본 발명에서는 셀의 네트워킹에 따라 인터리빙 모드 및 디인터리빙 모드에서 스트림이 입력되는 입력 단계와 스트림을 출력하는 출력 단계가 동시에 이루어질 수 있으며, 이는 도 6 을 참조하여 보다 구체적으로 설명한다.
도 6 은 본 발명에 따른 셀 구조를 포함한 블록 인터리빙의 인터리빙 모드에서 스트림의 이동 경로를 나타내는 도면이다. 도 6 에서는 설명의 편의상 블록 인터리빙의 어레이 프로세서가 6개의 셀을 포함하는 것으로 도시하였다.
인터리빙 모드에서 n번째 블록의 입력 스트림은 수평 방향으로 좌측 상단 셀부터 우측 하단 셀까지 제1 플립플롭(41)에 저장된다. 각 셀(100)의 모든 제 1 플립플롭(41)에 수평 입력 스트림이 저장되면, 수평 입력 스트림은 제 2 멀티플렉서(32)를 통해 각 셀의 제 2 플립플롭(42)에 전달되며, 제 2 플립플롭(42)에는 제 1 플립플롭(41)의 n번째 블록의 수평 입력 스트림이 복사 저장된다.
이에 따라, 제 1 플립플롭(41)은 n+1번째 블록의 입력 스트림을 제 1 플립플롭(41)에 저장하는 입력 단계를 수행할 수 있으며, n+1번째 입력 스트림이 제 1 플립플롭(41)에 입력될 때, 제 2 플립플롭(42)은 n번째 블록의 수평 입력 스트림을 수직 방향으로 출력하는 출력 단계를 수행할 수 있다.
이와 같이, 본 발명의 인터리빙 모드에서 제 1 플립플롭(41)이 n번째 블록의 입력 스트림에 대해 입력 단계를 수행할 때 제 2 플립플롭(42)은 n-1번째 블록의 입력 스트림에 대해 출력 단계를 수행할 수 있고, 제 1 플립플롭(41)이 n+1번째 블록의 입력 스트림에 대해 입력 단계를 수행할 때 제 2 플립플롭(42)은 n번째 블록의 입력 스트림에 대해 출력 단계를 수행할 수 있다.
도 7 은 본 발명에 따른 셀 구조를 포함한 블록 인터리빙의 디인터리빙 모드에서 스트림의 이동 경로를 나타내는 도면이다. 도 7 에서는 설명의 편의상 블록 인터리빙의 어레이 프로세서가 6개의 셀을 포함하는 것으로 도시하였다.
디인터리빙 모드에서 n번째 블록의 입력 스트림은 수직 방향으로 좌측 하단 셀부터 우측 상단 셀까지 제 2 플립플롭(42)에 저장된다. 각 셀(100)의 모든 제 2 플립플롭(42)에 수직 입력 스트림이 저장되면, 수직 입력 스트림은 제 1 멀티플렉서(31)를 통해 각 셀(100)의 제 1 플립플롭(41)에 전달되며, 제 1 플립플롭(41)에는 제 2 플립플롭(42)의 n번째 블록의 수직 입력 스트림이 복사 저장된다.
이에 따라, 제 2 플립플롭(42)은 n+1번째 블록의 입력 스트림을 제 2 플립플롭(42)에 저장하는 입력 단계를 수행할 수 있으며, n+1번째 입력 스트림이 제 2 플립플롭(42)에 입력될 때, 제 1 플립플롭(42)은 n번째 블록의 수직 입력 스트림을 수평 방향으로 출력하는 출력 단계를 수행할 수 있다.
이와 같이, 본 발명의 디인터리빙 모드에서 제 2 플립플롭(42)이 n번째 블록의 입력 스트림에 대해 입력 단계를 수행할 때 제 1 플립플롭(41)은 n-1번째 블록의 입력 스트림에 대해 출력 단계를 수행할 수 있고, 제 2 플립플롭(42)이 n+1번째 블록의 입력 스트림에 대해 입력 단계를 수행할 때 제 1 플립플롭(41)은 n번째 블록의 입력 스트림에 대해 출력 단계를 수행할 수 있다.
상기한 바와 같이, 본 발명에서는 제1 플립플롭(41)과 제2 플립플롭(42)의 역할을 고정하여 각 플립플롭은 수평 또는 수직 방향으로만 데이터(비트)를 출력시킴으로써, 종래에 비해 플립플롭의 출력 데이터의 이동 방향을 선택하기 위한 멀티플렉서 회로가 필요 없어 셀의 회로 복잡도를 줄일 수 있다.
또한, 플립플롭의 역할과 데이터 이동 방향을 한정함으로써, 하나의 플립플롭은 외부 셀과의 연결을 인터리빙 설정값에 상관없이 고정하고, 나머지 플립플롭은 외부 셀과의 연결을 필요 시 인터리빙 설정값에 따라 변경하도록 할 수 있다.
따라서, 모듈의 외곽에 위치한 셀이나 언폴딩(unfolding) 된 회로에서의 셀은 인터리빙 설정값에 따라 네트워킹을 다르게 해야 한다.
도 8 은 본 발명에 따른 언폴딩된 회로에서의 셀 구조를 나타내는 도면이다.
도 8에 도시된 바와 같이, 언폴딩된 회로에서의 셀(200)은 제3 멀티플렉서(51), 제 4 멀티플렉서(52), 제3 플립플롭(61), 제 4 플립플롭(62)을 포함한다.
도 8 의 제3 멀티플렉서(51), 제3 플립플롭(61) 및 제4 플립플롭(62)은 각각 도 5 의 제1 멀티플렉서(31), 제 1 플립플롭(41) 및 제 2 플립플롭(42)에 대응되므로 그 구조 및 동작에 대해서 생략하도록 한다.
언폴딩(unfolding)된 회로에선 디인터리빙 모드에서 수직 입력 스트림이 적어도 2개 이상을 포함한다. 따라서, 제 4 멀티플렉서(52)는 적어도 2개 이상의 수직 입력 스트림을 입력 받는다는 점에서 도 5 의 제 2 멀티플렉서(32)와 구분된다.
이와 같이, 도 8 의 제2 멀티플렉서(32)는 언폴딩됨에 따라 늘어난 수직 입력 스트림을 동시에 입력 받아 처리함으로서, 통신 속도에 따라 달라지는 k값에 유동적으로 대처할 수 있다.
도 8 에서는 언폴딩으로 인한 복수의 입력 신호를 제 4 멀티플렉서(52)가 입력 받는 것으로 도시하였으나, 본 발명은 이에 한정되지 않고 필요에 따라서 제 3 멀티플렉서(51)가 적어도 2개 이상의 복수의 수평 입력 스트림을 입력 받도록 가변적으로 설계 변경이 가능하다.
데이터 전송 모드에서는 1개의 인터리빙 회로만이 필요한 반면, m개의 비트로 이루어진 경판정 값을 사용하는 데이터 수신 모드에서는 m개의 디인터리빙 회로가 필요하다. 이때, 1개의 회로만이 인터리빙과 디인터리빙을 위해 공유할 수 있으므로, m-1개의 회로는 오로지 디인터리빙만을 위해 사용될 수 있다.
위에서는 인터리빙과 디인터리빙을 모두 네트워크할 수 있는 셀에 대해서 설명하였으며, 도 5 의 셀 구조에서 어느 하나의 멀티플렉서를 생략할 경우 인터리빙만 가능한 셀 또는 디인터리빙만 가능한 셀을 구현할 수 있다.
따라서, 셀의 복잡도를 낮추기 위해서 도 9 및 도 10 에서는 인터리빙만 가능하거나 디인터리빙만 가능한 셀의 구조를 제시한다.
도 9는 도 3 의 인터리빙 모드에만 사용되는 셀의 구조도이다.
도 9 에 도시된 바와 같이, 인터리빙 모드에만 사용되는 셀(300)은 제5 멀티플렉서(70), 제 5 플립플롭(71) 및 제 6 플립플롭(72)을 포함한다.
제 5 플립플롭(71)은 수평 입력 스트림이 입력되고, 제 5 멀티플렉서(70)는 제 5 플립플롭(71)의 출력단에 제 1 입력단이 연결되고 제 2 입력단으로는 수직 입력 스트림이 입력된다.
제 6 플립플롭(72)은 제 5 멀티플렉서(70)의 출력단에 입력단이 연결되어, 수평 입력 스트림을 수직 방향으로 출력한다.
인터리빙 모드에서, n번째 블록의 수평 입력 스트림이 모든 셀(300)의 제 5 플립플롭(71)에 입력 되어 n번째 블록의 수평 입력 스트림의 첫 번째 비트가 마지막 셀에 도달하면, n번째 블록의 수평 입력 스트림은 제 6 플립플롭(72)에 복사된다.
다음으로, 제 5 플립플롭(71)이 n+1번째 블록의 수평 입력 스트림을 입력 받을 때, 제 6 플립플롭(72)은 복사된 n번째 블록의 수평 입력 스트림을 수직 방향으로 출력한다.
도 10 은 도 4의 디인터리빙 모드에서만 사용되는 셀의 구조도이다.
도 10에 도시된 바와 같이, 디인터리빙 모드에만 사용되는 셀(400)은 제6 멀티플렉서(80), 제 7 플립플롭(81) 및 제 8 플립플롭(82)을 포함한다.
제 8 플립플롭(82)은 수직 입력 스트림이 입력되고, 제 6 멀티플렉서(80)는 제 8 플립플롭(82)의 출력단에 제 1 입력단이 연결되고 제 2 입력단으로는 수평 입력 스트림이 입력된다.
제 7 플립플롭(81)은 제 6 멀티플렉서(80)의 출력단에 입력단이 연결되어 수직 입력 스트림을 수평 방향으로 출력한다.
디인터리빙 모드에서, n번째 블록의 수직 입력 스트림이 모든 셀(400)의 제 8 플립플롭(82)에 입력되어 n번째 블록의 수직 입력 스트림의 첫 번째 비트가 마지막 셀에 도달하면, n번째 블록의 수직 입력 스트림은 제 7 플립플롭(81)에 복사된다.
이때, n번째 블록의 수직 입력 스트림은 언폴딩됨에 따라 늘어난 적어도 하나 이상의 비트를 포함하는 수직 입력 스트림일 수 있으며, 제 8 플립플롭(82)은 적어도 하나 이상의 수직 입력 스트림을 처리하여 통신 속도에 따라 달리지는 k값에 유동적으로 대처할 수 있다.
다음으로, 제 8 플립플롭(82)이 n+1번째 블록의 수직 입력 스트림을 입력 받을 때, 제 7 플립플롭(81)은 복사된 n번째 블록의 수직 입력 스트림을 수평 방향으로 출력한다.
도 9 및 도 10 과 같이 인터리빙 모드에서만 사용되는 셀(300)과 디인터리빙 모드에서만 사용되는 셀(400)은 도 5의 인터리빙 및 디인터리빙 모드에서 모두 사용 가능한 셀에 비해 하나의 멀티플렉서를 생략할 수 있다. 따라서, 도 9 및 도 10 의 셀은 도 5의 셀에 비해 회로 복잡도를 줄일 수 있다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
100, 200, 300, 400: 셀
31, 32, 51, 52, 70, 80: 멀티플렉서
41, 42, 61, 62, 71, 72, 81, 82: 플립플롭
31, 32, 51, 52, 70, 80: 멀티플렉서
41, 42, 61, 62, 71, 72, 81, 82: 플립플롭
Claims (11)
- M 비트의 입력 스트림을 모듈러 k에 의해 블록 인터리빙 또는 디인터리빙하는 혼합 기수 시스템을 이용한 블록 인터리빙 장치에 있어서,
M개의 셀을 포함하되, 열의 개수가 k이고 행의 개수가 M/k인 배열의 어레이 프로세서를 포함하며,
상기 M개의 셀 각각은,
상기 입력 스트림 중 수평 입력 스트림이 입력되는 제1 멀티플렉서,
상기 입력 스트림 중 수직 입력 스트림이 입력되는 제2멀티플렉서,
상기 제1 멀티플렉서의 출력단에 입력단이 연결되고, 상기 수직 입력 스트림을 수평 방향으로 출력하는 제1 저장부, 및
상기 제2멀티플렉서의 출력단에 입력단이 연결되고, 상기 수평 입력 스트림을 수직 방향으로 출력하는 제2 저장부를 포함하며,
인터리빙 모드에서, 상기 어레이 프로세서는 상기 M개의 셀의 모든 제1저장부에 상기 수평 입력 스트림이 모두 입력되면, 상기 제1 저장부에 저장된 상기 수평 입력 스트림을 상기 제2 저장부에 복사하는 블록 인터리빙 장치. - 제1항에 있어서,
상기 인터리빙 모드에서, 상기 제 1 저장부는 상기 수평 입력 스트림을 수평 방향으로 출력하고,
디인터리빙 모드에서, 상기 제 2 저장부는 상기 수직 입력 스트림을 수직 방향으로 출력하는 블록 인터리빙 장치. - 제1항에 있어서,
디인터리빙 모드에서, 상기 어레이 프로세서는 상기 M개의 셀의 모든 제2 저장부에 상기 수직 입력 스트림이 모두 입력되면, 상기 제2 저장부에 상기 수직 입력 스트림을 상기 제1 저장부에 복사하는 블록 인터리빙 장치. - 제3항에 있어서,
상기 디인터리빙 모드에서, 상기 어레이 프로세서는 상기 입력 스트림 중 수직 입력 스트림을 상기 어레이 프로세서의 좌측 하단 셀에서 수직 방향으로 우측 상단 셀의 마지막 셀에 도달할 때까지 입력시키며, 상기 수직 입력 스트림의 첫 번째 비트가 상기 마지막 셀에 도달한 후, 상기 어레이 프로세서의 출력을 우측 하단 셀부터 수평 방향으로 출력하여 디인터리빙된 출력 스트림을 생성하는 블록 인터리빙 장치. - 제1항에 있어서,
상기 인터리빙 모드에서, 상기 어레이 프로세서는 상기 입력 스트림 중 수평 입력 스트림을 상기 어레이 프로세서의 좌측 상단 셀에서 수평 방향으로 우측 하단 셀의 마지막 셀에 도달할 때까지 입력시키며, 상기 수평 입력 스트림의 첫 번째 비트가 상기 마지막 셀에 도달한 후, 상기 어레이 프로세서의 출력을 우측 상단 셀부터 수직 방향으로 출력하여 인터리빙된 출력 스트림을 생성하는 블록 인터리빙 장치. - 제1항에 있어서,
상기 제2멀티플렉서의 입력단은 상기 제1저장부의 출력단에 연결되며,
상기 제1 멀티플렉서의 입력단은 상기 제2 저장부의 출력단에 연결되는 블록 인터리빙 장치. - 제1항에 있어서,
상기 제2멀티플렉서는 동시에 적어도 하나 이상의 상기 수직 입력 스트림이 입력되는 블록 인터리빙 장치. - M 비트의 입력 스트림을 모듈러 k에 의해 블록 인터리빙 또는 디인터리빙하는 혼합 기수 시스템을 이용한 블록 인터리빙 장치에 있어서,
M개의 셀을 포함하되, 열의 개수가 k이고 행의 개수가 M/k인 배열의 어레이 프로세서를 포함하며,
상기 M개의 셀 각각은,
상기 입력 스트림 중 수평 입력 스트림이 입력되는 제1 저장부,
상기 제1저장부의 출력단에 입력단이 연결되고, 상기 입력 스트림 중 수직 입력 스트림이 입력되는 제1멀티플렉서, 및
상기 제1 멀티플렉서의 출력단에 입력단이 연결되고, 상기 수평 입력 스트림을 수직 방향으로 출력하는 제2 저장부를 포함하며,
인터리빙 모드에서, 상기 어레이 프로세서는 상기 M개의 셀의 모든 제1저장부에 상기 수평 입력 스트림이 모두 입력되면, 상기 제1 저장부에 상기 수평 입력 스트림을 상기 제2 저장부에 복사하는 블록 인터리빙 장치. - 제8항에 있어서,
상기 인터리빙 모드에서, 상기 어레이 프로세서는 상기 입력 스트림 중 수평 입력 스트림을 상기 어레이 프로세서의 좌측 상단 셀에서 수평 방향으로 우측 하단 셀의 마지막 셀에 도달할 때까지 입력시키며, 상기 수평 입력 스트림의 첫 번째 비트가 상기 마지막 셀에 도달한 후, 상기 어레이 프로세서의 출력을 우측 상단 셀부터 수직 방향으로 출력하여 인터리빙된 출력 스트림을 생성하는 블록 인터리빙 장치. - M 비트의 입력 스트림을 모듈러 k에 의해 블록 인터리빙 또는 디인터리빙하는 혼합 기수 시스템을 이용한 블록 인터리빙 장치에 있어서,
M개의 셀로 열의 개수가 k이고, 행의 개수가 M/k인 배열의 어레이 프로세서를 포함하며,
상기 M개의 셀 각각은,
상기 입력 스트림 중 수직 입력 스트림이 입력되는 제1 저장부,
상기 제1저장부의 출력단에 입력단이 연결되고, 상기 입력 스트림 중 수평 입력 스트림이 입력되는 제1멀티플렉서, 및
상기 제1 멀티플렉서의 출력단에 입력단이 연결되고, 상기 수직 입력 스트림을 수평 방향으로 출력하는 제2 저장부를 포함하며,
디인터리빙 모드에서, 상기 어레이 프로세서는 상기 M개의 셀의 모든 제1저장부에 상기 수직 입력 스트림이 모두 입력되면, 상기 제1 저장부에 상기 수직 입력 스트림을 상기 제2 저장부에 복사하는 블록 인터리빙 장치. - 제10항에 있어서,
디인터리빙 모드에서, 상기 어레이 프로세서는 상기 입력 스트림 중 수직 입력 스트림을 상기 어레이 프로세서의 좌측 하단 셀에서 수직 방향으로 우측 상단 셀의 마지막 셀에 도달할 때까지 입력시키며, 상기 수직 입력 스트림의 첫 번째 비트가 상기 마지막 셀에 도달한 후, 상기 어레이 프로세서의 출력을 우측 하단 셀부터 수평 방향으로 출력하여 디인터리빙된 출력 스트림을 생성하는 블록 인터리빙 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110104062A KR101209824B1 (ko) | 2011-10-12 | 2011-10-12 | 블록 인터리빙 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020110104062A KR101209824B1 (ko) | 2011-10-12 | 2011-10-12 | 블록 인터리빙 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101209824B1 true KR101209824B1 (ko) | 2012-12-07 |
Family
ID=47907184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020110104062A KR101209824B1 (ko) | 2011-10-12 | 2011-10-12 | 블록 인터리빙 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101209824B1 (ko) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010006347A1 (en) | 1997-05-23 | 2001-07-05 | Altera Corporation | Redundancy circuitry for programmable logic devices with interleaved input circuits |
US6353900B1 (en) | 1998-09-22 | 2002-03-05 | Qualcomm Incorporated | Coding system having state machine based interleaver |
KR100884098B1 (ko) | 2007-09-28 | 2009-02-19 | 고려대학교 산학협력단 | 다중 대역 직교 주파수 분할 다중 접속 통신 시스템에서혼합 기수 시스템을 이용한 블록 인터리빙 장치 및 방법 |
-
2011
- 2011-10-12 KR KR1020110104062A patent/KR101209824B1/ko not_active IP Right Cessation
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20010006347A1 (en) | 1997-05-23 | 2001-07-05 | Altera Corporation | Redundancy circuitry for programmable logic devices with interleaved input circuits |
US6353900B1 (en) | 1998-09-22 | 2002-03-05 | Qualcomm Incorporated | Coding system having state machine based interleaver |
KR100884098B1 (ko) | 2007-09-28 | 2009-02-19 | 고려대학교 산학협력단 | 다중 대역 직교 주파수 분할 다중 접속 통신 시스템에서혼합 기수 시스템을 이용한 블록 인터리빙 장치 및 방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8874988B2 (en) | Modification of error statistics behind equalizer to improve inter-working with different FEC codes | |
KR980012968A (ko) | 정적 램을 이용한 길쌈인터리버의 구조 | |
US7724163B2 (en) | Apparatus of multi-stage network for iterative decoding and method thereof | |
WO1996037050A1 (en) | Reconfigurable interleaver/deinterleaver and address generator for data streams interleaved according to one of a plurality of interleaving schemes | |
US7945780B1 (en) | Apparatus for dynamically configurable interleaver scheme using at least one dynamically changeable interleaving parameter | |
US8782320B2 (en) | Multi-stage interconnection networks having fixed mappings | |
KR101209824B1 (ko) | 블록 인터리빙 장치 | |
JP3796250B2 (ja) | デジタル通信システムのデインターリービング装置およびそのデインターリービング方法 | |
JPH09186670A (ja) | スロット受信同期回路 | |
JP3549756B2 (ja) | ブロックインターリーブ回路 | |
CN104184536B (zh) | 基于LTE Turbo译码的子块交织控制方法、装置及设备 | |
US10140209B2 (en) | Time de-interleaving circuit and time de-interleaving method for reducing a number of times of accessing memory | |
US10164664B2 (en) | Time and cell de-interleaving circuit and method for performing time and cell de-interleaving | |
US7954015B1 (en) | Data interleaving and deinterleaving involving concatenation of words read from storage | |
CN114430280A (zh) | 一种译码方法及装置 | |
CN112929125B (zh) | 一种基于数据块变换的块交织方法及系统 | |
JP4045017B2 (ja) | ビットインタリーブ及びビットデインタリーブ回路 | |
Sánchez-Ortiz et al. | Design and implementation of a multi-standard interleaver for 802.11 a, 802.11 n, 802.16 e & DVB standards | |
CN112804026B (zh) | 一种ofdm系统中频率、时频交织方法及系统 | |
JPH0329519A (ja) | プログラマブル・ディジタル信号遅延装置 | |
US8792375B2 (en) | Data rate matching method and apparatus for use in mobile communication systems | |
WO2013039376A1 (en) | Interleaver for duo -binary turbo codes for a wimax communication system | |
Ajaz et al. | Radix-3 Quasi Shift Network For Reconfigurable QC-LDPC Decoders | |
KR0183171B1 (ko) | 인터리버 및 디인터리버와 그 방법 | |
US20130219242A1 (en) | Multi-processing architecture for an lte turbo decoder (td) |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20151030 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20160928 Year of fee payment: 5 |
|
LAPS | Lapse due to unpaid annual fee |