KR20080053938A - 디코딩 에러들의 조기 검출을 위한 시스템 - Google Patents

디코딩 에러들의 조기 검출을 위한 시스템 Download PDF

Info

Publication number
KR20080053938A
KR20080053938A KR1020087009818A KR20087009818A KR20080053938A KR 20080053938 A KR20080053938 A KR 20080053938A KR 1020087009818 A KR1020087009818 A KR 1020087009818A KR 20087009818 A KR20087009818 A KR 20087009818A KR 20080053938 A KR20080053938 A KR 20080053938A
Authority
KR
South Korea
Prior art keywords
code packets
trigger event
receiving
packets
decoding
Prior art date
Application number
KR1020087009818A
Other languages
English (en)
Other versions
KR100983690B1 (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 KR20080053938A publication Critical patent/KR20080053938A/ko
Application granted granted Critical
Publication of KR100983690B1 publication Critical patent/KR100983690B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1854Scheduling and prioritising arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1835Buffer management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1812Hybrid protocols; Hybrid automatic repeat request [HARQ]
    • H04L1/1819Hybrid protocols; Hybrid automatic repeat request [HARQ] with retransmission of additional or different redundancy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0093Point-to-multipoint

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Error Detection And Correction (AREA)
  • Communication Control (AREA)

Abstract

본 발명은 디코딩 에러들의 조기 검출을 위한 시스템에 관한 것이다. 디코딩 실패를 검출하는 방법이 제시된다. 상기 방법은 코드 패킷들의 초기양을 수신하는 단계, 코드 패킷들의 초기양과 관련한 디코딩 실패를 나타내는 트리거 이벤트를 검출하는 단계, 및 하나 이상의 추가 코드 패킷들을 수신하는 단계를 포함한다.

Description

디코딩 에러들의 조기 검출을 위한 시스템{SYSTEM FOR EARLY DETECTION OF DECODING ERRORS}
본 출원은 2005년 9월 28일 출원된 "METHOD FOR EARLY DETECTION OF DECODE FAILURES"라는 명칭의 가출원 No.60/721,824를 우선권으로 주장하며, 상기 가출원은 본 출원의 양수인에게 양도되었으며, 본 명세서에 참조된다.
본 출원은 통신 시스템에 관한 것이며, 특히 통신 시스템에 사용하기 위해, 디코딩 에러들의 조기 검출을 위한 시스템에 관한 것이다.
통상의 무선 전달 시스템에서, 콘텐츠는 멀티캐스트 송신 채널을 통해 휴대용 장치들로 전달된다. 콘텐츠는, 패킷들이 송신 채널을 통해 송신되면서 발생할 수도 있는 패킷 손실을 극복하기 위해 코딩된 데이터 패킷들의 형태이다. 송신기에서 인코더는 원래의 데이터 패킷들을 취하고, 하나 이상의 장치들로 송신되는 코드 패킷들을 생성한다. 노이즈 또는 다른 성능 저하 송신 효과로 인해, 코드 패킷들의 서브세트는 소정의 특정 장치에서 수신된다. 수신된 코드 패킷들은 원래의 데이터 패킷들을 복구하기 위해 디코딩된다.
디코딩 프로세스의 성공은 수신된 코드 패킷들의 수에 의존한다. 일반적으로, 만일 데이터 패킷들의 수가 "k"이면, 수신된 코드 패킷들의 수는 적어도 k(1+ ε)이며, 여기서 입실론(ε)은 통신 오버헤드 팩터(예를 들어, k의 10%)이다. 더 높은 값의 ε을 선택하는 것은 디코딩 실패의 확률을 낮추지만, 디코딩 시간을 증가시키고 및/또는 장치에서의 배터리 소모를 증가시킬 수도 있다.
최악의 경우의 송신 환경을 가정할 경우, 통상의 시스템들은 선택된 디코딩 성능을 달성하기 위해 ε의 값을 통상적으로 고정시킨다. 그러나 송신 채널이 최악의 경우의 가정에 따라 동작하는 것은 일반적으로 통상적인 것은 아니다. 그 결과, 많은 불필요한 패킷들이 수신 장치에 의해 수신된다. 예를 들어, 최악의 경우의 송신 환경을 가정하는 것은 ε의 값을 매우 크게 고정하는 결과를 초래한다. 이는 많은 부가적이고 불필요한 패킷들이 데이터의 디코딩을 위해 수신되게 한다. 이는 수신 장치의 리소스들에 많은 부담을 부과하는데, 그 이유는 불필요한 패킷들의 수신 및 처리는 부가의 전력, CPU 시간, 메모리, 및 파일 시스템 리소스들을 필요로 하기 때문이다.
따라서, 선택된 디코더 성능을 획득하기 위해 송신 채널의 품질에 기초하여 수신된 패킷들의 수를 조절하도록 동작하는 시스템을 갖는 것이 바람직하다. 시스템은 또한 수신된 패킷들의 수가 디코딩 프로세스의 결과를 기다려야할 필요 없이 선택된 디코더 성능을 생성하기 위해 조절될 수 있도록 조기 에러 검출을 실행하도록 동작해야 한다.
하나 이상의 실시예에서, 선택된 디코더 성능을 획득하기 위해 송신 채널의 품질에 기초하여 수신된 패킷들의 수를 조절하도록 동작하는 디코딩 시스템이 제공된다. 일 실시예에서, 시스템은 하나 이상의 트리거 이벤트들에 기초하여 수신된 패킷들의 수를 조절한다. 예를 들어, 하나의 트리거 이벤트는 디코딩 프로세스의 실패와 관련된다. 하나 이상의 다른 트리거 이벤트들은 수신된 패킷들의 수가 디코딩 프로세스의 결과를 기다려야할 필요 없이 선택된 디코더 성능을 달성하도록 조절될 수 있다. 시스템은, 전력 소모, 메모리, CPU 시간, 및 파일 액세스 등과 같은 장치 리소스들에 대한 영향을 최소화하면서, 데이터가 휴대용 장치에 의해 수신/복구되게 하도록 무선 통신 시스템에서 사용하기에 특히 적합하다.
일 실시예에서, 디코딩 실패를 검출하는 방법이 제공된다. 방법은 코드 패킷들의 초기량을 수신하는 단계, 코드 패킷들의 초기량과 관련된 디코딩 실패를 나타내는 트리거 이벤트를 검출하는 단계, 및 하나 이상의 추가의 코드 패킷들을 수신하는 단계를 포함한다.
하나의 실시예에서, 디코딩 실패를 검출하는 장치가 제공된다. 장치는, 코드 패킷들의 초기량을 수신하고, 트리거 이벤트가 검출될 때 하나 이상의 추가의 코드 패킷들을 수신하도록 구성된 수신 로직, 및 트리거 이벤트를 검출하도록 구성된 프로세싱 로직을 포함하는데, 상기 트리거 이벤트는 코드 패킷들의 초기량과 관련된 디코딩 실패를 나타낸다.
일 실시예에서, 디코딩 실패를 검출하는 장치가 제공된다. 장치는 코드 패킷들의 초기량을 수신하는 수단, 코드 패킷들의 초기량과 관련된 디코딩 실패를 나타내는 트리거 이벤트를 검출하는 수단, 및 하나 이상의 추가 코드 패킷들을 수신하는 수단을 포함한다.
일 실시예에서, 적어도 하나의 프로세서에 의해 실행될 때, 디코딩 에러를 검출하기 위해 동작하는 명령들을 포함하는 컴퓨터 판독 가능 매체가 제공된다. 컴퓨터 판독 가능 매체는 코드 패킷들의 초기량을 수신하는 명령들, 코드 패킷들의 초기량과 관련된 디코딩 실패를 나타내는 트리거 이벤트를 검출하는 명령, 및 하나 이상의 추가의 코드 패킷들을 수신하는 명령들을 포함한다.
일 실시예에서, 디코딩 실패를 검출하는 방법을 실행하도록 구성된 적어도 하나의 프로세서가 제공된다. 상기 방법은 코드 패킷들의 초기량을 수신하는 단계, 코드 패킷들의 초기량과 관련된 디코딩 실패를 나타내는 트리거 이벤트를 검출하는 단계, 및 하나 이상의 추가 코드 패킷들을 수신하는 단계를 포함한다.
상기 실시예들의 다른 특징은 도면의 상세한 설명, 실시예의 설명 및 청구항을 통해 명백하게 될 것이다.
실시예들의 전술한 특징은, 첨부한 도면을 참조할 때, 이하의 상세한 설명을 참조하여 더욱 명확하게 될 것이다.
도1은 디코딩 시스템의 하나의 실시예를 포함하는 통신 경로를 나타낸다.
도2는 디코딩 실패 확률과 입실론 사이의 관계를 나타낸 그래프이다.
도3은 디코딩 시스템의 실시예에 사용하기 위한 디코더의 일 실시예이다.
도4는 디코딩 시스템의 실시예에 사용하기 위한 트리 구조의 일 실시예이다.
도5는 디코딩 시스템의 실시예들에 사용하는 방법의 일 실시예이다.
도6은 디코딩 시스템의 실시예들에 사용하는 디코더의 일 실시예이다.
이하의 설명은 디코딩 시스템의 하나 이상의 실시예를 설명한다. 디코딩 시스템은 선택된 디코더 성능을 획득하기 위해 송신 채널의 품질에 기초하여 수신된 패킷들의 수를 조절하도록 동작한다. 시스템은 제한된 리소스들을 갖는 휴대용 장치에 사용하기에 특히 적합하지만, 소정 타입의 장치와 함께 사용될 수도 있다. 시스템은 또한 통신 네트워크들, 인터넷과 같은 공용 네트워크들, 가상 사설 네트워크(VPN)와 같은 사설 네트워크들, 로컬 영역 네트워크들, 광역 네트워크들, 장거리 네트워크들, 또는 소정의 다른 타입의 데이터 또는 통신 네트워크를 포함하는 소정 타입의 네트워크 환경에서 동작하는 장치에 사용될 수도 있지만, 이에 한정되지는 않는다.
도1은 디코딩 시스템의 일 실시예를 포함하는 통신 경로(100)를 도시한다. 예를 들어, 통신 경로(100)는 하나 이상의 휴대용 장치에 콘텐츠를 전달하도록 사용될 수도 있다. 통신 경로(100)는 인코더(102), 송신 채널(104) 및 디코더(106)를 포함한다.
일 실시예에서, 인코더(102)는 송신 채널(104)을 통해 송신될 데이터 패킷들에 대한 메시지 코딩을 실행한다. 송신 채널(104)이 송신된 패킷들이 손실되게 하는 손실 채널(또는 소거 채널)이 될 수도 있기 때문에, 메시지 코딩이 실행된다. 메시지 코딩은 손실된 데이터 패킷들이 복구되게 하는 중복성(redundancy)을 제공한다. 일 실시예에서, 메시지 코딩은 저밀도 생성 행렬(Low Density Generator Matrix) 기술로 언급되는 인코딩 기술을 이용하여 실행된다. 그러나 다른 타입의 메시지 코딩이 다른 실시예에서 사용될 수도 있다.
일 실시예에서, 인코더(102)는 데이터 패킷들(D)(108로 도시됨)을 수신하고 이들을 인코딩하여 코드 패킷들(C)을 생성한다. 코드 패킷들(C)은 두 타입의 패킷을 포함한다. 제1 타입의 코드 패킷은 선택된 데이터 패킷으로부터 데이터 및 패킷 헤더를 포함한다. 제2 타입의 코드 패킷은 배타적 "OR" 알고리즘과 같은 소정의 공지된 조합 알고리즘을 이용하여 조합된 하나 이상의 데이터 패킷들로부터 데이터 및 패킷 헤더를 포함한다. 제2 타입의 코드 패킷에 대한 패킷 헤더는 어떤 데이터 패킷이 결합되었는지와 사용된 결합 알고리즘의 타입을 식별한다.
코드 패킷들(C)은 송신 채널(104)을 통해 하나 이상의 수신 장치들로 송신된다. 예를 들어, 코드 패킷들의 송신은 선택된 기간을 가진 콘택 윈도우 동안 발생한다. 코드 패킷들(C')의 서브세트는 수신 장치들 중 하나에 위치된 디코더(106)에 의해 수신된다. 디코더(106)는 원래의 데이터 패킷들(D)(110으로 도시됨)을 복구하기 위해 수신된 코드 패킷들(C')을 프로세싱하도록 동작한다.
디코딩 프로세스는 수신된 코드 패킷들(C')의 수에 의존한다. 일반적으로, 만일 송신된 데이터 패킷들(D)의 수가 "k"와 같으면, 수신된 코드 패킷들(C')의 수는 적어도 k(1+ε)일 것이다. 저 높은 값의 ε을 선택하는 것은 디코딩 실패의 확률을 낮추지만, 불필요한 패킷들이 수신되고 디코딩 시간 및/또는 디코더(106)에서 전력 소비를 증가시키는 결과를 초래할 수도 있다.
일 실시예에서, 디코딩 시스템은 하나 이상의 트리거 이벤트들에 기초하여 수신된 코드 패킷들(C')의 수를 조절하도록 동작한다. 동작 동안, 디코더(106)는 ε에 대한 초기 최소값으로 초기화된다. 이어 디코더는 브로드캐스트가 발생하는 콘택 윈도우 동안 k(1+ε) 코드 패킷들을 수신하기 위해 시도한다. 코드 패킷들의 수신 동안 또는 그 후, 하나 이상의 트리거 이벤트들이 발생할 수도 있다. 예를 들어, 트리거 이벤트는 송신 채널의 품질이 매우 열악한 경우 발생할 수도 있다. 만일 트리거 이벤트가 발생하면, 시스템은 데이터를 디코딩하기 위해 수신하는 코드 패킷들(C')의 수를 증가시킨다. 따라서, 시스템은 송신 채널의 품질에 기초하여 수신된 코드 패킷들(C')의 수를 조절하도록 동작한다. 다양한 트리거 이벤트의 상세한 설명이 본 명세서의 다른 부분에 제공된다.
일 실시예에서, 디코더(106)는 k(1+ε) 코드 패킷들을 수신한다. 이어 코드 패킷들은 원래의 데이터(D)를 복구하기 위해 디코딩된다. 디코딩 프로세스가 실패하면, 디코딩 에러 트리거 이벤트가 발생한다. 예를 들어, 송신 환경의 열악한 품질의 결과로써, 너무 많은 코드 패킷들이 손실되기 때문에, 디코딩 프로세스는 실패할 수도 있다. 이러한 경우, ε의 값은 증가되며, 디코더(106)는 콘택 윈도우 동안 더 많은 코드 패킷들을 수신하도록 동작한다. 그 결과, 디코딩 시스템은 선택된 디코딩 성능을 획득하기에 충분한 코드 패킷들(C')을 수신하기 위해 디코더(106)를 조절한다. 이는 ε에 대한 작은 초기값이 사용될 수도 있기 때문에 디코더(106)의 매우 효율적인 연산을 제공한다. 만일 송신 채널이 적절한 성능을 제공하면, 많은 수의 불필요한 코드 패킷들(C')이 수신될 필요가 없도록 ε을 증가시키는 것은 필수적이지 않다. 따라서, 디코딩 시스템은 전력 소모, CPU 프로세싱 시간, 메모리, 및 파일 액세스 등과 같은 장치 리소스들을 보존하도록 동작한다.
일 실시예에서, 디코딩 시스템은 하나 이상의 아래 기능을 실행하도록 동작한다. 1. ε에 대한 초기값을 설정. 2. ε에 의해 결정된 바와 같이 코드 패킷들(C')의 선택된 양을 수신. 3. 수신된 코드 패킷들(C')을 디코딩. 4. 디코딩 에러 트리거 이벤트가 발생했는지를 결정. 5. 디코딩 에러 트리거가 발생한 경우, ε의 값을 증가시키고 추가의 코드 패킷들(C')을 수신. 6. 모든 수신된 코드 패킷들(C')로부터 데이터를 디코딩.
다른 실시예에서, 디코더(106)는 브로드캐스트가 발생하는 콘택 윈도우 동안 k(1+ε) 코드 패킷들을 수신하도록 시도한다. 코드 패킷들(C')이 수신됨에 따라, 올바르게 수신된 코드 패킷들의 양에 대한 정보가 유지된다. 정보는 디코더(106)에 저장되며 얼마나 성공적인 코드 패킷들이 수신되고 있는 지를 나타내는 하나 이상의 트리거 이벤트들을 결정하도록 사용된다. 예를 들어, 일 실시예에서, 정보는 패킷들의 전체 수와 비교하여 얼마나 많은 양호한 패킷들이 수신되는 지를 나타내는 수신율을 결정하기 위해 사용된다. 일 실시예에서, 이러한 정보는 유지할 메모리의 선택된 양을 필요로 하는 트리 구조에 유지된다. 제1 타입의 조기 에러 검출 트리거 이벤트가, 수신율이 선택된 임계치 이하로 떨어질 경우 결정된다. 다른 타입의 조기 에러 검출 에러 트리거 이벤트가 트리 구조에 대해 요구되는 메모리가 선택된 임계치를 초과하는 경우 결정된다. 조기 에러 검출 트리거 이벤트가 발생 할 때, 콘택 윈도우의 모든 잔여 코드 패킷들이 디코더에 의해 수신되도록 ε의 값은 증가된다. 이어 디코더는 원래의 데이터를 복구하기 위해 모든 수신된 코드 패킷들을 프로세싱한다.
일 실시예에서, 디코딩 시스템은 하나 이상의 이하의 기능들을 실행하기 위해 동작한다. 1. ε에 대한 초기값을 설정. 2. 코드 패킷들(C')의 수신을 시작. 3. 조기 에러 검출 트리거 이벤트가 발생하는 지를 결정. 4. 조기 에러 검출 트리거 이벤트가 발생한 경우, 콘택 윈도우에 잔여하는 모든 코드 패킷들(C')을 수신하기 위해 ε을 증가시킴. 5. 모든 수신된 코드 패킷들(C')로부터 데이터를 디코딩.
따라서, 디코딩 시스템은 송신 채널의 품질에 기초하여 수신 코드 패킷들의 수를 효율적으로 조절하도록 동작한다. 그 결과, 디코딩 시스템은, 송신 채널이 선택된 성능을 제공할 때 수신된 불필요한 코드 패킷들을 최소화하도록 동작한다.
도2는 "디코딩 실패 확률" 대 ε을 설명하는 그래프(200)이다. 그래프(200)가 도시하듯이, 디코딩 실패의 확률은 대략 0.2의 ε갓에 대해 대략 0.01이다. 디코딩 실패의 확률은 대략 0.5의 ε의 값에 대해 약 10-6으로 감소된다. 디코딩 시스템의 하나 이상의 실시예에서, ε의 작은 초기값들은 ε의 더 큰 값들을 이용하여 통상의 시스템들의 성능과 동일하거나 더 우수한 디코딩 성능을 달성하기 위해 사용될 수도 있다. 그 결과, 더 소수의 불필요한 코드 패킷들이 수신되고, 결국 디코딩 장치의 더 적은 리소스들이 요구된다.
도3은 디코딩 시스템의 실시예들에 사용하기 위한 디코더(300)의 일 실시예를 도시한다. 예를 들어, 디코더(300)는 도1에 도시된 디코더(106)로서 사용하기에 적합하다. 디코더(300)는 내부 데이터 버스(306)에 연결된 프로세싱 로직(302) 및 송수신 로직(304)을 포함한다. 디코더(300)는 또한 데이터 저장소(308), 코드 저장소(310) 및 LDGM 로직(312)을 포함하는데, 이들은 또한 데이터 버스(306)에 연결된다.
하나 이상의 실시예들에서, 프로세싱 로직(302)은 CPU, 프로세서, 게이트 어레이, 하드웨어 로직, 메모리 엘리먼트들, 가상 머신, 소프트웨어, 및/또는 하드웨어 및 소프트웨어의 소정 조합을 포함한다. 따라서, 프로세싱 로직(202)은 일반적으로 기계-판독가능 명령들을 실행하고 내부 데이터 버스(306)를 통해 디코더(300)의 하나 이상의 기능성 엘리먼트를 제어하거나 통신하는 로직을 포함한다.
송수신기 로직(304)은 통신 채널(314)을 이용하여 디코더(300)가 원격 장치들 또는 시스템들과 데이터 및/또는 다른 정보를 송신 및 수신하게 하도록 동작하는 하드웨어 로직 및/또는 소프트웨어를 포함한다. 예를 들어, 일 실시예에서, 통신 채널(314)은 디코더(300)가 데이터 네트워크와 통신하게 하는 통신 채널(314)의 소정의 적절한 타입을 포함한다. 예를 들어, 일 실시예에서, 송수신기 로직(304)은 통신 채널(314)을 통해 원격 서버로부터 코드 패킷들을 수신하도록 동작한다. 이어 디코더(300)는 원격 서버로부터 송신된 원래의 데이터를 복구하기 위해 수신 된 코드 패킷들을 프로세싱하도록 동작한다.
데이터 저장소(308)는 데이터를 저장하도록 동작하는 소정의 적절한 메모리 장치를 포함한다. 예를 들어, 데이터 저장소(308)는 RAM, 플래시 메모리, EEPROM, 하드디스크, 및/또는 소정의 다른 타입의 저장 장치를 포함할 수도 있다. 일 실시예에서, 데이터 저장소(308)는 송수신 로직(304)에 의해 수신된 코드 패킷들로부터 디코딩된 데이터를 저장하도록 동작한다.
코드 저장소(310)는 코드 패킷 정보를 저장하도록 동작할 수 있는 소정의 적절한 메모리 장치를 포함한다. 예를 들어, 코드 저장소(308)는 RAM, 플래시 메모리, EEPROM, 하드 디스크, 및/또는 소정의 다른 타입의 저장 장치를 포함할 수도 있다. 일 실시예에서, 코드 저장소(310)는 송수신 로직(304)에 의해 수신된 코드 패킷들에 포함된 코드 정보를 저장하도록 동작한다. 예를 들어, 일 실시예에서, 코드 정보는 전술한 바와 같이, 코드 패킷의 제2 타입과 관련된 정보를 포함한다.
LDGM 로직(312)은 CPU, 프로세서, 게이트 어레이, 하드웨어 로직, 메모리 엘리먼트들, 가상 머신, 소프트웨어, 및/또는 하드웨어 및 소프트웨어의 소정의 조합을 포함한다. 따라서, LDGM 로직(202)은 일반적으로 기계-판독 가능 명령을 실행하고 내부 데이터 버스(306)를 통해 디코더(300)의 하나 이상의 다른 기능적 엘리먼트를 제어 또는 이와 통신하는 로직을 포함한다.
일 실시예에서, 프로세싱 로직(302)은 수신된 코드 패킷에 대한 비율을 결정하도록 동작하는 레이트 로직(316)을 포함한다. 예를 들어, 비율은 전체 코드 패킷들과 비교하여 수신된 양호한 코드 패킷들의 수를 설명한다. 따라서, 만일 백 개의 코드 패킷들이 전송되고, 단지 90개의 코드 패킷들이 성공적으로 수신되면, 레이트 로직(316)은 비율을 90/100 또는 90%로 결정한다. 만일 비율이 선택된 레이트 임계치보다 작으면, 레이트 로직(316)은 제1 타입의 조기 에러 검출 트리거 이벤트(318)를 발생시킨다. 일 실시예에서, 레이트 임계치는 원격 서버로부터 레이트 로직(316)으로 송신되며, 다른 실시예에서, 레이트 임계치는 장치 제조 동안 레이트 로직(316)에 미리 저장된다.
일 실시예에서, LDGM 로직(312)은 수신된/복구된 코드 패킷들 사이의 관계를 설명하는 트리 구조 또는 데이터베이스를 생성하도록 수신된 코드 패킷들을 프로세싱하기 위해 구성된 트리 로직(320)을 포함한다. 일 실시예에서, 생성된 트리 구조는 LDGM 로직(312)에서 메모리에 저장된다. 트리 구조의 더욱 상세한 설명은 본 명세서의 다른 부분에 제시된다. 일 실시예에서, 트리 로직(320)은, 트리 구조에 대해 필요한 메모리가 선택된 메모리 임계치를 초과할 때 제2 타입의 조기 에러 검출 트리거 이벤트(322)를 생성하도록 동작한다. 일 실시예에서, 메모리 임계치는 원격 서버로부터 트리 로직(320)으로 송신되며, 다른 실시예에서, 레이트 임계치는 장치 제조 동안 트리 로직(320)에 미리 저장된다.
일 실시예에서, 프로세싱 로직(302)은 디코딩 실패들을 검출하기 위해 수신된 코드 패킷들을 디코딩하도록 동작하는 디코더 로직(324)을 포함한다. 예를 들어, 디코더(300)는 송수신 로직(304)을 통해 k(1+ε)개의 코드 패킷들을 수신하고, 원래의 데이터를 결정하기 위해 상기 패킷들을 디코딩한다. 만일 소정의 선택 가능한 타입 또는 양의 디코딩 에러들이 검출되면, 디코딩 로직(324)은 디코딩 에러 트리거 이벤트(326)를 출력하도록 동작하는데, 이는 디코딩 에러가 발생했음을 나타낸다.
하나 이상의 실시예의 동작 동안, ε에 대한 초기값은 송수신 로직(304)을 통해 원격 서버로부터 다운로드된다. 다른 실시예에서, ε의 초기값은 제조 동안 디코더에 미리 저장된다.
일 실시예에서, 디코더(300)는, 하나 이상의 이하의 기능들을 실행함으로써 디코딩 에러 트리거 이벤트의 결과로서 수신된 코드 패킷들의 수를 조절하도록 동작한다. 1. ε의 초기값이 설정됨. 2. 전체 k(1+ε)개의 코드 패킷들이 수신되고 코드 저장소(310) 및 데이터 저장소(308)에 저장됨. 3. 수신된 코드 패킷들이 디코딩 로직(324)에 의해 디코딩됨. 4. 소정의 사전 선택된 디코딩 표준에 기초한 디코더 실패가 있는 경우, 디코딩 에러 트리거 이벤트(326)가 생성됨. 5. 프로세싱 로직(302)이 디코딩 에러 트리거 이벤트(326)를 검출하고 ε의 값을 증가시킴. 6. ε의 증가된 값은 추가의 코드 패킷들을 수집하기 위해 송수신기 로직(304)에 의해 사용됨. 7. 이어 디코딩 로직(324)은 모든 수신된 코드 패킷들로부터 데이터를 디코딩. 8. 다음의 데이터 세션 동안, ε의 값은 자신의 초기값으로 리셋됨.
일 실시예에서, 디코더(300)는 하나 이상의 아래 기능들을 실행함으로써 조기 에러 검출 트리거 이벤트의 결과로서 수신된 코드의 수를 조절하도록 동작한다. 1. ε의 초기값을 설정. 2. 코드 패킷들이 수신됨. 3. 트리 로직(320)은 수신된 코드 패킷들의 트리를 구성하기 위해 동작함. 4. 만일 송신된 코드 패킷들에 대한 수신비가 선택된 레이트 임계치보다 작으면, 조기 에러 검출 트리거 이벤트가 레이트 로직(316)에 의해 생성됨. 5. 만일 트리 구조에 대해 요구된 메모리의 양이 선택된 메모리 임계치를 초과하는 경우, 조기 에러 검출 트리거 이벤트가 트리 로직(320)에 의해 생성됨. 6. 만일 조기 에러 검출 이벤트가 생성되면, ε의 값은 증가되어, 콘택 윈도우에서 송신된 일부 또는 모든 추가의 코드 패킷들 수신되게 함. 7. 모든 수신된 코드 패킷들은 디코딩 로직(324)에 의해 디코딩됨. 8. 다음 데이터 세션을 위해, ε의 값은 자신의 초기값으로 리셋됨.
일 실시예에서, 디코더(300)는 컴퓨터-판독가능 매체에 저장된 하나 이상의 프로그램 명령들을 포함하는데, 이는 예를 들어, 프로세싱 로직(302)인 적어도 하나의 프로세서에 의해 실행될 때, 설명된 기능들을 제공한다. 예를 들어, 프로그램 명령들은 플로피 디스크, CDROM, 메모리 카드, 플래시 메모리 장치, RAM, ROM, 또는 소정의 다른 타입의 메모리 장치 또는 디코더와 인터페이스하는 컴퓨터 판독가능 매체와 같은 컴퓨터-판독가능 매체로부터 디코더(300)로 로딩될 수도 있다. 다른 실시예에서, 명령들은 송수신 로직(304)을 통해 디코더(300)로 인터페이스하는 네트워크 리소스 또는 외부 장치로부터 디코더(300)로 다운로드될 수도 있다. 프로그램 명령들은, 프로세싱 로직(302)에 의해 실행될 때, 설명된 바와 같이, 디코딩 시스템의 실시예들을 제공한다.
그 결과, 디코딩 시스템의 실시예들은 손실 송신 채널을 통해 송신된 데이터를 복구하기 위해 수신된 코드 패킷들을 프로세싱하도록 동작한다. 시스템은 하나 이상의 트리거 이벤트들에 기초하여 수신된 코드 패킷들의 양을 조절하도록 동작한다. 따라서, 디코딩 시스템의 실시예들은 장치 리소스들이 효율적으로 사용될 수 있도록 수신된 불필요한 패킷들의 양을 최소화하도록 동작한다.
도4는 디코딩 시스템의 실시예들에 사용하기 위한 트리 구조(400)의 일 실시예를 도시한다. 일 실시예에서, 트리 구조(400)는 LDGM 로직(3312)에서 생성되고 유지된다. 트리 구조(400)는 수신된 코드 패킷들로부터 획득된 데이터(402) 및 결합된 데이터(404)를 포함한다. 예를 들어, 결합된 데이터(404)는 설명된 제2 타입의 코드 패킷에서 제공된다. 트리 구조(400)는 또한 데이터(402)와 결합된 데이터(404) 사이의 관계를 설명하는 에지 구조(406)를 포함한다.
디코딩 시스템의 동작 동안, 코드 패킷들은 송수신 로직(304)에 의해 수신되며, 이들이 포함하는 데이터 및 결합된 데이터는 각각 데이터 저장소(308) 및 코드 저장소(310)에 저장된다. LDGM 로직(312)은, 얼마나 많은 패킷들이 성공적으로 수신되었으며, 어떤 패킷들이 복구될 필요가 있는지에 대한 계산이 가능하도록 트리 구조(400)를 구성하기 위해 데이터 저장소(308) 및 코드 저장소(310)에서 정보를 프로세싱한다. 따라서, 트리 구조(400)는, 얼마나 많은 패킷들이 손실되었고 얼마나 많은 패킷들이 성공적으로 수신되었는지를 결정하는 것이 가능하다는 성능 표시자를 제공한다.
일 실시예에서, 트리 구조(400)가 생성됨에 따라, 트리 구조(400)의 일부는 부가되고 트리 구조의 일부는 제거된다. 예를 들어, 일단 데이터가 성공적으로 복구되면, 408로 도시되고 점선으로 표시된 바와 같이, 에지 구조가 제거된다. 부가의 패킷들이 수신되고 소정의 패킷들이 손실됨에 따라, 410으로 표시되고 실선으로 나타낸 바와 같이 부가의 에지 구조들이 부가된다. 트리 구조(400)의 진행하는 부가 및 제거는 저장소의 소정 양이 트리 구조(400)를 저장하기 위해 할당되게 한다. 트리 구조(400)를 위해 할당된 저장소의 양은 송신에서 손실된 패킷들의 수를 설명하는 표시자이다.
따라서, 트리 구조(400)는 디코딩 시스템의 동작에 포함하는 몇몇 표시자들을 제공한다. 예를 들어, 트리 구조(400)는 어떤 패킷들이 성공적으로 복구되었고 어떤 패킷들이 그렇지 않은 지를 나타낸다. 트리 구조(400)는 또한 손실 패킷들의 수를 나타낸다. 예를 들어, 큰 트리 구조는 많은 수의 패킷들이 성공적으로 수신되지 않았음을 나타낸다.
트리거 이벤트 하나 이상의 실시예에서, 디코딩 시스템은 하나 이상의 트리거 이벤트에 기초하여 수신된 코드 패킷들의 수를 조정하도록 동작한다. 비록 많은 타입들이 실시예의 사상 내에서 가능하지만, 두 타입의 트리거 이벤트들이 본 명세서에 설명된 다. 일 타입의 트리거 이벤트는 조거 에러 검출 트리거 이벤트이다. 조기 에러 검출 트리거 이벤트는 수신된 패킷들의 디코딩이 성공적일 것을 나타내기 위해 디코딩 프로세스 또는 디코딩 프로세스 동안 발생한다. 조기 에러 검출 트리거 이벤트는, 교정 동작을 하기 위해 디코딩 프로세스를 정지시키는 것이 가능하게 하도록 디코딩이 완료되기 전에 발생하며, 그로 인해 장치 리소스들 및 프로세싱 시간을 보존한다.
다른 타입의 트리거 이벤트는 디코딩 실패 트리거 이벤트이다. 디코딩 실패 트리거 이벤트는, 일단 디코딩 프로세스가 완료되면 발생하며, 이는 디코딩 실패가 존재하는 것을 나타낸다.
이하의 설명은 다양한 트리거 이벤트들의 상세한 설명을 제공한다. 시스템은 이하에 설명된 트리거 이벤트들만을 이용하는 것에 한정되지 않으며 다른 트리거 이벤트들이 한정될 수 있으며 본 실시예의 사상 내에서 사용될 수 있음을 이해해야 한다.
조기 에러 검출 트리거 이벤트들 이하의 설명은 두 타입의 조기 에러 검출 트리거 이벤트들에 대한 설명이다. 이러한 이벤트들은, 디코딩 시스템이 디코딩 프로세스의 결과를 기다릴 필요 없이 교정 동작을 실행할 수 있도록 디코딩 프로세스의 완료 전에 검출된다.
메모리 이용 트리거 이벤트 일 실시예에서, 디코딩 시스템은 메모리 이용 트리거 이벤트를 검출하기 위해 동작한다. 예를 들어, 만일 트리 로직(320)에 의해 유지된 트리 구조가 선택된 메모리 임계치를 초과하면, 메모리 이용 트리거 이벤트가 생성된다.
수신 비율 트리거 이벤트 일 실시예에서, 디코딩 시스템은 수신 비율 트리거 이벤트를 검출하기 위해 동작한다. 예를 들어, 만일 레이트 로직(316)이 성공적으로 수신된 패킷들의 비율이 선택된 임계치보다 작다고 결정하면, 수신 비율 트리거 이벤트가 생성된다.
디코딩 실패 트리거 이벤트 이하의 설명은 디코딩 실패 트리거 이벤트에 대한 설명이다. 이러한 이벤트는, 디코딩 시스템이 다음 수신 세션에 대해 교정 동작을 실행할 수 있도록 디코딩 프로세스의 완료시 검출된다.
디코딩 실패 트리거 이벤트 디코딩 실패 트리거 이벤트는 수신된 코드 패킷들의 선택된 세션에 대한 디코딩 프로세스가 실패한 경우 발생한다. 예를 들어, 디코더(300)는 선택된 콘택 윈도우 내에서 송신된 k(1+ε) 개의 코드 패킷들을 수신하도록 동작한다. 만일 수신된 코드 패킷들을 디코딩하는데 실패가 있으면, 디코딩 실패 트리거 이벤트가 생성된다. 디코딩 실패는 소정의 원하는 디코딩 표준에 의해 한정될 수도 있다. 일 실시예에서, 디코딩 로직(324)은 수신된 코드 패킷들을 디코딩하도록 동작하며, 만일 디코딩 실패가 검출된 경우 디코딩 실패 트리거 이벤트(326)를 생성한다.
도5는 디코딩 시스템의 실시예들에서 사용하기 위한 방법(500)의 일 실시예를 도시한다. 간략화를 위해, 방법(500)은 도3에 도시된 디코더(300)를 참조하여 설명된다. 예를 들어, 일 실시예에서, 프로세싱 로직(302)은 아래 설명된 기능들 을 실행하기 위해 기계-판독가능 명령들을 실행한다.
블록(502)에서, ε의 값은 디코딩 시스템에 대한 값을 최소화하기 위해 초기화된다. 예를 들어, 일 실시예에서, ε의 값은 송수신기 로직(304)을 통해 원격 서버로부터 디코더(300)로 다운로딩되며 프로세싱 로직(302)에서 저장된다. 일 실시예에서, ε의 초기값은 대략 0.1이다.
블록(504)에서, 하나 이상의 코드 패킷들이 수신된다. 예를 들어, 코드 패킷들은 선택된 콘택 윈도우 내의 멀티캐스트 송신 채널을 통해 디코더(300)로 송신될 수도 있으며 송수신기 로직(304)에 의해 수신될 수도 있다. 코드 패킷들이 수신됨에 따라, 이들이 포함하는 정보는 필요에 따라 데이터 저장소(308) 및 코드 저장소(310)에 저장된다. 부가적으로, LDGM 로직(312)은 도4에 도시된 바와 같이 트리 구조를 구성한다.
블록(506)에서, 모든 원하는 코드 패킷들이 수신되었는 지를 결정하기 위한 테스트가 실행된다. 예를 들어, 디코더(300)는 k(1+ε)개의 코드 패킷들을 수신하기 위해 시도한다. 만일 모든 코드 패킷들이 수신되면, 방법은 블록(514)으로 진행한다. 만일 모든 코드 패킷들이 수신되지 않으면, 방법은 블록(508)로 진행한다.
블록(508)에서, 조기 에러 검출 트리거 이벤트가 발생했는지를 결정하는 테스트가 실행된다. 예를 들어, 일 실시예에서, 레이트 로직(316) 및 트리 로직(320)은 조기 에러 검출 트리거 이벤트들(318, 322)이 발생했는지를 결정하기 위해 동작한다. 만일 조기 에러 검출 이벤트가 발생하지 않으면, 방법은 블록(504) 으로 되돌아가며, 여기서 더 많은 코드 패킷들이 수신된다. 만일 조기 에러 검출 이벤트가 발생하면, 방법은 블록(510)으로 진행한다.
블록(510)에서, 콘택 윈도우에서 잔여 코드 패킷들의 모든 또는 선택가능한 부분이 수신된다. 예를 들어, 프로세싱 로직(302)은 코드 패킷들이 송신되고 있는 콘택 윈도우의 지속 기간을 인식한다. 프로세싱 로직(302)은, 디코더(300)가 송신되는 소정의 더 많은 패킷들을 수신할 수 있도록 콘택 윈도우의 나머지 부분에 대해 코드 패킷들을 수신하도록 송수신기(304)를 제어하도록 동작한다. 일 실시예에서, ε의 값은 모든 나머지 코드 패킷들을 포함하도록 증가된다.
블록(512)에서, 수신된 코드 패킷들이 디코딩된다. 예를 들어, 프로세싱 로직(302)은 가능하면 많은 송신된 데이터를 복구하기 위해 수신된 모든 코드 패킷들을 디코딩한다. 복구된 데이터는 데이터 저장소(308)에 저장된다. 이어 방법은 블록(524)에서 종료한다.
블록(514)에서, 수신된 k(1+ε)개의 코드 패킷들이 디코딩된다. 예를 들어, 프로세싱 로직(302)은 가능하면 많은 송신된 데이터를 복구하기 위해 k(1+ε)개의 코드 패킷들을 디코딩한다.
블록(516)에서, 디코딩 에러 트리거 이벤트가 발생했는지를 결정하기 위한 테스트가 행해진다. 예를 들어, 디코딩 에러 트리거 이벤트(326)는, 디코딩 로직(324)이 수신된 코드 패킷들을 디코딩시 (전술한 바와 같이) 실패가 검출될 경우 발생한다. 만일 디코딩 프로세스가 성공적이었다면, 방법은 블록(524)에서 종료한다. 만일 디코딩 에러가 검출되면, 디코딩 에러 트리거 이벤트가 검출되며, 방법 은 블록(518)으로 진행한다.
블록(518)에서, ε의 값은 증가된다. 예를 들어, 일 실시예에서, 프로세싱 로직(302)은 소정의 선택된 양만큼 ε의 값을 증가시킨다.
블록(520)에서, 수신될 더 많은 패킷들이 이용가능한 지를 결정하는 테스트가 행해진다. 예를 들어, 코드 패킷들은 콘택 윈도우의 지속 기간을 통해 송신된다. 테스트는, 더 많은 패킷들이 수신될 수 있도록 콘택 윈도우가 여전히 개방되었는 지를 결정한다. 일 실시예에서, 프로세싱 로직(302)은 콘택 윈도우가 여전히 개방되었는지를 결정한다. 만일 수신할 더 이상의 패킷들이 없도록 콘택 윈도우가 닫히면, 방법은 블록(524)에서 종료한다. 만일 수신될 더 많은 패킷들이 존재하도록 콘택 윈도우가 여전히 개방되면, 방법은 블록(522)으로 진행한다.
블록(522)에서, 부가의 코드 패킷들이 수신된다. 일 실시예에서, 프로세싱 로직(302)은 더 많은 코드 패킷들을 수신하기 위해 송수신기 로직(304)을 제어한다. 패킷들이 수신됨에 따라, 이들이 포함하는 정보는 필요에 따라 데이터 저장소(308) 및 코드 저장소(310)에 저장된다. 이어 방법은 블록(514)으로 진행하는데, 여기서 모든 수신된 코드 패킷들이 디코딩된다.
따라서, 방법(500)은 장치에서 사용하기 위해 디코딩 시스템의 일 실시예를 제공하도록 동작한다. 방법(500)은 단지 하나의 구현예를 나타내며 다른 구현예가 실시예들의 사상 내에서 가능하다는 것을 이해해야 한다.
도6은 디코딩 시스템의 실시예에 사용하기 위한 디코더(600)의 일 실시예를 도시한다. 디코더(600)는 코드 패킷들의 초기 양을 수신하는 수단(602)을 포함한 다. 예를 들어, 일 실시예에서, 수단(602)은 k(1+ε) 코드 패킷들을 수신하기 위해 송수신기 로직(304)을 제어하는 프로세싱 로직(302)을 포함한다.
디코더(600)는 또한 트리거 이벤트를 검출하는 수단(612)을 포함한다. 수단(612)은 디코딩 에러를 검출하는 수단(640), 메모리 임계치 에러를 검출하는 수단(606), 및 수신 비율 에러를 검출하는 수단(608)을 포함한다. 예를 들어, 일 실시예에서, 수단(604)은 디코딩 로직(324)을 포함하며, 수단(606)은 트리 로직(320)을 포함하며, 수단(608)은 레이트 로직(316)을 포함한다.
디코더(600)는 또한 추가의 코드 패킷들을 수신하는 수단(610)을 포함한다. 예를 들어, 일 실시예에서, 수단(610)은 콘택 윈도우의 지속 기간 내에서 부가의 코드 패킷들을 수신하기 위해 송수신기 로직(304)을 제어하는 프로세싱 로직(302)을 포함한다. 따라서, 디코더(600)는 디코딩 시스템의 하나의 실시예를 제공한다.
본 명세서에서 개시된 실시예와 관련하여 다양하게 설명되는 논리들, 논리 블럭들, 모듈들, 및 회로들은 범용 프로세서, 디지털 신호 처리기(DSP), 응용 집적 회로(ASIC), 현장 프로그램가능한 게이트 어레이(FPGA), 또는 다른 프로그램가능한 로직 디바이스, 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 요소들, 또는 본 명세서에 개시된 기능을 수행하도록 설계된 그들의 임의의 조합을 사용하여 실행되거나 수행될 수 있다. 범용 프로세서는 마이크로프로세서가 될 수 있지만, 선택적으로 프로세서는 임의의 종래의 프로세서, 제어기, 마이크로제어기, 또는 상태 기계가 될 수 있다. 프로세서는 또한 예를 들어, DSP 및 마이크로프로세서의 조합, 복수의 마이크로프로세서, DSP 코어와 결합된 하나 또는 그 이상의 마이크로프 로세서, 또는 임의의 다른 구성과 같은 컴퓨팅 장치들의 조합으로서 실행될 수 있다.
본 명세서에 개시된 실시예와 관련하여 설명되는 방법 또는 알고리즘의 단계는 하드웨어에서, 프로세서에 의해 실행되는 소프트웨어 모듈에서, 또는 그들의 조합에서 즉시 구현될 수 있다. 소프트웨어 모듈은 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드디스크, 제거가능한 디스크, CD-ROM 또는 임의의 다른 저장 매체 형태로 당업자에게 공지된다. 예시적인 저장 매체는 저장매체로부터 정보를 판독하고 정보를 기록할 수 있는 프로세서에 접속된다. 선택적으로, 저장 매체는 프로세서의 필수 구성요소이다. 프로세서 및 저장 매체는 ASIC 내에 상주할 수 있다. ASIC은 사용자 터미널 내에 상주할 수 있다. 선택적으로, 프로세서 및 저장 매체는 사용자 디바이스내에서 이산요소들로서 상주할 수 있다.
전술한 설명은 당업자가 설명된 다양한 실시예를 실행할 수 있도록 제공된다. 이러한 실시예에 대한 다양한 변경이 당업자에게 명백하며, 여기서 한정된 일반 원칙은 다른 실시예, 예를 들어, 본 발명의 사상을 벗어나지 않는 인스턴트 메시지 서비스 또는 소정의 일반 무선 데이터 통신 애플리케이션에 적용될 수도 있다. 따라서, 본 발명은 실시예에 한정되는 것은 아니며, 설명된 원리들 및 새로운 특징과 조화되는 넓은 사상에 부합된다. "예"라는 용어는 "실례, 예증, 실시예"를 의미한다. 본 명세서에 설명된 소정의 실시예 또는 디자인은 "예"이며, 다른 실시예 또는 디자인에 비해 바람직하거나 장점을 갖는 것으로 한정되는 것은 아니다.
결론적으로, 디코딩 시스템의 하나 이상의 실시예가 설명되었지만, 이러한 실시예에 대한 다양한 변경이 이들의 사상 또는 필수적인 특징을 벗어나지 않고, 실시예에 적용될 수 있음을 이해해야 한다. 따라서, 상기 개시된 사항들은 단지 이하에서 설명되는 본 발명의 사상을 설명하기 위한 것이며, 본 발명을 한정하는 것은 아니다.

Claims (41)

  1. 디코딩 실패를 검출하는 방법으로서,
    코드 패킷들의 초기량을 수신하는 단계;
    상기 코드 패킷들의 초기량과 관련된 디코딩 실패를 나타내는 트리거 이벤트를 검출하는 단계; 및
    상기 트리거 이벤트에 기초하여 하나 이상의 추가 코드 패킷들을 수신하는 단계를 포함하는,
    디코딩 실패를 검출하는 방법.
  2. 제1항에 있어서,
    송신된 데이터를 획득하기 위해 상기 코드 패킷들의 초기량 및 상기 하나 이상의 추가 코드 패킷들을 디코딩하는 단계를 더 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 방법.
  3. 제1항에 있어서,
    상기 하나 이상의 추가 코드 패킷들의 양을 결정하기 위해 ε 파라미터를 증가시키는 단계를 더 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 방법.
  4. 제3항에 있어서,
    연속한 수신 세션을 위해 ε 파라미터를 초기값으로 리셋하는 단계를 더 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 방법.
  5. 제1항에 있어서,
    메모리 이용 임계치에 기초하여 상기 트리거 이벤트를 발생시키는 단계를 더 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 방법.
  6. 제5항에 있어서,
    상기 수신 단계는 콘택 윈도우의 지속 기간 내에 하나 이상의 추가 코드 패킷들을 수신하는 단계를 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 방법.
  7. 제1항에 있어서,
    수신 비율 표시자에 기초하여 상기 트리거 이벤트를 발생시키는 단계를 더 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 방법.
  8. 제7항에 있어서,
    상기 수신 단계는 콘택 윈도우의 지속 기간 내에 상기 하나 이상의 추가 코드 패킷들을 수신하는 단계를 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 방법.
  9. 디코딩 실패를 검출하는 장치로서,
    코드 패킷들의 초기량을 수신하고, 트리거 이벤트가 검출될 때 하나 이상의 추가 코드 패킷들을 수신하도록 구성된 수신 로직; 및
    상기 트리거 이벤트를 검출하도록 구성된 프로세싱 로직을 포함하며, 상기 트리거 이벤트는 상기 코드 패킷들의 초기량과 관련된 디코딩 실패를 나타내는,
    디코딩 실패를 검출하는 장치.
  10. 제9항에 있어서,
    송신된 데이터를 획득하기 위해 상기 코드 패킷들의 초기량 및 상기 하나 이상의 추가 코드 패킷들을 디코딩하도록 구성된 디코딩 로직을 더 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 장치.
  11. 제9항에 있어서,
    상기 트리거 이벤트를 발생시키기 위해 상기 코드 패킷들의 초기량을 디코딩하도록 구성된 로직을 더 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 장치.
  12. 제9항에 있어서,
    상기 하나 이상의 추가 코드 패킷들의 양을 결정하기 위해 ε 파라미터를 증 가시키도록 구성된 로직을 더 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 장치.
  13. 제12항에 있어서,
    연속한 수신 세션을 위해 상기 ε 파라미터를 초기값으로 리셋하도록 구성된 로직을 더 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 장치.
  14. 제9항에 있어서,
    메모리 이용 임계치에 기초하여 상기 트리거 이벤트를 발생시키도록 구성된 로직을 더 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 장치.
  15. 제14항에 있어서,
    상기 수신 로직은 콘택 윈도우의 지속 기간 내에 상기 하나 이상의 추가 코드 패킷들을 수신하도록 구성된 로직을 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 장치.
  16. 제9항에 있어서,
    수신 비율 표시자에 기초하여 상기 트리거 이벤트를 발생시키도록 구성된 로직을 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 장치.
  17. 제16항에 있어서,
    상기 수신 로직은 콘택 윈도우의 지속 기간 내에 상기 하나 이상의 추가 코드 패킷들을 수신하도록 구성된 로직을 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 장치.
  18. 디코딩 실패를 검출하는 장치로서,
    코드 패킷들의 초기량을 수신하는 수단;
    상기 코드 패킷들의 초기량과 관련된 디코딩 실패를 나타내는 트리거 이벤트를 검출하는 수단; 및
    상기 트리거 이벤트에 기초하여 하나 이상의 추가 코드 패킷들을 수신하는 수단을 포함하는,
    디코딩 실패를 검출하는 장치.
  19. 제18항에 있어서,
    송신된 데이터를 획득하기 위해 상기 코드 패킷들의 초기량 및 상기 하나 이상의 추가 코드 패킷들을 디코딩하는 수단을 더 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 장치.
  20. 제18항에 있어서,
    상기 하나 이상의 추가 코드 패킷들의 양을 결정하기 위해 ε 파라미터를 증 가시키는 수단을 더 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 장치.
  21. 제20항에 있어서,
    연속한 수신 세션을 위해 상기 ε 파라미터를 초기값으로 리셋하는 수단을 더 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 장치.
  22. 제18항에 있어서,
    메모리 이용 임계치에 기초하여 상기 트리거 이벤트를 발생시키는 수단을 더 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 장치.
  23. 제22항에 있어서,
    상기 수신 수단은 콘택 윈도우의 지속 기간 내에 상기 하나 이상의 추가 코드 패킷들을 수신하는 수단을 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 장치.
  24. 제18항에 있어서,
    수신 비율 표시자에 기초하여 상기 트리거 이벤트를 발생시키는 수단을 더 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 장치.
  25. 제24항에 있어서,
    상기 수신 수단은 콘택 윈도우의 지속 기간을 통해 상기 하나 이상의 추가 코드 패킷들을 수신하는 수단을 포함하는 것을 특징으로 하는 디코딩 실패를 검출하는 장치.
  26. 적어도 하나의 프로세서에 의해 실행될 때, 디코딩 실패를 검출하도록 동작하는 명령들을 포함하는 컴퓨터 판독 가능 매체로서,
    코드 패킷들의 초기량을 수신하는 명령;
    상기 코드 패킷들의 초기량과 관련된 디코딩 실패를 나타내는 트리거 이벤트를 검출하는 명령; 및
    상기 트리거 이벤트에 기초하여 하나 이상의 추가 코드 패킷들을 수신하는 명령을 포함하는,
    컴퓨터 판독 가능 매체.
  27. 제26항에 있어서,
    송신된 데이터를 획득하기 위해 상기 코드 패킷들의 초기량 및 상기 하나 이상의 추가 코드 패킷들을 디코딩하는 명령을 더 포함하는 것을 특징으로 하는 컴퓨터 판독 가능 매체.
  28. 제26항에 있어서,
    상기 하나 이상의 추가 코드 패킷들의 양을 결정하기 위해 ε 파라미터를 증 가시키는 명령을 더 포함하는 것을 특징으로 하는 컴퓨터 판독 가능 매체.
  29. 제28항에 있어서,
    연속한 수신 세션을 위해 상기 ε 파라미터를 초기값으로 리셋하는 명령을 더 포함하는 것을 특징으로 하는 컴퓨터 판독 가능 매체.
  30. 제26항에 있어서,
    메모리 이용 임계치에 기초하여 상기 트리거 이벤트를 발생시키는 명령을 더 포함하는 것을 특징으로 하는 컴퓨터 판독 가능 매체.
  31. 제30항에 있어서,
    상기 수신 명령은 콘택 윈도우의 지속 기간 내에 하나 이상의 추가 코드 패킷들을 수신하는 명령을 포함하는 것을 특징으로 하는 컴퓨터 판독 가능 매체.
  32. 제26항에 있어서,
    수신 비율 표시자에 기초하여 상기 트리거 이벤트를 발생시키는 명령을 더 포함하는 것을 특징으로 하는 컴퓨터 판독 가능 매체.
  33. 제32항에 있어서,
    상기 수신 명령은 콘택 윈도우의 지속 기간을 통해 상기 하나 이상의 추가 코드 패킷들을 수신하는 명령을 포함하는 것을 특징으로 하는 컴퓨터 판독 가능 매체.
  34. 디코딩 실패를 검출하기 위한 방법을 실행하도록 구성된 적어도 하나의 프로세서로서, 상기 방법은,
    코드 패킷들의 초기량을 수신하는 단계;
    상기 코드 패킷들의 초기량과 관련된 디코딩 실패를 나타내는 트리거 이벤트를 검출하는 단계; 및
    상기 트리거 이벤트에 기초하여 하나 이상의 추가 코드 패킷들을 수신하는 단계를 포함하는,
    적어도 하나의 프로세서.
  35. 제34항에 있어서,
    송신된 데이터를 획득하기 위해 상기 코드 패킷들의 초기량 및 상기 하나 이상의 추가 코드 패킷들을 디코딩하는 단계를 더 포함하는 것을 특징으로 하는 적어도 하나의 프로세서.
  36. 제34항에 있어서,
    상기 하나 이상의 추가 코드 패킷들의 양을 결정하기 위해 ε 파라미터를 증가시키는 단계를 더 포함하는 것을 특징으로 하는 적어도 하나의 프로세서.
  37. 제36항에 있어서,
    연속한 수신 세션을 위해 상기 ε 파라미터를 초기값으로 리셋하는 단계를 더 포함하는 것을 특징으로 하는 적어도 하나의 프로세서.
  38. 제34항에 있어서,
    메모리 이용 임계치에 기초하여 상기 트리거 이벤트를 발생시키는 단계를 더 포함하는 것을 특징으로 하는 적어도 하나의 프로세서.
  39. 제38항에 있어서,
    상기 수신 단계는 콘택 윈도우의 지속 기간 내에 하나 이상의 추가 코드 패킷들을 수신하는 단계를 포함하는 것을 특징으로 하는 적어도 하나의 프로세서.
  40. 제34항에 있어서,
    수신 비율 표시자에 기초하여 상기 트리거 이벤트를 발생시키는 단계를 더 포함하는 것을 특징으로 하는 적어도 하나의 프로세서.
  41. 제40항에 있어서,
    상기 수신 단계는 콘택 윈도우의 지속 기간 내에 상기 하나 이상의 추가 코드 패킷들을 수신하는 단계를 포함하는 것을 특징으로 하는 적어도 하나의 프로세 서.
KR1020087009818A 2005-09-28 2006-09-28 디코딩 에러들의 조기 검출을 위한 시스템 KR100983690B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US72182405P 2005-09-28 2005-09-28
US60/721,824 2005-09-28
US11/297,558 US8867336B2 (en) 2005-09-28 2005-12-07 System for early detection of decoding errors
US11/297,558 2005-12-07
PCT/US2006/038537 WO2007038783A1 (en) 2005-09-28 2006-09-28 System for early detection of decoding errors

Publications (2)

Publication Number Publication Date
KR20080053938A true KR20080053938A (ko) 2008-06-16
KR100983690B1 KR100983690B1 (ko) 2010-09-24

Family

ID=37697939

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087009818A KR100983690B1 (ko) 2005-09-28 2006-09-28 디코딩 에러들의 조기 검출을 위한 시스템

Country Status (10)

Country Link
US (1) US8867336B2 (ko)
EP (1) EP1952572A1 (ko)
JP (3) JP2009510949A (ko)
KR (1) KR100983690B1 (ko)
CN (1) CN101313503B (ko)
BR (1) BRPI0616763A2 (ko)
CA (1) CA2623945A1 (ko)
RU (1) RU2407178C2 (ko)
TW (1) TWI324869B (ko)
WO (1) WO2007038783A1 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7697533B2 (en) * 2006-12-15 2010-04-13 Mediatek Inc. Communication device and method
US8418023B2 (en) 2007-05-01 2013-04-09 The Texas A&M University System Low density parity check decoder for irregular LDPC codes
WO2010019169A1 (en) * 2008-08-15 2010-02-18 Lsi Corporation Rom list-decoding of near codewords
US8161345B2 (en) 2008-10-29 2012-04-17 Agere Systems Inc. LDPC decoders using fixed and adjustable permutators
US9356623B2 (en) 2008-11-26 2016-05-31 Avago Technologies General Ip (Singapore) Pte. Ltd. LDPC decoder variable node units having fewer adder stages
JP5506828B2 (ja) 2009-03-05 2014-05-28 エルエスアイ コーポレーション 繰り返し復号器のための改良ターボ等化方法
JP2010212934A (ja) * 2009-03-10 2010-09-24 Toshiba Corp 半導体装置
JP5432367B2 (ja) 2009-04-21 2014-03-05 アギア システムズ インコーポレーテッド 書込み検証を使用した符号のエラーフロア軽減
US8578256B2 (en) * 2009-04-22 2013-11-05 Agere Systems Llc Low-latency decoder
US8677209B2 (en) * 2009-11-19 2014-03-18 Lsi Corporation Subwords coding using different encoding/decoding matrices
KR20120117763A (ko) 2009-11-30 2012-10-24 엘에스아이 코포레이션 범용 프로세서 상에서 신호 프로세싱을 갖는 메모리 판독 채널
US8352847B2 (en) * 2009-12-02 2013-01-08 Lsi Corporation Matrix vector multiplication for error-correction encoding and the like
US8464142B2 (en) 2010-04-23 2013-06-11 Lsi Corporation Error-correction decoder employing extrinsic message averaging
US8499226B2 (en) 2010-06-29 2013-07-30 Lsi Corporation Multi-mode layered decoding
US8458555B2 (en) 2010-06-30 2013-06-04 Lsi Corporation Breaking trapping sets using targeted bit adjustment
US8504900B2 (en) 2010-07-02 2013-08-06 Lsi Corporation On-line discovery and filtering of trapping sets
US8621289B2 (en) 2010-07-14 2013-12-31 Lsi Corporation Local and global interleaving/de-interleaving on values in an information word
US8768990B2 (en) 2011-11-11 2014-07-01 Lsi Corporation Reconfigurable cyclic shifter arrangement
RU2012146685A (ru) 2012-11-01 2014-05-10 ЭлЭсАй Корпорейшн База данных наборов-ловушек для декодера на основе разреженного контроля четности
US10084567B2 (en) * 2015-03-04 2018-09-25 Qualcomm Incorporated Early termination in enhanced multimedia broadcast-multicast service reception
DE112019001304B4 (de) * 2018-03-13 2023-08-03 Tektronix, Inc. Integrierte entwicklungsumgebung für protokolldesign, -auswertung und -debugging
US11121806B2 (en) * 2018-09-07 2021-09-14 Qualcomm Incorporated Decoding performance

Family Cites Families (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU1190525A1 (ru) 1983-11-21 1985-11-07 Научный Совет По Комплексной Проблеме "Кибернетика" Ан Ссср Устройство дл декодировани кода
FI941221A (fi) 1994-03-15 1995-09-16 Nokia Mobile Phones Ltd Menetelmä matkaviestinjärjestelmän radiopuhelimen tehonkulutuksen pienentämiseksi ja matkaviestin
US5703883A (en) 1995-09-29 1997-12-30 United Microelectronics Corporation Expandable repeater controller
JP3127440B2 (ja) 1995-10-23 2001-01-22 日本電信電話株式会社 誤り回復装置
JP2000505604A (ja) 1996-01-29 2000-05-09 レクロイ・コーポレーション パケットネットワークモニター装置
JP3571918B2 (ja) 1997-06-04 2004-09-29 株式会社東芝 符号伝送方法、送信装置、受信装置および通信システム
US6011796A (en) 1997-06-17 2000-01-04 Qualcomm Incorporated Extended range sequence numbering for selective repeat data transmission protocol
FI106285B (fi) 1998-02-17 2000-12-29 Nokia Networks Oy Mittausraportointi tietoliikennejärjestelmässä
DE19813507C2 (de) 1998-03-26 2000-10-05 Siemens Ag Verfahren zur Anpassung eines Empfangsgerätes an Übertragungsbedingungen und Empfangsgerät hierfür
US7068729B2 (en) 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US20010056560A1 (en) 1998-10-08 2001-12-27 Farooq Khan Method and system for measurement based automatic retransmission request in a radiocommunication system
US6438105B1 (en) 1999-02-08 2002-08-20 3Com Corporation Reliable internet facsimile protocol
US6335933B1 (en) * 1999-05-21 2002-01-01 Broadcom Homenetworking, Inc. Limited automatic repeat request protocol for frame-based communication channels
US6507582B1 (en) * 1999-05-27 2003-01-14 Qualcomm Incorporated Radio link protocol enhancements for dynamic capacity wireless data channels
US6845238B1 (en) 1999-09-15 2005-01-18 Telefonaktiebolaget Lm Ericsson (Publ) Inter-frequency measurement and handover for wireless communications
US6665832B1 (en) * 2000-03-31 2003-12-16 Qualcomm, Incorporated Slotted mode decoder state metric initialization
CA2379986C (en) 2000-05-24 2006-03-28 Samsung Electronics Co., Ltd. Data transmission apparatus and method for an harq data communication system
US6486803B1 (en) 2000-09-22 2002-11-26 Digital Fountain, Inc. On demand encoding with a window
KR100857777B1 (ko) * 2001-03-26 2008-09-09 엘지전자 주식회사 하이브리드 자동 재송 요구 방식을 이용한 가변 길이의 패킷 송수신 방법
KR20030004618A (ko) * 2001-07-05 2003-01-15 삼성전자 주식회사 고속순방향패킷전송 시스템의 패킷 데이터 재전송 장치 및방법
KR100459557B1 (ko) * 2001-08-23 2004-12-03 삼성전자주식회사 고속 순방향 패킷 접속 통신 시스템에서 데이터 상태정보를 나타내기 위한 혼화 자동 재전송 요구 채널 번호할당 방법
US7889742B2 (en) * 2001-09-29 2011-02-15 Qualcomm, Incorporated Method and system for improving data throughput
US6999921B2 (en) * 2001-12-13 2006-02-14 Motorola, Inc. Audio overhang reduction by silent frame deletion in wireless calls
US7609639B2 (en) * 2002-02-07 2009-10-27 Motorola, Inc. Negative acknowledgment (NAK) suppression
JP3490425B2 (ja) * 2002-03-14 2004-01-26 松下電器産業株式会社 受信装置及び受信方法
US6901063B2 (en) * 2002-05-13 2005-05-31 Qualcomm, Incorporated Data delivery in conjunction with a hybrid automatic retransmission mechanism in CDMA communication systems
KR200317349Y1 (ko) 2003-03-27 2003-06-25 신용은 돌침대용 석판
US7257760B2 (en) 2003-11-25 2007-08-14 Roland Reinhard Rick Early decoding of a control channel in a wireless communication system
RU2259636C1 (ru) 2004-03-10 2005-08-27 Федеральное государственное унитарное предприятие "Калужский научно-исследовательский институт телемеханических устройств" Способ передачи сообщений в системе с обратной связью
US20060250949A1 (en) * 2005-03-30 2006-11-09 At&T Corp. Loss tolerant transmission control protocol

Also Published As

Publication number Publication date
US20070071009A1 (en) 2007-03-29
US8867336B2 (en) 2014-10-21
BRPI0616763A2 (pt) 2011-06-28
JP5657581B2 (ja) 2015-01-21
TWI324869B (en) 2010-05-11
TW200723780A (en) 2007-06-16
CN101313503B (zh) 2017-04-05
WO2007038783A1 (en) 2007-04-05
JP2009510949A (ja) 2009-03-12
JP2015039201A (ja) 2015-02-26
JP2012138912A (ja) 2012-07-19
EP1952572A1 (en) 2008-08-06
RU2008116618A (ru) 2009-11-10
KR100983690B1 (ko) 2010-09-24
RU2407178C2 (ru) 2010-12-20
CN101313503A (zh) 2008-11-26
CA2623945A1 (en) 2007-04-05

Similar Documents

Publication Publication Date Title
KR100983690B1 (ko) 디코딩 에러들의 조기 검출을 위한 시스템
EP2003911B1 (en) Method of an apparatus for reducing power consumption in a mobile telephony system
KR950015190B1 (ko) 전송된 데이타 워드의 에러 정정 방법
US7539928B2 (en) Method and apparatus for decoding inner and outer codes in a mobile communication system
WO2005099162A2 (en) Repair function for a broadcast service
CN104202126A (zh) 通过循环冗余校验的块的迭代解码
Xie et al. Revisiting partial packet recovery in 802.11 wireless lans
US8640009B2 (en) Methods and apparatus for providing linear erasure codes
KR100555187B1 (ko) 무선 통신방법 및 무선 통신장치
US12015486B2 (en) Data retransmission decoding method, apparatus and system, and communication device
WO2018098691A1 (zh) 一种控制信道生成方法、控制信道检测方法及相关设备
KR101314301B1 (ko) 통신 네트워크에서 데이터를 인코딩하기 위한 방법 및 장치
KR20030029949A (ko) 디지털 통신 시스템에서 가변 길이 메시지를 다중화하여디코딩하는 방법 및 시스템
US9276606B2 (en) Correction data
EP1656759B1 (en) Data compression with incremental redundancy
US7346117B2 (en) Turbo decoder
CN101953105B (zh) 用于停止Turbo解码器执行的方法和系统
RU2000128010A (ru) Мобильная станция и способ для применения проверки циклическим избыточным кодом с использованием достоверности декодирования
US20190253073A1 (en) Network data prediction method, network data processing device and network data processing method
US6981194B1 (en) Method and apparatus for encoding error correction data
CN117498984A (zh) 一种无线通信解码方法、装置、设备及存储介质
WO2013000333A1 (zh) 译码方法及装置
Jianhua et al. Performance evaluation of a reliable broadcast scheme for satellite communications
Jain et al. New Stop &Wait Arq Protocol
MXPA00009731A (en) Mobile station employing crc verification using decoding reliability and methods therefor

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

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20140828

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20160629

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20170629

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee