完全可重配置模拟电路(Total Reconfigurable Analog Circuit,简称TRAC)是英国Fast Analog Solutions Ltd(简称FAS)出品的现场可编程模拟器件系列产品的总称,包括TRAC系列器件和TRAC开发软件。它们凭借独有的函数级器件结构与简便易用的集成开发环境的共同支持,可以很好地贯彻和实施自顶向下的结构化设计准则。设计者可以用传递函数和数学表达式描述被研究的问题,了解模拟电路的基本知识就可以完成硬件电路的设计。从设计描述、验证到用户获得所需功能的芯片,数分钟内就可完成。这对加速电路设计、降低设计风险等发挥了重要作用,克服了模拟电路设计需要不断改进、调试困难的弊端,使模拟电路的设计向自动化的发展方向迈出了一大步。
1 TRAC的基本结构和设计思想
TRAC020LH是TRAC系列的低功耗版本。和该系列其它芯片一样,它利用独特的基于数学运算的功能集,为模拟电路设计问题提供了一个基于宏的解决方案。现以它为例简要介绍如下。
其核心部分是20个首尾相接的可编程基本单元(Cell),每个基本单元均包含一个双端输入、单端输出的可编程模拟单元和一个长度为3位的移位寄存器;每个单元均具备8种数学运算功能,分别为ADD(加法)、NEGATE(取负)、LOG(对数)、ALOG(反对数)、RECTIFY(半波整流)、NON-INVERTING PASS(单位增益直通)、AUX(辅助运算,包括放大、微分和积分三种子功能)及OFF(断路)。模拟单元具体实现何种数学运算功能,取决于移位寄存器中3位配置数。上面8种配置数据分别为:110、010、011、010、111、001、100、000。
ADD功能组态用图1所示的简单模拟表示。当三个电阻取一样的数值时,则有
V0=-R(Va/R+Vb/R)=-(Va+Vb)
NEGATE(取负)功能组态只有一个输入端,输出与输入信号反相。
LOG(对数)功能组态用图2所示的电路表示。三极管的这种接法相当于两支二极管反向并联。由三极管的伏安特性可得
V0=-kT/qLog(V/RI0+1)
其中k为玻耳兹曼(Boltzmann)常数,T为绝对温度,q为电子电量,Io为二极管的反向饱和电流。此处R=20kΩ,Io=10 -4A。代入上式中有
Vo=-0.0125Log(Va/RI0+1)
ALOG(反对数)功能组态如图3所示。只要将对数运算功能组态中二极管和电阻的位置对换即可,输出电压为
V0=-RI0(expqVa/kT-1)
RECTIFY(半波整数)功能组态如图4所示。当输入交流信号时,上半轴信号二极管处于截止状态,输出为零;下半轴信号二极管处于导通状态,输出与输入信号一致,因而实现了半波整流功能。
AUX(辅助运算)功能组态在可编程模拟单元中提供了一个同相端接地的开环运算放大器。要实现包括Amplify(放大)、Differentiate(微分)和Integrate(积分)三种子功能,还必须在外部输入信号Va和放大器反相端以及反相端和输出端间接入所需的外部元件,各自的放大倍数(Rf/Rs)或RC时间常数在电路设计配置时输入,仿真启动时就能采用,如图5(a)、(b)、(c)所示。
OFF(断路)功能组态是指信号不能通过,处于阻断状态。
从TRAC的20个单元结构可知,OFF功能组态至少用于下列两种情况:
①当需要将外部信号或外部连接线(link)引入单元时,该单元的左边单元需要指定为OFF;
②使用AUX功能组态时,需要接入外部的R、C等元器件,则它左边的单元需要指定为OFF。
正是由于TRAC的这种结构和数学功能集的灵活搭配,设计者只要根据设计目标所要求的电路功能,考虑目标相应的数学运算,再结合TRAC器件内的8种功能组态、内部连接形式和实际经验,就可初步画出电路的框图。在此过程中应遵循结构化的设计思想,自顶向下,按层次分解,最后将整个电路分解成若干个TRAC的功能组态,输入并仿真,直到与要求相符。设计者可以用“一拖一放”的简单动作完成各种复杂模拟电路的设计。在这一点上,TRAC比Lattice公司生产的ispPAC系列灵活得多。
2 锁相环电路功能及设计
2.1 锁相环简介
锁相环(PLL)是一个相位负反馈控制系统,主要由鉴相器(PD)、环路低通滤波器(LPF)和压控振荡器(VCO)三个基本部分组成,如图6所示。鉴相器是相位比较装置,用来检测输入信号和反馈信号之间低通滤波器用于将鉴相器的输出信号的高频成分滤掉,进行平均,获得直流误差输出,通常用有源低通滤波器来实现;压控振荡器是一个电压-频率变换装置,振荡频率应随输入电压线性变化,输出信号反馈到鉴相器的一个输入端,对鉴相器起作用的是其相位信号。从整体上来说,输入与输出信号频率差不断减小,直到差值为零,进入锁定状态,相差等于一个极小的数值,实现频率跟踪。下面分二个部分用TRAC实现锁相环,并给出各自的仿真结果。
2.2 鉴相器和环路滤波器的设计
鉴相器用一个四象限乘法器来实现。用TRAC设计的页和仿真结果如图7所示。其中外部信号从第一页的I/O1和I/O11输入,从第二页的I/O27输出,完成相位检测功能;然后从第二页的3单元(I/O27)进入有源一阶低通滤波器,直流误差电压从I/O30输出。I/O2和I/O12的DC直流电压信号的输入,是为了保证乘法器可工作于正负极性信号。当然,所有输入信号不能超过它们的最大幅度限制。I/O18的DC直流电压信号用于补偿实际应用过程中失调电压和增益的误差,一般用电器分压实现。I/O31与I/O33、I/O33与I/O35间的外接R、C决定滤波器的截止频率,影响锁相环跟踪输入信号频率变化的速度,同时也限制捕捉范围。时间常数过长,会使环路跟踪较快变化的频率信号时,引起较长时间的延迟;时间常数过短,输出电压变化较快,将引起压控振荡器的变化无常。因此,要根据系统的要求和输入信号的情况合理调整。仿真结果为两输入信号相位差为36°时的输出电压。
2.3 压控振荡器的设计
压控振荡器可以用图8所示的框图表示。设计的页和仿真结构如图9所示。
其中输入电压从I/O1进入,从I/O13输入。I/O14的DC信号为起振信号,仿真时要一个直流电压,应用时可根据实际情况来定。例如,在感应加热中利用锁相环进行逆变器谐振频率跟踪,启动时需要一个它激的过程,完全可以在此端加上一定大小的电压来达到目的。
3 TRAC的配置
设计好的文件可通过简单的串行接口与微机、嵌入式微处理器、单片机或EPROM等相连接。在上电时,自动装入配置数据并存储在IRAC的移位寄存器中,自动配置成与配置数据相对应的功能组态。其中最典型的做法是利用TRAC-S2。图10是利用Microchip的PIC12C508A对TRAC020LH配置的应用电路。实际应用时,将上述的4页设计合理分配为3页,然后把前面每个芯片的DOUT引脚和后面芯片的DATA引脚相连,PD引脚连在一起。PIC12C508C是市面上体积最小的单片机,只有8个引脚,价格低廉,编程界面方便。在利用MPLAB对PIC12C508烧写程序时,要关闭看门狗,启用内部振荡器。特别是编写配置数据时要注意RTAC中最后单元的配置数据在前,第个单元的在最后。
结语
前述所设计的锁相环最高频率可达50kHz,若采用快速乘法器,设计频率最高可达1MHz,更为重要的是频率稳定度好,线性区域宽。
TRAC系列可编程模拟器件利用独特的结构,使这计者利用描述电路行为和特性或数学运算,就可以实现各种各样的模拟电路,“所见即所得”,为低风险、高速度地获取可行的硅(电路)解决方案提供了集成化的途径;但也有其缺点,比如可重配置电路没有ispPAC系列方便,增加了外围电路的复杂性。