EDA课程设计_按键游戏机.doc
文本预览下载声明
广东海洋大学2010 ——2011学年第一学期
《 EDA 》课程考试设计答卷纸
课程号: 1610003-1 □ 考试 √ A卷 □ 闭卷 √ 考查 □ B卷 √ 开卷
题 号 一 二 三 四 五 六 七 八 九 十 总分 阅卷教师 各题分数 0 5 5 40 40 5 5 100 实得分数 注意:1、须在限定的日期、时间之前交卷;2、设计程序、仿真图打印稿附在卷后上交;3、其他答案可以打印在本答卷纸上;4、原理图可以粘贴在本答卷纸上;
请写出自己设计项目(控制器)名称;
答:我的设计项目是:按键游戏机(按键控制)。
请描述本设计项目(控制器)的功能和性能(5分);
答:假设点阵做为基本显示屏,一个发光点表示一个图形,完成的基本功能:下落、左右移动、消行和显示得分情况,当某一列到顶时游戏结束。画出本设计项目(控制器)的电原理图(5分);
打印的VHDL设计程序及注释(40分);(附在卷后上交)
打印的仿真波形(如:Max+PLUS II)(40分);(附在卷后上交)
列出参考文献(5分);
【1】潘松. EDA 技术与VHDL. 北京:清华大学出版社
【2】延明. 数字逻辑设计实验与EDA技术. 北京:北京邮电大学出版社
总结自己的设计(5分);
答:这是本学期的EDA设计,使用VHDL进行设计。开始两个星期,几乎没有写代码,首先我要搞清自己的设计思路,开始想了几个思路,后来发现不是很好,所以后来都改了,重新编写,重新编译。编译通过了,最后是仿真,所用的时间也不比设计少。因为一个设计的测试验证是非常重要的。有效的测试可以助我们快速的完成或改善设计。所以之后又写了一个Testbenches测试代码来通过Modelsim软件实现可靠的验证。我的代码比较简单,自己觉得很满意,但是仍然有许多需要改进和扩展的地方。这次设计使自己更加了解VHDL了,也学会了Quartus Ⅱ设计和modelsim仿真。无论做什么实验,都要有个好习惯,例如建立好工程放在指定地方,别总是摆在桌面。有时候好的习惯决定了实验的成败,好习惯也能提高办事效率,事半功倍。所以今后的很多实验都要态度端正,养成良好的习惯。
顶层文件KEYGAME:
LIBRARY IEEE;
USE IEEE.STD_LOGIC_1164.ALL;
USE IEEE.STD_LOGIC_SIGNED.ALL;
ENTITY KEYGAME IS
PORT(CLK : IN STD_LOGIC; -----------低频时钟
RESET : IN STD_LOGIC; -----------开始复位键
LEFT : IN STD_LOGIC; -----------左移
RIGHT : IN STD_LOGIC; -----------右移
COL : OUT STD_LOGIC_VECTOR(0 TO 3); ---------- 列
ROW : OUT STD_LOGIC_VECTOR(0 TO 3); ---------- 行
DISP : OUT STD_LOGIC_VECTOR(6 DOWNTO 0);-------- 数码管显示分数
CAT : OUT STD_LOGIC_VECTOR(5 DOWNTO 0) ------数码管选择
);
END KEYGAME;
ARCHITECTURE ARCH OF KEYGAME IS
SIGNAL FENSHU : INTEGER RANGE 0 TO 15;
SIGNAL STA0,STA1,STA2,STA3 : STD_LOGIC_VECTOR(0 TO 3) ;
COMPONENT -----------元件例化说明
FUNCTIONS PORT(CLK :IN STD_LOGIC;
RESET :IN STD_LOGIC;
LEFT :IN STD_LOGIC;
RIGHT :IN STD_LOGIC;
SCORES :OUT INTEGER RANGE 0 TO 15;
STA0 : OUT STD_LOGIC_VECTOR(0 TO 3) ;
STA1 : OUT STD_LOGIC_VECTOR(0 TO 3) ;
STA2 : OUT STD_LOGIC_VECTOR(0 TO 3) ;
STA3 : OUT STD_LOGIC_VECTOR(0 TO 3)
);
END COMPONEN
显示全部