KR20070019586A - NxM 다중 입출력 시스템에서의 재전송 선택 방법 및장치 - Google Patents

NxM 다중 입출력 시스템에서의 재전송 선택 방법 및장치 Download PDF

Info

Publication number
KR20070019586A
KR20070019586A KR1020060075758A KR20060075758A KR20070019586A KR 20070019586 A KR20070019586 A KR 20070019586A KR 1020060075758 A KR1020060075758 A KR 1020060075758A KR 20060075758 A KR20060075758 A KR 20060075758A KR 20070019586 A KR20070019586 A KR 20070019586A
Authority
KR
South Korea
Prior art keywords
retransmission
receiver
packet
signal
channel
Prior art date
Application number
KR1020060075758A
Other languages
English (en)
Other versions
KR101245403B1 (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 삼성전자주식회사
Priority to KR1020060075758A priority Critical patent/KR101245403B1/ko
Priority to US11/503,289 priority patent/US8064428B2/en
Priority to DE602006017780T priority patent/DE602006017780D1/de
Priority to EP06118893A priority patent/EP1753154B1/en
Publication of KR20070019586A publication Critical patent/KR20070019586A/ko
Application granted granted Critical
Publication of KR101245403B1 publication Critical patent/KR101245403B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/02Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas
    • H04B7/04Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas
    • H04B7/06Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station
    • H04B7/0613Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station using simultaneous transmission
    • H04B7/0615Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station using simultaneous transmission of weighted versions of same signal
    • H04B7/0619Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station using simultaneous transmission of weighted versions of same signal using feedback from receiving side
    • H04B7/0621Feedback content
    • H04B7/0623Auxiliary parameters, e.g. power control [PCB] or not acknowledged commands [NACK], used as feedback information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/02Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas
    • H04B7/04Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas
    • H04B7/06Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station
    • H04B7/0613Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station using simultaneous transmission
    • H04B7/0667Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station using simultaneous transmission of delayed versions of same signal
    • H04B7/0669Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station using simultaneous transmission of delayed versions of same signal using different channel coding between antennas
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/02Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas
    • H04B7/04Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas
    • H04B7/08Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the receiving station
    • H04B7/0837Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the receiving station using pre-detection combining
    • H04B7/0842Weighted combining
    • H04B7/0848Joint weighting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0009Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the channel coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/02Arrangements for detecting or preventing errors in the information received by diversity reception
    • H04L1/06Arrangements for detecting or preventing errors in the information received by diversity reception using space diversity
    • H04L1/0618Space-time coding
    • H04L1/0625Transmitter arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/02Arrangements for detecting or preventing errors in the information received by diversity reception
    • H04L1/06Arrangements for detecting or preventing errors in the information received by diversity reception using space diversity
    • H04L1/0618Space-time coding
    • H04L1/0637Properties of the code
    • H04L1/0668Orthogonal systems, e.g. using Alamouti codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/1607Details of the supervisory signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1812Hybrid protocols; Hybrid automatic repeat request [HARQ]
    • H04L1/1819Hybrid protocols; Hybrid automatic repeat request [HARQ] with retransmission of additional or different redundancy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1835Buffer management
    • H04L1/1845Combining techniques, e.g. code combining
    • 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/1867Arrangements specially adapted for the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B7/00Radio transmission systems, i.e. using radiation field
    • H04B7/02Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas
    • H04B7/04Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas
    • H04B7/06Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station
    • H04B7/0697Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station using spatial multiplexing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1812Hybrid protocols; Hybrid automatic repeat request [HARQ]

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Radio Transmission System (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

본 발명은 NxM 안테나를 이용한 다중 입출력 시스템에서의 재전송 선택 방법 및 장치에 관한 것으로서, 송신기에서 부호화된 데이터 스트림을 N개의 서브패킷으로 나누어 N개의 송신 안테나를 통해 수신기로 전송하는 단계; 상기 수신기에서 M개의 수신 안테나를 통해 수신한 상기 N개의 서브패킷의 간섭을 제거하고 각각 독립적으로 복호하는 단계; 상기 수신기에서 상기 복호된 서브패킷의 오류 포함 유무에 따라 확인응답(ACK) 또는 부정확인응답(NACK)을 상기 송신기로 전송하는 단계; 및 상기 송신기에서 부정확인응답(NACK)을 수신한 경우 알라무티 시공간 부호화 방식을 이용하여 재전송 선택된 서브패킷을 상기 수신기로 재전송하는 단계를 포함하는 것을 특징으로 한다.
NxM MIMO, HARQ, 알라무티

Description

NxM 다중 입출력 시스템에서의 재전송 선택 방법 및 장치{METHOD AND APPARATUS FOR ORDERING RETRANSMISSIONS IN AN NxM MIMO SYSTEM}
도 1은 본 발명의 실시예에 따른 NxM 안테나를 이용한 MIMO HARQ 시스템의 예를 나타낸 도면
도 2는 본 발명에 따라 서로 다른 시나리오 3x4에 알고리즘을 사용한 R2 및 R3에 대하여 신호대잡음비(
Figure 112006057330996-PAT00001
)에 대한 비트오류율(Bit Error Rate: BER)를 나타낸 도면
도 3은 본 발명에 따라 서로 다른 시나리오 3x5에 알고리즘을 사용한 R2 및 R3에 대하여 신호대잡음비(
Figure 112006057330996-PAT00002
)에 대한 비트오류율(Bit Error Rate: BER)를 나타낸 도면
도 4는 본 발명의 따른 알고리즘을 사용하여 3x3, 3x4 및 3x5 MIMO의 성능을 비교한 도면
도 5는 본 발명에 따라 4x5 MIMO의 경우에 대하여 신호대잡음비(
Figure 112006057330996-PAT00003
)에 대한 비트오류율(Bit Error Rate: BER)를 나타낸 도면
도 6은 본 발명의 따른 알고리즘을 사용하여 4x4 및 4x5 MIMO 간의 성능을 비교한 도면
본 발명은 N개의 전송 안테나와 M개의 수신 안테나(NxM 안테나)를 이용한 다중 입출력(Multi-Input Multi-Output: MIMO) 시스템에서의 재전송 선택 방법 및 장치에 관한 것으로서, 특히 NxM 안테나를 이용한 MIMO 시스템에서의 전처리 과정에 대하여 다음 패킷이 재전송 될 때 유니터리 매트릭스를 곱하는 대신에 알라무티 시공간 부호화(Alamouti space-time coding)를 활용한 안테나 별 재전송선택 방법 및 장치에 관한 것이다.
다중 송수신 안테나를 이용한 MIMO 시스템은 다이버시티 이득과 더불어 다중화를 통해 데이터 전송률을 극대화할 수 있는 무선 전송 방식으로서 차세대 이동통신의 핵심 기술로 자리를 잡고 있다. 한편 자동 재송 요구(Automatic Repeat reQuest: ARQ) 프로토콜은 열악한 무선채널에서 빈번하게 발생하는 패킷 전송 오류를 극복하기 위한 오류 제어 수단이다.
또한 최근에는 그 효용성을 극대화하기 위한 방안으로서 혼합 자동 재송 요구(Hybrid Automatic Repeat reQuest: HARQ) 프로토콜이 표준 규격에서 채택되고 있다. HARQ 프로토콜은 오류 정정 부호화(Forward Error Correction: FEC)와 ARQ 방식을 결합한 것으로서 수신단에서 FEC를 통해 오류 정정을 시도하고, 만일 오류 정정에 실패하면 재전송을 시도하는 것이다. 이때 순시적인 채널 상태 변화에 적응적으로 대응하기 위해 재전송시 마다 부호화율을 바꾸는 대신 재전송시에 점진적으로 오류 정정 능력을 향상하기 위해 추가적인 패리티 정보를 송신하거나 또는 반복하여 수신된 데이터 정보와 추가적인 패리티 비트를 병합할 수 있다.
이와 같은 HARQ와 MIMO를 결합한 시스템에서는 안테나 별 재전송 선택에 따라 수신단에서 결합된 신호의 간섭신호 크기가 달라져 HARQ 방식의 성능은 매우 영향을 받으므로 그에 따른 재전송 선택을 최적화할 수 있는 방법이 필요하다.
따라서 본 발명의 목적은 다음 패킷이 재전송 될 때 유니터리 매트릭스를 곱하는 대신에 알라무티 시공간 부호화(Alamouti space-time coding)를 활용함으로써 수신기의 최대 신호대잡음비를 얻을 수 있는 N개의 전송 안테나와 M개의 수신 안테나를 이용한 MIMO 시스템에서의 재전송 선택 방법 및 장치를 제공하는 것이다.
상기한 바와 같은 목적을 달성하기 위하여 창안된 본 발명의 실시예에 따른방법은, NxM 안테나를 이용한 다중 입출력 시스템에서의 재전송 선택 방법에 관한 것으로서, 송신기에서 부호화된 데이터 스트림을 N개의 서브패킷으로 나누어 N개의 송신 안테나를 통해 수신기로 전송하는 단계; 상기 수신기에서 M개의 수신 안테나를 통해 수신한 상기 N개의 서브패킷의 간섭을 제거하고 각각 독립적으로 복호하는 단계; 상기 수신기에서 상기 복호된 서브패킷의 오류 포함 유무에 따라 확인응답(ACK) 또는 부정확인응답(NACK)을 상기 송신기로 전송하는 단계; 및 상기 송신기 에서 부정확인응답(NACK)을 수신한 경우 알라무티 시공간 부호화 방식을 이용하여 재전송 선택된 서브패킷을 상기 수신기로 재전송하는 단계를 포함하는 것을 특징으로 한다.
또한, 본 발명의 실시예에 따른 송신장치는, NxM 안테나를 이용한 다중 입출력 시스템에서의 재전송 선택 송신장치로서, 정보 비트가 입력되면, 미리 결정된 부호화 방식에 의해 부호화하여 소정의 길이의 부호화된 패킷을 생성하는 채널 부호화기; 상기 부호화된 패킷들을 미리 결정된 시공간 부호화 방식에 의해 부호화하여 N개의 서브블록들로 병렬 변환한 후 출력하는 공간 역다중화기; 상기 서브블록들을 미리 결정된 변조 방식으로 변조하여 변조 심볼 스트림으로 생성한 후 상기 심볼 스트림들을 파일럿 부반송파 위치 집합 패턴에 기초하여 시간과 주파수로 매핑시켜 송신 안테나로 출력하는 심볼 매핑기들; 및 부호화된 심볼 스트림을 N개의 서브패킷으로 나누어 송신하는 N개의 송신 안테나를 포함하되, 전송한 서브패킷의 오류에 따른 부정확인응답(NACK)을 수신한 경우 알라무티 시공간 부호화 방식을 이용하여 재전송 선택된 패킷을 수신기로 재전송하는 것을 특징으로 한다.
또한, 본 발명의 실시예에 따른 수신장치는, NxM 안테나를 이용한 다중 입출력 시스템에서의 재전송 선택 수신장치로서, 부호화된 심볼 스트림을 N개의 서브패킷으로 나누어 수신하는 M개의 수신 안테나; 재전송 선택에 따라 재전송된 패킷과 이전 오류 패킷을 심볼 수준에서 함께 결합하는 전결합기; 및 상기 전결합기로부터 수신한 신호의 간섭을 제거하여 N개의 전송 데이터 서브패킷으로 분리하고, 독립적으로 복호된 서브패킷의 신호를 출력하는 검출기를 포함하되, 상기 복호된 서브패킷의 오류 포함 유무에 따라 확인응답(ACK) 또는 부정확인응답(NACK)을 송신기로 전송하는 것을 특징으로 한다.
이하 첨부된 도면을 참조하여 본 발명의 바람직한 실시예에 대한 동작원리를 상세히 설명한다. 도면상에 표시된 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 참조부호로 나타내었으며, 다음에서는 본 발명을 설명함에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다. 그리고 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
본 발명은 N개의 전송 안테나와 M개의 수신 안테나로 구성된 NxM MIMO 채널에 대한 MIMO HARQ 기술에 관한 것으로 다음 패킷이 재전송 될 때 유니터리 매트릭스를 곱하는 대신에 알라무티 시공간 부호화(Alamouti space-time coding)를 활용하여 안테나 별로 재전송 신호들을 구성하고, 측정된 채널 행렬에 기초하여 재전송 신호를 선택하는 알고리즘을 제안한다. 다음은 도 1을 참조하여 본 발명이 적용된 NxM 안테나를 이용한 MIMO HARQ 시스템 모델을 소개한다.
도 1은 본 발명의 실시예에 따른 NxM 안테나를 이용한 MIMO HARQ 시스템의 예를 나타낸 도면이다.
도 1을 참조하면, 송신기는 채널 부호화기(100), 공간 역다중화기(110) 및 심볼 매핑기들(120-1, … ,120-N) 등을 포함한다. N개의 송신 안테나와 M개의 수신 안테나로 이루어진 MIMO 시스템에서 정보 비트가 송신기로 입력되면, 채널 부호화기(100)는 미리 결정된 부호화 방식에 의해 부호화하여 소정의 길이의 부호화된 패킷을 생성한다. 공간 역다중화기(110)는 상기 부호화된 패킷들을 미리 결정된 시공간 부호화 방식에 의해 부호화하여 N개의 서브블록들로 병렬 변환한 후 출력한다. 상기 시공간 부호화 방식은 다이버시티 이득과 전송률을 고려하여 다수의 형태로 구성할 수 있으며, 송신 안테나 개수 N에 따라 구성되는 신호들은 다양한 형태를 가질 수 있다. 또한 상기 시공간 부호화 신호들 중 전송 시점에서의 채널상황과 간섭신호의 구성을 이용하여 특정 시점에 안테나 별로 전송할 신호가 선택될 수 있다. 심볼 매핑기들(120-1, …, 120-N)은 상기 서브블록들을 미리 결정된 변조 방식으로 변조하여 변조 심볼 스트림으로 생성한 후 상기 심볼 스트림들을 파일럿 부반송파 위치 집합 패턴에 기초하여 시간과 주파수로 매핑시켜 송신 안테나로 출력한다.
도 1에서는 송신 안테나1 내지 N으로부터 전송되는 신호 서브패킷을 s1 내지 sN이라 하고, 수신 안테나1 내지 M에서의 수신 신호 벡터를 r1 내지 rM이라 하였다. 각 수신 신호 벡터는 각 전송에서 복호되며, 만약 오류가 검출되면 수신기는 패킷의 재전송을 요청한다. 재전송된 패킷과 이전 오류 패킷은 이때 심볼 수준에서 함께 결합된다.
또한 수신기는 전결합기(pre-combiner)(130), 검출기(140) 등을 포함한다. 전결합기(130)는 수신 신호 벡터 r1 내지 rM를 정합 필터와 같은 복조기를 이용하여 복조한 후, 복조된 심볼을 이전 오류 패킷의 복조 심볼과 결합한다. 전 결합기를 통과한 신호는 MMSE(Minimum Mean Square Examination) 또는 ZF(Zero Forcing) 방법을 통해 간섭이 제거되고, 검출기(140)를 통해 수신 신호 벡터를 추정하고, 복호된 신호를 출력한다.
즉, 소정 횟수의 전송 후에 수신기에서는 간섭이 제거된 신호로부터 N개의 전송 데이터 패킷으로 분리하고, 독립적으로 복호한다. 복호 후에 만약 수신된 패킷이 오류를 포함하지 않으면, 수신된 패킷은 수락되어 수신기는 ACK를 송신기로 전송한다. 그러나 만약 오류를 포함하고 있으면, 수신기는 NACK를 송신기로 전송한다. NACK를 수신한 송신기는 시공간 부호화 방식을 사용하여 구성한 안테나 별 재전송 신호들 중 채널상황과 안테나 별 신호대잡음비를 고려하여 패킷을 수신기로 재전송한다.
다음은 각 재전송 내에서 신호대잡음비(SNR)의 값이 계산되며, 상기 신호대잡음비의 최대값은 각 재전송 후 결합된 채널 행렬의 행렬식을 최대화하는 것에 직접 연관됨을 나타내는 알라무티 시공간 부호화 방식의 예를 구체적으로 살펴본다. 특히, 3x3 MIMO의 경우의 예에 대해 측정된 채널 행렬에 기초하여 다중 시공간 알라무티 부호화를 사용한 재전송 알고리즘을 살펴본다. 이때, 수신기는 재전송 선택을 선택하고 송신기와 통신한다. 신호대잡음비(SNR) 기준은 선택 선택에 사용된다.
< 신호대잡음비 기준>
3x3 MIMO 시스템에 대하여, 수신 신호 벡터(r)는 다음 <수학식 1>과 같이 모델링될 수 있다.
Figure 112006057330996-PAT00004
여기서, n은 AWGN(Additive White Gaussian Noise) 벡터이고, H는 다음 <수학식 2>와 같으며,
Figure 112006057330996-PAT00005
이고,
Figure 112006057330996-PAT00006
은 초기 전송에서 송신 안테나를 통해 전송되는 시공간 역다중화된 전송신호이다. 3x3 MIMO 시스템에서 고려하는 시공간 역다중화된 신호는 다음 <수학식3>과 같다.
Figure 112006057330996-PAT00007
상기 <수학식 3>에서
Figure 112006057330996-PAT00008
Figure 112006057330996-PAT00009
번째 전송 회수를 의미하며, 상기
Figure 112006057330996-PAT00010
Figure 112006057330996-PAT00011
을 전송하는 일례이다.
또한, 재전송 행렬의 열은 다음의 <수학식 4>와 같이 나타낼 수 있다.
Figure 112006057330996-PAT00012
여기서,
Figure 112006057330996-PAT00013
,
Figure 112006057330996-PAT00014
,
Figure 112006057330996-PAT00015
이다.
수신기에서 정합 필터링 후에는 다음 <수학식 5>와 같으며,
Figure 112006057330996-PAT00016
여기서,
Figure 112006057330996-PAT00017
은 공액 트랜스포즈 연산이고,
다음의 <수학식 6>와 같은 ZF(Zero Forcing)를 하면,
Figure 112006057330996-PAT00018
여기서,
Figure 112006057330996-PAT00019
이다.
검출 오류가 첫 번째 전송에서 발생하면, 두 번째 전송(R2)의 전송 신호
Figure 112006057330996-PAT00020
는 상기 <수학식 3>의 신호 중에 하나를 선택하여 전송하게 된다. 두 번째 전송에 의한 수신 신호는 다음 <수학식 7>과 같이 나타낼 수 있다.
Figure 112006057330996-PAT00021
여기서, j는 신호대잡음비 기준에 의존할 것이다.
정합 필터링에 대해 공액
Figure 112006057330996-PAT00022
을 취하고,
Figure 112006057330996-PAT00023
을 곱하여 다음 <수학식 8>이 구해진다.
Figure 112006057330996-PAT00024
Figure 112006057330996-PAT00025
Figure 112006057330996-PAT00026
을 결합하여 ZF(Zero Forcing)를 하면 다음 <수학식 9>와 같다.
Figure 112006057330996-PAT00027
여기서,
Figure 112006057330996-PAT00028
이다.
사용할 최선의 j를 결정하기 위하여, 수신기에서 최대 신호대잡음비를 사용한다. 잡음의 자기 상관 행렬(autocorrelation matrix)은 다음 <수학식 10>과 같으며,
Figure 112006057330996-PAT00029
또한 다음 <수학식 11>과 같이 나타낼 수 있다.
Figure 112006057330996-PAT00030
여기서,
Figure 112006057330996-PAT00031
Figure 112006057330996-PAT00032
은 비상관을 가정하고,
Figure 112006057330996-PAT00033
Figure 112006057330996-PAT00034
의 콤포넌트의 잡음 분산인
Figure 112006057330996-PAT00035
은 동일함을 가정한다.
신호전력을 1로 정규화하기 위해, 각 i에 대해 각 안테나 내의 신호대잡음비(SNR)을 계산하면,
1) j=1에 대하여 <수학식 12>와 같다.
Figure 112006057330996-PAT00036
여기서,
Figure 112006057330996-PAT00037
이다.
그러므로, 수신기 SNR의 각 분지는 다음 <수학식 13>과 같이 주어진다.
Figure 112006057330996-PAT00038
2) j=2에 대하여 <수학식 14>와 같다.
Figure 112006057330996-PAT00039
여기서,
Figure 112006057330996-PAT00040
이다.
그러므로, 각 수신기의 분지 각각에서 SNR은 다음 <수학식 15>와 같이 주어진다.
Figure 112006057330996-PAT00041
2) j=3에 대하여 <수학식 16>와 같다.
Figure 112006057330996-PAT00042
여기서,
Figure 112006057330996-PAT00043
이다.
그러므로, 각 분지의 SNR은 다음 <수학식 17>과 같이 주어진다.
Figure 112006057330996-PAT00044
여기서, 모든 j에 대하여 분지의 SNR 표현은
Figure 112006057330996-PAT00045
의 행렬식과 동일한 분자를 취한다. 그러므로 벡터
Figure 112006057330996-PAT00046
는 자신의 SNR의 가장 큰 분자에 기인하며, 다음 전송(R2)에 보내질 첫 번째 것이 된다.
만약 두 번째 전송 후에도 CRC(Cyclic Redundancy Check) 코드 내에 연전히 검출 오류가 존재하면, 세 번째 전송(R3)에서 전송할 신호를 상기 <수학식 3>에서 선택하여 전송하게 되고, 수신 신호는 다음 <수학식 18>과 같이 주어진다.
Figure 112006057330996-PAT00047
여기서,
Figure 112006057330996-PAT00048
이다.
다시 잡음 상관 행렬은 다음 <수학식 19>과 같이 주어진다.
Figure 112006057330996-PAT00049
그러나, 또한 서로 다른 3개의 가능성 내에서, 그들 중 둘 간의 것만 결정할 수 있으며, 이전 과정을 통해서 벡터 중의 하나를 이미 결정하였다.
1) 벡터 시퀀스가
Figure 112006057330996-PAT00050
Figure 112006057330996-PAT00051
이면, 다음 <수학식 20>과 같다.
Figure 112006057330996-PAT00052
이때, 각 수신기의 분지에 SNR은 다음 <수학식 21>과 같이 주어진다.
Figure 112006057330996-PAT00053
2) 벡터 시퀀스가
Figure 112006057330996-PAT00054
Figure 112006057330996-PAT00055
이면, 다음 <수학식 22>과 같다.
Figure 112006057330996-PAT00056
이때, 각 수신기의 분지에 SNR은 다음 <수학식 23>과 같이 주어진다.
Figure 112006057330996-PAT00057
3) 벡터 시퀀스가
Figure 112006057330996-PAT00058
Figure 112006057330996-PAT00059
이면, 다음 <수학식 24>과 같다.
Figure 112006057330996-PAT00060
이때, 각 수신기의 분지에 SNR은 다음 <수학식 25>과 같이 주어진다.
Figure 112006057330996-PAT00061
이상과 같은 동일한 기준에 따라 SNR의 가장 큰 분자가 주어지는 두 번째 벡터가 선택될 수 있다. 이때, 가장 큰 분자를 선택하기 위해서는 행렬
Figure 112006057330996-PAT00062
의 가장 큰 행렬식을 선택하여야 한다.
이와 같은 3x3 MIMO의 예는 동일한 방식으로 4x4 MIMO의 경우로 확장이 가능하다. 4x4 MIMO 시스템에서 고려하는 시공간 부호화 신호는 다음 <수학식 26>과 같으며, 3x3 MIMO 시스템과 같은 방식을 통해 재전송 신호를 선택하여 수신기에서 결합하고 간섭신호를 제거한 후 복호를 수행한다. 4x4 MIMO 시스템의 시공간 부호화 신호는 재전송 패킷과 이전 오류 패킷의 결합된 신호의 간섭 신호와 전송률을 모두 고려하여 선택할 수 있다. 4x4 MIMO 시스템에서 고려하는 시공간 부호화 신호는 다음 <수학식 26>과 같으며, 3x3 MIMO 시스템과 같은 방식을 통해 재전송 신호를 선택하여 수신기에서 결합하고 간섭신호를 제거한 후 복호를 수행한다. 4x4 MIMO 시스템의 시공간 부호화 신호는 재전송 패킷과 이전 오류 패킷의 결합된 신호의 간섭 신호와 전송률을 모두 고려하여 선택할 수 있다.
Figure 112006057330996-PAT00063
N개의 송신 안테나를 갖는 MIMO 시스템에서 시공간 부호화 신호들의 구성은 다음과 같이 확장하여 일반화할 수 있다. N개의 송신 안테나 중 2개의 안테나를 선택하여 알라무티 시공간 부호와 같은 형태로 신호를 구성하고 나머지 안테나는 신호를 보내지 않는 방법 및 N개의 송신 안테나 중 2개의 안테나를 쌍으로 하여 N/2 개의 쌍을 구성하고 각 안테나 쌍을 각각 알라무티 시공간 부호와 같은 신호 형태로 구성하는 방법으로 이루어진다.
또한, 본 발명에서 간섭신호 제거 기법으로 사용한 ZF 기법 이외에 MMSE 기법을 함께 고려할 수 있다. 또한 이에 대한 이해를 돕기 위해 다음은 시변 채널 모델과 시변 채널의 재전송 선택 알고리즘에 대하여 살펴본다.
< 시변 채널 모델>
앞서 살펴본 예에 의하면 채널은 K번 전송의 최대값에 대하여 불변인 것을 가정하였다. 따라서 모든 재전송에 대한 채널 모델은 MxN 행렬이다. 이때 N은 전송기 안테나의 수이고, M은 수신기 안테나의 수이다.
MxN 채널 이득은 단위 전력당 비상관 복소 가우시안 확률 변수(Raleigh Flat Fading)가 동일하고 독립적으로 분포됨(independently identically distributed: i.i.d.)을 가정하며 다음 <수학식 27>과 같다.
Figure 112006057330996-PAT00064
여기서,
Figure 112006057330996-PAT00065
,
Figure 112006057330996-PAT00066
또는
Figure 112006057330996-PAT00067
이고,
Figure 112006057330996-PAT00068
은 기대값이다.
새로운 시변 채널은 패킷 전송 동안 채널 행렬이 상수로 남아있는 것을 가정한다. 각 전송에서 서로 다른 채널 행렬을 모델링하기 위해 각 채널에 대하여 AR-1(Autoregressive Model-1)이 사용된다. 상기 모델은 현재 채널과 이전 채널 간의 상관관계를 이끌어낸다. 이러한 채널을 생성하기 위해, 다음과 같은 과정이 수행된다.
1) 단위 전력당 복소 가우시안 확률 변수가 동일하고 독립적으로 분포됨(independently identically distributed: i.i.d.)으로써 MxN 확률 행렬(Random Matrix)이 생성된다.
2) 상기 AR-1 모델은 다음 <수학식 28>와 같다.
Figure 112006057330996-PAT00069
여기서, 은 탭 필터이고, n은 전력
Figure 112006057330996-PAT00071
을 가진 복소 가우시안 잡음이며, k는 전송 수이다.
Figure 112006057330996-PAT00072
Figure 112006057330996-PAT00073
값을 찾기 위해, 다음 <수학식 29>과 같이 율-워커 방정식(Yule-Walker Equation)이 필요하다.
Figure 112006057330996-PAT00074
여기서,
Figure 112006057330996-PAT00075
Figure 112006057330996-PAT00076
은 이전 채널들의 샘플 사이의 상관값이다.
3) 상기 AR-1 모델에 대한 파라미터를 얻기 위해서 <수학식 30>와 같은 상관값이 선택된다.
Figure 112006057330996-PAT00077
여기서, 첫 번째 값은 전력 정규화 값을 1로 유지하고, 두 번째 값은 이전 값과 어떻게 상관되는지를 정의한다. 이러한 값을 이용하여 이전 값들과 매우 상관되는 하나의 채널을 설계할 수 있다. 이때 얻을 수 있는 결과는 다음 <수학식 31>와 같다.
Figure 112006057330996-PAT00078
4) 새로운 채널 계수의 전력은 정규화할 필요가 없으며, 이는 용이하게 다음<수학식 32>과 같이 보일 수 있다.
Figure 112006057330996-PAT00079
< 시변 채널의 재전송 선택 알고리즘>
앞서 살펴본 예에 의하면 채널은 모든 재전송에 동일하게 한번 첫 번째 재전송 후에 채널 행렬이 알려지면 재전송 선택을 결정하는 것은 가능하다는 점을 가정하였다. 그러나, 새로운 시나리오에서는 각 재전송마다 채널 행렬이 변화된다. 따라서, 전송의 시작점에서 행렬식 기준을 사용하는 대신에 재전송이 필요할 때마다 체크하는 알고리즘이 사용된다. 이때 상기 알고리즘이 사용될 때, 다음 전송에 사용될 채널 행렬은 알 수 없으므로 일정한 방식으로 채널이 추정되어야 한다.
다음의 예는 3x3 안테나의 경우에 대하여 상기 알고리즘을 어떻게 적용하는 지를 나타낸다(더 많은 안테나에 수로 확장이 가능하다). 3x3 안테나의 경우에 다중 알라무티 부호화를 사용함으로써 재전송 행렬의 열은 다음의 <수학식 33>과 같이 나타내어 진다.
Figure 112006057330996-PAT00080
여기서,
Figure 112006057330996-PAT00081
Figure 112006057330996-PAT00082
Figure 112006057330996-PAT00083
첫 번째 전송(
Figure 112006057330996-PAT00084
) 후에 재전송(
Figure 112006057330996-PAT00085
)이 요청되면, 대안 중 하나를 결정하기 위해 다음의 <수학식 34>의 행렬식이 체크된다.
Figure 112006057330996-PAT00086
여기서,
Figure 112006057330996-PAT00087
이고,
Figure 112006057330996-PAT00088
이다. 또 한 I는 3x3 항등 행렬이고, n은 3x3 잡음 행렬이다. 앞서 정의한 상기 AR-1 모델의 기대값을 사용하여 다음 채널이 추정된다. 세 번째 전송(
Figure 112006057330996-PAT00089
)이 요청되면, 남겨진 2개의 신호 간의 하나를 결정하도록 체크해야 하는 새로운 행렬식은 다음 <수학식 34>와 같이 주어진다.
Figure 112006057330996-PAT00090
여기서, i는 두 번째 전송에서 선택된 신호의 색인이고, j는 세 번째 전송에서 선택된 신호의 색인제2벡터이며, j는 i가 속하지 않은 수 집합에 속한다. <수학식 35>에서
Figure 112006057330996-PAT00091
는 두 번째 전송으로 수신된 실제 채널 행렬에 의해 구해진다(
Figure 112006057330996-PAT00092
). 세 번째 전송에 대해서도 유사하게
Figure 112006057330996-PAT00093
은 아직 알 수 없으므로 그 값을 추정하면 다음 <수학식 36>과 같다.
Figure 112006057330996-PAT00094
또한, 네 번째 전송이 요청된 경우에 마지막으로 남겨진 신호가 사용된다.
<수치 분석 결과>
이하에서는 본 발명에 따라 NxM MIMO 시스템에 대한 5가지 경우에 대한 시뮬 레이션 결과에 대하여 살펴본다. 사용된 시뮬레이션 데이터는 단위 전력당 복소 가우시안 확률 변수가 동일하고 독립적으로 분포됨(independently identically distributed: i.i.d.)으로써 9개의 채널 이득이 가정되었고, 정보 비트 패킷의 크기가 522 비트이며, 각 패킷에 CRC가 16 비트 부가되었다. 정보 비트 패킷의 크기를 522 비트로 선택한 이유는 3, 4, 5 또는 6개의 서브패킷으로 쪼개는 것을 가능하도록 하기 위함이다. 더 자세한 시뮬레이션의 환경 변수들에 대한 사항은 아래 일례로서 예시된 시뮬레이션에 사용된 주 프로그램 코드와 주 프로그램에서 사용되는 함수들(functions)의 코드들과 같이 정의되었다.
도 2 및 도 3은 본 발명에 따라 서로 다른 시나리오 3x4, 3x5에 알고리즘을 사용한 R2 및 R3에 대하여 신호대잡음비(
Figure 112006057330996-PAT00095
)에 대한 비트오류율(Bit Error Rate: BER)를 나타낸 도면이다.
도 2 및 3을 참조하면, R1은 첫 번째 전송을 나타내며, R4은 전송이 완료된 후의 결과를 나타낸다. R2 및 R3를 전송하기 위해 알라무티 벡터의 선택이 무작위로 행해지는 의미로 "Random"이라는 용어가 도 2 및 도 3에 사용되었다. 도 2 및 3의 결과에서 모두 본 발명에 따른 행렬식 기준의 시뮬레이션의 결과가 무작위로 행해진 시뮬레이션보다 성능이 우수함을 알 수 있다.
도 4는 본 발명의 따른 알고리즘을 사용하여 3x3, 3x4 및 3x5 MIMO의 성능을 비교한 도면이다. 도 4를 참조하면, 송신기의 안테나가 3개인 경우 수신기의 안테나의 수가 증가함에 따라서 성능이 우수함을 알 수 있다.
도 5는 본 발명에 따라 4x5 MIMO의 경우에 대하여 신호대잡음비(
Figure 112006057330996-PAT00096
)에 대한 비트오류율(Bit Error Rate: BER)를 나타낸 도면이다.
도 5를 참조하면, R2 내지 R6에 대하여 도 2 및 3과 같이 본 발명에 따른 알고리즘을 적용하였고, R1은 제1전송을 나타내며, R7은 전송이 완료된 후의 결과를 나타낸다. R2 내지 R6을 전송하기 위해 알라무티 벡터의 선택이 무작위로 행해지는 의미로 "Random"이라는 용어가 도 2 및 도 3에 사용되었다. 도 5에서도 도 2 및 3에서의 결과와 동일하게 본 발명에 행렬식 기준의 시뮬레이션 결과가 무작위로 행해진 시뮬레이션보다 성능이 우수함을 알 수 있다.
도 6은 본 발명의 따른 알고리즘을 사용하여 4x4 및 4x5 MIMO 간의 성능을 비교한 도면이다. 도 6을 참조하면, 송신기의 안테나가 4개인 경우도 수신기의 안테나의 수가 증가함에 따라서 성능이 우수함을 알 수 있다.
이상의 도 2 내지 6의 시뮬레이션 결과와 같이 수신 안테나의 수(M)가 증가하면 성능이 향상하였다. 예컨대, 3x3 내지 3x5를 비교할 경우, BER=10-3에서 R=2일 때 거의 6dBs이 향상됨을 알 수 있다. 또한 본 발명에 따른 알고리즘의 성능은 3x4, 3x5 또는 4x5 경우가 무작위 선택을 한 경우보다 더 우수하다. 이때 M은 N 보다 크거나 같아야 하며, 각 재전송 후의 결과 채널 매트릭스는 단 하나가 아니므로 ZF(zero forcing)가 이용되었다.
또한 참고적으로 이상 상기한 바와 같은 도 2 내지 6의 결과를 얻기 위한 시 뮬레이션에 사용된 작성된 주 프로그램 코드와 주 프로그램에서 사용되는 함수들(functions)의 코드들을 예시하면 다음과 같다.
[Main Program]
function [Result]=program();
%n is the number of packets
%R is the number of repetitions
%N is the number of transmitting antennas (Maximum 6)
%M is the number of receiving antennas
%M must be equal or higher than N
n=5000;
R=3;
packet_size=522; %with this size we can split the packet in 2,3,4,5 and 6 parts
N=3;
M=3;
random=0; %1 we use random selection of the vectors, 0 we use the proposed algorithm
seed=45; %seed for the initial state in the function rand
SNR=[-10:1:-5]; %SNR in dB
L=length(SNR);
Result=ones(2,L);%we save the BER and the throughput for each value of SNR
if(random)
filename = ['HARQ_random',num2str(N),'x',num2str(M),'_R',num2str(R)];
for(i=1:L)
Result(:,i)=HARQ(n,R,SNR(i),packet_size,floor(seed*rand),N,M,random)';
end;
else
filename = ['HARQ_proposed',num2str(N),'x',num2str(M),'_R',num2str(R)];
for(i=1:L)
Result(:,i)=HARQ(n,R,SNR(i),packet_size,floor(seed*rand),N,M,random)';
end;
end;
save (filename,'Result','n');
return;
[ HARQ function]
function [Result]=HARQ(n,R,SNR,packet_size,state,N,M,random);
%this function return the probability of error and the throughput
%n is the number of packets of the simulation
%R is the maximum number of repetitions of the data
%SNR is the signal to noise ratio
%packet_size is the size of the packet.
%state is the seed for the function randn
%N is the number of transmitter antennas
%M is the number of receiver antennas
%M must be equal or higher than N
%The variable random says if we use the algorithm or not
error=0; %this variable counts the total number of bits errors
sent_packets=n; %this variable counts the total number of packets that we send
lost_packet=0; %this varible counts the total number of packets that we lose
I=Alamouti_Generator(N); %we generate a matrix which contents the Alamouti Matrix for each %sequence of repetition
P=1+factorial(N)/(factorial(N-2)*2); %this variable gives the number of vectors in the %Alamouti process
S=packet(n,packet_size); %we create a matrix with n packets. Each packet is composed by %Info+CRC+Trellis Code modulation
randn('state',state); %we put the seed in the function randn
for(i=1:n) %the simulation starts...
H=sqrt(0.5)*randn(M,N)+j*sqrt(0.5)*randn(M,N);%we create a matrix with iid complex %gaussian parameters for the channel
r=0; %this variable counts the current repetition
ack=1; %this variable tells us if the packet is correct or not
error_packet=0; %this variable counts the number of error bits in a packet
v=modulation(S(:,i)); %we get the QPSK signal from each packet
L=length(v); %L must be divisible by N
V=split(v,N,L); %we split the packet in N equal subpackets and we put in a matrix of %size Nx(L/N)
Vest=0*ones(N,L/N); %estimated vector at the receiver Nx(L/N)
noise=sqrt((10^((-6-SNR)/10))/2)*randn(M,L/N)+j*sqrt((10^((-6-SNR)/10))/2)*randn(M,L/N); %noise matrix MxL/N
if (random)
A=I; %we don't use the algorithm
else
A=decisorNxM(I,H,N); %this function returns the matrix I with the best order for %transmission
end;
while((r<R)&&(ack~=0))%while the packet still have errors and we have still more %repetitions
y=mod(r,P); %this variable tells us which number of the sequence we are running in %the Alamouti
x=send(V,H,noise,A(N*y+1:N*y+N,:),y); %returns the data after having been processed
Vest=Vest+x; %we combine all the vectors
Vzf=ZF(Vest,H,A,r,y,N,P); %we use the zero forcing after combining all the vectors
Sest=distance3(Vzf,L/N,N); %returns the estimated symbols
%let's go to check if the packet is correct
dem_packet=demodulation(Sest,L,N); %we recuperate the sequence of bits
dec_packet=decoder(dem_packet); %Info+CRC
aux=dec_packet(1:packet_size); %we take the information bits
aux2=CRC(aux); %we have again Info+CRC
aux3=xor(dec_packet,aux2); %we check if we have errors
ack=ones(1,packet_size+16)*aux3'; %if ack=0 we don't have errors
r=r+1;
if(ack~=0) %if packet error, we count the total number of error bits
error_packet=ones(1,packet_size)*xor(S(1:packet_size,i),aux');
if(r<R)
sent_packets=sent_packets+1; %we will have another repetition
end;
else
error_packet=0; %free error packet
end;
noise=sqrt((10^((-6-SNR)/10))/2)*randn(M,L/N)+j*sqrt((10^((-6-SNR)/10))/2)*randn(M,L/N); %noise matrix MxL/N
end;
if(ack~=0) %we left the loop with errors in the packet
lost_packet=lost_packet+1;
end;
error=error+error_packet; %we add the total number of error bits
end;
BER=error/(n*packet_size); %Bit Error rate
throughput=(n-lost_packet)/sent_packets; %Throughput
Result(1)=BER;
Result(2)=throughput;
return;
[ Alamouti Generator function]
function [I]=Alamouti_Generator(N);
columns=N;
rows=1+factorial(N)/(factorial(N-2)*2);
I=zeros(rows,columns);
aux=zeros(N,N);
I(1:N,:)=eye(N); %the first matrix is always diagonal
counter=1;
power=1;
for i=1:N-1
for j=i+1:N
aux(i,j)=(-1)^(power);
aux(j,i)=(-1)^(power+1);
I(N*counter+1:N*counter+N,:)=aux;
aux=zeros(N,N);
counter=counter+1;
power=power+1;
end;
power=1;
end;
return;
[Packet function]
function [s]=packet(n,packet_size);
%we create n random packets of size packet_size
s=0*ones((packet_size+16+2)*2,n); %16 are the bits of the CRC and 2 are the extra bits for the convolutional code
I=floor(1.999999*rand(packet_size,n));
s(1:packet_size,:)=I; %we copy the information
for(i=1:n)
s(1:packet_size+16,i)=CRC(s(1:packet_size,i))'; %we add the CRC
s(:,i)=encoder(s(1:packet_size+16,i))'; %we do TCM
end;
return;
[ CRC function]
function [Y]=CRC(I);
%this function return the packet I + CRC
%we use the polynom for CRC-16
g=[1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1]; %CRC polynom
G=length(g);
L=length(I);
Y=0*ones(1,L+G-1);
Y(1:L)=I;
Q=0*ones(1,G-1+L);
Q(1:L)=I; %we shift the vector I with G-1 zeros
fin=0;
j=0; %this count the number of 0 in the residu
k=0;
bits=G;
zeros=0;
C=xor(Q(1:G),g);
while(fin==0)
while(k==0)
if((j<G)&&(C(j+1)==0))
j=j+1;
else
k=1;
end;
end;
k=0;
M=G+L-1-bits;
if(j<=M)
for(i=1:G) %number of bits that we have to shift
if((i<=G-j))
C(i)=C(i+j);
else
if((zeros+i+j)<(G+L)) %we put the bits of Q for the next XOR
C(i)=Q(G+zeros+i-(G-j));
bits=bits+1; %we count the bits of Q that we have put
end;
end;
end;
else %we are in the last bits of Q
for(i=1:G) %we do the same but instead of shift j bits we shift M bits
if((i<=G-M))
C(i)=C(i+M);
else
if((zeros+i+M)<(G+L))
C(i)=Q(G+zeros+i-(G-M));
bits=bits+1;
end;
end;
end;
end;
if(bits==(G+L-1)) %we have used all the bits of Q
if(C(1)==1) %special case, that we need to do the last sum XOR
C=xor(C,g);
end;
Y(L+1:L+G-1)=C(2:G); %the last G-1 bits are the bits of the CRC
fin=1;
end;
zeros=zeros+j;
j=0;
C=xor(C,g);
end;
return;
[Encoder Function]
function [X]=encoder(I);
%This function do a convolutional Trellis Code (2,1,3)
%we have to add 2 zeros in the packet I
L=length(I);
I(L+1)=0;
I(L+2)=0;
X=0*ones(1,2*(L+2));
state=1;
for(i=1:L)
switch(state)
case 1
if(I(i)==1)
X(2*i-1)=1;
X(2*i)=1;
state=3;
else
X(2*i-1)=0;
X(2*i)=0;
state=1;
end;
case 2
if(I(i)==1)
X(2*i-1)=0;
X(2*i)=0;
state=3;
else
X(2*i-1)=1;
X(2*i)=1;
state=1;
end;
case 3
if(I(i)==1)
X(2*i-1)=1;
X(2*i)=0;
state=4;
else
X(2*i-1)=0;
X(2*i)=1;
state=2;
end;
case 4
if(I(i)==1)
X(2*i-1)=0;
X(2*i)=1;
state=4;
else
X(2*i-1)=1;
X(2*i)=0;
state=2;
end;
end;
end;
return;
[Modulation Function]
function [v]=modulation(S);
%alphabet:1,-1,j,-j
%1->11
%-1->00
%j->01
%-j->10
L=length(S);
v=0*ones(1,L/2);
for(i=1:L/2)
B=S(2*i-1:2*i);
if(B(1)==1)
if(B(2)==1)
v(i)=1;
else
v(i)=-j;
end;
else
if(B(2)==1)
v(i)=j;
else
v(i)=-1;
end;
end;
end;
return;
[Split function]
function [V]=split(v,N,L);
%this function splits the packet v in N equal subpackets and it puts them in a matrix of size Nx(L/N)
V=zeros(N,L/N);
for i=1:N
V(i,:)=v((i-1)*L/N+1:i*L/N);
end;
return;
[ Decisor Function]
function [A]=decisorNxM(I,H,N);
%I is the Alamouti random order matrix
%H is the Channel Matrix
%N is the number of transmitting antennas
A=0*I;
A(1:N,:)=I(1:N,:); %the first vector always will be the same
C0=H'*H;
C0x=conj(C0);
I(1:N,:)=[];
loops=factorial(N)/(factorial(N-2)*2);
for i=1:loops-1
y=determinant(I,C0x,C0,loops+1-i,N); %y gives us the first vector
A(N*i+1:N*i+N,:)=I(N*y+1:N*y+N,:);
I(N*y+1:N*y+N,:)=[]; %we can delete this vector, because we don't need it more
C0=C0+A(N*i+1:N*i+N,:)'*C0x*A(N*i+1:N*i+N,:);
end;
%finally...the last vector
A(N*loops+1:N*loops+N,:)=I;
return;
[Determinant Function]
function [y]=determinant(I,C0x,Ci,k,N);
%this function choose the matrix which has the highest determinant
result=ones(1,k);
for(i=0:k-1)
result(i+1)=det(Ci+I(N*i+1:N*i+N,:)'*C0x*I(N*i+1:N*i+N,:));
end;
max=1;
for(i=2:k)
if(result(i)>result(max))
max=i;
end;
end;
y=max-1;
return;
[Send Function]
function [x]=send(v,H,noise,I,y);
if(y==0)
x=H'*H*v+H'*noise;
else
x=I'*conj(H')*conj(H)*I*v+I'*conj(H')*conj(noise);
end;
return;
[Zero forcing Function]
function [Vzf]=ZF(Vest,H,I,r,y,N,P);
%this function implement the algorithm of the zero forcing
%we try to find the inverse matrix that we'll cancel the coeficients
C=H'*H;
W=C;
for(i=1:r)
if(y==0)%we don't need to do zero forcing
W=eye(N);
break;
else
p=mod(i,P);
if(p==0)
W=W+C;
else
W=W+I(N*p+1:N*p+N,:)'*conj(C)*I(N*p+1:N*p+N,:);
end;
end;
end;
Vzf=W^-1*Vest;
return;
[Distance Function]
function [Sest]=distance3(Vest,L,N);
D=ones(4,L);
for(i=1:N)
D(1,:)=abs(Vest(i,:)-1);
D(2,:)=abs(Vest(i,:)-j);
D(3,:)=abs(Vest(i,:)+1);
D(4,:)=abs(Vest(i,:)+j);
Sest(i,:)=mindistance(D);
end;
return;
[ Mindistance Function]
#include "mex.h"
void mindistance(double *y, double *zr, double *zi,int m, int n)
{
int i,j,min,count1,count2; /*count1 for the input matrix, count2 for output matrix*/
count1=0;
count2=0;
min=0;
zr[0]=0.0;
zi[0]=0.0;
for (i = 0; i < n; i++) {
for (j = 0; j < m; j++) {
if(*(y+count1+j)<*(y+count1+min)) {
min=j;
}
}
count1=count1+m;
if(min==0) {
*(zr+count2)=1;
*(zi+count2)=0;
}
if(min==1) {
*(zr+count2)=0;
*(zi+count2)=1;
}
if(min==2) {
*(zr+count2)=-1;
*(zi+count2)=0;
}
if(min==3) {
*(zr+count2)=0;
*(zi+count2)=-1;
}
min=0;
count2++;
}
}
/* The gateway routine */
void mexFunction(int nlhs, mxArray *plhs[],
int nrhs, const mxArray *prhs[])
{
double *y;
double *zr,*zi;
int mrows,ncols;
/* Check for proper number of arguments. */
/* NOTE: You do not need an else statement when using
mexErrMsgTxt within an if statement. It will never
get to the else statement if mexErrMsgTxt is executed.
(mexErrMsgTxt breaks you out of the MEX-file.)
*/
if (nrhs != 1)
mexErrMsgTxt("One input required.");
if (nlhs != 1)
mexErrMsgTxt("One output required.");
/* Create a pointer to the input matrix y. */
y = mxGetPr(prhs[0]);
/* Get the dimensions of the matrix input y. */
mrows = mxGetM(prhs[0]);
ncols = mxGetN(prhs[0]);
/* Set the output pointer to the output matrix. */
plhs[0] = mxCreateDoubleMatrix(1,ncols, mxCOMPLEX);
/* Create a C pointer to a copy of the output matrix. */
zr = mxGetPr(plhs[0]);
zi = mxGetPi(plhs[0]);
/* Call the C subroutine. */
mindistance(y,zr,zi,mrows,ncols);
}
[Demodulation Function]
function [Dem_packet]=demodulation(Sest,L,N)
%first we have to join the N parts of the packet
Packet=0*ones(1,L);
for i=1:N
Packet((i-1)*L/N+1:i*L/N)=Sest(i,:);
end;
Dem_packet=0*ones(1,2*L);
for(i=1:L)
Q=Packet(i);
switch Q
case 1
Dem_packet(2*i-1:2*i)=[1,1];
case -1
Dem_packet(2*i-1:2*i)=[0,0];
case j
Dem_packet(2*i-1:2*i)=[0,1];
case -j
Dem_packet(2*i-1:2*i)=[1,0];
end;
end;
[Decoder Function]
function [Yf]=decoder(Z);
%this function uses the viterbi algorithm for decoding code
%state 1='00' state 2='01' state 3='10' state 4='11'
M=length(Z);
m=M/2; %this is the size of the trellis diagram
D=1000*ones(4,m); %this matrix mesure the distances
Y=0*ones(1,m); %the last two digits are 0's
%the first two cases are special because we don't have to compare between
%two different paths
x=Z(1:2);
d1=Hamdistance([0,0],x);
D(1,1)=d1;
d2=Hamdistance([1,1],x);
D(3,1)=d2;
x=Z(3:4);
d1=Hamdistance([0,0],x);
D(1,2)=D(1,1)+d1;
d2=Hamdistance([1,1],x);
D(3,2)=D(1,1)+d2;
d3=Hamdistance([0,1],x);
D(2,2)=D(3,1)+d3;
d4=Hamdistance([1,0],x);
D(4,2)=D(3,1)+d4;
for(i=3:m)
x=Z(2*i-1:2*i); %we take two bits every time
%to arrive in state 1 we can arrive from state 1 or 2
d1=Hamdistance([0,0],x); %from state 1
d2=Hamdistance([1,1],x); %from state 2
if((D(1,i-1)+d1)<(D(2,i-1)+d2))
D(1,i)=D(1,i-1)+d1;
else
D(1,i)=D(2,i-1)+d2;
end;
%to arrive in state 2 we can arrive from state 3 or 4
d1=Hamdistance([0,1],x); %from state 3
d2=Hamdistance([1,0],x); %from state 4
if((D(3,i-1)+d1)<(D(4,i-1)+d2))
D(2,i)=D(3,i-1)+d1;
else
D(2,i)=D(4,i-1)+d2;
end;
%to arrive in state 3 we can arrive from state 1 or 2
d1=Hamdistance([1,1],x); %from state 1
d2=Hamdistance([0,0],x); %from state 2
if((D(1,i-1)+d1)<(D(2,i-1)+d2))
D(3,i)=D(1,i-1)+d1;
else
D(3,i)=D(2,i-1)+d2;
end;
%to arrive in state 4 we can arrive from state 3 or 4
d1=Hamdistance([1,0],x); %from state 3
d2=Hamdistance([0,1],x); %from state 4
if((D(3,i-1)+d1)<(D(4,i-1)+d2))
D(4,i)=D(3,i-1)+d1;
else
D(4,i)=D(4,i-1)+d2;
end;
end;
%now we have a matrix D with all the shortest paths
%the last two columns are special because that we know that we have to
%receive two 0's
D(2,m)=10000;
D(3,m)=10000;
D(4,m)=10000;
D(3,m-1)=10000;
D(4,m-1)=10000;
for(i=1:m) %we move backwards like the crabs
v(m+1-i)=minimum(D(:,m+1-i)); %this vector cointain in what state we have the shortest path
end;
last_state=1;
for(i=1:m-1)
switch(last_state)
case 1 %we are in the state 1
if(v(m-i)==1) %we came from the state 1
last_state=1;
Y(m+1-i)=0;
end;
if(v(m-i)==2) %we came from the state 2
last_state=2;
Y(m+1-i)=0;
end;
if(v(m-i)==0)
x=Z(2*(m+1-i)-1:2*(m+1-i));
d1=Hamdistance([0,0],x); %from state 1
d2=Hamdistance([1,1],x); %from state 2
if(d1<d2)
last_state=1;
Y(m+1-i)=0;
else
last_state=2;
Y(m+1-i)=0;
end;
end;
case 2 %we are in the state 2
if(v(m-i)==3) %we came from the state 3
last_state=3;
Y(m+1-i)=0;
end;
if(v(m-i)==4) %we came from the state 4
last_state=4;
Y(m+1-i)=0;
end;
if(v(m-i)==0)
x=Z(2*(m+1-i)-1:2*(m+1-i));
d1=Hamdistance([0,1],x); %from state 3
d2=Hamdistance([1,0],x); %from state 4
if(d1<d2)
last_state=3;
Y(m+1-i)=0;
else
last_state=4;
Y(m+1-i)=0;
end;
end;
case 3 %we are in the state 3
if(v(m-i)==1) %we came from the state 1
last_state=1;
Y(m+1-i)=1;
end;
if(v(m-i)==2) %we came from the state 2
last_state=2;
Y(m+1-i)=1;
end;
if(v(m-i)==0)
x=Z(2*(m+1-i)-1:2*(m+1-i));
d1=Hamdistance([1,1],x); %from state 1
d2=Hamdistance([0,0],x); %from state 2
if(d1<d2)
last_state=1;
Y(m+1-i)=1;
else
last_state=2;
Y(m+1-i)=1;
end;
end;
case 4 %we are in the state 4
if(v(m-i)==3) %we came from the state 3
last_state=3;
Y(m+1-i)=1;
end;
if(v(m-i)==4) %we came from the state 4
last_state=4;
Y(m+1-i)=1;
end;
if(v(m-i)==0)
x=Z(2*(m+1-i)-1:2*(m+1-i));
d1=Hamdistance([1,0],x); %from state 3
d2=Hamdistance([0,1],x); %from state 4
if(d1<d2)
last_state=3;
Y(m+1-i)=1;
else
last_state=4;
Y(m+1-i)=1;
end;
end;
end;
end;
%Finally we treat with the last column
if(last_state==1)
Y(1)=0;
else %we came from the state 3
Y(1)=1;
end;
%we know that the last 2 bits are 0
Yf=Y(1:m-2);
return;
[ Hamdistance Function]
#include "mex.h"
void Hamdistance(double *x, double *y, double *z,int columns)
{
int i;
z[0]=0.0;
for (i = 0; i < columns; i++) {
if(*(x+i)!=*(y+i)) z[0]++;
}
}
/* The gateway routine */
void mexFunction(int nlhs, mxArray *plhs[],
int nrhs, const mxArray *prhs[])
{
double *x, *y;
double *z;
int mrows,ncols;
/* Check for proper number of arguments. */
/* NOTE: You do not need an else statement when using
mexErrMsgTxt within an if statement. It will never
get to the else statement if mexErrMsgTxt is executed.
(mexErrMsgTxt breaks you out of the MEX-file.)
*/
if (nrhs != 2)
mexErrMsgTxt("One input required.");
if (nlhs != 1)
mexErrMsgTxt("One output required.");
/* Create pointers to the input matrix x and y. */
x = mxGetPr(prhs[0]);
y = mxGetPr(prhs[1]);
/* Get the dimensions of the matrix input y. */
mrows = mxGetM(prhs[0]);
ncols = mxGetN(prhs[0]);
/* Set the output pointer to the output matrix. */
plhs[0] = mxCreateDoubleMatrix(1,1, mxREAL);
/* Create a C pointer to a copy of the output matrix. */
z = mxGetPr(plhs[0]);
/* Call the C subroutine. */
Hamdistance(y,x,z,ncols);
}
[Minimum Function]
function [min]=minimum(v);
%this function returns the position of the minimum value.
%If the are two minimuns values returns 0
L=length(v);
min=1;
equal=0;
for (k=1:L)
if(v(k)<v(min))
min=k;
end;
end;
for(k=1:L)
if((k~=min)&&(v(k)==v(min)))
equal=1;
end;
end;
if(equal==1)
min=0;
end;
return;
지금까지 본 발명에 대해서 상세히 설명하였으나, 그 과정에서 언급한 실시예는 예시적인 것일 뿐, 한정적인 것은 아님을 분명히 하며, 본 발명은 이하의 특허청구범위에 의해 제공되는 본 발명의 기술적 사상이나 분야를 벗어나지 않는 범위 내에서, 본 발명으로부터 균등하게 대체될 수 있는 정도의 구성요소 변경은 본 발명의 범위에 속한다 할 것이다.
이상에서 상세히 설명한 바와 같이 동작하는 본 발명에 있어서, 개시되는 발명 중 대표적인 것에 의해 얻어지는 효과를 간단히 설명하면 다음과 같다.
본 발명은 전처리 과정에 대하여 다음 패킷이 재전송 될 때 유니터리 매트릭스를 곱하는 대신에 알라무티 시공간 부호화(Alamouti space-time coding)를 활용함으로써 수신기의 최대 신호대잡음비를 얻을 수 있는 N개의 전송 안테나와 M개의 수신 안테나를 이용한 MIMO 시스템에서 재전송 선택 방법 및 장치를 제공하는 효과가 있다.

