用程序输入方法设计7.5分频电路

用程序输入方法设计7.5分频电路

ID:6781041

大小:44.00 KB

页数:3页

时间:2018-01-25

用程序输入方法设计7.5分频电路_第1页
用程序输入方法设计7.5分频电路_第2页
用程序输入方法设计7.5分频电路_第3页
资源描述:

《用程序输入方法设计7.5分频电路》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、用程序输入方法设计7.5分频电路1.设计原理:(1)7.5分频的周期为原时钟周期的7.5倍,所以输出周期的起始并非输入脉冲固定的上升沿或下降沿,而是交替的出现。(2)由于7.5分频的周期并非为整数倍,直接由输入的7.5个周期作为一个输出的的周期并不容易实现。(3)为了得到7.5分频,先制作了一个占空比50%的15分频输出。15分频的周期是7.5分频的两倍,且占空比为50%,用高电平或低电平作为7.5分频的周期,这样就达到了目的。(4)将15分频与输入时钟进行同或运算,得到一个每7.5个输入时钟周期进行一次循环的与输入同频的时钟。(5)用新时钟制作7.5分频器。2.程序:LIBRARYIEEE;

2、USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYCNT7_5ISPORT(CLK:INSTD_LOGIC;---定义输入变量outCLK,CLK1,CLK2:BUFFERSTD_LOGIC);--定义输出变量ENDCNT7_5;ARCHITECTUREbhvOFCNT7_5ISSIGNALK1,K2,K3:STD_LOGIC_VECTOR(3DOWNTO0);---定义三个中间变量BEGINCLK2<=CLKXNORCLK1;---将CLK2与CLK输入时钟进行同或运算PROCESS(CLK,K1)BEGINIF(

3、CLK'EVENTANDCLK='1')THEN---GLK上升沿触发IF(K1="1110")THEN---判断K1的值K1<="0000";---K1为1110时,将0000赋予K1ELSEK1<=K1+1;---K1不为1110时,K1进行加1运算ENDIF;---结束判断ENDIF;---结束判断ENDPROCESS;PROCESS(CLK,K2)BEGINIF(CLK'EVENTANDCLK='0')THEN---CLK下降沿触发IF(K2="1110")THEN---判断K2的值K2<="0000";---K2为1110时,将0000赋予K2ELSEK2<=K2+1;---K2不为

4、1110时,K2进行加1运算ENDIF;---结束判断ENDIF;---结束判断ENDPROCESS;PROCESS(CLK1,K1,K2)BEGINIF(K1="0000")THEN---对K1的值进行判断CLK1<='1';---K1为0000时,将1赋予CLK1ENDIF;---结束判断IF(K2="0111")THEN---对K2的值进行判断CLK1<='0';---K2为0111时,将0赋予CLK1ENDIF;---结束判断ENDPROCESS;PROCESS(CLK2,K3)BEGINIF(CLK2'EVENTANDCLK2='1')THEN---CLK2上升沿触发IFK3="00

5、00"THEN---对K3的值进行判断K3<="0111";---K3为0000时,将0111赋予K3ELSEK3<=K3-1;---K3不为0000时,K3进行减1运算ENDIF;---结束判断ENDIF;---结束判断IF(K3="0111")THEN---对K3的值进行判断outCLK<='1';---K3为0111时,将1赋予outCLKENDIF;---结束判断IF(K3="0011")THEN---对K3的值进行判断outCLK<='0';---K3为0011时,将0赋予outCLKENDIF;---结束判断ENDPROCESS;ENDbhv;

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。