襄樊职业技术学院:《在系统编程技术》课程电子教案(PPT教学课件)第10讲 VHDL语言的数据类型

系统可编程技不 第10讲 VHDL语言的数据类型
在系统可编程技术 第10讲 VHDL语言的数据类型

VHDL数据对象( Data Objects) 1、常数( Constant) 定义格式为: Constant常数名:数据类型:=表达式; Constant width: integer =7 Constant Vcc: REAL: =5.0 Constant D2: Std Logic Vector(width downto 0):=0000" 不能在程序中改变; 增强程序的可读性,便于修改程序; 常量的使用范围取决于其定义位置,可在 Library、 Entity、 Architecture、 Process中进行定义,其有效范围也相应限定
VHDL数据对象(Data Objects) Constant width: integer := 7; Constant Vcc: REAL:=5.0; Constant D2:Std_Logic_Vector(width Downto 0):= ”0000”; ◆ 不能在程序中改变; ◆ 增强程序的可读性,便于修改程序; ◆ 常量的使用范围取决于其定义位置,可在Library、Entity、 Architecture、Process中进行定义,其有效范围也相应限定。 1、常数(Constant) 定义格式为: Constant 常数名:数据类型 :=表达式;

VHDL数据对象( Data Objects) 2、信号 信号数据对象,代表电路内部线路,其在元件之间起互连 作用,没有方向性,可给它赋值,也可当作输入。 定义格式为: signa信号名:数据类型[:=设定值]; 如 Signal A: Std log ic vector (3 Down to 0):=0000"; 信号赋值语句的语法格式为: 目标信号名<=表达式(设定值) A<=“1010″ 注意ε设定的初始值在综合时没有用,只是在仿真时在开始设定一个起始值
2、信号 信号数据对象,代表电路内部线路,其在元件之间起互连 作用,没有方向性,可给它赋值,也可当作输入。 定义格式为: Signal 信号名:数据类型[:=设定值]; 如: Signal A : Std_logic_vector(3 Down to 0) := “0000”; 注意:设定的初始值在综合时没有用,只是在仿真时在开始设定一个起始值。 信号赋值语句的语法格式为: 目标信号名<=表达式(设定值); A <= “1010” VHDL数据对象(Data Objects)

VHDL数据对象( Data Objects) 3、变量 变量是一个局部量,用于对中间数据的临时存储,并不 定代表电路的某一硬件,没有物理意义。 定义格式为: Var iable变量名:数据类型[:=设定值]; 如ε Variable a: i nteger:=0; 变量赋值语句的语法格式为: 目标变量名:=表达式(设定值); 如 aa and C
3、 变量 变量是一个局部量,用于对中间数据的临时存储,并不一 定代表电路的某一硬件,没有物理意义。 定义格式为: Variable 变量名:数据类型[:=设定值]; 如:Variable a: integer := 0; 变量赋值语句的语法格式为: 目标变量名 := 表达式(设定值); 如: a := b and c; VHDL数据对象(Data Objects)

信号、变量、常数对比 一、定义 Signal clk: std_logic Variable data: std logic vector(7 downto 0) Constant width integer =7 二、赋值方式 CIk<=1 (非立即) data:=“1010”;(立即) 三、定义区域 信号:实体、结构体、程序包 变量:进程、子程序 常数:实体、结构体、程序包、块、进程、子程序
信号、变量、常数对比 一、定义 Signal clk: std_logic; Variable data: std_logic_vector(7 downto 0); Constant width: integer :=7 ; 二、赋值方式 clk <= ‘1’ ; (非立即) data := “1010”; (立即) 三、定义区域 信号:实体、结构体、程序包 变量:进程、子程序 常数:实体、结构体、程序包、块、进程、子程序