Claims (18)

  1. NxM 다중 입출력 시스템에서의 재전송 선택 방법에 있어서,
    송신기에서 부호화된 데이터 스트림을 N개의 서브패킷으로 나누어 N개의 송신 안테나를 통해 수신기로 전송하는 단계;
    상기 수신기에서 M개의 수신 안테나를 통해 수신한 상기 N개의 서브패킷의 간섭을 제거하고 각각 독립적으로 복호하는 단계;
    상기 수신기에서 상기 복호된 서브패킷의 오류 포함 유무에 따라 확인응답(ACK) 또는 부정확인응답(NACK)을 상기 송신기로 전송하는 단계; 및
    상기 송신기에서 부정확인응답(NACK)을 수신한 경우 알라무티 시공간 부호화 방식을 이용하여 재전송 선택된 서브패킷을 상기 수신기로 재전송하는 단계를 포함하는 것을 특징으로 하는 재전송 선택 방법.
  2. 제1항에 있어서,
    상기 수신기에서 상기 전송된 서브패킷과 상기 재전송된 서브패킷이 심볼수준에서 결합되어 간섭이 제거되고 복호되는 단계를 더 포함하는 것을 특징으로 하는 재전송 선택 방법.
  3. 제1항에 있어서,
    상기 간섭 제거는 MMSE(Minimum Mean Square Examination) 또는 ZF(Zero Forcing)에 의한 것을 특징으로 하는 재전송 선택 방법.
  4. 제1항에 있어서,
    상기 재전송 선택을 위한 상기 알라무티 시공간 부호화 방식에 따른 NxM 다중입출력 채널 이득은 재전송시마다 수신기에서 결정된 각 수신 안테나의 신호대잡음비(SNR) 기준에 따르는 것을 특징으로 하는 재전송 선택 방법.
  5. 제4항에 있어서,
    상기 각 수신 안테나의 신호대잡음비(SNR)의 최대값은 각 재전송 후 결합된 채널 행렬의 행렬식을 최대화하는 것을 특징으로 하는 재전송 선택 방법.
  6. 제5항에 있어서,
    상기 채널 행렬은 전송의 시작점에서 한번 정해진 행렬식 기준에 의해 사용하는 대신에 재전송이 필요할 때마다 채널을 체크하여 적응적으로 변화되는 것을 특징으로 재전송 선택 방법.
  7. 제5항에 있어서,
    상기 채널 행렬은
    Figure 112006057330996-PAT00097
    로 나타내는 것을 특징으로 하는 재전송 선택 방법.
  8. NxM 안테나를 이용한 다중 입출력 시스템에서의 재전송 선택 송신장치에 있어서,
    정보 비트가 입력되면, 미리 결정된 부호화 방식에 의해 부호화하여 소정의 길이의 부호화된 패킷을 생성하는 채널 부호화기;
    상기 부호화된 패킷들을 미리 결정된 시공간 부호화 방식에 의해 부호화하여 N개의 서브블록들로 병렬 변환한 후 출력하는 공간 역다중화기;
    상기 서브블록들을 미리 결정된 변조 방식으로 변조하여 변조 심볼 스트림으로 생성한 후 상기 심볼 스트림들을 파일럿 부반송파 위치 집합 패턴에 기초하여 시간과 주파수로 매핑시켜 송신 안테나로 출력하는 심볼 매핑기들; 및
    부호화된 심볼 스트림을 N개의 서브패킷으로 나누어 송신하는 N개의 송신 안테나를 포함하되,
    전송한 서브패킷의 오류에 따른 부정확인응답(NACK)을 수신한 경우 알라무티 시공간 부호화 방식을 이용하여 재전송 선택된 패킷을 수신기로 재전송하는 것을 특징으로 하는 송신장치.
  9. 제8항에 있어서,
    상기 재전송 선택을 위한 상기 알라무티 시공간 부호화 방식에 따른 NxM 다중입출력 채널 이득은 재전송시마다 수신기에서 결정된 각 수신 안테나의 신호대잡음비(SNR) 기준에 따르는 것을 특징으로 하는 송신장치.
  10. 제9항에 있어서,
    상기 각 수신 안테나의 신호대잡음비(SNR)의 최대값은 각 재전송 후 결합된 채널 행렬의 행렬식을 최대화하는 것을 특징으로 하는 송신장치.
  11. 제10항에 있어서,
    상기 채널 행렬은 전송의 시작점에서 한번 정해진 행렬식 기준에 의해 사용하는 대신에 재전송이 필요할 때마다 채널을 체크하여 적응적으로 변화되는 것을 특징으로 송신장치.
  12. 제10항에 있어서,
    상기 채널 행렬은
    Figure 112006057330996-PAT00098
    로 나타내는 것을 특징으로 하는 송신장치.
  13. NxM 안테나를 이용한 다중 입출력 시스템에서의 재전송 선택 수신장치에 있어서,
    부호화된 심볼 스트림을 N개의 서브패킷으로 나누어 수신하는 M개의 수신 안테나;
    재전송 선택에 따라 재전송된 패킷과 이전 오류 패킷을 심볼 수준에서 함께 결합하는 전결합기; 및
    상기 전결합기로부터 수신한 신호의 간섭을 제거하여 N개의 전송 데이터 서브패킷으로 분리하고, 독립적으로 복호된 서브패킷의 신호를 출력하는 검출기를 포함하되,
    상기 복호된 서브패킷의 오류 포함 유무에 따라 확인응답(ACK) 또는 부정확인응답(NACK)을 송신기로 전송하는 것을 특징으로 하는 수신장치.
  14. 제13항에 있어서,
    상기 간섭 제거는 MMSE(Minimum Mean Square Examination) 또는 ZF(Zero Forcing)에 의해 행해지는 것을 특징으로 하는 수신장치.
  15. 제13항에 있어서,
    상기 재전송 선택을 위한 상기 알라무티 시공간 부호화 방식에 따른 NxM 다중입출력 채널 이득은 재전송시마다 수신기에서 결정된 각 수신 안테나의 신호대잡음비(SNR) 기준에 따르는 것을 특징으로 하는 수신장치.
  16. 제15항에 있어서,
    상기 각 수신 안테나의 신호대잡음비(SNR)의 최대값은 각 재전송 후 결합된 채널 행렬의 행렬식을 최대화하는 것을 특징으로 하는 수신장치.
  17. 제16항에 있어서,
    상기 채널 행렬은 전송의 시작점에서 한번 정해진 행렬식 기준에 의해 사용 하는 대신에 재전송이 필요할 때마다 채널을 체크하여 적응적으로 변화되는 것을 특징으로 수신장치.
  18. 제16항에 있어서,
    상기 채널 행렬은
    Figure 112006057330996-PAT00099
    로 나타내는 것을 특징으로 하는 수신장치.
