当前课程知识点:EDA技术与应用 >  第四章 VHDL语言概述 >  4.1 VHDL语言概述 >  4.1.2 VHDL语言概述 教学视频

返回《EDA技术与应用》慕课在线视频课程列表

4.1.2 VHDL语言概述 教学视频在线视频

下一节:4.1.4 VHDL概述 讨论

返回《EDA技术与应用》慕课在线视频列表

4.1.2 VHDL语言概述 教学视频课程教案、知识点、字幕

同学们,大家好

本讲我们开始学习VHDL语言的知识

首先,我们先来了解一下

VHDL语言的基本概况

VHDL是一种硬件描述语言

设计者可以通过VHDL

对电路和系统的行为进行描述

基于这种描述

结合相应的eda软件工具

就可以得到所预期的实际电路和系统

VHDL的含义是VHSIC

Hardware Description Language

即VHSIC硬件描述语言

其中,VHSIC

是超高速集成电路的缩写

它是20世纪80年代

在美国国防部的资助下开展的一项研究

正是在这项研究中

形成了早期的VHDL语言

VHDL是IEEE

也就是美国电气电子工程师协会

指定为规范的第一种硬件描述语言

规范版本是IEEE 1076

后来

在1076版规划的基础上

又引入了多值系统

形成了目前使用的

IEEE 1164版本规范

VHDL之所以被广泛应用

其原因在于

它是一种标准化的语言

是与工具和工艺无关的

因此,可以很方便的进行移植和重用

VHDL语言

两个最直接的应用领域

就是可编程逻辑器件

和专用集成电路(ASIC)的设计与开发

其中,可编程逻辑器件

包括复杂可编程逻辑器件CPLD

和现场可编程门阵列FPGA

设计者完成一段VHDL代码的编写后

可以通过Altera

或Xilinx的可编程器件

来实现整个电路

或者把它提交给专业的生产厂商

用于ASIC的生产

这也是目前许多复杂的商用芯片

所采用的主要实现途径

还有一点需要强调的是

和常规的按顺序执行的计算机程序不同

VHDL语句必须是并发执行的

因此我们通常称之为VHDL代码

而不是程序

在VHDL中

只有在进程、函数或过程内部的语句

才是顺序执行的

前面讲到

通过EDA工具软件

对VHDL代码进行综合

可以在可编程器件中实现所需要的电路

下图是采用VHDL

进行设计和综合的流程

设计的第一个阶段是编写VHDL代码

并保存成一个扩展名为.vhd的文件

代码编写完成后进入综合阶段

首先是进行代码的编译

把寄存器传输级

即RTL级的VHDL代码

转换成门级网表

然后根据电路的工作速度

占用硬件资源大小等要求

对门级网表进行优化

在综合阶段

可以对设计进行仿真

如果在仿真中发现问题

还可以返回代码编写阶段进行修改

然后再重新进行综合

仿真通过后

EDA工具软件中的布局布线工具

可以在具体的CPLD

或FPGA器件上

对各种电路单元进行布局布线工作

或者生成ASIC掩膜文件

用于ASIC的生产

基于VHDL的电子设计自动化技术

离不开相关工具软件的支持

目前,有很多种EDA工具

支持采用VHDL进行电路的设计

综合、仿真和实现

主流的可编程器件生产厂商

会把使用VHDL进行电路设计

所需要的多种EDA工具

集成在一起

形成统一的开发平台

提供给用户

以便于进行针对本公司

可编程器件产品的开发

目前比较常用的是

Altera公司的QuartusII开发平台

和Xilinx公司的ISE开发平台

这些平台中

使用的综合工具和仿真工具

通常由专业的EDA厂商提供

而这些厂商

也推出一些具有标准接口的

专业的EDA设计工具

如,Synplicity公司的

综合工具Synplify

和Mentor Graphics公司的仿真工具

ModelSim等

正是在这些工具软件的帮助下

我们才能够利用VHDL语言

完成电子系统的设计与实现

硬件描述语言

是eda技术的重要组成部分

而VHDL又是目前使用最多的

硬件描述语言之一

VHDL语言具有很强的

电路描述和建模能力

能够从多个层次

对数字系统进行建模和描述

与功能强大的EDA软件工具相结合

