书签 分享 收藏 举报 版权申诉 / 98
上传文档赚钱

类型VHDL语言-整套-课件-合一.ppt

  • 上传人(卖家):三亚风情
  • 文档编号:3591708
  • 上传时间:2022-09-22
  • 格式:PPT
  • 页数:98
  • 大小:8.59MB
  • 【下载声明】
    1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
    2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
    3. 本页资料《VHDL语言-整套-课件-合一.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
    4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
    5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
    配套讲稿:

    如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。

    特殊限制:

    部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。

    关 键  词:
    VHDL 语言 整套 课件 合一
    资源描述:

    1、2022-7-19电子教案 Page 1 of 97VHDL VHDL VHDL AND ITSAND ITSAND ITS A A APPLICATIONSPPLICATIONSPPLICATIONS付永庆哈尔滨工程大学信息与通信工程学院信号与信息处理专业通信与信息系统专业VHDL语言及其应用语言及其应用2022-7-19电子教案 Page 2 of 97哈尔滨工程大学 付永庆VHDL语言及其应用语言及其应用课程说明课程说明(1)36 学时学时 开课专业开课专业 课程性质课程性质 指选课指选课/选修课选修课 教材与参考书教材与参考书 VHDL语言及其应用语言及其应用,付永庆付永庆,高等教育出

    2、版社,高等教育出版社,2005 The Designers Guide to VHDL,Peter J.Arshenden,Morgan Kaufmann Publishers,2001 实验实验设备设备 PLD-1型可编程器件教学实验箱型可编程器件教学实验箱/Altera UP-1实验板实验板2022-7-19电子教案 Page 3 of 97哈尔滨工程大学 付永庆VHDL语言及其应用语言及其应用课程说明课程说明(2)教学目的教学目的 教授学生掌握教授学生掌握VHDL语言工具和软硬件联合设计方法语言工具和软硬件联合设计方法 培养学生独立组织基于培养学生独立组织基于PLD器件的硬件实验的能力器

    3、件的硬件实验的能力 教学内容教学内容 第一部分第一部分 VHDL综述综述 (2学时)学时)第二部分第二部分 VHDL语言的学习基础语言的学习基础 (4学时)学时)第三部分第三部分 VHDL顺序语句顺序语句 (2学时)学时)第四部分第四部分 VHDL的模型结构的模型结构 (2学时)学时)第五部分第五部分 深入理解深入理解VHDL (2学时)学时)第六部分第六部分 VHDL设计举例设计举例 (2学时)学时)第七部分第七部分 第八部分第八部分 上机练习和课程设计上机练习和课程设计 (20学时,含学时,含2学时的考核)学时的考核)以以VHDL93为主,当遇到为主,当遇到VHDL语句、语义与研发工具语句

    4、、语义与研发工具 冲突时,以器件商的工具所支持的范围为准冲突时,以器件商的工具所支持的范围为准 2022-7-19电子教案 Page 4 of 97哈尔滨工程大学 付永庆VHDL语言及其应用语言及其应用课程说明课程说明(3)考核与评分方法考核与评分方法 提交书面设计报告及设计程序提交书面设计报告及设计程序 演示硬件设计结果演示硬件设计结果 评分起点评分起点50分分+理论推导、建模、原理说明(理论推导、建模、原理说明(10分)分)+演示演示 正确性(正确性(15分)分)+创新性(创新性(15分)分)+设计合理性与人机界面设计合理性与人机界面 (10分),总分分),总分难度系数难度系数 指定设计题

    5、目指定设计题目 汉字滚动显示汉字滚动显示 4个以上汉字,个以上汉字,具有上、下、左、右滚动控制的能力,难度系数具有上、下、左、右滚动控制的能力,难度系数0.8 直流数字电流表直流数字电流表 测量范围测量范围 0100 mA,误差误差1%,难度系数,难度系数 0.85 2022-7-19电子教案 Page 5 of 97哈尔滨工程大学 付永庆VHDL语言及其应用语言及其应用课程说明课程说明(4)指定设计题目指定设计题目 自动量程频率计自动量程频率计 测量范围测量范围 1Hz1MHz,相对误差相对误差1,难度系数,难度系数0.95 任意波形发生器任意波形发生器 至少三种波形至少三种波形,频率范围频

    6、率范围101000Hz,步进量步进量10Hz,难度系数难度系数 0.9 FIR带通滤波器带通滤波器 中心频率中心频率200Hz,3dB带宽带宽20Hz,带外衰减带外衰减10dB,难度系数难度系数1.1 FIR低通滤波器低通滤波器 截至频率截至频率200Hz,带外衰减带外衰减20dB,难度系数难度系数0.9 基带基带FSK电路电路 f1=1250Hz,f2=2500Hz,波特率波特率=625bps,难度系数难度系数1.0 基带基带BPSK电路电路 fC=1250Hz,波特率波特率=625bps,难度系数难度系数1.12022-7-19电子教案 Page 6 of 97哈尔滨工程大学 付永庆VHD

    7、L语言及其应用语言及其应用课程说明课程说明(5)指定设计题目指定设计题目 黑白字符显示控制芯片黑白字符显示控制芯片 VGA模式,模式,字符点阵字符点阵3232,字模字模32个,全屏个,全屏10 行每行行每行10个字符,个字符,连续显示输入字符至少连续显示输入字符至少8个,难度系数个,难度系数1.0 PS/2键盘控制器键盘控制器 接收键盘扫描码,用接收键盘扫描码,用LED显示显示,难度系数难度系数 0.75 多谱信号源多谱信号源 产生含产生含50、100、200、300、400、500、600、700、800Hz等高谱线的等高谱线的 的信号源,输出电压的信号源,输出电压2.5V、可调整,难度系数

    8、可调整,难度系数1.0 计算器计算器 能对能对0100范围内的整数完成加、减、乘、除运算,难度系数范围内的整数完成加、减、乘、除运算,难度系数1.0 逻辑分析仪逻辑分析仪 用示波器用示波器X-Y输入设计一个输入设计一个8线逻辑信号分析仪,输入频率线逻辑信号分析仪,输入频率1KHz,每每 屏显示至少含屏显示至少含4个周波,难度系数个周波,难度系数1.22022-7-19电子教案 Page 7 of 97哈尔滨工程大学 付永庆VHDL语言及其应用语言及其应用课程说明课程说明(6)指定设计题目指定设计题目 相位测量仪表相位测量仪表 可测双路同频信号可测双路同频信号50Hz1KHz,相位差相位差-45

    9、+45,测量误差,测量误差1,难,难 度系数度系数1.1 图形显示终端图形显示终端 用示波器屏幕显示用示波器屏幕显示10个汉字个汉字,难度系数难度系数 1.2 多用途信号源多用途信号源 为为AD9854配置智能控制单元,产生配置智能控制单元,产生ASK、FSK、PSK、FM、AM调制调制 信号源,频率范围信号源,频率范围110MHz,增量增量0.1MHz,难度系数难度系数1.1 设计设计USB接口接口 具有读写优盘的能力,可显示读出数据,难度系数具有读写优盘的能力,可显示读出数据,难度系数1.1 测温仪表测温仪表 测温范围测温范围2040,误差,误差1,难度系数,难度系数1.02022-7-1

    10、9电子教案 Page 8 of 97哈尔滨工程大学 付永庆VHDL语言及其应用语言及其应用课程说明课程说明(7)指定设计题目指定设计题目 超声波测距超声波测距 范围范围15米米,测量误差测量误差 0.01米,难度系数米,难度系数1.0 交流电压表交流电压表 测量范围测量范围 5伏,精度伏,精度1%,难度系数难度系数 1.1 选题与要求选题与要求 每题不超过每题不超过10人人,原则上仅允许同一导师的原则上仅允许同一导师的1名学生进入名学生进入 报告必须有详尽的原理分析和硬核实现结构介绍,否则不给分报告必须有详尽的原理分析和硬核实现结构介绍,否则不给分 实验涉及的少量外部元件由学生负责,否则请选无

    11、花费的题目实验涉及的少量外部元件由学生负责,否则请选无花费的题目 允许自选题目,但须获得批准允许自选题目,但须获得批准 接受提前考核接受提前考核2022-7-19电子教案 Page 9 of 97哈尔滨工程大学 付永庆VHDL语言及其应用语言及其应用课程说明课程说明(8)设计报告格式设计报告格式 2022-7-19电子教案 Page 10 of 97哈尔滨工程大学 付永庆VHDL语言及其应用语言及其应用课程说明课程说明(9)设计报告格式设计报告格式 2022-7-19电子教案 Page 11 of 97哈尔滨工程大学 付永庆第一部分第一部分 VHDL综述综述(1)什么是什么是VHDL语言?语言

    12、?HDL语言是一种支持用形式化方法来描述数字逻辑电路和系统的语言语言是一种支持用形式化方法来描述数字逻辑电路和系统的语言 VHDL语言源于美国国防部发起的语言源于美国国防部发起的VHSIC(Very High Speed Integrated Circuits)计划计划 1987年年12月月IEEE批准批准VHDL为标准为标准HDL语言语言(IEEE-1076),称为称为VHDL87 1993年修订为年修订为VHDL93,2001年修订为年修订为VHDL 2001 IEEE-1076.1 VHDL-AMS,IEEE-1076.2 Mathematical Packages,IEEE-1076.

    13、3 Synthesis Packages,IEEE-1076.4 VITAL,IEEE Standard 1164 Multi-value Logic System VHDL语言的优点?语言的优点?人机可读性好人机可读性好 比图形和布尔方程更简洁比图形和布尔方程更简洁 方便设计重用方便设计重用 容易实现设计仿真与验证容易实现设计仿真与验证 便于映射为便于映射为IC芯片的制造工艺芯片的制造工艺 2022-7-19电子教案 Page 12 of 97哈尔滨工程大学 付永庆第一部分第一部分 VHDL综述综述(2)自顶向下设计自顶向下设计 VHDL语言支持自顶向下的系统划分,直至划分后的最底层单元能用

    14、图元语言支持自顶向下的系统划分,直至划分后的最底层单元能用图元 (primitive element)来实现为止来实现为止 图元就是基本逻辑单元、宏模型或图元就是基本逻辑单元、宏模型或IP_core VHDL的基本模型的基本模型 行为模型:用于描述数字器件或系统的功能,统指数学方程表示的模型行为模型:用于描述数字器件或系统的功能,统指数学方程表示的模型 时序模型:用于描述数字器件或系统的激励与响应间的关系,统指布尔方程时序模型:用于描述数字器件或系统的激励与响应间的关系,统指布尔方程 表示的模型表示的模型 结构模型:用于描述自顶向下划分系统形成的各个基本单元间的互连关系,结构模型:用于描述自顶

    15、向下划分系统形成的各个基本单元间的互连关系,统指用元件互连生成的电路模型统指用元件互连生成的电路模型 2022-7-19电子教案 Page 13 of 97哈尔滨工程大学 付永庆第一部分第一部分 VHDL综述综述(3)VHDL的基本设计流程的基本设计流程 2022-7-19电子教案 Page 14 of 97哈尔滨工程大学 付永庆第一部分第一部分 VHDL综述综述(4)VHDL的主要应用领域的主要应用领域 智能模块智能模块(IP)的研发的研发 IP:用用VHDL语言编写,经逻辑优化和功能验证的可生成语言编写,经逻辑优化和功能验证的可生成VLSI中各种中各种 功能单元的软件群,例如,无线通信产品

    16、、网上设备、中央处理功能单元的软件群,例如,无线通信产品、网上设备、中央处理 器器(通用通用CPU)、DSP、PCI、USB、嵌入式嵌入式CPU 单芯片全功能集成系统设计:单芯片全功能集成系统设计:SoPC系统、嵌入式计算、系统、嵌入式计算、ASIC验证验证 功能可重置系统的设计:远程系统升级、可重配置设计功能可重置系统的设计:远程系统升级、可重配置设计 FPGA的发展方向的发展方向 多用途:多用途:CAM,RAM、PLL 高密度、低功耗、低成本:高密度、低功耗、低成本:MAX II系列、系列、Cyclone II系列系列 嵌入硬核、超高速:嵌入硬核、超高速:Stratix系列系列、Strat

    17、ix II系列系列、Stratix GX系列系列 超低成本:结构化的超低成本:结构化的ASICs,例如,例如,HardCopy系列系列 嵌入嵌入CPU软核软核:Nios、Nios II2022-7-19电子教案 Page 15 of 97哈尔滨工程大学 付永庆第一部分第一部分 VHDL综述综述(5)Altera公司的最新公司的最新FPGA芯片芯片2022-7-19电子教案 Page 16 of 97哈尔滨工程大学 付永庆第一部分第一部分 VHDL综述综述(6)Altera公司的公司的SoC研发板研发板2022-7-19电子教案 Page 17 of 97哈尔滨工程大学 付永庆第二部分第二部分

    18、VHDL语言的学习基础语言的学习基础(1)书写规定与基本句法单元书写规定与基本句法单元 书写规定书写规定保留字保留字 用黑体小写字母表示用黑体小写字母表示类型字类型字 用小写字母表示用小写字母表示库库 用大写字母表示用大写字母表示标识符标识符 用小写字母表示用小写字母表示简化书写简化书写 用用 表示表示任选项任选项 用用 表示表示重复项重复项 用用 表示,有时也用之界定一段语句表示,有时也用之界定一段语句二选一二选一 用用 表示表示定义为定义为 用用:=:=表示表示语句分隔语句分隔 用分号用分号 “;”表示表示特殊要强调的内容特殊要强调的内容用黑体表示用黑体表示注释注释 用用 “-”前缀前缀2

    19、022-7-19电子教案 Page 18 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(2)书写规定与基本句法单元书写规定与基本句法单元 标识符标识符基本标识符基本标识符 由由VHDLVHDL8787支持支持,长度不能超过长度不能超过32 32 个有效字符序列,个有效字符序列,字符集字符集:0:09,az,AZ和下划线和下划线“_”扩展标识符扩展标识符 由由VHDLVHDL9393,VHDL2001VHDL2001支持,首尾用反斜杠支持,首尾用反斜杠“”定界,定界,区分大小写,总与基本标识符不同,字符集:区分大小写,总与基本标识符不同,字符集:ASCI

    20、IASCII码,码,反斜杠字符要双写,允许任意字符,包括保留字、类型字反斜杠字符要双写,允许任意字符,包括保留字、类型字 保留字保留字 类型字类型字 专用字专用字保留字保留字 预留用于专门用途的标识符,预留用于专门用途的标识符,VHDLVHDL87,VHDL87,VHDL9393和和VHDL2001VHDL2001有差别有差别类型字类型字 用于表示数据类型的标识符用于表示数据类型的标识符专用字专用字 用于表示特别信息和常量的标识符用于表示特别信息和常量的标识符2022-7-19电子教案 Page 19 of 97第二部分第二部分 VHDL语言的学习基础语言的学习基础(3)书写规定与基本句法单元

    21、书写规定与基本句法单元 数及表示法数及表示法数制:数制:二进制、十进制、十六进制二进制、十进制、十六进制 书写格式:书写格式:被表示的数被表示的数:=#为为216之间的十进制正整数之间的十进制正整数,#号为定界符,号为定界符,为为10时可省略时可省略 定界符和基。定界符和基。:=E+|E ;:=下划线下划线;:=|用字符用字符AF表示表示1015的数字,不分大小写。的数字,不分大小写。举例举例:2#0001_0111_0010#8#562#16#172#370 3.7E+2 -整数整数370的表示的表示2#0.100#8#0.4#16#0.8#-实数实数0.5的表示的表示注意:在相邻数字之间插

    22、入下划线只为增加可读性,对数值无影响。注意:在相邻数字之间插入下划线只为增加可读性,对数值无影响。2022-7-19电子教案 Page 20 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(4)书写规定与基本句法单元书写规定与基本句法单元 字符、串、位串字符、串、位串字符:字符:用单引号括起来,例如,用单引号括起来,例如,A、a、%串:串:用双引号括起来用双引号括起来。串内包含双引号字符时,用双写双引号来表示。串长串内包含双引号字符时,用双写双引号来表示。串长 度超过一行度超过一行,用运算符用运算符“&”把两个子串连接起来把两个子串连接起来,例如,例如,

    23、“A string”“This string contains anembedded stringin it”“00001111zzzz”“”位串:位串:仅由仅由0和和1字符组成的串字符组成的串,用双引号括起来,前缀符号用双引号括起来,前缀符号 B 代表二进制代表二进制 O 代表八进制代表八进制 X 代表十六进制代表十六进制 例如例如,B“10”B“1111_0010_0001”-二进制位串二进制位串 O“072072”O“1313”o“372372”-八进制位串八进制位串 X“FA”X“0d”x“FFE0”-十六进制位串十六进制位串2022-7-19电子教案 Page 21 of 97哈尔滨

    24、工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(5)目标与分类目标与分类信号、变量、常量和文件信号、变量、常量和文件 从硬件的角度看,信号代表着实际电路中的某一连接线,而常量从硬件的角度看,信号代表着实际电路中的某一连接线,而常量代表着实际电路中的电源或地。变量和文件没有与硬件直接的对应关代表着实际电路中的电源或地。变量和文件没有与硬件直接的对应关系,通常它们只作为暂存和交换信息的载体使用系,通常它们只作为暂存和交换信息的载体使用 信号信号 抽象描述电路的导线,起保持改变的数值和连接子元件的作用。抽象描述电路的导线,起保持改变的数值和连接子元件的作用。信号总是在元件的端

    25、口连接元件,元件间交换的信息仅通过信号传送信号总是在元件的端口连接元件,元件间交换的信息仅通过信号传送 信号赋值不意味着立即更新其保持的原有内容,因为任何对信号信号赋值不意味着立即更新其保持的原有内容,因为任何对信号的赋值操作只能作为预定数值存储在信号的驱动器中,仅当模拟时间的赋值操作只能作为预定数值存储在信号的驱动器中,仅当模拟时间经过起同步作用的语句或再一次启动了进程时才会发生更新动作。经过起同步作用的语句或再一次启动了进程时才会发生更新动作。允许利用属性存取过去和当前的数值,可以接受来自变量的赋值允许利用属性存取过去和当前的数值,可以接受来自变量的赋值2022-7-19电子教案 Page

    26、 22 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(6)目标与分类目标与分类 信号、变量、常量和文件信号、变量、常量和文件 信号信号信号说明语句的书写格式为:信号说明语句的书写格式为:signal ,:约束范围约束范围:=;例如:例如:signal temp_sum:std_logic_vector(3 downto 0):=“0011”;signal a,b:std_logic;信号信号a和和b取系统默认值,即:该类型的最左值或最小值取系统默认值,即:该类型的最左值或最小值 0。信号代入符为信号代入符为“=”,例如:例如:output=a xor

    27、b after 3 ns;2022-7-19电子教案 Page 23 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(7)目标与分类目标与分类 信号、变量、常量和文件信号、变量、常量和文件 变量变量 用用于描述硬件的高层次特性,在综合过程中可能推断为存储器件。于描述硬件的高层次特性,在综合过程中可能推断为存储器件。存在两种变量:规则变量和共享变量。存在两种变量:规则变量和共享变量。规规则变量只能在子程序和进程语句中被说明和使用,是一个局部量。则变量只能在子程序和进程语句中被说明和使用,是一个局部量。共享变量的作用范围是全局的,即:跨越同级和向下的设计层次

    28、可见。共享变量的作用范围是全局的,即:跨越同级和向下的设计层次可见。VHDL87标准只支持规则变量,标准只支持规则变量,VHDL93和和VHDL2001标准既支持规则标准既支持规则 变量也支持共享变量。变量也支持共享变量。不不允许在进程和子程序中说明共享变量。允许在进程和子程序中说明共享变量。变变量说明语句的书写格式如下:量说明语句的书写格式如下:variable,:约束范围约束范围:=;全全局变量说明需加入保留字局变量说明需加入保留字shared2022-7-19电子教案 Page 24 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(8)目标与分类目

    29、标与分类 信号、变量、常量和文件信号、变量、常量和文件 变量变量变量只在进程首次执行时初始化,并在进程被挂起和重新激活时保持原有数变量只在进程首次执行时初始化,并在进程被挂起和重新激活时保持原有数值不变。共享变量除赋值机制与信号不同外,其他类同于信号。值不变。共享变量除赋值机制与信号不同外,其他类同于信号。变量赋值语句的书写格式为:变量赋值语句的书写格式为:语句标号语句标号:=:=;例子:例子:m:=1;counter:=counter+1;VHDLVHDL中对变量赋值是立即生效的。变量在赋值时不能用中对变量赋值是立即生效的。变量在赋值时不能用after引入附加延时引入附加延时 例如,下列赋值

    30、语句是错误的。例如,下列赋值语句是错误的。op1:counter:=counter+1 after 2 ns;VHDLVHDL8787标准不支持语句标号的使用标准不支持语句标号的使用 2022-7-19电子教案 Page 25 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(9)目标与分类目标与分类 信号、变量、常量和文件信号、变量、常量和文件 常量常量 代表具有语义的常数值。说明时赋值,一旦被赋值,就在整个程序执行中保代表具有语义的常数值。说明时赋值,一旦被赋值,就在整个程序执行中保持不变。持不变。书写格式:书写格式:constant constant

    31、 ,::=:=;例子:例子:constant number_of_bytes:integer:=8;constant number_of_bits:integer:=8*number_of_bytes;constant m:integer:=user_function(a,b);-user_function为函数为函数 constant n:integer:=a+b;子程序中说明的常量,仅在子程序调用时有效,调用结束后它的值将被释放子程序中说明的常量,仅在子程序调用时有效,调用结束后它的值将被释放,常量说明语句中缺少赋值时称之为缓定常量。常量说明语句中缺少赋值时称之为缓定常量。2022-7-1

    32、9电子教案 Page 26 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(10)目标与分类目标与分类 信号、变量、常量和文件信号、变量、常量和文件 文件文件 仅支持读写操作,不支持综合。不可以通过赋值来更新内容,只能通过子程仅支持读写操作,不支持综合。不可以通过赋值来更新内容,只能通过子程序对文件进行读写操作。序对文件进行读写操作。STD库库textio包提供对文件的全部支持内容。包提供对文件的全部支持内容。特殊目标特殊目标 端口、类属端口、类属(generic)、参量参量(parameter)及循环语句和生成语句的标号等。及循环语句和生成语句的标号等

    33、。端口所包含的目标为信号,作用是为实体内部数据与外部数据交换创建通道端口所包含的目标为信号,作用是为实体内部数据与外部数据交换创建通道 类属的作用是为外部信息送入实体内部提供通道,类属传送的信息均为静态信类属的作用是为外部信息送入实体内部提供通道,类属传送的信息均为静态信息,即:常量。息,即:常量。参量的作用类似于参量的作用类似于C语言中的形式参数,参量在子程序中可以被说明为信号、语言中的形式参数,参量在子程序中可以被说明为信号、变量或常量,而在函数中只能被说明为常量。变量或常量,而在函数中只能被说明为常量。2022-7-19电子教案 Page 27 of 97哈尔滨工程大学 付永庆第二部分第

    34、二部分 VHDL语言的学习基础语言的学习基础(11)数据类型数据类型 标量类型、复合类型、寻址类型、文件类型标量类型、复合类型、寻址类型、文件类型 标量类型标量类型 目标的数据值由单个元素构成目标的数据值由单个元素构成 复合类型复合类型 目标的数据值由多个元素结组构成目标的数据值由多个元素结组构成 寻址类型寻址类型 指针类型,值指向存储空间,用于建立目标间的联系或控制存储空间指针类型,值指向存储空间,用于建立目标间的联系或控制存储空间 文件类型文件类型 外部文件存放的数据值序列的镜像,用于数据读入和写出外部文件存放的数据值序列的镜像,用于数据读入和写出 预定义类型、用户自定义类型预定义类型、用

    35、户自定义类型2022-7-19电子教案 Page 28 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(12)数据类型数据类型 整数类型整数类型(integer)位宽位宽32位:值范围位:值范围-231+1231-1,有符号数、无符号数、不能按,有符号数、无符号数、不能按bit操作操作 子类型:自然数子类型:自然数natural,正整数正整数positive 浮点类型浮点类型(real):值范围值范围1.0e+38、用于行为仿真用于行为仿真 布尔类型布尔类型(boolean):值范围值范围 true、false 字符类型字符类型(character)AS

    36、CII码码:0、1、A、字符串类型字符串类型(string):“0101”、“ABCDabcd”位值类型位值类型 bit类型:类型:1、0 std_logic类型类型:U、X、0、1、Z、W、L、H、-位组类型位组类型 bit_vector类型:类型:“1000_1010”/std_logic_vector类型:类型:“zzzz_1001”预定义类型预定义类型:STD库提供、可直接引用2022-7-19电子教案 Page 29 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(13)数据类型数据类型 预定义类型预定义类型 时间类型时间类型(time)单位:

    37、单位:fs、ps、ns、s、ms、sec、min、hr 错误等级类型错误等级类型(severity)值状态:值状态:note(注意注意)、warning(警告警告)、error(出错出错)、failure(失败失败)寻址类型寻址类型(line):指针类型,值指向存储空间指针类型,值指向存储空间 文件类型文件类型(text):用于定义代表外部文件的目标用于定义代表外部文件的目标 用户自定义类型:非隐含定义用户自定义类型:非隐含定义,需要需要type语句语句 整数类型整数类型(integer)、实数类型实数类型(real)、物理类型物理类型 枚举类型枚举类型(enumerated):离散值由左至右

    38、分配数值离散值由左至右分配数值 组类型组类型(array):限定性组限定性组、非限定性组非限定性组(元素规模暂不定元素规模暂不定)记录类型记录类型(record):不同类型数据集合,不能直接产生硬件对应不同类型数据集合,不能直接产生硬件对应 寻址类型寻址类型(access)和文件类型和文件类型(file)2022-7-19电子教案 Page 30 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(14)数据类型数据类型 自定义语句格式自定义语句格式 标量类型定义标量类型定义 type ,is 约束范围约束范围;枚举类型定义枚举类型定义 type ,is(,

    39、);限定性限定性组类型定义组类型定义 type ,is array(,)of;:=todownto 或者或者 range todownto 非限定性组类型定义非限定性组类型定义 type ,is array(range,)of;2022-7-19电子教案 Page 31 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(15)数据类型数据类型 自定义语句格式自定义语句格式 物理类型定义物理类型定义 type ,is units;=;end units;记录类型定义记录类型定义 type ,is record ,:;end record;子子类型定义类型定义

    40、 subtype ,is 约束范围约束范围;组集合体组集合体 (=,)命名结合、位置结合命名结合、位置结合2022-7-19电子教案 Page 32 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(16)数据类型数据类型 VHDLVHDL数据类型汇总数据类型汇总 2022-7-19电子教案 Page 33 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(17)数据类型数据类型 标量类型属性标量类型属性 数值类、函数类、信号类、数据类型类、数据范围类,用于简化数值类、函数类、信号类、数据类型类、数据范围类,用于简化

    41、书写和获取标量类型的信息书写和获取标量类型的信息 数值类属性数值类属性 Tleft -能给出能给出T的取值范围的左端值;的取值范围的左端值;Tright -能给出能给出T的取值范围的右端值;的取值范围的右端值;Tlow -能给出能给出T的取值范围的低端值;的取值范围的低端值;Thigh -能给出能给出T的取值范围的高端值;的取值范围的高端值;Tascending -如果如果T的取值范围按升序排列则为真,否则为假;的取值范围按升序排列则为真,否则为假;Timage(x)-能给出一个表达能给出一个表达x的值的串;的值的串;Tvalue(s)-能给出由串能给出由串s表达的表达的T的值。的值。2022

    42、-7-19电子教案 Page 34 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(18)数据类型数据类型 标量类型属性标量类型属性 函数类属性函数类属性 Tpos(x)-能给出能给出x在在T中的位置号;中的位置号;Tval(n)-能给出在位置能给出在位置n处处T的取值;的取值;Tsucc(x)-能给出能给出x值所在位置的下一个位置处的值;值所在位置的下一个位置处的值;Tpred(x)-能给出能给出x值所在位置的前一个位置处的值;值所在位置的前一个位置处的值;Tleftof(x)-能给出能给出x值所在位置的左边位置处的值;值所在位置的左边位置处的值;Tr

    43、ightof(x)-能给出能给出x值所在位置的右边位置处的值;值所在位置的右边位置处的值;例如,例如,type day is (sun,mon,tue,wed,thu,fri,sat);Daypos(sun)=0 Dayval(3)=wed Daysucc(thu)=fri Daypred(thu)=wed Dayleftof(mon)=sun Dayright(mon)=tue2022-7-19电子教案 Page 35 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(19)数据类型数据类型 组类型属性组类型属性 A Aleft(N)left(N)能给出

    44、能给出A A的第的第N N维下标界的左边界值;维下标界的左边界值;A Aright(N)right(N)能给出能给出A A的第的第N N维下标界的右边界值;维下标界的右边界值;A Alow(N)low(N)能给出能给出A A的第的第N N维下标界的下边界值;维下标界的下边界值;A Ahigh(N)high(N)能给出能给出A A的第的第N N维下标界的上边界值;维下标界的上边界值;A Arange(N)range(N)能给出能给出A A的第的第N N维下标的取值范围;维下标的取值范围;A Areverse_range(N)reverse_range(N)能给出能给出A A的第的第N N维下标取

    45、值范围的相反值;维下标取值范围的相反值;A Alength(N)length(N)能给出能给出A A的第的第N N维下标界的长度;维下标界的长度;A Aascending(N)ascending(N)如果如果A A的第的第N N维下标取值按升序排列则为真,维下标取值按升序排列则为真,否则为假;否则为假;2022-7-19电子教案 Page 36 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(20)表达式与运算符表达式与运算符 表达式表达式 由运算符和操作数组成由运算符和操作数组成 运算符运算符 特殊运算符特殊运算符:*、abs、not 乘法运算符乘法运

    46、算符:*、/、mod、rem 正、负运算符正、负运算符:、加减运算符加减运算符:、&移位移位运算符运算符:sll、srl、sla、sra、rol、ror 关系运算符关系运算符:=、/=、=逻辑运算符逻辑运算符:and、or、nand、nor、xor、xnor 类型限定与类型转换类型限定与类型转换 类型限定:显性表示数据的类型类型限定:显性表示数据的类型 语句格式:语句格式:(数据数据)2022-7-19电子教案 Page 37 of 97哈尔滨工程大学 付永庆第二部分第二部分 VHDL语言的学习基础语言的学习基础(21)表达式与运算符表达式与运算符 类型转换类型转换2022-7-19电子教案

    47、Page 38 of 97哈尔滨工程大学 付永庆第三部分第三部分 VHDL顺序语句顺序语句(1)顺序语句顺序语句 建模进程、过程和函数功能的基本语句单元,仅用于进程、过程和函数中建模进程、过程和函数功能的基本语句单元,仅用于进程、过程和函数中 变量赋值语句变量赋值语句 :=;注:注:可以包含信号、变量和常量可以包含信号、变量和常量 赋值即刻生效赋值即刻生效 例:例:signal sig:std_logic;-进程外部的信号进程外部的信号sigsig event_on_sig:process is variable flag:boolean:=false;-说明变量说明变量flagflag并赋初

    48、值并赋初值 begin flag:=not flag;-变量赋值语句变量赋值语句 wait on sig;end process event_on_sig;2022-7-19电子教案 Page 39 of 97哈尔滨工程大学 付永庆第三部分第三部分 VHDL顺序语句顺序语句(2)顺序语句顺序语句 简单信号赋值语句简单信号赋值语句 :=transportinertial;注:注::=after,在并行语句区只为信号和常量,在顺序语句区也可为变量在并行语句区只为信号和常量,在顺序语句区也可为变量 transport表示传输延时,起平移信号波形的作用,表示传输延时,起平移信号波形的作用,inerti

    49、al表示惯性延时,延表示惯性延时,延 时由第一个时由第一个after后的参数值决定后的参数值决定 赋值不能立刻生效,暂存在信号驱动器中,待同步事件发生时赋值到信号赋值不能立刻生效,暂存在信号驱动器中,待同步事件发生时赋值到信号 例:例:mux:process(a,b,sel)is -a、b和和sel为敏感信号为敏感信号 begin case sel is when 0=y y null;end case;end process mux;2022-7-19电子教案 Page 40 of 97哈尔滨工程大学 付永庆第三部分第三部分 VHDL顺序语句顺序语句(3)顺序语句顺序语句 等待语句等待语句

    50、用于取代进程语句的敏感信号列表为进程提供同步,有四种形式:用于取代进程语句的敏感信号列表为进程提供同步,有四种形式::wait -无限等待无限等待 :wait on,;-直到信号活动或变化时结束等待直到信号活动或变化时结束等待 :wait until;-直到条件为真时结束等待直到条件为真时结束等待 :wait for;-直到延时时间到时结束等待直到延时时间到时结束等待 注:注:至少要含有一个信号量,因进程一旦挂起,变量将不再改变,至少要含有一个信号量,因进程一旦挂起,变量将不再改变,若要退出等待状态,只能靠信号的活动或变化引起布尔表达式的值为真若要退出等待状态,只能靠信号的活动或变化引起布尔表

    展开阅读全文
    提示  163文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    关于本文
    本文标题:VHDL语言-整套-课件-合一.ppt
    链接地址:https://www.163wenku.com/p-3591708.html

    Copyright@ 2017-2037 Www.163WenKu.Com  网站版权所有  |  资源地图   
    IPC备案号:蜀ICP备2021032737号  | 川公网安备 51099002000191号


    侵权投诉QQ:3464097650  资料上传QQ:3464097650
       


    【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。

    163文库