具有采样和保持电路及连续时间可编程块的数模转换器的制作方法

文档序号:14098058阅读:265来源:国知局

相关申请

本申请要求于2016年9月30日提交的美国临时专利申请第62/402,275号的权益,该专利申请的内容在此通过引用并入本文。

本公开涉及电子电路领域,特别涉及可编程电路。

背景

电子电路可以包括诸如电阻器、晶体管、电容器、电感器和二极管等的单独的电子组件,单独的电子组件被电流可以流过的导线或迹线连接。电子电路可以使用分立组件来构造,或更通常地被集成在集成电路中,其中组件和互连在诸如硅的公共衬底上形成。

附图简述

在附图的图中,本发明通过示例而非限制的方式被说明。

图1是示出根据一些实现的可编程电路的电路图。

图2a是示出根据其他实现的在消隐(blanking)模式下配置的可编程电路的电路图。

图2b示出了根据其他实现的用于在消除模式下配置的可编程电路的时序图。

图3a是示出根据其他实现的在可编程增益放大器模式下配置的可编程电路的电路图。

图3b是示出根据其他实现的在执行自动增益控制的可编程增益放大器模式下配置的可编程电路的电路图。

图4是示出根据其他实现的使用不同参考信号模式可配置的可编程电路的电路图。

图5是示出根据其他实现的在直接驱动模式下配置的可编程电路的电路图。

图6是示出根据其他实现的在缓冲驱动模式下配置的可编程电路的电路图。

图7a是示出根据其他实现的在采样和保持模式下配置的可编程电路的电路图。

图7b示出了根据实现的用于以采样和保持模式操作的可编程电路的时序图。

图8是示出根据一些实现的连续时间数模转换器的电路图。

图9示出了根据另一个实现的执行一个或更多个模式的可编程电路的方法的流程图。

图10是示出具有包括可编程电路的处理设备的电子系统的一个实现的框图。

详细描述

描述了可编程电路的装置、系统和方法。可编程电路可以是诸如集成电路(ic)的电子电路,其具有可重新配置以执行各种操作或功能(在本文中也称为“模式”)的多个组件。与固定功能电路不同,可以在操作期间(例如,现场可编程)或在使用之前对可编程电路进行编程(例如,配置或重新配置)以执行某些功能而不执行其他功能。此外,可以基于可编程电路(例如,运行时可配置的)的编程在操作期间配置或重新配置可编程电路。可编程电路可被重新编程多次,以执行不同的操作和功能。

应用需求增加了对具有提高的灵活性以支持多种应用的可编程电路的期望。设计人员的工作是为可编程电路带来功能以改善性能、成本,满足客户需求,并改变功能块的用途来执行多种功能,而不是利用片外组件来支持一些操作。

本公开的方面通过提供具有连续时间数模转换器(ctdac)、连续时间块(ctb)以及采样和保持(sh)电路的可编程电路来解决上述和其它缺陷。可编程电路可被配置为在不同模式下操作。在缓冲模式下,可编程电路可缓冲来自ctdac的输出信号。在缓冲模式下,可编程电路可进一步被配置为在消隐模式下操作,以使sh电路对ctdac输出信号执行消隐操作。消隐操作可能会衰减由与ctdac相关联的代码转换而导致的ctdac输出信号上的毛刺(glitches)。

毛刺(在本文中也称为“毛刺脉冲”)可以指诸如电流信号或电压信号的电信号的期望或稳态输出的过冲或下冲。例如,数模转换器(dac)的输出可能被期望为1伏特(v)。作为代码转换的结果,dac的输出可具有毛刺,并且可能在稳定到1v的稳态输出之前从1.2v(例如,过冲)摆动到0.9v(例如,下冲)。

代码转换可以指的是dac的输入信号从第一代码(例如,诸如二进制“0111”的数字代码)变化到另一个代码(例如,二进制“1000”),其中改变输入代码(在本文中还被称为“代码”或“数字代码”或“输入代码信号”)影响dac的模拟输出信号的变化。例如,在代码转换期间,且特别是在主进位(major-carry)转换期间,dac的模拟输出信号可能具有毛刺。在没有消隐的情况下,毛刺可传播到其他电路并导致错误。

在一些实现中,可编程电路可被配置为在可编程增益放大器(pga)模式下操作,以对可编程电路的输入信号执行增益操作。在一些实现中,输入信号是由可编程电路外部的源提供的外部输入信号。在实现中,可以通过控制ctdac的输入代码来控制增益。可注意到,在操作期间或操作之前,可编程电路可被配置和重新配置以在本文描述的不同模式下操作。还可注意到,可编程电路可以同时在本文所述的一个或更多个模式下操作。

在另外的其他实现中,可编程电路可以在pga模式下被配置以进一步执行自动增益控制(agc)(本文中也称为“自动增益控制模式”),其中在可编程电路的操作期间基于系统的要求调整pga的增益。

图1是示出根据一些实现的可编程电路的电路图。可编程电路100包括连续时间数模转换器(ctdac)101、采样和保持(sh)电路102以及连续时间块(ctb)103。可编程电路100包括开关150-173。在一些实现中,可以使用一个或更多个金属氧化物半导体(mos)晶体管来实现开关150-173。可以由控制逻辑(未示出)来控制开关150-173。在一些实现中,可编程电路100可以是独立的集成电路,或被集成到更大的集成电路中,诸如片上系统(soc)。在一些实现中,可编程电路100的一个或更多个组件可被实现为分立组件。在一些实现中,示出为可编程电路100的连接引脚的引脚180-184可以连接到片外组件或由片外组件供应的信号。在可编程电路100是ic的全部或一部分的一些实现中,内部信号可被连接到可编程电路100的组件以改善功能。如本文所使用的,内部信号可以指在ic内部的信号,其中可编程电路100是ic的全部或一部分,除非另有说明。如本文所使用的,外部信号可以指在ic外部的信号(例如,片外信号),其中可编程电路100是ic的全部或一部分,除非另有说明。例如,放大器131可以使用开关171、172或173连接到内部信号。放大器130可以使用引脚180或引脚181连接到外部信号。可注意到,在实现中,可编程电路100与图1所示的相比可以包括相同的、更多的或更少的组件。

在实现中,ctdac101包括代码输入端111、参考输入端113和输出端110。ctdac101可以在代码输入端111处接收数字代码,并在ctdac101的输出端110处将数字代码转换为模拟信号。在实现中,ctdac101可以在连续时域中经由输出端110输出信号。在一些实现中,ctdac101是连续时间电压数模转换器(dac),其在连续时域中输出电压信号(而不是将电流信号输出到ctdac外部的电阻器以产生电压)。例如,ctdac101可以在代码输入端111处接收数字代码,并在输出端110处输出代表数字代码的模拟电压信号。

在实现中,ctdac101可以是具有诸如8位分辨率、10位分辨率或12位分辨率等等(例如,奇数位分辨率)的任何分辨率的dac。在实现中,ctdac101是基于电阻器的dac,诸如电阻器-2-电阻器(r-2r)dac或分段dac。分段dac可以使用基于电阻器的dac连同其他架构的特征。例如,可以利用用于最低有效位(lsb)的10位的r-2r阵列和用于最高有效位(msb)的2位的温度计阵列来实现具有12位分辨率的分段dac。根据实现,将关于图8进一步描述分段dac。

如关于图4进一步描述的,在实现中,可编程电路100可被配置在不同的参考信号模式下,使得ctdac101被配置为在参考输入端113处接收不同的参考信号(在本文中也称为“参考电压”或“vref”)。

在其他实现中,可编程电路100可被配置为具有不同的驱动模式(例如,直接驱动模式或缓冲驱动模式),使得在有缓冲或没有缓冲的情况下,经由输出端110的ctdac101的输出信号被驱动,如关于图5和图6进一步描述的。

在实现中,sh电路102可以包括一个或更多个电容器,以执行采样和保持操作以及本文所述的其它操作。如图所示,sh电路102可以包括多个开关,诸如开关152-159。在一个实现中,sh电路102实现两个电容器:电容器120(chold)和电容器121(ctrack)。电容器120可以比电容器121大很多(例如,10倍或更大)。使用两个不同尺寸的电容器可以增加电路操作的更大的灵活性。例如,较大的电容器120可被用于采样和保持模式以执行采样和保持操作。较大的电容器120可使采样和保持操作运行更慢,而且还可以更久地保持电荷以更好地处理泄漏电流。在另一示例中,较小的电容器121可被用于消隐模式以执行消隐操作。较小的电容器121可以允许ctdac101更快地运行,并且可以具有足够的尺寸以执行消隐操作。可注意的是,除了本文描述的那些之外,可以在不同的模式下以不同的方式使用不同尺寸的电容器。可以关于图2a-2b进一步描述消隐模式。可以关于图7a-7b进一步描述sh模式。

可以用一个或更多个放大器(诸如,放大器130或放大器131)来实现连续时间块(ctb)103。在实现中,放大器130或131可以是诸如单位增益放大器的运算放大器。在实现中,放大器130或放大器131可以是能够具有轨至轨输入和输出范围的高增益带宽放大器。在实现中,放大器130或131可以在连续时域中提供输出信号。可注意到,为了说明的目的而不是限制,某些操作被描述为由放大器130执行,而其他操作被描述为由放大器131执行。还可注意到,放大器130或放大器131可被配置为执行本文中的操作的任一个。

ctb103还包括开关160-173。放大器130包括输入端132(正)、输入端133(负)和输出端134。放大器131包括输入端135(正)、输入端136(负)和输出端137。在实现中,可编程电路100可被配置为在可编程增益放大器(pga)模式下操作,因此可编程电路100作为如关于图3a进一步描述的可编程增益放大器操作。在另外的其他实现中,可编程电路可以在可编程衰减器模式下操作,以执行可编程衰减,如关于图3a进一步描述的。在另外的其他实现中,可编程电路100在可编程增益放大器模式下作为具有自动增益控制(agc)的可编程增益放大器操作,如关于图4进一步描述的。在实现中,可注意到,可以经由固件(或固件接口)对可编程电路100进行编程。可以由固件(例如,在微控制器(mcu)或处理核心中实现的)或控制逻辑/状态机或寄存器设置或其组合来控制可编程电路100的开关150-173。

在实现中,ctb103可以包括用于在连续时域中执行信号处理的可重配置模拟电路。在一些实现中,ctb103可以包括可重新配置到各种模拟电路中的放大器(例如,运算放大器)。ctb103可以经由诸如引脚180至184的输入/输出连接从可编程电路100的外部接收输入信号或向可编程电路100的外部提供输出信号。在实现中,ctb103可以接收来自模拟路由(未示出)的输入信号和/或将输出信号提供到模拟路由。在实现中,ctb103可被连接到低电阻和/或低噪声路由。在实现中,ctb103可以使用各种开关160-173接收高或低模拟电源(例如,vdda)、开关电源以及块电源。在实现中,ctb103可以接收参考电流(iref)或多个参考电压。在实现中,ctb103可以包括可重新配置到模拟系统的各种“前端”功能的放大器130或131。例如,放大器130或131可被配置为类别a模式以放大模拟输入信号,或可以配置为类别ab模式以驱动输出模拟信号。

