![](https://img-blog.csdnimg.cn/20190927151132530.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
硬件描述语言VHDL
硬件设计
zy010101
会写一点代码
展开
-
VHDL硬件描述语言(一)——基本结构
VHDL硬件描述语言是一种用于电路设计的硬件语言。出现在在80年代的后期,最初是由美国国防部开发出来供美军用来提高设计的可靠性和缩减开发周期的一种设计语言 。VHDL主要用于描述数字系统的结构,行为,功能和接口。VHDL语言是用来设计FPGA/PLD硬件的。VHDL语言是基于行为描述的。更加重要的是VHDL语言设计是于硬件电路无关的,它能在任意厂家的FPGA芯片上进行设计。通常一个完整的V...原创 2019-03-06 21:54:15 · 6484 阅读 · 1 评论 -
VHDL实现编码器和译码器
普通编码器(8——3编码器)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY encode8_3 IS PORT(input:IN STD_LOGIC_VECTOR(7 DOWNTO 0); output:OUT STD_LOGIC_VECTOR(2 DOWNTO 0));END encode8_3;ARCHITECTURE enc...原创 2019-04-14 22:29:07 · 9926 阅读 · 10 评论 -
VHDL实现8选1数据选择器
8选1数据选择器LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY mux8 IS PORT(data:IN STD_LOGIC_VECTOR(0 TO 7); addr:IN STD_LOGIC_VECTOR(2 DOWNTO 0); output:OUT STD_LOGIC);END mux8;ARCHITECTURE mux...原创 2019-04-14 22:01:02 · 25189 阅读 · 3 评论 -
VHDL实现与门,或门,非门。
行为描述方法实现--二输入与门LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY and2 IS PORT(a,b:IN STD_LOGIC; c:OUT STD_LOGIC);END and2;ARCHITECTURE and2_behavior OF and2 ISBEGIN c<= a AND b;END and2...原创 2019-04-14 21:48:19 · 27557 阅读 · 9 评论 -
硬件描述语言VHDL——元件例化
VHDL语言的一大特点是“自顶向下”进行硬件设计。这样的方式能最大化利用接口的优点。从系统的观点来看,这是层次化的设计,有利于扩展。元件例化元件例化,简单来说就是将以前设计的实体当做本设计的一个元件,然后利用VHDL语句将各元件之间的连接关系描述出来。元件例化语句由两部分组成,一部分是元件定义,即将现成的设计实体定义为本设计的元件。第2部分是元件连接关系映射,即描述各个元件之间的连接关系。...原创 2019-04-14 20:03:53 · 12630 阅读 · 0 评论 -
VHDL实现分频器
10分频电路(非分频器)LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY clk_div IS PORT(clkin:IN STD_LOGIC; clkout:OUT STD_LOGIC);END clk_di...原创 2019-04-17 12:22:27 · 26676 阅读 · 8 评论 -
VHDL实现计数器
10进制同步计数器LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY cnt10 IS PORT(clk:IN STD_LOGIC; data:OUT STD_LOGIC_VECTOR(3 DOWNTO 0); co:OUT STD_LOGIC);END cnt10;...原创 2019-04-17 11:37:40 · 29891 阅读 · 11 评论 -
VHDL设计触发器和锁存器
D触发器LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY dtrigger IS PORT(d,clk:IN STD_LOGIC; q,dq:OUT STD_LOGIC);END dtrigger;ARCHITECTURE dtrigger_behavior OF dtrigger ISBEGIN PROCESS(clk) B...原创 2019-04-16 22:33:05 · 6704 阅读 · 5 评论 -
硬件描述语言VHDL——并行语句
并行语句是是硬件描述语言的特殊之处,这也是硬件描述语言不可少的一部分。硬件电路例如:总线,它需要多个输入。这个时候,我们必须并发的给出总线上的数据。软件程序设计语言也有并发,但是在性能要求不是苛刻的情形下,无需使用并发。软件的并发由多线程和多进程来实现。在VHDL中,并发语句是同时执行的。它们的书写顺序和执行顺序没有关系。在结构体中的并行语句主要有一下几种: 进程语句; 并行...原创 2019-04-07 22:37:16 · 6795 阅读 · 0 评论 -
硬件描述语言VHDL——顺序语句
VHDL语言的基本语句分为两大类,顺序语句和并行语句。这是由于硬件设计的特点所引起的。假设需要设计一个三输入的与门和两输入的或门,将它们两个的结果作为输入给加法器,那么这就需要同时给5个信号。这是并行的,不能顺序执行。在VHDL中,变量的赋值语句使用":="这个符号,变量的赋值是立即生效的。信号的赋值语句使用"<=",它的赋值是有延迟的,不是立即生效的。变量是个局部量,而信号是全...原创 2019-03-20 12:56:25 · 4413 阅读 · 0 评论 -
硬件描述语言VHDL——运算符
逻辑运算符and or not nand nor xor xnor 这7种逻辑运算符。它们分别是与,或,非,与非,或非,异或,同或。它们的操作数只能是std_logic,bit,boolean类型的数据或者是相应的矢量,操作数为矢量的时候,要求长度相等。算术运算符+ - * / ...原创 2019-03-20 11:44:14 · 6297 阅读 · 0 评论 -
VHDL硬件描述语言(三)——基本数据对象和数据类型
VHDL是一种强类型的语言,它不允许不同数据类型之间的相互赋值。如果想在不同数据类型之间进行赋值则需要调用函数来完成。在VHDL语言里,基本数据对象有三种:常量,变量以及信号。常量常量就是常数,它的数值不能更改。它必须初始化。它的一般定义格式如下:CONSTANT 常量名:数据类型 := 表达式; --表达式是用来初始化常量的变量变量的格式如下:VARIABL...原创 2019-03-09 17:15:09 · 8497 阅读 · 1 评论 -
VHDL硬件描述语言(二)——子程序
在VHDL语言中,子程序包括函数和过程。一般被定义在程序包里面。函数函数在VHDL中可以用于求值,函数的特征是多个输入,一个输出。这和普通的软件程序设计语言没有什么区别。函数定义的形式如下:FUNCTION 函数名(参数列表) RETURN 数据类型 --函数首FUNCTION 函数名(参数列表) RETURN 数据类型 IS --函数体 [说明部分]...原创 2019-03-09 16:01:28 · 1172 阅读 · 0 评论 -
VHDL实现加法器的设计
1位半加器LIBRARY IEEE;LIBRARY IEEE.STD_LOGIC_1164.ALL;ENTITY half_add_1 IS PORT(a:IN STD_LOGIC; b:IN STD_LOGIC; co:OUT STD_LOGIC; s:OUT STD_LOGIC);END half_add_1;ARCHITECTURE half_add_1_beha...原创 2019-04-14 22:55:35 · 5002 阅读 · 0 评论