信号、变量、常数对比 四、适用范围 信号:实体、结构体、程序包 变量:定义了变量的进程、子程序的顺序语句中 常数:视其定义的位置而定 若常数定义在实体中,适用范围是实体所对应的所 有结构体。 若常数定义在结构体中,适用范围就是本结构体
四、适用范围 信号:实体、结构体、程序包 变量:定义了变量的进程、子程序的顺序语句中 常数:视其定义的位置而定 若常数定义在实体中,适用范围是实体所对应的所 有结构体。 若常数定义在结构体中,适用范围就是本结构体。 信号、变量、常数对比

信号和变量赋值区别举例 信号赋值(非立即) 变量赋值(立即) Architecture abc of example is Architecture abc of example is signal tmp: std logic Begin Begin process (a, b,c) process (a, b, c) variable tmp: std logic; begin begin tmp<=a; tmp =a; X<=c and tmp; X<=c and tmp; tmp<=b: tmp:=b; y<=c and tmp; y<=c and tmp; end process; end process; End abc End abc; 执行结果:x= c and b 执行结果:x= c and a y=c and b y=c and b
信号赋值(非立即) 信号和变量赋值区别举例 Architecture abc of example is signal tmp:std_logic; Begin process(a,b,c) begin tmp<=a; x<=c and tmp; tmp<=b; y<=c and tmp; end process; End abc; 变量赋值(立即) Architecture abc of example is Begin process(a,b,c) variable tmp:std_logic; begin tmp:=a; x<=c and tmp; tmp:=b; y<=c and tmp; end process; End abc; 执行结果:x=c and b y=c and b 执行结果:x=c and a y=c and b

VHDL数据类型 、逻辑数据类型 (1)布尔代数( Boolean)型 定义位置:在std库的 standard程序包中进行定义 取值: FALSE,TRUE (2)位(Bit) 定义位置:在std库的 standard程序包中进行定义。 取值:0, (低电平,高电平)
VHDL数据类型 1、逻辑数据类型 (1)布尔代数(Boolean)型 定义位置:在std库的standard程序包中进行定义。 取值:FALSE,TRUE (2)位(Bit) 定义位置:在std库的standard程序包中进行定义。 取值:0,1 (低电平,高电平 )

VHDL数据类型 (3)位矢量( Bit vector) 定义位置:在std库的 standard程序包中进行定义 位矢量是基于“位”数据类型的数组 Signal A: bit vector o to 7) Signal B: bit vector (7 downto O) A<=“00001010”; B<=“00001010; A(7)=0A(6)=1A(5)=0A(4)=1A(3)=0A(2)=0A(1)=0A(0)=0 B(7)=0B(6)=0B(5)=0B(4)=0B(3)=1B(2)=0B(1)=1B(0)2=0
(3)位矢量(Bit_Vector) 定义位置:在std库的standard程序包中进行定义。 Signal A: bit_vector(0 to 7); Signal B: bit_vector(7 downto 0); A<=“00001010”; B<=“00001010”; VHDL数据类型 位矢量是基于“位”数据类型的数组 A(7)=0 A(6)=1 A(5)=0 A(4)=1 A(3)=0 A(2)=0 A(1)=0 A(0)=0 B(7)=0 B(6)=0 B(5)=0 B(4)=0 B(3)=1 B(2)=0 B(1)=1 B(0)=0