极大的简化了硬件设计任务

提高了设计效率和可靠性

好,本讲到这里就结束了。

同学们再见!

EDA技术与应用课程列表:

第一章 EDA技术概述

-1.1 EDA技术概述

--1.1.1 EDA技术概述 导学

--1.1.2 EDA技术概述 教学视频

--1.1.3 EDA技术概述 单元测验

--1.1.4 EDA技术概述 讨论

第二章 可编程逻辑器件概述

-2.1 可编程逻辑器件(PLD)概述

--2.1.1 可编程逻辑器件 导学

--2.1.2 可编程逻辑器件概述 教学视频

--2.1.3 可编程逻辑器件概述 单元测验

--2.1.4 可编程逻辑器件概述 讨论

-2.2 CPLD的结构和原理

--2.2.1 CPLD结构和原理 导学

--2.2.2 CPLD的结构和原理 教学视频

--2.2.3 CPLD的结构和原理 单元测验

--2.2.4 CPLD的结构和原理 讨论

-2.3 FPGA的结构和原理

--2.3.1 FPGA的结构和原理 导学

--2.3.2 FPGA的结构和原理 教学视频

--2.3.3 FPGA的结构和原理 单元测验

--2.3.4 FPGA的结构和原理 讨论

-2.4 FPGA和CPLD的选用

--2.4.1 FPGA和CPLD的选用 导学

--2.4.2 FPGA和CPLD的选用 教学视频

--2.4.3 FPGA和CPLD的选用 单元测验

--2.4.4 FPGA和CPLD的选用 讨论

-2.5 FPGA与CPLD的编程和配置

--2.5.1 FPGA与CPLD的编程与配置 导学

--2.5.2 FPGA与CPLD的编程与配置 教学视频

--2.5.3 FPGA与CPLD的编程与配置 单元测验

--2.5.4 FPGA与CPLD的编程与配置 讨论

第三章 EDA开发平台——QuartusII应用

-3.1 QuartusII概述

--3.1.1 Quartus Ⅱ概述 导学

--3.1.2 Quartus Ⅱ概述 教学视频

--3.1.3 Quartus Ⅱ概述 单元测验

--3.1.4 Quartus Ⅱ概述 讨论

-3.2 新建工程

--3.2.1 新建工程 导学

--3.2.2 新建工程 教学视频

--3.2.3 新建工程 单元测验

-3.3 设计输入

--3.3.1 设计输入 导学

--3.3.2 设计输入 教学视频

--3.3.3 设计输入 单元测验

--3.3.4 设计输入 讨论

-3.4 设计编译

--3.4.1 设计编译 导学

--3.4.2 设计编译 教学视频

--3.4.3 设计编译 单元测验

--3.4.4 设计编译 讨论

-3.5 仿真验证

--3.5.1 仿真验证 导学

--3.5.2 仿真验证 教学视频

--3.5.3 仿真验证 单元测验

--3.5.4 仿真验证 讨论

-3.6 器件编程

--3.6.1 器件编程 导学

--3.6.2 器件编程1 教学视频

--3.6.3 器件编程2 教学视频

--3.6.4 器件编程 单元测验

--3.6.5 器件编程 讨论

-3.7层次化设计

--3.7.1 层次化设计 导学

--3.7.2 层次化设计 教学视频

--3.7.3 层次化设计 单元测验

--3.7.4 层次化设计 讨论

-3.8 宏功能模块的使用

--3.8.1 宏功能模块的使用 导学

--3.8.2 宏功能模块的使用 教学视频

--3.8.3 宏功能模块的使用 单元测验

--3.8.4 宏功能模块的使用 讨论

第四章 VHDL语言概述

-4.1 VHDL语言概述

--4.1.1 VHDL概述 导学

--4.1.2 VHDL语言概述 教学视频

--4.1.3 VHDL语言概述 单元测验

--4.1.4 VHDL概述 讨论

-4.2 VHDL代码的结构

--4.2.1 VHDL代码的结构 导学

--4.2.2 VHDL代码的结构 教学视频

--4.2.3 VHDL代码的结构 单元测验

--4.2.4 VHDL代码的结构 讨论

-4.3 库和库声明

--4.3.1 库和库声明 导学