KR1020060075758A 2005-08-12 2006-08-10 NxM 안테나를 이용한 다중 입출력 시스템에서의 재전송 배열 방법 및 장치 KR101245403B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020060075758A KR101245403B1 (ko) 2005-08-12 2006-08-10 NxM 안테나를 이용한 다중 입출력 시스템에서의 재전송 배열 방법 및 장치
US11/503,289 US8064428B2 (en) 2005-08-12 2006-08-11 Method and apparatus for ordering retransmissions in an NxM MIMO system
DE602006017780T DE602006017780D1 (de) 2005-08-12 2006-08-14 Verfahren und Vorrichtung zum Abwickeln einer erneuten Übertragung in einem NxM MIMO System
EP06118893A EP1753154B1 (en) 2005-08-12 2006-08-14 Method and apparatus for ordering retransmissions in an NxM Mimo system

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US70783005P 2005-08-12 2005-08-12
US60/707,830 2005-08-12
KR1020060075758A KR101245403B1 (ko) 2005-08-12 2006-08-10 NxM 안테나를 이용한 다중 입출력 시스템에서의 재전송 배열 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20070019586A true KR20070019586A (ko) 2007-02-15
KR101245403B1 KR101245403B1 (ko) 2013-03-25

Family

ID=43049551

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060075758A KR101245403B1 (ko) 2005-08-12 2006-08-10 NxM 안테나를 이용한 다중 입출력 시스템에서의 재전송 배열 방법 및 장치

