DSP 系统要生成正弦波形或其他周期波形。用于生成这些波形的一种方法主要涉及“NCO(数控振荡器)”,其中利用数字累加器将地址生成到正弦 LUT(查找表)中。该系统在软件和硬件方面都很常见。因此,它允许在生成的波形的瞬时频率/相位内立即改变,同时在输出内保持恒定的相位特性。一旦与DAC结合以生成模拟 O/P 波形,该系统就称为 DDS 或直接数字合成器。因此,本文讨论了
数控振荡器是一种数字信号发生器,可生成同步、离散时间和离散值波形,这些波形通常为正弦曲线,其中信号的频率或相位在设计中受到控制。这些振荡器经常与输出端的 DAC(数模转换器)结合使用,形成直接 DDS 或数字合成器。与别的类型的振荡器相比,NCO 在准确性、敏捷性、可靠性和稳定能力方面具有许多优势。因此,D 类音频放大器、音频发生器、照明控制、荧光镇流器和无线电调谐电路都受益于 NCO。数控振荡器用在所有通信系统,如雷达系统、数字 PLL、无线电系统、驱动器多级 PSK/FSK调制器或解调器等等。
NCO产生的输出频率高,主要根据编号。位例如;20 位大小可生成高达 32 MHZ,但 16 位大小只能生成 500 KHz。
数控振荡器架构如下所示。该架构包括两个主要部分PA(相位累加器)和PAC(相位幅度转换器)。
相位累加器将频率控制值添加到每个 CLK 采样时保存在其输出处的值。相位幅度转换器提供与相位累加器的输出字相匹配的幅度样本,就像信号查找表的索引一样。有时,插值与LUT结合使用以提高精度并减少相位的误差噪声。在数控振荡器软件中,能够正常的使用幂级数等数学程序将相位转换为幅度。
一旦计时,PA 或相位累加器只需创建一个模 2^N 锯齿信号,然后通过 PAC(相幅转换器)将其更改为采样的正弦波。这里的“N”是编号。相位累加器中携带的位数。
像“N”这样的携带位的数量设置了振荡器的频率分辨率,并且通常比数量要高得多。描述 PAC 查找表存储空间的位。
如果相幅转换器的容量为2^M,则相位累加器的输出字应减少至M位,如上图所示。但是,这些位用于插值。相位输出字的减少不会改变频率的精度,但它会产生时变的周期性相位误差,这是杂散产物的主要来源。
相对于 CLK 频率的频率精度仅受用于计算相位的数学精度的限制。因为数控振荡器具有相位和频率感知能力,并能稍微修改以通过在适当的节点求和来生成频率调制或相位调制输出,否则给出正交输出。
NCO 模块使用累加器的溢出来生成输出信号。因此,累加器的溢出是通过可修改的增量值而不是仅通过单个 CLK 信号来控制的。与简单的定时器驱动计数器相比,这具有一个优点,即分频程度不会因有限的预分频器或后分频器分频器值而改变。数控振荡器在固定占空比下需要频率精度和出色分辨率的应用中非常有用。
数控振荡器的工作原理很简单,就是频繁地向累加器添加一个固定值。因此,加法将以输入 CLK 速率发生。有时,累加器会通过进位溢出,这是原始 NCO 的输出。这通过所包含的值与累加器的最高值的比率有效地降低了输入CLK。
此外,NCO 的输出能够最终靠简单地拉伸脉冲来修改。之后,NCO 的修改输出在内部分配给其他外设,并可选择输出到输入/输出引脚。累加器溢出也会产生中断。
NCO 周期以单独的步骤变化以生成平均频率。所以这个输出主要根据接收电路对NCO输出进行平均以减少不确定性的能力。NCO模块的溢出主要根据以下公式:累加器溢出率=累加器溢出值/输入CLK频率+增量值。
它是一个模 N 计数器,包含 2^N 个数字条件,这些条件随着系统的每个时钟输入信号而增加。增量大小主要根据调整字值,并且M应用于累加器的加法器级。调整字只是固定步长中的计数器增量。
数控振荡器适用于需要高频精度、线性频率控制和固定占空比下出色分辨率的场合,例如镇流器和照明控制、谐振电源和音调发生器。
NCO 是普通数字电路,大范围的应用于速率转换、频率合成和 CLK 生成等计时应用。
NCO 大多数都用在片上主要信号生成,如 SoC 中的正弦、余弦、LFM 或线性调频、高斯信号。
这些在无线电调谐电路、控制照明、荧光镇流器、音频发生器和 D 类音频放大器的应用中非常重要。
它们通常与输出端的 DAC 结合使用来设计 DDS(直接数字合成器)。
因此,这就是对常控振荡器的概述,该振荡器的工作原理是在每个输入时钟信号的上升沿简单地向内部累加器添加一个增量。因此,NCO 的输出频率与编号成正比。累加器溢出所需的周期数。这里有一个问题要问你,什么是振荡器?