一种基于FPGA的同步混合延时型DPWM模块的制作方法

文档序号:14683518发布日期:2018-06-12 22:51阅读:256来源:国知局
一种基于FPGA的同步混合延时型DPWM模块的制作方法

本发明涉及电源管理芯片领域,具体的说是一个用于电源管理控制电路种的DPWM模块。



背景技术:

数字脉宽调制器(DPWM)已经发展了一段很长的时间,传统的数字脉宽调制器受限于采样延时和分辨率,同时,传统的数字脉宽调制器采用单一的计数器延时或者单一的延时链延时来实现,这些单一的结构受限于计数器的工作频率以及延时链的高电路资源占有率,难以在有限的设计指标内达到高精度。因此优化DPWM的结构,减小设计使用的电路资源,提高工作频率,提高DPWM的线性度,分辨率与稳定性是当下数字脉宽调制器的重大挑战。



技术实现要素:

本发明为克服现有技术存在的缺点,提出一种基于FPGA的同步混合延时型DPWM模块,以期能提高脉宽调制器的时间分辨率和占空比的线性度与稳定性,从而缩小DC-DC变换器的纹波和稳定时间,抑制并减弱调制过程出现的过冲和振铃。

本发明为解决技术问题采用如下技术方案:

本发明一种基于FPGA的同步混合延时链型DPWM模块的特点是包括:上升沿触发电路、下降沿触发电路、占空比同步译码电路、寄存器和锁相环时钟产生电路;

所述下降沿触发电路包括:两个相移同步电路、加法进位链复位信号产生电路;

所述占空比同步译码电路获取n位占空比信号并进行分段处理,将所述n位占空比信号中的第n位到第m位占空比信号D[n:m]发送给所述上升沿触发电路,将第m-1位到第m-3位占空比信号D[m-1:m-3]进行译码处理后,得到四位数字信号D2[3:0]发送给所述下降沿触发电路,将第m-4位到第0位占空比信号D[m-4:0]进行译码处理后,得到2m-4位数字信号D3[2m-4:0]发送给所述下降沿触发电路;

所述锁相环时钟产生电路接收外部时钟信号并产生四个相位两两相差90°的时钟信号,将第一时钟信号clk0发送给所述上升沿触发电路,将第一时钟信号clk0、第二时钟信号clk1、第三时钟信号clk2和第四时钟信号clk3发送给所述下降沿触发电路;

所述上升沿触发电路根据所述第一时钟信号clk0进行计数,并将计数结果与所述第n位到第m位占空比信号D[n:m]进行比较,当计数结果小于D[n:m]时,所述上升沿触发电路产生上升沿并发送给所述寄存器的时钟端,从而使得所述寄存器产生上升沿;否则,将所述计数结果清零后,产生触发信号trig发送给所述下降沿触发电路;

所述下降沿触发电路中的两个相移同步电路分别根据所述四个时钟信号对所述触发信号trig进行相移处理后产生四个同步信号,并利用乒乓操作选择一个相移同步电路输出的四个同步信号的处理结果发送给所述加法进位链复位信号产生电路,另一个相移同步电路输出的四个同步信号的进行复位;

所述加法进位链复位信号产生电路对所述同步信号进行加法进位操作,得到下降沿产生信号fall并发送给所述寄存器的复位端,从而使得所述寄存器产生下降沿;

由所述寄存器产生的上升沿和下降沿构成脉宽调制信号PWM。

本发明所述的基于FPGA的同步混合延时链型DPWM模块的特点是,所述相移同步电路包括:四个寄存器、四个与门和一个四输入或门;

第一个寄存器根据所述第一时钟信号clk0,将所述触发信号trig发送给第一个与门的输入端,所述第一个与门根据另一个输入端接收的所述四位数字信号D2[3:0]中的第0位数字信号D2[0]并进行处理,得到的第一结果发送给所述四输入或门;

第二个寄存器根据所述第二时钟信号clk1,将所述触发信号trig发送给第二个与门的输入端,所述第二个与门根据另一个输入端接收的所述四位数字信号D2[3:0]中的第1位数字信号D2[1]并进行处理,得到的第二结果发送给所述四输入或门;

