第二章VHDL基本知识

这篇具有很好参考价值的文章主要介绍了第二章VHDL基本知识。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

2.1.1 空白符\b,\t

2.1.2注释符

单行注释://

多行注释:/*    8/

2.1.3标识符

字母,数字,符号,下划线,区分大小写,第一个字符必须是字母或者下划线

2.1.3转移标识符

以\开头,以空白结尾,

2.1.4关键字

用来VHDL内部使用的词叫关键字,所有的关键字都是小写

2.1.5数值

0  低电平,逻辑0或者假

1  高电平,逻辑1或者真

x  不确定的逻辑状态

z  高阻态

(2)整数及其表示

二进制 b 0,1,x,X,z,Z,?,_

八进制 o 0-7,x,X,z,Z,?,_

十进制  d 0-9,_

十六进制 h 0-9,a-f,A-F,x,X,z,A,?,_

8‘b10001101  //位宽为8位的二进制数

注意;数值不能为负,有符号放在最左边

’和b之间不允许出现空格

位宽不能是表达式形式

(3)实数及其表示

十进制表示法:小数点两边必须都要有数字,

科学计数法:564.2e2,3e-3=0.003

使用下划线可提高可读性,5_4582.2158_5896

2.2 数据类型

物理数据类型:连线型,寄存器型,存储器型,

1.连线型

wire,tri  标准连线

wor,trior 多重驱动时,具有线或特性的连线型

wand,trand 多重驱动时,具有线与特性的连线型

trireg  具有电荷保持特性的连线型数据

tri 1 上拉电阻

tri 0 下拉电阻

supply1 电源线,用于对电源建模,为高电平1

supply0 电源线,用于对“地”建模,为低电平0

第二章VHDL基本知识

2.寄存器型

reg型状态保持作用,存储数据,触发器,锁存器

reg [3:0] b;

 reg型变量一般为无符号数,若将一个负数赋值给reg型变量,自动转化为二进制补码形式。

2.2.2连线型和reg型数据类型的声明

连线型数据变量的声明

net_declaration 包括wire,tri,tri0,tri1,wand,triand,trior,wor

range数据类型为1位的标量,超过一位为矢量

delay 仿真延迟时间

list_of_variables变量名称,一次可定义多个名称,逗号隔开

drive-strength:连线变量的驱动强度

寄存器型数据类型的声明

reg<range><list_of_register_variables>;

range为可选项,指定了reg型变量的位宽,缺省时为一位;

<list_of_register_variables>变量列表名称,一次可定义多个名称,逗号隔开

reg rega; //定义一个一位的寄存器型变量

reg [7:0] regb;// 8位的寄存器型变量

tri [7:0] tribus;//8位的三态总线

tri0[15:0] busa;//16位的连线型,处于三态时为上拉电阻

tri1[31:0] busb;//32位连线型,处于三态时为下拉电阻

reg scalared[1:4]b;//4位的标量型寄存器矢量

wire(pull1,strong0)c=a+b;//1和0的驱动强度不同的1位连线型变量c

trireg (large) storeline;//大强度的电荷存储功能的存储线

2.2.3存储器型

RAM\ROM\reg文件

一般声明格式为:

reg<range1><name_of_register><range2>;

range 1和range2都是可选项,缺省都为1;

range1存储器当中寄存器的位宽,格式为[msb:lsb]

range2寄存器个数,[msb:lsb],有msb-lsb+1个;

<name_of_register>变量名称列表,可定义多个名称,逗号隔开。

reg[7:0] mem1[255:0];//256个8位寄存器的存储器mem1;

reg [15:0]mem2[127:0],reg1,reg2;//128个16位寄存器的存储器mem2和两个16位 寄存器reg1,reg2;

reg[n-1:0]a;//n位寄存器a;

reg mem1[n-1:0];//n个1位寄存器构成的存储器mem1

2.2.4 抽象数据类型

整形,时间型;实型;参数型;

integer index;//32位有符号整数

integer i[31:0];//32个元素,整型数组

时间型

64位无符号数

time a,b;//两个64位时间型变量

实型

浮点型数值,对延迟时间的计算;

real  stime;//定义了一个实数型数据

参数型

常量,仿真开始之前就被赋值,仿真过程中不变,提高程序可读性和维护性

parameter  length=32,weight=16;

parameter PI=3.14,LOAD=4'b1101;

parameter DELAY = (BYTE+BIT)/2;

2.3运算符和表达式

第二章VHDL基本知识

2.3.1算术操作符

算术表带是的结果的长度由最长的操作数决定,再赋值语句下,算术操作数的长度由操作左端目标长度决定;

 等于==;不等于!==;全等===;非全等!==

比较的结果有三种,0,1,x

2.3.4逻辑运算符

逻辑与运算符“&&”逻辑或运算符“||”逻辑非运算符“!”

按位运算符

按位取反~按位与&按位或|按位与或^按位同或^~

按位异或

参加运算的两个数,如果两个相应位为“异”(值不同),则该位结果为1,否则为0。

即 0 ^ 0=0  , 0 ^ 1= 1  , 1 ^ 0= 1  , 1 ^ 1= 0 。

2.3.6归约运算符

归约运算的过程是第一步先用操作数的第一位和第二位进行位操作,然后再用第一步的结果和操作的数的下一位

进行位操作,如此重复直到最后一位。

2.3.7移位操作符

<<   >>

2.3.8条件运算符

<条件表达式>?<表达式1>:<表达式2>

一真大师

2.3.9 连接和复制运算符

连接运算符{}复制运算符{{}}

第二章VHDL基本知识

2.4模块的基本概念

第二章VHDL基本知识

模块的主要包括:模块的开始与结束,模块端口定义,模块数据类型说明,模块逻辑功能描述

(1)module开始endmodule结束,模块开始语句以分号结束 

 第二章VHDL基本知识

 上升沿触发器

第二章VHDL基本知识

2.4.2端口

1.端口的定义

输入端口输出端口双向端口

2.模块引用时端口的对应方式

第二章VHDL基本知识 

 文章来源地址https://www.toymoban.com/news/detail-460051.html

到了这里,关于第二章VHDL基本知识的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【第二章 selenium基本操作之元素】

    第一章 【初识selenium自动化测试框架(详细记录)】 1). F12 进入开发调试工具(DevTools) 2). 选择图中红圈的箭头(select element),则鼠标放到相应元素上可看获取到信息,例如属性与内容等 或者右键点击某个元素,选择 检查 规范性的网站一般id是唯一的(在html中是 标记

    2024年02月08日
    浏览(37)
  • 第二章 嵌入式系统硬件基础知识

    (1)信号特性 用 “ 逻辑真 ” “ 1 ” 或 “ 确定 ”来表示 高电平 用 “ 逻辑假 ” “ 0 ” 或 “ 不确定 ”来表示 低电平 1和0称为 互补信号 (2)信号转换 1、数字集成电路的分类         按照开关元件的不同,数字集成电路分为两大类:一类是 双极型集成电路

    2024年01月21日
    浏览(56)
  • Maven第二章:Maven基本概念与生命周期

    前言 本章主要内容,介绍Maven基本概念,包括maven坐标含义,命名规则,继承与聚合、了解与理解生命周期,如何通过Maven进行依赖和版本管理。 什么是Maven的坐标? Maven坐标是一种标识Maven项目的信息,它包含了项目的唯一标识符和项目的版本号等信息。Maven坐标的作用是唯

    2024年02月07日
    浏览(30)
  • 第二章 系统集成及服务管理知识点1

    这第二章主要讲了下集成及服务管理的内容、制度、意义、管理办法、以及一些管理方面的服务概念。跟着小老弟把内容给归纳归纳,后面来复习的时候也能够省不少时间! 1信息系统集成及服务管理的内容 在信息化建设过程中,系统集成及服务存在了诸多问题,主要问题:

    2024年02月16日
    浏览(28)
  • 第二章:AI大模型基础知识 2.1 机器学习基础

    随着计算机技术的飞速发展,人工智能已经成为了当今科技领域的热门话题。在这个过程中,机器学习作为人工智能的一个重要分支,扮演着至关重要的角色。本文将从机器学习的基本概念、核心算法原理、具体操作步骤、实际应用场景等方面进行详细讲解,帮助读者更好地

    2024年02月21日
    浏览(38)
  • 第二章:计算机系统基础知识之计算机网络

      计算机网络是利用通信线路将地理上分散的、具有独立功能的计算机系统和通信设备按不同的形式连接起来,并依靠网络软件及通信协议实现资源共享和信息传递的系统。   计算机网络技术主要涵盖 通信技术、网络技术、组网技术和网络工程 等四个方面。 数据通信

    2024年04月27日
    浏览(38)
  • 第二章 Flink集成Iceberg的集成方式及基本SQL使用

    注意事项:一般都是用基于Flink的Hive Catalog,使用HMS存储表模型数据 1、集成方式 (1)下载jar包 下载地址 (2)启动FlinkSQL ①StandLone模式启动 ②Flink On Yarn模式启动 2、基本使用 2.1、创建catalog 核心:可创建hive、hadoop、自定义等目录,创建模板如下 type : 必须的 iceberg 。(必需

    2024年02月08日
    浏览(28)
  • 第二章:AI大模型的基本原理2.2 深度学习基础2.2.3 循环神经网络

    循环神经网络(Recurrent Neural Networks,RNN)是一种特殊的神经网络结构,它可以处理序列数据,如自然语言、时间序列预测等。RNN的核心特点是包含反馈连接,使得网络具有内存功能,可以在处理序列数据时保留以前的信息。这一特性使得RNN成为处理自然语言和时间序列数据的

    2024年01月16日
    浏览(30)
  • 【考研数学】概率论与数理统计 —— 第二章 | 一维随机变量及其分布(1,基本概念与随机变量常见类型)

    暑假接近尾声了,争取赶一点概率论部分的进度。 设随机试验 E E E 的样本空间为 Ω Omega Ω , X X X 为定义于样本空间 Ω Omega Ω 上的函数,对于任意 w ∈ Ω w in Omega w ∈ Ω ,总存在唯一确定的 X ( w ) X(w) X ( w ) 与之对应,称 X ( w ) X(w) X ( w ) 为随机变量,一般记为 X X X 。 随机

    2024年02月11日
    浏览(32)
  • 【MySQL数据库重点】第二节:MySQL基础知识(基本操作)

    目录 一:数据库的操作 1.显示数据库 2.创建数据库 3.使用数据库 4.删除数据库 二:常用数据类型 1.数值类型:整型和浮点型 2.字符串类型 3.日期类型 三:表的操作 1.查看表结构 2.创建表 3.删除表 1.显示数据库 语法: show databases;  2.创建数据库 (1)简化语法 create database 数

    2024年02月08日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包