基于PLD的纳秒级脉冲发生器
发布时间:2008/5/28 0:00:00 访问次数:571
随着电子技术的迅速发展,高速信号触发源已经广泛应用于通讯、雷达等各种电子系统的测试和精确控制中。这就要求有一个稳定性好、纳秒上升沿、可控的脉冲发生器。但是,国内至今还没有合乎这些要求的商用脉冲发生器。即使在国际上普遍使用的加拿大生产的avi-n型脉冲发生器也存在着幅度小、重复率低、易损坏等缺点。针对此现状,设计一款高速脉冲信号发生器是非常有意义的。可编程逻辑器件(pld)经历了pal,gal,cpld和fpga几个发展阶段,技术日趋成熟。采用vhdl语言对pld进行编程设计具有更改灵活、调试方便、操作性强、系统可靠性高等众多优点,并有利于硬件设计的保护,防止他人对电路的分析、仿照。因此,利用pld器件为核心构造高速脉冲信号发生器是一种有效的方法。
1 基本原理
设计采用的xilinx公司的复杂可编程逻辑器件(cpld)几乎可适用于所有的门阵列和各种规模的数字集成电路,他以其编程方便、集成度高、速度快、价格低等特点越来越受到设计者的欢迎。选用的cpld为xilinx公司的xc9572xl,属于xc9500系列,是目前业界速度较快的高集成度可编程逻辑器件。
cpld开发软件用ise 6.0+modelsim 5.7se,该软件是一个完全集成化、易学易用的可编程逻辑设计环境,并且广泛支持各种硬件描述语言。他还具有与结构无关性、多平台运行、丰富的设计库和模块化的工具等许多功能特点。
cpld主程序流程图如图1所示,时针信号是整个程序的关键,通过时钟对各个模块进行精确控制,实现基本功能。时钟信号的精准度决定了输出脉冲信号的精准度。时钟源采用了4脚晶振,可以输出一个稳定的时钟信号。cpld内部电路资源分配如图2所示。
时钟信号和复位信号作为输入信号,控制脉冲信号的输出。系统分4个模块,包括计数器、锁存器、触发器和数据输出模块。时钟信号和复位信号分别加在计数器和触发器上,计数器计数通过锁存,在时钟信号作用下同步触发输出信号。当复位信号到来时,计数器重新清零计数。
当时钟的上升沿到来时对高频时钟进行计数,cpld内部建立一个5位计数器,计数器满后自动重置为0,输出端把计数器的各位进行输出,计数器满后也输出一个高电平。第一级输出端一共有7个,可以实现对时钟的2,4,8,16,32,64分频以及单脉冲输出。在cpld内部再建立一个3位计数器,对前级4分频信号再做计数,调节占空比,控制脉冲输出,同时对一级分频信号进行相与输出。设置一个复位端,当高电平时候,对电路进行复位,计数器重新开始工作。通过复位端可以很好地控制脉冲输出,并且输出信号脉冲宽度在不同的分频接口可以得到不同的脉冲宽度信号,也可以通过修改程序实现脉冲宽度的改变。cpld外围硬件电路包括了电源、晶振、输出端口、指示灯,如图3所示。
本设计选用的外部计数时钟频率为100 mhz,因此所产生脉冲的周期最小是10 ns,脉宽调节最小为5 ns,调节步长为5 ns。该脉冲发生器可以实现多路输出,脉冲输出共有9路,其中1路可以实现单脉冲输出,其余8路可以输出不同脉宽的纳秒级脉冲。若要提高脉冲发生器的精度,应提高计数时钟的频率。同时选用速度等级更高的pld。若要增加脉冲周期及脉宽的可调范围,则应选用容量更大的pld。
2 仿真验证
仿真是验证设计的一个重要环节,如果仿真没有通过,设计就必须重来,以便硬件调试的胜利通过。在ise中,建立仿真文件并调用modelsim 6.0对设计进行行为仿真。在第2个脉冲到来时进行计数器置零,开始计数,对每个输出端口的波形都进行仿真测试。从仿真波形中可以预测出,可编程器件成功地对脉冲进行控制,然后分频输出,达到预定的要求。
行为仿真只是对vhdl语言进行逻辑综合后仿真,布局布线后仿真则是在具体器件和硬件资源分配后,利用从布局布线中提取的一些信息,其中包括了目标器件及互连线的时延、电阻、电容等信息,并考虑走线之间的相互影响后产生的仿真波形。图4是布局布线后仿真图,可以看到在clr信号有效开始,输出端经过4个周期的延迟后才响应到有效的复位信号,这个说明器件延时加上互连线延时为4个周期,但是这并不影响设计输出脉冲的质量,在其他电子设计中却要考虑到这个延迟。
3 试验结果
做好电路版,调试程序成功后,用型号为tektronixtds210示波器测出两个端口的输出波形如图5和图6所示。图5中波形幅度为3.98 v,峰峰值为4.98 v,脉冲宽度为37.8 ns,上升沿为16.7 n
随着电子技术的迅速发展,高速信号触发源已经广泛应用于通讯、雷达等各种电子系统的测试和精确控制中。这就要求有一个稳定性好、纳秒上升沿、可控的脉冲发生器。但是,国内至今还没有合乎这些要求的商用脉冲发生器。即使在国际上普遍使用的加拿大生产的avi-n型脉冲发生器也存在着幅度小、重复率低、易损坏等缺点。针对此现状,设计一款高速脉冲信号发生器是非常有意义的。可编程逻辑器件(pld)经历了pal,gal,cpld和fpga几个发展阶段,技术日趋成熟。采用vhdl语言对pld进行编程设计具有更改灵活、调试方便、操作性强、系统可靠性高等众多优点,并有利于硬件设计的保护,防止他人对电路的分析、仿照。因此,利用pld器件为核心构造高速脉冲信号发生器是一种有效的方法。
1 基本原理
设计采用的xilinx公司的复杂可编程逻辑器件(cpld)几乎可适用于所有的门阵列和各种规模的数字集成电路,他以其编程方便、集成度高、速度快、价格低等特点越来越受到设计者的欢迎。选用的cpld为xilinx公司的xc9572xl,属于xc9500系列,是目前业界速度较快的高集成度可编程逻辑器件。
cpld开发软件用ise 6.0+modelsim 5.7se,该软件是一个完全集成化、易学易用的可编程逻辑设计环境,并且广泛支持各种硬件描述语言。他还具有与结构无关性、多平台运行、丰富的设计库和模块化的工具等许多功能特点。
cpld主程序流程图如图1所示,时针信号是整个程序的关键,通过时钟对各个模块进行精确控制,实现基本功能。时钟信号的精准度决定了输出脉冲信号的精准度。时钟源采用了4脚晶振,可以输出一个稳定的时钟信号。cpld内部电路资源分配如图2所示。
时钟信号和复位信号作为输入信号,控制脉冲信号的输出。系统分4个模块,包括计数器、锁存器、触发器和数据输出模块。时钟信号和复位信号分别加在计数器和触发器上,计数器计数通过锁存,在时钟信号作用下同步触发输出信号。当复位信号到来时,计数器重新清零计数。
当时钟的上升沿到来时对高频时钟进行计数,cpld内部建立一个5位计数器,计数器满后自动重置为0,输出端把计数器的各位进行输出,计数器满后也输出一个高电平。第一级输出端一共有7个,可以实现对时钟的2,4,8,16,32,64分频以及单脉冲输出。在cpld内部再建立一个3位计数器,对前级4分频信号再做计数,调节占空比,控制脉冲输出,同时对一级分频信号进行相与输出。设置一个复位端,当高电平时候,对电路进行复位,计数器重新开始工作。通过复位端可以很好地控制脉冲输出,并且输出信号脉冲宽度在不同的分频接口可以得到不同的脉冲宽度信号,也可以通过修改程序实现脉冲宽度的改变。cpld外围硬件电路包括了电源、晶振、输出端口、指示灯,如图3所示。
本设计选用的外部计数时钟频率为100 mhz,因此所产生脉冲的周期最小是10 ns,脉宽调节最小为5 ns,调节步长为5 ns。该脉冲发生器可以实现多路输出,脉冲输出共有9路,其中1路可以实现单脉冲输出,其余8路可以输出不同脉宽的纳秒级脉冲。若要提高脉冲发生器的精度,应提高计数时钟的频率。同时选用速度等级更高的pld。若要增加脉冲周期及脉宽的可调范围,则应选用容量更大的pld。
2 仿真验证
仿真是验证设计的一个重要环节,如果仿真没有通过,设计就必须重来,以便硬件调试的胜利通过。在ise中,建立仿真文件并调用modelsim 6.0对设计进行行为仿真。在第2个脉冲到来时进行计数器置零,开始计数,对每个输出端口的波形都进行仿真测试。从仿真波形中可以预测出,可编程器件成功地对脉冲进行控制,然后分频输出,达到预定的要求。
行为仿真只是对vhdl语言进行逻辑综合后仿真,布局布线后仿真则是在具体器件和硬件资源分配后,利用从布局布线中提取的一些信息,其中包括了目标器件及互连线的时延、电阻、电容等信息,并考虑走线之间的相互影响后产生的仿真波形。图4是布局布线后仿真图,可以看到在clr信号有效开始,输出端经过4个周期的延迟后才响应到有效的复位信号,这个说明器件延时加上互连线延时为4个周期,但是这并不影响设计输出脉冲的质量,在其他电子设计中却要考虑到这个延迟。
3 试验结果
做好电路版,调试程序成功后,用型号为tektronixtds210示波器测出两个端口的输出波形如图5和图6所示。图5中波形幅度为3.98 v,峰峰值为4.98 v,脉冲宽度为37.8 ns,上升沿为16.7 n