VHDL的语法入门

一、二选一选择器

Library ieee;

Use ieee.std_logic_1164.all;

Entity mux21 is

port(a,b:in std_logic;

s:in std_logic;

y:out std_logic);

End mux21;

Architecture mux_arch of mux21 is

Begin

y<=a when s= ‘0’ else

b when s= ‘1’;

End mux_arch;

二、基本结构

通常由以下五个部分组成:

库(Library

程序包(Package

实体说明(Entity Declaration

结构体(Architecture

配置(Configuration

三、

结构体中描述逻辑功能和电路结构的语句分为:

顺序语句和并行语句

下面为例子

ENTITY mux21a IS

PORT ( a, b : IN BIT;

s : IN BIT;

y : OUT BIT );

END ENTITY mux21a;

ARCHITECTURE one OF mux21a IS

SIGNAL d,e : BIT;

BEGIN

d <= a AND (NOT s) ;

e <= b AND s ;

y <= d OR e ;

END ARCHITECTURE one ;

四、名词介绍

1、实体 电路器件的端口构成和信号属性。

关键词区分大小写!

2、实体名

用一个或几个英文字母,或者英文字母加数字来命名;但一般

不应用数字或中文定义实体名,也不用元件名作实体名。如or2,

latch等。也不能用数字开头的实体名,如74LSxx。

保存文件时,文件名与实体名必须一致。

3、PORT 语句和端口信号名

描述电路的端口及其端口信号必须用端口语句 PORT(

..);

4、端口模式 定义端口上数据的流动方向和方式。

OUT : 单向输出模式,仅允许数据从实体内部输出;

不能用于内部反馈;不用的不能接地;

IN: 单向只读模式,仅允许数据从此端口流入实体;

BUFFER: 与 INOUT 类似,区别在于当需要输入数据时,只允许内部回

读输出的信号,BUFFER的回读信号不是由外部输入的,是由

内部产生,向外输出的信号。

INOUT: 输入输出双向端口;总线的地址/数据复用线/数据总线等;

5、数据类型BIT

VHDL 中,预先定义好的数据类型有多种:整数数据类型INTEGER,布尔数据

类型BOOLEAN,标准逻辑位数据类型STD _LOGIC和位数据类型BIT。BIT 数据类型的信号规定的取值范围是逻辑位‘0’和‘1’。必须加单引号‘’,否则认为是整数数据类型INTEGER。BIT 数据类型可以参不逻辑运算或算术运算,结果仍是BIT类型。

 

本文为原创文章,转载请注明出处!