计数器与分频器VHDL源程序_第1页
计数器与分频器VHDL源程序_第2页
计数器与分频器VHDL源程序_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、计数器与分频器VHDL源程序通用计数器(可赋初值、模数可调、触发边沿可选、双向计数、具有使能端): library ieee;use ieee.std_logic_1164.all;use ieee.numeric_std.all;entity countn isgeneric(N: integer:=10); -N 为正整数port(clk,dir: in std_logic;reset: in std_logic;enable: in std_logic;q: out integer range 0 to N-1);end entity;architecture rtl of countn

2、 isbeginprocess (clk)variablecnt: integer range 0 to N-1;-定义中间变量beginif reset = 1 thencnt := 0;-赋初值 0elsif enable = 1 thenif(clkevent and clk=1) then -上升沿计数if dir=1 then -加法计数if(cnt0 ) thencnt:= cnt-1;elsecnt := N-1;end if;end if;end if;end if;q = cnt;-输出计数值end process;end rtl;占空比和分频系数可调的分频器(占空比50%的

3、奇数分频器除外):library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;use ieee.std_logic_arith.all;entity fdivn isgeneric(n: integer:=10;m: integer:=3 -分频系数=n,占空比m:n; m,n为正整数,mn, n为奇数时m不能等于1/2 n );port(clkin: in std_logic;clkout: out std_logic);end fdivn;architecture a of fdivn issignal

4、cnt: integer range 0 to n-1;-定义中间信号beginprocess(clkin)beginif(clkinevent and clkin=1) then -模 n 加法计数if(cntn-1) thencnt = cnt+1;elsecnt = 0;end if;end if;end process;clkout = 1 when cntm else - cntm时输出高电平,否则输出低电平0;end a;占空比50%的奇数分频器library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.

5、all;use ieee.std_logic_arith.all;entity fdivo isgeneric(N: integer:=5);-rate=N,N 是奇数port(clkin : in std_logic;clkout : out std_logic);end fdivo;architecture a of fdivo issignal cntl, cnt2: integer range 0 to N-1;-定义中间信号 beginprocess(clkin)beginif(clkinevent and clkin=1) then -上升沿计数 if(cnt1N-1) then cnt1 = cnt1+1;elsecnt1 = 0;end if;end if;end process;process(clkin)beginif(clkinevent and clkin=0) then -下降沿计数 if(cnt2N-1) then cnt2 = cnt2+1;elsecnt2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论