KR20070088713A - 순환 중복 검사들을 구현하기 위한 시스템들 및 방법들 - Google Patents

순환 중복 검사들을 구현하기 위한 시스템들 및 방법들 Download PDF

Info

Publication number
KR20070088713A
KR20070088713A KR1020077013823A KR20077013823A KR20070088713A KR 20070088713 A KR20070088713 A KR 20070088713A KR 1020077013823 A KR1020077013823 A KR 1020077013823A KR 20077013823 A KR20077013823 A KR 20077013823A KR 20070088713 A KR20070088713 A KR 20070088713A
Authority
KR
South Korea
Prior art keywords
crc
error
data
link
mddi
Prior art date
Application number
KR1020077013823A
Other languages
English (en)
Other versions
KR100886297B1 (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 KR20070088713A publication Critical patent/KR20070088713A/ko
Application granted granted Critical
Publication of KR100886297B1 publication Critical patent/KR100886297B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/10Arrangements for initial synchronisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/24Radio transmission systems, i.e. using radiation field for communication between two or more posts
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/04Speed or phase control by synchronisation signals
    • H04L7/048Speed or phase control by synchronisation signals using the properties of error detecting or error correcting codes, e.g. parity as synchronisation signal
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/04Exchange of auxiliary data, i.e. other than image data, between monitor and graphics controller
    • G09G2370/045Exchange of auxiliary data, i.e. other than image data, between monitor and graphics controller using multiple communication channels, e.g. parallel and serial
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2370/00Aspects of data communication
    • G09G2370/10Use of a protocol of communication by packets in interfaces along the display data pipeline

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Communication Control (AREA)
  • Studio Devices (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Telephone Function (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

본 발명은 링크 초기화 처리를 개선하고 시스템 에러 정보를 교환하기 위해서 순환 중복 검사들을 구현하기 위한 시스템들 및 방법들을 제공한다. 일 양상에서는, 고유 패턴 검출기, CRC 생성기, CRC 초기화기 및 CRC 검증기를 포함하는 순환 중복 검사(CRC) 검사기가 제공된다. CRC 검사기는 고유 패턴을 위한 CRC 생성기가 사전에 제공된다. 디지털 전송 링크를 통해서 수신되는 데이터 스트림 내의 고유 패턴을 수신하였을 때, CRC 검사기는 데이터를 대기 및 저장할 필요없이 CRC들을 검사하기 시작한다. 다른 양상에서는, 시스템 에러 정보를 전송하기 위해서 CRC 값을 의도적으로 커럽트시키는 CRC 생성기 시스템이 제공된다. CRC 생성기 시스템은 CRC 생성기, CRC 커럽터, 에러 검출기 및 에러 값 생성기를 포함한다. 일 예에서, 디지털 전송 링크는 MDDI 링크이다.

Description

순환 중복 검사들을 구현하기 위한 시스템들 및 방법들{SYSTEMS AND METHODS FOR IMPLEMENTING CYCLIC REDUNDANCY CHECKS}
본 발명은 전반적으로 데이터 통신들에 관한 것이다. 더 상세하게는, 본 발명은 순환 중복 검사들을 사용하는 디지털 전송 링크에 관한 것이다.
컴퓨터들, 이동 전화기들, 이동 전화기 카메라들 및 비디오 캡쳐 장치들, PDA(personal data assistants), 전자 게임 관련 제품들 및 다양한 비디오 기술들(예컨대, DVD들 및 고선명 VCR들)이 점차적으로 더 높은 해상도의 정지, 비디오, VOD(video-on-demand), 및 그래픽 이미지들의 캡쳐 및 프리젠테이션을 제공하기 위해서 지난 몇 년에 걸쳐 상당히 진보되었다. CD 타입 사운드 재생과 같은 고품질 오디오 데이터를 갖는 비쥬얼 이미지들, DVD들, 및 연관된 오디오 신호 출력들을 갖는 다른 장치들을 결합함으로써 최종 사용자를 위해서 더욱 리얼하거나, 컨텐트-리치(content-rich)하거나, 또는 실제와 같은 멀티미디어 체험을 생성한다. 또한, MP3 플레이어들과 같이 매우 이동적인 고품질 사운드 시스템들 및 뮤직 전송 메커니즘들이 사용자들에 대한 오디오 전용 프리젠테이션들을 위해 개발되었다.
고품질 데이터 프리젠테이션의 급증은 높은 데이터 속도들로 데이터를 전송할 수 있는 특수 인터페이스들을 형성할 필요성을 가져왔고, 그로 인해 데이터 품 질이 열화되지 않거나 감소되지 않았다. 하나의 이러한 인터페이스로는 예컨대 카메라를 구비한 셀룰러 전화기의 하부 및 상부 클렘셀들(clamshells) 간에 고속 데이터를 교환하기 위해서 사용되는 이동 디스플레이 디지털 인터페이스(MDDI)가 있다. MDDI는 호스트와 클라이언트 사이의 단거리 통신 링크를 통해서 매우 고속의 데이터 전송을 가능하게 하는 비용-효과적이고 저전력을 소모하는 전송 메커니즘이다. MDDI는 현재의 기술을 통해서 초당 최대 3.2Gbits의 최대 대역폭을 전달할 수 있는 양방향성 데이터 전송을 위한 전력과 4-배선들을 최소한 필요로 한다.
비록 MDDI 및 다른 데이터 인터페이스들이 인터페이스들을 통해 고속 데이터 속도들을 효율적으로 제공하기 위해서 사용될 수 있지만, 성능을 최적화시키고 또한 MDDI 링크와 같은 디지털 전송 링크들을 더욱 효과적으로 사용해야 하는 것이 더욱 요구된다.
본 발명은 디지털 전송 링크들이 더욱 효과적으로 사용될 수 있도록 할 목적으로 링크 초기화 처리를 개선하고 시스템 에러 정보를 교환하도록 순환 중복 검사들(CRCs)을 구현하기 위한 시스템들 및 방법들을 제공한다. 본 발명의 일양상에서는, 고유 패턴 검출기, CRC 생성기, CRC 초기화기 및 CRC 검증기를 포함하는 CRC 검사기가 제공된다. CRC 검사기는 고유 패턴을 위한 CRC 생성기가 사전에 제공된다(prepopulated). CRC 생성기가 사전 제공되기 때문에, 디지털 전송 링크를 통해서 수신되는 데이터 스트림 내의 고유 패턴을 수신하였을 때, CRC 검사기는 데이터를 대기시키고 저장할 필요없이 CRC들을 검사하기 시작할 수 있다.
본 발명의 다른 양상에서는, 시스템 또는 관련된 시스템 에러 정보를 전송하기 위해서 CRC 값들을 의도적으로 커럽트시키는(corrupt) CRC 생성기 시스템이 제공된다. CRC 생성기 시스템은 CRC 생성기, CRC 커럽터, 에러 검출기 및 에러 값 생성기를 포함한다. CRC 생성기는 디지털 전송 링크를 통해서 전송될 데이터 패킷에 포함되어질 데이터에 기초하여 CRC 값을 생성한다. CRC 커럽터는 호스트 또는 관련된 시스템 상태 정보를 전달하기 위해서 CRC 생성기에 의해 생성되는 CRC 값을 커럽트시킨다. 에러 검출기는 호스트 또는 관련된 시스템 내에서 에러 상황을 검출하며, CRC 값을 의도적으로 커럽트시키도록 CRC 커럽터에 지시한다.
본 발명의 다른 양상에서는, CRC 생성기 시스템은 포함될 에러 타입에 대한 특정 정보를 제공할 수 있다. 이 경우에는, 위의 엘리먼트들 이외에도, CRC 생성기 시스템은 시스템 에러 또는 상태 상황의 타입을 나타내는 특정 CRC 에러 값으로 CRC 생성기에 의해서 생성되는 CRC 값을 대체하도록 CRC 커럽터에 지시하는 에러 값 생성기를 포함한다.
일 예에서는, 디지털 전송 링크는 MDDI 링크이다. 본 발명은 MDDI 링크들로 제한되지 않고, CRC들이 사용되는 임의의 타입의 디지털 전송 링크가 사용될 수 있다.
본 발명의 다른 실시예들, 특징들, 및 장점들뿐만 아니라 본 발명의 여러 실시예들에 대한 구조 및 동작이 첨부 도면들을 참조하여 아래에서 상세히 설명된다.
본 발명은 첨부 도면들을 참조하여 설명된다. 도면들에서는, 동일한 참조번호들이 동일하거나 또는 기능적으로 유사한 엘리먼트들을 나타낸다. 엘리먼트가 제일 먼저 제시된 도면은 상응하는 참조번호에 가장 좌측의 디지트로 표시된다.
도 1은 디지털 장치와 주변 장치에 연결되는 디지털 데이터 장치 인터페이스를 나타내는 도면.
도 2는 고속 데이터 통신들을 제공하기 위해서 MDDI 인터페이스를 사용하는, 상부 및 하부 클렘셀 섹션들을 포함하는 셀룰러 전화기를 나타내는 블록도.
도 3은 카메라를 구비한 셀룰러 전화기의 상부 클렘셀을 나타내는 도면.
도 4A는 MDDI 호스트를 나타내는 도면.
도 4B는 MDDI 패킷 빌더로부터 MDDI 링크로의 패킷들 흐름을 나타내는 도면.
도 4C는 MDDI 링크로부터 MDDI 패킷 빌더에 의해서 수신되는 패킷들의 흐름을 나타내는 도면.
도 4D는 CRC 검사기를 나타내는 도면.
도 4E는 CRC의 생성을 나타내는 타이밍도.
도 4F는 CRC의 수신을 나타내는 타이밍도.
도 5는 서브프레임 헤더 패킷 포맷을 나타내는 도면.
도 6은 비디오 스트림 패킷 포맷을 나타내는 도면.
도 7은 CRC 검사기를 나타내는 도면.
도 8은 CRC 생성기의 사전 제공(prepopulation)을 포함하는 링크를 초기화시키는 방법에 대한 흐름도.
도 9는 CRC 값을 의도적으로 커럽트시키기 위한 메커니즘을 제공하는 CRC 생 성기 시스템을 나타내는 도면.
도 10은 의도적으로 커럽트된 CRC 값들을 해석할 수 있는 CRC 검출기를 나타내는 도면.
도 11은 CRC 값을 의도적으로 커럽트함으로써 디지털 통신 링크를 통해 시스템 에러 정보를 전송하는 방법에 대한 흐름도.
도 12는 CRC 오버라이팅 메커니즘을 나타내는 도면.
도 13은 CRC 오버라이팅 방법에 대한 흐름도.
도 14는 오보라이팅된 CRC 값을 수신하는 방법에 대한 흐름도.
본 명세서는 본 발명의 특징들을 포함하는 하나 이상의 실시예들을 기재하고 있다. 기재된 실시예(들)는 단순히 본 발명을 예시하는 것이다. 본 발명의 범위는 기재된 실시예(들)로 제한되지 않는다. 본 발명은 본 명세서에 첨부된 청구항들에 의해서 정해진다.
기재된 실시예(들), 및 "일실시예", "실시예", "예시적인 실시예" 등에 대한 명세서에서의 언급은, 기재된 실시예(들)가 특정한 특징, 구조, 또는 특성을 포함할 수 있지만 모든 실시예가 그러한 특정의 특징, 구조, 또는 특성을 반드시 포함할 필요는 없을 수 있다. 게다가, 이러한 문구들은 동일한 실시예를 반드시 지칭하지는 않는다. 또한, 특정한 특징, 구조, 또는 특성이 실시예와 연계하여 설명될 때는, 그것이 명시적으로 기재되었는지 여부에 상관없이 다른 실시예들과 연계하여 이러한 특징, 구조, 또는 특성을 실행하는데 있어 당업자의 지식 범위 내에 있는 것으로 이해된다.
본 발명의 실시예들은 하드웨어, 펌웨어, 소프트웨어, 또는 그것들의 임의의 결합으로 구현될 수 있다. 본 발명의 실시예들은 또한 하나 이상의 프로세서들에 의해서 판독되고 실행될 수 있는 기계-판독가능 매체에 저장되는 명령들로서 구현될 수 있다. 기계-판독가능 매체는 기계(예컨대, 컴퓨팅 장치)에 의해서 판독가능한 형태로 정보를 저장하거나 전송하기 위한 임의의 메커니즘을 포함할 수 있다. 예컨대, 기계-판독가능 매체는 판독 전용 메모리(ROM); 랜덤 액세스 메모리(RAM); 자기 디스크 저장 매체; 광학 저장 매체; 플래시 메모리 장치들; 전자, 광학, 음향 또는 다른 형태의 전파되는 신호들(예컨대, 반송파들, 적외선 신호들, 디지털 신호들 등), 및 다른 것들을 포함할 수 있다. 또한, 펌웨어, 소프트웨어, 루틴들, 명령들이 특정 액션들을 수행하는 것으로서 본 명세서에서 설명될 수 있다. 그러나, 이러한 설명들은 단순히 편의를 위한 것이고 그러한 액션들은 실질적으로 컴퓨팅 장치들, 프로세서들, 제어기들, 또는 펌웨어, 소프트웨어, 루틴들, 명령들 등을 실행하는 다른 장치들로부터 이루어진다는 것을 알아야 한다.
도 1은 디지털 장치(150) 및 주변 장치(180)에 연결되는 디지털 데이터 장치 인터페이스(100)를 도시한다. 디지털 장치(150)는 셀룰러 전화기, PDA, 스마트 폰 또는 개인용 컴퓨터를 포함할 수 있지만, 반드시 그러한 것들로만 제한되지는 않는다. 일반적으로, 디지털 장치(150)는 디지털 지시들 및 디지털 프리젠테이션 데이터의 처리를 위한 처리 유닛으로서 기능하는 임의의 타입의 디지털 장치를 포함할 수 있다. 디지털 장치(150)는 시스템 제어기(160) 및 링크 제어기(170)를 포함한 다.
주변 장치(180)는 카메라, 바코드 판독기, 이미지 스캐너, 오디오 장치, 및 센서를 포함할 수 있지만, 반드시 그러한 것들로만 제한되지는 않는다. 일반적으로, 주변 장치(180)는 임의의 타입의 오디오, 비디오 또는 이미지 캡처와 디스플레이 장치들을 포함할 수 있는데, 상기 디스플레이 장치들에서는 디지털 프리젠테이션 데이터가 주변 유닛과 처리 유닛 간에 교환된다. 주변 장치(180)는 제어 블록들(190)을 포함한다. 주변 장치(180)가 예컨대 카메라일 경우, 제어 블록들(190)은 렌즈 제어부, 플래시 또는 백색 LED 제어부 및 셔터 제어부를 포함할 수 있는데, 그러나 반드시 그러한 것들로만 제한되지는 않는다. 디지털 프리젠테이션 데이터는 오디오, 이미지 및 멀티미디어 데이터를 나타내는 디지털 데이터를 포함할 수 있다.
디지털 데이터 인터페이스 장치(100)는 통신 링크(105)를 통해서 고속으로 디지털 프리젠테이션 데이터를 전송한다. 일실시예에서는, 최대로 초당 3.2Gbits의 대역폭을 갖는 양방향성 데이터 전송을 지원하는 MDDI 통신 링크가 사용될 수 있다. 이러한 예보다 더 높거나 더 낮은 다른 고속의 데이터 전송이 통신 링크에 따라서 지원될 수 있다. 디지털 데이터 인터페이스 장치(100)는 메시지 해석기 모듈(110), 컨텐트 모듈(120), 제어 모듈(130) 및 링크 제어기(140)를 포함한다.
디지털 데이터 인터페이스(100) 내에 배치되는 링크 제어기(140) 및 디지털 장치(150) 내에 배치되는 링크 제어기(170)가 통신 링크(105)를 형성한다. 링크 제어기(140) 및 링크 제어기(170)는 MDDI 링크 제어기들일 수 있다.
여기서 참조로서 포함되는 VESA(Video Electronics Standards Association) MDDI 표준은 휴대용 장치로 하여금 디지털 메시지들을 소형 휴대용 장치들로부터 대형 외부 디스플레이들에 전송할 수 있게 하는 고속 디지털 패킷 인터페이스의 요건들을 기재하고 있다. MDDI는 휴대용 컴퓨팅 장치, 통신 장치 및 엔터테인먼트 장치를 착용가능 마이크로 디스플레이들과 같이 최근에 생겨난 제품들에 링크시키기에 적합한 소형 커넥터 시스템 및 얇은 유동성 케이블에 적용된다. 그것은 또한 호스트 프로세서들과 디스플레이 장치 간의 접속들을 어떻게 간단하게 함으로써 비용을 감소시키고 이러한 접속들의 신뢰성을 증가시킬 수 있는 지에 대한 정보를 포함한다. 링크 제어기들(140 및 170)은 VESA MDDI 표준에 기초하여 통신 경로(105)를 형성한다.
2004년 7월 6일에 등록된 Zou 등의 미국 특허 제 6,760,772호 "Generating and Implementing a Communication Protocol and Interface for High Data Rate Signal Transfer"('772 특허")는 프리젠테이션 데이터를 위한 통신 프로토콜을 형성하기 위해서 서로 링크된 패킷 구조들을 사용하여 통신 경로를 통해 호스트 장치와 클라이언트 장치 간에 디지털 데이터를 전송하기 위한 데이터 인터페이스를 개시하고 있다. '772 특허에 개시된 발명의 실시예들은 MDDI 인터페이스에 관한 것이다. 신호 프로토콜은 링크 제어기들(140 및 170)과 같은 링크 제어기들에 의해서 사용되는데, 상기 링크 제어기들은 통신 프로토콜을 형성하는 패킷들을 생성하여 전송하고 수신하며, 또한 하나 이상의 타입들의 데이터 패킷들로 디지털 데이터를 형성하도록 구성되는데, 그 중 적어도 하나는 호스트 장치 내에 존재하며, 통신 경로(105)와 같은 통신 경로를 통해서 클라이언트에게 연결된다.
인터페이스는 단거리 "직렬" 타입 데이터 링크를 통해서 비용-효과적이면서 저전력의 양방향성 고속 데이터 전송 메커니즘을 제공하는데, 이는 소형 커넥터들 및 얇은 유동성 케이블들을 통한 구현에 적합하다. 링크 제어기들(140 및 170)의 실시예는 '772 특허의 내용에 기초하여 통신 경로(105)를 형성한다. '772 특허는 여기서 참조로서 포함된다.
다른 실시예에서, 링크 제어기들(140 및 170) 모두는 USB 링크 제어기일 수 있거나, 또는 그 둘 모두는 예컨대 MDDI 링크 제어기 및 다른 타입의 링크 제어기와 같은 제어기들의 결합체를 포함할 수 있는데, 상기 다른 타입의 링크 제어기는 예컨대 USB 링크 제어기이다. 대안적으로, 링크 제어기들(140 및 170)은 디지털 데이터 인터페이스 장치(100)와 디지털 장치(150) 사이에 확인응답 메시지를 교환하기 위한 단일 링크 및 MDDI 링크 제어기와 같은 제어기들의 결합체를 포함할 수 있다. 링크 제어기들(140 및 170)은 또한 이더넷 또는 RS-232 직렬 포트 인터페이스와 같은 다른 타입들의 인터페이스들을 지원할 수 있다. 추가적인 인터페이스들이 본 명세서의 내용에 기초하여 당업자들이 알게 될 바와 같이 지원될 수 있다.
디지털 데이터 인터페이스 장치(100) 내에서는, 메시지 해석기 모듈(110)이 시스템 제어기(160)로부터 명령들을 수신하고 통신 링크(105)를 통해 시스템 제어기(160)로 보낼 응답 메시지들을 생성하고, 명령 메시지들을 해석하며, 그 명령들의 정보 컨텐트를 디지털 데이터 인터페이스 장치(100) 내의 적절한 모듈에 라우팅한다.
컨텐트 모듈(120)은 주변 장치(180)로부터 데이터를 수신하여 저장하고, 그 데이터를 통신 링크(105)를 통해서 시스템 제어기(160)에 전송한다.
제어 모듈(130)은 메시지 해석기(110)로부터 정보를 수신하고, 그 정보를 주변 장치(180)의 제어 블록들(190)에 라우팅한다. 제어 모듈(130)은 또한 제어 블록들(190)로부터 정보를 수신할 수 있으며, 그 정보를 메시지 해석기 모듈(110)에 라우팅한다.
도 2는 상부 및 하부 클렘셀들에 배치되는 구성성분들 간의 고속 데이터 통신들을 제공하기 위해서 MDDI 인터페이스를 사용하는, 상부 및 하부 클렘셀 섹션들을 구비한 셀룰러 전화기(200)에 대한 블록도이다. 셀룰러 전화기(200)에 관한 아래의 설명은 디지털 데이터 인터페이스 장치(100)의 사용을 또한 도시하면서 그것의 구현 및 사용에 관한 추가적인 세부사항들을 제공하는 도시적인 예를 제공한다. 아래의 설명에 기초하며, 예컨대 PDA 및 다른 타입의 이동 전화기들과 같은 다른 장치들과 함께 디지털 데이터 인터페이스 장치(100)를 사용하는 것은 자명할 것이며 또한 본 발명의 사상 및 범위 내에 든다.
도 2를 참조하면, 셀룰러 전화기(200)의 하부 클렘셀 섹션(22)은 이동국 모뎀(MSM) 기저대역 칩(204)을 포함한다. MSM(204)은 디지털 기저대역 제어기이다. 셀룰러 전화기(200)의 상부 클렘셀 섹션(214)은 액정 디스플레이(LCD) 모듈(216) 및 카메라 모듈(218)을 포함한다. 하부 클렘셀 섹션(202) 및 상부 클렘셀 섹션(214) 모두는 셀룰러 전화기들에 통상적으로 사용되는 것과 같은 플라스틱 내에 넣어진다. 힌지들(hinges)(250 및 252)이 하부 클렘셀(202)을 상부 클렘셀(214)에 기계적으로 연결한다. 유동적인 연결(254)이 하부 클렘셀(202)과 상부 클렘셀(214) 간의 전기적인 연결을 제공한다.
MDDI 링크(210)는 카메라 모듈(218)을 MSM(204)에 접속시킨다. 통상적으로, 카메라 모듈(218) 및 MSM(204) 각각을 위한 MDDI 링크 제어기가 제공된다. 셀룰러 전화기(200) 내에서는, 예컨대, MDDI 호스트(222)가 카메라 모듈(212)에 연결되는 인터페이스 시스템(230) 내에 통합되고, 반면에 MDDI 클라이언트(206)는 MDDI 링크(210)의 MSM 측 상에 배치된다. 통상적으로, MDDI 호스트는 MDDI 링크의 마스터 제어기이다.
셀룰러 전화기(200)에서는, 카메라 모듈(218)로부터의 픽셀 데이터가 수신되며, MDDI 링크(210)를 통해 전송되기 이전에 MDDI 호스트(222)를 사용하여 인터페이스 시스템(230)에 의해서 MDDI 패킷들로 포맷된다. MDDI 클라이언트(206)는 MDDI 패킷들을 수신하며, 카메라 모듈(218)에 의해서 생성되는 것과 동일한 포맷의 픽셀 데이터로 상기 MDDI 패킷들을 재변환한다. 다음으로, 그 픽셀 데이터는 처리를 위해서 MSM(204) 내의 적절한 블록에 전송된다.
마찬가지로, MDDI 링크(212)는 LCD 모듈(216)을 MSM(204)에 접속시킨다. MDDI 링크(212)는 MSM(204)에 통합된 MDDI 호스트(208)와, LCD 모듈(216)에 연결되는 인터페이스 시스템(232)에 통합된 MDDI 클라이언트(220)를 상호접속시킨다. MSM(204)의 그래픽 제어기에 의해 생성되는 디스플레이 데이터가 수신되며, MDDI 링크(212)를 통해 전송되기 이전에 MDDI 호스트(208)에 의해서 MDDI 패킷들로 포맷된다. MDDI 클라이언트(220)는 MDDI 패킷들을 수신하여 디스플레이 데이터로 재변 환하고, 그 디스플레이 데이터를 LCD 모듈(216)에 의한 사용을 위해서 인터페이스 시스템(232)을 통해 처리한다.
인터페이스 시스템들(230 및 232)은 디지털 데이터 장치 인터페이스(100)의 상이한 실시예들을 나타낸다. 인터페이스 시스템(230)의 경우에, 디지털 데이터 장치 인터페이스(100) 엘리먼트들은 카메라를 위한 카메라 제어 기능들 및 카메라 이미지들의 데이터 전송을 지원하도록 구현될 것이다. 인터페이스 시스템(232)의 경우에, 디지털 데이터 장치 인터페이스(100) 엘리먼트들은 LCD에 대한 데이터 디스플레이 및 LCD에 대한 제어 기능들을 지원하도록 구현될 것이다. 인터페이스 시스템(230)은 또한 카메라 모듈(218)을 구비한 셀룰러 전화기(200)와 같이 카메라를 구비한 셀룰러 전화기에서 사용될 때 디지털 데이터 장치 인터페이스(100)의 실시예를 예시하기 위해서 설명된다.
도 1의 장치들과 셀룰러 전화기(200) 사이의 관계는 다음과 같다. 디지털 데이터 장치 인터페이스(100)는 인터페이스 시스템(230)으로 표현된다. 링크 제어기(140)는 MDDI 호스트(222)로 표현된다. 주변 장치(180)는 카메라 모듈(218)로 표현된다. 시스템 제어기(160)는 MSM(204)으로 표현되고, 링크 제어기(170)는 MDDI 클라이언트(206)로 표현된다.
도 3은 상부 클렘셀(214)을 나타내며, 카메라를 구비하는 셀룰러 전화기 내에서 사용될 때 디지털 데이터 장치 인터페이스(100)의 예시적인 실시예를 강조하기 위해서 인터페이스 시스템(230)에 관련하여 더욱 세부적인 설명을 제공한다. 인터페이스 시스템(230)은 MDDI 호스트(222), 카메라 메시지 해석기(302), 카메라 비디오 인터페이스(304), I2C 마스터(303), 모터 제어부(308) 및 플래시/백색 LED 타이머(310)를 포함한다. I2C 버스는 회로들 간의 통신 링크를 제공하는 일반적으로 사용되는 제어 버스이다. I2C 버스는 1980년 대에 Philips Electronics N.V.에서 개발되었다.
인터페이스 시스템(230)은 디지털 데이터 장치 인터페이스(100)에 상응한다는 것을 상기하자. 인터페이스 시스템(230)의 구성성분들은 다음의 방식에서 디지털 데이터 장치 인터페이스(100)의 구성성분들에 상응한다. 카메라 메시지 해석기(302)는 메시지 해석기 모듈(100)에 상응한다. 카메라 비디오 인터페이스(304)는 컨텐트 모듈(120)에 상응한다. 총괄적으로, I2C 마스터(303), 모터 제어부(308) 및 플래시/백색 LED 타이머(310)는 제어 모듈(130)에 상응한다.
카메라 메시지 해석기(302)는 명령들을 수신하며, MDDI 호스트(222)를 통한 MSM(204)로의 응답 메시지들을 생성한다. 카메라 메시지 해석기(302)는 그 메시지들을 해석하며, MDDI 카메라 인터페이스 장치로 지칭될 수 있는 인터페이스 시스템(230) 내의 적절한 블록에 정보 컨텐트를 라우팅한다. 카메라 비디오 인터페이스(304)는 카메라(320)로부터 이미지 데이터를 수신하고, 그 이미지 데이터를 저장하며, 그 이미지 데이터를 MDDI 호스트(222)에 전송한다. 총괄적으로, I2C 마스터(306), 모터 제어부(308) 및 플래시/백색 LED 타이머(310)가 카메라 제어 블록을 형성한다. 이 경우에는, I2C 마스터(306)가 카메라(320)를 관리하기 위한 제어들을 제공하고, 모터 제어부(308)가 렌즈들(322)(예컨대, 렌즈 줌 기능들)을 관리하기 위한 제어들을 제공하며, 플래시/백색 LED 타이머(310)가 플래시/백색 LED(324)(예컨대, 플래시 광도 및 지속시간)를 관리하기 위한 제어들을 제공한다.
도 4A는 MDDI 호스트(222)를 나타낸다. MDDI 호스트(222)는 마이크로프로세서 인터페이스(410), 명령 프로세서(420), 레지스터들(430), DMA(Direct Memory Access) 인터페이스(440), MDDI 패킷 빌더(450), 데이터 교환 모듈(460) 및 데이터 패드(470)를 포함한다. 마이크로프로세서 인터페이스(410)는 MDDI 호스트(222)를 제어하는 호스트 프로세서에 버스를 통해서 인터페이스한다. 호스트 프로세서는 레지스터들을 설정하고, 레지스터들을 판독하며 명령들을 MDDI 호스트(222)에 발송하기 위해서 마이크로프로세서 인터페이스(410)를 사용한다. 마이크로프로세서 인터페이스(410)는 주소 값들을 찾고, 명령 프로세서(420)에 기록들을 패스하는 것과 레지스터들(430) 내에서 레지스터들 값들에 대한 판독들 및 기록들을 패스하는 것을 포함해서 MDDI 호스트(222) 내의 적절한 모듈로 데이터를 패스한다.
명령 프로세서(420)는 호스트 프로세서로부터 수신되는 명령들을 처리한다. 그 명령들은 MDDI 링크(210)의 전력을 다운시키는 것, MDDI 링크(210)의 전력을 업시키는 것, MDDI 호스트(222)를 리셋시키는 것, 및 특정 타입들의 데이터 패킷들을 생성하는 것을 포함한다.
레지스터들(430)은 MDDI 링크(210)를 통해 데이터를 전송하기 위한 레지스터들을 저장한다. 레지스터들(430) 내의 레지스터들은 MDDI 링크(212)의 동작뿐만 아니라 MDDI 호스트(222)의 구성을 제어한다.
DMA 인터페이스(440)는 MDDI 패킷 빌더(450)에 대한 데이터를 버퍼링할 목적으로 인터페이스 시스템(230)으로부터 정보를 수신하기 위해서 외부 메모리에 버스 트 요청들을 제공한다. DMA 인터페이스(440)는 링크 리스트 노드 헤더들의 데이터를 분석하며, 실질적인 패킷 데이터를 판독하기 위해 포인터들을 조정한다. DMA 인터페이스(440)는 MDDI 패킷 빌더(450)에 전송할 다음 데이터 패킷에 대한 정보를 제공한다.
MDDI 패킷 빌더(450)는 어떤 패킷을 다음으로 전송할 것인지를 결정할 뿐만 아니라 MDDI 링크(222)를 통해 전달할 필요가 있을 물리적인 패킷들을 형성한다. 패킷들은 내부 레지스터들, 카운터들, 및 DMA 인터페이스(440)에 의해서 검색되는 데이터로부터 형성된다. 데이터가 MDDI 링크(222)를 통해 출력될 때, 출력 데이터는 몇몇 소스들로부터 생성될 수 있다. 제 1 패킷들 소스는 MDDI 패킷 빌더(450)에 대해 내부적으로 생성되는 제어 타입 패킷들이다. 예시적인 패킷들은 서브-프레임 헤더 패킷들을 포함하고, 패킷들을 채우며, 중단된 패킷들을 링크시킨다. 다른 패킷들 소스는 DMA 인터페이스(440)를 통해 이루어진다. 이러한 패킷들은 링크된 리스트들을 통해 전달되는 패킷들을 포함한다. 다른 실시예들에서 비디오 데이터는, 주변 장치들이 비디오 카메라를 포함하는 경우, MDDI 패킷 빌더(450)에 직접 전달될 수 있다. 패킷들의 소스에 상관없이, 모든 패킷들은 MDDI 패킷 빌더(450) 내에 있는 CRC 생성기 시스템을 통해 처리된다.
데이터 교환 모듈(460)은 물리적인 MDDI 링크(210)를 관리한다. 이러한 관리는 교환 처리, 데이터 출력, 왕복 지연 측정들 및 리버스 데이터를 책임지는 상태 머신을 통해 달성된다. 데이터 교환 모듈(460)은 MDDI 패킷 빌더(450)로부터 데이터를 수신하며, MDDI 링크(222) 상에서 데이터를 시프트아웃시키는 데이터 패 드(470)에 그 데이터를 전달한다.
도 4B는 MDDI 링크(210)에 제공될 패킷들의 흐름을 나타낸다. 위에서 설명된 바와 같이, 패킷들은 내부적으로 생성될 수 있거나, DMA 인터페이스(440)로부터 수신될 수 있거나, 직접적으로 수신되는 비디오 패킷들일 수 있다. 내부적으로 생성되는 패킷들은 제어 패킷 생성기(452)에 의해서 생성된다. 모든 타입들의 패킷들은 CRC 생성기 시스템(454)을 통해서 데이터 교환 모듈(460)에 전달된다. 데이터 교환 모듈(460)은 차례로 패킷들을 데이터 패드(470)에 제공하는데, 상기 데이터 패드(470)는 데이터를 MDDI 링크(210) 상에 놓는다.
도 4C는 MDDI 패킷 빌더(450)에 의해서 MDDI 링크(210)를 통해 수신되는 패킷들의 흐름을 나타낸다. 이 경우에, 패킷들은 데이터 패드(470)에 의해서 MDDI 링크(210)로부터 수신되고, 이어서 데이터 교환 모듈(460)에 보내진다. 데이터 교환 모듈(460)은 데이터를 MDDI 패킷 빌더(450) 내의 CRC 검사기(456)에 전달한다. 일단 CRC 검사기(456)가 인입 패킷의 CRC를 검증하면, 그 패킷은 디지털 데이터 인터페이스 장치(100) 내에서의 분배를 위해 프로세서 버스 상에 놓이도록 DMA 인터페이스(440)에 제공된다.
예시적인 패킷 타입들이 도 5 및 도 6을 참조하여 설명된다. 이러한 예시적인 패킷들은 본 발명을 설명하기 위해 사용될 뿐이지 본 발명을 이러한 타입들의 패킷들로만 제한하려 하는 것은 아니다. 아래에 설명되는 바와 같은 고유 패턴들을 사용하는 다른 패킷 타입들 및 CRC 필드들이 본 발명에 사용될 수 있다.
도 5는 VESA MDDI 인터페이스 표준에 따른 서브프레임 헤더 패킷 포맷(500) 을 나타낸다. 서브프레임 헤더 패킷 포맷(500)은 패킷 길이 필드(510), 패킷 타입 길이 필드(520), 고유 워드 필드(530), 서브프레임 헤더 파라미터 필드(540) 및 CRC 필드(550)를 포함한다. 패킷 길이 필드(510)는 패킷 길이 필드(510)를 포함하지 않는 패킷에서의 총 바이트들 수를 명시하는 16 비트(2 바이트)를 포함한다. 패킷 타입 필드(520)는 패킷에 보유되는 정보의 타입을 명시하는 16 비트의 비서명된 정수를 포함한다. 고유 워드 필드(530)는 고유한 16 비트 워드를 포함한다. 고유 워드 필드 및 패킷 타입 필드(520) 모두는 데이터를 정렬시키기 위해서 32-비트 고유 패턴을 형성하라는 것으로 인지된다. 즉, 패킷들을 수신하였을 때, MDDI 패킷 빌더(450)는 데이터 패킷의 어느 부분 또는 필드를 자신이 처리하는지를 고유 패턴에 기초하여 결정할 수 있다. 서브프레임 헤더 파라미터 필드(540)는 MDDI 링크(222)를 관리하기 위한 제어 파라미터들을 포함한다. CRC 필드는 16 비트 CRC 값을 포함한다.
도 6은 비디오 스트림 패킷 포맷(600)을 나타낸다. 비디오 스트림 패킷들은 디스플레이의 직사각형 부분을 업데이팅하기 위해서 비디오 데이터를 운반한다. 비디오 스트림 패킷 포맷(600)은 패킷 길이 필드(610), 패킷 타입 필드(615), 클라이언트 ID 필드(620), 비디오 포맷 필드(625), 픽셀 데이터 속성 필드(630), X 좌측 에지 필드(635), Y 상단 에지 필드(640), X 우측 에지 필드(645), Y 하단 에지 필드(650), X 개시 필드(655), Y 개시 필드(660), 픽셀 카운트 필드(665), 파라미터 CRC 필드(670), 픽셀 데이터 필드(675), 및 픽셀 데이터 CRC 필드(680)를 포함한다.
패킷 길이 필드(610)는 패킷 길이 필드(610)를 포함하지 않는 패킷에서 총 바이트들 수를 명시하는 16 비트(2 바이트) 값을 포함한다. 패킷 타입 필드(620)는 패킷에 보유되는 정보의 타입을 명시하는 2 바이트의 비서명된 정수를 포함한다.
필드들(620 내지 665)은 비디오 디스플레이가 어떻게 포맷되어야 하는지에 관한 파라미터 데이터를 포함하는 각각의 2 바이트 필드들이다. 이러한 필드들에 대한 특정한 정의는 VESA MDDI 인터페이스 표준에서 찾아볼 수 있다. 파라미터 CRC 필드(670)는 필드들(610 내지 665) 내의 파라미터를 처리함으로써 생성되는 CRC 값을 포함하고 있는 2 바이트 필드이다.
픽셀 데이터 필드(675)는 패킷의 크기 및 픽셀 카운트 필드에 의해서 허용되는 최대 양까지 임의의 양의 픽셀 데이터를 포함한다. 픽셀 CRC 필드(680)는 픽셀 데이터 필드(675) 내의 픽셀 데이터를 처리함으로써 생성되는 CRC 값을 포함하고 있는 2 바이트 필드이다.
MDDI 링크(210)를 통해 전송되는 모든 패킷은 서브프레임 헤더 패킷 포맷(500) 내의 CRC 필드(550)와 같은 적어도 하나의 CRC 필드를 포함할 것이다. 일부 더 긴 패킷들에서는, 패킷이 비디오 스트림 패킷 포맷(600) 내에 파라미터 CRC 필드(670) 및 픽셀 CRC 필드(680)와 같은 2 개의 CRC 필드들을 포함할 것이다.
CRC는 전송 또는 저장에 있어서의 에러들을 검출하기 위해서 네트워크 트래픽의 패킷 또는 컴퓨터 파일의 블록과 같은 큰 데이터 블록으로부터 작은 수의 비트들을 생성한다. CRC는 전송 또는 저장 또는 저장되기 이전에 전송 및 첨부될 데 이터{예컨대, CRC 필드(550)를 가짐}에 따라 계산되며, 어떠한 변화도 발생하지 않았다는 것을 확인하기 위해서 그 후에 검증된다.
CRC는 패킷 데이터와 연관된 고유 CRC 값을 생성하기 위해서 CRC 생성기 시스템(454)과 같은 CRC 생성기를 통해 패킷 데이터를 푸싱(pushing)함으로써 계산된다. CRC 검사기(456)와 같은 CRC 검사기는 수신되는 데이터에 기초하여 수신된 데이터 CRC 값을 생성한다. 이어서, 상기 수신되는 데이터 CRC 값은 전송된 CRC 값과 비교된다. 만약 그 둘이 일치한다면, 그 데이터를 유효 데이터로 간주되지만, 그렇지 않다면, CRC 에러가 생성된다.
CRC들은 이진 하드웨어로 구현하기에 간단하고 기계적으로 분석하기에 쉬우며 또한 전송 채널들에서 잡음에 의해 야기되는 공통 에러들을 검출할 때 특히 유리하기 때문에 널리 사용된다. CRC 생성기들에 대한 특정 구현들을 당업자들은 알 것이다.
도 5 및 도 6에 도시된 바와 같이, CRC 필드들{예컨대, CRC 필드(512) 및 픽셀 데이터 CRC 필드(680)}은 패킷들의 마지막에 나타나며, 때로는 상당히 큰 데이터 필드{예컨대, 파라미터 CRC 필드(670)}를 가질 수 있음으로써 전송 동안에 증가된 에러 가능성을 가질 수 있는 패킷들에서의 특정의 더 많은 중요 파라미터들 다음에 나타난다. 두 개의 CRC 필드들을 갖는 패킷들에서는, CRC 생성기는, 단지 하나만 사용될 경우에, 제 1 CRC 이후에 다시 초기화되고, 그럼으로써 긴 데이터 필드 이후의 CRC 계산들은 패킷의 처음에 있는 파라미터들에 의해서 영향을 받지 않는다.
다중 비트 에러들을 포함하고 있는 패킷들이 훌륭한 CRC를 생성할 가능성은 희박하다. 에러들을 갖는 패킷에서 훌륭한 CRC를 검출할 가능성은 많은 에러들을 갖는 매우 긴 패킷들에서는 대략 7.6×10-6이다. 설계를 통해서, MDDI 링크는 매우 낮거나 제로인 에러율을 가질 것이다. CRC는 링크의 양호한 상태를 모니터링하기 위해 사용되도록 의도되며, 패킷들이 재전송되어야하는지 여부를 결정하기 위해서 특정 패킷들에서의 에러들을 검출하도록 의도되지는 않는다.
예시적인 실시예에서, CRC 계산을 위해 사용되는 다항식은 CRC-16 또는 X16+X15+X2+X0으로 공지되어 있다. 본 발명을 구현하는데 유용한 CRC 생성기(454) 및 CRC 검사기(456)의 간단한 구현이 도 4D에 도시되어 있다. 도 4D에서, CRC 레지스터(471)는 Tx_MDDI_Data_Before_CRC 라인을 통해 입력되는 패킷의 제 1 비트의 전송 바로 이전에 0x0001의 값으로 초기화되고, 이어서 그 패킷의 바이트들이 제일 먼저 LSB를 시작으로 레지스터에서 시프트된다. 이 도면에서 레지스터 비트 번호들은 사용되는 다항식의 차수에 상응하지만 MDDI에 의해 사용되는 비트 위치들에 상응하지 않는다는 것을 주시하라. 한 방향으로 CRC 레지스터를 시프트시키는 것이 더욱 효율적이고, 이는 결국 MDDI CRC 필드의 비트 위치 '0'에서는 CRC 비트 15가 나타나고 MDDI CRC 필드의 비트 위치 '1'에서는 CRC 레지스터 비트 14가 나타나고, MDDI 비트 위치 '14'에 도달할 때까지 계속해서 이러한 방식을 따르도록 한다.
일예로서, 만약 패킷 컨텐츠들이 0x000c, 0x0046, 0x000, 0x0400, 0x00, 0x00, 0x000(또는 0x0c, 0x00, 0x46, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00인 바이트들의 시퀀스로 표현됨)이고, 멀티플렉서들(472 및 473) 및 AND 게이트(474)의 입력들을 사용하여 제공된다면, Tx_MDDI_Data_With_CRC 라인을 통해 출력되는 최종적인 CRC는 0xd9aa(또는 0xaa, 0xd9인 시퀀스로 표현됨)이다.
CRC 생성기(454) 및 CRC 검사기(456)가 CRC 검사기로서 구성될 경우, Rx_MDDI_Data 라인을 통해 수신되는 CRC는 멀티플렉서(472) 및 exclusive-OR(XOR) 게이트(476)에 입력되며, NOR 게이트(475), AND 게이트(474), 및 AND 게이트(477)를 사용하여 CRC 레지스터에서 구해진 값과 비트마다 비교된다. 만약 AND 게이트(477)에 의한 출력 시 임의의 에러들이 존재한다면, CRC는 레지스터(471)의 입력에 게이트(477)의 출력을 접속시킴으로써 CRC 에러를 포함하는 모든 패킷에 대해서 한번 증가된다. 도 4D에 도시된 예시적인 회로는 정해진 CHECK_CRC_NOW 윈도우 내에서 하나 보다 많은 수의 CRC 에러 신호를 출력할 수 있다는 것을 주시하라(도 4 참조). 그러므로, CRC 에러 카운터는 일반적으로 CHECK_CRC_NOW이 활성되는 각각의 시간 구간 내에서 첫 번째 CRC 에러 경우를 단지 카운트한다. 만약 CRC 생성기로서 구성된다면, CRC는 패킷의 마지막과 일치하는 시간에 CRC 레지스터 밖에서 클록킹된다.
입력 및 출력 신호들 그리고 인에이블링 신호에 대한 타이밍이 도 4E 및 도 4F에 그래프로 도시되어 있다. CRC의 생성 및 데이터 패킷의 전송이 Tx_MDDI_Data_Before_CRC 및 Tx_MDDI_Data_With_CRC 신호들과 함께 Gen_Reset, Check_CRC_Now, Generate_CRC_Now, 및 Sending_MDDI_Data 신호들의 상태(0 또는 1)를 갖는 것으로 도 4E에 도시되어 있다. 데이터 패킷의 수신 및 CRC 값의 검사가 Rx_MDDI_Data 및 CRC 에러 신호들과 함께 Gen_Reset, Check_CRC_Now, Generate_CRC_Now, 및 Sending_MDDI_Data 신호들의 상태를 갖는 것으로 도 4F에 도시되어 있다.
패킷들 내에 CRC들을 제공하는 것은 연산 도전들(operational challenges)을 제공하며, 또한 MDDI 링크(210)를 더욱 효율적으로 활용할 다양한 기회들을 제공한다. 비록 설명은 MDDI 링크(210)에 관련한 CRC 사용들에 초점을 맞추고 있지만, 본 발명은 MDDI 링크로 제한되지는 않는다. 본 발명은 CRC들이 사용되는 임의의 타입의 디지털 데이터 전송 링크에 적용될 수 있다.
CRC들의 사용과 연관된 한 도전은 링크 초기화에 관한 것이다. 링크가 형성되었을 때, 서브프레임 헤더 패킷(500)과 같은 서브프레임 헤더 패킷이 MDDI 호스트(222)로부터 MDDI 클라이언트(206)에 전송될 것이다. 링크가 초기화되었을 때, 보통은 CRC 검사기(456)는 데이터 스트림 내에서 데이터의 정렬을 알지 못할 것이다. 즉, CRC 검사기(456)는 고유 워드 필드(530) 또는 CRC 필드(550) 내의 데이터를 처리하고 있었는지를 알지 못할 것이다. 그 결과, CRC 검사기(456)는 데이터가 데이터 스트림의 어디에 있는지를 알 때까지 그 데이터를 메모리에 계속해서 대기시킬 필요가 있을 것이다. 이는 비효율성을 야기하며, 데이터를 대기시키고 저장하기 위해서 더 많은 메모리 및 칩 영역을 필요로 한다. 데이터 스트림 내에서의 정확한 위치를 알지 못하면, CRC 검사기(456)는 수신된 데이터를 검증하기 위해서 수신된 CRC에 비교될 수 있는 CRC를 생성할 수 없을 것이다.
도 7은 이러한 도전들을 처리하는 CRC 검사기(456)를 나타낸다. CRC 검사기 (456)는 고유 패턴 검출기(710), CRC 생성기(720), CRC 초기화기(730) 및 CRC 검증기(740)를 포함한다. 고유 패턴 검출기(710)는 데이터 스트림 내의 특정 위치를 식별하기 위해서 인입 데이터 스트림 내에서 고유 패턴을 검출한다. CRC 생성기(720)는 수신된 데이터와 연관있는 CRC 값들을 생성하기 위해 사용되는 표준 CRC 생성기이다. CRC 초기화기(730)는 고유 패턴 및 패킷 길이와 연관된 데이터 값들을 통해 CRC 생성기(720)를 펌핑한다. CRC 검증기(740)는 데이터를 검증하기 위해서 수신된 데이터에 기초하여 CRC 생성기(720)에 의해 생성된 CRC 값과 수신된 CRC 값을 비교한다.
도 8은 도 7에 도시된 바와 같은 CRC 검사기(456)의 사용을 설명하는 링크를 초기화시키는 방법(800)의 흐름도이다. 한 접근방법에 있어서, 서브프레임 헤더의 패킷 길이는 항상 동일한 것으로 가정되고, 패킷 길이, 패킷 타입 및 고유 워드에 기초하여 부분적인 CRC인 미리 계산된 값이 CRC 검사기에 로딩된다. 대안적인 접근방법은 패킷 길이가 가변적인 상황을 지원한다. 이 상황에서는, 고유 패턴과 함께 패킷 길이가 고유 패턴이 수신되는 시점에 CRC 검사기에 있게 될 값을 생성하기 위해서 사전-계산기를 통해 펌핑될 수 있다.
방법(800)은 단계(810)에서 시작된다. 단계(810)에서는, 전송 링크를 초기화하거나 웨이크업시키라는 요청이 수신된다. 예컨대, MDDI 클라이언트(206)가 MDDI 링크(210)를 초기화하거나 웨이크업시키라는 요청을 MDDI 호스트(222)로부터 수신할 수 있다. MDDI 클라이언트(206) 내에서, CRC 검사기(456)는 이러한 링크 웨이크업에 의해서 초기화될 것이다. 특히, CRC 초기화기(730)는 상기 요청에 의 해서 초기화될 것이다.
단계(820)에서, CRC 생성기는 고유 패턴 및 패킷 길이 필드(510)와 연관된 CRC 값들이 CRC 생성기에 의해서 생성되도록 하기 위해 상기 고유 패턴 및 패킷 길이 필드(510)와 연관된 데이터 값들이 미리 존재한다. 위에서 설명된 바와 같이, 일실시예에서, 패킷 길이 필드는 고정된 것으로 가정된다. 예컨대, CRC 초기화기(730)는 고유 패턴 및 패킷 길이 필드를 CRC 생성기(720)에 제공할 수 있다. MDDI의 경우에, 고유 패턴은 패킷 타입 필드(520) 및 고유 워드 필드(530) 내에 포함되는 데이터와 연관있는 데이터 값들이다. 링크를 웨이크업시켰을 때, 이러한 필드들의 값들은 선험적으로 알려질 것이다. 따라서, CRC 초기화기(730)는 그것들을 저장할 수 있고, 웨이크업 링크 요청이 수신되었을 때 CRC 생성기(730)에 그것들을 제공할 수 있다. 대안적인 접근방법에서는, 데이터 값들을 CRC 생성기에 제공하기보다는 오히려, CRC 검사기에는 고유 패턴 및 패킷 길이 필드가 제공된 CRC 생성기에 의해서 생성될 사전 계산된 CRC 값이 사전에 로딩될 수 있다.
단계(830)에서는, CRC 생성기(720)와 같은 CRC 생성기가 디스에이블된다. 상기 생성기는 고유 패턴 및 패킷 길이 필드가 수신될 때까지 CRC 값을 변경할 추가 데이터를 처리하지 않도록 디스에이블된다.
단계(840)에서는, 인입 데이터가 고유 데이터 패턴의 수신을 검사하기 위해 모니터링된다. 예컨대, 고유 패턴 검출기(710)가 MDDI 링크(210)로부터의 수신되는 데이터를 모니터링한다.
단계(850)에서는, 고유 패턴이 수신되었는지가 결정된다. 예컨대, 고유 패 턴 검출기(710)는 패킷 길이 필드(510), 패킷 타입 필드(520) 및 고유 워드 필드(530)가 수신되었는지를 결정한다.
단계(860)에서는, CRC 생성기가 인에이블된다. 인에이블되었을 때, CRC 생성기(720)는 사전 로딩된 고유 패턴을 사용하여 생성되어진 기존의 CRC 값에 의지할 것이다. 그 결과, CRC 생성기(720)는 즉시 그 데이터를 통해 조정되고, 메모리에 데이터를 대기시키거나 저장할 필요가 없게 된다. CRC 필드(550)에 포함된 CRC 값을 수신하였을 때, CRC 검증기(740)는 CRC 에러가 존재하는지 여부를 결정하기 위해서 CRC 필드(550) 내의 값을 CRC 생성기(720)에 의해 생성된 값에 비교할 수 있다. 단계(870)에서는, 방법(800)이 종료된다.
통상, CRC 값은 전송 링크 상의 문제점이 전송 동안에 데이터를 커럽트시켰는지 여부를 결정하기 위해서 사용된다. 본 발명이 다른 양상에서는, CRC 값들이 시스템 에러들 및 상태에 관련된 정보를 전달하는데 사용된다. 이러한 방식에서는, 메시지들 내의 CRC 필드들이 시스템 상태 또는 에러 정보 그리고 전송 링크 문제점들의 식별 모두를 지원하기 위해서 더욱 효율적으로 사용될 수 있다.
본 발명의 일실시예에서, CRC 필드 데이터는 데이터를 전송하는 시스템에 무엇인가 잘못되었고 따라서 수신되고 있는 데이터에 문제점들이 있을 수 있다는 것을 간단히 알리기 위해서 커럽트된다. 예컨대, 일부 경우들에서는, MDDI 링크(210)를 통해 전송되는 데이터가 MDDI 패킷 빌더(450)에 들어오는 데이터가 충분히 신속하게 수신되지 않았기 때문에 커럽트될 것이다. 비록 패킷에 대해 불충분한 데이터가 이용가능하였을 지라도, MDDI 규격은 패킷이 여전히 전송되어야 한다는 것을 나타낸다. 따라서, 비록 패킷이 전송되더라도, 데이터는 유효하지 않을 수 있거나 어쨌든 불충분할 수 있다.
이 경우에, 파라미터 CRC(6770) 또는 픽셀 데이터 CRC(680)와 같은 CRC 값이 의도적으로 커럽트됨으로써, MDDI 클라이언트(206)는 전송된 패킷의 완전성을 떨어뜨리는 무엇인가가 발생했다는 것을 알 수 있다. MDDI 규격에서는, 이는 데이터에 문제가 있었다는 것을 MDDI 클라이언트(206)에 알려주는 방법이다. 대안적으로, 다른 메시지는 'the last packet that I sent was bad'로 실질적으로 지칭되는, 에러를 포함한 패킷 이후에 다른 메시지가 전송될 필요가 있을 것이다.
CRC 값이 의도적으로 커럽트되어진 패킷을 MDDI 클라이언트(206)가 수신하였을 때, 그 패킷을 어떻게 처리할 것인지가 결정된다. 의도적으로 커럽트된 CRC 값을 가진 패킷을 검출하고 이를 어떻게 처리할 것인지를 결정하는 알고리즘들이 개발될 수 있다. 특정 타입들의 패킷들의 경우에, MDDI 클라이언트(206)는 CRC 에러를 간단히 레코딩하고 데이터를 계속해서 사용할 수 있다. 반면에 다른 상황들에서는, MDDI 클라이언트(206)는 수신된 패킷을 버리고 새로운 패킷을 요청할 수 있다.
예컨대, 비디오 스트림 패킷(600)과 같은 비디오 패킷들 내에서는, 만약 픽셀 데이터 CRC 값(680)이 의도적으로 커럽트된다면, MDDI 클라이언트(220)는 패킷이 커럽트되었다는 것을 자신의 외부에 있는 로직에 알리지 않을 것이다. 이 경우에는, 수신된 데이터는 임의의 종류의 에러 통보를 제공하기 이전에 버퍼링될 수 있다. 모든 비디오 데이터(즉, 디스플레이될 모든 픽셀 데이터)를 잠재적으로 버 퍼링하기에 충분한 메모리가 없다. 따라서, 픽셀 데이터가 수신되자마자, 그것은 디스플레이에 제공된다. 그 결과, 만약 비디오 정보의 어딘가에 CRC 에러가 있다면, 비디오 정보가 사용되는 것을 막는 것은 너무 늦다. 이 경우에는, 문제가 발생했다는 것을 기록하는 것 이외에는 아무것도 수행되지 않는다. 요약하면, 만약 의도적으로 커럽트된 CRC 에러가 픽셀 데이터에서 발생하고 파라미터 데이터에서는 발생하지 않는다면, MDDI 클라이언트는 에러 카운트에 CRC 에러를 간단히 레코딩하지만, 여전히 후속 픽셀 데이터를 사용한다. 만약, 다른 한 편으로, 파라미터 CRC 값이 의도적으로 커럽트된다면, MDDI 클라이언트는 그 픽셀 데이터를 사용하지 않은 것이다.
도 9는 CRC 값을 의도적으로 커럽트시키는 메커니즘을 제공하는 순환 중복 생성기 시스템(454)을 나타낸다. 순환 중복 생성기 시스템(454)은 CRC 생성기(910), CRC 커럽터(920), 에러 검출기(930) 및 에러 값 생성기(940)를 포함한다.
CRC 생성기(910)는 MDDI 링크(210)와 같은(그러나, 그러한 링크로 제한되지는 않음) 디지털 전송 링크를 통해 전송될 데이터 패킷에 포함된 데이터에 기초하여 CRC 값을 생성한다.
CRC 생성기(920)는 호스트 또는 원격 시스템 상태 정보를 전달하기 위해서 CRC 생성기(910)에 의해 생성된 CRC 값을 커럽트시킨다. 예컨대, 만약 인터페이스 시스템(230)이 MDDI 패킷을 적절히 제공하기에 충분할 정도로 신속하게 데이터를 MDDI 호스트(222)에 제공할 수 없다면, CRC 커럽터(920)는 전송될 패킷의 CRC 값을 의도적으로 커럽트시킨다.
에러 검출기(930)는 MDDI 호스트(222)와 같은 호스트 시스템 내에서 에러 상황을 검출하거나, 또는 인터페이스 시스템(230)으로부터 수신되는 정보에 기초하여 에러 상황 정보를 수신하고 또한 CRC 값을 의도적으로 커럽트시키도록 CRC 커럽터(920)에 지시를 내린다. 일 실시예에서, 에러 검출기(930)는 무엇인가 잘못되었다는 것을 간단히 검출하지만, 특정 에러 상황을 결정하지는 않는다. 다른 실시예에서, 에러 검출기(930)는 특정 타입의 에러 상황을 결정한다. 후자의 실시예에서, 에러 검출기(930)는 에러의 특성을 에러 값 생성기(940)에 전달한다. 에러 값 생성기(940)는 시스템 에러 또는 상태 상황의 타입을 나타내는 특정 값으로 CRC 생성기(910)에 의해서 생성된 CRC 값을 대체하도록 CRC 커럽터(940)에 지시한다.
CRC 값을 커럽트시킬 때, 의도적인 커럽션이 유효 데이터에 상응할 수 있음으로써 전송 링크의 수신 종료 시에 CRC 검사기에 의해 고유 CRC 값으로서 수신되지 않을 CRC 값을 유도하지 않도록 보장하는 알고리즘들이 선택되어야 한다. 한 가능한 알고리즘은 유효 데이터에 의해서 생성되지 않을 이러한 CRC 값들을 식별할 것이며, CRC 값을 의도적으로 커럽트시키기 위한 고유 값들로서 이러한 값들을 사용할 것이다. 본 명세서의 내용들에 기초하여, 당업자는 본 발명의 사상 및 범위 내에 포함되는 다른 알고리즘들을 결정할 것이다.
도 10은 CRC 생성기 시스템(454)으로부터의 의도적으로 커럽트된 CRC 값들을 해석하는 CRC 검사기(456)를 나타낸다. CRC 검사기(456)는 CRC 에러 값 검출기(1010), CRC 생성기(1020) 및 CRC 검증기(1030)를 포함한다. CRC 에러 값 검출기(1010)는 디지털 전송 링크를 통해 수신되는 데이터 패킷의 CRC 필드 내의 값들을 검출한다. CRC 에러 값 검출기(1010)는 CRC 값이 시스템 에러 상황을 식별하는 의도적으로 커럽트된 CRC 값에 상응하는 때를 식별한다. 시스템 에러 상황에 상응하는 CRC 값이 식별될 때, CRC 에러 값 검출기(101)는 MDDI 클라이언트(206)와 같은 수신 클라이언트의 호스트 프로세서에 알려준다. 이어서, 호스트 프로세서는 검출된 에러의 타입에 기초하여 액션을 취할 것이다. CRC 생성기(1020)는 수신된 데이터 스트림에 기초하여 CRC 값들을 생성한다. CRC 검증기(1030)는 수신된 데이터 스트림을 통해 전송되어진 CRC 값과 수신된 데이터 스트림에 기초하여 생성된 CRC 값 간의 차이들을 검출한다. CRC 생성기(1020) 및 CRC 검증기(1030)는 당업자가 알고 있는 통상적인 방식으로 동작한다.
도 11은 CRC 값을 의도적으로 커럽트시킴으로써 디지털 전송 링크를 통해 시스템 에러 정보를 전송하는 방법(1100)의 흐름도이다. 방법(1100)은 단계(1110)에서 시작된다. 단계(1110)에서는, 호스트 시스템 또는 관련 시스템 내에서의 에러가 검출된다. 예컨대, 에러 검출기(930)는 MDDI 호스트(222) 또는 인터페이스 시스템(230) 내에서의 에러를 검출한다. 단계(1120)에서는, CRC 값이 생성된다. 예컨대, CRC 생성기(910)는 전송될 패킷과 연관있는 데이터에 대한 CRC 값을 생성한다. 단계(1130)에서는, CRC 값이 커럽트된다. 예컨대, 에러 검출기(930)는 CRC 값을 커럽트시키라고 CRC 커럽터(920)에 지시한다. 단계(1140)에서는, 방법(1100)이 종료된다. 비록 방법(1100)은 MDDI를 포함하는 시스템과 관련하여 설명되었지만, 상기 방법(1100)이 CRC들이 사용되는 임의의 디지털 전송 시스템에 적용될 수 있다는 것을 주시하라.
본 발명 내에서는, CRC 필드들이 에러들의 타입들을 나타내기 위해서 에러 코드 정보를 전송할 수도 있다. 단지 데이터 패킷들 및 CRC가 호스트와 클라이언트 사이에서 전송되고 있을 때는 언제든지, 수용되는 에러 코드들은 없다. 단지 에러는 동기화의 손실이다. 그렇지 않다면, 양호한 데이터 전송 경로 또는 파이프라인의 결핍으로 인해 링크가 종료되고 이어서 그 링크를 리셋하고 진행하는 것을 기다려야 한다. 불행히도, 이는 시간 소모적이면서 다소 비효율적이다.
일 실시예에서 사용하는 경우에, 패킷들의 CRC 부분이 에러 코드 정보를 전송하기 위해 사용되는 새로운 기술이 개발되었다. 즉, 하나 이상의 에러 코드들이 통신 처리과정 또는 링크 내에서 발생할 수도 있는 특정의 미리 정해진 에러들 또는 결점들을 나타내는 데이터 전송을 처리하는 프로세서들 또는 장치들에 의해 생성된다. 에러가 발생되었을 때, 적절한 에러 코드가 생성되며 패킷의 CRC에 대한 비트들을 사용하여 전송된다. 즉, CRC 값은 CRC 필드의 값들을 모니터링하는 에러 모니터 또는 검사기에 의해서 수신 종료 시에 검출될 수 있는 원하는 에러 코드를 통해 오버로드되거나 오버라이팅된다. 에러 코드가 무엇인가의 이유로 인해서 CRC 값과 일치하는 경우에는, 에러의 컴플리먼트(compliment)가 혼동을 방지하기 위해서 전송된다.
일실시예에서는, 강력한 에러 경고 및 검출 시스템을 제공하기 위해서, 에러가 검출된 이후에 전송되거나 송신되는 일련의 패킷들(일반적으로는 모든 패킷들)을 사용하여 에러 코드가 여러 차례 전송될 수 있다. 이는 에러를 발생시킨 상황이 시스템으로부터 클리어되는 시점까지 발생하는데, 그 시점에서는 규칙적인 CRC 비트들이 다른 값에 의해 오버로딩되지 않고도 전송된다.
CRC 값을 오버로딩하는 이러한 기술은 시스템 에러들에 대한 훨씬 더 신속한 응답을 제공하는 동시에 최소 량의 추가 비트들 또는 필드들을 사용한다.
도 12에 도시된 바와 같이, 에러 검출기(930)와 같은 에러 검출기 또는 검출 수단(102)을 사용하는 CRC 오버라이팅 메커니즘 또는 장치(1200)가 도시되어 있는데, 상기 에러 검출기(930)는 앞서 설명되거나 공지된 다른 회로의 일부분을 형성할 수 있고, 통신 링크 또는 처리 내에서 에러들의 존재 또는 실체를 검출한다. 사전에 선택된 에러 메시지들을 저장하기 위해서 룩업 테이블들과 같은 기술들을 사용하거나 다른 회로의 일부분으로서 형성될 수 있는 에러 값 생성기(940)와 같은 에러 코드 생성기 또는 수단(1204)은 발생하였을 때 검출되는 특정의 미리 정해진 에러들 또는 결점들을 나타내기 위해서 하나 이상의 에러 코드들을 생성한다. 장치들(1202 및 1204)이 원할 경우에 단일 회로 또는 장치로서 형성되거나, 또는 다른 공지된 프로세서들 및 엘리먼트들에 대한 프로그래밍된 단계들 시퀀스의 일부분으로서 형성될 수 있다는 것을 쉽게 알게 된다.
선택된 에러 코드 또는 코드들이 전송되는 CRC 값과 동일한 지를 확인할 목적으로 검사하기 위한 CRC 검증기(1030)와 같은 CRC 값 비교기 또는 비교 수단(1206)이 도시되어 있다. 만약 그렇다면, 코드 컴플리먼트 생성기 또는 생성 수단 또는 장치가 본래 CRC 패턴 또는 값으로서 혼동되지 않고 또한 검출 메커니즘을 혼동시키거나 복잡하지 않도록 하기 위해서 에러 코드들의 컴플리먼트를 제공할 목적으로 제공된다. 이어서, 에러 코드 선택기 또는 선택 수단 엘리먼트 또는 장치 (1210)가 자신이 삽입하거나 오버라이트하고자 하는 에러 코드 또는 값, 또는 적합한 경우에는 그들의 각각의 컴플리먼트들을 선택한다. CRC 커럽터(920)와 같은 에러 코드 CRC 오버라이터 또는 오버라이팅 메커니즘 또는 수단(1212)은 원하는 에러 코드들을 수신 장치에 전송하기 위해서, 삽입될 데이터 스트림, 패킷들, 및 원하는 코드들을 수신하고 상응하거나 적절한 CRC 값들을 오버라이팅하는 장치이다.
설명된 바와 같이, 에러 코드는 일련의 패킷들을 사용하여 여러 차례 전송될 수 있고, 따라서 오버라이터(1212)가 처리과정 동안에 코드들의 복사본들을 유지하거나 또는 필요시 또는 원할 경우에 자신들의 값들을 저장하거나 보관하기 위해 사용되는 앞선 엘리먼트들 또는 다른 공지된 저장 위치들로부터 이러한 코드들을 소환할 목적으로 메모리 저장 엘리먼트들을 활용할 수 있다.
도 12의 오버라이팅 메커니즘에 대한 일반적이 처리과정은 도 13 및 도 14의 추가적인 상세한 설명에 제시되어 있다. 도 13에서는, 단계(1302)에서 하나 이상의 에러가 통신 데이터 또는 처리에서 검출되고, 단계(1304)에서 에러 코드가 이러한 상황을 알리기 위해서 선택된다. 동시에 또는 적절한 시기에, 대체될 CRC 값이 단계(1306)에서 검사되며, 단계(1308)에서 원하는 에러 코드와 비교된다. 이러한 비교의 결과는, 초기에 설명된 바와 같이, 원하는 코드 또는 다른 대표적인 값들이 제공되는 CRC 값과 동일한지 여부에 대한 결과이다. 만약 그러하다면, 처리과정은 단계(1312)로 진행하고, 단계(1312)에서는 컴플리먼트 또는 일부 경우들에서는 다른 대표적인 값이 필요시에 삽입할 코드로서 선택된다. 단계들(1310 및 1314)에서 어떠한 에러 코드들 또는 값들이 삽입될 지가 결정되며, 적절한 코드가 메커니즘을 위해 선택된다. 이러한 단계들은 명확성을 위해 개별적으로 도시되어 있지만, 일반적으로는 단계(1308)에서의 결정의 출력에 따라 한 번의 선택을 나타낸다. 마지막으로, 단계(1316)에서는, 적절한 값들이 처리에 의해서 목표가 되는 패킷들과의 전송을 위해서 CRC 위치에서 오버라이팅된다.
패킷 수신 측에서는, 도 14에 도시된 바와 같이, 패킷 CRC 값들이 단계(1422)에서 모니터링되고 있다. 일반적으로, CRC 값들은, 데이터 전송에서 에러가 발생했는지 및 패킷 또는 패킷들의 재전송을 요청하였는지 여부 또는 추가적인 동작들을 금지시켰는지 여부를 결정하기 위해서, 시스템 내에서 하나 이상의 처리들에 의해 모니터링되고 있고, 이들 중 일부가 위에서 설명된다. 그러한 모니터링의 일부로서, 정보가 값들을 공지되거나 사전 선택된 에러 코드들 또는 대표 값들에 비교하기 위해서 그리고 에러들의 존재를 검출하기 위해서 또한 사용될 수 있다. 대안적으로, 별도의 에러 검출 처리 및 모니터가 구현될 수 있다. 만약 코드가 존재하는 것으로 나타난다면, 추가적인 처리를 위해 단계(1424)에서 그것은 추출되거나 그렇지 않다면 주의된다. 그것이 실질적인 코드인지 또는 컴플리먼트인지 여부에 대한 결정이 단계(1426)에서 이루어질 수 있는데, 이 경우에는 추가적인 단계(1428)가 그 값을 원하는 코드 값으로 전환하기 위해 사용된다. 어떻든, 최종적인 추출된 코드, 컴플리먼트, 또는 다른 복원된 값들이 단계(1430)에서 어떤 에러가 전송된 코드로부터 발생했는지를 검출하기 위해 사용된다.
결말
본 발명의 예시적인 실시예들이 제공되었다. 본 발명은 이러한 실시예들로 제한되지는 않는다. 이러한 실시예들은 설명을 위해 제공되는 것이지 제한하기 위해 제공되지 않았다. 본 명세서에 포함된 내용들에 기초하여 다른 대안들(본 명세서에서 설명된 것들의 동일물들, 확장들, 변형들, 변경들을 포함함)이 당업자들에게 자명해 질 것이다. 그러한 대안들은 본 발명의 범위 및 사상 내에 있다.
본 명세서에서 언급되어진 모든 공개문헌들, 특허문헌들 및 특허 출원문헌들은 당업자들의 기술 수준을 나타내는 것이며, 각각의 개별적인 공개문헌, 특허 또는 특허 출원 문헌이 특별히 참조문헌으로서 포함되는 것으로 제시되어지는 한 참조문헌으로서 본 명세서 포함된다.

Claims (19)

  1. 순환 중복 검사(CRC) 검사기로서,
    디지털 전송 링크를 통해 수신되는 데이터 스트림 내에서 고유 패턴을 검출하는 고유 패턴 검출기;
    상기 수신되는 데이터 스트림에 기초하여 CRC 값들을 생성하는 CRC 생성기;
    CRC 초기화기; 및
    수신된 데이터 스트림에 기초하여 생성된 CRC 값과 상기 수신된 데이터 스트림을 통해 전송된 CRC 값 간의 차이들을 검출하는 CRC 검증기를 포함하는,
    순환 중복 검사(CRC) 검사기.
  2. 제 1항에 있어서, 상기 CRC 초기화기는 링크 초기화 시에 고유 패턴을 CRC 생성기에 사전 제공하는(prepopulate), 순환 중복 검사(CRC) 검사기.
  3. 제 1항에 있어서, 상기 CRC 초기화기는 고유 패턴과 연관된 CRC 값을 CRC 검증기에 사전 제공하는, 순환 중복 검사(CRC) 검사기.
  4. 제 1항에 있어서, 상기 디지털 전송 링크는 MDDI 전송 링크인, 순환 중복 검사(CRC) 검사기.
  5. 제 1항에 있어서, 고유 데이터 패턴은 서브프레임 헤더 패킷의 패킷 길이, 패킷 타입 및 고유 워드 필드들을 포함하는, 순환 중복 검사(CRC) 검사기.
  6. 디지털 전송 링크를 초기화하기 위한 방법으로서,
    (a) 상기 디지털 전송 링크를 초기화하라는 요청을 수신하는 단계;
    (b) 고유 데이터 패턴에 상응하는 CRC 값을 CRC 생성기에 사전 제공하는 단계;
    (c) 상기 CRC 생성기를 디스에이블시키는 단계;
    (d) 상기 고유 데이터 패턴을 검출하기 위해서 인입 데이터 스트림을 모니터링하는 단계; 및
    (e) 상기 고유 데이터 패턴을 검출하였을 때, 상기 CRC 생성기를 인에이블시키는 단계를 포함하는,
    디지털 전송 링크 초기화 방법.
  7. 제 6항에 있어서, 상기 디지털 전송 링크는 MDDI 전송 링크인, 디지털 전송 링크 초기화 방법.
  8. 제 6항에 있어서, 상기 고유 데이터 패턴은 서브프레임 헤더 패킷의 패킷 길이, 패킷 타입 및 고유 워드 필드들을 포함하는, 디지털 전송 링크 초기화 방법.
  9. 호스트 시스템 내의 순환 중복 검사(CRC) 생성기 시스템으로서,
    디지털 통신 링크를 통해 전송될 데이터 패킷에 포함되어질 데이터에 기초하여 CRC 값을 생성하는 CRC 생성기;
    호스트 또는 관련된 시스템 상태 정보를 전달하기 위해서 CRC 생성기에 의해 생성되는 CRC 값을 커럽트시키는(corrupt) CRC 커럽터; 및
    호스트 시스템 내에서 에러 상황을 검출하며, CRC 값을 의도적으로 커럽트하도록 CRC 커럽터에 지시하는 에러 검출기를 포함하는,
    호스트 시스템 내의 순환 중복 검사(CRC) 생성기 시스템.
  10. 제 9항에 있어서, CRC 생성기에 의해 생성된 CRC 값을 시스템 에러 또는 상태 상황의 타입을 나타내는 CRC 에러 값으로 대체하도록 상기 CRC 커럽터에 지시하는 에러 값 생성기를 더 포함하는, 호스트 시스템 내의 순환 중복 검사(CRC) 생성기 시스템.
  11. 제 9항에 있어서, 상기 디지털 전송 링크는 MDDI 전송 링크인, 호스트 시스템 내의 순환 중복 검사(CRC) 생성기 시스템.
  12. 순환 중복 검사(CRC) 검사기로서,
    디지털 전송 링크를 통해 수신되는 데이터 패킷의 CRC 필드 내에서 CRC 에러 값들을 검출하는 CRC 에러 값 검출기 - 상기 CRC 에러 값들은 시스템 또는 관련된 시스템 에러 상황들을 식별함 -;
    수신된 데이터 스트림에 기초하여 CRC 값들을 생성하는 순환 중복 검사(CRC) 생성기; 및
    수신된 데이터 스트림에 기초하여 생성되는 CRC 값과 상기 수신된 데이터 스트림에 포함되어 전송되어진 CRC 값 간의 차이들을 검출하는 CRC 검증기를 포함하는,
    순환 중복 검사(CRC) 검사기.
  13. 제 12항에 있어서, 상기 디지털 전송 링크는 MDDI 전송 링크인, 순환 중복 검사(CRC) 검사기.
  14. 디지털 전송 링크를 통해서 호스트 시스템으로부터 시스템 에러 정보를 전송하기 위한 방법으로서,
    (a) 호스트 시스템 또는 관련된 시스템 에러를 검출하는 단계;
    (b) 디지털 전송 링크를 통해서 패킷 내에 포함되어 전송될 데이터에 기초하여 CRC 값을 생성하는 단계; 및
    (c) 상기 CRC 값을 커럽트시키는 단계를 포함하고,
    커럽션은 호스트 시스템 또는 관련된 시스템 에러가 발생했다는 것을 나타내는,
    시스템 에러 정보 전송 방법.
  15. 제 14항에 있어서, 상기 커럽트된 CRC 값을 데이터 패킷에 포함시켜 디지털 전송 링크를 통해서 전송하는 단계를 더 포함하는, 시스템 에러 정보 전송 방법.
  16. 제 14항에 있어서, 상기 디지털 전송 링크는 MDDI 링크인, 시스템 에러 정보 전송 방법.
  17. 디지털 전송 링크를 통해서 호스트 시스템으로부터 시스템 에러 정보를 전송하기 위한 방법으로서,
    (a) 호스트 시스템 또는 관련된 시스템 에러를 검출하는 단계;
    (b) 디지털 전송 링크를 통해서 패킷 내에 포함되어 전송될 데이터에 기초하여 CRC 값을 생성하는 단계; 및
    (c) 단계(a)에서 검출된 에러의 타입에 기초하여 CRC 에러 값을 결정하는 단계; 및
    (d) 단계(b)에서 생성된 CRC 값을 단계(c)에서 생성된 CRC 에러 값으로 대체하는 단계를 포함하고,
    상기 CRC 에러 값은 호스트 또는 관련된 시스템 내에서의 특정 타입의 에러 상황을 나타내는,
    시스템 에러 정보 전송 방법.
  18. 제 17항에 있어서, 상기 CRC 에러 값은 데이터 패킷에 포함되어 디지털 전송 링크를 통해서 전송되는, 시스템 에러 정보 전송 방법.
  19. 제 17항에 있어서, 상기 디지털 전송 링크는 MDDI 링크인, 시스템 에러 정보 전송 방법.
KR1020077013823A 2004-11-24 2005-11-23 순환 중복 검사들을 구현하기 위한 시스템들 및 방법들 KR100886297B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US63085304P 2004-11-24 2004-11-24
US60/630,853 2004-11-24
US63282504P 2004-12-02 2004-12-02
US60/632,825 2004-12-02

Publications (2)

Publication Number Publication Date
KR20070088713A true KR20070088713A (ko) 2007-08-29
KR100886297B1 KR100886297B1 (ko) 2009-03-04

Family

ID=36498487

Family Applications (4)

Application Number Title Priority Date Filing Date
KR1020077013823A KR100886297B1 (ko) 2004-11-24 2005-11-23 순환 중복 검사들을 구현하기 위한 시스템들 및 방법들
KR1020077013825A KR100923170B1 (ko) 2004-11-24 2005-11-23 디지털 데이터 인터페이스 장치
KR1020077012323A KR100972877B1 (ko) 2004-11-24 2005-11-23 디지털 데이터 전송 속도 제어를 위한 시스템 및 방법
KR1020077013822A KR100930270B1 (ko) 2004-11-24 2005-11-23 디지털 데이터 인터페이스 디바이스 메시지 포맷을 가지는 메시지 데이터가 저장된 컴퓨터-판독가능한 매체 및 그 디지털 데이터 인터페이스 디바이스

Family Applications After (3)

Application Number Title Priority Date Filing Date
KR1020077013825A KR100923170B1 (ko) 2004-11-24 2005-11-23 디지털 데이터 인터페이스 장치
KR1020077012323A KR100972877B1 (ko) 2004-11-24 2005-11-23 디지털 데이터 전송 속도 제어를 위한 시스템 및 방법
KR1020077013822A KR100930270B1 (ko) 2004-11-24 2005-11-23 디지털 데이터 인터페이스 디바이스 메시지 포맷을 가지는 메시지 데이터가 저장된 컴퓨터-판독가능한 매체 및 그 디지털 데이터 인터페이스 디바이스

Country Status (11)

Country Link
EP (5) EP1825623A4 (ko)
JP (8) JP5038148B2 (ko)
KR (4) KR100886297B1 (ko)
CN (2) CN101931503B (ko)
AU (2) AU2005309680C1 (ko)
BR (1) BRPI0518264A2 (ko)
CA (7) CA2649646C (ko)
ES (1) ES2395434T3 (ko)
IL (4) IL183409A0 (ko)
SG (1) SG160337A1 (ko)
WO (4) WO2006058067A2 (ko)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6760772B2 (en) 2000-12-15 2004-07-06 Qualcomm, Inc. Generating and implementing a communication protocol and interface for high data rate signal transfer
US8812706B1 (en) 2001-09-06 2014-08-19 Qualcomm Incorporated Method and apparatus for compensating for mismatched delays in signals of a mobile display interface (MDDI) system
TWI374635B (en) 2003-06-02 2012-10-11 Qualcomm Inc Generating and implementing a signal protocol and interface for higher data rates
EP1661351A2 (en) 2003-08-13 2006-05-31 Qualcomm, Incorporated A signal interface for higher data rates
KR100951158B1 (ko) 2003-09-10 2010-04-06 콸콤 인코포레이티드 고속 데이터 인터페이스
JP2007509533A (ja) 2003-10-15 2007-04-12 クゥアルコム・インコーポレイテッド 高速データレートインタフェース
AU2004307162A1 (en) 2003-10-29 2005-05-12 Qualcomm Incorporated High data rate interface
TWI381686B (zh) 2003-11-12 2013-01-01 Qualcomm Inc 具有改良的鏈路控制之高資料速率介面
JP2007512785A (ja) 2003-11-25 2007-05-17 クゥアルコム・インコーポレイテッド 改良されたリンク同期を備えた高速データレートインタフェース
EP2247069B1 (en) 2003-12-08 2013-09-11 Qualcomm Incorporated High data rate interface with improved link synchronization
EP1733537A1 (en) 2004-03-10 2006-12-20 Qualcomm, Incorporated High data rate interface apparatus and method
KR20060130749A (ko) 2004-03-17 2006-12-19 퀄컴 인코포레이티드 고 데이터 레이트 인터페이스 장치 및 방법
US8650304B2 (en) 2004-06-04 2014-02-11 Qualcomm Incorporated Determining a pre skew and post skew calibration data rate in a mobile display digital interface (MDDI) communication system
EP1978692B1 (en) 2004-06-04 2011-07-27 QUALCOMM Incorporated High data rate interface apparatus and method
US8699330B2 (en) 2004-11-24 2014-04-15 Qualcomm Incorporated Systems and methods for digital data transmission rate control
US8692838B2 (en) 2004-11-24 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US8667363B2 (en) 2004-11-24 2014-03-04 Qualcomm Incorporated Systems and methods for implementing cyclic redundancy checks
US8539119B2 (en) 2004-11-24 2013-09-17 Qualcomm Incorporated Methods and apparatus for exchanging messages having a digital data interface device message format
US8873584B2 (en) 2004-11-24 2014-10-28 Qualcomm Incorporated Digital data interface device
EP1825623A4 (en) * 2004-11-24 2011-08-24 Qualcomm Inc MESSAGE FORMAT OF AN INTERFACE DEVICE FOR DIGITAL DATA
US8723705B2 (en) 2004-11-24 2014-05-13 Qualcomm Incorporated Low output skew double data rate serial encoder
US8692839B2 (en) 2005-11-23 2014-04-08 Qualcomm Incorporated Methods and systems for updating a buffer
US8730069B2 (en) 2005-11-23 2014-05-20 Qualcomm Incorporated Double data rate serial encoder
CN102387485B (zh) * 2007-04-27 2015-07-29 华为技术有限公司 发送控制信令的方法和装置
DE102007028766A1 (de) * 2007-06-22 2008-12-24 Continental Teves Ag & Co. Ohg Prüfverfahren und elektronische Schaltung zur sicheren seriellen Übertragung von Daten
DE102007028767B4 (de) 2007-06-22 2016-01-28 Continental Teves Ag & Co. Ohg Buskommunikationsschaltung zur sicheren seriellen Übertragung von Daten sowie deren Verwendung
KR100898542B1 (ko) * 2008-02-28 2009-05-20 주식회사 유비콘테크놀로지 무선 usb 시스템의 패킷구조
US8223796B2 (en) * 2008-06-18 2012-07-17 Ati Technologies Ulc Graphics multi-media IC and method of its operation
WO2011001259A1 (en) * 2009-06-30 2011-01-06 Nokia Corporation Method and apparatus for providing mobile device interoperability
US8812140B2 (en) 2011-05-16 2014-08-19 Jogtek Corp. Signal transforming method, transforming device through audio interface and application program for executing the same
DE102013020522A1 (de) 2013-12-11 2015-06-11 Lukusa Didier Kabulepa Kommunikationssystem, Testeinrichtung und Vorrichtung zur Prüfung von fehlererkennenden Sicherheitsmechanismen eines Kommunikationsteilnehmers
US9996439B2 (en) * 2015-09-23 2018-06-12 Qualcomm Incorporated Self-error injection technique for point-to-point interconnect to increase test coverage
US11165683B2 (en) 2015-12-29 2021-11-02 Xilinx, Inc. Network interface device
US11044183B2 (en) 2015-12-29 2021-06-22 Xilinx, Inc. Network interface device
CN109308058B (zh) * 2018-10-25 2021-07-06 深圳丹弗科技有限公司 成功率改进的基于物联网的智能车床控制方法及系统
DE102019218715A1 (de) 2019-12-02 2021-06-02 Robert Bosch Gmbh Teilnehmerstation für ein serielles Bussystem und Verfahren zur Kommunikation in einem seriellen Bussystem
US20200320026A1 (en) * 2020-04-27 2020-10-08 Intel Corporation Bandwidth management allocation for displayport tunneling
CN112612638A (zh) * 2020-12-29 2021-04-06 芯启源电子科技有限公司 基于usb3.2协议16比特循环冗余校验的硬件实现方法

Family Cites Families (54)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4042783A (en) * 1976-08-11 1977-08-16 International Business Machines Corporation Method and apparatus for byte and frame synchronization on a loop system coupling a CPU channel to bulk storage devices
JPS6013538B2 (ja) * 1977-04-22 1985-04-08 日本電気株式会社 可変演算方式
US4720831A (en) * 1985-12-02 1988-01-19 Advanced Micro Devices, Inc. CRC calculation machine with concurrent preset and CRC calculation function
JPH04167715A (ja) * 1990-10-31 1992-06-15 Nec Corp 多重処理型crc符号生成回路
JP3007926B2 (ja) * 1990-11-15 2000-02-14 オムロン株式会社 データキャリア及び識別システム
US5258999A (en) * 1991-10-03 1993-11-02 Motorola, Inc. Circuit and method for receiving and transmitting control and status information
US5867501A (en) * 1992-12-17 1999-02-02 Tandem Computers Incorporated Encoding for communicating data and commands
JP3467324B2 (ja) * 1994-07-26 2003-11-17 富士通株式会社 簡易型携帯電話システムにおける送・受信制御方式
DE19539343C2 (de) * 1995-10-23 1997-12-11 Siemens Ag Verfahren zur Fehlererkennung eines digitalen Bitdatenstroms, der von einem Sender zu einem Empfänger übertragen wird
EP0781068A1 (en) * 1995-12-20 1997-06-25 International Business Machines Corporation Method and system for adaptive bandwidth allocation in a high speed data network
JPH09261232A (ja) * 1996-03-19 1997-10-03 Fujitsu Ltd Atm交換機における複数応答通信制御方法
US5862160A (en) * 1996-12-31 1999-01-19 Ericsson, Inc. Secondary channel for communication networks
JP3390618B2 (ja) * 1997-01-13 2003-03-24 三菱電機株式会社 基地局決定装置
JPH10234038A (ja) * 1997-02-21 1998-09-02 Hitachi Ltd データ処理装置、データ形式変換装置、データ通信方法及びデータ処理システム
US6470386B1 (en) * 1997-09-26 2002-10-22 Worldcom, Inc. Integrated proxy interface for web based telecommunications management tools
JPH11122234A (ja) * 1997-10-16 1999-04-30 Nec Ic Microcomput Syst Ltd 受信データ処理回路
JPH11225372A (ja) * 1998-02-05 1999-08-17 Sanyo Electric Co Ltd 時刻調整方法及びその装置
US6833863B1 (en) * 1998-02-06 2004-12-21 Intel Corporation Method and apparatus for still image capture during video streaming operations of a tethered digital camera
US6850282B1 (en) * 1998-06-02 2005-02-01 Canon Kabushiki Kaisha Remote control of image sensing apparatus
KR100350607B1 (ko) * 1999-03-31 2002-08-28 삼성전자 주식회사 음성 및 화상 송수신을 위한 휴대용 복합 통신단말기 및 그 동작방법과 통신시스템
JP2001025010A (ja) * 1999-07-09 2001-01-26 Mitsubishi Electric Corp マルチメディア情報通信装置およびその方法
JP2001044960A (ja) * 1999-07-28 2001-02-16 Toyo Commun Equip Co Ltd 時分割方向制御インタフェースにおけるエラー試験装置
US6804257B1 (en) * 1999-11-25 2004-10-12 International Business Machines Corporation System and method for framing and protecting variable-lenght packet streams
JP4191869B2 (ja) * 1999-12-20 2008-12-03 富士フイルム株式会社 ディジタルカメラを用いたコンピュータシステム
JP2001282714A (ja) * 2000-03-30 2001-10-12 Olympus Optical Co Ltd マルチカメラデータ転送方式及びデータ転送方式
JP2001319745A (ja) * 2000-05-08 2001-11-16 Honda Tsushin Kogyo Co Ltd 変換用アダプタ
JP4292685B2 (ja) * 2000-05-23 2009-07-08 日本電気株式会社 データ転送システム、データ送受信システム、データ送受信方法、フォーマット変換装置、フォーマット変換方法およびフォーマット変換プログラムを記録したコンピュータ読み取り可能な記録媒体
US6754179B1 (en) * 2000-06-13 2004-06-22 Lsi Logic Corporation Real time control of pause frame transmissions for improved bandwidth utilization
JP2002062990A (ja) * 2000-08-15 2002-02-28 Fujitsu Media Device Kk インターフェイス装置
US6760772B2 (en) 2000-12-15 2004-07-06 Qualcomm, Inc. Generating and implementing a communication protocol and interface for high data rate signal transfer
CA2725844C (en) * 2000-12-15 2015-03-31 Qualcomm Incorporated Generating and implementing a communication protocol and interface for high data rate signal transfer
JP3497834B2 (ja) * 2001-03-30 2004-02-16 株式会社東芝 ルートリピータ、usb通信システム、usb通信制御方法
JP2003069544A (ja) * 2001-08-23 2003-03-07 Hitachi Kokusai Electric Inc 通信制御方法及び通信制御装置
JP4322451B2 (ja) * 2001-09-05 2009-09-02 日本電気株式会社 Dspメモリ間あるいはdspメモリとcpu用メモリ(dpram)間データ転送方式
RU2004110228A (ru) * 2001-09-06 2005-03-10 Квэлкомм Инкорпорейтед (US) Генерация и реализация коммуникационного протокола и интерфейса для передачи высокоскоростных сигналов данных
KR100408525B1 (ko) * 2001-10-31 2003-12-06 삼성전자주식회사 네트워크에 적응적인 실시간 멀티미디어 스트리밍 시스템및 방법
JP2003167680A (ja) * 2001-11-30 2003-06-13 Hitachi Ltd ディスク装置
US20030135863A1 (en) * 2002-01-17 2003-07-17 Koninklijke Philips Electronics N.V. Targeted scalable multicast based on client bandwidth or capability
JP2004021613A (ja) 2002-06-17 2004-01-22 Seiko Epson Corp データ転送制御装置、電子機器及びデータ転送制御方法
KR100469427B1 (ko) * 2002-06-24 2005-02-02 엘지전자 주식회사 이동통신 시스템의 동영상 재생 방법
DE10234991B4 (de) * 2002-07-31 2008-07-31 Advanced Micro Devices, Inc., Sunnyvale Hostcontrollerdiagnose für einen seriellen Bus
JP4028356B2 (ja) * 2002-10-31 2007-12-26 京セラ株式会社 通信システム、無線通信端末、データ配信装置及び通信方法
GB0226014D0 (en) * 2002-11-08 2002-12-18 Nokia Corp Camera-LSI and information device
KR100448635B1 (ko) * 2002-11-27 2004-09-13 한국전자통신연구원 이더넷 기반의 수동 광통신망에서의 통신 노드 시스템,제어 노드 시스템, 및 이를 이용한 통신 시스템
US7047475B2 (en) * 2003-02-04 2006-05-16 Hewlett-Packard Development Company, L.P. CRC encoding scheme for conveying status information
US7477604B2 (en) * 2003-05-14 2009-01-13 Ntt Docomo, Inc. Packet communications system
TWI374635B (en) * 2003-06-02 2012-10-11 Qualcomm Inc Generating and implementing a signal protocol and interface for higher data rates
KR100951158B1 (ko) * 2003-09-10 2010-04-06 콸콤 인코포레이티드 고속 데이터 인터페이스
US7340548B2 (en) * 2003-12-17 2008-03-04 Microsoft Corporation On-chip bus
US7158536B2 (en) * 2004-01-28 2007-01-02 Rambus Inc. Adaptive-allocation of I/O bandwidth using a configurable interconnect topology
EP1745556A4 (en) * 2004-04-21 2012-09-19 DEVICE AND METHOD FOR MULTI-DATA PROCESSING IN A WIRELESS TERMINAL
CN101103568B (zh) * 2004-11-24 2012-05-30 高通股份有限公司 调节包的传输速率和大小的方法以及传递包的系统
EP1825623A4 (en) * 2004-11-24 2011-08-24 Qualcomm Inc MESSAGE FORMAT OF AN INTERFACE DEVICE FOR DIGITAL DATA
CN103476804B (zh) * 2011-04-15 2016-01-06 三菱丽阳株式会社 活性能量射线固化型树脂组合物、成形品、微细凹凸结构体、拒水性物品、模具以及微细凹凸结构体的制造方法

Also Published As

Publication number Publication date
KR20070086397A (ko) 2007-08-27
WO2006058045A3 (en) 2007-04-19
IL183409A0 (en) 2007-09-20
CN102983937B (zh) 2015-09-16
AU2010202545A1 (en) 2010-07-08
WO2006058045A2 (en) 2006-06-01
CA2588722A1 (en) 2006-06-01
WO2006058050A3 (en) 2009-04-16
CA2588717C (en) 2013-11-12
EP1825600A4 (en) 2011-06-22
KR100972877B1 (ko) 2010-07-28
IL183414A0 (en) 2007-09-20
KR100886297B1 (ko) 2009-03-04
WO2006058173A2 (en) 2006-06-01
AU2005309680B2 (en) 2009-10-29
ES2395434T3 (es) 2013-02-12
KR100930270B1 (ko) 2009-12-09
EP2317688A3 (en) 2012-03-21
JP5226758B2 (ja) 2013-07-03
JP2008522503A (ja) 2008-06-26
JP2008522493A (ja) 2008-06-26
EP1825600A2 (en) 2007-08-29
CN101931503B (zh) 2013-06-19
EP1815627B1 (en) 2012-09-12
CA2588714C (en) 2011-05-24
WO2006058067A2 (en) 2006-06-01
JP5356469B2 (ja) 2013-12-04
JP2008522494A (ja) 2008-06-26
EP1825623A2 (en) 2007-08-29
CA2649646A1 (en) 2006-06-01
WO2006058067A3 (en) 2006-11-30
CN102983937A (zh) 2013-03-20
WO2006058050A2 (en) 2006-06-01
CA2698730C (en) 2013-06-18
CA2588717A1 (en) 2006-06-01
KR20070086395A (ko) 2007-08-27
WO2006058173A3 (en) 2006-12-14
AU2005309680C1 (en) 2010-04-01
CA2649646C (en) 2013-01-22
IL183413A0 (en) 2007-09-20
CA2588722C (en) 2011-10-04
EP1815624A4 (en) 2010-08-11
BRPI0518264A2 (pt) 2008-11-11
JP2011083006A (ja) 2011-04-21
CA2698730A1 (en) 2006-06-01
EP1815624A2 (en) 2007-08-08
CA2588714A1 (en) 2006-06-01
IL183410A0 (en) 2007-09-20
JP2011250419A (ja) 2011-12-08
JP2008522498A (ja) 2008-06-26
KR20070084625A (ko) 2007-08-24
CN101931503A (zh) 2010-12-29
EP1815627A4 (en) 2010-09-08
AU2005309680A1 (en) 2006-06-01
JP4750799B2 (ja) 2011-08-17
KR100923170B1 (ko) 2009-10-22
CA2651781C (en) 2012-10-09
CA2588845A1 (en) 2006-06-01
CA2651781A1 (en) 2006-06-01
JP2012010375A (ja) 2012-01-12
WO2006058045A9 (en) 2006-08-24
EP1815624B1 (en) 2013-02-20
JP5038148B2 (ja) 2012-10-03
SG160337A1 (en) 2010-04-29
EP1815627A2 (en) 2007-08-08
EP1825623A4 (en) 2011-08-24
JP2013081190A (ja) 2013-05-02
EP2317688A2 (en) 2011-05-04
JP5048510B2 (ja) 2012-10-17

Similar Documents

Publication Publication Date Title
KR100886297B1 (ko) 순환 중복 검사들을 구현하기 위한 시스템들 및 방법들
US8667363B2 (en) Systems and methods for implementing cyclic redundancy checks
US7548736B2 (en) Transmitter, receiver, data transfer system, transmission method, reception method, computer program for transmission, computer program for reception, and recording medium
KR101105175B1 (ko) 고속 데이터 레이트를 위한 신호 프로토콜 및 인터페이스의 생성 및 구현
US8699330B2 (en) Systems and methods for digital data transmission rate control
JP5095892B2 (ja) ワイヤレス画像データを送信するパケット・データ送信システム
US8281189B2 (en) SATA primitive prediction and correction
US8031626B2 (en) Packet structure for a mobile display digital interface
TWI400889B (zh) 循環冗餘檢查之實施系統及方法
JP2008198137A (ja) データ処理装置、データ処理方法、データ送信装置、データ送信方法、データ処理システム、制御プログラムおよびそれを記録したコンピュータ読み取り可能な記録媒体
KR20070105025A (ko) 플래시 메모리, 플래시 메모리의 제어 방법 및 직렬인터페이스 장치
JPH06164678A (ja) データ伝送方式

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

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20140129

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20150129

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20151230

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20161229

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20171228

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee