脉宽调制模式发生器电路、对应的设备和方法与流程

文档序号:16524022发布日期:2019-01-05 10:11阅读:277来源:国知局
脉宽调制模式发生器电路、对应的设备和方法与流程

本申请要求2017年6月16日提交的意大利申请第102017000067192号的优先权,其内容通过引证结合在本文。

本发明总体上涉及电子电路,并且在具体实施例中,涉及脉宽调制(pwm)模式发生器电路、对应的设备和方法。



背景技术:

pwm发生器电路(诸如用作led驱动器单元(例如,在显示屏中)的集成电路)可以涉及外部控制电路(例如,微控制器)的连续干涉以能够连续且动态地改变pwm信号的参数。这例如可以是针对每个led通道的占空比(其是信号为“on”的时间ton与pwm信号的周期ton+toff的比率)的情况。

连续干涉可以使得控制器资源和时间被贡献给各种行为,诸如中断服务程序执行、标记轮询、用于控制特定led通道配置有特定占空比的时间的内部定时器使用以及多久可期望不同占空比等等。



技术实现要素:

一些实施例提供了不涉及控制器干涉的电路。例如,一个或多个实施例可以应用于用作led驱动器的集成电路(ic)。

一个或多个实施例可以涉及对应的设备和对应的方法。

一个或多个实施例可以提供例如用于用作能够在数量为i的输出通道上生成数量为n的pwm模式序列的led驱动器的集成电路的架构。

一个或多个实施例利于例如在led驱动器布置中减少控制器单元的干涉,使得控制器资源可用于包括实时任务的其他任务。

一个或多个实施例可以允许为多个输出通道中的每一个指定pwm占空比、对应模式持续时间以及期望重复特定序列的次数。

一个或多个实施例使得可以指定特定通道和后续通道之间的可编程偏移。

一个或多个实施例可以利于在特定通道和随后的一个通道之间的通道波形中得到平滑改变,由此利于避免pwm通道中的突变(transition)。

一个或多个实施例可以应用于例如在控制器单元(诸如微控制器)可以例如经由串行接口编程led驱动器寄存器的布置中用作led驱动器的集成电路。

一个或多个实施例利于限制控制器单元的干涉,以编程期望用于特定通道i和特定模式n的占空比值,可能与单个模式n的持续时间、偏移时间以及特定模式序列期望重复多少次(例如,从1到无限循环)一起。由此,与一个或多个实施例协作使用的控制器单元可以简单地开始特定模式序列,然后转换为执行其他控制/处理任务(诸如实时任务)。

一个或多个实施例可以提供以下能力:针对模式中的每个通道设置pwm占空比(ton)值,同时还可以设置每个模式的持续时间(例如,如果为0,则可以跳过对应的模式)、整个模式序列(可以采用无限循环的形式)的重复时间以及pwm波形之间的偏移,同时还利于精确的内部同步。

一个或多个实施例可以依赖于有限状态机,这可以利于序列参数中的同步平滑改变,具有避免输出pwm波形中的不连续(“切割”)的能力。在用于驱动led的过程中,这些会在led发射中引起不期望的闪烁。

一个或多个实施例可以提供单个内部缓冲(用于单个模式),其中通过有限状态机来管理改变(例如,从模式到下一个)。这利于不具有不连续(被驱动led中没有闪烁)的pwm波形中的平滑改变,同时还利于硅面积的减小(可以避免多重缓冲和握手机制),同时还减少了外部(宏)控制器的介入。

附图说明

现在将参照附图仅通过示例来描述一个或多个实施例,其中:

图1a和图1b示出了示例性实施例的框图,为了表示的清楚将其分为两个部分,

图2是pwm信号生成的示例性表示,以及

图3是一个或多个实施例的可能操作的示例性示图。

具体实施方式

在接下来的描述中,示出一个或多个具体细节,目的在于提供本说明书的实施例的示例的深度理解。在没有这些具体细节中的一个或多个的情况下,或者利用其他方法、部件、材料等可以得到实施例。在其他情况下,没有示出或详细描述已知结构、材料或操作,使得实施例的特定方面不被模糊。

