VLSI 设计的 FPGA 验证
更新时间:2023-08-21 02:09:02 阅读量: 高等教育 文档下载
- vlsi是什么意思推荐度:
- 相关推荐
VLSI 设计的 FPGA 验证
VLSI设计的FPGA验证
标 准 实 验 报 告
实验一:数字功放的FPGA下载实验 实验二:计数器的FPGA验证实验
实验三:计数器改进设计及其FPGA验证实验
电子科技大学·《电子设计自动化技术》课程组
VLSI 设计的 FPGA 验证
实验(一)标准实验报告
实验名称:数字音频攻放的FPGA下载与试听验证实验
实验目的:通过数字音频功放的FPGA下载和试听,体验FPGA原型验证的过
程,学会FPGA下载操作,感性地认识基于VHDL的用户设计在FPGA中物理实现的真实效果。
实验原理:参见《VLSI设计的FPGA验证实验指导书》 实验步骤及实验记录: 1. 步骤一:实验准备
FPGA开发板(主芯片型号:XCS10XL)
数字音频功放的目标下载文件(audio.bit、audio.mcs) 2. 步骤二:连接好FPGA开发板
用JTAG下载线将FPGA开发板与计算机的并口连接好。 3. 步骤三:FPGA下载就绪状态设置
用跳线块将FPGA开发板上的program引脚与GND短接。 4. 步骤四:FPGA开发板上电
将直流稳压电源输出电压调到3.3V后,与FPGA开发板连接好,上电。 5. 步骤五:启动下载工具JTAG programmer
操作方法为:程序 →Xilinx Foundation Series 3.1i → Accessories → JTAG programmer。
6. 步骤六:初始化下载链路
下载工具JTAG programmer找到了目标器件FPGA(型号XCS10XL)和PROM(型号为:XC18V02)。 7. 步骤七:PROM配置项设置
加载PROM配置文件(audio.mcs),选择PROM器件封装型号(xc18v02_pc44)。
8. 步骤八:FPGA配置项设置
加载FPGA的目标下载bit流文件(audio.bit),选择FPGA器件封装型号(XCS10XL_PC84)。
VLSI 设计的 FPGA 验证
9. 步骤九:运行下载
PROM器件xc18v02_pc44的Operation选项选择为program,FPGA器件XCS10XL_PC84的Operation选项选择为Bypass。
点击Execute按钮运行下载,下载成功。 10. 步骤十:试听测试
取下FPGA开发板上的program与GND短接的跳线块,FPGA进入运行状态;接上耳机试听音乐播放,听到了播放的音乐。
实验结论与分析:
数字音频攻放的目标下载文件成功下载到了FPGA中,通过耳机试听到了播放的音乐。
VLSI 设计的 FPGA 验证
实验(二)标准实验报告
实验名称:LED数码显示型计数器的FPGA验证实验
实验目的: 通过VHDL源程序编写与仿真、FPGA综合、FPGA物理实现及FPGA
下载、板级测试等全过程的亲身体验,掌握VLSI前端设计和FPGA验证的基本方法,熟悉FPGA开发板的应用。
实验原理:参见《VLSI设计的FPGA验证实验指导书》 实验步骤及实验记录:
1. 第一步:计数器的VHDL编程与源代码录入
① 计数器的VHDL源代码: LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITY count10en IS
PORT(i, clr, en : IN STD_LOGIC; qa, qb, qc, qd : OUT STD_LOGIC); END count10en;
ARCHITECTURE rtl OF count10en IS
SIGNAL count_4 : STD_LOGIC_VECTOR(3 downto 0); BEGIN process(i, clr) begin
if (clr='1') then
count_4 <= "0000";
elsif (i'event and i='1') then if (en='1') then
if (count_4="1001") then
count_4 <= "0000";
VLSI 设计的 FPGA 验证
else
count_4 <= count_4 + 1;
end if;
end if; end if; end process; qa<=count_4(0); qb<=count_4(1); qc<=count_4(2); qd<=count_4(3); END rtl;
② LED数码显示驱动模块的源代码: library IEEE;
use IEEE.STD_LOGIC_1164.all;
entity display is
port( I0, I1, I2,I3 : in STD_LOGIC;
O_A, O_B, O_C, O_D, O_E, O_F, O_G : out STD_LOGIC);
end display;
architecture display of display is
signal M : STD_LOGIC_VECTOR(3 downto 0); signal O : STD_LOGIC_VECTOR(6 downto 0); begin
M <= I3&I2&I1&I0;
PROCESS(M) BEGIN
case M is
when "0000" => O <= "1000000"; --0 when "0001" => O <= "1111001"; --1 when "0010" => O <= "0100100"; --2
VLSI 设计的 FPGA 验证
when "0011" => O <= "0110000"; --3 when "0100" => O <= "0011001"; --4 when "0101" => O <= "0010010"; --5
when "0110" => O <= "0000010"; --6 when "0111" => O <= "1011000"; --7 when "1000" => O <= "0000000"; --8 when "1001" => O <= "0010000"; --9 when others => O <= "0000110"; --E
end case; end process; O_A <= O(0); O_B <= O(1); O_C <= O(2); O_D <= O(3); O_E <= O(4); O_F <= O(5);
O_G <= O(6);
end display;
2. 第二步:VHDL程序功能仿真
仿真工具选择:Active-HDL。 仿真波形如下图所示:
VLSI 设计的 FPGA 验证
3. 第三步:VHDL逻辑综合
综合工具选择:FPGA Express。 综合后得到的电路图如下图所示:
4. 第四步:FPGA物理实现
物理实现工具选择:Xilinx Foundation的Design Manager。 物理实现的管脚分配文件如下图所示:
5. 第五步:FPGA下载
下载工具选择:Xilinx Foundation的JTAG programmer。
用跳线块将FPGA开发板上的program引脚与GND短接,使FPGA处于下载就绪状态。
FPGA芯片的配置文件:counter_LED.bit
VLSI 设计的 FPGA 验证
PROM芯片的配置文件:counter_LED.mcs 6. 第六步:FPGA测试
下载成功后,取下program引脚短接跳线块,即可进行测试。 测试方法:手动操作按键,观测LED数码管。
实验结论与分析:
通过观测发现,LED数码能有效显示计数器的计数值,但一次手动按键操作有多次误计数的不稳定现象。说明本设计的可靠性较差,需要作进一步改进设计。
VLSI 设计的 FPGA 验证
实验(三)标准实验报告
实验名称:改进型计数器设计与FPGA验证实验
实验目的:通过改进型计数器设计使学生认识到工程设计实践中稳定性、可靠性
设计的必要性,通过FPGA实物验证使学生充分认识去抖动电路的抗噪效果。并养成在完成功能设计的同时兼顾性能设计的良好习惯。
实验原理:参见《VLSI设计的FPGA验证实验指导书》 实验步骤及实验记录:
1. 第一步:分析实验二的计数器计数值不稳定的原因
实验二计数器实验中计数值不稳定现象是:LED显示数据有乱跳的现象。 引起不稳定现象的原因是手动操作按键时有“抖动”噪声。 要消除抖动噪音,可以引入去抖动电路。
改进后的模块框图如下,从图中可以很清楚它们的连接关系。
其中增加的弹跳消除模块为图中的debounce模块,端口包括: clk:系统时钟端口 touch:键盘输入端口 clr:清零复位端口
push_out:进行完噪声消除以后的键盘输入信号。 2.第二步:去抖动电路设计
去抖动电路基本思路:引入采样时钟,在对输入信号采样时,当相邻两次采样数据相同,则认为信号稳定有效,输出该值;否则当成非稳定信号,去抖输出保持原值不变。
去抖动电路源程序:
VLSI 设计的 FPGA 验证
--content definition of component "debounce" library ieee;
use ieee.std_logic_1164.all; use ieee.std_logic_arith.all; use ieee.std_logic_unsigned.all; --io signal declaraction entity debounce is
port(clk: in std_logic; --basic clock input
clr:in std_logic;
touch: in std_logic; --push button signal
push_out: out std_logic); --cleared push botton signal
end debounce;
architecture arch of debounce is
signal sample: std_logic;
--declaraction of self_built sampling pulse from clock begin
sampling_signal: block --input clk --output sample
signal delay:std_logic; --one_step delay
signal q: std_logic_vector(4 downto 0); --osc/2^5=32hz(31.25ms)
begin
process(clk) begin
if clr='1' then q<="00000"; delay<='0';
elsif rising_edge(clk) then
delay<=q(4); q<=q+1;
VLSI 设计的 FPGA 验证
end if;
sample<=q(4) and not delay; --leading_edge differentiating
end process; end block sampling_signal; --cleared push botton signal generation cleared_push:block --input:clk,sample,touch --output:push_out
signal dff0,dff1:std_logic; --two_step delay ff signal push:std_logic; --output of rsff for push signal signal q1,q2:std_logic; begin
process(clk) begin
if clr='1' then
dff0<='0'; dff1<='0'; push<='0';
elsif rising_edge(clk) then
if sample='1' then dff1<=dff0;
dff0<=touch;
push<=dff0 and dff1; end if; end if; end process; process(clk) begin
if clr='1' then
q2<='0';
VLSI 设计的 FPGA 验证
q1<='0';
elsif rising_edge(clk) then
q2<=q1; q1<=push; end if;
push_out<=q1 and not q2;
end process;
end block
cleared_push; end arch;
3.第三步:采样时钟电路设计
FPGA开发板上晶振为33MHz,将该时钟信号进行4分频后得到8.25MHz的采样时钟。
4. 第四步:改进型计数器的VHDL仿真
仿真工具选择:Active-HDL 仿真波形如下图所示:
由时钟产生一个取样信号,然后对键盘输入的信号进行取样。只有在两次取样均能采到信号时,才算一次输入,否则不被计入。
如上图可见,当输入信号(touch)保持200ns时,能被有效识别,其它的都没有被识别。达到了消除噪声的目的。 5. 第五步:VHDL程序的综合
综合工具选择:FPGA Express。 综合后形成的网表文件:counter_EN.edf 6. 第六步:FPGA物理实现及下载
物理实现及其下载工具选择:Xilinx Foundation 管脚分配文件:counter_EN.ucf
VLSI 设计的 FPGA 验证
用跳线块将FPGA开发板上的program引脚与GND短接,使FPGA处于下载就绪状态,选择目标下载文件完成下载。
FPGA目标下载文件:counter_EN.bit PROM目标下载文件:counter_EN..mcs 7. 第七步:FPGA测试
下载成功后,取下program引脚短接跳线块,即可进行测试。 测试方法:手动操作按键,观测LED数码管。
实验结论与分析:
通过观测发现,LED数码能有效显示计数器的计数值,且一次手动按键操作只发生一次计数,计数操作稳定。
通过与实验二作对比发现:引入去抖动设计后计数器的计数效果得到了明显改进。
正在阅读:
VLSI 设计的 FPGA 验证08-21
桔子小学生作文06-15
金涵手持示波器说明书10-01
2013年上学期计算机教学工作总结03-12
我喜欢的一本书作文300字02-05
2022年三类人员安全员C证继续教育考试题库及答案(共100题)04-19
县食用菌产业办公室2021年上半年工作总结和下半年工作谋划08-17
人力资源管理的产生与发展12-07
西方文化视野与文本解读07-18
尿素常识12-15
- 2012诗歌鉴赏讲座 师大附中张海波
- 2012-2013学年江苏省苏州市五市三区高三(上)期中数学模拟试卷(一)
- 市政基础设施工程竣工验收资料
- 小方坯连铸机专用超越离合器(引锭杆存放用)
- 荀子的学术性质之我见
- 氩弧焊管轧纹生产线操作说明
- 小学科学六年级上册教案
- (商务)英语专业大全
- 外汇储备的快速增长对我国经济发展的影响
- 幼儿园中班优秀语言教案《小猴的出租车》
- 第七章 仪表与显示系统
- 身份证号码前6位行政区划与籍贯对应表
- 单位(子单位)工程验收通知书
- 浅谈地铁工程施工的项目成本管理
- 沉积学知识点整理
- 前期物业管理中物业服务企业的法律地位
- 2014微量养分营养试卷
- 地质专业校内实习报告范文(通用版)
- 内部审计视角下我国高校教育经费支出绩效审计研究
- 高次插值龙格现象并作图数值分析实验1
- 验证
- 设计
- VLSI
- FPGA
- 圈里中心小学青少年违法犯罪半年工作总结
- 非甾体抗炎药的应用及其安全性
- 汝窑茶具怎么样
- Visitor Information(游客须知)中英文对照版
- 新人教版数学一年级下册第六单元100以内的加法和减法(一)测试题C卷
- 体外微核试验方法研究进展
- 电视政论片《百年潮
- 基本常识汇总
- 妊娠合并高血压疾病的处理新进展_赵丽
- 时杨中学2012届高三数学小题训练012
- 新学期的学习计划的
- 寰枢椎脱位后路术后远期翻修
- 社会保障概论教学大纲
- 7.三年级下册《道德与法治》教学计划
- 2014陕西教师资格考试:中学综合素质考点归纳文化修养4
- 公平正义的内涵及思考
- (精品)九年级英语第四单元知识点section A 含练习
- 7直线和圆的位置关系
- 温州市信息化十二五规划
- 初中历史总复习练习题及答案