用VHDL描述异步复位,同步置数和移位使能8位右移移位寄存器。

用VHDL描述异步复位,同步置数和移位使能8位右移移位寄存器。
library ieee;
use ieee.std_logic_1164.all;
entity sreg8b is
port(clk,rst:in std_logic;
load,en:in std_logic;
din:in std_logic_vector(7 downto 0);
qb:out std_logic);
end sreg8b;
architecture behan of sreg8b is
signal reg8:std_logic_vector(7 downto 0);
begin
process(clk,rst,load,en)
begin
if(rst='1')then
reg8<='0';
elsif ________________ then
if (load='1')then
reg8<=din;
elsif (en='1')then
reg8(6 downto 0)<=_______________;
end if;
end if;
end process;
qb<=reg8;
end behav;

以上程序希望各大虾们帮忙补全~~~~如果是高手请顺便帮忙检查下错误!!!!!!谢谢了!!!!!!

第1个回答  2013-06-15
第一空填clk 'event and clk='1'(上升沿)或clk 'event and clk='0'(下降沿);第二空填reg8(7 downto 1);错误的话,我大致看了下,reg8<='0'这个应该不对,reg8是8位的,赋值应该用reg8<="00000000"。其他暂时没看出来,如果编译有问题可以再沟通

用VHDL描述异步复位,同步置数和移位使能8位右移移位寄存器。
第一空填clk 'event and clk='1'(上升沿)或clk 'event and clk='0'(下降沿);第二空填reg8(7 downto 1);错误的话,我大致看了下,reg8<='0'这个应该不对,reg8是8位的,赋值应该用reg8<="00000000"。其他暂时没看出来,如果编译有问题可以再沟通 ...

跪求:用VHDL描述异步复位,同步置数和移位使能8位右移移位寄存器。
IF RST = '1' THEN CQI := (OTHERS => '0'); --异步清零 ELSIF CLK'EVENT AND CLK ='1' THEN --时钟上升沿触发 IF D = "000" THEN --模式---10进制 IF CQI < 6 THEN CQI := CQI + 1;ELSE CQI := (OTHERS => '0') ; END IF;CLK为时钟输入,RST为异步清零...

异步复位,同步置数,计数使能的八位二进制加减计数器的VHDL的程序怎么写...
下面是我写的一个例子,是通过c1,c2按键控制加数和被加数的。由于最近要考试,所有按键没有进行消抖,as控制加还是减。你没有说全加,进位我省了。如果需要自己加一下。另外注意:在可逆计数器的设计中的错误,两个进程里都有同一个条件判断的话,会产生并行信号冲突的问题。同一个信号不允许在多个进...

用VHDL语言设计一个具有异步复位功能的8位D触发器
use ieee.std_logic_1164.all;entity dff8 is port (clk,clr:in std_logic;d:IN STD_LOGIC_VECTOR(7 DOWNTO 0);q:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));end dff8;architecture bhv of dff8 is signal q1:STD_LOGIC_VECTOR(7 DOWNTO 0) :="00000000";begin process(clk,clr,q1)begin ...

...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语言设计一个异步复位、同步置数的十二进制加法计数器。
port (clk : in std_logic;load : in std_logic;clr : in std_logic;up_down: in std_logic;DIN : in std_logic_vector(3 downto 0);DOUT : out std_logic_vector(3 downto 0);c : out std_logic );end counter4;architecture rt1 of counter4 is signa...

求带异步复位的4位二进制减计数器VHDL代码 及带异步复位的8421码十进制...
port (ci:in std_logic; --计数信号 reset: in std_logic; --异步复位 load: in std_logic; --同步置数 clk: in std_logic;d : in std_logic_vector(3 downto 0); --置数值 q : buffer std_logic_vector(3 downto 0);co: out std_logic --计数溢出标志 );end coun...

求EDA用VHDL语言的程序设计,急急急!给高分!(要求完成一个具有异步复位和...
use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;entity shicount is port(clk,reset,enable: in std_logic;a,b,c,d,e,f,g: out std_logic;tp : out std_logic_vector(0 to 3);xian: out std_logic_vector(0 to 6);count :out ...

VHDL编程实例目录
第10章提供VHDL综合设计实例,从简单的门和并行赋值语句,到IF、Case控制语句、顺序语句、异步复位、预置位和清零、复杂顺序语句和4位移位寄存器,再到状态机设计。第11章描述高级设计流程,涉及RTL仿真、VHDL综合、门级功能验证、布局与布线、版图时序仿真、静态定时分析。第12章探讨顶层系统设计,包括CPU...

...端的8位二进制计数器你好,请问谁可以帮我用VHDL语言设计一个具有清...
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 := (OTHER...

相似回答