在本说明书的框架中参考“实施例”或“一个实施例”用于指示与实施例相关描述的具体配置、结构或特性包括在至少一个实施例中。因此,在本说明书的一个或多个点中出现的诸如“在实施例中”或“在一个实施例中”的措辞不是必须表示一个且相同的实施例。此外,在一个或多个实施例中,可以任何适当的方式来组合具体的构造、结构或特性。

提供本文使用的参考仅用于方便,因此不限定实施例的保护程度或范围。

在图1a中,参考标号g指示pwm模式生成电路,其在一个或多个实施例中可以与图1b中所示用于生成pwm调制信号的pwm发生器pwm1、pwm2、…pwmi的集合或库协作。

在一个或多个实施例中,这种pwm调制信号(在图2中例示)可以包括用于例如包括在电子设备(整体在图中不可见)中的单元d(诸如显示屏)中的led的驱动信号。

在一个或多个实施例中,pwm发生器pwm1、pwm2、…pwmi可结合到具有发生器g的单个集成电路中,并且生成相应的pwm信号。例如,pwm发生器pwm1、pwm2、…pwmi可包括在内部信号pwm_shift_cnt(i)上活跃的比较器,使得例如来自pwm发生器的输出信号由于pwm_shift_cnt(i)=1而走“高”以及由于pwm_shift_cnt(i)=pwmton(i)而走“低”。

在一个或多个实施例中,电路g可以包括多个存储器位置,如图1a所例示的。

在一个或多个实施例中,以n“模式”集合11、…1n布置存储器位置,其中每个集合都包括数量为i的“通道”存储器位置(例如,寄存器)111、112、…、11i;121、122、…12i;1n1、1n2…1ni。上面讨论的存储器位置由此可对应于数量为n的集合,每个都包括i个通道,每个通道又包括j位(例如,j=12)。

由此,所讨论的存储器位置可以为每n个(不同的)模式存储指示朝向pwm发生器pwm1、pwm2、…pwmi的相应一个pwm发生器发送的输出信号的一般通道i的相应占空比值pwmton(i)(j位宽,例如j=12)的数据。

参考符号21、22、…2n指定进一步n个(k位宽,例如k=8)“模式持续时间”存储器位置,其可以存储指示与n个模式中的每一个相关联的持续值的数据(例如,20ms的多倍:这当然仅仅是示例性的非限制值)。

在一个或多个实施例中,如本文所例示的,如果模式持续时间被编程为“0”,则在序列中跳过相对模式。

可以设置又一“模式重复”存储器位置30(例如,8位宽),以存储指示期望通过发生器g重复特定模式序列的次数(例如,从1到“无限次”)的数据。

在一个或多个实施例中,可以设置存储器位置40的又一集合,包括三个存储器位置401、402、403。

位置401被例示为包括“偏移”存储器位置401(m位宽,例如m=9),用于存储指示一个通道和序列中的后续通道之间的shift时间的数据。

例如,本文公开的布置可以具有4096微秒的pwm周期tpwm:在这种情况下,偏移时间可以编程为从0到tpwm(i)(偏移最大值),其中i是通道数(例如,i=12),其(参考本文提供的数据的量)可以从0变到341微秒(例如,通过用通道数除以pwm周期而得到)。

位置402被例示为可以存储使能信号en,其可用于开始发生器g的操作,并且可能地,其他内部参考电压和其他已知电路在图中不可见。

如所例示的,可以设置位置403以存储自动模式序列启动信号patsr,使得一旦管理电路g的操作的控制单元u(例如,微控制器)启动了序列发生(例如,如前所讨论的,通过将数据加载到各个存储器位置中),可以通过发生器g来管理pwm信号生成,例如通过以下讨论的有限状态机(fsm)50。这有利于减少单元u(与一个或多个实施例的电路g不同的元件)的参与,由此可以减少其用于其他任务(诸如实时任务)的资源和时间。

再次,应注意,通过本说明书呈现的定量数据(例如,存储器位置中位的数量、时间值等)仅通过示例来提供,并且不用于限制实施例的范围。

