VHDL基础知识笔记(1)

news/2024/11/17 1:36:02/

1.实体:其电路意义相当于器件,它相当于电路原理图上的元器件符号。它给出了器件的输入输出引脚。实体又被称为模块。

2.结构体:这个部分会给出实体(或者说模块)的具体实现,指定输入和输出的行为。结构体的begin后面是一组并行语句,它的执行是不以书写顺序为准的。

3.数据对象:
(1)常量一旦赋值就不会发生变化,格式为:
constant 常数名:数据类型:=表达式;

(2)变量声明的示例:
在这里插入图片描述
(3)对信号赋值使用<=,允许产生延时。

总结一下,变量只能在进程语句中说明和使用;信号、常量可以在结构体和进程语句中使用,变量、常量用:=赋值,无延时;信号用<=赋值,有延时。

(4)枚举类型(用户自定义)
例如:
type color is (blue, green, yellow, red) ;
编码顺序是默认的,左边的第一个元素编码为0,以后自动加1,每个元素都是位矢量,位矢量的长度由所列元素的个数决定。比如说上面的例子中有四个元素,位矢量的长度就是2.

(5)自定义整数、实数类型:它们是标准实数、整数类型的的子类型。书写格式为:
type 数据类型名称 is integer range 整数范围 ;
type 数据类型名称 is real range 实数范围 ;

(6) 数组类型:
第一种是限定数组,例如:
type stb is array (7 downto 0) of bit ;
variable addend: stb ; – 变量addend定义为stb数组
第二种是非限定数组,例如:
type bit_vector is array (integer range <>) of bit ;
variable my_vector: bit_vector (5 downto -5) ;
–数组的下标排序是从5到-5

(7) 逻辑运算符:
NOT – 取反
AND – 与
OR – 或
NAND – 与非
NOR – 或非
XOR – 异或(不同为1,相同为0)

(8) 算术运算符中,只有加减乘除能编译成逻辑电路,其他的就很困难甚至不可能。

(9)<=在VHDL中有两种可能,一种用来给信号赋值,另一种表示小于等于。

(10)并置运算符用于位或位矢量的连接。例如:
signal a,b,c : bit ;
signal x,y : bit_vector(2 downto 0)
z <= a&b&c ; – z是3位位矢量
w <= x&y ; – w是6位位矢量


http://www.ppmy.cn/news/1201866.html

相关文章

微带线的ABCD矩阵的推导、转换与级联-Matlab计算实例

微带线的ABCD矩阵的推导、转换与级联-Matlab计算实例 散射参数矩阵有实际的物理意义&#xff0c;但是其无法级联计算&#xff0c;但是ABCD参数和传输散射矩阵可以级联计算&#xff0c;在此先简单介绍ABCD参数矩阵的基本用法。 1、微带线的ABCD矩阵的推导 其他的一些常用的二端…

蓝桥杯-成绩统计[Java]

目录: 学习目标&#xff1a; 学习内容&#xff1a; 学习时间&#xff1a; 题目&#xff1a; 题目描述: 输入描述: 输出描述: 输入输出样例: 示例 1: 运行限制: 题解: 思路: 学习目标&#xff1a; 刷蓝桥杯题库日记 学习内容&#xff1a; 编号502题目成绩统计难度…

数据时代的新引擎:数据治理与开发,揭秘数据领域的黄金机遇!

文章目录 一、数据时代的需求二、数据治理与开发三、案例分析四、黄金机遇《数据要素安全流通》《Python数据挖掘&#xff1a;入门、进阶与实用案例分析》《数据保护&#xff1a;工作负载的可恢复性 》《Data Mesh权威指南》《分布式统一大数据虚拟文件系统 Alluxio原理、技术与…

C++成长之路

看好的发展方向&#xff1a; 证券行业软件开发、AI自动化开发、桌面端工具类开发&#xff0c;云桌面技术 产品框架搭建 MFCDuilbLibcef Qt 技术深入 熟知编译器原理 C11/14等新知识的学习 泛型编程 / 模板编程 设计模式 多线程并发 多进程通讯 各种锁及其优缺点 必看书…

常用设计模式-详解

设计模式六大原则 开闭原则&#xff1a;对扩展开放&#xff0c;对修改关闭 单一职责原则&#xff1a;一个类只负责一个功能领域中的相应职责 里氏替换原则&#xff1a;所有引用基类的地方必须能透明地使用其子类的对象 依赖倒置原则&#xff1a;依赖于抽象&#xff0c;不能依赖…

03【保姆级】-GO语言变量和数据类型和相互转换

03【保姆级】-GO语言变量和数据类型 一、变量1.1 变量的定义&#xff1a;1.2 变量的声明、初始化、赋值1.3 变量使用的注意事项 插播-关于fmt.Printf格式打印%的作用二、 变量的数据类型2.1整数的基本类型2.1.1 有符号类型 int8/16/32/642.1.2 无符号类型 int8/16/32/642.1.3 整…

指令手册术语缩写

指令手册术语缩写 1 指令汇总表中的操作码列(不带VEX前缀的指令)2 指令汇总表中的操作码列(带有VEX前缀的指令)3 操作码汇总表中的指令列 本文属于《 X86指令基础系列教程》之一&#xff0c;欢迎查看其它文章。 1 指令汇总表中的操作码列(不带VEX前缀的指令) 2 指令汇总表中的…

Modbus封装库(Com,tcp,udp一应俱全)

自行封装在用的Modbus通迅库,集成了com,tcp,udp, 做个笔记吧&#xff0c; 以下头文件&#xff0c; #pragma once #include <functional> #include <vector> #include <string> #include <memory> #ifdef LIBMODBUS_EXPORTS #define LIBMODBUS_EXPORT_…