电子设计自动化实验报告

合集下载

EDA实训报告总结

EDA实训报告总结

实训心得短暂的一周实训已经过去了,对于我来说这一周的实训赋予了我太多实用的东西了,不仅让我更深层次的对课本的理论知识深入了理解,而且还让我对分析事物的逻辑思维能力得到了锻炼,提高了实际动手能力,下面谈一下就这一周实训中我自己的一些心得体会.一周的实训已经过去了,我们在老师提供的实践平台上通过自己的实践学到了很多课本上学不到的宝贵东西,熟悉了对quartus ⅱ软件的一般项目的操作和学到了处理简单问题的基本方法,更重要的是掌握了vhdl语言的基本设计思路和方法,我想这些会对我今后的学习起到很大的助推作用。

此外,还要在今后的课本理论知识学习过程中要一步一个脚印的扎实学习,灵活的掌握和运用专业理论知识这样才能在以后出去工作的实践过程中有所成果。

最后还要感谢学校为我们提供这样专业的实践平台还有瓮老师在一周实训以来的不断指导和同学的热情帮助。

总的来说,这次实训我收获很大.同时,感谢大专两年来所有的老师,是你们为我解惑受业,不仅教授我专业知识,更教会我做人的道理.这次eda实训让我感觉收获颇多,在这一周的实训中我们不仅巩固了以前学过的知识,而且还学到了怎样运用eda设计三种波形的整个过程和思路,更加强了我们动手能力,同时也提高了我们的思考能力的锻炼,我们在写程序的同时还要学会要改程序,根据错误的地方去修改程序.本文基于verilog hdl的乒乓球游戏机设计,利用verilog hdl语言编写程序实现其波形数据功能在分析了cpld技术的基础上,利用cpld开发工具对电路进行了设计和仿真,从分离器件到系统的分布,每一步都经过严格的波形仿真,以确保功能正常。

从整体上看来,实训课题的内容实现的功能都能实现,但也存在着不足和需要进一步改进的地方,为我今后的学习和工作奠下了坚实的基础。

通过此次的实训课题,掌握了制作乒乓球游戏机技术的原理及设计要领,学习并掌握了可编程逻辑电路的设计,掌握了软件、cpld元件的应用,受益匪浅,非常感谢瓮老师这一学期来的指导与教诲,感谢老师在学习上给予的指导,老师平常的工作也很忙,但是在我们学习的过程中,重来没有耽搁过,我们遇到问题问他,他重来都是很有耐心,不管问的学生有多少,他都细心的为每个学生讲解,学生们遇到的不能解决的,他都配合同学极力解决。

电子设计自动化EDA技术实验四报告模板-10进制计数器设计

电子设计自动化EDA技术实验四报告模板-10进制计数器设计

南京工程学院自动化学院实验报告课程名称电子设计自动化EDA技术实验项目名称10进制计数器设计实验学生班级实验学生姓名同组学生姓名实验时间实验地点实验成绩评定指导教师签字年月日24其中D 表示输入初始计数值,Sta 为计数开始,Q 表示当前计数值;LD 表示预制计数值,LD 为“0”,初始计数值打入器件;UD 表示计数方向,UD 为‘0’,计数器加计数,UD 为‘1’,计数器减计数;C 表示器件工作态,C 为‘0’,表示计数器正在计数;C 为‘1’,表示计数器计数结束;CP 为计数脉冲。

四、实验方案设计、实验方法 1. 实验方案10进制计数器的VHDL 描述有多种方法,设计过程中可以采用计数脉冲CP 作为敏感量,CP 的每个上升沿,计数值Q 加‘1’或减‘1’,加到‘9’后回‘0’或减到‘0’后回‘9’,语句可采用case …when 、with …select 、if …then 以及加减运算等多种结构实现。

也可以首先设计基本的触发器、锁存器等元件,而后通过元件的互联实现。

本实验中根据真值表用if-then 结构实现10进制计数器 2. 实验方法首先根据前文所述,对照真值表的列出的不同输入逻辑状态,分情况依次输出于输入的对应关系,而后编译综合,由开发系统自行实现电路功能。

