데이터 컨버터가 계속 발전함에 따라 소프트웨어 정의 라디오, 무선 테스터 및 스펙트럼 분석기와 같은 시스템에서 다중 대역 요구 사항을 충족하는 것은 어려운 일입니다. 시스템 설계자들은 장치가 점점 복잡해지고 NCO(수치적 제어 오실레이터) 주파수 간의 더 빠른 전환이 가능해짐에 따라 기존의 주파수 호핑 방법을 재평가하고 있습니다.
이 문서에서는 범용 입력/출력(GPIO)과 고속 재구성 인터페이스(FRI)와 같은 기존 및 고급 방법을 비교하는 주파수 호핑 기법의 진화에 대해 알아봅니다. 이러한 발전을 이해하면 단일 및 다중 대역 애플리케이션 모두에서 주파수 호핑을 최적화하는 데 대한 귀중한 통찰력을 얻을 수 있습니다. 그러나 최신 시스템이 다중 대역 요구 사항을 어떻게 충족하는지 완전히 파악하려면 먼저 주파수 호핑의 기본 사항을 이해하는 것이 필수적입니다.
Wi-Fi® 6 및 7 또는 직교 진폭 변조(QAM) 인코딩 신호와 같은 최신 통신 시스템에서 스펙트럼은 본질적으로 다중 대역이므로 무선 주파수(RF) 도메인은 각 주파수 대역 내의 여러 채널로 구성됩니다. 예를 들어, Wi-Fi 6 및 7은 동일한 주파수 대역 내의 여러 채널에서 작동하여 동적으로 대역폭과 데이터 처리량을 최대화하며, QAM은 단일 채널 내에서 서로 다른 위상 오프셋 및 진폭 수준으로 데이터를 인코딩합니다. 그림 1에는 7개의 QAM 채널이 포함된 주파수 대역의 예가 나와 있습니다.
직접 RF 샘플링 아날로그-디지털 컨버터(ADC) 및 디지털-아날로그 컨버터(DAC)에는 많은 디지털 기능이 포함되어 있습니다. 직접 RF 샘플링을 가능하게 하는 가장 중요한 기능 중 하나는 ADC의 DDC(디지털 다운 컨버터)와 DAC의 DUC(디지털 업 컨버터)입니다.
ADC에서 DDC는 NCO, 디지털 믹서 및 데시메이터 블록의 세 가지 주요 구성 요소로 구성됩니다. NCO는 기존의 리시버 신호 체인에서 로컬 오실레이터의 디지털 대응 역할을 하며 입력 신호와 혼합되어 원치 않는 이미지와 함께 베이스밴드(Nyquist 영역 1)에서 신호를 제공합니다. 데시메이터 블록은 FIR(finite impulse response) 데시메이션 필터를 통해 이미지를 필터링한 다음 다운샘플링하여 신호 대역폭을 줄입니다. 데시메이터 블록은 디지털 방식으로 중간 주파수(IF) 필터에 해당합니다.
DAC에서 DUC는 인터폴레이터, NCO 및 디지털 믹서로 구성됩니다. 보간기는 ADC와 달리 낮은 대역폭 입력 신호를 업샘플링한 다음 FIR 필터를 통해 전달하여 이미지를 억제합니다. 보간기 단계가 끝나면, 출력 신호가 디지털 믹서에 공급되어 NCO와 혼합되므로 DAC가 낮은 입력 신호 대역폭으로 넓은 Nyquist 영역에서 작동할 수 있습니다.
RF 샘플링 컨버터의 지정된 입력에서 활성화된 DDC 수는 컨버터가 단일 또는 다중 대역 출력으로 작동하는지 여부를 결정합니다. 이 문서에서는 주파수 호핑의 ADC 측면에 대해 중점적으로 다룹니다.
그림 2에서는 3GSPS에서 듀얼 채널, 쿼드 대역 작동을 지원하는 RF 샘플링 ADC인 텍사스 인스트루먼트(TI) ADC32RF55의 DDC의 예를 보여줍니다.
종종, 관심 주파수 대역은 다음과 같이 변경될 수 있습니다. 동일한 RF 샘플링 컨버터가 각 대역에 대해 완전히 고유한 신호 체인을 스위칭하는 대신 새로운 주파수 대역에 맞게 NCO 주파수를 조정할 수 있습니다. 이는 최신 RF 샘플링 컨버터의 주요 장점입니다. NCO를 한 주파수에서 다른 주파수로 변경하는 역할을 주파수 호핑이라고 합니다.
NCO는 아날로그 주파수를 직접 생성하지 않으며, 대신 고해상도로 원하는 주파수의 디지털 표현을 생성합니다. 각 NCO는 디지털 워드(일반적으로 48비트 이상)를 수신하며, NCO 위상 축압기와 결합하면 디지털 혼합 단계에 적합한 신호를 나타낼 수 있습니다. NCO를 프로그래밍할 때 원하는 IF에 해당하는 디지털 표현은 실제 주파수가 아니라 프로그래밍되는 것입니다. NCO 주파수 범위는 –FS/2 및 FS/2 사이에서 가장 일반적으로 지원되며, 여기서 FS는 컨버터의 샘플링 주파수를 나타냅니다. 음극 주파수 단어는 짝수 Nyquist 영역에 사용되고, 양극 주파수 단어는 홀수 Nyquist 영역의 신호에 사용됩니다.
더 높은 차수의 NCO 주파수가 베이스밴드로 들어가는 곳을 결정하기 위해, 첫 번째 작업은 의도한 주파수와 샘플 레이트 사이에서 계수 연산을 수행하여 FS의 배수를 제거하는 것입니다. 의도된 NCO 주파수는 이제 0Hz와 컨버터 샘플 레이트 FS 사이입니다.
NCO 주파수가 Nyquist 주파수(FS/2)보다 작으면, 의도한 NCO 주파수는 방정식 1에 나와 있는 것처럼 홀수 Nyquist 영역으로 변환됩니다.
계산된 NCO 주파수가 Nyquist 주파수를 초과하면 방정식 2에 나와 있는 것처럼 주파수가 짝수 Nyquist 영역에 랜딩됩니다.
그림 3에서는 기본 신호(Fund.)와 2차, 3차 및 4차 고조파(HD2, HD3 및 HD4)가 어떻게 실제 주파수 구성 요소가 고차 Nyquist 영역에 랜딩되었음에도 불구하고 첫 번째 Nyquist 영역으로 접히는지 보여줍니다.
기존 ADC에 비해 RF 샘플링 ADC의 장점 중 하나는 주파수 대역을 전환하기 위해 하드웨어를 변경할 필요가 없다는 것입니다. 이러한 고유의 유연성을 통해 RF 샘플링 ADC가 추가 하드웨어 구성 요소 없이도 새로운 주파수 대역에 빠르게 적응하여 시스템 설계를 간소화하고 비용을 절감할 수 있습니다. 그러나 이 과정은 즉각적이지 않습니다. RF 샘플링 ADC의 초기 설계에서는 각 NCO와 후속 DDC에 대해 하나의 NCO 워드 옵션만 사용할 수 있었습니다. 결과적으로 다른 주파수로 호핑하려면 여러 개의 레지스터 쓰기 작업이 필요합니다.
새 NCO 워드는 SPI(직렬 주변 기기 인터페이스)를 통해 쓴 후 다른 레지스터 쓰기가 있어야만 새 NCO 워드를 DDC 블록으로 푸시할 수 있으며, 여기서 실제로 효력이 발생합니다. NCO 단어의 길이와 SPI 트랜잭션 속도를 포함하여 홉 주파수에 필요한 시간에 영향을 미치는 요인은 여러 가지가 있습니다. 일반적으로 ADC의 레지스터 크기가 8비트로 제한되므로 48비트 NCO를 업데이트하려면 총 7개의 레지스터 쓰기가 필요합니다. NCO 워드 자체에 대한 6개의 레지스터 쓰기, DDC를 업데이트하기 위한 추가 레지스터 쓰기 1개가 필요합니다.
각 SPI 트랜잭션의 오버헤드(일반적으로 각 레지스터 쓰기마다 16비트 주소)를 고려하면 트랜잭션 시간이 세 배로 늘어납니다. 20MHz SCLK(직렬 클록 신호) 속도를 가정하면 방정식 3에서는 SPI 데이터의 논스톱 스트림을 가정하여 주파수 홉 시간을 계산합니다.
RF 변환기는 이제 DDC당 여러 NCO 워드로 설계되어 NCO 단어를 사전 프로그래밍할 수 있습니다. 이 혁신적인 접근 방식을 통해 컨버터의 메모리에 여러 주파수 값을 사전 로드하여 더 빠른 주파수 호핑이 가능합니다. 미리 계산된 NCO 단어를 저장하는 이 개념이 바로 빠른 주파수 호핑의 '빠른'에서 유래한 것입니다.
그림 4에서는 ADC32RF55의 NCO 인덱스 및 워드 인덱스로 48비트 NCO 레지스터 주소를 보여줍니다. 채널 A와 B의 주소가 동일하지만 주파수 단어는 고유합니다. 이 장치가 레지스터 맵 페이징을 구현하고, 모든 읽기 및 쓰기 작업에서 활성 페이지에 레지스터가 포함되지 않은 마스크를 수행합니다.
단어가 프로그래밍되었으므로 실제로 특정 단어를 선택하려면 어떻게 해야 할까요? NCO 단어를 변경하려면 SPI 또는 GPIO 핀을 통해 수행할 수 있는 DDC에 대한 새 NCO 단어를 선택하기만 하면 됩니다. 표 1에서는 활성 대역 수에 따라 ADC32RF55에서 지정된 DDC에 대한 개별 단어를 선택하는 방법의 예를 보여줍니다. 표준 구성에서 이 ADC에는 DDC당 4개의 고유한 NCO 워드가 있지만 단일 대역 모드에서는 이웃하는 DDC의 4개의 NCO 워드가 활성 NCO를 제공할 수 있습니다. 즉, 각 채널의 DDC가 사전 프로그래밍된 8개의 NCO 워드에 액세스할 수 있습니다.
밴드 수 | ADDR | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
---|---|---|---|---|---|---|---|---|---|
싱글 | 0x3B | 0 | 0 | 0 | 0 | NCO2 CHA[1:0] | 0 | NCO1 CHA[1:0] | |
0x41 | 0 | 0 | 0 | 0 | NCO2 CHB[1:0] | 0 | NCO1 CHB[1:0] | ||
듀얼 | 0x3B | 0 | 0 | 0 | 0 | NCO2 CHA[1:0] | NCO1 CHA[1:0] | ||
0x41 | 0 | 0 | 0 | 0 | NCO2 CHB[1:0] | NCO1 CHB[1:0] | |||
쿼드 | 0x3B | NCO4 CHA[1:0] | NCO3 CHA[1:0] | NCO2 CHA[1:0] | NCO1 CHA[1:0] | ||||
0x41 | NCO4 CHB[1:0] | NCO3 CHB[1:0] | NCO2 CHB[1:0] | NCO1 CHB[1:0] |
주파수 홉을 수행하는 데 필요한 시간은 변환기에 따라 다릅니다. 일반적으로 SPI 메서드는 방정식 3에서와 같이 7개가 아닌 단 일 SPI 트랜잭션의 기간을 요구합니다. SPI 메서드의 속도는 SPI의 최대 클록 속도와 직렬 데이터 전송과 관련된 오버헤드에 따라 더욱 제한됩니다. 동일한 20MHz SCLK를 가정할 때, 방정식 4에서는 장치가 NCO 단어 변경을 시작하기 전에 필요한 시간을 표시합니다.
이와 대조적으로 GPIO 방법은 GPIO 입력을 업데이트할 수 있는 만큼 빠를 수 있습니다. 전압이 하이 또는 로우 레벨 임계값을 넘으면 NCO 단어 변화가 시작됩니다.
어느 방법이든 장치가 NCO 워드 변경을 수신하면 내부 NCO 워드가 즉시 업데이트됩니다. 그러나 데시메이션 필터는 모든 이전 값을 플러시해야 하므로 데시메이션 인수를 기반으로 결과적으로 약간의 지연이 발생합니다.
표 2에서는 ADC32RF55가 새 NCO 주파수와 혼합된 데이터로 데시메이션 필터를 플러시하는 데 필요한 시간을 보여줍니다.
데시메이션 설정 | NCO 전환 시간 |
---|---|
/4 | ~250ns |
/8 | ~350ns |
/16 | ~600ns |
/32 | ~1μs |
/64 | ~2μs |
/128 | ~4μs |
일반적으로 GPIO 인터페이스는 직렬 인터페이스와 비교할 수 있는고유한 병렬 측면이기 때문에 주파수 호핑에 대한 SPI 접근법보다 빠릅니다. 그러나 한 가지 고려 사항이 있습니다. GPIO 단어 선택 모드에서는 동일한 워드 인덱스가 모든 활성 DC에 적용됩니다. 장치는 DDC2에서 워드 3을 사용하는 동안에는 DDC1에 단어 1을 사용할 수 없습니다. GPIO 인터페이스는 모든 DC를 동일한 워드 인덱스로 설정합니다.
또 다른 방법인 FRI는 표준 SPI가 지원하는 것보다 훨씬 빠른 속도로 특정 장치 핀을 통해 데이터를 전송하는 것입니다. TI DAC39RF12와 같은 일부 장치는 최대 200MHz의 FRI 통신을 지원할 수 있으며, 이 통신을 사용하면 활성 NCO 워드를 선택할 수 있습니다.