VHDL数据类型 (4)标准逻辑型( Std logic) 定义位置:在IEEE库的std_ logic_1164程序包中进行定义 使用这类数据信号,必须包含下面两条声明语句: Library IEEE Use IEEE std logic 1164. all
(4)标准逻辑型(Std_Logic ) 定义位置:在IEEE库的std_logic_1164程序包中进行定义 VHDL数据类型 使用这类数据信号,必须包含下面两条声明语句: Library IEEE; Use IEEE.std_logic_1164.all;
按次数下载不扣除下载券;
注册用户24小时内重复下载只扣除一次;
顺序:VIP每日次数-->可用次数-->下载券;
- 襄樊职业技术学院:《在系统编程技术》课程电子教案(PPT教学课件)第7讲 ispLever软件概念、命令和实践.ppt
- 襄樊职业技术学院:《在系统编程技术》课程电子教案(PPT教学课件)第8讲 isp技术应用设计方法.ppt
- 襄樊职业技术学院:《在系统编程技术》课程电子教案(PPT教学课件)第6讲 ABEL语言逻辑方程、状态图设计法.ppt
- 襄樊职业技术学院:《在系统编程技术》课程电子教案(PPT教学课件)第4讲 ABEL语音源文件元素.ppt
- 襄樊职业技术学院:《在系统编程技术》课程电子教案(PPT教学课件)第5讲 ABEL语言常用语句、真值表设计法.ppt
- 襄樊职业技术学院:《在系统编程技术》课程电子教案(PPT教学课件)第2讲 CPLD和FPGA的基本结构.ppt
- 襄樊职业技术学院:《在系统编程技术》课程电子教案(PPT教学课件)第3讲 ABEL语音源文件基本格式规则.ppt
- 襄樊职业技术学院:《在系统编程技术》课程电子教案(PPT教学课件)第1讲 可编程器件结构简介.ppt
- 《SDH技术》第一章 概述.ppt
- 《SDH技术》绪论.ppt
- 《SDH技术》第八章 SDH的应用.ppt
- 《SDH技术》第七章 网络管理.ppt
- 《SDH技术》第六章 SDH的网同步.ppt
- 《SDH技术》第五章 SDH传送网络结构和自愈网.ppt
- 《SDH技术》第四章 SDH光传输系统及其性能分析.ppt
- 《SDH技术》第三章 SDH设备.ppt
- 《SDH技术》第二章 同步复用与映射方法.ppt
- 电子工业出版社:《光纤通信》课程教学资源(PPT课件讲稿)第9章 光纤网络.ppt
- 电子工业出版社:《光纤通信》课程教学资源(PPT课件讲稿)第8章 波分复用技术.ppt
- 电子工业出版社:《光纤通信》课程教学资源(PPT课件讲稿)第7章 光缆线路的施工和测试.ppt
- 襄樊职业技术学院:《在系统编程技术》课程电子教案(PPT教学课件)第9讲 VHDL语言的基本结构.ppt
- 襄樊职业技术学院:《在系统编程技术》课程电子教案(PPT教学课件)第12讲 VHDL语言语言主要描述语句.ppt
- 襄樊职业技术学院:《在系统编程技术》课程电子教案(PPT教学课件)第11讲 VHDL语言结构体的描述方法.ppt
- 襄樊职业技术学院:《在系统编程技术》课程电子教案(PPT教学课件)第13讲 VHDL语言语言组合逻辑电路设计.ppt
- 襄樊职业技术学院:《在系统编程技术》课程电子教案(PPT教学课件)第14讲 VHDL语言语言时序逻辑电路设计.ppt
- 河海大学:《高频电子线路》第1章 绪论.ppt
- 河海大学:《高频电子线路》笫2章 滤波器.ppt
- 河海大学:《高频电子线路》第2章(2-2) LC滤波器.ppt
- 河海大学:《高频电子线路》第2章(2-3) 声表面波滤波器(SAW)(声电子器件).ppt
- 河海大学:《高频电子线路》笫6章 调制与解调.ppt
- 河海大学:《高频电子线路》笫6章(6-1) 抑制载波调幅、单边带调幅和残留边带调幅.ppt
- 河海大学:《高频电子线路》第6章(6-2) 角度调制.ppt
- 河海大学:《高频电子线路》第6章(6-3) 实现频率调制的方法与电路.ppt
- 河海大学:《高频电子线路》第6章(6-4) 调频波的解调方法与电路.ppt
- 河海大学:《高频电子线路》笫7章 锁相环路.ppt
- 河海大学:《高频电子线路》第7章(7-3) PLL的线性分析.ppt
- 河海大学:《高频电子线路》第7章(7-4) PLL的非线性分析.ppt
- 河海大学:《高频电子线路》回顾3.ppt
- 河海大学:《高频电子线路》回顾1.ppt
- 河海大学:《高频电子线路》导体表面的功率损耗.ppt