五、实验步骤1. 设计输入 利用FILE\New 菜单输入VHDL 源程序,创建源文件D0 D1 D2 D3 CP Sta LD UDQ0 Q1 Q2 Q3 C62. 器件及管脚逻分配图管脚分配情况如图,所选器件为EPM7032AELCC44-43. 仿真波形10进制计数器的仿真波形如下图,从波形可以得出,输入输出满足前文真值表,设计电路功能达到设计要求4. 时序分析图上述时间分析可以得到,输出信号存在3ns的时间延迟,它主要与器件速度、表达逻辑的合理性有关,选用速度更高器件、优化设计可以使该值降低。

8。

设计占空比为40%的方波发生器

设计占空比为40%的方波发生器

电子设计自动化实验报告(五)学院:电气学院班级:电子122班姓名:覃思远
一、实验题目:设计占空比为40%的方波发生器
二、实验目的:学会调用LPM模块类存储器来设计涉及RAM和ROM等存储器应用的EDA 设计开发。

三、实验程序:
四、实验仿真结果:
五、仿真结果分析:设置时钟inclk0、时钟使能clken=1和复位reser=0,由图可以看出,输出q得到一个占空比为40%的方波,该设计为占空比为40%方波发生器。

六、硬件下载设置及测试过程:根据板子给定的引脚锁定图,选定相应的硬件把硬件的引脚与程序中的输入输出端锁定,编译并下载程序,设置好时钟inclk0、时钟使能clken=1和复位reser=0,板子上电测试,观察实验现象是否符合程序的结果。

七、总结:在涉及RAM和ROM等存储器应用的EDA 设计开发中要学会利用Quartus II 调用LPM RAM的方法和相关技术,包括仿真测试、初始化配置文件生成、例化程序表述、
相关属性应用、以及存储器的Verilog语言描述等。

eda课程设计实验小结

eda课程设计实验小结

eda课程设计实验小结一、教学目标本课程的教学目标是使学生掌握EDA(电子设计自动化)的基本原理和实验技能,能够运用EDA工具进行简单的电子系统设计和仿真。

具体目标如下:1.知识目标:学生能够理解EDA的基本概念、发展历程和主要应用领域;熟悉常见的EDA工具及其基本操作。

2.技能目标:学生能够运用EDA工具进行电路设计、仿真和验证;能够进行简单的PCB设计和管理。

3.情感态度价值观目标:培养学生对电子技术的兴趣和好奇心,提高学生的问题解决能力和创新意识。

二、教学内容根据课程目标,教学内容主要包括以下几个部分:1.EDA基本概念和发展历程:介绍EDA的定义、发展历程和主要应用领域。

2.EDA工具的基本操作:以某一款常见的EDA工具为例,讲解其基本操作和功能。

3.电路设计和仿真:通过具体案例,讲解如何使用EDA工具进行电路设计和仿真。

4.PCB设计和管理:介绍PCB的基本概念,讲解如何使用EDA工具进行PCB设计和管理。

三、教学方法为了达到课程目标,我们将采用以下几种教学方法:1.讲授法:讲解EDA的基本概念、发展历程和主要应用领域。

2.案例分析法:通过具体案例,引导学生掌握EDA工具的基本操作和应用。

3.实验法:让学生亲自动手进行电路设计和仿真实验,提高其实践能力。

4.讨论法:鼓励学生积极参与课堂讨论,培养其创新意识和问题解决能力。

四、教学资源为了支持教学内容和教学方法的实施,我们将准备以下教学资源:1.教材:选用权威、实用的EDA教材,为学生提供系统、科学的学习材料。

2.参考书:提供一些精选的参考书籍,拓展学生的知识视野。

3.多媒体资料:制作精美的PPT、视频等多媒体资料,提高学生的学习兴趣。

4.实验设备:准备充足的实验设备,确保每个学生都能动手进行实验。

五、教学评估为了全面、客观地评估学生的学习成果,我们将采用以下评估方式:1.平时表现:通过观察学生在课堂上的参与程度、提问回答等情况,评估其学习态度和理解能力。

实习报告自动化专业实习报告

实习报告自动化专业实习报告

实习报告自动化专业实习报告实习报告。

实习报告自动化专业实习报告。

实习时间,2021年7月1日至2021年8月30日。

实习单位,某某科技有限公司。