Country Status (4)

Country Link
US (1) US8064428B2 (ko)
EP (1) EP1753154B1 (ko)
KR (1) KR101245403B1 (ko)
DE (1) DE602006017780D1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8526531B2 (en) 2008-04-22 2013-09-03 Samsung Electronics Co., Ltd. Apparatus and method for selection of precoding matrix

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2007123904A1 (en) * 2006-04-18 2007-11-01 Interdigital Technology Corporation Method and apparatus for implementing h-arq in a mimo wireless communication system
US8126069B2 (en) * 2006-06-23 2012-02-28 Panasonic Corporation Re-transmission in a MIMO communication system
TW200835212A (en) * 2007-02-06 2008-08-16 Koninkl Philips Electronics Nv Method and apparatus for hybrid automatic repeat request in multiple antenna system
US7933372B2 (en) * 2007-03-08 2011-04-26 Freescale Semiconductor, Inc. Successive interference cancellation based on the number of retransmissions
TW200840265A (en) * 2007-03-23 2008-10-01 Koninkl Philips Electronics Nv Method and apparatus for transmitting signals in a multi-antenna system
US8576772B2 (en) * 2007-06-18 2013-11-05 Intel Corporation Cooperative multiple access in wireless networks
US20080311939A1 (en) * 2007-06-18 2008-12-18 Nokia Corporation Acknowledgment aided space domain user scheduling for multi-user mimo
US8175177B2 (en) * 2007-08-14 2012-05-08 Lg Electronics Inc. Peak to average power ratio reduction
US20100238818A1 (en) * 2007-10-11 2010-09-23 Panasonic Corporation Wireless communication mobile station apparatus and communication quality information generating method
US8179990B2 (en) * 2008-01-16 2012-05-15 Mitsubishi Electric Research Laboratories, Inc. Coding for large antenna arrays in MIMO networks
US8073071B2 (en) * 2008-01-16 2011-12-06 Mitsubishi Electric Research Laboratories, Inc. Hybrid automatic repeat requests coding in MIMO networks
GB2459284A (en) * 2008-04-17 2009-10-21 Stephen George Nunney MIMO spatial multiplexing system
CN101577612B (zh) * 2008-05-07 2013-06-05 华为技术有限公司 一种多输入多输出系统的数据传输方法、系统及装置
US8666004B2 (en) * 2008-05-21 2014-03-04 Qualcomm Incorporated Methods and systems for hybrid MIMO schemes in OFDM/A systems
US8428161B2 (en) * 2008-07-02 2013-04-23 Marvell World Trade Ltd. Symbol vector mapping for chase-combining HARQ
KR20100089758A (ko) * 2009-02-04 2010-08-12 엘지전자 주식회사 무선 통신 시스템에서 신호 전송 장치 및 방법
EP2530866B1 (en) * 2009-03-27 2017-07-26 Sony Corporation Division of bit streams to produce spatial paths for multicarrier transmission
US8520625B2 (en) 2009-05-27 2013-08-27 At&T Intellctual Property I, L.P. Transmit antenna subset selection for retransmission
RU2553677C2 (ru) * 2009-09-02 2015-06-20 Эппл Инк Способ передачи трафика услуги групповой и широковещательной передачи информации (mbs) в системе беспроводной связи
US8375139B2 (en) * 2010-06-28 2013-02-12 Canon Kabushiki Kaisha Network streaming over multiple data communication channels using content feedback information
CN108880750B (zh) 2012-07-09 2021-07-06 索尼公司 解码和解调装置及方法、接收装置及方法与通信系统
JP2015530012A (ja) * 2012-08-02 2015-10-08 華為技術有限公司Huawei Technologies Co.,Ltd. データ再送信方法、装置、及びシステム
US9680684B2 (en) * 2013-04-30 2017-06-13 Sony Corporation Coding and modulation apparatus using non-uniform constellation
EP3442189B1 (en) 2013-04-30 2020-06-03 Sony Corporation Coding and modulation apparatus using non-uniform constellation
JP6420333B2 (ja) 2013-07-05 2018-11-07 ソニー株式会社 不均一コンステレーションを利用した符号化変調装置
US20170170998A1 (en) * 2015-12-11 2017-06-15 Nokia Solutions And Networks Oy Pre-combiner interference removal
US9942020B1 (en) * 2017-04-26 2018-04-10 Cisco Technology, Inc. Minimum delay spatio-temporal filtering for interference rejection
US11909474B2 (en) * 2021-05-13 2024-02-20 Qualcomm Incorporated Rank adapation for MIMO transmissions and retransmissions

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001268049A (ja) * 2000-03-15 2001-09-28 Matsushita Electric Ind Co Ltd データ伝送装置及びデータ伝送方法
US7031419B2 (en) 2001-06-29 2006-04-18 Nokia Corporation Data transmission method and system
US7397864B2 (en) 2002-09-20 2008-07-08 Nortel Networks Limited Incremental redundancy with space-time codes
CN100420176C (zh) * 2002-09-30 2008-09-17 皇家飞利浦电子股份有限公司 传输系统
US6927728B2 (en) * 2003-03-13 2005-08-09 Motorola, Inc. Method and apparatus for multi-antenna transmission
GB0316692D0 (en) * 2003-07-17 2003-08-20 Koninkl Philips Electronics Nv Enhanced multi-path for mimo devices
US7746800B2 (en) 2003-11-21 2010-06-29 Nokia Corporation Flexible rate split method for MIMO transmission
JP2005341531A (ja) 2004-04-27 2005-12-08 Matsushita Electric Ind Co Ltd 無線通信システム及び無線局
US7564915B2 (en) * 2004-06-16 2009-07-21 Samsung Electronics Co., Ltd. Apparatus and method for coding/decoding pseudo orthogonal space-time block code in a mobile communication system using multiple input multiple output scheme
US20060209884A1 (en) * 2005-03-15 2006-09-21 Macmullan Samuel J System, method and apparatus for automatic detection and automatic connection between a generalized content source and a generalized content sink

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8526531B2 (en) 2008-04-22 2013-09-03 Samsung Electronics Co., Ltd. Apparatus and method for selection of precoding matrix