第三个寄存器根据所述第三时钟信号clk2,将所述触发信号trig发送给第三个与门的输入端,所述第三个与门根据另一个输入端接收的所述四位数字信号D2[3:0]中的第2位数字信号D2[2]并进行处理,得到的第三结果发送给所述四输入或门;

第四个寄存器根据所述第四时钟信号clk3,将所述触发信号trig发送给第四个与门的输入端,所述第四个与门根据另一个输入端接收的所述四位数字信号D2[3:0]中的第3位数字信号D2[3]并进行处理,得到的第四结果发送给所述四输入或门;

所述四输入或门最终输出加法链触发信号trig_delay作为所述相移同步电路输出的四个同步信号的处理结果。

与已有的技术相比,本发明的有益效果体现在:

1.市场上已有的脉宽调制器的时间分辨率都比较低,一般为若干纳秒到几百纳秒不等,高精度的脉宽调制器往往又结构复杂,制作成本高。本发明的DPWM在FPGA上实现,具有可编程性,灵活度大等特点,利用altera内置的加法器的进位延时作为该DPWM的时间分辨率,因而拥有极高的时间分辨率(约43ps~80ps);另一方面,由于延时单元的延时比较平均,因此该加法进位链形成的延时链具有很高的线性度。

2.本发明的DPWM中下降沿触发电路使用了相移同步电路,解决了传统的数据选择器的方案中由于逻辑过多导致的信号非线性到达的情况,同时因为在相移同步电路中每一个时钟都严格在其上升沿到来时将该时钟信息存到寄存器中,因此不会出现270°相位和0°相位重叠的问题,保证了延时同步单元的准确性。

3.本发明的上述相移同步电路处理时钟选择后,仍然存在在占空比从极大变为极小的时候触发信号trig有可能连续触发两次,此时无论如何选择结果都是选择0°相位时钟。本发明通过使用乒乓操作算法,同时使用两个相移同步电路,并在一个周期内仅使其中一个输出信号,另一个同时做复位操作并在下一个周期使用,通过交替使用的方式解决连续触触发trig时选择错误的问题,能够彻底解决在延时同步模块中的所有同步失效问题。

4.本发明的DPWM通过使用混合延时的方式实现了脉宽调制波的精确产生。该DPWM使用altera的底层加法器作为DPWM的最小延时单元,因此该DPWM有着极高的分辨率。该DPWM的脉宽输出模块使用了寄存器方式而非传统的rs触发器方式实现,避免了rs触发器输出方式中错误置位以及亚稳态的问题。该DPWM的下降沿触发电路使用了乒乓操作算法解决了传统方法中由于信号延迟导致的错误时钟选择问题,提高了该DPWM的输出的线性度与稳定性。

附图说明

图1是本发明同步混合延时链型DPWM模块的整体示意图;

图2是本发明上升沿触发电路的内部结构图;

图3是本发明下降沿触发电路的内部结构图;

图4是本发明DPWM的总体架构的内部结构图;

图5是本发明DPWM模块的工作时序图;

图6是现有技术中0°信号与270°信号的选择误差示意图;

图7是本发明的同步相移电路结构图:

图8是现有技术中trig信号双触发示意图。

具体实施方式

本实施例中以14位DPWM结构为例(但不仅限于14位),一种基于FPGA的同步混合延时链型DPWM模块包括:上升沿触发电路、下降沿触发电路、占空比同步译码电路、寄存器和锁相环时钟产生电路;

下降沿触发电路包括:两个相移同步电路、加法进位链复位信号产生电路;

占空比同步译码电路获取n位占空比信号并进行分段处理,将n位占空比信号中的第n位到第m位占空比信号D[n:m]发送给上升沿触发电路,将第m-1位到第m-3位占空比信号D[m-1:m-3]进行译码处理后,得到四位数字信号D2[3:0]发送给下降沿触发电路,将第m-4位到第0位占空比信号D[m-4:0]进行译码处理后,得到2m-4位数字信号D3[2m-4:0]发送给下降沿触发电路;