实习内容:在某某科技有限公司的实习期间,我主要负责参与自动化系统的设计与开发工作。

在实习的过程中,我学习了自动化系统的基本原理和技术,并且通过实际操作和项目实践,提高了自己的实际操作能力和解决问题的能力。

在实习的过程中,我参与了公司的一个自动化系统项目,负责了系统的设计与开发工作。

在这个项目中,我学习了自动化系统的整体架构设计和各个模块之间的协作关系,掌握了PLC编程、传感器应用、工业网络通信等技术,并且通过与团队的合作,解决了系统中的一些技术难题。

在实习的过程中,我还参与了公司的一些现场调试工作,学习了如何在实际的生产现场中部署和调试自动化系统,了解了自动化系统在实际生产中的应用和运行情况。

实习收获:通过这次实习,我不仅学习了自动化系统的理论知识,还掌握了自动化系统的设计与开发技术,并且通过实际操作和项目实践,提高了自己的实际操作能力和解决问题的能力。

同时,通过与团队的合作和项目实践,我也学习了团队合作的重要性和技术交流的重要性,提高了自己的团队协作能力和沟通能力。

在实习的过程中,我还结识了许多优秀的同事和导师,他们的经验和教诲让我受益匪浅,对自动化专业的发展和未来充满信心。

总结:通过这次实习,我不仅学到了很多专业知识和技术,还锻炼了自己的实际操作能力和解决问题的能力,并且通过与团队的合作和项目实践,提高了自己的团队协作能力和沟通能力。

这次实习经历让我受益匪浅,对自动化专业的发展和未来充满信心。

感谢公司和导师对我的指导和培养,我会继续努力,不断提高自己,为公司的发展贡献自己的力量。

自动化技术综合实训报告

自动化技术综合实训报告

自动化技术综合实训报告一、实训内容及目标本次综合实训的主要内容是利用自动化技术完成一个智能家居系统的设计与搭建。

该系统主要包括智能家居控制中心、家庭安全监测模块、环境舒适调控模块以及远程控制模块,旨在提高生活的便利性、安全性以及舒适性。

实训的目标是让学生通过实际操作,了解自动化技术在家庭生活中的应用,掌握智能家居系统的设计与搭建方法,并能够独立完成类似项目的工作。

二、实训过程及方法1.设计与搭建智能家居控制中心:首先,我们需要设计一个智能家居控制中心,用于连接各个模块,并对其进行监控与控制。

在设计过程中,我们需要确定控制中心的硬件设备以及网络通信方式。

然后,我们需要使用相应的开发工具进行编程,通过传感器获得各种数据,并通过控制指令对各个模块进行控制。

2.家庭安全监测模块设计与搭建:家庭安全监测模块主要包括人体红外传感器和摄像头。

通过人体红外传感器检测到有人进入时,触发报警系统,并通过摄像头实时监控并拍摄画面。

我们需要设计相应的电路,并编写程序对传感器和摄像头进行控制。

3.环境舒适调控模块设计与搭建:环境舒适调控模块主要包括温湿度传感器和空调控制器。

通过温湿度传感器获取环境温湿度数据,并通过空调控制器控制温度和湿度。

我们需要设计相应的电路,并编写程序对传感器和空调控制器进行控制。

4.远程控制模块设计与搭建:远程控制模块主要用于实现用户对智能家居系统的远程控制。

我们可以通过手机、电脑等设备对控制中心进行远程操控,实现对家庭安全监测模块和环境舒适调控模块的远程控制。

我们需要设计相应的网络通信方式,并编写远程控制程序。

三、实训成果及总结在本次综合实训中,我们成功设计并搭建了一个智能家居系统,包括智能家居控制中心、家庭安全监测模块、环境舒适调控模块以及远程控制模块。

通过实际操作,我们深入了解了自动化技术在家庭生活中的应用,掌握了智能家居系统的设计与搭建方法,并且能够独立完成类似项目的工作。

通过本次实训,我们对自动化技术有了更深入的了解,发现自动化技术在提高家庭生活的便利性、安全性以及舒适性方面具有巨大潜力。

自动化实习报告_8

自动化实习报告_8

自动化实习报告自动化实习报告模板集锦九篇我们眼下的社会,需要使用报告的情况越来越多,写报告的时候要注意内容的完整。