--4.3.2 库和库声明 教学视频

--4.3.3 库和库声明 单元测验

--4.3.4库和库声明 讨论

-4.4 实体说明

--4.4.1 实体说明 导学

--4.4.2 实体说明 教学视频

--4.4.3 实体说明 单元测验

--4.4.4 实体说明 讨论

-4.5 结构体

--4.5.1 结构体 导学

--4.5.2 结构体 教学视频

--4.5.3 结构体 单元测验

--4.5.3 结构体 讨论

-4.6 VHDL预定义数据类型

--4.6.1 VHDL预定义数据类型 导学

--4.6.2 VHDL预定义数据类型 教学视频

--4.6.3 VHDL预定义数据类型 单元测验

--4.6.4 VHDL预定义数据类型 讨论

-4.7 常量、变量和信号

--4.7.1 常量、变量和信号 导学

--4.7.2 常量、变量和信号 教学视频

--4.7.3 常量、变量和信号 单元测验

--4.7.4 常量、变量和信号 讨论

-4.8 运算操作符和属性

--4.8.1 运算操作符和属性 导学

--4.8.2 运算操作符和属性 教学视频

--4.8.3 运算操作符和属性 单元测验

--4.8.4 运算操作符和属性 讨论

-4.9 IF语句和WAIT语句

--4.9.1 IF语句和WAIT语句 导学

--4.9.2 IF语句和WAIT语句 教学视频

--4.9.3 IF语句和WAIT语句 单元测验

--4.9.4 IF语句和WAIT语句 讨论

-4.10 CASE语句

--4.10.1 CASE语句 导学

--4.10.2 CASE语句 教学视频

--4.10.3 CASE语句 单元测验

--4.10.4 CASE语句 讨论

-4.11 LOOP循环语句

--4.11.1 LOOP循环语句 导学

--4.11.2 LOOP循环语句 教学视频

--4.11.3 LOOP循环语句 单元测验

--4.11.4 LOOP循环语句 讨论

-4.12 进程

--4.12.1 进程 导学

--4.12.2 进程 教学视频

--4.12.3 进程 单元测验

--4.12.4 进程 讨论

-4.13 条件信号赋值语句

--4.13.1 条件信号赋值语句 导学

--4.13.2 条件信号赋值语句 教学视频

--4.13.3 条件信号赋值语句 单元测验

-4.14 选择信号赋值语句

--4.14.1 选择信号赋值语句 导学

--4.14.2 选择信号赋值语句 教学视频

--4.14.3 选择信号赋值语句 单元测验

-4.15 元件例化语句

--4.15.1 元件例化语句 导学

--4.15.2 元件例化语句 教学视频

--4.15.3 元件例化语句 单元测验

--4.15.4 元件例化语句 讨论

-4.16 VHDL模块化设计

--4.16.1 VHDL模块化设计

--4.16.2 VHDL模块化设计 教学视频

--4.16.3 VHDL模块化设计 单元测验

--4.16.4 VHDL模块化设计 讨论

第五章 设计方法概述

-5.1 设计方法概述

--5.1.1 设计方法概述 导学

--5.1.2 设计方法概述 教学视频

--5.1.3 设计方法概述 单元测验

--5.1.4 设计方法概述 讨论

-5.2 EDA综合设计案例(1)— 数字钟的设计

--5.2.1 EDA综合设计案例1 导学

--5.2.2 EDA综合设计设计案例1— 数字钟的设计 教学视频

--5.2.3 EDA综合设计案例1 单元测验

--5.2.4 EDA综合设计案例1 讨论

-5.3 EDA综合设计案例(2)—16×16点阵控制器设计

--5.3.1 EDA综合设计案例2 导学

--5.3.2 EDA综合设计案例2—16×16点阵控制器设计 教学视频

--5.3.3 EDA综合设计案例2 单元测验

--5.3.4 EDA综合设计案例2 讨论

思政教育

-国产EDA技术如何突破?

4.1.2 VHDL语言概述 教学视频笔记与讨论

也许你还感兴趣的课程:

© 柠檬大学-慕课导航 课程版权归原始院校所有,
本网站仅通过互联网进行慕课课程索引,不提供在线课程学习和视频,请同学们点击报名到课程提供网站进行学习。