CPLD内部振荡器实现自动校准

文章:Rafael Camarota

阅读有关自动校准序列,同步CPLD的内部振荡器与外部晶体振荡器,使±0.3%的精度。

Altera的MAX II CPLD系列具有一个内部振荡器,耗散比外部振荡器低得多的功率。内部振荡器的精度只有±25%,有时限制了它的使用。例如,许多应用程序,如用于数据收集的间隔计时器和实时时钟,都要求更高的精度——分别为±0.1和±0.001%。一个简单的电路使用外部晶体振荡器来校准定时器,精度优于±0.3%。内部振荡器即使在关闭外部振荡器以节省电力后也能维持校准输出。电路保持这种精度,只要VCC和温度是稳定的。只要启用外部振荡器,电路就会在必要时快速重新校准。

远程工业传感器应每秒进行一次活动。为了节省电力,大部分时间都将沿着传感器电路的大部分时间达到电池寿命。该系统为短样本提供动力;然后,除了CPLD之外的系统,向下电,该时段为下一个上电,样本和校准。无线接收器的大多数组件处于省电模式下降;但是,CPLD定时器和唤醒模式保持在监控和校准。

(内部CPLD计数器)
这个内部CPLD计数器首先与外部时钟同步到60.3%的精度,并保持在该频率直到重置

图1显示了一个具有典型±100 ppm精度的晶体振荡器的简单电路;EPM240 CPLD带有±25%的精度,4.4MHz的内部振荡器;以及可编程逻辑阵列中的自动校准电路,可生成±0.3%精度的10kHz时钟。为简单起见,该数字省略了外部振荡器的VCC1下电或启用电路以及使用10kHz时钟的应用逻辑。33.33MHz时钟驱动一个参考计数器,它是一个被3333除的LPM(参数化宏库)计数器。你从Altera的Quartus II LPM获得LPM块。COR (carry-out-reference)信号反馈到允许计数输入,这样COR信号在达到3333计数后保持在1,直到应用复位信号。被3333除的计数器产生0.1 msec的参考周期。4.4MHz LPM振荡器驱动自动校准电路中的所有其他时钟:源计数器,一个带有异步复位的10位计数器;同步复位; and a 10bit output source. The 4.4MHz clock also drives the 10bit up/down-adjust counter that presets to 333 at power-up. It has an enable input, an up/down-control-input signal, and a 10bit output adjustment. The adjust and source drive the inputs of the compare LPM that generates a one on the COC (carry-out-from-comparator) signal when adjust equals the source. The COC signal drives the synchronous input of the source counter, making it a free-running counter with a period equal to the adjustment signal. An LPM register converts the COC signal into a synchronous, 10kHz pulse when you calibrate the system. The control-logic block generates enable, up/down, and synchronous-reset output signals based on the COC and COR inputs.

(状态机)
这个状态机显示了图1中控制块的转换。*

留下你的评论