使用智能模拟模块进行设计
片上系统(SoC)中的电路集成推动了当今的嵌入式系统设计,人们希望将复杂而灵活(可编程且可配置的)的模拟、数字和处理引擎整合到一个芯片上。这个趋势使得SOC和MCU集成了各种复杂和高级的模拟功能。这些灵活的模拟电路不仅能让我们在设计时配置各个模块,而且还能在系统运行时动态地重新配置模块功能本身。此类多用途模拟功能可通过使用通用开关电容(SC)网络和现代SoC及MCU内置的一些模拟逻辑实现。
本文将阐述我们如何使用SC网络实现各种模拟功能,以及它们在现实应用中的实际用途。除此之外,本文还将阐述SC模拟模块的原理和应用它的功能包括△Σ调-制、混频器、滤波器、积分器、加法器、减法器、DAC、可编程增益放大器、比较器、采样保持器等等。
智能模拟
模拟电路生态系统需要电阻器、电容以及运算放大器、缓冲器、比较器、基本模拟逻辑等其它模拟模块。由于在集成电路上制造电容更加简便划算,从而衍生了使用开关电容模拟电阻器的技术。这些开关电容以开关的精确定时控制电容之间的电荷转移(参见图1)。内置时钟/定时控制使得模拟功能发生实时变化。这些模块有时被称为通用模拟模块(UAB)。
图1: 通用模拟模块(UAB)
UAB由两个完全对称的半电路构成,可配置为一个伪差分或两个单端功能。 每个半电路配有用于自主操作的控制逻辑。 图2显示了简化的UAB图。 UAB具有高度灵活的转换和连续路由架构,可以实现模拟滤波器等复杂的模拟功能。
图2:简化的UAB
电荷转移原理
电荷转移指的是电压节点之间的电荷受控移动。图3 显示了电阻器和开关电容中的电荷转移。
图3:简化的UAB
在电阻器中,电流(i)由电阻(R)两端的电位差形成。电流从一个电压电位(V) 通过电阻R流向地电位。遵从以下等式:
i = V / R
在开关电容中,电流 (i)是由高电位节点对电容(C)充电并向低电位节点放电形成的。当Φ1开关闭合且Φ2 s开关打开时,电容C满电。所存储的电荷为:q=CV
当Φ1开关打开且Φ2开关闭合时,所存储的所有电荷移动到接地节点,每个开关周期内移动一定量的电荷。如果开关的控制频率为fs,则电荷量也以该频率移动。电荷的重复移动产生电流,遵从以下等式:
i = q/t = fsq = fsCV
与电阻器不同,开关电容中的电流不是连续移动的。通过对比以上两个电流等式,我们会发现,如果它们有相同的压降电流比,其就等效于电阻器。因此,我们可以使用并联开关电容串联电阻器。
V/i = R = 1/fsC
等效电阻与开关频率和电容成反比。通过改变开关频率可以容易地改变电阻器的相对值。较高的C值意味着较大的电流和较小的等效电阻。与此类似,较高的开关频率 (fs) 意味着较大的电流和较小的等效电阻。 Φ1和 Φ2开关必需满足时序要求才能产生上述结果,其中包括:
1) 不要同时关闭两个开关;
2) 在关闭某个开关之前,先打开另一个开关;
3) 选择最大的开关频率,以便让C在周期内得到完全充放电。
这种开关电容与运算放大器和比较器一起形成UAB。 这样开发者就能够整合多种模拟功能。 本文就解释了一个这样的模拟特性-VDAC。
VDAC的实现
VDAC是数模转换器电路,它将数字输入转换为一个等效模拟电压。VDAC位于众多控制系统的核心,决定了系统的性能和精度。VDAC输出电压的精度最终取决于其参考电压。VDAC有很多应用,例如可编程电压发生器,提供传感器偏置和补偿电压、比较器参考电压或动态输出波形。
VDAC电路的UAB开关电容拓扑如图4所示。由于开关电容模块的离散时间属性,开关电容会对数据进行采样和缓冲以获得连续输出。 该模块支持在MCU的工作和睡眠模式下工作。
这个拓扑结构为VDAC功能带来了灵活性。动态Vout范围由一端的Vref值和另一端的Vagnd值决定。这可以让用户通过外部电路提供Vref和Vagnd来设置动态Vout范围。此外,增益设置可将输出范围选为Vagnd+ Vref、Vagnd+ 2Vref或Vagnd+ 4Vref,从而保证Vssa和Vdda之间的全范围可行。此VDAC带有一个13位的输入端,其输入范围由- 4096到+4095。 这些值可以直接写入相应的寄存器以生效。
图4:基于开关电容拓扑结构的VDAC
模拟协处理器中的VDAC还支持乘法模式,在该模式下, VDAC输出电压乘以模拟输入信号,形成一个乘积输出。乘法DAC(MDAC)是固定参考应用的理想模块,在此类应用中,用户希望从固定直流电压生成波形。此外,这些MDAC还适合那些用户希望数字化转换AC或任意参考电压的各类参考应用。
VDAC IDE 配置
尽管MCU提供极高的灵活性和可编程性,开发人员还是担心为了适应他们的应用设计,还需要诸多的配置寄存器和调整模块工作。PSoC Creator工具支持模拟协处理器,可让用户方便地配置这些功能。PSoC Creator是一个免费的基于Windows的集成开发环境(IDE),能够实现并行硬件和固件设计系统。该工具的设计环境类似于乐高积木,用户可以通过双击组件将它们放置在电路图上,并配置它们的功能。图5显示了PSoC Creator中的VDAC组件配置工具,这些工具可以缩短设计周期。
图5:PSoC Creator中的VDAC组件配置工具