如图1所示,在本实例中占空比同步译码电路接收到14位占空比信号D[13:0]后,将其分段译码为D1[13:7],D2[3:0],D3[31:0]输出,分别将D1[13:7]送入上升沿触发电路中处理获得PWM波的上升沿触发信号pullup并获得下降沿触发信号trig,将D2[3:0],D3[31:0]送入下降沿触发电路并等待trig信号到来后进行处理获得下降沿触发信号fall。

锁相环时钟产生电路接收外部时钟信号并产生四个相位两两相差90°的时钟信号,将第一时钟信号clk0发送给上升沿触发电路,将第一时钟信号clk0、第二时钟信号clk1、第三时钟信号clk2和第四时钟信号clk3发送给下降沿触发电路;

上升沿触发电路根据第一时钟信号clk0进行计数,并将计数结果与第n位到第m位占空比信号D[n:m]进行比较,当计数结果小于D[n:m]时,上升沿触发电路产生上升沿并发送给寄存器的时钟端,从而使得寄存器产生上升沿;否则,将计数结果清零后,产生触发信号trig发送给下降沿触发电路;

如图2所示,为上升沿触发电路的内部结构图,包括计数器,比较器,三个D触发器。当占空比信号打入上升沿模块时,每一个同步时钟clk0的上升沿计数器的值都加1,比较器1在计数器的值cnt<D1[13:7]时输出高电平送到D触发器1中,在每个同步时钟的clk0的上升沿都向触发器3发送该高电平置位信号,形成PWM输出的上升沿;比较器2在计数器的值cnt>D1[13:7]时输出高电平,由于在clk0的上升沿开始时候触发器1的输出端还是高电平,将这两个信号相与获得高电平信号给触发器D2作为输入,并在同步时钟的clk0打入触发器2获得一个计数器复位信号;根据原理,该上升沿产生模块的单位延时为同步时钟clk0的周期Tclk0,产生的总延时为计数器的计数值cnt·Tclk0。

下降沿触发电路中的两个相移同步电路分别根据四个时钟信号对触发信号trig进行相移处理后产生四个同步信号,并利用乒乓操作选择一个相移同步电路输出的四个同步信号的处理结果发送给加法进位链复位信号产生电路,另一个相移同步电路输出的四个同步信号的进行复位;

加法进位链复位信号产生电路对同步信号进行加法进位操作,得到下降沿产生信号fall并发送给寄存器的复位端,从而使得寄存器产生下降沿;

由寄存器产生的上升沿和下降沿构成脉宽调制信号PWM。

如图3所示,为下降沿触发电路的内部结构图,包括相移同步电路,乒乓操作算法,D触发器,加法进位链。相移同步电路收到占空比信号D2[3:0]后,选择PLL模块产生的四个相位的时钟中的其中一个作为同步延时,这个同步延时的单位延时为同步时钟clk0相移90°的时间,即Tclk0/4,产生的总延时为占空比信号对应的10进制数值D2·Tclk0/4。在该过程中,乒乓算法用于避免相移同步电路同步选择错误,具体来说相移同步电路1与2完全一样,但在本DPWM的每一个工作周期内仅有一个有效,另一个挂起等待下一个工作周期后变为有效;通过交替有效工作避免相位选择冲突。在相移选择器选择完毕获得输出信号后,触发器将占空比D3[31:0]打入加法链中,通过加法链进位的延时获得复位信号fall,该加法链的单位延时为每一个加法器的进位延时Tcin,总的延时为占空比D3的十进制数D3·Tcin。

如图4所示,为该DPWM的整体内部结构以及信号连接方式,主要的模块包括基于计数器的上升沿触发模块,基于PLL的时钟产生模块,基于相移同步电路的下降沿触发控制模块,基于加法进位链的复位信号产生模块。该DPWM中通过D触发器的使用使每一个模块的工作都保持在同步时钟clk0的上升沿开始工作而实现了同步性,从而避免了异步时序电路中可能出现的亚稳态现象,提高了电路的稳定性。

