EDA课程设计——篮球球比赛计分器
<<电子设计自动化EDA技术>>课程
设计报告
题目: 篮球比赛记分牌
姓 名: 院 系: 专 业: 学 号: 指导教师:
完成时间:
年 月
日
1
设计题目 篮球比赛记分牌 用PLD器件EP1K10TC100-3及7段译码显示数码管,设计一个篮球比赛记分牌,具体要求如下: 设计要求 1、 根据比赛实际情况记录两队得分,罚球进的1分,进球的2分; 2、 记分牌要具有纠错功能,能减1分、2分功能; 3、 利用3个译码显示管输出比赛的分; (包括:设计方案`上机设计与仿真结果`硬件实验方案,及实验结果`收获`和体会) EDA技术以硬件描述语言来描述系统级设计,采用自顶向下的设计方法,并支持系统设计过程 仿真和高层综合。VHDL语言具有具有很强的行为描述能力和多层次描述硬件功能的能力,是系统设计领域中使用最多的硬件描述语言之一;具有标准、规范等优势,能在设计的各个阶段对电路系统进行仿真和模拟,使设计者在系统的设计早期就能检查设计系统的功能,极大的减少了可能发生的错误,减少了开
2
发成本。 设计方案: 利用一个D触发器,3个4位二进制全加器,一个二选一数据选择器,3个七段译码显示管组成电路,此电路具有加减、复位、显示等功能。能够满足比赛的实际要求。 语指 导教评师评定课 成程绩 设计等级 目录
1 课程设计题目`内容与要求……………………… 1.1 设计内容 1.2 具体要求
2系统设计………………………… 2.1 设计思路
3
2.2 系统原理
3 系统实现……………………………………………
4 系统仿真……………………………………………
5硬件验证(操作)说明………………………………
6 总结…………………………………………………
7参考书目……………………………………………
一、 课程设计题目、内容与要求
1.1课程设计的题目:篮球比赛记分牌 1.2课程设计内容:
1、 根据比赛实际情况记录两队得分,罚球进的1分,进球的2分;
2、 记分牌要具有纠错功能,能减1分、2分功能;
4
3、 利用3个译码显示管输出比赛的分;
二、 系统设计
2.1设计思路:
篮球比赛记分牌是记录两队比赛的得分情况,并能够进行纠错功能;根据系统设计的要求,篮球记分牌的电路原理框图如下:
2.2 系统原理与设计说明 系统各个模块的功能如下:
1、D触发器电路模块实现翻转功能当出错时,输出为1,使电路回到上一个正确的状态。
2、4为二进制全加器电路模块实现加法计数功能。
5
3、移位寄存器电路模块保存比赛两队得分情况的4个相邻状态,出错时将调用上一个正确状态。
4、二选一数据选择器电路模块 用来控制移位寄存器 5、 LED数码管驱动电路模块
三、系统实现
各模块电路的源程序如下: 1、D触发器电路模块及程序:
set输入(Q=1),清零应该可以用复位键reset吧(Q=0)。 library ieee;
entity sync_rsdff is
port(d,clk : in std_logic; set : in std_logic; reset: in std_logic; q,qb : out std_logic); end sync_rsdff;
architecture rtl_arc of sync_rsdff is begin
process(clk) begin
if (clk'event and clk='1') then if(set='0' and reset='1') then q<='1'; qb<='0';
elsif (set='1' and reset='0') then q<='0'; qb<='1'; else
6
q<=d;
qb<=not d; end if; end if;
end process; end rtl_arc;
2、 移位寄存器模块电路及程序:
library IEEE;
entity shft_reg is
port ( DIR : in std_logic; CLK : in std_logic; CLR : in std_logic; SET : in std_logic; CE : in std_logic; LOAD : in std_logic; SI : in std_logic; DATA : in std_logic_vector(3 downto 0); data_out : out std_logic_vector(3 downto 0) );
end shft_reg;
architecture shft_reg_arch of shft_reg is
signal TEMP_data_out : std_logic_vector(3 downto 0); begin process(CLK) begin
if rising_edge(CLK) then if CE = '1' then if CLR = '1' then
TEMP_data_out <= \"0000\"; elsif SET = '1' then
7
TEMP_data_out <= \"1111\"; elsif LOAD = '1' then
TEMP_data_out <= DATA; else
if DIR = '1' then
TEMP_data_out <= SI & TEMP_data_out(3 downto 1); else
TEMP_data_out <= TEMP_data_out(2 downto 0) & SI; end if; end if; end if; end if;
end process;
data_out <= TEMP_data_out; end architecture;
3、二选一数据选择器电路模块及程序:
entity mux is
port(do,d1:in bit; sel:in bit; q:out bit); end mux;
architecture a of mux is begin
q<=(do and sel)or(not sel and d1); end a;
4、加法计数器的电路模块及程序:
LIBRARY IEEE;
8
ENTITY add4 IS
PORT(a1,a2,a3,a4:IN STD_LOGIC; b1,b2,b3,b4:IN STD_LOGIC;
sum1,sum2,sum3,sum4:OUT STD_LOGIC; cout4:OUT STD_LOGIC); END add4;
ARCHITECTURE add_arc OF add4 IS
SIGNAL cout1,cout2,cout3:STD_LOGIC; COMPONENT halfadd
PORT(a,b:IN STD_LOGIC;
sum,hcarry:OUT STD_LOGIC); END COMPONENT; COMPONENT fulladd
PORT(in1,in2,cin:STD_LOGIC;
fsum,fcarry:OUT STD_LOGIC); END COMPONENT; BEGIN
u1:halfadd PORT MAP(a=>a1,b=>b1,sum=>sum1,hcarry=>cout1); u2:fulladd MAP(in1=>a2,in2=>b2,cin=>cout1,fsum=>sum2,fcarry=>cout2);
u3:fulladd MAP(in1=>a3,in2=>b3,cin=>cout2,fsum=>sum3,fcarry=>cout3);
u4:fulladd MAP(in1=>a4,in2=>b4,cin=>cout3,fsum=>sum4,fcarry=>cout4);
END add_arc;
5、七段译码电路及程序:
library ieee;
entity deled is port(
datain:in std_logic_vector(3 downto 0); qout:out std_logic_vector(6 downto 0) ); end deled;
architecture func of deled is begin
process(datain)
9
PORT PORT PORT
begin
if datain= \"0000\" then qout<=\"1111110\"; elsif datain= \"0001\" then qout<=\"0110000\"; elsif datain= \"0010\" then qout<=\"1101101\"; elsif datain= \"0011\" then qout<=\"1111001\"; elsif datain= \"0100\" then qout<=\"0110011\"; elsif datain= \"0101\" then qout<=\"1011011\"; elsif datain= \"0110\" then qout<=\"1011111\"; elsif datain= \"0111\" then qout<=\"1110000\"; elsif datain= \"1000\" then qout<=\"1111111\"; elsif datain= \"1001\" then qout<=\"1111011\"; else null; end if;
end process; end func;
四、系统仿真
1、D触发器电路模块仿真波形:
2、移位寄存器模块电路仿真波形:
3、二选一数据选择器电路模块仿真波形:
10
4、加法计数器的电路模块仿真波形:
5、七段译码电路仿真波形:
五﹑硬件验证说明
这次设计采用的硬件电路有芯片EP1K10TC100-3,实验板上标准时钟电路、LED 显示等,
11
六、总结 七、参考书目
[1]《PLD与数字系统设计》李辉 西安电子科技大学出版社 2005
[2]《EDA技术及可编程逻辑器件应用实训》沈明山 北京科学出版社 2004 [3]《VHDL数字系统设计与高层次综合》林敏 方颖立著北京:电子工业出版社 2002
[4]《VHDL程序设计》曾繁泰 陈美金著北京: 清华大学出版社 2001 [5]《EDA技术实验与课程设计》曹昕燕 周风臣 清华大学出版社 2005 [6]《PLD器件与EDA技术》李冬梅 北京广播学院出版社2000
12
因篇幅问题不能全部显示,请点此查看更多更全内容