KR100363232B1 - 데이터 디-로테이터 및 디-인터리버 - Google Patents

데이터 디-로테이터 및 디-인터리버 Download PDF

Info

Publication number
KR100363232B1
KR100363232B1 KR1019997000906A KR19997000906A KR100363232B1 KR 100363232 B1 KR100363232 B1 KR 100363232B1 KR 1019997000906 A KR1019997000906 A KR 1019997000906A KR 19997000906 A KR19997000906 A KR 19997000906A KR 100363232 B1 KR100363232 B1 KR 100363232B1
Authority
KR
South Korea
Prior art keywords
offset
memory
data
data elements
group
Prior art date
Application number
KR1019997000906A
Other languages
English (en)
Other versions
KR20000029785A (ko
Inventor
피모프마크
스패트로렌스씨.주니어
Original Assignee
제니스 일렉트로닉스 코포레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 제니스 일렉트로닉스 코포레이션 filed Critical 제니스 일렉트로닉스 코포레이션
Publication of KR20000029785A publication Critical patent/KR20000029785A/ko
Application granted granted Critical
Publication of KR100363232B1 publication Critical patent/KR100363232B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2383Channel coding or modulation of digital bit-stream, e.g. QPSK modulation
    • 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
    • H03M13/2764Circuits therefore
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4382Demodulation or channel decoding, e.g. QPSK demodulation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Error Detection And Correction (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

데이터를 디-로테이트 및 디-인터리브하는 장치(28)는 (i)로테이트 및 인터리브된 데이터의 D 요소를 D 저장 장소내에 저장하는 제 1 메모리(32), (ii) D 저장 장소에서 디-로테이트 및 인터리브된 데이터를 판독하고, 로테이트 및 인터리브된 데이터를 D 저장 장소내에 기록하도록 제 1 메모리(32)를 어드레스하는 게 1 어드레서(36), (iii) 제 1 메모리(32)에서 판독된 디-로테이트 및 인터리브된 데이터의 mD 요소를 저장하는 제 2 메모리(38)로서, 상기 제 1 메모리(32)에서 판독된 상기 디-로테이트 및 인터리브된 데이터는 제 2 메모리(38)의 mD 저장 장소내에 저장되는 제 2 메모리(38)와, (iv) mD 저장 장소내에 저장되는 제 2 메모리(38)와, (iv) mD 저장 장소에서 디-로테이트 및 디-인터리브된 데이터를 판독하여, 제 1 메모리(32)로 부터의 디-로테이트 및 인터리브된 데이터를 mD 저장 장소내에 기록하도록 제 2 메모리(38)를 어드레스하는 제 2 어드레서(40)를 포함한다.

Description

데이터 디-로테이터 및 디-인터리버{DATA DE-ROTATOR AND DE-INTERLEAVER}
8 VSB 지상(terrestrial) 통신 시스템에서는 공기를 통해 수신국으로 정보를전송할 수 있다. 일례의 그런 시스템에서, 통신될 데이터의 각 2비트는 8개의 가능 레벨을 가진 심볼로서 맵되는 3비트 트렐리스 코드(trellis code)로 변환됨으로써, 데이터의 각 바이트는 4개의 심볼로 표시된다. 심볼은 인터리브되고, 이런 심볼중 몇몇은 데이터 프레임으로 전송되기 전에 로테이트된다.
8 VSBT 시스템내에 이용되는 데이터 프레임은(1995년 9월 16일자로 발표된) ATSC 디지털 텔레비젼 표준 규격, 특히 그의 Annex D, 섹션 4.1 에 기술되어 있다. 이런 데이터 프레임은 다수의 세그먼트(즉, 라인)로 구성되는데, 각 세그먼트는 데이터 군을 포함하고, 데이터의 각 군은 다수의 데이터 요소를 포함한다. 예를 들면, 각 세그먼트는 데이터의 69군을 포함하고, 데이터의 각 군은 12개의 데이터 요소를 포함하며, 데이터 요소는 데이터 심볼일 수 있다. 그런 데이터 프레임의 제 1 세그먼트는 프레임 동기화 정보를 포함하고, 데이터 프레임의 각 연속 세그먼트는 (4개의 세그먼트 동기 심볼형으로) 세그먼트 동기화 정보를 포함하고 초기부분 및, 데이터를 포함하는 다음 부분을 가지고 있다.
데이터 프레임 내에 포함된 프레임 및 세그먼트 동기화 정보 때문에, 어떤 데이터군내의 데이터 요소는 수신기에 의해 데이터의 처리를 용이하게 하도록 로테이트될 수 있다. 이런 로테이션은 Annex D, 섹션 4.2.5 및 전술된 표준규격의 표 2 에 기술되어 있다. 따라서, 수신기에 의해 수신되는 로테이트 및 인터리브된 데이터는 디-로테이트 및 디-인터리브되어야 한다.
본 발명은 심볼과 같은 데이터 요소를 디-로테이트 및/또는 디-인터리브하는장치에 관한 것이다.
발명의 요약
본 발명의 일양상에 따르면, 로테이트 및 인터리브된 데이터를 처리하는 장치는 디-로테이트 수단 및 디-인터리브 수단을 포함한다. 디-로테이트 수단은 디-로테이트 및 인터리브된 데이터를 생성시키도록 로테이트 및 인터리브된 데이터를디-로테이트한다. 디-인터리브 수단은 디-로테이트 및 디-인터리브된 데이터를 생성시키도록 디-로테이트 및 인터리브된 데이터를 디-인터리브한다.
본 발명의 다른 양상에 따르면, 로테이트 및 인터리브된 데이터를 처리하는 장치는 제 1 및 2 저장수단과 제 1 및 2 어드레싱 수단을 포함한다. 제 1 저장 수단은 로테이트 및 인터리브된 데이터의 D개의 요소를 저장한다. 제 1 어드레싱 수단은 제 1 저장 수단을 어드레스하여, 제 1 저장 수단에서 디-로테이트 및 인터리브된 데이터를 판독하고, 로테이트 및 인터리브된 데이터를 제 1 저장 수단내로 기록한다. 제 2 저장 수단은 제 1 저장 수단에서 판독된 디-로테이트 및 인터리브된 데이터의 nD개의 요소를 저장한다. 제 2 어드레싱 수단은 제 2 저장 수단을 어드레스하여, 제 2 저장 수단에서 디-로테이트 및 디-인터리브된 데이터를 판독하고, 제 1 저장 수단에서의 디-로테이트 및 인터리브된 데이터를 제 2 저장 수단내로 기록한다.
본 발명의 또다른 양상에 따르면, 로테이트된 데이터를 디-로테이트하는 장치를 배치한다. 로테이트된 데이터는 D개의 데이터 요소에 기초하여 로테이트된다. 이런 장치는 저장 수단 및 어드레싱 수단을 포함한다. 저장수단은 대응하는 D개의 저장 장소내에 로테이트된 데이터의 D개의 데이터 요소를 저장한다. 어드레싱 수단은 저장 수단을 어드레스하여, D개의 저장 장소에서 디-로테이트된 데이터를 판독하고, 로테이트된 데이터를 D개의 저장 장소내에 기록한다.
본 발명은 데이터를 디-로테이트(de-rotate) 및/또는 디-인터리브(de-interleave)하는 장치 및 방법에 관한 것이다.
본 발명의 상기 및 다른 특징 및 잇점은 도면을 참조로 본 발명의 상세한 설명으로부터 더욱 명백해진다.
도 1 은 행 우선 배열(row major order)의 데이터의 일례를 설명한 것으로서, 본 발명에 의해 디-인터리브될 데이터의 인터리빙을 설명하는 데에 유용하다.
도 2 는 일례의 데이터를 설명한 것으로서, 본 발명에 의해 디-로테이트될 데이터의 로테이션을 설명하는 데에 유용하다.
도 3 은 본 발명에 따른 디-로테이트 및 디-인터리브 장치를 설명한 것이다.
도 4 는 도 3 의 복조기(30)의 타이밍도이다.
도 5 는 도 3 의 콘트롤러(34)의 타이밍도이다.
도 6 은 도 3 의 어드레스 생성기(36)를 더욱 상세히 설명한 것이다.
도 7 은 도 6 에서 설명된 어드레스 생성기(36)의 동작을 설명하는데에 유용한 데이터의 일례를 설명한 것이다.
도 8 은 도 3 의 어드레스 생성기(40)의 일실시예를 더욱 상세히 설명한 것이다.
도 9 는 제 2 메모리 수단(38)의 메모리 로케이션을 나타낸 것이다.
도 10 은 도 3 의 어드레스 생성기(40)에 의해 생성된 어드레스 시퀀스를 설명한 것이다.
도 11a 및 11b 는 도 3 의 어드레스 생성기(40)의 타이밍도이다.
도 12 는 도 8 의 시드(seed) 생성기(82)의 제 1 실시예를 더욱 상세히 설명한 것이다.
도 13 는 도 8 의 시드 생성기(82)의 제 2 실시예를 더욱 상세히 설명한 것이다.
도 14 는 도 13 의 12 곱 및 모듈로 47 (multiply by twelve and modulo forty-seven) 연산자(98)를 더욱 상세히 설명한 것이다.
도 15 는 도 14 의 모듈로 47 교정논리(106)를 더욱 상세히 설명한 것이다.
도 16 은 도 3 의 어드레스 생성기(40)의 다른 실시예를 더욱 상세히 설명한 것이다.
도 1 은 화면(scene)의 주사부로 부터 생긴 데이터 요소의 다수 바이트를 설명한 것이다. 데이터의 제 1 바이트는 데이터 심볼 A1, A2, A3및 A4를 포함한다. 이런 데이터 심볼의 각각은 예를 들어 데이터의 2 비트를 나타낸다. 그래서, 데이터 심볼의 제 1 바이트는 데이터의 8 비트를 나타낸다. 데이터의 제 2 바이트는 데이터 심볼 B1내지 B4를 포함하고, 데이터의 제 3 바이트는 데이터 심볼 C1내지 C4를 포함하며, .... , 데이터의 제 12 바이트는 데이터 심볼 L1내지 L4을 포함한다.
전송기내의 심볼 인터리버는 데이터 심볼 또는 데이터 요소의 어느 다른 배치가 인터리브될 수 있을 지라도 도 1 의 데이터 심볼을 인터리브하도록 구성될 수 있다. 따라서, 심볼 인터리버는 도 1 에서 설명한 데이터 심볼을 행 우선 배열에서 열 우선 배열로 변환함으로써, 데이터 심볼은 열 우선 배열 데이터 요소로서 전송된다. 결과적으로, 데이터 심볼 A1, 후의 데이터 심볼 A2, 데이터 심볼 A2후의 데이터 심볼 A3, 데이터 심볼 A3후의 데이터 심볼 A4, 데이터 심볼 A4후의 데이터 심볼 B1등을 전송하는 전송기 대신에, (데이터 심볼의 순서를 변경할 수 있는 다른 처리를 무시하는) 전송기는 순차적으로 데이터 심볼 A1, 데이터 심볼 B1, ... 데이터 심볼 L1, 데이터 심볼 A2, ... 을 전송한다. 따라서, 도 1 에 도시된 바와 같이 데이터 심볼의 각 열은 제 1 열이 먼저 전송되고, 제 2 열이 두번째로 전송되며, 그후 순차적으로 전송되도록 1개군의 12개 데이터요소들을 나타낸다.
도 2 는 데이터 프레임의 세그먼트(20)의 데이터 심볼의 한 군을 도시한 것이다. 도 2 에 도시된 바와 같이, 세그먼트(20)내의 이러한 데이터 심볼군들 내의 상기 군의 데이터 심볼들은 로테이트 되지 않는다. 그러나, 세그먼트(20) 또는 다른 군의 데이터 심볼들은 로테이트될 수 있다. 예를 들면, 세그먼트(22)에서 하나의 데이터 심볼군 내의 데이터 심볼은 8로 로테이트 되고, 세그먼트(24)에서 하나의 데이터 심볼군 내의 데이터 심볼은 (아래에 기술되는 본 발명의 실시예에서, 전송기가 4로 데이터를 로테이트하지 않을 지라도) 4로 로테이트된다. 따라서, 도 1 및 2 에 도시된 데이터 심볼은 인터리브 및 로테이트된 데이터로서 전송된다.
도 3은 인터리브 및 로테이트된 데이터를 디-로테이트 및 디-인터리브하는 장치(28)를 설명한 것이다. 장치(28)는 (ATSC 8 VSB 복조기와 같은) 복조기(30)를 포함한다. 복조기(30)는 ATSC 표준 8 VSB 지상 모드 신호를 수신하여, 다음의 4개의 출력 신호, 즉, 프레임 동기 세그먼트의 끝에서 발생하는 프레임 동기 신호, 각 데이터 세그먼트의 제 1 심볼 클럭과 동시에 발생하는 세그먼트 동기 신호, 심볼 클럭 신호와, 인터리브 및 로테이트된 데이터를 생성시킨다. 인터리브 및 로테이트된 데이터는 제 1 메모리(32)에 공급된다. 상기 메모리(32)는 제 1 메모리(32) 또는 12심볼 메모리(32)로 지칭될 수 있다. 모든 프레임에 발생되는 312개의 세그먼트 동기 신호가 있지만, 프레임 동기 세그먼트에 생성된 세그먼트 동기 신호는 없다. 각 데이터 세그먼트에 발생된 828개의 심볼 클럭이 있고, 각 심볼 클럭은 대응 데이터 심볼과 일치한다. 그러나, 프레임 동기 세그먼트에 대응하는 시간이나, 세그먼트 동기의 4개의 세그먼트 동기 심볼에 대응하는 시간동안에 생성되는 심볼 클럭은 없다. 그래서, 심볼 클럭만이 데이터 심볼에 대응하여 존재한다. 도 4 는 복조기(30)의 출력을 설명한 타이밍도이다.
군 카운트 신호는 12심볼 클럭의 군을 카운트하는 카운터의 출력이다. 군 카운트 신호는 12 심볼 클럭이 생성할 시에 1 만큼 증대된다. 이는 세그먼트 동기 신호 및 심볼 클럭 신호의 일치에 의해 0 으로 리셋된다. 세그먼트마다 828 심볼이 있고, 828/12=69 이기 때문에, 군 카운트 신호는 각 데이터 세그먼트 동안에 0 에서 68까지 순환한다. 따라서, 군 카운트 신호 출력은 카운트 0,1, ... 68, 0, 1 ...을 순환한다. 신호는 RESET 1 신호의 12 심볼 클럭 지연된 버전이다. 바이트 클럭 신호는 4 심볼 클럭마다 발생된다. 도 5 는 콘트롤러(34)의 출력을 설명한 타이밍도이다.
군 카운트 신호는 12심볼 클럭의 군을 카운트하는 카운터의 출력이다. 군 카운트 신호는 12 심볼 클럭이 생성할 시에 1 만큼 증대된다. 이는 세그먼트 동기 신호 및 심볼 클럭 신호의 일치에 의해 0 으로 리셋된다. 세그먼트마다 828 심볼이 있고, 828/12=69 이기 때문에, 군 카운트 신호는 각 데이터 세그먼트 동안에 0 에서 68까지 순환한다. 따라서, 군 카운트 신호 출력은 카운트 0, 1, ... 68, 0, 1 ... 을 순환한다. 신호는 RESET 1 신호의 12 심볼 클럭 지연된 버전이다. 바이트 클럭 신호는 4 심볼 클럭마다 발생된다. 도 5 는 콘트롤러(34)의 출력을 설명한 타이밍도이다.
세그먼트 카운트 신호, 군 카운트 신호, 심볼 클럭 신호 및 RESET 1 신호는 어드레스를 제 1 메모리(32)에 공급하는 제 1 어드레스 생성기(36)에 공급된다. 따라서, 상기 세그먼트 카운트 신호, 군 카운트 신호, 심볼 클럭 신호 및 RESET 1 신호에 응답하여, 어드레스 생성기(36)는 디-로테이트 및 인터리브된 데이터의 군을 제 1 메모리(32)에서 판독하여, 판독된 데이터 군을 대체하도록 로테이트 및 인터리브된 데이터군을 제 1 메모리(32)내에 기록한다.
데이터 군이 12개의 데이터 심볼을 포함하고, 각 데이터 심볼이 정보의 2 비트를 나타내는 상기 예에서, 제 1 메모리(32)는 12 심볼 메모리이다. 따라서, 세그먼트 카운트 신호, 군 카운트 신호, 심볼 클럭 신호 및 RESET 1 신호에 응답하여, 어드레스 생성기(36)는 12개의 디-로테이트 및 인터리브된 데이터를 제 1 메모리(32)에서 판독하여, 판독된 12개의 데이터 심볼을 대체하도록 12개의 로테이트 및 인터리브된 데이터 심볼을 제 1 메모리(32)내에 기록한다. 특히, 제 1 심볼 클럭 펄스에 응답하여, 어드레스 생성기(36)는 제 1 데이터 심볼을 제 1 메모리(32)의 제 1 저장 장소에서 판독하여, 판독된 제 1 데이터 심볼을 대체하도록 데이터 심볼을 제 1 메모리(32)의 제 1 저장 장소내에 기록한다. 제 2 심볼 클럭 펄스에 응답하여, 어드레스 생성기(36)는 1 만큼 그의 출력 어드레스를 증대시키고, 제 2 데이터 심볼을 제 1 메모리(32)의 제 2 저장 장소에서 판독하여, 판독된 제 2 데이터 심볼을 대체하도록 데이터 심볼을 제 1 메모리(32)의 제 2 저장 장소내에 기록한다. 이는 군내의 모든 12개의 데이터 심볼이 판독되어 대체될 때까지 수행한다. 제 1 어드레스 생성기(36)에 의해 제 1 메모리(32)에 공급된 어드레스는 제 1 메모리(32)내에 저장되는 로테이트된 데이터 심볼을 디-로테이트하도록 배치된다. 제 1 메모리(32)내에 저장되는 로테이트된 데이터의 디-로테이션은 도 6 을 참조로 더욱 상세히 설명된다.
따라서, 제 1 메모리(32)의 출력에서 공급된 데이터는 디-로테이트되지만, 여전히 인터리브된다. 상기 디-로테이트되지만 인터리브된 데이터는 제 2 메모리로, 여기에서는 48심볼 메모리(38)로 공급된다. 이하에서, 상기 제 2 메모리(38)는 상기 제 2 메모리(38) 또는 상기 48심볼 메모리(38)로 지칭된다. 상기 디-로테이트되고 인터리브된 데이터를 디-인터리브하도록 상기 제 2 메모리(38) 및 제 2 어드레스 생성기(40)가 제공된다. 복조기(30)로부터의 심볼 클럭 신호 및, 콘트롤러(34)로 부터의 RESET 2 신호는 어드레스 생성기(40)에 제공된다. 심볼 클럭 신호에 응답하여, 제 2 어드레스 생성기(40)는 제 2 메모리(38)에 대한 어드레스 생성기(40)는 제 2 메모리(38)에 대한 어드레스를 생성시킴으로써, 각 어드레스는 제 2 메모리(38)의 대응 저장 장소내에 저장된 데이터 심볼중의 하나가 판독되게 하고, 제 1 메모리(32)로 부터의 데이터 심볼이 바로 앞서 판독된 데이터 심볼을 대체하도록 제 2 메모리(38)의 저장 장소내로 기록되게 한다. 제 2 어드레스 생성기(40)에 의해 생성된 어드레스에 의해, 상기 제 2 메모리(38)에 저장된 디-로테이트되지만 인터리브된 데이터는 디-로테이트 및 디-인터리브된 데이터로서 판독된다. 이런 디-로테이트 및 디-인터리브된 데이터는 직렬-병렬 변환기(42)에 공급되는 데, 상기 변환기(42)는 제 2 메모리(38)로 부터 각 2 비트 데이터 심볼을 수신하고, 콘트롤러(34)로 부터의 바이트 클럭에 응답하여 4개의 데이터 심볼의 비트를 8 병렬 비트의 바이트로 변환시킨다.
도 6 은 오프셋 생성기(52)에 의해 생성될 수 있는 오프셋의 일례를 제공한다. 이런 오프셋은 전송기에 의해 구현되는 아래의 로테이션 프로토콜(전술된 ATSC 디지털 텔레비젼 표준 규격 참조)에 기초를 두고 있다. (i) 4개의 세그먼트의 각 세트의 제 1 세그먼트내의 데이터 심볼은 로테이트되지 않는다. (ii) 4개의 세그먼트의 각 세트내의 제 2 세그먼트의 군 0, 1 및 2 의 데이터 심볼은 8 에 의해 로테이트되고, 이런 세그먼트내의 데이터 심볼의 다른 군은 로테이트되지 않는다. (iii) 4개의 세그먼트의 각 세트내의 제 3 세그먼트의 군 0 및 1 의 데이터 심볼은 8 에 의해 로테이트되고, 이런 세그먼트내의 데이터의 다른 군의 데이터 심볼은 로테이트되지 않는다. (iv) 4개의 세그먼트의 각 세트의 제 4 세그먼트의 군 0 의 데이터 심볼은 8 에 의해 로테이트되고, 이런 세그먼트의 데이터의 다른 군의 데이터 심볼은 로테이트되지 않는다. 따라서, 로테이션 프로토콜은 4개의 세그먼트마다 반복되고, 어떤 세그먼트내의 데이터의 어떤 군만이 로테이트된다.
따라서,(0 의 세그먼트 카운트에 대응하는) 4개의 세그먼트의 각 세트내의 제 1 세그먼트가 로테이트되지 않기 때문에, 오프셋 생성기(52)는 4개의 세그먼트의 각 세트내의 제 1 세그먼트에 0 의 출력 오프셋을 제공한다. 이런 0 의 출력 오프셋은 모듈로 12 가산기(54)에 의해 어드레스 카운터(50)로 부터 12 출력 카운트로 가산되어, 12 어드레스를 생성시켜, 제 1 메모리(32)로 부터 12 개의 데이터 심볼을 판독하고, 제 1 메모리(32)에 12개의 신규 데이터 심볼을 기록한다.
세그먼트 카운트가 1 이고, 군 카운트가 0 일 시(즉, 12개의 데이터 심볼의 제 1군이 4개의 세그먼트의 각 세트의 제 2 세그먼트내에 있고, 8에 의해 로테이트될시), 오프셋 생성기(52)는 0 의 출력 오프셋을 제공한다. 이런 0 의 출력 오프셋은 모듈로 12 가산기(54)에 의해 어드레스 카운터(50)로 부터 12 출력 카운트로 가산되어, 12 어드레스를 생성시켜, 제 1 메모리(32)로 부터 12 개의 데이터 심볼을 판독한다. 세그먼트 카운트가 1 이고, 군 카운트가 1일시(즉, 12개의 데이터 심볼의 제 2 군이 4개의 세그먼트의 각 세트의 제 2 세그먼트내에 있고, 8에 의해 로테이트될 시), 오프셋 생성기(52)는 8 의 출력 오프셋을 제공한다. 이런 8 의 출력 오프셋은 모듈로 12 가산기(54)에 의해 모듈로 12 형식으로 어드레스 카운터(50)로 부터 12 출력 카운트로 가산되어, 12 어드레스를 생성시켜, 제 1 메모리(32)로 부터 12 개의 데이터 심볼을 판독한다. 세그먼트 카운트가 1이고, 군 카운트가 2일시(즉, 12개의 데이터 심볼의 제 3 군이 4개의 세그먼트의 각 세트의 제 2 세그먼트내에 있고, 8 에 의해 로테이트될 시), 오프셋 생성기는 4의 출력 오프셋을 제공하며, 이런 4의 출력 오프셋은 모듈로 12 가산기(54)에 의해 모듈로 12 형식으로어드레스 카운터(50)로 부터 12 출력 카운트로 가산되어, 12 어드레스를 생성시켜, 제 1 메모리(32)로 부터 12개의 데이터 심볼을 판독한다. 세그먼트 카운트가 1이고, 군 카운트가 3 내지 68 일시에, 오프셋 생성기는 0 의 출력 오프셋을 제공하며, 이런 0 의 출력 오프셋은 모듈로 12 가산기(54)에 의해 모듈로 12 형식으로 어드레스 카운터(50)로 부터 12 출력 카운트 세트로 가산되어, 12 어드레스의 대응세트를 생성시켜, 제 1 메모리(32)로 부터 12 개의 데이터 심볼의 대응 세트를 판독한다.
세그먼트 카운트가 2이고, 군 카운트가 0일 시(즉, 12개의 데이터 심볼의 제 1 군이 4개의 세그먼트의 각 세트의 제 3 세그먼트내에 있을 시), 오프셋 생성기(52)는 0 의 출력 오프셋을 제공하며, 이런 0 의 출력 오프셋은 모듈로 12 가산기(54)에 의해 어드레스 카운터(50)로 부터 12 출력 카운트로 가산되어, 12 어드레스를 생성시켜, 제 1 메모리(32)로 부터 12 개의 데이터 심볼을 판독한다. 세그먼트 카운트가 2이고, 군 카운트가 1일 시(즉, 12개의 데이터 심볼의 제 2 군이 4개의 세그먼트의 각 세트의 제 2 세그먼트내에 있을 시), 오프셋 생성기(52)는 8 의 출력 오프셋을 제공하며, 이런 8 의 출력 오프셋은 모듈로 12 가산기(54)에 의해 모듈로 12형식으로 어드레스 카운터(50)로 부터 12 출력 카운트로 가산되어, 12 어드레스를 생성시켜, 제 1 메모리(32)로 부터 12개의 데이터 심볼을 판독한다. 세그먼트 카운트가 2 이고, 군 카운트가 2 내지 68일시에, 오프셋 생성기는 4 의 출력 오프셋을 제공하며, 이런 4의 출력 오프셋은 모듈로 12 가산기(54)에 의해 모듈로 12 형식으로 어드레스 카운터(50)로 부터 12 출력 카운트의 세트로 가산되어,12 어드레스의 대응세트를 생성시켜, 제 1 메모리(32)로 부터 12 개의 데이터 심볼의 대응 세트를 판독한다. 세그먼트 카운트가 3이고, 군 카운트가 0일 시(즉, 12개의 데이터 심볼의 제 1 군이 4개의 세그먼트의 각 세트의 제 4 세그먼트내에 있을 시), 오프셋 생성기(52)는 4의 출력 오프셋을 제공하며, 이런 4의 출력 오프셋은 모듈로 12 가산기(54)에 의해 어드레스 카운터(50)로 부터 12 출력 카운트로 가산되어, 12 어드레스를 생성시켜, 제 1 메모리(32)로 부터 12개의 데이터 심볼을 판독한다. 세그먼트 카운트가 3이고, 군 카운트가 1 내지 68일 시에, 오프셋 생성기는 0 의 출력 오프셋을 제공하며, 이런 0 의 출력 오프셋은 모듈로 12 가산기(54)에 의해 어드레스 카운터(50)로 부터 12 출력 카운트의 세트로 가산되어, 12 어드레스의 대응세트를 생성시켜, 제 1 메모리(32)로 부터 12개의 데이터 심볼의 대응 세트를 판독한다.
도 7 은 어드레스 생성기(36)가 복조기(30)로 부터 로테이트 및 인터리브된 데이터를 디-로테이트하도록 제 1 메모리(32)와 협력하여 동작하는 방법의 일례를 설명한 것이다. 세그먼트 0 의 최종 군의 데이터가 제 1 메모리(32)내에 저장되었을 시에, 이런 데이터는 행(60)으로 도시된 데이터 배열로 제 1 메모리(32)의 저장 장소내에 저장된다. 이런 데이터는 로테이트되지 않는다. 행(62)은 현재 복조기(30)에 의해 수신되는 세그먼트 1 의 데이터의 제 1 군을 포함한다. 이런 데이터가 행(62)에 의해 표시된 바와 같이 8 로 로테이트된다. 세그먼트 카운트가 1이고, 군 카운트가 이때에 0 이기 때문에, 오프셋 생성기(52)에 의해 모듈로 12 가산기(54)에 인가되는 오프셋은 0 이다. 따라서, 모듈로 12 가산기(54)에 의해 제공된 어드레스는 어드레스 카운터(50)에 의해 공급된 출력 카운트의 배열로 있다.
따라서, 모듈로 12 가산기(54)는 0 의 어드레스를 메모리(32)에 공급하여, 제 1 메모리(32)의 저장 장소 O 으로 부터 행(60)의 데이터 심볼 A 을 판독하고, 행(62)의 데이터 심볼 E 을 제 1 메모리(32)의 저장 장소 0 에 기록한다. 그 다음, 모듈로 12 가산기(54)는 1 의 어드레스를 메모리(32)에 공급하여, 제 1 메모리(32)의 저장장소 1 로 부터 행(60)의 데이터 심볼(B)을 판독하고, 행(62)의 데이터 심볼 F 을 제 1 메모리(32)의 저장 장소 1 내로 기록한다. 모듈 12 가산기(54)에 의해 공급된 어드레스는 7 까지 순차적으로 증가시킴으로써, 행(60)의 데이터 심볼은 제 1 메모리(32)에서 판독되어, 행(62)의 대응 데이터 심볼로 대체된다. 결과적으로 행(62)이 제 1 메모리(32)내에 기록되었을 시에 제 1 메모리(32)의 내용물을 표시한다.
이런 점에서, 세그먼트 카운트는 1 이고, 군 카운트는 1 로 증가하며, 행(66)에서 도시된 바와 같이, 데이터 심볼의 다음 군은 복조기(30)에 의해 수신된다. 이런 데이터가 수신될 시에, 오프셋 생성기(52)는 모듈로 12 가산기(54)에 공급되는 8 의 오프셋을 생성시킨다. 따라서, 모듈로 12 가산기(54)는 8의 어드레스를 생성시키도록 어드레스 카운터(50)로 부터 8의 오프셋을 0 의 제 1 출력 카운트에 가산한다. 8 의 어드레스에 응답하여, 제 1 메모리(32)의 저장 장소 8 에서 저장된 데이터 심볼 A(행(64) 참조)은 판독되어, 군 1 의 제 1 수신된 데이터 심볼, 즉 행(66)의 데이터 심볼 E 로 대체된다. 마찬가지로, 데이터 심볼 B 은 판독되어, 어드레스가 9 (8 의 오프셋 플러스 1 의 카운트)일 시에 데이터 심볼 F 로 대체되고, 데이터 심볼 C 는 판독되어, 어드레스가 10 (8의 오프셋 플러스 2 의 카운트)일 시에 데이터 심볼 G 로 대체되며, 데이터 심볼 D 는 판독되어, 어드레스가 11(8의 오프셋 플러스 3 의 카운트)일 시에 데이터 심볼 H 로 대체되며, 데이터 심볼 E 는 판독되어, 어드레스가 0(8의 오프셋 플러스, 모듈로 12 연산에 후행하여 0 의 어드레스를 생성시키는 4의 카운트)일 시에 데이터 심볼 I 로 대체되며, 그리고 등등 임으로써, 도 7 의 행(68)은 제 1 메모리(32)의 저장 장소 0 내지 11 내에 저장된 데이터 심볼을 나타낸다.
행(70)은 세그먼트 카운트가 1 이고, 군 카운트가 2일 시에 수신되는 데이터의 다음 군을 나타낸다. 세그먼트 카운트가 1 이고, 군 카운트가 2 일시에, 오프셋 생성기(52)는 4의 오프셋을 생성시킨다. 이런 4 의 오프셋은 모듈로 12 가산기(54)에 의해 어드레스 카운터(50)에 의해 공급된 출력 카운트에 가산되어, 제 1 메모리(32)에 대한 어드레스를 생성시킨다. 행(70)의 데이터가 수신될 시에, 모듈로 12 가산기(54)는 4의 어드레스를 생성시키도록 어드레스 카운터(50)로 부터 4의 오프셋을 0 의 제 1 출력 카운트에 가산한다. 4의 어드레스에 응답하여, 제 1메모리(32)의 저장 장소 4 에서 저장된 데이터 심볼 A(행 (68) 참조)은 판독되어, 군 2 의 제 1 수신된 데이터 심볼, 즉 행(70)의 데이터 심볼 E 로 대체된다. 마찬가지로, 데이터 심볼 B 은 판독되어, 어드레스가 5 (4의 오프셋 플러스 1 의 카운트)일 시에 데이터 심볼 F 로 대체되고, 데이터 심볼 C 는 판독되어, 어드레스가 6(4의 오프셋 플러스 2 의 카운트)일 시에 데이터 심볼 G 로 대체되며, 데이터 심볼 D 는 판독되어, 어드레스가 7 (4의 오프셋 플러스 3 의 카운트)일 시에 데이터심볼 H 로대체되며, 데이터 심볼 E 는 판독되어, 어드레스가 8(4의 시드 플러스 4의 카운트)일시에 데이터 심볼 I 로 대체되며, 그리고 등등 임으로써, 도 7 의 행(72)은 제 1 메모리(32)의 저장 장소 0 내지 11 내에 저장된 데이터 심볼을 나타낸다.
행(74)은 세그먼트 1, 군 3 데이터가 로테이트되지 않음을 나타낸 것이다. 따라서, 0 의 오프셋으로, 행(72)에 의해 도시된 바와 같이 제 1 메모리(32)의 내용물은 행(74)에 도시되는 수신된 데이터 심볼로 대체됨으로써, 메모리(32)의 내용물은 세그먼트 1, 군 3 데이터가 제 1 메모리(32)내에 완전히 저장된 후에 행(72)에 도시된 바와 같다.
데이터가 제 1 메모리(32)에서 판독될 시에, 데이터는 디-로테이트되지만, 여전히 인터리브되어 있다. 이와 같이 디-로테이트되지만, 인터리브된 데이터는 제 2 메모리(38) 및 제 2 어드레스 생성기(40)에 의해 처리되어, 디-로테이트되지만 인터리브된 데이터를 디-인터리브한다. 데이터의 각 바이트의 데이터 심볼이 데이터의 다른 11 바이트이 대응 데이터 심볼로 인터리브되고, 바이트마다 4개의 심볼이 있기 때문에, 제 2 메모리(38)는 48 심볼 메모리이다.
데이터가 제 1 메모리(32)에서 판독될 시에, 데이터는 디-로테이트되지만, 여전히 인터리브되어 있다. 이와 같이 디-로테이트되지만, 인터리브된 데이터는 제 2 메모리(38) 및 제 2 어드레스 생성기(40)에 의해 처리되어, 디-로테이트되지만 인터리브된 데이터를 디-인터리브한다. 데이터의 각 바이트의 데이터 심볼이 데이터의 다른 11 바이트가 대응 데이터 심볼로 인터리브되고, 바이트마다 4개의 심볼이 있기 때문에, 제 2 메모리(38)는 48 심볼 메모리이다.
어드레스 생성기(40)의 제 1 실시예는 도 8 에서 설명된다. 이런 어드레스 생성기는 심볼 클럭으로 부터 48의 각 카운트상에 캐리(carry) 출력을 제공하는 48 분할 카운터(80)를 포함한다. 48 분할 카운터(80)로부터의 캐리 출력은 시드 생성기(82)에 공급되고, 시드 생성기(82)는 시드를 가산기(84)의 제 1 입력에 공급한다. 가산기(84)의 출력은 가산기(84)의 출력상에서 모듈로 47 연산을 수행하는 모듈로 47 연산자(86)에 공급된다. 모듈로 47 연산자(86)의 출력은 심볼 클럭의 제어하에 모듈로 47 연산자(86)의 출력을 래치하는 래치(88)에 접속된다. 래치(88)의 출력은 제 2 메모리(38)에 어드레스를 제공하고, 또한 가산기(84)의 제 2 입력으로 피드백된다.
이런 데이터 블록을 디인터리브하기 위하여서는 제 2 메모리(38)내로 기록되는 배열과 다른 배열로 제 2 메모리(38)에서 판독되어야 한다. 그래서, 48 심볼의 다음 블록이 한번에 한 심볼이 수신될 시에, 제 1 블록의 심볼은 제 2 메모리(38)에서 판독되어, 제 2 블록에서 바로 앞서 수신된 대응 심볼로 대체된다. 제 1 블록을 디인터리브하기 위하여서는 M1(n)=0, 12, 24, 36, 1, 13, ... 35, 47 이어야 한다. 이런 어드레스에 따른 심볼의 제 1 블록의 디인터리빙으로 제 2 블록이 기록된 제 1블록과 다른 배열로 제 2 메모리(38)내에 기록된다. 그래서, 제 2 블록을 디인터리브하기 위하여(동시에 제 3 블록을 제 2 메모리(38)에 기록함), M1(n)과 다른 신규 어드레싱 시퀀스 M2(n)는 생성된다. 이런 프로세스는 일련의 어드레싱 시퀀스를 통해 계속하여, 심볼의 블록은 연속적으로 수신하고, 디인터리브한다.
제 1 맵핑 시퀀스가 M0(n)=0, 1, 2, 3, 4 ... 47 일 경우, M1(n)은 M1(n)= M0((n·R)mod(N-1)) for n=O....N-1. (1)로서 기록될 수 있다.
제 1 맵핑 시퀀스가 M0(n)=0, 1, 2, 3, 4 ... 47 일 경우, M1(n)은M1(n)= M0((n·R) mod(N-1)) for n=0....N-1.(1)로서 기록될 수 있다.
마찬가지로, 어느 시퀀스의 맵핑은 아래식에 따라 이전의 맵핑으로 부터 생성된다.
Mi(n)= Mi-1((n·R)mod(N-1)) for n=0,1,2....N-1. (2)
등가적으로, 유도하여, 이런 맵핑 함수는 아래와 같이 초기(i=0) 시퀀스를 이용하여 제 i 시퀀스내에 제 n 엔트리를 표현하도록 일반화되어 있다.
Mi(n)= M0((n·Ri)mod(N-1)) for n=0,1,2....N-1. (3)
초기 시퀀스가 M0(n)=n 일 경우, 식(3)은 아래와 같이 간략화될 수 있다.
Mi(n)= M0(n·Ri)mod(N-1)) for n=0,1,2....N-1. (4)
Mi(n)= (n·Ri) mod(N-1) for n=0,1,2....N-1.(4)
Mi(n)= (Mi-1(n)·R)mod(N-1)) for n=O,1,2....N-1.(5)
식(4)은 입력 데이터를 한 블록에서 다음 블록까지 디인터리브할 필요가 있는 모든 어드레싱 시퀀스를 기술하고 있다. 식(4)이 초기 시퀀스로 복귀하기 전에 산출하는 유한수의 서로 다른 어드레싱 시퀀스가 있다. 이런 유한수의 시퀀스는 R 및 C 값(또는 등가적으로 R 및 N 값)에 의존한다. 따라서, L 이 아래와 같이 되도록 최소수인 L 고유 맵핑이 있다.
(RL) mod(N-1)) 1 for L not 0. (6)
(RL) mod(N-1)= 1 for L not 0. (6)
Mi(n)=0 for n=0 (7)
Mi(n)= Mi(n+l)+Ri) mod(N-1)) for n=1,2....N-1.
Mi(n)= (Mi(n+1) + Ri) mod(N-1) for n=1,2....N-1.
식(7)은 어드레스 생성기(40)를 기초로하여 요구된 반복 어드레스 시퀀스를 생성시킨다. 또한, 식(6)을 실시하는 시드 생성기는 필요로 하여, 각 어드레스 시퀀스에 대한 시드를 생성시킨다.
시드 생성기(82)에 의해 생성되는 시드는 식(6)에 의해 주어지는데, 여기서 L 은 본 특허원에서 주어진 예에서 0 에서 22까지 변한다. 이런 시드는 아래와 같은, 즉 1, 12, 3, 36, 9, 14, 27, 42, 34, 32, 8, 2, 24, 6, 25, 18, 28, 7, 37, 21, 17, 16, 및 4 로 이루어진다. 각각의 48 심볼 클럭 펄스상에서 시드 생성기(82)는 이런 시드의 대응하는 하나를 가산기(84)에 공급하는데, 이런 가산기(84)는 각 심볼 클럭 펄스상에서 시드를 래치(88)의 출력에 가산한다. 모듈로 47 연산자(86)는 가산기(84)의 출력상에서 모듈로 47 연산(>47일 경우, 47 감산)을 수행하여, 그 결과치를 래치(88)에 공급한다. 래치(88)는 이런 결과치를 래치하여, 이런 래치된 결과치를 어드레스로서 제 2 메모리(38)에 공급한다. 이런 식으로, 48 어드레스의 고유시퀀스는 시드 생성기(82)에 의해 생성된 각 시드를 위해 산출된다.
제 1 메모리(32)에서 일어나는 프로세싱이 정확히 12 심볼 클럭을 취하기 때문에 어드레스 생성기(40)는 RESET 2 및 심볼 클럭에 의해 구동된다. 제 1메모리(32)를 통과하는 심볼이 12 심볼 클럭에 의해 지연되기 때문에, RESET 2 는 제 1 메모리(32)로 부터 출력될 시에 프레임의 제 1 심볼과 정확히 라인 업(line up)한다. 도 11a 및 11b 의 타이밍도는 8 VSB 신호를 최근 획득한 것으로 추정하기 때문에, 카운터(80)의 초기값, 카운터(80)의 캐리 출력, 시드 생성기(82) 및 래치(88)는 알려져 있지 않다. RESET 2 및 제 1 심볼 클럭은 카운터(80)가 0 으로 초기화하게 하여, 차례로 캐리 출력이 저(low)이제 한다. RESET 2 는 또한 시드생성기(82)가 제 1 시드(1)를 출력하게 한다. RESET 2 및 제 1 심볼 클럭은 또한 래치(88)의출력이 동기적으로 0 으로 클리어하게 한다. 다음 심볼 클럭은 카운터(80)가 증대 하게 한다.
카운터(80)가 카운트=47 에 도달할 시에, 이는 카운터(80)가 시드 생성기(82)가 다음 순차 시드(12)를 출력시키는 캐리 신호를 출력시킨다. 이런 캐리 신호는 또한 래치(88)가 다음 심볼 클럭에서 동기적으로 클리어하게 한다. 따라서, 카운터(80)로 부터의 캐리 신호는 시드 생성기(82)가 23 시드의 시퀀스를 통해 반복적으로 순환하게 한다. 따라서, 각 시드는 48 심볼 클럭의 지속 시간을 갖는다. 그래서, 23시드의 전 시퀀스는 23 x 48 = 1104 심볼을 에워싸고 있다. 한 프레임내에는 258336 데이터 심볼이 있기 때문에, 23 시드의 시퀀스는 각 프레임내에서 정확히 234 배(234 x 1104 = 258336)를 생성시킨다. 그래서, (도 11a 및 11b 의 타이밍도에서 RESET 2 펄스 #2 로 표시되는) 신규 프레임의 시점은 항상 제 1 시드(1)와 함께 라인 업한다. 이런 배열은 8 VSB 신호를 획득한 후에(전술된 바와 같이 프레임동기 신호로 부터 유도된) 제 1 RESET 2 신호의 사용으로 다음 RESET 2신호(프레임마다 하나)의 효과에 관계없이 시드 생성기(82)를 1 의 출력으로 초기화하는 잇점을 가지고 있는데, 그 이유는 이런 신호가 시드 생성기(82)가 1 의 출력을 가질시의 시점과 항상 일치하기 때문이다.
신호를 획득한 후에 초기화했을 경우에 시드의 시퀀스는 브레이크(break)되지 않는다. 이는 정확히 연속적인 디인터리버 연산에 필요하다. 타이밍도는 또한 요구된 Mi(n)에 대응하는 래치 88 출력을 도시한 것이다. RESET 2 펄스 # 1 후에 일어나는 M0(n), M1(n) 및 M2(n)의 부가 설명된다. 이런 시퀀스는 제 1 프레임 M22(n)의 끝에서 리셋 2 필스 # 2 바로 전에 생길 때까지 다수의 MI(n)번 순환하는 것으로 추정된다. 제 2 프레임은 기대되는 바와 같이 M0(n)으로 개시한다.
디-인터리빙 연산은 도 6 및 7 에 대해 설명된 디-로테이팅 연산과 유사하다. 즉,데이터 심볼이 제 2 메모리(38)내의 저장 장소로 부터 판독될 시에, 제 2 어드레스생성기(40)에 의해 결정되는 바와 같이, 상기 데이터 심볼은 제 1 메모리(32)로 부터 수신되는 다음 데이터 심볼로 대체된다. 따라서, 심볼 클럭이 48로의 분할 카운터(80)로 하여금 47 의 카운트에 도달하게 할 시에, 카운터(80)는 시드 생성기(82)및 (OR 게이트(89)를 통한) 래치(88)에 공급되는 캐리 신호를 출력시킨다. 이런 캐리 출력은 시드 생성기(82)가 신규 시드를 가산기(84)에 공급하게 한다. 이런 캐리출력은 또한(다음 심볼 클럭에서) 래치(88)를 클리어시키기 때문에 그의 출력은 0이다. 래치 출력은 또한 가산기(84)의 제 2 입력에 재공급된다.
도 10 에 도시된 각 23 시퀀스에 대하여, 가산기(84)는 (각 시퀀스에서의 제1 어드레스를 나타내는) 래치(88)의 0 출력을 시드 생성기(82)에 의해 공급된 시드에 가산한다. 이런 가산기(84)의 출력은 모듈로 47 연산으로 제어되고, 그 결과는 래치(88)의 입력에 공급된다. 다음 심볼 클럭은 래치(88)가 모듈로 47 연산자(86)의 상기 결과를 제 2 메모리(38)에 공급하게 한다. 이런 래치(88)의 출력은 시드 생성기(82)로 부터 시드에 가산되도록 가산기(84)로 다시 피드백된다. 따라서, 시드 생성기(82)로 부터의 시드는 그 자체가 모듈로 47 로 순환적으로 가산되어, 제 2 메모리(38)에 공급되는 어드레스의 대응시퀀스를 생성시킨다.
그런 어드레스의 각 시퀀스는 식(7)으로 주어진다. 23 시퀀스의 각 로테이션시, 제1 시퀀스는 항상 0 내지 47 로 배열된다. 또한, 시드 생성기(82)에 의해 공급될 시에 제 1 시퀀스에 대한 시드는 식(6)으로 결정되는 바와 같이 1 이다.
도 12 는 시드 생성기(82)의 제 1 실시예를 더욱 상세히 설명한 것이다. 시드 생성기(82)는 증배기(92), 모듈로 47 연산자(94) 및 래치(96)를 포함한다. 증배기(92)는 래치(96)의 출력을 12 로 증배하고, 모듈로 47 연산자(94)는 가산기(92)의 출력상에서 모듈로 47 연산을 수행하며, 래치(96)는 모듈로 47 연산자(94)의 출력을 래치한다.
RESET 2가 콘트롤러(34)에 의해 생셩될 시에, 래치(96)는 그의 출력 1 이도록 리셋된다. 이런 1 은 가산기(84)에 대한 시드로서 공급된다. 이런 1 은 또한 증배기(92)에 의해 12 로 증배되며, 그 결과치는 모듈로 47 연산자(94)에 의해 연산된다. 모듈로 47 연산자(94)의 출력은 이런 출력을 48 로의 분할 카운터(80)로부터 다음 캐리 출력의 수신을 통해 래치하는 래치(96)에 공급된다. 이런 캐리 출력을 수신함과 동시에, 래치(96)에 공급된다. 이런 캐리 출력을 수신함과 동시에, 래치(96)에 공급된다. 이런 캐리 출력을 수신함과 동시에, 래치(96)로 부터의 12의 출력은 12 x 12 증배하여 모듈로 47 연산자(94)에 의해 연산되는 144 의 출력을산출하는 증배기(92)로 피드백된다. 모듈로 47 연산자의 출력(3)은 이런 출력을 48로의 분할 카운터(80)로 부터 다음 캐리 출력의 수신을 통해 래치하는 래치(96)에공급된다. 이런 캐리 출력을 수신함과 동시에, 래치(96)로 부터의 3 의 출력은 3 x 12 증배하여 모듈로 47 연산자(94)에 의해 연산되는 36 의 출력을 산출하는 증배기(92)로 피드백된다. 모듈로 47 연산자(94)의 출력(즉, 36)은 이런 출력을 48로의 분할 카운터(80)로 부터 다음 캐리 출력의 수신을 통해 래치하는 래치(96)에 공급된다. 이런 캐리 출력을 수신함과 동시에, 래치(96)로 부터의 36 의 출력은 36 x 12 증배하여 432 의 출력을 산출하는 증배기(92)로 피드백된다. 따라서, 시드 생성기(82)는 전술된 23 시드를 생성시킨다.
도 13 은 시드 생성기(82)의 제 2 실시예를 더욱 상세히 설명한 것이다. 이런 시드생성기(82)는 12 곱 및 모듈로 47 연산자(98) 및 래치(100)를 포함한다. 도 14 에 더욱 상세히 도시된 바와 같이 12 곱 및 모듈로 47 연산자(98)는 최하위 2비트가(104)에서 버려진 후에 래치(100)의 출력으로 부터의 최상위 4 비트를 도 15에서 더욱 상세히 도시된 모듈로 47 교정 논리(106)로 부터의 교정 계수에 가산하는 가산기(102)를 포함한다.
도 13 은 시드 생성기(82)의 제 2 실시예를 더욱 상세히 설명한 것이다. 이런 시드 생성기(82)는 12 곱 및 모듈로 47 연산자(98) 및 래치(100)를 포함한다. 도 14 에 더욱 상세히 도시된 바와 같이 12 곱 및 모듈로 47 연산자(98)는 최하위 2 비트가 블록(104)에서 버려진 후에 래치(100)의 출력으로 부터의 최상위 4 비트를 도 15 에서 더욱 상세히 도시된 모듈로 47 교정 논리(106)로 부터의 교정 계수에 가산하는 가산기(102)를 포함한다.
RESET 2가 콘트롤러(34)에 의해 산출될 시에, 래치(100)는 그의 출력 1 이도록 리셋된다. 이런 1 은 가산기(84)에 대한 시드로서 공급된다. 이런 1은 또한 12 로 증배되며, 그 결과치는 12 곱 및 모듈로 47 연산자(98)에 의해 모듈로 47 연산으로 처리된다. 12곱 및 모듈로 47 연산자(98)의 출력은 이런 출력을 48 로의 분할 카운터(80)로 부터 다음 캐리 출력의 수신을 통해 래치하는 래치(100)에 공급된다. 래치로 부터의 12 의 출력은 12 x 12 증배하여 그 결과치(144)가 12곱 및 모듈로 47 연산자(98)에 의해 모듈로 47 연산으로 처리되어, 3의 출력을 산출하는 증배기(100)로 피드백된다. 12곱 및 모듈로 47 연산자(98)의 3의 출력은 이런 출력을 48 분할 카운터(80)로 부터 다음 캐리 출력의 수신을 통해 래치하는 래치(100)에 공급된다. 따라서, 시드 생성기(82)는 전술된 23 시드를 생성시킨다.
12 곱 및 모듈로 47 연산자(98)는 도 14 에서 더욱 상세히 도시된다. 래치(100)의 출력이 1(즉, 000001의 디지털 값)일 시에, 최하위 2 비트(01)는 12 의 출력을 제공하는 모듈로 47 교정 논리(106)에 피드된다. 12의 출력은 가산기(102)에 의해 래치(100)로 부터의 출력의 최상위 4 비트(0000)에 가산되며, 12의 결과치는 래치(100)에 공급된다. 48로의 분할 카운터(80)로 부터 다음 캐리 출력을 수신함과 동시에 래치(100)는 12를 그의 출력으로 래치한다. 래치(100)의 출력이 12(즉, 001100의 디지털 값)일 시에, 최하위 2비트(00)는 0의 출력을 제공하는 모듈로 47 교정논리(106)에 피드된다. 이런 0 의 출력은 가산기(102)에 의해 래치(100)로 부터의 출력의 최상위 4 비트(0011)에 가산되며, 3의 결과치는 래치(102)에 공급된다. 48로의 분할 카운터(80)로 부터 다음 캐리 출력을 수신함과 동시에 래치(100)는 3을 그의 출력으로 래치한다.
본 발명의 어떤 수정에 대하여 전술되었다. 다른 수정은 본 발명의 기술분야에서 실시할 시에 일어난다. 예를 들면, 본 발명이 2 비트 데이터 심볼에 의하여 전술되었지만, 본 발명은 다른 데이터 요소에도 적용하는 것으로 이해된다. 또한, 본 발명은 서로 다른 데이터 프레임 배치 및 서로 다른 로테이션 및/또는 인터리빙프로토콜과 관련하여 이용될 수 있다.
식(4)에 의한 제 2 어드레스 생성기(40)의 제 2 실시예는 도 16 에서 설명된다. 이런 제 2 실시예는 심볼 클럭 펄스를 카운트하여, 각 카운트상의 출력을 증배기(114)에 공급하는 카운터(112)를 포함한다. 카운터(112)의 캐리 출력은 상태 머신 또는 RAM 일 수 있거나, 시드 생성기(82)와 유사한 시드 생성기(116)에 공급된다. 시드 생성기(116)는 23 상태를 통해 카운터(112)로 부터의 캐리 출력에 의해 토글되어, 식(6)에 의해 결정되는 바와 같이 각 토글상에 대응 시드를 공급한다. 증배기(114)는 시드 생성기(116)에 의해 제공된 시드만큼 카운터(112)로 부터의 출력 카운트를 증배하여, 그 결과치를 모듈로 47 연산자(118)에 공급한다. 모듈로 47 연산자의 출력은 래치(120)의 입력에 공급된다. 래치(120)의 출력은 카운터(112)로 부터의 캐리 출력에 의해 0 으로 리셋된다. 따라서, 각 어드레스 시퀀스의 시점에서, 래치(120)의 출력은 항상 각 어드레스 시퀀스의 제 1 어드레스인 0 과 동일하다. 각 어드레스 시퀀스의 끝에(즉, 제 48 카운트), 시드 생성기(116)는 신규 시드를 증배기(114)에 공급하도록 토글된다.
실시예 누락
산업상 이용가능성 누락

Claims (17)

  1. 제 1 블록 순서(block order)에서 제 2 블록 순서로 블록 배열된 제 1 및 제 2군의 데이터 요소들을 재배열하는 장치에 있어서, 상기 장치는:
    다수의 저장 장소들을 구비하고, 제 2군의 데이터 요소들에 의해 대체되어지는 상기 제 1 군의 데이터 요소들이 저장되는 메모리와;
    어드레스들을 생성하고, 상기 어드레스들을 상기 메모리로 공급하여, 각 어드레스가 상기 메모리에 수신될 때, 상기 제 1군의 데이터 요소들 중의 제 1 데이터 요소가 제 1 저장 장소로부터 판독되도록 하고, 상기 제 1 군의 데이터 요소들로부터의 제 2 데이터 요소가 제 2 저장 장소로부터 판독되기 이전에, 상기 제 2군의 데이터 요소들 중의 하나의 데이터 요소가 상기 제 1 저장 장소로 기록되도록 하는 어드레스 생성기를 구비하고, 그럼으로써 제 1 군의 데이터 요소들이 상기 제 2 블록 순서로 상기 메모리로부터 판독되는 것을 특징으로 하는 데이터 요소 재배열 장치.
  2. 제 1 항에 있어서,
    상기 어드레스 생성기는 제 1 군 및 제 2 군의 데이터 요소들 중의 데이터 요소들을 디-로테이트하도록 어드레스를 메모리에 공급하기 위해 배치되는 것을 특징으로 하는 데이터 요소 재배열 장치.
  3. 제 1 항에 있어서,
    상기 어드레스 생성기는 제 1 군 및 제 2 군의 데이터 요소들의 데이터 요소들을 디-인터리브하도록 어드레스를 메모리에 공급하기 위해 배치되는 것을 특징으로 하는 데이터 요소 재배열 장치.
  4. 제 1 항에 있어서,
    상기 메모리는 제 1 메모리이고, 상기 어드레스 생성기는 제 1 어드레스 생성기이고, 상기 장치는 제 2 메모리와 제 2 어드레스 생성기를 추가적으로 구비하고, 상기 제 1 메모리는 제 1 및 제 2 저장 장소들을 포함하고, 상기 제 1 어드레스 생성기는 실질적으로 상기 제 1 메모리로 어드레스들을 공급만하고, 상기 제 2 어드레스 생성기는 실질적으로 상기 제 2 메모리로 어드레스들을 공급만하고, 그럼으로써 데이터 요소들이 디-로데이트되고 인터리브된 데이터 요소들로서 상기 제 1 메모리로부터 판독되고, 상기 디-로테이트되고 인터리브된 데이터 요소들은 상기 제 2 메모리에 저장되고, 상기 데이터 요소들은 디-로테이트되고 디-인터리브된 데이터 요소들로서 상기 제 2 메모리로부터 판독되는 것을 특징으로 하는 데이터 요소 재배열 장치.
  5. 제 1 항에 있어서,
    상기 제 1 군 및 제 2 군 각각은 D개의 데이터 요소를 포함하고, 메모리는 실질적으로 한번에 D개 데이터 요소를 저장하는 것을 특징으로 하는 데이터 요소 재배열 장치.
  6. 제 5 항에 있어서,
    상기 제 1 및 2 군의 데이터 요소들의 각 데이터 요소는 상기 장치에 의해 수신될 시에 로테이트되고, 어드레스 생성기는,
    0 에서 D-1 까지 카운트하고, 0 에서 D-1까지의 대응 출력 카운트를 제공하며, D-1 의 카운트에 도달한 후에 리셋하는 어드레스 카운트 수단,
    오프셋이 D개의 데이터 요소의 로테이션 범위에 의존하는 오프셋을 생성시키는 오프셋 생성 수단과,
    어드레스를 생성시키도록 오프셋과 출력 카운트를 조합하는 조합 수단을 포함하는 것을 특징으로 하는 데이터 요소 재배열 장치.
  7. 제 6 항에 있어서,
    상기 오프셋은 D개의 데이터 요소의 군에 의존하는 것을 특징으로 하는 데이터 요소 재배열 장치.
  8. 제 7 항에 있어서,
    상기 데이터 요소는 S개의 세그먼트내에 배치되고, 데이터 요소의 각 S개의 세그먼트는 데이터 요소의 G개의 데이터 요소군들로 구성되며, 상기 G개의 데이터 요소군들은 제 1 군 및 제 2 군의 데이터 요소들을 포함하며, 오프셋은 데이터 요소의 세그먼트에 의존하는 것을 특징으로 하는 데이터 요소 재배열 장치.
  9. 제 8 항에 있어서,
    상기 오프셋 생성 수단은 제 1 의 S개의 세그먼트에 대한 0 의 오프셋을 생성시키고, 오프셋 생성수단은 제 2 의 S개의 세그먼트의 제 1 군에 대한 0 의 오프셋을 생성시키며, 오프셋 생성 수단은 제 2 의 S개의 세그먼트의 제 2 군에 대한 8 의 오프셋을 생성시키며, 오프셋 생성 수단은 제 2 의 S개의 세그먼트의 제 3군에 대한 4 의 오프셋을 생성시키며, 오프셋 생성 수단은 제 2 의 S개의 세그먼트의 어느 잔여 군에 대한 0 의 오프셋을 생성시키며, 오프셋 생성수단은 제 3 의 S개의 세그먼트의 제 1 군에 대한 0 의 오프셋을 생성시키며, 오프셋 생성수단은 제 3 의 S개의 세그먼트의 제 2 군에 대한 8 의 오프셋을 생성시키고, 오프셋 생성수단은 제 3 의 S개의 세그먼트의 어느 잔여 군에 대한 4의 오프셋을 생성시키며, 오프셋 생성 수단은 제 4 의 S개의 세그먼트의 제 1 군에 대한 4 의 오프셋을 생성시키고, 오프셋 생성 수단은 제 4 의 S개의 세그먼트의 어느 잔여 군에 대한 0 의 오프셋을 생성시키는 것을 특징으로 하는 데이터 요소 재배열 장치.
  10. 제 1 항에 있어서,
    데이터 요소는 m개의 데이터 요소군들 내에 배치되고, 상기 m개의 데이터 요소군들은 데이터 요소의 제 1 및 2 군을 포함하며, 각 군은 D개의 데이터 요소를 가지며, 데이터 요소는 제 1 배열에 따라 인터리브되고, 상기 장치는 제 2 배열로 데이터 요소를 디-인터리브하도록 배치되며, 상기 메모리는 실질적으로 한번에 mD개의 데이터 요소를 저장하는 것을 특징으로 하는 데이터 요소 재배열 장치.
  11. 제 10 항에 있어서,
    상기 어드레스 생성기는,
    O 에서 mD-1 까지 카운트하고, mD-1 의 카운트에 도달할 시에 출력 카운트를 제공하며, 그리고 출력 카운트를 제공한 후에 리셋하는 카운트 수단,
    상기 출력 카운트에 응답하여 시드를 생성시키는 시드 생성 수단과,
    출력 카운트 및 시드를 어드레스의 시퀀스를 변환하는 변환수단을 포함하는 것을 특징으로 하는 데이터 요소 재배열 장치.
  12. 제 11 항에 있어서,
    상기 시드 생성 수단은 L개의 시드를 생성시키도록 배치되고, L 은 아래식 (RL) mod(mD-1)=1 으로 주어지는 데, 시드가 Lmax에서 반복적으로 개시할 때까지 L 은 0, 1, 2, ,,, 이고, R=D 이며, 어드레스 시퀀스는 아래 식으로 주어지는데,
    Mi(n) = 0 for n = 0
    Mi(n) = (Mi(n-1) + Ri) mod(mD-1) for n = 0, 1, 2...mD-1
    여기서 i는 0 에서 Lmax-1 로 변하는 것을 특징으로 하는 데이터 요소 재배열 장치.
  13. 제 1 항에 있어서,
    상기 메모리는 제 1 및 2 메모리를 포함하고, 어드레스 생성기는 제 1 및 2어드레스 생성기를 포함하며, 제 1 어드레스 생성기는 데이터 요소를 디-로테이트하도록 어드레스를 제 1 메모리에 공급하기 위해 배치되며, 제 2 어드레스 생성기는 데이터 요소를 디-인터리브하도록 어드레스를 제 2 메모리에 공급하도록 배치되어, 제 2 배열을 생성시키는 것을 특징으로 하는 데이터 요소 재배열 장치.
  14. 제 13 항에 있어서,
    상기 제 1 메모리는 한번에 D개의 데이터 요소를 저장하고, 상기 제 2 메모리는 한번에 mD개의 데이터 요소를 저장하며, m은 정수인 것을 특징으로 하는 데이터 요소 재배열 장치.
  15. 제 14 항에 있어서,
    상기 제 1 어드레스 생성기는,
    0 에서 D-1 까지 카운트하고, 0 에서 D-1 까지의 대응 출력 카운트를 제공하며, D-1 의 카운트에 도달한 후에 리셋하는 제 1 카운트 수단,
    오프셋이 D개의 데이터 요소의 로테이션 범위에 의존하는 오프셋을 생성시키는 오프셋 생성 수단과,
    오프셋 및, 제 1 카운트 수단의 대응 출력 카운트를 어드레스의 제 1 시퀀스로 변환하는 제 1 변환 수단을 포함하고,
    상기 제 2 어드레스 생성기는
    0 에서 D-1 까지 카운트하고, 0 에서 D-1 까지의 대응 출력 카운트를 제공하며, D-1 의 카운트에 도달한 후에 리셋하는 제 2 카운트 수단,
    상기 제 2 카운트 수단의 출력 카운트에 응답하여 시드를 생성시키는 시드 생성 수단과,
    시드를 어드레스의 제 2 시퀀스로 변환하는 제 2 변환수단을 포함하는 것을 특징으로 하는 데이터 요소 재배열 장치.
  16. 제 15 항에 있어서,
    상기 오프셋 생성 수단은 제 1 의 S개의 세그먼트에 대한 0 의 오프셋을 생성시키고, 오프셋 생성수단은 제 2 의 S개의 세그먼트의 제 1 군에 대한 0 의 오프셋을 생성시키며, 오프셋 생성 수단은 제 2 의 S개의 세그먼트의 제 2 군에 대한 8 의 오프셋을 생성시키며, 오프셋 생성 수단은 제 2 의 S개의 세그먼트의 제 3군에 대한 4 의 오프셋을 생성시키며, 오프셋 생성 수단은 제 2 의 S개의 세그먼트의 어느 잔여 군에 대한 0 의 오프셋을 생성시키며, 오프셋 생성수단은 제 3 의 S개의 세그먼트의 제 1 군에 대한 0 의 오프셋을 생성시키며, 오프셋 생성수단은 제 3 의 S개의 세그먼트의 제 2 군에 대한 8 의 오프셋을 생성시키고, 오프셋 생성수단은 제 3 의 S개의 세그먼트의 어느 잔여 군에 대한 4의 오프셋을 생성시키며, 오프셋 생성 수단은 제 4 의 S개의 세그먼트의 제 1 군에 대한 4 의 오프셋을 생성시키고, 오프셋 생성 수단은 제 4 의 S개의 세그먼트의 어느 잔여 군에 대한 0 의 오프셋을 생성시키는 것을 특징으로 하는 데이터 요소 재배열 장치.
  17. 제 16 항에 있어서,
    상기 시드 생성 수단은 L개의 시드를 생성시키도록 배치되고, L 은 아래식 (RL) mod(mD-1)=1 으로 주어지는 데, 시드가 Lmax에서 반복적으로 개시할 때까지 L 은 0, 1, 2, ,,, 이고, R=D 이며, 어드레스 시퀀스는 아래 식으로 주어지는데,
    Mi(n) = (n·Ri) mod(N-1) for n = 0, 1, 2...,N-1.
    여기서 i는 0 에서 Lmax-1.4 로 변하며,
    단일 어드레스 생성기는,
    0 에서 D-1 까지 카운트하고, 0 에서 D-1까지의 대응 출력 카운트를 제공하며, D-1 의 카운트에 도달한 후에 리셋하는 어드레스 카운트 수단,
    오프셋이 D개의 데이터 요소의 로테이션 범위에 의존하는 오프셋을 생성시키는 오프셋 생성 수단과,
    어드레스를 생성시키도록 오프셋과 출력 카운트를 조합하는 조합 수단을 포함하는 것을 특징으로 하는 데이터 요소 재배열 장치.
KR1019997000906A 1996-07-26 1997-07-18 데이터 디-로테이터 및 디-인터리버 KR100363232B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US8/687,866 1996-07-26
US08/687,866 US5940863A (en) 1996-07-26 1996-07-26 Apparatus for de-rotating and de-interleaving data including plural memory devices and plural modulo memory address generators
US08/687,866 1996-07-26

Publications (2)

Publication Number Publication Date
KR20000029785A KR20000029785A (ko) 2000-05-25
KR100363232B1 true KR100363232B1 (ko) 2002-11-30

Family

ID=24762201

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019997000906A KR100363232B1 (ko) 1996-07-26 1997-07-18 데이터 디-로테이터 및 디-인터리버

Country Status (12)

Country Link
US (1) US5940863A (ko)
JP (1) JP2001501786A (ko)
KR (1) KR100363232B1 (ko)
CN (1) CN1122223C (ko)
AR (1) AR008788A1 (ko)
AU (1) AU3804497A (ko)
BR (1) BR9710877A (ko)
CA (1) CA2261696C (ko)
HK (1) HK1021907A1 (ko)
RU (1) RU2189629C2 (ko)
TW (1) TW334535B (ko)
WO (1) WO1998004973A1 (ko)

Families Citing this family (61)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100237745B1 (ko) * 1997-05-23 2000-01-15 김영환 회전형 인터리버/디인터리버의 메모리 주소 발생장치 및 그 방법
EP0945451B1 (de) * 1998-03-25 2002-12-18 Optische Werke G. Rodenstock Photochrome Diaryl-Naphthopyrane mit zumindest einem aminosubstituierten Arylrest
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US7068729B2 (en) 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
TW424227B (en) * 1999-04-08 2001-03-01 Via Tech Inc Signal decoding device and method thereof
DE60045630D1 (de) * 1999-11-04 2011-03-31 Canon Kk Verschachtelungsverfahren für Datenturbokodierung
US6715009B1 (en) * 1999-12-21 2004-03-30 Intel Corporation Method and apparatus for coordinating cooperating resources and its application
US6996133B2 (en) * 2000-04-18 2006-02-07 Zenith Electronics Corporation Digital communication system for transmitting and receiving robustly encoded data
KR100430567B1 (ko) 2000-10-11 2004-05-10 한국전자통신연구원 주소발생기를 포함한 인터리빙/디인터리빙 수행 장치 및그 방법과 그를 이용한 채널 부호화 시스템
US7187698B2 (en) * 2001-03-13 2007-03-06 Zenith Electronics Corporation Robust digital communication system
US7362779B1 (en) * 2002-01-22 2008-04-22 Applied Micro Circuits Corporation Transmission of data frames as a plurality of subframes over a plurality of channels
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
US7433429B2 (en) * 2002-07-19 2008-10-07 Intel Corporation De-interleaver method and system
KR101143282B1 (ko) 2002-10-05 2012-05-08 디지털 파운튼, 인크. 연쇄 반응 코드의 체계적 인코딩 및 디코딩
US7069398B2 (en) * 2003-06-20 2006-06-27 Industrial Technology Research Institute Apparatus and method for de-interleaving the interleaved data in a coded orthogonal frequency division multiplexing receiver
US7114023B2 (en) * 2003-08-29 2006-09-26 Intel Corporation Non-sequential access pattern based address generator
US20050063701A1 (en) * 2003-09-23 2005-03-24 Shlomo Ovadia Method and system to recover resources in the event of data burst loss within WDM-based optical-switched networks
EP1665539B1 (en) 2003-10-06 2013-04-10 Digital Fountain, Inc. Soft-Decision Decoding of Multi-Stage Chain Reaction Codes
KR100651567B1 (ko) * 2004-03-18 2006-11-29 삼성전자주식회사 내부 메모리와 외부 메모리를 이용한 디인터리빙 장치 및 방법
US8806103B2 (en) * 2004-04-28 2014-08-12 Hewlett-Packard Development Company, L.P. System and method for interleaving memory
EP1743431A4 (en) 2004-05-07 2007-05-02 Digital Fountain Inc SYSTEM FOR DOWNLOADING AND RECORDING AND CONTINUOUS READING OF FILES
KR100757469B1 (ko) * 2004-06-07 2007-09-11 삼성전자주식회사 수신 성능 향상을 위해 널 패킷 및 trs 코드를 이용한지상파 디지털 방송 송수신 시스템 및 그의 신호처리방법
KR20060011249A (ko) * 2004-07-29 2006-02-03 삼성전자주식회사 블록 인터리빙을 사용하는 이동통신 시스템에서디인터리빙 버퍼 운용 방법 및 그 장치
CN101253681B (zh) * 2005-07-04 2011-05-25 Nxp股份有限公司 解调器以及解调方法
KR100708474B1 (ko) * 2005-09-15 2007-04-18 삼성전자주식회사 선형 합동 인터리버의 매개변수 결정 방법 및 그를 이용한 선형 합동 인터리버
WO2007095550A2 (en) 2006-02-13 2007-08-23 Digital Fountain, Inc. Streaming and buffering using variable fec overhead and protection periods
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
FR2900294B1 (fr) * 2006-04-19 2008-07-04 St Microelectronics Sa Chargement de la memoire d'entree d'un decodeur ldpc avec des donnees a decoder
WO2007134196A2 (en) 2006-05-10 2007-11-22 Digital Fountain, Inc. Code generator and decoder using hybrid codes
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US7849125B2 (en) 2006-07-07 2010-12-07 Via Telecom Co., Ltd Efficient computation of the modulo operation based on divisor (2n-1)
CN101689918B (zh) 2006-09-26 2014-06-11 诺基亚公司 为上行链路控制信令提供序列调制的装置和方法
ES2969290T3 (es) 2006-09-26 2024-05-17 Nokia Technologies Oy Aparato, método y producto de programa informático que proporcionan una multiplexación para un canal de control no asociado a datos
GB0619530D0 (en) 2006-10-03 2006-11-15 Nokia Corp Signalling
CA2697764A1 (en) 2007-09-12 2009-03-19 Steve Chen Generating and communicating source identification information to enable reliable communications
US9712279B2 (en) 2007-10-04 2017-07-18 Samsung Electronics Co., Ltd. Method and apparatus for interleaving data in a mobile communication system
KR101613893B1 (ko) 2007-10-04 2016-04-20 삼성전자주식회사 이동통신 시스템에서 데이터 인터리빙 방법 및 장치
US9281847B2 (en) 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
US9049497B2 (en) 2010-06-29 2015-06-02 Qualcomm Incorporated Signaling random access points for streaming video data
US8918533B2 (en) 2010-07-13 2014-12-23 Qualcomm Incorporated Video switching for streaming video data
US9185439B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US9456015B2 (en) 2010-08-10 2016-09-27 Qualcomm Incorporated Representation groups for network streaming of coded multimedia data
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
US8667244B2 (en) 2011-03-21 2014-03-04 Hewlett-Packard Development Company, L.P. Methods, systems, and apparatus to prevent memory imprinting
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US9843844B2 (en) 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery
CN105812089B (zh) * 2014-12-31 2018-12-18 晨星半导体股份有限公司 适用于第二代地面数字视频广播系统的解交错程序的数据处理电路及方法
US9407280B1 (en) * 2015-04-27 2016-08-02 Tektronix, Inc. Harmonic time domain interleave to extend arbitrary waveform generator bandwidth and sample rate
US10717673B2 (en) 2015-12-30 2020-07-21 Exxonmobil Research And Engineering Company Polymer fibers for concrete reinforcement
US20210056041A1 (en) * 2019-08-23 2021-02-25 Butterfly Network, Inc. Methods and apparatuses for storing ultrasound data
CN115765750B (zh) * 2023-01-09 2023-05-19 摩尔线程智能科技(北京)有限责任公司 数据循环移位方法和电路、以及芯片

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5369652A (en) * 1993-06-14 1994-11-29 International Business Machines Corporation Error detection and correction having one data format recordable on record media using a diverse number of concurrently recorded tracks
WO1995018494A1 (en) * 1993-12-29 1995-07-06 Zenith Electronics Corporation Data frame format for variable size data constellations

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5537420A (en) * 1994-05-04 1996-07-16 General Instrument Corporation Of Delaware Convolutional interleaver with reduced memory requirements and address generator therefor

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5369652A (en) * 1993-06-14 1994-11-29 International Business Machines Corporation Error detection and correction having one data format recordable on record media using a diverse number of concurrently recorded tracks
WO1995018494A1 (en) * 1993-12-29 1995-07-06 Zenith Electronics Corporation Data frame format for variable size data constellations

Also Published As

Publication number Publication date
KR20000029785A (ko) 2000-05-25
JP2001501786A (ja) 2001-02-06
AU3804497A (en) 1998-02-20
US5940863A (en) 1999-08-17
CA2261696C (en) 2000-09-12
TW334535B (en) 1998-06-21
RU2189629C2 (ru) 2002-09-20
BR9710877A (pt) 1999-08-17
AR008788A1 (es) 2000-02-23
WO1998004973A1 (en) 1998-02-05
CN1122223C (zh) 2003-09-24
CN1228176A (zh) 1999-09-08
HK1021907A1 (en) 2000-07-14

Similar Documents

Publication Publication Date Title
KR100363232B1 (ko) 데이터 디-로테이터 및 디-인터리버
EP0737385B1 (en) Convolutional interleaver and deinterleaver
US5987070A (en) VSB mode selection system
CA2148199C (en) Convolutional interleaver with reduced memory requirements and address generator therefor
US4956709A (en) Forward error correction of data transmitted via television signals
US5677911A (en) Data frame format for a digital signal having multiple data constellations
US6178530B1 (en) Addressing scheme for convolutional interleaver/de-interleaver
EP2333967A3 (en) Data Processing Apparatus and Method
US6466564B1 (en) Two dimensional interleave process for CDMA transmissions of one dimensional timeslot data
CN1097373C (zh) 数字数据处理器和将传输符号转换为多个多位数据的方法
US20030223582A1 (en) Fast-software-implemented pseudo-random code generator
CN1134111C (zh) 去交织电路
JP3358195B2 (ja) データエレメントのインタリーブ/デインタリーブ
US6173429B1 (en) Apparatus for providing error correction data in a digital data transfer system
US6329935B1 (en) Temporally separating and re-organizing data using two-stage interleaving and de-interleaving
US20090060068A1 (en) Method and apparatus for bit interleaving and deinterleaving in wireless communication systems
US7225306B2 (en) Efficient address generation for Forney's modular periodic interleavers
US5631645A (en) Symbol to byte converter
US20020003885A1 (en) Enhanced encryption of digital communication system
MXPA99000911A (en) Data de-rotator and de-interleaver
SU768011A1 (ru) Устройство передачи дискретной информации по телевизионному каналу
KR100212842B1 (ko) 채널 부호기의 블럭 인터리버
MXPA96004630A (es) Seleccion de nivel de datos para sistema de transmision de banda lateral vestigial de multiples niveles

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: 20121031

Year of fee payment: 11

FPAY Annual fee payment

Payment date: 20131101

Year of fee payment: 12

FPAY Annual fee payment

Payment date: 20141107

Year of fee payment: 13

FPAY Annual fee payment

Payment date: 20151016

Year of fee payment: 14

FPAY Annual fee payment

Payment date: 20161019

Year of fee payment: 15

EXPY Expiration of term