Method and system for interference cancellation
Abstract
Systems and methods are provided for interference cancellation at a receiver in a wireless communication system. In one aspect, a method for interference cancellation is provided. The method includes providing aggregate receive chips received from a plurality of cells. The method also includes successively estimating received chips for each of the plurality of cells in the plurality of iterations, wherein each of the plurality of iterations after the first iteration is: removing estimated receive chips from total receive chips, and estimating receive chips for one of the plurality of chips using total receive chips from which previously estimated receive chips for one or more of the plurality of cells have been removed includes steps.

Term
Projected expiry 8 June 2030.
- Priority
- Filed
- Granted
- Today
- Projected expiry
50 claims: 5 independent, 45 dependent
- 1무선 통신 시스템에서 수신기에서의 간섭 제거(interference cancellation)를 위한 방법으로서, 복수의 셀들로부터 수신되는 총 수신 칩들을 제공하는 단계;및 상기 제공하는 단계 이후, 상기 복수의 셀들 각각에 대한 수신 칩들을 복수의 반복들에서 연속적으로 추정하는 단계를 포함하고, 상기 제공하는 단계 이후, 상기 복수의 반복들 각각은, 조정된 총 수신 칩들을 획득하기 위해, 상기 복수의 셀들 중 하나 이상에 대해 이전에 추정된 수신 칩들을 상기 총 수신 칩들로부터 제거하는 단계;및 상기 조정된 총 수신 칩들을 이용하고, 상기 복수의 셀들 중 소정의 셀에 대해 상기 이전에 추정된 수신 칩들을 다시 가산(adding back)하여, 상기 복수의 셀들 중 상기 소정의 셀에 대한 수신 칩들을 추정하는 단계를 포함하는, 수신기에서의 간섭 제거를 위한 방법.
- 2제 1 항에 있어서, 상기 복수의 셀들 각각에 대한 수신 칩들을 연속적으로 추정하는 단계는, 상기 복수의 셀들 중 최종 셀에 대한 수신 칩들을 추정한 후, 상기 복수의 셀들 각각에 대해 이전에 추정된 수신 칩들이 제거되고 상기 복수의 셀들 중 제 1 셀에 대해 이전에 추정된 수신 칩들이 다시 가산된 총 수신 칩들을 이용하여, 상기 복수의 셀들 중 상기 제 1 셀에 대한 수신 칩들을 추정하는 단계를 포함하는, 수신기에서의 간섭 제거를 위한 방법.
- 3제 2 항에 있어서, 상기 복수의 셀들 각각에 대한 수신 칩들을 연속적으로 추정하는 단계는, 상기 복수의 셀들 각각에 대해 이전에 추정된 수신 칩들이 제거되고 상기 복수의 셀들 중 제 2 셀에 대해 이전에 추정된 수신 칩들이 다시 가산된 총 수신 칩들을 이용하여, 상기 복수의 셀들 중 상기 제 2 셀에 대한 수신 칩들을 추정하는 단계를 포함하는, 수신기에서의 간섭 제거를 위한 방법.
- 4제 1 항에 있어서, 상기 복수의 셀들 각각에 대해 이전에 추정된 수신 칩들이 제거되고 상기 복수의 셀들 중 타겟 셀에 대해 이전에 추정된 수신 칩들이 다시 가산된 상기 총 수신 칩들을 이용하여, 상기 복수의 셀들 중 상기 타겟 셀에 대한 복수의 사용자 심볼들을 검출하는 단계를 더 포함하는, 수신기에서의 간섭 제거를 위한 방법.
- 5제 1 항에 있어서, 상기 복수의 반복들 각각은, 상기 복수의 셀들 중 동작 셀(working cell)에 대한 복수의 수신 심볼들로부터 상기 복수의 셀들 중 상기 동작 셀에 대한 복수의 사용자 심볼들을 검출하는 단계;및 상기 동작 셀에 대한 복수의 검출된 사용자 심볼들을 이용하여, 상기 동작 셀에 대한 상기 수신 칩들을 계산하는 단계를 포함하는, 수신기에서의 간섭 제거를 위한 방법.
- 6제 5 항에 있어서, 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 검출하는 단계는, 상기 동작 셀에 대한 상기 복수의 수신 심볼들로부터 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 초기에 검출하는 단계;상기 동작 셀에 대해 초기에 검출된 복수의 사용자 심볼들을 이용하여, 상기 동작 셀에 대한 다중-사용자 간섭을 계산하는 단계;상기 동작 셀에 대한 계산된 다중-사용자 간섭을 상기 동작 셀에 대한 상기 복수의 수신 심볼들로부터 제거하는 단계;및 상기 동작 셀에 대한 상기 계산된 다중-사용자 간섭이 제거된, 상기 동작 셀에 대한 상기 복수의 수신 심볼들로부터, 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 재검출하는 단계를 포함하는, 수신기에서의 간섭 제거를 위한 방법.
- 7제 5 항에 있어서, 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 검출하는 단계는, 상기 동작 셀에 대한 신호 강도를 임계치와 비교하는 단계;상기 동작 셀에 대한 상기 신호 강도가 상기 임계치 이상이면, 상기 동작 셀에 대한 상기 복수의 수신 심볼들 각각에 대해 하드 슬라이싱(hard slice)을 수행하는 단계;및 상기 동작 셀에 대한 상기 신호 강도가 상기 임계치 미만이면, 상기 동작 셀에 대한 상기 복수의 수신 심볼들 각각에 대해 소프트 슬라이싱(soft slice)을 수행하는 단계를 포함하는, 수신기에서의 간섭 제거를 위한 방법.
- 8제 5 항에 있어서, 상기 동작 셀에 대한 복수의 검출된 사용자 심볼들을 이용하여 상기 동작 셀에 대한 상기 수신 칩들을 계산하는 단계는, 상기 동작 셀에 대한 상기 복수의 검출된 사용자 심볼들을 확산시키는 단계;상기 동작 셀에 대한 송신된 칩들의 추정치를 획득하기 위해, 상기 동작 셀에 대한 확산된 복수의 검출된 사용자 심볼들을 스크램블링하는 단계;및 상기 동작 셀에 대한 상기 수신 칩들을 추정하기 위해, 상기 동작 셀에 대한 상기 송신된 칩들의 추정치에 채널 추정치를 적용하는 단계를 포함하는, 수신기에서의 간섭 제거를 위한 방법.
- 9제 1 항에 있어서, 상기 복수의 셀들을 상기 복수의 셀들의 신호 강도들에 기초한 순서로 배열하는 단계를 더 포함하고, 상기 복수의 셀들 각각에 대한 상기 수신 칩들을 연속적으로 계산하는 단계는 상기 순서에 따라 수행되는, 수신기에서의 간섭 제거를 위한 방법.
- 10제 9 항에 있어서, 상기 복수의 셀들은 감소하는 신호 강도의 순서로 배열되는, 수신기에서의 간섭 제거를 위한 방법.
- 11무선 통신 시스템에서 수신기에서의 간섭 제거를 위한 시스템으로서, 상기 시스템은 복수의 셀들로부터 수신된 총 수신 칩들을 수신하며, 상기 시스템은, 상기 총 수신 칩들을 수신한 이후, 상기 복수의 셀들 각각에 대한 수신 칩들을 복수의 반복들에서 연속적으로 추정하도록 구성되는 셀 계산 유닛;및 감산 유닛을 포함하고, 상기 복수의 반복들 각각에서, 상기 총 수신 칩들을 수신한 이후, 상기 감산 유닛은, 조정된 총 수신 칩들을 획득하기 위해, 상기 복수의 셀들 중 하나 이상에 대해 이전에 추정된 수신 칩들을 상기 총 수신 칩들로부터 제거하도록 구성되고, 그리고 상기 복수의 반복들 각각에서, 상기 셀 계산 유닛은, 상기 조정된 총 수신 칩들을 이용하고, 상기 복수의 셀들 중 소정의 셀에 대해 상기 이전에 추정된 수신 칩들을 다시 가산하여, 상기 복수의 셀들 중 상기 소정의 셀에 대한 수신 칩들을 추정하도록 구성되는, 수신기에서의 간섭 제거를 위한 시스템.
- 12제 11 항에 있어서, 상기 복수의 셀들 중 최종 셀에 대한 수신 칩들을 계산한 후, 상기 셀 계산 유닛은 상기 복수의 셀들 중 제 1 셀로 루프백(loop back)하도록 구성되고, 상기 수신기에서의 간섭 제거를 위한 시스템은, 상기 복수의 셀들 각각에 대해 이전에 추정된 수신 칩들이 제거된 총 수신 칩들에, 상기 제 1 셀에 대해 이전에 추정된 수신 칩들을 다시 가산하도록 구성되는 가산 유닛을 더 포함하고, 그리고 상기 셀 계산 유닛은, 상기 복수의 셀들 각각에 대해 상기 이전에 추정된 수신 칩들이 제거되고 상기 제 1 셀에 대해 상기 이전에 추정된 수신 칩들이 다시 가산된 총 수신 칩들을 이용하여, 상기 제 1 셀에 대한 수신 칩들을 추정하도록 구성되는, 수신기에서의 간섭 제거를 위한 시스템.
- 13제 12 항에 있어서, 상기 가산 유닛은, 상기 복수의 셀들 각각에 대해 이전에 추정된 수신 칩들이 제거된 총 수신 칩들에, 상기 복수의 셀들 중 제 2 셀에 대해 이전에 추정된 수신 칩들을 다시 가산하도록 구성되고, 그리고 상기 셀 계산 유닛은, 상기 복수의 셀들 각각에 대해 상기 이전에 추정된 수신 칩들이 제거되고 상기 제 2 셀에 대해 상기 이전에 추정된 수신 칩들이 다시 가산된 총 수신 칩들을 이용하여, 상기 제 2 셀에 대한 수신 칩들을 추정하도록 구성되는, 수신기에서의 간섭 제거를 위한 시스템.
- 14제 11 항에 있어서, 상기 복수의 셀들 각각에 대해 이전에 추정된 수신 칩들이 제거된 총 수신 칩들에, 상기 복수의 셀들 중 타겟 셀에 대해 이전에 추정된 수신 칩들을 다시 가산하도록 구성되는 가산 유닛;및 상기 복수의 셀들 각각에 대해 상기 이전에 추정된 수신 칩들이 제거되고 상기 타겟 셀에 대해 상기 이전에 추정된 수신 칩들이 다시 가산된 총 수신 칩들을 이용하여, 상기 타겟 셀에 대한 복수의 사용자 심볼들을 검출하도록 구성되는 검출 유닛을 더 포함하는, 수신기에서의 간섭 제거를 위한 시스템.
- 15제 11 항에 있어서, 상기 셀 계산 유닛은, 검출 유닛 ―상기 복수의 반복들 각각에서, 상기 검출 유닛은 상기 복수의 셀들 중 동작 셀에 대한 복수의 수신 심볼들로부터 상기 복수의 셀들 중 상기 동작 셀에 대한 복수의 사용자 심볼들을 검출하도록 구성됨―;및 칩 추정 유닛을 포함하고, 상기 복수의 반복들 각각에서, 상기 칩 추정 유닛은, 상기 동작 셀에 대한 복수의 검출된 사용자 심볼들을 이용하여, 상기 동작 셀에 대한 수신 칩들을 추정하도록 구성되는, 수신기에서의 간섭 제거를 위한 시스템.
- 16제 15 항에 있어서, 상기 검출 유닛은, 심볼 검출기;다중-사용자 간섭을 계산하도록 구성되는 간섭 계산 유닛;및 감산 유닛을 포함하고, 상기 복수의 반복들 각각에서, 상기 심볼 검출기는 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 초기에 검출하도록 구성되고, 상기 간섭 계산 유닛은 상기 동작 셀에 대한 초기에 검출된 복수의 사용자 심볼들을 이용하여 다중-사용자 간섭을 계산하도록 구성되고, 상기 감산 유닛은 상기 동작 셀에 대해 계산된 다중-사용자 간섭을 상기 동작 셀에 대한 상기 복수의 수신 심볼들로부터 제거하도록 구성되고, 그리고 상기 심볼 검출기는, 상기 동작 셀에 대한 상기 계산된 다중-사용자 간섭이 제거된, 상기 동작 셀에 대한 상기 복수의 수신 심볼들로부터 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 재검출하도록 구성되는, 수신기에서의 간섭 제거를 위한 시스템.
- 17제 15 항에 있어서, 상기 검출 유닛은, 심볼 검출기;및 상기 동작 셀에 대한 신호 강도를 임계치와 비교하고, 상기 동작 셀에 대한 상기 신호 강도가 상기 임계치 이상이면, 상기 심볼 검출기가 하드 슬라이싱을 수행할 것을 지시하고, 그리고 상기 동작 셀에 대한 상기 신호 강도가 상기 임계치 미만이면, 상기 심볼 검출기가 소프트 슬라이싱을 수행할 것을 지시하도록 구성되는 선택 유닛을 포함하는, 수신기에서의 간섭 제거를 위한 시스템.
- 18제 15 항에 있어서, 상기 칩 추정 유닛은, 상기 동작 셀에 대한 송신된 칩들의 추정치를 획득하기 위해, 상기 검출 유닛으로부터의 상기 동작 셀에 대한 상기 복수의 검출된 사용자 심볼들을 확산 및 스크램블링하도록 구성되는 확산 및 스크램블 유닛;및 상기 동작 셀에 대한 상기 수신 칩들을 추정하기 위해, 상기 동작 셀에 대한 상기 송신된 칩들의 추정치에 채널 추정치를 적용하도록 구성되는 채널 유닛을 포함하는, 수신기에서의 간섭 제거를 위한 시스템.
- 19제 11 항에 있어서, 상기 셀 계산 유닛은, 상기 복수의 셀들을 상기 복수의 셀들의 신호 강도들에 기초한 순서로 배열하고, 상기 복수의 셀들 각각에 대한 상기 수신 칩들을 상기 순서에 따라 연속적으로 계산하도록 구성되는, 수신기에서의 간섭 제거를 위한 시스템.
- 20제 19 항에 있어서, 상기 셀 계산 유닛은 상기 복수의 셀들을 감소하는 신호 강도의 순서로 배열하도록 구성되는, 수신기에서의 간섭 제거를 위한 시스템.
- 21무선 통신 시스템에서 수신기에서의 간섭 제거를 위한 장치로서, 복수의 셀들로부터 수신되는 총 수신 칩들을 제공하기 위한 수단;및 상기 총 수신 칩들의 제공 이후, 상기 복수의 셀들 각각에 대한 수신 칩들을 복수의 반복들에서 연속적으로 추정하기 위한 수단을 포함하고, 상기 총 수신 칩들의 제공 이후, 상기 복수의 반복들 각각에 대해, 상기 수신 칩들을 연속적으로 추정하기 위한 수단은, 조정된 총 수신 칩들을 획득하기 위해, 상기 복수의 셀들 중 하나 이상에 대해 이전에 추정된 수신 칩들을 상기 총 수신 칩들로부터 제거하기 위한 수단;및 상기 조정된 총 수신 칩들을 이용하고, 상기 복수의 셀들 중 소정의 셀에 대해 상기 이전에 추정된 수신 칩들을 다시 가산하여, 상기 복수의 셀들 중 상기 소정의 셀에 대한 수신 칩들을 추정하기 위한 수단을 포함하는, 수신기에서의 간섭 제거를 위한 장치.
- 22제 21 항에 있어서, 상기 복수의 셀들 각각에 대한 수신 칩들을 연속적으로 추정하기 위한 수단은, 상기 복수의 셀들 중 최종 셀에 대한 수신 칩들을 추정한 후, 상기 복수의 셀들 각각에 대해 이전에 추정된 수신 칩들이 제거되고 상기 복수의 셀들 중 제 1 셀에 대해 이전에 추정된 수신 칩들이 다시 가산된 총 수신 칩들을 이용하여, 상기 복수의 셀들 중 상기 제 1 셀에 대한 수신 칩들을 추정하기 위한 수단을 포함하는, 수신기에서의 간섭 제거를 위한 장치.
- 23제 22 항에 있어서, 상기 복수의 셀들 각각에 대한 수신 칩들을 연속적으로 추정하기 위한 수단은, 상기 복수의 셀들 각각에 대해 이전에 추정된 수신 칩들이 제거되고 상기 복수의 셀들 중 제 2 셀에 대해 이전에 추정된 수신 칩들이 다시 가산된 총 수신 칩들을 이용하여, 상기 복수의 셀들 중 상기 제 2 셀에 대한 수신 칩들을 추정하기 위한 수단을 포함하는, 수신기에서의 간섭 제거를 위한 장치.
- 24제 21 항에 있어서, 상기 복수의 셀들 각각에 대해 이전에 추정된 수신 칩들이 제거되고 상기 복수의 셀들 중 타겟 셀에 대해 이전에 추정된 수신 칩들이 다시 가산된 총 수신 칩들을 이용하여, 상기 복수의 셀들 중 상기 타겟 셀에 대한 복수의 사용자 심볼들을 검출하기 위한 수단을 더 포함하는, 수신기에서의 간섭 제거를 위한 장치.
- 25제 21 항에 있어서, 상기 복수의 반복들 각각에 대해, 상기 수신 칩들을 연속적으로 추정하기 위한 수단은, 상기 복수의 셀들 중 동작 셀에 대한 복수의 수신 심볼들로부터 상기 복수의 셀들 중 상기 동작 셀에 대한 복수의 사용자 심볼들을 검출하기 위한 수단;및 상기 동작 셀에 대한 복수의 검출된 사용자 심볼들을 이용하여, 상기 동작 셀에 대한 상기 수신 칩들을 계산하기 위한 수단을 포함하는, 수신기에서의 간섭 제거를 위한 장치.
- 26제 25 항에 있어서, 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 검출하기 위한 수단은, 상기 동작 셀에 대한 상기 복수의 수신 심볼들로부터 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 초기에 검출하기 위한 수단;상기 동작 셀에 대해 초기에 검출된 복수의 사용자 심볼들을 이용하여, 상기 동작 셀에 대한 다중-사용자 간섭을 계산하기 위한 수단;상기 동작 셀에 대한 계산된 다중-사용자 간섭을 상기 동작 셀에 대한 상기 복수의 수신 심볼들로부터 제거하기 위한 수단;및 상기 동작 셀에 대한 상기 계산된 다중-사용자 간섭이 제거된, 상기 동작 셀에 대한 상기 복수의 수신 심볼들로부터, 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 재검출하기 위한 수단을 포함하는, 수신기에서의 간섭 제거를 위한 장치.
- 27제 25 항에 있어서, 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 검출하기 위한 수단은, 상기 동작 셀에 대한 신호 강도를 임계치와 비교하기 위한 수단;상기 동작 셀에 대한 상기 신호 강도가 상기 임계치 이상이면, 상기 동작 셀에 대한 상기 복수의 수신 심볼들 각각에 대해 하드 슬라이싱을 수행하기 위한 수단;및 상기 동작 셀에 대한 상기 신호 강도가 상기 임계치 미만이면, 상기 동작 셀에 대한 상기 복수의 수신 심볼들 각각에 대해 소프트 슬라이싱을 수행하기 위한 수단을 포함하는, 수신기에서의 간섭 제거를 위한 장치.
- 28제 25 항에 있어서, 상기 동작 셀에 대한 복수의 검출된 사용자 심볼들을 이용하여 상기 동작 셀에 대한 상기 수신 칩들을 계산하기 위한 수단은, 상기 동작 셀에 대한 상기 복수의 검출된 사용자 심볼들을 확산시키기 위한 수단;상기 동작 셀에 대한 송신된 칩들의 추정치를 획득하기 위해, 상기 동작 셀에 대한 확산된 복수의 검출된 사용자 심볼들을 스크램블링하기 위한 수단;및 상기 동작 셀에 대한 상기 수신 칩들을 추정하기 위해, 상기 동작 셀에 대한 상기 송신된 칩들의 추정치에 채널 추정치를 적용하기 위한 수단을 포함하는, 수신기에서의 간섭 제거를 위한 장치.
- 29제 21 항에 있어서, 상기 복수의 셀들을 상기 복수의 셀들의 신호 강도들에 기초한 순서로 배열하기 위한 수단을 더 포함하고, 상기 복수의 셀들 각각에 대한 상기 수신 칩들을 연속적으로 계산하는 것은 상기 순서에 따라 수행되는, 수신기에서의 간섭 제거를 위한 장치.
- 30제 29 항에 있어서, 상기 복수의 셀들은 감소하는 신호 강도의 순서로 배열되는, 수신기에서의 간섭 제거를 위한 장치.
- 31무선 통신 시스템에서 수신기에서의 간섭 제거를 위한 명령들을 저장하는 머신-판독가능 매체로서, 상기 명령들은, 복수의 셀들로부터 수신되는 총 수신 칩들을 제공하기 위한 코드;및 상기 제공 이후, 상기 복수의 셀들 각각에 대한 수신 칩들을 복수의 반복들에서 연속적으로 추정하기 위한 코드를 포함하고, 상기 제공 이후, 상기 복수의 반복들 각각에 대해, 상기 수신 칩들을 연속적으로 추정하기 위한 코드는, 조정된 총 수신 칩들을 획득하기 위해, 상기 복수의 셀들 중 하나 이상에 대해 이전에 추정된 수신 칩들을 상기 총 수신 칩들로부터 제거하기 위한 코드;및 상기 조정된 총 수신 칩들을 이용하고, 상기 복수의 셀들 중 소정의 셀에 대해 상기 이전에 추정된 수신 칩들을 다시 가산하여, 상기 복수의 셀들 중 상기 소정의 셀에 대한 수신 칩들을 추정하기 위한 코드를 포함하는, 머신-판독가능 매체.
- 32제 31 항에 있어서, 상기 복수의 셀들 각각에 대한 수신 칩들을 연속적으로 추정하기 위한 코드는, 상기 복수의 셀들 중 최종 셀에 대한 수신 칩들을 추정한 후, 상기 복수의 셀들 각각에 대해 이전에 추정된 수신 칩들이 제거되고 상기 복수의 셀들 중 제 1 셀에 대해 이전에 추정된 수신 칩들이 다시 가산된 총 수신 칩들을 이용하여, 상기 복수의 셀들 중 상기 제 1 셀에 대한 수신 칩들을 추정하기 위한 코드를 포함하는, 머신-판독가능 매체.
- 33제 32 항에 있어서, 상기 복수의 셀들 각각에 대한 수신 칩들을 연속적으로 추정하기 위한 코드는, 상기 복수의 셀들 각각에 대해 이전에 추정된 수신 칩들이 제거되고 상기 복수의 셀들 중 제 2 셀에 대해 이전에 추정된 수신 칩들이 다시 가산된 총 수신 칩들을 이용하여, 상기 복수의 셀들 중 상기 제 2 셀에 대한 수신 칩들을 추정하기 위한 코드를 포함하는, 머신-판독가능 매체.
- 34제 31 항에 있어서, 상기 명령들은, 상기 복수의 셀들 각각에 대해 이전에 추정된 수신 칩들이 제거되고 상기 복수의 셀들 중 타겟 셀에 대해 이전에 추정된 수신 칩들이 다시 가산된 총 수신 칩들을 이용하여, 상기 복수의 셀들 중 상기 타겟 셀에 대한 복수의 사용자 심볼들을 검출하기 위한 코드를 더 포함하는, 머신-판독가능 매체.
- 35제 31 항에 있어서, 상기 복수의 반복들 각각에 대해, 상기 수신 칩들을 연속적으로 추정하기 위한 코드는, 상기 복수의 셀들 중 동작 셀에 대한 복수의 수신 심볼들로부터 상기 복수의 셀들 중 상기 동작 셀에 대한 복수의 사용자 심볼들을 검출하기 위한 코드;및 상기 동작 셀에 대한 복수의 검출된 사용자 심볼들을 이용하여, 상기 동작 셀에 대한 상기 수신 칩들을 계산하기 위한 코드를 포함하는, 머신-판독가능 매체.
- 36제 35 항에 있어서, 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 검출하기 위한 코드는, 상기 동작 셀에 대한 상기 복수의 수신 심볼들로부터 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 초기에 검출하기 위한 코드;상기 동작 셀에 대해 초기에 검출된 복수의 사용자 심볼들을 이용하여, 상기 동작 셀에 대한 다중-사용자 간섭을 계산하기 위한 코드;상기 동작 셀에 대한 계산된 다중-사용자 간섭을 상기 동작 셀에 대한 상기 복수의 수신 심볼들로부터 제거하기 위한 코드;및 상기 동작 셀에 대한 상기 계산된 다중-사용자 간섭이 제거된, 상기 동작 셀에 대한 상기 복수의 수신 심볼들로부터, 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 재검출하기 위한 코드를 포함하는, 머신-판독가능 매체.
- 37제 35 항에 있어서, 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 검출하기 위한 코드는, 상기 동작 셀에 대한 신호 강도를 임계치와 비교하기 위한 코드;상기 동작 셀에 대한 상기 신호 강도가 상기 임계치 이상이면, 상기 동작 셀에 대한 상기 복수의 수신 심볼들 각각에 대해 하드 슬라이싱을 수행하기 위한 코드;및 상기 동작 셀에 대한 상기 신호 강도가 상기 임계치 미만이면, 상기 동작 셀에 대한 상기 복수의 수신 심볼들 각각에 대해 소프트 슬라이싱을 수행하기 위한 코드를 포함하는, 머신-판독가능 매체.
- 38제 35 항에 있어서, 상기 동작 셀에 대한 복수의 검출된 사용자 심볼들을 이용하여 상기 동작 셀에 대한 상기 수신 칩들을 계산하기 위한 코드는, 상기 동작 셀에 대한 상기 복수의 검출된 사용자 심볼들을 확산시키기 위한 코드;상기 동작 셀에 대한 송신된 칩들의 추정치를 획득하기 위해, 상기 동작 셀에 대한 확산된 복수의 검출된 사용자 심볼들을 스크램블링하기 위한 코드;및 상기 동작 셀에 대한 상기 수신 칩들을 추정하기 위해, 상기 동작 셀에 대한 상기 송신된 칩들의 추정치에 채널 추정치를 적용하기 위한 코드를 포함하는, 머신-판독가능 매체.
- 39제 31 항에 있어서, 상기 명령들은, 상기 복수의 셀들을 상기 복수의 셀들의 신호 강도들에 기초한 순서로 배열하기 위한 코드를 더 포함하고, 상기 복수의 셀들 각각에 대한 상기 수신 칩들을 연속적으로 계산하는 것은 상기 순서에 따라 수행되는, 머신-판독가능 매체.
- 40제 39 항에 있어서, 상기 복수의 셀들은 감소하는 신호 강도의 순서로 배열되는, 머신-판독가능 매체.
- 41복수의 셀들로부터 수신된 총 수신 칩들을 수신하는 무선 통신 시스템에서 수신기에서의 간섭 제거를 위한 장치로서, 상기 총 수신 칩들을 수신한 이후, 상기 복수의 셀들 각각에 대한 수신 칩들을 복수의 반복들에서 연속적으로 추정하도록 구성되는 적어도 하나의 프로세서를 포함하고, 상기 복수의 반복들 각각에서, 상기 총 수신 칩들을 수신한 이후, 상기 적어도 하나의 프로세서는, 조정된 총 수신 칩들을 획득하기 위해, 상기 복수의 셀들 중 하나 이상에 대해 이전에 추정된 수신 칩들을 상기 총 수신 칩들로부터 제거하고, 상기 조정된 총 수신 칩들을 이용하고, 상기 복수의 셀들 중 소정의 셀에 대해 상기 이전에 추정된 수신 칩들을 다시 가산하여, 상기 복수의 셀들 중 상기 소정의 셀에 대한 수신 칩들을 추정하도록 구성되는, 수신기에서의 간섭 제거를 위한 장치.
- 42제 41 항에 있어서, 상기 복수의 셀들 중 최종 셀에 대한 수신 칩들을 추정한 후, 상기 적어도 하나의 프로세서는, 상기 복수의 셀들 각각에 대해 이전에 추정된 수신 칩들이 제거되고 상기 복수의 셀들 중 제 1 셀에 대해 이전에 추정된 수신 칩들이 다시 가산된 총 수신 칩들을 이용하여, 상기 복수의 셀들 중 상기 제 1 셀에 대한 수신 칩들을 추정하도록 구성되는, 수신기에서의 간섭 제거를 위한 장치.
- 43제 42 항에 있어서, 상기 적어도 하나의 프로세서는, 상기 복수의 셀들 각각에 대해 이전에 추정된 수신 칩들이 제거되고 상기 복수의 셀들 중 제 2 셀에 대해 이전에 추정된 수신 칩들이 다시 가산된 총 수신 칩들을 이용하여, 상기 복수의 셀들 중 상기 제 2 셀에 대한 수신 칩들을 추정하도록 구성되는, 수신기에서의 간섭 제거를 위한 장치.
- 44제 41 항에 있어서, 상기 적어도 하나의 프로세서는, 상기 복수의 셀들 각각에 대해 이전에 추정된 수신 칩들이 제거되고 상기 복수의 셀들 중 타겟 셀에 대해 이전에 추정된 수신 칩들이 다시 가산된 총 수신 칩들을 이용하여, 상기 복수의 셀들 중 상기 타겟 셀에 대한 복수의 사용자 심볼들을 검출하도록 구성되는, 수신기에서의 간섭 제거를 위한 장치.
- 45제 41 항에 있어서, 상기 복수의 반복들 각각에 대해, 상기 적어도 하나의 프로세서는, 상기 복수의 셀들 중 동작 셀에 대한 복수의 수신 심볼들로부터 상기 복수의 셀들 중 상기 동작 셀에 대한 복수의 사용자 심볼들을 검출하고, 상기 동작 셀에 대한 복수의 검출된 사용자 심볼들을 이용하여, 상기 동작 셀에 대한 상기 수신 칩들을 계산하도록 구성되는, 수신기에서의 간섭 제거를 위한 장치.
- 46제 45 항에 있어서, 상기 적어도 하나의 프로세서는, 상기 동작 셀에 대한 상기 복수의 수신 심볼들로부터 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 초기에 검출하고, 상기 동작 셀에 대해 초기에 검출된 복수의 사용자 심볼들을 이용하여, 상기 동작 셀에 대한 다중-사용자 간섭을 계산하고, 상기 동작 셀에 대한 계산된 다중-사용자 간섭을 상기 동작 셀에 대한 상기 복수의 수신 심볼들로부터 제거하고, 상기 동작 셀에 대한 상기 계산된 다중-사용자 간섭이 제거된, 상기 동작 셀에 대한 상기 복수의 수신 심볼들로부터, 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 재검출함으로써, 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 검출하도록 구성되는, 수신기에서의 간섭 제거를 위한 장치.
- 47제 45 항에 있어서, 상기 적어도 하나의 프로세서는, 상기 동작 셀에 대한 신호 강도를 임계치와 비교하고, 상기 동작 셀에 대한 상기 신호 강도가 상기 임계치 이상이면, 상기 동작 셀에 대한 상기 복수의 수신 심볼들 각각에 대해 하드 슬라이싱을 수행하고, 상기 동작 셀에 대한 상기 신호 강도가 상기 임계치 미만이면, 상기 동작 셀에 대한 상기 복수의 수신 심볼들 각각에 대해 소프트 슬라이싱을 수행함으로써, 상기 동작 셀에 대한 상기 복수의 사용자 심볼들을 검출하도록 구성되는, 수신기에서의 간섭 제거를 위한 장치.
- 48제 45 항에 있어서, 상기 적어도 하나의 프로세서는, 상기 동작 셀에 대한 상기 복수의 검출된 사용자 심볼들을 확산시키고, 상기 동작 셀에 대한 송신된 칩들의 추정치를 획득하기 위해, 상기 동작 셀에 대한 확산된 복수의 검출된 사용자 심볼들을 스크램블링하고, 상기 동작 셀에 대한 상기 수신 칩들을 추정하기 위해, 상기 동작 셀에 대한 상기 송신된 칩들의 추정치에 채널 추정치를 적용함으로써, 상기 동작 셀에 대한 상기 복수의 검출된 사용자 심볼들을 이용하여 상기 동작 셀에 대한 상기 수신 칩들을 계산하도록 구성되는, 수신기에서의 간섭 제거를 위한 장치.
- 49제 41 항에 있어서, 상기 적어도 하나의 프로세서는, 상기 복수의 셀들을 상기 복수의 셀들의 신호 강도들에 기초한 순서로 배열하도록 구성되고, 상기 복수의 셀들 각각에 대한 상기 수신 칩들을 연속적으로 계산하는 것은 상기 순서에 따라 수행되는, 수신기에서의 간섭 제거를 위한 장치.
- 50제 49 항에 있어서, 상기 복수의 셀들은 감소하는 신호 강도의 순서로 배열되는, 수신기에서의 간섭 제거를 위한 장치.
Independent claims50
339 paragraphs in 1 section, as filed
METHOD AND SYSTEM FOR INTERFERENCE CANCELLATION
BACKGROUND This application relates generally to wireless communication systems, and more particularly, to methods and systems for interference cancellation in a multiple access system.
In wireless communication systems, multiple users communicate over a wireless channel. For example, Code Division Multiple Access (CDMA) modulation technique is one of several techniques for facilitating communications in which multiple system users exist. Other multiple access communication system technologies such as time division multiple access (TDMA) and frequency division multiple access (FDMA) may also be used.
A wireless communication system may provide for communication for multiple cells, where each cell supports multiple users and is serviced by a corresponding base station. Users receive wireless service from a wireless communication system using mobile stations, which may be referred to as, for example, cellular phones, user equipment (UE), wireless communication devices, or wireless terminals.
A mobile station in a wireless communication system may be subject to intra-cell interference and inter-cell interference. Intra-cell interference is caused by other users in the same cell serving the mobile station, while inter-cell interference is caused by other users in neighboring cells. When the mobile station is located near the edge of the serving cell, where interference from neighboring cells is stronger, the mobile station is typically more susceptible to inter-cell interference. Because intra-cell interference and inter-cell interference negatively affect a mobile station's data throughput and voice capability, methods and systems for canceling both types of interference are desirable.
According to an aspect of the present application, a method for interference cancellation in a receiver in a wireless communication system is provided. The method includes providing aggregate receive chips received from a plurality of cells. The method further comprises successively estimating received chips for each of the plurality of cells in the plurality of iterations, each of the plurality of iterations after the first iteration having previously been performed for one or more of the plurality of cells removing the estimated received chips from the total received chips, and estimating the received chips for one of the plurality of cells using the total received chips from which the previously estimated received chips for one or more of the cells have been removed. includes steps.
According to another aspect of the present application, there is provided a system for interference cancellation in a receiver in a wireless communication system, the system receiving total receive chips received from a plurality of cells. The system includes a cell counting unit configured to successively estimate received chips for each of a plurality of cells in a plurality of iterations, and a subtraction unit, wherein at each of the plurality of iterations after the first iteration, the subtracting unit comprises: , remove from total received chips previously estimated received chips for one or more of the plurality of cells, wherein at each of the plurality of iterations after the first iteration, the cell counting unit is configured to: and estimate the receive chips for one of the plurality of cells using the total receive chips from which previously estimated receive chips have been removed.
According to another aspect of the present application, an apparatus for interference cancellation in a receiver in a wireless communication system is provided. The apparatus includes means for providing aggregate receive chips received from a plurality of cells. The apparatus further comprises means for continuously estimating received chips for each of the plurality of cells in the plurality of iterations, for continuously estimating the received chips for each of the plurality of iterations after the first iteration means for removing from total receive chips previously estimated receive chips for one or more of the plurality of cells, and using total receive chips from which previously estimated receive chips for one or more of the plurality of cells have been removed , means for estimating received chips for one of the plurality of cells.
According to another aspect of the present application, there is provided a machine-readable medium storing instructions for interference cancellation at a receiver in a wireless communication system. The instructions include code for providing total receive chips received from a plurality of cells. The instructions further include code for continuously estimating received chips for each of the plurality of cells in the plurality of iterations, wherein, for each of the plurality of iterations after the first iteration, the received chips are continuously estimated. The code for to do is to remove from total receive chips previously estimated receive chips for one or more of the plurality of cells, and use the total receive chips from which previously estimated receive chips for one or more of the plurality of cells have been removed. , code for estimating received chips for one of the plurality of cells.
According to another aspect of the present application, there is provided an apparatus for interference cancellation in a receiver in a wireless communication system, the system receiving total receive chips received from a plurality of cells. The apparatus includes at least one processor configured to successively estimate receive chips for each of a plurality of cells in a plurality of iterations. For each of the plurality of iterations after the first iteration, the at least one processor removes from the total received chips previously estimated receive chips for one or more of the plurality of cells, and, for one or more of the plurality of cells, and estimate the received chips for one of the plurality of cells by using the total received chips from which the estimated received chips are removed.
It is understood that other configurations of the subject technology will become readily apparent to those skilled in the art from the following detailed description, and various configurations of the subject technology are shown and described by way of illustration. As realized, the subject technology is capable of other and different configurations, and its numerous details are capable of modification in various other respects, all without departing from the scope of the subject technology. Accordingly, the drawings and detailed description are to be regarded as illustrative in nature and not restrictive.
1 is a diagram of a wireless communication system with multiple users, in accordance with certain aspects of the present application. 2 is a block diagram of a mobile station used in a wireless communication system, in accordance with certain aspects of the present application. 3 is a diagram of a single user channel model, in accordance with certain aspects of the present application. 4A is a diagram of a multi-user channel model, in accordance with certain aspects of the present application. 4B is a diagram of a simplified multi-user channel model, in accordance with certain aspects of the present application. 4( c ) is a diagram of a simplified multi-user channel model, including noise, in accordance with certain aspects of the present application. 5 is a schematic diagram of a multi-user detection system using two-stage processing in a wireless communication system, in accordance with certain aspects of the present application. 6 is a schematic diagram of a multi-user detection system using two-stage processing and a multi-user interference matrix, in accordance with certain aspects of the present application. 7 is a flow diagram illustrating a method of multi-user detection using two-stage processing, in accordance with certain aspects of the present application. 8 is a flow diagram illustrating a method of transmitting chips to a receiver, in accordance with certain aspects of the present application. 9 is a flow diagram illustrating a method of processing chips into one or more received symbols for a plurality of users, in accordance with certain aspects of the present application. 10 is a block diagram of a mobile station used in a wireless communication system, in accordance with certain aspects of the present application. 11 is a diagram of a multi-channel model, in accordance with certain aspects of the present application. 12A is a flow diagram illustrating a method of multi-user detection, in accordance with certain aspects of the present application. 12B is a flow diagram illustrating a method of calculating a multi-user interference matrix, in accordance with certain aspects of the present application. 13 is a schematic diagram of a system for calculating multi-user interference and shoulder matrices, in accordance with certain aspects of the present application. 14 is a schematic diagram of a multi-user detection system with interference cancellation, in accordance with certain aspects of the present application. 15 is a schematic diagram of a multi-user detection system with interference cancellation, in accordance with certain aspects of the present application. 16 is a flow diagram illustrating a method of multi-user detection with interference cancellation, in accordance with certain aspects of the present application. 17 is a schematic diagram of a multi-user detection system with iterative interference cancellation, in accordance with certain aspects of the present application. 18 is a flow diagram illustrating a method of multi-user detection with iterative interference cancellation, in accordance with certain aspects of the present application. 19 is a schematic diagram of a multi-user detection system with iterative interference cancellation, in accordance with certain aspects of the present application. 20 is a schematic diagram of a channel estimation system, in accordance with certain aspects of the present application. 21A is a flow diagram illustrating a method of channel estimation, in accordance with certain aspects of the present application. 21B is a flow diagram illustrating a method of total filter estimation, in accordance with certain aspects of the present application. 22 is a diagram of a simplified multi-cell multi-user channel model, in accordance with certain aspects of the present application. 23 is a schematic diagram of a system for inter-cell interference cancellation, in accordance with certain aspects of the present application. 24 is a schematic diagram of a cell counting system for calculating receive chips, in accordance with certain aspects of the present application. 25 is a schematic diagram of a cell counting system for calculating received chips by slice detection, in accordance with certain aspects of the present application. 26 is a schematic diagram of a system capable of performing continuous interference cancellation, in accordance with certain aspects of the present application. 27 is a schematic diagram of a system capable of performing continuous interference cancellation, in accordance with certain aspects of the present application. 28 is a flow diagram illustrating a method of continuous interference cancellation, in accordance with certain aspects of the present application. 29 is a block diagram illustrating an example of functionality of an apparatus for interference cancellation, in accordance with certain aspects of the present application.
In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the subject technology. However, it will be apparent to one skilled in the art that the subject technology may be practiced without some of these specific details. In other instances, well-known structures and techniques have not been shown in order not to obscure the subject technology.
The term "exemplary" is used herein in the sense of "serving as an example or illustration". Any aspect or design described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other aspects or designs.
Reference will now be made in detail to aspects of the present technology, examples of which are shown in the accompanying drawings, in which like reference numerals refer to like elements throughout.
It should be understood that the specific order or hierarchy of steps in the processes disclosed herein is an example of exemplary approaches. Based on design preferences, it is understood that the specific order or hierarchy of steps in these processes may be rearranged while remaining within the scope of the present application. The accompanying method claims present elements of the various steps in an exemplary order, and are not intended to be limited to the specific order or hierarchy presented.
1 is a diagram of a wireless communication system supporting multiple users, in accordance with certain aspects of the present application. Communication system 100 provides communication for a number of cells 102A-102G (referred to as cells 102), each of which has a corresponding base station 104A-104G (referred to as base stations 104). serviced by). Of course, any number of cells 102 and base stations 104 may be included in communication system 100 . In the exemplary communication system 100 , some of the base stations 104 have multiple receive antennas and others have only one receive antenna. Similarly, some of the base stations 104 have multiple transmit antennas and others have a single transmit antenna.
Mobile stations 106A- 106H (referred to as mobile stations 106) may refer to, for example, cellular phones, PDAs, or the like, and may also refer to mobile devices, user equipment (UE), wireless may be referred to as communication devices, terminals, stations, mobile equipment (ME) or some other terminology. As shown in FIG. 1, various mobile stations 106 may be dispersed throughout the communication system 100, with each mobile station 106 having at least one on the downlink and uplink at any given moment. It communicates with the base station 104 .
(1) a CDMA system that transmits data for multiple users using different orthogonal code sequences, (2) an FDMA system that transmits data for different users on different frequency subbands, (3) A TDMA system that transmits data for different users in different time slots, (4) a spatial division multiple access (SDMA) system that transmits data for different users on different spatial channels, (5) different frequency subbands Various techniques may be used for various multiple access communication systems, such as an orthogonal frequency division multiple access (OFDMA) system that transmits data for different users via
2 is a block diagram of a mobile station 106 used in a wireless communication system 100, in accordance with certain aspects of the present application. The mobile station 106 may include a receiver 200 configured to receive the transmitted signal using the antenna 220 . Receiver 200 is communicatively coupled to front-end processing unit 210, which front-end processing unit 210 receives signals using, for example, channel-matched filters and/or equalizers. can be used for filtering. The mobile station 106 may include a descramble and deconversion unit 230 that descrambles and despreads the output of the front-end processing unit 210 . The mobile station 106 may further include a processing unit 240 , a communicatively coupled memory 250 , and a communicatively coupled detection unit 260 used for multi-user detection and described in greater detail below. The mobile station 106 is not limited to any particular configuration, and various combinations of components as well as other components may be included in the mobile station 106 .
3 is a diagram of a single user channel model, in accordance with certain aspects of the present application. As shown in FIG. 3 , the user symbol b(m) is transmitted from a transmitter (not shown), which may be, for example, within the base station 104 . A user symbol may also be referred to as a data symbol for that user, and includes one or more data using binary phase shift keying (BPSK) modulation, quadrature phase shift keying (QPSK) modulation, quadrature amplitude modulation (QAM), or other schemes. It can be obtained by mapping bits to data symbols. Note that m refers to the symbol period of the user symbol b(m). Next, the previous user symbol will be labeled b(m-1), and the subsequent user symbol will be labeled b(m+1). User symbols b(m) are spread using, for example, Walsh code w(n) and scrambled using code p(n). A Walsh code may have a spreading factor of N, and a Walsh code w(n) contains a sequence of N chips spanning one symbol period. The results of spreading and scrambling are transmitted on channel h at block 310 .
The mobile station 106 receives the chips at the receiver 200 using the antenna 220 , and then the chips are filtered in the front-end processing unit 210 , before being summed in the summing block 320 , the In the scrambling and despreading unit 230, descrambling is performed using the descrambling code p*(n) and despreading is performed using the despreading code w*(n). The resulting received symbol at mobile station 106 is labeled z(m). A summing block 320 sums the despread signals over one symbol period to obtain each received symbol z(m).
The total filter 300 "{c}" refers to a total filter that is a convolution of the channel 310 h and the filter 210 f. Channel 310 h may be estimated using pilot-based channel estimation and/or data-assisted channel estimation, which are described in more detail below. When the length of the total filter 300 is less than 2N+1 (where N is a spreading factor), z(m) may be expressed by Equation (1) below.
<img file="KR101401570B1_D0001.tif" /> (1)
In terms of c(l), w(n) and p(n), a<sub>-1</sub>(m), a<sub>0</sub>(m) and a<sub>1</sub>(m) can be expressed as shown in equations (2)-(4).
<img file="KR101401570B1_D0002.tif" />(2)
delete
<img file="KR101401570B1_D0003.tif" /> (3)
<img file="KR101401570B1_D0004.tif" /> (4)
4A is a diagram of a multi-user channel model, in accordance with certain aspects of the present application. Instead of transmitting the user symbol b(m) as described in Fig. 3, Fig. 4(a) shows the user symbol set {b<sub>k</sub>(m)} is shown. i.e. the symbols b<sub>1</sub>(m) to b<sub>Nu</sub>(m) may be transmitted to multiple users 1 to Nu. Thus, next, each of the spreading codes (eg, Walsh codes) w<sub>1</sub>(n) to w<sub>Nu</sub>(n) each of the user symbols b<sub>1</sub>(m) to b<sub>Nu</sub>(m) can be applied. Of course, the use of Walsh codes is exemplary only, and other spreading techniques may be used without departing from the scope of the present application. Also, each of the gains g<sub>1</sub> to g<sub>Nu</sub>is each user symbol b<sub>1</sub>(m) and b<sub>Nu</sub>(m) can be applied. Without departing from the scope of the present application, separate or similar spreading codes or gains may be applied to each of the user symbols b<sub>1</sub>(m) to b<sub>Nu</sub>Note that (m) can be applied. The spread signals for different users may be combined in combiner 400 before the scrambling code p(n) is applied. The resulting combined signal is transmitted over channel 310 h.
The mobile station 106 receives the chips at the receiver 200 using the antenna 220 , and then the chips are filtered at the front-end processing unit 210 . Various front-end filtering techniques (eg, front-end channel-matched filter and/or equalization) may be implemented. Next, the filtered chips are descrambled using the descramble code p*(n) in the descramble and despread unit 230 and despread codes w*<sub>1</sub>(n) to w*<sub>Nu</sub>It is despread using (n). descramble code p*(n) and despread codes w*<sub>1</sub>(n) to w*<sub>Nu</sub>(n) is the scrambling code p(n) and the spreading codes w, respectively<sub>1</sub>(n) to w<sub>Nu</sub>may be conjugates of (n). Each despread signal is a received symbol z<sub>1</sub>(m) to z<sub>Nu</sub>It is summed over one symbol period by each summing block 320 to obtain (m). resulting received symbols z<sub>1</sub>(m) to z<sub>Nu</sub>(m) represents the received symbols at mobile station 106 .
resulting received symbols z<sub>1</sub>(m) to z<sub>Nu</sub>(m) is the vector shown in the following formula (5) <u>z</u>It can be expressed as (m):
<img file="KR101401570B1_D0005.tif" /> (5)
where G is the gain matrix 415 (see Fig. 4(c)), <img file="KR101401570B1_D0006.tif" />is a stacked gain matrix 420 (see Fig. 4(b)), which can be expressed as shown in equation (6):
<img file="KR101401570B1_D0007.tif" /> (6)
<u>b</u>(m) is the user symbols b<sub>1</sub>(m) to b<sub>Nu</sub>is a vector of (m), which can be expressed as shown in equation (7):
<img file="KR101401570B1_D0008.tif" /> (7)
<img file="KR101401570B1_D0009.tif" />may be referred to as a multi-user interference matrix 410, and may be expressed as shown in equation (8).
<img file="KR101401570B1_D0010.tif" /> (8)
According to certain embodiments, A<sub>-1</sub>(m), A<sub>0</sub>(m) and A<sub>1</sub>(m) is the Nu x Nu multi-user interference (MAI) and shoulder matrices, where Nu is the number of code channels in the serving cell 102 . matrices A<sub>-1</sub>(m), A<sub>0</sub>(m) and A<sub>1</sub>The determination of (m) will be described in more detail below with reference to FIG. 5 .
The resulting expression of Equation (5) can be rewritten as Equation (9) below.
<img file="KR101401570B1_D0011.tif" /> (9)
As a result of the above equations, the user symbols b<sub>1</sub>(m) to b<sub>Nu</sub>Transmit and receive symbols of (m) z<sub>1</sub>(m) to Z<sub>Nu</sub>A simplified model for (m) can be expressed as shown in Fig. 4(b). In Fig. 4(b), the stacked gain matrix (as depicted by the dashed line in Fig. 4(a))<img file="KR101401570B1_D0012.tif" />is labeled 420, and the multi-user interference matrix <img file="KR101401570B1_D0013.tif" />is labeled 410.
4( c ) is a diagram of a simplified multi-user channel model, including noise, in accordance with certain aspects of the present application. As shown in Fig. 4(c), the user symbols<u>b</u>(m) is the scaled gain at block 415 , which is spread and scrambled at block 425 . The resulting signal is transmitted on channel 310 h and may be subject to noise during transmission. The signal received at the receiver is filtered in the front-end processing unit 210 and descrambled and despread in the descramble and inverse conversion unit 230 . As a result, the received symbols<u>z</u>(m) can be expressed by equation (10), where the noise is <u>ν</u>(m) is expressed by
<img file="KR101401570B1_D0014.tif" /> (10)
Thus, next, the resulting received symbols <u>z</u>(m) (e.g., a despread CDMA signal) may be represented by a single representation, which may represent multi-user intersymbol interference (ISI), multi-user interference (MUI), as well as other unconsidered noises. <u>ν</u>(m) is expressed. A single representation represents a symbol-level time-varing multi-user model of the despread signal, as shown in equation (11).
<img file="KR101401570B1_D0015.tif" /> (11)
Alternatively, equation (11) can be rewritten as equation (12).
<img file="KR101401570B1_D0016.tif" /> (12)
5 is a schematic diagram of a multi-user detection system using two-stage processing at a receiver in a wireless communication system, in accordance with certain aspects of the present application. Stage 1 500 refers to the chip level where chips r(n) are received at the receiver 200 (shown in FIG. 2 ). Receive chips r(n) undergo front-end processing in filter 210 (eg, a channel matched filter and/or equalizer). The output of the filter 210, y(n), is input to a descramble and despreading unit 230, and the output y(n) is descrambled using, for example, a descrambling code p*(n) and Despreading codes w*<sub>1</sub>(n) to w*<sub>Nu</sub>Despreading is performed using (n), and these codes are pre-stored in the memory 250 . The descramble and despread unit 230 receives symbols z<sub>1</sub>(m) to z<sub>Nu</sub>(m) is output.
In an aspect, the descrambling and despreading unit 230 includes a descrambling mixer 315 for mixing the filtered chips y(n) with a descramble code p*(n), and despreading the descrambled chips. codes w*<sub>1</sub>(n) to w*<sub>Nu</sub>and despread mixers 317 for mixing with (n). The descramble and despread unit 230 is also configured to send received symbols z<sub>1</sub>(m) to z<sub>Nu</sub>and summing blocks 320 for summing the despread signals over one symbol period to obtain (m).
The filtering, descrambling and despreading operations of the multi-user detection system are performed on received symbols z<sub>1</sub>(m) to z<sub>Nu</sub>It should be understood that in order to obtain (m), it may be arranged in an order different from the order shown in the example of FIG. 5 . For example, descrambling and despreading operations may be performed prior to filtering. Thus, the multi-user detection system is not limited to a particular order of filtering, descrambling, and despreading operations.
As described above, the total filter 300 c refers to the convolution of the channel 310 h and the filter 210 f. Accordingly, c(l) is equal to h(l) convolved with f(l), where h(l) and f(l) may be calculated and stored in memory 250 . In terms of c(l), w(n) and p(n), matrices A<sub>-1</sub>(m), A<sub>0</sub>(m) and A<sub>1</sub>(m) can be expressed as shown in equations (13)-(15).
<img file="KR101401570B1_D0017.tif" />
(13)
<img file="KR101401570B1_D0018.tif" /> (14)
<img file="KR101401570B1_D0019.tif" /> (15)
Stage 2 510 is the output of descramble and despread unit 230 (ie, the resulting received symbols z<sub>1</sub>(m) to z<sub>Nu</sub>(m)) refers to the obtained symbol level. Equation (11) is the received symbols z<sub>1</sub>(m) to z<sub>Nu</sub>(m) the desired user symbols b<sub>1</sub>(m) to b<sub>Nu</sub>We provide a symbol-level time-varying multi-user model that relates to (m). Equation (11) and computed matrices A<sub>-1</sub>(m), A<sub>0</sub>(m) and A<sub>1</sub>Using (m), the gain matrix, and the received symbols, the desired user symbols b<sub>1</sub>(m) to b<sub>Nu</sub>(m) can be solved.
According to certain embodiments, shoulder matrices A<sub>-1</sub> and A<sub>1</sub>can be small, so they are noise <u>ν</u>(m) can be absorbed, so that the total interference <img file="KR101401570B1_D0020.tif" />becomes this As a result, z(m) can be expressed as shown in equation (16).
<img file="KR101401570B1_D0021.tif" /> (16)
6 is a schematic diagram of a multi-user detection system using two-stage processing and a multi-user interference matrix in a wireless communication system, in accordance with certain aspects of the present application. FIG. 6 is similar to FIG. 5 , but includes a matrix calculation unit 240 and a detection unit 260 . The same stage 1 500 and stage 2 510 occur as described above with reference to FIG. 5 . However, according to certain aspects, the matrix calculation unit 240 may, for example, generate a multi-user interference matrix A<sub>0</sub>(m) can be calculated, and this matrix is passed to the detection unit 260 . Multi-user interference matrix A<sub>0</sub>(m) and received symbols <u>z</u>Given (m), the detection unit 260 is, for example, the desired symbols in equation (16). <u>b</u>The desired user symbols by finding (m) <img file="KR101401570B1_D0022.tif" />to detect Hat superscripts indicate detected user symbols, which provide estimates of user symbols at the transmitter side (eg, base station 104). received symbols<u>z</u>(m) is predetermined by descrambling and despreading the receive chips and G as known in advance. Based on equation (16), minimum mean square error estimation (MMSE), maximum likelihood detection (MLD) or sphere decoding (SD), maximum posterior detection (MAPD), to determine desired user symbols, Various detection and estimation techniques, such as maximum a posteriori detection and slicing, may be used by the detection unit 260 . Other techniques known in the art may also be used. Although the matrix calculation unit 240 and the detection unit 260 are separately illustrated in FIG. 5 for ease of explanation, their operations may be performed by the same processor or a plurality of processors.
In one aspect, the multi-user interference matrix A<sub>0</sub>(m) is each received symbol z<sub>1</sub>(m) to z<sub>Nu</sub>(m) is a Nu x Nu matrix that associates a corresponding user symbol and other user symbols. For example, the received symbol z<sub>1</sub>For (m), multi-user interference matrix A<sub>0</sub>Coefficient of (m) [A<sub>0</sub>(m)]<sub>1,1</sub>is the received symbol Z<sub>1</sub>(m) corresponding user symbol b<sub>1</sub>(m) is related. Also, the multi-user interference matrix A<sub>0</sub>Other coefficients in the first row of (m) [A<sub>0</sub>(m)]<sub>1,2</sub> to [A<sub>0</sub>(m)]<sub>1,Nu</sub>is the received symbol z<sub>1</sub>(m) different user symbols b<sub>2</sub>(m) to b<sub>Nu</sub>(m) associating with other user symbols b<sub>2</sub>(m) to b<sub>Nu</sub>(m) is the received symbol z<sub>1</sub>(m) contributes to multi-user interference. The same scheme can be applied to other received symbols.
Thus, the multi-user interference matrix A of this aspect<sub>0</sub>(m) is the user symbols b in equation (16)<sub>1</sub>(m) to b<sub>Nu</sub>Multi-user interference is considered when calculating (m). Thus, the multi-user interference matrix A<sub>0</sub>(m) provides multi-user user symbol detection at the symbol level that takes into account multi-user interference without the need to perform complex chip-level multi-user interference cancellation. As a result, a desired symbol can be accurately detected using a wide range of powerful and advanced receivers at the symbol level.
7 is a flowchart illustrating a method of multi-user detection using two-stage processing in a wireless communication system, in accordance with certain aspects of the present application. At operation 700 , the chips are received at receiver 200 as part of mobile station 106 . From operation 700 , the process determines that the chips receive one or more received symbols for a plurality of users.<u>z</u>Continue to operation 710, which is processed in (m). For example, the receive chips may be filtered and then descrambled and despread into the received symbols.
From operation 710 , the process proceeds to a multi-user interference matrix A (eg, based on equation (13)) from known codes, filter coefficients and channel estimate.<sub>0</sub>Continues to operation 720 where (m) is calculated. The channel may be estimated using, for example, pilot-based channel estimation or data-assisted channel estimation, which is described below.
From operation 720, the process includes the desired user symbols. <u>b</u>(m) received symbols <u>z</u>Matrix A computed to detect the desired user symbols based on the symbol-level model associating (m) with<sub>0</sub>Continue to operation 730 in which (m) and received symbols are used. For example, a symbol-level time-varying multi-user model can be expressed by equation (16). In this example, user symbols<img file="KR101401570B1_D0023.tif" />The user symbols in equation (16) using various techniques including MMSE, MLD, SD, MAPD and slicing. <u>b</u>It can be detected by finding (m). matrix A<sub>0</sub>(m) associates the received symbol for each user with the desired user symbols for that respective user as well as user symbols for other users. So, matrix A<sub>0</sub>(m) considers multi-user interference.
To account for multi-user inter-symbol interference, shoulder matrices A<sub>1</sub>(m) and A<sub>-1</sub>(m) may also be calculated in operation 720 . Next, user symbols<img file="KR101401570B1_D0024.tif" />is, for example, the user symbols in equation (12) <u>b</u>By finding (m), the matrices A<sub>1</sub>(m), A<sub>0</sub>(m), A<sub>-1</sub>(m) and received symbols <u>z</u>It can be detected in operation 730 using (m). user symbols<u>b</u>Shoulder matrices A instead of using two shoulder matrices to detect (m)<sub>1</sub>(m) and A<sub>-1</sub>One of (m) may be used. In this case, the term corresponding to the shoulder matrix not used in equation (12) is the user symbols in equation (12).<u>b</u>It is omitted when finding (m).
8 is a flow diagram illustrating a process for transmitting chips, in accordance with certain aspects of the present invention. This process may be performed, for example, at the base station 104 or other transmitter to transmit the chips to the mobile station 106 or other receiving device.
In operation 800, a respective gain is applied to one or more user symbols to be transmitted. Any conventional means for applying the gains may be used, and the respective gains may be the same or different.
From operation 800, the process continues with operation 810 in which spreading codes are each applied to one or more gain scaled symbols. Typical CDMA spreading techniques such as applying a Walsh code may be implemented. User symbols may be spread, for example, to separate user symbols for different users. In operation 820, one or more spreading symbols are combined using a combiner 400.
From operation 820 , processing continues with operation 830 where the combined signal is scrambled. The combined signal may be scrambled, for example, to separate it from signals from other cells (eg, served by other base stations 104 ). Thereafter, in operation 840 , the combined signal is transmitted over channel 310 h (see FIG. 3 ).
9 is a flow diagram illustrating a method of processing chips into one or more received symbols for a plurality of users, in accordance with certain aspects of the present application. This process may be performed at the mobile station 106 or other receiving device.
In operation 900 , the receiving chips are filtered by filter 210 f by front-end processing unit 210 . As noted herein, front-end processing may be performed using, for example, a channel matched filter and/or equalizer. However, other filtering techniques may be implemented without departing from the scope of the present invention.
From operation 900 , the process includes descrambling the filtered chips using a descrambling code p*(n) based on the conjugate of the scrambling code p(n) previously used to scram the signal at the transmitting side. Continues to operation 910 with The descrambling chips are then despread in operation 920 using, for example, despreading codes based on the conjugates of the Walsh codes previously used to spread the signal at the transmitter side. Each despreading code may correspond to a different user or code channel. Despreading and descrambling may be performed by the despreading and descrambling unit 230 . The descrambling and despreading codes may be preprogrammed into a memory 250 communicatively coupled to a descramble and despreading unit 230 .
From operation 920, the process continues with operation 930 in which the despread chips for each user are summed over one symbol period to obtain a received symbol for each user. This summing may be performed by each summing block 320 . The operations of FIG. 9 may also be performed in a different order to obtain received symbols.
10 is a block diagram of a mobile station 106 used in a wireless communication system 100, in accordance with certain aspects of the present application. The mobile station 106 of FIG. 10 includes a module 1000 for receiving chips. The mobile station 106 also includes a module 1010 for processing the chips into one or more received symbols for a plurality of users, wherein the chips are filtered through a front-end processing unit and then: descrambled, despread, symbols<u>z</u>(m) is output.
The mobile station 106 further includes a module 1020 for calculating a multi-user interference matrix. As described above, for example, the multi-user interference matrix A<sub>0</sub>(m) can be calculated based on known codes, filter coefficients and channel estimate.
The mobile station 106 may select the desired user symbols. <u>b</u>(m) received symbols <u>z</u>Based on the symbol-level time-varying multi-user model associating (m), the computed matrix A<sub>0</sub>(m) and received symbols <u>z</u>User symbols using (m) <img file="KR101401570B1_D0025.tif" />It further includes a module 1030 for detecting. For example, a symbol-level time-varying multi-user model can be expressed by equation (16). In this example, user symbols<img file="KR101401570B1_D0026.tif" />The user symbols in equation (16) using various techniques including MMSE, MLD, SD, MAPD and slicing. <u>b</u>It can be detected by finding (m).
<u>Efficient calculation of multi-user interference and shoulder matrices</u>
Efficient methods and systems for calculating multi-user interference and shoulder matrices are provided, in accordance with certain aspects of the present application. In an aspect, when user symbols are spread by Walsh codes, multi-user interference and shoulder matrices can be efficiently computed using fast Hadamard transforms (FHTs), as described in more detail below. have.
11 is a diagram of a multi-channel model according to an aspect. 11 , user symbols b for symbol period m<sub>1</sub>(m) to b<sub>Nu</sub>(m) is in the form of a column vector <u>b</u>Expressed as (m), where Nu is the number of users or code channels. A gain matrix G (block 1110) contains the user symbols<u>b</u>(m) applies. The gain matrix G is each of the user symbols b<sub>1</sub>(m) to b<sub>Nu</sub>(m) gains g<sub>1</sub> to g<sub>Nu</sub>It is a Nu × Nu diagonal matrix applying , and can be given as
<img file="KR101401570B1_D0027.tif" /> (17)
Next, the gain-scaled user symbols are spread by a spreading matrix W (block 1120). Spreading matrix W is an N x Nu matrix that applies a Walsh code of N chips to each gain-scaled user symbol. The diffusion matrix W can be given as
<img file="KR101401570B1_D0028.tif" /> (18)
here, <u>W</u><sub>l</sub>is an N×1 column vector representing the Walsh code for the first user, <u>W</u><sub>Nu</sub>is the N×1 column vector of the Walsh code for the Nuth user. each Walsh code<u>W</u><sub>l</sub> inside <u>W</u><sub>Nu</sub>may include N chips. Next, the spreading user symbols are scrambled by a scrambling matrix P(m) (block 1130). The scrambling matrix P(m) is an N×N diagonal matrix that applies a scrambling code of N chips to spread user symbols. The scrambling matrix P(m) can be given as
<img file="KR101401570B1_D0029.tif" /> (19)
Here, (m-1)N to (mN-1) represent chip indexes for N chips of the scrambling code corresponding to the symbol period m. After spreading and scrambling, the resulting chips are transmitted on channel h (block 1132). The transmitted chips for symbol period m are N×1 column vectors as shown in FIG. 11 .<u>t</u>It can be expressed as (m). The transmitted chips for symbol period m can be given as
<img file="KR101401570B1_D0030.tif" /> (20)
The transmitted chips for the previous and next symbol periods m-1 and m+1, respectively, can be given as
<img file="KR101401570B1_D0031.tif" /> (21)
<img file="KR101401570B1_D0032.tif" /> (22)
Here, the Walsh codes and gains are assumed to be the same for symbol periods m-1, m and m+1. In this aspect, the Walsh codes may be repeated every symbol period.
The transmitted chips are transmitted to the receiver on channel h (block 1132) and are filtered at the receiver by a front-end filter f (block 1135). The output of filter f over symbol period m is an N×1 column vector<u>y</u>It can be expressed as (m),
<img file="KR101401570B1_D0033.tif" /> (23)
, where C is the matrix for the total filter (block 1140) and is given by the convolution of channel h and filter f. The transmitted chips for symbol periods m-1 and m+1 are used to account for inter-symbol interference.<u>y</u>included in the expression for (m). The total filter matrix C can be expressed by an N×3N Toeplitz matrix given as follows,
<img file="KR101401570B1_D0034.tif" />
(24)
Here, the filter length spans 2N chips (-N to N), C<sub>-1</sub>, C<sub>0</sub> and C<sub>1</sub>Represent the portions of the total filter matrix C applied to the transmitted chips for the previous, current and next symbol periods, respectively. The total filter matrix C is [C<sub>-1</sub> C<sub>0</sub> C<sub>1</sub>] can be expressed by Expressions for the transmitted chips in equations (20) to (22) are converted to the filter output of equation (23).<u>y</u>Substituting into the expression for (m), the following is derived.
<img file="KR101401570B1_D0035.tif" /> (25)
After filtering by front-end filter f, filter output <u>y</u>(m) is the descrambling matrix P which is a Hermitian of the scrambling matrix P(m)<sup>H</sup>descrambled by (m) (block 1150). After descrambling, the descrambled filter output is the despreading matrix W, which is the transpose of the spreading matrix W<sup>T</sup>(Block 1160). descrambling and despreading receive symbols for users 1 through Nu<u>z</u>(m) is derived. received symbols<u>z</u>(m) can be given as
<img file="KR101401570B1_D0036.tif" /> (26)
<u>y</u>Substituting the expression for (m) into Equation (26), the following is derived.
<img file="KR101401570B1_D0037.tif" /> (27)
Based on equation (27), multi-user interference and shoulder matrices A for symbol period m<sub>-1</sub>, A<sub>0</sub>, A<sub>1</sub>can be expressed as follows.
<img file="KR101401570B1_D0038.tif" /> (28)
<img file="KR101401570B1_D0039.tif" /> (29)
<img file="KR101401570B1_D0040.tif" /> (30)
Using equations (28) to (30), multi-user interference and shoulder matrices A<sub>-1</sub>, A<sub>0</sub>, A<sub>1</sub>This can be calculated. In one aspect, as described below, multi-user interference and shoulder matrices A<sub>-1</sub>, A<sub>0</sub>, A<sub>1</sub>Fast Hadamard transforms (FHTs) are used to efficiently compute .
The FHT operation computes the product of a Hadamard matrix and a vector,<sup>n</sup> The car Hadamard procession is,
<img file="KR101401570B1_D0041.tif" /> (31)
It can be defined cyclically by<sub>2</sub>Is,
<img file="KR101401570B1_D0042.tif" /> (32)
is given as
Since a matrix can be represented by multiple vectors, the FHT operation can also be used to compute the product of a Hadamard matrix and a matrix. Computationally efficient systems and methods are being developed to perform FHT operations. A Walsh matrix can be transformed into a Hadamard matrix by reordering the rows and columns of the Walsh matrix. Alternatively, the Walsh codes of the Walsh matrix may be pre-ordered to form a Hadamard matrix, in which case the Walsh matrix does not need to be transformed. These properties of the Walsh matrix can be exploited to efficiently compute the multi-user interference and shoulder matrices of equations (28) through (30) using FHT operations.
In an aspect, the diffusion matrix W of equations (28)-(30) is a Walsh matrix that can be transformed into a Hadamard matrix by reordering the rows or columns of the matrix W. Despreading matrix W of equations (28) to (30)<sup>T</sup>Silver, matrix W<sup>T</sup>is the transpose of the spreading matrix W, which can be considered a Walsh matrix, which can also be transformed into a Hadamard matrix by reordering the rows or columns of . In this aspect, the product of Walsh matrix W and another matrix in equations (28)-(30) is obtained by reordering the rows or columns of Walsh matrix W to transform Walsh matrix W into the corresponding Hadamard matrix, and in a similar manner. By reordering the rows or columns of a different matrix by , it can be efficiently calculated using FHT operations. The other matrix may be one of the matrices of equations (28) to (30) or a combination thereof. Next, FHT operations are used to compute the product of the corresponding Hadamard matrix and another matrix in which the rows or columns have been reordered. After FHT operations, the rows or columns of the resulting matrix may be reordered in the opposite manner as in the Walsh matrix W to obtain the desired product. Reordering operations are not necessary if the Walsh codes of the Walsh matrix W have been pre-ordered to form the Hadamard matrix, in which case the FHT operations can be applied directly to the Walsh matrix W.
Walsh matrix W in equations (28) to (30)<sup>T</sup>The product of , and other matrices can also be computed using FHT operations in a similar manner. The matrices of equations (28) through (30) selected for FHT operations may be based, for example, on a selection that results in an efficient hardware and/or software implementation. Two examples of using FHT operations to efficiently compute multi-user interference and shoulder matrices are presented below.
As an example, FHT operations are
<img file="KR101401570B1_D0043.tif" /> (33)
can be used to efficiently compute the product given by<sup>T</sup>is a despreading matrix, in this example a Walsh matrix comprising a plurality of Walsh codes, and M is
<img file="KR101401570B1_D0044.tif" /> (34)
is the concatenated matrix given by .
matrices W<sup>T</sup>The product of and M is the interference matrix A<sub>0</sub>is equivalent to equation (29) for calculating<sup>T</sup>corresponds to the despreading matrix. To apply the FHT operations, the Walsh matrix W<sup>T</sup>is the matrix W<sup>T</sup>is transformed into Hadamard by reordering the rows (Walsh codes) of The rows of matrix M are also<sup>T</sup>are reordered in a similar manner as in After row reordering, the product is
<img file="KR101401570B1_D0045.tif" /> (35)
can be given by , where H is W<sup>T</sup>is the Hadamard matrix corresponding to , and M' is the matrix M after the rows are reordered. Next, FHT operations can be used to efficiently compute the product of equation (35). After FHT operations, the interference matrix A<sub>0</sub>The resulting matrix A to obtain<sub>0</sub>' rows of matrix W<sup>T</sup>can be reordered in the opposite way as in Shoulder matrices A<sub>-1</sub> and A<sub>1</sub>can be computed in a similar manner using FHT operations.
The matrix M in equation (33) can also be computed using FHT operations. In one aspect, the matrix M is
<img file="KR101401570B1_D0046.tif" /> (36)
It can be expressed by the characteristic,
<img file="KR101401570B1_D0047.tif" /> (37)
, where T is the transpose. Equation (36) can be rewritten as
<img file="KR101401570B1_D0048.tif" /> (38)
<img file="KR101401570B1_D0049.tif" /> (39)
<img file="KR101401570B1_D0050.tif" /> (40)
In one aspect, the matrix M in equation (40) is efficiently computed using FHT operations. For this, the matrix W<sup>T</sup>is the matrix W<sup>T</sup>transformed into the corresponding Hadamard matrix by reordering the rows of<sup>T</sup>(m)C<sub>0</sub><sup>T</sup>The rows of P*(m) are reordered in a similar manner. After row reordering, the product is efficiently computed using FHT operations. After FHT operations, the rows of the resulting matrix are W<sup>T</sup>are reordered in the opposite way as in the rows of Finally, after row reordering, transpose of the resulting matrix is done to obtain matrix M. Shoulder matrices A<sub>-1</sub> and A<sub>1</sub>The matrix M for H can be computed in a similar manner using FHT operations.
12A is a flow diagram illustrating a process of multi-user detection using a Hadamard matrix in a wireless communication system, in accordance with certain aspects of the present application. At operation 1210 , chips are received at receiver 200 as part of mobile station 106 . From operation 1210 , processing continues with operation 1220 where the chips are processed into one or more received symbols for a plurality of users.
From operation 1220 , the process continues to operation 1230 where a multi-user interference matrix is computed using the Hadamard matrix. Multi-user interference by, for example, transforming the Walsh matrix in equation (29) into a Hadamard matrix and multiplying the Hadamard matrix by one or a combination of the other matrices in equation (29) using FHT operations. A matrix can be computed.
From operation 1230, the process continues to operation 1240 where the computed matrix and received symbols are used to detect desired user symbols.
12B is a flow diagram illustrating a process for calculating a multi-user interference matrix using a Hadamard matrix, in accordance with certain aspects of the present application. In operations 1232 , the Walsh matrix is transformed into a Hadamard matrix, eg, by reordering the rows or columns of the Walsh matrix. The Walsh matrix may be a despreading matrix or a spreading matrix including a plurality of Walsh codes. The Hadamard matrix corresponding to the Walsh matrix may be stored in a memory and retrieved from the memory when calculating the multi-user interference matrix.
From operation 1232 , processing continues with operation 1234 in which the Hadamard matrix is multiplied by another matrix. For example, the other matrix may be a scrambling matrix, a descrambling matrix, a total filter matrix, or a combination thereof. The rows or columns of the other matrix may be reordered to match the reordering of the rows or columns of the Walsh matrix in operations 1232 . Multiplication in operation 1234 may be performed using FHT operations for efficient computation.
From operation 1234 , processing continues with operation 1236 where the rows or columns of the matrix derived from operation 1234 are reordered. For example, the rows or columns of the resulting matrix may be reordered in the opposite manner as in the Walsh matrix. The above-described reordering operations may be omitted when the Walsh codes of the Walsh matrix are pre-ordered in the form of a Hadamard matrix.
From operation 1236 , processing continues to operation 1268 where the matrix derived from operation 1234 is used to compute a multi-user interference matrix.
13 illustrates multi-user interference and shoulder matrices A, in accordance with certain aspects of the present application.<sub>-1</sub>, A<sub>0</sub>, A<sub>1</sub>A schematic diagram of a system 1305 for calculating In this aspect, the system 1305 includes a matrix calculation unit 1310 , a code unit 1320 , a channel estimation unit 1330 , and a filter calculation unit 1340 . Code unit 1320 includes descrambling code p*(n) and despreading codes w*<sub>1</sub>(n) to w*<sub>Nu</sub>(n) is provided to the matrix calculation unit 1310 . Code unit 1320 may store descrambling and despreading codes for a number of cells in memory 250 (shown in FIG. 2) and output the codes for the cell currently serving mobile station 106. can Code unit 1320 also includes scrambling code p(n) and spreading codes w<sub>1</sub>(n) to w<sub>Nu</sub>(n) may be provided to the matrix calculation unit 1310 (not shown in FIG. 13 ). Alternatively, the code unit 1320 may provide scrambling codes or descrambling codes to the matrix calculation unit 1310, in which case the matrix calculation unit 1310 may generate scrambling codes or de-scrambling codes from the received codes. Scrambling codes can be derived. The same applies to spreading and despreading codes.
The channel estimation unit 1330 provides the channel estimate h to the matrix calculation unit 1310 . Channel estimation unit 1330 may estimate the channel using pilot-based channel estimation, data-assisted channel estimation, or any other channel estimation technique. Data-assisted channel estimation is described in more detail below.
The filter calculation unit 1340 provides the filter f parameter to the matrix calculation unit 1310 . In an aspect, the filter calculation unit 1340 may calculate filter coefficients for the front-end filter and provide the filter f parameter to the matrix calculation unit 1310 based on the calculated filter coefficients. For the example of a channel-matched filter (CMF), the filter coefficients and thus the filter f parameter may be based on the time-inverse conjugate h*(n) of the channel estimate h.
In an aspect, matrix calculation unit 1310 may use the received channel estimate h and filter f parameters to calculate a total filter matrix C (eg, based on equation (24)). Next, the matrix calculation unit 1310 generates scrambling, descrambling, spreading and despreading matrices derived from the received codes (eg, based on equations (28) to (30)), and a total filter matrix Multi-user interference and shoulder matrices A using C<sub>-1</sub>, A<sub>0</sub>, A<sub>1</sub>can be calculated. Matrix calculation unit 1310 may use FHT operations to efficiently calculate multi-user interference and shoulder matrices when Walsh codes are used for spreading, as described above. Next, the matrix calculation unit 1310 calculates the multi-user interference and shoulder matrices A<sub>-1</sub>, A<sub>0</sub>, A<sub>1</sub>may be provided to the detection unit 260 or any other detection unit including any of the detection units described herein.
<u>Eliminate multi-user interference</u>
In one aspect of the present application, symbol-level multi-user interference cancellation is provided for multi-user detection systems and methods. In this aspect, user symbols for symbol periods m-1, m and m+1 are initially detected, and the initially detected user symbols are used to calculate multi-user interference for symbol period m. Next, the calculated multi-user interference is removed (subtracted) from the received symbols for symbol period m. Next, the user symbols for the symbol period m are re-detected from the received symbols from which the calculated multi-user interference has been removed.
In this aspect, the initially detected user symbols for symbol periods m-1, m and m+1 are respectively <img file="KR101401570B1_D0051.tif" />, <img file="KR101401570B1_D0052.tif" /> and <img file="KR101401570B1_D0053.tif" />can be expressed in vector form. Initial user symbol detection may be performed using any detection technique, including any of the detection techniques described herein. For example, user symbols for a particular symbol period may be initially detected from received symbols for the same symbol period using equation (16), where inter-symbol interference is ignored to simplify detection calculations. In this example, once the interference matrix, gain matrix and received data symbols of equation (16) are known, various techniques including MMSE, MLD, SD, MAPD and slicing are applied to equation (16) to obtain the desired user symbols. can
User symbols for symbol periods m-1 and m+1 <img file="KR101401570B1_D0054.tif" /> and <img file="KR101401570B1_D0055.tif" />After this initial detection, the multi-user intersymbol interference for symbol period m can be calculated as:
<img file="KR101401570B1_D0056.tif" /> (41)
Here, A<sub>-1</sub>(m) and A<sub>+1</sub>(m) is the shoulder matrices (which can be computed using equations (15) and (14), respectively), and G is the gain matrix (which can be given by equation (6)). For each user, equation (41) takes into account intersymbol interference from previous and subsequent user symbols for the same user, as well as intersymbol interference from other users.
User symbol for symbol period m <img file="KR101401570B1_D0057.tif" />After this initial detection, the multi-user interference from user symbols in symbol period m can be calculated as:
<img file="KR101401570B1_D0058.tif" /> (42)
Here, A<sub>0</sub>(m) is the multi-user interference matrix (which can be computed using equation (13)), diag{A<sub>0</sub>(m)} is a diagonal matrix in which only diagonal coefficients are retained (ie, non-diagonal coefficients are zero) in the multi-user interference matrix. Multi-user interference matrix A<sub>0</sub>(m) associates received symbols with multi-user interference as well as received data symbols with their respective desired user symbols. So, the diagonal matrix diag{A<sub>0</sub>(m)} is the value contributed by each desired user symbols such that only multi-user interference remains in equation (42). <img file="KR101401570B1_D0059.tif" />is used in equation (42) to subtract the part of .
The interferences given in equations (41) and (42) are multi-user interference for symbol period m as <img file="KR101401570B1_D0060.tif" />can be combined to express
<img file="KR101401570B1_D0061.tif" /> (43)
Multi-user interference calculated for symbol period m in equation (43) <img file="KR101401570B1_D0062.tif" />n takes into account multi-user inter-symbol interference from user symbols in the previous symbol period m-1 and the next symbol period m+1, as well as multi-user interference from user symbols in symbol period m. The inter-symbol interference in equation (43) may be omitted to simplify multi-user interference calculation.
User symbols detected initially <img file="KR101401570B1_D0063.tif" />, <img file="KR101401570B1_D0064.tif" /> and <img file="KR101401570B1_D0065.tif" />multi-user interference using <img file="KR101401570B1_D0066.tif" />After this is calculated, the calculated multi-user interference can be canceled (subtracted) from the received symbols as follows:
<img file="KR101401570B1_D0067.tif" /> (44)
here, <u>z</u>(m) is the vector of received symbols for symbol period m, <img file="KR101401570B1_D0068.tif" />is the vector of received symbols for symbol period m, from which the calculated interference has been removed. Substituting the expression for multi-user interference from equation (43) into equation (44) yields:
<img file="KR101401570B1_D0069.tif" /> (45)
<img file="KR101401570B1_D0070.tif" />After the calculated interference is removed from the received symbols to obtain <img file="KR101401570B1_D0071.tif" />this <img file="KR101401570B1_D0072.tif" />can be re-detected from
Thus, this aspect uses information about user symbols for symbol periods m-1, m, m+1, obtained from initial detection to calculate multi-user interference at the symbol level. Next, the calculated multi-user interference is removed from the received symbols for symbol period m, thereby removing the multi-user interference from the received symbols. Multi-user interference cancellation provides improved detection of user symbols. In addition, multi-user interference is calculated and removed from the received symbols, at the symbol level, without the need to perform complex chip-level multi-user interference cancellation.
In one aspect, desired user symbols <img file="KR101401570B1_D0073.tif" />is received symbols from which the calculated interference has been removed using the following slicing <img file="KR101401570B1_D0074.tif" />is re-detected from
<img file="KR101401570B1_D0075.tif" /> (46)
For the example of binary phase shift keying (BPSK) modulation, the slicing can be given as
<img file="KR101401570B1_D0076.tif" /> (47)
In the example of BPSK modulation, the bit value of the user symbol is the interference canceled received symbol. <img file="KR101401570B1_D0077.tif" />It can be determined based on the sign of In the example of quadrature phase shift keying (QPSK) modulation, where each symbol represents two bits, the slicing can be given as
<img file="KR101401570B1_D0078.tif" /> (48)
In the example of QPSK modulation, the two bit values of the user symbol are the interference canceled received symbol. <img file="KR101401570B1_D0079.tif" />It can be determined based on the signs of the real and imaginary parts of . user symbols<img file="KR101401570B1_D0080.tif" />Detection techniques other than slicing may be used to re-detect . Also, other modulation schemes may be used for the user symbols, such as, for example, 16-quadrature amplitude modulation (QAM), in which each user symbol carries four bits of information. Additionally, the slicing may be used for initial detection of user symbols.
14 is a schematic diagram of a multi-user detection system 1405 with interference cancellation, in accordance with certain aspects of the present application. The detection system 1405 may be in a receiver of a wireless communication system. The detection system 1405 comprises a filter unit 1410 for filtering the received chips r(n), a descramble unit 1415 for descrambling the filtered chips, and a descrambled chips for receiving data symbols.<u>z</u>and a despreading unit 1420 for despreading to (m). The filter unit 1410 may include an equalizer and/or a channel-matched filter. After filtering, the descrambling unit 1415 descrambles the filtered chips using a descrambling code. Next, the despreading unit 1420 despreads the descrambled chips using the set of despreading codes. In an aspect, each despreading code may correspond to a different user and may be used to obtain a received symbol for that corresponding user. In this aspect, the despreading unit 1420 uses the set of despreading codes to receive symbols during each symbol period.<u>z</u>Output the set of (m).
The detection system 1405 further includes a detection unit 1430 , a matrix calculation unit 1440 , an interference cancellation unit 1450 , and a re-detection unit 1460 . The detection unit 1430 detects received symbols during each symbol period.<u>z</u>Perform initial detection of desired user symbols from (m). The detection unit 1430 may detect user symbols using any detection technique, including any of the detection techniques described herein.<img file="KR101401570B1_D0081.tif" />can be detected early.
The interference cancellation unit 1450 initially detects user symbols for each symbol period. <img file="KR101401570B1_D0082.tif" />is received from the detection unit 1430 . In an aspect, the interference cancellation unit 1450 calculates the multi-user interference for symbol period m using equation (43).<img file="KR101401570B1_D0083.tif" />, and user symbols initially detected from detection unit 1430 for each of symbol periods m-1, m, m+1. <img file="KR101401570B1_D0084.tif" />, <img file="KR101401570B1_D0085.tif" /> and <img file="KR101401570B1_D0086.tif" />to calculate In this aspect, the removal unit 1450 is configured to store user symbols initially detected from the detection unit 1430 in a memory (eg, a buffer) over one of at least three symbol periods by storing the user symbols in a memory (eg, a buffer).<img file="KR101401570B1_D0087.tif" />, <img file="KR101401570B1_D0088.tif" /> and <img file="KR101401570B1_D0089.tif" />can be obtained. In this aspect, the canceling unit 1450 is configured to return to the multi-user interference for symbol period m.<img file="KR101401570B1_D0090.tif" />Before calculating , the initially detected user symbols for symbol period m+1 <img file="KR101401570B1_D0091.tif" />Wait until it is received.
After calculating the multi-user interference, the interference cancellation unit 1450 is configured to <u>z</u>The calculated interference from (m) <img file="KR101401570B1_D0092.tif" />Received symbols from which the calculated interference is removed by removing <img file="KR101401570B1_D0093.tif" />to acquire
The re-detection unit 1460 receives the received symbols from which the calculated interference has been removed. <img file="KR101401570B1_D0094.tif" />receive, <img file="KR101401570B1_D0095.tif" />User symbols you want from <img file="KR101401570B1_D0096.tif" />, and the user symbols <img file="KR101401570B1_D0097.tif" />to output For example, the re-detection unit 1460 may configure received symbols from which the calculated interference has been removed.<img file="KR101401570B1_D0098.tif" />By slicing the desired user symbols <img file="KR101401570B1_D0099.tif" />can be re-detected.
The matrix calculation unit 1440 calculates the interference and shoulder matrices A for each symbol period.<sub>-1</sub>, A<sub>0</sub>, A<sub>+1</sub>, and provide these matrices to a detection unit 1430 and a removal unit 1450 . Matrix calculation unit 1440 uses FHT operations and/or any technique to compute matrices A<sub>-1</sub>, A<sub>0</sub>, A<sub>+1</sub>can be calculated.
15 is a schematic diagram of a multi-user detection system 1505 with interference cancellation, in accordance with certain aspects of the present application. The detection system 1505 may be in a receiver of a wireless communication system. The detection system 1505 includes a filter unit 1510 for filtering receive chips r(n) and a descramble and despread unit 1520 . The filter unit 1510 may include an equalizer and/or a channel-matched filter (CFM).
The descramble and despread unit 1520 includes a descramble mixer 1515 , a plurality of despread mixers 1522 , and a plurality of corresponding summing blocks 1525 . The descramble mixer 1515 mixes the filtered receive chips y(n) with the descrambling code p*(n) to descramble the filtered receive chips y(n). The descrambling code p*(n) may be a conjugate of a scrambling code used at a transmitter side (eg, a base station). Next, the despreading mixers 1522 apply the descrambled signal to despreading codes w respectively corresponding to a plurality of users 1 to Nu.<sub>1</sub>*(n) to w<sub>Nu</sub>Mix with a set of *(n). despreading codes w<sub>1</sub>*(n) to w<sub>Nu</sub>*(n) may be conjugates of spreading codes used at the transmitter side (eg, base station 104). The despread signal from each despread mixer 1522 is input to a respective summation block 1525, which accumulates the despread signal over a period of one symbol, resulting in a corresponding user Generates a received symbol for The descramble and despread unit 1520 receives symbols z for multiple users during each symbol period.<sub>1</sub>(m) to z<sub>Nu</sub>Output the set of (m). Accordingly, the descramble and despread unit 1520 converts the filtered received chips from chip-level to symbol-level. received symbols z<sub>1</sub>(m) to z<sub>Nu</sub>The set of (m) is also <u>z</u>It can be expressed in vector form as (m).
The detection system 1505 also includes a detection unit 1530 , a removal and re-detection unit 1560 , a code unit 1535 , and a matrix calculation unit 1540 . The detection unit 1530 receives symbols z<sub>1</sub>(m) to z<sub>Nu</sub>Perform initial detection of desired user symbols from (m). The detection unit 1530 may detect user symbols using any detection technique, including any of the techniques described herein.<img file="KR101401570B1_D0100.tif" /> inside <img file="KR101401570B1_D0101.tif" />can be detected early. For example, the detection unit 1530 may determine the user symbols by finding the desired user symbols in equation (16) using any of a number of different techniques, including MMSE, MLD, SD, MAPD, and slicing.<img file="KR101401570B1_D0102.tif" /> inside <img file="KR101401570B1_D0103.tif" />can be detected early. user symbols<img file="KR101401570B1_D0104.tif" /> inside <img file="KR101401570B1_D0105.tif" />is also <img file="KR101401570B1_D0106.tif" />can be expressed in vector form.
The removal and re-detection unit 1560 is configured to initially detect user symbols from the detection unit 1530 for each symbol period. <img file="KR101401570B1_D0107.tif" /> inside <img file="KR101401570B1_D0108.tif" />, calculate multi-user interference for symbol period m (e.g., based on equation (43)), and detect unit 1530 for each of symbol periods m-1, m, m+1 Calculate the initially detected user symbols from In this aspect, the removal and re-detection unit 1560 is configured with a memory 250 (shown in FIG. 2 ) for storing user symbols initially detected from the detection unit 1530 over one of at least three symbol periods. ) may be included. Next, the cancellation and re-detection unit 1560 may use the initially detected user symbols stored for symbol periods m-1, m, m+1 to calculate multi-user interference for symbol period m. . The removal and re-detection unit 1560 determines received symbols z for symbol period m.<sub>1</sub>(m) to z<sub>Nu</sub>Remove the calculated interference for symbol period m from (m). Next, the cancellation and re-detection unit 1560 receives user symbols from the received symbols from which the calculated interference has been removed.<img file="KR101401570B1_D0109.tif" /> inside <img file="KR101401570B1_D0110.tif" />redetected, and the redetected user symbols <img file="KR101401570B1_D0111.tif" /> inside <img file="KR101401570B1_D0112.tif" />to output Redetected User Symbols<img file="KR101401570B1_D0113.tif" /> inside <img file="KR101401570B1_D0114.tif" />silver <img file="KR101401570B1_D0115.tif" />can be expressed in vector form.
The code unit 1535 provides descrambling and despreading codes to the descrambling and despreading unit 1520 and the matrix calculation unit 1565 . The despread codes may be stored in memory 250 (not shown in FIG. 15 ). The matrix calculation unit 1540 calculates the interference and shoulder matrices A for each symbol period.<sub>-1</sub>, A<sub>0</sub>, A<sub>+1</sub>, and provide these matrices to a detection unit 1530 , and a removal and re-detection unit 1560 .
16 is a flow diagram illustrating a process of multi-user detection with interference cancellation, in accordance with certain aspects of the present application. This process may be performed, for example, at the mobile station 106, to detect user symbols from the transmitter side (e.g., the base station 104), the detected user symbols being an estimate of the user symbols at the transmitter side. am.
In operation 1610, user symbols are initially detected from the received symbols. For example, the user symbols for a particular symbol period can be calculated using any of a variety of techniques, including MMSE, MLD, SD, MAPD, and slicing, to obtain the user symbols in Equation (16) for the same symbol period. can be initially detected from the received symbols for
From operation 1610 , processing continues with operation 1620 where multi-user interference is calculated using the initially detected user symbols. For example, multi-user interference for symbol period m may be calculated using the initially detected user symbols and equation (43) for symbol periods m-1, m and m+1.
From operation 1620, processing continues with operation 1630 in which the calculated multi-user interference is removed from the received symbols.
From operation 1630, processing continues with operation 1640 where user symbols are re-detected from the received symbols from which the calculated interference has been removed. For example, the user symbols may be re-detected by slicing the received symbols from which the calculated interference has been removed.
17 is a schematic diagram of a multi-user detection system 1705 with iterative interference cancellation, in accordance with certain aspects of the present application. The detection system 1705 may be at a mobile station of a wireless communication system. The detection system 1705 according to this aspect is similar to the detection system 1405 of FIG. 14 in which an iterative process is used to refine the re-detected user symbols.
In an aspect, multi-user removal and re-detection is iterated in an iterative process to improve the re-detected user symbols. In this aspect, the multi-user interference for each iteration can be given as:
<img file="KR101401570B1_D0116.tif" /> (49)
where k is the iteration index, <img file="KR101401570B1_D0117.tif" />is the multi-user interference for repetition k, <img file="KR101401570B1_D0118.tif" />, <img file="KR101401570B1_D0119.tif" /> and <img file="KR101401570B1_D0120.tif" />are the re-detected user symbols from the previous iteration k-1 for each of symbol periods m-1, m and m+1.
For each iteration, the receiving user symbols from which the multi-user interference has been removed are:
<img file="KR101401570B1_D0121.tif" /> (50)
can be given as , where k is the iteration index, <u>z</u>(m) is the vector of received symbols, <img file="KR101401570B1_D0122.tif" />is a vector of received symbols from which multi-user interference for repetition k has been removed (subtracted). for iteration k<img file="KR101401570B1_D0123.tif" />After this is computed, the user symbols for iteration k can be re-detected using any detection technique. For example, user symbols for iteration k<img file="KR101401570B1_D0124.tif" />is as follows <img file="KR101401570B1_D0125.tif" />can be redetected by slicing .
<img file="KR101401570B1_D0126.tif" /> (51)
user symbols <img file="KR101401570B1_D0127.tif" />After being redetected for this iteration k, user symbols for iteration k <img file="KR101401570B1_D0128.tif" />may be used to compute the multi-user iteration for the next iteration k+1, or may be output by the detection system 1705 without further iterations.
Previous and next symbol periods <img file="KR101401570B1_D0129.tif" /> and <img file="KR101401570B1_D0130.tif" />User symbols for is also <img file="KR101401570B1_D0131.tif" />can be redetected for iteration k in a similar manner to For example, the previous symbol period<img file="KR101401570B1_D0132.tif" />interference with <img file="KR101401570B1_D0133.tif" />is the re-detected user symbols from the previous iteration k-1 for each of symbol periods m-2, m-1 and m <img file="KR101401570B1_D0134.tif" />, <img file="KR101401570B1_D0135.tif" /> and <img file="KR101401570B1_D0136.tif" />can be calculated using Next, the calculated interference<img file="KR101401570B1_D0137.tif" />is the received symbol for symbol period m-1 for re-detection <u>z</u>(m-1) can be removed. next symbol period<img file="KR101401570B1_D0138.tif" />The user symbols for k may be re-detected for repetition k in a similar manner.
In an aspect, received symbols can be processed block-by-block, where the received symbols are collected over a block of L symbol periods (eg, 100 symbol periods), and a memory stored and processed together. During each iteration of a block, user symbols for all symbol periods within that block may be re-detected for the current iteration before proceeding to the next iteration. In this way, interference calculations for each symbol period within the block use re-detected user symbols for previous and subsequent symbol periods within the block from the previous iteration.
Received symbols may also be processed symbol-by-symbol. In this aspect, interference calculations for the current symbol period may use previously stored re-detected user symbols for the previous symbol period, and may use initially detected user symbols for the next symbol period for all iterations. .
In another aspect, interference calculations for current symbols may use initially detected user symbols for previous and subsequent symbol periods for all iterations. Thus, in this aspect, only the user symbols for the current symbol period are updated in each iteration.
In the example shown in FIG. 17 , the detection unit 1730 detects the user symbols <img file="KR101401570B1_D0139.tif" />is initially detected, which may be similar to the initial detection of FIG. 14 . The initially detected user symbols are<img file="KR101401570B1_D0140.tif" />It can be expressed in terms of the repetition index as , where k=0 as shown in FIG. 17 . Next, the interference cancellation unit 1750 initially detects the user symbols.<img file="KR101401570B1_D0141.tif" />Multi-user interference for the first iteration k=1 using <img file="KR101401570B1_D0142.tif" />, and the calculated multi-user interference <img file="KR101401570B1_D0143.tif" />receive symbols <u>z</u>(m) removed from Next, the re-detection unit 1760 performs the calculated multi-user interference<img file="KR101401570B1_D0144.tif" />These removed received symbols <img file="KR101401570B1_D0145.tif" />User symbols for the first iteration from <img file="KR101401570B1_D0146.tif" />is re-detected. Next, the re-detected user symbols from the re-detection unit 1760<img file="KR101401570B1_D0147.tif" />may be fed back to the interference cancellation unit 1750 using a feedback path 1752 (eg, based on equations (49)-(51)) to perform another iteration.
The detection system 1705 may perform any number of iterations (eg, one or more) to improve the re-detected user symbols. For example, the detection system 1705 waits until the re-detected user symbols for successive iterations converge (eg, until the differences between user symbols for successive iterations become small) and/or Alternatively, iterations may be performed until another criterion is met. As another example, a predetermined number of iterations may be programmed into the detection system 1705 . In this example, the detection system 1705 may increment a counter each time an iteration is performed, and may stop the iteration when the counter reaches its programmed number of iterations.
In an aspect, the feedback 1752 path between the re-detection unit 1760 and the interference cancellation unit 1750 is a buffer 1755 for temporarily storing user symbols from the re-detection unit 1760 for the next iteration. may include. In this aspect, the buffer 1755 is configured to store re-detected user symbols over a block of L symbol periods (eg, 100 symbol periods) to implement block-by-block processing as described above. can be used
Although the detection unit 1730 and the re-detection unit 1760 are illustrated separately in FIG. 17 , their operations may be performed by a common detection unit. Also, both the detection unit 1730 and the re-detection unit 1760 may use the same detection technique, eg, slicing and the example described below with reference to FIG. 19 .
18 is a flow diagram illustrating a process of multi-user detection with iterative interference cancellation, in accordance with certain aspects of the present application. In operation 1810, user symbols are initially detected from the received symbols.
From operation 1810 , the process continues to operation 1820 where multi-user interference is calculated. For the first iteration, multi-user interference may be calculated using initially detected user symbols in operation 1810 . For subsequent iterations, multi-user interference may be calculated using the re-detected user symbols from operation 1840 in the previous iteration.
From operation 1820, processing continues with operation 1830 in which the multi-user interference calculated from operation 1820 is removed from the received symbols.
From operation 1830, the process continues with operation 1840 where user symbols are re-detected from the received symbols from which the calculated interference has been removed. For example, the user symbols may be re-detected by slicing the received symbols from which the calculated interference has been removed.
From operation 1840 , processing continues with operation 1850 determining whether another iteration is needed. If another action is required, the process returns to action 1820 to perform the next iteration. At operation 1820 , multi-user interference is recalculated using the re-detected user symbols from operation 1840 in a previous iteration. Next, in operation 1830 the recalculated multi-user interference is removed from the received symbols, and in operation 1840 the user symbols are re-detected from the received symbols from which the recomputed interference is removed.
If no further iteration is necessary, the current re-detected user symbols may be output in operation 1860 . Operation 1850 may use any of the techniques described above to determine whether another iteration is needed.
19 is a schematic diagram of a multi-user detection system 1905 with iterative interference cancellation, in accordance with certain aspects of the present application. The detection system 1905 may be at a mobile station of a wireless communication system.
The detection system 1905 includes a subtraction unit 1910 , a symbol detector 1920 , a buffer 1930 , and an interference calculation unit 1940 . The detection system 1905 detects the received symbols.<u>z</u>(m) is received, and iteratively performs multi-user interference cancellation and user symbol detection for multiple iterations.
Now, the user symbols for symbol period m <img file="KR101401570B1_D0148.tif" />The operation of the detection system 1905 will be described for an example of multi-user detection of . <img file="KR101401570B1_D0149.tif" />=<u>0</u> The multi-user interference is initialized to zero, where k = 0, the repetition index. As a result, the subtraction unit 1910 initially<u>z</u>Without canceling multi-user interference from (m), received symbols <u>z</u>(m) is initially input to the symbol detector 1920 . The symbol detector 1920 initially detects the received symbols.<u>z</u>User symbols from (m) <img file="KR101401570B1_D0150.tif" />to detect For example, the symbol detector 1920 may detect received symbols<u>z</u>User symbols by slicing (m) or using other detection techniques, including any of the detection techniques described herein. <img file="KR101401570B1_D0151.tif" />can be detected early.
User symbols initially detected for symbol period m <img file="KR101401570B1_D0152.tif" />is temporarily stored in the buffer 1930 . In addition, symbol detector 1920 initially detects user symbols for symbol periods m-1 and m+1, and these user symbols are also temporarily stored in buffer 1930 . Next, the initially detected user symbols for the symbol periods m-1, m, and m+1 are output from the buffer 1930 to the interference calculation unit 1940 . Interference calculation unit 1940 initially detects user symbols<img file="KR101401570B1_D0153.tif" />, <img file="KR101401570B1_D0154.tif" /> and <img file="KR101401570B1_D0155.tif" />Multi-user interference for the first iteration k=1 (e.g., based on equation (49)) using <img file="KR101401570B1_D0156.tif" />to calculate Multi-user interference based on equation (49)<img file="KR101401570B1_D0157.tif" />To calculate , the interference calculation unit 1940 is, for example, a multi-user interference matrix A from a matrix calculation unit such as the matrix calculation unit 1310 of FIG. 13 .<sub>0</sub>(m) and shoulder matrices A<sub>-1</sub>(m) and A<sub>1</sub>(m) can be received. matrices A<sub>-1</sub>(m), A<sub>0</sub>(m) and A<sub>1</sub>(m) is represented by [A(m)] in FIG.
The subtraction unit 1910 provides multi-user interference for the first iteration. <img file="KR101401570B1_D0158.tif" />receive symbols <u>z</u>Remove (ie, subtract) from (m). Calculated Multi-User Interference<img file="KR101401570B1_D0159.tif" />These removed received symbols <img file="KR101401570B1_D0160.tif" />is input to the symbol detector 1920 . The symbol detector 1920 provides the calculated multi-user interference<img file="KR101401570B1_D0161.tif" />These removed received symbols <img file="KR101401570B1_D0162.tif" />User symbols for the first iteration from <img file="KR101401570B1_D0163.tif" />is re-detected. Next, the re-detected user symbols for the first iteration<img file="KR101401570B1_D0164.tif" />may be fed back to buffer 1930 for a second iteration k=2.
The interference calculation unit 1940 uses the re-detected user symbols from the first iteration to calculate the multi-user interference for the second iteration. <img file="KR101401570B1_D0165.tif" />recalculate The subtraction unit 1910 provides multi-user interference for the second iteration.<img file="KR101401570B1_D0166.tif" />receive symbols <u>z</u>(m) removed from Next, the calculated multi-user interference<img file="KR101401570B1_D0167.tif" />These removed received symbols <img file="KR101401570B1_D0168.tif" />is input to the symbol detector 1920 . The symbol detector 1920 provides the calculated multi-user interference<img file="KR101401570B1_D0169.tif" />These removed received symbols <img file="KR101401570B1_D0170.tif" />User symbols for the second iteration from <img file="KR101401570B1_D0171.tif" />is re-detected. Next, the user symbols re-detected from the second iteration<img file="KR101401570B1_D0172.tif" />may be fed back to the interference calculation unit 1940 via the buffer 1930 to perform a third iteration. The detection system 1905 may, for example, perform any number of iterations until the user symbols for successive iterations converge.
In an aspect, the interference calculation unit 1940 is configured to calculate the detected user symbols from the previous iteration k-1 <img file="KR101401570B1_D0173.tif" />, <img file="KR101401570B1_D0174.tif" /> and <img file="KR101401570B1_D0175.tif" />Calculate the multi-user interference for repetition k using . User symbols detected from previous iteration k-1<img file="KR101401570B1_D0176.tif" />, <img file="KR101401570B1_D0177.tif" /> and <img file="KR101401570B1_D0178.tif" />is shown in FIG. 19 <img file="KR101401570B1_D0179.tif" />can be expressed by
<u>Data-Assisted Channel Estimation</u>
In one aspect, the user symbols detected from the received symbols are used to enhance channel estimation. This may be referred to as data-assisted channel estimation. Before discussing data-assisted channel estimation, it may be beneficial to first describe an example of pilot-based channel estimation.
In pilot-based channel estimation, a pilot signal is transmitted from a transmitter side (e.g., base station 104) to a receiver (e.g., mobile station 106). The pilot signal is a signal known a priori by the receiver and used by the receiver to estimate the channel h between the transmitter side and the receiver. For the example of CDMA, the pilot signal may comprise a known sequence of symbols.
For the example of a single-user communication system, the transmitted chips t(n) at the transmitter side can be expressed as:
<img file="KR101401570B1_D0180.tif" /> (52)
where b<sub>1</sub>(n) is the symbol of the pilot signal, b<sub>2</sub>(n) is the user symbol for the user. In equation (52), the pilot symbol b<sub>1</sub>(m) is b<sub>1</sub>Expressed in terms of chip index n as (n), where b over a span of N chips<sub>1</sub>(n) corresponds to 1 symbol (where N is the spreading factor). Similarly, user symbol b<sub>2</sub>(m) is b<sub>2</sub>It is expressed in terms of chip index n as (n). Equation (52) can be applied to multi-user communication systems by adding additional user symbols to equation (52) including their corresponding gains and spreading codes for multiple users.
The receiving chips r(n) at the receiver can be expressed in terms of discrete convolution and noise v(n) as the convolution of the channel h and the transmitted chips t(n) as follows,
<img file="KR101401570B1_D0181.tif" /> (53)
Here, D is the bound of the discrete convolution.
Substituting the expression for t(n) in Equation (52) into Equation (53), the following is derived.
<img file="KR101401570B1_D0182.tif" />
(54)
In equation (54), the pilot symbol b<sub>1</sub>(n) is known a priori by the receiver, but the user symbol b<sub>2</sub>(n) is not. user symbol b<sub>2</sub>Since (n) is not known a priori by the receiver, the second summing term in equation (54) and the noise v(n) can be bundled together into an unknown value v'(n). As a result, the receiving chips r(n) can be expressed as
<img file="KR101401570B1_D0183.tif" /> (55)
This unknown value is
<img file="KR101401570B1_D0184.tif" /> (56)
is given by
At the receiver, receive chips r(n), pilot symbol b<sub>1</sub>(n), spreading code w<sub>1</sub>(n) and the scrambling code p(n) are known. Thus, equation (55) can be used in pilot-based channel estimation to estimate channel h by finding h(d) using known techniques. pilot symbol b<sub>1</sub>(n) may be a constant, in which case the pilot symbol is simply b in equation (55)<sub>1</sub>can be expressed as Equation (55) can be extended to a multi-user communication system, where the user symbols for multi-users can be bundled into an unknown value v'(n) since they are not known a priori by the receiver.
In the example of pilot-based channel estimation described above, the receiver uses the pilot signal as a reference signal known a priori by the receiver to estimate the transmitted chips t(n), and then uses the received chips r(n) and Estimate channel h using the estimated transmitted chips t(n). A drawback of this approach is that the power of the unknown signal v'(n) can be high, reducing the accuracy of the estimated channel h.
In one aspect, the user symbols detected from the received symbols are used to generate virtual pilot signals that are used to improve channel estimation. In this aspect, virtual pilot signals are generated from the detected user symbols for channel estimation by treating the detected user symbols as known symbols. The virtual pilot signals are not real pilot signals transmitted between the transmitter side (eg, base station 104) and the receiver side (eg, mobile station 106).
User symbols may be detected using any detection technique, including any of the detection techniques described herein. In the example of equation (54), the user symbol b<sub>2</sub>(n) is the detected user symbol <img file="KR101401570B1_D0185.tif" />(<img file="KR101401570B1_D0186.tif" />(expressed in terms of chip index n) as
<img file="KR101401570B1_D0187.tif" /> (57)
Here, the unknown value is
<img file="KR101401570B1_D0188.tif" /> (58)
is given as
Thus, the detected user symbol <img file="KR101401570B1_D0189.tif" />may be used to generate a virtual pilot signal in equation (57) to provide an improved estimate of channel h. As described above, the hypothetical pilot signal is the detected user symbol for channel estimation in equation (57).<img file="KR101401570B1_D0190.tif" />is created by treating as a known symbol. Detected user symbols<img file="KR101401570B1_D0191.tif" />this real user symbol b<sub>2</sub>Closer to (n), the power of the unknown signal v'(n) can be greatly reduced in equation (57), improving the channel estimation. Equation (57) can be extended to multiple users by using the detected user symbols for multiple users to generate multiple hypothetical pilot signals.
20 is a schematic diagram of a channel estimation system 2005, in accordance with certain aspects of the present application. The channel estimation system 2005 may be in a receiver of a wireless communication system. The channel estimation system 2005 includes a filter 2010 for filtering received chips r(n), a descramble and despread unit 2020 , and a detection unit 2030 . The filter unit 2010 may include an equalizer and/or a channel-matched filter.
The descramble and despread unit 2020 includes a descramble mixer 2015 , a plurality of despread mixers 2022 , and a plurality of corresponding summing blocks 2025 . The descramble mixer 2015 filters the receive chips y<sup>e</sup>(n) is mixed with the descrambling code p*(n) to descramble the filtered receive chips y(n). The superscript "e" indicates that the filtered chips are used to estimate channel h.
Next, despreading mixers 2022 convert the descrambled signal to despreading codes w<sub>1</sub>*(n) to w<sub>Nu</sub>Mix with a set of *(n). The despread signal from each despread mixer 2022 is input to a respective sum block 2025, which accumulates the despread signal over a one symbol period for reception to the corresponding user. create a symbol The received symbols are input to a detection unit 2030, which detects user symbols from the received symbols.<img file="KR101401570B1_D0192.tif" /> inside <img file="KR101401570B1_D0193.tif" />to detect Detection unit 2030 may use any detection technique, including slicing or any other detection technique described herein. If one of the user symbols corresponds to a known pilot signal, then the known pilot symbol is<img file="KR101401570B1_D0194.tif" /> inside <img file="KR101401570B1_D0195.tif" /> It may be output as one of (eg, from memory).
The channel estimation system 2005 further includes a gain unit 2035 , a spreading and scrambling unit 2040 , and a channel calculation unit 2050 . The gain unit 2035 has the gains g<sub>1</sub> to g<sub>Nu</sub>A set of detected user symbols <img file="KR101401570B1_D0196.tif" /> inside <img file="KR101401570B1_D0197.tif" />and a plurality of gain mixers 2037 respectively applied to . The diffusion and scramble unit 2040 includes a plurality of diffusion mixers 2042 , a combiner 2043 , and a scramble mixer 2045 . Spreading mixers 2022 convert gain-scaled user symbols to spreading codes w<sub>1</sub>(n) to w<sub>Nu</sub>Mixing with the set of (n), a combiner 2043 combines the spread signals, and a scramble mixer 2045 mixes the combined signal with the scramble code p(n). The spreading codes and the scramble code are output of the spreading and scramble unit 2040<img file="KR101401570B1_D0198.tif" />This may be the same as the codes used at the transmitter side to provide an estimate of the chips transmitted at the transmitter side.
The output of spreading and scramble unit 2040 can be given as:
<img file="KR101401570B1_D0199.tif" /> (59)
Here, the detected user symbols are expressed in terms of chip index n. In one aspect, the symbols of equation (59)<img file="KR101401570B1_D0200.tif" /> One may be a known pilot symbol, while the other symbols are detected user symbols. Thus, the estimated transmitted chips<img file="KR101401570B1_D0201.tif" />silver, <img file="KR101401570B1_D0202.tif" />can be calculated based on the detected user symbols and the known pilot symbol by spreading and scrambling the detected user symbols and pilot signal to obtain <img file="KR101401570B1_D0203.tif" />Since this gives an estimate of the transmitted chips, the receiving chips r(n) have the channel h and <img file="KR101401570B1_D0204.tif" />It can be expressed by the convolution of
<img file="KR101401570B1_D0205.tif" /> (60)
of formula (59) <img file="KR101401570B1_D0206.tif" />Substituting the expression for Eq. (60), it is derived as follows.
<img file="KR101401570B1_D0207.tif" /> (61)
Next, the channel estimation unit 2050 receives the input from the spreading and scrambling unit 2040 . <img file="KR101401570B1_D0208.tif" />, the receiving chips r(n) and Equation (60) can be used to estimate the channel h. In this aspect, the detected user symbols<img file="KR101401570B1_D0209.tif" /> inside <img file="KR101401570B1_D0210.tif" />is treated as known symbols in equation (60) for channel estimation. This improves the channel estimation by reducing the power of the unknown signal ν'(n).
In an aspect, a scaled estimate of a channel <img file="KR101401570B1_D0211.tif" />is the received chips r(n) and the estimated transmitted chips over the chip length of A as <img file="KR101401570B1_D0212.tif" />can be obtained by calculating the cross-correlation of
<img file="KR101401570B1_D0213.tif" /> (62)
here, <img file="KR101401570B1_D0214.tif" />is the scaled estimate of the channel in chip l. The channel h over the chip length D can be estimated by calculating equation (61) for l=0 to l=D.
The channel calculation unit 2050 calculates the matrices A<sub>-1</sub>, A<sub>0</sub>, A<sub>+1</sub>The channel estimate may be provided to matrix calculation unit 1310 of FIG. 13 or other systems to compute The data-assisted channel estimate provides a more accurate channel estimate h, resulting in more accurately computed matrices A<sub>-1</sub>, A<sub>0</sub>, A<sub>+1</sub>to derive Also, the channel calculation unit 2050 may provide a channel estimate to the filter to calculate the filter coefficients of the filter. For example, the data-assisted channel estimate may be provided to the front-end filters 2010, 1410, 1510 or any other filter. The filter 2010 of the channel estimation system 2005 may use a pilot-based channel estimate or a channel estimate derived from a previous data-assisted channel estimate.
A process for estimating gains for different user symbols is now described, in accordance with an aspect of the present application. In this aspect, the gain for the code channel or each user symbol is estimated by differentiating the received pilot symbols for successive symbol periods m and m+1 as:
Δz<sub>0</sub>(m) = z<sub>0</sub>(m)-z<sub>0</sub>(m+1) (63)
Here, a subscript of zero refers to a pilot symbol. Assuming that the transmitted pilot symbols are the same for each symbol period, the differences between the received pilot symbols are due to noise. Thus, the pilot differential provides an estimate of the noise at the receiver. noise power<img file="KR101401570B1_D0215.tif" />can be estimated based on the differential of the received pilot symbols as follows.
<img file="KR101401570B1_D0216.tif" /> (64)
Equation (64) can be implemented using an infinite impulse response (IIR) filter with 1 tap, where α is the filter coefficient, <img file="KR101401570B1_D0217.tif" />is an estimate of the noise power from the previous symbol period m-1. noise power<img file="KR101401570B1_D0218.tif" /> Estimates are, <img file="KR101401570B1_D0219.tif" />This may be applied to each user or code channel of the estimated cell. power of code channel i<img file="KR101401570B1_D0220.tif" />can be given as:
<img file="KR101401570B1_D0221.tif" /> (65)
where z<sub>It's</sub>(m) is the received symbol for code channel i corresponding to one of the users. Equation (65) can be implemented using an IIR filter with 1 tap, where α is the filter coefficient,<img file="KR101401570B1_D0222.tif" />is an estimate of the power from the previous symbol period m-1. Next, the gain for a particular code channel or user<img file="KR101401570B1_D0223.tif" />can be estimated as follows.
<img file="KR101401570B1_D0224.tif" /> (66)
The initial value for the noise power may be zero. A gain unit 2035 calculates each of the detected user symbols based on equation (66).<img file="KR101401570B1_D0225.tif" /> inside <img file="KR101401570B1_D0226.tif" />The benefits that apply to g<sub>1</sub> to g<sub>Nu</sub>can be computed as a set of
In an aspect, the gain unit 2035 is configured to generate user symbols detected at the mixers 2037 based on estimates of corresponding gains at the transmitter side. <img file="KR101401570B1_D0227.tif" /> inside <img file="KR101401570B1_D0228.tif" />The same or different gains may be applied to In an aspect, gain unit 2035 may compare these gains to a gain threshold to remove user symbols with low gains that are less reliable in the channel estimate. In this aspect, gains greater than the gain threshold are applied to their respective user symbols.<img file="KR101401570B1_D0229.tif" /> inside <img file="KR101401570B1_D0230.tif" />is applied to and used to estimate the channel. Gains less than the gain threshold and their respective user symbols<img file="KR101401570B1_D0231.tif" /> inside <img file="KR101401570B1_D0232.tif" />is not used to estimate the channel. In another aspect, the gain unit 2035 may apply the same gain to each user symbol.
In an aspect, filter 2010 may use the channel estimate h provided by the pilot-based channel estimation before data-assisted channel estimation is performed. In this aspect, the channel calculation unit 2050 calculates the output y of the filter 2010 as follows to estimate the total filter c(n) as<sub>e</sub>(n) can be used.
<img file="KR101401570B1_D0233.tif" /> (67)
The above expression is the filter output y<sub>e</sub>(n) this total filter c(n) and <img file="KR101401570B1_D0234.tif" />It is similar to equation (60) given by the convolution of . The channel calculation unit 2050 outputs the output from the spreading and scrambling unit 2040.<img file="KR101401570B1_D0235.tif" />, filter output y<sub>e</sub>Using (n) and (67), the total filter c(n) can be estimated. The total filter c(n) is also similar to equation (62), with the estimated transmitted chips<img file="KR101401570B1_D0236.tif" />and filter output y<sub>e</sub>It can be estimated by calculating the cross-correlation of (n), where the receiving chips r(n) in the cross-correlation in equation (62) are the filtered chips y<sub>e</sub>is replaced by (n).
Filter 2010 may filter the received r(n) based on the initial channel estimate h using pilot-based channel estimation. Further, the channel calculation unit 2050 may provide the estimated total filter c(n) to a matrix calculation unit (eg, the matrix calculation unit 1310 ), in which case the matrix calculation unit is configured to calculate the channel estimate h and There is no need to separately calculate the total filter c(n) using the filter f parameters. In this aspect, the channel calculation unit 2350 outputs the filtered output y from the filter 2010 to estimate a total filter c(n).<sub>e</sub>(n) can be received.
21A is a flow diagram illustrating a process of channel estimation at a receiver, in accordance with certain aspects of the present application. In operation 2100, the received chips are processed into received symbols. For example, the receive chips may be filtered and then descrambled and despread into the received symbols.
From operation 2100, processing continues with operation 2110 where user symbols are detected from the received symbols. For example, user symbols can be detected by slicing the received symbols. Other detection techniques may also be used.
From operation 2120, processing continues with operation 2130 in which a channel is estimated (eg, based on equation (60)) using the received chips and detected user symbols. For example, the detected user symbols may be spread and scrambled to estimate the transmitted chips at the transmitter side. Also, the detected user symbols may be used in conjunction with one or more known pilot symbols to estimate the transmitted chips. The estimated transmitted chips and received chips can then be used to estimate the channel.
21B is a flow diagram illustrating a process for estimating a total filter c(n) representing the convolution of channel h and filter f, in accordance with certain aspects of the present application. At operation 2140 , the receiving chips are filtered by a filter at the receiver.
From operation 2140 , processing continues to operation 2150 where the filtered chips are processed into received symbols. For example, the filtered chips may be descrambled and despread with received symbols.
From operation 2150, processing continues with operation 2160 where user symbols are detected from the received symbols. For example, user symbols can be detected by slicing the received symbols. Other detection techniques may also be used.
From operation 2160, the processor continues to operation 2170 in which a total filter c(n) is estimated (eg, based on equation (67)) using the filtered chips and detected user symbols. For example, the detected user symbols may be spread and scrambled to estimate the transmitted chips at the transmitter side. Also, the detected user symbols may be used in conjunction with one or more known pilot symbols to estimate the transmitted chips. Next, the estimated transmitted chips and the filtered chips can be used to estimate the total filter c(n) (eg, based on equation (67)).
<u>interference cancellation</u>
Above, multi-user interference cancellation has been described in the context of intra-cell interference where multi-user interference is caused by multiple users within the same cell (eg, multiple users served by the same base station 104). . A mobile station 106 of a wireless communication system may also be subject to inter-cell interference where interference is caused by users of other cells. For example, the mobile station 106 may be more susceptible to inter-cell interference if it is located near the edge of a serving cell, where interference from neighboring cells is stronger. Referring to the example of FIG. 1 , a mobile station 106D being served by cell 102D may experience inter-cell interference from cells 102F and 102G.
22 is a diagram of a multi-cell multi-user model including noise, in accordance with certain aspects of the present application. The different cells of this model are identified by index i, i = 1, ..., Nc in FIG. 22 . This model is based on the transmitted user symbols of each cell.<u>b</u><sup>It's</sup>Relate (m) to receive chips r(n) at the receiver (eg, mobile station 104). In each cell, user symbols<u>b</u><sup>It's</sup>(m) is each gain matrix G in block 2215<sup>It's</sup>scaled by , spread by a spreading matrix W in each block 2220 , and a scrambling matrix P in each block 2225 .<sup>It's</sup>scrambled by (m). Next, the resulting signal from each cell is<sup>It's</sup>2230 to the receiver. The receiving chips from each cell are x<sub>It's</sub>It is expressed by (n). Receive chips from different cells x<sub>It's</sub>(n) is combined at block 2240, and noise v(n) is added at block 2245 to account for the noise. In the case of Nc=3, the total received chips r(n) in the receiver can be given as follows.
<img file="KR101401570B1_D0237.tif" /> (68)
The spreading matrix W for each cell represents the spreading codes, eg, Walsh codes, used to separate the different users of the cell. Different cells may use the same spreading codes to separate the users of the cells. Scrambling matrix P for each cell<sup>It's</sup>(m) represents the scrambling code used to separate the cell from other cells.
In one aspect, receive chips x for each cell<sub>It's</sub>(n) can be computed at the receiver by detecting the user symbols for the cell and processing the detected user symbols based on the model to reconstruct the received chips for that cell. For example, receive chips x for cell i<sub>It's</sub>(n) is calculated by detecting the user symbols for cell i using any detection technique, including any of the detection techniques described in this application. Next, receive chips x for cell i<sub>It's</sub>To reconstruct (n), the transmitted user symbols <u>b</u><sup>It's</sup>The detected user symbols giving an estimate of (m) are gain-scaled, spread, scrambled, and convolved with the channel estimate for cell i.
In an intercell removal process according to an aspect, receiving chips for different cells <img file="KR101401570B1_D0238.tif" />is continuously computed and removed from the receiving chips r(n). The hat superscripts of this and other aspects of the present application indicate that the calculated received chips are estimates of the actual received chips. After the receive chips for each cell are removed from the receive chips r(n), to detect user symbols for the target cell, receive chips for the target cell<img file="KR101401570B1_D0239.tif" />This is added again and processed. A target cell is a cell corresponding to desired user symbols, and may be referred to as a serving cell. Other cells may be referred to as interfering cells (ie, other cells interfering with users of the target cell).
23 is a schematic diagram of a system 2310 with interference cancellation, in accordance with certain aspects of the present application. System 2310 includes first, second, and third cell calculation units 2320a to 2320c, respectively, and first, second, and third subtraction units 2330a to 2330c, respectively. System 2310 also includes an addition unit 2345 and a detection system 2350 . Each cell counting unit 2320a to 2320c is configured to calculate the receiving chips for the selected or acting cell.
In an aspect, the first cell calculation unit 2320a is configured to receive chips for a target cell. <img file="KR101401570B1_D0240.tif" />, and each of the second and third cell calculation units 2320b and 2320c calculates reception chips for each of the first and second interfering cells, respectively. The hat superscript denotes the counted received chips. Each of the cell calculation units 2320a to 2320c may be implemented using the exemplary cell calculation unit 2410 shown in FIG. 24 , which is described in more detail below.
In an aspect, cells are assigned to cell calculation units 2320a - 2320c in order of decreasing signal strength or geometry at the receiver. The geometry for a cell may be defined by Ior/Ioc, where Ior is the received power from the cell transmission and Ioc is the power of interference plus noise (interference+noise). In an aspect, the cell with the greatest signal strength at the receiver is assigned to the first cell calculation unit 2320a. Assuming that the target cell has the largest signal strength, the target cell is assigned to the first cell calculation unit 2320 . The cell having the second strongest signal strength in the receiver is assigned to the second cell calculation unit 2320b, and so on.
In operation, the first cell calculation unit 2320a receives the receive chips r(n), and receives the receive chips for the target cell. <img file="KR101401570B1_D0241.tif" />Calculate and output (assuming that the target cell has the greatest signal strength at the receiver). The first subtraction block 2330a is the calculated receive chips for the target cell.<img file="KR101401570B1_D0242.tif" />is removed from the receiving chips r(n) so that r(n)-<img file="KR101401570B1_D0243.tif" />to derive The output of the first subtraction block 2330a is input to the second cell calculation unit 2320b. Thus, the calculated receive chips for the target cell<img file="KR101401570B1_D0244.tif" />is removed from the receiving chips r(n) before the second cell calculation unit 2320b. This removes the contribution of the target cell from the receiving chips r(n), leading to more reliable calculations of the receiving chips for subsequent cells.
The second cell calculation unit 2320b is configured to receive chips for the first interfering cell (eg, the interfering cell with the largest power). <img file="KR101401570B1_D0245.tif" />Calculate and output The second subtraction unit 2330b is configured to receive chips for the first interfering cell.<img file="KR101401570B1_D0246.tif" />is removed from the output of the first subtraction unit 2330a, so that r(n)<img file="KR101401570B1_D0247.tif" />-<img file="KR101401570B1_D0248.tif" />to derive The output of the second subtraction block 2330b is input to the third cell calculation unit 2320c. Thus, the receiving chips for each of the target cell and the first interfering cell<img file="KR101401570B1_D0249.tif" /> and <img file="KR101401570B1_D0250.tif" />is removed from the receiving chips r(n) before the third cell calculation unit 2320c. This removes the contribution of the target cell and the first interfering cell from the receiving chips r(n), leading to more reliable calculations of the receiving chips to the second interfering cell. The third cell calculation unit 2320c is configured to receive chips for the second interfering cell.<img file="KR101401570B1_D0251.tif" />Calculate and output
The third subtraction unit 2330c is configured to receive chips for the second interfering cell. <img file="KR101401570B1_D0252.tif" />from the output of the second subtraction unit 2330b, r(n)<img file="KR101401570B1_D0253.tif" />-<img file="KR101401570B1_D0254.tif" />-<img file="KR101401570B1_D0255.tif" />to derive Next, the adding unit 2345 performs the receiving chips for the target cell.<img file="KR101401570B1_D0256.tif" />is added back to the output of the third subtraction unit 2330c. Next, the output of the addition unit 2345 is input to the detection system 2350 . Thus, inter-cell interference from the first and second interfering cells is eliminated from the input to the detection system 2350 . Next, the detection system 2350 detects user symbols for the target cell. For example, the detection system 2350 may filter, descramble, and despread input chips into received symbols for the target cell, which then include any of the detection techniques described herein. Any detection technique may be used to detect user symbols for a target cell from the received symbols.
In this aspect, the computed receive chips for the target cell and the first and second interfering cells are successively removed from the receive chips r(n), and the computed chips for the target cell compute the user symbols for that target cell. added again to detect.
24 is a schematic diagram of a cell calculation unit 2410 in accordance with certain aspects of the present application. The cell calculation unit 2410 receives the receive chips r(n), and receives the receive chips for the operating cell.<img file="KR101401570B1_D0257.tif" />calculates and outputs , where the operating cell refers to a specific cell in which the cell calculation unit 2410 is calculating reception chips at a given instance. The cell calculation unit 2410 may also receive receive chips r(n) from which receive chips for other cells have been removed. For example, if the cell calculation unit 2410 implements the second cell calculation 2320b of FIG. 23 , the cell calculation unit 2410 calculates received chips for the target cell.<img file="KR101401570B1_D0258.tif" />Receive these removed receive chips r(n), receive chips for the first interfering cell <img file="KR101401570B1_D0259.tif" />to calculate
The cell calculation unit 2410 includes a filter 2415 , a descramble and despread unit 2420 , and a detection system 2430 . Filter 2415 filters the receive chips and may include an equalizer and/or channel-matched filter. For the example where filter 2415 includes an equalizer, the equalizer may be implemented using a frequency domain equalizer (FDE). Filter 2415 may filter the receive chips based on the channel estimate for the operating cell.
After filtering, the descrambling and despreading unit 2420 descrambles the filtered chips using the descrambling code for the operating cell. Next, descramble and despread unit 2420 despreads the descrambled signal using the set of despreading codes for the working cell, where each despreading code may correspond to a different user of the working cell. have. The descramble and despread unit 2430 receives symbols for the operating cell.<u>z</u>Output the set of (m). Next, the detection system 2430 determines the received symbols for the operating cell.<u>z</u>User symbols are detected from (m). Detection system 2430 may use slicing or other detection techniques to detect user symbols. In one aspect, detection system 2430 is implemented using detection system 1905 of FIG. 19 . In this aspect, the detection system 2430 is configured to detect re-detected user symbols.<img file="KR101401570B1_D0260.tif" />to iteratively compute and remove multi-user interference from the received symbols over k iterations. Accordingly, the detection system 2430 provides intra-cell multi-user interference cancellation for the operating cell. Matrices A used by interference calculation unit 1940<sub>-1</sub>(m), A<sub>0</sub>(m) and A<sub>1</sub>(m) can be calculated using the spreading codes, scrambling code, descrambling code, despreading codes, gains, filter and channel estimate for the operating cell. Detected user symbols<img file="KR101401570B1_D0261.tif" />provides an estimate of the transmitted user symbols for the operating cell.
The cell calculation unit 2410 further includes a gain unit 2440 , a spreading and scrambling unit 2450 , and a channel unit 2460 . Gain unit 2440, and spreading and scrambling unit 2060, process the detected user symbols in a manner similar to the transmitter side (eg, base station) of the operating cell. A gain unit 2440 applies a set of gains to the user symbols, where the gains can be estimated based on equation (66) given above. Next, spreading and scrambling unit 2450 spreads the user symbols using the set of spreading codes, combines the resulting spreading signals, and scrambling the combined spreading signal to obtain an estimate of the transmitted chips for the operating cell. create Spreading and scrambling unit 2450 may use the same spreading and scrambling codes used at the transmitter side of the operating cell.
Next, the channel unit 2460 convolves the estimated transmitted chips from the scrambling and spreading unit 2450 with the channel estimate for the working cell to obtain received chips for the working cell. <img file="KR101401570B1_D0262.tif" />to calculate The channel estimate for the operating cell may be estimated using, for example, pilot-based channel estimation and/or data-assisted channel estimation as described above.
Thus, detected user symbols from detection system 2430 <img file="KR101401570B1_D0263.tif" />provides an estimate of the transmitted user symbols for the operating cell. Detected user symbols<img file="KR101401570B1_D0264.tif" />Using , gain unit 2440, spreading and scrambling unit 2450, and channel unit 2460 receive chips for the operating cell. <img file="KR101401570B1_D0265.tif" />to reconstruct
For ease of explanation, although the cell calculation units 2320a to 2320c are shown separately in FIG. 23 , it should be understood that their operations may be performed by the same cell calculation unit. For example, the cell calculation unit 2410 may be used to successively calculate the received cells for the cell calculation units 2320a to 2320c of FIG. 23 .
25 is a schematic diagram of a cell calculation unit 2510 , in accordance with certain aspects of the present application. The cell calculation unit 2510 is similar to the cell calculation unit shown in FIG. 24 , where the symbol detector 1920 of FIG. 24 is implemented as a slicer 2520 . The slicer 2520 receives the received symbols from which the calculated multi-user interference has been removed.<img file="KR101401570B1_D0266.tif" />User symbols from <img file="KR101401570B1_D0267.tif" />to detect For the example of Quadrature Phase Shift Keying (QPSK) modulation, slicer 2520 computes the received symbols for user i as follows:<img file="KR101401570B1_D0268.tif" />can be sliced.
<img file="KR101401570B1_D0269.tif" /> (69)
The slicing may be referred to as hard slicing. Hard slicing provides hard symbols from the modulation scheme being used. For example, QPSK modulation contains 4 possible symbols, so hard slicing using QPSK modulation will give 1 or 4 possible hard symbols. Soft slicing provides soft real-valued symbol estimation. Linear Least Mean Squares Error Estimation (LMMSE) may be used for soft slicing. For binary inputs, the LMMSE may be provided in the form of a hyperbolic tangent, as shown below. In another aspect, for the example of QPSK modulation, the slicer 2520 may also:<img file="KR101401570B1_D0270.tif" />You can do soft slicing of:
<img file="KR101401570B1_D0271.tif" /> (70)
where σ<sup>2</sup>is the complex noise power, g<sub>It's</sub>is the estimated gain for each user. Complex noise power σ<sup>2</sup>can be calculated using pilot differential based on equation (66) given above. gain g<sub>It's</sub>can be estimated based on equation (66) given above. Complex noise power σ<sup>2</sup> and gain g<sub>It's</sub>can be calculated from the previous symbol period m-1. The soft slice considers the noise power and gain for the received symbol when making decisions for each user symbol.
In an aspect, the detection system 2530 also includes a slicing selection unit 2520 that selects hard slicing or soft slicing based on the signal strength or geometry of the corresponding cell. For example, the slicing selection unit 2520 selects hard slicing if the geometry of the corresponding cell is greater than or equal to a threshold (eg, >= 5 dB), and if the geometry of the corresponding cell is less than the threshold (eg, For example, < 5 dB) select soft slicing. Next, the slicing selection unit 2520 causes the slicer 2520 to select received symbols based on the selection.<img file="KR101401570B1_D0272.tif" />can be instructed to slice For the example of QPSK, the slicing selection unit 2520 causes the slicer 2520 to use equation (69) to select received symbols if the geometry of the corresponding cell is greater than or equal to a threshold.<img file="KR101401570B1_D0273.tif" />may instruct the slicer 2520 to hard slice <img file="KR101401570B1_D0274.tif" />can be instructed to soft-slice.
For high geometry, the symbols estimated from hard slicing are reliable and can therefore be used to cancel interference. However, for low geometry, misdetected symbols from hard slicing can lead to error propagation for interference cancellation. In this case, soft slicing minimizes the error propagation effect and leads to better performance of interference cancellation.
An interference cancellation process according to an aspect will now be described with reference to Table 1 below.
<img file="KR101401570B1_D0275.tif" />
As shown in Table 1, the interference cancellation process performs interference cancellation in iterations or stages. Table 1 gives an example of 7 iterations, but it should be understood that more or fewer iterations may be performed. For each iteration, Table 1 shows the working cell, the previously estimated received chips removed and added back to the receive chips r(n), and the receive chips removed. Although Table 1 gives an example of three cells, it should be understood that the interference cancellation process may use any number of cells. In an aspect, the three cells are arranged in decreasing geometry order, with the first cell having the largest geometry, the second cell having the second largest geometry, and so on.
In a first iteration, the process includes receiving chips for a first cell (eg, target cell) using receive chips r(n). <img file="KR101401570B1_D0276.tif" />to estimate As shown in Table 1, the receive chips for the three cells are initialized to zero (<img file="KR101401570B1_D0277.tif" />), therefore, there is no inter-cell interference cancellation in the first iteration. The first iteration may be performed, for example, by inputting the receiving chips r(n) to the cell calculation unit 2410 and calculating the receiving chips for the first cell.
In a second iteration, the process repeats the previously estimated receive chips for the first cell. <img file="KR101401570B1_D0278.tif" />removes from the receiving chips r(n). Next, the process includes the previously estimated receiving chips<img file="KR101401570B1_D0279.tif" />Receive chips for the second cell using these removed receive chips r(n) <img file="KR101401570B1_D0280.tif" />to estimate
In a third iteration, the process repeats the previously estimated receive chips for the first and second cells. <img file="KR101401570B1_D0281.tif" /> and <img file="KR101401570B1_D0282.tif" /> Remove each from the receiving chips r(n). Next, the process includes the previously estimated receiving chips<img file="KR101401570B1_D0283.tif" /> and <img file="KR101401570B1_D0284.tif" />Receive chips for the third cell using these removed receive chips <img file="KR101401570B1_D0285.tif" />to estimate
In a fourth iteration, the process repeats the previously estimated receive chips for the first, second and third cells. <img file="KR101401570B1_D0286.tif" />, <img file="KR101401570B1_D0287.tif" /> and <img file="KR101401570B1_D0288.tif" /> Remove each from receive chips r(n), and receive previously estimated receive chips for the first cell <img file="KR101401570B1_D0289.tif" />add again Next, the process includes the previously estimated receiving chips<img file="KR101401570B1_D0290.tif" />, <img file="KR101401570B1_D0291.tif" /> and <img file="KR101401570B1_D0292.tif" />Removed and previously estimated receive chips <img file="KR101401570B1_D0293.tif" />Using this back-added receive chips r(n), receive chips for the first cell <img file="KR101401570B1_D0294.tif" />re-estimate Thus, the fourth iteration repeats the receiving chips for the first cell.<img file="KR101401570B1_D0295.tif" />Update the estimate of , which is used in subsequent iterations.
In a fifth iteration, the process repeats the previously estimated receive chips for the first, second and third cells. <img file="KR101401570B1_D0296.tif" />, <img file="KR101401570B1_D0297.tif" /> and <img file="KR101401570B1_D0298.tif" /> Remove each from receive chips r(n), and receive previously estimated receive chips for the second cell <img file="KR101401570B1_D0299.tif" />add again Next, the process includes the previously estimated receiving chips<img file="KR101401570B1_D0300.tif" />, <img file="KR101401570B1_D0301.tif" /> and <img file="KR101401570B1_D0302.tif" />Removed and previously estimated receive chips <img file="KR101401570B1_D0303.tif" />Using this back-added receive chips r(n), receive chips for the second cell <img file="KR101401570B1_D0304.tif" />is re-estimated. Thus, the fifth iteration repeats the receiving chips for the second cell.<img file="KR101401570B1_D0305.tif" />Update the estimate of , which is used in subsequent iterations.
In a sixth iteration, the process repeats the previously estimated receive chips for the first, second and third cells. <img file="KR101401570B1_D0306.tif" />, <img file="KR101401570B1_D0307.tif" /> and <img file="KR101401570B1_D0308.tif" /> Remove each from receive chips r(n), and receive previously estimated receive chips for the third cell <img file="KR101401570B1_D0309.tif" />add again Next, the process includes the previously estimated receiving chips<img file="KR101401570B1_D0310.tif" />, <img file="KR101401570B1_D0311.tif" /> and <img file="KR101401570B1_D0312.tif" />Removed and previously estimated receive chips <img file="KR101401570B1_D0313.tif" />Using this back-added receive chips r(n), receive chips for the third cell <img file="KR101401570B1_D0314.tif" />is re-estimated. Thus, the sixth iteration is the receiving chips for the third cell.<img file="KR101401570B1_D0315.tif" />Update the estimate of , which is used in subsequent iterations.
In a seventh iteration, the process repeats the previously estimated receive chips for the first, second and third cells. <img file="KR101401570B1_D0316.tif" />, <img file="KR101401570B1_D0317.tif" /> and <img file="KR101401570B1_D0318.tif" /> Remove each from receive chips r(n), and receive previously estimated receive chips for the first cell <img file="KR101401570B1_D0319.tif" />add again Next, the process includes the previously estimated receiving chips<img file="KR101401570B1_D0320.tif" />, <img file="KR101401570B1_D0321.tif" /> and <img file="KR101401570B1_D0322.tif" />Removed and previously estimated receive chips <img file="KR101401570B1_D0323.tif" />Using this back-added receive chips r(n), receive chips for the first cell <img file="KR101401570B1_D0324.tif" />re-estimate Thus, the seventh iteration is the receiving chips for the first cell.<img file="KR101401570B1_D0325.tif" />Update the estimate of , which is used in subsequent iterations. The process includes (assuming that the first cell is the target cell) estimated receive chips for the first cell to detect user symbols for the first cell.<img file="KR101401570B1_D0326.tif" />can be used, or an estimate of the received chips <img file="KR101401570B1_D0327.tif" />Additional iterations can be continued to further improve . Also, the process may utilize performing less than 7 iterations. For example, the system 2310 shown in FIG. 23 may be used to perform the process shown in Table 1 up to a fourth iteration.
Thus, at each iteration, the process removes from the receive chips r(n) the previous estimates of the receive chips for each cell (if available from the previous iteration), and (if available from the previous iteration) Add back the previous estimate of the receiving chips for that operating cell. Next, the process uses the receive chips r(n) for the cells to be removed and the previous estimates of the receive chips for that operating cell added back to the receiving chip for that operating cell. estimate them Also in this example, the process continuously estimates the receive chips for cells 1-3, estimates the receive chips for cell 3, and then loops back to cell 1.
26 is a schematic diagram of a system 2610 capable of performing the interference cancellation process set forth in Table 1, in accordance with certain aspects of the present application. The system includes a subtraction unit 2615 , an addition unit 2620 , a detection system 2625 , a chip estimation system 2630 , a memory 2640 , and a cell summing unit 2650 . The subtraction unit 2615 is configured to remove from the receive chips r(n) previous estimates of the receive chips for cells (if available from previous iterations), and the addition unit 2620 (from previous iterations) and add back the previous estimate of the receiving chips for the operating cell (if available). Receive chips r(n) with the previous estimate of the receive chips for the cells removed and the previous estimate of the receive chips for that operating cell added again are r(n) in FIG.<sub>IC</sub>It is marked with (n).
The detection system 2625 is r<sub>IC</sub>Process the receive chips into the received symbols for the working cell by (n), and from the received symbols for the working cell to the user symbols for the working cell <u>b</u>(m) is configured to detect. The chip estimation system 2630 determines the detected user symbols for the operating cell from the detection system 2625 .<u>b</u>Using (m), the receiving chips for the operating cell <img file="KR101401570B1_D0328.tif" />is configured to estimate Memory 2640 is configured to store estimates of receive chips for different cells.
At each iteration, the subtraction unit 2615 removes from the receiving chips r(n) the previous estimates of the receiving chips for each cell (if available from the previous iteration). To this end, a summing unit 2615 sums the previous estimates of the receiving cells for each cell from the memory 2640 (if available), and a subtracting unit 2615 adds this sum to the receiving chips r(n). subtract from In a first iteration, the subtraction unit 2615 does not remove from the receiving chips r(n) previous estimates of the receiving chips for cells. In subsequent iterations, the estimates of the receiving chips for the cells are stored in memory 2640 and can thus be used by summing unit 2650 and subtracting unit 2615 . For example, referring to Table 1, estimates for the receiving chips of cells 1-3 may be used in the fourth iteration.
At each iteration, the addition unit 2620 adds back to the output of the subtraction unit 2620 the estimate of the received chips for the operating cell (if available from the previous iteration). Addition unit 2620 receives the estimate of the receiving chips for the operating cell from memory 2640 storing the estimate from the previous iteration. If the previous estimate of the receiving chips for the working cell is not available, the addition unit 2620 does not add back the estimate of the receiving chips for the working cell.
At each iteration, detection system 2625 determines the user for the operating cell, using receive chips r(n) with previous estimates of the receiving chips for the cells removed and the estimate of the receiving chips for the operating cell added back again. symbols <u>b</u>(m) is detected. The detection system may be implemented using, for example, the filter, descramble and despreading unit and detection system of FIG. 24 .
At each iteration, the chip estimation unit 2630 determines the detected user symbols for the operating cell from the detection system. <u>b</u>Using (m), we estimate the received chips for the operating cell. The chip estimation unit 2630 may be implemented using, for example, the gain unit 2440 , the spreading and scrambling unit 2450 and the channel unit 2460 of FIG. 24 .
At each iteration, memory 2640 stores an estimate of the received chips for the operating cell from chip estimation unit 2630 . If there is a previous estimate of the receiving chips for the working cell already stored in memory 2640 from a previous iteration, then memory 2640 uses the most recent estimate from chip estimation unit 2630 to receive for the working cell. Update the estimate of the chips and use that updated estimate in subsequent iterations.
System 2610 may be used to perform any number of iterations of the process of Table 1 . After the desired number of iterations have been performed, the user symbols for the target cell<u>b</u>(m) may be output from detection system 2625 .
FIG. 27 is a schematic diagram of a system 2710 illustrating examples of implementations for the detection system 2625 and chip estimation unit 2630 of FIG. 25 , in accordance with certain aspects of the present application. In system 2710 , detection system 2625 of FIG. 26 includes filter 2710 , descramble and despread unit 2715 , and detection system 2720 . The filter 2710 consists of chips r<sub>IC</sub>and filter (n) with the filtered chips y(n). The descramble and despread unit 2715 descrambles and despreads the filtered chips y(n), thereby converting the filtered chips y(n) into received symbols for the operating cell.<u>z</u>(m) is configured to process. The descrambling and despreading unit 2715 descrambles and despreads the filtered chips y(n) using the set of descrambling and despreading codes for the working cell, respectively. The detection unit 2720 receives symbols<u>z</u>User symbols for the operating cell from (m) <u>b</u>(m) is detected. Detection system 2720 may be implemented, for example, using detection system 1905 of FIG. 19 to provide intra-cell multi-user cancellation for an operating cell.
The chip estimation system 2630 of FIG. 26 includes a reconstruction unit 2725 and a channel unit 2730 . The reconstruction unit 2725 is configured to reconstruct each of the detected user symbols.<u>b</u>and apply a set of gains to (m), and spread and scramble the gain-scaled detected user symbols to estimate the transmitted chips t(n). Reconstruction unit 2725 spreads and scrambles the gain-scaled detected user symbols using the scrambling code and the set of spreading codes for the operating cell. A channel unit 2730 convolves the estimated transmitted chips t(n) with an estimate of the channel for the operating cell. Channel unit 2730 is the estimated receive chips for the operating cell.<img file="KR101401570B1_D0329.tif" />is output to the memory 2640 .
The system 2710 also includes a channel estimation unit 2735 , a memory 2740 , and a matrix calculation unit 2745 . Channel estimation unit 2735 is configured to estimate the channel for the operating cell using data-assisted channel estimation as described above. To estimate the channel, the channel estimation unit 2735 receives chips r<sub>IC</sub>Receive (n) and the estimated transmitted chips t(n), and estimate the channel for the operating cell based on equations (60), (61) or (62) given above. Channel estimation unit 2735 may also use pilot-based channel estimation as described above. The estimated channel is provided to memory 2740 for temporary storage. In an aspect, memory 2740 provides the estimated channel to filter 2710 , channel unit 2730 , and matrix calculation unit 2745 . Memory 2740 can provide a delay of one symbol period to the estimated channel, for example, if the channel has not changed much compared to one symbol period.
Channel 2715 is the receiving chips r based on the estimated channel.<sub>IC</sub>Filter (n). For the example of a channel-matched filter, the filter uses the time-inversion conjugate h*(-n) of the estimated channel h to receive chips r with inter-cell cancellation.<sub>IC</sub>(n) can be filtered. A channel unit 2730 applies the estimated channel to the estimated transmitted chips t(n), resulting in estimated received chips for the operating cell.<img file="KR101401570B1_D0330.tif" />create The matrix calculation unit 2745 calculates the multi-user interference matrix A<sub>0</sub> and shoulder matrices A<sub>-1</sub> and A<sub>+1</sub>The estimated channel is used to compute (eg, based on equations (28)-(30)), and these matrices are provided to a detection system 2720 . Detection system 2720, for example, calculates multi-user interference for performing intra-cell multi-user cancellation for an operating cell, the multi-user interference matrix A<sub>0</sub> and shoulder matrices A<sub>-1</sub> and A<sub>+1</sub>is available.
System 2710 also includes a gain and noise estimation unit 2750 that estimates a set of gains for the noise and operating cell. A gain and noise estimation unit 2750 is configured for each detected user symbol.<u>z</u>(m) (e.g., based on equation (66)) and estimation noise (e.g., based on equation (64)) are used to estimate the gain for the user or each code channel of the operating cell. can The gain and noise estimation unit 2750 can provide the estimated gains to the reconstruction unit 2725 . The gain and noise estimation unit 2750 can also provide the estimated noise and estimated gains to the detection unit 2750 to perform soft slicing (eg, based on equation (70)).
28 is a flow diagram illustrating a process of interference cancellation in accordance with certain aspects of the present application. In operation 2810 , total receive chips r(n) are provided. The total receive chips r(n) is the receive chips x from a plurality of cells including the target cell and one or more interfering cells.<sub>1</sub>(n) to x<sub>Nu</sub>(n) may be included.
From operation 2810 , processing continues to operation 2820 , where the process successively calculates receive chips for each of the plurality of cells in a plurality of iterations. For example, the process first receives chips for cell 1<img file="KR101401570B1_D0331.tif" />, and then the receiving chips for cell 2 <img file="KR101401570B1_D0332.tif" />is the formula to calculate
At operation 2830 , for each iteration after the first iteration, the process removes from the total receive chips r(n) previously calculated receive chips for one or more of the plurality of cells. For example, in the second iteration, the process repeats the previously calculated receive chips for cell 1<img file="KR101401570B1_D0333.tif" />from the total received chips r(n). In the third iteration, the process repeats the previously calculated receive chips for cells 1 and 2<img file="KR101401570B1_D0334.tif" /> and <img file="KR101401570B1_D0335.tif" />is removed from the total received chips r(n).
For each iteration after the first iteration, in operation 2830 , the process also selects the receive chips for the operating cell in that iteration, using the total receive chips r(n) from which the previously calculated receive chips have been removed. Estimate or calculate. For example, in the second iteration, the process is performed on previously calculated chips for cell 1<img file="KR101401570B1_D0336.tif" />Using this removed total receive chips r(n), receive chips for cell 2 <img file="KR101401570B1_D0337.tif" />to calculate
After the process calculates the receive chips for each cell, the process can stop or loop back to the first cell, and iterate further to further refine the counted receive chips for the target cell (eg, cell 1). can perform For each iteration after loopback, the process repeats the previously computed receive chips for each cell.<img file="KR101401570B1_D0338.tif" /> inside <img file="KR101401570B1_D0339.tif" />Calculate the receive chips for the cell in that iteration, using the total receive chips r(n) that are removed and the receive chips previously calculated for the cell in that iteration are added again. For the example of three cells, in the fourth iteration, the process repeats the previously calculated receive chips for each cell.<img file="KR101401570B1_D0340.tif" /> inside <img file="KR101401570B1_D0341.tif" />Receive chips that have been removed and calculated previously for cell 1 <img file="KR101401570B1_D0342.tif" />Using this back-added total receive chips r(n), receive chips for cell 1 <img file="KR101401570B1_D0343.tif" />, where the receiving chips for cell 1 were previously calculated in the first iteration. In the fifth iteration, the process repeats the previously calculated receive chips for each cell.<img file="KR101401570B1_D0344.tif" /> inside <img file="KR101401570B1_D0345.tif" />Receive chips that have been removed and calculated previously for cell 2 <img file="KR101401570B1_D0346.tif" />Using this re-added total receive chips r(n), receive chips for cell 2 <img file="KR101401570B1_D0347.tif" />, where the receiving chips for cell 2 were previously calculated in the second iteration.
29 is a block diagram illustrating an example of functionality of an apparatus 2900 for interference cancellation at a mobile station 106, in accordance with an aspect of the present application. The apparatus 2900 includes a module 2910 for providing total received chips received from a plurality of cells and a module 2920 for continuously estimating receive chips for each of a plurality of cells in a plurality of iterations. . For each of the plurality of iterations after the first iteration, the module for successively estimating received chips 2920 is configured to remove from total received chips previously estimated received chips for one or more of the plurality of cells, and Estimate the receive chips for one of the plurality of cells using the total receive chips from which previously estimated receive chips for one or more of the cells are removed.
Those of skill in the art will appreciate that information and signals may be represented using any of a variety of different technologies and techniques. For example, data, instructions, instructions, information, signals, bits, symbols, and chips that may be referenced throughout the foregoing detailed description may include voltages, currents, electromagnetic waves, magnetic fields or magnetic fields. particles, light fields or light particles, or any combination thereof.
Those of ordinary skill in the art to which the present invention pertains will recognize that various illustrative logical modules, circuits, and algorithms described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or a combination of the two. It will also be appreciated that it may be implemented. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present application.
The various illustrative logical blocks, modules, and circuits described in connection with the embodiments disclosed herein may be used as general purpose processors, digital signal processors (DSPs), application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs) or It may be implemented or performed in other programmable logic devices, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor may be a microprocessor, but in the alternative, the processor may be any conventional processor, controller, microcontroller, or state machine. A process may also be implemented as a combination of computing devices, such as, for example, a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in combination with a DSP core, or any other such configurations.
In one or more exemplary embodiments, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a machine-readable medium. Machine-readable media includes computer storage media and communication media including any medium that facilitates transfer of a computer program from one place to another. A storage medium may be any available medium that can be accessed by a computer. For example, such a machine-readable medium may store the required program code in the form of RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage devices, or instructions or data structures. or any other medium that can be used to convey and that can be accessed by a computer. Also, any connecting means may be considered a computer-readable medium. For example, if the Software is transmitted from a website, server, or other remote source via coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave; Coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave may be included in the definition of this medium. Here, the disks and discs used include compact discs (CDs), laser discs, optical discs, DVDs, floppy disks, and Blu-ray discs, where disks usually reproduce data magnetically, whereas discs usually Lasers are used to optically reproduce data. Combinations of the above should also be included within the scope of machine-readable media.
The previous description of the disclosed aspects is provided to enable any person skilled in the art to make or use the present application. Various modifications to these aspects will be readily apparent to those skilled in the art, and the generic principles defined herein may be applied to other aspects without departing from the present application. Accordingly, this application is not to be limited to the aspects presented herein but is to be accorded the widest scope consistent with the principles and novel features disclosed herein.
381 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17 Sheet 18 Sheet 19 Sheet 20 Sheet 21 Sheet 22 Sheet 23 Sheet 24 Sheet 25 Sheet 26 Sheet 27 Sheet 28 Sheet 29 Sheet 30 Sheet 31 Sheet 32 Sheet 33 Sheet 34 Sheet 35 Sheet 36 Sheet 37 Sheet 38 Sheet 39 Sheet 40 Sheet 41 Sheet 42 Sheet 43 Sheet 44 Sheet 45 Sheet 46 Sheet 47 Sheet 48 Sheet 49 Sheet 50 Sheet 51 Sheet 52 Sheet 53 Sheet 54 Sheet 55 Sheet 56 Sheet 57 Sheet 58 Sheet 59 Sheet 60 Sheet 61 Sheet 62 Sheet 63 Sheet 64 Sheet 65 Sheet 66 Sheet 67 Sheet 68 Sheet 69 Sheet 70 Sheet 71 Sheet 72 Sheet 73 Sheet 74 Sheet 75 Sheet 76 Sheet 77 Sheet 78 Sheet 79 Sheet 80 Sheet 81 Sheet 82 Sheet 83 Sheet 84 Sheet 85 Sheet 86 Sheet 87 Sheet 88 Sheet 89 Sheet 90 Sheet 91 Sheet 92 Sheet 93 Sheet 94 Sheet 95 Sheet 96 Sheet 97 Sheet 98 Sheet 99 Sheet 100 Sheet 101 Sheet 102 Sheet 103 Sheet 104 Sheet 105 Sheet 106 Sheet 107 Sheet 108 Sheet 109 Sheet 110 Sheet 111 Sheet 112 Sheet 113 Sheet 114 Sheet 115 Sheet 116 Sheet 117 Sheet 118 Sheet 119 Sheet 120 Sheet 121 Sheet 122 Sheet 123 Sheet 124 Sheet 125 Sheet 126 Sheet 127 Sheet 128 Sheet 129 Sheet 130 Sheet 131 Sheet 132 Sheet 133 Sheet 134 Sheet 135 Sheet 136 Sheet 137 Sheet 138 Sheet 139 Sheet 140 Sheet 141 Sheet 142 Sheet 143 Sheet 144 Sheet 145 Sheet 146 Sheet 147 Sheet 148 Sheet 149 Sheet 150 Sheet 151 Sheet 152 Sheet 153 Sheet 154 Sheet 155 Sheet 156 Sheet 157 Sheet 158 Sheet 159 Sheet 160 Sheet 161 Sheet 162 Sheet 163 Sheet 164 Sheet 165 Sheet 166 Sheet 167 Sheet 168 Sheet 169 Sheet 170 Sheet 171 Sheet 172 Sheet 173 Sheet 174 Sheet 175 Sheet 176 Sheet 177 Sheet 178 Sheet 179 Sheet 180 Sheet 181 Sheet 182 Sheet 183 Sheet 184 Sheet 185 Sheet 186 Sheet 187 Sheet 188 Sheet 189 Sheet 190 Sheet 191 Sheet 192 Sheet 193 Sheet 194 Sheet 195 Sheet 196 Sheet 197 Sheet 198 Sheet 199 Sheet 200 Sheet 201 Sheet 202 Sheet 203 Sheet 204 Sheet 205 Sheet 206 Sheet 207 Sheet 208 Sheet 209 Sheet 210 Sheet 211 Sheet 212 Sheet 213 Sheet 214 Sheet 215 Sheet 216 Sheet 217 Sheet 218 Sheet 219 Sheet 220 Sheet 221 Sheet 222 Sheet 223 Sheet 224 Sheet 225 Sheet 226 Sheet 227 Sheet 228 Sheet 229 Sheet 230 Sheet 231 Sheet 232 Sheet 233 Sheet 234 Sheet 235 Sheet 236 Sheet 237 Sheet 238 Sheet 239 Sheet 240 Sheet 241 Sheet 242 Sheet 243 Sheet 244 Sheet 245 Sheet 246 Sheet 247 Sheet 248 Sheet 249 Sheet 250 Sheet 251 Sheet 252 Sheet 253 Sheet 254 Sheet 255 Sheet 256 Sheet 257 Sheet 258 Sheet 259 Sheet 260 Sheet 261 Sheet 262 Sheet 263 Sheet 264 Sheet 265 Sheet 266 Sheet 267 Sheet 268 Sheet 269 Sheet 270 Sheet 271 Sheet 272 Sheet 273 Sheet 274 Sheet 275 Sheet 276 Sheet 277 Sheet 278 Sheet 279 Sheet 280 Sheet 281 Sheet 282 Sheet 283 Sheet 284 Sheet 285 Sheet 286 Sheet 287 Sheet 288 Sheet 289 Sheet 290 Sheet 291 Sheet 292 Sheet 293 Sheet 294 Sheet 295 Sheet 296 Sheet 297 Sheet 298 Sheet 299 Sheet 300 Sheet 301 Sheet 302 Sheet 303 Sheet 304 Sheet 305 Sheet 306 Sheet 307 Sheet 308 Sheet 309 Sheet 310 Sheet 311 Sheet 312 Sheet 313 Sheet 314 Sheet 315 Sheet 316 Sheet 317 Sheet 318 Sheet 319 Sheet 320 Sheet 321 Sheet 322 Sheet 323 Sheet 324 Sheet 325 Sheet 326 Sheet 327 Sheet 328 Sheet 329 Sheet 330 Sheet 331 Sheet 332 Sheet 333 Sheet 334 Sheet 335 Sheet 336 Sheet 337 Sheet 338 Sheet 339 Sheet 340 Sheet 341 Sheet 342 Sheet 343 Sheet 344 Sheet 345 Sheet 346 Sheet 347 Sheet 348 Sheet 349 Sheet 350 Sheet 351 Sheet 352 Sheet 353 Sheet 354 Sheet 355 Sheet 356 Sheet 357 Sheet 358 Sheet 359 Sheet 360 Sheet 361 Sheet 362 Sheet 363 Sheet 364 Sheet 365 Sheet 366 Sheet 367 Sheet 368 Sheet 369 Sheet 370 Sheet 371 Sheet 372 Sheet 373 Sheet 374 Sheet 375 Sheet 376 Sheet 377 Sheet 378 Sheet 379 Sheet 380 Sheet 381
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| KR19980018368A | Cites | Republic of Korea | Search report |
| KR20070052355A | Cites | Republic of Korea | Search report |
| KR20070058271A | Cites | Republic of Korea | Search report |
| KR20080050204A | Cites | Republic of Korea | Search report |
| KR1020070058271A | Cites | Republic of Korea | – |
| KR1020080050204A | Cites | Republic of Korea | – |
| KR1020070052355A | Cites | Republic of Korea | – |
| KR1019980018368A | Cites | Republic of Korea | – |
12 members in 7 offices
Priority claims9
| Document | Office | Kind | Date |
|---|---|---|---|
| 12481203 | United States of America | – | |
| 48120309 | United States of America | A | |
| 48120309 | United States of America | A | |
| 2010037853 | United States of America | W | |
| 2010037853 | United States of America | W | |
| 12481203 | – | – | – |
| PCTUS2010037853 | – | – | – |
| US20090481203 | – | – | – |
| WO2010US37853 | – | – | – |
Members12
| Document | Office | Kind | |
|---|---|---|---|
| US2010309956A1 | United States of America | A1 | |
| WO2010144506A1 | World Intellectual Property Organization (WIPO) | A1 | |
| TW201126929A | Taiwan Province of China | A | |
| KR20120023182A | Republic of Korea | A | |
| EP2441177A1 | European Patent Office (EPO) | A1 | |
| CN102460987A | China | A | |
| JP2012529863A | Japan | A | |
| US8451963B2 | United States of America | B2 | |
| JP2014060789A | Japan | A | |
| KR101401570B1This record | Republic of Korea | B1 | |
| CN102460987B | China | B | |
| JP5922084B2 | Japan | B2 |
10 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Lapse due to unpaid annual feeLapsedLAPS | LAPS | |
| Annual fee paymentFPAY | FPAY | |
| Annual fee paymentFPAY | FPAY | |
| Annual fee paymentFPAY | FPAY | |
| Annual fee paymentFPAY | FPAY | |
| Annual fee paymentFPAY | FPAY | |
| Written decision to grantGRNT | GRNT | |
| Decision to grant or registration of patent rightE701 | E701 | |
| Notification of reason for refusalE902 | E902 | |
| Request for examinationA201 | A201 |
Numbers
- Publication
- 10-1401570
- Publication, DOCDB
- 101401570
- Publication, EPODOC
- KR101401570B
- Application
- 1020127000659
- Application, DOCDB
- 20127000659
- Application, EPODOC
- KR20127000659
Titles4
- Korean
- 간섭 제거를 위한 방법 및 시스템
- English
- METHOD AND SYSTEM FOR INTERFERENCE CANCELLATION
- Unlabeled
- 간섭 제거를 위한 방법 및 시스템{METHOD AND SYSTEM FOR INTERFERENCE CANCELLATION}
- Unlabeled
- METHOD AND SYSTEM FOR INTERFERENCE CANCELLATION
Classification
- CPC, 4
- H04B1/71072
- H04B15/02
- H04B2201/70702
- H04B1/10
- IPC, 2
- H04B1 10
- H04B15 02