在一个或多个实施例中,有限状态机50可以向多工器601提供模式选择信号pat_sel,使得对应于期望pwm调制模式的集合11、12、…1n中的一个被选择,并且从对应存储器位置读取的占空比数据作为模式(i)信号馈送给pwm缓冲器70。

pwm缓冲器70被配置为朝向pwm发生器pwm1、pwm3、…pwmi(参见图1b)输出对应的“模式”信号pattern_buf(i),pwm发生器pwm1、pwm3、…pwmi还接收来自有限状态机50的相应“通道”使能信号en_ch(i)。

在本文例示的实施例中,在利用一般使能信号en(i)(例如,来自40中的存储器位置)进行选通(例如,经由and门)之后,使能信号en_ch(i)被馈送给pwm发生器pwm1、pwm2、…pwmi。

在本文例示的实施例中,pwm发生器pwm1、pwm3、…pwmi还接收与401处存储的值乘以i+pwm_cnt(i)相对应的偏移计数器信号pwm_shift_cnt(i),其中pwm_cnt(i)是来自80的输出,即pwm_shift_cnt(i)=pwm_cnt+(ixshift)。

如以下所讨论的,pwm缓冲器70可以对偏移计数器信号pwm_shift_cnt(i)敏感,从而可能更新缓冲器。

接收使能信号en(来自402)的计数器80经由接收shift信号(来自401)的偏移缓冲器90与有限状态机50协作。

有限状态机50和计数器80的操作通过时钟信号clk(来自图中不可见的发生器)来定时。

参考标号601指示又一多工器,其被配置用于向有限状态机50输入在pat_sel信号的控制下从n个可能值pat_duration1、pat_duration2、...、pat_durationn中选择的模式持续时间信号pat_dur。

时钟信号clk也被馈送给与有限状态机50耦合的时钟信号分频器602,以向其提供(频率)划分时钟信号step_i。

来自有限状态机50的输出信号pat_sel还被发送给又一多工器601,以从用于各种模式的pat_duration1、….、pat_durationn中选择将被馈送给有限状态机50的模式持续时间信号pat_dur。

现在将参照图3的示图以及图1a(和图1b)中例示的电路布局通过示例描述一个或多个实施例的可能操作。

图3的示图是有限状态机50的可能操作的示例。再次,假设一旦控制单元u(例如,微控制器)例如通过编程patsr位启动序列生成处理(例如,如前所讨论的,通过将数据加载到各个存储器位置中),例如通过有限状态机50,可以在发生器g中管理pwm信号生成,使得控制器单元u可以将其资源和时间用于其他任务(诸如实时任务)。

首先参照图3(以及图1a,右手侧的存储器位置包括寄存器,如图所示各种信号源于寄存器),在接通电源时,微控制器(控制器单元u)设置patsr位(403处),使得有限状态机50从idle状态1000变为模式选择(patsel)状态1002,并且将其输出pat_sel设置为引发例如模式1被选择的值。

该信号到达模式选择多工器60以及模式持续时间选择多工器601,以选择当前模式和当前模式持续时间。

然后,有限状态机50进入patbufloadseq状态1004,使得在pwm缓冲器块70中,当pwm_shift_cnt(i)=0时,利用不同时间处的模式信号,通过有限状态机50加载输出信号pattern_buf。

经由shift缓冲器电路块90,从pwm计数器80得到信号pwm_shift_cnt(i)。例如,这可以如下发生:pwm_shift_cnt(i)=pwm_cnt+ixshift,其中pwm_cnt是pwm计数器80的值,i是通道数,以及shift是shift存储器位置401的内容。

pwm计数器电路块80可以包括可通过en位(位置402)和patsr位(位置403)使能的自由运行(例如,12位)计数器,并且被配置用于基于内部时钟信号clk(例如,具有1微秒的周期)例如从0到4095进行计数。

如这里所例示的,针对pwm发生器(例如,图1b所示)的信号pattern_buf可对应于存储器位置矩阵,存储器位置矩阵具有等于(输出)通道的数量i的行数以及等于j的列数,j是占空比信号pwmton(i)的宽度。