那么一般报告是怎么写的呢?下面是收集整理的自动化实习报告9篇,希望对大家有所帮助。

自动化实习报告篇1自动化(Automation)是指机器设备、系统或过程(生产、管理过程)在没有人或较少人的直接参与下,按照人的要求,经过自动检测、信息处理、分析判断、操纵控制,实现预期的目标的过程。

自动化技术广泛用于工业、农业、军事、科学研究、交通运输、商业、医疗、服务和家庭等方面。

采用自动化技术不仅可以把人从繁重的体力劳动、部分脑力劳动以及恶劣、危险的工作环境中解放出来,而且能扩展人的器官功能,极大地提高劳动生产率,增强人类认识世界和改造世界的能力。

因此,自动化是工业、农业、国防和科学技术现代化的重要条件和显著标志。

本专业培养的学生具备电工技术、电子技术、控制理论、自动检测与仪表、信息处理、系统工程、计算机技术与应用和网络技术等较宽广领域的工程技术基础和一定的专业知识,能在运动控制、工业过程控制、电力电子技术、检测与自动化仪表、电子与计算机技术、信息处理、管理与决策等领域从事系统分析、系统设计、系统运行、科技开发及研究等方面工作的高级工程技术人才。

大学本科自动化专业的主要课程有:电路原理、高等数学、电子技术基础、计算机原理及应用、计算机软件技术基础、模拟电子技术、数字电子技术、过程工程基础、电机与电力拖动基础、电力电子技术、自动控制理论、现代控制理论、半导体变流技术、微机原理与接口技术、单片机原理与应用、信号与系统分析、过程检测及仪表、运筹学、计算机仿真、计算机网络、过程控制、运动控制、系统辨识基础、计算机控制系统、系统工程导论、复变函数与积分变换、自动化概论、嵌入式系统原理与设计。

自动化的发展历史及趋势. 1946年,美国福特公司的机械工程师D.S.哈德最先提出“自动化”一词并用来描述发动机汽缸的自动传送和加工的过程。

电子设计自动化(EDA)_数字时钟程序模块(LED数码管显示)_实验报告

电子设计自动化(EDA)_数字时钟程序模块(LED数码管显示)_实验报告

电子设计自动化(EDA)—数字时钟LED数码管显示二、实验内容和实验目的1. 6个数码管动态扫描显示驱动2. 按键模式选择(时\分\秒)与闹钟(时\分)调整控制,3. 用硬件描述语言(或混合原理图)设计时、分、秒计数器模块、闹钟模块、按键控制状态机模块、动态扫描显示驱动模块、顶层模块。

要求使用实验箱左下角的6个动态数码管(DS6 A~DS1A)显示时、分、秒;要求模式按键和调整按键信号都取自经过防抖处理后的按键跳线插孔。

实验目的: 1)学会看硬件原理图, 2)掌握FPGA硬件开发的基本技能3)培养EDA综合分析、综合设计的能力三、实验步骤、实现方法(或设计思想)及实验结果主要设备: 1)PC机, 2)硬件实验箱, 3)Quartus II软件开发平台。

1.打开Quartus II , 连接实验箱上的相关硬件资源, 如下图1所示。

2.建立新文件, 选择文本类型或原理图类型。

3. 编写程序。

4.编译5. 仿真, 加载程序到芯片, 观察硬件输出结果(数码管显示)6.结果正确则完成。

若结果不正确, 则修改程序, 再编译, 直到正确。

