学校在大二开设EDA技术与VHDL设计课程,结课后整理一下VHDL的基本用法

前言

1.EDA技术
EDA(Electronic Design Automation)是电子设计自动化的英文缩写。是随着集成电路和计算机技术飞速发展应运而生的一种快速、有效、高级的电子设计自动化技术。EDA工具融合了应用电子技术、计算机技术和智能化技术的最新成果,主要进行三方面的辅助设计工作:集成电路(IC)设计、电子电路设计和印制电路板(PCB)设计。在数字设计领域,EDA技术就是依靠功能强大的电子计算机和EDA软件工具,对以硬件描述语言HDL(Hardware Description Language)形式给出的系统设计文件自动地进行逻辑编译、化简、分割、综合、优化和仿真,直至下载到可编程逻辑器件CPLD/FPGA或专用集成电路芯片中,实现既定的电路功能。EDA技术使电路设计者的工作仅限于利用硬件描述语言和EDA软件平台来完成对系统硬件功能的实现,极大地提高了设计效率,缩短了设计周期,节约了设计成本。
2.VHDL
VHDL的英文全名为VHSICHDL(Very-High Speed Integrated Circuit Hardware Description Language),VHDL主要用于描述数字系统的结构、行为、功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法十分类似于一般的计算机高级语言。

VHDL

一、结构与要素

通过一个简单实例直观感受VHDL程序的基本框架
例1.D触发器

LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;ENTITY MYDFF ISPORT(clk,d,clr:in std_logic;                --clr是异步清零端q: out std_logic);END MYDFF;ARCHITECTURE rt1 of MYDFF IS
BEGINPROCESS(clr,clk)BEGINIF clr='1' THEN q<='0';                   -- clr为高电平时,输出清零ELSIF clk'event and clk='1' THENq<=d;END IF;END PROCESS;
END rtl;

可以观察到,一个最基本的VHDL程序可以划分为三个部分。
例1的第一段为库、程序包说明;第二段为实体部分;第三段为结构体部分。除了这些外,还可以包括配置部分。其中实体和结构体是必需的。

1.实体
描述数字系统的输入/输出接口
一般结构:
ENTITY 实体名 IS
[GENERIC(参数名:数据类型);]
[PORT (端口号);]
END [ENTITY 实体名];

端口说明的一般格式:
PORT(端口号{,端口名}:端口模式 数据类型;

端口号{,端口名}:端口模式 数据类型);
(1)IN
(2)OUT
(3)BUFFER
(4)INOUT

2.结构体
描述基本设计单元(实体)的结构、行为、元器件及内部连接关系。也就是说定义了设计实体的功能。
一般格式:
ARCHITECTURE <结构体名> OF <实体名> IS
<信号定义语句,包括定义内部信号、常数、数据类型、函数等;>
BEGIN
<并行语句>
<进程语句>
END [ARCHITECTURE 结构体名];

3.VHDL库
库是经编译后数据的集合,它可以存放程序包定义、实体定义、结构体定义和配置定义。
(1)IEEE库
(2)STD库
(3)WORK库
(4)用户自定义库

4.VHDL程序包
存放各个设计能够共享的信号说明、常量说明、数据类型说明、子程序说明、属性说明和元器件说明等部分。
如果需要使用程序包中的某些说明和定义,只需使用USE语句进行说明即可。
标准程序包
(1)STD_LOGIC_1164
包含一些数据类型、子类型和函数定义,使用最广的是两个数据类型STD_LOGIC和STD_LOGIC_VECTOR。
(2)STD_LOGIC_ARITH
扩展了三个数据类型UNSIGNED、SIGNED和SMALL_INT
(3)STD_LOGIC_UNSIGNED和STD_LOGIC_SIGNED
可用于INTEGER类型及STD_LOGIC和STD_LOGIC_VECTOR类型混合运算的运算符,并定义了由STD_LOGIC_VECTOR型到INTEGER型的转换函数。

5.配置
可以把特定的结构体关联到(指定给)一个确定的实体
一般格式:
CONFIGURATION 配置名 OF 实体名 IS
FOR 选配结构体名
END FOR;
END 配置名;

二、基本语句与基本设计

1.顺序语句
顺序语句只能用于进程和子程序中,被用来描述组合逻辑和时序逻辑。常用的顺序描述语句有:赋值语句、IF语句、CASE语句、LOOP语句、NEXT语句EXIT语句、子程序调用语句、RETURE语句、WAIT语句和NULL语句。
2.并行语句
各种并行语句在结构体中的执行同步进行的,其执行顺序与书写顺序无关。
3.VHDL组合逻辑电路、时序逻辑电路
组合逻辑电路没有记忆功能,而时序电路具有记忆功能,简单点说,组合电路没有时钟,时序电路有时钟

