KR101491650B1 - 직교 주파수 분할 다중 통신에서의 송수신 장치 - Google Patents
직교 주파수 분할 다중 통신에서의 송수신 장치 Download PDFInfo
- Publication number
- KR101491650B1 KR101491650B1 KR20130071473A KR20130071473A KR101491650B1 KR 101491650 B1 KR101491650 B1 KR 101491650B1 KR 20130071473 A KR20130071473 A KR 20130071473A KR 20130071473 A KR20130071473 A KR 20130071473A KR 101491650 B1 KR101491650 B1 KR 101491650B1
- Authority
- KR
- South Korea
- Prior art keywords
- memory address
- address
- memory
- data
- depth
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/26—Systems using multi-frequency codes
- H04L27/2601—Multicarrier modulation systems
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Error Detection And Correction (AREA)
- Detection And Prevention Of Errors In Transmission (AREA)
Abstract
직교 주파수 분할 다중 통신에서의 송수신 장치를 개시한다.
직교 주파수 분할 다중 통신에서의 인터리빙 또는 디인터리빙 시 모든 경로 지연에 대해 시간적으로 가변하는 상대적인 메모리 주소를 부여하여 메모리 액세스에 최적화하도록 하는 직교 주파수 분할 다중 통신에서의 송수신 장치를 제공한다.
직교 주파수 분할 다중 통신에서의 인터리빙 또는 디인터리빙 시 모든 경로 지연에 대해 시간적으로 가변하는 상대적인 메모리 주소를 부여하여 메모리 액세스에 최적화하도록 하는 직교 주파수 분할 다중 통신에서의 송수신 장치를 제공한다.
Description
본 실시예는 직교 주파수 분할 다중 통신에서의 송수신 장치에 관한 것이다. 더욱 상세하게는 직교 주파수 분할 다중(OFDM: Orthogonal Frequency Division Multiplexing, 이하 'OFDM'이라 칭함) 통신에서의 인터리빙(Interleaving) 또는 디인터리빙(Deinterleaving) 시 모든 경로 지연(Branch Delay)에 대해 시간적으로 가변하는 상대적인 메모리 주소를 부여하여 메모리 액세스(Memory Access)에 최적화하도록 하는 직교 주파수 분할 다중 통신에서의 송수신 장치에 관한 것이다.
이하에 기술되는 내용은 단순히 본 실시예와 관련되는 배경 정보만을 제공할 뿐 종래기술을 구성하는 것이 아님을 밝혀둔다.
OFDM 통신 기술은 다중 경로 페이딩 채널 환경에서 효율적인 전송이 가능하다는 장점으로 인해서 현재 다양한 무선 네트워크에서 이용되고 있다. 특히 IEEE802.11a, HIPERLAN/2와 같은 무선 LAN 표준이나 DAB(Digital Audio Broadcasting), DVB(Digital Video Broadcasting) 및 ISDB(Integrated Services Digital Broadcasting) 등과 같이 지상파 디지털 멀티미디어 방송의 표준으로 이용되고 있다.
ISDB는 ISDB-S(위성 방송), ISDB-T(지상파), ISDB-C(케이블)와 2.6 GHz 대역 이동 방송(Mobile Broadcasting)으로 MPEG-2 표준의 비디오와 오디오 부호화와 전송 스트림을 기반으로 한다. ISDB-T DMB(1-Segment)는 13개의 주파수 세그먼트 중 1개의 고정된 주파수 세그먼트만을 이용하는 지상 디지털 TV 방송의 모바일(Mobile)용 방송서비스를 일컫는다.
본 실시예는 OFDM 통신에서의 인터리빙 또는 디인터리빙 시 모든 경로 지연에 대해 시간적으로 가변하는 상대적인 메모리 주소를 부여하여 메모리 액세스에 최적화하도록 하는 OFDM 통신에서의 신호 송수신 장치를 제공하는 데 주된 목적이 있다.
이하에서 설명할 본 실시예는 ARIB(Association of Radio Industries and Businesses)에서 재정된 표준인 ARIB STD-B31 Version 1.6(Transmission System For Digital Terrestrial Television Broadcasting)을 기준으로 한다.
또한, 본 실시예는 'ISDB-T(Integrated Service Digital Broadcasting-Terrestrial)'를 기반으로 한다. 이러한, 'ISDB-T'는 HDTV 방송 및 다 채널 SDTV 방송, 모바일, 포터블 멀티미디어 서비스를 구현하기 위한 규격으로서, OFDM을 기초로한 BS(Band Segment)-OFDM 방식을 이용한다. 'ISDB-T'는 한 채널의 대역폭(Bandwidth)가 약, '5.6 Mhz'이다. 이때, BS-OFDM를 이용한다는 것은 '5.6 Mhz'의 대역폭을 13 조각으로 나누어 한 조각을 세그먼트(Segment)라고 정의한다는 것이다. 여기서, 하나의 세그먼트는 429 Khz(5.6 M/13)의 대역폭을 가진다. 이러한, 'ISDB-T'는 각 세그먼트 별로 다른 변조/복조 방식을 이용할 수 있다. 즉, 세그먼트 별로 QPSK(Quadrature Phase Shift Keying), DQPSK(Differential Quadrature Phase Shift Keying), 16QAM(Quadrature Amplitude Modulation), 64QAM 변조/복조 방식 중 하나를 선택해서 이용할 수 있다. 또한, 13 개의 세그먼트를 이용해서 HDTV 방송을 전송하거나, 다채널 SDTV 방송을 전송하고, 모바일 방송을 전송할 수 있다. 'ISDB-T'에서 영상압축 방식은 'MPEG-2 Video'를 이용하며, 음성압축 방식은 'MPEG-2(Audio AAC)'를 이용한다.
본 실시예의 일 측면에 의하면, 송신 장치로부터 비트스트림(Bitstream)를 수신하는 데이터 수신부; 상기 비트스트림을 복조(Demodulation)한 복조 데이터를 생성하는 복조부; 상기 복조 데이터를 디인터리빙(Deinterleaving)할 때, 시간적으로 가변하는 상대적인 가변 메모리 주소(Memory Address)를 생성하며, 상기 가변 메모리 주소에 근거하여 디인터리빙한 디인터리빙 데이터를 생성하는 디인터리버부(Deinterleaver); 및 상기 디인터리빙 데이터를 복호화(Decoding)한 복호화 데이터를 생성하는 복호화부를 포함하는 직교 주파수 분할 다중 통신에서의 수신 장치를 제공한다.
또한, 본 실시에의 다른 측면에 의하면, 입력된 비트스트림(Bitstream)을 부호화(Coding)한 부호화 데이터를 생성하는 부호화부; 상기 부호화 데이터를 인터리빙(Interleaving)할 때, 시간적으로 가변하는 상대적인 가변 메모리 주소(Address)를 생성하며, 상기 가변 메모리 주소에 근거하여 인터리빙한 인터리빙 데이터를 생성하는 인터리버부(Interleaver); 상기 인터리빙 데이터를 변조한 변조 데이터를 생성하는 변조부; 및 상기 변조 데이터를 수신 장치로 전송하는 전송부를 포함하는 직교 주파수 분할 다중 통신에서의 송신 장치를 제공한다.
이상에서 설명한 바와 같이 본 실시예에 의하면, OFDM 통신에서의 인터리빙 또는 디인터리빙 시 모든 경로 지연에 대해 시간적으로 가변하는 상대적인 메모리 주소를 부여하여 메모리 액세스에 최적화하도록 하는 효과가 있다. 또한, 본 실시예에 의하면, 복수의 레이어 별 메모리 주소를 통합하는 과정에서 전체 메모리 영역에서 복수의 레이어별로 할당된 영역 해당 레이어의 타임 인터리버 길이(TI_Length)가 바뀌더라도 역방향의 레이어에 데이터 유실이 없도록 하는 효과가 있다.
또한, 본 실시예에 의하면, 입출력이 순차(Sequential)적으로 되는 특성을 이용하여 경로 지연(Branch Delay)를 최소 단위가 되도록 시간 관계를 고려해서 경로를 재구성하며, OFDM의 특정 모드(예컨대, ISDB-T에서의 모드 1, 모드 2, 모드 3 중 어느 하나)와 무관하게 인터리빙 또는 디인터리빙이 수행되도록 하는 효과가 있다. 또한, 본 실시예에 의하면, 인터리빙 또는 디인터리빙 시 동일 레이어에서 현재 메모리 주소(Current Memory Address)와 다음 메모리 주소(Next Memory Address)의 차이가 기 설정된 값 이하인 경우, 메모리 액세스에서의 RAS(Row Address Strobe) 빈도가 줄어들도록 하는 효과가 있다. 또한, 본 실시예에 의하면, DRAM(Dynamic Random Access Memory) 메모리를 사용한 인터리버부 또는 디인터리버부가 구현된 경우 동일 레이어에서 현재(Current)와 다음 메모리 주소(Next Memory Address)의 차이가 기 설정된 값 이하(ISDB-T에서는 95이하)가 되어, 메모리 액세스에서의 RAS(Row Address Strobe) 빈도가 줄어들어 데이터 처리율(Data Throughput)이 올라가는 효과가 있다.
도 1은 본 실시예에 따른 OFDM 통신에서의 송신기를 개략적으로 나타낸 블럭 구성도이다.
도 2는 본 실시예에 따른 OFDM 통신에서의 수신기를 개략적으로 나타낸 블럭 구성도이다.
도 3은 본 실시예에 따른 ISDB-T 송신기의 단일 레이어를 위한 주소 생성부를 개략적으로 나타낸 블럭 구성도이다.
도 4는 본 실시예에 따른 ISDB-T 수신기의 단일 레이어를 위한 주소 생성부`를 개략적으로 나타낸 블럭 구성도이다.
도 5는 본 실시예에 따른 ISDB-T 송신기의 레이어별 주소 생성 모듈을 개략적으로 나타낸 블럭 구성도이다.
도 6은 본 실시예에 따른 ISDB-T 수신기의 레이어별 주소 생성 모듈을 개략적으로 나타낸 블럭 구성도이다.
도 7a, 7b, 7c는 본 실시예에 따른 인터리빙 및 디인터리빙을 설명하기 위한 도면이다.
도 8a, 8b, 8c, 8d는 본 실시예에 따른 모드 1 일때의 디인터리빙을 설명하기 위한 도면이다.
도 9a 및 도 9b는 본 실시예에 따른 가변 메모리 주소를 설명하기 위한 도면이다.
도 10는 본 실시예에 따른 모드 3 일때의 디인터리빙을 설명하기 위한 도면이다.
도 11은 본 실시예에 따른 전체 메모리에 레이어별 영역의 할당을 설명하기 위한 도면이다.
도 2는 본 실시예에 따른 OFDM 통신에서의 수신기를 개략적으로 나타낸 블럭 구성도이다.
도 3은 본 실시예에 따른 ISDB-T 송신기의 단일 레이어를 위한 주소 생성부를 개략적으로 나타낸 블럭 구성도이다.
도 4는 본 실시예에 따른 ISDB-T 수신기의 단일 레이어를 위한 주소 생성부`를 개략적으로 나타낸 블럭 구성도이다.
도 5는 본 실시예에 따른 ISDB-T 송신기의 레이어별 주소 생성 모듈을 개략적으로 나타낸 블럭 구성도이다.
도 6은 본 실시예에 따른 ISDB-T 수신기의 레이어별 주소 생성 모듈을 개략적으로 나타낸 블럭 구성도이다.
도 7a, 7b, 7c는 본 실시예에 따른 인터리빙 및 디인터리빙을 설명하기 위한 도면이다.
도 8a, 8b, 8c, 8d는 본 실시예에 따른 모드 1 일때의 디인터리빙을 설명하기 위한 도면이다.
도 9a 및 도 9b는 본 실시예에 따른 가변 메모리 주소를 설명하기 위한 도면이다.
도 10는 본 실시예에 따른 모드 3 일때의 디인터리빙을 설명하기 위한 도면이다.
도 11은 본 실시예에 따른 전체 메모리에 레이어별 영역의 할당을 설명하기 위한 도면이다.
이하, 본 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
이하, 본 실시예는 ARIB(Association of Radio Industries and Businesses)에서 재정된 표준인 ARIB STD-B31 Version 1.6(Transmission System For Digital Terrestrial Television Broadcasting)을 기준으로 설명한다.
또한, 본 실시예는 'ISDB-T(Integrated Service Digital Broadcasting-Terrestrial)'를 기반으로 한다. 이러한, 'ISDB-T'는 HDTV 방송 및 다 채널 SDTV 방송, 모바일, 포터블 멀티미디어 서비스를 구현하기 위한 규격으로서, OFDM을 기초로한 BS(Band Segment)-OFDM 방식을 이용한다. 'ISDB-T'는 한 채널의 대역폭(Bandwidth)가 약, '5.6 Mhz'이다. 이때, BS-OFDM를 이용한다는 것은 '5.6 Mhz'의 대역폭을 13 조각으로 나누어 한 조각을 세그먼트(Segment)라고 정의한다는 것이다. 여기서, 하나의 세그먼트는 429 Khz(5.6 M/13)의 대역폭을 가진다. 이러한, 'ISDB-T'는 각 세그먼트 별로 다른 변조/복조 방식을 이용할 수 있다. 즉, 세그먼트 별로 QPSK(Quadrature Phase Shift Keying), DQPSK(Differential Quadrature Phase Shift Keying), 16QAM(Quadrature Amplitude Modulation), 64QAM 변조/복조 방식 중 하나를 선택해서 이용할 수 있다. 또한, 13 개의 세그먼트를 이용해서 HDTV 방송을 전송하거나, 다채널 SDTV 방송을 전송하고, 모바일 방송을 전송할 수 있다. 'ISDB-T'에서 영상압축 방식은 'MPEG-2 Video'를 이용하며, 음성압축 방식은 'MPEG-2(Audio AAC)'를 이용한다.
도 1은 본 실시예에 따른 OFDM 통신에서의 송신기를 개략적으로 나타낸 블럭 구성도이다.
본 실시예에 따른 송신기(100)는 바람직하게 OFDM을 이용하여 ISDB-T가 적용되는 타입에 적용되어 데이터를 수신기(200)로 전송할 수 있다.
이러한, 송신기(100)는 OFDM 방식으로 고속의 전송률을 갖는 데이터열(Data Stream)을 낮은 전송률을 갖는 많은 수의 데이터열로 나누고, 이들을 다수의 부반송파를 이용하여 동시에 수신기(200)로 전송한다. 즉, 송신기(100)는 데이터열을 복수 개의 서브채널(Sub-Channel)로 동시에 나란히 전송하는 다중 반송파 전송방식으로 데이터를 전송한다. 따라서, 송신기(100)가 이용하는 OFDM 방식은 한 개 채널의 고속 데이터열을 다중의 채널로 동시에 전송한다는 측면에서는 '다중화 기술'을 포함하며, 다중의 반송파에 분할하여 실어 전송한다는 측면에서는 일종의 '변조 기술'을 포함한다. 이때, 송신기(100)에서 이용하는 각각의 부반송파 파형은 시간축상으로는 직교(Orthogonal)하나, 주파수축상에서는 겹치게(Overlap)된다.
본 실시예에 따른 OFDM 통신에서의 송신기(100)는 부호화부(110), 인터리버부(120), 변조부(130), 파일럿 삽입부(140), IFFT부(150), 디지털 아날로그 컨버터(160) 및 RF 송신부(170)를 포함한다. 본 실시예에서는 송신기(100)가 부호화부(110), 인터리버부(120), 변조부(130), 파일럿 삽입부(140), IFFT부(150), 디지털 아날로그 컨버터(160) 및 RF 송신부(170)만을 포함하는 것으로 기재하고 있으나, 반드시 이에 한정되는 것은 아니며, 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 송신기(100)에 포함되는 구성 요소에 대하여 다양하게 수정 또는 변형하여 적용 가능할 것이다.
부호화부(110)는 입력된 비트스트림의 데이터열을 부호화한 부호화 데이터를 생성한다. 이때, 부호화부(110)는 컨볼루션널 코드(Convolutional Code)를 이용한 컨볼루션(Convolution) 부호화를 수행하거나 격자 부호화, 터보(Turbo) 부호화, LDPC(Low Density Parity Check) 부호화 또는 이들 중 둘 이상을 상호 연접한 연접 부호화(Concatenated Encoding) 등을 이용할 수 있다. 또한, 부호화부(110)는 부호화율의 조절할 수 있으며, 부호화 오버헤드(Coding Overhead)를 줄이기 위하여 소정의 선택 비트를 삭제할 수 있다.
인터리버부(120)는 부호화부(110)로부터 수신된 부호화 데이터열의 순서를 일정 단위(예컨대, 블록의 열과 행 등)로 재배열시킨 인터리빙 데이터를 생성한다. 즉, 인터리버부(120)는 순간적인 잡음에 의한 데이터열 중간의 비트가 손실되더라도 그 영향을 국부적으로 나타나게 하여 손실된 비트를 복구할 수 있도록 한다. 예컨대, 특정 시점에서 간섭 등으로 인해 비트가 손실된 채 데이터(신호)를 수신할 경우, 해당 데이터를 다시 원래의 순서대로 재배열해 봄으로써 손실된 정보가 분산되어 단지 부분적으로만 데이터(신호)가 손실되도록 하는 것이다. 결과적으로 배열이 바뀐 암호처럼 전송되면서 펄스 열이 분산, 재배치됨으로써 어느 한 부분에 에러가 집중(Burst Error)되는 것을 막을 수 있다.
인터리버부(120)에서 수행하는 인터리빙 방식은 '블록 인터리빙', '컨볼루션 인터리빙' 방식 등이 있다. 여기서, '블럭 인터리빙'이란 비트 열(데이터열)을 일정 블록 단위로 묶은 후 열과 행을 바꾸어 전송하고 복호화 시에 역순서로 재생하는 방식이다. 즉, 디지털 데이터열을 일정한 블록 단위로 구분하고, 행렬(Matrix) 형태로 배열한 후, 열과 행을 바꾸어서 전송하는 방식이다. 이때, 일회에 한 개의 블록 단위로 이루어지며, 'n × m' 행렬로 표현되며, 한 개 블록 단위(n × m 행렬)로 한 번에 인터리빙이 이루어진다. 또한, '인터리빙 뎁스(Interleaving Depth)'란 한 개 블록으로 처리하는 수를 지칭하며, '인터리빙 스팬(Interleaving Span)'이란 한 개 블록에 있는 총 비트 수(n × m개)를 말한다.
본 실시예에 따른 인터리버부(120)는 부호화 데이터를 인터리빙(Interleaving)할 때, 시간적으로 가변하는 상대적인 가변 메모리 주소(Memory Address)를 생성하며, 생성된 가변 메모리 주소에 근거하여 인터리빙한 인터리빙 데이터를 생성한다. 여기서, 메모리 주소는 메모리 구별을 위해 이용하는 번지를 말한다. 즉, 인터리버부(120)는 재구성된 경로 지연(Branch Delay)에 따른 출력 시점의 상대적인 차이를 이용하여 이전 경로 지연에서 가감하면서 가변 메모리 주소를 부여하는 방식이다. 이때, 인터리버부(120)는 인터리빙을 위해 이전 메모리 주소에 이전 메모리 주소 편차값을 가산한다. 또한, 인터리버부(120)는 메모리 총량을 이상적 메모리(Ideal Memory)보다 높게 설정(예컨대, + 1)하며, 입출력의 한 사이클(Cycle) 당, 동일한 메모리 주소의 입출력을 시간 분배 액세스(Time Sharing Access)되도록 한다. 이때, 메모리 총량을 이상적 메모리보다 높게(예컨대 +1) 설정하는 이유는 지연이 없는 경로도 동일 주소로 쓰기, 읽기 동작을 통해 출력되기 때문이다. 즉, 지연이 없는 경로도 메모리 어드레스를 한 개 이용한다. 또한, 인터리버부(120)는 경로 지연에 따른 출력 시점의 상대적인 차이를 이용하여 이전 경로 주소에 가산하면서 시간적으로 가변되는 상대적인 가변 메모리 주소를 생성한다. 이때, 경로란 경로 네트워크에서 두 노드를 직접 잇는 경로(Branch)를 말한다.
이러한, 인터리버부(120)는 결과적으로 입출력이 순차(Sequential)적으로 되는 특성을 이용하여 경로 지연을 최소 단위가 되도록 시간 관계를 고려해서 경로를 재구성하며, ISDB-T의 타임 인터리버(Time Interleaver)에서는 OFDM 특정 모드와 무관하게 동작되도록하는 것이다. 여기서, 타임 인터리버는 내부 인터리버(Inner Interleaver)를 말하며, 외부 인터리버(Outer Interleaver)로는 블럭 인터리버(Block Interleaver)가 있다. 이러한, 인터리버부(120)가 가변 메모리 주소를 생성하는 구체적인 동작에 대해서는 도 3과 도 5를 통해 후술하도록 한다.
이때, 타임 인터리버를 위한 가변 메모리 주소를 생성하는 인터리버부(120)는 RAM(Random Access Memory)으로 구현될 수 있다. 여기서, RAM은 전기신호에 의해 기록 및 삭제가 무한정 가능한 휘발성 반도체를 의미한다. 즉, RAM은 마이크로 프로세서와 가장 밀접하게 연결되어 움직이는 장치로서 마이크로 프로세서와 함께 좁은 면적 내에 가장 많은 회로가 들어있는 장치이다. 즉, RAM은 읽기(Read)와 쓰기(Write)가 모두 가능한 메모리의 총칭이다. 전기가 공급될 때나 한시적으로 정보를 저장하며 휘발성이라 한다. RAM은 다시 시스템 메모리나 그래픽 메모리로 사용하는 DRAM(Dynamic RAM)(EDO RAM, SDRAM, RDRAM등)과 캐쉬(Cache) 메모리로 사용하는 SRAM(Static RAM)으로 구분한다.
인터리버부(120)는 SRAM을 기반으로 하나 만약, DRAM으로 구현된 경우 동일 레이어에서의 현재 메모리 주소(Current Memory Address)와 다음 메모리 주소(Next Memory Address)의 차이가 모듈러 연산을 제외하고는 기 설정된 값 이하이므로(예컨대, ISDB-T에서 사용하는 메모리 뎁스(Memory Depth)에 따른 랩 어라운드(Wrap Around)를 제외하고는 Max 95 이하), 메모리 액세스에서의 RAS(Row Address Strobe) 빈도가 줄어들도록 할 수 있다.
여기서, DRAM과 SRAM에 대해 설명하자면, SRAM은 기본 소재가 되는 반도체의 경우 전원이 공급되는 한 지속적으로 자료가 유지되는 제품을 말하며, DRAM은 전원이 공급되더라도 시간이 지나면 방전되어 기록이 지워지는 제품을 말한다. 즉, DRAM은 일정시간이 지나면 전원이 공급되더라도 저절로 기록이 사라져버리는 반도체를 소재로 사용한 RAM이다. DRAM의 경우 한번 기록된 자료도 시간이 지나면 지워지기 때문에 일정한 간격으로 다시 기록해주는 작업을 반복해야만 한다. 이때, 기록된 자료가 지워지지 않도록 일정주기로 다시 기록해주는 작업을 재충전(Refresh)이라 한다.
변조부(130)는 인터리버부(120)로부터 수신된 인터리빙 데이터에 대하여 BPSK(Binary Phase Shift Keying), QPSK, QAM 등의 변조를 수행한 변조 데이터를 생성한다. 파일럿 삽입부(140)는 변조부(130)로부터 수신된 변조 데이터를 입력받아 기 설정된 파일럿 배치 방법에 따라 파일럿을 삽입한 파일럿 삽입 데이터를 생성한다. IFFT부(150)는 파일럿 삽입부(140)로부터 수신된 파일럿 삽입 데이터를 역 고속 푸리에 변환(IFFT: Inverse Fast Fourier Transform)한 역변환 데이터를 생성한다. 디지털 아날로그 컨버터(160)는 데이터 전송을 위하여 IFFT부(150)로부터 수신된 역변환 데이터를 디지털 데이터에서 아날로그 데이터로 전환하여 RF 송신부(170)로 전송한다. RF 송신부(170)는 디지털 아날로그 컨버터(160)로부터 수신된 아날로그 데이터를 구비된 각 채널별 송신 안테나를 이용하여 수신기(200)로 전송한다.
도 2는 본 실시예에 따른 OFDM 통신에서의 수신기를 개략적으로 나타낸 블럭 구성도이다.
본 실시예에 따른 수신기(200)는 바람직하게 OFDM을 이용하여 ISDB-T에 적용되어 데이터를 송신기(100)로부터 수신할 수 있다.
이러한 수신기(200)는 기본적으로 송신기(100)의 동작을 역으로 수행한다.
본 실시예에 따른 OFDM 통신에서의 수신기(200)는 RF 수신부(210), 아날로그 디지털 컨버터(220), 동기화부(230), FFT부(240), 복조부(250), 디인터리버부(260) 및 복호화부(270)를 포함한다. 본 실시예에서는 수신기(200)가 RF 수신부(210), 아날로그 디지털 컨버터(220), 동기화부(230), FFT부(240), 복조부(250), 디인터리버부(260) 및 복호화부(270)만을 포함하는 것으로 기재하고 있으나, 반드시 이에 한정되는 것은 아니며, 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 수신기(200)에 포함되는 구성 요소에 대하여 다양하게 수정 또는 변형하여 적용 가능할 것이다.
RF 수신부(210)는 구비된 채널별 수신 안테나를 이용하여 송신기(100)로부터 아날로그 데이터(비트스트림)를 수신한다. 즉, RF 수신부(210)는 송신기(100)로부터 비트스트림을 수신한다. 아날로그 디지털 컨버터(220)는 RF 수신부(210)로부터 수신된 아날로그 데이터를 디지털 데이터로 변환한 후 동기화부(230)로 전송한다. 동기화부(230)는 아날로그 디지털 컨버터(220)에 의해 전환된 디지털 신호의 타이밍 및 주파수를 동기화한다. FFT부(240)는 동기화부(230)에 의해 동기화된 디지털 신호를 주파수 영역의 데이터로 만드는 고속 푸리에 변환(FFT: Fast Fourier Transform)을 수행한 변환 데이터를 생성한다. 복조부(250)는 FFT부(240)로부터 수신된 변환 데이터를 BPSK, QPSK, QAM 등의 복조를 수행한 복조 데이터를 생성한다.
디인터리버부(260)는 복조부(250)로부터 수신된 복조 데이터의 데이터열의 순서를 일정 단위(예컨대, 블록의 열과 행 등)로 재배열시킨 디인터리빙 데이터를 생성한다. 즉, 디인터리버부(260)는 순간적인 잡음에 의한 데이터열 중간의 비트가 손실되더라도 그 영향을 국부적으로 나타나게 하여 손실된 비트를 복구할 수 있게 한다.
본 실시예에 따른 디인터리버부(260)는 복조부(250)로부터 수신된 복조 데이터를 디인터리빙(Deinterleaving)할 때, 시간적으로 가변하는 상대적인 가변 메모리 주소(Memory Address)를 생성하며, 가변 메모리 주소에 근거하여 디인터리빙한 디인터리빙 데이터를 생성한다. 여기서, 메모리 주소는 메모리 구별을 위해 이용하는 번지를 말한다. 즉, 디인터리버부(260)는 재구성된 경로 지연에 따른 출력 시점의 상대적인 차이를 이용하여 이전 경로 지연에서 가감하면서 가변 메모리 주소를 부여하는 방식이다. 이때, 디인터리버부(260)는 디인터리빙을 위해 이전 메모리 주소에 이전 메모리 주소 편차값을 차감한다. 또한, 디인터리버부(260)는 메모리 총량을 이상적 메모리보다 높게(예컨대 +1) 설정하며, 입출력의 한 사이클 당, 동일한 메모리 주소의 입출력을 시간 분배 액세스되도록 한다. 또한, 디인터리버부(260)는 경로 지연에 따른 출력 시점의 상대적인 차이를 이용하여 이전 경로 주소에 감산하면서 시간적으로 가변되는 상대적인 가변 메모리 주소를 생성한다.
디인터리버부(260)는 SRAM을 기반으로 하나 만약, DRAM으로 구현된 경우 동일 레이어에서의 현재 메모리 주소와 다음 메모리 주소의 차이가 모듈러 연산을 제외하고는 기 설정된 값 이하이므로(예컨대, ISDB-T에서는 Max 95 이하) 메모리 액세스에서의 RAS 빈도가 줄어들도록 하는 것이다. 이러한, 디인터리버부(260)는 결과적으로 입출력이 순차적으로 되는 특성을 이용하여 경로 지연을 최소 단위가 되도록 시간 관계를 고려해서 경로를 재구성하며, ISDB-T에서는 OFDM 특정 모드와 무관하게 동작되도록하는 것이다. 이때, 디인터리버부(260)가 가변 메모리 주소를 생성하는 구체적인 동작에 대해서는 도 4과 도 6을 통해 후술하도록 한다. 복호화부(270)는 디인터리버부(260)로부터 수신된 디인터리빙 데이터의 데이터열을 복호화한 복호화 데이터를 생성한다.
도 3은 본 실시예에 따른 ISDB-T 송신기의 단일 레이어를 위한 주소 생성부를 개략적으로 나타낸 블럭 구성도이다.
본 실시예에 따른 송신기(100)의 레이어 주소 생성부(Layer Address Generator)(300)는 사용 메모리 뎁스 산출부(310), 주소 편차 산출부(320), 주소 생성부(330) 및 타임 인터리버 메모리(Time Interleaver Memory)(340)를 포함한다. 본 실시예에서는 송신기(100)의 레이어 주소 생성부(330)가 사용 메모리 뎁스 산출부(310), 주소 편차 산출부(320), 주소 생성부(330) 및 타임 인터리버 메모리(340)만을 포함하는 것으로 기재하고 있으나, 반드시 이에 한정되는 것은 아니며, 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 송신기(100)의 레이어 주소 생성부(330)에 포함되는 구성 요소에 대하여 다양하게 수정 또는 변형하여 적용 가능할 것이다.
레이어 주소 생성부(330)는 이전 메모리 주소, 이전 메모리 주소 편차값 및 사용 메모리 뎁스(Used_M_Depth)에 근거하여 가변 메모리 주소를 생성한다. 이러한, 레이어 주소 생성부(330)는 사용 메모리 뎁스 산출부(310), 주소 편차 산출부(320) 및 주소 생성부(330)을 포함한다.
사용 메모리 뎁스 산출부(310)는 부호화 데이터의 해당 레이어(Layer)의 타임 인터리버 길이(TI_Length)와 세그먼트 수(Num_Seg)에 근거하여 사용 메모리 뎁스(Used_M_Depth)를 산출한다. 즉, 사용 메모리 뎁스 산출부(310)는 타임 인터리버 길이(TI_Length) 및 세그먼트 수(Num_Seg)를 입력받는다. 여기서, 사용 메모리 뎁스 산출부(310)는 TMCC(Transmission and Multiplexing Configuration Control) 정보로부터 타임 인터리버 길이(TI_Length) 및 세그먼트 수(Num_Seg)를 추출한 후 사용 메모리 뎁스(Used_M_Depth)를 생성한다.
이때, ISDB-T에서의 타임 인터리빙 길이(Interleaving Length)는 [표 1]과 같다.
또한, 각 OFDM 세그먼트 파라미터 테이블은 [표 2]와 같다.
[표 2]에서의 SP(Scattered Pilot): 분산 파일럿 신호, CP(Continual Pilot): 연속 파일럿 신호, TMCC(Transmission and Multiplexing Configuration Control): 전송 및 다중화 구성 제어 정보, AC(Auxiliary Channel): 보조 채널, AC1(Available in an Equal Number in all Segments): 전체 세그먼트 중 동일한 수에서 유효한 채널, AC2(Available Only in Differential Modulated Segments): 차등 변조/복조된 세그먼트에서만 유효한 채널을 의미한다.
아래에서 설명하는 주소 편차 값과 가변 메모리 주소에 대한 수학식들은 ISDB-T 타임 인터리빙(Time Interleaving)/디인터리빙(Deinterleaving)의 경로 지연을 도시한 도 7b의 'I × mi' 여기서 'mi = 95 - ((i × 5) mod 96)' 를 적용하는 경우에서의 계산식을 말한다. 또한, 이러한 수학식들은 통신 스펙(Spec.)이 다른 경우에서 경로 지연에 대한 수학식이 바뀌더라도 동일한 방식을 이용하여 적용 가능하다.
주소 편차 산출부(320)는 부호화 데이터의 이전 메모리 주소 편차값에 근거하여 현재 메모리 주소 편차값을 산출한다. 또한, 주소 편차 산출부(320)는 이전 메모리 주소 편차값에 기 설정된 값을 가산한 값에 기 설정된 절대값으로 모듈러 연산(Modular Arithmetic)한 값을 현재 메모리 주소 편차값으로 인식한다. 즉, 주소 편차 산출부(320)는 [수학식 1]을 이용하여 현재 메모리 주소 편차값을 산출한다.
여기서, mod: 모듈러 연산을 의미하며, 96: 기 설정된 절대값을 의미한다. 이러한, 주소 편차 산출부(320)는 '초기값(Initial Value) = 0'으로 설정하고, [수학식 1]을 이용하여 이전 메모리 주소 편차값을 산출할 수 있다. 또한, 주소 편차 산출부(320)는 부호화 데이터의 데이터 유효 신호(Data_Valid)와 기 설정된 초기값(Initial Value)에 근거하여 이전 메모리 주소 편차값을 산출한다. 이때, [수학식 1]은 반드시 OFDM 통신에서만 적용되는 수학식이 아니라, 현재 메모리 주소 편차값을 산출과 관련된 모든 상황에 적용될 수 있다.
주소 생성부(330)는 이전 메모리 주소, 이전 메모리 주소 편차값 및 사용 메모리 뎁스(Used_M_Depth)에 근거하여 가변 메모리 주소를 생성한다. 주소 생성부(330)의 동작에 대해 보다 구체적으로 설명하자면, 주소 생성부(330)는 이전 메모리 주소에 이전 메모리 주소 편차값을 가산한 값을 사용 메모리 뎁스(Used_M_Depth)로 모듈러 연산한 값을 가변 메모리 주소로 생성한다. 즉, 주소 생성부(330)는 [수학식 2]를 이용하여 가변 메모리 주소를 생성한다. 이러한, 주소 생성부(330)는 '초기값(Initial Value) = 0(무관)'으로 설정하고, [수학식 2]를 이용하여 가변 메모리 주소를 생성할 수 있다.
여기서, mod: 모듈러 연산을 의미한다. 이때, [수학식 2]은 반드시 OFDM 통신에서만 적용되는 수학식이 아니라, 가변 메모리 주소를 산출과 관련된 모든 상황에 적용될 수 있다.
타임 인터리버 메모리(340)는 가변 메모리 주소에 인터리빙하고자 하는 데이터를 저장한다. 타임 인터리버 메모리(340)는 캐리어 변조된 샘플 데이터를 타임 인터리빙하기 위한 저장 매체이다. 이때, 타임 인터리버 메모리(340)는 인터리버 데이터의 복수의 레이어에 대한 각각의 메모리 영역을 구비하는 메모리를 말한다.
도 4는 본 실시예에 따른 ISDB-T 수신기의 단일 레이어를 위한 주소 생성부`를 개략적으로 나타낸 블럭 구성도이다.
본 실시예에 따른 수신기(200)의 레이어 주소 생성부`(400)는 사용 메모리 뎁스 산출부`(410), 주소 편차 산출부`(420), 주소 생성부`(430) 및 타임 디인터리버 메모리(440)를 포함한다. 본 실시예에서는 수신기(200)의 레이어 주소 생성부`(400)가 사용 메모리 뎁스 산출부`(410), 주소 편차 산출부`(420), 주소 생성부`(430) 및 타임 디인터리버 메모리(440)만을 포함하는 것으로 기재하고 있으나, 반드시 이에 한정되는 것은 아니며, 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 수신기(200)의 레이어 주소 생성부`(400)에 포함되는 구성 요소에 대하여 다양하게 수정 또는 변형하여 적용 가능할 것이다.
레이어 주소 생성부`(400)는 이전 메모리 주소, 이전 메모리 주소 편차값 및 사용 메모리 뎁스(Used_M_Depth)에 근거하여 가변 메모리 주소를 생성한다. 이러한, 레이어 주소 생성부`(400)는 사용 메모리 뎁스 산출부`(410), 주소 생성부`(430) 및 주소 편차 산출부`(420)를 포함한다.
사용 메모리 뎁스 산출부`(410)는 복조 데이터의 해당 레이어(Layer)의 타임 인터리버 길이(TI_Length)와 세그먼트 수(Num_Seg)에 근거하여 사용 메모리 뎁스(Used_M_Depth)를 산출한다.
주소 편차 산출부`(420)는 복조 데이터의 이전 메모리 주소 편차값에 근거하여 현재 메모리 주소 편차값을 산출한다. 주소 편차 산출부`(420)의 동작에 대해 보다 구체적으로 설명한다. 주소 편차 산출부`(420)는 이전 메모리 주소 편차값에 기 설정된 값을 차감한 값에 기 설정된 절대값으로 모듈러 연산한 값을 현재 메모리 주소 편차값으로 인식한다. 즉, 주소 편차 산출부`(420)는 [수학식 3]을 이용하여 이전 메모리 주소 편차값을 산출한다.
이러한, 주소 편차 산출부`(420)는 '초기값(Initial Value) = 0'으로 설정하고, [수학식 3]을 이용하여 이전 메모리 주소 편차값을 산출할 수 있다. 또한, 주소 편차 산출부`(420)는 복조 데이터의 데이터 유효 신호(Data_Valid)와 기 설정된 초기값(Initial Value)에 근거하여 이전 메모리 주소 편차값을 산출한다. 이때, [수학식 3]은 반드시 OFDM 통신에서만 적용되는 수학식이 아니라, 현재 메모리 주소 편차값 산출과 관련된 모든 상황에 적용될 수 있다.
주소 생성부`(430)는 이전 메모리 주소, 이전 메모리 주소 편차값 및 사용 메모리 뎁스(Used_M_Depth)에 근거하여 가변 메모리 주소를 생성한다. 주소 생성부`(430)의 동작에 대해 보다 구체적으로 설명한다. 주소 생성부`(430)는 이전 메모리 주소에 이전 메모리 주소 편차값을 차감한 값을 사용 메모리 뎁스(Used_M_Depth)로 모듈러 연산한 값을 가변 메모리 주소로 생성한다. 즉, 주소 생성부`(430)는 [수학식 4]를 이용하여 가변 메모리 주소를 생성한다. 이러한, 주소 생성부`(430)는 '초기값(Initial Value) = 0(무관)'으로 설정하고, [수학식 4]를 이용하여 가변 메모리 주소를 생성할 수 있다.
여기서, mod: 모듈러 연산을 의미한다. 이때, [수학식 4]는 반드시 OFDM 통신에서만 적용되는 수학식이 아니라, 가변 메모리 주소 산출과 관련된 모든 상황에 적용될 수 있다.
타임 디인터리버 메모리(440)는 가변 메모리 주소에 디인터리빙하고자 하는 데이터를 저장한다. 타임 디인터리버 메모리(440)는 주파수 디인터리빙된 샘플 데이터를 타임 디인터리빙하기 위한 저장 매체이다. 이때, 타임 디인터리버 메모리(440)는 디인터리버 데이터의 복수의 레이어에 대한 각각의 메모리 영역을 구비하는 메모리를 말한다.
도 5는 본 실시예에 따른 ISDB-T 송신기의 레이어별 주소 생성 모듈을 개략적으로 나타낸 블럭 구성도이다.
본 실시예에 따른 송신기(100)의 레이어별 주소 생성 모듈은 A 레이어 주소 생성부(510), B 레이어 주소 생성부(520), C 레이어 주소 생성부(530), 메모리 통합부(Memory Merge Circuit)(540) 및 전체 레이어 타임 인터리버 메모리(550)를 포함한다. 본 실시예에서는 송신기(100)의 레이어별 주소 생성 모듈은 A 레이어 주소 생성부(510), B 레이어 주소 생성부(520), C 레이어 주소 생성부(530), 메모리 통합부(540) 및 전체 레이어 타임 인터리버 메모리(550)만을 포함하는 것으로 기재하고 있으나, 반드시 이에 한정되는 것은 아니며, 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 송신기(100)의 레이어별 주소 생성 모듈에 포함되는 구성 요소에 대하여 다양하게 수정 또는 변형하여 적용 가능할 것이다.
복수의 레이어(Multi-Layer)의 개수만큼의 레이어 주소 생성부(A 레이어 주소 생성부(510), B 레이어 주소 생성부(520), C 레이어 주소 생성부(530))를 추가로 포함한다. 즉, 세 개의 레이어(A, B, C 레이어)를 위한 타임 인터리버는 단일 레이어의 레이어 주소 생성부(300)를 레이어 개수만큼 포함한다.
A 레이어 주소 생성부(510)는 A 레이어의 타임 인터리버 길이(TI_Length)와 세그먼트 수(Num_Seg)에 근거하여 사용 메모리 뎁스(Used_M_Depth)를 산출하고 비트스트림의 이전 메모리 주소 편차값에 근거하여 현재 메모리 주소 편차값을 산출하며, 이전 메모리 주소, 이전 메모리 주소 편차값 및 사용 메모리 뎁스(Used_M_Depth)에 근거하여 가변 메모리 주소를 생성한다. 이때, A 레이어 주소 생성부(510)는 이전 메모리 주소 편차값에 기 설정된 값을 가산한 값에 기 설정된 절대값으로 모듈러 연산한 값을 현재 메모리 주소 편차값으로 인식한다. 또한, A 레이어 주소 생성부(510)는 이전 메모리 주소에 이전 메모리 주소 편차값을 가산한 값을 사용 메모리 뎁스(Used_M_Depth)로 모듈러 연산한 값을 가변 메모리 주소로 생성한다.
B 레이어 주소 생성부(520)는 B 레이어의 타임 인터리버 길이(TI_Length)와 세그먼트 수(Num_Seg)에 근거하여 사용 메모리 뎁스(Used_M_Depth)를 산출하고 비트스트림의 이전 메모리 주소 편차값에 근거하여 현재 메모리 주소 편차값을 산출하며, 이전 메모리 주소, 이전 메모리 주소 편차값 및 사용 메모리 뎁스(Used_M_Depth)에 근거하여 가변 메모리 주소를 생성한다. 이때, B 레이어 주소 생성부(520)는 이전 메모리 주소 편차값에 기 설정된 값을 가산한 값에 기 설정된 절대값으로 모듈러 연산한 값을 현재 메모리 주소 편차값으로 인식한다. 또한, B 레이어 주소 생성부(520)는 이전 메모리 주소에 이전 메모리 주소 편차값을 가산한 값을 사용 메모리 뎁스(Used_M_Depth)로 모듈러 연산한 값을 가변 메모리 주소로 생성한다.
C 레이어 주소 생성부(530)는 C 레이어의 타임 인터리버 길이(TI_Length)와 세그먼트 수(Num_Seg)에 근거하여 사용 메모리 뎁스(Used_M_Depth)를 산출하고 비트스트림의 이전 메모리 주소 편차값에 근거하여 현재 메모리 주소 편차값을 산출하며, 이전 메모리 주소, 이전 메모리 주소 편차값 및 사용 메모리 뎁스(Used_M_Depth)에 근거하여 가변 메모리 주소를 생성한다. 이때, C 레이어 주소 생성부(530)는 이전 메모리 주소 편차값에 기 설정된 값을 가산한 값에 기 설정된 절대값으로 모듈러 연산한 값을 현재 메모리 주소 편차값으로 인식한다. 또한, C 레이어 주소 생성부(530)는 이전 메모리 주소에 이전 메모리 주소 편차값을 가산한 값을 사용 메모리 뎁스(Used_M_Depth)로 모듈러 연산한 값을 가변 메모리 주소로 생성한다.
메모리 통합부(540)는 레이어 주소 생성부(A 레이어 주소 생성부(510), B 레이어 주소 생성부(520), C 레이어 주소 생성부(530)) 각각과 연결되어 복수의 레이어(레이어 A, 레이어 B, 레이어 C)에 따른 레이어별 가변 메모리 주소를 시간적으로 분리된 상태로 수신하며, 레이어별 가변 메모리 주소를 통합한 통합 가변 메모리 주소를 생성한다. 즉, 레이어 별로 할당된 메모리 영역을 한 개의 메모리로 구현하기 위한 메모리 통합부(540)를 포함한다. 또한, 메모리 통합부(540)는 전체 메모리(Total Memory)에서 복수의 레이어(레이어 A, 레이어 B, 레이어 C) 별로 타임 인터리버 길이만큼의 레이어별 영역을 할당하며, 레이어별(레이어 A, 레이어 B, 레이어 C) 영역마다 메모리 주소 방향(순방향 또는 역방향)을 설정하며, 주소 방향에 따라 기준 주소(Base Address)를 설정한다. 이러한, 메모리 통합부(540)에 의해 복수의 레이어 중 특정 레이어(A 레이어, B 레이어, C 레이어 중 어느 하나)의 타임 인터리버 길이(TI_Length)가 바뀌더라도 역 방향의 레이어에 데이터 유실이 없도록 하는 것이다.
전체 레이어 타임 인터리버 메모리부(550)는 통합 가변 메모리 주소에 인터리빙하고자 하는 데이터를 저장한다. 전체 레이어 타임 인터리버 메모리부(550)는 모든 레이어에 대한 캐리어 변조된 샘플 데이터를 타임 인터리빙하기 위한 저장 매체이다.
도 6은 본 실시예에 따른 ISDB-T 수신기의 레이어별 주소 생성 모듈을 개략적으로 나타낸 블럭 구성도이다.
본 실시예에 따른 수신기(200)의 레이어별 주소 생성 모듈은 A 레이어 주소 생성부`(610), B 레이어 주소 생성부`(620), C 레이어 주소 생성부`(630), 메모리 통합부`(640) 및 전체 레이어 타임 디인터리버 메모리(650)를 포함한다. 본 실시예에서는 수신기(200)의 레이어별 주소 생성 모듈인 A 레이어 주소 생성부`(610), B 레이어 주소 생성부`(620), C 레이어 주소 생성부`(630), 메모리 통합부`(640) 및 전체 레이어 타임 디인터리버 메모리(650)만을 포함하는 것으로 기재하고 있으나, 반드시 이에 한정되는 것은 아니며, 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 수신기(200)의 레이어별 주소 생성 모듈에 포함되는 구성 요소에 대하여 다양하게 수정 또는 변형하여 적용 가능할 것이다.
복수의 레이어의 개수만큼의 레이어 주소 생성부(A 레이어 주소 생성부`(610), B 레이어 주소 생성부`(620), C 레이어 주소 생성부`(630))를 추가로 포함한다. 즉, 세 개의 레이어(A, B, C 레이어)를 위한 타임 인터리버는 단일 레이어의 레이어 주소 생성부`(400)를 레이어 개수만큼 포함한다.
A 레이어 주소 생성부`(610)는 A 레이어의 타임 인터리버 길이(TI_Length)와 세그먼트 수(Num_Seg)에 근거하여 사용 메모리 뎁스(Used_M_Depth)를 산출하고 비트스트림의 이전 메모리 주소 편차값에 근거하여 현재 메모리 주소 편차값을 산출하며, 이전 메모리 주소, 이전 메모리 주소 편차값 및 사용 메모리 뎁스(Used_M_Depth)에 근거하여 가변 메모리 주소를 생성한다. 이때, A 레이어 주소 생성부`(610)는 이전 메모리 주소 편차값에 기 설정된 값을 차감한 값에 기 설정된 절대값으로 모듈러 연산한 값을 현재 메모리 주소 편차값으로 인식한다. 또한, A 레이어 주소 생성부`(610)는 이전 메모리 주소에 이전 메모리 주소 편차값을 차감한 값을 사용 메모리 뎁스(Used_M_Depth)로 모듈러 연산한 값을 가변 메모리 주소로 생성한다.
B 레이어 주소 생성부`(620)는 B 레이어의 타임 인터리버 길이(TI_Length)와 세그먼트 수(Num_Seg)에 근거하여 사용 메모리 뎁스(Used_M_Depth)를 산출하고 비트스트림의 이전 메모리 주소 편차값에 근거하여 현재 메모리 주소 편차값을 산출하며, 이전 메모리 주소, 이전 메모리 주소 편차값 및 사용 메모리 뎁스(Used_M_Depth)에 근거하여 가변 메모리 주소를 생성한다. 이때, B 레이어 주소 생성부`(620)는 이전 메모리 주소 편차값에 기 설정된 값을 차감한 값에 기 설정된 절대값으로 모듈러 연산한 값을 현재 메모리 주소 편차값으로 인식한다. 또한, B 레이어 주소 생성부`(620)는 이전 메모리 주소에 이전 메모리 주소 편차값을 차감한 값을 사용 메모리 뎁스(Used_M_Depth)로 모듈러 연산한 값을 가변 메모리 주소로 생성한다.
C 레이어 주소 생성부`(630)는 C 레이어의 타임 인터리버 길이(TI_Length)와 세그먼트 수(Num_Seg)에 근거하여 사용 메모리 뎁스(Used_M_Depth)를 산출하고 비트스트림의 이전 메모리 주소 편차값에 근거하여 현재 메모리 주소 편차값을 산출하며, 이전 메모리 주소, 이전 메모리 주소 편차값 및 사용 메모리 뎁스(Used_M_Depth)에 근거하여 가변 메모리 주소를 생성한다. 이때, C 레이어 주소 생성부`(630)는 이전 메모리 주소 편차값에 기 설정된 값을 차감한 값에 기 설정된 절대값으로 모듈러 연산한 값을 현재 메모리 주소 편차값으로 인식한다. 또한, C 레이어 주소 생성부`(630)는 이전 메모리 주소에 이전 메모리 주소 편차값을 차감한 값을 사용 메모리 뎁스(Used_M_Depth)로 모듈러 연산한 값을 가변 메모리 주소로 생성한다.
메모리 통합부`(640)는 레이어 주소 생성부(A 레이어 주소 생성부(510), B 레이어 주소 생성부(520), C 레이어 주소 생성부(530)) 각각과 연결되어 복수의 레이어(레이어 A, 레이어 B, 레이어 C)에 따른 레이어별 가변 메모리 주소를 시간적으로 분리된 상태로 수신하며, 레이어별 가변 메모리 주소를 통합한 통합 가변 메모리 주소를 생성한다. 즉, 레이어 별로 할당된 메모리 영역을 한 개의 메모리로 구현하기 위한 메모리 통합부`(640)를 포함한다. 또한, 메모리 통합부`(640)는 전체 메모리에서 복수의 레이어(레이어 A, 레이어 B, 레이어 C) 별로 타임 인터리버 길이만큼의 레이어별 영역을 할당하며, 레이어별(레이어 A, 레이어 B, 레이어 C) 영역마다 메모리 주소 방향(순방향 또는 역방향)을 설정하며, 주소 방향에 따라 기준 주소를 설정한다. 이러한, 메모리 통합부`(640)에 의해 복수의 레이어 중 특정 레이어(A 레이어, B 레이어, C 레이어 중 어느 하나)의 타임 인터리버 길이(TI_Length)가 바뀌더라도 역 방향의 레이어에 데이터 유실이 없도록 하는 것이다. 전체 레이어 타임 디인터리버 메모리(650)는 통합 가변 메모리 주소에 디인터리빙하고자 하는 데이터를 저장한다. 전체 레이어 타임 디인터리버 메모리(650)는 모든 레이어에 대한 주파수 디인터리빙된 샘플 데이터를 타임 디인터리빙하기 위한 저장 매체이다.
도 7a, 7b, 7c는 본 실시예에 따른 인터리빙 및 디인터리빙을 설명하기 위한 도면이다.
도 7a는 타임 인터리빙 섹션의 구성(Configuration of the Time Interleaving Section)을 나타낸 도면이다. 도 7a에 도시된 nc(Number of data carriers)는 '모드 1'인 경우 '96', '모드 2'인 경우 '192', '모드 3'인 경우 '384'가 적용된다.(표 2 참조) 즉, '모드 1'인 경우, '0 내지 95'까지 타임 인터리빙이 수행되는 것이며, '모드 2'인 경우, '0 내지 191'까지 타임 인터리빙이 수행되는 것이며, '모드 3'인 경우 '0 내지 383'까지 타임 인터리빙이 수행되는 것이다.
도 7b는 인트라-세그먼트 타임 인터리빙 섹션의 구성(Configuration of the Intra-segment Time Interleaving Section)을 나타낸 도면이다. 도 7b에 도시된 바와 같이, 각 심볼 버퍼(Symbol Buffer)는 'I × m0' 내지 'I × mnc-1'로 적용된다. 또한, 도 7b에 도시된 nc는 '모드 1'인 경우 '96', '모드 2'인 경우 '192', '모드 3'인 경우 '384'가 적용된다. 또한, 도 7b에 도시된 바와 같이, 'mi = (i × 5) mod 96'로 산출된다. 즉, '모드 1'인 경우 'm0 = (0 × 5) mod 96' 내지 'm95 = (95 × 5) mod 96'가 적용되는 것이며, '모드 2'인 경우 'm0 = (0 × 5) mod 96' 내지 'm191 = (191 × 5) mod 96'가 적용되는 것이며, '모드 3'인 경우 'm0 = (0 × 5) mod 96' 내지 'm384 = (384 × 5) mod 96'가 적용되는 것이다.
도 7c는 모드 1('Mode 1'), 인터리빙값(I) ('I = 4'), 1-세그먼트(1-segment)에 대한 타임 디인터리빙의 예시도이다. 도 7c에 도시된 바와 같이, 수신기(200)의 디인터리빙할 경우, nc는 '모드 1'인 경우 '96'이므로, '모드 1'인 경우, '0 내지 95'까지 타임 디인터리빙이 수행되는 것이다. 이때, 각 심볼 버퍼는 'I × m0' 내지 'I × mnc-1'로 적용되므로, 'mi = m0 ~ mnc-1'로 볼 때 각 심볼 버퍼 'I × mi'로 적용될 수 있다. 여기서, mi는 도 7c에 도시된 바와 같이 'mi = 95 - ((i × 5) mod 96)' 를 적용하는 경우 '모드 1'에서는 'I = 4'이므로, '4 × 95(m0 = 95)' 내지 '4 × 4(mnc-1 = 4)'까지 타임 디인터리빙이 수행되는 것이다.
디인터리버부(260)는 TMCC 정보로부터 추출한 타임 인터리버 길이(TI_Length)만을 이용하여 디인터리빙을 수행하게 된다. 즉, 디인터리버부(260)는 모드(예컨대, 모드 1, 2, 3)와 무관하게 타임 인터리버 길이(TI_Length)값이 같은 경우에서는 동일한 동작(인터리빙 또는 디인터리빙)을 수행한다. 예컨대, 타임 인터리버 길이(TI_Length)가 '1' 인 경우에서는 모드 1 (I = 4), 모드 2 (I = 2) 및 모드 3 (I = 1)은 동일한 동작(인터리빙 또는 디인터리빙)을 수행한다.(표 1 참조)
이와 같이, 도 7c는 1-세그먼트(1-segment)에 대한 회로도를 통해 가변 메모리 주소를 부여 방식에 대해 설명하자면, 'Mode 1, I = 4, 1-segment'에 대한 실시예와 'Mode 2, I = 2, 1-segment', 'Mode 3, I = 1, 1-seggment'가 동일하게 디인터리빙이 수행되는 것이다.
도 8a, 8b, 8c, 8d는 본 실시예에 따른 모드 1 일때의 디인터리빙을 설명하기 위한 도면이다.
도 8a, 8b, 8c, 8d는 'Mode 1, I = 4, 1-segment'에 대한 타임 디인터리버를 재배치한 예시도이다. 'Mode 1, I = 4, 1-segment'에 대한 타임 디인터리버를 재배치한 예시도를 기반으로, 본 실시예에서 생성하는 가변 메모리 주소를 적용하게 되면 하나의 가변 메모리 주소 생성만으로도 디인터리빙이 가능하게 된다.
도 8a에 도시된 바와 같이, 수신기(200)의 디인터리빙할 경우, nc는 '모드 1'인 경우 '96'이므로, '모드 1'인 경우, '0 내지 95'까지 타임 디인터리빙이 수행되는 것이다. 이때, 각 심볼 버퍼는 'I × m0' 내지 'I × mnc-1'로 적용되므로, 'mi = m0 ~ mnc-1'로 볼 때 각 심볼 버퍼 'I × mi'로 적용될 수 있다. 여기서, 'mi = (i × 5) mod 96'로 산출되므로, '모드 1'인 경우 'm0 = (0 × 5) mod 96' 내지 'm95 = (95 × 5) mod 96'가 적용되므로, '0 내지 95'까지 타임 디인터리빙이 수행하는 경우 '0'에서의 '95(m0 = 95)'가 적용되고, '95'에서는 '4(mnc-1 = 4)'가 적용될 수 있다.
도 8b에 도시된 바와 같이, 수신기(200)의 디인터리빙할 경우, nc는 '모드 1'인 경우 '96'이므로, '0 내지 95'까지 타임 디인터리빙이 수행한 후 '96 + 0 내지 96 + 95'까지 타임 디인터리빙이 수행되는 것이다. 이때, 각 심볼 버퍼는 'I × m0' 내지 'I × mnc-1'로 적용되므로, 'mi = m0 ~ mnc-1'로 볼 때 각 심볼 버퍼 'I × mi'로 적용될 수 있다. 여기서, 'mi = (i × 5) mod 96'로 산출되므로, '모드 1'인 경우 'm0 = (0 × 5) mod 96' 내지 'm95 = (95 × 5) mod 96'가 적용되므로, '0 내지 95' 이후 '96 + 0 내지 96 + 95'까지 타임 디인터리빙이 수행하는 경우 '96 + 0'에서의 '95(m0 = 95)'가 적용되고, '96 + 95'에서는 '4(mnc-1 = 4)'가 적용될 수 있다.
도 8c에 도시된 바와 같이, 수신기(200)의 디인터리빙할 경우, nc는 '모드 1'인 경우 '96'이므로, '96 + 0 내지 96 + 95'까지 타임 디인터리빙이 수행한 후 '192 + 0 내지 192 + 95'까지 타임 디인터리빙이 수행되는 것이다. 이때, 각 심볼 버퍼는 'I × m0' 내지 'I × mnc-1'로 적용되므로, 'mi = m0 ~ mnc-1'로 볼 때 각 심볼 버퍼 'I × mi'로 적용될 수 있다. 여기서, 'mi = (i × 5) mod 96'로 산출되므로, '모드 1'인 경우 'm0 = (0 × 5) mod 96' 내지 'm95 = (95 × 5) mod 96'가 적용되므로, '96 + 0 내지 96 + 95' 이후 '192 + 0 내지 192 + 95'까지 타임 디인터리빙이 수행하는 경우 '192 + 0'에서의 '95(m0 = 95)'가 적용되고, '192 + 95'에서는 '4(mnc-1 = 4)'가 적용될 수 있다.
도 8d에 도시된 바와 같이, 수신기(200)의 디인터리빙할 경우, nc는 '모드 1'인 경우 '96'이므로, '96 + 0 내지 96 + 95' 및 '192 + 0 내지 192 + 95'까지 타임 디인터리빙이 수행한 후 '288 + 0 내지 288 + 95'까지 타임 디인터리빙이 수행되는 것이다. 이때, 각 심볼 버퍼는 'I × m0' 내지 'I × mnc-1'로 적용되므로, 'mi = m0 ~ mnc-1'로 볼 때 각 심볼 버퍼 'I × mi'로 적용될 수 있다. 여기서, 'mi = (i × 5) mod 96'로 산출되므로, '모드 1'인 경우 'm0 = (0 × 5) mod 96' 내지 'm95 = (95 × 5) mod 96'가 적용되므로, '192 + 0 내지 192 + 95' 이후 '288 + 0 내지 288 + 95'까지 타임 디인터리빙이 수행하는 경우 '288 + 0'에서의 '95(m0 = 95)'가 적용되고, '288 + 95'에서는 '4(mnc-1 = 4)'가 적용될 수 있다.
도 9a 및 도 9b는 본 실시예에 따른 가변 메모리 주소를 설명하기 위한 도면이다.
본 실시예에 따른 인터리빙 또는 디인터리빙은 메모리에서 수행된다. 이때, 메모리는 프로세서의 작업장 역할을 한다. 프로세서는 처리 능력은 있으나 기억 능력이 없으므로 메모리를 이용하여 작업 결과를 임시 저장한다.
이러한, 메모리의 동작에 대해 설명하자면, 프로세서는 데이터, 계산 결과, 프로그램 명령들을 메모리에 저장하였다가 필요에 따라서 불러들여 사용한다. 프로세서는 메모리에 주소(Address)를 배정한 다음 그 주소에 따라서 데이터를 저장하거나 저장한 데이터를 불러들인다. 프로세서와 메모리는 버스(Bus)(물리적인 배선의 집합)로 연결되어 있다. 이러한 버스는 주소 버스(Address Bus)와 데이터 버스(Data Bus)로 구성되어 있는데, 주소 버스를 통하여 프로세서는 메모리에 접속하며 데이터 버스를 통하여 데이터를 전송한다.
도 9a에 도시된 사용 메모리 뎁스(Used_M_Depth)가 '18241'인 'Mode 1, I = 4, 1-segment'인 경우에서의 타임 인터리버 주소 생성을 나타낸다. 즉, 도 9a에서 황토색('18151', '18066', '17986', '17911', '17841', '17776')은 기본 단위로 재배치한 예시도에서의 출력이 나오는 순서의 어드레스를 나타낸다. 입력 순서는 위에서 아래로 384개가 순차적으로 들어오면 세로 한 열이 끝나고, 다음 가로 열로 진행하는 것을 표시한다. 이때, 경로 '0'의 첫 입력이 출력되는 시점은 '384 × 95 + 1(= 사용 메모리 뎁스(Used_M_Depth))' 사이클(Cycle) 이후이다. 즉, 도 7a는 초기 쓰기(Write) 시점의 나타낸다.
또한, 도 9b는 경로 '0'에 해당하는 쓰기 데이터(Write Data)가 처음으로 나오기 시작할 때를 나타낸다.
한편, 사용 메모리 뎁스 산출부`(410)가 사용 메모리 뎁스(Used_M_Depth)를 산출하는 과정에 대해 설명하면 다음과 같다. 1-세그먼트(1-segments)에서 사용 메모리 뎁스(Used_M_Depth)와 최대 메모리 뎁스(Max_M_Depth)는 [수학식 5]와 같다.
여기서, Mode#은 nc의 비율을 나타낸다.(표 2 참조) 예컨대, 'Mode 1 = 1, (nc = 96 × 1)', 'Mode 2 = 2, (nc = 96 × 2)', 'Mode 3 = 4 (nc = 96 × 4)'이 된다. 즉, 이러한 [수학식 5]을 수행한 값은 '72961'이 될 수 있다.
또한, 13-세그먼트(13-segments)에서 레이어별 구분이 없는 경우 사용 메모리 뎁스(Used_M_Depth)와 최대 메모리 뎁스(Max_M_Depth)는 [수학식 6]과 같다. (레이어별로 구분없는 모드 'I' 값이 동일한 경우)
즉, 이러한 [수학식 6]을 수행한 값은 '948481'이 될 수 있다.
또한, 13-세그먼트(13-segments)에서 레이어별 구분이 있는 경우 사용 메모리 뎁스(Used_M_Depth)와 최대 메모리 뎁스(Max_M_Depth)는 [수학식 7]과 같다. (레이어별로 구분있는 모드에서 3 레이어를 지원하는 경우)
즉, 이러한 [수학식 7]을 수행한 값은 '948483'이 될 수 있다.
도 10는 본 실시예에 따른 모드 3 일때의 디인터리빙을 설명하기 위한 도면이다.
'Mode 1, I = 4, 1-segment'에 대한 타임 디인터리버를 재배치한 예시도는 결과적으로는 도 10에 도시된 타임 디인터리버에서 'Mode 3에서의 nc = 384, I = 1, 1-segment'을 적용한 것과 동일하다. 즉, 재배치는 입력이 순차적으로 들어온다는 전제 조건이 있기 때문에 가능하다. 여기서, '모드 3'에서의 'nc = 384'이고 'I = 1'인 경우를 도 10에 적용하게 되면 'Mode 1, I = 4, 1-segment'와 동일하게 되는 것이다.
즉, 도 10는 모드 3('Mode 3'), 인터리빙값(I) ('I = 1'), 1-세그먼트(1-segment)에 대한 타임 디인터리빙의 예시도이다. 도 10에 도시된 바와 같이, 수신기(200)의 디인터리빙할 경우, nc는 '모드 3'인 경우 '383'이므로, '모드 3'인 경우, '0 내지 383'까지 타임 디인터리빙이 수행되는 것이다. 이때, 각 심볼 버퍼(또는 경로의 지연)는 'I × m0' 내지 'I × mnc-1'로 적용되므로, 'mi = m0 ~ mnc-1'로 볼 때 각 심볼 버퍼(또는 경로의 지연) 'I × mi'로 적용될 수 있다. 여기서, mi는 도 10에 도시된 바와 같이 'mi = 95 - ((i × 5) mod 96)' 를 적용하는 경우 '모드 3'에서는 'I = 1'이므로, '1 × 95(m0 = 95)' 내지 '1 × 4(mnc-1 = 4)'까지 타임 디인터리빙이 수행되는 것이다.
도 11은 본 실시예에 따른 전체 메모리에 레이어별 영역의 할당을 설명하기 위한 도면이다.
도 11에 도시된 바와 같이, 메모리 통합부(540) 또는 메모리 통합부`(640)는 전체 메모리에서 복수의 레이어(레이어 A, 레이어 B, 레이어 C) 별로 타임 인터리버 길이만큼의 레이어별 영역을 할당하며, 레이어별(레이어 A, 레이어 B, 레이어 C) 영역마다 메모리 주소 방향(순방향 또는 역방향)을 설정하며, 주소 방향에 따라 기준 주소(Base Address)를 설정한다. 이러한, 메모리 통합부(540) 또는 메모리 통합부`(640)는 '레이어 A'와 '레이어 B'의 메모리 주소의 방향을 서로 다르게 순방향/역방향으로 적용 가능하며, '레이어 C'의 방향도 설정 가능하며, 선택된 방향에 따라 기준 주소가 달라지게 된다. 즉, 특정 레이어(레이어 A, 레이어 B 중 레이어 C 어느 하나)의 타임 인터리버 길이(TI_Length)가 바뀌더라도 반대 방향의 레이어는 데이터 유실이 없게 된다.
이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
110: 부호화부 120: 인터리버부
130: 변조부 140: 파일럿 삽입부
150: IFFT부 160: 디지털 아날로그 컨버터
170: RF 송신부 210: RF 수신부
220: 아날로그 디지털 컨버터 230: 동기화부
240: FFT부 250: 복조부
260: 디인터리버부 270: 복호화부
310: 레이어 주소 생성부 310: 사용 메모리 뎁스 산출부
320: 주소 생성부 330: 주소 편차 산출부
340: 타임 인터리버 메모리 400: 레이어 주소 생성부`
410: 사용 메모리 뎁스 산출부` 420: 주소 생성부`
430: 주소 편차 산출부` 440: 타임 디인터리버 메모리`
510: A 레이어 주소 생성부 520: B 레이어 주소 생성부
530: C 레이어 주소 생성부 540: 메모리 통합부
550: 전체 레이어 타임 인터리버 메모리
610: A 레이어 주소 생성부` 620: B 레이어 주소 생성부`
630: C 레이어 주소 생성부` 640: 메모리 통합부`
650: 전체 레이어 타임 디인터리버 메모리
130: 변조부 140: 파일럿 삽입부
150: IFFT부 160: 디지털 아날로그 컨버터
170: RF 송신부 210: RF 수신부
220: 아날로그 디지털 컨버터 230: 동기화부
240: FFT부 250: 복조부
260: 디인터리버부 270: 복호화부
310: 레이어 주소 생성부 310: 사용 메모리 뎁스 산출부
320: 주소 생성부 330: 주소 편차 산출부
340: 타임 인터리버 메모리 400: 레이어 주소 생성부`
410: 사용 메모리 뎁스 산출부` 420: 주소 생성부`
430: 주소 편차 산출부` 440: 타임 디인터리버 메모리`
510: A 레이어 주소 생성부 520: B 레이어 주소 생성부
530: C 레이어 주소 생성부 540: 메모리 통합부
550: 전체 레이어 타임 인터리버 메모리
610: A 레이어 주소 생성부` 620: B 레이어 주소 생성부`
630: C 레이어 주소 생성부` 640: 메모리 통합부`
650: 전체 레이어 타임 디인터리버 메모리
Claims (15)
- 삭제
- 삭제
- 삭제
- 송신 장치로부터 비트스트림(Bitstream)를 수신하는 데이터 수신부;
상기 비트스트림을 복조(Demodulation)한 복조 데이터를 생성하는 복조부;
상기 복조 데이터를 디인터리빙(Deinterleaving)할 때, 시간적으로 가변하는 상대적인 가변 메모리 주소(Memory Address)를 생성하며, 상기 가변 메모리 주소에 근거하여 디인터리빙한 디인터리빙 데이터를 생성하는 디인터리버부(Deinterleaver); 및
상기 디인터리빙 데이터를 복호화(Decoding)한 복호화 데이터를 생성하는 복호화부를 포함하되, 상기 디인터리버부는 상기 복조 데이터의 해당 레이어(Layer)의 타임 인터리버 길이(TI_Length)와 세그먼트 수(Num_Seg)에 근거하여 사용 메모리 뎁스(Used_M_Depth)를 산출하는 사용 메모리 뎁스 산출부; 상기 복조 데이터의 이전 메모리 주소 편차값에 근거하여 현재 메모리 주소 편차값을 산출하는 주소 편차 산출부; 이전 메모리 주소, 상기 이전 메모리 주소 편차값 및 상기 사용 메모리 뎁스(Used_M_Depth)에 근거하여 상기 가변 메모리 주소를 생성하는 주소 생성부(Address Generator); 및 상기 가변 메모리 주소에 디인터리빙하고자 하는 데이터를 저장하는 타임 디인터리버 메모리(Time Deinterleaver Memory)를 포함하며,
상기 주소 편차 산출부는 현재 메모리 주소 편차값 = (이전 메모리 주소 편차값 - 5) mod 96(mod: 모듈러 연산)의 수학식을 이용하여 상기 이전 메모리 주소 편차값을 산출하는 것을 특징으로 하는 직교 주파수 분할 다중 통신에서의 수신 장치. - 송신 장치로부터 비트스트림(Bitstream)를 수신하는 데이터 수신부;
상기 비트스트림을 복조(Demodulation)한 복조 데이터를 생성하는 복조부;
상기 복조 데이터를 디인터리빙(Deinterleaving)할 때, 시간적으로 가변하는 상대적인 가변 메모리 주소(Memory Address)를 생성하며, 상기 가변 메모리 주소에 근거하여 디인터리빙한 디인터리빙 데이터를 생성하는 디인터리버부(Deinterleaver); 및
상기 디인터리빙 데이터를 복호화(Decoding)한 복호화 데이터를 생성하는 복호화부를 포함하되, 상기 디인터리버부는 상기 복조 데이터의 해당 레이어(Layer)의 타임 인터리버 길이(TI_Length)와 세그먼트 수(Num_Seg)에 근거하여 사용 메모리 뎁스(Used_M_Depth)를 산출하는 사용 메모리 뎁스 산출부; 상기 복조 데이터의 이전 메모리 주소 편차값에 근거하여 현재 메모리 주소 편차값을 산출하는 주소 편차 산출부; 이전 메모리 주소, 상기 이전 메모리 주소 편차값 및 상기 사용 메모리 뎁스(Used_M_Depth)에 근거하여 상기 가변 메모리 주소를 생성하는 주소 생성부(Address Generator); 및 상기 가변 메모리 주소에 디인터리빙하고자 하는 데이터를 저장하는 타임 디인터리버 메모리(Time Deinterleaver Memory)를 포함하며,
상기 주소 편차 산출부는 상기 복조 데이터의 데이터 유효 신호(Data_Valid)와 기 설정된 초기값(Initial Value)에 근거하여 상기 이전 메모리 주소 편차값을 산출하는 것을 특징으로 하는 직교 주파수 분할 다중 통신에서의 수신 장치. - 송신 장치로부터 비트스트림(Bitstream)를 수신하는 데이터 수신부;
상기 비트스트림을 복조(Demodulation)한 복조 데이터를 생성하는 복조부;
상기 복조 데이터를 디인터리빙(Deinterleaving)할 때, 시간적으로 가변하는 상대적인 가변 메모리 주소(Memory Address)를 생성하며, 상기 가변 메모리 주소에 근거하여 디인터리빙한 디인터리빙 데이터를 생성하는 디인터리버부(Deinterleaver); 및
상기 디인터리빙 데이터를 복호화(Decoding)한 복호화 데이터를 생성하는 복호화부를 포함하되, 상기 디인터리버부는 상기 복조 데이터의 해당 레이어(Layer)의 타임 인터리버 길이(TI_Length)와 세그먼트 수(Num_Seg)에 근거하여 사용 메모리 뎁스(Used_M_Depth)를 산출하는 사용 메모리 뎁스 산출부; 상기 복조 데이터의 이전 메모리 주소 편차값에 근거하여 현재 메모리 주소 편차값을 산출하는 주소 편차 산출부; 이전 메모리 주소, 상기 이전 메모리 주소 편차값 및 상기 사용 메모리 뎁스(Used_M_Depth)에 근거하여 상기 가변 메모리 주소를 생성하는 주소 생성부(Address Generator); 및 상기 가변 메모리 주소에 디인터리빙하고자 하는 데이터를 저장하는 타임 디인터리버 메모리(Time Deinterleaver Memory)를 포함하며,
상기 주소 생성부는 상기 이전 메모리 주소에 상기 이전 메모리 주소 편차값을 차감한 값을 상기 사용 메모리 뎁스(Used_M_Depth)로 모듈러 연산한 값을 상기 가변 메모리 주소로 생성하는 것을 특징으로 하는 직교 주파수 분할 다중 통신에서의 수신 장치. - 송신 장치로부터 비트스트림(Bitstream)를 수신하는 데이터 수신부;
상기 비트스트림을 복조(Demodulation)한 복조 데이터를 생성하는 복조부;
상기 복조 데이터를 디인터리빙(Deinterleaving)할 때, 시간적으로 가변하는 상대적인 가변 메모리 주소(Memory Address)를 생성하며, 상기 가변 메모리 주소에 근거하여 디인터리빙한 디인터리빙 데이터를 생성하는 디인터리버부(Deinterleaver); 및
상기 디인터리빙 데이터를 복호화(Decoding)한 복호화 데이터를 생성하는 복호화부를 포함하되, 상기 디인터리버부는 상기 복조 데이터의 해당 레이어(Layer)의 타임 인터리버 길이(TI_Length)와 세그먼트 수(Num_Seg)에 근거하여 사용 메모리 뎁스(Used_M_Depth)를 산출하는 사용 메모리 뎁스 산출부; 상기 복조 데이터의 이전 메모리 주소 편차값에 근거하여 현재 메모리 주소 편차값을 산출하는 주소 편차 산출부; 이전 메모리 주소, 상기 이전 메모리 주소 편차값 및 상기 사용 메모리 뎁스(Used_M_Depth)에 근거하여 상기 가변 메모리 주소를 생성하는 주소 생성부(Address Generator); 및 상기 가변 메모리 주소에 디인터리빙하고자 하는 데이터를 저장하는 타임 디인터리버 메모리(Time Deinterleaver Memory)를 포함하며,
상기 주소 생성부는 가변 메모리 주소 = (이전 메모리 주소 - 이전 메모리 주소 편차) mod 사용 메모리 뎁스(Used_M_Depth)(mod: 모듈러 연산)의 수학식을 이용하여 상기 가변 메모리 주소를 생성하는 것을 특징으로 하는 직교 주파수 분할 다중 통신에서의 수신 장치. - 송신 장치로부터 비트스트림(Bitstream)를 수신하는 데이터 수신부;
상기 비트스트림을 복조(Demodulation)한 복조 데이터를 생성하는 복조부;
상기 복조 데이터를 디인터리빙(Deinterleaving)할 때, 시간적으로 가변하는 상대적인 가변 메모리 주소(Memory Address)를 생성하며, 상기 가변 메모리 주소에 근거하여 디인터리빙한 디인터리빙 데이터를 생성하는 디인터리버부(Deinterleaver); 및
상기 디인터리빙 데이터를 복호화(Decoding)한 복호화 데이터를 생성하는 복호화부를 포함하되, 상기 디인터리버부는 상기 복조 데이터의 해당 레이어(Layer)의 타임 인터리버 길이(TI_Length)와 세그먼트 수(Num_Seg)에 근거하여 사용 메모리 뎁스(Used_M_Depth)를 산출하는 사용 메모리 뎁스 산출부; 상기 복조 데이터의 이전 메모리 주소 편차값에 근거하여 현재 메모리 주소 편차값을 산출하는 주소 편차 산출부; 이전 메모리 주소, 상기 이전 메모리 주소 편차값 및 상기 사용 메모리 뎁스(Used_M_Depth)에 근거하여 상기 가변 메모리 주소를 생성하는 주소 생성부(Address Generator); 및 상기 가변 메모리 주소에 디인터리빙하고자 하는 데이터를 저장하는 타임 디인터리버 메모리(Time Deinterleaver Memory)를 포함하며,
복수의 레이어(Layer)의 개수만큼의 레이어 주소 생성부를 추가로 포함하며, 상기 레이어 주소 생성부 각각과 연결되어 상기 복수의 레이어에 따른 레이어별 가변 메모리 주소를 시간적으로 분리된 상태로 수신하며, 상기 레이어별 가변 메모리 주소를 통합한 통합 가변 메모리 주소를 생성하는 메모리 통합부(Memory Merge Circuit); 및 상기 통합 가변 메모리 주소를 저장하는 전체 레이어 타임 디인터리버 메모리부(Time Deinterleaver Memory For All Layer)를 포함하는 것을 특징으로 하는 직교 주파수 분할 다중 통신에서의 수신 장치. - 제 8 항에 있어서,
상기 메모리 통합부는,
전체 메모리(Total Memory)에서 상기 복수의 레이어 별로 상기 타임 인터리버 길이만큼의 레이어별 영역을 할당하며, 상기 레이어별 영역마다 메모리 주소 방향(순방향 또는 역방향)을 설정하며, 상기 주소 방향에 따라 기준 주소(Base Address)를 설정하는 것을 특징으로 하는 직교 주파수 분할 다중 통신에서의 수신 장치. - 제 6 항에 있어서,
상기 디인터리버부는,
경로 지연(Branch Delay)에 따른 출력 시점의 상대적인 차이를 이용하여 이전 경로 주소에 감산하면서 시간적으로 가변되는 상대적인 상기 가변 메모리 주소를 생성하는 것을 특징으로 하는 직교 주파수 분할 다중 통신에서의 수신 장치. - 삭제
- 삭제
- 삭제
- 입력된 비트스트림(Bitstream)을 부호화(Coding)한 부호화 데이터를 생성하는 부호화부;
상기 부호화 데이터를 인터리빙(Interleaving)할 때, 시간적으로 가변하는 상대적인 가변 메모리 주소(Address)를 생성하며, 상기 가변 메모리 주소에 근거하여 인터리빙한 인터리빙 데이터를 생성하는 인터리버부(Interleaver);
상기 인터리빙 데이터를 변조한 변조 데이터를 생성하는 변조부; 및
상기 변조 데이터를 수신 장치로 전송하는 전송부를 포함하되,
상기 인터리버부는 상기 부호화 데이터의 해당 레이어(Layer)의 타임 인터리버 길이(TI_Length)와 세그먼트 수(Num_Seg)에 근거하여 사용 메모리 뎁스(Used_M_Depth)를 산출하는 사용 메모리 뎁스 산출부; 상기 부호화 데이터의 이전 메모리 주소 편차값에 근거하여 현재 메모리 주소 편차값을 산출하는 주소 편차 산출부; 이전 메모리 주소, 상기 이전 메모리 주소 편차값 및 상기 사용 메모리 뎁스(Used_M_Depth)에 근거하여 상기 가변 메모리 주소를 생성하는 주소 생성부(Address Generator); 및 상기 가변 메모리 주소를 저장하는 타임 인터리버 메모리(Time Interleaver Memory)를 포함하며,
상기 주소 생성부는 상기 이전 메모리 주소에 상기 이전 메모리 주소 편차값을 가산한 값을 상기 사용 메모리 뎁스(Used_M_Depth)로 모듈러 연산한 값을 상기 가변 메모리 주소로 생성하는 것을 특징으로 하는 직교 주파수 분할 다중 통신에서의 송신 장치. - 입력된 비트스트림(Bitstream)을 부호화(Coding)한 부호화 데이터를 생성하는 부호화부;
상기 부호화 데이터를 인터리빙(Interleaving)할 때, 시간적으로 가변하는 상대적인 가변 메모리 주소(Address)를 생성하며, 상기 가변 메모리 주소에 근거하여 인터리빙한 인터리빙 데이터를 생성하는 인터리버부(Interleaver);
상기 인터리빙 데이터를 변조한 변조 데이터를 생성하는 변조부; 및
상기 변조 데이터를 수신 장치로 전송하는 전송부를 포함하되,
상기 인터리버부는 상기 부호화 데이터의 해당 레이어(Layer)의 타임 인터리버 길이(TI_Length)와 세그먼트 수(Num_Seg)에 근거하여 사용 메모리 뎁스(Used_M_Depth)를 산출하는 사용 메모리 뎁스 산출부; 상기 부호화 데이터의 이전 메모리 주소 편차값에 근거하여 현재 메모리 주소 편차값을 산출하는 주소 편차 산출부; 이전 메모리 주소, 상기 이전 메모리 주소 편차값 및 상기 사용 메모리 뎁스(Used_M_Depth)에 근거하여 상기 가변 메모리 주소를 생성하는 주소 생성부(Address Generator); 및 상기 가변 메모리 주소를 저장하는 타임 인터리버 메모리(Time Interleaver Memory)를 포함하며,
복수의 레이어의 개수만큼의 레이어 주소 생성부를 추가로 포함하며, 상기 레이어 주소 생성부 각각과 연결되어 상기 복수의 레이어에 따른 레이어별 가변 메모리 주소를 수신하며, 상기 레이어별 가변 메모리 주소를 통합한 통합 가변 메모리 주소를 생성하는 메모리 통합부; 및 상기 통합 가변 메모리 주소를 저장하는 전체 레이어용 타임 인터리버 메모리부를 포함하는 것을 특징으로 하는 직교 주파수 분할 다중 통신에서의 송신 장치.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20130071473A KR101491650B1 (ko) | 2013-06-21 | 2013-06-21 | 직교 주파수 분할 다중 통신에서의 송수신 장치 |
JP2013257795A JP5706954B2 (ja) | 2013-06-21 | 2013-12-13 | 直交周波数分割多重通信における送受信装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20130071473A KR101491650B1 (ko) | 2013-06-21 | 2013-06-21 | 직교 주파수 분할 다중 통신에서의 송수신 장치 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20150000047A KR20150000047A (ko) | 2015-01-02 |
KR101491650B1 true KR101491650B1 (ko) | 2015-02-11 |
Family
ID=52301494
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR20130071473A KR101491650B1 (ko) | 2013-06-21 | 2013-06-21 | 직교 주파수 분할 다중 통신에서의 송수신 장치 |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP5706954B2 (ko) |
KR (1) | KR101491650B1 (ko) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010039048A (ko) * | 1999-10-28 | 2001-05-15 | 박종섭 | 복호 지연 오류를 정정하는 잔류측파대 방식 컨벌루셔널 디인터리버 |
US20080244366A1 (en) * | 2005-04-14 | 2008-10-02 | The Boeing Company | Adaptable channel compensation for reliable communication over fading communication links |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2302805B1 (en) * | 1995-02-01 | 2012-08-22 | Sony Corporation | Multi-channel transmission with interleaving through in-place addressing of RAM memory |
JP4152854B2 (ja) * | 2003-09-30 | 2008-09-17 | シャープ株式会社 | 周波数時間デインターリーブ回路、該周波数時間デインターリーブ回路を備えた復調装置、ならびに周波数時間デインターリーブ方法 |
JP2006287325A (ja) * | 2005-03-31 | 2006-10-19 | Toyota Industries Corp | インターリーブ及びデインターリーブ方法、無線装置及びその半導体装置 |
JP2013110678A (ja) * | 2011-11-24 | 2013-06-06 | Nec Corp | インタリーブ装置、アドレス変換方法およびアドレス変換プログラム |
-
2013
- 2013-06-21 KR KR20130071473A patent/KR101491650B1/ko active IP Right Grant
- 2013-12-13 JP JP2013257795A patent/JP5706954B2/ja not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20010039048A (ko) * | 1999-10-28 | 2001-05-15 | 박종섭 | 복호 지연 오류를 정정하는 잔류측파대 방식 컨벌루셔널 디인터리버 |
US20080244366A1 (en) * | 2005-04-14 | 2008-10-02 | The Boeing Company | Adaptable channel compensation for reliable communication over fading communication links |
Also Published As
Publication number | Publication date |
---|---|
JP5706954B2 (ja) | 2015-04-22 |
JP2015005968A (ja) | 2015-01-08 |
KR20150000047A (ko) | 2015-01-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101964653B1 (ko) | 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법 | |
CN107113448B (zh) | 广播信号接收方法以及广播信号接收装置 | |
KR101757307B1 (ko) | 스트리밍 서비스를 통한 미디어 데이터 전송 장치, 스트리밍 서비스를 통한 미디어 데이터 수신 장치, 스트리밍 서비스를 통한 미디어 데이터 전송 방법, 및 스트리밍 서비스를 통한 미디어 데이터 수신 방법 | |
CN112217546B (zh) | 发送和接收广播信号的方法及设备 | |
KR102221302B1 (ko) | 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법 | |
KR101869222B1 (ko) | 방송 수신 장치 및 방송 수신 장치의 동작 방법 | |
KR102004274B1 (ko) | 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법 | |
EP3011732B1 (en) | Method and apparatus for transmitting/receiving broadcast signals | |
KR101975344B1 (ko) | 방송 신호 송수신 장치 및 방법 | |
KR102202339B1 (ko) | 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법 | |
KR102065423B1 (ko) | 방송 신호 송수신 장치 및 방법 | |
KR102179826B1 (ko) | 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법 | |
KR101754285B1 (ko) | 방송 전송 장치, 방송 수신 장치, 방송 전송 장치의 동작 방법 및 방송 수신 장치의 동작 방법 | |
US9712292B2 (en) | Apparatus for transmitting broadcast signal, apparatus for receiving broadcast signal, method for transmitting broadcast signal, and method for receiving broadcast signal | |
US9537698B2 (en) | Apparatus for transmitting broadcast signals, apparatus for receiving broadcast signals, method for transmitting broadcast signals and method for receiving broadcast signals | |
KR102257632B1 (ko) | 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법 | |
JP2016526840A (ja) | 放送信号送信装置、放送信号受信装置、放送信号送信方法及び放送信号受信方法 | |
KR101779582B1 (ko) | 방송 수신 장치 및 방송 수신 장치의 동작 방법 | |
KR101491650B1 (ko) | 직교 주파수 분할 다중 통신에서의 송수신 장치 | |
JP6336621B2 (ja) | 放送信号送受信装置及び方法 | |
KR102017709B1 (ko) | 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20180124 Year of fee payment: 4 |
|
FPAY | Annual fee payment |
Payment date: 20190207 Year of fee payment: 5 |