KR100845062B1 - 복수의 데이터 스트림에 대한 부호화/복호화 엔진 - Google Patents

복수의 데이터 스트림에 대한 부호화/복호화 엔진 Download PDF

Info

Publication number
KR100845062B1
KR100845062B1 KR1020037014841A KR20037014841A KR100845062B1 KR 100845062 B1 KR100845062 B1 KR 100845062B1 KR 1020037014841 A KR1020037014841 A KR 1020037014841A KR 20037014841 A KR20037014841 A KR 20037014841A KR 100845062 B1 KR100845062 B1 KR 100845062B1
Authority
KR
South Korea
Prior art keywords
stage
processing
data word
digital
output
Prior art date
Application number
KR1020037014841A
Other languages
English (en)
Other versions
KR20040004626A (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 KR20040004626A publication Critical patent/KR20040004626A/ko
Application granted granted Critical
Publication of KR100845062B1 publication Critical patent/KR100845062B1/ko

Links

Images

Classifications

    • 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/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video stream to a specific local network, e.g. a Bluetooth® network
    • H04N21/43632Adapting the video stream to a specific local network, e.g. a Bluetooth® network involving a wired protocol, e.g. IEEE 1394
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/06Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
    • H04L9/065Encryption by serially and continuously modifying data stream elements, e.g. stream cipher systems, RC4, SEAL or A5/3
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04KSECRET COMMUNICATION; JAMMING OF COMMUNICATION
    • H04K1/00Secret communication
    • H04K1/02Secret communication by adding a second signal to make the desired signal unintelligible
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4405Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video stream decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/167Systems rendering the television signal unintelligible and subsequently intelligible
    • H04N7/1675Providing digital key or authorisation information for generation or regeneration of the scrambling sequence

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Storage Device Security (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

버퍼 또는 레지스터(110, 112, 118, 120)는 데이터 스트림(inA, inB)을 복호화하는 장치내에서 처리 스테이지(108, 116)사이에서 하나 이상의 장소에서 사용된다. 이러한 장치는 원형 방식으로 배열된 다수의 처리 스테이지(108, 116)를 가져서 데이터는 이전 스테이지(108)에서 다음 스테이지(116)로 반복적으로 통과되고, 처리가 완료될때까지 마지막 스테이지(116)로부터 복귀하여 제1 스테이지로 반복적으로 통과한다. 하나 이상의 위치에서 하나 이상의 레지스터(110, 112, 118, 120)를 사용하여 데이터가 저장되도록 하며, 이에 따라 저장된 데이터와 관련된 스트림(inA)은 효과적으로 일시정지될 수 있다. 이것은 다른 스트림(inB)으로부터의 데이터가 일시정지된 스트림(inA)이 대기상태인 동안 처리될 수 있도록 한다.
Figure R1020037014841
데이터 스트림, 복호화 장치, 버퍼, 레지스터, 디지털 처리 장치

Description

복수의 데이터 스트림에 대한 부호화/복호화 엔진{ENCRYPTION/DECRYPTION ENGINE FOR MULTIPLE DATA STREAMS}
본 발명은 일반적으로 부호화/복호화 장치에 관한 것이며, 특히 타임-멀티플렉스드(time-multiplexed) 방식에서 복수의 독립 데이터 스트림을 처리할 수 있는 복호화 장치에 관한 것이다.
디지털 포맷으로 처리되는 정보가 증가함에 따라 이러한 포맷에 대한 보안 세이프가드(safeguard)를 제공하는 것이 더욱 중요해지고 있다. 예컨대, 디지털 비디오는 액세스 제한의 필요성을 상당히 요구한다. 디지털 전송 라이센싱 관리자(DTLA - www.dtca.com 참조)과 같은 구성에 의해 공표되는 액세스, 전송 및 처리 표준에 따른 등시성 데이터 전송에 관한 IEEE1394 표준, MPEG 표준 및 고 해상도 텔레비젼(HDTV)표준과 같은 포맷은 표준화된 디지털 포맷에 대해 부호화 및 복호화를 이용하는 장치에 대한 수행 레벨을 부과한다. 부호화 및 복호화 처리의 복잡한 특성 및 디지털 비디오의 매우 높은 대역폭으로 인해, 이러한 모든 요구를 만족시키는 회로를 설계하는 것은 곤란하다.
도 1A는 종래의 부호화/복호화 장치를 도시한다.
도 1A에서, IEEE 1394-컴플라이언트(compliant)데이터 스트림(10)과 같은 데이터 스트림은 64비트 워드의 "청크(chunk)"와 같은 장치의 회로의 좌측으로 입력된다. 키(12)는 도 1A에 도시된 장치로 입력되는 가변 길이 워드일 수 있다. 이 장치는 합산 연산(16)이 후속하는 XOR(14)함수를 각각의 스테이지(stage)가 포함하는 몇몇 스테이지를 포함할 수 있다. 이러한 처리는 도 1A에 도시된 바와 같이 전체 5개의 스테이지 동안 반복된다. 5번째 스테이지의 단부에서, 합산기(18)로부터의 결과는 XOR(14)의 입력으로 회귀된다.
5개의 스테이지를 통하는 각각의 사이클은 장치를 통해 "라운드"를 완료한다. 전형적으로, 복수의 라운드가 요구된다. 예컨대, 장치는 각각의 워드에 대해 부호화 또는 복호화 함수가 완료되기 전에 10개의 라운드를 요구할 수 있다.
이러한 설계는 복수의 "처리 스테이지"의 "원형 구성"이라 명칭된다. 14 및 16과 같은 각각의 처리 스테이지가 구성되어 이전 스테이지의 출력이 후속 스테이지의 입력에 공급된다. 즉, 처리 스테이지(14)는 데이터 워드에 대해 XOR 연산을 수행하고, 그 결과를 합산연산을 수행하는 처리 스테이지(16)에 전달한다. 이 경우에, 어플리케이션은 부호화 또는 복호화 장치이므로, 각각의 스테이지는 또한 키를 구비하고, 각각의 연산은 2-연산자 연산이다.
부호화 및 복호화를 제외한 어플리케이션은 유사한 구조를 이용함을 주목하자.
각각의 스테이지가 복수의 연산을 포함하는 5개의 스테이지를 통해 10개 라운드의 처리가 단지 단일의 64 비트 워드에 대한 다수의 처리 사이클을 나타냄을 명확하게 알 수 있다. 당연히, 비디오 스트림은 이러한 멀티-라운드 방식으로 처 리될 필요가 있는 백만, 1조, 또는 그 이상의 데이터 워드로 구성된다.
전형적으로, 부호화 처리는 데이터 블록의 경계에서 시작하고 종료한다. 데이터의 블록은 "부호화 프레임"으로 명칭된다. 다음 부호화 프레임의 처리는 현재의 프레임에 대한 처리를 완료한후에만 시작할 수 있다. 즉, 부호화 프레임의 처리에 인터리브하는 것은 불가능하다. 이것은 도 1A에 도시된 바와 같은 종래 기술이 복수의 데이터 스트림에 대한 효과적인 동시 처리를 허용하지 않는 것을 의미한다.
스트림의 효과적인 부호화/복호화를 더욱 복잡하게 하도록, 부호화 프레임이 더 작은 데이터 블록으로 임의로 분리되는 것은 디지털 비디오 어플리케이션에서 전형적인 일이다. 이러한 데이터 블록은 블록 전송간에 가변 간격을 갖고 가변 시간 주기 동안 통신 링크를 통해 전송될 수 있다. 이것은 하나의 데이터 스트림의 부호화 프레임의 시작 및 종료점이 다른 스트림으로부터의 프레임에 정렬될 필요는 없다는 것을 의미한다. 이러한 이유로 인해, 도 1A의 회로는 단일의 데이터 스트림에 대한 실시간 처리를 위한 것이다. 제2 스트림을 다루기 위해, 다른 유사한 회로가 이용될 수 있다.
도 1B는 도 1A의 2개의 종래 회로가 이용되는 타임 라인을 도시한다.
도 1B에서, 2개의 입력 스트림은 스트림 A 및 B로서 처리된다. 각각의 스트림은 2개의 분리된 부호화 회로로 독립적으로 처리되어야 한다. 2개의 회로에 대한 요구는 단지 단일의 스트림에서 보다는 2개의 스트림의 처리에 필요한 하드웨어의 복잡성 및 크기를 증대시킨다.
스트림(A 및 B)는 예컨대, A0, A1, A2 등으로 나타나는 복수의 블록으로 분할되는 프레임을 갖는다. 블록 A0를 블록 A0'로의 부호화/복호화를 완료하기 위해, 블록 A0 및 블록 A1의 일부가 이용된다. 블록A1 의 수신중에 일시정지가 있으면, 회로는 블록A0'의 처리를 완료하기 위해 블록 A1이 수신될 때까지 대기하여야 한다.
도 1A의 장치의 중단되지 않는 직렬 처리는 장치가 현재 스트림 A의 프레임을 부호화 처리할 때 스트림 B로부터의 데이터 처리를 가능하지 않게 한다는 것을 의미한다.
따라서, 이러한 종래 기술의 문제점을 개선하는 발명을 제공하는 것이 바람직하다.
[요약]
부호화 장치는 복수의 데이터 스트림에 대해 타임 멀티플렉스드 처리를 제공한다. 디지털 비디오 어플리케이션에서, 장치는 IEEE 1394 컴플라이언트 데이터 스트림과 같은 등시성 데이터 스트림에 대한 복호화 장치이다. 이러한 장치는 복수회 또는 라운드 동안의 스테이지를 통해 데이터를 전달하여 데이터를 처리하기 위해 원형 방식으로 구성된 복수의 처리 스테이지를 이용한다. 데이터가 최종 처리 스테이지에 도달할 때, 데이터는 제1 스테이지로 돌아가게 되어 다음 라운드의 처리를 시작한다. 몇몇 라운드의 처리후에 데이터는 출력된다.
버퍼 또는 레지스터는 처리 스테이지간에 하나 이상의 위치에서 이용된다. 어느 위치에서 하나 이상의 레지스터를 이용하면 데이터를 저장할 수 있게 되어 저장된 데이터와 관련된 스트림은 효과적으로 일시정지될 수 있다. 이것은 다른 스트림으로부터의 데이터가 일시 정지된 스트림이 대기상태에 있는 동안 처리될 수 있도록 한다.
일 실시예에서, 본 발명은 적어도 하나의 스테이지의 출력을 저장하고, 차후에 선택적으로 상기 저장된 적어도 하나의 스테이지의 출력을 연속적인 스테이지에 제공하기 위해 제공된 적어도 2개의 스테이지간에 결합되는 버퍼를 제공한다.
도 1A는 종래의 부호화/복호화 장치를 도시한다.
도 1B는 도 1A의 2개의 종래의 회로가 이용되는 타임 라인(time line)을 도시한다.
도 2A는 본 발명의 일반화된 장치의 블록도를 도시한다.
도 2B는 도 2A의 회로의 타임-멀티플렉스드 처리를 도시한다.
도 2A는 본 발명의 일반화된 개념의 블록도를 도시한다.
도 2A에서, 복수-스테이지 디지털 처리기가 원형 방식으로 구성된 스테이지와 함께 도시된다. 스테이지(108 및 116)는 임의의 유형의 디지털 처리 스테이지를 나타낸다. 여기서 명확하게 나타난 바와 같이, 임의의 수의 스테이지는 스테이지(108 및 116)에 의해 표현될 수 있다.
입력은 XOR 게이트(102 및 104)에 공급하는 입력(inA 및 inB)중의 하나에서 도면의 왼쪽에서 수신된다. 입력은 그 입력의 하나를 처리 스테이지(108)로 선택 적으로 인가하는 멀티플렉서(106)로 공급된다.
처리 스테이지(108)의 출력은 2개의 레지스터 중 하나, 또는 버퍼(110 및 112)로 선택적으로 공급된다. 레지스터(110)는 inA'로 명칭되는 inA에 대응하는 값을 저장 및 출력하고, 레지스터(112)는 inB'를 수신, 저장 및 출력한다.
레지스터(110 및 112)로부터의 출력 양자는 멀티플렉서(114)로 공급된다. 멀티플렉서(114)는 inA' 또는 inB' 중 하나를 선택적으로 처리 스테이지(116)에 인가한다. 처리 스테이지(116)로부터의 출력은 제2 레지스터 셋(118 및 120)으로 차례로 송신된다. 다시, 레지스터(118)는 A 데이터 스트림에 대응하고, 레지스터(120)는 D 데이터 스트림에 대응한다.
레지스터(118)는, XOR게이트(102) 및 멀티플렉서(106)를 통해 역 공급되는 그 값을 처리 스테이지(108)로 출력한다. 유사하게, 레지스터(120)의 출력은 XOR게이트(104) 및 멀티플렉서(106)을 통해 처리 스테이지(108)로 역 공급된다. 처리가 A 또는 B스트림중 하나에서 소정의 데이터 워드에 대해 완료되면, 레지스터(118 및 120)는 그 결과를 OUTA 또는 OUTB로서 출력한다.
이러한 2개의 처리 스테이지가 각각의 처리 스테이지의 출력에서 레지스터 뱅크에 의해 분리됨을 명확히 알 수 있다. 또한, 멀티플렉서는, 각각의 처리 스테이지의 입력에서, A 또는 B 데이터 스트림중의 하나에 대응하는 2개의 데이터 워드 중 하나를 선택하는데 이용된다. 도 2A의 구성요소는 본 기술분야에 알려진 바와 같이 신호(도시되지 않음)에 의해 제어되며, 원하는 대로 A 스트림 또는 B스트림중 의 하나를 선택하도록 할 수 있다.
예컨대, A 스트림 데이터를 처리하기 위해, 멀티플렉서(106)는 새로운 데이터가 inA에 인가되는 동안 XOR게이트(102)의 출력을 선택한다. 이에 따라, inA의 데이터가 처리 스테이지(108)에 의해 처리되어 레지스터(110 및 112)로 출력된다. 레지스터(110)의 입력에서의 데이터는 클록(clocked)되어, 처리 스테이지(108)로부터의 처리된 inA 데이터 워드가 레지스터(110)에 저장된다. 이러한 값은 A 스트림 데이터의 처리를 일시정지시키는 임의의 시간동안 저장될 수 있다.
A 스트림 데이터의 처리가 일시정지되는 동안, 스트림 B와 같은 다른 스트림의 처리를 계속하는 것이 가능하다. A 스트림 데이터가 레지스터(110)에 유지되는 동안, B 스트림 데이터는 레지스터(112)로부터 처리 스테이지(116)으로 출력될 수 있다. 따라서, 이러한 레지스터들은 하나의 스트림내의 데이터 처리가 다른 스트림의 처리를 위해 일시정지되도록 한다. 본 실시예가, 2개의 처리 스테이지가 있는 단순화된 도면에서 2개의 레지스터 뱅크를 이용하였지만, 임의의 수의 레지스터 뱅크가 임의의 수의 처리 스테이지중에서 산재되어 이용될 수 있음은 명확하다. 전술한 바와 같이, 이러한 것은 상이한 정도의 제어를 하게 하며,데이터 스트림을 멀티플렉스하는 다수의 방법을 제공한다. 또한, 2개 이상의 레지스터가 각각의 레지스터 뱅크내에 존재할 수 있다. 예컨대, 처리 스테이지(108)로부터의 출력을 수신하고, 멀티플렉서(114)로 공급하는 단지 2개의 레지스터(110 및 112) 대신에, 대응하는 수의 데이터 스트림을 처리할 수 있는 다수의 레지스터가 존재할 수 있다.
도 2A에서, 본 발명의 양호한 실시예는 대안적으로 A 스트림 데이터 및 B 스 트림 데이터를 각각의 처리 스테이지로 공급한다. 이것은 2개의 완전히 분리된 데이터 스트림에 대해 인터리브되고, 타임 멀티플렉스된 처리를 허용한다. 따라서, 하나의 스트림이 스톨(stall)되면, 다른 스트림이 처리를 계속할 수 있다.
이러한 인터리브되고, 타임 멀티플렉스된 모드에서는, 처리 스테이지(108)는 A 스트림 데이터를 처리하고, 처리 스테이지(116)는 B 스트림 데이터를 처리한다. 스테이지가 동일한 시간에 그 처리가 종료된다고 가정하면, 처리 스테이지(108)의 A 스트림 데이터는 레지스터(110)에 저장되고, 처리 스테이지(116)의 B 스트림 데이터는 레지스터(120)에 저장된다. 이러한 처리는 이러한 2개의 처리 스테이지 장치에서 전체 라운드의 제1의 절반만을 나타내기 때문에, 라운드의 제2의 절반은 레지스터(120)으로부터 B 스트림 데이터를 처리하는 처리 스테이지(108)를 갖고, 처리 스테이지(116)는 레지스터(110)로부터 출력되는 A 스트림 데이터를 처리한다.
도 2B는 타임 멀티플렉스드 처리를 나타내는 다이어그램도이다.
도 2B에서, 챠트는 6개의 신호, 즉, inA, inA', OUTA, inB, inB' 및 OUTB에 관한 타이밍도를 도시한다. 도 2B에 도시된 바와 같이, A스트림 데이터는 제1 1/2 사이클 또는 페이즈 A 에서 처리 스테이지(108)에 인가되고, B 스트림 데이터는 각각의 라운드의 제2 1/2 사이클, 또는 페이즈 B에서 처리 스테이지(108)에 인가된다. 이것은 처리 스테이지(108)의 출력은 페이즈 A의 단부에서 A 스트림 데이터에 대한 결과를 제공하고, 페이즈 B의 단부에서 B 스트림 데이터에 대한 결과를 제공하는 것을 의미한다.
도 2B의 챠트의 inA'행은 레지스터(110)이 A 스트림 데이터를 래치하고, 각각의 처리 라운드에서 페이즈 B에 대해 이용가능하도록 유지하는 것을 도시한다. 즉, 라운드(10) 처리(제1 라운드)에서, A'10 은 레지스터(110)의 출력에서 페이즈 B 동안 이용가능하다. 유사하게, 라운드(9)에서, A'9는 라운드(9)등의 페이즈 B에서 이용가능하다. 각각의 라운드의 단부에서, 처리 스테이지(116)의 출력은 A 스트림 데이터이다. 이 데이터는 레지스터(118)로 래치되고, OUTA로서 이용가능하다. 이러한 것은 행 라벨(labeled)된 OUTA에 대한 타이밍도에 도시된다. 유사하게, B 스트림 데이터는 각 라운드의 페이즈 A 동안, 처리 스테이지(116)에서 제2 스테이지 처리기에 의해 처리되어, OUTB가 각 라운드의 페이즈 A의 단부에서 이용가능해진다. 이러한 것은 도 2B의 행 라벨화된 OUTB를 참조하면 알 수 있다.
따라서, 도 2B의 타이밍도로부터, 도 2A에 도시된 하드웨어는 2개의 분리된 데이터 스트림을 이중의 처리 스테이지의 형태로 임의의 부가적인 회로를 요하지 않고 인터리브 또는 타임 멀티플렉스할 수 있다.
본 발명이 특정 실시예에 따라 기술되었지만, 양호한 실시예에 관한 많은 변형 및 변경례가 본 발명의 범주를 벗어나지 않고 실시될 수 있음음 명백하다. 예컨대, 처리 스테이지의 함수가 합산, 회전, XOR로서 나타났지만, 임의의 유형의 처리가 각각의 스테이지에서 수행될 수 있고, 이러한 상이한 유형의 연산은 동일한 회로내에서 상이한 스테이지에 의해 수행될 수 있다. 복수의 스테이지내에서 레지 스터 뱅크의 위치는 전체 장치에 따라 대칭적일 필요는 없다. 즉, 레지스터 뱅크는 모든 스테이지의 단부에서 일련의 처리 스테이지의 1/3 하방에 위치할 수 있다.
따라서, 본 발명의 범주는 부가된 특허청구범위에 의해서만 정해진다.

Claims (12)

  1. 부호화 및/또는 복호화 동작을 수행하는 디지털 처리 장치에 있어서,
    2개 이상의 처리 스테이지(processing stage)의 원형 구성 - 각각의 처리 스테이지는 하나의 상이한 처리 스테이지의 출력을 입력으로서 수신하고, 임의의 소정의 처리 스테이지는 상기 소정의 처리 스테이지의 입력에서 수신된 디지털 데이터에 대한 함수를 처리하여 상기 소정의 처리 스테이지의 출력을 산출함-;
    제1 디지털 데이터 워드를 수신하고, 상기 제1 디지털 데이터 워드에 대한 동작을 수행하고, 제1 처리된 데이터 워드를 출력하는 제1 스테이지 회로;
    상기 제1 스테이지 회로에 연결되어, 상기 제1 처리된 데이터 워드를 수신하고, 제2 처리된 데이터 워드를 출력하는 제2 스테이지 회로;
    디지털 데이터 워드가 수신되어 상기 제1 스테이지 및 그후에 상기 원형 구성내의 후속하는 각 스테이지에 의해 처리되고, 상기 처리된 디지털 데이터 워드가 최종 스테이지에 의해 출력될 때, 상기 처리된 디지털 데이터 워드는 상기 부호화 및/또는 복호화 동작을 수행하도록 상기 최종 스테이지에 의해 최종적으로 출력되기 전에 적어도 한번은 상기 제1 스테이지로 역 전송되도록 상기 처리 스테이지를 제어하는 처리 제어 회로;
    상기 제1 및 제2 스테이지 회로 사이에 연결되어 상기 제1 디지털 데이터 워드의 처리를 일시 정지하기 위하여 상기 제1 처리된 데이터 워드를 저장하는 버퍼; 및
    상기 2개 이상의 처리 스테이지의 원형 구성이, 제2 디지털 데이터 워드의 처리를 개시하도록 하고, 그 후 상기 제2 디지털 데이터 워드의 처리를 일시 정지하고 상기 제1 디지털 데이터 워드의 처리를 재개하도록 하는 제어 회로를 포함하는 디지털 처리 장치.
  2. 제1항에 있어서,
    상기 디지털 데이터 워드는 그 폭이 하나 이상의 비트인 디지털 처리 장치.
  3. 제1항에 있어서,
    상기 함수는 산술 연산인 디지털 처리 장치.
  4. 제1항에 있어서,
    상기 함수는 논리 연산인 디지털 처리 장치.
  5. 제1항에 있어서,
    상기 제1 스테이지는 처리 중에 상기 데이터에 적용되는 암호 키를 수신하기 위한 데이터 키 입력을 포함하는 디지털 처리 장치.
  6. 제5항에 있어서,
    상기 디지털 처리 장치는 부호화 함수를 획득하는 디지털 처리 장치.
  7. 제5항에 있어서,
    상기 디지털 처리 장치는 복호화 함수를 획득하는 디지털 처리 장치.
  8. 제1항에 있어서,
    상기 처리 스테이지의 하나 이상의 상기 출력에 결합되는 복수의 버퍼를 더 포함하는 디지털 처리 장치.
  9. 제8항에 있어서,
    하나의 그룹의 복수의 버퍼는 상기 최종 스테이지의 출력에 결합되는 디지털 처리 장치.
  10. 제9항에 있어서,
    상기 복수의 버퍼의 2개 이상의 상기 출력에 결합되어 상기 2개 이상의 복수의 버퍼로부터 하나의 선택된 출력이 선택될 수 있는 멀티플렉서를 더 포함하는 디지털 처리 장치.
  11. 제1항에 있어서,
    디지털 데이터 워드는 부호화된 비디오 정보의 스트림의 일부인 디지털 처리 장치.
  12. 현재의 데이터 워드의 처리를 일시 중지하는 능력을 갖는 디지털 복호화 장치에 있어서,
    상기 디지털 복호화 장치는 원형 방식으로 구성된 복수의 하드웨어 회로의 스테이지를 포함하여 각각의 스테이지의 출력이 다음 스테이지의 입력에 연속적으로 공급되도록 하고, 제1 스테이지는 복호화될 데이터 워드를 수신하고, 최종 스테이지는 상기 제1 스테이지로 돌아갈 데이터 워드를 출력하고 상기 출력 데이터 워드를 상기 디지털 복호화 장치로부터의 출력 데이터로서 이용가능하게 하며,
    적어도 하나의 스테이지의 출력을 저장하고, 차후에 선택적으로 상기 저장된 적어도 하나의 스테이지의 출력을 연속적인 스테이지에 제공하기 위해 제공된 적어도 2개의 스테이지간에 결합된 버퍼를 더 포함하여,
    제1 복호화 동작에서 제1 디지털 데이터 워드의 처리를 일시 중지하고 제2 복호화 동작에서 제2 디지털 데이터 워드의 처리가 개시될 수 있도록 하고, 상기 제2 디지털 데이터 워드의 처리가 일시 중지되고, 상기 제1 디지털 데이터 워드의 처리가 재개될 수 있도록 한 디지털 복호화 장치.
KR1020037014841A 2001-05-15 2002-05-15 복수의 데이터 스트림에 대한 부호화/복호화 엔진 KR100845062B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/859,212 2001-05-15
US09/859,212 US6876746B2 (en) 2001-05-15 2001-05-15 Encryption/decryption engine for multiple isochronous data streams
PCT/US2002/015703 WO2002093827A1 (en) 2001-05-15 2002-05-15 Encryption/decryption engine for multiple data streams

Publications (2)

Publication Number Publication Date
KR20040004626A KR20040004626A (ko) 2004-01-13
KR100845062B1 true KR100845062B1 (ko) 2008-07-09

Family

ID=25330349

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020037014841A KR100845062B1 (ko) 2001-05-15 2002-05-15 복수의 데이터 스트림에 대한 부호화/복호화 엔진

Country Status (5)

Country Link
US (1) US6876746B2 (ko)
EP (1) EP1388232B1 (ko)
JP (1) JP4342798B2 (ko)
KR (1) KR100845062B1 (ko)
WO (1) WO2002093827A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040125951A1 (en) * 2002-12-26 2004-07-01 Sun Microsystems, Inc., A Delaware Corporation Bitstreaming for unreadable redundancy
US20130142332A1 (en) * 2011-12-06 2013-06-06 Andrés Ramos Voice and screen capture archive and review process using phones for quality assurance purposes
US9871651B2 (en) * 2014-06-16 2018-01-16 Cisco Technology, Inc. Differential power analysis countermeasures
US9008313B1 (en) * 2014-07-24 2015-04-14 Elliptic Technologies Inc. System and method for generating random key stream cipher texts
EP3989477A1 (en) 2014-08-07 2022-04-27 DivX, LLC Systems and methods for protecting elementary bitstreams incorporating independently encoded tiles

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980015800A (ko) * 1996-08-23 1998-05-25 배순훈 리드 솔로몬 복호기의 비트 에러율 측정 장치

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63255675A (ja) * 1987-04-13 1988-10-21 Mitsubishi Electric Corp クラツタ抑圧装置
JP3321226B2 (ja) * 1993-02-17 2002-09-03 株式会社リコー 符号化復号化方法
US5835599A (en) * 1996-04-15 1998-11-10 Vlsi Technology, Inc. Muti-cycle non-parallel data encryption engine
US5946398A (en) * 1997-03-25 1999-08-31 Level One Communications, Inc. State synchronized cipher text scrambler
US6195368B1 (en) * 1998-01-14 2001-02-27 Skystream Corporation Re-timing of video program bearing streams transmitted by an asynchronous communication link
JP3834985B2 (ja) * 1998-01-30 2006-10-18 三菱電機株式会社 記録データ制御装置
US6189095B1 (en) * 1998-06-05 2001-02-13 International Business Machines Corporation Symmetric block cipher using multiple stages with modified type-1 and type-3 feistel networks

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR19980015800A (ko) * 1996-08-23 1998-05-25 배순훈 리드 솔로몬 복호기의 비트 에러율 측정 장치

Also Published As

Publication number Publication date
WO2002093827A1 (en) 2002-11-21
EP1388232A4 (en) 2004-08-11
JP2004535107A (ja) 2004-11-18
KR20040004626A (ko) 2004-01-13
EP1388232A1 (en) 2004-02-11
EP1388232B1 (en) 2006-07-19
JP4342798B2 (ja) 2009-10-14
US6876746B2 (en) 2005-04-05
US20020172357A1 (en) 2002-11-21

Similar Documents

Publication Publication Date Title
EP0576749B1 (en) Data pipeline system
US5220325A (en) Hierarchical variable length decoder for digital video data
JP3136796B2 (ja) 可変長符号デコーダ
EP0673171B1 (en) Video decoder
US6246347B1 (en) Controller for a variable length decoder
JP3224164B2 (ja) デコーダ
JP2001507555A (ja) 普遍的にプログラム可能の可変長デコーダ
US20110091124A1 (en) System for multi-byte reading
US5686916A (en) Multi-code-book variable length decoder
US20050190609A1 (en) Memory interface and data processing system
JPH08251586A (ja) ランレングス復号化装置
US5781135A (en) High speed variable length code decoder
US8443413B2 (en) Low-latency multichannel video port aggregator
KR100845062B1 (ko) 복수의 데이터 스트림에 대한 부호화/복호화 엔진
JP3238571B2 (ja) 可変長復号化装置
JP3230933B2 (ja) データ伸長装置、データ伸長方法、デコーディング装置、デコーディング方法、エンコーディング装置、及びエントロピー・デコーダ
US9380260B2 (en) Multichannel video port interface using no external memory
US20060002481A1 (en) Method and apparatus for multi-threaded variable length coding
KR0180168B1 (ko) 영상부호화를 위한 프레임 재배열 장치
EP0629050B1 (en) High-throughput variable length decoder and apparatus comprising such decoder
US7072400B2 (en) Inverse zigzag scanning of a matrix of video data values and manipulation
Park et al. Area efficient fast Huffman decoder for multimedia applications
US20030161397A1 (en) Data manipulation
Bakhmutsky High-performance variable length decoder with two-word bit-stream segmentation
Bakhmutsky Novel architectures for implementing very high throughput variable-length decoders in HDTV systems

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B601 Maintenance of original decision after re-examination before a trial
E801 Decision on dismissal of amendment
S901 Examination by remand of revocation
GRNO Decision to grant (after opposition)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130624

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20140624

Year of fee payment: 7

LAPS Lapse due to unpaid annual fee