KR20000040826A - 콘벌루셔널 디인터리버 - Google Patents
콘벌루셔널 디인터리버 Download PDFInfo
- Publication number
- KR20000040826A KR20000040826A KR1019980056554A KR19980056554A KR20000040826A KR 20000040826 A KR20000040826 A KR 20000040826A KR 1019980056554 A KR1019980056554 A KR 1019980056554A KR 19980056554 A KR19980056554 A KR 19980056554A KR 20000040826 A KR20000040826 A KR 20000040826A
- Authority
- KR
- South Korea
- Prior art keywords
- signal
- data
- deinterleaver
- address
- response
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/44—Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0071—Use of interleaving
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Error Detection And Correction (AREA)
Abstract
인터리브된 데이터를 원래의 데이터로 복원할 수 있는 콘벌루셔널 디인터리버가 개시되어 있다. 브렌치값을 나타내는 복수개의 B값과 상기 브렌치값과 레지스터값의 곱신호인 복수개의 N값을 롬테이블 형태로 저장한 모드선택부는 모드설정신호에 응답하여 제1, 제2 및 제3 신호를 출력하고, 다운카운터부는 제1 신호를 제공받아 입력되는 클럭신호에 응답하여 제1 신호부터 1씩 감소하는 카운트신호를 발생하고, 어드레스발생부는 클럭신호에 동기하여 제2 신호와 제3 신호를 제공받고 상기 카운트신호를 제공받아 어드레스신호를 발생하며, 메모리는 일단을 통해 인터리브된 데이터를 제공받고, 상기 어드레스발생부로부터 제공되는 어드레스신호에 응답하여 입력데이터를 디인터리브한다.
Description
본 발명은 콘벌루셔널 디인터리버에 관한 것으로, 보다 상세하게는 다기능, 다규격의 디코더내에서 디인터리버를 공유할 수 있는 콘벌루셔널 디인터리버에 관한 것이다.
도 1은 일반적인 디지털 텔레비젼의 포워드 에러 정정(FEC; Foward Error Correction) 수신단의 블록도로서, 디지털 텔레비젼의 신호수신블럭의 복조기(도시하지 않음)와 디멀티플렉서(도시하지 않음)의 사이에 위치된다.
일반적으로 디인터리버(Deinterleaver)는 도 1에 나타낸 바와 같이, 디지털 데이터 수신기의 트렐리스 디코더(Trellis Decoder)와 리드-솔로몬 디코더(Reed-Solomon Decoder)와의 사이에 위치하여 버스트 에러 등을 방지하기 위하여 연속적인 순서로 제공되는 코드워드 심볼(code word symbol)을 의사무작위 인터리브 포맷으로 변환하여 발생한 인터리브신호를 원래의 코드워드 심볼로 복구하기 위한 장치이다.
상기한 코드워드 심볼이 인터리빙(interleaving)되는 과정과 디인터리빙(deinterleaving)되는 과정을 간략히 설명한다.
도 2a 내지 도 2d는 종래의 B=4, N=8 일 때 선입선출(FIFO;first-in first-out) 방식을 이용한 콘볼루셔널 인터리버/디인터리버의 일 예를 설명하기 위한 블럭도이다.
도 2a 내지 도 2d를 참조하면, 인터리버와 디인터리버에는 4개의 브렌치, B가 있다.
상기 인터리버의 첫 번째 브렌치에는 레지스터가 없고, 두 번째 브렌치에는 하나의 레지스터가 있고, 세 번째 브렌치에는 두 개의 레지스터가 있으며, 네 번째 브렌치에는 3개의 레지스터가 있으며, 또한 상기 디인터리버에는 상기한 인터리버와는 역순으로 레지스터가 배치된다.
동작시 인코더로부터 제공되는 4개의 코드워드 심볼을 제공받아 제1단을 통해 출력측으로 바이패스하고, 제2단에는 하나의 레지스터를 통해 출력측에 제공하고, 제3단에는 두 개의 레지스터를 통해 출력측에 제공하고 제4단에는 세 개의 레지스터를 통해 출력측에 제공한다.
도 2a를 참조하면, 심볼 1 내지 4가 인코더로부터 제공되어 인터리버의 입력단에 로드되고, 인터리버의 출력단에는 심볼 1이 출력되어 디인터리버의 입력단에 제공되어 레지스터에 저장되므로 디인터리버의 출력단에는 어떠한 심볼도 출력되지 않는다.
도 2b를 참조하면, 첫 번째 4개의 심볼은 레지스터내에 쉬프트되고, 심볼 5 내지 8은 인터리버의 입력측에 제공되는 상태이다.
도 2c를 참조하면, 심볼 9내지 12이 인터리버에 입력된다, 디인터리버는 이제 메시지심볼을 파일링하나 아직은 디코더에 제공하지는 않는 상태이다.
마지막으로 도 2d를 참조하면, 심볼 13 내지 16이 인터리버에 입력되고, 심볼 1 내지 4가 디코더에 제공된다.
도 3a 내지 도 3c는 종래의 롬-테이블방식을 이용한 디인터리버을 설명하기 위한 도면이다.
도 3a는 롬-테이블을 이용한 디인터리버의 블록도이고, 도 3b는 롬-테이블에 저장된 데이터를 나타내며, 도 3c는 디인터리브된 출력데이터를 설명하기 위한 도면이다.
도 3a를 참조하면, 롬-테이블을 이용한 디인터리버는 제1 카운터(10), 롬-테이블(20), 제2 카운터(30), 합산기(40), 그리고 메모리(RAM; 50)로 구성되어 클럭주파수( fCLK )에 응답하여 입력되는 인터리브된 데이터(DATA)를 디이터리빙 동작을 수행하여 디인터리브신호를 출력한다.
도 3b를 참조하면, 실제로 상기 롬-테이블(20)에 저장된 값은 첫 번째 칼럼의 0, 7, 3, 1이고, 나머지는 제1 카운터(10)에 응답하여 발생한다. 이때 상기 롬-테이블 값을 정할 때 마지막 컬럼과 다음 칼럼의 첫 번째 칼럼 값이 일치하도록 해야 한다. 왜냐하면, 롬-테이블값을 이용하여 램(RAM; 50)의 값을 읽고 그 자리에 다시 쓰는 방식을 이용하기 때문이다.
만일 입력되는 디지털 테이터가 0, 1, 2, 3, 4, ...과 같이 연속하는 데이터가 입력되는 경우에는 도 3c에 나타낸 바와 같이 입력데이터가 위치하며, 출력되는 디인터리브 데이터는 0, 0, 0, 0, 3, 0, 0, 0, 7, 0, 0, 2, 11, 0, 0, 6, 15, 0, 1, 10, 19, ... 가 될 것이다.
그러나 상기한 종래의 콘벌루셔널 디인터리버는 디지털 데이터의 디인터리빙시, 선입선출(FIFO; first-in first-out)방식이나 롬테이블(ROM-table)방식을 이용한 어드레싱을 사용하여 하드웨어상에 고정되고나면 고정된 특정 규격에만 유용하고, 하드웨어상에 고정되지 않은 규격의 경우에는 규격의 변경이 불가능한 문제점이 있었다.
이에, 본 발명은 상술한 종래의 문제점을 해결하기 위하여 안출한 것으로, 본 발명의 목적은 디지털 데이터의 디인터리빙시, 다기능과 다규격의 디코더내에서 디인터리버를 공유할 수 있는 콘벌루셔널 디인터리버를 제공하는 것을 그 목적으로 한다.
도 1은 일반적인 디지털 텔레비젼의 포워드 에러 정정 수신단의 블록도;
도 2a 내지 도 2d는 종래의 B=4, N=8 일 때 선입선출방식을 이용한 콘볼루셔널 인터리버/디인터리버의 일 예를 설명하기 위한 블록도;
도 3a 내지 도 3c는 종래의 롬-테이블방식을 이용한 디인터리버을 설명하기 위한 도면; 그리고
도 4는 본 발명의 일 실시예에 의한 컨벌루셔널 디인터리버의 블록도이다.
도면의 주요부분에 대한 부호의 설명
10 : 제1 카운터 20 : 롬-테이블
30 : 제2 카운터 40 : 합산기
50, 400 : 메모리 100 : 모드선택부
200 : 다운카운터부 300 : 어드레스발생부
310 : 승산기 320 : 감산기
330 : 지연기 340 : 모듈로
상기한 본 발명의 목적을 실현하기 위하여, 본 발명은 의사무작위순서로 인터리브된 데이터를 제공받아 원래의 데이터로 복원하기 위한 디인터리버에 있어서,
모드설정신호에 응답하여 제1, 제2 및 제3 신호를 출력하기 위한 모드선택부;
상기 제1 신호를 제공받아 입력되는 클럭신호에 응답하여 제1 신호부터 1씩 감소하는 카운트신호를 발생하기 위한 다운카운터부;
상기 클럭신호에 동기하여 상기 제2 신호와 제3 신호를 제공받고 상기 카운트신호를 제공받아 어드레스신호를 발생하기 위한 어드레스발생부; 그리고
일단을 통해 인터리브된 데이터를 제공받고, 상기 어드레스발생부로부터 제공되는 어드레스신호에 응답하여 입력데이터를 디인터리브하기 위한 메모리를 포함하는 컨벌루셔널 디인터리버를 제공한다.
상기 컨벌루셔널 디인터리버에 의하면, 설정된 제1, 제2, 제3 신호에 응답하여 인터리브된 데이터를 원래의 데이터로 복원할 수 있다.
이하, 첨부한 도면을 참조하여, 본 발명의 일 실시예를 통해 본 발명을 보다 상세하게 설명하고자 한다.
도 4는 본 발명의 일 실시예에 의한 컨벌루셔널 디인터리버의 블록도이다.
도 4를 참조하면, 본 발명의 일 실시예에 의한 컨벌루셔널 디인터리버는 모드선택부(100), 다운카운터부(200), 어드레스발생부(300), 그리고 메모리(400)로 구성되어 인터리브된 데이터를 제공받아 원래의 데이터로 복원한다.
상기 모드선택부(100)는 모드설정신호(99)에 응답하여 제1 데이터를 상기 다운카운터부(200)에 제공하고, 제2 데이터 및 제3 데이터를 상기 어드레스발생부(300)에 제공한다. 이때 상기 모드선택부(100)는 브렌치값을 나타내는 복수개의 B값과 상기 브렌치값과 레지스터값의 곱신호인 복수개의 N값이 롬테이블 형태로 저장된다. 예를들어, N=208, B=52인 경우에는 8-VSB규격을 나타내고, N=208, B=26인 경우에는 16-VSB규격을 나타내고, N=204, B=17인 경우에는 DVB규격을 나타낸다.
상기 모드선택부(100)를 재언급하면, 상기 제1 데이터는 모드선택에 의해 출력되는 브렌치(B)의 수이고, 제2 데이터는 모드선택에 의해 출력되는 레지스터(M)의 수이고, 그리고 제3 데이터는 상기 브렌치의 수에서 1을 감산한 신호에 브렌치의 수와 레지스터의 수를 곱한 데이터를 승산하고 승산된 데이터를 2로 제산한 후 1을 더한 데이터( )이다.
상기 다운카운터(200)는 리셋신호(RESET)를 제공받고, 상기 제1 데이터(B)를 제공받아 입력되는 클럭신호(CLK)에 응답하여 제1 데이터부터 1씩 감소하는 카운트신호(B-x)를 상기 어드레스발생부(300)에 제공한다.
상기 어드레스발생부(300)는 상기 클럭신호(CLK)에 동기하여 상기 제2 데이터(N/B)와 제3 데이터( )를 제공받고, 상기 카운트신호(B-x)를 제공받아 어드레스신호(ADDR)를 상기 메모리(400)에 제공한다.
보다 상세히는 상기 어드레스발생부(300)는 승산기(310), 감산기(320), 지연기(330), 그리고 모듈로(340)로 구성된다.
상기 승산기(310)는 상기 모드선택부(100)로부터 제공되는 제2 데이터(N/B)와 상기 다운카운터(200)로부터 제공되는 제1 데이터가 1씩 감소하는 신호(B-x)를 승산 연산하여 승산신호( )를 상기 감산기(320)에 제공한다.
상기 감산기(320)는 상기 모듈로(340)로부터 피드백되어 입력되는 어드레스신호(c(x-1))와 상기 승산기(310)로부터 제공되는 승산신호( )와의 감산 연산을 행한 후 감산신호(c(x); 321)를 상기 지연기(330)에 제공한다. 이때 상기 감신신호 c(x)는 로 나타낼 수 있다.
상기 지연기(330)는 바람직하게는 D-플립플롭으로 구성되어, D-포트를 통해 입력되는 상기 감산신호(c(x); 321)를 클럭-포트를 통해 입력되는 상기 클럭신호(CLK)에 동기하여 소정 시간동안 지연시킨 후 지연신호(331)를 Q-포트를 통해 상기 모듈로(340)에 제공한다.
상기 모듈로(340)는 바람직하게는 모듈로 로서 상기 지연기(330)로부터 제공되는 지연신호(331)를 제3 신호( )로 제산 연산하여 얻은 어드레스신호(341)를 상기 감산기(320) 및 상기 메모리(400)에 각각 제공한다.
바람직하게는 SRAM으로 구성된 상기 메모리(400)는 일단을 통해 인터리브된 데이터(DATA)를 제공받고, 상기 모듈로(340)로부터 제공되는 어드레스신호(341)에 응답하여 상기 데이터(DATA)를 디인터리브한다.
이상 설명한 바와 같이 본 발명은 디지털 텔레비젼 데이터의 규격의 성격에 따른 디인터리버의 브렌치의 수와 레지스터의 수를 미리 롬테이블형태로 설정하고, 입력되는 데이터의 성격에 따라 디인터리버의 모드 설정을 다르게 구동할 수 있으므로 여러 규격의 디인터리버가 필요할 경우 메모리 공유로 인하여 하드웨어를 절감할 수 있다.
이상, 설명한 바와 같이 인터리브된 데이터를 원래의 데이터로 복원하기 위하여 수행하는 디인터리버에 있어서 선입선출(FIFO)방식이나 롬-테이블을 이용하여 어드레싱을 수행하는 경우에는 하드웨어상으로 고정되고 나면 입력되는 데이터의 규격이 상이하게 입력되는 경우에는 이의 변경이 불가능하였으나, 본 발명에서는 데이터의 규격의 성격에 따른 디인터리버의 브렌치의 수와 레지스터의 수를 미리 롬-테이블형태로 설정하고, 입력되는 데이터의 성격에 따라 디인터리버의 모드 설정을 다르게 구동할 수 있다. 즉, 모드설정부에 설정된 브렌치 값과 상기 브렌치 값과 레지스터 수의 승산값만을 모드설정부에 세팅시키면 입력되는 디지털 데이터의 성격에 따라 다양한 규격의 디인터리버가 필요하더라도 메모리를 공유할 수 있어 하드웨어를 절감할 수 있다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.
Claims (3)
- 의사무작위 순서로 인터리브된 데이터를 제공받아 원래의 데이터로 복원하기 위한 디인터리버에 있어서, 브렌치의 수와 레지스터의 승산값과 상기 브렌치의 수가 롬테이블형태로 설정되어 모드설정신호에 응답하여 제1, 제2 및 제3 신호를 출력하기 위한 모드선택수단;상기 제1 신호를 제공받아 입력되는 클럭신호에 응답하여 제1 신호부터 하나씩 감소하는 카운트신호를 발생하기 위한 다운카운터수단;상기 클럭신호에 동기하여 상기 제2 신호와 제3 신호를 제공받고 상기 카운트신호를 제공받아 어드레스신호를 발생하기 위한 어드레스발생수단; 그리고일단을 통해 인터리브된 데이터를 제공받고, 상기 어드레스발생수단으로부터 제공되는 어드레스신호에 응답하여 입력데이터를 디인터리브하기 위한 메모리를 포함하는 것을 특징으로 하는 컨벌루셔널 디인터리버.
- 제 1 항에 있어서, 상기 제1 신호는 브렌치(B)의 수이고, 제2 신호는 레지스터(M)의 수이며, 그리고 제3 신호는 브렌치의 수에서 1을 감산한 신호에 브렌치의 수와 레지스터의 수를 곱한 신호를 승산하고 승산된 신호를 2로 제산한 후 1을 더(
- 제 1 항에 있어서, 상기 어드레스발생수단은상기 모드선택수단으로부터 제공되는 제2 신호와 상기 다운카운터수단으로부터 제공되는 제1 신호가 1씩 감소하는 신호를 승산 연산하여 승산신호를 발생하기 위한 승산기;피드백되어 입력되는 제산신호와 상기 승산신호의 차신호를 발생하기 위한 감산기;상기 차신호를 지연시키기 위한 지연기; 그리고상기 지연신호를 제3 신호로 제산 연산하여 제산신호를 상기 감산기에 제공하고 어드레스를 발생하기 위한 모듈로를 포함하는 것을 특징으로 하는 컨벌루셔널 디인터리버.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019980056554A KR20000040826A (ko) | 1998-12-19 | 1998-12-19 | 콘벌루셔널 디인터리버 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019980056554A KR20000040826A (ko) | 1998-12-19 | 1998-12-19 | 콘벌루셔널 디인터리버 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20000040826A true KR20000040826A (ko) | 2000-07-05 |
Family
ID=19564060
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019980056554A KR20000040826A (ko) | 1998-12-19 | 1998-12-19 | 콘벌루셔널 디인터리버 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20000040826A (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101133907B1 (ko) * | 2007-07-06 | 2012-04-12 | 주식회사 코아로직 | 디인터리브 장치와 방법 및 인터리빙 인덱스 산출장치 및방법과 그 기록매체 |
CN112217523A (zh) * | 2014-09-29 | 2021-01-12 | 松下电器产业株式会社 | 卷积交织器、卷积交织方法、卷积解交织器及卷积解交织方法 |
-
1998
- 1998-12-19 KR KR1019980056554A patent/KR20000040826A/ko not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101133907B1 (ko) * | 2007-07-06 | 2012-04-12 | 주식회사 코아로직 | 디인터리브 장치와 방법 및 인터리빙 인덱스 산출장치 및방법과 그 기록매체 |
CN112217523A (zh) * | 2014-09-29 | 2021-01-12 | 松下电器产业株式会社 | 卷积交织器、卷积交织方法、卷积解交织器及卷积解交织方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0158510A2 (en) | Error detection and correction in digital communication systems | |
US6178530B1 (en) | Addressing scheme for convolutional interleaver/de-interleaver | |
JP5564566B2 (ja) | デインタリーブ装置および方法ならびにデータ伝送システムおよび方法 | |
KR980012968A (ko) | 정적 램을 이용한 길쌈인터리버의 구조 | |
WO1996037050A1 (en) | Reconfigurable interleaver/deinterleaver and address generator for data streams interleaved according to one of a plurality of interleaving schemes | |
GB2329804A (en) | Time and frequency interleaving device for a multicarrier system | |
JP3358195B2 (ja) | データエレメントのインタリーブ/デインタリーブ | |
EP1100202A1 (en) | De-interleave circuit | |
KR20000040826A (ko) | 콘벌루셔널 디인터리버 | |
JP2013207382A (ja) | インタリーブ制御装置、インタリーブ処理装置及びインタリーブ処理方法 | |
JP3279624B2 (ja) | Crc演算に基づく1ビット誤り訂正回路 | |
US5933431A (en) | Frame-based modulus interleaver | |
WO2000055975A1 (fr) | Imbrication et desimbrication de blocs, et dispositif a cet effet | |
US5959703A (en) | Apparatus and method for removing error data decoding delay in a DTV | |
JP2000188555A (ja) | ブロックインターリーブ回路 | |
US6138133A (en) | Circuit for calculating the inverse of an arbitrary element of a finite field | |
EP1610467A1 (en) | Efficient address generation for Forney's modular periodic interleavers | |
KR100255304B1 (ko) | 디지탈 통신기기의 컨벌루셔널 디인터리버 | |
US20010023497A1 (en) | Parallel processing reed-solomon encoding circuit and method | |
JPH1013253A (ja) | コンボリューショナル・インターリーバ | |
KR20000043178A (ko) | 콘볼루셔널 인터리버 | |
US7032162B1 (en) | Polynomial expander for generating coefficients of a polynomial from roots of the polynomial | |
KR100350683B1 (ko) | 데이터 디인터리버 및 어드레스 발생방법 | |
KR100192792B1 (ko) | 리드 솔로몬 복호기의 다항식 평가 장치 | |
KR100298833B1 (ko) | 유크리드 알고리즘 연산 회로 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WITN | Withdrawal due to no request for examination |