Also Published As

Publication number Publication date
US8064428B2 (en) 2011-11-22
EP1753154A2 (en) 2007-02-14
US20070115864A1 (en) 2007-05-24
DE602006017780D1 (de) 2010-12-09
KR101245403B1 (ko) 2013-03-25
EP1753154A3 (en) 2007-08-01
EP1753154B1 (en) 2010-10-27

Similar Documents

Publication Publication Date Title
KR101245403B1 (ko) NxM 안테나를 이용한 다중 입출력 시스템에서의 재전송 배열 방법 및 장치
US8014470B2 (en) Decoding method for Alamouti scheme with HARQ and/or repetition coding
JP4883091B2 (ja) Mimo−ofdm通信システム及びmimo−ofdm通信方法
KR101405974B1 (ko) 다중입력 다중출력 시스템에서 코드워드를 전송하는 방법
KR100778647B1 (ko) 다중-안테나 장치내의 결합된 채널 코딩 및 공간-블록 코딩
KR101639294B1 (ko) Μιμο 시스템에서의 데이터 스트림 전송 방법 및 장치
KR101341524B1 (ko) 수신신호를 처리하는 장치, 방법 및 매핑 구조를 선택하는 방법
KR100950654B1 (ko) 다중 입력 다중 출력 방식을 사용하는 통신 시스템에서신호 송수신 장치 및 방법
KR100908004B1 (ko) 다중 송수신 안테나 시스템의 자동 반복 요청 장치 및 방법
KR100774290B1 (ko) 성능 향상위한 시공간 블록 부호화 장치 및 방법
KR100720870B1 (ko) 성능 향상위한 시공간 블록 부호화 장치 및 방법을구현하는 송수신 장치 및 방법
KR20070086267A (ko) 멀티 안테나 전송에서의 재송 방법 및 송신 방법
EP1587223A1 (en) Detection process in a V-BLAST system
JP2006135990A (ja) 送信器及び送信方法
KR20040062335A (ko) 3개의 송신 안테나들을 가지는 무선통신 시스템을 위한송수신 장치
US20040137951A1 (en) Transmitter and receiver provided in wireless communication system using four transmitting antennas
JP2010093815A (ja) 時空間符号化方法、無線信号の送信、受信・復号方法及び装置
KR20060016420A (ko) 성능 향상된 시공간 블록 부호화 장치 및 방법
JP2008109697A (ja) 無線通信方法及び無線通信装置
WO2011128326A1 (en) Decoding a signal
WO2011128312A1 (en) Deciding the order of sic detection by adjusting mcs
JP4925163B2 (ja) データフレームの誤り確率を評価する計量を確定する方法及び装置、並びにその方法を実施するためのコンピュータプログラム
WO2011128314A1 (en) Rank signaling in spatial multiplexing
Grant Joint decoding and channel estimation for space-time codes
KR100780363B1 (ko) 2개의 송신안테나를 위한 최대 다이버시티 최대 전송율을갖는 시공간 블록 부호화 장치 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20160219

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20170221

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20180220

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20190221

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20200225

Year of fee payment: 8