模24计数器模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY count24 ISPORT(clk,en:IN STD_LOGIC;cout:OUT STD_LOGIC;hh,hl:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));END count24;ARCHITECTURE arc OF count24 ISSIGNAL a,b:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS(clk,en)BEGINhh<=a;hl<=b;IF(clk'EVENT AND clk='1') THENIF(en='1') THENIF(a="0010" AND b="0011") THENa<="0000";b<="0000";ELSE IF(b="1001") THENa<=a+'1';b<="0000";ELSE b<=b+'1';END IF;END IF;IF(a="0010" AND b="0010") THENcout<='1';ELSE cout<='0';END IF;END IF;END IF;END PROCESS;END arc;模60计数器模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;USE IEEE.STD_LOGIC_ARITH.ALL;ENTITY count60 ISPORT(clk,en:IN STD_LOGIC;cout:OUT STD_LOGIC;hh,hl:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));END count60;ARCHITECTURE arc OF count60 ISSIGNAL a,b:STD_LOGIC_VECTOR(3 DOWNTO 0);SIGNAL sout:STD_LOGIC;BEGINPROCESS(clk)BEGINhh<=a; hl<=b;IF(clk'EVENT AND clk='1') THENIF(en='1') THENIF(a="0101" AND b="1001") THENa<="0000";b<="0000";ELSE IF(b="1001") THENa<=a+'1';b<="0000";ELSE b<=b+'1';END IF;END IF;END IF;END IF;END PROCESS;sout<='1' WHEN a="0101" AND b="1001" ELSE '0';cout<=sout AND en;END arc;4-7显示译码模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY segment4to7 ISPORT(s:IN STD_LOGIC_VECTOR(3 DOWNTO 0);a,b,c,d,e,f,g:OUT STD_LOGIC);END segment4to7;ARCHITECTURE arc OF segment4to7 IS SIGNAL y:STD_LOGIC_VECTOR(6 DOWNTO 0); BEGINa<= y(6);b<= y(5);c<= y(4);d<= y(3);e<= y(2); f<= y(1);g<= y(0);PROCESS(s)BEGINCASE s ISWHEN "0000"=>y<="1111110"; WHEN "0001"=>y<="0110000"; WHEN "0010"=>y<="1101101"; WHEN "0011"=>y<="1111001"; WHEN "0100"=>y<="0110011"; WHEN "0101"=>y<="1011011"; WHEN "0110"=>y<="1011111"; WHEN "0111"=>y<="1110000"; WHEN "1000"=>y<="1111111"; WHEN "1001"=>y<="1111011"; WHEN OTHERS=>y<="0000000"; END CASE;END PROCESS;END arc;带闹钟控制模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY mode_adjust_with_alarm ISPORT (adjust,mode,clk1hz: IN STD_LOGIC;clkh,enh,clkm,enm,clks,enha: OUT STD_LOGIC;clkh_a,clkm_a:OUT STD_LOGIC;mode_ss: OUT STD_LOGIC_VECTOR(2 DOWNTO 0));END mode_adjust_with_alarm;ARCHITECTURE arc OF mode_adjust_with_alarm ISTYPE mystate IS (s0,s1,s2,s3,s4,s5);SIGNAL c_state,next_state: mystate;BEGINPROCESS (c_state)BEGINCASE c_state ISWHEN s0=> next_state <= s1; clkh<=clk1hz; clkm<=clk1hz; clks<=clk1hz;enh<='0'; enm<='0'; enha<='0'; clkh_a<= '0'; clkm_a<= '0'; mode_ss <="000";WHEN s1=> next_state <= s2; clkh<=adjust; clkm<= '0'; clks<='0';enh<='1'; enm<='0';enha<='0'; clkh_a<= '0';clkm_a<= '0'; mode_ss <="001";WHEN s2=> next_state <= s3; clkh<= '0'; clkm<=adjust; clks <= '0';enh<='0';enm<='1';enha<='0'; clkh_a<= '0'; clkm_a<= '0'; mode_ss <="010";WHEN s3=> next_state <= s4; clkh<= '0'; clkm<= '0'; clks<=adjust;enh<='0'; enm<='0';enha<='0'; clkh_a<= '0'; clkm_a<= '0'; mode_ss <="011";WHEN s4=> next_state <= s5; clkh<= clk1hz; clkm<= clk1hz; clks<=clk1hz;enh<='0';enm<='0';enha<='1'; clkh_a<=adjust; clkm_a<= '0'; mode_ss <="100";WHEN s5=> next_state <= s0; clkh<= clk1hz; clkm<= clk1hz; clks<=clk1hz;enh<='0'; enm<='0'; enha<='0'; clkh_a<= '0'; clkm_a<=adjust; mode_ss <="101";END CASE;END PROCESS;PROCESS (mode)BEGINIF (mode'EVENT AND mode='1') THENc_state<=next_state ;END IF;END PROCESS;END arc;扫描模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY scan ISPORT(clk256hz:IN STD_LOGIC;ss:OUT STD_LOGIC_VECTOR(2 DOWNTO 0));END scan;ARCHITECTURE arc OF scan ISTYPE mystate IS (s0, s1,s2,s3,s4,s5);SIGNAL c_state,next_state: mystate;BEGINPROCESS ( c_state )BEGINCASE c_state ISWHEN s0=> next_state <=s1; ss<="010";WHEN s1=> next_state <=s2; ss<="011";WHEN s2=> next_state <=s3; ss<="100";WHEN s3=> next_state <=s4; ss<="101";WHEN s4=> next_state <=s5; ss<="110";WHEN s5=> next_state <=s0; ss<="111";END CASE;END PROCESS;PROCESS (clk256hz)BEGINIF (clk256hz'EVENT AND clk256hz='1') THENc_state<=next_state ;END IF;END PROCESS;END arc;复用模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY mux ISPORT(hh,hl,mh,ml,sh,sl,hha,hla,mha,mla:IN STD_LOGIC_VECTOR(3 DOWNTO 0);ss,mode_ss:IN STD_LOGIC_VECTOR(2 DOWNTO 0);y:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);alarm:OUT STD_LOGIC);END mux;ARCHITECTURE arc OF mux ISSIGNAL a,hhtmp,hltmp,mhtmp,mltmp,shtmp,sltmp:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINPROCESS(mode_ss)BEGINCASE mode_ss ISWHEN "000"=>hhtmp<=hh; hltmp<=hl; mhtmp<=mh; mltmp<=ml; shtmp<=sh; sltmp<=sl;WHEN "001"=>hhtmp<=hh; hltmp<=hl; mhtmp<=mh; mltmp<=ml; shtmp<=sh; sltmp<=sl;WHEN "010"=>hhtmp<=hh; hltmp<=hl; mhtmp<=mh; mltmp<=ml; shtmp<=sh; sltmp<=sl;WHEN "011"=>hhtmp<=hh; hltmp<=hl; mhtmp<=mh; mltmp<=ml; shtmp<=sh; sltmp<=sl;WHEN "100"=> hhtmp<=hha; hltmp<=hla; mhtmp<=mha; mltmp<=mla; shtmp<=sh; sltmp<=sl;WHEN "101"=> hhtmp<=hha; hltmp<=hla; mhtmp<=mha; mltmp<=mla; shtmp<=sh; sltmp<=sl;WHEN OTHERS=>hhtmp<="0000";hltmp<="0000";mhtmp<="0000";mltmp<="0000";shtmp<="0000";sltmp<="0000"; END CASE;END PROCESS;PROCESS(ss)BEGINCASE ss ISWHEN "010"=> a <=hhtmp;WHEN "011"=> a <=hltmp;WHEN "100"=> a <=mhtmp;WHEN "101"=> a <=mltmp;WHEN "110"=> a <=shtmp;WHEN "111"=> a <=sltmp;WHEN OTHERS => a <="0000";END CASE;y<=a;END PROCESS;alarm<='1' WHEN ((hh=hha)AND(hl=hla)AND(mh=mha)AND(ml=mla)) ELSE '0';END arc;闪烁模块LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY blink_control ISPORT(ss,mode_ss:IN STD_LOGIC_VECTOR(2 DOWNTO 0);blink_en:OUT STD_LOGIC);END blink_control;ARCHITECTURE arc OF blink_control ISBEGINPROCESS (ss,mode_ss)BEGINIF(ss="010" AND mode_ss="001") THEN blink_en<='1';ELSIF(ss="011" AND mode_ss="001") THEN blink_en<='1';ELSIF(ss="100" AND mode_ss="010") THEN blink_en<='1';ELSIF(ss="101" AND mode_ss="010") THEN blink_en<='1';ELSIF(ss="110" AND mode_ss="011") THEN blink_en<='1';ELSIF(ss="111" AND mode_ss="011") THEN blink_en<='1';ELSIF(ss="010" AND mode_ss="100") THEN blink_en<='1';ELSIF(ss="011" AND mode_ss="100") THEN blink_en<='1';ELSIF(ss="100" AND mode_ss="101") THEN blink_en<='1';ELSIF(ss="101" AND mode_ss="101") THEN blink_en<='1';ELSE blink_en<='0';END IF;END PROCESS;END arc;Top文件LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY design3 ISPORT (mode,adjust,clk1hz,clk2hz,clk256hz,clk1khz:IN STD_LOGIC;alarm,a,b,c,d,e,f,g:OUT STD_LOGIC;ss:OUT STD_LOGIC_VECTOR(2 DOWNTO 0));END design3;ARCHITECTURE arc OF design3 ISCOMPONENT mode_adjust_with_alarm PORT (adjust,mode,clk1hz: IN STD_LOGIC;clkh,enh,clkm,enm,clks,enha: OUT STD_LOGIC;clkh_a,clkm_a:OUT STD_LOGIC;mode_ss: OUT STD_LOGIC_VECTOR(2 DOWNTO 0));END COMPONENT;COMPONENT scan PORT (clk256hz:IN STD_LOGIC;ss:OUT STD_LOGIC_VECTOR(2 DOWNTO 0));END COMPONENT;COMPONENT segment4to7 PORT (s: IN STD_LOGIC_VECTOR(3 DOWNTO 0);a,b,c,d,e,f,g: OUT STD_LOGIC);END COMPONENT;COMPONENT mux PORT(hh,hl,mh,ml,sh,sl,hha,hla,mha,mla:IN STD_LOGIC_VECTOR(3 DOWNTO 0);ss,mode_ss:IN STD_LOGIC_VECTOR(2 DOWNTO 0);y:OUT STD_LOGIC_VECTOR(3 DOWNTO 0);alarm:OUT STD_LOGIC);END COMPONENT;COMPONENT blink_control PORT(ss,mode_ss:IN STD_LOGIC_VECTOR(2 DOWNTO 0);blink_en:OUT STD_LOGIC);END COMPONENT;COMPONENT count24 PORT (clk,en:IN STD_LOGIC;cout:OUT STD_LOGIC;hh,hl:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));END COMPONENT;COMPONENT count60 PORT (clk ,en:IN STD_LOGIC;cout:OUT STD_LOGIC;hh,hl:OUT STD_LOGIC_VECTOR(3 DOWNTO 0));END COMPONENT;SIGNALclkh,enh,clkm,enm,clks,clkh_a,clkm_a,coutm,couts,coutm_en,couts_en,cout,vcc,coutma_en,coutma,alarm1,bli nk_en,blink_tmp,enha: STD_LOGIC;SIGNAL mode_ss,ss1:STD_LOGIC_VECTOR(2 DOWNTO 0);SIGNAL hh,hl,mh,ml,sh,sl,hha,hla,mha,mla,y,i:STD_LOGIC_VECTOR(3 DOWNTO 0);BEGINvcc<='1';coutm_en <= enh OR coutm;couts_en <= enm OR couts;coutma_en<= enha OR coutma;blink_tmp<=blink_en and clk2hz;i(3)<=y(3) OR blink_tmp;i(2)<=y(2) OR blink_tmp;i(1)<=y(1) OR blink_tmp;i(0)<=y(0) OR blink_tmp;ss<=ss1;alarm<=alarm1 AND clk1khz;u1:mode_adjust_with_alarmPORT MAP( adjust,mode,clk1hz,clkh,enh,clkm,enm,clks,enha,clkh_a,clkm_a,mode_ss);u2:count24 PORT MAP(clkh,coutm_en,cout,hh,hl);u3:count60 PORT MAP(clkm,couts_en,coutm,mh,ml);u4:count60 PORT MAP(clks,vcc,couts,sh,sl);u5:count24 PORT MAP(clkh_a,coutma_en,cout,hha,hla);u6:count60 PORT MAP(clkm_a,vcc,coutma,mha,mla);u7:mux PORT MAP(hh,hl,mh,ml,sh,sl,hha,hla,mha,mla,ss1,mode_ss,y,alarm1);u8:scan PORT MAP(clk256hz,ss1);u9:blink_control PORT MAP(ss1,mode_ss,blink_en);u10:segment4to7 PORT MAP(i,a,b,c,d,e,f,g);END arc;实验结果:数字钟包括正常的时分秒计时, 实验箱左下角的6个动态数码管(DS6 A~DS1A)显示时、分、秒。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