例如,pattern_buf可以包含用于通过信号pat_sel选择的模式中的每个通道的占空比值。这些值可以在不同时刻通过有限状态机50存储,以便例如利于在例如先前模式的占空比和当前模式的占空比之间针对每个通道的平滑变换。

针对各个(例如,led)通道,这些值可以被发送给发生器pwm1、pwm2、...、pwmi,使得这些发生器在被信号en(i)和信号en_ch(i)使能时(例如,经由输入逻辑,诸如所示and门)可以生成相应的输出pwm波形(参见图2)。

在本文例示的一个或多个实施例中,如以下所讨论的,当开始模式序列时(例如,patsr=“1”),可通过有限状态机50设置信号en_ch(i),并且在状态patoffseq1008中,当pwm_shift_cnt(i)=tpwm时在不同时间复位。

例如,当pwm_shift_cnt(i)=1时,可以设置发生器pwm1、pwm2、...、pwmi的输出处的pwm波形,并且当pwm_shift_cnt(i)=pwmton(i)时复位。

在本文例示的一个或多个实施例中,一旦当前模式进行,有限状态机50就保持状态patdur1006,只要例如信号pat_dur_cnt>=1即可。

pat_dur_cnt是k位(k=8)计数器,其可以在状态patdur1006中设置为根据经由信号pat_sel(例如,如果模式的数量为8,则为pat_sel[2:0])选择的模式在对应模式持续时间存储器寄存器21、22、…2n中编程的值。

在本文例示的一个或多个实施例中,如果用于模式持续时间的值被设置为0,则在设置信号inc_pat(例如,参见图3)之后,有限状态机50将跳过该模式,并且从patdur状态1006直接返回到patsel状态1002。

否则,当处于patdur状态1006时,通过由时钟分频器电路块602生成的信号step_isignal例如在20毫秒的间隔处通过有限状态机50来递减pat_dur_cnt。

当计数pat_dur_cnt到期时,所选模式结束,并且有限状态机50可以通过递增信号pat_selsignal将信号inc_patsignal设置进入patsel状态1002,由此选择下一模式。

在模式序列的结尾处,当pat_sel=n时,有限状态机50可以从patdur状态1006变为patoff状态,其中n是模式的数量。

在该状态下,由于shift被使能,例如经由不同时间的en_ch(i)信号,所有输出(例如,led)通道被断开,从而不会不期望地改变输出(例如,led)通道中的pwm波形。

当pwm_shift_cnt(i)=tpwm时,信号en_ch(i)可以被复位。

本文例示的一个或多个实施例使得可以利用外部控制单元u(例如,微控制器,这里表示为u)来编程例如用于驱动led的pwm模式序列。

一个或多个实施例使得可以在序列的开始处编程持续时间和重复,具有通过例示的电路架构(包括内部有限状态机)处理模式序列生成和定时的能力。

以这种方式,控制单元u可以从监控连续地更新模式序列的行为中解脱,由此使其资源可用于其他任务。

在一个或多个实施例中,电路(例如,g)可以包括:(1)多个存储器位置,可利用pwm信号生成数据来加载,存储器位置均布置在i个存储器位置(例如,111、112、…、11i;121、122、…、12i;1n1、1n2、…、1ni)的n个集合(例如,11、12、…、1n)中,其中可利用用于n个pwm调制模式中的一个的i个占空比值中的一个相应占空比值来加载存储器位置;(2)选择器电路块(例如,60),与多个存储器位置耦合,选择器电路块可致动(例如,pat_sel),以选择性地访问存储器位置的n个集合;(3)缓冲器电路块(例如,70),耦合至选择器电路块,缓冲器电路块可用来自由选择器电路块选择性访问的集合中的存储器位置的pwm信号发生数据来加载;以及(4)有限状态机(例如,50),被配置为(例如,在40处)接收(例如,从微控制器u)指示具有相应的多个占空比值的多个pwm调制模式的pwm信号生成输入数据,有限状态机耦合至选择器电路块并且被配置为根据所述pwm信号生成输入数据激活(例如,pat_sel)选择器电路块,以将pwm信号生成数据从被选择器电路块选择性访问的存储器位置加载到缓冲器电路块,缓冲器电路块中的pwm信号生成数据(例如,pattern_buf(i))指示所述n个pwm调制模式中的一个的i个占空比值。

