填空题
1、 DATA ' LEFT表示得到数据类型或子类型区间的左边界值。
2、 ARRAY ' ENGTH表示数组的范围长度。
3、 函数类属性描述语句是指这些属性是以函数的形式来表达的。
4、 在VHDL语言程序中经常要定义数组,并在程序中运用数组的左端位置序号、 右端位置序号等,此时可以使用数组的属性函数了。
5、 信号的属性函数也是函数类属性描述语句的一种,其可以得到信号的行为信息、
功能信息和历史信息。
6、 信号类属性描述’STABLE ( time )可以确定原信号的工作情况,并稳定一段要
求的时间,稳定时间由时间表达式 time决定,其返回是布尔信号量, 可以作为独立的信
号来使用,它也可以用来触发其他进程。
7、 数据类型类属性描述语句只有一个属性 ’BASE,利用该属性可以返回原数据的 数据类型。
综述题
1、VHDL语言的属性描述语句包括哪六大类?
答案:
•数值类属性描述语句。
•函数类属性描述语句。
•信号类属性描述语句。
•数据类型类属性描述语句。 •数据区间类属性描述语句。
•用户自定义属性语句。
2、VHDL语言的数据类型的属性函数有几种,分别是什么?
答案:
•DATA 'POS (x)表示得到输入数据 x的位置序号值。
•DATA 'VAL (x)表示根据位置序号值 x索引到该位置的数值。
•begin和start区别DATA 'SUCC ( x)表示得到排列在输入数据 x后面的数值。
•DATA 'RED ( x)表示得到排列在输入数据 x前面的数值。
•DATA 'LEFTOF (x)表示得到输入数据 x的左邻值。
•DATA 'RIGHTOF ( x)表示得到输入数据 x的右邻值。
3、数组的属性函数有哪几种?
答案:
•ARRAY 'LEFT (n)表示得到数组的第 n维区间的左端位置序号值。
•ARRAY 'RIGHT (n)表示得到数组的第 n维区间的右端位置序号值。
•ARRAY 'HIGH (n)表示得到数组的第 n维区间的高端位置序号值。
•ARRAY 'LOW( n)表示得到数组的第 n维区间的低端位置序号值。
4、信号类属性描述语句和信号的属性函数的区别是什么?
答案:
信号类属性描述语句产生一个新的信号, 而信号的属性函数只是返回该信号的行为
描述、功能描述、历史信息等,并没有产生新的信号。
实验【一】伪随机数发生器的设计
实验目的:熟悉VHDL语言中的属性描述语句的使用方法。
实验任务:设计伪随机数发生器电路。 在设计过程中使用 VHDL语言提供的各种属
性函数以达到具有便于移植可重用性高的特点。
答案:
Library IEEE ;
use IEEE.std_logic_1164.all use IEEE.std_logic_arith.all ;
--实体,宽度为8
entity lfsr isgeneric (data_width : natural := 8 ); port (
clk : in std_logic ;
reset : in std_logic ;
data_out : out UNSIGNED(data_width - 1 downto 0)); end lfsr ;
architecture rtl of lfsr is --结构体
signal feedback : std_logic ;
signal lfsr_reg : UNSIGNED(data_width - 1 downto 0);
begin
feedback <= lfsr_reg(7) xor lfsr_reg(0);
latch_it : process(clk,reset)
begin
if (reset = '1') then --复位信号
lfsr_reg <= (others => '0');
elsif (clk = '1' and clk'event) then -信号上升沿,产生一个随机数
lfsr_reg <= lfsr_reg(lfsr_reg'high - 1 downto 0) & feedback ;
end if;
end process ;
data_out <= lfsr_reg ;
data_out <= lfsr_reg ;
end RTL
实验【二】TDC时间数字转换电路的设计
实验目的:熟悉VHDL语言中的属性描述语句的使用方法。
实验任务:设计TDC时间数字转换电路,实现具有时间数字转化功能的数字系统。 掌握VHDL设计时间计数控制系统的原理和方法。
时间数字转化器(time-to-digital converters TDC )作为时间记录的一个方向,用于 测量两个时刻之间的间隔。
Tout
开始时刻 结束时刻
参考信号被测信号
TDC测量时间间隔的基本原理对所有具体的电路结构都是相同的, 即将连续的时间
划分为可测量的基本时间单位,从而实现时间量化。如图 7-11为TDC的工作原理示意
图,参考信号为单位时间间隔为 Tq的抽样信号,同时该时间间隔 Tq也是转化器的量化
步长,被测时间为tstart和tstop两个时间之间的时间差。实际测量时间为 Tin,量化输出结
果为Tout,测量误差Terror。各时间量之间的关系可以用方程 1)、2)、3)描述。其中式1)
表示实际的测量时间间隔,式 2)表示测量的总体误差,式 3)表示TDC的量化输出。
Tin = tstop [k] - t start [k]
2)
3)
Terror= T in[k] _Tout[k]Out[k] = (Ti n[ k]-Terror[k])/T q
从式3)可以看出,时间数字转化器的分辨率受 Tq限制。在过去的很长时间里,工
程师主要是通过降低 Tq的值来提高分辨率,即利用工艺尺寸减小,提高电路的工作速 度从而降低量化步长。当然,也可以通过电路结构调整,充分利用现有的工艺来提高分 辨率,但这种提升较工艺进步带来的提升小很多。
基于延时链结构的 TDC主要由延时链和用于读取作用的寄存器链构成。其中,输 入信号包含了测量开始的信息,延时链对输入信号有固定的延时,寄存器则用于读取测 量结束时延时链各级的输出, 然后通过译码器将输出转化为开始时刻与结束时刻之间的
量化时间差,从而完成了连续时间到量化时间之间的转化。
library ieee;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity DFF1 is --第一个 DFF的实体,上升沿 DFF
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论