在实现中,ctb103可被配置并以各种配置(在本文中也称为“ctb配置”)来操作。一些ctb配置可以与本文所述的各种可编程电路模式相关联。例如,在图2a中,可编程电路200在消隐模式下被配置,其中ctb103以缓冲器配置被配置。在缓冲器配置中,ctb103被配置为单位增益缓冲器(本文中也称为“单位增益放大器”)。在图3a中,可编程电路300在pga模式下被配置,其中ctb103以放大器配置被配置。在放大器配置中,例如,ctb103可以将信号放大(例如,产生增益)并且被配置有负反馈。在图3b中,可编程电路350在具有自动增益控制的pga模式下被配置,其中ctb103以具有使用控制逻辑(例如,agc逻辑363)的增益调整的放大器配置被配置。在图4中,可编程电路400被配置用于不同的参考信号模式,其中ctb103可以以具有开尔文连接的缓冲器配置来被配置。在具有开尔文连接的缓冲器配置中,ctb103的放大器130的负输入端不被局部短路,而是连接到ctdac101的参考输入端113。在图5中,可编程电路500在直接驱动模式下被配置,其中ctb103以断开配置被配置。在断开配置中,ctb103的一个或更多个放大器可以与采样和保持电路以及ctdac101断开连接,或者与电源电压断开连接以降低功耗。在图6中,可编程电路600在直接驱动模式下被配置,其中ctb103以缓冲配置被配置。在图7a中,可编程电路700在采样和保持模式下被配置,其中ctb103在缓冲器配置中被配置。可注意到,除了关于各种模式描述的那些之外,附加的ctb配置可能是可用的。例如,ctb103可以配置在外部配置中,其中使用引脚180-183将ctb103连接到各种外部组件(例如,电阻器、电容器等)。在另一个示例中,ctb103可被配置在滤波器配置中以用作滤波器,诸如有源低通滤波器。

图2a是示出根据其他实现的在消隐模式下配置的可编程电路的电路图。可编程电路200可以类似于关于图1描述的可编程电路100。在消隐模式下,sh电路102可以对ctdac101的输出信号执行消隐操作。消隐模式下的可编程电路200可以执行消隐操作以衰减ctdac输出信号上的毛刺。毛刺可能是ctdac101的代码转换的结果。可注意到,可编程电路200可以同时在消隐模式和缓冲驱动模式下操作。在缓冲驱动模式下,可编程电路200可用放大器131缓冲ctdac101的输出信号。放大器131可被配置作为单位增益放大器。关于图6进一步描述缓冲驱动模式。

在一些实现中,可以在消隐操作中使用电容器121(ctrack)。在其他实现中,可以在消隐操作中单独使用电容器120(chold)或使用电容器120和电容器121。如上所述,电容器120可以比电容器121大很多(例如,10倍或更大)。使用诸如电容器121的较小电容器来执行消隐操作可以允许ctdac101比使用电容器120更快地操作。使用诸如电容器120的较大的电容器执行消隐操作使得ctdac101比使用电容器121更慢地操作,但是也可以增加由ctdac101产生的毛刺的衰减。为了说明而不是限制的目的,电容器121(ctrack)被描述为用于消隐操作。

在实现中,消隐模式下的可编程电路200可以通过操作开关156(cos)来执行消隐操作。在ctdac101处的代码转换之前,可以断开sh电路102的开关156,使得ctdac输出信号上的毛刺不被传播到放大器131。在ctdac101的输出信号稳定到大致稳态之后,开关156可以闭合。电容器121可被用于在消隐操作期间(例如,开关156断开)存储ctdac输出信号的先前值,使放大器131能够缓冲先前值。

图2b示出了用于根据其他实现的在消隐模式下配置的可编程电路的时序图。关于图2b描述的可编程电路可以类似于分别关于图1和图2a描述的可编程电路100或200。如上所述,当在ctdac101处发生代码转换时,可以通过断开开关(例如,开关156)来执行消隐操作。当新值或代码被写入ctdac寄存器(例如,从ctdac_val_nxt到寄存器数据ctdac_val寄存器数据)时,可能会启动代码转换。可以响应于信号210(例如,clock_ctdac_pos_en或clk_dac)将代码写入ctdac寄存器。可以使用信号211(clk_dac_p)将ctdac寄存器中的值或代码填充到ctdac101。开关156可以由信号212(例如,cts0_c06开关控制)控制。当开关156断开时,ctdac101的输出信号在开关156再次闭合并被连接到诸如放大器131的组件之前具有时间来稳定。在实现中,开关156断开的时间长度是可编程的并且以周围(peri)时钟周期的数量(例如,clk-peri)来测量。

图3a是示出根据其他实现的在pga模式下配置的可编程电路的电路图。可编程电路300可以类似于关于图1描述的可编程电路100。在pga模式下,ctdac101的输出110通过闭合开关154被连接到放大器130的输入端133。放大器130的输出端134被连接到ctdac101的参考输入端113。要被放大的外部信号通过引脚180被供应给放大器130的输入端132。在其他实现中,不同的外部信号(将被放大的)通过引脚181供应给放大器130的输入端132。在另外的其他实现中,可以使用开关160或162将内部信号(将被放大的)供应给放大器130的输入端132,而不是通过引脚180或181来供应。

在pga模式下,供应到放大器130的输入端132的信号可以由增益因子控制的ctdac101放大。可以由供应给ctdac101的代码输入端111的数字代码来控制可编程电路300的增益。在示例中,可以通过ctdac101的分辨率除以输入到ctdac101的数字代码来估计pga模式下的可编程电路300的增益。例如,12位dac相当于4096级(levels)(或4095个步(steps))。如果为ctdac101选择的数字代码为2048级,则可编程电路300的增益为2(4096/2048)。使用具有12位分辨率的ctdac101,增益的范围可以从1到4096。在其他实现中,可以用具有不同分辨率的ctdac101来实现可编程电路300。在实现中,放大器130的输出信号可被估计为vpos*增益=vout(vpos是放大器130的输入端132处的输入信号,增益如上所述,且vout是放大器130在输出端134处的输出信号)。

