码迷,mamicode.com
首页 > 编程语言 > 详细

用VHDL语言编写7人表决器

时间:2019-11-05 22:03:33      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:nbsp   com   mamicode   类型   数据   标准   bsp   统计   png   

7人表决器,即大于等于3个人同意,结果为成功。用逻辑0和1表示就是超过3个1为真用‘1’表示,不成功用‘0’表示。则其程序如下:

library ieee;
use ieee.std_logic_1164.all;
entity qb7 is
port(
a:in std_logic_vector(6 downto 0);
b:out std_logic
);
end;
architecture bhv of qb7 is
begin
process(a)
variable Q :integer;
begin
Q:=0;
for n in 0 to 6 loop
if(a(n)=‘1‘) then Q:=Q+1;
end if;
end loop;
if Q>=4 then b<=‘1‘;
else b<=‘0‘;
end if;
end process;
end bhv;

在程序中,输入端口a,它的数据类型标准矢量类型(按位矢量输出)std_logic_vector(6 downto 0);即a<="1101101"可以这样赋值。

                  输出端口b,它的数据类型标准逻辑型(包含bit‘0‘和‘1‘)std_logic;对于输出的结果用‘0‘和‘1‘表示。

                  变量Q,它的数据类型是整形,因为Q是统计1的个数,故用整数类型替代。

七人表决器的原理图:

技术图片

 

 七人表决器的仿真图:

技术图片

 

 

用VHDL语言编写7人表决器

标签:nbsp   com   mamicode   类型   数据   标准   bsp   统计   png   

原文地址:https://www.cnblogs.com/lhkhhk/p/11801397.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!