EDA课程设计 篮球球比赛计分器.docx
《EDA课程设计 篮球球比赛计分器.docx》由会员分享,可在线阅读,更多相关《EDA课程设计 篮球球比赛计分器.docx(13页珍藏版)》请在冰豆网上搜索。
EDA课程设计篮球球比赛计分器
<<电子设计自动化EDA技术>>课程
设计报告
题目:
篮球比赛记分牌
姓名:
院系:
专业:
学号:
指导教师:
完成时间:
年月日
设计题目
篮球比赛记分牌
设计要求
用PLD器件EP1K10TC100-3及7段译码显示数码管,设计一个篮球比赛记分牌,具体要求如下:
1、根据比赛实际情况记录两队得分,罚球进的1分,进球的2分;
2、记分牌要具有纠错功能,能减1分、2分功能;
3、利用3个译码显示管输出比赛的分;
设计过程
(包括:
设计方案`上机设计与仿真结果`硬件实验方案,及实验结果`收获`和体会)
EDA技术以硬件描述语言来描述系统级设计,采用自顶向下的设计方法,并支持系统仿真和高层综合。
VHDL语言具有具有很强的行为描述能力和多层次描述硬件功能的能力,是系统设计领域中使用最多的硬件描述语言之一;具有标准、规范等优势,能在设计的各个阶段对电路系统进行仿真和模拟,使设计者在系统的设计早期就能检查设计系统的功能,极大的减少了可能发生的错误,减少了开发成本。
设计方案:
利用一个D触发器,3个4位二进制全加器,一个二选一数据选择器,3个七段译码显示管组成电路,此电路具有加减、复位、显示等功能。
能够满足比赛的实际要求。
评定成绩
指导教师评语
课程设计等级
1课程设计题目`内容与要求………………………
1.1设计内容
1.2具体要求
2系统设计…………………………
2.1设计思路
2.2系统原理
3系统实现……………………………………………
4系统仿真……………………………………………
5硬件验证(操作)说明………………………………
6总结…………………………………………………
7参考书目……………………………………………
一、课程设计题目、内容与要求
1.1课程设计的题目:
篮球比赛记分牌
1.2课程设计内容:
1、根据比赛实际情况记录两队得分,罚球进的1分,进球的2分;
2、记分牌要具有纠错功能,能减1分、2分功能;
3、利用3个译码显示管输出比赛的分;
二、系统设计
2.1设计思路:
篮球比赛记分牌是记录两队比赛的得分情况,并能够进行纠错功能;根据系统设计的要求,篮球记分牌的电路原理框图如下:
2.2系统原理与设计说明
系统各个模块的功能如下:
1、D触发器电路模块实现翻转功能当出错时,输出为1,使电路回到上一个正确的状态。
2、4为二进制全加器电路模块实现加法计数功能。
3、移位寄存器电路模块保存比赛两队得分情况的4个相邻状态,出错时将调用上一个正确状态。
4、二选一数据选择器电路模块用来控制移位寄存器
5、LED数码管驱动电路模块
三、系统实现
各模块电路的源程序如下:
1、D触发器电路模块及程序:
set输入(Q=1),清零应该可以用复位键reset吧(Q=0)。
libraryieee;
useieee.std_logic_1164.all;
entitysync_rsdffis
port(d,clk:
instd_logic;
set:
instd_logic;
reset:
instd_logic;
q,qb:
outstd_logic);
endsync_rsdff;
architecturertl_arcofsync_rsdffis
begin
process(clk)
begin
if(clk'eventandclk='1')then
if(set='0'andreset='1')then
q<='1';
qb<='0';
elsif(set='1'andreset='0')then
q<='0';
qb<='1';
else
q<=d;
qb<=notd;
endif;
endif;
endprocess;
endrtl_arc;
2、移位寄存器模块电路及程序:
libraryIEEE;
useIEEE.std_logic_1164.all;
entityshft_regis
port(
DIR:
instd_logic;
CLK:
instd_logic;
CLR:
instd_logic;
SET:
instd_logic;
CE:
instd_logic;
LOAD:
instd_logic;
SI:
instd_logic;
DATA:
instd_logic_vector(3downto0);
data_out:
outstd_logic_vector(3downto0)
);
endshft_reg;
architectureshft_reg_archofshft_regis
signalTEMP_data_out:
std_logic_vector(3downto0);
begin
process(CLK)
begin
ifrising_edge(CLK)then
ifCE='1'then
ifCLR='1'then
TEMP_data_out<="0000";
elsifSET='1'then
TEMP_data_out<="1111";
elsifLOAD='1'then
TEMP_data_out<=DATA;
else
ifDIR='1'then
TEMP_data_out<=SI&TEMP_data_out(3downto1);
else
TEMP_data_out<=TEMP_data_out(2downto0)&SI;
endif;
endif;
endif;
endif;
endprocess;
data_out<=TEMP_data_out;
endarchitecture;
3、二选一数据选择器电路模块及程序:
entitymuxis
port(do,d1:
inbit;
sel:
inbit;
q:
outbit);
endmux;
architectureaofmuxis
begin
q<=(doandsel)or(notselandd1);
enda;
4、加法计数器的电路模块及程序:
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYadd4IS
PORT(a1,a2,a3,a4:
INSTD_LOGIC;
b1,b2,b3,b4:
INSTD_LOGIC;
sum1,sum2,sum3,sum4:
OUTSTD_LOGIC;
cout4:
OUTSTD_LOGIC);
ENDadd4;
ARCHITECTUREadd_arcOFadd4IS
SIGNALcout1,cout2,cout3:
STD_LOGIC;
COMPONENThalfadd
PORT(a,b:
INSTD_LOGIC;
sum,hcarry:
OUTSTD_LOGIC);
ENDCOMPONENT;
COMPONENTfulladd
PORT(in1,in2,cin:
STD_LOGIC;
fsum,fcarry:
OUTSTD_LOGIC);
ENDCOMPONENT;
BEGIN
u1:
halfaddPORTMAP(a=>a1,b=>b1,sum=>sum1,hcarry=>cout1);
u2:
fulladdPORTMAP(in1=>a2,in2=>b2,cin=>cout1,fsum=>sum2,fcarry=>cout2);
u3:
fulladdPORTMAP(in1=>a3,in2=>b3,cin=>cout2,fsum=>sum3,fcarry=>cout3);
u4:
fulladdPORTMAP(in1=>a4,in2=>b4,cin=>cout3,fsum=>sum4,fcarry=>cout4);
ENDadd_arc;
5、七段译码电路及程序:
libraryieee;
useieee.std_logic_1164.all;
entitydeledis
port(
datain:
instd_logic_vector(3downto0);
qout:
outstd_logic_vector(6downto0)
);
enddeled;
architecturefuncofdeledis
begin
process(datain)
begin
ifdatain="0000"thenqout<="1111110";
elsifdatain="0001"thenqout<="0110000";
elsifdatain="0010"thenqout<="1101101";
elsifdatain="0011"thenqout<="1111001";
elsifdatain="0100"thenqout<="0110011";
elsifdatain="0101"thenqout<="1011011";
elsifdatain="0110"thenqout<="1011111";
elsifdatain="0111"thenqout<="1110000";
elsifdatain="1000"thenqout<="1111111";
elsifdatain="1001"thenqout<="1111011";
elsenull;
endif;
endprocess;
endfunc;
四、系统仿真
1、D触发器电路模块仿真波形:
2、移位寄存器模块电路仿真波形:
3、二选一数据选择器电路模块仿真波形:
4、加法计数器的电路模块仿真波形:
5、七段译码电路仿真波形:
五﹑硬件验证说明
这次设计采用的硬件电路有芯片EP1K10TC100-3,实验板上标准时钟电路、LED显示等,
六、总结
七、参考书目
[1]《PLD与数字系统设计》李辉西安电子科技大学出版社2005
[2]《EDA技术及可编程逻辑器件应用实训》沈明山北京科学出版社2004
[3]《VHDL数字系统设计与高层次综合》林敏方颖立著北京:
电子工业出版社2002
[4]《VHDL程序设计》曾繁泰陈美金著北京:
清华大学出版社2001
[5]《EDA技术实验与课程设计》曹昕燕周风臣清华大学出版社2005
[6]《PLD器件与EDA技术》李冬梅北京广播学院出版社2000