成功的途径有很多种,抄也是一种捷径!
职业技术学院。
学生课程设计报告。
课程名称: 基于vhdl四路抢答器
专业班级: 电子102
姓名: xxxxxxxxxx
学号: xxxxxxxxxxxxx
学期: 2011-2012-2
指导教师: xxxxxxxxxx
目录。1.课程设计题目和要求3
2.课程设计报告内容3
2.1方案设计与论证3
2.2单元模块设计3
2.3主电路原理图9
2.4器件编程与**9
2.5性能测试与分析9
3.总结94.致谢10
5.参考文献10
i题目:基于vhdl四路抢答器的设计。
1.课程设计的目的和要求:
1)设计一个可容纳4组参赛的数字式抢答器,每组设一个按钮,供抢答使用。
2)具有第一信号鉴别和锁存功能,使除第一抢答者外的按钮不起作用。
3)设置一个主持人“复位”按钮,主持人复位后,开始抢答,第一信号鉴别锁存电路得到信号后,有指示灯显示抢答组别,扬声器发出声音。
2.课程设计报告内容:
1)方案设计与论证:
将该任务设计的为一个四路抢答器,分成三个模块进行设计:抢答鉴别模块、选择模块和报警模块(vhdl语言编程)。
2)单元模块设计:
a.抢答鉴别模块:
1、vhdl源程序。
library ieee;
use entity jdjb is
port( clk2,rst: in std_logic;
s: in std_logic_vector(3 downto 0);
warn: buffer std_logic;
states: out std_logic_vector(3 downto 0) )
end qdjb;
architecture one of qdjb is
signal so: std_logic_vector(3 downto 0);
beginprocess(clk2,s,)
beginif rst='0' then
so<="0000";
elsif clk2'event and clk2'=1' then
if so="0000" then
if s/="0000" then
so<=s;
end if;
end if;
end if;
warn<=so(0)or so(1) or so(2) or so(3);
case so is
when "0001"=>xuanshou<="0001";
when "0010"=>xuanshou<="0010";
when "0100"=>xuanshou<="0011";
when "1000"=>xuanshou<="0100";
when others=>xuanshou<="0000";
end case;
end process;
end one;
2、**图:
b.数据选择模块:
1、vhdl源程序:
library ieee;
use use
entity sjxz is
port ( a,b,c: in std_logic_vector(3 downto 0);
clk: in std_logic;
s: out std_logic_vector(1 downto 0);
y: out std_logic_vector(3 downto 0) )
end sjxz;
architecture one of sjxz is
signal count: std_logic_vector (1 downto 0);
begins<=count;
process(clk,count)
beginif clk'event and clk='1' then
if count>="10" then
count<="00";
else count<=count+1;
end if;
end if;
case count is
when "00"=>y<=a;
when "01"=>y<=b;
when "10"=>y<=c;
when others=>null;
end case;
end process;
end one;
2、**图:
1、vhdl源程序:
library ieee;
use use
entity bj is
port( i,clk: in std_logic;
q: out std_logic);
end bj;
architecture beh**e of bj is
signal warn: std_logic;
signal n: integer range 0 to 700;
beginq<= warn;
process (clk)
beginif clk'event and clk='1' then
if i='0' then
warn <=0';
elsif (i='1'and n<=700) then
warn <=1';
n<=n+1;
elsewarn <=0';
end if;
end if;
end process;
end beh**e;
2、**图:
4)器件编程与**:
将编译好的模块程序**到cpld中:device(epf10k10lc84-3)选取要与硬件对应,否则会导致实验失败,连线做硬件实验。
5)性能测试与分析:
按下rst键观察数码管是否复位并开始倒计时,蜂鸣器是否发出提示声;按下s0,观察数码管是否显示1,再按s1,数码管均不改变显示,按下四个抢答键时,蜂鸣器是否发出报警;按下rst键,等待计时时间到,观察是否显示00,蜂鸣器是否发出报警。
3.总结:在这次eda设计与实践课程中,通过对qutusu6.0的使用,让我加深理解了vhdl程序设计的步骤和原理。
我们的题目是四路抢答器设计,刚开始一头雾水,通过查资料和借鉴前辈的作品,我一步一步从迷茫到困惑再到柳暗花明,从一点一点中学习,一点一点进步。我发现做学问不可以迷信,要有怀疑一切的态度,并且要知其然知其所以然,静下心来,仔细研究,才能有所发现。
编写程序是一定要思路清晰,在该设计的计时模块正是这一点的体现,一步一步来,不可急于求成,在遵守规则并有章可循的前提下,大胆发挥勇于尝试,对于出现的错误一定要研究不可放过,此时放过下次还会出现。不断总结才能不断进步。
总的来说,这次设计的抢答器还是比较成功的,在设计中遇到了很多问题,最后在老师的指导以及我们大家不懈努力下,终于迎刃而解,心中的成就感,不说也都明白。平时所学的知识有了实用的价值,达到了理论与实际相结合的目的,不仅学到了不少知识,而且锻炼了自己的能力。同时为以后的毕业设计打下了坚实的基础。
4.致谢:在这次的eda课程设计过程中,我要感谢老师多次的教导,去学习和怎样使用该软件,也要感谢同学们的热情帮助,才使我顺利完成设计。
1)延明,张亦华。数字电路eda技术入门。北京。北京邮电大学出版社。2006.
2)章彬宏。eda应用技术。北京:北京理工大学出版社,2007.
3)王振红。vhdl数字电路设计与应用实践教程。北京。机械工业出版社。
4)焦素梅,eda应用技术。北京。清华大学出版社。2005.
EDA课程设计
题目一 数字钟设计 学号1 15 一 实验目的。学习并掌握数字钟的原理 设计方法。二 实验内容。计数始终由模60秒计数器 模60分计数器 模24小时计数器 报时模块 分 时设定模块及输出显示模块构成。可以采用同步计数器或异步计数器设计方法。三 实验要求。计时范围为0小时0分0秒至23小时59分59秒...
eda课程设计
哈尔滨工业大学 威海 信电学院电子信息工程。一 软硬件介绍。1软件部分介绍。1.1 quartus ii 是altera公司的综合性pld fpga开发软件,支持原理图 vhdl veriloghdl以及ahdl altera hardware description language 等多种设计输...
eda课程设计
目录。1 引言 2 1.1 课程设计的目的与任务 2 1.2 课程设计的内容 2 1.3课程设计仪器设备 2 1.4 课程设计的题目 2 1.5 方案的选择 2 2设计方案 3 2.1 设计原理 3 2.2各功能模块的原理及其源程序 3 2.2.1控制模块 3 2.2.2分频模块 4 2.2.3计时...