在一个或多个实施例中,缓冲器电路块中的pwm信号生成数据(例如,pattern_buf(i))可以被布置为存储器位置矩阵,该存储器位置矩阵具有第一数量的行和第二数量的列,其中所述第一数量和第二数量中的一个(例如,行数)可以等于所述占空比值的数量i,并且所述第一数量和第二数量中的另一个(例如,列数)可以等于j,其中j是所述占空比值的宽度(在一个或多个实施例中,行和列的角色可以反转)。

在一个或多个实施例中,电路可包括另外存储器位置(例如,21、22、…、2n),每个都耦合至所述n个集合中的一个并且可利用指示所述n个pwm调制模式中的相应一个的持续时间的数据来加载。在一个或多个实施例中,有限状态机可以对pwm信号生成输入数据敏感,pwm信号生成输入数据包括指示用于所述n个pwm调制模式的相应持续时间的数据(例如,pat_duration1、pat_duration2、...、pat_durationn)。在一个或多个实施例中,电路可包括又一选择器电路块(例如,601),其耦合至另外存储器位置和有限状态机,有限状态机被配置为激活又一选择器电路块,以选择(例如,pat_sel、pat_dur)用于缓冲器电路块中的所述n个pwm调制模式的pwm信号生成数据的相应持续时间。

在一个或多个实施例中,有限状态机(50)可以对指示特定pwm调制模式被设置为零的持续时间的数据敏感,并且被配置用于跳过所述特定pwm模式。

在一个或多个实施例中,电路可以包括模式重复存储位置(例如,30),利用指示所述n个pwm调制模式的特定序列的重复次数的数据来加载。在一个或多个实施例中,有限状态机(50)可以对所述模式重复存储位置中加载的重复数据敏感,并且被配置为作为达到上重复阈值的结果而断开所述pwm调制模式的序列的重复。

在一个或多个实施例中,电路可以包括偏移存储位置(例如,401),利用指示可在所述n个pwm调制模式中应用于随后通道之间的时间偏移值(例如,shift)的偏移数据来加载。在一个或多个实施例中,有限状态机对偏移存储位置中加载的时间偏移值敏感(例如,90),并且被配置为提供缓冲器电路块中的所述n个pwm调制模式中的后续pwm调制通道的pwm信号生成数据之间的时间偏移。

一个或多个实施例可以包括多个pwm信号发生器(例如,pwm1、pwm2、..、pwmi),它们可被激活以根据缓冲器电路块中的pwm信号生成数据来生成pwm调制信号。

根据一个或多个实施例的设备可以包括:根据一个或多个实施例的电路;以及用户单元(例如,d),包括与多个pwm发生器中的相应pwm发生器耦合的多个用户通道,通过由此生成的pwm信号来驱动用户通道。

在一个或多个实施例中,用户单元可以包括在所述多个用户通道中布置的发光二极管。

一个或多个实施例可进一步包括控制器单元(例如,微控制器u),其被配置用于将所述pwm信号生成输入数据提供给有限状态机。

在一个或多个实施例中,一种方法可以包括:(i)为多个存储器位置提供pwm信号生成数据,存储器位置被布置在i个存储器位置的n个集合中(每一个);(2)利用n个pwm调制模式中的一个的i个占空比值中的一个相应占空比值来加载存储器位置;(3)选择性地访问存储器位置的n个集合,并且将来自被选择性访问的集合中的存储器位置的pwm信号生成数据加载到缓冲器电路块;(4)在有限状态机处接收指示具有相应多个占空比值的多个pwm调制模式的pwm信号生成输入数据;以及(5)根据所述pwm信号生成输入数据,经由有限状态机控制对存储器位置的n个集合的选择性访问,以将来自被选择性访问的存储器位置的pwm信号生成数据加载到缓冲器电路块pwm中,缓冲器电路块中的pwm信号生成数据指示所述n个pwm调制模式中的一个的i个占空比值。

在不影响基本原则的情况下,细节和实施例可以相对于仅通过示例所描述的进行改变,甚至显著改变,而不背离保护范围。

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