湖南工业大学理学院
实验名称熟悉QuartusII的图形输入法
实验地点理学楼210 实验时间2016.10.16 实验成绩
一、实验目的及任务
掌握QuartusII的使用方法
(1)熟悉图形输入法
(2)理解编译方法
(3)了解定时仿真
二、实验内容与步骤
(1)设计一个二选一数据选择器、全加法器。

(2)根据图形输入法编译和波形仿真。

三、实验电路或者实验源程序
二选一电路图:
全加器电路图:
四、实验结果二选一结果图:
全加器结果图:
四、实验结果
实验名称JK触发器的设计
实验地点理学楼210 实验时间2016.10.31 实验成绩
一、实验目的及任务
掌握QuartusII的VHDL语言描述输入法
(1)掌握VHDL语言描述输入法
(2)掌握VHDL语言
二、实验内容与步骤
(1)设计一个JK触发器
(2)根据VHDL语言描述输入法编译和波形仿真。

输入输出prn clr clk J K Q Qb
0 1 x x x 1 0
1 0 x x x 0 1
0 0 x x x x x
1 1 上升沿0 0 不变不变
1 1 上升沿0 1 0 1
1 1 上升沿 1 0 1 0
1 1 上升沿 1 1 翻转翻转
其中预置端prn 复位端clr 时钟端clk
三、实验电路或者实验源程序
源程序:
四、实验结果
四、实验结果
前半段
后半段
实验名称电子钟的VHDL程序设计
实验地点理学楼210 实验时间2016.11.10 实验成绩
一、实验目的及任务
掌握QuartusII的VHDL语言描述输入法
(1)掌握VHDL语言描述输入法
(2)掌握VHDL语言
(3)掌握VHDL语言描述和图形设计的结合
(4)设计一个含时、分、秒的时钟
(5)用QuartusII软件编译和波形仿真
二、实验内容与步骤
(1)设计电子钟的VHDL程序
(2)根据VHDL语言描述输入法编译和波形仿真。

