KR102175019B1 - 상쇄 펄스 파고율 저감 - Google Patents

상쇄 펄스 파고율 저감 Download PDF

Info

Publication number
KR102175019B1
KR102175019B1 KR1020167016432A KR20167016432A KR102175019B1 KR 102175019 B1 KR102175019 B1 KR 102175019B1 KR 1020167016432 A KR1020167016432 A KR 1020167016432A KR 20167016432 A KR20167016432 A KR 20167016432A KR 102175019 B1 KR102175019 B1 KR 102175019B1
Authority
KR
South Korea
Prior art keywords
pulse
canceling
peak
receive
signal
Prior art date
Application number
KR1020167016432A
Other languages
English (en)
Other versions
KR20160088924A (ko
Inventor
그레고리 씨. 코프랜드
Original Assignee
자일링크스 인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 자일링크스 인코포레이티드 filed Critical 자일링크스 인코포레이티드
Publication of KR20160088924A publication Critical patent/KR20160088924A/ko
Application granted granted Critical
Publication of KR102175019B1 publication Critical patent/KR102175019B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/26Systems using multi-frequency codes
    • H04L27/2601Multicarrier modulation systems
    • H04L27/2614Peak power aspects
    • H04L27/2623Reduction thereof by clipping
    • H04L27/2624Reduction thereof by clipping by soft clipping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0033Systems modifying transmission characteristics according to link quality, e.g. power backoff arrangements specific to the transmitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/26Systems using multi-frequency codes
    • H04L27/2601Multicarrier modulation systems
    • H04L27/2614Peak power aspects
    • H04L27/2621Reduction thereof using phase offsets between subcarriers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Manipulation Of Pulses (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Logic Circuits (AREA)

Abstract

본 발명의 장치는 일반적으로 파고율 저감에 관한 것이다. 이 장치에 있어서, 유한 임펄스 응답 필터(600)는 제1 상쇄 펄스(361)와 제2 상쇄 펄스(362)를 제공한다. 제1 가산기(311)가 입력 신호(201)와 제1 상쇄 펄스(361)를 수신하여 제1 차분 신호(335)를 제공하도록 연결된다. 피크 엔진(315)이 제1 차분 신호(335)를 수신하도록 연결되며, 제1 차분 신호(335)에 응답하여 상쇄 펄스값(336)을 제공한다. 유한 임펄스 응답 필터(360)는 제1 상쇄 펄스값(336)을 수신하여 상쇄 펄스(361)와 제2 상쇄 펄스(362) 각각을 제공하도록 연결된다. 지연기(354)가 입력 신호(201)를 수신하여 지연된 입력 신호(355)를 제공하도록 연결된다. 제2 가산기(305)가 지연된 입력 신호(355)와 제2 상쇄 펄스(362)를 수신하여 제2 차분 신호(325)를 제공하도록 연결된다. 제2 차분 신호(325)는 지연된 입력 신호(355)의 파고율 저감 버전이다.

Description

상쇄 펄스 파고율 저감{CANCELLATION PULSE CREST FACTOR REDUCTION}
이하의 설명은 집적 회로 디바이스("IC")에 관한 것이다. 더 구체적으로, 이하의 설명은 IC에서의 상쇄 펄스 파고율 저감에 관한 것이다.
기지국과 기타 송신기는 더 많은 액세스 기술을 더욱더 통합하고 있다. 더욱이, 이러한 기지국과 기타 송신기를 통한 트래픽도 증가하고 있다. 따라서, 송신될 신호의 파고율 저감(crest factor reduction, "CFR")에 대한 복잡성 및 레이턴시 감소가 바람직하고 유용하게 된다.
본 발명의 장치는 일반적으로 파고율 저감에 관한 것이다. 상기 장치에 있어서, 유한 임펄스 응답 필터는 제1 상쇄 펄스와 제2 상쇄 펄스를 제공하도록 구성된다. 제1 가산기가 입력 신호와 제1 상쇄 펄스를 수신하여 제1 차분 신호를 제공하도록 연결된다. 피크 엔진이 제1 차분 신호를 수신하도록 연결되며, 제1 차분 신호에 응답하여 상쇄 펄스값을 제공하도록 구성된다. 유한 임펄스 응답 필터는 제1 상쇄 펄스값을 수신하여 제1 상쇄 펄스와 제2 상쇄 펄스 각각을 제공하도록 연결된다. 지연기가 입력 신호를 수신하여 지연된 입력 신호를 제공하도록 연결된다. 제2 가산기가 지연된 입력 신호와 제2 상쇄 펄스를 수신하여 제2 차분 신호를 제공하도록 연결된다. 제2 차분 신호는 지연된 입력 신호의 파고율 저감 버전이다.
일부 예에서는, 유한 임펄스 응답 필터가, 상쇄 펄스값을 수신하여 제1 가중 신호 및 제2 가중 신호를 제공하도록 연결된 지연 라인을 포함할 수 있다. 지연 라인은 유한 임펄스 응답 필터의 제1 증폭-합산 블록과 제2 증폭-합산 블록 사이에 연결되어, 제1 가중 신호를 제1 증폭-합산 블록에 제공하고 제2 가중 신호를 제2 증폭-합산 블록에 제공할 수 있다. 제1 증폭-합산 블록은 제1 가중 신호를 수신하여 제1 상쇄 펄스를 제공하도록 연결될 수 있고, 제2 증폭-합산 블록은 제2 가중 신호를 수신하여 제2 상쇄 펄스를 제공하도록 연결될 수 있다.
일부 예에서는, 제1 상쇄 펄스 발생기가, 제1 증폭-합산 블록으로부터 제1 상쇄 펄스를 수신하여 제1 부분적 오프셋(fractional offset)을 조정한 다음 제1 부분적 오프셋에 대해 조정된 제1 상쇄 펄스를 제1 가산기에 제공하도록 연결될 수 있고, 제2 상쇄 펄스 발생기가, 제2 증폭-합산 블록으로부터 제2 상쇄 펄스를 수신하여 제2 부분적 오프셋을 조정한 다음 제2 부분적 오프셋에 대해 조정된 제2 상쇄 펄스를 제2 가산기에 제공하도록 연결될 수 있다.
일부 예에서는, 유한 임펄스 응답 필터가, 상쇄 펄스값을 수신하여 제1 가중 신호 및 제2 가중 신호를 제공하도록 연결된 지연 라인을 포함할 수 있다. 지연 라인은 유한 임펄스 응답 필터의 제1 상쇄 펄스 발생기와 제2 상쇄 펄스 발생기 사이에 연결되어, 제1 가중 신호를 제1 상쇄 펄스 발생기에 제공하고 제2 가중 신호를 제2 상쇄 펄스 발생기에 제공할 수 있다. 제1 상쇄 펄스 발생기가 제1 가중 신호를 수신하여 제1 상쇄 펄스를 제공하도록 연결되고, 제1 부분적 오프셋을 조정하여 제1 부분적 오프셋에 대해 조정된 제1 상쇄 펄스를 제1 가산기에 제공하도록 구성될 수 있으며, 제2 상쇄 펄스 발생기가 제2 가중 신호를 수신하여 제2 상쇄 펄스를 제공하도록 연결되고, 제2 부분적 오프셋을 조정하여 제2 부분적 오프셋에 대해 조정된 제2 상쇄 펄스를 제2 가산기에 제공하도록 구성될 수 있다.
일부 예에서는, 제1 윈도우-파고율 저감 엔진이 제1 상쇄 펄스 발생기로부터 제1 상쇄 펄스를 수신하여 제1 상쇄 펄스를 클린업한 다음 제1 가산기에 제공하도록 연결될 수 있고, 제2 윈도우-파고율 저감 엔진이 제2 상쇄 펄스 발생기로부터 제2 상쇄 펄스를 수신하여 제2 상쇄 펄스를 클린업한 다음 제2 가산기에 제공하도록 연결될 수 있다.
일부 예에서는, 제3 상쇄 펄스 발생기가 제1 상쇄 펄스 발생기로부터 제1 상쇄 펄스를 수신하여 제1 상쇄 펄스를 클린업한 다음 제1 가산기에 제공하도록 연결될 수 있고, 제4 상쇄 펄스 발생기가 제2 상쇄 펄스 발생기로부터 제2 상쇄 펄스를 수신하여 제2 상쇄 펄스를 클리업한 다음 제2 가산기에 제공하도록 연결될 수 있다.
일부 예에서, 상쇄 펄스값은 제1 상쇄 펄스로부터 제공된 과거의 기여도에 따라 재귀적으로 업데이트된다.
일부 예에서, 유한 임펄스 응답 필터는 계수화 필터(factored filter)이다.
일부 예에서, 제1 상쇄 펄스와 제2 상쇄 펄스는 제1 가산기와 제2 가산기의 각각의 마이너스 포트에 제공된다.
일부 예에서, 피크 엔진은 임계 피크치(T)를 갖게 구성되며, 여기서 입력 신호가 x(n), 제1 상쇄 펄스가 c(n), 및 제1 차분 신호가 y(n)이며, 연산은 다음과 같다.
Figure 112016059118106-pct00001
일부 예에서는, 피크 엔진이 예측 블록(look-ahead block)을 포함한다. 예측 블록은, 신호 위상을 상관된 샘플에 대해 일정하게 설정하여 상기 상쇄 펄스값을 오직 크기 데이터로 단순화하기 위해, 상기 입력 신호의 미래 기여도(future contribution)를 예측하여 상기 입력 신호의 다음 샘플이 임계치를 넘는지 결정하도록 구성될 수 있다.
일부 예에서, 예측 블록은 길이 2M+1의 필터 함수 w를 이용해 미래 기여도를 차감한 다음, 샘플 크기를, 0보다 큰 양의 정수 M, 제1 상쇄 펄스 c(n), 예측값 L에 대한 임계치 미만의 값으로 유도하기에 충분한 상쇄 펄스 c (n:n+L-1)의 에너지를 결정하도록 구성된다.
일부 예에서, 예측 블록은 단일 패스(single pass) 파고율 저감을 위해 2차(quadratic) 프로그래밍 함수, 비선형 프로그래밍 함수 또는 선형 프로그래밍 함수를 포함한다.
일부 예에서, 예측 블록은 입력 신호의 미래 샘플을 예측하고, 임계치를 넘은 미래 샘플을 양자화하며, 양자화된 미래 샘플을 회고(look back)하고, 양자화된 미래 샘플을 제1 차분 신호에 적용한 다음, 상쇄 펄스값에 대한 현재의 상쇄 펄스 복소 게인을 선택하는데 있어서 미래 및 과거 기여도의 적어도 일부, 예를 들어, 미래 및 과거 기여도의 대부분을 제거하도록 구성된다.
본 발명의 방법은 일반적으로 파고율 저감에 관한 것이다. 상기 방법에 있어서, 입력 신호의 크기 또는 크기의 제곱치가 얻어진다. 입력 신호의 피크가 피크 검출기에 의해 검출된다. 피크의 검출과 관련된 부분적 시간 오프셋이 결정된다. 검출된 피크의 피크 크기 및 피크 위치가 보간에 의해 찾아진다. 피크 크기가 임계치보다 큰지의 여부에 관해 결정된다. 임계치보다 큰 피크 크기에 대한 상쇄 펄스 게인으로서 복소 보간된 상쇄 펄스값이 찾아진다. 상쇄 펄스 게인을 갖는 상쇄 펄스가 생성된다. 상쇄 펄스가 파고율 저감을 위해 출력된다.
일부 예에 있어서, 방법은 상쇄 펄스 게인을 임계치보다 크지 않는 피크 크기에 대한 것에 설정하는 단계를 포함할 수 있다.
일부 예에서, 검출은 샘플 시퀀스에 2차 피트(quadratic fit)를 수행하는 것을 포함할 수 있고, 보간은 2차 피트를 이용하는 것을 포함한다.
첨부 도면들은 예시적인 장치(들) 및/또는 방법(들)을 보여준다. 그러나, 이들 첨부 도면은 청구범위의 범위를 제한하기 위한 것이 아니며, 단지 설명 및 이해를 위한 것이다.
도 1은 예시적인 원주형 필드 프로그래머블 게이트 어레이("FPGA", Field Programmable Gate Array) 아키텍처를 도시하는 간략 블록도이다.
도 2는 예시적인 종래의 윈도우 파고율 저감("CFR", crest factor reduction) 엔진을 도시하는 블록도이다.
도 3은 예시적인 CPCFR 엔진을 도시하는 블록도이다.
도 4는 예시적인 상쇄 펄스 발생기("CFG", cancellation pulse generator)를 도시하는 블록도이다.
도 5는 예시적인 복소 CP 게인 생성 및 CP 생성 흐름을 도시하는 흐름도이다.
도 6 내지 도 8은 각각 다른 예시적인 상쇄 펄스 파고율 저감("CPCFR", cancellation pulse crest factor reduction) 엔진을 도시하는 블록도이다.
이하의 설명에서, 다수의 특정 상세는 본 명세서에 설명하는 특정 예의 보다 충분한 설명을 제공하기 위한 것이다. 그러나, 당업자에게는, 이하에서 주어지는 특정 상세의 전부 없이도 이들 예의 변형 및/또는 하나 이상의 다른 예들이 실시될 수 있음이 명백함에 틀림없다. 다른 경우에 있어서, 잘 알려진 특징들은 본 명세서에 기재하는 예시의 설명을 모호하게 하지 않도록 상세하게 설명하지 않았다. 용이한 예시를 위해, 상이한 도면들에서 같은 아이템을 지칭하는 데에 같은 번호 라벨을 이용하지만, 다른 예에서는 그 아이템들이 상이할 수도 있다.
여러 도면들에서 예시적으로 도시하는 예를 설명하기 전에, 이해를 돕기 위해 일반적인 개요를 소개한다. 일반적으로, 종래의 윈도우 파고율 저감(CFR", crest factor reduction)은 너무 낮게 행해지거나 일부 애플리케이션의 경우 충분한 성능을 얻기 위해 다중 스테이지를 수반하였다. 다중 스테이지를 구비하면 레이턴시뿐만 아니라 복잡도도 증가하여, 제한 없이 다중 무선 액세스(multi-radio access) 기술을 포함한 일부 애플리케이션에서는 적합하지 않을 수 있다. 종래의 상쇄 펄스 애플리케이션은 과거 및 미래의 상쇄 펄스를 현재의 상쇄 펄스와 상관시켜, 일부 애플리케이션에서, 적용된 복소 게인에 따라 피크를 과대(over) 또는 과소(under) 억제한다. 상기 상관은 레이턴시와 복잡도도 증가시키는 다중 패스(multiple pass)를 수반하여, 제한 없이 다중 무선 액세스 기술을 포함한 일부 애플리케이션에서는 적합하지 않을 수 있다.
후술하는 CFR은 제한 없이 다중 무선 액세스 기술을 포함한 일부 애플리케이션에 대해 충분한 성능을 갖는 단일 스테이지 및 단일 패스에서 행해질 수 있다. 보다 구체적으로, 복소 상쇄 펄스 게인을 생성하는 피크 엔진에 대해 설명한다. 상기 피크 엔진은 성능을 향상시키기 위해 예측 기능(look-ahead)을 가질 수 있다. 더욱이, 상기 피크 엔진은 검출된 피크에 대해 피트(fit)를 수행할 뿐만 아니라, 부분적 오프셋을 지원하도록 구성될 수 있다. 또, 단일 패스에서의 상쇄를 위해 보다 정확한 상쇄 펄스를 생성하는 상쇄 펄스 발생기에 대해 설명한다.
앞의 일반적인 이해를 염두에 두고, 상쇄 펄스-CFR 엔진에 대한 다양한 구성에 대해 개괄적으로 이하에 설명한다.
전술한 예들 중 하나 이상이 여기에서 특정 타입의 IC를 사용해 설명되기 때문에, 상기 IC의 상세한 설명을 이하에 제공한다. 그러나, 다른 타입의 IC도 여기에 설명하는 기술들 중 하나 이상으로부터 유익을 얻을 수 있음은 물론이다.
프로그래머블 로직 디바이스(programmable logic device, "PLD")는 지정된 논리 함수를 수행하도록 프로그래밍될 수 있는 잘 알려진 타입의 집적 회로이다. PLD의 일종인 필드 프로그래머블 게이트 어레이("FPGA")는 통상 프로그래머블 타일 어레이를 포함한다. 이들 프로그래머블 타일은, 예컨대 입출력 블록(input/output block, "IOB"), 구성 가능한 로직 블록(configurable logic block, "CLB"), 전용 랜덤 액세스 메모리 블록("BRAM"), 멀티플라이어, 디지털 신호 프로세싱 블록("DSP"), 프로세서, 클록 매니저, 지연 고정 루프(delay lock loop, "DLL") 등을 포함할 수 있다. 본 명세서에서 사용되는 "포함한다" 및 "포함하는"은 제한 없이 포함하는 것을 의미한다.
각각의 프로그래머블 타일은 통상 프로그래머블 상호접속부 및 프로그래머블 로직을 다 포함한다. 프로그래머블 상호접속부(programmable interconnect)는 통상 프로그래머블 상호접속점(programmable interconnect point, "PIP")에 의해 상호접속되는 다양한 길이의 다중 상호접속 라인을 포함한다. 프로그래머블 로직은 예컨대, 함수 발생기, 레지스터, 산술 로직 등을 포함할 수 있는 프로그래머블 소자를 이용해서 사용자 설계 로직을 구현한다.
프로그래머블 상호접속부 및 프로그래머블 로직은 통상, 프로그래머블 소자들의 구성 방법을 정의하는 내부 구성 메모리 셀에 구성 데이터의 스트림을 로딩함으로써 프로그래밍된다. 구성 데이터는 메모리로부터(예, 외부 PROM으로부터) 판독되거나 외부 디바이스에 의해 FPGA에 기입될 수 있다. 그런 다음 개별 메모리 셀의 집단 상태(collective state)가 FPGA의 기능을 결정한다.
다른 타입의 PLD는 복합 프로그래머블 로직 디바이스, 즉 CPLD(Complex Programmable Logic Device)이다. CPLD는 2개 이상의 "기능 블록"을 포함하고, 이들 블록은 서로 접속되고 상호접속 스위치 매트릭스에 의해 입출력("I/O") 리소스에 접속된다. CPLD의 각각의 기능 블록은 프로그래머블 로직 어레이("PLA")와 프로그래머블 어레이 로직("PAL") 디바이스에서 사용된 것과 유사한 2레벨 AND/OR 구조를 포함한다. CPLD에서는, 구성 데이터가 통상 비휘발성 메모리 내의 온칩(on-chip)에 저장된다. 일부 CPLD에서는, 구성 데이터가 비휘발성 메모리 내의 온칩에 저장된 다음, 초기 구성 (프로그래밍) 시퀀스의 일부로서 휘발성 메모리에 다운로드된다.
이들 프로그래머블 로직 디바이스("PLD")의 전체에 있어서, 디바이스의 기능은 그 용도에 맞게 디바이스에 제공되는 데이터 비트에 의해 제어된다. 데이터 비트는 휘발성 메모리(예, FPGA 및 일부 CPLD의 경우와 같이, 스태틱 메모리 셀)에, 비휘발성 메모리(예, 일부 CPLD의 경우와 같이, 플래시 메모리), 또는 기타 타입의 메모리 셀에 저장될 수 있다.
다른 PLD는 디바이스 상의 다양한 소자들을 프로그래밍 가능하게 상호접속하는, 금속층 등의 프로세싱층을 적용하여 프로그래밍된다. 이들 PLD는 마스크 프로그래머블 디바이스로서 알려져 있다. PLD는, 예컨대 퓨즈 또는 안티퓨즈 기술을 이용해서 다른 방식으로도 구현될 수 있다. 용어 "PLD"와 "프로그래머블 로직 디바이스"는 이들 예시적인 디바이스를 포함하나 이들에 한정되지 않으며, 부분적으로만 프로그래밍 가능한 디바이스도 망라한다. 예컨대, 일종의 PLD는 하드코딩된(hard-coded) 트랜지스터 로직과, 그 하드코딩된 트랜지스터 로직을 프로그래밍 가능하게 상호접속하는 프로그래머블 스위치 패브릭과의 조합을 포함한다.
전술한 바와 같이, 고급형 FPGA는 어레이 내에 여러 상이한 타입의 프로그래머블 로직 블록을 포함할 수 있다. 예컨대, 도 1은 멀티 기가비트 송수신기(multi-gigabit transceiver, "MGT")(101), 구성 가능한 로직 블록("CLB")(102), 랜덤 액세스 메모리 블록("BRAM")(103), 입출력 블록("IOB")(104), 구성 및 클록킹 로직("CONFIG/CLOCKS")(105), 디지털 신호 프로세싱 블록("DSP")(106), 전용 입출력 블록("I/O")(107)(예, 구성 포트 및 클록 포트), 및 디지털 클록 매니저, 아날로그-디지털 컨버터, 시스템 모니터링 로직 등의 기타 프로그래머블 로직(108)을 비롯한 다수의 상이한 프로그래머블 타일을 포함하는 FPGA 아키텍처(100)를 나타내고 있다. 일부 FPGA는 또한 전용 프로세서 블록("PROC")(110)도 포함한다.
일부 FPGA에 있어서, 각각의 프로그래머블 타일은 각각의 인접한 타일 내의 대응하는 상호접속 소자에 대해 표준화된 접속부를 구비한 프로그래머블 상호접속 소자("INT", programmable interconnect element)(111)를 포함한다. 따라서, 함께 취급되는 프로그래머블 상호접속 소자들은 예시하는 FPGA에 대한 프로그래머블 상호접속 구조를 구현한다. 프로그래머블 상호접속 소자(111)는 도 1의 상단부에 포함된 예에서 보여주는 바와 같이, 동일한 타일 내의 프로그래머블 로직 소자에 대한 접속부를 포함한다.
예컨대, CLB(102)는 단일 프로그래머블 상호접속 소자("INT")(111)와 함께, 사용자 로직을 구현하도록 프로그래밍될 수 있는 구성 가능한 로직 소자("CLE")(112)를 포함할 수 있다. BRAM(103)은 하나 이상의 프로그래머블 상호접속 소자와 함께, BRAM 로직 소자("BRL")(113)를 포함할 수 있다. 통상, 한 타일 내에 포함된 상호접속 소자의 수는 타일의 높이에 종속된다. 도시하는 예에 있어서, BRAM 타일은 CLB 5개의 높이와 같지만, 다수 개수(예, 4개)가 사용될 수도 있다. DSP 타일(106)은 적절한 수의 프로그래머블 상호접속 소자와 함께, DSP 로직 소자("DSPL")(114)를 포함할 수 있다. IOB(104)는 예컨대 한가지 사례의 프로그래머블 상호접속 소자(111)와 함께, 두가지 사례의 입출력 로직 소자("IOL")(115)를 포함할 수 있다. 당업자에게는 분명하겠지만, 예컨대 I/O 로직 소자(115)에 접속되는 실제 I/O 패드는 입출력 로직 소자(115)의 영역으로 제한되지 않는다.
도시하는 실시형태에서는, 다이(도 1에 도시)의 중심에 인접한 수평 영역이 구성, 클록, 및 기타 제어 로직에 이용된다. 이 수평 영역 또는 열로부터 확장되는 수직 열(109)은 FPGA의 폭에 걸쳐 클록 및 구성 신호를 분배하는데 이용된다.
도 1에 예시하는 아키텍처를 활용한 일부 FPGA는 FPGA의 많은 부분을 구성하는 규칙적인 원주형 구조를 붕괴시키는 추가 로직 블록을 포함한다. 이 추가 로직 블록은 프로그래머블 블록 및/또는 전용 로직일 수 있다. 예를 들어, 프로세서 블록(110)은 CLB 및 BRAM의 여러 개의 열로 확장된다.
도 1은 예시적인 FPGA 아키텍처를 도시하는 목적만 있음을 알아야 한다. 도 1은 예시적인 FPGA 아키텍처를 도시하는 목적만 있음을 알아야 한다. 예를 들어, 도 1의 상단부에 포함된, 한 행의 로직 블록 수, 행의 상대적 폭, 행의 수와 순서, 행에 포함된 로직 블록의 타입, 로직 블록의 상대적 크기, 및 상호접속부/로직 구현은 순전히 예시이다. 예를 들어, 실제 FPGA에서는 CBL의 복수 개의 인접한 행은 사용자 로직의 유효한 구현을 용이하게 하기 위해 CLB가 보이는 곳이라면 통상 포함되지만, 인접한 CLB 행의 수는 FPGA의 전체 사이즈에 따라 변한다.
도 2는 예시적인 종래의 윈도우-CFR 엔진(200)을 도시하는 블록도이다. 전송될 입력 신호(201)는 일반적으로 전송될 신호의 기저대역 표현으로서 간주될 수 있다. 통상 입력 신호(201)는 복소 형태(complex form)로 되어 있다.
입력 신호(201)는 크기 컨버터(magnitude converter)(203)에의 입력으로서 그리고 멀티플라이어(205)에의 입력으로서 제공된다. 크기 컨버터(203)의 출력은 사실상 입력 신호(201)의 크기 또는 엔벨로프이며, 이 출력은 제1 가산기(207)의 플러스 포트에 입력으로서 제공된다. 가산기(207)에의 다른 입력은 고정된 임계치, T(209)이며, 가산기(207)의 마이너스 포트에 입력으로서 제공될 수 있다. 가산기(207)로부터 출력된 이러한 합이 마이너스 값이면, 입력 신호(201)의 피크가 임계치(T)를 초과하지 않았다. 그러나, 입력 신호(201)의 피크가 임계치(T)를 초과하였다면, 가산기(207)의 출력은 플러스 값이다.
가산기(207)로부터 출력된 합은 제2 가산기(211)에 입력으로서 제공된다. 가산기(211)에의 다른 입력은 가중치 가산기(weights adder)(213)로부터의 출력이다. 가산기(211)의 출력은 최대 진폭 블록(215)에 입력으로서 제공된다. 최대 진폭 블록(215)으로부터의 비복소 출력(non-complex output)이 지연 체인 또는 시프트 레지스터("가중치 블록")(217)에 입력으로서 제공된다. 가중치 블록(217)으로부터의 탭은 가중치 가산기(213)에의 가중치(w2, w1, wO)와 가중치 가산기(223)에의 가중치(w2, w1, wO, w1, w2) 등의 가중치를 제공하는데 이용된다. 가중치 블록(217)으로부터의 출력과 마찬가지로, 가중치 가산기(223)로부터 출력된 가중치는 모두 크기 신호이다. 가중치 가산기(223)는 또한 게인 1(unity) 스케일링 입력 신호(221)도 수신한다. 가중치 가산기(223)로부터의 출력은 멀티플라이어(205)에 게인 스케일링 입력으로서 제공된다. 멀티플라이어(205)로부터의 출력은 전송될 출력 신호(225)이다. 사실상, 출력 신호(225)는 이하에 추가로 상세하게 설명하겠지만, 입력 신호(201)의 게인 스케일링된 버전이다.
가산기(207)로부터의 출력이 마이너스 값이면, 가중치 가산기(223)에 대한 1 스케일링 입력 신호(221)가, 가중치 가산기(223)로부터의 출력에 대한 스케일링 계수로서 이용된다. 따라서, CFR 출력 신호(225)의 이 스케일링된 부분에 대해, 상기 부분은 입력 신호(201)의 연관된 부분과 동일하다. 그러나, 가산기(207)로부터의 출력이 플러스 값이면, 최대 진폭 블록(215)은 가중치 블록(217)에의 y에 대해 넌제로 출력값을 제공한다. 가중치 가산기(213, 223)는 최대 진폭 블록(215)으로부터의 상기 넌제로 출력값에 따라 시간적으로 분산된 또는 시간적으로 확산된 가중치 세트를 각각 수신한다. 가중치 가산기(223)는 상기 가중치를 더하여, 멀티플라이어(205)에의 입력에 대해, 사실상 "1 미만의" 스케일링 계수인 게인 신호를 제공할 수 있다. 가중치 가산기(213)는 가산기(211)에의 피드백 입력에 대해 수신된 가중치 세트를 더할 수 있다. 기본적으로, 가중치 가산기(213)의 출력은 입력 신호(201)의 과거 부분이 현재 스케일링 계수에 얼마나 많은 기여도로 기여하고 있는지를 나타내기 위해, 예컨대 오버랩핑 피크의 원인이 되는지를 나타내기 위해 제공된다.
유감스럽게도, 이러한 종래의 저가 윈도우 CFR 엔진(200)의 성능은 일부 애플리케이션에 대해 너무 낮을 수 있다. 예를 들어, PAR(peak-to-amplitude reduction) 대(verse) EVM(error vector magnitude)은 일부 애플리케이션의 경우 이러한 종래의 저가 윈도우 CFR 엔진(200)에서 너무 과소수행(underperforming)될 수 있다. 예를 들어, 충분히 폭넓은 스펙트럼 마스크를 얻기 위해서는, 가중치 가산기(223)로부터 출력된 게인 신호는 더 폭이 커져야 하거나 더 많이 확산되어야 하므로, 추가 스펙트럼 손실이 생길 수 있다. 더욱이, 이러한 종래의 저가 윈도우 CFR은 예컨대 재생(regrowth) 또는 오버랩핑 신호의 원인이 되는 다중 스테이지를 이용하여, 복잡도가 더해지고 레이턴시가 증가할 수 있다.
이하에 추가로 상세하게 설명하겠지만, 상기 종래의 저가 윈도우 CFR 엔진(200)의 저가 특성을 많이 보존하면서 상기 종래의 저가 윈도우 CFR 엔진(200)을 능가하여 성능을 향상시키기 위해 상쇄 펄스("CP", cancellation pulse) 윈도잉 시스템(windowing system)이 제공될 수 있다. 후술하는 바와 같은 그러한 상쇄 펄스는 다중 스테이지의 복잡성을 피하는 단일 스테이지에서 이루어질 수 있다. 그러나, 이러한 상쇄 펄스도 1개 내지 3개의 스테이지에, 이어지는 종래의 윈도잉 CFR 스페이지를 이용할 수도 있다. 더욱이, 단일 상쇄 스테이지 펄스로 충분한 성능을 얻음으로써, 다중 상쇄 펄스를 이용하는 것과 연관된 복잡성을 피하는 것과 함께, 다중 상쇄 펄스를 가짐으로써 스펙트럼 성능이 열화되지는 않는다. 또한, 충분한 성능이 단일 스페이지에서 얻어져서 다중 스테이지 시스템과 대조적으로 레이턴시가 감소한다. 더욱이, 꼭 피크가 아닌 샘플에 대해서도 성능을 향상시키기 위해, 피크로부터의 부분적 오프셋과 함께, 피크를 식별하기 위한, 엔벨로프 파형의 2차 피트(quadratic fit)가 취득될 수 있다. 또한, 성능 향상을 위해 후술하는 바와 같이 피크 예측이 추가될 수 있다. 다음과 같이 3 샘플 간격에 대해 엔벨로프가 2차 방정식으로 근사되면,
y(n+d) = y(n) + d*dy(n)+d2*ddy(n),
여기서, d는 중심 샘플 y(n)로부터의 부분적 오프셋임,
y(n+1) = y(n) + dy(n) + ddy(n),
y(n-1) = y(n) - dy(n) + ddy(n)이다.
따라서, 이와 연관된 관찰 파형을 피트하기 위한 dy(n)과 ddy(n)가 결정될 수 있는데,
dy(n) = (y(n-1) - y(n+1))/2,
ddy(n) = (y(n)-y(n-1)/2-y(n+1)/2)
가 각각 결정될 수 있다. y(n+d)를 d로 미분함으로써, 상기 파형의 피크를, 이하에 추가로 상세하게 설명하는 바와 같이 찾을 수 있다. 이 미분 결과를 제로와 같게 함으로써, 피크 오프셋 위치(d)를 찾을 수 있고, 이 d 값은 피크치를 구하기 위해 미분 방정식에 치환될 수 있다.
본 명세서의 다른 곳에서 설명하는 바와 같이 보간을 사용하면, 오버샘플링된 것처럼 그 피크를 찾아내는 정확도가 높아진다. 낮은 샘플링 레이트에서 피크치들을 산출 또는 달리 결정함으로써, 이러한 위치의 결정에 드는 시간 및 수고(예, "산출률")가 상당히 저감될 수 있다.
본 명세서의 다른 곳에서 설명하는 바와 같이 신호의 진폭 및 위치가 식별된 후에는, 정확한 CP 게인을 생성하기 위해 피크의 위상이 찾아질 수 있다. 이것은 본 명세서의 다른 곳에서 설명하는 바와 같이 다수의 방법 중 임의의 방식으로 행해질 수 있다.
부가적으로, 신호는 복소 도메인에서 행해진 2차 피트를 가질 수 있고, 대응하는 2차 보간은 결정된 피크 위치에서 복소 진폭을 생성하기 위해 구해진 오프셋(d)와 함께 이용될 수 있다. 대안적으로 또는 선택적으로, 피크의 크기가 이용될 수 있고, 최근접 샘플 위상은 합성 복소 CP 게인을 구하는데 이용될 수 있다.
다음의 설명은 명확함을 위해 제한이 아니라 예시적으로 FPGA에 관해 이루어지지만, 여기에서의 설명이 FPGA에 한정되지는 않는다. 그보다는, ASIC, ASSP, FPGA, 또는 기타 집적 회로든 어떤 집적 회로도 이용될 수 있다.
단일 스테이지 재귀적 상쇄 펄스가 CFR, 즉 단일 스페이지의 재귀적 상쇄 펄스-CFR("CPCFR") 엔진에 이용될 수 있다. 이러한 방식으로, 필터링은 하나 이상의 캐리어 구성에 "클린업(clean-up)" 스테이지가 이어지는 CIC(cascaded integrator-comb) 필터 구조와 함께 이용될 수 있다. "클린업" 스테이지는 일반적으로 대략 1 데시벨 미만 감소로 성능면에서 감소가 작은 종래의 윈도우 CFR를 이용할 수 있다다.
도 3은 예시적인 CPCFR 엔진(300)을 도시하는 블록도이다. CPCFR 엔진(300)은 도입되는 전체 왜곡(예, ACLR, EVM)을 감소시키면서 전력 증폭기에서의 클립핑(clipping)을 감소시키고/시키거나 전력 증폭기의 효율을 높이기 위해 기지국, 또는 송신기를 구비한 다른 시스템에서 이용될 수 있다. 또, CPCFR 엔진(300)은 송신용 안테나에 제공되는 RF 전력의 양을 저감시키는 데에 이용될 수도 있다. 다대역 및 다중 반송파 시스템에서는 PAR(peak-to-average ratio)가 매우 높을 수 있다(예, 12 dB 이상). CPCFR 엔진(300)은 예컨대 5 내지 8 dB의 범위로 PAR를 실질적으로 감소시키는데 이용될 수 있다.
CPCFR 엔진(300), 또는 이하에 설명하는 CPCFR 엔진의 다른 예들은, 제한 없이 하나 이상의 디지털 신호 프로세서, ASIC, ASSP, 및/또는 FPGA를 포함한 하나 이상의 IC에서 구현될 수 있다. 예를 들어, FPGA 구현의 경우, 예컨대 본 명세서에서 설명하는, CPCFR 엔진의 피크 엔진(315) 또는 다른 구성요소는 도 1의 FPGA(100)의 DSP 블록 또는 슬라이스(106)를 이용하여 구현될 수도 있다. 그러나, 또 다른 구현에서는 FPGA의 다른 유형의 멀티플라이어 및/또는 가산기 프로그래머블 하드 매크로, 디지털 신호 프로세서, ASIC, 또는 ASSP, 또는 다른 유형의 IC가 이용될 수도 있다. CPCFR 엔진(300)의 FPGA 구현의 장점은, 다른 보다 정적인 또는 재구성 불가능한 구성들 중에서도, 일반적으로 ASIC 및 ASSP과 대조적으로, 무선 아키텍처 및 그 시스템 파라미터에 맞게 재구성될 수 있다는 것이다. 이러한 방식으로, FPGA 구현은 상이한 대역 레이아웃 및/또는 다중 무선 액세스 기술("멀티-RAT")을 수용하도록 맞춤화될 수 있다. 멀티-RAT의 예는 WCDMA, LTE5, LTE10, LTE20, EDGE, GSM, CDMA2000, 및 FH GSM을 지원하는 기지국이다. 암시적(implied) RAT에 대한 다른 기술들 중에서도, OFDM에서의 미사용 사용자 채널 및 미사용 톤으로의 데이터의 삽입 등의 다른 CFR 기술은, 예컨대 다중 표준(multi-standard) 및/또는 다대역 시스템에 적용 가능한 PAR에 대해, CPCFR 엔진(300)에 앞서 전체 시스템 성능을 향상시키기 위해 기술하는 CFR 블록에 앞서 채택될 수 있으며, CFR 동작을 구성에 맞게 구성하는데 이용될 수 있는 파라미터 이외에, 송신기 변조 포맷과는 무관할 수 있다.
계속해서 도 3을 참조하면, CPCFR 엔진(300)은 상쇄 펄스(361)와 상쇄 펄스(362)를 제공하도록 구성된 유한 임펄스 응답 필터(360)를 포함한다. CPCFR 엔진(300)은 가산기(311, 305), 피크 엔진(315), 및 지연기(354)를 더 포함할 수 있다.
가산기(311)가 입력 신호(201)와 상쇄 펄스(361)를 수신하여 차분 신호(335)를 제공하도록 연결된다. 이런 방식으로, 입력 신호(201)는 가산기(311)의 플러스 포트에 제공될 수 있고, 상쇄 펄스(361)는 가산기(311)의 마이너스 포트에 제공될 수 있다. 선택적으로, 가산기(311)는 감산기로서 간주될 수도 있다.
피크 엔진(315)이 차분 신호(335)를 수신하도록 연결될 수 있다. 피크 엔진(315)은 차분 신호(335)에 응답하여 상쇄 펄스값(336)을 제공하도록 구성될 수 있다. 피크 엔진(315)은, 차분 신호(335)가 마이너스 또는 제로이면, 즉 입력 신호(201)가 임계치(T) 이하이면, 사실상 1인 상쇄 펄스값(336)을 제공할 수 있다. 그러나, 차분 신호(335)가 제로보다 크다면, 피크 엔진(315)는 가중에 따라 복소 상쇄 펄스(362)를 조정하기 위한 상쇄 펄스값(336)을 제공할 수 있다. 상쇄 펄스(362)는 단지 어떤 크기(magnitude)가 아니라, 오히려 상쇄 펄스("CP")값 또는 게인(362)에 따라 제공되는 펄스 파형이다. 상쇄 펄스(361)는 과거 또는 이전 상쇄 펄스 기여도(contribution)와 연관되며, 상쇄 펄스값(336)은 현재 처리되는 입력 신호(201)에 대한 상기 과거 상쇄 펄스 기여도에 따라 재귀적으로 업데이트될 수 있다. 따라서, 상쇄 펄스(361, 362) 각각의 업데이트된 인스턴스가 제공될 수 있다.
유한 임펄스 응답("FIR", finite impulse response) 필터(360)는 이하에서 추가로 상세하게 설명하겠지만, 상쇄 펄스값(336)을 지연 라인(317)에서 수신하여 상쇄 펄스(361) 및 상쇄 펄스(362)를 제공하도록 연결될 수 있다. 지연 라인(317)은 레지스터 지연기(340 내지 344) 등의 복수의 지연기로 구성될 수 있으며, 이들 지연기는 탭(330 내지 333)과 같은, 지연기들 사이의 각각의 탭과 그리고 마지막 탭(334)이 직렬로 연결되어 있다. 예시적으로 5개의 지연기를 도시하고 있지만, 5개 미만 또는 5개 이상의 지연기가 이용될 수도 있다.
지연 라인(317)은 FIR 필터(360)의 증폭-합산 블록(313, 323) 사이에 연결될 수 있다. 지연 라인(317)의 상기 탭의 일부로부터, 가중치 세트(351)가 FIR 필터(360)의 증폭-합산 블록(313)에 제공될 수 있고, 지연 라인(317)의 상기 탭의 다른 부분으로부터, 다른 가중치 세트(352)가 FIR 필터(360)의 다른 증폭-합산 블록(323)에 제공될 수 있다. 이 예에 있어서, 탭(330 내지 332)은 증폭-합산 블록(313)에 각각 연결되어 가중치 세트(351)를 형성하는 가중치(w2 내지 wO)를 각각 제공하고, 탭(330 내지 334)은 증폭-합산 블록(323)에 각각 연결되어 가중치 세트(352)를 형성하는 가중치(w0 내지 w2)를 각각 제공한다. 그러나, 다른 구현에서는, 다른 탭 세트가 이용될 수도 있다. 또, FIR 필터(360)는 제한 없이, 복잡성을 줄이는 계수화 필터(factored filter)를 비롯한 다양한 구성 중 임의의 것을 가질 수도 있다. 이러한 계수화 필터의 예는 CIC(cascaded integrator-comb) 필터를 포함하지만, 다른 FIR 축감 하드웨어 구현이 이용될 수도 있다.
지연기(354)가 입력 신호(201)를 수신하여 지연된 입력 신호(355)를 제공하도록 연결될 수 있다. 사실상, 지연기(354)는 상쇄 펄스 지연기로서 간주될 수 잇는데, 즉 현재 입력 신호(201)에 대한 지연된 입력 신호(355)로서 가산기(305)에 동일한 시간 윈도우 내에 도달하도록 상기 현재 입력 신호(201)에 대해 생성된 상쇄 펄스(362)를 갖기 위하여 사용되는 지연기이다. 상쇄 펄스(362)는 가산기(305)의 마이너스 포트에 제공될 수 있고, 지연된 입력 신호(355)는 가산기(305)의 플러스 포트에 제공될 수 있다. 가산기(305)의 출력은 차분 신호(325)로서, 상기 지연된 입력 신호(355)의 파고율 저감 버전이다.
피크 엔진(315)은 임계 피크치(T)를 갖게 구성될 수 있다. 예컨대, 입력 신호(201) x(n)와 상쇄 펄스(361) c(n)가 차분 신호(335) y(n)를 생성하면, 즉 y(n) = x(n) - c(n)이면, 피크 엔진(315)의 연산은 다음과 같이 수학적으로 표현될 수 있다.
Figure 112016059118106-pct00002
여기서 T는 임계 피크치이다. 이에, 피크가 T보다 크지 않는 입력 신호 x(n)의 경우, 피크 엔진(315)으로부터 출력된 상쇄 펄스값(336)은 1이고, 피크가 T보다 큰 입력 신호 x(n)의 경우, 피크 엔진(315)으로부터 출력된 상쇄 펄스값(336)은, x(n)의 진폭의 절대값으로 T를 나눈 크기이다.
하나 이상의 과거의 상쇄 펄스의 적용 및 현재 입력 신호(201)로부터의 상기 과거의 상쇄 펄스 기여도의 차감을 포함할 수 있는, 과거의 상쇄 펄스 기여도의 생성에 따른 재귀적 또는 피드백 연산에 맞게 CPCFR 엔진(300)이 구성되기 때문에, 차분 신호(355)는 사실상, 만약 있다면, 상기 하나 이상의 과거의 상쇄 펄스의 기여도에 기초하여 현재 샘플에 대한 얼마나 많은 기여도가 적용될 것인지를 나타낸다. 예컨대, 오버샘플링 레이트가 2인 신호 반송파의 경우, 상쇄 펄스는 24개 이하의 샘플일 수 있다.
선택적으로, 피크 엔진(315)은 또한 CPCFR 엔진(300)의 성능을 향상시키기 위해 하나 이상의 미래의 기여도를 "예측(look-ahead)"하도록 구성될 수도 있다. 예측 기능에 있어서, 입력 신호(201)의 다음 샘플이 임계치(T)를 넘으면, 생성된 상쇄 펄스에서 상호작용의 영향을 찾기 위해 조합된 2개의 샘플이 검사될 수 있다. 이러한 샘플들은 높게 상관될 수도 있고, 상쇄 펄스(361)가 마찬가지로 상관될 수도 있다. 피크 엔진(315)에 의한 피크 프로세싱을 단순화하기 위해, 크기 데이터만이 처리될 수 있다고 간주되는 간격에서는 신호 위상이 일정하다고 상정한다. 현재 피크는 하나 이상의 미래의 펄스 상쇄 펄스에 의해 영향을 받을 수 있다. 이러한 이유에서, 현재 샘플링된 입력 신호(201)에 대한 펄스 진폭의 피크 엔진(615)에 의한 결정의 예측이 성능 향상에 유용할 수 있다.
현재 샘플이 임계치(T)보다 크다면 그리고 다음 샘플도 임계치(T)보다 크다면, 이 이벤트의 상태는 상기 현재 샘플의 진폭에 영향을 미치고, 타겟 임계치에 대해 에러를 도입하여, 입력 신호의 현재 샘플의 진폭을 과대 감소시킬 수 있는데, 즉 과대 상쇄시킬 수 있다. 피크 엔진(315) 내의 예측 블록(380)은 이러한 에러를 감소시키는데 이용될 수 있다. 이러한 방식으로, PAR 타겟의 훼손 없이 약 1 dB의 EVM가 복구될 수 있다. 명확함을 위해 제한이 아니라 예시적으로, 이하에서는 CFR가 성능을 향상시키기 위해 단일 샘플의 예측만을 고려하기로 한다. 그러나, 다른 구현에서는, 복수의 샘플의 예측도 이용될 수 있다.
부가적으로, 제한이 아니라 명확함을 위해, 임계치를 초과한 미래의 샘플들의 크기만이 현재 샘플에 대한 상쇄 펄스의 크기를 결정하는 데에 고려될 수 있도록 그 임계치를 초과한 미래의 샘플들이 현재의 샘플과 동일한 위상에 속한다고 상정한다. 과거 및 미래의 결정은, 그에 대한 CP가 오버랩핑될 수도 있기 때문에, 사용되는 바람직한 피크 상쇄에 영향을 미칠 수 있다. 임계치보다 낮을 신호를 상쇄시킴과 함께, 하나 이상의 상쇄 펄스가 주입하는 에너지의 양이 감소 또는 최소화될 수 있다.
k 샘플 예측으로부터 시간 n에서의 과거의 CP 기여도를 갖는 신호는 y_e(n,k)로서 정의될 수 있다. 이 예에서는, 제공되는 1 내지 2개의 샘플의 예측이 충분하였다. y_e(n,1) > 임계치(T)이면, 상쇄가 적용될 수 있다. 이 상쇄는 제공되는 미래의 CP로부터 제공될 수 있지만, 상기 미래의 CP는 현재의 y_e(n,0)와 비교해 충분히 크다. 현재의 CP 크기는 예측된 CP 크기를 이용해서 결정될 수 있다. 미래의 CP가 무시되었다면, 현재의 CP 값은 수학적으로 다음과 같이 표현될 수 있다.
c(n) = |y_e(n,0)|- T y_e(n,0)/|y_e(n,0)|
임의의 미래의 샘플을 고려하지 않는다면, 현재의 상쇄 펄스 c(n)는 연관된 입력 샘플의 위상을 매칭시키기 위해 회전된 위상을 가진, 임계치(T)를 초과한 과거 샘플의 CP 기여도를 현재의 샘플에서 뺀 크기를 가질 수 있다. 하나 이상의 미래의 샘플이 고려되면, 상쇄 펄스 게인 c(n:n+L-1)이 결정될 수 있으며, 여기서 L은 예측값이다. 이러한 방식으로, 다음을 만족하는 c(n:n+L-1) 벡터를 찾을 수 있다.
Figure 112016059118106-pct00003
를 최소화
조건:
Figure 112016059118106-pct00004
다시 말해, 현재의 예측 신호로부터 과거의 c(n)의 기여도를 뺀 것이 결정될 수 있고, 미래의 c(n)의 기여도는, 출력이 차분 신호(335)를 생성하는데 이용되는, 길이 2M+1의 필터 함수(w)를 이용하여 차감될 수 있는데, 여기서 M은 0보다 큰 양의 정수이다. 선택된 샘플 크기 전체를 T 미만의 값으로 유도하기에 충분한 최소치, 또는 적어도 실질적으로 감소된, 에너지 c(n:n+L-1)를 찾을 수 있다. 이것은 수학적으로 다음과 같이 표현될 수 있다.
Figure 112016059118106-pct00005
를 최소화
조건:
Figure 112016059118106-pct00006
상기 수식은 QCQP(quadratically constrained quadratic programing) 방정식이다. 따라서, 예측 블록(380)은 2차 프로그래밍(quadratic programming)을 이용하여 구현될 수 있다. 또한, 예측 블록(380)은 비선형 프로그래밍 함수를 생성하는 다른 방식들 중에서, 룩업 테이블을 이용하여 구현될 수 있다. 그러나, 이하에 추가로 상세하게 설명하겠지만, 상기 예측 블록(380)은 선형 프로그래밍을 이용하여 구현되도록 단순화될 수 있으며, 하나 이상의 추가 단순화를 포함할 수도 있다.
명확함을 위해, 이러한 방정식의 세트는 현재의 샘플 및 다음의 샘플만 고려하도록 단순화될 수도 있다. 이것은 일련의 나열 조건으로 행해질 수 있다. 이러한 방정식의 프로세싱을 단순화하기 위해서, w(M) == 1 > w(M+1 :end)를 상정할 수 있다. 이러한 샘플들의 위상이 y_e(n,k) 값에서 같다고 하면, c 벡터는 실수치가 된다. 이 상정은 다음과 같이, 결정을 선형성 문제 쪽으로 더 많이 축소시킨다.
Figure 112016059118106-pct00007
를 최소화
조건:
Figure 112016059118106-pct00008
xTx를 최소화
조건:
Figure 112016059118106-pct00009
이 더욱 선형적인 방정식은 KKT(Karush-Kuhn-Tucker) 조건을 이용해서 더욱 조작될 수 있으며, 즉
Figure 112016059118106-pct00010
여기서, 여유 변수(slack variable) u, y, v가 도입된다.
KKT 조건을 사용하면 결정을 선형 프로그래밍 문제로 축소시킬 수 있다. 이러한 선형 프로그래밍 문제는, 대상으로 하는 간격에서 위상이 일정하다고 상정하여 실수치 최적화를 유도함으로써 단순화될 수 있다. 그런 후 c 값은 현재의 샘플 포인트에서 입력 신호를 매칭시키기 위해 현재의 샘플 위상을 이용해 회전된 위상일 수 있다. 이것은 다음과 같이 수학적으로 표현될 수 있다.
Figure 112016059118106-pct00011
를 최소화
조건:
Figure 112016059118106-pct00012
이상은 합의 제곱치가 아니라 실수치 CP 진폭의 합을 최소화함으로써 더욱 단순화될 수 있다.
따라서, 예측 블록(380)은 실수치 데이터를 이용하는 선형 프로그래밍 함수일 수 있다. 이런 식으로, 간단한 샘플 예측을 이용하면, 예측 블록(380)을 구비한 CPCFR 엔진(300)에 의한 단일 패스 CFR은 예측 블록(380) 없는 CPCFR 엔진(300)보다, 2개의 선 사이에 분리가 적은 이상적인 기울기에 가까운 선형 PAR 대 EVM 기울기를 가질 수 있으며, 즉 향상된 성능을 가질 수 있다. 그러나, 2차 프로그래밍이나 심지어 선형 프로그래밍에 의해 제공되는 성능은 모든 애플리케이션에서 필요로 하지 않을 수 있고, 선택에 따라 심지어 덜 복잡한 예측 블록(380)이 이용될 수도 있다.
예측 블록(380)은, 미래의 샘플들을 고찰하고, 임계치(T)보다 높거나 초과한 그 샘플들을 양자화한 다음, 이들 양자화된 미래 샘플들을 회고하며, 이들을 현재의 샘플에 적용하여 현재의 CP 복소 게인(336)을 선택하는데 있어서 미래 및 과거 기여도의 적어도 일부, 예를 들어, 미래 및 과거의 기여도의 대부분을 제거하도록 구성될 수 있다. 샘플 포인트들 사이에서 입력 신호(201) 값들을 처리하기 위해, 부분적 지연과 관련하여 현재의 피크가 찾아질 수 있으며, 현재의 샘플로부터 동일한 부분적 오프셋으로 CP가 생성될 수 있다. 샘플 보간된 CP 테이블이 이러한 부분적 오프셋에 이용될 수 있다. 부분적 샘플 및 CP 보간의 추정에 대해서는 이하에서 추가로 상세하게 설명한다.
신호가 보간되면, 임계치를 초과한 피크가 샘플 포인트들 사이에 발생할 수 있다. 이하에서 추가로 설명하겠지만, 보간된 데이터는 과도한 CP를 사용하지 않고서 임계치(T) 아래에 있도록 조정될 수 있다. 이러한 방식으로, 샘플링된 포인트 진폭이 조정될 수 있고, 이들 조정된 샘플 포인트 진폭은 CP 게인을 결정하는데 이용될 수 있다. 예컨대 시프트 레지스터를 포함할 수 있는 종래의 증폭-합산 블록(313, 312)은 부분적 오프셋을 제공할 수 없다.
도 4는 예시적인 상쇄 펄스 발생기("CPG", cancellation pulse generator)(400)를 도시하는 블록도이다. CPG(400)는 이하에 추가로 상세하게 설명하겠지만, 증폭-합산 블록 대신에 이용될 수도 또는 증폭-합산 블록과 함께 이용될 수도 있다. CPG(400)은 부분적 오프셋과 함께, 즉 실제 피크로부터 샘플링 포인트가 오프셋되는 곳들 사이의 비정수 차분을 조정하는데 이용될 수 있다. CPG(400), 또는 이것의 다른 구성은 제한 없이 하나 이상의 디지털 신호 프로세서, ASIC, ASSP, 및/또는 FPGA를 포함한 하나 이상의 IC에서 구현될 수 있다. 예를 들어, FPGA 구현의 경우, 예컨대 본 명세서에서 설명하는, 가산기-멀티플라이어 체인은 도 1의 FPGA(100)의 DSP 블록 또는 슬라이스(106)를 이용하여 구현될 수도 있다. 그러나, 또 다른 구현에서는 FPGA의 다른 유형의 멀티플라이어 및/또는 가산기 프로그래머블 하드 매크로, 디지털 신호 프로세서, ASIC, 또는 ASSP, 또는 다른 유형의 IC가 이용될 수도 있다.
제한이 아니라 명확함을 위해, 신호 x(n)는 연속 함수인 필터 h(t)에 의해 필터링되는 화이트 시퀀스라고 상정하고, CP 파형은 정수 시간 위치에서 평가되는 h(t)라고 상정한다. 피크 엔진(315)은 상쇄 펄스값 또는 CP 복소 게인(336)을 제공하기 위해 믿을 수 있고 정확하게 피크를 검출하고 피크 위치 및 진폭을 결정하도록 구성될 수 있다.
도 5는 예시적인 복소 CP 게인 생성 및 CP 생성 흐름(500)을 도시하는 흐름도이다. 도 3 내지 도 5를 동시에 참조하여, CPG(400) 및 CP 게인 생성 흐름(500)에 대해 더 설명한다.
CPCFR 엔진(300)은 사실상 신호가 높게 오버샘플링되는 아날로그 대응부와 정확히 비교해서 피크 및 그 진폭 전체를 식별하기 위해 입력 신호(201)의 대역폭보다 큰 샘플링 레이트에서 클록킹될 수 있다. 아날로그 도메인에서 CP에 의해 발생하는 임계치(T)를 초과한 모든 피크를 상쇄시키기 위해, 샘플링된 피크 주변의 피크 레벨이 최소 샘플링 레이트에서 최대 실효성으로 찾아질 수 있다. 이에, 이들 피크는 마치 훨씬 더 높은 샘플링 레이트가 사용된 것처럼 찾아질 수 있다. CPCFR 엔진(300)에서, 샘플링된 피크의 인근에서 "실제" 피크의 위치에서 보다 정확하게 복소 게인이 찾아질 수 있고, CP 게인은 정확한 CP에 부분적 시간 오프셋을 제공하도록 보간될 수 있다.
이 예에서, 1% 미만의 진폭 에러를 유도하는 하드웨어 에러가 이용되며, 이것은 그 에러가 측정 에러로 인한 CFR 프로세싱으로부터의 총 EVM 열화에 대해 약 -40 dB EVM를 유도하는 것을 나타낸다. 그러나, 다른 구현에서는 다른 유도 하드웨어 허용 에러가 이용될 수도 있다. 명확함을 위해 제한이 아니라 예시적으로, 입력 신호(201)는 가우시안이고, 또 이상적인 저역 통과 필터("LPF", low-pass filter)를 이용해 제한된 대역을 갖는다고 상정한다(즉, 임펄스 응답이 sinc 함수이다). 이에 이러한 신호의 자기상관(autocorrelation)도 역시 sinc 함수이다. 명확함을 위해 제한이 아니라 예시적으로, 상기 sinc (sinc(x)= sin(pi*x)/(pi*x)) 함수는 1% 진폭 에러의 시스템 경비(system budget)를 충족하기 위해 시간 오프셋 0.0781에서 0.99가 된다. 이러한 방식으로, 시간 정확성은 <0.08/BW이거나 나이퀴스트 샘플 레이트의 1/12 미만의 정규화된 부분일 수 있다.
501에서, 입력 신호(201)를 수신하도록 연결된 크기 블록(391)에 의해, 입력 신호(201)의 크기가 구해지고, 선택적으로 이렇게 구해진 크기가 제곱화될 수 있다. 입력 신호(201)의 크기 또는 크기 제곱치가 크기 블록(391)으로부터 피크 검출기(390)를 구동하도록 제공될 수 있다. 입력 신호(201)의 제곱화된 크기에 대한 검출은 그 대역폭("BW")이 원래 신호의 대역폭의 2배가 되게 하는데 이용될 수 있다. 이것은 피크 검출이 나이퀴스트 샘플링 레이트에서 또는 그것을 초과해서 행해질 수 있는 것을 나타낸다. 크기가 넓을수록, 더 높은 샘플링 레이트가 피크 엔진(315)의 피크 검출기(390)에 의해 이용될 수 있다.
502에서, 피크 검출기(390)는 피크를 찾거나 검출할 수 있고, 일 구현예의 정확도 파라미터 내에서 그와 연관된 임의의 부분적 시간 오프셋을 결정할 수 있다. 피크 검출기(390)는 예컨대 샘플링 클록 신호(명확성을 위해 도시하지 않음)에 대한 응답으로, 샘플 시퀀스에 2차 피트를 이용하여 피크치 및 그것의 부분적 시간 오프셋을 찾아내도록 구성될 수 있다.
피크가 피크 검출기(390)에 의해 샘플링된 것으로서 찾아지면, 503에서, 이러한 피크의 보간된 크기 및 보간된 위치는 다음과 같은 2차 피트 프로세스를 이용하여 찾아질 수 있다.
Figure 112016059118106-pct00013
Figure 112016059118106-pct00014
상기 2차 피트 프로세스에서의 분배(division)를 피하기 위해, 2 또는 3 텀(term) 테일러 급수를 이용하여 인버스(inverse)가 근사된다. 변수 a의 값이 ½과 1의 범위로 정규화되고, 동일한 스케일링 계수가 변수 b의 값에 적용된다. 전술한 바와 같이 상대 에러는 < 1%이고, 즉 대략 1%의 rms(root-mean-square) 에러가 구해질 수 있다.
2차 패로우 필터(second order Farrow filter)를 구비한 2차 피트(quadratic fit), 고차 미분기, 패로우 입력을 갖는 뉴턴 탐색(Newton search), 뉴턴 탐색에 의한 스플라인 보간(spline interpolation)이 이용될 수 있지만, 이들 각각은 일부 애플리케이션에 대해 너무 복잡할 수도 있다. 이러한 방식으로, 2로 오버 샘플링된 데이터에 대해 덜 복잡한 2차 보간을, 5개 이상의 샘플을 이용한 2차 패로우 필터 또는 미분기와 함께 이용할 수 있다. 503에서의 이러한 보간이 피크 검출기(390)에 구축될 수 있다.
이것이 선형 함수이기 때문에 오버샘플링이 상쇄 펄스에 적용될 필요는 없지만, 상기 CP 게인(336)은 그것의 산출을 위한 부분적 샘플 입력을 이용해서 구해질 수 있다. 상쇄 펄스는 원래 신호의 전체 대역폭에 걸쳐 임의의 오버샘플링 레이트에 있을 수 있다. 이러한 식으로, 상기 신호는 피크 보간을 이용하여 상당한 에일리어싱(aliasing) 왜곡을 피하기 위해 적어도 3만큼 오버샘플링될 수 있다. 그러나, 신호 크기 제곱치에 대한 2차 보간은 나이퀴스트 BW를 만족시키기 위해 2로 보간된 신호를 이용해서 충분하기 때문에, 피크 측정 정확도를 감소시킬 수 있는 에일리어싱 왜곡을 피할 수 있다.
504에서 결정된 바와 같이, 피크 검출기(390)에 의해 검출된 피크가 임계치(T)보다 큰 보간된 크기를 갖는다면, 505에서, 예컨대 CP 값(336)에 대한 복소 보간된 CP 값이 피크 엔진(315)의 보간기(392)에 의해 찾아질 수 있다. 예를 들어, 상기 검출된 피크 위치에 대한 최근접 샘플의 위상을 이용하여 상기 복소 보간된 CP 값(336)에 충분한 복소 진폭이 찾아질 수 있다. 예컨대, 패로우 필터에 대한 필터 계수는 샘플 포인트들 사이에 노트(knot)을 중간에 두고, 샘플링된 피크를 통과한 2차 피트를 이용하여, 또는 이렇게 2차 피트 샘플링된 피크의 한쪽에 노트를 둠으로써 생성될 수 있다. 노트 값은 4개 샘플의 최근접 세트를 통과한 3차 스플라인(cubic spline)을 이용해 찾아질 수 있다. 그러나, 다른 노트 위치가 이용될 수도 있고, 노트 값의 다른 결정이 이용될 수도 있다. 4x 오버샘플링된 신호를 이용해 최근접 피크를 선택하는 예를 계속하면, 성능에 있어서, 2배 오버샘플링에서의 진폭 정확도의 대략 9 dB 등의 향상이 얻어질 수 있다. 또한, 피크 위치 정확도에 있어서 대략 3 dB 등의 향상도 얻어질 수 있다. 이것은 복소 보간의 일례일 뿐이며, 복소 보간을 수행하는 다른 방법이 이용될 수도 있다. CP 게인을 결정하기 위해 보간에 의해 그렇게 추정된 피크에서의 상기 원래 신호의 복소 진폭에 대해, 이 포인트에서 보간에 의해 크기가 얻어졌다면, 505에서, 상기 복소 진폭에 대한 부분적 오프셋 값은 복소 데이터를 또는 최근접 샘플의 상기 위상을 이용하여 보간기(392)에 의한 상기 복소 보간에 포함될 수 있다.
그러나, 보간된 크기가 임계치(T)를 초과하지 않으면, 506에서, CP 게인이 1로 설정된다. 507에서, 전술한 바와 같이, CP 게인은 보간된 크기가 임계치(T)를 초과하는지의 여부에 따라 505 또는 506 중 하나로서 출력될 수 있다. 508에서는, 507에서 구해진 상기 CP 게인을 이용하여 CP가 생성될 수 있다. 상기 CP는 CPG(400)에 의해 생성될 수 있다. 509에서, 복소 CP와 같은 CP가 출력될 수 있다.
따라서, 보간된 피크 검출 및 복소 CP 게인에 대해 설명하였다. CFR 성능은 PAR 대 EVM 타겟을 충족시키는 CPCFR(300)를 통과한 단일 패스에서 적절할 수 있는데, 단일 패스는 종래의 다중 패스 CFR과 비교해서 레이턴스와 복잡도를 상당히 저감시킨다. 이러한 단일 패스는 CPG(400)의 이용을 포함할 수 있다. 그러나, 다중 CPG(400)는 일부 구현의 경우 레이턴스가 증가하지만 복잡도는 감소하여 더 나은 성능을 제공하기 위해 캐스케이딩될 수 있다.
전술한 바와 같이 부분적 시간 오프셋 d와 복소 CP 게인을 결정하였으면, 508에서 CP가 결정되거나 생성될 수 있다. 명확함을 위해 제한이 아니라 예시적으로, 부분적 시간 오프셋 정확도는 <0.08 샘플 정확도 또는 분해능의 약 4 비트를 수반하는 것을 상정하기로 한다. CP 메모리(413)에 저장된 연관된 다항식과 함께 2차 보간이 이용될 수 있다. 선택적으로, 저장에 이용될 메모리에서의 대략 3 또는 4 멀티플라이어의 증가를 피하기 위해 샘플 시간 데이터로부터 직접 보간 데이터를 이용하는 것이 더 효율적일 수도 있다. 보간 함수는 다음과 같이 기술될 수 있다.
Figure 112016059118106-pct00015
여기서 pi는 p0와 p1 사이에서의 타겟 오프셋 t에 의한 보간에 있어서 타겟 포인트 y(t) 근방의 알려진 포인트이다. 보다 일반적으로, 2차, 3차 또는 기타 보간 방법이 이용될 수 있지만, 이들 보간 타입은 대개 다음과 같이 표현될 수 있다.
Figure 112016059118106-pct00016
여기서,
Figure 112016059118106-pct00017
.
C는 사이즈 k x m의 실수 매트릭스이고, P=[p(n-1) p(n) p(n+1) ... p(n+m)]이다. 이 예에서, 최대치 K는 3이고, 이력 사이즈 m은 2이다.
CPG(400)은 샘플 시간 ACC(accumulator)(410), 어드레스 증분기 또는 시퀀서(401), CP 메모리 뱅크 또는 CP 메모리(413), 배럴 시프터(406), 보간 매트릭스트 M(407), 및 멀티플라이어-가산기 체인(415, 417)을 포함한다. 효과적인 호너법(Horner's method)을 이용한 멀티플라이어-가산기 체인(415, 417)이, 산출 및 다항식 감축을 위해 보다 직접적인 다항식 평가를 대체하도록 이용될 수 있다. 증폭-합산 블록(323)의 대체에 대한 CPG(400)의 설명으로부터, 다른 CPG(400)가 증폭-합산 블록(313)을 대체하기 위해 어떻게 구성될 수 있는지 이해될 것이다.
가중치 세트(352)의 가중치들이 멀티플라이어-가산기 체인(415, 417)의 멀티플라이어에 각각 제공될 수 있다. 복소 CP 값(336)이 멀티플라이어-가산기 체인(415, 417) 각각에서 최종 멀티플라이어에 제공될 수 있다. 멀티플라이어-가산기 체인(415)으로부터의 출력은 짝수의 CP 출력(420)일 수 있고, 멀티플라이어-가산기 체인(417)으로부터의 출력은 홀수의 CP 출력(421)일 수 있다. CP 출력(420, 421)은 아날로그 합산기를 통해 가산기(305)에 교대로 제공될 수 있다.
샘플 시간 ACC(410)로부터의 샘플 시간이 어드레스 증분기(401) 및 배럴 시프터(406)에, 그리고 멀티플라이어-가산기 체인(415)의 멀티플라이어에 제공될 수 있다. 어드레스 증분기(401)는 CP 메모리 뱅크(413)의 메모리 블록(402 내지 405)에 각각의 어드레스를 제공할 수 있다. 4x 오버샘플링의 상기 예를 계속 참조하면, CP는 4개의 최근접 주변, 즉 (4n-1), (4n), (4n+1), (4n+2)에서 2x로 오버샘플링된다. 전술한 바와 같은 보간 함수 y(t) 등의 2차 보간에 대한 다항식(444)은 메모리 블록(402 내지 405)의 각각과 함께 이용하도록 상기 CP 메모리(413)에 저장될 수 있다. 선택적으로, 다항식 대신에 메모리 블록(402 내지 405) 각각과 함께 이용하기 위해 샘플 시간 데이터로부터 보간 데이터(444)를 직접 CP 메모리(413)에 저장할 수도 있다.
일부 신호에 대해, CP 메모리(413)는 16-32개 샘플을 위한 것일 수 있고, 어드레싱에 의한 대칭성을 이용함으로써 총 길이가 대략 8-16개 샘플일 수 있다. 이런 방식으로, 각각의 CP 메모리 뱅크(413)는 LTE20에서 고려되는 가장 넓은 대역 신호에 대해 4개의 실제 값만 유지하기 위한 것일 수 있다. 2 오버샘플링 레이트(OSR)를 이용하면, 신호 샘플 레이트는 대략 40 Mps(mega samples per second)일 수 있다. CPG 블록(400)이 320 MHz에서 동작하면, 하나의 이러한 블록은 스트림 프로세싱에 의해 적어도 가까워지기 위해 8개의 CPG를 가질 수 있다.
2차 보간으로부터의 출력 또는 상기 오버샘플링된 최근접 주변 샘플 각각에 대한 메모리 블록(402 내지 405)으로부터의 보간 데이터가 배럴 시프터(406)에 제공될 수 있다. 메모리 블록(402 내지 405)으로부터 출력된 비트의 배럴 시프터(406)에 대한 유효한 배럴 시트프 순서는 각각 출력 A 내지 D로서 표시된다. 예컨대, 배럴 시프터(406)는 보간 매트릭스 M(407)에 대한 입력을 위해 비트 ABCD의 순서를 DABC, CDAB, BCDA 등으로서 순환시킬 수 있다. 보간 매트릭스 M(407)의 출력이 멀티플라이어-가산기 체인(415)의 멀티플라이어에 각각 제공될 수 있다.
보간 매트릭스 M(407)에 있어서, 매트릭스 M은 사용되는 특성에 따라 선택될 수 있으며, 이에 애플리케이션마다 달라질 수 있다. 명확함을 위해 제한이 아니라 예시적으로, 이하의 예에서는 카트물-롬(Catmull-Rom) 스플라인 매트릭스인 매트릭스 M이 이용될 수 있다.
Figure 112016059118106-pct00018
이 경우에, 매트릭스 M의 엔트리 전체는 다수의 스플라인 매트릭스 M에서와 같이 정수이다. 이들 엔트리는 간단하여, 매트릭스 M을 구현하는 데 있어서 복잡도 감소를 위해 요구되는 곱셈이 간단한 시프트 및/또는 덧셈 연산일 수 있다. T 벡터와의 곱은 호너법을 이용해서 또는 출력 포인트당 3개의 곱셈을 사용한 법칙을 이용해서 구해질 수 있다. 전술한 바와 같이 보간을 이용하여, CP 샘플 레이트는 신호 샘플 레이트로부터 완전히 분리될 수 있다. 이런 방식으로, CP 길이가 일부 애플레이션에서 상당히 감축될 수 있다.
카트물-롬 스플라인은 나이퀴스트 주파수 근방에 충분한 응답을 제공할 수 없다. 따라서, 패로우 필터 접근법은 상기 매트릭스의 사이즈를 확장시키는 것이 아니라 더 우수한 M 매트릭스를 제공함으로써 성능을 향상시킬 수 있다. 매트릭스 M은 프로토타입 필터에 근사시키는 SVD(singular value decomposition) 기술을 이용하여 결정될 수 있다. 또한, 포인트들 또는 샘플들 사이를 원활하게 보간하기 위한 다른 타입의 스플라인이 이용될 수도 있다. 명확함을 위해 제한이 아니라 예시적으로, RAT(radio access technology) 예가 제공된다. 이러한 단일 블록은 복수의 RAT에 대한 각각의 CFR 스테이지마다 이용되는 CPG 리소스 전부를 제공할 수 있다. 신호 BW의 2x의 오버샘플링 레이트(OSR)에 대해, 워드에 대한 증가는 CP 간격(spacing)의 ½ 미만이라서, 하드웨어 효율을 더욱 향상시키기 위해서 호너 출력(Horner output) 및 복소 게인 레이트 출력을 제외하면 상기 블록은 출력 레이트의 ½에서 동작할 수 있다.
전술한 설명이 일반적으로 RAT에 대한 것이지만, 상기 설명은 단일 전송 사양 또는 표준에도 마찬가지로 적용된다. 더욱이, 상기한 설명은 일반적으로 단일 반송파 신호에서 CFR에 대한 것이며, 여기서는 피크 검출이 대략 그것의 신호 대역폭 2x에 의해 오버샘플링되는 신호를 이용하여 적절한 정확도를 갖고, 펄스 상쇄가 상기 OSR보다 낮은 레이트에서 발생할 수 있지만, 상기 OSR와 같은 레이트에서 더욱 쉽게 행해질 수 있다. 상쇄 펄스는 왜곡을 저하 또는 최소화하는데 적용되는 목표로 하는 복소 게인으로 찾아진 피크를 매칭시키기 위해 보간될 수 있다.
도 6은 다른 예시적인 CPCFR 엔진(600)을 도시하는 블록도이다. CPCFR 엔진(600)은 도 3의 CPCFR 엔진(300)과 동일하지만 다음의 차이점이 있다. CPCFR 엔진(600)에서는, 도 4의 CPG(400)의 버전과 같은 선택적인 클린업 CPG(400-3 및 400-4)이 클린업 스테이지로서 추가된다. CPG(400-3)은 증폭-합산 블록(313)과 가산기(311) 사이에서, 가산기(311)에 입력되는 상쇄 펄스(361)를 클린업하기 위해 연결되고, CPG(400-4)은 증폭-합산 블록(323)과 가산기(305) 사이에서, 가산기(305)에 입력되는 상쇄 펄스(362)를 클린업하기 위해 연결된다.
도 7은 다른 예시적인 CPCFR 엔진(700)을 도시하는 블록도이다. CPCFR 엔진(700)은 도 3의 CPCFR 엔진(300)과 동일하지만 다음의 차이점이 있다. CPCFR 엔진(700)에서는, 증폭-합산 블록(313, 323)이 CPG(400-1 및 400-2)으로 각각 대체된다. 또한, 도 2에서와 같은 선택적인 클리업 윈도우-CFR(window-CFR, "WCFR") 엔진이 클린업 스테이지로서 추가된다. WCFR(200-1)은 CPG(400-1)과 가산기(311) 사이에서, 가산기(311)에 입력되는 상쇄 펄스(361)를 클린업하기 위해 연결되고, WCFR(200-2)은 CPG(400-2)와 가산기(305) 사이에서, 가산기(305)에 입력되는 상쇄 펄스(362)를 클린업하기 위해 연결된다. 상쇄 펄스(361, 362)는 도 2의 입력 신호(201)를 각각 대체할 수 있다.
도 8은 다른 예시적인 CPCFR 엔진(800)을 도시하는 블록도이다. CPCFR 엔진(800)은 도 7의 CPCFR 엔진(700)과 동일하지만 다음의 차이점이 있다. CPCFR 엔진(800)에서는, 선택적인 WCFR 엔진(200-1, 200-2)이 CPG(400-3 및 400-4)으로 각각 대체된다. CPG(400-3)은 CPG(400-1)과 가산기(311) 사이에서, 가산기(311)에 입력되는 상쇄 펄스(361)를 클린업하기 위해 연결되고, CPG(400-4)은 CPG(400-2)과 가산기(305) 사이에서, 가산기(305)에 입력되는 상쇄 펄스(362)를 클린업하기 위해 연결된다.
이상 예시적인 장치(들) 및/또는 방법(들)에 대해 설명하였지만, 본 명세서에서 설명하는 하나 이상의 양태에 따른 기타 및 추가 예들이, 이어지는 청구범위 및 그 균등물에 의해 결정되는 본 발명의 범주에서 일탈하지 않고서 발상될 수도 있다. 단계들을 열거하는 청구항은 그 단계들의 어떤 순서도 암시하지 않는다. 상표는 그 각각의 소유자의 자산이다.

Claims (15)

  1. 장치에 있어서,
    제1 상쇄 펄스(cancellation pulse)와 제2 상쇄 펄스를 제공하도록 구성되는 유한 임펄스 응답 필터와,
    입력 신호와 상기 제1 상쇄 펄스를 수신하도록 연결되어 제1 차분 신호(difference signal)를 제공하는 제1 가산기와,
    상기 제1 차분 신호를 수신하도록 연결되며 상기 제1 차분 신호에 응답하여 상쇄 펄스값을 제공하도록 구성되는 피크 엔진 - 상기 유한 임펄스 응답 필터는 상기 상쇄 펄스값을 수신하도록 연결되어 상기 제1 상쇄 펄스와 상기 제2 상쇄 펄스 각각을 제공함 - 과,
    상기 입력 신호를 수신하도록 연결되어 지연된 입력 신호를 제공하는 지연기와,
    상기 지연된 입력 신호와 상기 제2 상쇄 펄스를 수신하도록 연결되어 상기 지연된 입력 신호로부터 상기 제2 상쇄 펄스를 차감하여 제2 차분 신호를 제공하는 제2 가산기 - 상기 제2 차분 신호는 상기 지연된 입력 신호의 파고율 저감 버전(crest factor reduced version)인 것임 - 와,
    상기 입력 신호를 수신하도록 연결되어 상기 피크 엔진의 피크 검출기를 구동하도록 상기 입력 신호에 대한 크기 값(magnitude value)을 제공하는 크기 블록(magnitude block) - 상기 피크 검출기는 피크 검출을 위해 그리고 부분적 시간 오프셋(fractional time offset) 결정을 위해 구성되는 것임 - 과,
    상기 피크 검출과 연관된 임계 피크값보다 큰 크기 값에 응답하여 상기 상쇄 펄스값에 대한 복소 진폭(complex amplitude)을 제공하도록 연결되는 보간기
    를 포함하는 장치.
  2. 제1항에 있어서,
    상기 유한 임펄스 응답 필터는, 상기 상쇄 펄스값을 수신하여 제1 가중 신호 및 제2 가중 신호를 제공하도록 연결된 지연 라인을 포함하고,
    상기 지연 라인은 상기 유한 임펄스 응답 필터의 제1 증폭-합산 블록과 제2 증폭-합산 블록 사이에 연결되어, 상기 제1 가중 신호를 상기 제1 증폭-합산 블록에 제공하고 상기 제2 가중 신호를 상기 제2 증폭-합산 블록에 제공하며,
    상기 제1 증폭-합산 블록은 상기 제1 가중 신호를 수신하여 상기 제1 상쇄 펄스를 제공하도록 연결되고,
    상기 제2 증폭-합산 블록은 상기 제2 가중 신호를 수신하여 상기 제2 상쇄 펄스를 제공하도록 연결되는 것인 장치.
  3. 제2항에 있어서,
    상기 제1 증폭-합산 블록으로부터 상기 제1 상쇄 펄스를 수신하도록 연결되어 제1 부분적 오프셋(fractional offset)을 조정한 다음 상기 제1 부분적 오프셋에 대해 조정된 상기 제1 상쇄 펄스를 상기 제1 가산기에 제공하는 제1 상쇄 펄스 발생기와,
    상기 제2 증폭-합산 블록으로부터 상기 제2 상쇄 펄스를 수신하도록 연결되어 제2 부분적 오프셋을 조정한 다음 상기 제2 부분적 오프셋에 대해 조정된 상기 제2 상쇄 펄스를 상기 제2 가산기에 제공하는 제2 상쇄 펄스 발생기
    를 더 포함하는 장치.
  4. 제1항에 있어서,
    상기 유한 임펄스 응답 필터는, 상기 상쇄 펄스값을 수신하여 제1 가중 신호 및 제2 가중 신호를 제공하도록 연결된 지연 라인을 포함하고,
    상기 지연 라인은 상기 유한 임펄스 응답 필터의 제1 상쇄 펄스 발생기와 제2 상쇄 펄스 발생기 사이에 연결되어 상기 제1 가중 신호를 상기 제1 상쇄 펄스 발생기에 제공하고 상기 제2 가중 신호를 상기 제2 상쇄 펄스 발생기에 제공하며,
    상기 제1 상쇄 펄스 발생기는 상기 제1 가중 신호를 수신하여 상기 제1 상쇄 펄스를 제공하도록 연결되며, 제1 부분적 오프셋을 조정한 다음 상기 제1 부분적 오프셋에 대해 조정된 상기 제1 상쇄 펄스를 상기 제1 가산기에 제공하도록 구성되고,
    상기 제2 상쇄 펄스 발생기는 상기 제2 가중 신호를 수신하여 상기 제2 상쇄 펄스를 제공하도록 연결되며, 제2 부분적 오프셋을 조정한 다음 상기 제2 부분적 오프셋에 대해 조정된 상기 제2 상쇄 펄스를 상기 제2 가산기에 제공하도록 구성되는 것인 장치.
  5. 제4항에 있어서,
    상기 제1 상쇄 펄스 발생기로부터 상기 제1 상쇄 펄스를 수신하도록 연결되어 상기 제1 상쇄 펄스를 클린업(clean up)한 다음 상기 제1 가산기에 제공하는 제1 윈도우-파고율 저감 엔진(window-crest factor reduction engine)과,
    상기 제2 상쇄 펄스 발생기로부터 상기 제2 상쇄 펄스를 수신하도록 연결되어 상기 제2 상쇄 펄스를 클린업한 다음 상기 제2 가산기에 제공하는 제2 윈도우-파고율 저감 엔진
    을 더 포함하는 장치.
  6. 제4항에 있어서,
    상기 제1 상쇄 펄스 발생기로부터 상기 제1 상쇄 펄스를 수신하도록 연결되어 상기 제1 상쇄 펄스를 클린업한 다음 상기 제1 가산기에 제공하는 제3 상쇄 펄스 발생기와,
    상기 제2 상쇄 펄스 발생기로부터 상기 제2 상쇄 펄스를 수신하도록 연결되어 상기 제2 상쇄 펄스를 클린업한 다음 상기 제2 가산기에 제공하는 제4 상쇄 펄스 발생기
    를 더 포함하는 장치.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서, 상기 상쇄 펄스값은 상기 제1 상쇄 펄스로부터 제공된 과거의 기여도(past contribution)에 응답하여 재귀적으로 업데이트되는 것인 장치.
  8. 제1항 내지 제6항 중 어느 한 항에 있어서, 상기 피크 엔진은 임계 피크치(T)를 갖게 구성되며, 여기서 상기 입력 신호가 x(n), 상기 제1 상쇄 펄스가 c(n), 및 상기 제1 차분 신호가 y(n)이며, 연산은 다음과 같은 것인 장치.
    Figure 112016060797415-pct00028
  9. 제1항 내지 제6항 중 어느 한 항에 있어서,
    상기 피크 엔진은 예측 블록(look-ahead block)을 포함하고,
    상기 예측 블록은, 신호 위상을 상관된 샘플에 대해 일정하게 설정하여 상기 상쇄 펄스값을 오직 크기 데이터로 단순화하기 위해, 상기 입력 신호의 미래 기여도를 예측하여 상기 입력 신호의 다음 샘플이 임계치를 넘는지 결정하도록 구성되는 것인 장치.
  10. 제9항에 있어서, 상기 예측 블록은 길이 2M+1의 필터 함수 w를 이용해 상기 미래 기여도를 차감한 다음, 샘플 크기를, 0보다 큰 양의 정수 M, 상기 제1 상쇄 펄스 c(n), 예측값 L에 대한 임계치 미만의 값으로 유도하기에 충분한 상기 제1 상쇄 펄스 c(n:n+L-1)의 에너지를 결정하도록 구성되는 것인 장치.
  11. 제9항에 있어서, 상기 예측 블록은 단일 패스(single pass) 파고율 저감을 위한, 2차(quadratic) 프로그래밍 함수, 비선형 프로그래밍 함수 또는 선형 프로그래밍 함수를 포함하는 것인 장치.
  12. 제9항에 있어서, 상기 예측 블록은, 상기 입력 신호의 미래 샘플을 예측하고, 상기 임계치를 넘는 미래 샘플을 양자화하며, 양자화된 미래 샘플을 회고(look back)하고, 양자화된 미래 샘플을 제1 차분 신호에 적용한 다음, 상기 상쇄 펄스값에 대한 현재의 상쇄 펄스 복소 게인을 선택하는데 있어서 미래 및 과거 기여도의 적어도 일부를 제거하도록 구성되는 것인 장치.
  13. 방법에 있어서,
    유한 임펄스 응답 필터로부터 제1 상쇄 펄스 및 제2 상쇄 펄스를 제공하는 단계와,
    가산기에 의하여, 입력 신호 및 상기 제1 상쇄 펄스를 수신하여 차분 신호를 제공하는 단계와,
    피크 엔진의 피크 검출기를 구동하기 위해 상기 입력 신호의 크기 또는 크기 제곱치를 구하는 단계와,
    상기 피크 엔진에 의하여, 상기 차분 신호 및 상기 크기 또는 크기 제곱치를 수신하여 상쇄 펄스 게인을 제공하는 단계로서, 상기 상쇄 펄스 게인을 제공하는 단계는,
    상기 피크 검출기로 상기 입력 신호의 피크를 검출하는 단계와,
    상기 피크 검출기에 의하여, 샘플 포인트들 사이에 위치한 상기 피크의 검출과 연관된 샘플로부터의 부분적 시간 오프셋을 결정하는 단계와,
    보간기에 의하여, 검출된 피크의 피크 크기와 피크 위치를 찾기 위해 상기 샘플 포인트들을 보간하는 단계와,
    상기 피크 크기가 임계치보다 큰지를 결정하는 단계와,
    상기 임계치보다 큰 피크 크기에 대한 상쇄 펄스 게인으로서 복소 보간된 상쇄 펄스값을 찾는 단계
    를 포함하는 것인, 상기 상쇄 펄스 게인을 제공하는 단계와,
    상기 유한 임펄스 응답 필터에 의하여, 상기 상쇄 펄스 게인을 갖는 상기 제1 상쇄 펄스 및 상기 제2 상쇄 펄스를 생성하는 단계와,
    파고율 저감을 위해 상기 유한 임펄스 응답 필터로부터 상기 제2 상쇄 펄스를 출력하는 단계
    를 포함하는 방법.
  14. 제13항에 있어서, 상기 상쇄 펄스 게인을 상기 임계치보다 크지 않는 상기 피크 크기에 대한 것에 설정하는 단계를 더 포함하는 방법.
  15. 제13항 또는 제14항에 있어서, 상기 검출하는 단계는 샘플 시퀀스에 대해 2차 피트(quadratic fit)를 수행하는 단계를 포함하고, 상기 보간하는 단계는 상기 2차 피트를 이용하는 단계를 포함하는 것인 방법.
KR1020167016432A 2013-11-22 2014-11-11 상쇄 펄스 파고율 저감 KR102175019B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/088,221 2013-11-22
US14/088,221 US9014319B1 (en) 2013-11-22 2013-11-22 Cancellation pulse crest factor reduction
PCT/US2014/064937 WO2015077083A1 (en) 2013-11-22 2014-11-11 Cancellation pulse crest factor reduction

Publications (2)

Publication Number Publication Date
KR20160088924A KR20160088924A (ko) 2016-07-26
KR102175019B1 true KR102175019B1 (ko) 2020-11-05

Family

ID=51987491

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167016432A KR102175019B1 (ko) 2013-11-22 2014-11-11 상쇄 펄스 파고율 저감

Country Status (6)

Country Link
US (1) US9014319B1 (ko)
EP (1) EP3072267B1 (ko)
JP (1) JP6261740B2 (ko)
KR (1) KR102175019B1 (ko)
CN (1) CN105745891B (ko)
WO (1) WO2015077083A1 (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9787289B2 (en) 2015-07-06 2017-10-10 Xilinx, Inc. M-path filter with outer and inner channelizers for passband bandwidth adjustment
US9338039B1 (en) 2015-08-26 2016-05-10 Xilinx, Inc. Efficient signal classification in digital pre-distortion systems
EP3395027B1 (en) * 2015-12-23 2020-02-05 Telefonaktiebolaget LM Ericsson (publ) Error scaling in crest factor reduction
EP3398308A1 (en) 2015-12-28 2018-11-07 Telefonaktiebolaget LM Ericsson (publ) Peak power reduction for adaptive modulation schemes
US10367670B2 (en) 2017-01-25 2019-07-30 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for crest factor reduction
US11038731B2 (en) 2017-06-09 2021-06-15 Nanosemi, Inc. Crest factor reduction
WO2019094713A1 (en) 2017-11-13 2019-05-16 Nanosemi, Inc. Spectrum shaping crest factor reduction
US10615778B2 (en) * 2018-02-19 2020-04-07 Analog Devices, Inc. Crest factor reduction
US10594530B2 (en) * 2018-05-29 2020-03-17 Qualcomm Incorporated Techniques for successive peak reduction crest factor reduction
US10623222B2 (en) 2018-08-30 2020-04-14 Xilinx, Inc. Vectorized peak detection for signal processing
US10727880B1 (en) * 2019-03-07 2020-07-28 Analog Devices International Unlimited Company Crest factor reduction in cable communication systems
US10763976B1 (en) * 2019-03-13 2020-09-01 Rohde & Schwarz Gmbh & Co. Kg Digital low frequency correction circuit and method for reducing low frequency disturbances within a digital signal

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060014500A1 (en) 2004-07-06 2006-01-19 Stefano Marsili Devices for reducing the dynamic range of signals in transmitters of communication systems
US20110255627A1 (en) 2010-04-19 2011-10-20 Designart Networks Ltd Method and apparatus for crest factor reduction in telecommunications systems

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6792037B2 (en) * 2002-02-28 2004-09-14 Interdigital Technology Corporation Apparatus and method of searching for known sequences
JP3990974B2 (ja) * 2002-11-26 2007-10-17 株式会社日立コミュニケーションテクノロジー ピークファクタ低減装置
GB2401516A (en) * 2003-04-17 2004-11-10 Univ Southampton Peak-to-average power ratio reduction by subtracting shaped pulses from a baseband signal
US7639747B2 (en) * 2003-10-23 2009-12-29 Harris Corporation System and method for reducing peak-to-average power ratio for multi-carrier communication systems
JP2009284044A (ja) * 2008-05-20 2009-12-03 Fujitsu Ltd 無線送信装置
CN101867541B (zh) * 2009-04-20 2013-02-13 大唐移动通信设备有限公司 一种信号波峰削除的方法及设备
KR101613731B1 (ko) * 2009-11-09 2016-04-19 에릭슨 엘지 주식회사 멀티캐리어 시스템에서 기준 상쇄펄스 추출 장치 및 그 방법과 그를 위한 pc-cfr 시스템
GB2477986C (en) * 2010-02-22 2013-12-25 Toshiba Res Europ Ltd Method and apparatus for crest factor reduction
KR101677294B1 (ko) * 2010-04-19 2016-11-18 삼성전자주식회사 피크 윈도윙을 위한 스무딩 장치
KR20130106489A (ko) * 2012-03-20 2013-09-30 한국전자통신연구원 신호왜곡성분 조절 장치 및 방법과 이를 이용한 시스템
US20140169496A1 (en) * 2012-12-17 2014-06-19 Texas Instruments Incorporated Crest Factor Reduction for Multi-Band System

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060014500A1 (en) 2004-07-06 2006-01-19 Stefano Marsili Devices for reducing the dynamic range of signals in transmitters of communication systems
US20110255627A1 (en) 2010-04-19 2011-10-20 Designart Networks Ltd Method and apparatus for crest factor reduction in telecommunications systems

Also Published As

Publication number Publication date
KR20160088924A (ko) 2016-07-26
WO2015077083A1 (en) 2015-05-28
CN105745891A (zh) 2016-07-06
EP3072267A1 (en) 2016-09-28
US9014319B1 (en) 2015-04-21
JP6261740B2 (ja) 2018-01-17
EP3072267B1 (en) 2017-10-04
CN105745891B (zh) 2017-10-13
JP2017502560A (ja) 2017-01-19

Similar Documents

Publication Publication Date Title
KR102175019B1 (ko) 상쇄 펄스 파고율 저감
US9313078B1 (en) Pulse cancellation crest factor reduction with a low sampling rate
EP0977355B1 (en) Device and method for limiting peaks of a signal
US9531343B2 (en) Systems and methods of variable fractional rate digital resampling
KR102063140B1 (ko) 블록 기반 파고율 저감
US9521024B2 (en) Device of crest factor reduction
KR102337706B1 (ko) 다중 경로 디지털 전치왜곡
US20040103133A1 (en) Decimating filter
JP6374596B2 (ja) 波高率低減
US9160594B1 (en) Peak detection in signal processing
US11258431B2 (en) Method and apparatus for implementing a super sample rate oversampling channelizer
US9923737B2 (en) Analog-digital compatible re-sampling
US9632753B2 (en) Spectral shaping of pseudorandom binary sequence
JP5126366B2 (ja) フィルタ装置
Deep et al. Spectral parameter approximation based tunable digital filters on Zynq SoC
JPH11251969A (ja) 周波数ホッピングスペクトラム拡散方式の受信装置
US11483018B1 (en) Reconfigurable and scalable nonlinear filter for digital pre-distorters
Avinash et al. Design of digital down converter using computation sharing multiplier architecture
Madhav et al. A Brief Review on Hardware Efficient Cascaded Integrator Comb Filters
Li et al. Hardware efficient digital channeliser designs for radar intercept applications
Migdadi et al. FIR implementation on FPGA: Investigate the FIR order on SDA and PDA algorithms
Jeng et al. Hardware Implementation and Verification of FIR Filter Utilizing M-Bit PDA
Otunniyi et al. Comparative Analysis of Farrow Fractional Structure Rate Converter
Lin et al. Implementation of a low area and high-speed spectrum sensor with reconfigurable sensing resolution for cognitive radios
RAKESH et al. Design and Implementation of 12 TAP FIR Filter

Legal Events

Date Code Title Description
A201 Request for examination
A302 Request for accelerated examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right