EDA技术与VHDL设计相关推荐

  1. 在系统可编程器件一般使用计算机,eda技术与vhdl复习练习题.docx

    EDA技术与VHDL复习练习题 探<习题一 > 一.填空题 TOC \o "1-5" \h \z 1. PLD的中文含义是:. 2. ASIC的中文含义是: . 3.& ...

  2. 简述基于EDA技术的FPGA设计

    物联网.人工智能.大数据等新兴技术的推动,集成电路技术和计算机技术得到蓬勃发展.电子产品设计系统日趋数字化.复杂化和大规模集成化,各种电子系统的设计软件应运而生.在这些专业化软件中,EDA(Elect ...

  3. EDA技术与Verilog设计 实现输入一个周期的高电平,会有一个5个周期的高电平信号产生

    实现输入一个周期的高电平,会有一个5个周期的高电平信号产生 module kount5(clk,rst,inp,outp,tmp); input clk,rst,inp; output outp,tm ...

  4. 数字逻辑与EDA技术课程设计---闹钟

    一.功能介绍 本次数字逻辑与EDA技术实验课程设计用FPGA实现了一个总时长为一小时的闹钟,它所具有的功能如下: 基本功能:(1)正常时间显示,按照正常的时钟进行计时: (2)闹钟时间显示,显示出来设 ...

  5. 一位全加器 VHDL设计与实现

    作者:chenjieb520 一.设计目的 熟悉Quartus II的VHDL文本设计流程全过程,学习组合电路的设计,仿真和测试. 二.设计内容 设计一位全加器,给出程序的设计.软件编译.仿真分析.硬 ...

  6. EDA技术的发展与应用 外文翻译

    英文资料及中文翻译 Development and application of EDA technology EDA (Electronics Design Automation) technolo ...

  7. EDA技术课后题答案

    第一章 1-1 EDA技术与ASIC设计和FPGA开发有什么关系?   P3~4 答:利用EDA技术进行电子系统设计的最后目标是完成专用集成电路ASIC的设计和实现:FPGA和CPLD是实现这一途径的 ...

  8. 5.什么是EDA技术

    目录 什么是EDA技术? 概念 分析 EDA的设计流程 什么是EDA技术? 概念 EDA(ELEctrinic design automation)是指以计算机为工作平台,融合了应用电子技术.计算机技 ...

  9. EDA 电子设计自动化VHDL系列课程15 – 智力抢答电路的设计与实现

    EDA 电子设计自动化VHDL系列课程15 – 智力抢答电路的设计与实现 本EDA系列介绍的系统环境是: 软件: VHDL编程语言 : 工具: Quartus13.0 FPGA 芯片是: Cyclon ...

  10. [EDA] 第1章 EDA技术概述-潘松版

    第1章 EDA技术概述 知识点: 1.1 EDA技术及其发展 名称概念: EDA:Electronic Design Automation,即电子设计自动化,是指是以计算机为平台,使用通用软件包,开展 ...

最新文章

  1. 电脑任务组层叠窗口设置方法
  2. OData V4 系列 查询操作
  3. web元件库/axure元件库/常用web组件/常用表单/导航栏/边框/图标/日期时间选择器/评分组件/穿梭框/输入框/步骤条/
  4. L - Oil Deposits
  5. 代理模式(Proxy)--静态代理
  6. 常用的物理引擎,图形引擎
  7. 微信小程序云开发教程-微信小程序的JS高级-页面间数据传递
  8. ic读卡器设置工具_每日学习:数字IC设计EDA软件教程整理
  9. window下的批处理命令学习
  10. 教您如何获取App的ipa安装包
  11. 思维破局:认知水平低,是一个人最致命的短板
  12. WPS尾部空格没有下划线
  13. samba使用指定端口windows访问linux
  14. HTTPSConnectionPool(host=‘***‘, port=443): Read timed out.
  15. mysql和ES对比
  16. JS高级进阶总结day01---面向对象编程介绍,new的工作原理以及构造函数,原型对象,实力函数三者之间的关系
  17. java中 enum什么意思_Java中“enum”的用途是什么?
  18. c通讯录 :动态申请内存版本
  19. 计算机操作系统实验指导 (第3版) 第四篇 操作系统学习指导和习题解析 第21章:虚拟存储管理 习题和答案
  20. 外网访问mysql数据库 花生壳内网映射mysql

热门文章

  1. 流程工业MES管理系统有什么特点
  2. 超全 泛微 E8 E-cology 8 开发资料大全 开源下载资料
  3. 8583:全面掌握ISO8583报文协议zz
  4. 拖块拼图验证码PHP源码,滑动拼图验证码
  5. 【预测模型】基于粒子群优化宽度学习实现预测matlab代码
  6. gif动画录制工具_9种优化动画GIF的最佳工具
  7. 色环电阻在线计算器(收藏)
  8. 银行核心业务系统性能测试
  9. udhcpc 后台运行的方法
  10. Android6.0 camera个数探测