KR102276461B1 - 에러 핸들링 메커니즘을 갖는 컴퓨팅 시스템 및 그것의 동작 방법 - Google Patents

에러 핸들링 메커니즘을 갖는 컴퓨팅 시스템 및 그것의 동작 방법 Download PDF

Info

Publication number
KR102276461B1
KR102276461B1 KR1020150026284A KR20150026284A KR102276461B1 KR 102276461 B1 KR102276461 B1 KR 102276461B1 KR 1020150026284 A KR1020150026284 A KR 1020150026284A KR 20150026284 A KR20150026284 A KR 20150026284A KR 102276461 B1 KR102276461 B1 KR 102276461B1
Authority
KR
South Korea
Prior art keywords
error
decoding
content
output
information
Prior art date
Application number
KR1020150026284A
Other languages
English (en)
Other versions
KR20160023541A (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 KR20160023541A publication Critical patent/KR20160023541A/ko
Application granted granted Critical
Publication of KR102276461B1 publication Critical patent/KR102276461B1/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/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/0061Error detection codes
    • H04L1/0063Single parity check
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • 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
    • H04L1/0047Decoding adapted to other signal detection operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Error Detection And Correction (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

본 발명에 따른 컴퓨팅 시스템은, 콘텐츠를 나타내는 정보 부분과 상기 콘텐츠에 관련된 상기 정보 부분을 설명하는 에러 핸들링 부분을 포함하는 목적 신호를 억세스하는 인터 디바이스 인터페이스, 및 상기 인터 디바이스 인터페이스에 연결되고, 상기 목적 신호로부터 스파스(sparse) 구조에 근거로 하여 패리티 체크 파라미터를 발생하고, 상기 에러 핸들링 부분과 상기 패리티 체크 파라미터를 이용하여 상기 정보 부분을 디코딩하는 것에 근거로 하여 상기 콘텐츠를 추정하는 통신 유닛을 포함한다.

Description

에러 핸들링 메커니즘을 갖는 컴퓨팅 시스템 및 그것의 동작 방법{COMPUTING SYSTEM HAVING ERROR HANDLING MECHANISM AND OPERATING METHOD THEREOF}
본 발명은 에러 핸들링 메커니즘을 갖는 컴퓨팅 시스템 및 그것의 동작 방법에 관한 것이다.
현대의 소비자 및 산업용 전자 제품은, 예를 들어, 휴대폰, 네비게이션 시스템, 휴대용 디지털 보조 및 조합 장치 등의 장치는, 이동 통신 등의 현대적인 생활을 지원하는 기능 수준의 증가를 제공하고 있다. 기존 기술의 연구 개발은 무수한 방향들을 취할 수 있다.
현대 생활에서 정보에 대한 수요의 증가는, 사용자가 데이터 전송 속도를 증가시키면서 언제든지 정보에 억세스 할 수 있어야 한다. 하지만, 이동 통신에 사용되는 통신 신호들은, 데이터의 품질과 속도에 영향을 미치는 통신된 정보를 위한 무수한 포맷들로부터 야기되는 복잡도 만큼이나 무수한 소스들로부터 다양한 종류의 간섭들을 경험한다.
따라서, 에러 핸들링(error handling) 메커니즘을 구비한 컴퓨팅 시스템이 여전히 필요하다. 소비자의 기대 수준에 따라 증가하는 상업적인 경쟁 압력과 의미있는 제품 차별화를 고려하여, 이러한 문제들에 대한 대답이 점점 중요하다. 또한, 추가적으로 경쟁 압력, 비용을 절감하고 효율성과 성능을 향상시키고 충족하면서, 이러한 문제에 대한 해답을 찾기 것이 긴급하고도 중요하다.
이러한 문제에 대한 해결책이 오랫동안 요구되고 왔지만, 당업자에게 오랫동안 회피했던 문제점들에 대한 어떠한 해결책도 교시되거나 제안되지 못했다.
본 발명의 목적은 성능이 향상된 에러 핸들링 메커니즘을 갖는 컴퓨팅 시스템 및 그것의 동작 방법을 제공하는데 있다.
본 발명의 실시 예에 따른 컴퓨팅 시스템은, 콘텐츠를 나타내는 정보 부분과 상기 콘텐츠에 관련된 상기 정보 부분을 설명하는 에러 핸들링 부분을 포함하는 목적 신호를 억세스하는 인터 디바이스 인터페이스; 및 상기 인터 디바이스 인터페이스에 연결되고, 상기 목적 신호로부터 스파스(sparse) 구조에 근거로 하여 패리티 체크 파라미터를 발생하고, 상기 에러 핸들링 부분과 상기 패리티 체크 파라미터를 이용하여 상기 정보 부분을 디코딩하는 것에 근거로 하여 상기 콘텐츠를 추정하는 통신 유닛을 포함한다.
본 발명의 실시 예에 따른 컴퓨팅 시스템의 동작 방법은: 콘텐츠를 나타내기 위한 정보 부분과, 상기 콘텐츠에 연관된 상기 정보 부분을 설명하기 위한 에러 핸들링 부분을 갖는 목적 신호를 발생하는 단계; 상기 목적 신호로부터 스파스 구조에 근거로 하여 패리티 체크 파라미터를 발생하는 단계; 및 상기 에러 핸들링 부분과 상기 패리티 체크 파라미터를 이용하여 상기 정보 부분을 디코딩하는 것에 근거로 하여 상기 콘텐츠를 추정하는 단계를 포함한다.
본 발명의 실시 예에 따른 컴퓨팅 시스템을 위한 명령들을 갖는 컴퓨터 판독 가능 매체의 동작 방법은: 콘텐츠를 나타내는 정보 부분과, 상기 콘텐츠에 연관된 상기 정보 부분을 설명하기 위한 에러 핸들링 부분을 포함하는 목적 신호를 억세스하는 단계; 상기 목적 신호로부터 스파스 구조에 근거로 하여 패리티 체크 파라미터를 발생하는 단계; 및 상기 에러 핸들링 부분과 상기 패리티 체크 파라미터를 이용하여 상기 정보 부분을 디코딩하는 것에 근거로 하여 상기 콘텐츠를 추정하는 단계를 포함한다.
상술한 바와 같이 본 발명에 따른 컴퓨팅 시스템 및 동작 방법은, 에러 핸들링 부분을 이용한 패리티 체크 파라미터를 근거로 하여 콘텐츠를 추정함으로써, 시스템적인 성능향상을 꾀할 수 있다.
도 1은 본 발명의 실시 예에서 에러 핸들링 메커니즘을 갖춘 컴퓨팅 시스템이다.
도 2는 도 1의 콘텐츠를 처리하는 컴퓨팅 시스템의 상세한 예이다.
도 3은 컴퓨팅 시스템의 예시적인 블록도이다.
도 4는 컴퓨팅 시스템의 제어 흐름이다.
도 5는 도 1의 컴퓨팅 시스템의 예시적인 동작을 나타내는 순서도이다.
도 6은 도 1의 컴퓨팅 시스템의 새로운 예시적인 동작을 나타내는 순서도이다.
도 7은 도 1의 컴퓨팅 시스템의 추가의 예시적인 동작을 나타내는 순서도이다.
도 8은 본 발명의 다른 실시 예에서, 컴퓨팅 시스템의 동작 방법의 흐름도이다.
아래에서는 도면들을 이용하여 본 발명의 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있을 정도로 본 발명의 내용을 명확하고 상세하게 기재할 것이다.
본 발명의 실시 예들은 목적 신호로부터 콘텐츠를 처리하는 데 사용할 수 있다. 목적 신호는 그 안에 포함된 에러 핸들링 부분과 에러 정정 프로세스를 이용하여 디코딩 할 수 있다. 에러 핸들링 부분을 이용하는 에러 정정 프로세스는, 조인트 프로세싱 메커니즘(joint processing mechanism)을 이용하여 스파스 구조(sparse configuration)를 포함하거나 혹은 스파스 구조를 근거로 하여 패리티 체크 파라미터를 발생할 수 있다.
아래의 실시 예들은 본 발명을 만들고 사용하는 것이, 당업자에게 가능하도록 충분히 상세하게 설명된다. 다른 실시 예들은 본 발명에 근거로 하여 분명하다고 이해되어야하며, 시스템, 프로세스 혹은 기계적인 변경이 본 발명의 실시 예의 범위에서 벗어나지 않도록 만들어질 수 있다.
아래의 설명에서, 다수의 특정 세부 사항이 본 발명의 완전한 이해를 제공하기 위해 주어진다. 하지만, 본 발명은 이러한 특정 세부 사항 없이도 실시 할 수있는 것은 명백할 것이다. 본 발명은 몇 가지 잘 알려진 회로, 시스템 구성 및 프로세스 단계의 실시 예를 명료하게 공개할 것이다.
시스템의 실시 예들을 나타낸 도면, 특히 치수의 일부는 제시를 명확하게 하는 것이며, 도면에서 과장되어 표시되고 축척이 아닌 반 개략도이다. 설명을 쉽게하기 위해 도면 시야는 일반적으로 같은 방향을 나타내고 있지만, 마찬가지로 도면 설명은 대부분의 경우 선택적이다. 일반적으로, 본 발명은 어떤 방향으로도 동작시킬 수 있다. 실시 예는 설명의 편의상, 제 1 실시 형태, 제 2 실시 형태를 번호 매기는 것은, 다른 의미를 가지고 있거나 본 발명의 실시 예에 대한 제한을 제공하는 것을 의도하는 것은 아니다.
본 명세서에 포함된 "모듈"이라는 용어는, 이 용어가 포함된 문팩에 따라 본 발명의 소프트웨어, 하드웨어, 혹은 그것들의 조합을 포함하거나 구현될 수 있다. 예를 들어, 소프트웨어는 컴퓨터 코드, 펌웨어 소스 코드 및 응용 프로그램 소프트웨어 일 수 있다. 또한, 소프트웨어는, 함수 함수의 호출 코드 블록 혹은 이들의 조합을 포함할 수 있다. 예를 들어, 하드웨어는, 게이트, 회로, 프로세서, 컴퓨터, 집적 회로, 집적 회로 코어, 압력 센서, 관성 센서, MEMS(microelelctromechanical system), 수동 소자, 소프트웨어 기능, 그것의 일부 혹은 그것들의 조합을 수행하기 위한 명령들 포함하는 메모리 매체를 포함한다.
본 명세서에서 사용되는 용어 "프로세싱"(processing)는 조작 신호와, 데이터 검색 디코딩 조립 데이터 구조, 전송 데이터 구조 작업 데이터 구조 및 읽고 쓰기 데이터 구조와 같은 대응하는 데이터를 포함한다. 데이터 구조는 정보 시스템이 그러한 계산 혹은 발생 된 데이터, 프로그램 데이터 등의 데이터를 발생 된 심볼 패킷 블록, 파일, 입력 데이터로 배치되도록 정의된다.
도 1은 본 발명의 실시 예에서 에러 핸들링 메커니즘을 구비한 컴퓨팅 시스템 (100)을 도시한다. 도 1을 참조하면, 컴퓨팅 시스템(100)은 모뎀이나 라우터 등의 유선 장치를 포함할 수 있고, 네트워크(104)에 연결된 휴대폰이나 노트북 등 휴대 기기 같은 제 1 장치(102)를 포함한다. 제 1 장치(102)는 저장 장치 혹은 시스템 내부의 정보를 처리하도록 특화된 부분 혹은 회로와 같은 종합적인 회로 및 장치를 추가적으로 포함할 수 있다.
네트워크(104)는 장치 간의 통신을 가능하도록 서로 연결되는 유선 혹은 무선 통신 유닛 혹은 수단 시스템이다. 예를 들어, 네트워크(104)는 무선 셀룰러 네트워크를 위하여 와이어 송신기, 수신기, 안테나, 타워, 스테이션 리피터 전화 네트워크, 서버 혹은 클라이언트 장치의 조합을 포함할 수 있다. 또한, 네트워크(104)는 다양한 크기의 영역 네트워크 라우터, 케이블, 컴퓨터, 서버 및 클라이언트 장치의 조합을 포함 할 수 있다. 또한 예를 들어, 네트워크(104)는 통신 버스, 전선, 케이블, 무선 연결 혹은 장치의 장치 간에 이들의 조합을 포함할 수 있다.
컴퓨팅 시스템(100)은 제 1 장치(102)에 직접 혹은 간접적으로 연결하거나 통신하기 위한 제 2 장치(106)를 포함할 수 있다. 네트워크(104)는 제 2 장치(106)를 포함하거나 연결될 수 있다. 제 2 장치(106)는 제 1 장치(102)로부터 무선 신호들을 입력 받고, 제 1 신호(102)로 신호들을 전송하고, 신호들을 처리하고, 혹은 그것들의 조합을 수행할 수 있다. 제 2 장치(106)는 네트워크(104) 혹은 이들의 조합에서 다른 기지국 구성 요소 간의 신호를 중계 할 수 있다.
제 1 장치 (102)는 예를 들어, 제 2 장치(106)를 통해 네트워크(104)에 연결할 수 있다. 제 2 장치(106)는 기지국, 서버, 라우터, 모뎀, 혹은 이들의 조합 일 수 있다. 또한 예를 들어, 제 2 장치(106)는 모바일 컴퓨팅 장치를 갖는 제 1 장치(102)로부터 신호를 송수신함으로써, 통신에 사용되는 통신 장비 혹은 처리에 포함된 구성 요소 혹은 셀 타워와 무선 라우터 안테나 혹은 이들의 조합 일 수 있다. 또한, 예를 들어, 제 2 장치(106)는 저장 장치 혹은 시스템의 정보를 저장하는 특화된 부분 혹은 회로를 포함 할 수 있다.
제 1 장치(102)는 모바일 장치, 서버, 컴퓨터, 전화, 혹은 이들의 조합 등의 다른 장치와 통신할 수 있다. 예를 들어, 제 1 장치(102)는 처리 내용에 따라 오디오 신호의 내용에 따라 소리를 재현하고 신호를 보내고, 그 신호를 신호 처리 혹은 이들의 조합을 수신 신호 내용을 표시하여 다른 장치와 통신 할 수 있고, 응용 프로그램을 저장하거나, 운영 체제, 혹은 이들의 조합을 갱신할 수 있다.
제 2 장치(106)는 웹 페이지와 상호 작용 그것을 나타내는 음성 신호 혹은 데이터를 포함하는 무선 통신을 위하여 신호를 교환하는 데 사용할 수 있다. 제 2 장치(106)는 참조 신호, 훈련 신호, 에러 검출 신호 에러 정정 신호 헤더 정보 전송 포맷, 프로토콜 정보, 혹은 이들의 조합을 보낼 수 있다.
CDMA(code division multiple access), OFDMA(orthogonal frequency division multiple access), 3GPP(third generation partnership project), LTE(long term evolution), 혹은 4G(fouth generation) 규격 등의 통신 방식에 따라 통신 신호는, 기준 부분, 헤더 부분, 포맷 부분, 에러 정정 혹은 검출 부분, 혹은 통신된 정보에 포함된 조합을 포함할 수 있다. 기준 부분, 헤더 부분, 포맷 부분, 에러 정정 혹은 검출 부분 혹은 그 조합을 소정의 비트, 펄스, 기호, 혹은 이들의 조합을 포함할 수 있다. 다양한 부분은 일정한 시간 간격, 주파수, 코드 혹은 이들의 조합으로 통신되는 신호에 포함할 수 있다.
실시 예의 목적을 위해 컴퓨팅 시스템(100)은 모바일 장치와 같은 사용자 단말로의 제 1 장치(102)를 갖는 통신 시스템과, 기지국 및 전송 노드로써 제 2 장치(106)를 포함할 수 있다. 하지만, 컴퓨팅 시스템(100)은, 디스크 드라이브 내의 처리 부분 혹은 메모리 시스템에서 처리하도록 집중하는 장치로써의 제 1 장치(102) 및 디스크 드라이버의 저장 부분 혹은 메모리 시스템에서 저장하는데 집중하는 장치로써의 제 2 장치(106)를 구비한 메모리 시스템과 다를 수 있다고 이해될 것이다.
컴퓨팅 시스템(100)은 콘텐츠(108)를 처리할 수 있다. 콘텐츠(108)는 억세스 처리, 통신, 혹은 이들의 조합을 위해 의도된 데이터를 포함할 수 있다. 예를 들어, 제 2 장치(106)는 제 1 장치(102)를 위하여 의도된 콘텐츠(108)를 통신할 수 있다. 콘텐츠(108)는 수신 장치에서 재생하거나 처리하여 통신을 의도한 송신 장치에서 출력된 데이터를 포함 할 수 있다. 좀더 구체적인 예로, 콘텐츠(108)는 제 1 장치(102)과 같은 수신 장치에서, 명령들을 디스플레이하거나, 음성적으로 다시 발생하거나, 실행하거나, 저장하거나, 그것의 조합을 위하여 의도된 비트 배열일 수 있다.
컴퓨팅 시스템(100)은 포맷팅 메커니즘(110)을 이용할 수 있다. 포맷팅 메커니즘(110)은 콘텐츠(108)를 처리하기 위해 그 추가, 삭제, 추가 정보를 발생 혹은 이들의 조합 프로세스 혹은 배열 결정을 위하여 방법을 포함할 수 있다. 포맷팅 메커니즘(100)은 코딩 스킴, 변조 코딩 스킴, 혹은 그것들의 조합을 포함할 수 있다.
예를 들어, 포맷팅 메커니즘(110)은 MCS(modulation coding scheme), 진폭 변조 방식, 위상 변이 변조 방식, 그것들의 조합을 포함 할 수 있다. 또한 예를 들어, 포맷팅 메커니즘(110)은 극성 코딩 방식, 저강도 패리티 체크 (LDPC) 코딩 메커니즘, 혹은 터보 코딩 방식을 구현하는 터보 프로세스 메커니즘(112)을 포함할 수 있다. 터보 프로세스 메커니즘(112)은, 선험적인(a-priori), 귀납적인(a-posterior), 및 외인성(extrinsic) 데이터, 인터리빙(interleaving), 혹은 그것들의 조합을 이용할 수 있다.
컴퓨팅 시스템(100)은 소스 신호(114)를 포함할 수 있다. 소스 신호(114)는 통신을 위하여 의도되거나 설계된 정보를 포함 할 수 있다. 소스 신호(114)는 다른 장치를 위하여 의도된 장치로부터 콘텐츠(108)의 전송된 인스턴스(instance)를 포함할 수 있다. 예를 들어, 소스 신호(114)는 제 1 장치(102)와 콘텐츠(108)를 통신하기 위하여 의도된 제 2 장치(106)에 의해 송신된 통신 신호를 포함할 수 있다.
소스 신호(114)는 사용자의 억세스 혹은 통신을 위해 의도된 저장된 정보를 더 포함 할 수 있다. 예를 들어, 소스 신호(114)는 제 1 장치(102)를 통해 억세스 혹은 상호 작용을 위하여 제 2 장치(106)로부터 저장되거나 리콜되는 콘텐츠(108)를 더 포함할 수 있다.
소스 신호(114)는 정보 부분(116), 에러 핸들링 부분(118), 혹은 이들의 조합을 포함할 수 있다. 정보 부분(116)은 콘텐츠(108) 혹은 그 일부를 포함할 수 있다. 에러 핸들링 부분(118)은 정보 부분 (116)의 정확성을 검증하기 위하여 정보를 포함 할 수 있다. 정보 부분(116) 및 에러 핸들링 부분(118) 혹은 유도 부분을 포함 할 수 있다. 유도 부분은 정보 부분(116) 혹은 콘텐츠(108)의 정밀도를 판벽하도록 조합될 수 있다.
예를 들어, 에러 핸들링 부분(118)은, CRC(cyclic redundancy check) 메커니즘(120)을 포함 할 수 있다. CRC 메커니즘(120)은, 특정 프로세스 혹은 부수적 혹은 의도하지 않은 감지하는 에러 검출 코드를 이용하는 특정 방법을 포함할 수 있다. CRC 메커니즘(120)은 에러 핸들링 부분(118)을 발생할 수 있다. CRC 메커니즘(120)은 정보 부분(116)을 근거로 하여 에러 핸들링 부분(118)을 발생할 수 있다.
컴퓨팅 시스템(100)은 목적 신호(122)를 처리할 수 있다. 목적 신호(122)는 의도된 장치에 억세스하거나 수신 된 정보를 포함할 수 있다. 목적 신호(122)는 정보 부분(116), 에러 핸들링 부분(118), 그것들의 파생 혹은 조합을 포함할 수 있다. 예를 들어, 목적 신호(122)는 제 1 장치(102)에 의해 수신된 소스 신호(114)에 대응 신호일 수 있다.
목적 신호 (122)는, 예를 들어 소스 신호(114)와 다를 수 있다. 소스 신호(114)는 그러한 지연, 반사, 페이딩 위상 시프트 혹은 그렇게 받은 조합과 같은 통신 채널에 변경할 수 다.
또한 예를 들어, 소스 신호(114)는, 노이즈, 간섭 신호, 혼선(crosstalk) 혹은 목적지 신호(122)로써 억세스되거나 그것들의 조합 때문에 변경할 수 있다. 또한, 예를 들어, 소스 신호(114)는 저장 중에 열화, 잘못된 사용, 소음, 혼선 혹은 목적 신호(122)로 억세스되는 조합 때문에 변경될 수 있다.
컴퓨팅 시스템(100)은 조인트 프로세싱 메커니즘(124)을 이용하는 목적 신호(122)를 처리할 수 있다. 조인트 프로세싱 메커니즘(124)은, 정보를 처리할 때 에러 검출 및 에러 정정을 위한 프로세서 혹은 방법이다. 예를 들어, 조인 처리 메커니즘(124)은 정보 부분(116)의 정밀도를 검증함과 동시에 정보 부분(116)을 정정하는 에러 핸들링 부분(118)을 사용할 수 있다.
조인트 프로세싱 메커니즘(124)은 에러 체크 프로세스(126) 및 에러 정정 프로세스(128)을 조합할 수 있다. 에러 체크 프로세스(126)는 특정 정보의 정밀도를 검증하기 위하여 명령들 혹은 액션들의 집합이다. 에러 체크 프로세스(126)는 목적 신호(122)의 정밀도를 검증하기 위하거나 목적 신호(122)로부터 콘텐츠(108)의 추정을 검증하기 위하여 존재할 수 있다. 예를 들어, 에러 체크 프로세스(126)는 CRC 메커니즘(120)에 다라 에러 핸들링 부분(118)을 이용하여 정보 부분(116)의 검증을 포함할 수 있다.
에러 정정 프로세스(128)는 콘텐츠(108)를 복원하는데 목적 신호(122)에서 경험하는 변경들을 위하여 명령들 혹은 액션들의 집합이다. 에러 정정 프로세스(128)는 포맷팅 메커니즘(110)에 따른 코딩 혹은 디코딩 처리를 포함할 수 있다.
컴퓨팅 시스템(100)은 조인트 프로세싱 메커니즘(124)에 따라 패리티 체크 파라미터(130)를 발생할 수 있다. 패리티 체크 파라미터(130)는 정보의 정밀도를 검증하기 위하여 값 혹은 파라미터를 포함할 수 있다. 패리티 체크 파라미터(130)는, 콘텐츠(108)에 연관된 정보 부분(116)의 정밀도를 검증하기 위하여, 정보 부분(116), 에러 핸들링 부분(118), 혹은 그것들의 조합에 제공될 수 있다.
패리티 체크 파라미터(130)는 에러 체크 프로세스(126)를 위하여 존재할 수 있다. 컴퓨팅 시스템(100)은 추가적으로 조인트 프로세싱 메커니즘(124)에 다라 에러 정정 프로세스(128)를 위하여 패리티 체크 파라미터(130)를 발생 및 이용할 수 있다.
패리티 체크 파라미터(130)는 스파스 구조(sparse configuration, 132) 및 덴스 구조(dense configuration, 134), 및 그것들의 조합에 근거로 하여 존재할 수 있다. 스파스 구조(132)는 의도된 혹은 중요한 정보 사이의 거리를 포함하는 배열이다. 덴스 구조(134)는 의도된 혹은 중요한 정보를 인접하거거나 순차적으로 배열 한다. 덴스 구조(134)는 일례로 스파스 구조(132)의 반대일 수 있다. 예를 들어, 패리티 체크 파라미터(130)는 덴스 구조(134)를 포함하거나 포함하지 않는 것에 따란 스파스 구조에 근거로 하여 계산되거나 발생될 수 있다.
스파스 구조(132)는 컴퓨팅 시스템(100)에 의해 판별된 의도되거나 혹은 중요한 정보를 분리하는 거리를 포함할 수 있다. 예를 들어, 스파스 구조(132)는 무가치하거나 채우는 값들 혹은 값들 사이의 파라미터들, 저장된 위치들 사이의 분리, 혹은 그것들의 조합에 근거로 하여 존재할 수 있다.
컴퓨팅 시스템(100)은 목적 신호(122)로부터 콘텐츠(108)를 처리하기 위한 조인트 프로세싱 메커니즘(124)에 따른 스파스 구조(132)를 포함하는 패리티 체크 파라미터(130)를 이용할 수 있다. 상세하게 조인트 프로세싱 메커니즘(124)에 따르면, 패리티 체크 파라미터(130) 혹은 그것들의 조합에 대하여 아래에 설명될 것이다.
예시적인 목적을 위해 컴퓨팅 시스템(100)은 제 2 장치(106)로부터 제 1 장치(102)로 정보를 전송하도록 설명한다. 하지만, 제 1 장치(102)는, 업링크를 위한 기지국과 같은 에러 핸들링 부분(118)을 갖는 제 2 장치(106)로 정보를 전송할 수 있다고 이해될 것이다.
도 2는 도 1의 콘텐츠를 처리하는 컴퓨팅 시스템의 상세한 예이다. 도 2를 참조하면, 컴퓨팅 시스템(100)은 전송 블록(202)을 갖는 소스 신호(114)를 처리할 수 있다. 전송 블록(202)은 통신 혹은 처리를 위하여 콘텐츠(108) 전체 혹은 세그먼트에 존재하는 콘텐츠(108)일 수 있다.
전송 블록(202)은 블록 길이(204)를 포함할 수 있다. 블록 길이(204)는 전소 블록(202)의 정보를 위한 양 혹은 크기를 포함할 수 있다. 블록 길이(204)는 전송 블록(202)에서 비트들의 개수 혹은 바이트들을 포함할 수 있다.
소스 신호(114)는 에러 코드 메커니즘(206)에 근거로 한 에러 핸들링 부분(118)을 포함할 수 있다. 에러 코드 메커니즘(206)은 에러 핸들링 부분(118)을 발생하기 위한 방법 및 처리를 포함할 수 있다. 에러 코드 메커니즘(206)은 전송 블록에 근거로 한 에러 핸들링 부분(118)을 발생하기 위한 방법 및 처리를 포함할 수 있다.
예를 들어, 에러 코드 메커니즘(206)은 다항식 오더(polynomial order)에 근거로 한 발생기 다항식들(210)을 포함할 수 있다. 발생기 다항식(208)은 도 1의 에러 체크 프로세스(126)를 위하여 특별하게 설계된 다항식 값들 혹은 파라미터들을 포함할 수 있다. 발생기 다항식들(208)은 의도된 혹은 요구된 정보를 검증하기 위하여 의도된 혹은 검증 정보의 다항식들을 위한 약수들(divisors)일 수 있다. 다항식 오더(210)는 발생기 다항식들(208)에 연관된 규모(magnitude) 혹은 크기(size)를 포함할 수 있다.
좀 더 상세하게, 에러 코드 메커니즘(206)은 도 1의 CRC 메커니즘(120)을 위한 CRC-24A 혹은 CRC-24B를 포함할 수 있다. CRC-24A 및 CRC-24B를 위한 발생기 다항식들(208)은 다음과 같이 표현될 수 있다.
Figure 112015018538083-pat00001
Figure 112015018538083-pat00002
예를 계속하면, 컴퓨팅 시스템(100)은 블록 길이(204)에 근거로 하여 에러 코드 메커니즘(206)을 제공할 수 있다. 전송 블록(202)의 초기 인스턴스의 블록 길이(204)가 6144와 같은 문턱 값을 초과할 때, 컴퓨팅 시스템(100)은 콘텐츠(108)를 도 1의 정보 부분(116)의 멀티블 인스턴스(multiple instances)로 세그먼트 할 수 있다. 컴퓨팅 시스템(100)은, 블록 길이(204)가 6144보다 작을 때의 CRC-24A, 혹은 6144를 초과하는 블록 길이(204)를 갖는 전송 블록(202)의 초기 인스턴스를 구분하는 것으로부터 야기되는 전송 블록(202)의 인스턴스들 각각을 위한 CRC24-B와 같은, 블록 길이에 근거로 한 에러 코드 메커니즘(206)의 서로 다른 인스턴스를 제공할 수 있다.
예를 계속하면, 컴퓨팅 시스템(100)은 에러 핸들링 부분(208)을 발생하기 위하여 에러 코드 메커니즘(206), 발생기 다항식들(208), 혹은 그것들의 조합을 제공할 수 있다. 컴퓨팅 시스템(100)은 체계적인 엔코딩을 통하여 리던던시(redundancy)의 16 혹은 24 비트와 같은 전송 블록(202)에 덧붙혀진 리던던트(redundant) 비트들로써 에러 핸들링 부분(118)을 발생할 수 있다.
컴퓨팅 시스템(100)은 정보 부분(116)으로서 전송 블록(202) 혹은 그것의 분리된 인스턴스를 갖는 소스 신호(114)를 발생함으로써, 콘텐츠(108)를 처리할 수 있다. 컴퓨팅 시스템(100)은 소스 신호(114)를 발생하도록 전송 블록(202)에 에러 핸들링 부분(118)을 덧붙힐 수 있다. 컴퓨팅 시스템(100)은 소스 신호(114), 에러 핸들링 부분(118), 혹은 제 1 장치(102), 제 2 장치(106), 혹은 제 1 및 제 2 장치들의 조합을 이용하는 그것들의 조합을 발생할 수 있다.
예를 들어, 통신 정보를 엔코딩하는 기지국 혹은 전송기는, 통신을 위하여 소스 신호(114), 에러 핸들링 부분(118), 및 그것들의 조합을 발생할 수 있다. 또한, 예를 들어, 스토리지-포커스드(storage-focused) 장치 혹은 메모리 관리 장치는, 데이터 저장을 위하여, 저장된 정보를 리콜하거나 억세스하기 위하여, 혹은 그것들의 조합을 위하여, 소스 신호(114), 에러 핸들링 부분(117), 혹은 그것들의 조합을 발생할 수 있다.
컴퓨팅 시스템(100)은 도 1의 패리티 체크 파라미터(130)를 발생함으로써 콘텐츠(108)를 추가적으로 처리할 수 있다. 컴퓨팅 시스템(100)은 에러 코드 메커니즘(206), 발생기 다항식들(208), 다항식 오더(210), 및 그것들의 조합에 근거로 하여 패리티 체크 파라미터를 발생할 수 있다. 컴퓨팅 시스템(100)은 제 1 장치(102), 제 2 장치(106), 혹은 그것들의 조합을 이용하여 패리티 체크 파라미터(130)를 발생할 수 있다.
예를 들어, 컴퓨팅 시스템(100)은 업링크를 위하여 단말기(UE) 혹은 기지국와 같은 수신 장치에서 패리티 체크 파라미터(130)를 갖는 콘텐츠(108)를 추가적으로 처리할 수 있다. 또한, 예를 들어, 컴퓨팅 시스템(100)은 스토리지-포커스드 장치 혹은 메모리 관리 장치의 출력들을 처리하는 장치를 위하여 패리티 체크 파라미터(130)를 갖는 콘텐츠(108)를 추가적으로 처리할 수 있다.
컴퓨팅 시스템(100)은 콘텐츠 프로세스 메커니즘(212)을 포함할 수 있다. 콘텐츠 프로세스 메커니즘(212)은 소스 신호(114)의 정보 부분(116), 목적 신호(122), 정보 부분(116)에 대응하는 부분, 혹은 그것들의 조합을 이용하여 콘텐츠(108)를 추정하거나 복원하는 방법 혹은 처리를 포함할 수 있다.
콘텐츠 프로세스 메커니즘(212)은 목적 신호(122)를 위한 검출하거나, 디코드 하거나, 혹은 그것들의 조합을 수행할 수 있다. 콘텐츠 프로세스 메커니즘(212)은 목적 신호(122)로부터 콘텐츠를 추정하거나 복원할 수 있다. 콘텐츠 프로세스 메커니즘(212)은, 반복적이거나, 공동으로 검출 및 디코딩하거나, 간섭을 탐지하거나, 혹은 그것들의 조합될 수 있다. 콘텐츠 프로세스 메커니즘(212)은, 정보 부분(116)을 위하여 도 1의 에러 체크 프로세스(126), 도 1의 에러 정정 프로세스(128), 그것들의 조합을 포함할 수 있다.
콘텐츠 프로세스 메커니즘(212)은 에러 정정 프로세스(128)를 위하여가 아니라, 에러 체크 프로세스(126)를 위하여 에러 핸들링 부분(119)을 이용할 수 있다. 에러 핸들링 메커니즘(212)은, 터보 프로세스 메커니즘(112)와 같은 도 1의 포맷팅 메커니즘(110)에 근거로 하여 존재할 수 있다. 컴퓨팅 시스템(100)은, 도 1의 조인트 프로세싱 메커니즘(124)을 부가되거나, 분리되거나, 연결되거나, 혹은 그것들의 조합에 따른 콘텐츠 프로세스 메커니즘(212)을 포함할 수 있다.
컴퓨팅 시스템(100)은 콘텐츠 프로세스 입력(214), 콘텐츠 프로세스 출력(216), 혹은 그것들의 조합을 포함할 수 있다. 콘텐츠 프로세스 입력(214)은 출력을 발생하기 위하여 콘텐츠 프로세스 메커니즘(212)에 제공되는 정보를 포함할 수 있다. 콘텐츠 프로세스 입력은, 선험적인 값, 입력되거나 억세스된 신호, 초기화된 값, 이번 반복 혹은 정보 블록으로부터의 출력, 검출 혹은 디코딩을 위한 입력, 검출로부터 출력, 혹은 그것들의 조합을 포함할 수 있다.
콘텐츠 프로세스 출력(216)은 콘텐츠 프로세스 메커니즘(212)로부터 결과로 발생된 정보를 포함할 수 있다. 콘텐츠 프로세스 출력(216)은, 귀납적인 값, 외인성 값, 검출 출력, 디코딩 출력, 혹은 그것들의 조합을 포함할 수 있다. 콘텐츠 프로세스 출력(216), 콘텐츠 프로세스 입력(214), 혹은 그것들의 조합은, 에러 정정 프로세스(128)이 아니라 에러 체크 프로세스(126)에 대응하는 에러 프로세스 부분(118)을 갖는 정보 부분(116)에 대응할 수 있다.
컴퓨팅 시스템(100)은, 콘텐츠(108)를 위한 처리를 위하여 저강도 디코딩 메커니즘(218)을 추가적으로 포함할 수 있다. 저강도 디코딩 메커니즘(218)은 제한을 갖는 포맷팅 메커니즘(110) 혹은 디코딩 특성 관련 제어에 따라 디코딩을 제어하기 위한 방법 혹은 처리이다. 저강도 디코딩 메커니즘(218)은 신호를 디코딩에서 공격성의 제한 혹은 감소를 갖는 처리 혹은 방법을 포함할 수 있다. 저강도 디코딩 메커니즘(218)은 신호를 디코딩할 때 저감 효과를 포함할 수 있다.
저강도 디코딩 메커니즘(218)은, 소프트 디시젼(soft decisions), LLR(logarithmic likelihood ratio) 같은 우도비값, 그것들의 조합을 이용하는 소프트 입력 소프트 출력 디코더를 포함할 수 있다. 조인트 프로세싱 메커니즘(124)은 저강도 디코딩 메커니즘(218)을 포함할 수 있다. 컴퓨팅 시스템(100)은, 조인트 프로세싱 메커니즘(124), 저강도 디코딩 메커니즘(218), 혹은 에러 핸들링 부분(118), 에러 핸들링 부분(118)을 갖는 에러 정정 프로세스(128) 및 그것들의 조합을 이용하여 콘텐츠(108)를 디코딩하는 그것들의 조합을 이용할 수 있다.
컴퓨팅 시스템(100)은 에러 디코딩 입력(220), 에러 디코딩 출력(222), 혹은 그것들의 조합을 포함할 수 있다. 에러 디코딩 입력(220)은 에러 핸들링 부분(118)으로 디코딩하기 위하여 주어지거나 제공되는 정보를 포함할 수 있다. 에러 디코딩 입력(220)은 저강도 디코딩 메커니즘(218), 조인트 프로세싱 메커니즘(124), 혹은 그것들의 조합에 주어지거나 제공되는 정보를 포함할 수 있다.
에러 디코딩 입력(220)은 에러 핸들링 부분(118)으로 디코딩하는 것에 관련된 것을 제외하고 콘텐츠 프로세스 입력(214)에 유사할 수 있다. 에러 디코딩 입력(220)은 선험적인 값, 입력되거나 억세스된 신호, 초기화된 값, 이전 반복 혹은 정보 블록으로부터의 출력, 검출 혹은 디코딩을 위한 입력, 검출로부터 출력, 혹은 그것들의 조합을 포함할 수 있다. 에러 디코딩 입력(220)은 콘텐츠 프로세스 입력(214), 콘텐츠 프로세스 출력(216), 혹은 그것들의 조합을 포함할 수 있다.
에러 검출 출력(222)은 에러 핸들링 부분(118)의 디코딩 결과이다. 에러 디코딩 출력(222)은 에러 핸들링 부분(118)을 이용하여 디코딩하는 것에 근거로 한 콘텐츠(108)의 추정을 포함할 수 있다. 에러 디코딩 출력(222)은 에러 핸들링 부분(118)로 디코딩하는 것과 관련된 것을 제외하고, 콘텐츠 프로세스 출력(216)에 유사할 수 있다. 에러 디코딩 출력(222)은 귀납적인 값, 외인성 값, 검출 출력, 디코딩 출력, 혹은 그것들의 조합을 포함할 수 있다. 컴퓨팅 시스템(100)은 콘텐츠 프로세스 입력(214), 콘텐츠 프로세스 출력(216), 혹은 그것들의 조합으로서 에러 디코딩 출력(222)을 이용할 수 있다.
상세한 실시 예에 있어서, 저강도 디코딩 메커니즘(218)은 댐프드 빌리프 프로파게이션(damped-belief propagation, DBP) 메커니즘(224)을 포함할 수 있다. 댐프드 빌리프 프로파게이션 메커니즘(224)은 체크 노드들에 연관된 효과 혹은 계산 결과를 감소하는 것을 포함할 수 있다. 댐프드 빌리프 프로파게이션 메커니즘(224)은 에러 디코딩 입력(220)을 조절에서의 감소 혹은 제어를 포함할 수 있다.
컴퓨팅 시스템(100)은 에러 체크 조절(226)을 포함할 수 있다. 에러 체크 조절(226)은 에러 핸들링 부분(118)으로 콘텐츠(108)의 추정을 검증하기 위한 에러 체크 프로세스(126)의 제한이다. 에러 체크 조절(226)은 부재 혹은 바이패스, 실행 혹은 구현의 감소, 혹은, 조인트 프로세싱 메커니즘(124)에서 에러 체크 프로세스(126)를 위한 그것들의 조합을 포함할 수 있다.
컴퓨팅 시스템(100)은 콘텐츠 프로세스 메커니즘(212) 및 조인트 프로세싱 메커니즘(124)에 연관된 다양한 구조들을 갖는 조인트 프로세싱 메커니즘(124)를 포함할 수 있다. 예를 들어, 조인트 프로세싱 메커니즘(124)는 다이렉트 프로세스 메커니즘(228), 조인트 업데이트 장치(230), 리스트 장치(232) 혹은 그것들의 조합을 포함할 수 있다.
다이렉트 프로세스 메커니즘(228)는 콘텐츠 프로세스 메커니즘(212) 및 조인트 프로세싱 메커니즘(124)을 개별적으로 연속적으로 구현하기 위한 프로세서, 방법 혹은 배치이다. 다이렉트 프로세스 메커니즘(228)은 조인트 프로세싱 메커니즘(124) 이전에 콘텐츠 프로세스 메커니즘(212)를 실행할 수 있다. 콘텐츠 프로세스 메커니즘(212)이 콘텐츠(108)를 성공적으로 디코딩하는 것 없이 반복하기 위한 종료 조건을 마치거나 도달할 때, 다이렉트 프로세스 메커니즘(228)은 조인트 프로세싱 메커니즘(124)을 실행할 수 있다.
조인트 업데이트 메커니즘(230)은 콘텐츠 프로세스 메커니즘(212) 내에 조인트 프로세싱 메커니즘(124)을 결합하기 위한 방법 혹은 배치이다. 조인트 업데이트 메커니즘(230)은 콘텐츠 프로세스 입력(214), 콘텐츠 프로세스 출력(216), 에러 디코딩 입력(220), 에러 디코딩 출력(222), 혹은 그것들의 조합과 같이 어느 하나로부터 출력되어 다른 하나의 입력으로 이용될 수 있다.
리스트 메커니즘(232)은 에러 핸들링 메커니즘(212) 내에 조인트 프로세싱 메커니즘(124)을 결합할 때 조인트 프로세싱 메커니즘(124)을 위한 정보를 저장하기 위한 방법 혹은 배치이다. 리스트 메커니즘(232)은 콘텐츠 프로세스 메커니즘(212)을 완료한 후에 저장된 정보를 처리할 수 있다.
컴퓨팅 시스템(1000은 리스트 메커니즘(232), 조인트 업데이트 메커니즘(230), 다이렉트 프로세스 메커니즘(228), 혹은 그것들의 조합과 같은 다양한 구조들 안에서 에러 체크 조절(226)을 포함할 수 있다. 콘텐츠 프로세스 메커니즘(212), 저강도 디코딩 메커니즘(218), 에러 체크 조절(226) 및 다양한 구조들은 아래에서 상세하게 설명될 것이다.
아래에 설명되는 다양한 메커니즘들과 조절들은 하드웨어, 소프트웨어, 펌웨어, 혹은 그것들의 조합으로 구현될 수 있다. 예를 들어, 포맷팅 메커니즘(110), 조인트 프로세싱 메커니즘(124), 에러 코드 메커니즘(206), 콘텐츠 프로세스 메커니즘(212), 저강도 디코딩 메커니즘(218), 에러 체크 조절(226), 혹은 그것들의 조합은 엔코더, 디코더, 검출기, 그것들의 부분, 그것들 안에 실행, 혹은 그것들의 조합을 포함할 수 있다.
예를 들어, 다양한 메커니즘들 및 조절들은, 수동 소자들, 능동 소자들, 게이트들, 필드 어레이들, 하드웨어 로직, 특수 시퀸스 혹은 배치, 커넥션, 혹은 그것들의 조합과 같은 특화된 회로를 포함할 수 있다. 또한, 다양한 메커니즘 혹은 조절들은, 하드웨어 가속기들, 프로그램드 회로, 프리-로드드 프로그램, 혹은 그것들의 조합을 포함할 수 있다. 또한, 다양한 메커니즘 및 조절들은, 기능들, 실행 명령들, 라이브러리들, 드라이버들, 혹은 그것들의 조합을 포함할 수 있다.
도 3을 참조하면, 컴퓨팅 시스템(1000의 블록 다이어그램이 예시적으로 도시된다. 컴퓨팅 시스템(100)은 제 1 장치(102), 네트워크(104), 및 제 2 장치(106)를 포함할 수 있다. 제 1 장치(102)는 네트워크(105) 상에서 제 1 장치 전송(308)에서 정보를 제 2 장치(106)로 정보를 전송할 수 있다. 제 2 장치(106)는 네크워크(105)에서 제 2 장치 전송(310)에서 제 1 장치(102)로 정보를 전송할 수 있다.
설명을 위하여, 컴퓨팅 시스템(100)은 서버로써 제 2 장치(106)가 도시된다. 하지만, 컴퓨팅 시스템(100)은 서로 다른 종류의 장치로써 제 2 장치(106)를 포함할 수 있다고 이해될 수 있다. 예를 들어, 제 2 장치(106)는 클라이언트 장치일 수 있다.
설명의 편의를 위하여, 제 1 장치(102)는 클라이언트 장치로서 설명되고, 제 2 장치(106)는 서버로서 설명될 것이다. 본 발명의 실시 예들은 장치들의 종류에 대한 선택이 여기에 제한되지 않을 것이다. 선택은 본 발명의 실시 예에에 불과하다.
제 1 장치(102)는 제 1 제어 유닛(312), 제 1 저장 유닛(314), 제 1 통신 유닛(316), 및 제 1 사용자 인터페이스(318)를 포함할 수 있다. 제 1 제어 유닛(312)은 제 1 제어 인터페이스(322)를 포함할 수 있다. 제 1 제어 유닛(312)은 컴퓨팅 시스템(100)의 지능을 제공하기 위한 제 1 소프트웨어(326)를 실행할 수 있다.
제 1 제어 유닛(312)은 서로 다른 방법들로 구현될 수 있다. 예를 들어, 제 1 제어 유닛(312)은 프로세서, ASIC(application specific integrated circuit), 임베디드 프로세서, 마이크로프로세서, 하드웨어 제어 로직, 하드웨어 FSM(finite state machine), DSP(digital signal processor), 혹은 그것들의 조합일 수 있다. 제 1 제어 유닛(312)은 제 1 제어 유닛(312)과 제 1 장치(102)의 다른 기능 유닛들 사이의 통신을 위하여 이용될 수 있다. 제 1 제어 인터페이스(322)는 제 1 장치(102)와 외부적으로 통신하기 위하여 이용될 수 있다.
제 1 제어 인터페이스(322)는 다른 기능 유닛들 혹은 외부의 소스들로부터 정보를 입력 받을 수 있거나, 다른 기능 유닛들 혹은 외부의 목적지들에 정보를 전송할 수 있다. 외부 소스들 및 외부 소스들은 제 1 장치(102)의 외부의 소스들과 목적지들이다.
제 1 제어 인터페이스(322)는 서로 다른 방법들로 구현될 수 있고, 그리고 제 1 제어 인터페이스(322)에 인터페이싱을 제공하는 기능 유닛들 혹은 외부 유닛들에 의존하는 서로 다른 실시 예들을 포함할 수 있다. 예를 들어, 제 1 제어 인터페이스(322)는 압력 센서, 관성 센서, MEMS, 광학 회로, 도파로들, 무선 회로, 유선 회로, 혹은 그것들의 조합일 수 있다.
제 2 저장 유닛(314)은 제 1 소프트웨어(326)를 포함할 수 있다. 또한, 제 1 저장 유닛(314)은, 입력 이미지들을 나타내는 데이터, 이전 이미지를 나타내는 데이터, 음성 파일들, 혹은 그것들의 조합과 같은 연관된 정보를 저장할 수 있다.
제 1 저장 유닛(314)은 휘발성 메모리, 비휘발성 메모리, 내부 메모리, 외부 메모리, 혹은 그것들의 조합일 수 있다. 예를 들어, 제 1 저장 유닛(314)은 NVRAM(non-volatile random access memory), 플래시 메모리, 디스크 스토리지, 혹은 SRAM(static random access memory)와 같은 휘발성 스토리지일 수 있다.
제 1 저장 유닛(314)은 제 1 저장 인터페이스(324)를 포함할 수 있다. 제 1 저장 인터페이스(324)는 제 1 저장 유닛(314)과 제 1 장치(102)의 다른 기능 유닛들 사이의 통신을 위해 이용될 수 있다. 또한, 제 1 저장 인터페이스(324)는 제 1 장치(102)에 외부적으로 통신하는데 이용될 수 있다.
제 1 저장 인터페이스(324)는 다른 기능 유닛들 혹은 외부의 소스들로부터 정보를 입력 받을 수 있거나, 다른 기능 유닛들 혹은 외부의 목적지들에 정보를 전송할 수 있다. 외부 소스들 및 외부 소스들은 제 1 장치(102)의 외부의 소스들과 목적지들이다.
제 1 저장 인터페이스(324)는 제 1 저장 유닛(314)과 인터페이스를 하는 기능 유닛들 혹은 외부 유닛들에 의존하는 서로 다른 실시 예들을 포함할 수 있다. 제 1 저장 인터페이스(324)는 제 1 제어 인터페이스(322)의 실시 예와 유사하게 구현될 수 있다.
제 1 통신 유닛(316)은 제 1 장치(102)와 외부적인 통신을 활성화할 수 있다. 예를 들어, 제 1 통신 유닛(316)은 제 1 장치(102)가 제 2 장치(106), 다른 장치들, 주변 장치 혹은 데스크탑 컴퓨터와 같은 부가 장치, 네트워크(104), 혹은 그것들의 조합과 통신을 허용할 수 있다.
또한, 제 1 통신 유닛(316)은 제 1 장치를 네트워크(104)의 일부, 그것에 제한되지 않고 네트워크(104)에 종단 포인트 혹은 터미날 유닛으로써 기능을 수행하도록 허용하는 통신 허브로 기능을 수행할 수 있다. 제 1 통신 유닛(316)은 네트워크(104)와 상호연동을 위하여 마이크로일렉트로닉스 혹은 안테나와 같은 능동 혹은 수동 소자들을 포함할 수 있다.
제 1 통신 유닛(316)은 기저대역 장치 혹은 구성, 모뎀, 디지털 신호 프로세서, 혹은 전송, 포맷, 입력, 검출, 디코딩, 추가 처리, 혹은 통신 신호들을 위한 그것들의 조합을 위한 그것들의 조합들을 포함할 수 있다. 제 1 통신 유닛(316)은 전압들, 전류들, 디지털 정보, 혹은, 아날로그 디지털 변환기, 디지털 아날로그 변환기, 필터, 증폭기, 프로세서 타입 회로, 혹은 그것들의 조합의 그것들의 조합을 처리하기 위한 적어도 하나의 부분을 포함할 수 있다. 제 1 통신 유닛(316)은, RAM 메모리, 레지스터들, 혹은 그것들의 조합과 같은 정보를 저장하기 위한 적어도 하나의 부분을 더 포함할 수 있다.
제 1 통신 유닛(316)은 제 1 인터 디바이스 인터페이스(317)에 연결될 수 있다. 제 1 인터 디바이스 인터페이스(3170은 분리된 장치에 물리적으로 신호들을 통신하기 위한 장치 혹은 장치 일부일 수 있다. 제 1 인터 디바이스 인터페이스(317)는 다른 장치들과 신호를 입력 받거나 전송함으로써 통신할 수 있다. 제 1 인터 디바이스 인터페이스(317)는 무선 신호들을 위한 적어도 하나의 안테나, 유선 신호들을 위한 물리적 연결 및 송수신기, 혹은 그것들의 조합을 포함할 수 있다. 제 1 인터 디바이스 인터페이스(317)는 전방위 안테나, 와이어, 안테나 칩, 세라믹 안테나, 혹은 그것들의 조합을 포함할 수 있다. 제 1 인터 디바이스 인터페이스(317)는 포트, 와이어, 리피터, 커넥터, 필터, 센서, 혹은 그것들의 조합을 더 포함할 수 있다.
제 1 인터 디바이스 인터페이스(317)는 전자기파의 전력을 검출 및 응답할 수 있고, 제 2 장치 전송(310)에 포함되는 신호를 입력 받도록 제 1 통신 유닛(316)에 검출된 결과를 제공할 수 있다. 제 1 인터 디바이스 인터페이스(317)는 제 1 장치 전송(308)을 포함하는 신호를 전송하도록 제 1 통신 유닛(316)에 의해 제공되는 전류들 혹은 전압들에 패스를 제공하거나 응답할 수 있다.
제 1 통신 유닛(316)은 제 1 통신 인터페이스(328)를 포함할 수 있다. 제 1 통신 인터페이스(318)는 통신 유닛(316)과 제 1 장치(102)의 다른 기능 유닛들 사이에 통신을 위하여 이용될 수 있다. 제 1 통신 유닛 인터페이스(328)는 다른 기능 유닛들로부터 정보를 입력 받을 수 있거나 다른 기능 유닛들에 정보를 전송할 수 있다.
제 1 통신 인터페이스(328)는 제 1 통신 유닛(316)과 인터페이스를 하는 기능 유닛들에 의존하는 서로 다른 실시 예들을 포함할 수 있다. 제 1 통신 인터페이스(328)는 제 1 제어 인터페이스(322)의 실시 예와 유사하게 구현될 수 있다.
제 1 사용자 인터페이스(318)는 제 1 장치(102)와 인터페이스 혹은 상호연동하는 사용자(미도시)를 허용할 수 있다. 제 1 사용자 인터페이스(318)는 입력 장치 및 출력 장치를 포함할 수 있다. 입력 장치의 예로써, 키패드, 터치패드, 소프트 키들, 키보드, 마이크로폰, 원격 신호들을 수신하는 적외선 센서, 혹은 데이터 및 통신 입력들을 제공받기 위한 그것들의 조합일 수 있다.
제 1 사용자 인터페이스(318)는 제 1 디스플레이 인터페이스(330)를 포함할 수 있다. 제 1 디스플레이 인터페이스(330)는 출력 장치를 포함할 수 있다. 제 1 디스플레이 인터페이스(330)는 디스플레이, 프로젝터, 비디오 스크린, 스피커, 혹은 그것들의 조합을 포함할 수 있다.
제 1 제어 유닛(312)은 컴퓨팅 시스템(100)에 의해 발생된 정보를 디스플레이하도록 제 1 사용자 인터페이스(318)를 동작할 수 있다. 또한, 제 1 제어 유닛(312)은 컴퓨팅 시스템(100)의 다른 기능들을 위하여 제 1 소프트웨어(326)를 실행할 수 있다. 또한, 제 1 제어 유닛(312)은 제 1 통신 유닛(316)을 통하여 네트워크(104)과 상호연동하기 위하여 제 1 소프트웨어(326)를 실행할 수 있다.
제 2 장치(106)는 제 1 장치(102)를 갖는 복수의 장치에서 본 발명의 실시 예를 구현하기 위하여 최적화될 수 있다. 제 2 장치(106)는 제 1 장치(102)와 비교하여 추가적이거나 고성능의 처리 전력을 제공할 수 있다. 제 2 장치(102)는 제 2 제어 유닛(334), 제 2 통신 유닛(336), 제 2 사용자 인터페이스(338), 및 제 2 저장 유닛(346)을 포함할 수 있다.
제 2 사용자 인터페이스(338)는 제 2 장치(106)와 인터페이스 및 상호연동하도록 사용자(미도시)를 허용할 수 있다. 제 2 사용자 인터페이스(338)는 입력 장치 및 출력 장치를 포함할 수 있다. 제 2 사용자 인터페이스(338)의 입력 장치의 예로써, 키패드, 터치패드, 소프트 키들, 키보드, 마이크로폰, 혹은 데이터 및 통신 입력들을 위한 그것들의 조합이 될 수 있다. 제 2 디스플레이 인터페이스(340)는 디스플레이, 프로젝터, 비디오 스크린, 스피커, 혹은 그것들의 조합을 포함할 수 있다.
제 2 제어 유닛(334)은 컴퓨팅 시스템(100)의 제 2 장치(106)의 지능을 제공하기 위한 제 2 소프트웨어(342)를 실행할 수 있다. 제 2 소프트웨어(342)는 제 1 소프트웨어(326)와 함께 동작할 수 있다. 제 2 제어 유닛(334)은 제 1 제어 유닛(312)과 비교하여 추가적인 성능을 제공할 수 있다.
제 2 제어 유닛(334)은 정보를 디스플레이하기 위하여 제 2 사용자 인터페이스(338)를 동작할 수 있다. 또한, 제 2 제어 유닛(334)은 네트워크(104) 상에서 제 1 장치(102)와 통신하도록 제 2 통신 유닛(336)을 동작시키는 것을 포함하는 컴퓨팅 시스템(100)의 다른 기능들을 위하여 제 2 소프트웨어(342)를 실행할 수 있다.
제 2 제어 유닛(334)은 수많은 다른 방법들로 구현될 수 있다. 예를 들어, 제 2 제어 유닛(334)은 프로세서, 임베디드 프로세서, 마이크로프로세서, 하드웨어 제어 로직, 하드웨어 FSM, DSP, 혹은 그것들의 조합일 수 있다.
제 2 제어 유닛(334)은 제 2 제어 인터페이스(344)를 포함할 수 있다. 제어 제어 인터페이스(344)는 제 2 제어 유닛(334)과 제 2 장치(106)의 다른 기능 유닛들 사이의 통신하는데 이용될 수 있다. 또한, 제 2 제어 인터페이스(344)는 제 2 장치(106)과 외부적으로 통신하는데 이용될 수 있다.
제 2 제어 인터페이스(344)는 다른 기능 유닛들로부터 혹은 외부의 소스들로부터 정보를 입력 받을 수 있거나, 다른 기능 유닛들에게 혹은 외부의 목적지들에 정보를 전송할 수 있다. 외부의 소스들 및 외부의 목적지들은 제 2 장치(106)의 외부의 소스들 및 목적지들이다.
제 2 제어 인터페이스(344)는 다른 방식들로 구현될 수 있고, 제 2 제어 인터페이스(344)와 인터페이스를 수행하는 기능 유닛들 혹은 외부 유닛들에 의존하는 서로 다른 실시 예들을 포함할 수 있다. 예를 들어, 제 2 제어 인터페이스(344)는 압력 센서, 관성 센서, MEMS, 광학 회로, 도파로들, 무선 회로, 유선 회로, 혹은 그것들의 조합일 수 있다.
제 2 저장 유닛(346)은 제 2 소프트웨어(342)를 저장할 수 있다. 또한, 제 2 저장 유닛(346)은 입력 이미지들을 나타내는 데이터, 이전 이미지를 나타내는 데이터, 음성 파일들, 혹은 그것들의 조합과 같은 정보를 저장할 수 있다. 제 2 저장 유닛(346)은 제 1 저장 유닛(314)을 보충하도록 추가적인 저장 캐퍼시터를 제공하기 위하여 커질 수 있다.
설명을 위하여, 제 2 저장 유닛(346)은 싱글 소자로 도시된다. 하지만, 저장 유닛(346)은 복수의 소자들로 구성될 수 있다고 이해되어야 할 것이다. 도한, 설명을 위하여, 컴퓨팅 시스템(100)은 싱글 계층 저장 시스템으로써 제 2 저장 유닛(346)이 도시된다. 하지만, 컴퓨팅 시스템(100)은 서로 다른 구조로 구현된 제 2 저장 유닛(346)을 포함하다고 이해되어야 할 것이다. 예를 들어, 제 2 저장 유닛(346)은 캐싱, 메인 메모리, 라우팅 미디어, 혹은 오프라인 스토리지의 서로 다른 레벨들을 갖는 메모리 계층 시스템으로 형성하는 서로 다른 스토리지 기술들로 형성될 수 있다.
제 2 저장 유닛(346)은 휘발성 메모리, 휘발성 메모리, 내부 메모리, 외부 메모리, 혹은 그것들의 조합을 포함할 수 있다. 예를 들어, 제 2 저장 유닛(346)은 NVRAM, 플래시 메모리, 디스크 스토리지 같은 비휘발성 메모리, 혹은 SRAM 같은 휘발성 스토리지를 포함할 수 있다.
제 2 저장 유닛(346)은 제 2 저장 인터페이스(348)를 포함할 수 있다. 제 2 저장 인터페이스(348)는 제 2 저장 유닛(346)과 제 2 장치(106)의 다른 유닛들 사이에 통신하는데 이용될 수 있다. 또한, 제 2 저장 인터페이스(348)는 제 2 장치(106)의 외부에 통신하는데 이용될 수 있다.
제 2 저장 인터페이스(348)는 다른 기능 유닛들 혹은 외부의 소스들로부터 정보를 입력 받을 수 있거나, 다른 기능 유닛들 혹은 외부의 목적지들에 정보를 전송할 수 있다. 외부 소스들 및 외부 소스들은 제 2 장치(106)의 외부의 소스들과 목적지들이다.
제 2 저장 인터페이스(328)는 제 2 저장 유닛(314)과 인터페이스를 하는 기능 유닛들 혹은 외부 유닛들에 의존하는 서로 다른 실시 예들을 포함할 수 있다. 제 2 저장 인터페이스(328)는 제 2 제어 인터페이스(344)의 실시 예와 유사하게 구현될 수 있다.
제 2 통신 유닛(336)은 제 2 장치(106)와 외부적인 통신을 활성화할 수 있다. 예를 들어, 제 2 통신 유닛(336)은 제 2 장치(106)가 제 1 장치(102), 다른 장치들, 주변 장치 혹은 데스크탑 컴퓨터와 같은 부가 장치, 네트워크(104), 혹은 그것들의 조합과 통신을 허용할 수 있다.
또한, 제 2 통신 유닛(336)은 제 2 장치(106)를 네트워크(104)의 일부, 그것에 제한되지 않고 네트워크(104)에 종단 포인트 혹은 터미날 유닛으로써 기능을 수행하도록 허용하는 통신 허브로 기능을 수행할 수 있다. 제 2 통신 유닛(336)은 네트워크(104)와 상호연동을 위하여 마이크로일렉트로닉스 혹은 안테나와 같은 능동 혹은 수동 소자들을 포함할 수 있다.
제 2 통신 유닛(336)은 기저대역 장치 혹은 구성, 모뎀, 디지털 신호 프로세서, 혹은 전송, 포맷, 입력, 검출, 디코딩, 추가 처리, 혹은 통신 신호들을 위한 그것들의 조합를 위한 그것들의 조합들을 포함할 수 있다. 제 2 통신 유닛(336)은 전압들, 전류들, 디지털 정보, 혹은, 아날로그 디지털 변환기, 디지털 아날로그 변환기, 필터, 증폭기, 프로세서 타입 회로, 혹은 그것들의 조합의 그것들의 조합을 처리하기 위한 적어도 하나의 부분을 포함할 수 있다. 제 2 통신 유닛(336)은, RAM 메모리, 레지스터들, 혹은 그것들의 조합과 같은 정보를 저장하기 위한 적어도 하나의 부분을 더 포함할 수 있다.
제 2 통신 유닛(336)은 제 2 인터 디바이스 인터페이스(337)에 연결될 수 있다. 제 2 인터 디바이스 인터페이스(337)는 분리된 장치에 물리적으로 신호들을 통신하기 위한 장치 혹은 장치 일부일 수 있다. 제 2 인터 디바이스 인터페이스(337)는 다른 장치들과 신호를 입력 받거나 전송함으로써 통신할 수 있다. 제 2 인터 디바이스 인터페이스(337)는 무선 신호들을 위한 적어도 하나의 안테나, 유선 신호들을 위한 물리적 연결 및 송수신기, 혹은 그것들의 조합을 포함할 수 있다. 제 2 인터 디바이스 인터페이스(337)는 전방위 안테나, 와이어, 안테나 칩, 세라믹 안테나, 혹은 그것들의 조합을 포함할 수 있다. 제 2 인터 디바이스 인터페이스(337)는 포트, 와이어, 리피터, 커넥터, 필터, 센서, 혹은 그것들의 조합을 더 포함할 수 있다.
제 2 인터 디바이스 인터페이스(337)는 전자기파의 전력을 검출 및 응답할 수 있고, 제 1 장치 전송(308)에 포함되는 신호를 입력 받도록 제 2 통신 유닛(336)에 검출된 결과를 제공할 수 있다. 제 2 인터 디바이스 인터페이스(337)는 제 2 장치 전송(310)을 포함하는 신호를 전송하도록 제 2 통신 유닛(336)에 의해 제공되는 전류들 혹은 전압들에 패스를 제공하거나 응답할 수 있다.
제 2 통신 유닛(336)은 제 2 통신 인터페이스(350)를 포함할 수 있다. 제 2 통신 인터페이스(350)는 제 2 통신 유닛(336)과 제 2 장치(106)의 다른 기능 유닛들 사이에 통신을 위하여 이용될 수 있다. 제 2 통신 유닛 인터페이스(350)는 다른 기능 유닛들로부터 정보를 입력 받을 수 있거나 다른 기능 유닛들에 정보를 전송할 수 있다.
제 2 통신 인터페이스(350)는 제 2 통신 유닛(336)과 인터페이스를 하는 기능 유닛들에 의존하는 서로 다른 실시 예들을 포함할 수 있다. 제 2 통신 인터페이스(350)는 제 2 제어 인터페이스(344)의 실시 예와 유사하게 구현될 수 있다.
제 1 통신 유닛(316)은 제 1 장치 전송(308)에서 제 2 장치(106)에 정보를 제공하도록 네트워크(104)에 연결될 수 있다. 제 2 장치(106)는 네트워크(104)의 제 2 장치 전송(308)로부터 제 2 통신 유닛(336)에서 정보를 입력 받을 수 있다.
제 2 통신 유닛(336)은 제 2 장치 전송(310)에서 제 1 장치(102)에 정보를 제공하도록 네트워크(104)에 연결될 수 있다. 제 1 장치(102)는 네트워크(104)의 제 2 장치 전송(310)로부터 제 1 통신 유닛(316)에서 정보를 입력 받을 수 있다. 컴퓨팅 시스템(100)은, 제 1 제어 유닛(312), 제 2 제어 유닛(334), 혹은 그것들의 조합에 의해 실행될 수 있다. 설명을 위하여, 제 2 장치(106)는 제 2 사용자 인터페이스(338), 제 2 저장 유닛(346), 제 2 제어 유닛(334), 및 제 2 통신 유닛(336)를 갖는 파티션을 포함할 수 있다. 하지만, 제 2 저장 장치(106)이 다른 파티션을 포함할 수 있다고 이해될 것이다. 예를 들어, 제 2 소프트웨어(342)는, 그것의 기능들의 일부 혹은 전체가 제 2 제어 유닛(334) 및 제 2 통신 유닛(336)이 되도록 서로 다르게 분할될 수 있다. 또한, 제 2 장치(106)는 명백하게 도 3에 도시되지 않은 다른 기능 유닛들을 포함할 수 있다.
제 1 장치(102)의 기능 유닛들은 개별적 혹은 독립적으로 다른 기능 유닛들과 작동할 수 있다. 제 1 장치(102)는 제 2 장치(106)와 네트워크(104)로부터 개벼럭 혹은 독립적으로 작동할 수 있다.
제 2 장치(106)의 기능 유닛들은 개별적 혹은 독립적으로 다른 기능 유닛들과 작동할 수 있다. 제 2 장치(106)는 제 1 장치(102)와 네트워크(104)로부터 개벼럭 혹은 독립적으로 작동할 수 있다.
상술 된 기능 유닛들은 하드웨어로 구현될 수 있다. 예를 들어, 기능 유닛들 중 적어도 하나는, 게이트, 회로, 프로세서, 컴퓨터, 집적회로, 집적회로 코어, 압력 센서, 관성 센서, MEMS, 수동 소자, 소프트웨어 기능을 수행하기 위한 물리 메모리 매체, 그것들의 일부, 혹은 그것들의 조합을 이용하여 구현될 수 있다.
설명을 위하여, 컴퓨팅 시스템(100)은 제 1 장치(102)와 제 2 장치(106)의 동작에 의해 설명된다. 제 1 장치(102)와 제 2 장치(106)는 컴퓨팅 시스템(100)의 모듈들 및 기능들의 어떤 것을 동작할 수 있다고 이해되어야 할 것이다.
도 4를 참조하면, 컴퓨팅 시스템(100)의 제어 흐름도가 예시적으로 도시된다. 컴퓨팅 시스템(100)은 억세스 모듈(402), 콘텐츠 프로세스 모듈(404), 검증 모듈(406), 조인트 에러 핸들링 모듈(408), 혹은 그것들의 조합을 포함할 수 있다.
억세스 모듈(402)은 콘텐츠 프로세스 모듈(404)에 연결될 수 있고, 추가적으로 검증 모듈(406)에 연결될 수 있다. 검증 모듈(406)은 조인트 에러 핸들링 모듈(408)에 연결될 수 있다.
모듈들은 서로 다양한 방법들로 연결될 수 있다. 예를 들어, 모듈들은, 유선 혹은 무선 연결들, 도 1의 네트워크, 명령 단계들, 처리 시퀀스들 혹은 그것들의 조합을 이용함으로써, 서로 다른 출력에 연결된 하나의 모듈의 입력을 갖도록 연결될 수 있다. 또한, 예를 들어, 모듈들은, 직접 연결되는 모듈들 사이에 어더한 방해 구조도 없이 직접적으로 연결될 수 있거나, 간접적으로 연결되는 모듈들 사이에 연결 수단들을 통하여 간접적으로 연결될 수 있다.
상세하게, 억세스 모듈(402)의 적어도 하나의 입력 혹은 출력은 방해하는 모듈들 혹은 장치들 없이 컨덕터들 혹은 전송 채널을 이용하는 콘텐츠 프로세스 모듈(404)의 입력 혹은 출력에 연결될 수 있다. 또한, 예를 들어, 억세스 모듈(402)은 리피터, 스위치, 라우팅 장치, 혹은 그것들의 조합을 갖는 무선 채널을 이용하여 간접적으로 콘텐츠 프로세스 모듈(4040)에 연결될 수 있다. 콘텐츠 프로세스 모듈(404), 검증 모듈(406), 조인트 에러 핸들링 모듈(408), 혹은 그것의 조합은 유사한 방법들로 연결될 수 있다.
컴퓨팅 시스템(100)은 보내거나, 전송하거나, 입력 받거나, 코딩하거나, 디코딩하거나, 혹은 그것들의 조합에 의해 장치들 사이에서 정보를 통신할 수 있다. 수신 장치는 이미지들을 디스플레이하거나, 음성을 반복하거나, 처리 단계들 혹은 명령들을 변화시키거나, 혹은 장치와 정보 통신에 따라 그것들의 조합에 의해, 사용자와 추가적으로 통신할 수 있다.
억세스 모듈(402)은 도 1의 콘텐츠(108)를 위하여 정보를 억세스하도록 구현된다. 억세스 모듈(402)는 도 1의 목적 신호(122), 도 1의 소스 신호, 혹은 그것들의 조합을 억세스할 수 있다. 억세스 모듈(402)은 목적 신호(122), 소스 신호(114), 혹은 도 1의 콘텐츠(118) 및 에러 핸들링 부분(118)를 나타내기 위하여 도 1의 정보 부분(116)을 포함하는 그것들의 조합을 포함할 수 있다.
억세스 모듈(402)은 도 3의 인터 디바이스 인터페이스(317), 도 3의 제 2 인터 디바이스 인터페이스(337), 도 3의 제 1 통신 인터페이스(328), 도 3의 제 2 통신 인터페이스(350), 제 1 제어 인터페이스(322), 도 3의 제 2 제어 인터페이스(344), 도 3의 제 1 저장 인터페이스(324), 도 3의 제 2 저장 인터페이스(348), 혹은 그것들의 조합을 이용하는 정보를 억세스 할 수 있다. 예를 들어, 억세스 모듈(402)은, 전송 혹은 수신같은 통신에 의해 발생되는 정보, 소스 신호(114), 목적 신호(122), 혹은 제 1 인터 디바이스 인터페이스(317), 제 2 인터 디바이스 인터페이스(337), 제 1 통신 인터페이스(328), 제 2 통신 인터페이스(350), 및 그것의 조합을 이용하는 그것의 조합들을 억세스할 수 있다.
예를 들어, 억세스 모듈(402)은 소스 신호(114), 목적 신호(122), 혹은 도 3의 제 1 통신 유닛(316), 도 3의 제 2 통신 유닛(336), 도 3의 제 1 저장 유닛(314), 도 3의 제 2 저장 유닛(346), 혹은 그것들의 조합을 이용하는 그것들의 조합 같은 정보를 저장하거나 억세스 할 수 있다. 억세스 모듈(402)은 제 1 통신 유닛(328), 제 2 통신 유닛(350), 제 1 제어 인터페이스(322), 제 2 제어 인터페이스(344), 제 1 저장 인터페이스(324), 제 2 저장 인터페이스(348), 혹은 그것들의 조합을 이용하는 정보를 억세스 할 수 있다.
정보를 억세스 한 후에, 제어 흐름은 콘텐츠 프로세스 모듈(4040)에 패스될 수 있다. 제어 흐름은 다양한 방법으로 패스될 수 있다. 예를 들어, 제어 흐름은 억세스 모듈(402)로부터 목적 신호(122)를 콘텐츠 프로세스 모듈(404)로 패스하거나, 다른 모듈에 억세스 가능하고 알려진 저장 위치에 처리 결과들을 저장하거나, 플래그, 인터럽트, 상태 신호, 혹은 콘텐츠 프로세스 모듈(404)를 위한 조합을 이용하는 것으로 다른 모듈을 식별하거나, 혹은 그것들의 조합에 의하여, 다른 모듈로 패스된 처리 결과들을 갖는 것에 의해 패스될 수 있다.
콘텐츠 프로세스 모듈(404)은 콘텐츠(108)를 위한 처리하도록 구현될 수 있다. 콘텐츠 프로세스 모듈(404)은 목적 신호(122)로부터 콘텐츠(108)를 추정할 수 있다. 콘텐츠 프로세스 모듈(404)은 정보 부분(116)을 갖는 도 2의 콘테츠 처리 메커니즘(212)을 이용하여 콘텐츠(108)를 추정할 수 있다. 콘텐츠 프로세스 모듈(404)는 정보 부분(116)를 갖는 도 1의 에러 정정 프로세스(128)를 구현함으로써 콘텐츠(108)를 위한 처리를 할 수 있다.
예를 들어, 콘텐츠 프로세스 모듈(404)은 검출하거나, 디코드하거나, 혹은 정보 부분(116)와 함께 그것들의 조합을 수행할 수 있다. 콘텐츠 프로세스 모듈(404)은 정보 부분(116)을 이용하여 콘텐츠(108)를 추정하기 위하여 콘텐츠 프로세스 메커니즘(212)을 이용할 수 있다. 콘텐츠 프로세스 모듈(404)은 에러 정정 프로세스(128)가 아닌, 도 1의 에러 체크 프로세스(126)를 위한 에러 핸들링 부분(118)울 이용할 수 있다. 에러 핸들링 모듈(404)은 에러 핸들링 부분(118)을 이용하지 않고 에러 정정 프로세스(128)를 위하여 정보 부분(118)을 이용할 수 있다.
에러 핸들링 모듈(404)은 도 1의 터보 프로세스 메커니즘(112)와 같이, 도 1의 포맷팅 메커니즘(110)에 연관된 콘텐츠 프로세스 메커니즘(212)에 근거로 하여 콘텐츠(108)를 위한 처리를 수행할 수 있다. 콘텐츠 프로세스 모듈(404)은 피드백들 혹은 루프들와 같은 상호연동의 처리를 이용하여 콘텐츠(108)를 위한 처리를 수행할 수 있다. 콘텐츠 프로세스 모듈(404)은 반복 혹은 출구 조건들을 위하여 최대 제한 혹은 처리 문턱값을 포함할 수 있다.
콘텐츠 프로세스 모듈(404)은 소프트 정보 혹은 디시젼을 이용하여 콘텐츠(108)를 추정할 수 있다. 콘텐츠 프로세스 모듈(404)은 콘텐츠(108)의 추정을 위하여 LLR 값들을 계산할 수 있다. 콘텐츠 프로세스 모듈(404)은, 도 2의 콘텐츠 프로세스 입력(214), 도 2의 콘텐츠 프로세스 출력(216), 혹은 그것들의 조합을 이용할 수 있다. 콘텐츠 프로세스 모듈(404)은 콘텐츠 프로세스 입력(214), 콘텐츠 프로세스 출력(216), 혹은 LLR 값을 포함하는 그것들의 조합을 이용할 수 있다.
콘텐츠 프로세스 모듈(404)은 초기화된 값, 이전 처리 출력, 선험적인 값, 목적 신호(122), 검출 결과, 디코딩 결과, 혹은 그것들의 조합을 이용할 수 있다. 콘텐츠 프로세스 모듈(404)은 귀납적인 값, 외인성 값, 혹은 그것들의 조합으로서 콘텐츠 프로세스 출력(216)을 계산하거나 발생할 수 있다.
콘텐츠 프로세스 모듈(404)은 제 1 통신 유닛(316), 제 2 통신 유닛(336), 도 3의 제 1 제어 유닛(312), 도 3의 제 2 제어 유닛(334), 혹은 콘텐츠(108)를 추정하기 위한 그것들의 조합을 이용할 수 있다. 콘텐츠 프로세스 모듈(404)은 콘텐츠 프로세스 입력(214), 콘텐츠 프로세스 출력(216), 혹은 제 1 저장 유닛(314), 제 2 저장 유닛(346), 제 1 통신 유닛(316), 제 2 통신 유닛(336) 및 이것들의 조합에서 그것들의 조합을 저장할 수 있다.
검증 모듈(406)은 디코딩 결과의 정밀도를 체크하도록 구현된다. 검증 모듈(406)은 에러 체크 프로세스(1260을 실행하도록 콘텐츠 프로세스 메커니즘(212)을 이용할 수 있다. 검증 모듈(406)은 콘텐츠 프로세스 출력(216)의 정밀도를 검증하도록 에러 핸들링 부분(118)을 이용할 수 있다.
예를 들어, 검증 모듈(406)은 정보 부분(116)에 연관된 시스테매틱 정보 비트들에 대응하는 콘텐츠 프로세스 출력(216)을 식별할 수 있다. 검증 모듈(406)은 콘텐츠 프로세스 출력(216)에 근거로 하여 정보 부분(116)을 위한 리-엔코드 될 수 있다. 검증 모듈(406)은 에러 핸들링 부분(118)에 대응하는 리던던시 비트들의 리-엔코드된 인스턴스와 에러 핸들링 부분(118)의 존재하는 인스턴스를 비교할 수 있다.
검증 모듈(406)은, 리-엔코드 인스턴스와 에러 핸들링 부분(118)에 존재하는 인스턴스과 매치될 때, 성공 혹은 패스와 같은, 에러 정정 프로세스(128) 혹은 디코딩 패스 혹은 콘텐츠 프로세스 출력(216)에 연관된 디코딩 패스를 판별할 수 있다. 검증 모듈(406)은 리-엔코드 인스턴스와 에러 핸들링 부분(118)에 존재하는 인스턴스과 매치되지 않을 때, 실패와 같은, 에러 정정 프로세스(128) 혹은 디코딩 패스 혹은 콘텐츠 프로세스 출력(216)에 연관된 디코딩 패스를 판별할 수 있다.
검증 모듈(406)은 콘텐츠 프로세스 모듈(404)에 의해 구현된 에러 정정 프로세스(128) 각각의 반복 후에 에러 정정 프로세스(128)의 콘텐츠 프로세스 출력(216)을 검증할 수 있다. 검증 모듈(406)은 에러 정정 프로세스(1280이 끝날 때까지, 마지막 반복, 혹은 혹은 에러 체크 프로세스(126)를 패스시키지 않고 제한된 조건에 도달할 때까지 콘텐츠 프로세스 출력(216)을 검증할 수 있다.
검증 모듈(406)은 제 1 통신 유닛(316), 제 2 통신 유닛(336), 제 1 제어 유닛(312), 제 2 제어 유닛(334), 혹은 콘텐츠 프로세스 출력(216) 및 에러 체크 프로세스(126)의 실행을 검증하기 위하여 그것들의 조합을 이용할 수 있다. 검증 모듈(406)은, 제 1 저장 유닛(314), 제 2 저장 유닛(346), 제 1 통신 유닛(316), 제 2 통신 유닛(336), 혹은 그것의 조합에, 에러 체크 프로세스(126)의 출력, 혹은, 콘텐츠 프로세스 출력(216)의 검증된 혹은 처리된 인스턴스를 저장할 수 있다.
에러 체크 프로세스(126)를 실행한 후에, 제어 흐름은 제어 검증 모듈(406)으로부터 콘텐츠 프로세스 모듈(404) 혹은 조인트 에러 핸들링 모듈(408)로 패스될 수 있다. 제어 흐름은, 에러 체크 프로세스(126)의 실패 결과에 근거로 하여 패스될 수 있다. 컴퓨팅 시스템(100)은, 에러 체크 프로세스(126)의 출력이 성공 혹은 실패일 때 콘텐츠(108)를 위한 추정을 발생할 수 있다. 제어 흐름은, 에러 체크 프로세스(126)의 출력과 같은 콘텐츠 프로세스 모듈(404)의 처리 결과들을 이용하거나 혹은 콘텐츠 프로세스 출력(216)의 검증되거나 처리된 인스턴스를 이용하는 것을 제외하고, 억세스 모듈(402)와 콘텐츠 프로세스 모듈(404) 사이에 상술 된 바와 같이 유사하게 패스될 수 있다.
조인트 에러 핸들링 모듈(408)은 에러 핸들링 부분(118)을 이용하여 콘텐츠(108)를 위한 디코딩을 수행하도록 구현된다. 조인트 에러 핸들링 모듈(408)은 콘텐츠(108)를 위한 디코딩을 위하여 에러 핸들링 부분(118) 및 정보 부분(116)을 모두 이용할 수 있다. 조인트 에러 핸들링 모듈(408)은 도 1의 조인 처리 메커니즘(124)과 함께 에러 핸들링 부분(118)을 이용하는 에러 정정 프로세스(128)를 실행할 수 있다.
조인트 에러 핸들링 모듈(408)은 콘텐츠 프로세스 입력(214), 콘텐츠 프로세스 출력(216), 혹은 에러 핸들링 부분(118)을 이용하는 에러 정정 프로세스(128)를 위한 그것들의 조합을 이용할 수 있다. 조인트 에러 핸들링 모듈(408)은 구조 모듈(410), 에러 디코딩 모듈(4120, 에러 핸들링 부분(118)을 이용하는 정보 부분(116)을 디코딩하기 위하여 그것들의 조합을 포함할 수 있다.
구조 모듈(410)은 에러 핸들링 부분(118)을 이용하는 에러 정정 프로세스(128)을 실행하기 위하여 도 1의 패리티 체크 파라미터(130)를 발생하도록 구현된다. 구조 모듈(410)은 도 1의 스파스 구조(132)에 근거로 한 목적 신호(122)로부터 패리티 체크 파라미터(130)를 발생할 수 있다.
구조 모듈(140)은, 목적 신호(122)의 정보 부분(116), 목적 신호(122)를 디코딩하는 것으로부터 유도된 콘텐츠 프로세스 출력(216), 혹은 그것들의 조합에 근거로 한 스파스 구조(132)를 포함하는 스파스 포맷 입력(414)을 발생함으로써 패리티 체크 파라미터(132)를 발생할 수 있다. 스파스 포맷 입력(414)은 스파스 구조(132)에 따라 재배열된 정보 부분(116)을 포함할 수 있다.
예를 들어, 구조 모듈(410)은 IB = [i1; i2; ... ; iB]로 표시되 식별 매트릭스로서 스파스 포맷 입력(414)을 발생할 수 있다. 'B'는 목적 신호(122)의 정보 부분(116)을 위한 도 1의 블록 길이(204)를 나타낸다. 'ij'의 인스턴스 각각은 블록 길이(204)와 동일한 크기 혹은 길이를 포함할 수 있고, 추가적으로 'j' 좌표에는 '1'과 나머지 좌표에는 0을 더 포함할 수 있다.
구조 모듈(410)은 스파스 포맷 입력(414)에 근거로 한 패리티 체크 파라미터(130)를 발생할 수 있다. 구조 모듈(410)은 스파스 포맷 입력(4140로부터 에러-포션 코드-워드(error-portion code-word)를 발생하는 것에 근거로 하여 패리티 체크 파라미터(130)를 발생할 수 있다. 에러-포션 코드-워드(416)는 정보 부분(116) 내의 세크먼트를 엔코딩한 결과를 포함할 수 있다.
에러-포션 코드-워드(416)는 도 2의 에러 코드 메커니즘(206)와 함께 리-엔코딩의 결과를 포함할 수 있다. 구조 모듈(410)은 스파스 포맷 입력(414) 혹은 그것의 일부에 연관된 에러 핸들링 부분(118)을 위하여 대응하는 포션들, 재발생된 인스턴스, 혹은 그것들의 조합을 덧붙힘으로써 에러-포션 코드-워드(416)를 발생할 수 있다. 에러-포션 코드-워드(416)는 에러 핸들링 부분(118)을 발생하는 것과 연관된 도 2의 발생기 다항식(207)에 근거로 하여 존재할 수 있다.
실시 예를 계속하면, 구조 모듈(410)은 j번째 행을 에러-포션 코드-워드9416)으로 엔코딩함으로써, 도 1의 CRC 메커니즘(120)에 따라 에러-포션 코드-워드를 발생할 수 있다. 구조 모듈(410)은 재구성 출력(418)을 계산하기 위하여 도 2의 다항식 오더(210)를 갖는 발생기 다항식들(208)을 이용할 수 있다. 'ρj'로 표시된 재구성 출력(418)은 리-엔코딩 처리 결과로써, 스파스 포맷 입력(414) 혹은 그것의 일부에 대응하는 CRC 비트들의 작은 개수처럼, 에러 핸들링 부분(118)의 일부이다.
실시 예를 계속하면, 구조 모듈(410)은 컴퓨팅 시스템(100) 및 그것의 장치들에 알려진 발생기 다항식들(208)을 이용하는 다항식 분할에 근거로 하여 재구성 출력(418)을 발생할 수 있다. 구조 모듈(410)은 아래의 수학식과 같은 재구성 출력(418)을 발생할 수 있다.
Figure 112015018538083-pat00003
실시 예를 계속하면, 재구성 출력(408)은 'ρj(x)'로 표시되고, 발생기 다항식들(208)은 'g(x)'로 표시되고, 그리고 다항식 오더는 'r'로 표시될 수 있다. 'rem'는 나머지 기능을 의미한다. 'ij(x)'는 스파스 포맷 입력(414) 혹은 그것의 일부를 나타낼 수 있다.
실시 예를 계속하면, 구조 모듈(410)은 스파스 포맷 입력(414) 및 재구성 출력(418)을 결합함으로써 에러-포션 코드-워드를 발생할 수 있다. 구조 모듈(410)은 에러-포션 코드-워드(416)의 특수한 인스턴스 혹은 일부를 위하여 재구성 출력(418)의 대응하는 부분을 갖는 스파스 포맷 입력(414)의 일부를 결합하거나 덧붙힐 수 있다. 구조 모듈(410)은 수학식 4에 따라 에러-포션 코드-워드를 발생할 수 있다.
Figure 112015018538083-pat00004
에러-포션 코드 워드(416)는 'cj'로 표시될 수 있다.
구조 모듈(410)은 에러-포션 코드-워드(416), 스파스 포맷 입력(414), 혹은 그것들의 조합에 근거로 한 스파스 구조(132)를 포함하는 패리티 체크 파라미터(130)를 발생할 수 있다. 구조 모듈(410)은 에러-포션 코드-워드(416), 그것의 재구성 출력(418), 혹은 스파스 구조(132)에 따라 그것들의 조합을 재배열하거나 리-포맷팅함으로써, 스파스 구성 출력(420)을 발생할 수 있다.
상술 된 실시 예를 계속하면, 구조 모듈(410)은 에러-포션 코드-워드(416)혹은 그것의 특수한 위치의 재구성 출력(418)에 대응하는 인스턴스 혹은 일부를 포함하는 매트릭스로서 스파스 구성 출력(420)을 발생할 수 있다. 좀 더 자세하게, 구조 모듈(140)은, j 번째 행(ρj)을 갖는 매트릭스로써 스파스 구성 출력(420)을 발생할 수 있다. 스파스 구성 출력(420)은 'R'로 표시될 수 있다.
구조 모듈(410)은 에러-포션 코드-워드(416) 혹은 그것의 재구성 출력(418)으로부터 발생한 스파스 구성 출력(420)에 근거로 한 패리티 체크 파라미터(130)를 발생할 수 있다. 실시 예를 계속하면, 구조 모듈(410)은 블록 길이(204), 다항식 오더(210), 혹은 그것들의 조합에 근거로 한 크기 혹은 차원을 갖는 매트릭스로써 패리티 체크 파라미터(130)를 발생할 수 있다.
좀 더 자세하게, 구조 모듈(410)은 'r x (B + r)'의 크기 혹은 차원을 갖는 매트릭스로 패리티 체크 파라미터(130)를 발생할 수 있다. 여기서 'r'은 다항식 오더(210)를 나타내고, 'B'는 블록 길이(204)를 나타낸다. 구조 모듈(410)은 수학식 5에 따라 패리티 체크 파라미터(130)를 발생할 수 있다.
Figure 112015018538083-pat00005
실시 예를 계속하면, 패리티 체크 파라미터(130)는 'HB'로 표시될 수 있다. 구조 모듈(410)은 'r x r'의 크기 혹은 차원을 갖는 'Ir'로써 표시되는 다항식 오던(210)에 근거로 한 크기의 식별 매트릭스를 이용할 수 있다. 구조 모듈(410)은 스파스 구성 출력(420)의 뒤바뀐 인스턴스를 갖는 다항식 오더(210)에 근거로 한 크기의 식별 매트릭스를 결합하거나 덧붙히는 것에 근거로 하여 패리티 체크 파라미터(130)를 발생할 수 있다.
패리티 체크 파라미터(130)은 'r'로 표시된 특수 좌표들에서 스파스 구조(132)를 포함하는 스파스 서브 매트릭스를 포함할 수 있다. 실시 예를 계속하면, 특수 좌표들은 CRC 리던던시 패리티 비트들에 대응할 수 있다. 대응하는 터너 그래프는 이러한 리던던시 좌표들에서 r 싱글 디그리 노드들(single degree nodes)을 가질 것이다.
스파스 구조(132)를 포함하거나 근거로 한 패리티 체크 파라미터(130)은 낮은 복잡 처리를 제공하고, 에러 검출 능력을 영향없이도 코딩 이득들을 증가할 수 있다는 것이 발견될 것이다. 스파스 구조(132)를 포함하거나 혹은 근거로 한 패리티 체크 파라미터(130)는 에러 핸들링 부분(118)을 추가로 이용하는 에러 체크 프로세스(126)의 영향을 감소하지 않고도 의미있는 결과들을 제공하도록 에러 정정 프로세스(128)에서 에러 핸들링 부분(118)의 사용을 활성화할 수 있다.
좌표 식별 파라미터에 근거로 한 패리티 체크 파라미터(130)는 에러 검출 능력을 영향없이도 코딩 이득들에서 증가를 제공한다고 발견될 것이다. 좌표 식별 파라미터는 패리터 체크 파라미터(130)를 위한 스파스 구조(132)를 제공한다.
재구성 출력(418) 및 스파스 구성 출력(420)에 근거로 한 패리티 체크 파라미터(130)는 컴퓨팅 시스템(100)의 가능한 출력량 증가를 제공한다고 발견될 것이다. 재구성 출력(418) 및 스파스 구성 출력(420)에 근거로 한 패리티 체크 파라미터(130)는 에러 체크 프로세스(126)의 영향을 감소하지 않고 에러 정정 프로세스(128)을 강화하거나 최적화하도록 에러 핸들링 부분(118)을 신뢰성있게 사용하기 위하여 컴퓨팅 시스템(100)을 활성화할 수 있다.
구조 모듈(410)은 제 1 통신 유닛(316), 제 2 통신 유닛(336), 제 1 제어 유닛)312), 제 2 제어 유닛(334), 스파스 구조(132)를 포함하거나 근거로 한 패리티 체크 파라미터(130)를 발생하도록 그것들의 조합을 이용할 수 있다. 구조 모듈(410)은 제 1 저장 유닛(314), 제 2 저장 유닛(346), 제 1 통신 유닛(316), 제 2 통신 유닛(336) 및 그것의 조합에서 스파스 구조(132)를 포함하거나 근거로 한 패리티 체크 파라미터(130)를 저장할 수 있다.
에러 디코딩 모듈(412)은 에러 핸들링 부분(118)을 이용하는 정보 부분(116)을 디코딩하는 것에 근거로 하여 콘텐츠(108)를 추정하도록 구현될 수 있다. 에러 디코딩 모듈(412)은, 에러 체크 파라미터(130), 조인트 프로세싱 메커니즘(124), 에러 핸들링 부분(118)을 갖는 정보 부분(116)을 디코딩하기 위한 그것들의 조합을 이용하여 정보 부분(116)을 디코딩할 수 있다.
에러 디코딩 모듈(412)은 에러 정정 프로세스(128)를 실행할 수 있다. 여기서 에러 정정 프로세스(128)는 에러 핸들링 부분(118), 패리티 체크 파라미터(130), 혹은 조인트 프로세싱 메커니즘(124)을 포함하는 스파스 구조(132)에 근거로 한 그것들의 조합을 이용할 수 있다. 에러 디코딩 모듈(412)은 조인트 프로세싱 메커니즘(124)을 갖는 콘텐츠 프로세스 출력(216)을 이용하여 에러 핸들링 부분(118)을 이용하는 에러 정정 프로세스(128)를 추가적으로 실행할 수 있다.
예를 들어, 에러 디코딩 모듈(412)는 도 1의 저강도 디코딩 메커니즘(218)을 포함하는 조인트 프로세싱 메커니즘(124)를 실행할 수 있다. 에러 디코딩 모듈(412)는 스파스 구조(132)에 근거로 한 패리티 체크 파라미터(130)를 포함하는 저강도 디코딩 메커니즘(412)을 이용하여 정보 부분(116)을 디코딩할 수 있다. 좀 더 상세하게, 에러 디코딩 모듈(412)은 에러 핸들링 부분(118)과 스파스 구조(132)에 근거로 한 패리티 체크 파라미터(130)를 포함하는 정보 부분(116)을 디코딩하기 위하여 도 2의 댐프드 빌리프 프로파게이션 메커니즘(224)을 이용하여 콘텐츠(108)를 추정할 수 있다.
실시 예를 계속하면, 에러 디코딩 모듈(412)은 CRC 메커니즘(120)을 위하여 저복잡도 소프트-인 소프트-아웃 디코딩을 실행하기 위한 저강도 디코딩 메커니즘(128)을 이용할 수 있다. 에러 디코딩 모듈(412)은 스파스 구조(132)를 포함하거나 혹은 근거로 한 패리티 체크 파라미터(130)를 포함하는 댐프드 빌리프 프로파게이션 메커니즘(224)을 이용하여 실행될 수 있다.
실시 예를 계속하면, 에더 디코딩 모듈(412)은 가변 노드 값(424)에 근거로 한 체크 노드 값(422)을 계산할 수 있다. H(i,j)=1을 만족하는 모든 (i, j)에 대하여, 체크 노드 값(422)는 Q(i,j)로 표시되고, 가변 노드(424)는 R(i, j)로 표시된다. 체크 노드 값(422), 가변 노드 값(424), 혹은 그것들의 조합은 LLR 값으로 계산될 수 있다. 체크 노드 값(422)은 체크 노드에서 가능한 외인성 정보를 포함할 수 있다. 가변 노드 값(424)은 가변 노드에서 전체 정보를 포함할 수 있다.
실시 예를 계속하면, 에러 디코딩 모듈(412)은 댐프드 빌리프 프로파게이션 메커니즘(224)에 따라 도 2의 에러 디코딩 입력(220)에 근거로 한 체크 노드 값(422)를 초기화할 수 있다. 좀 더 자세하게, 에러 디코딩 입력(220)은 이전 반복, 코드 워드, 신호 혹은 블록, 그것들의 조합을 위한 도 2의 에러 디코딩 출력(122), 콘텐츠 프로세스 출력(216), 혹은 그것들의 조합에 근거로 하여 체크 노드 값(422)을 초기화할 수 있다.
실시 예를 계속하면, 에러 디코딩 모듈(412)은 수학식 6에 따라 체크 노드 값(422)을 초기화할 수 있다.
Figure 112015018538083-pat00006
에러 디코딩 입력(220)은 Λin(j)로 표시될 수 있다.
실시 예를 계속하면, 에러 디코딩 모듈(412)은, 체크 노드 값(422), 가변 노드 값(4240, 에러 디코딩 입력(220), 혹은, 에러 핸들링 부분(118)을 갖는 정보 부분(116)을 디코딩하는 것에 근거로 한 에러 디코딩 출력(222)을 계산하기 위한 그것들의 조합을 더 처리할 수 있다. 좀 더 자세하게, 에러 디코딩 모듈(412)은 체크 노드 값(422), 가변 노드 값(424), 혹은 체크 노드 값(422), 가변 노드 값(424), 에러 디코딩 입력(220), 혹은 이것들의 조합에 근거로 한 그것들의 조합을 업데이트 할 수 있다. 또한, 좀 더 자세하게, 에러 디코딩 모듈(412)은 다른 결과들을 업데이트하는 것에서 결과들을 처리하는 기여들을 제어하거나 줄일 수 있다.
실시 예를 계속하면, 에러 디코딩 모듈(412)은 수학식 7 및 수학식 8에 따라 에러 디코딩 출력(222)을 계산하도록 더 처리할 수 있다.
Figure 112015018538083-pat00007
Figure 112015018538083-pat00008
수학식 8에서, 체크 노드 값(422)은 j와 다른 인덱스에 대응하는 가변 노드 값(424)의 적어도 하나의 인스턴스와 함께 인덱스 j에 대응하는 특별한 비트의 외인성 정보를 나타내는 에러 디코딩 입력(220)을 업데이트하는 것에 근거로 하여 업데이트될 수 있다.
체크 노드 값(422)은, 디코딩 특성에 대한 제한 혹은 제어를 제공하도록 조절의 영향을 줄이기 위하여 'α'로 표시된 댐프닝 팩터(dampening factor, 426)에 근거로 하여 추가로 업데이트될 수 있다. 댐프닝 팩터(426)는 0 < α < 1 사이의 존재할 수 있다.
실시 예를 계속하면, 에러 디코딩 모듈(412)은 종료 기준이 만족될 때까지 수학식 7 및 8에 설명된 바와 같이 다양한 값들을 업데이트할 수 있다. 종료 기준은, 처리 결과들을 위한 문턱값을 근거로 한 것처럼 디코딩 처리에 관련 조건 혹은 상황을 포함할 수 있다. 종료 기준은, 반복 개수를 위한 최대값에 근거로 할 수 있다.
실시 예를 계속하면, 에러 디코딩 모듈(412)은 체크 노드 값(422), 가변 노드 값(4240, 에러 디코딩 입력(220), 혹은 댐프드 빌리프 프로파게이션 메커니즘(224)에 따른 그것들의 조합의 업데이트된 인스턴스들에 근거로 하여 에러 디코딩 출력(222)을 계산할 수 있다. 에러 디코딩 모듈(412)은 수학식 9에 따라 에러 디코딩 출력(222)을 계산할 수 있다.
Figure 112015018538083-pat00009
에러 디코딩 출력(222)은 Λx(j)로 표시될 수 있다. 에러 디코딩 모듈(412)은 조인트 프로세싱 메커니즘(124)을 갖는 에러 핸들링 부분(118)을 이용하는 에러 정정 프로세스(128)과 같이, CRC 디코딩 처리 후에 외인성 출력 LLRs로써 에러 디코딩 출력(222)을 계산할 수 있다.
스파스 구조(132)를 포함하거나 혹은 근거로 한 패리티 체크 파라미터(130)를 이용하는 저강도 디코딩 메커니즘(218)은 에러 검출 능력의 영향 없이 코딩 이득들을 증가시키는 저복잡도 처리를 제공할 수 있다. 저강도 디코딩 메커니즘(218)와 스파스 구조(132)를 포함하거나 근거로 한 패리티 체크 파라미터(132)의 조합은, 에러 정정 프로세스(128)를 실행하는 곳에서 에러 핸들링 부분(118)을 이용하는 것으로부터 의미있는 출력을 제공할 수 있다.
에러 디코딩 출력(222)은 제 1 통신 유닛(316), 제 2 통신 유닛(336), 제 1 제어 유닛(312), 제 2 제어 유닛(334), 혹은 에러 디코딩 출력(222)을 디코드하고 계산하기 위한 그것들의 조합을 이용할 수 있다. 에러 디코딩 출력(222)은, 제 2 저장 유닛(314), 제 2 저장 유닛(3460, 제 1 통신 유닛(316), 제 2 통신 유닛(336), 혹은 그것들의 조합에서, 에러 디코딩 출력(222)을 갖는 디코딩 결과들, 에러 디코딩 출력(222), 체크 노드 값(422), 가변 노드 값(424), 에러 디코딩 입력(220), 혹은 그것들의 조합을 저장할 수 있다.
에러 핸들링 부분(118)을 이용하는 에러 정정 프로세스(129)를 실행하는 정보 부분(116)을 디코딩 한 후에, 제어 흐름은, 검증 모듈(406), 콘텐츠 프로세스 모듈(404), 혹은 그것들의 조합에 관하여 패스할 수 있다. 제어 흐름은, 도 2의 다이렉트 프로세스 메커니즘(228), 도 2의 조인트 업데이트 메커니즘(230), 도 2의 리스트 메커니즘(232)와 같은 구조에 따라 패스할 수 있다. 제어 흐름은, 도 2의 에러 체크 조절)226)에 근거로 하여 추가로 패스할 수 있다.
컴퓨팅 시스템(100)은 다이렉트 프로세스 메커니즘(228), 조인트 업데이트 메커니즘(230), 혹은 리스트 메커니즘(232)에 근거로 하여 에러 핸들링 부분(118)을 이용하는 콘텐츠(108)를 추정할 수 있다. 제어 흐름, 에러 체크 조절(226), 상술된 동작들의 시퀀스, 혹은 그것들의 조합은 다이렉트 프로세스 메커니즘(228), 조인트 업데이트 메커니즘(230), 혹은 리스트 메커니즘(232)에 근거로 하거나 따라 존재할 수 있다.
예를 들어, 제어 흐름은, 다이렉트 프로세스 메커니즘(228), 리스트 메커니즘(232), 혹은 그것의 조합을 위하여 조인트 에러 핸들링 모듈(408) 후에 검증 모듈(406)로 패스될 수 있다. 컴퓨팅 시스템(100)은 에러 핸들링 부분(118)과 함께 정보 부분(116)를 디코딩하기 위한 콘텐츠 프로세스 메커니즘(212) 후에 실행되는 조인트 프로세싱 메커니즘(124)과 함께 콘텐츠(108)를 추정하도록 에러 디코딩 모듈(412)을 이용할 수 있다. 에러 체크 조절(226)은, 검증 모듈(406)의 조인트 프로세싱 메커니즘(124) 후에 에러 체크 프로세스(126)를 실행하는 것에 근거로 한 제어 흐름을 마치는 것을 포함할 수 있거나, 메모리 정보를 저장 혹은 업데이트 할 수 있거나, 그것들의 조합을 할 수 있다.
또한, 제어 흐름은, 조인트 프로세싱 메커니즘(124), 정보 부분(116)으로부터 콘텐츠(108)를 반복적으로 추정하기 위한 콘텐츠 프로세스 메커니즘, 및 에러 핸들링 부분(118)과 함께 정보 부분(116)을 개별적 혹은 추가적으로 디코딩하기 위한 조인트 프로세싱 메커니즘(124)로 집적화된 콘텐츠 프로세스 메커니즘(212)을 이용하여 콘텐츠(108)를 추정하기 위하여 패스될 수 있다. 컴퓨팅 시스템(100)은 콘텐츠(108)를 추정하기 위하여 에러 디코딩 출력(222)에 근거로 한 콘텐츠 프로세스 출력(216)을 계산할 수 있다.
또한, 예를 들어, 제어 흐름은 에러 핸들링 부분(118)을 갖는 콘텐츠(108)의 추정을 검증하는 에러 체크 프로세스(126)를 제한하기 위하여 에러 체크 조절(226)에 근거로 한 에러 체크 프로세스(126)를 포함하는 조인트 프로세싱 메커니즘(124)을 이용하여 콘텐츠(108)를 추정하기 위하여 패스될 수 있다. 구성에 대한 자세한 것은 아래에서 설명될 것이다.
설명의 편의를 위하여, 컴퓨팅 시스템(100)은 도 1의 터보 프로세스 메커니즘(112)와 댐프드 빌리프 프로파게이션 메커니즘(224)을 이용하는 콘텍스트에서 설명된다. 하지만, 컴퓨팅 시스템(100)이 상술 된 처리와 다르게 실행될 수 있다고 이해되어야 할 것이다. 예를 들어, 컴퓨팅 시스템(100)은 디코딩 특성들에 덜 공격적으로 특화된 저강도 디코딩 메커니즘(218)의 어떤 인스턴스를 실행할 수 있다. 또한, 예를 들어, 컴퓨팅 시스템(100)은 폴라 코딩 메커니즘와 같은 에러 정정 프로세스(128)의 다른 인스턴스를 위하여 실행될 수 있다.
또한, 설명의 편의를 위하여, 컴퓨팅 시스템(100)은 CRC 메커니즘(120)을 이용하는 콘텍스트에서 설명된다. 하지만, 컴퓨팅 시스템(100)이 LDPC(low density parity check) 같은 상술 된 것과 다른 처리를 실행할 수 있다.
도 5를 참조하면, 도 1의 컴퓨팅 시스템(100)의 동작 플로우챠트(500)를 예시적으로 보여준다. 예시적인 동작 플로우챠트(500)는 도 2의 다이렉트 프로세스 메커니즘(228)을 설명할 수 있다. 다이렉트 프로세스 메커니즘(228)은, 도 1의 에러 핸들링 부분(118)을 갖는 정보 부분(116)을 디코딩하기 위하여 도 2의 콘텐츠 프로세스 메커니즘(212) 후에 도 1의 조인트 프로세싱 메커니즘(124)을 이용하는 도 1의 콘텐츠(108)를 추정할 수 있다.
다이렉트 프로세스 메커니즘(228)은 콘텐츠 프로세스 메커니즘(212) 후에 실행된 에러 핸들링 부분(118)을 이용하는 정보 부분(116)을 디코딩 하기 위하여 조인트 프로세싱 메커니즘(124)을 포함할 수 있다. 다이렉트 프로세스 메커니즘(228)은 에러 핸들링 부분(118)을 이용하는 도 1의 에러 정정 프로세스(128) 다음에만, 조인트 프로세싱 메커니즘(124)을 위한 도 1의 에러 체크 프로세스(126)를 제한하기 위하여 도 2의 에러 체크 조절(226)을 포함할 수 있다.
다이렉트 프로세스 메커니즘(228)은 박스(502)에 디코딩하는 것에 근거로 한 전송 블록을 포함할 수 있다. 디코딩에 근거로 한 전송 블록은 에러 정정 프로세스(128)를 위한 콘텐츠 프로세스 메커니즘(212)을 실행하는 도 4의 콘텐츠 프로세스 모듈(404)을 포함할 수 있다.
예를 들어, 박스(502)는 에러 핸들링 부분(118) 없는 정보 부분(116)을 이용하여 콘텐츠(108)를 위하여 디코딩하는 콘텐츠 프로세스 모듈(404)을 나타낼 수 있다. 또한, 예를 들어, 박스(502)는 도 1의 터보 프로세스 메커니즘(112)과 같은, 도 1의 포맷팅 메커니즘(110)에 따란 정보 부분(116)을 처리하는 것에 근거로 하여 콘텐츠(108)를 위하여 디코딩하는 콘텐츠 프로세스 모듈(404)을 나타낼 수 있다. 콘텐츠 프로세스 모듈(404)에 대한 상세한 것은 위에서 설명되었다.
예를 들어, 박스(504)는 디코딩 처리 결과로써 도 1의 콘텐츠 프로세스 출력(216)을 근거로 하여 CRC 에러 체크를 수행하는 검증 모듈(406)을 나타낼 수 있다. 검증 모듈에 대한 상세한 것은 위에서 설명되었다.
다이렉트 프로세스 메커니즘(228)은, 검증 모듈(406)이 패스 결과 혹은 성공을 지시할 때 콘텐츠 프로세스 출력(216)에 근거로 하여 콘텐츠(108) 혹은 오리지널 코드 워드을 평가할 수 있다. 컴퓨팅 시스템(100)은, 검증 모듈(406)이 박스(502)에 표시된 바와 같은 검증에 근거로 한 전승 블록의 결과에 대한 실패를 지시할 때, 박스(506)에서의 검증 출구 조건을 더 포함할 수 있다.
다이렉트 프로세스 메커니즘(228)은 에러 핸들링 메커니즘(212)의 반복적인 실행을 포함할 수 있다. 다이렉트 프로세스 메커니즘(228)은, 에러 체크 프로세스(126)를 패스하지 않고 최대 제한값에 도달하는 것과 같이, 박스(506)에 표시된 검증 출구 조건이 출구 조건의 만족하는 것을 지시할 때까지 박스들(502, 504, 506)에 표시된 바와 같이 처리들을 반복할 수 있다.
다이렉트 프로세스 메커니즘(228)은 박스(508)에서 디코딩하는 것에 근거로 한 에러를 포함할 수 있다. 디코딩에 근거로 한 에러는 에러 핸들링 부분(118)을 이용하는 에러 정정 프로세스(128)를 실행하는 도 4의 조인트 에러 핸들링 모듈(408)을 포함할 수 있다. 예를 들어, 박스(508)는, CRC 디코딩, 소프트 입력 및 소프트 출력 디코딩, 도 1의 스파스 구조를 갖는 혹은 근거로 한 도 1의 패리티 체크 파라미터(130)를 이용하는 디코딩, 혹은 그것들의 조합을 나타낼 수 있다. 조인트 에러 핸들링 모듈(408)에 대한 상세한 것은 위에서 설명되었다.
다이렉트 프로세스 메커니즘(228)은 박스(510)에서의 검증에 근거로 한 에러를 포함할 수 있다. 박스(510)에 나타내는 검증에 근거로 한 에러는, 박스(508)의 설명된 바와 같이 디코딩하는 것에 근거로 한 에러에 따른 박스(510)를 제외하고, 박스(504)에 나타난 검증을 근거로 한 전송 블록과 유사할 수 있다. 검증 기반의 에러는 조인트 에러 핸들링 모듈(408)로부터 도 2의 에러 디코딩 출력(222)을 위한 에러 체크 프로세스(126)를 실행하는 검증 모듈(406)을 포함할 수 있다.
다이렉트 프로세스 메커니즘(228)을 위한 에러 체크 조절(226)은, 콘텐츠 프로세스 메커니즘(212)의 종료 후에만, 박스(508)에서 디코딩 기반의 에러 및 박스(510)에서 검증 기반의 에러를 포함할 수 있다. 컴퓨팅 시스템(100)은 박스(510)에서 검증 기반의 에러 출력을 근거로 하여 콘텐츠(108)를 추정할 때, 전체 시도를 위한 성공 혹은 실패를 판별할 수 있다.
상술 된 바와 같이, 에러 핸들링 부분(118)을 이용하는 에러 정정 프로세스(128)를 실행하기 위한 에러 체크 조절(226)을 포함하는 다이렉트 프로세스 메커니즘(228)은, 처리량의 증가를 발견한다. 이러한 코딩 이득들은, CRC 검출 성능에 영향을 주지 않으면서 높은 코딩 비율, 짧은 블록 길이들, 혹은 그것들의 조합을 가져온다. 에러 핸들링 부분(118)을 이용하는 에러 정정 프로세스(128)를 갖는 다이렉트 프로세스 메커니즘(228)은, 에러 핸들링 부분(118)을 갖는 추가적인 정보를 제공하거나 디코딩하는 것에 근거로 하여 처리량을 증가시킬 수 있다. 스파스 구조(132)를 포함하거나 근거로 한 패리티 체크 파라미터(130)와 함께하는 에러 체크 조절(226)은, 에러 체크 프로세스(126)의 무결성이 에러 정정 프로세스(128)를 위한 에러 핸들링 부분(118)을 이용하는 것으로부터 구성될 수 없다는 것을 확신할 수 있다.
에러 체크 조절(226)을 포함하는 다이렉트 프로세스 메커니즘(228)은, 도 3의 제 1 통신 유닛(316), 도 3의 제 2 통신 유닛(336), 도 3의 제 1 제어 유닛(312), 도 3의 제 2 제어 유닛(336), 혹은 그것들의 조합으로 구현될 수 있다. 예를 들어, 에러 체크 조절(226)을 포함하는 다이렉트 프로세스 메커니즘(228)은, 회로들, 와이어들, 패스들, 게이트들, 칩들, 기능들, 명령들, 혹은 컴퓨팅 시스템(100)의 상술 된 적어도 하나의 유닛에서 설명된 바와 같이 에러 체크 조절(226)을 포함하는 다이렉트 프로세스 메커니즘(228)에 따라 배열된 그것들의 조합을 포함할 수 있다.
도 6를 참조하면, 도 1의 컴퓨팅 시스템(100)의 추가적인 동작 플로우챠트(600)를 보여준다. 추가적인 동작 플로우챠트(600)는 도 2의 조인트 업데이트 메커니즘(230)을 설명할 수 있다. 조인트 업데이트 메커니즘(230)은, 도 1의 조인트 프로세싱 메커니즘(124)이 포함된 도 2의 콘텐츠 프로세스 메커니즘(212)을 이용하여 도 1의 콘텐츠(108)를 추정할 수 있다.
콘텐츠 프로세스 메커니즘(212)은, 도 1의 정보 부분(116)으로부터 콘텐츠(108)를 반복적으로 추정하기 위하여 존재할 수 있고, 조인트 프로세싱 메커니즘(124)은 도 1의 에러 핸들링 부분(118)을 갖는 정보 부분(116)를 개별적으로 디코딩하기 위하여 존재할 수 있다. 조인트 업데이트 메커니즘(230)은, 정보 부분(116)을 디코딩하기 위하여 조인트 프로세싱 메커니즘(124)을 포함할 수 있다. 여기서 조인트 프로세싱 메커니즘(124)은 콘텐츠 프로세스 메커니즘(212)이 결합되거나 포함될 수 있다.
조인트 업데이트 메커니즘(230)은 에러 핸들링 부분(118)을 갖는 콘텐츠(118)의 추정을 검증하는 에러 체크 프로세스(126)를 제한하기 위하여 도 2의 에러 체크 조절(226)에 근거로 한 도 1의 에러 체크 프로세스(126)를 포함하는 조인트 프로세싱 메커니즘(124)을 이용하여 콘텐츠(108)를 추정할 수 있다. 조인트 업데이트 메커니즘(230)은 콘텐츠(108)를 추정하기 위하여 도 2의 에러 디코딩 출력(222)와 같이, 다양한 출력 혹은 결과 정보를 근거로 하여 도 2의 콘텐츠 프로세스 출력(226)와 같은 다양한 입력 혹은 초기화 정보를 더 포함할 수 있다.
조인트 업데이트 메커니즘(230)은 박스(602)에서 검출을 포함할 수 있다. 컴퓨팅 시스템(100)은 도 4의 콘텐츠 프로세스 모듈(404)을 이용하는 도 1의 목적 신호(122)를 검출함으로써 검출을 실행할 수 있다. 콘텐츠 프로세스 모듈(404)에 대한 자세한 것은 위에서 설명되었다.
조인트 업데이트 메커니즘(230)은 박스(502)에서의 디코딩 기반의 전송 블록을 포함할 수 있다. 디코딩 기반 전송 블록은 도 1의 에러 정정 프로세스(128)를 위하여 콘텐츠 프로세스 메커니즘(212)을 실행하는 콘텐츠 프로세스 메커니즘(404)을 포함할 수 있다. 박스(502) 및 콘텐츠 프로세스 모듈(404)의 자세한 것은 위에서 설명되었다.
조인트 업데이트 메커니즘(230)은 박스(604)에서의 제한 메커니즘을 포함할 수 있다. 제안 메커니즘은 에러 체크 조절(226)의 전체 혹은 일부를 포함할 수 있다. 박스(604)는 검출, 디코딩, 혹은 그것들의 조합을 위하여 반복을 지시하기 위한 인덱스를 검증하기 위한 에러 체크 조절(226)을 포함할 수 있다.
예를 들어, 조인트 업데이트 메커니즘(230)을 위한 에러 체크 조절(226)은 박스(502) 및 사전에 결정된 문턱값을 만족하지 않는 반복에 근거로 한 박스(504)에서 설명된 처리들을 반복할 수 있다. 좀 더 상세하게, 조인트 업데이트 메커니즘(230)을 위한 에러 체크 조절(226)은, 1와 10 사이에서 디코딩 반복 카운트가 컴퓨팅 시스템(100)에 의해 사전에 결정된 임의 숫자보다 크지 않을 때, 박스(502) 및 박스(504)에서 설명된 처리들을 반복할 수 있다.
조인트 업데이트 메커니즘(230)은 박스(508)에서의 디코딩 기반 에러를 포함할 수 있다. 조인트 업데이트 메커니즘(230)은, 반복 카운트가 컴퓨팅 시스템(100)에 의해 사전에 결정된 문턱값을 만족할 때 처럼, 에러 체크 조절(226)에 근가로 한 박스(508)에서 나타내는 디코딩 기반 에러를 실행할 수 있다. 조인트 업데이트 메커니즘(230)은 도 4의 에러 핸들링 모듈(408)과 함께 구현된 박스(508)를 포함할 수 있다. 박스(508) 및 조인트 에러 핸들링 모듈(408)에 대한 자세한 것은 위에서 설명되었다.
조인트 업데이트 메커니즘(230)은 디코딩, 검출, 혹은 콘텐츠(108)의 처리를 위한 그것들의 조합을 위하여 반복적으로 실행하는 것을 포함할 수 있다. 조인트 업데이트 메커니즘(230)은 박스(508)에서 나타나는 디코딩 기반 에러 후에 에러 디코딩 출력(222)를 위한 에러 체크 프로세스(126)를 제어하거나 포함하지 않도록 하기 위한 에러 체크 조절(226)을 포함할 수 있다.
조인트 업데이트 메커니즘(230)은 박스(606)에서 디코딩 출구의 검증을 포함할 수 있다. 디코딩 출구의 검증은 반복적인 디코딩 처리를 중단하기 위해 존재할 수 있다. 조인트 프로세싱 메커니즘(124)을 갖는 콘텐츠 프로세스 메커니즘(212)을 포함하는 반복적인 디코딩 처리는 컴퓨팅 시스템(100)에 의해 사전에 결정된 디코딩 반복 문턱 값에 근거로 하여 중단될 수 있다.
조인트 업데이트 메커니즘(230)은 박스(608)에서 업데이트 디코딩 입력을 포함할 수 있다. 조인트 업데이트 메커니즘(230)은, 조인트 에러 핸들링 모듈(408)로부터 에러 디코딩 출력(222)을 콘텐츠 프로세스 메커니즘(212)을 실행하는 콘텐츠 프로세스 모듈(404)을 위한 도 2의 콘텐츠 프로세스 입력(214)로써 제공할 수 있다. 예를 들어, 외부 정보 혹은 에러 디코딩 출력(222)에 의해 나타난 귀납적인 정보를 나타내는 LLR 값은, 콘텐츠 프로세스 입력(214)에 의해 나타낸 바와 같이 디코더를 위한 선험적인 정보로 이용될 수 있다.
조인트 업데이트 메커니즘(230)은, 디코딩 처리를 위한 반복들이 디코딩 반복 문턱값에 도달하지 않을 때, 에러 디코딩 출력(222)을 디코딩 처리를 위한 특화된 콘텐츠 프로세스 입력(214)으로 제공할 수 있다. 조인트 업데이트 메커니즘(230)은, 디코딩 반복 카운트가 박스(606)를 위하여 고려된 바와 같이 디코딩 반복 문턱값을 만족할 때까지, 박스들(502, 504, 604, 508, 606, 608) 및 그것의 조합에 의해 나타나는 처리들을 반복할 수 있다.
조인트 업데이트 메커니즘(230)은 박스(610)에서의 IDD(iterative-detection-decoding) 출구를 위한 검증을 포함할 수 있다. IDD 출구의 검증은 검출 및 디코딩 모두 결합하는 반복적인 처리를 중단하기 위해 존재할 수 있다. 박스(610)에서 나타난 IDD 출구의 검증은, 박스(606)를 위해 고려된 바와 같이 디코딩 반복 카운트가 디코딩 반복 문턱값을 만족할 때까지 고려될 수 있다.
조인트 업데이트 메커니즘(230)은 박스(612)에서 업데이트 검출 입력을 포함할 수 있다. 조인트 업데이트 메커니즘(230)은, 콘텐츠 프로세스 메커니즘(212)을 실행하는 콘텐츠 프로세스 모듈(404)을 위하여 조인트 에러 핸들링 모듈(408)의 에러 디코딩 출력(222)을 콘텐츠 프로세스 입력(214)으로 제공할 수 있다.
예를 들어, 에러 디코딩 출력(222)에 의해 나타나는 외부 정보 혹은 귀납적인 정보를 나타내는 LLR 값은, 콘텐츠 프로세스 입력(214)에 의해 나타내는 검출기를 위한 선험적인 정보로 이용될 수 있다. 좀 더 자세하게, 조인트 업데이트 메커니즘(230)은, 에러 디코딩 출력(222)에 의해 나타난 CRC 출력을 갖는 콘텐츠 프로세스 출력(216)에 의해 나타난 시스테매틱 귀납적인 디코더 출력을 업데이트할 수 있고, 그리고 검출기을 위한 선험적인 정보로서 디코더 LLR를 피드백할 수 있다.
조인트 업데이트 메커니즘(230)은, IDD을 위한 반복들이 컴퓨팅 시스템(100)에 의해 사전에 결정된 IDD 문턱값에 도달하지 않았을 때, 에러 디코딩 출력(222)을 검출 처리를 위하여 특화된 콘텐츠 프로세스 입력(214)으로 제공할 수 있다. 조인트 업데이트 메커니즘(230)은, IDD 카운트가 박스(610)을 위한 IDD 문턱값을 만족할 때까지, 박스들(602, 502, 504, 604, 508, 606, 608, 610, 612) 및 그것들의 조합에서 의해 나타난 처리들을 반복할 수 있다.
조인트 업데이트 메커니즘(230)은 박스(614)에서의 디코딩 출력의 검증을 포함할 수 있다. 조인트 업데이트 메커니즘(230)은, IDD 카운트가 IDD 문턱값을 만족할 때 에러 디코딩 출력(222)을 검증할 수 있다. 조인트 업데이트 메커니즘(230)은 박스(614)를 위한 에러 체크 프로세스(1260에 따라 에러 디코딩 출력(222)을 검증할 수 있다. 예를 들어, 조인트 업데이트 메커니즘(230)은, 도 1의 스파스 구조(132)를 갖는 도 1의 패리티 체크 파라미터(130)를 포함하는 것과 같이, 에러 핸들링 부분(118)을 이용하는 에러 정정 프로세스(118)를 실행하는 것에 근거로 하여 발생되는 CRC 디코딩 출력에서 CRC 체크를 실행할 수 있다.
조인트 업데이트 메커니즘(230)은 검증 모듈(406)을 이용하여 에러 디코딩 출력(222)을 검증할 수 있다. 검증 모듈(406)에 대한 상세한 것은 위에서 설명되었다. 조인트 업데이트 메커니즘(230)을 위한 에러 체크 조절은 IDD 처리의 완료 이후에 발생하는 에러 디코딩 출력(222)의 검증을 포함할 수 있다. 컴퓨팅 시스템(100)은 박스(614)에 나타난 디코딩 출력의 검증 결과에 근거로 하여 콘텐츠(108)를 추정할 때 전체 시도를 위한 성공 혹은 실패를 판별할 수 있다.
조인트 업데이트 메커니즘(230)에 대하여, 소프트-인 소프트-아웃(soft-in soft-out) CRC 디코딩은 박스(604)에 따른 터보 디코딩 반복 루프 안에 초기 터보 디코딩 반복 개수 후에 실행될 수 있다. CRC 검출은, CRC 검출 실패 에러 가능성 증가를 방지하기 위하여, CRC 디코더 귀납적 출력이 아니라, 터보 디코더 귀납적인 출력에서 배포될 수 있다.
CRC 디코더 외인성 소프트 출력은 터보 디코딩 반복 루프 내에 제 1 터보 디코더에 선험적인 입력을 업데이트 하는데 이용될 수 있다. 여기서 댐프드 외인성 CRC 디코더 출력은, 제 1 구성 터보 디코더에 선험적으로 패스하기 전에, 시스테메틱 비트들을 위한 디-인터리브드 제 2 구성 터보 디코더 외인성 출력(de-interleaved second component turbo decoder extrinsic output)에 추가될 수 있다. 조인트 업데이트 메커니즘(230)은 수학식 10에 따라 박스(608)에 나타난 바와 같이 디코딩 입력을 업데이트 할 수 있다.
Figure 112015018538083-pat00010
IDD 아키텍쳐를 이용하는 조인트 업데이트 메커니즘(230)에 관하여, CRC 디코더 소프트 외인성 출력은, 각 IDD 반복 혹은 제 2 IDD 반복으로부터 시작에서, 귀납적인 가능성 터보 디코더 출력, 외인성 출력, 혹은 귀납적이고 외인성 디코더 출력 모두의 기능의 시스테매틱 일부를 업데이트하는 데 이용할 수 있다. CRC 디코더 소프트 외인성 출력은 수학식 11에 다른 채널 디코더에 선험적인 정보로써 패스될 수 있다.
Figure 112015018538083-pat00011
IDD 아키텍쳐를 이용하는 조인트 업데이트 메커니즘(230)에 대하여, 디코더 소프트 출력은 패리티 심볼들을 위하여 업데이트되지 않을 수 있다. IDD 반복들 각각에서, CRC 출력은 디코더 선험값을 업데이트를 하는데 이용될 수 있고, CRC 검출은 상술 된 터보 디코딩 후와 CRC 디코딩 전에 체크될 수 있다. 만일, 모든 IDD 반복들이 실패한다면, CRC 검출은 마지막 귀납적 CRC 디코더 출력에서 테스트될 수 있다.
상술 된 바와 같이 에러 핸들링 부분(118)을 이용하는 에러 정정 프로세스(128)를 실행하기 위한 에러 체크 조절(226)을 포함하는 조인트 업데이트 메커니즘(230)은, 가능한 처리량 증가를 제공할 수 있다고 발견될 것이다. 여기서 코딩 이득들은, CRR 검출 능력에 영향을 주지 않으면서, 이들의 높은 부호화율, 짧은 블록 길이, 혹은 그것들의 조합으로 강조된다. 또한, 조인트 업데이트 메커니즘(230)은 반복 처리 아키텍쳐들을 위하여 CRC 검출 능력을 영향을 주지 않으면 가능한 처리량 증가를 제공할 수 있다고 발견될 것이다.
에러 체크 조절(226)을 포함하는 조인트 업데이트 메커니즘(230)은, 도 3의 제 1 통신 유닛(316), 도 3의 제 2 통신 유닛(336), 도 3의 제 1 제어 유닛(312), 도 3의 제 2 제어 유닛(334), 혹은 그것들의 조합에서 혹은 이용하여 실행될 수 있다. 예를 들어, 에러 체크 조절(226)을 갖는 조인트 업데이트 메커니즘(230)은, 회로들, 와이어들, 패스들, 게이트들, 칩들, 기능들, 명령들, 혹은 컴퓨팅 시스템(100)을 위한 적어도 하나의 유닛에서 상술 된 바와 같은 에러 체크 조절(226)을 갖는 조인트 업데이트 메커니즘(230)에 따라 배열되는 그것들의 조합을 포함할 수 있다.
도 7을 참조하면, 도 1의 컴퓨팅 시스템(100)의 추가적인 동작 플로우챠트(700)가 도시된다. 추가적인 동작 플로우챠트(700)는 도 2의 리스트 메커니즘(232)을 설명한다. 리스트 메커니즘(232)은 도 1의 조인트 프로세싱 메커니즘(124)을 포함한 도 2의 콘텐츠 프로세스 메커니즘(212)을 이용하여 도 1의 콘텐츠(108)를 추정할 수 있다.
콘텐츠 프로세스 메커니즘(212)은 도 1의 정보 부분(116)으로부터 콘텐츠(108)를 반복적으로 추정하기 위하여 존재할 수 있고, 조인트 프로세싱 메커니즘(124)은 도 1의 에러 핸들링 부분(118)을 갖는 정보 부분(116)을 개별적으로 디코딩하기 위하여 존재할 수 있다. 리스크 메커니즘(232)은, 콘텐츠 프로세스 메커니즘(212)에 결합하거나 포함하는 에러 핸들링 부분(118)을 이용하는 정보 부분(116)을 디코딩하기 위하여, 조인트 프로세싱 메커니즘(124)을 포함할 수 있다.
리스트 메커니즘(232)은 에러 핸들링 부분(118)을 갖는 콘텐츠(108)의 추정을 검증하는 에러 체크 프로세스(126)를 제한하기 위하여, 도 2의 에러 체크 조절(226)에 근거로 하여 도 1의 에러 체크 프로세스(126)를 포함하는 조인트 프로세싱 메커니즘(124)을 이용하여 콘텐츠(108)를 추정할 수 있다. 리스트 메커니즘(232)은, 콘텐츠(108)를 추정하기 위하여, 도 2의 에러 디코딩 출력(222)와 같은 다양한 출력 혹은 결과 정보에 근거로 하여, 도 2의 콘텐츠 프로세스 출력(216)와 같은 다양한 입력 혹은 초기화 정보를 더 포함할 수 있다.
리스트 메커니즘(232)은 박스(602)에서 검출, 박스(5020에서 디코딩 기반 전송 블록, 박스(504)에서 검증 기반 전송 블록, 박스(508)에서 디코딩 기반 에러, 혹은 상술된 바와 같이 도 6의 조인트 업데이트 메커니즘(230)에 유사하게 그것들의 조합을 포함할 수 있다. 컴퓨팅 시스템(100)은, 박스(602), 박스(502), 박스(508), 혹은 도 4의 콘텐츠 프로세스 모듈(404), 도 4의 검증 모듈(406), 도 4의 조인트 에러 핸들링 모듈(408), 혹은 그것들의 조합을 이용하는 그것들의 조합에 의해 표시되는 적어도 하나의 처리를 실행할 수 있다. 박스(602), 박스(502), 박스(508), 혹은 도 4의 콘텐츠 프로세스 모듈(404), 도 4의 검증 모듈(406), 도 4의 조인트 에러 핸들링 모듈(408), 혹은 그것들의 조합에 자세한 것은 위에서 설명되었다.
리스트 메커니즘(232)는 도 5의 다이렉트 프로세스 메커니즘(228)을 위한 상술 된 바와 같이 박스(510)에서 검증 기반 에러를 포함할 수 있다. 감증 기반 에러는 에러 핸들링 부분(118)을 이용하는 도 1의 에러 정정 프로세스(128)를 통하여 정보 부분(116)의 디코딩을 후에 뒤따르는 에러 체크 프로세스(126)를 실행하는 검증 모듈(406)을 포함할 수 있다. 박스(510)와 검증 모듈(406)에 대한 자세한 것은 위에서 설명되었다.
리스트 메커니즘(232)은 박스(702)에서 업데이트 리스트를 포함할 수 있다. 리스트 메커니즘(232)은 홀딩 리스트(703)를 포함할 수 있다. 홀딩 리스트(703)은 디코딩 결과들에 대응하는 정보를 포함할 수 있다.
예를 들어, 홀딩 리스트(703)는 에러 디코딩 출력(222), 콘텐츠 프로세스 출력(216), 혹은 그것들의 조합의 적어도 하나의 인스턴스를 포함할 수 있다. 좀 더 자세하게, 홀딩 리스트(703)는 코드 워드, 특수한 코드 워드를 처리하기 위한 특수한 반복, 혹은 그것들의 조합의 인스턴스에 대응하는 디코딩 출력들을 포함할 수 있다.
리스트 메커니즘(232)은 다양한 방법들로 홀딩 리스트(703)를 실행할 수 있다. 예를 들어, 홀딩 리스트(703)는 버퍼, 테이블, 다이나믹 메모리, 혹은 그것들의 조합으로 실행될 수 있다.
리스트 메커니즘(232)은 박스(702)에 표시된 바와 같이 업데이트 리스트를 실행하기 위하여 에러 디코딩 출력(222)을 포함하도록 홀딩 리스트(703)를 업데이트할 수 있다. 리스트 메커니즘(232)은, 박스(510)에 표시된 바와 같이 에러 체크 프로세스(126)를 실행하는 검증 모듈(406)이, 에러 디코딩 출력(222)이 패스되거나 에러 체크 프로세스(126)를 만족한다고 지시할 때, 홀딩 리스트(703)를 업데이트할 수 있다.
리스트 메커니즘(232)은 콘텐츠 프로세스 메커니즘(212)을 반복적으로 실행하는 동안에 에러 디코딩 출력(222)을 위하여 에러 체크 프로세스(126)를 실행하기 위한 에러 체크 조절(226)을 포함할 수 있다. 반복적인 디코딩 처리, IDD 처리들 혹은 콘텐츠 프로세스 메커니즘(212)에 의해 표시된 그것들의 조합을 계속할 동안에, 리스트 메커니즘(232)은 홀딩 리스트(703)에 에러 디코딩 출력(222)의 패싱 혹은 만족 인스턴스를 저장하기 위한 에러 체크 조절(226)을 포함할 수 있다.
리스트 메커니즘(232)은 박스(606)에서 디코딩 출구의 검증을 포함할 수 있다. 디코딩 출구의 검증은 도 6에서 설명된 반복 디코딩 처리를 중단하기 위하여 존재할 수 있다. 리스트 메커니즘(232)은 박스(702)에서 표시된 홀딩 리스트(703)을 업데이트 한 후에, 박스(606)를 실행할 수 있다. 또한, 리스트 메커니즘(232)은, 박스(510)에 표시된 바와 같이 에러 체크 프로세스(126)를 실행하는 검증 모듈(406)이 에러 디코딩 출력(222)이 에러 체크 프로세스(126)를 실패한다고 지시할 때, 홀딩 리스트(703)를 업데이트하지 않고 박스(6060)를 실행할 수 있다.
리스트 메커니즘(232)은 박스들(502, 504, 508, 510, 702, 606), 혹은 디코딩 반복 카운트가 박스(606)를 위한 디코딩 반복 값을 만족할 때까지 그것들의 조합에 의해 표시되는 처리들을 반복할 수 있다. 리스트 메커니즘(232)은 도 6에 설명된 박스(610)에 IDD 출구의 검증을 포함할 수 있다. 리스트 메커니즘(232)은 도 6에서 설명된 박스(612)에서 업데이트 검출 입력을 더 포함할 수 있다. 리스트 메커니즘(232)은, 박스들(602, 502, 504, 508, 508, 510, 702, 606, 610, 612), 혹은 디코딩 반복 카운트가 박스(610)를 위한 디코딩 반복 값을 만족할 때까지 그것들의 조합에 의해 표시되는 처리들을 반복할 수 있다.
리스트 메커니즘(232)은 박스(706)에서 리스트로부터 출력을 포함할 수 있다. 리스트 메커니즘(232)은 콘텐츠(108)를 추정하기 위하여 홀딩 리스트(703)에서 에러 디코딩 출력(222)을 이용함으로써 리스트로부터 출력을 실행할 수 있다. 리스트 메커니즘(232)은, 홀딩 리스트(703)가 에러 디코딩 출력(222)의 하나의 엔트리 혹은 인스턴스를 포함할 때와 같은, 문턱 카운트에 근거로 하여 박스(706)를 실행할 수 있다.
리스트 메커니즘(232)은 박스(708)의 엔코드 리스트를 포함할 수 있다. 리스트 메커니즘(232)은 홀딩 리스트(703)에서 에러 디코딩 출력(222)의 각 벡터 혹은 인스턴스에 의해 엔코드 리스트를 실행할 수 있다. 리스트 메커니즘(232)은, 홀딩 리스트(703)가 에러 디코딩 출력(222)의 적어도 하나의 엔트리 혹은 인스턴스를 포함할 때와 같이, 문턱 카운트에 근거로 하여 박스(708)를 실행할 수 있다. 리스트 메커니즘(232)은 도 1의 포맷팅 메커니즘(110)을 이용하여 엔코딩할 수 있다.
리스트 메커니즘(232)은 박스(710)에서 인터리브를 포함할 수 있다. 리스트 메커니즘(232)은 홀딩 리스트(703)에서 엔코드 엔트리들 혹은 정보를 인터리빙하거나 재배열함으로써 인터리빙 처리를 실행할 수 있다. 리스트 메커니즘(232)은 도 1의 포맷팅 메커니즘(110)을 이용하여 엔코드할 수 있다.
리스트 메커니즘(232)은 박스(712)에서 픽크 코드-워드(pick code-word)을 포함할 수 있다. 리스크 메커니즘(232)은 마지막 디코더 출력을 이용하여 최대 LLR 신뢰성을 갖는 코드 워드의 출력 인스턴스를 선택함으로써 피킹 처리(picking process)를 실행할 수 있다. 리스트 메커니즘(232)은 홀딩 리스트(703) 내의 엔트리들의 하나의 엔코드되고 인터리브된 인스턴스로써 코드 워드를 선택할 수 있다.
리스트 메커니즘(232)은 홀딩 리스트(703)를 추가적으로 관리하는 에러 체크 조절(226)을 포함할 수 있다. 리스트 메커니즘(232)은 홀딩 리스트(703)를 관리하고, 콘텐츠(108)의 추정을 나타내는 코드 워드를 판별하기 위하여, 박스들(704, 706, 708, 710, 712) 및 그것들의 조합에서 설명된 처리들을 포함할 수 있다.
리스트 메커니즘(232)에 관하여, CRC 소프트 디코딩은 터보 코드 워드의 리스트를 반복적으로 발생하는데 이용될 수 있다. 홀딩 리스트(703)에서 코드 워드의 리스트를 반복적으로 발생하기 위하여, CRC 디코딩은, 터보 디코더 출력에서 CRC 검출 테스트가 실패할 때, 터보 디코딩 반복들 각각 후에 터보 디코더 귀납적 출력에 배포될 수 있다. CRC 검출은 CRC 디코더 소프트 귀납적 출력에서 다시 테스트 될 수 있고, 하드-디시젼 워드가 CRC 테스틀 패스할 때 홀딩 리스트(703)를 덧붙힐 수 있다.
CRC 검출 테스트가 터보 디코더 및 CRC 디코더 후에 배포될 수 있더라도, 디코딩은, 터보 디코더 출력에서 CRC 검출이 테스트를 패스하거나 혹은 터보 디코딩 반복 개수가 최대값에 도달할 때, 종료될 수 있다. 이러한 처리들의 조합은, CRC 검출 실패 가능성 증가를 방지할 수 있다. 나머지 반복을 위하여, CRC 디코더 출력으로부터 새로운 하드 디시젼 벡터가 CRC 검출 테스트를 패스할 때마다, 워드는 디코딩 종료없이 홀딩 리스트(703)에 덧붙혀질 수 있다.
모든 터보 디코딩 반복들이 터보 디코딩 패스들에서 CRC 검출 없이 배출된 후에, 가장 높은 우도 값을 갖는 홀딩 리스트(703)에서 코드 워드는 출력으로 선택될 수 있다. 최대 우도 값(ML) 터보 코드 워드를 찾기 위하여, 홀딩 리스트(703)의 하드 디시젼 벡터들 각각은, 적합한 인터리빙 및 비율 매칭을 한 후에 터도 코드 워드로 엔코드될 수 있다. 그 후에, 홀딩 리스트(703)의 코드 워드 가각의 신뢰성이 채널 검출 출력 LLRs 혹은 그것들의 마지막 인스턴스에 대하여 측정될 수 있다.
리스트 메커니즘(232)은 수학식 12에 따라 측정될 수 있다.
Figure 112015018538083-pat00012
N은 비율 매칭 후의 비트들의 전체 개수를 표시할 수 있다. 2(T(c)-1_는 엔코드된 비울 매칭 코드 워드로 표시될 수 있다. 비트(i)에 대한 채널 검출기(602)의 외인성 출력은 Xi로 표시될 수 있다. 리스트 메커니즘(232)은 홀딩 리스트(703)로부터 가장 큰 ML 매트릭에서 혹은 연관된 코드 워드를 선택할 수 있다.
상술 된 바와 같이, 에러 핸들링 부분(118)을 이용하는 에러 정정 프로세스(128)를 실행하기 위한 에러 체크 조절(226)을 포함하는 리스트 메커니즘(232)은 가능한 처리량 증가를 제공한다고 발견될 것이다. 여기서 코딩 이득은, CRC 검출 능력에 영향을 주지 않으면서 높은 코딩비율, 짧은 블록 길이, 혹은 그것들의 조합을 강조할 수 있다. 에러 핸들링 부분(118)을 이용하는 에러 정정 프로세스(128)를 실행하는 리스트 메커니즘(232)은, 추가 정보를 제공하거나 에러 핸들링 부분(118)을 함께 디코딩하는 것에 근거로 하여 가능한 처리량을 증가시킬 수 있다.
추가로, 도 1의 스파스 구조(132)를 포함하거나 근거로 한 도 1의 패리티 체크 파라미터(130)를 포함하는 에러 체크 조절(226)은, 에러 체크 프로세스(126)의 무결성이 에러 정정 프로세스(128)를 위한 에러 핸들링 부분(118)을 이용하는 것으로부터 구성되지 않는다고 확신할 수 있다. 또한, 리스트 메커니즘( 226)은 반복적인 처리 아키텍쳐들을 위한 CRC 검출 능력에 영향을 주지 않으면서 처리량 증가를 제공할 수 있다고 발견될 것이다.
에러 체크 조절(226)을 갖는 리스트 메커니즘(232)은, 도 3의 제 1 통신 유닛(316), 도 3의 제 2 통신 유닛(336), 도 3의 제 1 제어 유닛(312), 도 3의 제 2 제어 유닛(334), 혹은 그것들의 조합에서 혹은 이용하여 실행될 수 있다. 예를 들어, 에러 체크 조절(226)을 갖는 리스트 메커니즘(232)은 회로들, 와이어들, 패스들, 게이트들, 칩들, 명령들, 혹은 컴퓨팅 시스템(100)의 적어도 하나의 유닛에서 상술된 바와 같은 에러 체크 조절(226)을 갖는 리스트 메커니즘(232)에 따라 배열된 그것들의 조합들을 포함할 수 있다.
도 8을 참조하면, 본 발명의 실시 예에 따른 컴퓨팅 시스템의 동작 방법에 대한 플로우챠트(800)가 도시된다. 방법(800)은, 콘텐츠 및 블록에서 콘텐츠에 관련된 정보 부분을 설명하기 위한 에러 핸들링 부분을 나타내기 위한 정보 부분을 포함하는 목적 신호를 억세스하는 단계(802); 블록에서 목적 신호로부터 스파스 구조에 근거로 하여 패리티 체크 파라미터를 발생하는 단계(804); 및 블록에서 에러 핸들링 부분과 패리티 체크 파라미터를 이용하여 정보 부분을 디코딩하는 단계(806)를 포함한다.
본 발명에서 설명된 모듈들은, 도 3의 제 1 통신 유닛(316), 도 3의 제 2 통신 유닛(336), 도 3의 제 1 제어 유닛(312), 도 3의 제 2 제어 유닛(338), 혹은 그것들의 조합에서, 수동 소자들, 능동 소자들, 혹은 양쪽 모두를 포함하는 하드웨어 실행 혹은 하드웨어 가속기들일 수 있다. 또한, 모듈들은, 도 1의 제 1 장치(102), 도 1의 제 2 장치(106), 혹은, 제 1 통신 유닛(316), 제 2 통신 유닛(336), 제 1 제어 유닛(312), 제 2 제어 유닛(338), 혹은 이것들의 외부에 그것들의 조합 내의, 수동 소자들, 능동 소자들, 혹은 양쪽 모두를 포함하는 하드웨어 실행 혹은 하드웨어 가속기들일 수 있다.
도 1의 컴퓨팅 시스템(100)은 예로써 모듈의 기능들 혹은 명령을 설명되었다. 컴퓨팅 시스템(100)은 다양한 모듈들 혹은 다양한 모듈을 명령을 분할 수 있다. 예를 들어, 도 4의 억세스 모듈(402)과 콘텐츠 모듈(402)은 결합될 수 있다. 또한, 예를 들어, 검증 모듈(406)은, 콘텐츠 프로세스 모듈(404) 뒤에 하나와, 도 4의 조인트 에러 핸들링 모듈(408) 뒤에 다른 하나로서 2개의 모듈로 분리될 수 있다.
설명을 위하여, 다양한 모듈들이 제 1 장치(102), 제 2 장치(106), 혹은 그것의 조합에 의해 설명되었다. 하지만, 모듈들은 다양하게 분포할 수 있다고 이해되어야 할 것이다. 예를 들어, 다양한 모듈은 서로 다른 장치들로 실행될 수 있거나, 모듈들의 기능들인 복수의 장치들을 통해 분포될 수 있다. 또한, 실시 예에 있어서, 다양한 모듈들이 영구적인 메모리 매체에 저장될 수 있다.
좀더 상세하게, 상술 된 적어도 하나의 모듈은, 서로 다른 시스템, 서로 다른 장치, 서로 다른 사용자, 혹은 그것들의 조합에 분포하기 위하거나, 제조를 위하거나, 혹은 그것들의 조합을 위하여, 영구적인 메모리 매체에 저장될 수 있다. 또한, 좀 더 자세하게, 상술 된 모듈들은 칩, 혹은 프로세서와 같은 싱글 하드웨어 유닛, 혹은 복수의 하드웨어 유닛들을 이용하여 실행되거나 저장될 수 있다.
본 발명에 설명된 모듈들은 영구적인 컴퓨터 판독 가능 매체에 저장될 수 있다. 제 1 통신 유닛(316), 제 2 통신 유닛(336), 제 1 제어 유닛(312), 제 2 제어 유닛(332), 혹은 그것들의 조합은, 영구적인 컴퓨터 판독 가능 매체에 표시될 수 있다. 제 1 통신 유닛(316), 제 2 통신 유닛(336), 제 1 제어 유닛(312), 제 2 제어 유닛(332), 그것들의 조합, 혹은 그것들의 일부는, 제 1 장치(102), 제 2 장치(106), 혹은 그것들의 조합으로부터 제거될 수 있다. 예를 들어, 영구적인 컴퓨터 판독 가능 매체들은, 비휘발성 메모리 카드 혹은 스틱, 외부 하드 디스크 드라이브, 테이프 카세트, 혹은 광 디스크일 수 있다.
도 1의 스파스 구조(132)를 갖는 에러 핸들링 부분(118)을 이용하는 에러 정정 프로세스(128)로부터 도 1의 목적 신호(122)의 물리적 변환은, 서빙 콘텐츠를 처리하는 제 1 장치(102)의 사용자를 위하여 디스플레이 되거나 재발생되는 콘텐츠와 같이 물리 세계에 이동을 야기할 수 있다. 네비게이션 정보 혹은 셀룰러의 음성 신호와 같은 제 2 장치(102)에 재생산된 콘텐츠는, 네비게이션 정보를 따르거나 셀룰러에 다시 실행하는 것과 같이, 사용자의 이동에 영향을 줄 수 있다. 물리 세계의 이동은, 컴퓨팅 시스템(100)에 피드백함으로써 채널 측정들, 제 1 장치(102)의 지형 위치, 간섭 전송들 혹은 그것들의 조합의 변화를 야기하고, 그리고 도 1의 패리티 체크 파라미터(130)와 도 1의 에러 디코딩 출력(222)에 영향을 줄 수 있다.
결과 방법, 프로세스, 장치, 장비, 제품 및/또는 시스템은, 직접적인 비용 효율적인 복잡하고 범용성이 높고 정확하고 민감한, 그리고 효과적이며, 준비되고, 효율적이고, 그리고 경제적인 제조를 위한 구성들로 알려진 구성들을 채용하고, 적용하고, 그리고 이용함으로써 구현될 수 있다. 본 발명의 실시 예의 또 다른 중요한 측면은, 비용을 줄이고, 시스템을 단순화시키고, 성능을 향상시키는 역사적인 경향을 유익하게 제공하고 서비스 할 수 있다는 것이다.
이것들과 본 발명의 실시 예에 다른 유익한 측면은, 결과적으로 최소한 다음 단계로의 기술 상태를 추가한다.
한편, 상술 된 본 발명의 내용은 발명을 실시하기 위한 구체적인 실시 예들에 불과하다. 본 발명은 구체적이고 실제로 이용할 수 있는 수단 자체뿐 아니라, 장차 기술로 활용할 수 있는 추상적이고 개념적인 아이디어인 기술적 사상을 포함할 것이다.
100: 컴퓨팅 시스템
102: 제 1 장치
106: 제 2 장치
118: 에러 핸들링 부분
122: 목적 신호
132: 스파스 구조
128: 에러 정정 프로세스

Claims (20)

  1. 콘텐츠를 나타내는 정보 부분과 상기 콘텐츠에 관련된 상기 정보 부분을 설명하는 에러 핸들링 부분을 포함하는 목적 신호를 억세스하는 인터 디바이스 인터페이스; 및
    상기 인터 디바이스 인터페이스에 연결되고, 마이크로일렉트로닉스를 포함하는 디지털 신호 프로세서를 포함하되,
    상기 디지털 신호 프로세서는:
    상기 정보 부분을 활용하여 상기 목적 신호를 디코딩하는 것에 기초하여, 콘텐츠 프로세스 모듈을 사용하여 콘텐츠 프로세스 출력을 생성하고,
    상기 콘텐츠 프로세스 출력에 기초하여 제 1 CRC(Cyclic-Redundancy Check)를 수행하고,
    제 1 반복 카운트가 미리 결정된 임계 값을 만족할 때까지, 상기 제 1 반복 카운트에 기초하여 상기 콘텐츠 프로세스 출력의 생성 및 상기 제 1 CRC 수행을 반복함으로써 에러 체크 조정을 수행하고,
    상기 에러 핸들링 부분 및 상기 목적 신호의 스파스 구조에 기초한 패리티 체크 파라미터를 이용하여 계산되는 에러 디코딩 출력을 상기 에러 체크 조정에 기초하여 생성하고,
    제 2 반복 카운트가 디코딩 반복 임계 값을 만족할 때까지, 상기 제 2 반복 카운트에 기초하여 상기 목적 신호를 디코딩하기 위한 상기 콘텐츠 프로세스 모듈의 콘텐츠 프로세스 입력으로써 상기 에러 디코딩 출력을 제공하고,
    제 3 반복 카운트가 반복 검출 디코딩 임계 값을 만족할 때까지, 상기 제 3 반복 카운트에 기초하여 상기 목적 신호를 검출하기 위한 상기 콘텐츠 프로세스 모듈의 상기 콘텐츠 프로세스 입력으로써 상기 에러 디코딩 출력을 제공하고,
    상기 제 3 반복 카운트가 상기 반복 검출 디코딩 임계 값을 만족할 때, 상기 에러 디코딩 출력에 대한 제 2 CRC를 수행함으로써 상기 에러 디코딩 출력을 검증하고,
    상기 검증된 에러 디코딩 출력에 기초하여 상기 콘텐츠를 추정하는 컴퓨팅 시스템.
  2. 제 1 항에 있어서,
    상기 디지털 신호 프로세서는 상기 스파스 구조에 기초한 상기 패리티 체크 파라미터를 갖는 저강도 디코딩 메커니즘을 이용하여 상기 정보 부분을 디코딩하는 컴퓨팅 시스템.
  3. 제 1 항에 있어서,
    상기 디지털 신호 프로세서는:
    상기 목적 신호의 상기 정보 부분에 기초한 상기 스파스 구조를 포함하는 스파스 포맷 입력을 생성하고,
    상기 스파스 포맷 입력에 기초한 상기 패리티 체크 파라미터를 생성하는 컴퓨팅 시스템.
  4. 삭제
  5. 삭제
  6. 삭제
  7. 제 1 항에 있어서,
    상기 디지털 신호 프로세서는:
    상기 에러 핸들링 부분을 갖는 상기 정보 부분을 디코딩하는 것에 기초하여 상기 에러 디코딩 출력을 계산하고,
    상기 콘텐츠를 추정하기 위하여 상기 에러 디코딩 출력에 기초하여 상기 콘텐츠 프로세스 출력을 계산하는 컴퓨팅 시스템.
  8. 제 1 항에 있어서,
    상기 디지털 신호 프로세서는:
    상기 에러 핸들링 부분을 생성하는 것과 관련된 발생기 다항식들에 기초하여 에러 부분 코드워드를 생성하고,
    상기 에러 부분 코드워드에 기초하여 상기 패리티 체크 파라미터를 생성하는 컴퓨팅 시스템.
  9. 제 1 항에 있어서,
    상기 디지털 신호 프로세서는 상기 에러 핸들링 부분과 상기 스파스 구조에 기초한 상기 패리티 체크 파라미터를 갖는 상기 정보 부분을 디코딩하기 위하여 댐프드 빌리프 프로파게이션(damped-belief propagation) 메커니즘을 이용하여 상기 콘텐츠를 추정하는 컴퓨팅 시스템.
  10. 삭제
  11. 컴퓨팅 시스템의 동작 방법에 있어서:
    콘텐츠를 나타내는 정보 부분과 상기 콘텐츠에 관련된 상기 정보 부분을 설명하는 에러 핸들링 부분을 포함하는 인터 디바이스 인터페이스를 통하여 목적 신호를 억세스하는 단계;
    상기 정보 부분을 활용하여 상기 목적 신호를 디코딩하는 것에 기초하여, 콘텐츠 프로세스 모듈을 사용하여 디지털 신호 프로세서가 콘텐츠 프로세스 출력을 생성하는 단계;
    상기 콘텐츠 프로세스 출력에 기초하여 상기 디지털 신호 프로세서가 제 1 CRC(Cycle-Redundancy Check)를 수행하는 단계;
    제 1 반복 카운트가 미리 결정된 임계 값을 만족할 때까지, 상기 디지털 신호 프로세서가 상기 제 1 반복 카운트에 기초하여 상기 콘텐츠 프로세스 출력의 생성 및 상기 제 1 CRC 수행을 반복함으로써 에러 체크 조정을 수행하는 단계;
    상기 디지털 신호 프로세서가 상기 에러 핸들링 부분 및 상기 목적 신호로부터 스파스 구조에 기초하여 생성되는 패리티 체크 파라미터를 이용하여 계산되는 에러 디코딩 출력을 상기 에러 체크 조정에 기초하여 생성하는 단계;
    제 2 반복 카운트가 디코딩 반복 임계 값을 만족할 때까지, 상기 디지털 신호 프로세서가 상기 제 2 반복 카운트에 기초하여 상기 목적 신호를 디코딩하기 위한 상기 콘텐츠 프로세스 모듈의 콘텐츠 프로세스 입력으로써 상기 에러 디코딩 출력을 제공하는 단계;
    제 3 반복 카운트가 반복 검출 디코딩 임계 값을 만족할 때까지, 상기 디지털 신호 프로세서가 상기 제 3 반복 카운트에 기초하여 상기 목적 신호를 검출하기 위한 상기 콘텐츠 프로세스 모듈의 상기 콘텐츠 프로세스 입력으로써 상기 에러 디코딩 출력을 제공하는 단계;
    상기 제 3 반복 카운트가 상기 반복 검출 디코딩 임계 값을 만족할 때, 상기 디지털 신호 프로세서가 상기 에러 디코딩 출력에 대한 제 2 CRC를 수행함으로써 상기 에러 디코딩 출력을 검증하는 단계;및
    상기 검증된 에러 디코딩 출력에 기초하여 상기 디지털 신호 프로세서가 상기 콘텐츠를 추정하는 단계를 포함하는 동작 방법.
  12. 제 11 항에 있어서,
    상기 콘텐츠를 추정하는 단계는,
    상기 스파스 구조에 기초한 상기 패리티 체크 파라미터를 갖는 저강도 디코딩 메커니즘을 이용하여 상기 정보 부분을 디코딩하는 단계를 포함하는 동작 방법.
  13. 제 11 항에 있어서,
    상기 패리티 체크 파라미터를 생성하는 단계는,
    상기 목적 신호의 상기 정보 부분에 기초한 상기 스파스 구조를 포함하는 스파스 포맷 입력을 생성하는 단계; 및
    상기 스파스 포맷 입력에 기초하여 상기 패리티 체크 파라미터를 생성하는 단계를 포함하는 동작 방법.
  14. 삭제
  15. 삭제
  16. 컴퓨팅 시스템을 위한 명령들을 포함하는 비 일시적 컴퓨터 판독 가능 매체의 동작 방법에 있어서:
    콘텐츠를 나타내는 정보 부분과 상기 콘텐츠에 관련된 상기 정보 부분을 설명하는 에러 핸들링 부분을 포함하는 목적 신호를 억세스하는 단계;
    상기 정보 부분을 활용하여 상기 목적 신호를 디코딩하는 것에 기초하여, 콘텐츠 프로세스 모듈을 사용하여 콘텐츠 프로세스 출력을 생성하는 단계;
    상기 콘텐츠 프로세스 출력에 기초하여 제 1 CRC(Cycle-Redundancy Check)를 수행하는 단계;
    제 1 반복 카운트가 미리 결정된 임계 값을 만족할 때까지, 상기 제 1 반복 카운트에 기초하여 상기 콘텐츠 프로세스 출력의 생성 및 상기 제 1 CRC 수행을 반복함으로써 에러 체크 조정을 수행하는 단계;
    상기 에러 핸들링 부분 및 상기 목적 신호로부터 스파스 구조에 기초하여 생성되는 패리티 체크 파라미터를 이용하여 계산되는 에러 디코딩 출력을 상기 에러 체크 조정에 기초하여 생성하는 단계;
    제 2 반복 카운트가 디코딩 반복 임계 값을 만족할 때까지, 상기 제 2 반복 카운트에 기초하여 상기 목적 신호를 디코딩하기 위한 상기 콘텐츠 프로세스 모듈의 콘텐츠 프로세스 입력으로써 상기 에러 디코딩 출력을 제공하는 단계;
    제 3 반복 카운트가 반복 검출 디코딩 임계 값을 만족할 때까지, 상기 제 3 반복 카운트에 기초하여 상기 목적 신호를 검출하기 위한 상기 콘텐츠 프로세스 모듈의 상기 콘텐츠 프로세스 입력으로써 상기 에러 디코딩 출력을 제공하는 단계;
    상기 제 3 반복 카운트가 상기 반복 검출 디코딩 임계 값을 만족할 때, 상기 에러 디코딩 출력에 대한 제 2 CRC를 수행함으로써 상기 에러 디코딩 출력을 검증하는 단계;및
    상기 검증된 에러 디코딩 출력에 기초하여 상기 콘텐츠를 추정하는 단계를 포함하는 동작 방법.
  17. 제 16 항에 있어서,
    상기 콘텐츠를 추정하는 단계는,
    상기 스파스 구조에 기초한 상기 패리티 체크 파라미터를 갖는 저강도 디코딩 메커니즘을 이용하여 상기 정보 부분을 디코딩하는 단계를 포함하는 동작 방법.
  18. 제 16 항에 있어서,
    상기 패리티 체크 파라미터를 생성하는 단계는,
    상기 목적 신호의 상기 정보 부분에 기초한 상기 스파스 구조를 포함하는 스파스 포맷 입력을 생성하는 단계; 및
    상기 스파스 포맷 입력에 기초하여 상기 패리티 체크 파라미터를 생성하는 단계를 포함하는 동작 방법.
  19. 삭제
  20. 삭제
KR1020150026284A 2013-08-26 2015-02-25 에러 핸들링 메커니즘을 갖는 컴퓨팅 시스템 및 그것의 동작 방법 KR102276461B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201361870029P 2013-08-26 2013-08-26
US14/465,694 2014-08-21
US14/465,694 US10108483B2 (en) 2013-08-26 2014-08-21 Computing system with error handling mechanism and method of operation thereof

Publications (2)

Publication Number Publication Date
KR20160023541A KR20160023541A (ko) 2016-03-03
KR102276461B1 true KR102276461B1 (ko) 2021-07-13

Family

ID=52481515

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020150026284A KR102276461B1 (ko) 2013-08-26 2015-02-25 에러 핸들링 메커니즘을 갖는 컴퓨팅 시스템 및 그것의 동작 방법

Country Status (3)

Country Link
US (1) US10108483B2 (ko)
KR (1) KR102276461B1 (ko)
CN (1) CN105988883B (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3073660B1 (en) * 2013-11-20 2020-06-24 Huawei Technologies Co., Ltd. Polar code processing method and device
US20160080004A1 (en) * 2014-09-11 2016-03-17 Kabushiki Kaisha Toshiba Memory controller and decoding method
CN109728877B (zh) * 2017-10-27 2021-07-27 上海朗帛通信技术有限公司 一种用于无线通信的用户设备、基站中的方法和装置
EP3994858B1 (en) * 2020-05-06 2023-08-02 Huawei Technologies Co., Ltd. Device and method for decoding and equalizing
US11967342B2 (en) * 2022-09-14 2024-04-23 International Business Machines Corporation Header decoding mechanism for tape storage

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140153625A1 (en) 2012-12-03 2014-06-05 Digital PowerRadio, LLC Systems and Methods for Advanced Iterative Decoding and Channel Estimation of Concatenated Coding Systems

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001047124A2 (en) * 1999-12-20 2001-06-28 Research In Motion Limited Hybrid automatic repeat request system and method
FR2804260B1 (fr) 2000-01-21 2002-10-18 Mitsubishi Electric Inf Tech Procede de transmission numerique de type a codage correcteur d'erreurs
US7349496B2 (en) 2003-06-27 2008-03-25 Nortel Networks Limited Fast space-time decoding using soft demapping with table look-up
US7168030B2 (en) 2003-10-17 2007-01-23 Telefonaktiebolaget Lm Ericsson (Publ) Turbo code decoder with parity information update
CN100593911C (zh) * 2004-07-19 2010-03-10 德克萨斯仪器股份有限公司 一种对通信系统中接收到的层数据进行解码的方法和系统
US7181676B2 (en) * 2004-07-19 2007-02-20 Texas Instruments Incorporated Layered decoding approach for low density parity check (LDPC) codes
CN101087180B (zh) * 2006-06-08 2012-05-23 华为技术有限公司 无线信道的译码方法、装置及其应用
KR100943602B1 (ko) * 2006-06-27 2010-02-24 삼성전자주식회사 통신 시스템에서 신호 수신 장치 및 방법
US20080080542A1 (en) 2006-09-28 2008-04-03 Analog Devices, Inc. Architecture for downlink receiver bit rate processor
US20080080444A1 (en) 2006-09-28 2008-04-03 Analog Devices, Inc. Transport channel buffer organization in downlink receiver bit rate processor
US8358988B2 (en) 2006-09-28 2013-01-22 Mediatek Inc. Interface between chip rate processing and bit rate processing in wireless downlink receiver
US8358987B2 (en) 2006-09-28 2013-01-22 Mediatek Inc. Re-quantization in downlink receiver bit rate processor
US20090077457A1 (en) 2007-09-19 2009-03-19 Rajaram Ramesh Iterative decoding of blocks with cyclic redundancy checks
KR101503133B1 (ko) * 2008-02-26 2015-03-18 삼성전자주식회사 저밀도 패리티 검사 부호를 사용하는 통신 시스템에서 채널 부호/복호 방법 및 장치
CN103348618A (zh) 2011-01-26 2013-10-09 捷讯研究有限公司 Crc分量码的软解码
WO2012159188A1 (en) 2011-05-20 2012-11-29 Research In Motion Limited Hybrid automatic repeat request using multiple receiver- coordinated transmitters
WO2013019560A2 (en) * 2011-07-29 2013-02-07 Sandisk Technologies Inc. Checksum using sums of permutation sub-matrices
US9037942B2 (en) 2012-01-24 2015-05-19 Broadcom Corporation Modified joint source channel decoder
US8938663B2 (en) 2012-01-24 2015-01-20 Broadcom Corporation Modem architecture for joint source channel decoding
CN103001735A (zh) * 2012-11-06 2013-03-27 电子科技大学 一种用于中继系统的编码与译码方法及信号处理方法
US20150358648A1 (en) * 2014-06-09 2015-12-10 Allen LeRoy Limberg Digital television broadcasting system using coded orthogonal frequency-division modulation and multilevel LDPC convolutional coding

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20140153625A1 (en) 2012-12-03 2014-06-05 Digital PowerRadio, LLC Systems and Methods for Advanced Iterative Decoding and Channel Estimation of Concatenated Coding Systems

Also Published As

Publication number Publication date
US20150058694A1 (en) 2015-02-26
CN105988883B (zh) 2020-11-17
CN105988883A (zh) 2016-10-05
US10108483B2 (en) 2018-10-23
KR20160023541A (ko) 2016-03-03

Similar Documents

Publication Publication Date Title
EP2936721B1 (en) Communication system with compound coding mechanism and method of operation thereof
US10361718B2 (en) Apparatus and method for encoding with cyclic redundancy check and polar code
US9602241B2 (en) Computing system with polar processing mechanism and method of operation thereof
KR102276461B1 (ko) 에러 핸들링 메커니즘을 갖는 컴퓨팅 시스템 및 그것의 동작 방법
KR102374715B1 (ko) 채널 폴라리제이션 메커니즘으로 데이터를 인코딩 및 디코딩하는 시스템
US8015468B2 (en) Channel estimation and fixed thresholds for multi-threshold decoding of low-density parity check codes
US9954643B2 (en) Communication system with repeat-response combining mechanism and method of operation thereof
US20090222711A1 (en) Generalized Multi-Threshold Decoder for Low-Density Parity Check Codes
KR102067521B1 (ko) 통신 계층 극대화 메커니즘을 갖는 통신 시스템 및 그 동작 방법
JP7497100B2 (ja) 連結極性調整畳み込み符号を用いたデータの符号化および復号化のための方法および装置
KR102166411B1 (ko) 화이트닝 피드백 메커니즘을 사용하는 통신 시스템 및 그 동작 방법
EP2842240A1 (en) Communication system with blind decoding mechanism and method of operation thereof
EP2862293B1 (en) Iterative detection and decoding for a mimo communication system
US8942323B2 (en) Communication system with signal-to-noise ratio adjustment mechanism and method of operation thereof
KR102148327B1 (ko) 반복 응답 처리 메커니즘을 갖는 통신 시스템 및 그 동작 방법
KR102117981B1 (ko) 수신기 최적화 메커니즘을 사용하는 통신 시스템 및 그 동작 방법
CN114025390B (zh) 无线通讯方法以及无线通讯装置

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant