【VHDL】3 GENERIC语句 和 INTEGER类型

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

【VHDL】【作业】3 GENERIC语句 和 INTEGER类型



前言

记录学习的过程,顺便期末复习一下。


什么是GENERIC语句?

类属语句(GENERIC),其实就是一种ENTITY中的命名技巧,可以提高代码的复用率。
 格式是 GENERIC(常数名数据类型 := 设定值); :=和变量赋值的符号一样

32位加法器

LIBRARY IEEE ;
USE IEEE.STD_LOGIC_1164.ALL ;
USE IEEE.STD_LOGIC_UNSIGNED.ALL ; --此程序包中包含算术操作符的重载函数
USE IEEE.STD_LOGIC_ARITH.ALL;
ENTITY adder32b IS
GENERIC ( S : INTEGER := 8); --定义参数 S 为整数类型,且此时等于 8
	PORT (A,B : IN STD_LOGIC_VECTOR(4*S-1 DOWNTO 0) ;--总共有32[0,31]
			 CIN : IN STD_LOGIC ;
			 COUT : OUT STD_LOGIC;
			 DOUT : OUT STD_LOGIC_VECTOR(4*S-1 DOWNTO 0));--总共有32[0,31]
END ENTITY adder32b;

ARCHITECTURE BHV OF adder32b IS
SIGNAL DATA : STD_LOGIC_VECTOR(4*S DOWNTO 0);--总共有33[0,32]
  BEGIN
	DATA <= ('0' & A) + ('0' & B) + ("00000000000000000000000000000000" & CIN);--并置一下 
															--使得它们的位都相等,方便相加
	COUT <= DATA(32); --[32]位 是1时,代表有进位 就是输出进位
	DOUT <= DATA(4*S-1 DOWNTO 0);--总共有32[0,31] --输出计算结果
END ARCHITECTURE BHV;

仿真波形

有进位 结果要加1

【VHDL】3 GENERIC语句 和 INTEGER类型


总结

这次作业 主要是为了理解一下 GENERIC语句 和 INTEGER类型 的搭配使用。
修改起来很方便,提高了代码的复用率。文章来源地址https://www.toymoban.com/news/detail-459866.html

每天进步一点点 笔记仅供自学,用来回看复习,不一定适合你,如有错误请指出。

到了这里,关于【VHDL】3 GENERIC语句 和 INTEGER类型的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 关于Redis-存Long取Integer类型转换错误的问题

    背景 最近遇到了两个Redis相关的问题,趁着清明假期,梳理整理。 1.存入Long类型对象,在代码中使用Long类型接收,结果报类型转换错误。 2.String对象的反序列化问题,直接在Redis服务器上新增一个key-value,而后在代码中get(key)时,报反序列化失败。 关于Long类型转换错误 Red

    2024年02月15日
    浏览(24)
  • VHDL语言基础-数据类型及运算符

    目录 VHDL的数据类型: VHDL中定义的10种标准数据类型: 约束区间说明: 用户自定义数据类型: 使用格式: 常用的用户自定义类型: 枚举类型: 子类型SUBTYPE: 整数类型和实数类型: 数组类型: 记录类型: 数据类型转换: VHDL的运算符:  运算符的优先级: 注意:字符要区

    2024年02月09日
    浏览(52)
  • 数据库作业-sql语句查询

    建表的插入数据的表 数据库作业-sql建表和插入数据_快乐的xiao何的博客-CSDN博客 create table supplier( supplierno char(6) primary key, suppliername nvarchar(10), address nvarchar(20), number char(11) )create table category( categoryno char(5) primary key, categoryname varchar(20), descriptions text... https://blog.csdn.net/m0_539670

    2023年04月23日
    浏览(43)
  • SQlServer 定时执行sql语句作业的制定

      1、打开【SQL Server Management Studio】,在【对象资源管理器】列表中选择【SQL Server 代理】; 2、鼠标右击【SQL Server 代理】,选择【启动(S)】,如已启动,可以省略此步骤; 3、展开【SQL Server 代理】列表,右击【作业】--【新建作业】;  (1)在【常规】选项卡中:输入作业名

    2024年02月03日
    浏览(39)
  • 滴水逆向三期笔记与作业——02C语言——05 正向基础/05 循环语句

    原理:arr[5]是ebp的位置,而arr[6]是ebp+0x4的位置,即函数的返回地址,赋值给arr[6]相当于是修改了eip寄存器。 反汇编:i等于7时,修改了rbp+0x1c-0x20即rbp-0x4位置的值,将其置为0,而该位置为i的值,所以每一轮for过后将i重新置0,就造成了不停的循环。 声明一个变量就是告诉计

    2024年02月15日
    浏览(43)
  • ​gp,pg常用数据类型,查询语句

    2024年02月15日
    浏览(27)
  • 微机原理:汇编语言语句类型与格式

    汇编语言源程序包括的语句类型为:指令性语句和指示性语句。 指令性语句 即为通常所说的 符号指令 ; 符号指令 :经过汇编后,其机器指令通知CPU进行数模操作。 指示性语句 包括 伪指令 和 宏指令 。 伪指令 :是非机器指令,是在汇编链接期间进行操作。为汇编程序,

    2024年02月07日
    浏览(28)
  • 【Python入门篇】——Python中判断语句(布尔类型,比较运算符,if语句)

    作者简介: 辭七七,目前大一,正在学习C/C++,Java,Python等 作者主页: 七七的个人主页 文章收录专栏: Python入门,本专栏主要内容为Python的基础语法,Python中的选择循环语句,Python函数,Python的数据容器等。 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖 进行判断,只有2个

    2024年02月03日
    浏览(31)
  • 030、SQL语句之数据类型与表达式

    类型 存储空间 最小值(有符号/无符号) 最大值(有符号/无符号) TINYINT 1 -128 / 0 127 / 255 SMALLINT 2 -32768 / 0 32767 / 65535 MEDIUMINT 3 -8388608 / 0 8388607 / 16777215 INT 4 -2147483648 / 0 BIGINT 8 -9223372036854775808 / 0 9223372036854775807 / 18446744073709551615 注意unsigned: 不允许负数 用于精确数值:整数、小数或两

    2024年02月13日
    浏览(39)
  • 获取SQL语句表名,判断DDL类型(二)

    1.使用druid解析sql语句 引入依赖 2.处理sql语句 复杂的语句可能无法处理,但是大部分复杂的语句还是可以处理的 “ . ”表示任意字符,“ * ”表示前面表达式匹配任意次,“ ? ”表示非贪婪模式,“ .*?” 是满足条件的情况只匹配一次,即懒惰匹配,“ ?=A ” 表示以A开头、不

    2024年02月13日
    浏览(26)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包