KR102103716B1 - 반복 검출기 및 디코더를 사용하는 통신 시스템 및 그 동작 방법 - Google Patents

반복 검출기 및 디코더를 사용하는 통신 시스템 및 그 동작 방법 Download PDF

Info

Publication number
KR102103716B1
KR102103716B1 KR1020157000917A KR20157000917A KR102103716B1 KR 102103716 B1 KR102103716 B1 KR 102103716B1 KR 1020157000917 A KR1020157000917 A KR 1020157000917A KR 20157000917 A KR20157000917 A KR 20157000917A KR 102103716 B1 KR102103716 B1 KR 102103716B1
Authority
KR
South Korea
Prior art keywords
decoder
detector
information
module
external
Prior art date
Application number
KR1020157000917A
Other languages
English (en)
Other versions
KR20150023750A (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 KR20150023750A publication Critical patent/KR20150023750A/ko
Application granted granted Critical
Publication of KR102103716B1 publication Critical patent/KR102103716B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03006Arrangements for removing intersymbol interference
    • H04L25/03171Arrangements involving maximum a posteriori probability [MAP] detection
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/25Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM]
    • H03M13/255Error detection or forward error correction by signal space coding, i.e. adding redundancy in the signal constellation, e.g. Trellis Coded Modulation [TCM] with Low Density Parity Check [LDPC] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • H03M13/2707Simple row-column interleaver, i.e. pure block interleaving
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2703Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques the interleaver involving at least two directions
    • H03M13/271Row-column interleaver with permutations, e.g. block interleaving with inter-row, inter-column, intra-row or intra-column permutations
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2732Convolutional interleaver; Interleavers using shift-registers or delay lines like, e.g. Ramsey type interleaver
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/27Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes using interleaving techniques
    • H03M13/2778Interleaver using block-wise interleaving, e.g. the interleaving matrix is sub-divided into sub-matrices and the permutation is performed in blocks of sub-matrices
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes using block codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2957Turbo codes and decoding
    • H03M13/296Particular turbo code structure
    • H03M13/2966Turbo codes concatenated with another code, e.g. an outer block code
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3723Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using means or methods for the initialisation of the decoder
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3746Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with iterative decoding
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3746Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with iterative decoding
    • H03M13/3753Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 with iterative decoding using iteration stopping criteria
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/63Joint error correction and other techniques
    • H03M13/6306Error control coding in combination with Automatic Repeat reQuest [ARQ] and diversity transmission, e.g. coding schemes for the multiple transmission of the same information or the transmission of incremental redundancy
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/63Joint error correction and other techniques
    • H03M13/6331Error control coding in combination with equalisation
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6522Intended application, e.g. transmission or communication standard
    • H03M13/65253GPP LTE including E-UTRA
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/65Purpose and implementation aspects
    • H03M13/6577Representation or format of variables, register sizes or word-lengths and quantization
    • H03M13/658Scaling by multiplication or division
    • 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
    • H04L1/005Iterative decoding, including iteration between signal detection and decoding operation
    • 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
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/152Bose-Chaudhuri-Hocquenghem [BCH] codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/03Shaping networks in transmitter or receiver, e.g. adaptive shaping networks
    • H04L25/03891Spatial equalizers

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Engineering (AREA)
  • Mathematical Physics (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

통신 시스템의 동작 방법에 있어서, 수신 신호로부터 계산되는, 귀납적-검출기-데이터, 검출기-외부-정보, 귀납적-디코더-데이터, 디코더-외부-값, 혹은 그들의 조합을 유지하는 과정과; 상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합으로부터 연역적-디코더-정보 혹은 연역적-검출기-정보를 결정하는 과정과; 디바이스를 통한 통신을 위해 상기 연연적-디코더-정보 혹은 상기 연연적-검출기-정보를 사용하여 상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합을 조정하는 과정을 포함함을 특징으로 한다.

Description

반복 검출기 및 디코더를 사용하는 통신 시스템 및 그 동작 방법{COMMUNICATION SYSTEM WITH ITERATIVE DETECTOR AND DECODER AND METHOD OF OPERATION THEREOF}
본 발명은 통신 시스템에 관한 것으로서, 특히 통신 신호들을 검출 및 디코딩하는 시스템에 관한 것이다.
현대 휴대용 장치 소비자 및 네비게이션 시스템(navigations system)들, 셀룰라 전화기들, 휴대 디지털 보조 기기들 및 결합 디바이스들과 같은 산업용 전자 장치들은 증가하는 레벨(level)들의 기능을 제공하여 이동 통신을 포함하는 현대 생활을 지원하고 있다. 사용자들이 이동 통신 기술에 대한 성장과 함께 더욱 많은 권한을 가지게 됨에 따라, 새로운 패러다임들 및 기존의 패러다임들은 이런 새로운 디바이스 공간을 이용하기 시작한다.
현대 생활에서 정보에 대해 더욱 증가하는 요구는 사용자들이 언제라도 증가하는 데이터 레이트들로 정보에 접속하도록 하는 것을 필요로 한다. 하지만, 이동 통신에서 사용되는 신호들은 상기 억세스 가능한 데이터의 품질 및 속도에 영향을 미치는, 많은 소스(source)들로부터의 다양한 타입(type)들의 간섭들을 효율적으로 경험하게 된다.
따라서, 반복 검출기 및 디코더를 사용하는 통신 시스템에 대한 필요성이 여전히 존재한다. 상기 증가되는 사용자 요구들에 대한 측면에서, 이런 문제점들에 대한 해결 방안들을 찾는 것은 점점 더 중요해지고 있다. 증가되는 소비자 기대들 및 시장에서의 의미있는 제품 차별화에 대한 감소하는 기회들과 함께, 보다 증가하는 상업 경쟁 압력들의 관점에서, 이런 문제점들에 대한 해결 방안들을 찾는 것은 보다 중요하다. 게다가, 비용을 절감하고, 효율성 및 성능을 개선시키고, 경쟁 압력들을 만족시켜야 하는 요구는 이런 문제점들에 대한 해결 방안들을 찾는 것에 대한 중요한 필요성에 대해 보다 큰 긴급성을 부여한다.
이런 문제점들에 대한 해결 방안들이 오래 동안 찾아져 왔지만, 이전의 개발들은 어떤 해결 방안들도 제시하거나 혹은 제안하지 못했고, 따라서 이런 문제점들에 대한 해결 방안들은 해당 기술 분야의 당업자들을 오래 동안 회피해왔다.
본 발명은 수신 신호로부터 계산되는, 귀납적-검출기-데이터, 검출기-외부-정보, 귀납적-디코더-데이터, 디코더-외부-값, 혹은 그들의 조합을 유지하는 과정과; 상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합으로부터 연역적-디코더-정보 혹은 연역적-검출기-정보를 결정하는 과정과; 디바이스를 통한 통신을 위해 상기 연연적-디코더-정보 혹은 상기 연연적-검출기-정보를 사용하여 상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합을 조정하는 과정을 포함하는 통신 시스템의 동작 방법을 제공한다.
본 발명은 귀납적-검출기-데이터, 검출기-외부-정보, 귀납적-디코더-데이터, 디코더-외부-값, 혹은 그들의 조합을 유지하는 억세스 모듈(access module)과; 상기 억세스 모듈에 연결되고, 상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합으로부터 연역적-검출기-정보를 결정하는 사전-검출 모듈과, 상기 연역적-검출기-정보를 사용하여 상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 혹은 그들의 조합을 조정하는 검출기-계산 모듈을 포함하는 검출기 모듈과; 상기 억세스 모듈에 연결되고, 상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합으로부터 연역적-디코더-정보를 결정하는 사전-디코딩 모듈과, 디바이스를 통한 통신을 위해 상기 연역적-디코더-정보를 사용하여 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합을 조정하는 디코더-계산 모듈을 포함하는 디코더 모듈을 포함하는 통신 시스템을 제공한다.
본 발명의 특정 실시예들은 상기에서 설명한 바와 같은 과정들 혹은 엘리먼트들에 추가하여, 혹은 상기에서 설명한 바와 같은 과정들 혹은 엘리먼트들을 대신하여 다른 과정들 혹은 엘리먼트들을 가진다. 상기 과정들 혹은 엘리먼트들은 첨부 도면들을 참조하여 설명되는 하기의 구체적인 설명을 읽음으로써 해당 기술 분야의 당업자들에게 자명해질 것이다.
도 1은 본 발명의 일 실시예에서 공유-억세스 반복 검출 및 디코딩 메커니즘을 사용하는 통신 시스템을 도시하고 있는 도면이다.
도 2는 상기 통신 시스템의 바람직한 블록 다이아그램을 도시하고 있는 도면이다.
도 3은 제1 실시예에서의 상기 통신 시스템의 기능 블록 다이아그램을 도시하고 있는 도면이다.
도 4는 상기 제1실시예에서의 상기 통신 시스템의 제어 플로우의 예제를 도시하고 있는 도면이다.
도 5는 제2 실시예에서의 통신 시스템의 기능 블록 다이아그램을 도시하고 있는 도면이다.
도 6은 상기 제2실시예에서의 상기 통신 시스템의 제어 플로우의 예제를 도시하고 있는 도면이다.
도 7은 본 발명의 또 다른 실시예에서 통신 시스템의 동작 방법의 플로우 차트를 도시하고 있는 도면이다.
하기의 실시예들은 본 발명을 해당 기술 분야의 당업자들이 구현하고 또한 사용할 수 있도록 충분히 구체적으로 설명되고 있다. 다른 실시예들은 본 발명을 기반으로 분명해질 것이며, 그 시스템, 혹은 프로세스, 혹은 기계적인 변경들은 본 발명의 범위로부터 벗어남이 없이 구현될 수 있다.
하기의 설명에서, 많은, 특정한 구체적인 사항들은 본 발명의 이해를 통해 제공되도록 주어진다. 하지만, 본 발명은 이런 특정한 구체적인 사항들 없이도 실현될 수 있다는 것은 자명할 것이다. 본 발명을 모호하게 하는 것을 방지하기 위해서, 일부 공지의 회로들과, 시스템 구성들 및 프로세스 과정들은 구체적으로 게시되지 않는다.
상기 시스템의 실시예들을 도시하고 있는 도면들은 반도식적이며, 크기가 조정되지 않으며, 특히 차원들 중 일부는 도면들에서 도시의 간략성을 위해서 존재하며, 도면들에서 과장되게 도시되어 있다. 유사하게, 도시의 편의를 위해 도면들에서의 관점들이 일반적으로 유사한 방향들을 도시하고 있다고 할지라도, 도면들에서의 이런 묘사는 대부분에 대해서 임의적이다. 일반적으로, 본 발명은 어떤 방향에서라도 동작될 수 있다.
여기서 칭해지는 용어 “모듈(module)은 상기 용어가 사용되는 컨텍스트(context)에 따라 소프트웨어(software), 혹은 하드웨어(hardware), 혹은 그 조합을 포함할 수 있다. 일 예로, 상기 소트프웨어는 기계 코드(machine code)와, 펌웨어(firmware)와, 삽입 코드(embedded code)와, 어플리케이션 소프트웨어(application software)가 될 수 있다. 또한, 일 예로, 상기 하드웨어는 회로, 혹은 프로세서(processor), 혹은 컴퓨터(computer), 혹은 집적 회로(integrated circuit), 혹은 집적 회로 코어(integrated circuit core)들, 혹은 압력 센서(sensor), 혹은 관성 센서, 혹은 미세 전자 기계 시스템(micro electro mechanical system: MEMS), 혹은 패시브 디바이스(passive device)들, 혹은 그 조합이 될 수 있다.
여기서 사용되는 상기 용어 “프로세싱(processing)”은 신호들을 필터링(filtering)하는 것과, 심볼(symbol)들을 디코딩하는 것과, 데이터 구조들을 조립하는 것과, 데이터 구조들을 전달하는 것과, 데이터 구조들을 조작하는 것과, 데이터 구조들을 리딩(reading)하는 것을 포함한다. 데이터 구조들은 파일(file)들과, 입력 데이터와, 계산된 데이터와 같은 시스템 생성 데이터와, 프로그램 데이터(program data)가 되도록 정의된다.
이제부터 도 1을 참조하면, 본 발명의 일 실시예에서의 공유-억세스 반복 검출 및 디코딩 메카니즘(decoding mechanism)을 사용하는 통신 시스템(100)이 도시되어 있다. 상기 통신 시스템(100)은 네트워크(network)(104)에 연결되어 있는, 셀룰라 전화기 혹은 노트북 컴퓨터(notebook computer)와 같은 이동 단말기(102)를 포함한다. 상기 네트워크(104)는 디바이스(device)들간의 통신을 가능하게 하기 위해 서로에게 연결된 유선들, 유선 혹은 무선 통신 디바이스들, 혹은 그들의 조합의 시스템으로 정의된다.
일 예로, 상기 네트워크(104)는 무선 통신을 가능하게 하기 위해 사용되는 기지국들, 타워(tower)들, 안테나, 전화 네트워크, 서버들, 혹은 클라이언트 디바이스(client device)들을 가지는 조합 무선 셀룰라 전화 네트워크가 될 수 있다. 또한, 일 예로, 상기 네트워크(104)는 근거리 통신 네트워크(local area network)들에 대한 유선 혹은 무선 라우터(router)들, 이더넷(Ethernet) 케이블(cable)들, 컴퓨터들, 혹은 서버들의 조합이 될 수 있다.
상기 네트워크(104)는 무선 신호들을 수신하고, 송신하고, 릴레이(relay)하고, 프로세싱하고, 혹은 그들의 조합을 수행하도록 사용되는 기지국(106)을 포함할 수 있다. 상기 기지국(106)은 상기 이동 단말기(102)로, 또한 상기 이동 단말기(102)로부터 통신 신호들을 송신하고, 수신하고, 릴레이함으로써 상기 이동 단말기(102)와의 통신을 가능하게 할 수 있다. 상기 이동 단말기(102)는 상기 기지국(106)을 통해 상기 네트워크(104)에 연결될 수 있다.
일 예로, 상기 기지국(106)은 랩탑 컴퓨터(laptop computer) 혹은 스마트 폰(smart phone)과 같은 상기 이동 단말기(102)로 신호들을 송신하거나 혹은 신호들을 수신하기 위해 사용되는 셀 타워(cell tower), 무선 라우터(wireless router), 안테나, 혹은 그들의 조합이 될 수 있다. 상기 기지국(106)은 상기 네트워크(104)를 통해 상기 신호를 릴레이하여 다른 사용자 단말기, 서버, 혹은 그들의 조합과의 통신을 가능하게 할 수 있다.
상기 기지국(106)은 전화 호 혹은 웹 사이트(website)의 음성 신호들과 같은 통신 신호들을 송신하기 위해 사용될 수 있다. 또한, 상기 기지국(106)은 기준 신호들을 상기 이동 단말기(102)로 송신할 수 있거나, 혹은 미리 결정되어 있는 트레이닝(training) 신호들을 브로드캐스팅함으로써 상기 기준 신호들을 상기 이동 단말기(102)로 송신할 수 있다. 상기 이동 단말기(102)는 상기 기지국(106)으로부터 신호들을 수신하여 프로세싱할 수 있다.
코드 분할 다중 접속(code division multiple access: CDMA), 직교 주파수 분할 다중 접속(orthogonal frequency-division multiple access: OFDMA), 혹은 3세대 파트너쉽 프로젝트(Third Generation Partnership Project: 3GPP), 혹은 롱 텀 에볼루션(Long Term Evolution: LTE), 혹은 4세대(fourth generation: 4G) 전화 통신과 같은 통신 방법을 기반으로, 상기 통신 신호들은 또한 상기 통신되는 정보에 삽입되는 기준 신호들을 가질 수도 있다. 상기 기준 신호들은 규칙적인 시구간, 주파수, 코드, 혹은 그들의 조합에서 상기 통신되는 정보 내에 삽입될 수 있다.
상기 이동 단말기(102)는 채널(108)을 통해 상기 기지국(106)과 통신할 수 있다. 상기 채널(108)은 무선, 유선, 혹은 그들의 조합이 될 수 있다. 상기 채널(108)은 또한 반복기들, 증폭기들, 혹은 그들의 조합을 포함할 수 있다.
일 예로, 상기 채널(108)은 신호들의 송신을 위해 사용되는, 주파수, 타임 슬럿(time slot), 패킷 지정, 채널, 코드, 혹은 그들의 조합을 혹은 송신 레이트(transmission rate), 혹은 채널 코드(channel code), 혹은 그 조합을 포함할 수 있다. 또한, 일 예로, 상기 채널(103)은 무선 환경에서 유선들 혹은 굴절들 및 장애물에 의해 초래되는 반사 및 손실과 같은 상기 매체의 특성을 포함할 수 있다.
상기 기지국(106)은 송신 신호(110)를 가질 수 있다. 상기 송신 신호(110)는 상기 이동 단말기(102), 다른 사용자들 혹은 수신기들, 혹은 그들의 조합으로 송신되는 상기 정보를 포함할 수 있다. 상기 송신 신호(110)는 미리 결정되어 있는 포맷(format)들에 따라 포맷화될 수 있다. 일 예로, 상기 송신 신호(110)는 다중화 방식, 변조, 신호 세기, 캐리어 주파수(carrier frequency), 동기 심볼들 혹은 코드 워드(code word)들, 패리티(parity) 정보와 같은 에러 검사 혹은 정정 비트들, 혹은 그들의 조합을 가질 수 있다.
도시의 목적들을 위해서, 상기 기지국(106)은 신호들을 송신하고, 상기 이동 단말기(102)는 상기 송신 신호들을 수신 및 응답하는 것으로 설명될 것이다. 하지만, 상기 이동 단말기(102) 및 기지국(106) 둘 다는 각각 신호들을 송신 및 수신할 수 있다는 것이 이해될 것이다.
상기 통신 시스템(100)은 다수개의 안테나들을 통해 상기 다양한 사용자들과 통신하기 위해 다중-입력 다중-출력 (multiple-input and multiple-output: MIMO) 방식을 채택할 수 있다. 상기 MIMO 방식에서 상기 송신 신호(110)를 송신한 상기 통신 시스템(100)은 메인 계층(112) 및 개별 계층(separate layer)(114)을 가질 수 있다.
상기 메인 계층(112)은 특정 안테나 혹은 안테나들의 특정 집합을 통해 통신되는 정보의 집합일 수 있다. 상기 개별 계층(114)은 정보의 집합일 수 있고, 즉 상기 메인 계층(112)의 정보의 집합과 동일하거나 혹은 다르고, 상기 정보의 집합은 상기 메인 계층(112)의 정보의 집합과 다른 안테나 혹은 안테나들의 집합을 통해 통신된다.
도시의 목적들을 위해서, 상기 송신 신호(110)는 하나의 상기 메인 계층(112)과 별도 계층(114) 각각을 가진다고 설명될 것이다. 그러나, 상기 송신 신호(110)는 다른 개수의 계층들을 가질 수 있다는 것이 이해될 것이다. 또한, 상기 송신 신호(110)는 상기 이동 단말기(102), 다른 사용자, 혹은 그들의 조합에 전용인 하나 이상의 계층을 가질 수 있다는 것이 이해될 것이다.
또한, 도시의 목적들을 위해서, 상기 이동 단말기(102)에서 안테나들의 개수는 상기 이동 단말기(102)에게 송신하기 위해 사용되는 상기 기지국(106)에서의 안테나들의 개수보다 크거나 혹은 같다고 설명될 것이다. 하지만, 상기 이동 단말기(102)에서 안테나들의 개수는 상기 기지국(106)의 안테나들의 개수보다 작을 수 있다는 것이 이해될 것이다.
상기 이동 단말기(102)는 수신 신호(116)를 수신할 수 있다. 상기 수신 신호(116)는 상기 이동 단말기(102)에서 인지된 전체적인 신호로서 정의된다. 상기 이동 단말기(102)는 사운드(sound)들을 디스플레이하거나 혹은 생성하거나, 혹은 그들의 조합을 수행하는 것과 같이 상기 수신 신호(116)에 포함되어 있는 상기 정보를 프로세싱하고, 상기 정보를 상기 사용자에게 릴레이(relay)할 수 있다.
상기 수신 신호(116)는 상기 송신 신호(110)가 상기 채널(108)을 통해 전달된 후 상기 이동 단말기(102)에서 수신되는 상기 송신 신호(110)가 될 수 있다. 상기 송신 신호(110)는 왜곡(118)을 경험할 수 있고, 따라서 상기 수신 신호(116)는 상기 송신 신호(110)와 동일하지 않다. 상기 왜곡(118)은 채널 이득, 반사들, 굴절들, 지연 확산, 위상 쉬프트(phase shift), 상기 계층들간의 간섭, 다른 소스(source)들로부터의 신호, 혹은 그들의 결합에 의해 초래될 수 있다.
일 예로, 상기 송신 신호(110)의 메인 계층(112)에서 상기 정보는 반원과 비슷한 주파수 응답을 가질 수 있다. 상기 왜곡(118)은 상기 메인 계층(112)에서 상기 정보가 상기 반원 모양을 열화시키고 손실시키는 것을 초래하게 할 수 있다. 또한, 상기 이동 단말기(102)는 상기 메인 계층(112)에서의 상기 정보를 만을 따로 알지는 못할 것이지만, 상기 메인 계층(112)에서의 정보는 역시 왜곡된 상기 별도 계층(114)에서의 정보와 결합될 것이다.
상기 왜곡(118)은 상기 송신 신호(110)를 변경할 수 있고, 상기 이동 단말기(102)는 잘못된 데이터를 수신할 수 있다. 상기 이동 단말기(102)가 상기 신호를 검출 혹은 디코딩할 수 없을 경우들에서, 상기 이동 단말기는 부정적 인지(negative acknowledgement)(120)를 송신할 수 있다.
상기 부정적 인지(120)는 잘못된 데이터의 검출, 상기 수신 신호(116)를 검출 혹은 디코딩하는 것의 실패, 혹은 그들의 조합을 나타내는 미리 결정된 메시지가 될 수 있다. 상기 부정적 인지(120)는 상기 통신 시스템(100), 소프트웨어 생산자, 하드웨어 생산자, 혹은 그들의 조합에 의해 미리 결정되어 있는 비트, 심볼, 데이터 워드(data word), 혹은 그들의 조합이 될 수 있다.
상기 기지국(106)은 상기 부정적 인지(120)를 수신할 때 상기 송신을 반복할 수 있다. 상기 기지국(106)은 정확하게 동일한 집합의 신호들 혹은 다른 집합의 신호들을 재송신할 수 있다. 상기 재송신 및 상기 부정적 인지(120)는 상기 이동 단말기(102)가 상기 부정적 인지(120)를 송신하지 않을 때까지 반복할 수 있다. 상기 재송신들의 횟수는 또한 미리 결정된 양에 따라 제한될 수 있다.
또한, 상기 기지국(106)은 코드 워드(122)를 사용하여 상기 송신 신호(110)를 송신할 수 있다. 상기 코드 워드(122)는 상기 송신 신호(110) 내의 정보의 인식된 그룹화로서 정의된다. 상기 코드 워드(122)는 상기 송신 신호(110) 내에서 알려진 길이, 알려진 위치, 혹은 둘 다를 가지는 비트들 혹은 심볼들의 시퀀스(sequence)가 될 수 있다. 일 예로, 상기 코드 워드(122)는 상기 송신 신호(110) 내에서 각 기준 위치들간의 바이트, 두 개의 심볼들의 그룹화, 혹은 데이터의 그룹이 될 수 있다.
상기 송신 신호(110)는 고유한 값들을 가지는 상기 코드 워드(122)의 다수의 인스턴스(instance)들의 시퀀스(sequence)가 될 수 있다. 상기 코드 워드들의 시퀀스는 송신을 위해 의도된 데이터를 통신할 수 있다.
상기 코드 워드(122)는 송신 목적들을 위해 통신을 위해 의도되는 데이터의 부분 혹은 그들의 재배열된 조합이 될 수 있다. 상기 코드 워드(122)는 비트 혹은 비트들의 조합을 나타내는 신호에 대해 상기 진폭, 주파수, 위상, 혹은 그 조합을 변경하는 알려진 방법을 사용하여 통신을 위해 의도되는 데이터로부터 결정될 수 있다. 상기 코드 워드(122)는 심볼, 기준 데이터, 동기화 필드(field), 통신 페이로드(payload) 데이터, 에러 검사 혹은 정정 데이터, 혹은 그들의 조합이 될 수 있다.
상기 코드 워드(122)는 패리티 비트(parity bit)(124) 혹은 마지막 패리티(latter parity)(126)를 사용하여 추정되고, 정정되고, 혹은 그들의 조합이 수행될 수 있다. 상기 패리티 비트(124)는 상기 수신 신호(116)에 포함되어 있는 데이터의 일부를 추정하거나 혹은 정정하기 위해서 에러 검사 혹은 순방향 에러 정정(forward error correcting) 정보가 될 수 있다. 상기 마지막 패리티(126)는 상기 수신 신호(116)에 포함되어 있는 데이터의 다른 부분을 추정 혹은 정정하기 위한 에러 검사 혹은 포워드 에러 정정 정보가 될 수 있다. 일 예로, 상기 패리티 비트(124)는 상기 코드 워드(122)의 처음 1/2과 페어(pair)화될 수 있고, 상기 마지막 패리티(126)는 상기 코드 워드(122)의 나머지 1/2과 페어화될 수 있다.
상기 패리티 비트(124), 마지막 패리티(126), 혹은 둘 다는 상기 코드 워드(122) 내에 혹은 상기 코드 워드(122)와 별개인 상기 송신 신호(110) 내에 포함될 수 있다. 또한, 상기 패리티 비트(124), 마지막 패리티(126), 혹은 둘 다는 상기 수신 신호(116)를 사용하여 상기 이동 단말기(102)에 의해 생성될 수 있다. 상기 이동 단말기(102)는 상기 패리티 비트(124), 마지막 패리티(126), 혹은 둘 다를 사용하여 상기 코드 워드(122)에 대한 추정들, 디코딩, 정정, 혹은 그 결합된 동작을 인증할 수 있다.
상기 송신 신호(110)는 상기 코드 워드(122)의 독립적인 값들의 시퀀스가 될 수 있다. 상기 코드 워드(122)는 상기 메인 계층(112) 및 상기 별도 계층(114)에서 조합된 정보를 둘 다를 가질 수 있다. 일 예로, 상기 코드 워드(122)는 상기 코드 워드(122)의 첫 번째 1/2에서 상기 메인 계층(112)으로부터의 정보와 상기 코드 워드(122)의 두 번째 1/2에서 상기 개별 계층(114)으로부터의 정보를 가질 수 있다. 또한, 일 예로, 상기 송신 신호(110)는 상기 메인 계층(112)으로부터의 정보를 가지는 상기 코드 워드(122)의 한 인스턴스 다음에 상기 개별 계층(114)으로부터의 정보를 가지는 상기 코드 워드(122)의 개별 인스턴스를 가질 수 있다.
이제부터 도 2를 참조하면, 도 2에는 상기 통신 시스템(100)의 바람직한 블록 다이아그램이 도시되어 있다. 상기 통신 시스템(100)은 상기 이동 단말기(102)와, 상기 채널(108)과, 상기 기지국(106)을 포함할 수 있다. 상기 이동 단말기(102)는 상기 채널(108)을 통해 상기 기지국(106) 혹은 다른 사용자들 과 같은, 도 1의 상기 네트워크(104) 내의 다른 주체와 통신할 수 있다.
도시의 목적들을 위해서, 상기 통신 시스템(100)은 상기 채널(108)을 통해 상기 기지국(106)과 상호 동작하는 이동 단말기(102)를 가지는 것으로 설명될 것이다. 상기 이동 단말기(102)는 도 1의 상기 네트워크(104)에서 다른 단말기들 및 상기 네트워크(104)에서 다른 컴포넌트(component)들과 통신할 수 있다.
일 예로, 상기 이동 단말기(102)는 핸드오버들을 위해 다수의 기지국들과 통신할 수 있다. 또한, 일 예로, 상기 이동 단말기(102)는 상기 기지국(106) 및 상기 네트워크(104)를 통해 다른 지역들의 셀룰라 전화기들과 통신할 수 있다.
상기 이동 단말기(102)는 상기 채널(108)을 통해 이동 송신(208)에서 정보를 상기 기지국(106)으로 송신할 수 있다. 상기 기지국(106)은 상기 채널(108)을 통해 단말기 송신(210)에서 정보를 상기 이동 단말기(102)로 송신할 수 있다.
본 발명의 이런 실시예에서 설명의 간략성을 위해서, 상기 단말기(102)는 클라이언트 디바이스(client device)로서 설명될 것이고, 상기 기지국(106)은 통신 타워를 가지는 통신 기지국으로서 설명될 것이다. 본 발명은 상기 디바이스들의 타입에 대한 이런 선택에 제한되지는 않는다. 상기 선택은 본 발명의 일 예이다.
상기 이동 단말기(102)는 제1 제어 유닛(212)과, 제1 저장 유닛(214)과, 제1 통신 유닛(216)과, 제1 사용자 인터페이스(user interface)(218)와, 위치 유닛(220)을 포함할 수 있다. 상기 제1 제어 유닛(212)은 제1 제어 인터페이스(222)를 포함할 수 있다. 상기 제1 저장 유닛(214)은 제1 저장 인터페이스(224)를 포함할 수 있다.
상기 제1 제어 유닛(212)은 제1 소프트웨어(226)를 실행시켜 상기 통신 시스템(100)의 인텔리전스(intelligence)를 제공할 수 있다. 상기 제1 제어 유닛(212)은 상기 제1 사용자 인터페이스(218)를 동작시켜 상기 통신 시스템(100)에 의해 생성되는 정보를 디스플레이할 수 있다. 상기 제1 제어 유닛(212)은 또한 상기 위치 유닛(220)으로부터 위치 정보를 수신하는 것을 포함하는, 상기 통신 시스템(100)의 다른 기능들에 대해 상기 제1 소프트웨어(226)를 실행시킬 수 있다. 상기 제1 제어 유닛(212)은 또한 상기 제1 통신 유닛(216)을 통해 도 1의 상기 채널(108)과의 상호 동작을 위해 상기 제1 소프트웨어(226)를 실행시킬 수 있다.
상기 제1 제어 유닛(212)은 다수의 다른 방식들로 구현될 수 있다. 일 예로, 상기 제1 제어 유닛(212)은 프로세서, 삽입 프로세서, 마이크로 프로세서(microprocessor), 하드웨어 제어 로직(hardware control logic), 하드웨어 유한 상태 머신(finite state machine), 혹은 디지털 신호 프로세서(digital signal processor), 혹은 그들의 조합이 될 수 있다.
상기 제1 제어 유닛(212)은 상기 제1 제어 인터페이스(222)를 포함할 수 있다. 상기 제1 제어 인터페이스(222)는 상기 이동 단말기(102)에서 상기 제1 제어 유닛(212)과 다른 기능 유닛들간의 통신을 위해 사용될 수 있다. 상기 제1 제어 인터페이스(222)는 또한 상기 이동 단말기(102)의 외부에 존재하는 통신을 위해서 사용될 수 있다.
상기 제1 제어 인터페이스(222)는 상기 다른 기능 유닛들로부터 혹은 외부 소스들로부터 정보를 수신할 수 있거나, 혹은 상기 다른 기능 유닛들, 혹은 외부의 데스티네이션(destination)들로 정보를 송신할 수 있다. 상기 외부 소스들 및 상기 외부 데스티네이션들은 상기 이동 단말기(102)의 외부의 소스들 및 데스티네이션들을 나타낸다.
상기 제1 제어 인터페이스(222)는 다른 방식들로 구현될 수 있으며, 어떤 기능 유닛들 혹은 외부 유닛들이 상기 제1 제어 인터페이스(222)와 인터페이스되고 있는지를 기반으로 다른 구현들을 포함할 수 있다. 일 예로, 상기 제1 제어 인터페이스(222)는 압력 센서, 관성 센서, 미세 전자 머신 시스템(micro electro mechanical system), 광 회로, 도파관들, 무선 회로, 유선 회로, 혹은 그들의 조합으로 구현될 수 있다.
상기 제1 저장 유닛(214)은 상기 제1 소프트웨어(226)를 저장할 수 있다. 상기 제1 저장 유닛(214)은 또한 광고들, 관심 포인트(point)들, 네비게이션 라우팅 엔트리(navigation routing entry)들, 혹은 그 조합들과 같은 관련 정보를 저장할 수 있다.
상기 제1 저장 유닛(214)은 휘발성 메모리(volatile memory), 비휘발성 메모리(nonvolatile memory), 내부 메모리, 외부 메모리, 혹은 그 조합 등이 될 수 있다. 일 예로, 상기 제1 저장 유닛(214)은 비휘발성 랜덤 억세스 메모리(non-volatile random access memory), 플래쉬 메모리(Flash memory), 디스크 저장 장치와 같은 비 휘발성 저장 장치, 혹은 고정 랜덤 억세스 메모리(static random access memory)와 같은 휘발성 저장 장치가 될 수 있다.
상기 제1 저장 유닛(214)은 상기 제1 저장 인터페이스(224)를 포함할 수 있다. 상기 제1 저장 인터페이스(224)는 상기 이동 단말기(102)에서 상기 위치 유닛(220)과 다른 기능 유닛들간의 통신을 위해 사용될 수 있다. 또한, 상기 제1 저장 인터페이스(224)는 상기 이동 단말기(102)의 외부에 존재하는 통신을 위해 사용될 수 있다.
상기 제1 저장 인터페이스(224)는 다른 기능 유닛들로부터 혹은 외부 소스들로부터 정보를 수신할 수 있거나, 혹은 상기 다른 기능 유닛들로 혹은 외부 데스티네이션들로 정보를 송신할 수 있다. 상기 외부 소스들 및 상기 외부 데스티네이션들은 상기 이동 단말기(102)의 외부의 소스들 및 데스티네이션들을 나타낸다.
상기 제1 저장 인터페이스(224)는 어떤 기능 유닛들 혹은 외부 유닛들이 상기 제1 저장 유닛(214)과 인터페이스하고 있는지를 기반으로 다른 구현들을 포함할 수 있다. 상기 제1 저장 인터페이스(224)는 상기 제1 제어 인터페이스(222)의 구현과 유사한 기술들 및 기법들로 구현될 수 있다.
상기 제1 통신 유닛(216)은 상기 이동 단말기(102)로의 외부 통신 및 상기 이동 단말기(102)로부터의 외부 통신을 가능하게 할 수 있다. 일 예로, 상기 제1 통신 유닛(216)은 상기 이동 단말기(102)가 상기 기지국(106), 주변 장치 디바이스 혹은 컴퓨터 데스크탑(computer desktop)과 같은 부가 장치, 및 상기 채널(108)과 통신하는 것을 허용할 수 있다.
상기 제1 통신 유닛(216)은 또한 상기 이동 단말기(102)가 상기 채널(108)의 일부로서는 기능하지만, 상기 채널(108)에 대한 엔드 포인트(end point) 혹은 터미널 유닛(terminal unit)으로 한정되지는 않도록 하는 것을 허여하는 통신 허브(communication hub)로서 기능할 수 있다. 상기 제1 통신 유닛(216)은 상기 채널(108)과의 상호 동작을 위해, 마이크로일렉트로닉스(microelectronics) 혹은 안테나와 같은 액티브(active) 컴포넌트 및 패시브(passive) 컴포넌트를 포함할 수 있다.
상기 제1 통신 유닛(216)은 제1 통신 인터페이스(228)를 포함할 수 있다. 상기 제1 통신 인터페이스(228)는 상기 제1 통신 유닛(216)과 상기 이동 단말기(102)에서의 다른 기능 유닛들간의 통신을 위해 사용될 수 있다. 상기 제1 통신 인터페이스(228)는 상기 다른 기능 유닛들로부터 정보를 수신할 수 있거나, 혹은 상기 다른 기능 유닛들로 정보를 송신할 수 있다.
상기 제1 통신 인터페이스(228)는 어떤 기능 유닛들이 상기 제1 통신 유닛(216)과 인터페이스하고 있는지를 기반으로 다른 구현들을 포함할 수 있다. 상기 제1 통신 인터페이스(228)는 상기 제1 제어 인터페이스(222)의 구현과 유사한 기술들 및 기법들로 구현될 수 있다.
상기 제1 사용자 인터페이스(218)는 사용자가 상기 이동 단말기(102)와 인터페이스 및 상호 동작하는 것을 허여한다. 상기 제1 사용자 인터페이스(218)는 입력 디바이스 및 출력 디바이스를 포함할 수 있다. 상기 제1 사용자 인터페이스(218)의 입력 디바이스의 예들은 데이터 및 통신 입력들을 제공하는, 키패드(keypad), 터치패드(touchpad), 소프트 키(soft-key)들, 키보드(keyboard), 마이크로 폰(microphone), 혹은 그들의 조합을 포함할 수 있다.
상기 제1 사용자 인터페이스(218)는 제1 디스플레이 인터페이스(230)를 포함할 수 있다. 상기 제1 사용자 인터페이스(218)의 출력 디바이스의 예들은 상기 제1 디스플레이 인터페이스(230)를 포함할 수 있다. 상기 제1 디스플레이 인터페이스(230)는 디스플레이, 프로젝터(projector), 비디오 스크린(video screen), 스피커(speaker), 혹은 그들의 조합을 포함할 수 있다.
상기 위치 유닛(220)은 예들로서, 상기 이동 단말기(102)의 위치 정보, 현재의 헤딩(heading), 현재의 가속도, 현재의 속도를 생성할 수 있다. 상기 위치 유닛(220)은 많은 방식들로 구현될 수 있다. 일 예로, 상기 위치 유닛(220)은 적어도 GPS의 일부, 관성 네비게이션 시스템, 셀룰라-타워 위치 시스템, 압력 위치 시스템, 혹은 그들의 조합으로서 기능할 수 있다. 또한, 일 예로, 상기 위치 유닛(220)은 가속기 혹은 GPS 수신기와 같은 컴포넌트들을 사용할 수 있다.
상기 위치 유닛(220)은 위치 인터페이스(232)를 포함할 수 있다. 상기 위치 인터페이스(232)는 상기 위치 유닛(220)과 상기 이동 단말기(102)의 다른 기능 유닛들간의 통신을 위해 사용될 수 있다. 상기 위치 인터페이스(232)는 또한 상기 이동 단말기(102)의 외부에 존재하는 통신을 위해 사용될 수 있다.
상기 위치 인터페이스(232)는 다른 기능 유닛들로부터 혹은 외부 소스들로부터 정보를 수신할 수 있거나, 혹은 상기 다른 기능 유닛들 혹은 외부 데스티네이션들로 정보를 송신할 수 있다. 상기 외부 소스들 및 외부 데스티네이션들은 상기 이동 단말기(102)의 외부의 소스들 및 데스티네이션들을 나타낸다.
상기 위치 인터페이스(232)는 어떤 기능 유닛들 혹은 외부 유닛들이 상기 위치 유닛(220)과 인터페이스하고 있는지를 기반으로 다른 구현들을 포함할 수 있다. 상기 위치 인터페이스(232)는 상기 제1 제어 유닛(212)의 구현과 유사한 기술들 및 기법들을 사용하여 구현될 수 있다.
도시의 목적들을 위해서, 상기 이동 단말기(102)는 상기 통신 시스템(100)이 다른 부분을 가질 수 있다는 것이 이해될 지라도, 상기 제1 제어 유닛(212), 상기 제1 저장 유닛(214), 상기 제1 사용자 인터페이스(218), 상기 제1 통신 유닛(216), 상기 위치 유닛(220)을 가지는 부분으로 도시된다. 일 예로, 상기 제1 소프트웨어(226)는 다르게 분할되어 상기 제1 소프트웨어(226)의 일부 혹은 전부가 상기 제1 제어 유닛(212), 상기 위치 유닛(220), 상기 제1 통신 유닛(216)에 존재하도록 할 수 있다. 또한, 상기 이동 단말기(102)는 명료성을 위해서 도 2에 도시되지 않은 다른 기능 유닛들을 포함할 수 있다.
상기 이동 단말기(102)에서의 상기 기능 유닛들은 개별적으로, 그리고 다른 기능 유닛들에 독립적으로 동작할 수 있다. 상기 이동 단말기(102)는 상기 기지국(106) 및 상기 채널(108)로부터 개별적으로, 그리고 독립적으로 동작할 수 있다.
상기 기지국(106)은 상기 이동 단말기(102)와 다수의 디바이스 실시예에서 본 발명을 구현하기 위해 최적화될 수 있다. 상기 기지국(106)은 상기 이동 단말기(102)와 비교하여 추가적인 혹은 더 높은 성능 프로세싱 전력을 제공할 수 있다. 상기 기지국(106)은 제2 제어 유닛(234), 제2 통신 유닛(236), 제2 사용자 인터페이스(238)를 포함할 수 있다.
상기 제2 사용자 인터페이스(238)는 사용자가 상기 기지국(106)과 인터페이스 및 상호 동작하도록 허여한다. 상기 제2 사용자 인터페이스(238)는 입력 디바이스 및 출력 디바이스를 포함할 수 있다. 상기 제2 사용자 인터페이스(238)의 입력 디바이스의 예들은 데이터 및 통신 입력들을 제공하는, 키패드, 터치패드, 소프트 키들, 키보드, 마이크로 폰, 혹은 그들의 조합을 포함할 수 있다. 상기 제2 사용자 인터페이스(238)의 출력 디바이스의 예들은 제2 디스플레이 인터페이스(240)를 포함할 수 있다. 상기 제2 디스플레이 인터페이스(240)는 디스플레이, 프로젝터(projector), 비디오 스크린(video screen), 스피커(speaker), 혹은 그들의 조합을 포함할 수 있다.
상기 제2 제어 유닛(234)은 제2 소프트웨어(242)를 실행시켜 상기 통신 시스템(100)의 기지국(106)의 인텔리전스를 제공할 수 있다. 상기 제2 소프트웨어(242)는 상기 제1 소프트웨어(226)와 함께 동작할 수 있다. 상기 제2 제어 유닛(234)은 상기 제1 제어 유닛(212)과 비교하여 추가적인 성능을 제공할 수 있다.
상기 제2 제어 유닛(234)은 상기 제2 사용자 인터페이스(238)를 동작시켜 정보를 디스플레이할 수 있다. 상기 제2 제어 유닛(234)은 또한 상기 제2 통신 유닛(236)을 동작시켜 상기 채널(108)을 통해 상기 이동 단말기(102)와 동신하는 것을 포함하는, 상기 통신 시스템(00)의 다른 기능들에 대한 상기 제2 소프트웨어(242)를 실행시킬 수 있다.
상기 제2 제어 유닛(234)은 다수의 다른 방식들로 구현될 수 있다. 일 예로, 상기 제2 제어 유닛(234)은 프로세서, 삽입 프로세서, 마이크로 프로세서, 하드웨어 제어 로직, 하드웨어 유한 스테이트 머신, 디지털 신호 프로세서, 혹은 그들의 조합이 될 수 있다.
상기 제2 제어 유닛(234)은 제2 제어기 인터페이스(244)를 포함할 수 있다. 상기 제2 제어기 인터페이스(244)는 상기 기지국(106)에서 상기 제2 제어 유닛(234)과 다른 기능 유닛들간의 통신을 위해 사용될 수 있다. 상기 제2 제어기 인터페이스(144)는 또한 상기 기지국(106)의 외부에 존재하는 통신을 위해 사용될 수 있다.
상기 제2 제어기 인터페이스(244)는 상기 다른 기능 유닛들로부터 혹은 외부 소스들로부터 정보를 수신할 수 있거나, 혹은 상기 다른 기능 유닛들, 혹은 외부의 데스티네이션들로 정보를 송신할 수 있다. 상기 외부 소스들 및 상기 외부 데스티네이션들은 상기 기지국(106)의 외부의 소스들 및 데스티네이션들을 나타낸다.
상기 제2 제어기 인터페이스(244)는 다른 방식들로 구현될 수 있으며, 어떤 기능 유닛들 혹은 외부 유닛들이 상기 제2 제어기 인터페이스(244)와 인터페이스되고 있는지를 기반으로 다른 구현들을 포함할 수 있다. 일 예로, 상기 제2 제어기 인터페이스(244)는 압력 센서, 관성 센서, 미세 전자 머신 시스템, 광 회로, 도파관들, 무선 회로, 유선 회로, 혹은 그 조합으로 구현될 수 있다.
상기 제2 저장 유닛(246)은 상기 제2 소프트웨어(242)를 저장할 수 있다. 상기 제2 저장 유닛(246)은 또한 전화 번호들과, 식별 정보, 코드, 주파수, 혹은 타임 슬럿과 같은 다수의 억세스에 대한 정보, 광고들, 관심 포인트들, 네비게이션 라우팅 엔트리들, 혹은 그들의 조합과 같은 관련 정보를 저장할 수 있다. 상기 제2 저장 유닛(246)은 상기 제1 저장 유닛(214)을 보완하기 위해 추가적인 저장 용량을 제공하도록 그 사이즈(size)가 결정될 수 있다.
도시의 목적들을 위해서, 상기 제2 저장 유닛(246)은 단일 엘리먼트로서 도시되어 있지만, 상기 제2 저장 유닛(246)은 저장 엘리먼트들의 분산이 될 수 있다는 것이 이해될 것이다. 또한, 도시의 목적들을 위해서, 상기 통신 시스템(100)은 상기 제2 저장 유닛(246)이 단일 하이어라키(hierarchy) 저장 시스템으로 도시되어 있지만, 상기 통신 시스템(100)은 다른 구성으로 상기 제2 저장 유닛(246)을 가질 수 있다는 것이 이해될 것이다. 일 예로, 상기 제2 저장 유닛(246)은 다른 레벨들의 캐싱(caching), 메인 메모리(main memory), 로테이팅 미디어(rotating media), 혹은 오프라인(off-line) 저장 장치를 포함하는 메모리 하이어라키 시스템을 형성하는 다른 저장 기술들을 사용하여 형성될 수 있다.
상기 제2 저장 유닛(246)은 휘발성 메모리, 비휘발성 메모리, 내부 메모리, 외부 메모리, 혹은 그들의 조합이 될 수 있다. 일 예로, 상기 제2 저장 유닛(246)은 비휘발성 랜덤 억세스 메모리, 플래쉬 메모리, 디스크 저장 장치와 같은 비 휘발성 저장 장치, 혹은 고정 랜덤 억세스 메모리와 같은 휘발성 저장 장치가 될 수 있다.
상기 제2 저장 유닛(246)은 제2 저장 인터페이스(248)를 포함할 수 있다. 상기 제2 저장 인터페이스(248)는 상기 기지국(106)에서 상기 위치 유닛(220)과 다른 기능 유닛들간의 통신을 위해 사용될 수 있다. 상기 제2 저장 인터페이스(248)는 또한 상기 기지국(106)의 외부에 존재하는 통신을 위해 사용될 수 있다.
상기 제2 저장 인터페이스(248)는 상기 다른 기능 유닛들로부터 혹은 외부 소스들로부터 정보를 수신할 수 있거나, 혹은 상기 다른 기능 유닛들, 혹은 외부의 데스티네이션들로 정보를 송신할 수 있다. 상기 외부 소스들 및 상기 외부 데스티네이션들은 상기 기지국(106)의 외부의 소스들 및 데스티네이션들을 나타낸다.
상기 제2 저장 인터페이스(248)는 어떤 기능 유닛들 혹은 외부 유닛들이 상기 제2 저장 유닛(246)과 인터페이스하고 있는지를 기반으로 다른 구현들을 포함할 수 있다. 상기 제2 저장 인터페이스(248)는 상기 제2 제어기 인터페이스(244)의 구현과 유사한 기술들 및 기법들로 구현될 수 있다.
상기 제2 통신 유닛(236)은 상기 기지국(106)으로의 외부 통신 및 상기 기지국(106)으로부터의 외부 통신을 가능하게 할 수 있다. 일 예로, 상기 제2 통신 유닛(236)은 상기 기지국(106)이 상기 채널(108)을 통해 상기 이동 단말기(102)와 통신하는 것을 허용할 수 있다.
상기 제2 통신 유닛(236)은 상기 기지국(106)이 상기 채널(108)의 일부로서는 기능하지만, 상기 채널(108)에 대한 엔드 포인트 혹은 터미널 유닛으로 한정되지는 않도록 하는 것을 허여하는 통신 허브로서 기능할 수 있다. 상기 제2 통신 유닛(236)은 상기 채널(108)과의 상호 동작을 위해 마이크로일렉트로닉스 혹은 안테나와 같은 액티브 컴포넌트 및 패시브 컴포넌트를 포함할 수 있다.
상기 제2 통신 유닛(236)은 제2 통신 인터페이스(250)를 포함할 수 있다. 상기 제2 통신 인터페이스(250)는 상기 기지국(106)에서 상기 제2 통신 유닛(236)과 다른 기능 유닛들간의 통신을 위해 사용될 수 있다. 상기 제2 통신 인터페이스(250)는 상기 다른 기능 유닛들로부터 정보를 수신할 수 있거나, 혹은 상기 다른 기능 유닛들로 정보를 송신할 수 있다.
상기 제2 통신 인터페이스(250)는 어떤 기능 유닛들이 상기 제2 통신 유닛(236)과 인터페이스하고 있는지를 기반으로 다른 구현들을 포함할 수 있다. 상기 제2 통신 인터페이스(250)는 상기 제2 제어기 인터페이스(244)의 구현과 유사한 기술들 및 기법들로 구현될 수 있다.
상기 제1 통신 유닛(216)은 상기 채널(108)과 연결되어 상기 이동 송신(208)에서 상기 기지국(106)으로 정보를 송신할 수 있다. 상기 기지국(106)은 상기 채널(108)의 이동 송신(208)으로부터 상기 제2 통신 유닛(236)에서 정보를 수신할 수 있다.
상기 제2 통신 유닛(236)은 상기 채널(108)과 연결되어 상기 단말기 송신(210)에서 상기 이동 단말기(102)로 정보를 송신할 수 있다. 상기 이동 단말기(102)는 상기 채널(108)의 단말기 송신(210)으로부터 상기 제1 통신 유닛(216)에서 정보를 수신할 수 있다. 상기 통신 시스템(100)은 상기 제1 제어 유닛(212), 상기 제2 제어 유닛(234), 혹은 그들의 조합에 의해 실행될 수 있다.
도시의 목적들을 위해서, 상기 기지국(106)은 상기 제2 사용자 인터페이스(238)와, 상기 제2 저장 유닛(246)과, 상기 제2 제어 유닛(234)과, 상기 제2 통신 유닛(236)을 가지는 부분으로 도시되어 있지만, 상기 기지국(106)은 다른 부분을 가질 수 있다는 것이 이해될 것이다. 일 예로, 상기 제2 소프트웨어(242)는 다르게 분할되어 상기 제2 소프트웨어(242)의 일부 혹은 전부는 상기 제2 제어 유닛(234)과 상기 제2 통신 유닛(236)에 존재하도록 할 수 있다. 또한, 상기 기지국(106)은 명료성을 위해서 도 2에 도시되어 있지 않은 다른 기능 유닛들을 포함할 수 있다.
상기 기지국(106)에서의 기능 유닛들은 상기 다른 기능 유닛들과 개별적으로, 그리고 독립적으로 동작할 수 있다. 상기 기지국(106)은 상기 이동 단말기(102) 및 상기 채널(108)과 개별적으로, 그리고 독립적으로 동작할 수 있다.
도시의 목적들을 위해서, 상기 통신 시스템(100)은 상기 이동 단말기(102) 및 상기 기지국(106)의 동작으로서 설명된다. 상기 이동 단말기(102) 및 상기 기지국(106)은 상기 통신 시스템(100)의 모듈들 및 기능들 중 어느 것이라도 동작시킬 수 있다는 것이 이해될 것이다. 일 예로, 상기 이동 단말기(102)는 상기 위치 유닛(220)을 동작시킨다고 설명되어 있지만, 상기 기지국(106)이 상기 위치 영역(220)을 동작시킬 수 있다는 것이 이해될 것이다.
이제부터 도 3을 참조하면, 제1실시예에서 상기 통신 시스템(100)의 기능 블록 다이아그램이 도시되어 있다. 상기 통신 시스템(100)은 채널 분석 모듈(302), 검출기 모듈(304), 디코더 모듈(306) 및 억세스 모듈(308)을 가질 수 있다. 상기 채널 분석 모듈(302)은 상기 억세스 모듈(308)에 연결될 수 있는, 상기 검출기 모듈(304)에 연결될 수 있다. 상기 디코더 모듈(306)은 또한 상기 억세스 모듈(308)에 연결될 수 있다.
도시의 목적들을 위해서, 상기 통신 시스템(100)은 검출을 위한 하나의 모듈과 디코딩을 위한 하나의 모듈을 가지는 것으로 도시되어 있다. 하지만, 상기 통신 시스템(100)은 도 1의 상기 수신 신호(116)를 개별적으로 검출하거나 혹은 각각 디코딩하는 다수의 모듈들 혹은 그 부분들을 가질 수 있다는 것이 이해될 것이다. 상기 통신 시스템(100)은 또한 도 1의 상기 수신 신호(116)에 대한 검출 혹은 디코딩 프로세스(decoding process)를 공유하는 다수의 모듈들 혹은 그 부분들을 가질 수 있다.
상기 채널 분석 모듈(302)은 도 1의 상기 채널(108)을 통해 전달되는 신호의 특성을 특징화한다. 상기 채널 분석 모듈(302)은 도 1의 상기 왜곡(118)을 계산함으로써 상기 채널(108)을 특징화할 수 있다.
상기 채널 분석 모듈(302)은 상기 수신 신호(116) 내의 상기 기준 신호 부분을 분석함으로써 상기 왜곡(118)을 계산할 수 있다. 상기 채널 분석 모듈(302)은 공지된 기순 신호와 상기 수신 신호(116)의 기준 신호 부분간의 진폭, 위상, 주파수, 신호 쉐이프(shape), 전력, 혹은 그들의 조합과 같은 상기 차이를 계산할 수 있다.
또한, 상기 채널 분석 모듈(302)은 상기 왜곡(118)에 따라 상기 채널(108)에 대한 모델(model)을 선택함으로써 상기 채널(108)을 특징화할 수 있다. 상기 통신 시스템(100)은 도시적 도시 혹은 플랫 페이딩(flat fading)과 같은 상기 채널(108)에 대한 모델들의 선택을 가질 수 있다. 상기 왜곡(118)의 모델들 및 그 상응하는 값들은 상기 통신 시스템(100), 상기 하드웨어 생산자, 상기 소프트웨어 생산자, 혹은 그들의 조합에 의해 미리 결정될 수 있다.
상기 채널 분석 모듈(302)은 또한 상기 수신 신호(116)의 상기 신호 대 잡음비(signal-to-noise ratio: SNR)를 계산함으로써 상기 채널을 특징화할 수 있다. 상기 채널 분석 모듈(302)은 상기 수신 신호(116)로부터 상기 신호 부분을 먼저 구분함으로써 상기 SNR을 계산할 수 있다. 상기 채널 분석 모듈(302)은 그리고 나서 상기 신호 부분과 상기 수신 신호의 나머지 부분들 둘 다 내에서 상기 전력을 계산할 수 있다. 상기 채널 분석 모듈(302)은 상기 수신 신호(116)의 신호 부분의 전력과 상기 수신 신호(116)의 나머지 부분의 전력간의 비율을 계산함으로써 상기 SNR을 계산할 수 있다.
상기 통신 시스템(100)은 상기 채널 분석 모듈(302), 상기 검출기 모듈(304), 상기 디코더 모듈(306), 상기 억세스 모듈(308), 혹은 그들의 조합에 연관되는 하드웨어 레이팅(hardware rating)(310)을 가질 수 있다. 상기 하드웨어 레이팅(310)은 상기 해당하는 하드웨어 부분과 연관되는 정확도의 측정값일 수 있다. 일 예로, 상기 하드웨어 레이팅(310)은 상기 하드웨어 컴포넌트(hardware component)들에 고유한 계산들 혹은 샘플링(sampling) 혹은 에러 허용 오차(tolerance)를 위해 사용되는 비트들의 개수일 수 있다.
도시의 목적들을 위해, 상기 하드웨어 레이팅(310)은 상기 채널 분석 모듈(302) 내에 도시될 것이다. 하지만, 상기 하드웨어 레이팅(310)은 상기 통신 시스템에서 상기 모듈들 각각에 대한 측정값이 될 수 있다는 것이 이해될 것이다. 또한, 상기 하드웨어 레이팅(310)은 상기 개별적인 모듈들, 상기 모듈들의 집합, 혹은 그 조합의 정확도를 나타낼 수 있다는 것이 이해될 것이다.
상기 채널 분석 모듈(302)은 도 2의 상기 제1 통신 유닛(216), 도 2의 상기 제1 제어 유닛(212), 혹은 그들의 조합을 사용하여 상기 채널(108)을 특징화할 수 있다. 상기 채널 분석 모듈(302)은 도 2의 상기 제1 저장 유닛(214)에 상기 특징화의 결과들을 저장할 수 있다. 또한, 상기 채널 분석 모듈(302)은 상기 수신 신호(116), 상기 왜곡(118) 및 다른 정보를 포함하는 상기 채널 특징화를 상기 검출기 모듈(304)로 전달할 수 있다.
상기 검출기 모듈(304)은 상기 수신 신호(116) 내에 포함되어 있는 개별 심볼들을 분석한다. 상기 검출기 모듈(304)은 상기 계층들 혹은 서브 캐리어(subcarrier)들에서 상기 심볼들을 분석할 수 있다. 일 예로, 상기 검출기 모듈(304)은 도 1의 상기 메인 계층(112) 및 도 1의 상기 개별 계층(114)에서 상기 정보에 의해 나타내지는, MIMO 통신에서 상기 안테나들 각각을 통해 수신되는 상기 수신 신호(116)를 사용하여 상기 개별 심볼들을 분석할 수 있다.
상기 검출기 모듈(304)은 다양한 구현들을 사용할 수 있다. 일 예로, 상기 검출기 모듈(304)은 최대 우도 검출기, 최소 평균 제곱 에러 추정기 혹은 제로-포싱(zero-forcing) 추정기와 같은 선형 추정기, 혹은 간섭 제거 검출기가 될 수 있다. 상기 검출기 모듈(304)은 비 간섭 제거 검출기가 될 수 있고, 따라서, 도 1의 상기 메인 계층(112)의 검출은 상기 개별 계층(114)을 제거하지 않고, 도 1의 상기 개별 계층(114)과 함께 수행될 수 있다.
상기 검출기 모듈(304)은 상기 분석된 심볼에 상응하게 상기 코딩 방법 혹은 도 1의 상기 코드 워드(122)와 상관없이 상기 심볼들에 관해 상기 수신 신호(116)를 분석할 수 있다. 상기 검출기 모듈(304)은 상기 변조 방식을 기반으로, 두 개 내지 여섯 개의 비트들의 정보에 상응할 수 있는 하나의 심볼을 한번에 분석할 수 있다.
상기 검출기 모듈(304)은 사전-검출 모듈(312) 및 검출기-계산 모듈(314)을 가질 수 있다. 상기 검출기 모듈(304)은 상기 사전-검출 모듈(312) 및 검출기-계산 모듈(314)을 사용하여 연역적-검출기-정보(316), 귀납적-검출기-데이터(318), 검출기-외부-정보(320)를 프로세싱함으로써 상기 수신 신호(116)를 분석할 수 있다.
상기 검출기 모듈(304)은 상기 사전-검출 모듈(312)을 사용하여 상기 수신 신호(116)를 분석할 수 있다. 상기 사전-검출 모듈(312)은 상기 억세스 모듈(308)로부터 전달되는, 혹은 상기 억세스 모듈(308)에 저장되어 있는, 상기 귀납적 검출기-데이터(318), 상기 검출기-외부-정보(320), 상기 디코더 모듈(306)로부터의 결과들, 혹은 그들의 조합으로부터 상기 연역적 검출기-정보(316)를 결정한다.
상기 사전-검출 모듈(312)은 상기 억세스 모듈(308)로부터 전달된 값을 상기 연역적 검출기-정보(316)로 결정함으로써 상기 연역적 검출기-정보(316)를 결정할 수 있다. 상기 억세스 모듈(308)에 관한 구체적인 내용들은 하기에서 설명될 것이다. 상기 사전-검출 모듈(312)은 또한 상기에서 설명한 바와 같이 초기화 상황, 리셋 상황, 혹은 핸드오버 상황 동안 상기 미리 결정된 값으로 상기 연역적 검출기-정보(316)를 초기화함으로써 상기 연역적 검출기-정보(316)를 결정할 수 있다.
상기 검출기 모듈(304)은 또한 상기 수신 신호(116)에서 상기 분석된 심볼에 상응하게 도 1의 송신 신호(110)에서 송신될 심볼을 추정함으로써 상기 검출기-계산 모듈(314)을 사용하여 상기 수신 신호(116)를 분석할 수 있다. 상기 검출기-계산 모듈(314)은 상기 연역적 검출기-정보(316)를 사용하여 상기 귀납적 검출기-데이터(318), 상기 검출기-외부-정보(320), 혹은 그들의 조합을 계산 및 조정한다.
상기 연역적 검출기-정보(316)는 상기 송신 신호(110), 상기 수신 신호(116), 그 심볼들 혹은 비트들, 혹은 그들의 조합에 관한 상기 검출기 모듈(304)에 대한 사전 인지로서 정의된다. 상기 연역적 검출기-정보(316)는 상기 검출기 모듈(304), 상기 디코더 모듈(306), 혹은 그들의 조합으로부터의 마지막-계산 결과로 설정될 수 있다. 상기 연역적 검출기-정보(316)는 수학식 1과 같이 표현될 수 있다.
Figure 112015003754492-pct00001
상기 송신 신호 혹은 수신 신호의 부분들은 k를 사용하여 표현될 수 있고, 상기 k는 상기 송신 신호(110), 상기 수신 신호(116), 혹은 그들의 조합 내의 연속적인 송신에서 상기 코드 워드(122)내의 특정 비트에 상응하는 인덱스 파라미터(index parameter)가 될 수 있다. 또한, b는 비트를 지시할 수 있다. k에서의 임의의 비트 b 가 + 1인 확률은 p(b k = +1)와 같이 표현될 수 있고, 동일한 비트가 -1인 확률은 p(b k = -1)와 같이 표현될 수 있다.
상기 연역적 검출기-정보(316)는 상기 통신 시스템(100)이 초기화되거나, 혹은 리셋되거나, 혹은 핸드오버 동작을 수행할 때 초기화될 수 있다. 상기 연역적 검출기-정보(316)는 0, 상기 통신 시스템(100), 상기 하드웨어 생산자, 상기 소프트웨어 생산자, 혹은 그들의 조합에 의해 미리 결정된 값으로 초기화될 수 있다.
상기 귀납적 검출기-데이터(318)는 상기 송신 신호(110), 상기 수신 신호(116), 그 심볼들, 혹은 그들의 조합에 대한 상기 검출기 모듈(304)에 대한 이후의 인지로 정의된다. 상기 귀납적 검출기-데이터(318)는 상기 수신 신호(116)에서 상기 분석된 심볼에 상응하게 상기 송신 신호(110)에서 송신될 심볼과 연관된 신뢰 레벨(confidence level)의 측정값일 수 있다.
상기 귀납적 검출기-데이터(318)는 또한 상기 변조 방식 내에서 상기 심볼들 각각과 연관되는 신뢰 레벨들의 집합일 수 있다. 상기 귀납적 검출기-데이터(318)는 상기 수신 신호(116)에서 상기 분석된 심볼이 상기 변조 방식에서 유용한 심볼들 각각과 매치되는 퍼센트 우도(percentage likelihood)들을 나타낼 수 있다. 상기 귀납적 검출기-데이터(318)는 0의 초기 비트 값을 나타낼 수 있는 로그 우도 비(log likelihood ratio: LLR)가 될 수 있다.
상기 귀납적 검출기-데이터(318)는 상기 검출기 모듈(304)의 상기 검출기-계산 모듈(314)에 의해 계산되는 값일 수 있다. 상기 검출기-계산 모듈(314)은 수학식 2에 따라 L A (b)와 같이 표현되는 상기 귀납적 검출기-데이터(318)를 계산할 수 있다.
Figure 112015003754492-pct00002
상기 귀납적 검출기-데이터(318)의 LLR은 상기 수신 신호(116), 혹은 y로 표현되는 상기 수신 신호(116)의 x로 표현되는 상기 송신 신호(110)의 도출을 처리할 수 있다.
상기 검출기-계산 모듈(314)은 도 2의 상기 제1 제어 인터페이스(222), 도 2의 상기 제1 저장 인터페이스(224), 혹은 그들의 조합을 사용하여 상기 제1저장 유닛(214)에 억세스할 수 있다. 상기 검출기-계산 모듈(314)은 상기 연역적 검출기-정보(316) 및 상기 귀납적 검출기-데이터(318)를 포함하는 상기 계산들의 결과들을 상기 제1저장 유닛(214)에 저장할 수 있다.
상기 검출기-계산 모듈(314)은 또한, 상기 제1 제어 유닛(212), 제1 통신 유닛(216), 혹은 그들의 조합을 사용하여 상기 검출기-외부-정보(320)를 계산할 수 있다. 상기 검출기-외부-정보(320)는 상기 검출기 모듈(304)로 입력되는 정보로부터 도출되지 않는 새로운 정보로서 정의된다. 상기 검출기-외부-정보(320)는 상기 이전에 계산된 값과 현재의 계산간의 에러, 개선, 혹은 차이를 나타낼 수 있다.
상기 검출기-계산 모듈(314)은 상기 귀납적 검출기-데이터(318)와 상기 연역적 검출기-정보(316)간의 차이를 처리하여 상기 검출기-외부-정보(320)를 계산할 수 있다. 상기 검출기-외부-정보(320)는 수학식 3과 같이 표현될 수 있다.
Figure 112015003754492-pct00003
상기 검출기-외부-정보(320)는 H로 표현될 수 있는 상기 왜곡(118)과 같은 상기 채널(108)의 특징들을 처리함으로써 추정될 수 있다. 일 예로, H는 상기 MIMO 채널 추정값이 될 수 있다. 상기 σ2는 상기 수신 신호(116) y 내의 잡음 분산을 나타낼 수 있다.
상기 검출기 모듈(304)은 상기 검출기-외부-정보(320), 상기 귀납적 검출기-데이터(318), 혹은 둘 다를 상기 억세스 모듈(308)로 전달할 수 있다. 상기 검출기 모듈(304)은 또한 상기 검출기-외부-정보(320), 상기 귀납적 검출기-데이터(318), 혹은 둘 다를 상기 제1 저장 유닛(214)에 저장할 수 있다. 상기 검출기 모듈(304)은 상기 억세스 모듈(308), 상기 제1 저장 유닛(214), 혹은 그들의 조합을 통해 이전의 반복 동안 계산된, 상기 검출기-외부-정보(320), 상기 귀납적 검출기-데이터(318), 혹은 둘 다에 억세스할 수 있다.
상기 억세스 모듈(308)은 상기 데이터를 수신하고, 상기 검출기-외부-정보(320), 상기 귀납적 검출기-데이터(318), 혹은 둘 다를 상기 제1 저장 유닛(214)에 저장함으로써 상기 검출기-외부-정보(320), 상기 귀납적 검출기-데이터(318), 혹은 둘 다에 억세스할 수 있다. 상기 통신 시스템(100)이 검출 모듈들의 다수 개의 인스턴스들을 포함할 때, 상기 억세스 모듈(308)은 상기 값들을 계산하는 모듈에 따라 상기 검출기-외부-정보(320), 상기 귀납적 검출기-데이터(318), 상기 모듈들 각각에 대한 유사 해당 값들, 혹은 그들의 조합을 저장할 수 있다. 상기 억세스 모듈(308)에 관한 구체적인 사항들은 하기에서 설명될 것이다.
상기 디코더 모듈(306)은 또한 상기 계산된 값들을 상기 억세스 모듈(308)로 전달할 수 있다. 상기 디코더 모듈(306)은 심볼 레벨(symbol level) 정보를 분석하지 않고, 비트 레벨(bit level)에서 상기 수신 신호(116)를 분석한다. 상기 디코더 모듈(306)은 상기 검출기 모듈(304)의 출력들을 조합 및 분석함으로써 비트 레벨에서 분석할 수 있다. 상기 디코더 모듈(306)은 상기 검출기 모듈(304)의 상기 심볼 레벨 정보를 상기 송신 신호(110)에 원래 포함되어 있는 코드 워드들의 측정값들로 조합할 수 있다.
상기 디코더 모듈(306)은 상기 송신 신호(110)를 디코딩함으로써 상기 수신 신호(116)를 분석할 수 있다.
상기 디코더 모듈(306)은 상기 송신 신호(110) 및 상기 사전-디코딩 모듈(pre-decoding module)(322) 및 디코더-계산 모듈(324)을 사용하여 상기 코드 워드들에 포함되어 있는 정보를 디코딩할 수 있다. 상기 디코더 모듈(306)은 상기 코드 워드들에 포함되어 있는 정보를 디코딩함으로써 송신을 위한 코딩 전에 통신을 의도로 하는 상기 정보를 추출할 수 있다. 상기 디코더 모듈(306)은 상기 사전-디코딩 모듈(322) 및 디코더-계산 모듈(324)을 사용하여 연연적-디코더-정보(326), 귀납적-디코더-데이터(328), 디코더-외부-정보(330)를 프로세싱함으로써 디코딩할 수 있다.
상기 사전-디코딩 모듈(322)은 상기 억세스 모듈(308)로부터 전달되는 혹은 상기 억세스 모듈(308)에 저장되어 있는 상기 검출기-외부-정보(320), 상기 귀납적 검출기-데이터(318), 상기 검출기-외부-값(330), 상기 귀납적-디코더-데이터(328), 혹은 그들의 조합으로부터 상기 연역적-디코더-정보(326)를 결정한다. 상기 사전-디코딩 모듈(322)은 상기 억세스 모듈(308)로부터 전달되는 값을 상기 연역적-디코더-정보(326)로 결정함으로써 상기 연역적-디코더-정보(326)를 결정할 수 있다.
상기 사전-디코딩 모듈(322)은 또한 초기화 상황, 리셋 상황, 혹은 핸드오버 상황 동안 상기 연역적-디코더-정보(326)를 상기 미리 결정되어 있는 값으로 초기화시킴으로써 상기 연역적-검출기-정보(316)를 결정할 수 있다. 일 예로, 상기 시스템이 초기화되거나, 리셋되거나, 혹은 상기 핸드오버 프로세스를 수행할 경우, 상기 사전-디코딩 모듈(322)은 상기 연역적-디코더-정보(326)를 0 혹은 상기 통신 시스템(100), 상기 소프트웨어 생산자, 상기 하드웨어 생산자, 혹은 그들의 조합에 의해 미리 결정된 값으로 초기화시킬 수 있다.
상기 연역적-디코더-정보(326)는 상기 송신 신호(110), 상기 수신 신호(116), 그에 포함되어 있는 상기 심볼들 혹은 비트들, 혹은 그들의 조합에 대한 상기 디코더 모듈(306)에 대한 사전 인지(prior knowledge)로서 정의된다. 상기 연역적-디코더-정보(326)는 상기 검출기 모듈(304), 상기 디코더 모듈(306), 혹은 그들의 조합으로부터 마지막으로 계산된 결과일 수 있다. 상기 연역적-디코더-정보(326)는 상기 검출기 모듈(304)에 관해 상기 연역적 검출기-정보(316)와 유사할 수 있고, 또한 수학식 1을 사용하여 표현될 수 있다.
상기 디코더-계산 모듈(324)은 상기 연역적-디코더-정보(326)를 사용하여 상기 귀납적-디코더-데이터(328), 상기 디코더-외부-값(330), 혹은 그들의 조합을 조정한다. 상기 귀납적-디코더-데이터(328)는 상기 송신 신호(110), 상기 수신 신호(116), 그에 포함되어 있는 비트들, 혹은 그들의 조합에 관해 상기 디코더 모듈(306)에 대한 사후 인지(later knowledge)로 정의된다. 상기 귀납적-디코더-데이터(328)는 상기 수신 신호(116)에서 분석된 심볼에 따라 상기 비트들에 상응하게 상기 송신 신호(110)에서 송신될 비트들과 연관되는 신뢰 레벨의 측정값이 될 수 있다.
상기 귀납적-디코더-데이터(328)는 0의 송신 비트 값을 나타낼 수 있는, 특정 송신 비트의 LLR 값이 될 수 있다. 상기 디코더-계산 모듈(324)은 수학식 4를 사용하여 상기 귀납적-디코더-데이터(328)를 계산할 수 있다.
Figure 112015003754492-pct00004
상기 디코더-외부-값(330)은 상기 디코더 모듈(306)로 입력되는 정보로부터 도출되지 않는 새로운 정보로서 정의된다. 상기 디코더-계산 모듈(324)은 상기 제1 제어 유닛(212), 제1 통신 유닛(216), 혹은 그들의 조합을 사용하여 상기 디코더-외부-값(330)을 계산할 수 있다. 상기 디코더-외부-값(330)은 상기 이전에 계산된 값과 상기 현재의 계산간의 에러, 개선, 혹은 차이를 나타낼 수 있다.
상기 디코더-외부-값(330)은 상기 검출기-외부-정보(320)와 유사할 수 있다. 상기 디코더-계산 모듈(324)은 상기 연역적-디코더-정보(326) 및 상기 귀납적-디코더-데이터(328)간의 차이를 처리함으로써 상기 디코더-외부-값(330)을 계산할 수 있다.
상기 디코더-계산 모듈(324)은 상기 디코더-외부-값(330), 귀납적-디코더-데이터(328), 혹은 그들의 조합을 저장할 수 있다. 또한, 상기 디코더 모듈(306)은 상기 디코더-외부-값(330), 상기 귀납적-디코더-데이터(328), 혹은 그들의 조합을 상기 억세스 모듈(308)로 전달할 수 있다.
상기 억세스 모듈(308)은 각 반복에 대해 상기 검출기 모듈(304)과 상기 디코더 모듈(306)로의 입력 및 상기 검출기 모듈(304)과 상기 디코더 모듈(306)로부터의 출력을 제어한다. 상기 억세스 모듈(308)은 각 반복으로부터의 출력들을 저장함과 함께 상기 입력들을 사용하여 실행 순서를 제어하거나 혹은 버스(bus) 제어를 수행함으로써 상기 입력 및 출력을 제어할 수 있다.
상기 억세스 모듈(308)은 상기 검출기 모듈(304), 상기 디코더 모듈(306), 혹은 그들의 조합의 계산들을 실행하기 위해 미리 결정된 순서, 조건, 실행 횟수의 제한, 혹은 그들의 조합을 사용하여 상기 실행 순서를 제어할 수 있다. 상기 모듈들을 실행시키기 위한 순서, 조건, 제한은 상기 통신 시스템(100), 상기 소프트웨어 생산자, 상기 하드웨어 생산자, 혹은 그들의 조합에 의해 미리 결정될 수 있다.
상기 억세스 모듈(308)은 상기 미리 결정되어 있는 순서에 따라 상기 검출기 모듈(304) 혹은 상기 디코더 모듈(306)로 상기 입력을 전달할 수 있다. 상기 억세스 모듈(308)은 다음 모듈을 실행하기 전에 상기 검출기 모듈(304) 혹은 상기 디코더 모듈(306)이 결과를 출력하는 것을 대기할 수 있다. 또한, 상기 입력 값들은 상기 모듈의 계산들을 실행하기 위한 토큰(token)과 유사할 수 있고, 상기 출력 값들은 상기 계산의 마지막을 마킹(marking)하기 위해 상기 억세스 모듈(308)로 다시 전달될 수 있다.
일 예로, 상기 억세스 모듈(308)은 상기 모듈들에 대한 입력을 사용하여 상기 모듈들에 대한 실행 순서를 지시하는 중앙 제어 디바이스가 될 수 있다. 또한, 일 예로, 상기 통신 시스템(100)은 상기 억세스 모듈(308)이 상기 모듈들을 실행시키기 위한 토큰으로서 상기 입력 및 출력 값들을 사용하여 상기 버스를 제어하는 공유 버스 구조를 가질 수 있다.
상기 억세스 모듈(308)은 이전의 반복으로부터의 상기 검출기-외부-정보(320), 상기 귀납적-검출기-데이터(318), 상기 디코더-외부-값(330), 상기 귀납적-디코더-데이터(328), 혹은 그들의 조합을 유지할 수 있다. 상기 억세스 모듈(308)은 또한 어떤 모듈이 마지막으로 상기 결과값들을 계산하고 상기 값들을 상기 억세스 모듈(308)로 전달한 것인지에 관한 정보를 유지할 수 있다.
상기 억세스 모듈(308)은 상기 검출기-외부-정보(320), 상기 귀납적-검출기-데이터(318), 상기 디코더-외부-값(330), 상기 귀납적-디코더-데이터(328), 혹은 그들의 조합을 상기 마지막으로 수신된 값들에 상응하게 다음 실행 모듈로 전달할 수 있다. 상기 사전-검출 모듈(312) 혹은 상기 사전-디코딩 모듈(322)과 같은 상기 다음 실행 모듈은 상기 전달된 정보를 상기 연역적 값으로서 사용할 수 있다.
일 예로, 상기 사전-검출 모듈(312)은 상기 억세스 모듈(308)로부터 전달된 혹은 상기 억세스 모듈(308)에 저장되어 있는 상기 검출기-외부-정보(320), 상기 귀납적-검출기-데이터(318), 상기 디코더-외부-값(330), 상기 귀납적-디코더-데이터(328), 혹은 그들의 조합으로부터 상기 연역적 검출기-정보(316)를 결정할 수 있다. 또한, 일 예로, 상기 사전-디코딩 모듈(322)은 상기 억세스 모듈(308)로부터 전달된 혹은 상기 억세스 모듈(308)에 저장되어 있는 상기 검출기-외부-정보(320), 상기 귀납적-검출기-데이터(318), 상기 디코더-외부-값(330), 상기 귀납적-디코더-데이터(328), 혹은 그들의 조합으로부터 상기 연역적-디코더-정보(326)를 결정할 수 있다.
일 예로, 상기 억세스 모듈(308)은 상기 검출기 모듈(304)이 10번의 실행들 동안 상기 코드 워드(122)의 다른 인스턴스를 타겟으로 하는 각 실행을 가지는 2번과 그 다음으로 상기 디코더 모듈(306)의 실행들을 실행하는 실행 순서를 가질 수 있다. 상기 채널 분석 모듈(302)은 상기 채널 특징들 및 수신 신호(116)를 상기 검출기 모듈(304)로 전달할 수 있다. 상기 억세스 모듈(308)은 또한 상기 검출기 모듈(304)로 0의 초기 값을 전달함으로써 상기 검출기 모듈(304)이 시작하도록 할 수 있다.
예를 계속 들면, 상기 사전-검출 모듈(312)은 상기 연역적-검출기-정보(316)를 결정할 수 있다. 상기 검출기-계산 모듈(314)은 초기 값들 혹은 상기 채널 분석 모듈(302)의 출력 값들을 사용하여 상기 검출기-외부-정보(320) 및 상기 귀납적-검출기-데이터(318)를 계산할 수 있다. 상기 검출기 모듈(304)은 상기 검출기-외부-정보(320), 상기 귀납적-검출기-데이터(318), 혹은 그들의 조합을 상기 억세스 모듈(308)로 전달할 수 있다.
예를 계속 들면, 상기 억세스 모듈(308)은 상기 검출기-외부-정보(320), 상기 귀납적-검출기-데이터(318), 혹은 그들의 조합을 상기 검출기 모듈(304)로 전달할 수 있다. 상기 사전-검출 모듈(312)은 상기 연역적 검출기-정보(316)의 값을 상기 억세스 모듈(308)로부터 수신된 정보와 동일하게 설정할 수 있다.
예를 계속 들면, 상기 검출기-계산 모듈(314)은 상기 연역적 검출기-정보(316)에서 상기 수신된 값들을 사용하여 상기 검출기-외부-정보(320) 및 상기 귀납적 검출기-데이터(318)를 계산할 수 있다. 상기 검출기 모듈(304)은 상기 검출기-외부-정보(320), 상기 귀납적 검출기-데이터(318), 혹은 그들의 조합을 상기 억세스 모듈(308)로 전달할 수 있다.
예를 계속 들면, 상기 억세스 모듈(308)은 상기 검출기-외부-정보(320), 상기 귀납적-검출기-데이터(318), 혹은 그들의 조합을 상기 디코더 모듈(306)로 전달할 수 있다. 상기 사전-디코딩 모듈(322)은 상기 연역적-디코더-정보(326)의 값을 상기 억세스 모듈(308)로부터 수신한 정보와 동일하게 결정할 수 있다.
예를 계속 들면, 상기 디코더-계산 모듈(324)은 상기 연역적-디코더-정보(326)에서 상기 수신된 값들을 사용하여 상기 귀납적-디코더-데이터(328) 및 상기 디코더-외부-값(330)을 계산할 수 있다. 상기 디코더 모듈(306)은 상기 귀납적-디코더-데이터(328), 상기 디코더-외부-값(330), 혹은 그들의 조합을 상기 억세스 모듈(308)로 전달할 수 있다.
예를 계속 들면, 상기 억세스 모듈(308)은 상기 디코더 모듈(306)로부터의 상기 정보를 상기 디코더 모듈(306)로 다시 전달할 수 있다. 상기 사전-디코딩 모듈(322)은 상기 연역적-디코더-정보(326)를 상기 억세스 모듈(308)로부터 전달된 정보와 동일하게 설정할 수 있고, 상기 계산들을 반복할 수 있다. 상기 억세스 모듈(308)과 상기 디코더 모듈(306)간의 상호 동작은 상기 통신 시스템(100), 소프트웨어 생산자, 하드웨어 생산자, 혹은 그들의 조합에 의해 미리 결정되어 있는 조건들, 제한들, 실행 제한, 혹은 그들의 조합이 만족될 때까지 반복할 수 있다.
또한, 상기 억세스 모듈(308)은 스케일 팩터(scale factor)들을 사용할 수 있다. 상기 억세스 모듈(308)은 상기 하드웨어 레이팅(310)에 따라 상기 검출기-외부-정보(320), 상기 귀납적-검출기-데이터(318), 상기 디코더-외부-값(330), 상기 귀납적-디코더-데이터(328), 혹은 그들의 조합을 스케일할 수 있다. 상기 스케일 팩터들은 상기 지나치게 좋게 나온 LLR(over-optimistic LLR)을 준최적 검출기 및 디코더를 사용하는 결과로 조정할 수 있다.
상기 억세스 모듈(308)은 도 2의 상기 제1 통신 인터페이스(228), 제2 제어 인터페이스(222), 제1 저장 인터페이스(224), 혹은 그들의 조합을 사용하여 상기 하드웨어 레이팅(310)에 억세스할 수 있다. 상기 억세스 모듈(308)은 상기 제1 저장 유닛(214)에 저장되어 있는 미리 결정되어 있는 방법, 수학식, 룩-업 테이블(look-up table), 혹은 그들의 조합을 사용하여 상기 스케일 팩터를 결정할 수 있다. 상기 방법, 수학식, 룩-업 테이블, 혹은 그들의 조합은 상기 통신 시스템(100), 하드웨어 생산자, 소프트웨어 생산자, 혹은 그들의 조합에 의해 미리 결정될 수 있다.
도시의 목적들을 위해서, 상기 채널 분석 모듈(302)은 상기 하드웨어 레이팅(310)을 결정한다고 설명되고, 상기 억세스 모듈(308)은 상기 모듈들의 결과들을 스케일링하는 것으로 설명된다. 하지만, 상기 검출기 모듈(304), 상기 디코더 모듈(306), 혹은 그들의 조합이 상기 하드웨어 레이팅(310)을 결정할 수 있거나, 혹은 상기 계산된 결과들을 스케일할 수 있거나, 혹은 둘 다를 수행할 수 있다는 것이 이해될 것이다.
또한, 도시의 목적들을 위해서, 상기 억세스 모듈(308)은 상기 검출기 모듈(304) 및 상기 디코더 모듈(306)의 실행을 제어한다고 설명된다. 하지만, 상기 검출기 모듈(304), 상기 디코더 모듈(306), 혹은 그들의 조합이 상기 모듈들의 실행을 지시할 수 있다는 것이 이해될 것이다. 또한, 상기 검출기 모듈(304) 및 상기 디코더 모듈(306)은 연결되어 상기 실행 순서를 제어할 수 있다.
또한, 도시의 목적들을 위해서, 상기 검출기 모듈(304), 상기 디코더 모듈(306), 상기 억세스 모듈(308) 중 오직 어느 하나만 상기 다른 모듈들이 인액티브(inactive)하게 유지되는 동안 각 시간에서 실행된다고 설명된다. 하지만, 병렬 프로세싱이 유용하고, 여기서 상기 모듈들 중 하나 이상이 동시에 실행될 수 있다는 것이 이해될 것이다. 일 예로, 상기 검출기 모듈(304), 상기 디코더 모듈(306), 상기 억세스 모듈(308)의 조합은 다수의 비트들, 코드 워드들, 심볼들, 혹은 그들의 조합을 동시에 프로세스싱할 수 있다.
상기 검출기-외부-정보(320), 상기 귀납적-검출기-데이터(318), 상기 귀납적-디코더-데이터(328), 상기 디코더-외부-값(330), 혹은 그들의 조합을 가지는 상기 억세스 모듈(308)은 실행 순서에서의 유연성, 감소된 실행-시간, 정확도를 제공한다는 것을 알 수 있다. 상기 억세스 모듈(308)과 상기 검출기-외부-정보(320), 상기 귀납적-검출기-데이터(318), 상기 귀납적-디코더-데이터(328), 상기 디코더-외부-값(330), 혹은 그들의 조합의 조합은 모든 모듈들이 어떤 모듈이 상기 이전의 계산을 수행하는지와 상관없이 상기 이전의 출력들에 억세스하는 것을 허용함으로써 상기 개선들을 제공할 수 있다.
이제부터 도 4를 참조하면, 제1 실시예에서 상기 통신 시스템(100)의 제어 플로우의 일 예가 도시되어 있다. 상기 예제 제어 플로우는 상기 통신 시스템(100)에 대한 바람직한 시나리오를 사용하여 도 3의 상기 모듈들의 전반적인 상호 동작들을 도시할 수 있다.
상기 통신 시스템(100)은 직렬 구성(401)에서 도 1의 상기 수신 신호(116)를 프로세싱할 수 있다. 상기 직렬 구성(401)은 상기 코드 워드(122)의 모든 심볼들을 검출하고, 상기 코드 워드(122)를 디코딩하고, 상기 디코딩 정보를 사용하여 상기 코드 워드(122)의 다른 인스턴스의 모든 심볼들을 검출하고, 상기 코드 워드(122)의 다른 인스턴스를 디코딩한다고 정의된다. 이 프로세스는 상기 수신 신호(116)내에서 상기 코드 워드(122)의 각 인스턴스가 한번 검출되고 디코딩될 때까지 계속된다. 그리고 나서, 다음 반복이 시작되고, 상기 코드 워드(122)의 각 인스턴스는 다시 검출 및 디코딩을 겪게 된다. 비교하여, 병렬 구성은 상기 디코딩 프로세스 전에 상기 수신 신호(116) 혹은 그 부분 내에서 상기 코드 워드들의 모든 인스턴스들의 모든 심볼들을 검출할 수 있다.
상기 통신 시스템(100)은 도 3의 상기 검출기 모듈(304)을 위해 최대 우도(maximum likelihood) 혹은 제로-포싱(zero-forcing) 검출기와 같은 비간섭 제거 타입(non-interference cancelling type)의 검출기를 사용할 수 있다. 상기 통신 시스템(100)은 상기 비간섭 제거 타입의 검출기를 사용하여 한번에 하나의 심볼을 검출 및 디코딩할 수 있다.
일 예로, 상기 통신 시스템(100)은 상기 성상도에서 상기 심볼들 모두와 모든 유용한 인코딩 방법들에 대한 모든 가능한 비트 결합들에 상응하게 모든 가능성들을 계산함으로써 한 번에 한 심볼을 검출 및 디코딩할 수 있다. 상기 통신 시스템(100)은 상기 가능성들의 평균을 계산하지 않거나, 혹은 상기 계층 정보를 간략화시키지 않거나, 혹은 상기 가능성들의 평균을 계산하지 않고 상기 계층 정보를 간략화시키지 않고 상기 수신 신호(116) 내의 상기 심볼을 검출 및 디코딩할 수 있다.
상기 통신 시스템(100)은 반복 카운터(iteration counter), 코드 인덱스(code index), 최대 코드 워드 카운트(maximum code word count), 최대 반복을 가질 수 있다. 상기 반복 카운터는 실행들의 횟수를 나타내는 수가 될 수 있다. 상기 코드 인덱스는 상기 통신 시스템(100)이 현재 분석중인 상기 수신 신호(116)에서 도 1의 상기 코드 워드(122)를 지시하기 위한 순서 혹은 식별자를 나타내는 수가 될 수 있다. 상기 코드 인덱스는 k로 나타내질 수 있다.
상기 최대 코드 워드 카운트는 상기 통신 시스템(100)이 상기 프로세스를 리셋하기 전에 각 반복 동안 분석할 수 있는 코드 워드들의 개수일 수 있다. 상기 최대 코드 워드 카운트는 상기 통신 시스템(100)에 의한 실행들의 횟수에 대한 상위 제한으로 사용될 수 있다. 상기 최대 반복은 상기 통신 시스템(100)에 의한 전체 실행들의 횟수에 대한 상기 상위 제한이 될 수 있다. 상기 최대 코드 워드 카운트는 공간적으로 함께 다중화되어 조인트(joint) 검출 및 디코딩되는 코드 워드들의 개수일 수 있다.
상기 통신 시스템(100)은 상기 반복 카운트를 1로 설정하고, 직렬-IDD 시작 블록(402)에서 상기 직렬 구성(401)에 따라 상기 반복-검출기-디코더(iterative-detector-decoder: IDD)를 시작할 수 있다. 도 3의 상기 억세스 모듈(308)은 상기 반복 카운트를 설정할 수 있다.
상기 통신 시스템(100)은 또한 코드-인덱스 초기화 블록(404)에서 상기 코드 인덱스를 1로 설정할 수 있다. 상기 억세스 모듈(308)은 상기 코드 인덱스 값을 1로 설정할 수 있다.
상기 통신 시스템(100)은 코드 검출 블록(406)에서 상기 코드 인덱스에서 상기 코드 워드(122)의 모든 스트림(stream)들을 검출할 수 있다. 상기 억세스 모듈(308)은 상기 검출기 모듈(304)을 실행시켜 상기 수신 신호(116) 내의 상기 코드 인덱스에서 상기 코드 워드(122)에 대한 모든 계층들에 대한 모든 심볼들을 검출할 수 있다. 상기 억세스 모듈(308)과 상기 검출기 모듈(304)은 상기에서 설명한 바와 같이 상기 검출기 모듈(304)의 이전 결과들을 사용할 수 있다.
상기 통신 시스템(100)은 코드 디코딩 블록(408)에서 코드 인덱스에서 상기 코드 워드(122)를 디코딩할 수 있다. 상기 억세스 모듈(308)은 도 3의 상기 디코더 모듈(306)을 실행시켜 상기 검출기 모듈(304)에 의해 검출되는 상기 심볼들 모두를 디코딩할 수 있다. 상기 디코더 모듈(306)은 상기 디코더 모듈(306) 자신과, 상기 검출기 모듈(304), 혹은 그들의 조합의 출력들을 사용하여 상기에서 설명한 바와 같이 상기 심볼들을 디코딩할 수 있다.
상기 통신 시스템(100)은 코드-인덱스 평가 블록(410)에서 상기 코드 인덱스가 상기 최대 워드 카운트와 동일한지 여부를 결정할 수 있다. 상기 통신 시스템(100)은 상기 억세스 모듈(308)이 상기 코드 인덱스와 상기 최대 코드 워드 인덱스를 비교하도록 할 수 있다.
상기 억세스 모듈(308)은 코드-인덱스 증가 블록(412)에서 상기 코드 인덱스가 상기 최대 워드 카운트보다 작을 경우 상기 코드 인덱스를 1씩 증가시킬 수 있다. 상기 억세스 모듈(308)은 또한 상기 코드 검출 블록(406) 및 상기 코드 디코딩 블록(408)에서의 단계들을 재실행시킬 수 있다. 상기 억세스 모듈(308)은 상기 코드 인덱스가 상기 최대 코드 워드 카운트와 동일해질 때까지 상기 단계들 및 상기 비교를 반복할 수 있다.
상기 코드 인덱스가 상기 최대 코드 워드 카운트와 동일할 때, 상기 억세스 모듈(308)은 반복 평가 블록(414)에서 상기 반복 카운트가 상기 최대 반복과 동일한지 여부를 평가할 수 있다. 상기 반복 카운트가 상기 최대 반복보다 작을 경우, 상기 억세스 모듈(308)은 반복 증가 블록(416)에서 상기 반복 카운트를 1씩 증가시킬 수 있고, 상기에서 설명한 바와 같은 상기 코드-인덱스 초기화 블록(404)로부터 상기 코드-인덱스 평가 블록(410)까지의 단계들을 반복할 수 있다.
상기 억세스 모듈(308)은 상기 반복 카운트가 상기 최대 반복과 동일할 때까지 상기 단계들을 반복할 수 있다. 상기 반복 카운트가 상기 최대 반복과 동일할 때, 상기 억세스 모듈(308)은 엔드 루프 블록(418)에서 상기 직렬 IDD를 종료시킬 수 있다.
상기 직렬 구성(401)을 가지는 상기 억세스 모듈(308)이 실행 속도를 개선시키고 상기 추정들의 정확도를 증가시킨다는 것을 알 수 있다. 상기 직렬 구성(401)을 가지는 상기 억세스 모듈(308)은 한번에 한 개의 코드 워드를 분석하고, 한 개의 코드 워드로부터의 상기 출력 정보를 사용함으로써 상기 연속적인 코드 워드의 검출 및 디코딩을 개선시킴으로써 상기 개선된 에러 레이트 성능을 나타낸다.
이제부터 도 5를 참조하면, 제2 실시예에서 통신 시스템(500)의 기능 블록 다이아그램이 도시되어 있다. 상기 통신 시스템(500)은 터보-인코딩된 신호들을 실행하는 것에 특정되는, 도 3의 상기 통신 시스템(100)의 바람직한 실시예가 될 수 있다.
상기 통신 시스템(500)은 상기 채널 분석 모듈(502), 검출기 모듈(504), 디코더 모듈(506), 추가-디코딩 모듈(508), 억세스 모듈(509)을 가질 수 있다. 상기 채널 분석 모듈(502)은 상기 검출기 모듈(504)에 연결될 수 있다. 상기 검출기 모듈(504)은 상기 디코더 모듈(506)에 연결될 수 있고, 상기 디코더 모듈(506)은 상기 추가-디코딩 모듈(508)에 연결될 수 있다. 상기 추가-디코딩 모듈(508)은 또한 상기 검출기 모듈(504)에 연결될 수 있다. 상기 억세스 모듈(509)은 상기 디코더 모듈(506) 및 상기 추가-디코딩 모듈(508)에 연결될 수 있다.
제2 실시예에서 상기 통신 시스템(500)의 제어 플로우는 터보-코드(turbo-code)를 사용하여 인코딩된 도 1의 상기 송신 신호(110)를 디코딩하기 위해 사용될 수 있다. 상기 통신 시스템(100)은 상기 추가-디코딩 모듈(508)을 사용하여 상기 터보-코딩에 따라 도 1의 상기 수신 신호(116)를 디코딩할 수 있다.
상기 채널 분석 모듈(502)은 도 1의 상기 채널(108)을 통해 전달되는 신호의 동작을 특징화한다. 상기 채널 분석 모듈(502)은 도 3의 상기 채널 분석 모듈(302)과 유사하거나 혹은 동일할 수 있다. 상기 채널 분석 모듈은 상기 수신 신호(116) 내의 상기 기준 신호 부분을 사용하여 도 1의 상기 왜곡(118)을 계산하거나, 혹은 채널 모델을 선택하거나, 혹은 상기 SNR을 계산하거나, 혹은 상기 왜곡(118)을 계산하거나, 채널 모델을 선택하거나, 상기 SNR을 계산하는 것의 조합으로 상기 채널(108)을 특징화할 수 있다.
상기 통신 시스템(500)은 상기 채널 분석 모듈(502), 상기 검출기 모듈(504), 상기 디코더 모듈(506), 상기 추가-디코딩 모듈(508), 혹은 그들의 조합에 연관되는 하드웨어 레이팅(510)을 가질 수 있다. 상기 하드웨어 레이팅(510)은 도 3의 상기 하드웨어 레이팅(310)과 유사하거나 동일할 수 있다.
도시의 목적들을 위해서, 상기 하드웨어 레이팅(510)은 상기 채널 분석 모듈(502) 내에서 도시될 것이다. 하지만, 상기 하드웨어 레이팅(510)은 상기 통신 시스템에 포함되어 있는 상기 모듈들 각각에 대한 측정값이 될 수 있다는 것이 이해될 것이다. 또한, 상기 하드웨어 레이팅(510)은 상기 개별 모듈들, 상기 모듈들의 집합, 혹은 그들의 조합의 정확도를 나타낼 수 있다는 것이 이해될 것이다.
상기 채널 분석 모듈(502)은 상기 왜곡(118) 혹은 상기 채널 모델과 같은 상기 채널(108)의 특징 및 상기 수신 신호(116)를 상기 검출기 모듈(504)로 전달할 수 있다. 상기 검출기 모듈(504)은 상기 수신 신호(116) 내의 개별 심볼들을 분석한다. 상기 검출기 모듈(504)은 도 3의 상기 검출기 모듈(304)과 유사할 수 있다.
상기 검출기 모듈(504)은 연역적-검출기-정보(512), 귀납적-검출기-데이터(516), 검출기-외부-정보(520)를 계산할 수 있다. 상기 연역적-검출기-정보(512)는 상기 송신 신호(110), 상기 수신 신호(116), 그 심볼들 혹은 비트들, 혹은 그들의 조합에 관한 상기 검출기 모듈(504)에 대한 사전 인지로서 정의된다. 상기 연역적-검출기-정보(512)는 도 3의 상기 연역적-검출기-정보(316)와 유사할 수 있다. 상기 검출기 모듈(504)은 상기 연역적-검출기-정보(316)에 대해서 설명한 바와 같이 상기 연역적-검출기-정보(512)를 결정할 수 있다.
상기 귀납적-검출기-데이터(516)는 상기 송신 신호(110), 상기 수신 신호(116), 그 심볼들, 혹은 그들의 조합에 관한 상기 검출기 모듈(504)에 대한 사후 인지로서 정의된다. 상기 귀납적-검출기-데이터(516)는 도 3의 귀납적-검출기-데이터(318)와 유사할 수 있다. 상기 검출기 모듈(504)은 상기에서 상기 귀납적-검출기-데이터(318)에 대해서 설명한 바와 같이 상기 귀납적-검출기-데이터(516)를 계산할 수 있다.
상기 검출기-외부-정보(520)는 상기 검출기 모듈(504)로 입력된 정보로부터 도출되지 않은 새로운 정보로서 정의된다. 상기 검출기-외부-정보(520)는 도 3의 상기 검출기-외부-정보(320)와 유사할 수 있다. 상기 검출기 모듈(504)은 상기에서 상기 검출기-외부-정보(320)에 대해 설명된 바와 같이 상기 검출기-외부-정보(520)를 계산할 수 있다.
상기 검출기 모듈(504)은 상기 검출기-외부-정보(520)를 상기 디코더 모듈(506)로 전달할 수 있다. 상기 디코더 모듈(506)은 심볼 레벨 정보를 분석하지 않고도 비트 레벨에서 상기 수신 신호(116)를 분석한다. 상기 디코더 모듈(506)은 도 3의 상기 디코더 모듈(306)과 유사할 수 있고, 도 1의 상기 코드 워드(122)에 대한 비트들의 부분을 분석할 수 있다. 상기 디코더 모듈(506)은 연역적-디코더-정보(524), 귀납적-디코더-데이터(526), 디코더-외부-정보(530)를 프로세싱할 수 있다.
상기 디코더 모듈(506)은 상기 연역적-디코더-정보(524)를 결정할 수 있다. 상기 연역적-디코더-정보(524)는 상기 송신 신호(110), 상기 수신 신호(116), 그 심볼들 혹은 비트들, 혹은 그들의 조합에 관한 사전 인지로서 정의된다. 상기 연역적-디코더-정보(524)는 도 3의 상기 연역적-디코더-정보(326)와 유사할 수 있다. 상기 디코더 모듈(506)은 상기에서 상기 연역적-디코더-정보(326)에 대해서 설명한 바와 같이 상기 연역적-디코더-정보(524)를 계산할 수 있다.
상기 디코더 모듈(506)은 상기 코드 워드의 부분을 디코딩할 수 있다. 일 예로, 상기 디코더 모듈(506)은 상기 코드 워드(122)의 시스테메틱(systematic) 비트들 및 첫 번째 패리티 비트들로 구성되는 상기 컨벌루셔널 코드(convolutional code)를 디코딩할 수 있다. 상기 디코더 모듈(506)은 상기 코드 워드(122)의 부분에 상응하게 상기 귀납적-디코더-데이터(526) 및 상기 디코더-외부-값(530)을 계산함으로써 상기 코드 워드(122)의 부분을 디코딩할 수 있다.
상기 귀납적-디코더-데이터(526)는 상기 송신 신호(110), 상기 수신 신호(116), 그 비트들, 혹은 그들의 조합에 관해 상기 디코더 모듈(506)에 대한 사후 인지(later knowledge)로서 정의된다. 상기 귀납적-디코더-데이터(526)는 도 3의 상기 귀납적-디코더-데이터(328)와 유사할 수 있다. 상기 디코더 모듈(506)은 상기 코드 워드(122)의 부분을 사용하여 상기와 같은 귀납적-디코더-데이터(328)에 대해서 설명한 바와 같이 상기 귀납적-디코더-데이터(526)를 계산할 수 있다. 상기 디코더 모듈(506)은 또한 상기 귀납적-디코더-데이터(526)를 계산하여 상기 패리티 비트(124)를 처리할 수 있다.
상기 디코더-외부-값(530)은 상기 디코더 모듈(506)로 입력되는 정보로부터 도출되지 않은 새로운 정보로서 정의된다. 상기 디코더-외부-값(530)은 도 3의 상기 디코더-외부-값(330)과 유사할 수 있다. 상기 디코더 모듈(506)은 상기 코드 워드(122)의 부분을 사용하여 도 3에서 상기에서 상기 디코더-외부-값(330)에 대해서 설명한 바와 같이 상기 디코더-외부-값(530)을 계산할 수 있다. 상기 디코더 모듈(506)은 상기 디코더-외부-값(530)을 계산하여 상기 패리티 비트(124)를 처리할 수 있다.
상기 디코더 모듈(506)은 상기 디코더-외부-값(330)을 상기 추가-디코딩 모듈(508)로 전달할 수 있다. 상기 추가-디코딩 모듈(508)은 심볼 레벨 정보를 분석하지 않고, 비트 레벨에서 상기 수신 신호(116)를 분석한다. 상기 추가-디코딩 모듈(508)은 상기 디코더 모듈(506)과 유사할 수 있지만, 상기 디코더 모듈(506)에 의해 분석되지 않은 상기 코드 워드(122)에 대한 비트들의 나머지 부분을 해석할 수 있다. 상기 추가-디코딩 모듈(508)은 연역적-미세-정보(a-priori-refinement-information)(534), 귀납적-미세-데이터(a-posteriori-refinement-data)(536) 및 추가-디코더-정보(540)를 프로세싱할 수 있다.
상기 추가-디코딩 모듈(508)은 상기 연역적-미세-정보(534)를 결정할 수 있다. 상기 연역적-미세-정보(534)는 상기 송신 신호(110), 상기 수신 신호(116), 그 심볼들 혹은 비트들, 혹은 그들의 조합에 대해 상기 추가-디코딩 모듈(508)에 대한 사전 인지로서 정의된다. 상기 연역적-미세-정보(534)는 상기 연역적-디코더-정보(524)와 유사할 수 있다. 상기 추가-디코딩 모듈(508)은 상기에서 상기 연역적-디코더-정보(534)에 대해 설명한 바와 같이 상기 연역적-미세-정보(534)를 계산할 수 있다.
상기 추가-디코딩 모듈(508)은 상기 터보-디코딩 모듈(506) 후에 상기 코드 워드(122)의 나머지 부분을 디코딩할 수 있다. 일 예로, 상기 추가-디코딩 모듈(508)은 상기 코드 워드(122)에서 상기 두 번째 컨벌루셔널 코드를 디코딩할 수 있다. 상기 추가-디코딩 모듈(508)은 상기 귀납적-미세-데이터(536) 및 상기 추가-디코더-정보(540)를 계산함으로써 상기 나머지 부분을 디코딩할 수 있다.
상기 귀납적-미세-데이터(536)는 상기 송신 신호(110), 상기 수신 신호(116), 그 비트들, 혹은 그들의 조합에 관해 상기 추가-디코딩 모듈(508)에 대한 사후 인지로서 정의된다. 상기 귀납적-미세-데이터(536)는 상기 귀납적-디코더-데이터(526)와 유사할 수 있다. 상기 추가-디코딩 모듈(508)은 상기에서 상기 귀납적-디코더-데이터(526)에 대해 설명한 바와 같이 상기 귀납적-미세-데이터(536)를 계산할 수 있다. 상기 추가-디코딩 모듈(508)은 또한 상기 귀납적-미세-데이터(536)를 계산하여 상기 마지막 패리티(126)를 계산할 수 있다.
상기 추가-디코더-정보(540)는 상기 추가-디코딩 모듈(508)로 입력되는 정보로부터 도출되지 않는 새로운 정보로서 정의된다. 상기 추가-디코더-정보(540)는 상기 디코더-외부-값(530)과 유사할 수 있다. 상기 추가-디코딩 모듈(508)은 상기 디코더-외부-값(530)에 대해 상기에서 설명한 바와 같이 상기 추가-디코더-정보(540)를 계산할 수 있다. 상기 추가-디코딩 모듈(508)은 또한 상기 추가-디코더-정보(540)를 계산하여 상기 마지막 패리티(126)를 처리할 수 있다.
상기 추가-디코딩 모듈(508)은 에러-체크 모듈(error-check module)(550)을 가질 수 있다. 상기 에러-체크 모듈(550)은 상기 디코더 모듈(506), 상기 추가-디코딩 모듈(508), 혹은 그들의 조합에 의해 디코딩된 상기 코드 워드(122) 혹은 심볼의 정확도를 평가한다. 상기 에러-체크 모듈(550)은 상기 샘플링 정확도(sampling accuracy), 상기 변조 방식, 데이터 포맷(data format), 혹은 그들의 조합을 체크할 수 있다.
상기 에러-체크 모듈(550)은 또한 체크섬 상태(checksum status)(560)를 결정함으로써 상기 정확도를 평가할 수 있다. 상기 에러-체크 모듈(550)은 상기 귀납적-디코더-데이터(526) 혹은 추가-디코더-정보(540)와 같은 패리티 정보에 관련된 상기 패리티 비트(124), 상기 마지막 패리티(126), 상기 LLR 정보를 사용하여 상기 체크섬 상태(560)를 결정할 수 있다.
상기 에러-체크 모듈(550)은 상기 패리티 비트(124), 상기 마지막 패리티(126)를 사용하여 에러 검출을 수행함으로써 혹은 순방향 에러 정정 루틴(forward error correction routine)을 따라 상기 체크섬 상태(560)를 결정할 수 있다. 일 예로, 상기 에러-체크 모듈(550)은 상기 사이클릭 리던던시 체크(cyclic redundancy check: CRC) 평가를 수행할 수 있다.
상기 추가-디코딩 모듈(508)은 상기 에러-체크 모듈(550)이 상기 체크섬 상태(560)의 수락 가능한 값을 리턴할 때 플래그(flag)를 설정하거나, 혹은 신호를 송신하여 상기 디코더 모듈(506), 상기 추가-디코딩 모듈(508), 혹은 그들의 조합에 의해 이전에 디코딩된 상기 결과 코드 워드 혹은 심볼을 수락할 수 있다. 상기 통신 시스템(500)은 상기 체크섬 상태(560)이 수락 가능할 때 분석을 중단하고 상기 비트들의 코드 워드(122)의 특정 인스턴스를 수락하고, 상기 코드 워드(122)의 다음 인스턴스로 이동할 수 있다.
상기 체크섬 상태(560)가 수락 가능하지 않을 때, 상기 추가-디코딩 모듈(508)은 상기 추가-디코더-정보(540)를 상기 디코더 모듈(506), 상기 억세스 모듈(509), 혹은 둘 다로 전달할 수 있다. 상기 억세스 모듈(509)은 상기 추가-디코더-정보(540)의 값을 다음 억세스에 대한 저장된 피드백(580)으로 저장할 수 있다. 상기 디코더 모듈(506)은 도 1의 상기 이동 단말기(102)를 통한 통신을 위해 상기 저장된 피드백(580) 혹은 상기 추가-디코더-정보(540)를 사용하여 상기 디코더-외부-정보(530)를 조정할 수 있다.
상기 억세스 모듈(509)은 상기 디코더 모듈(506)과 상기 추가-디코딩 모듈(508)간의 상호 동작을 제어한다. 상기 억세스 모듈(509)은 상기 디코더 모듈(506)에 대한 데이터를 제어함으로써 상기 두 개의 모듈들간의 상호 동작을 제어할 수 있다. 상기 억세스 모듈(509)은 브레이크 조건(break condition)을 기반으로 상기 추가-디코더-정보(540)를 상기 디코더 모듈(506)로 직접 전달하는 것을 허락하고, 상기 저장된 피드백(580)을 설정하고, 상기 저장된 피드백(580)을 상기 디코더 모듈(506)로 전달하고, 혹은 그들의 조합을 수행함으로써 상기 디코더 모듈(506)에 대한 데이터를 제어할 수 있다.
상기 억세스 모듈(509)은 시간 혹은 반복에 따라 상기 추가-디코더-정보(540)의 모든 입력되는 값들을 저장할 수 있다. 또한, 상기 억세스 모듈(509)은 상기 저장된 피드백(580)의 값을 상기 추가-디코더-정보(540)의 값으로 설정하여 마지막-수신 데이터만 유지할 수 있다. 상기 억세스 모듈(509)은 도 2의 상기 제1 저장 유닛(214)을 사용하여 상기 저장된 피드백(580)을 저장할 수 있다.
상기 억세스 모듈(509)은 또한 브레이크 조전이 발생할 경우 상기 저장된 피드백(580)의 값을 설정할 수 있다. 상기 브레이크 조건은 조건 구문 혹은 수치 루프 제한과 같은 실행들의 횟수에서의 제한이 될 수 있다. 상기 브레이크 조건은 또한 상기 추가-디코딩 모듈(508), 상기 검출기 모듈(504), 상기 디코더 모듈(506), 혹은 그들의 조합으로부터 수신되는 신호 혹은 플래그일 수 있다.
상기 억세스 모듈(509)은 상기 브레이크 조건이 만족되지 않았을 때 상기 추가-디코딩 모듈(508)로부터 상기 디코더 모듈(506)로 상기 추가-디코더-정보(540)가 전달되는 것을 허여할 수 있다. 상기 브레이크 조건이 만족되었을 때, 상기 억세스 모듈(509)은 상기 저장된 피드백(580)의 값을 상기 추가-디코더-정보(540)의 값으로 설정할 수 있다. 상기 억세스 모듈(509)은 또한 신호를 송신하거나 혹은 비트를 설정하여 상기 디코더 모듈(506), 상기 추가-디코딩 모듈(508), 혹은 둘 다의 실행을 정지시킬 수 있다.
또한, 상기 디코더 모듈(506), 상기 추가-디코딩 모듈(508), 혹은 둘 다는 상기 디코더 모듈(506), 상기 추가-디코딩 모듈(508), 상기 억세스 모듈(509), 혹은 그들의 조합으로부터 입력 값을 수신할 때에만 동작하도록 구성될 수 있다. 일 예로, 상기 억세스 모듈(509)은 상기 검출기 모듈(504)가 먼저 상기 검출기-외부-정보(520)를 송신할 때 0과 같은 초기 값을 상기 디코더 모듈(506)로 전달함으로써 상기 두 개의 모듈들간의 상호 동작을 시작시킬 수 있다. 상기 억세스 모듈(509)은 상기 추가-디코더-정보(540)가 상기 디코더 모듈(506)과 상기 추가-디코딩 모듈(508)간에 전달되는 것을 허여함으로써 상기 상호 동작을 지속시킬 수 있다.
예를 계속 들면, 상기 억세스 모듈(509)은 상기 추가-디코더-정보(540)가 상기 디코더 모듈(506)과 상기 추가-디코딩 모듈(508)간에 전달되는 것을 정지시킴으로써 상기 두 개의 모듈들간의 상호 동작을 정지시킬 수 있다. 상기 억세스 모듈(509)은 상기 검출기 모듈(504)이 이후에 상기 검출기-외부-정보(520)를 송신할 때 상기 저장된 피드백(580)을 상기 디코더 모듈(506)로 전달함으로써 상기 디코더 모듈(506)과 상기 추가-디코딩 모듈(508)간의 상호 동작을 다시 초기화시킬 수 있다.
상기 디코더 모듈(506)과 상기 추가-디코딩 모듈(508)은 또한 독립적으로 상기 브레이크 조건들을 체크하고, 그에 따라 응답할 수 있다. 일 예로, 상기 브레이크 조건이 만족되지 않았을 경우, 상기 디코더 모듈(506)은 상기 추가-디코더-정보(540)를 상기 연역적-디코더-정보(524)로 사용하여 상기에서 설명한 바와 같이 상기 검출기-외부-정보(520)를 재계산함으로써 상기 검출기-외부-정보(520)를 조정할 수 있다. 상기 디코더 모듈(506)은 상기 디코더-외부-값(530)인 상기 재계산의 결과들을 상기 추가-디코딩 모듈(508)로 전달할 수 있다.
상기 검출기 모듈(504), 상기 디코더 모듈(506), 상기 추가-디코딩 모듈(508)간의 계산들 및 상호 동작들은 루프 메카니즘으로 구현될 수 있다. 상기 루프 메카니즘은 상기 브레이크 조건에 의해서 제어될 수 있다.
상기 루프 메카니즘의 구현 동안, 상기 통신 시스템(500)은 상기 수신 신호(116)에 대한 수신, 추정, 검출, 디코딩, 혹은 그들의 조합을 수행하는 것에 실패할 수 있다. 상기 통신 시스템(500)은 도 1의 상기 부정적 인지(negative acknowledgement: NACK)(120)를 도 1의 상기 기지국(106)으로 다시 송신할 수 있고, 상기 NACK(120)은 상기 기지국(106)이 상기 송신 신호(110), 혹은 그 부분, 혹은 그 부분들을 재송신하도록 할 수 있을 것이다.
상기 에러-체크 모듈(550)은 응답 모듈(590)을 포함한다. 상기 응답 모듈(590)은 상기 검출기 모듈(504), 상기 디코더 모듈(506), 상기 추가-디코딩 모듈(508), 혹은 그들의 조합이 상기 수신 신호(116)를 성공적으로 검출하지 못하거나 혹은 디코딩하지 못할 때 상기 NACK(120)을 상기 기지국(106)으로 송신할 수 있다. 상기 검출기 모듈(504)은 상기 NACK(120) 다음의 상기 기지국(106)으로부터의 재송신을 검출하고, 상기 검출기-외부-정보(520)의 새로운 값들을 계산할 수 있다.
상기 응답 모듈(590)은 상기 검출기 모듈(504), 상기 디코더 모듈(506), 상기 추가-디코딩 모듈(508), 혹은 그들의 조합의 계산된 결과들을 저장할 수 있다. 상기 응답 모듈(590)은 상기 재송신들을 통한 상기 검출기-외부-정보(520)를 합산할 수 있고, 상기 합을 저장할 수 있다. 또한, 상기 응답 모듈(590)은 상기 검출기-외부-정보(520)의 저장된 값과 상기 재송신된 데이터간의 비트-레벨 조합을 수행할 수 있다. 상기 검출기 모듈(504)은 상기 입력 파라미터인 상기 재송신을 통해 합산된 값을 사용하여 상기 검출기-외부-정보(520)를 재계산함으로써 상기 검출기-외부-정보(520)를 조정할 수 있다.
상기 응답 모듈(590)과 상기 검출기-외부-정보(520)의 조합은 상기 기지국(106)에서 상기 수신 신호(116)를 프로세싱하고 자원들을 관리함에 있어 개서된 효율성을 제공한다는 것을 알 수 있다. 상기 응답 모듈(590)과 상기 검출기-외부-정보(520)는 상기 NACK(120)과 재송신 전에 이전에 저장되어 있는 결과들을 조합함으로써 재송신된 신호를 정확하고 효율적으로 처리할 수 있다. 상기 저장된 데이터는 보다 빠르고 보다 정확한 에러 정정 및 검출을 허여하고, 또한 감소된 횟수의 재송신들로 이어진다.
도시의 목적들을 위해서, 상기 통신 시스템(500)은 상기 검출기 모듈(504)이 상기 디코더 모듈(506) 및 상기 추가-디코딩 모듈(508)에 직접 연결되고, 상기 디코더 모듈(506)이 상기 추가-디코딩 모듈(508)에 직접 연결되는 것으로 도시되어 있다. 하지만, 상기 통신 시스템(500)은 다르게 구성될 수도 있다는 것이 이해될 것이다.
일 예로, 상기 검출기 모듈(504), 상기 디코더 모듈(506), 상기 추가-디코딩 모듈(508), 혹은 그들의 조합은 상기 억세스 모듈(509)에 직접 연결될 수 있다. 상기 검출기 모듈(504), 상기 디코더 모듈(506), 상기 추가-디코딩 모듈(508), 혹은 그들의 조합은 상기 억세스 모듈(509)을 통해 서로 연결될 수 있고, 상기 억세스 모듈(509)은 도 3에서 직접적으로 연결되어 있는 모듈들간의 모든 출력 정보를 수신 및 전달할 수 있다.
또한, 도시의 목적들을 위해서, 상기 통신 시스템(500)은 바람직한 배열에서 배열되어 있는 모듈들 및 서브-모듈들을 가진다고 도시되어 있다. 하지만, 상기 통신 시스템(500)은 상기 다르게 구성되어 있는 다른 모듈들을 가질 수 있다는 것이 이해될 것이다. 일 예로, 상기 에러-체크 모듈(550)은 개별 모듈일 수 있고, 상기 추가-디코딩 모듈(508)의 서브-모듈이 아닐 수 있다. 또한, 일 예로, 상기 억세스 모듈(509)은 상기 디코더 모듈(506)의 서브-모듈일 수 있다.
이제부터 도 6을 참조하면, 제2 실시예에서 상기 통신 시스템(500)의 제어 플로우의 예제가 도시되어 있다. 도 6에서 상기 동작 플로우는 상기 통신 시스템(500)에 대한 바람직한 시나리오를 위해 도 5의 상기 채널 분석 모듈(502), 도 5의 상기 검출기 모듈(504), 도 5의 상기 디코더 모듈(506), 및 도 5의 추가-디코딩 모듈(508)의 전반적인 상호 동작들을 나타낼 수 있다.
일 예로, 상기 통신 시스템(500)은 상기 브레이크 조건인 i_MAX의 IDD 제한과 j_MAX의 터보-코드 제한과, IDD 카운터(counter) i 및 터보 카운터 j로 구현될 수 있다. 상기 통신 시스템(500)은 시작 IDD 블록(602)에서 메모리 프로세싱으로 상기 IDD를 시작시킬 수 있다.
상기 시작 IDD 블록(602)에서 상기 IDD 카운터 및 터보-코드 카운터는 다른 조건들을 기반으로 초기 파워 업(power up), 리셋들, 핸드오버들, 혹은 그들의 조합 동안 0으로 초기화될 수 있다. 상기 통신 시스템(500), 상기 하드웨어 생산자, 상기 소프트웨어 생산자, 혹은 그들의 조합은 상기 통신 시스템(500)의 제한들 및 지연들을 기반으로 상기 IDD 제한 및 터보-코드 제한을 미리 결정할 수 있다.
상기 시작 IDD 블록(602)에서 상기 통신 시스템(500)은 도 1의 상기 코드 워드(122)를 검출하고 도 5의 상기 검출기-외부-정보(520)를 상기 디코더 모듈(506)로 전달할 수 있다. 검출 블록(604)에서 상기 검출기 모듈(504)은 상기 코드 워드(122)의 인스턴스 혹은 도 1의 상기 수신 신호(116)의 심볼을 검출할 수 있고, 상기 검출기-외부-정보(520)를 계산하여 상기 디코더 모듈(506)로 전달할 수 있다.
초기화 블록(606)에서 상기 IDD 카운터와 상기 터보-카운터가 둘 다 0일 때, 상기 통신 시스템(500)은 상기 억세스 모듈(509)이 상기 추가-디코딩 모듈(508)로부터 상기 디코더 모듈(506)로의 상기 피드백을 0으로 설정하도록 할 수 있다. 상기 초기화 블록(606)에서 상기 디코더 모듈(506)은 도 5의 상기 저장된 피드백(580) 및 도 5의 상기 연역적 검출기-정보(512)를 0으로 설정할 수 있다.
결정 이전-결과 블록(608)에서 상기 IDD 카운터가 0보다 크고, 상기 터보-코드 카운터가 0일 때, 상기 통신 시스템(500)은 상기 억세스 모듈(509)이 상기 추가-디코딩 모듈(508)로부터의 마지막 피드백을 상기 디코더 모듈(506)에 대한 입력으로 설정하도록 할 수 있다. 상기 결정 이전-결과 블록(608)에서 상기 억세스 모듈(509)은 상기 저장된 피드백(580)을 상기 디코더 모듈(506)로 전달할 수 있고, 상기 디코더 모듈(506)은 도 5의 상기 연역적 디코더 정보(524)의 값을 상기 저장된 피드백(580)으로 설정할 수 있다. 첫 번째 1/2 계산 블록(610)에서 상기 디코더 모듈(506)은 도 5의 상기 디코더-외부-값(530)을 계산하여 상기 추가-디코딩 모듈(508)로 전달할 수 있다.
두 번째 1/2 계산 블록(612)에서 상기 추가-디코딩 모듈(508)은 도 5의 상기 추가-디코더-정보(540)를 계산하여 상기 디코더 모듈(506)로 전달할 수 있다. 상기 추가-디코딩 모듈(508)은 또한 상기 루프를 종료시키고 상기 디코딩이 도 5의 상기 에러-체크 모듈(550)의 도 5의 상기 체크 섬 상태(560)를 기반으로 수락 가능하다고 검출할 수 있다.
상기 추가-디코딩 모듈(508)은 상기 터보-코드 카운터를 1씩 증가시키고 상기 추가-디코더-정보(540)를 상기 디코더 모듈(506)로 전다할 수 있다. 상기 디코더 모듈(506)은 상기 첫 번째 1/2 계산 블록(610)에서 상기 추가-디코더-정보(540) 및 상기 검출기-외부-정보(520)를 사용하여 상기 디코더-외부-값(530)을 재계산할 수 있다.
상기 디코더 모듈(506)과 상기 추가-디코딩 모듈(508)간의 반복은 상기 터보-코드 카운터가 상기 터보-코드 제한보다 작은 한 계속될 수 있다. 상기 터보-코드 카운터가 상기 해당하는 제한보다 크거나 같을 때, 상기 IDD 카운터는 1씩 증가될 수 있고, 상기 터보-코드 카운터는 0으로 리셋될 수 있다.
상기와 같은 조건들이 존재할 경우, 상기 통신 시스템(500)은 억세스 가능 블록(614)에서 상기 추가-디코더-정보(540)를 저장할 수 있다. 상기 통신 시스템(500)은 상기 억세스 모듈(509)이 상기 추가-디코더 정보(540)의 값을 상기 저장된 피드백(580)으로 저장하게 할 수 있다. 상기 통신 시스템(500)은 또한 상기 억세스 모듈(509)이 상기 추가-디코더-정보(540)를 상기 디코더 모듈(506)로 전달하지 않도록 함으로써 상기 내부 터보 루프를 정지시킬 수 있다. 상기 억세스 가능 블록(614)에서 상기 추가-디코딩 모듈(508)은 또한 상기 디코더-외부-값(530), 상기 추가-디코더 정보(540), 혹은 그들의 조합을 상기 검출기 모듈(504)로 전달할 수 있다.
상기 저장된 피드백(580)은 이 포인트(point)에서 혹은 상기 디코더 모듈(506)과 상기 추가-디코딩 모듈(508)간의 각 상호 동작 동안 상기 억세스 모듈(509)에 저장될 수 있다. 상기 검출기 모듈(504)은 상기 추가-디코딩 모듈(508)로부터의 입력들을 사용하여 상기 검출기-외부-정보(520)를 재계산할 수 있다.
상기 디코더 모듈(506)이 0보다 큰 상기 IDD 카운터를 가지는 입력들을 수신할 때와 같이, 상기 초기 외부 루프 후의 상기 검출기 모듈(504)로부터 상기 입력들을 수신할 때, 상기 디코더 모듈(506)은 0 대신에 상기 억세스 모듈(509)로부터의 상기 저장된 피드백(580)을 상기 디코더-외부-값(530)을 계산할 경우의 초기값으로 사용할 수 있다. 상기 디코더 모듈(506)은 상기 연역적 정보로서 상기 저장된 피드백(580) 및 검출기-외부-정보(520)를 사용할 수 있다.
상기 디코더 모듈(506), 상기 추가-디코딩 모듈(508), 상기 검출기 모듈(504)간의 상기 상호 동작들은 상기에서 설명한 바와 같이 계속될 수 있다. 상기 검출기 모듈(504)을 포함하는 상기 외부 루프는 상기 IDD-코드 카운터가 상기 IDD-코드 제한보다 작은 한 계속될 수 있다. 상기 IDD-코드 카운터가 상기 IDD-코드 제한보다 크거나 같을 때, 상기 통신 시스템(500)은 엔드 루프 블록(616)에서 상기 루프를 종료함으로써 상기 메모리를 사용하는 IDD를 종료시킬 수 있다.
상기 디코더 모듈(506)과 상기 추가-디코딩 모듈(508)간의 상기 계산들 및 상호 동작들은 일반적으로 상기 터보 코드 혹은 상기 터보 검출기를 구현하기 위해 사용될 수 있다. 상기 검출기 모듈(504)을 포함하는 상기 계산들 및 상호 동작들은 일반적으로 상기 반복-검출-디코딩 방법들을 구현하기 위해 사용될 수 있다.
상기 저장된 피드백(580)과 상기 디코더-외부-값(530)의 조합은 상기 수신 신호(116)의 보다 정확한 검출 및 디코딩을 제공하고, 보다 나은 신호 품질 및 낮은 에러들을 이끌 수 있다는 것을 알 수 있다. 상기 저장된 피드백(580)과 상기 디코더-외부-값(530)은 상기 검출기 모듈(504)과 상기 디코더 모듈(506)로부터의 상호 동작들간의 상기 현재의 시작 포인트를 상기 이전 결과들로 추정할 수 있다. 상기 추정은 상기 추정된 혹은 실제 값들에 따른 보다 빠른 컨버젼스(convergence)를 이끌 것이고, 상기 검출의 속도 및 품질을 개선시킬 수 있다.
또한, 상기 저장된 피드백(580)과 상기 추가-디코더-정보(540)의 조합은 도 1의 상기 기지국(106)의 송신 능력을 개선시킨다는 것을 알 수 있다. 상기 저장된 피드백(580)과 상기 추가-디코더-정보(540)는 에러 레이트 성능을 개선시킬 수 있다. 상기 개선된 에러 레이트 성능은 상기 기지국(106)이 데이터를 재송신할 필요를 감소시킬 수 있고, 상기 기지국(106)의 상기 프로세싱 버든(processing burden) 및 멀티플렉싱 능력(multiplexing capacity)을 개선시킬 수 있다.
또한, 상기 저장된 피드백(580), 상기 검출기-외부-정보(520), 상기 디코더-외부-값(530), 상기 추가-디코더-정보(540)의 조합은 도 1의 상기 기지국(106) 및 이동 단말기(102)간의 보다 빠른 송신 레이트를 제공한다는 것을 알 수 있다. 상기 저장된 피드백(580), 상기 검출기-외부-정보(520), 상기 디코더-외부-값(530), 상기 추가-디코더-정보(540)의 조합은 도 1의 상기 시스테메틱 비트, 패리티 비트(124) 및 도 1의 상기 마지막 패리티(126)에 대한 LLR을 업데이트할 수 있고, 더 높은 코딩 레이트에서 상기 신호의 정정 검출을 보장할 수 있다. 상기 패리티 비트들을 포함하는, 모든 인코딩된 비트들에 대한 상기 출력 외부 정보를 계산하는 것은 도 1의 상기 이동 단말기(102)의 성능을 개선할 수 있다.
또한, 상기 저장된 피드백(580)과 상기 체크 섬 상태(560)의 조합은 상기 수신 신호(116)를 검출 및 디코딩할 경우 상기 효율성을 증가시킬 수 있다는 것을 알 수 있다. 상기 저장된 피드백(580)과 상기 체크 섬 상태(560)는 빠른 종료를 위한 메카니즘으로 동작할 수 있고, 필요한 반복들의 횟수를 감소시킬 수 있다.
상기 검출기 모듈(504), 상기 디코더 모듈(506), 상기 추가-디코딩 모듈(508), 혹은 그들의 조합은 또한 스케일 팩터들을 사용할 수 있다. 상기 검출기-외부-정보(520), 상기 디코더-외부-값(530), 상기 추가-디코더-정보(540), 혹은 그들의 조합은 계산된 팩터 혹은 미리 결정된 팩터를 사용하여 스케일될 수 있다. 상기 스케일 팩터들은 준최적 검출기 및 디코더를 사용하는 것의 결과로서 상기 over-optimistic LLR을 조정하기 위해 사용될 수 있다. 상기 스케일 팩터들의 사용은 도 5의 상기 하드웨어 레이팅(510)에 의해 결정될 수 있다.
일 예로, 각 모듈은 각 모듈에 대한 상기 하드웨어 레이팅(510)으로부터 상기 스케일 팩터들을 도출하는 미리 결정되어 있는 수학식을 가질 수 있다. 또한, 일 예로, 각 모듈은 상기 스케일 팩터에 대해 미리 결정되어 있는 임계값 및 값을 나타낼 수 있다. 상기 모듈들은 상기 하드웨어 레이팅(510)과 상기 임계값을 비교하고 상기 비교를 기반으로 상기 스케일 팩터를 사용할 수 있다. 상기 미리 결정되어 있는 수학식들, 임계값들, 스케일 팩터 값들, 혹은 그들의 조합은 상기 통신 시스템(500), 상기 하드웨어 생산자, 상기 소프트웨어 생산자, 혹은 그들의 조합에 의해 미리 설정될 수 있다.
상기 프로세싱된 심볼 혹은 코드 워드는 상기 기지국(106)으로부터의 혹은 상기 기지국(106)을 통한 상기 메시지 혹은 데이터를 프로세싱하기 위해 사용될 수 있다. 일 예로, 상기에서 설명한 바와 같은 방법들은 상기 이동 단말기(102) 및 상기 기지국(106)을 동기화시키거나, 혹은 또한 상기 수신 신호(116)에서 메시지 혹은 데이터를 검출 및 디코딩하기 위해 사용될 수 있다. 도 3의 상기 검출기 모듈(304), 도 3의 상기 디코더 모듈(306), 상기 검출기 모듈(504), 상기 디코더 모듈(506), 상기 추가-디코딩 모듈(508), 상기 수신 신호(116), 혹은 그들의 조합의 결과들은 추가적으로 프로세싱될 수 있고 상기 사용자에게 통신될 수 있다. 상기 결과들은 도 2의 상기 제1 사용자 인터페이스(218)을 통해 디스플레이되거나 혹은 오디오적으로 전달될 수 있다.
상기 통신 시스템(100)은 각 반복에서 한번에 상기 검출기 모듈(304), 상기 디코더 모듈(306), 상기 검출기 모듈(504), 상기 디코더 모듈(506) 및 상기 추가-디코딩 모듈(508) 중 하나를 동작시킬 수 있고, 상기 수신 신호의 한 개의 코드 워드를 완벽하게 프로세싱할 수 있다. 상기 통신 시스템(100)은 또한 동시에 동작하거나 혹은 상기 수신 신호의 다수개의 코드 워드들을 동시에 프로세싱하는 다수 개의 모듈들을 가질 수 있다.
상기 통신 시스템(100)은 도 4의 직렬 구성(401) 혹은 상기 병렬 구성에서 상기 검출기 모듈(304), 상기 디코더 모듈(306), 상기 검출기 모듈(504), 상기 추가-디코딩 모듈(508)을 가질 수 있다. 직렬 구성(401)에서, 상기 통신 시스템(100)은 상기 검출기 모듈(304)이 상기 수신 신호(116)내의 단일 코드 워드의 모든 스트림들을 검출하도록 할 수 있다.
상기 통신 시스템(100)은 상기 검출기 모듈(304)이 상기 코드 워드의 다른 인스턴스를 검출 및 프로세싱하기 전에 상기 단일 코드 워드를 디코딩할 수 있다. 상기 검출기 모듈은 도 3의 상기 디코더-외부-값(330), 상기 추가-디코더-정보(540), 상기 코드 워드(122)의 첫 번째 인스턴스의 상기 검출기-외부-정보(320), 혹은 그들의 조합을 사용하여 상기 수신 신호(116) 내의 다음 코드 워드를 검출할 수 있다.
병렬 구성에서, 상기 통신 시스템(100)은 상기 검출기 모듈(304)이 상기 수신 신호(116) 내의 모든 코드 워드들의 모든 스트림들을 검출하도록 할 수 있다. 상기 디코더 모듈들은 상기 검출 후에 상기 모든 코드 워드들을 디코딩할 수 있다.
상기 디코더 모듈(306) 및 상기 추가-디코딩 모듈(508)을 사용하는 상기 직렬 구성(401)을 가지는 상기 통신 시스템(100)은 도 1의 상기 송신 신호(110)의 보다 나은 에러 레이트 성능을 제공한다는 것을 알 수 있다. 상기 디코더 모듈(306) 및 상기 추가-디코딩 모듈(508)을 사용하는 상기 직렬 구성(401)은 상기 이전 검출에 대해 상기 디코더 모듈(306) 및 상기 추가-디코딩 모듈(508)의 출력들을 기반으로 각 연속적인 검출들을 조정하는 것을 허여한다.
시간 주기를 통한 도 3의 상기 귀납적-디코더 데이터(318), 도 3의 상기 검출기-외부-정보(320), 도 3의 상기 귀납적-디코더-데이터(328), 상기 디코더-외부-값(330), 혹은 그들의 조합의 물리 변환은 상기 전화 통화 동안이 프로젝트되는 사운드(projected sound)들 혹은 디스플레이되는 정보와 같은 상기 물리 세계에서의 물리 변경을 초래한다. 상기 물리 세계에서의 이동은 상기 통신 시스템(100)으로 피드백되어 상기 통신 시스템(100)을 추가적으로 동작시킬 수 있다. 일 예로, 시간 주기를 통한 상기 검출기-외부-정보(320), 상기 디코더-외부-값(330), 혹은 그들의 조합에서의 변경들은 사용자가 웹-컨텐트(web-content)를 스트리밍하거나, 혹은 다른 사용자로 지속적으로 통화하는 것을 가능하게 할 수 있다.
또한, 도 1의 상기 NACK(120) 다음의 재송신들 동안을 포함하는 시간 주기를 통한 도 5의 상기 귀납적 검출기-데이터(516), 상기 검출기-외부-정보(520), 도 5의 상기 귀납적-디코더-데이터(526), 상기 디코더-외부-값(530), 상기 추가-디코더-정보(540), 혹은 그들의 조합의 물리 변환은 디스플레이되는 웹페이지 혹은 사진의 정정 혹은 업데이트와 같은 상기 물리 세계에서의 이동을 초래한다. 상기 물리 세계에서의 이동은 상기 통신 시스템(100)으로 피드백되어 상기 통신 시스템(100)을 추가적으로 동작시킬 수 있다.
또한, 상기 수신 신호(116)에서의 캡쳐(capture)된 시청각 묘사와 같은, 시간 주기를 통한 상기 수신 신호(116)의 물리 변환은 길을 따라 가거나 혹은 영상 통화를 지속적으로 하는 사용자와 같은 상기 물리 세계에서의 이동을 초래한다. 상기 수신 신호(116)의 물리 변환은 상기 귀납적-검출기-데이터(318) 혹은 상기 귀납적-검출기-데이터(516), 상기 검출기-외부-정보(320) 혹은 상기 검출기-외부-정보(520), 상기 귀납적-디코더-데이터(328) 혹은 상기 귀납적-디코더-데이터(526), 혹은 상기 디코더-외부-값(330) 혹은 상기 디코더-외부-값(530), 혹은 그들의 조합에 대한 물리 변경들을 초래한다. 상기 물리 세계에서의 이동은 상기 통신 시스템(100)으로 피드백되어 상기 통신 시스템(100)을 추가적으로 동작시킬 수 있다.
상기에서 설명한 바와 같은 다양한 모듈들은 도 2의 상기 제1 제어 유닛(212)에서 전용 회로 혹은 프로그램된 어레이(programmed array)들과 같은 하드웨어로 구현될 수 있다. 상기 다른 모듈들은 또한 상기 이동 단말기(102)에서 별도의 하드웨어 메커니즘, 회로, 혹은 디바이스(도시되어 있지 않은), 상기 기지국들, 혹은 그들의 조합으로 구현될 수 있다.
이제부터 도 7을 참조하면, 본 발명의 다른 실시예에서의 통신 시스템의 동작 방법(700)의 플로우 차트가 도시되어 있다. 상기 방법(700)은 블록(702)에서 수신 신호로부터 계산되는, 귀납적-검출기-데이터, 검출기-외부-정보, 귀납적-디코더-데이터, 디코더-외부-값, 혹은 그들의 조합을 유지하고; 블록(704)에서 상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합으로부터 연역적-디코더-정보 혹은 연역적-검출기-정보를 결정하고; 블록(706)에서 디바이스를 통한 통신을 위해 상기 연연적-디코더-정보 혹은 상기 연연적-검출기-정보를 사용하여 상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합을 조정하는 것을 포함한다.
상기 실시예들의 또 다른 중요한 측면들은 가격 감소, 시스템 간략화, 성능 개선의 역사적 트렌드를 중요하게 지원하고 서비스한다는 것을 포함한다.
상기 실시예들의 이런 중요한 측면 및 다른 중요한 측면은 또한 결과적으로 상기 기술의 스테이트를 적어도 다음 레벨로 증진시킨다는 것이다.
따라서, 본 발명의 상기 통신 시스템은 시스템들에서의 신뢰성을 개선시키기 위해서 중요하고, 현재까지는 잘 알려져 있지 않고 유용하지 않은 해결 방식들 및 기능적 측면들을 배치한다는 것을 알 수 있다. 상기 결과적인 프로세스들과 구성들은 간단하고, 비용 효율적이고, 복잡하지 않고, 높은 융통성을 가지며, 효율적이며, 공지된 기술들을 적용함으로써 구현될 수 있고, 따라서 통신 시스템을 효율적으로 경제적으로 생산하는 것에 대해 쉽게 적합해진다.
본 발명의 다른 중요한 측면은 가격 감소, 시스템 간략화, 성능 개선의 역사적 트렌드를 중요하게 지원하고 서비스한다는 것이다.
본 발명의 이런 중요한 측면 및 다른 중요한 측면은 또한 결과적으로 상기 기술의 스테이트를 적어도 다음 레벨로 증진시킨다는 것이다.
본 발명이 특정 최적 모드로 설명되었지만, 많은 대체들, 수정들, 및 변경들이 상기한 바와 같은 설명의 관점에서 해당 기술 분야의 당업자에게 자명할 것이라는 것이 이해될 수 있을 것이다. 따라서, 첨부된 청구항들의 범위 내에 존재하는, 상기와 같은 모든 대체들, 수정들, 및 변경들이 포함되는 것이 의도될 것이다. 여기에서 설명되는 혹은 첨부 도면에서 도시되는 모든 사항들은 도시를 위한 것이고, 제한되지 않는 것으로 해석될 것이다.

Claims (12)

  1. 통신 시스템의 동작 방법에 있어서,
    수신 신호로부터 계산되는, 귀납적-검출기-데이터, 검출기-외부-정보, 귀납적-디코더-데이터, 디코더-외부-값, 혹은 그들의 조합을 유지하는 과정과;
    상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합으로부터 연역적-디코더-정보 혹은 연역적-검출기-정보를 결정하는 과정과;
    디바이스를 통한 통신을 위해 상기 연역적-디코더-정보 혹은 상기 연역적-검출기-정보를 사용하여 상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합을 조정하는 과정을 포함하되,
    상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합을 유지하는 과정은:
    이전 반복에서 계산되고 억세스 모듈(access module)로 전달되는 상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합에 억세스하는 과정을 포함함을 특징으로 하는 통신 시스템의 동작 방법.
  2. 제1항에 있어서,
    상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합을 조정하는 과정은:
    상기 연역적-검출기-정보를 기반으로 상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 혹은 그들의 조합을 재계산하는 과정과;
    상기 연역적-디코더-정보를 기반으로 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합을 재계산하는 과정을 포함함을 특징으로 하는 통신 시스템의 동작 방법.
  3. 삭제
  4. 제1항에 있어서,
    상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합을 조정하는 과정은 상기 연역적 검출기-정보, 상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 연역적-디코더-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합을 스케일링(scaling)하여 하드웨어 레이팅(hardware rating)을 처리하는 과정을 포함함을 특징으로 하는 통신 시스템의 동작 방법.
  5. 제1항에 있어서,
    상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합을 조정하는 과정은 직렬 구성에 따라 상기 귀납적-검출기-데이터, 상기 검출기-외부-정보, 상기 귀납적-디코더-데이터, 상기 디코더-외부-값, 혹은 그들의 조합을 조정하는 과정을 포함함을 특징으로 하는 통신 시스템의 동작 방법.
  6. 제1항에 있어서,
    송신 신호를 추정하기 위해 상기 수신 신호를 사용하여 상기 검출기-외부-정보를 계산하는 과정과;
    상기 검출기-외부-정보를 사용하여 상기 디코더-외부-값을 계산하는 과정과;
    상기 디코더-외부-값을 사용하여 추가-디코더-정보를 계산하는 과정과;
    상기 추가-디코더-정보로부터 저장된 피드백(feedback)을 결정하는 과정을 더 포함하고,
    상기 디코더-외부-값은, 디바이스를 통한 통신을 위해 상기 저장된 피드백을 사용하여 조정됨을 특징으로 하는 통신 시스템의 동작 방법.
  7. 제6항에 있어서,
    상기 검출기-외부-정보를 계산하는 과정은 직렬 구성에 따라 상기 검출기-외부-정보를 계산하는 과정을 포함함을 특징으로 하는 통신 시스템의 동작 방법.
  8. 제6항에 있어서,
    상기 디코더-외부-값은, 상기 저장된 피드백을 사용하여 재계산됨을 특징으로 하는 통신 시스템의 동작 방법.
  9. 제6항에 있어서,
    상기 수신 신호를 사용하여 패리티 비트(parity bit) 및 마지막 패리티(latter parity)를 결정하는 과정과;
    상기 디코더-외부-값을 사용하여 상기 패리티 비트를 처리하는 과정과;
    상기 추가-디코더-정보를 사용하여 상기 마지막 패리티를 처리하는 과정을 더 포함함을 특징으로 하는 통신 시스템의 동작 방법.
  10. 제6항에 있어서,
    상기 수신 신호가 부정 인지(negative acknowledgement)에 대한 응답으로 송신될 때 상기 검출기-외부-정보를 합산하는 과정을 더 포함하며,
    상기 합산된 검출기-외부-정보를 사용하여 상기 디코더-외부-값이 조정됨을 특징으로 하는 통신 시스템의 동작 방법.
  11. 청구항 1, 청구항 2, 및 청구항 4 내지 청구항 10 중 하나의 방법을 수행하는 통신 시스템.
  12. 삭제
KR1020157000917A 2012-06-14 2013-05-31 반복 검출기 및 디코더를 사용하는 통신 시스템 및 그 동작 방법 KR102103716B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/523,824 2012-06-14
US13/523,824 US8831146B2 (en) 2012-06-14 2012-06-14 Communication system with iterative detector and decoder and method of operation thereof
PCT/KR2013/004817 WO2013187621A1 (en) 2012-06-14 2013-05-31 Communication system with iterative detector and decoder and method of operation thereof

Publications (2)

Publication Number Publication Date
KR20150023750A KR20150023750A (ko) 2015-03-05
KR102103716B1 true KR102103716B1 (ko) 2020-04-24

Family

ID=49755904

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020157000917A KR102103716B1 (ko) 2012-06-14 2013-05-31 반복 검출기 및 디코더를 사용하는 통신 시스템 및 그 동작 방법

Country Status (4)

Country Link
US (1) US8831146B2 (ko)
EP (1) EP2862293B1 (ko)
KR (1) KR102103716B1 (ko)
WO (1) WO2013187621A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9071983B2 (en) * 2012-08-28 2015-06-30 Samsung Electronics Co., Ltd. Communication system with repeat-response processing mechanism and method of operation thereof
US9467171B1 (en) * 2013-04-08 2016-10-11 Marvell International Ltd. Systems and methods for on-demand exchange of extrinsic information in iterative decoders
US10484135B2 (en) * 2014-12-15 2019-11-19 Qualcomm Incorporated Mitigation of bursty interference
US10795637B2 (en) * 2017-06-08 2020-10-06 Dts, Inc. Adjusting volume levels of speakers
US11775382B2 (en) * 2020-12-09 2023-10-03 Micron Technology, Inc. Modified parity data using a poison data unit

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060188044A1 (en) * 2005-02-23 2006-08-24 Nec Laboratories America, Inc. Reduced-complexity multiple-input multiple-output (MIMO) channel detection via sequential Monte Carlo

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7154936B2 (en) 2001-12-03 2006-12-26 Qualcomm, Incorporated Iterative detection and decoding for a MIMO-OFDM system
DE60206873T2 (de) * 2002-02-14 2006-06-14 Lucent Technologies Inc Empfänger und Verfahren für mehrfacheingabe und mehrfachausgabe iterative Detektion mittels Rückkopplung von weichen Entscheidungen
US7516389B2 (en) 2004-11-04 2009-04-07 Agere Systems Inc. Concatenated iterative and algebraic coding
KR100863702B1 (ko) 2005-12-14 2008-10-15 삼성전자주식회사 다중 안테나 통신시스템에서 반복적 검출 및 복호를 위한장치 및 방법
KR100923915B1 (ko) 2005-12-16 2009-10-28 삼성전자주식회사 다중 안테나 시스템에서 반복 검출 및 복호 수신 장치 및방법
JP4904963B2 (ja) * 2006-07-21 2012-03-28 富士通株式会社 通信システム及び通信方法並びに送信機及び受信機
KR100958792B1 (ko) * 2007-12-17 2010-05-18 한국전자통신연구원 Mimo 시스템을 위한 가속화된 터보 송수신 장치 및방법
EP2200240B1 (en) 2008-12-18 2011-06-15 STMicroelectronics Srl Method and apparatus for near-optimal computation of bit soft information in multiple antenna communication systems with iterative detection and decoding
US8514984B2 (en) * 2009-09-02 2013-08-20 Qualcomm Incorporated Iterative decoding architecture with HARQ combining and soft decision directed channel estimation
US8510642B2 (en) 2009-09-25 2013-08-13 Stmicroelectronics, Inc. System and method for map detector for symbol based error correction codes
US8516347B1 (en) * 2010-05-25 2013-08-20 Marvell International Ltd. Non-binary LDPC extrinsic calculation unit (LECU) for iterative decoding
US20120020402A1 (en) * 2010-07-26 2012-01-26 Technische Universitat Berlin Receiver

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060188044A1 (en) * 2005-02-23 2006-08-24 Nec Laboratories America, Inc. Reduced-complexity multiple-input multiple-output (MIMO) channel detection via sequential Monte Carlo

Also Published As

Publication number Publication date
US8831146B2 (en) 2014-09-09
KR20150023750A (ko) 2015-03-05
EP2862293B1 (en) 2020-01-15
EP2862293A4 (en) 2016-05-25
EP2862293A1 (en) 2015-04-22
US20130336430A1 (en) 2013-12-19
WO2013187621A1 (en) 2013-12-19

Similar Documents

Publication Publication Date Title
EP2936721B1 (en) Communication system with compound coding mechanism and method of operation thereof
US9954643B2 (en) Communication system with repeat-response combining mechanism and method of operation thereof
US10153811B2 (en) Communication system with communication-layer maximization mechanism and method of operation thereof
KR102103716B1 (ko) 반복 검출기 및 디코더를 사용하는 통신 시스템 및 그 동작 방법
KR102142513B1 (ko) 블라인드 디코딩 메카니즘을 사용하는 통신 시스템 및 그 동작 방법
EP2893738B1 (en) Communication system with whitening feedback mechanism and method of operation thereof
US8942323B2 (en) Communication system with signal-to-noise ratio adjustment mechanism and method of operation thereof
US9071983B2 (en) Communication system with repeat-response processing mechanism and method of operation thereof
US10108483B2 (en) Computing system with error handling mechanism and method of operation thereof
US9203659B2 (en) Computing system with interference classification mechanism and method of operation thereof
US9215017B2 (en) Computing system with decoding sequence mechanism and method of operation thereof
KR102177755B1 (ko) 플렉서블 반복 응답 메커니즘을 사용하는 통신 시스템 및 이의 운영 방법
US8897406B2 (en) Communication system with iterative detector and decoder and method of operation thereof
KR102117981B1 (ko) 수신기 최적화 메커니즘을 사용하는 통신 시스템 및 그 동작 방법
KR102148181B1 (ko) 피드백 동작 방식의 통신 시스템과 그에 따른 동작 방법

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right