5.4.1 基于LPM数控分频器设计
数控分频器的功能要求是当在其输入端给定不同的数据时,其输出脉冲具有相应的对输入时钟的分频比。其设计流程如下。
(1)设计输入
在了MAX+plusⅡ中打开一个新的原理图编辑窗,从c:\maxplus2 \max2lib\mega_lpm中调出LPM_COUNTER,并按照图5.46方式连接起来。LPM_COUNTER模块提供的功能很丰富,对于某功能,可以选择使用(Used)或不使用(Unused),当某功能选择为Unused时,对应的功能引脚就不在图中出现。
图5.46 数控分频器电路原理图
用鼠标双击如图5.46所示的LPM_COUNTER右上角的参数显示文字,然后在弹出的图5.47参数对话框中,选择合适的参数,计数器各端口及其参数的含义是:
* aclr:异步清零输入;
* aset:异步置位输入;
* clock:上升沿触发计数时钟输入;
* clk_en:高电平使能同步操作输入信号;
* cnt_en:计数使能控制;
* cin:最低进位输入;
* cout:计数进位或借位输出;
* data[]:置入计数器的并行数据输入;
* q[]:计数输出;
* sload:在clk的上升沿同步并行数据加载输入;
* updown:计数器加减控制输入;
* LPM_AVALIM:异步加载的计数初值;
* LPM_DIRECTION:加/减计数控制,“UP”为加计数;
* LPM_MODULUS:进制;
* LPM_SVALUM:同步加载的计数初值;
* LPM_WIDTH:计数器位宽。
设置情况如图5.46所示,计数器位宽为4,即4位计数器,其工作原理位:当计数器满F时,有cout发出进位信号给并行加载控制信号sload,使得4位并行数据d[3..0]数据被加载进计数器中,此后计数器将在d[3..0]数据的基础上进行加/减计数。如果是加法计数,则分频比为R=F-d[3..0]+1,即如果d[3..0]=10,则R=6,即clk每进入6个脉冲,cout输出一个脉冲;而如果作减法计数时,分频比为R=d[3..0]+1,即如果d[3..0]=10,则R=11。
图5.47 “LPM_COUNTER”参数对话框
(2)文件存盘与编译
完成数控分频器电路原理图输入设计后,就可对其进行存盘与编译。将已设计好的原理图文件取名为:lpm_cont.gdf。
(3)时序仿真
在编译完全通过后,可进行时序仿真,图5.48是当d[3..0]=10,即十六进制A时的仿真波形,分频比为6。
图5.48 数控分频器仿真波形
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。