三、实验电路或者实验源程序
源程序:
(1)60进制(分和秒):
(2)十进制VHDL:
(3)六进制VHDL:
(4)24进制(时):
(4)电子时钟顶层文件
四、实验结果
源程序:
四、实验结果
源程序:
四、实验结果
实验名称交通灯控制器实验
实验地点理学楼210 实验时间2016.12.12 实验成绩
一、实验目的及任务
(1)掌握使用并行下载程序
(2)掌握VHDL语言
(3)掌握时序逻辑电路的设计方法
(4)设计一个交通灯控制器,用LED显示控制过程
(5)掌握使用process进程
二、实验内容与步骤
(1)根据VHDL语言描述输入法编译和波形仿真
(2)将VHDL程序下载到FPGA芯片中
(3)连接连线,模拟观察交通灯控制的过程
三、实验电路或者实验源程序
(1)顶层模块图:
(2)数码管VHDL:
(3)状态VHDL:
四、实验结果
实验心得
在刚开始学习电子设计自动化那几节课,我感觉这课程挺无聊的,各种型号、各种构造、各种下载方式搞得我眼花缭乱。

在第五章开始学习VHDL编程语法的时候,虽然听得是很仔细,却总是感觉并没有真正了解。

当开始安排实验课程之后,才对这门课程有了更为深刻的认识,这个科目是个更偏向于实践的课程,自我感觉,实验需要赶上理论课程,因为我觉得在实验中,我能更全面的了解整个FPGA工程的构造,就像是面向对象编程的思想,先抽象出一个整体,在把各个方面的东西具体化,进而全面了解整个体统,而不是先把各个整体弄出来,然后再拼装成一个整体。

事实证明,我的想法是对的。

经过第二个实验之后,我觉得我已经了解FPGA 有了入门级的了解,并且书上的内容就像是查看数据手册一样,简单易懂。

但是在做实验之前,我只能像背课文一样,把每个知识点牢记于心,这样的效率和效果是极其低的。

所以,自我感觉,偏向实践类的科目不应该只是盲目的把理论课程上好,更应该在上课的同时开展实验,双管齐下,才能更有效果。

21。

相关文档
最新文档