VHDL语言设计一个带异步清零和计数使能的8位二进制计数器源程序如下,程序仿真结果如图所示
LIBRARY ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_arith.all;
use ieee.std_logic_unsigned.all;
--*-------------------------------------------------------*--
ENTITY counter8 IS
PORT(clk : in std_logic;
clr : in std_logic;
enable : in std_logic;
Q : out std_logic_vector(7 downto 0));
End counter8;
--*------------------------------------------------------*--
ARCHITECTURE arch OF counter8 IS
signal dout : std_logic_vector(7 downto 0);
begin
P1 : process(clk,clr)
begin
if clr='0' then
dout <= "00000000";
elsif clk'event and clk='1' then
if enable='1' then
dout <= dout+1;
elsif enable='0' then
dout <= dout;
end if;
end if;
end process P1;
P2 : process(dout)
begin
Q <= dout;
end process P2;
end arch;
--*-------------------------------------------------------*--
本回答被网友采纳你好,请问您可以帮我用VHDL语言设计一个带异步清零和计数使能的8位二进...
VHDL语言设计一个带异步清零和计数使能的8位二进制计数器源程序如下,程序仿真结果如图所示 LIBRARY ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;--*---*-- ENTITY counter8 IS PORT(clk : in std_logic;clr : in std_logic;enabl...
...hdl要设计一个带异步清零和异步预置的8 位二进制加法计数器,麻烦看 ...
8’b11111111,那个 8与b之间的符号打错了,应该是单引号‘ ,你改下在试试,而且你的代码是同步复位和置位的,不是异步的,要想实现异步需要将always @ (posedge clk)改成always @ (posedge clk or posedge reset or posedge load)例外建议在时序的逻辑内部qout=0; cout=1;这些等式都写成qout<=0; cout<=1;...
...你好,请问谁可以帮我用VHDL语言设计一个具有清零端的8位二进制计数...
BEGIN IF RST = '1' THEN CQI := (OTHERS =>'0') ; --计数器异步复位 ELSIF CLK'EVENT AND CLK='1' THEN --检测时钟上升沿 IF EN = '1' THEN --检测是否允许计数(同步使能)IF CQI < 9 THEN CQI := CQI + 1; --允许计数, 检测是否小于9 ELSE CQI := ...
VHDL 八位二进制计数器 语言的编写
input clk,rst;output cnt;reg [7:0]cnt;always@(posedge clk or negedge clk)begin if (!clk)cnt<=8'b00000000;else cnt<=cnt+1;end endmodule
跪求:用VHDL描述异步复位,同步置数和移位使能8位右移移位寄存器。_百度...
CQI := CQI + 1;ELSE CQI := (OTHERS => '0') ; END IF;CLK为时钟输入,RST为异步清零端,D[2..0]为模式控制端,可实现几种不同模式的计数方式,本计数器可供选择的计数模式分别为:七进制,十进制,十二进制,二十四进制等...我们以前做过这个题目了 VHDL程序和报告齐全@……...
设计一个同步22进制计数器,用VHDL语言,帮帮忙吧兄弟们!!!
说明:以使用74161设计一个模为12的加法计数器为例,电原理图如图1所示.其中引脚的安排:en为使能端;clear为清零端;clk为时钟;q0\\q1\\q2\\q3为信号碈JFD2004 标题:图1传统8421码十进制递增计数器电路实现 F ig.1 C ircu it rea lization of dec im a l up-coun ter encoded by 8421BCD 图2...
求VHDL高手:设计含有异步清零和技术功能的16位二进制加减可控计数器
代码如下。clr为1异步清零。k为1时执行加法计数器,为0时执行减法计数器。仿真图形也给上。不过楼主自己还应该好好学习啊。library IEEE;use IEEE.std_logic_1164.all;use IEEE.std_logic_unsigned.all;entity cnt_16 is port (clk: in STD_LOGIC;k: in STD_LOGIC;clr: in STD_LOGIC;q: out...
怎样用VHDL设计含有异步清零和同步时钟使能的10位加法计数器
if(clr='0') then ---异步清零 reg<="00000000000";elsif(clkin'event and clkin='1') then if(en='1')then ---同步使能 reg<=('0'&a)+('0'&b); ---求和 end if;end if;end process;--- c<=reg(9 downto 0); ---赋值给和 ci<=reg(10); ---赋值给...
如何用VHDL做下降沿清零的计数器
可以把代码改成 if ld_delay = '1' and ld = '0' then cnt <= "00000000";else cnt <= cnt + 1;end if;这样就多了一个cnt = "00000000"的周期 或者增加一个高频时钟对ld采样 这样对于clk信号来说也是异步清零 并且没有多一个周期 具体如何还是要根据你的需求进行选择 ...
怎样用VHDL设计含有异步清零和同步时钟使能的16位加法计数器
use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity count is port (clk : in std_logic;rst : in std_logic;count_out : out std_logic_vector(15 downto 0));end count;architecture arc of count is signal count : std_logic_vector(15 downt...