如图5为该DPWM的工作时序图,以输入数据为0000100_11_11000为例,基于计数器的上升沿模块在同步时钟clk0的上升沿开始计数,计数器置位输出;当计数器的值cnt>D[13:7]后,计数器复位,此时trig信号产生,通过相移选择器产生四个相位差90°的trig信号;而占空比信号D[6:5]经过占空比同步译码模块的译码得到四位二进制信号b‘1000,表示tirg270°相移信号有效,将该二进制信号与trig270°相与获得同步延时输出,并产生一个触发信号给加法链;占空比信号D[4:0]经过同步译码模块译码得到32位二进制信号b'00000000111111....11,这些信号从高位到地位按照从上到下的顺序分别加在每一级加法器的输入上,一共经过24个加法器的进位延时,从而最终获得加法链的输出信号fall给寄存器输出模块的复位端,从而将pwm信号复位。纵观整体电路的结构,每一部分都极易用verilog描述并在FPGA开发板上实现并验证。

根据以上讨论,该DPWM模块中的相移选择模块存在信号选择误差问题,如图6为该信号选择误差的示意图:在多选器选择四位时钟信号的时候,四个时钟信号的相位相差90°,导致270°信号的后半段在下一个同步时钟周期上升沿到来的时候依然为高电平,此时意味着选择器会将刚变为高电平的0°信号跟处于上一个周期后半段的270°信号视为相同选择。

本发明针对该信号选择误差的优化方法采用的相移同步电路结构如图7所示,相移同步电路包括:四个寄存器、四个与门和一个四输入或门;

第一个寄存器根据第一时钟信号clk0,将触发信号trig发送给第一个与门的输入端,第一个与门根据另一个输入端接收的四位数字信号D2[3:0]中的第0位数字信号D2[0]并进行处理,得到的第一结果发送给四输入或门;

第二个寄存器根据第二时钟信号clk1,将触发信号trig发送给第二个与门的输入端,第二个与门根据另一个输入端接收的四位数字信号D2[3:0]中的第1位数字信号D2[1]并进行处理,得到的第二结果发送给四输入或门;

第三个寄存器根据第三时钟信号clk2,将触发信号trig发送给第三个与门的输入端,第三个与门根据另一个输入端接收的四位数字信号D2[3:0]中的第2位数字信号D2[2]并进行处理,得到的第三结果发送给四输入或门;

第四个寄存器根据第四时钟信号clk3,将触发信号trig发送给第四个与门的输入端,第四个与门根据另一个输入端接收的四位数字信号D2[3:0]中的第3位数字信号D2[3]并进行处理,得到的第四结果发送给四输入或门;

四输入或门最终输出加法链触发信号trig_delay作为相移同步电路输出的四个同步信号的处理结果。

该电路使用了触发器作为相移信号的中转站,trig信号在0°信号的上升沿保存进寄存器中获得trig0°信号,而trig90°,trig180°,trig270°信号都严格在其对应的时钟信号上升沿才打入相对应的寄存器中生效,即tirg270°信号严格在270°时钟的上升沿生效,因此避免了0°信号与270°信号的选择错误问题。

根据以上讨论,相移选择电路存在双触发现象,如图8所示为该现象的工作时序示意图:假设上一个脉宽调制工作周期中,输入的数据信号比较大,足以满足计数器的最大输入,此时产生的PWM波的占空比非常大,接近整个DPWM的工作周期,并在接近周期末尾的时候产生trig信号,经过相移选择器与加法链后正确复位;而在下一个脉宽调制的工作周期中,输入的数据信号非常小,计数器刚开始计数便产生了trig信号,触发下降沿产生模块工作,但由于上一个周期的trig信号依然还未全部归零,导致在这个周期中所有的trig信号都是有效的,即在trig信号触发后强制选择trig0°造成错误的复位。

本发明针对信号双触发问题的优化方案如图3所示:本发明中使用了乒乓操作算法,同时设计了两份相同的相移选择电路,通过简单的逻辑选择,在两个相邻的周期中,令两个相移电路只工作一个,另一个同时做复位操作供下一周期使用;这样保证了在每一个周期的开始相移选择电路都是空状态,避免了上述双触发现象。

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