在ctdac101被实现为基于电阻器的dac的实现中,ctdac101可被估计为如图3b所示的电阻分压器(电阻器1(r1)与电阻器2(r2)串联)等效电路。ctdac的输出信号可被估计为vref*(r2/(r1+r2)(vref是供应给参考输入端113的参考信号)。r1和r2可以是响应于供应给ctdac101的数字代码而改变电阻的可变电阻器。将ctdac101的电阻分压器应用到具有放大器130的反馈环路中可以类似于在放大器130的反馈中具有可调电阻器。具有反馈电阻分压器的放大器130可以等效于具有分压负反馈的放大器。

在实现中,可编程电路300可被配置在可编程衰减器模式下以执行可编程衰减器操作。如上所述,ctdac101的输出信号是参考信号的比率(例如,vref*(r2/(r1+r2)))。ctdac101的输出信号可以是vref的衰减版本。可以由通过代码输入端111接收的代码来控制衰减(例如,代码控制r1和r2的电阻值)。其他电路连接可以类似于在pga模式下关于可编程电路300所描述的连接。从引脚180、引脚181接收的输入信号或内部信号可能被衰减。来自输出端110的衰减信号可以直接被驱动到引脚184或使用放大器131进行缓冲。

图3b是示出根据其他实现的在执行自动增益控制的pga模式下配置的可编程电路的电路图。可编程电路350可以类似于分别关于图1和图3a描述的可编程电路100或300。为了说明而不是限制的目的,已经以简化的形式示出了可编程电路350,以便有助于理解。agc可以是不管变化的输入信号而在给定输出范围内控制输出信号(例如,放大器130的输出信号)的操作。在一些实现中,可编程电路350可以使用agc操作来控制放大器130在给定范围内的输出信号。

在实现中,在执行自动增益操作时,可编程电路350可被用作pga来驱动诸如逐次逼近寄存器(sar)adc362的模数转换器(adc)。可以控制开关366以将放大器130的输出端134连接到saradc362的输入端368。在其他实现中,不同的adc或不同的组件可被配置为执行agc。saradc362可以响应于从放大器130接收输出信号而从saradc362的输出端369输出数字输出信号364。基于数字输出信号364,agc逻辑363可以控制发送到ctdac101的代码输入端111的代码365,以调整ctdac101的增益,并将放大器130的输出信号保持在给定范围内。例如,可以调整pga的增益,因此saradc362一致地从放大器130接收大的输出信号(例如,4.5v-5v)。响应于从放大器130接收小的输出信号(例如,在4.5v-5v的范围之外),agc逻辑363可以响应于数字输出信号364来调整代码365。代码365可用于调整pga的增益。响应于调整pga的增益,放大器130的输出信号被控制以返回到大的输出信号。

可注意到,ctdac101显示了使用电阻器1360和电阻器2361的简化电阻器网络。可注意到,电阻器1360和电阻器2361可以示出ctdac101的等效电阻。还可注意到,可以使用开关367来控制到ctdac101的参考输入端113的参考信号。

图4是示出根据其他实现的利用不同参考信号模式可配置的可编程电路的电路图。可编程电路400可以类似于关于图1描述的可编程电路100。在一些实现中,可编程电路400可被配置为具有不同的参考信号模式,使得ctdac101接收不同的参考信号。参考信号(例如,参考电压或vref)被供应给参考输入端113。参考信号可以是vdda(例如,外部电源电压)或用ctb103缓冲的内部或外部参考信号。例如,为了将参考输入端113连接到外部电源,开关150可被闭合(并且被连接到参考输入端113的其它开关断开),使得ctdac101可以从可编程电路400外部的片外电源接收参考信号(例如,vdda)。使用外部电源电压作为参考信号可以使ctdac101成为比率计(例如,ctdac101的输出可以是电源电压的比率)。在粗体实线所示的另一示例中,为了将参考输入端113连接到内部参考信号,内部电压信号(例如,内部带隙参考)可被供应给放大器130的输入端132。放大器130的输出端可以通过闭合开关152连接到参考输入端113。参考信号还可以通过闭合开关153连接到放大器130的输入端133。在另一示例中,为了将参考输入端113连接到外部参考信号,可以通过引脚180或引脚181供应外部参考信号。可注意到,可以使用开关153(crs)提供开尔文连接,因此通过开关152(crd)的动态电压降(ir降)被放大器130的环路增益抑制。

图5是示出根据其他实现的在直接驱动模式下配置的可编程电路的电路图。可编程电路500可以类似于关于图1描述的可编程电路100。在直接驱动模式(也称为非缓冲模式)下,ctdac101的输出信号(经由输出端110)直接被路由到外部引脚,如引脚184。在直接驱动模式下,开关151闭合。在可选实现中,两个开关(开关151(co6)或开关159(c6h))可用于执行直接驱动模式。开关151或159可以在另一个断开的情况下被闭合,以在直接驱动模式下操作可编程电路500。用粗体实线示出用于直接驱动的信号路径。用粗体虚线连接粗体实线示出通过开关159的可选的直接驱动模式信号路径。

图6是示出根据其他实现的在缓冲驱动模式下配置的可编程电路的电路图。可编程电路600可以类似于关于图1描述的可编程电路100。在缓冲驱动模式(也称为缓冲模式)下,ctdac101的输出信号(经由输出端110)被路由通过放大器131。ctdac101的输出端110被连接在放大器131的输入端136中。放大器131的输出端137连接到引脚183,并与放大器131的输入端135反馈连接。开关156、开关157、开关168和开关166可以在缓冲驱动模式下闭合。如图所示,使用放大器131缓冲ctdac101的输出信号。放大器131可被实现为单位增益放大器。在一些实现中,可编程电路600可以根据片外负载实现不同的驱动模式。在实现中,与直接驱动模式相比,在缓冲驱动模式下的可编程电路600可以驱动10倍的电流。在实现中,可编程电路600可被配置为仅在缓冲驱动模式下操作或与本文所述的其他模式同时在缓冲驱动模式下操作。例如,可编程电路600可被配置为仅在缓冲驱动模式下操作,并且不被配置为在消隐模式或sh模式下操作。在另一示例中,例如,可编程电路600可被配置为在缓冲驱动模式和消隐模式下操作,因此来自ctdac101的输出信号的毛刺被衰减。在另一个示例中,可编程电路600可被配置为在缓冲驱动模式和sh模式下操作(例如,在其中ctdac101在采样和保持操作的保持部分期间可被禁用并且较大的电容器120(chold)可以实现的低功率操作中)。

图7a是示出根据其他实现的在sh模式下配置的可编程电路700的电路图。图7b示出了根据实现的用于以sh模式操作的可编程电路700的时序图。可编程电路700可以类似于关于图1描述的可编程电路100。在一些实现中,可编程电路700可被配置在采样和保持模式下以执行sh操作。在实现中,可以在sh模式下使用电容器120和120。在sh操作的采样部分中,开关156闭合,开关155断开,ctdac101导通,且ctdac101的输出信号在电容器120和电容器121上被采样。在采样和保持操作的保持部分中,开关156断开,开关155闭合,且ctdac101被禁用,以及放大器131可以缓冲电容器120和电容器121上的值。可注意到,在实现中,在保持操作中,开关155可被闭合以帮助处理泄漏。在其他实现中,开关155可以在保持操作期间断开。

在其他实现中,可以对ctdac输出信号以外的信号执行sh操作。例如,在实现中,外部信号可以使用开关159被路由通过引脚184到电容器120。开关158可以闭合,并且开关156可以类似于上述地被控制,以在外部信号上执行sh操作的采样部分和保持部分。在另一个示例中,内部信号可被路由通过开关170并通过开关171、172或173。开关158和157可以闭合,并且可以控制开关170以对内部信号执行sh操作的采样部分和保持部分。

图8是根据一些实现的连续时间数模转换器的电路图。ctdac800可以类似于关于图1描述的ctdac101。ctdac800显示了12位分段dac。可注意到,ctdac800是为了说明而不是限制而被提供的。ctdac800可以具有不同的架构并可以具有任何分辨率。

ctdac800示出了被实现为15级(t1-t15)温度计阵列的最高有效位(msb)的4位。lsb的8位被实现为r2r阵列。r-2r阵列的等效电阻为2r,其平行于15个温度计电阻。等效输出电阻为2r/16。当ctdac800接收到代码时,可以相应地控制开关(bot-b7和t1-t15),因此ctdac800的输出信号反映接收到的代码。

图9示出了根据另一个实现的执行一个或更多个模式的可编程电路的方法的流程图。方法900可由包括硬件(例如,电路、专用逻辑、可编程逻辑、微代码等)、软件(诸如在处理设备上运行的指令)或其组合的处理逻辑执行。可以由可编程电路100全部或部分地执行方法900。

方法900开始于块905,其中执行该方法的处理逻辑对可编程电路的连续时间数模转换器(ctdac)的输出信号执行消隐操作。方法900在块910处继续,其中在执行消隐操作之后,处理逻辑执行缓冲操作以缓冲ctdac输出信号。可编程电路被配置为在缓冲驱动模式和消隐模式下操作。在消隐模式下执行消隐操作包括通过闭合sh电路的开关来衰减ctdac输出信号上的毛刺。

方法900在块915中继续,其中处理逻辑对可编程电路的输入信号执行增益操作。可编程电路被配置为在pga模式下操作。执行增益操作包括将ctb的第一放大器的负输入端耦合到ctdac的第一输出端,将输入信号耦合到第一放大器的正输入端;以及将第一放大器的第二输出端耦合到ctdac的参考输入端。方法900在块920处继续,其中处理逻辑控制ctdac的输入代码来调节用于自动增益控制(agc)的可编程电路的输出信号。

图10是示出具有含可编程电路的处理设备1010的电子系统1000的一个实现的框图。可编程电路100可以包括关于本文所述的可编程电路100、200、300、350、400、500、600或700所描述的特征。在实现中,处理设备1010被配置以检测接近触摸感测设备(诸如,电容感测阵列1025)的一个或更多个触摸。处理设备可检测导电物体,诸如触摸物体1040(手指或无源触控笔、有源触控笔1030、或其任何组合)。电容感测电路1001可测量电容感测阵列1025上的触摸数据。触摸数据可表示为多个单元,每个单元代表电容感测阵列1025的感测元件(例如,电极)的交叉。在另一个实现中,触摸数据是电容感测阵列1025的2d电容图像。在一个实现中,当电容感测电路1001测量触摸感测设备(例如,电容感测阵列1025)的互电容时,电容感测电路1001获得触摸感测设备的2d电容图像并处理对于峰的数据和位置信息。在另一个实现中,处理设备1010是获得诸如来自感测阵列的电容触摸信号数据集的微控制器,并且因此在微控制器上执行的手指检测固件识别指示触摸的数据集区域、检测和处理峰、计算坐标或其任何组合。固件使用本文所述的实现来识别峰。固件可计算所得峰的精确坐标。在一个实现中,固件可使用计算触摸的质心的质心算法来计算对于所得到的峰的精确坐标,该质心是触摸的质量中心。质心可以是触摸的x/y坐标。可选地,可使用其它坐标插值算法来确定所得到的峰的坐标。微控制器可向主机处理器报告精确的坐标,以及其他信息。可以认识到,处理设备1010可被用于触摸感测之外或者除了触摸感测之外的应用中。

电子系统1000包括处理设备1010、电容感测阵列1025、触控笔1030、主机处理器1050、嵌入式控制器1060和非电容感测元件1070。电容感测元件是诸如铜的导电材料的电极。感测元件还可以是ito面板的一部分。电容感测元件可以是可配置的以允许电容感测电路1001测量自电容、互电容或其任何组合。在所描绘的实现中,电子系统1000包括经由总线1022耦合到处理设备1010的电容感测阵列1025。电容感测阵列1025可包括多维电容感测阵列。多维感测阵列包括被组织为行和列的多个感测元件。在另一个实现中,电容感测阵列1025操作为全点可寻址(“apa”)互电容感测阵列。在另一个实现中,电容感测阵列1025操作为耦合电荷接收器。在另一个实现中,电容感测阵列1025是非透明电容感测阵列(例如,pc触摸板)。电容感测阵列1025可被布置为具有平坦的表面轮廓。可选地,电容感测阵列1025可具有非平坦的表面轮廓。可选地,可以使用电容感测阵列的其它配置。例如,当本领域普通技术人员受益于本公开时将认识到,除了垂直列和水平行之外,电容感测阵列1025可具有六边形布置等。在一个实现中,电容感测阵列1025可包括在ito面板或触摸屏面板中。

本文描述了用于检测和跟踪触摸物体1040和触控笔1030的处理设备1010和电容感测阵列1025的操作和配置。简言之,处理设备1010可配置成检测在电容感测阵列1025上触摸物体1040的存在、触控笔1030的存在,或其任何组合。处理设备1010可在电容感测阵列1025上独立地检测和跟踪触控笔1030和触摸物体1040。在一个实现中,处理设备1010可在电容感测阵列1025上同时检测和跟踪触控笔1030和触摸物体1040。如果触摸物体是有源触控笔,则在一个实现中,有源触控笔1030可配置成作为定时“主控”操作,并且当有源触控笔1030在使用时处理设备1010调整电容感测阵列1025的定时以匹配有源触控笔1030的定时。在一个实现中,与常规的感应触控笔应用相反,电容感测阵列1025与有源触控笔1030电容耦合。还应当注意的是,用于电容感测阵列1025的相同组件(其可配置成检测触摸物体1040)也用于检测和跟踪触控笔1030而没有用于感应地跟踪有源触控笔1030的附加pcb层。

在所描述的实现中,处理设备1010包括模拟和/或数字通用输入/输出(“gpio”)端口1007。gpio端口1007可以是可编程的。gpio端口1007可耦合到可编程互连和逻辑(“pil”),其作为处理设备1010的gpio端口1007和数字块阵列之间的互连(未示出)。在一个实现中,数字块阵列可被配置成使用可配置的用户模块(“um”)实现各种数字逻辑电路(例如,dac、数字滤波器或数字控制系统)。数字块阵列可被耦合到系统总线。处理设备1010还可以包括诸如随机存取存储器(“ram”)1005和程序闪存1004的存储器(例如,存储设备)。ram1005可以是静态ram(“sram”),并且程序闪存1004可以是非易失性储存器,其可用于存储固件(例如,可由处理核心1002执行以实现本文描述的操作的控制算法)。处理设备1010还可以包括耦合到存储器的存储器控制器单元(“mcu”)1003和处理核心1002。处理核心1002是被配置为执行指令或执行操作的处理元件。处理设备1010可包括如受益于本公开的本领域普通技术人员将认识到的其它处理元件。还应当注意的是,存储器可在处理设备内部或在其外部。在存储器是内部的情况下,存储器可耦合到处理元件,诸如处理核心1002。在存储器在处理设备外部的情况下,当本领域普通技术人员受益于本公开时将认识到,处理设备耦合到存储器所驻留的另一设备。

处理设备1010还可包括模拟块阵列(未示出)。模拟块阵列还被耦合到系统总线。在一个实现中,模拟块阵列还可配置成使用可配置的um来实现各种模拟电路(例如,adc或模拟滤波器)。模拟块阵列还可耦合到gpio1007。

如图所示,电容感测电路1001可集成到处理设备1010中。电容感测电路1001可包括用于耦合到外部组件(诸如触摸传感器板(未示出)、电容感测阵列1025、触摸传感器滑块(未示出)、触摸传感器按钮(未示出)和/或其他设备)的模拟i/o。电容感测电路1001可配置为使用互电容感测技术、自电容感测技术、电荷耦合技术等来测量电容。在一个实现中,电容感测电路1001使用电荷累积电路、电容调制电路或本领域技术人员已知的其它电容感测方法来操作。在实现中,电容感测电路1001是cypresstma-3xx、tma-4xx或tma-xx系列的触摸屏控制器。可选地,可使用其他电容感测电路。如本文所描述的互电容感测阵列或触摸屏可包括设置在视觉显示器本身(例如,lcd监视器)或者显示器前面的透明衬底上面、内部或下面的透明的导电感测阵列。在一个实现中,tx和rx电极分别以行和列配置。应当注意的是,在任何选择的组合中,电极的行和列可通过电容感测电路1001配置为tx或rx电极。在一个实现中,感测阵列1025的tx和rx电极可在第一模式下配置为互电容感测阵列的tx电极和rx电极来操作以检测触摸物体,并且在第二模式下作为耦合电荷接收器的电极来操作以检测在感测阵列的相同电极上的触控笔。当被激活时,生成触控笔tx信号的触控笔被用于将电荷耦合到电容感测阵列,而不是如在互电容感测期间所完成的测量在rx电极和tx电极(感测元件)的交叉处的互电容。两个感测元件之间的交叉可理解为一个感测电极越过另一感测电极或与其重叠的位置,同时保持彼此的电流隔离。当执行触控感测时,电容感测电路1001不使用互电容或自电容感测来测量感测元件的电容。相反,如本文所述,电容感测电路1001测量在感测阵列1025和触控笔之间电容耦合的电荷。与tx电极和rx电极之间的交叉相关联的电容可通过选择tx电极和rx电极的每个可用组合来感测。当触摸物体(诸如手指或触控笔)接近电容感测阵列1025时,物体导致tx/rx电极中的一些之间的互电容减小。在另一个实现中,手指的存在增加了电极的耦合电容。因此,可通过识别在rx电极和tx电极之间具有减小的耦合电容的rx电极来确定手指在电容感测阵列1025上的位置,在rx电极上测量到减小的电容时,tx信号被施加到tx电极上。因此,通过顺序地确定与电极的交叉相关联的电容,可确定一个或更多个输入的位置。应当注意的是,该过程可通过确定感测元件的基线来校准感测元件(rx和tx电极的交叉)。还应当注意的是,当本领域普通技术人员受益于本公开时将认识到,可使用插值以比行/列间距更好的分辨率来检测手指位置。另外,当本领域普通技术人员受益于本公开时将认识到,可使用各种类型的坐标插值算法来检测触摸的中心。

在实现中,电子系统1000还可包括经由总线1071和gpio端口1007耦合到处理设备1010的非电容感测元件1070。非电容感测元件1070可包括按钮、发光二极管(“led”)以及其他用户接口设备,诸如鼠标、键盘或不使用电容感测的其他功能键。在一个实现中,总线1022和1071体现在单个总线中。可选地,这些总线可配置在一个或更多个独立的总线的任何组合中。

处理设备1010可以包括内部振荡器/时钟1006和通信块(“com”)1008。在另一个实现中,处理设备1010包括扩频时钟(未示出)。振荡器/时钟块1006向处理设备1010的一个或更多个组件提供时钟信号。通信块1008可用于与外部组件(如主处理器1050)经由主机接口(“i/f”)线1051进行通信。可选地,处理设备1010还可被耦合到嵌入式控制器1060以与外部组件(如主处理器1050)进行通信。在一个实现中,处理设备1010可配置以与嵌入式控制器1060或主机处理器1050通信以发送和/或接收数据。

处理设备1010可驻留在共同载体衬底上,诸如,例如ic管芯衬底、多芯片模块衬底等。可选地,处理设备1010的组件可以是一个或更多个独立的集成电路和/或分立组件。在一个示例实现中,处理设备1010是片上可编程系统处理设备,由加利福尼亚州圣何塞市的cypress半导体公司开发。可选地,处理设备1010可以是由本领域普通技术人员已知的一个或更多个其他处理设备,如微处理器或中央处理单元、控制器、专用处理器、数字信号处理器(“dsp”)、专用集成电路(“asic”)、现场可编程门阵列(“fpga”)等等。

还应当注意的是,本文描述的实现不限于具有将处理设备耦合到主机的配置,而且可包括测量感测设备上的电容并将原始数据发送到通过应用对其分析的主机计算机的系统。实际上,由处理设备1010完成的处理可在主机中完成。

电容感测电路1001可集成到处理设备1010的ic中,或者可选地,集成在独立的ic中。可选地,电容感测电路1001的描述可被生成和编译以并入到其它集成电路中。例如,描述电容感测电路1001或其部分的行为级代码可使用硬件描述语言(诸如vhdl或verilog)来生成,并且存储到机器可访问介质(例如,cd-rom、硬盘、软盘等)。另外,行为级代码可被编译到寄存器传送级(“rtl”)代码、网表或者甚至电路布局中,并被存储到机器可访问媒介。行为级代码、rtl代码、网表和电路布局可表示各种抽象等级以描述电容感测电路1001。

应当注意的是,电子系统1000的组件可包括上述所有组件。可选地,电子系统1000可包括上述组件中的一些。

在一个实现中,电子系统1000用在平板计算机中。可选地,电子设备可被用于其他的应用中,诸如笔记本电脑、移动手持终端、个人数据助理(“pda”)、键盘、电视、远程控制器、监控器、手持多媒体设备、手持媒体(音频和/或视频)播放器、手持游戏机设备、用于销售交易点的签名输入设备、电子书阅读器、全球定位系统(“gps”)或控制面板。本文描述的实现不限于用于笔记本实现的触摸屏或触摸传感器板,而且可用于其他电容感测实现中,例如,感测设备可以是触摸传感器滑块(未示出)或触摸传感器按钮(例如,电容感测按钮)。在一个实现中,这些感测设备包括一个或更多个电容传感器或其它类型的电容感测电路。本文描述的操作不限于笔记本指针操作,而且可包括其他操作,诸如照明控制(调光器)、音量控制、图形均衡器控制、速度控制或需要渐进或离散调整的其他控制操作。还应当注意的是,电容感测实现的这些实现可与非电容感测元件结合使用,非电容感测元件包括但不限于拾取按钮、滑块(例如,显示器亮度和对比度)、滚轮、多媒体控制(例如,音量、轨道前进等)手写识别和数字小键盘操作。

本文所述的实现可用于电容感测系统的互电容感测阵列的各种设计中,或用于自电容感测阵列中。在一个实现中,电容感测系统检测在阵列中激活的多个感测元件,并且可分析在相邻感测元件上的信号模式以将噪声与实际信号分离。当本领域普通技术人员受益于本公开时将认识到,本文所描述的实现不限于特定的电容感测解决方案,而且也可与包括光感测解决方案的其他感测解决方案一起使用。

在以上的描述中,阐述了许多细节。然而,对于获得本公开的益处的本领域中的技术人员将明显的是,本发明的实现可在没有这些特定细节的情况下进行实践。在一些实例中,众所周知的结构和设备以框图形式而不是详细地示出,以免使本说明书模糊。

详细描述的一些部分依据对计算机存储器内的数据位的操作的算法和符号表示来呈现。这些算法描述和表示是数据处理领域的技术人员所使用的手段,以最有效地向本领域的其他技术人员传达他们工作的实质。算法在此处并且通常被设想为产生期望结果的自我一致的步骤序列。这些步骤是需要对物理量进行物理操作的那些步骤。通常,虽然不是必须的,但是这些量采用能够被存储、传递、组合、比较和以其他方式操纵的电或磁信号的形式。主要出于习惯用法的原因,将这些信号称为位、值、元素、符号、字符、术语、数字等等已被证明有时是方便的。

然而,应当记住,所有的这些和类似的术语与适当的物理量相关联并且仅仅是应用于这些量的方便标记。除非特别声明,否则从上述讨论中明显的是,应当认识到的是在整个描述中,使用诸如“测量”、“生成”、“采样”、“转换”等术语的讨论是指计算系统或类似的电子计算设备的动作和过程,其将在计算系统的寄存器和存储器内表示为物理(例如,电子)量的数据操作和变换为在计算系统存储器或寄存器或此类信息存储、传输或显示设备内类似地表示为物理量的其它数据。

单词“示例(example)”或“示例性(exemplary)”在本文中被用于指作为示例、实例或例证。本文中被描述为“示例”或“示例性”任何方面或设计没有必要解释为与其他方面或设计相比是优选或者有利的。此外,单词“示例”或“示例性”的使用旨在以具体的方式来提出概念。如在本应用中所使用的,术语“或者(or)”旨在表示包括性的“或者(or)”而不是排除性的“或者(or)”。换言之,除非另外指出的,或者从上下文中清晰的,“x包括a或者b”旨在指自然包括性的排列中的任一个。换言之,如果x包括a;x包括b;或者x包括a和b两者,那么“x包括a或者b”在任何前述的实例中被满足。另外,如在本应用和所附权利要求书中被使用的冠词“一个(a)”以及“一个(an)”通常应当被解释为意味着“一个或更多个(oneormore)”,除非另外指出或者从上下中清晰地指向单个的形式。此外,除非有这样的描述,否则术语“实现(animplementation)”或者“一个实现(oneimplementation)”或者“实现(animplementation)”或者“一种实现(oneimplementation)”全部地不旨在意味着相同的实施例或实施方式。

本文描述的实施例还可涉及用于执行本文操作的装置。该装置可为了所需的目的而被特别构造,或者它可包括由储存在计算机中的计算机程序选择性激活或重配置的通用计算机。这样的计算机程序可被存储在非暂时性计算机可读存储介质中,诸如但不限于包括软盘、光盘、cd-rom和磁光盘的任意类型的盘、只读存储器(rom)、随机存取存储器(ram)、eprom、eeprom、磁卡或光卡、闪存、或适用于储存电子指令的任何类型的介质。术语“计算机可读存储媒介”应当被认为包括存储一个或更多个指令集的单个媒介或多个媒介(例如,集中式或分布式的数据库和/或相关联的高速缓存以及服务器)。术语“计算机可读介质”还应该被认为包括能够存储、编码或承载用于由机器执行的一组指令并且使机器执行本实现的方法的任意一个或更多个的任何介质。因此,术语“计算机可读存储介质”应该被认为包括但不限于固态存储器、光学介质、磁介质、能够储存用于由机器执行的一组指令且使机器执行本实现的方法的任意一个或更多个的任意介质。

本文呈现的算法和显示不是固有地与任何特定计算机或其他装置相关。各种通用系统可以根据本文的教导与程序一起使用,或者其可证明构建更专用的装置以执行所需的方法步骤是方便的。用于这些系统中的各种系统所需的结构将从以下描述中出现。另外,本实现没有参考任何特定的编程语言来描述。将认识到,可以使用各种编程语言来实现如本文所述的实现的教导。

以上描述阐述了诸如特定系统、组件、方法等的示例的许多特定细节,以便提供对本发明的若干实现的良好理解。然而,对于本领域的技术人员将明显的是,本发明的至少一些实现可在没有这些特定细节的情况下进行实践。在其他实例中,众所周知的组件或方法没有具体描述或者是以简单的框图的形式来呈现,以避免不必要地使本发明模糊。因此,以上阐述的特定细节仅仅是示例性的。特定的实现可以与这些示例性细节不同并且仍然被视为在本发明的范围内。

将理解的是,以上描述旨在是例证性而不是限制性的。在阅读并且理解以上描述之后,许多其他实现对于本领域的技术人员将是明显的。因此,本发明的范围应参考所附权利要求连同这些权利要求有权要求的等效物的整个范围来确定。

在上文的描述中,出于解释的目的,阐述了许多具体细节,以提供对本发明的整体理解。然而,对于本领域技术人员明显的是,本发明可在没有这些具体细节的情况下被实践。在其他实例中,众所周知的电路、结构和技术没有被具体示出,而且以框图示出,以避免对本说明书的理解的不必要的模糊。

在说明书中,对“一个实现(oneimplementation)”或“实现(animplementation)”的引用,是指在本发明的至少一个实现中包括结合实现描述的特定特征、结构或特性。在本说明书中位于不同位置的短语“在一个实现中(inoneimplementation)”不必指代相同的实现。应当注意的是,如本文所使用的术语电容器可指在导体之间产生电容的导体和电介质的任何组合,以及分立组件。例如,如本文所述的,电容可创建为两个电极之间的交叉。第一电极和第二电极之间的交叉也称为传感器。两个感测元件(电极)之间的交叉可理解为一个感测电极跨越另一感测电极或与其重叠的位置,同时保持彼此的电流隔离。在其他情况下,可使用分立电容器来产生电容。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1