华南理工大学-数字系统设计实验报告汇总
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ELSE Y <= "11111111"; END IF; END PROCESS; END ARCHITECTURE;
CLK
PIN_23
RST
PIN_208
INPUT VCC
clk_div
clk
Y
inst INPUT VCC
water
clk rst_n
LED[7..0]
inst2
OUTPUT
图 2 利用分频器实现流水灯电路图
五,实验结果和分析
LED[7..0]
PIN_207 PIN_203 PIN_206 PIN_205 PIN_200 PIN_195 PIN_197 PIN_193
LIBRARY IEEE; USE ieee.std_logic_1164.all; USE ieee.std_logic_unsigned.all; ENTITY delay IS
PORT(CLK,RST:IN std_logic; PUL:OUT std_logic); --脉冲输出信号线
END delay; ARCHITECTURE Behav OF delay IS signal cnt:std_logic_vector(23 DOWNTO 0); BEGIN
为培养学生严谨的学习作风,营造安全的实验实践学习氛围,确保学生人身 和仪器设备安全,顺利完成实验任务,特制定以下规则。
1、不得赤脚或穿拖鞋进入实验室,不得将食物带入实验室,不准随地丢弃 废纸、废弃物,保持实验室清洁。
2、实验中不得触摸裸露的接线柱、接线片、导线,不得用表棒、镊子、剪 刀等工具插入电源插座。严禁带电接线、拆线或改接线路。
2、分频器实验 设计要求: 1) 将 EDA 板上的系统时钟 50MHz 分频为 1Hz 的时钟信号 2) 占空比为 50% 3) 利用流水灯点亮程序,在 EDA 板上观察效果
5
4) 实体命名为 clkdiv_(班级号)_(班级序号) 注:由于开发板上没有 rst_n 按钮,将 rst_n 直接接高电平。
3、电烙铁在通电而不用时,应始终置于烙铁架内,严禁将其随意摆在桌边 或地上;留意烙铁头避开导线及附近的仪器设备和书籍用品;人体不可触碰烙铁 头,以防烫伤或漏电事故。中途离开实验室或实验完毕,要及时断电,以免发生 火灾事故。
4、实验接线完毕,要仔细复查,确认无误后方可接通电源。
5、不要动用与本次实验无关的设备、仪器、工具和原材料。
实 验 一 Quartus 软件的使用;VHDL 程序结构的熟悉
地
点:
31 号 楼
312 房; 实验台号:
2
实验日期与时间:
2018.10.24 下午
评 分:
预习检查纪录:
批改教师:
报告内容:
一, 实验要求:
1. 熟悉 Quartus 软件的使用; 2. 熟悉 VHDL 程序结构。
二, 实验内容:
IF(EN='0')THEN CASE ABC is WHEN "000" => Y <= "11111110"; WHEN "001" => Y <= "11111101"; WHEN "010" => Y <= "11111011"; WHEN "011" => Y <= "11110111"; WHEN "100" => Y <= "11101111"; WHEN "101" => Y <= "11011111"; WHEN "110" => Y <= "10111111"; WHEN "111" => Y <= "01111111"; WHEN others => Y <= "11111111"; END CASE;
三,实验设计原理;
1、3-8 译码器 3-8 译码器依据上述译码表进行译码。
2、分频器实验 对脉冲信号进行 2 的 n 次方分之一的分频,这类分频器通常是利用 T 触
发器实现,每来一个脉冲后触发器状态改变一次,经过 n 个 T 触发器处理后 就可以得到 2 的 n 次方分之一的分频信号。
四, 实验过程记录(流程图或者实验逻辑思路过程)
CLK RST
INPUT VCC INPUT VCC
delay
CLK PUL RST
light
PUL LED[5..0] RST
OUTPUT
LED[5..0]
inst
inst1
图 2 连接好的整个系统
图 3 仿真结果 3
(实验报告作品相片粘贴页)
(总电路图截图、仿真结果或者实验平台运行效果照片)
CLK RST
1、3-8 译码器 3 个译码输入端为 A、B、C,EN 为使能端,Y0 到 Y7 为输出端。
test138
A
INPUT VCC
A Y [7..0]
OUTPUT
Y [7..0]
B
INPUT VCC
B
C
INPUT VCC
C
EN
INPUT VCC
EN
2、分频器实验
inst
图 1 3-8 译码器模块电路图
6、实验结束后,实验装置、仪器仪表及电烙铁要断电,将实验用过的有关 的仪器、工具、导线及电缆整理好,放回原处;并将座椅推至实验台下方可离场。
7、遇到事故应立即断电,并及时向实验指导教师报告。
8、严守纪律,遵守实验室规章和安全制度,严格执行操作规则。
9、提高防火防盗意识,做好防火防盗工作。
电子与信息学院实验中心 二〇一六年七月
(c) 流水灯第三秒
(d) 流水灯第四秒
(e) 流水灯第五秒
(f) 流水灯第六秒
图 5 利用分频器实现流水灯的实验结果
7
六,附录(打印源代码页)
1、3-8 译码器实验
LIBRARY IEEE; USE ieee.std_logic_1164.all; USE ieee.std_logic_unsigned.all; ENTITY test138 IS PORT(A,B,C,EN:IN std_logic;
PROCESS(CLK,RST) BEGIN
IF(RST='0')THEN cnt<="000000000000000000000000"; --当按下按键时,计数从零开始
ELSIF(CLK'EVENT AND CLK='1')THEN IF(cnt="100110001001011001111111")THEN cnt<="100110001001011001111111";PUL<='0';--隔 20ms 产生一个脉冲 ELSE cnt<=cnt+'1';PUL<='1'; END IF;
1、3-8 译码器 如下所示为 3-8 译码器的仿真结果,从波形可以看出,该设计符合 3-8 译码 器的真值表的逻辑要求。
图 3 3-8 译码器的仿真波形 6
(a) 输入 000,LED0 亮
(b) 输入 001,LED1 亮
图 4 3-8 译码wk.baidu.com的实验结果
2、分频器实验
(a) 流水灯第一秒
(b) 流水灯第二秒
Y:OUT std_logic_vector(7 DOWNTO 0)); END ENTITY; ARCHITECTURE yima138_arch OF test138 IS signal ABC:std_logic_vector(2 DOWNTO 0); BEGIN
ABC<=A&B&C; PROCESS(ABC,EN) BEGIN
熟悉 QuartusII 软件的使用及 VHDL 程序结构。按新教材“VHDL 数字 系统设计”第 6 章实例操作,掌握建立工程、设计输入、编译、时序仿真等 开发流程;至有仿真结果为止。要理解 VHDL 代码意思,将软件和硬件结 合起来,掌握开发流程。工程名一定要同顶层文件名(总电路图)一致;实 体名一定要同当前待编译文件名一致;当前文件做编译之前一定要先设为顶 层文件。
将以上两个文件编译并各自创建一个 block 块,然后进入图形输入界面,将 各个模块进行连接并添加输入输出符号,然后进行编译和时序仿真。
五,实验结果和分析
如图 2 所示,该电路为连接好的整个系统,其中第一个模块是 delay.vhd 文 件创建的 block 块,第二个模块是 light.vhd 文件创建的 block 块,左侧和右侧分 别为输入符号和输出符号。对该电路进行时序仿真,其结果如图 3 所示,CLK 为时钟信号,RST 为复位信号,高电平有效。
三, 实验设计原理:
图一为 QuartusⅡ的开发流程,使用 QuartusⅡ一般流程为:建立工程、 设计输入、编译、时序仿真、引脚配置、下载编程。
图 1 QuartusⅡ的开发流程 1
四, 实验过程记录(流程图或者实验逻辑思路过程)
这个设计是一个简单的流水灯实验,分为两个部分:第一部分是脉冲产生器 (20ms 一个脉冲);第二部分是 LED 灯的控制部分。脉冲产生器本质上是一个计 数器,为了使流水灯每隔 0.2s 变化一次。 (1)脉冲产生器 delay.vhd 代码:
END IF; END PROCESS; END Behav;
(2)LED 灯的控制 light.vhd 代码:
LIBRARY IEEE; USE ieee.std_logic_1164.all; USE ieee.std_logic_unsigned.all; ENTITY light IS
PORT(PUL,RST:IN std_logic; LED:OUT std_logic_vector(5 DOWNTO 0));
数字系统(课程)设计 实验报告
课 程 名 称 : 数字系统设计实验 学生姓名: 陈邦栋 学生学号: ************ 学生专业: 信息工程 4 班 开 课 学 期 : 2018-2019 第一学期 实验成绩:
电子信息学院 2018 年 12 月
电子与信息学院本科教学实验室 学生实验安全操作规则
2018.11.07 下午
评 分:
预习检查纪录:
批改教师:
报告内容:
一,实验要求:
用 VHDL 语言设计组合逻辑、 时序逻辑电路模块。
二,实验内容:
1、3-8 译码器 设计要求: 1) 3 个译码输入端 A、B、C,分别对应开发板上表示为 ON DIP 的 2,3,4; 2) EN 为使能端(低电平有效),对应开发板上表示为 ON DIP 的 1 管脚; 3) Y 为译码输出,8 位位矢量类型。D3 至 D10; 4) 输入采用电平开关,译码输出采用 LED 指示灯显示; 5) 管脚对应见附件:信号分配表; 6) 译码表如下:
本人已阅读上述《学生实验安全操作规则》,知悉规则 条款,并承诺认真执行。
承 诺 人: 学 院: 专业/班级: 时 间:
目录
实 验 一 QUARTUS 软件的使用;VHDL 程序结构的熟悉.............1 实 验 二 基本电路模块设计(组合、时序) ......................................5 实 验 三 基于状态机的交通灯控制 ....................................................12 实 验 四 按键控制的状态机设计 ........................................................25
2
IF(i=5)THEN i<="000"; ELSE i<=i+'1'; END IF; CASE i IS
WHEN "000"=>LED<="111110"; WHEN "001"=>LED<="111101"; WHEN "010"=>LED<="111011"; WHEN "011"=>LED<="110111"; WHEN "100"=>LED<="101111"; WHEN others=>LED<="011111"; END CASE; END IF; END PROCESS; END Behav;
INPUT VCC INPUT VCC
delay CLK PUL RST
inst
light PUL LED[5..0] RST
inst1
OUTPUT
LED[5..0]
图 4 连接好的整个系统
图 5 仿真结果 4
实 验 二 基本电路模块设计(组合、时序)
地
点:
31 号 楼
312 房; 实验台号:
2
实验日期与时间:
END light; ARCHITECTURE Behav OF light IS signal i:std_logic_vector(2 DOWNTO 0); BEGIN
PROCESS(PUL,RST) BEGIN
IF(RST='0')THEN LED<="000000";i<="000";
ELSIF(PUL'EVENT AND PUL='1')THEN
CLK
PIN_23
RST
PIN_208
INPUT VCC
clk_div
clk
Y
inst INPUT VCC
water
clk rst_n
LED[7..0]
inst2
OUTPUT
图 2 利用分频器实现流水灯电路图
五,实验结果和分析
LED[7..0]
PIN_207 PIN_203 PIN_206 PIN_205 PIN_200 PIN_195 PIN_197 PIN_193
LIBRARY IEEE; USE ieee.std_logic_1164.all; USE ieee.std_logic_unsigned.all; ENTITY delay IS
PORT(CLK,RST:IN std_logic; PUL:OUT std_logic); --脉冲输出信号线
END delay; ARCHITECTURE Behav OF delay IS signal cnt:std_logic_vector(23 DOWNTO 0); BEGIN
为培养学生严谨的学习作风,营造安全的实验实践学习氛围,确保学生人身 和仪器设备安全,顺利完成实验任务,特制定以下规则。
1、不得赤脚或穿拖鞋进入实验室,不得将食物带入实验室,不准随地丢弃 废纸、废弃物,保持实验室清洁。
2、实验中不得触摸裸露的接线柱、接线片、导线,不得用表棒、镊子、剪 刀等工具插入电源插座。严禁带电接线、拆线或改接线路。
2、分频器实验 设计要求: 1) 将 EDA 板上的系统时钟 50MHz 分频为 1Hz 的时钟信号 2) 占空比为 50% 3) 利用流水灯点亮程序,在 EDA 板上观察效果
5
4) 实体命名为 clkdiv_(班级号)_(班级序号) 注:由于开发板上没有 rst_n 按钮,将 rst_n 直接接高电平。
3、电烙铁在通电而不用时,应始终置于烙铁架内,严禁将其随意摆在桌边 或地上;留意烙铁头避开导线及附近的仪器设备和书籍用品;人体不可触碰烙铁 头,以防烫伤或漏电事故。中途离开实验室或实验完毕,要及时断电,以免发生 火灾事故。
4、实验接线完毕,要仔细复查,确认无误后方可接通电源。
5、不要动用与本次实验无关的设备、仪器、工具和原材料。
实 验 一 Quartus 软件的使用;VHDL 程序结构的熟悉
地
点:
31 号 楼
312 房; 实验台号:
2
实验日期与时间:
2018.10.24 下午
评 分:
预习检查纪录:
批改教师:
报告内容:
一, 实验要求:
1. 熟悉 Quartus 软件的使用; 2. 熟悉 VHDL 程序结构。
二, 实验内容:
IF(EN='0')THEN CASE ABC is WHEN "000" => Y <= "11111110"; WHEN "001" => Y <= "11111101"; WHEN "010" => Y <= "11111011"; WHEN "011" => Y <= "11110111"; WHEN "100" => Y <= "11101111"; WHEN "101" => Y <= "11011111"; WHEN "110" => Y <= "10111111"; WHEN "111" => Y <= "01111111"; WHEN others => Y <= "11111111"; END CASE;
三,实验设计原理;
1、3-8 译码器 3-8 译码器依据上述译码表进行译码。
2、分频器实验 对脉冲信号进行 2 的 n 次方分之一的分频,这类分频器通常是利用 T 触
发器实现,每来一个脉冲后触发器状态改变一次,经过 n 个 T 触发器处理后 就可以得到 2 的 n 次方分之一的分频信号。
四, 实验过程记录(流程图或者实验逻辑思路过程)
CLK RST
INPUT VCC INPUT VCC
delay
CLK PUL RST
light
PUL LED[5..0] RST
OUTPUT
LED[5..0]
inst
inst1
图 2 连接好的整个系统
图 3 仿真结果 3
(实验报告作品相片粘贴页)
(总电路图截图、仿真结果或者实验平台运行效果照片)
CLK RST
1、3-8 译码器 3 个译码输入端为 A、B、C,EN 为使能端,Y0 到 Y7 为输出端。
test138
A
INPUT VCC
A Y [7..0]
OUTPUT
Y [7..0]
B
INPUT VCC
B
C
INPUT VCC
C
EN
INPUT VCC
EN
2、分频器实验
inst
图 1 3-8 译码器模块电路图
6、实验结束后,实验装置、仪器仪表及电烙铁要断电,将实验用过的有关 的仪器、工具、导线及电缆整理好,放回原处;并将座椅推至实验台下方可离场。
7、遇到事故应立即断电,并及时向实验指导教师报告。
8、严守纪律,遵守实验室规章和安全制度,严格执行操作规则。
9、提高防火防盗意识,做好防火防盗工作。
电子与信息学院实验中心 二〇一六年七月
(c) 流水灯第三秒
(d) 流水灯第四秒
(e) 流水灯第五秒
(f) 流水灯第六秒
图 5 利用分频器实现流水灯的实验结果
7
六,附录(打印源代码页)
1、3-8 译码器实验
LIBRARY IEEE; USE ieee.std_logic_1164.all; USE ieee.std_logic_unsigned.all; ENTITY test138 IS PORT(A,B,C,EN:IN std_logic;
PROCESS(CLK,RST) BEGIN
IF(RST='0')THEN cnt<="000000000000000000000000"; --当按下按键时,计数从零开始
ELSIF(CLK'EVENT AND CLK='1')THEN IF(cnt="100110001001011001111111")THEN cnt<="100110001001011001111111";PUL<='0';--隔 20ms 产生一个脉冲 ELSE cnt<=cnt+'1';PUL<='1'; END IF;
1、3-8 译码器 如下所示为 3-8 译码器的仿真结果,从波形可以看出,该设计符合 3-8 译码 器的真值表的逻辑要求。
图 3 3-8 译码器的仿真波形 6
(a) 输入 000,LED0 亮
(b) 输入 001,LED1 亮
图 4 3-8 译码wk.baidu.com的实验结果
2、分频器实验
(a) 流水灯第一秒
(b) 流水灯第二秒
Y:OUT std_logic_vector(7 DOWNTO 0)); END ENTITY; ARCHITECTURE yima138_arch OF test138 IS signal ABC:std_logic_vector(2 DOWNTO 0); BEGIN
ABC<=A&B&C; PROCESS(ABC,EN) BEGIN
熟悉 QuartusII 软件的使用及 VHDL 程序结构。按新教材“VHDL 数字 系统设计”第 6 章实例操作,掌握建立工程、设计输入、编译、时序仿真等 开发流程;至有仿真结果为止。要理解 VHDL 代码意思,将软件和硬件结 合起来,掌握开发流程。工程名一定要同顶层文件名(总电路图)一致;实 体名一定要同当前待编译文件名一致;当前文件做编译之前一定要先设为顶 层文件。
将以上两个文件编译并各自创建一个 block 块,然后进入图形输入界面,将 各个模块进行连接并添加输入输出符号,然后进行编译和时序仿真。
五,实验结果和分析
如图 2 所示,该电路为连接好的整个系统,其中第一个模块是 delay.vhd 文 件创建的 block 块,第二个模块是 light.vhd 文件创建的 block 块,左侧和右侧分 别为输入符号和输出符号。对该电路进行时序仿真,其结果如图 3 所示,CLK 为时钟信号,RST 为复位信号,高电平有效。
三, 实验设计原理:
图一为 QuartusⅡ的开发流程,使用 QuartusⅡ一般流程为:建立工程、 设计输入、编译、时序仿真、引脚配置、下载编程。
图 1 QuartusⅡ的开发流程 1
四, 实验过程记录(流程图或者实验逻辑思路过程)
这个设计是一个简单的流水灯实验,分为两个部分:第一部分是脉冲产生器 (20ms 一个脉冲);第二部分是 LED 灯的控制部分。脉冲产生器本质上是一个计 数器,为了使流水灯每隔 0.2s 变化一次。 (1)脉冲产生器 delay.vhd 代码:
END IF; END PROCESS; END Behav;
(2)LED 灯的控制 light.vhd 代码:
LIBRARY IEEE; USE ieee.std_logic_1164.all; USE ieee.std_logic_unsigned.all; ENTITY light IS
PORT(PUL,RST:IN std_logic; LED:OUT std_logic_vector(5 DOWNTO 0));
数字系统(课程)设计 实验报告
课 程 名 称 : 数字系统设计实验 学生姓名: 陈邦栋 学生学号: ************ 学生专业: 信息工程 4 班 开 课 学 期 : 2018-2019 第一学期 实验成绩:
电子信息学院 2018 年 12 月
电子与信息学院本科教学实验室 学生实验安全操作规则
2018.11.07 下午
评 分:
预习检查纪录:
批改教师:
报告内容:
一,实验要求:
用 VHDL 语言设计组合逻辑、 时序逻辑电路模块。
二,实验内容:
1、3-8 译码器 设计要求: 1) 3 个译码输入端 A、B、C,分别对应开发板上表示为 ON DIP 的 2,3,4; 2) EN 为使能端(低电平有效),对应开发板上表示为 ON DIP 的 1 管脚; 3) Y 为译码输出,8 位位矢量类型。D3 至 D10; 4) 输入采用电平开关,译码输出采用 LED 指示灯显示; 5) 管脚对应见附件:信号分配表; 6) 译码表如下:
本人已阅读上述《学生实验安全操作规则》,知悉规则 条款,并承诺认真执行。
承 诺 人: 学 院: 专业/班级: 时 间:
目录
实 验 一 QUARTUS 软件的使用;VHDL 程序结构的熟悉.............1 实 验 二 基本电路模块设计(组合、时序) ......................................5 实 验 三 基于状态机的交通灯控制 ....................................................12 实 验 四 按键控制的状态机设计 ........................................................25
2
IF(i=5)THEN i<="000"; ELSE i<=i+'1'; END IF; CASE i IS
WHEN "000"=>LED<="111110"; WHEN "001"=>LED<="111101"; WHEN "010"=>LED<="111011"; WHEN "011"=>LED<="110111"; WHEN "100"=>LED<="101111"; WHEN others=>LED<="011111"; END CASE; END IF; END PROCESS; END Behav;
INPUT VCC INPUT VCC
delay CLK PUL RST
inst
light PUL LED[5..0] RST
inst1
OUTPUT
LED[5..0]
图 4 连接好的整个系统
图 5 仿真结果 4
实 验 二 基本电路模块设计(组合、时序)
地
点:
31 号 楼
312 房; 实验台号:
2
实验日期与时间:
END light; ARCHITECTURE Behav OF light IS signal i:std_logic_vector(2 DOWNTO 0); BEGIN
PROCESS(PUL,RST) BEGIN
IF(RST='0')THEN LED<="000000";i<="000";
ELSIF(PUL'EVENT AND PUL='1')THEN