乒乓球游戏机的设计与实现摘要:本文介绍了乒乓球游戏机的设计,并进行了程序仿真,实现一个乒乓球游戏机的规定功能。设计的乒乓球游戏机能够正确判断与显示乒乓球的位置,并能自动裁判和记分的装置,可应用于实际的乒乓球游戏比赛中。程序通过调试运行,实现了设计目标。本论文对系统的功能设计、实现流程及正确使用都做了详细的描述。系统开发平台为MAX+PLUSII,程序设计语言为VHDL。关键词:乒乓球游戏机;设计;实现;VHDL;MAX+PLUSⅡ;DesignandrealizationoftabletennisgameplayerAbstract:Thisarticleintroducesthedesignofthetabletennisgameplayer,andcarriedoutsimulationprocedures,implementationoftheprovisionsofatabletennisgamefeatures.Designedtobeabletocorrectlyjudgethetabletennisgametableanddisplaythelocation,andcanautomaticallyappearandscoringdevices,canbeappliedtotheactualgameofTableTennisGame.Proceduredebuggingoperations,implementationofthedesignobjectives.Thisthesisdescribesindetailthefunctionofthesystemdesign,implementationandproperuseofflowaredescribedindetailtodo.SystemdevelopmentplatformfortheMAX+PLUSII,programminglanguageforVHDL..Keywords:tabletennisgameplayer;design;realization;VHDL;MAX+PLUSⅡ目录1引言............................................................11.1课题设计的目的.............................................11.2课题设计的内容.............................................22EDA、VHDA简介...................................................32.1EDA的发展概况.............................................32.2硬件描述语言---VHDL........................................33乒乓球游戏机设计过程............................................53.1设计规划...................................................53.2乒乓球实体的设计...........................................63.3状态机编程实现............................................73.4记分译器的设计...........................................103.5构造体的设计.............................................124系统仿真.......................................................144.1系统编译..................................................144.2系统有关波形的仿真........................................14结束语...........................................................17致谢.............................................................18参考文献.........................................................19附录.............................................................20《乒乓球游戏机的设计与实现》第1页共30页1引言08年奥运,在电视机前欢腾了半个晚上。看着白色的乒乓球在屏幕中央跳来跳去,心中的喜悦也在不断积累。又一枚金牌归我中华。课业繁重,但闲暇时,总喜欢在校园中徜徉,每每看到跳动的乒乓,就有种轻衫衬跳脱的轻松感。因此,看到这次的论文选题,不禁哑然失笑,两种风牛马不相及的事物,就这样在这里纠结了。乒乓球作为中国的国球,乒乓人才辈出。本课程设计就是以乒乓球为背景,利用所学的硬件知识完成一个乒乓球游戏机的设计。随着科学技术的发展,人类社会已进入到高度发达的信息化社会,信息社会的发展离不开电子产品的进步。现代电子产品的发展越来越快,各种新型电子元器件和智能化的电子产品已经在国民经济的各个领域和人民生活的各个方面得到了日益广泛的应用。实现这种进步的主要原因就是生产制造技术和电子设计技术的发展。其中电子玩具的发展也是在日益成熟。乒乓球游戏机控制电路是有甲、乙双方参赛,有裁判控制发“球”的三人乒乓球游戏机;它能完成自动裁判和自动计分是一个带数字显示的模拟游戏机。其结构简单、成本低、易操作,安全性强、无污染。乒乓球游戏机还能在娱乐的同时提高我们的反应、应变能力。具有良好的市场发展前景[1]。1.1课题设计的目的本文应用状态机,设计了一个乒乓球游戏机的状态机。状态机的实现是符合人的思维逻辑的,且简单明了[2]。计算机组成原理课程设计是重要的综合性实践教学环节。(1)通过该课程设计,结合计算机科学的理论、抽象和设计三种形态,进一步掌握计算机中各功能部件的工作原理和逻辑实现,熟悉乒乓球游戏机的基本工作原理。(2)通过该课程设计的学习,总结计算机组成原理课程的学习内容,运用所学的数字电路以及计算机组成和状态机的基本原理、基本知识和基本技巧,解决某一个具体的实际问题,培养综合分析和解决问题的能力。(3)为今后分析、设计、开发以及使用计算机打下坚实的基础。1.2课题设计的内容本文设计的是一个乒乓球游戏机的状态机。利用VHDL,不需要按照传统的设计方法进行烦琐的状态分配、绘制状态、化简状态方程等,就可以简单地根据MDS图直接对状态机进行描述。乒乓球游戏机可以实现如下功能。(1)该设计一个由甲、乙双方参赛,有裁判的3人乒乓球游戏机。(2)用8个(或更多个)LED排成一条直线,以中点为界,两人乒乓游戏机是用8个发光二极管代表乒乓球台,中间两个发光二极管兼做乒乓球网,用点亮的发光二极管按一定方向移动来表示球的运动,在游戏机的两侧个设置发球和击球开关,甲乙双方按乒乓球比赛规则来操作开关。(3)当“球”(点亮的那只LED)运动到某方的最后一位时,参赛者应能果断地按下位于自己一方的按钮开关,即表示启动球拍击球。当甲方按动乒乓球开关时,靠近甲方的第一个发光二极管亮,然后发光二极管由甲方方向依次点亮,代表乒乓球的移动。当球过网后按照设计者规定的球位乙方就可以击球。若乙方提前击球或者未击到球,则甲方得分。然后重新发球进行比赛。(4)设置自动记分电路,甲、乙双方各用7段译码管进行记分显示,每计满21分为1局,然后记分清零,重新开始新一局比赛。2EDA、VHDL简介2.1EDA发展概况电子设计技术的核心就是EDA技术,EDA是指以计算机为工作台,融合应用电子技术、计算机技术、智能化技术最新成果而研制成的电子CAD通用软件包,主要能辅助进行三方面的设计工作,即IC设计、电子电路设计和PCB设计。EDA技术已有30年的发展历程,大致可分为三个阶段。70年代为计算机辅助设计(CAD)阶段,人们开始用进行IC版图编辑、PCB布局布线,取代了手工操作。80年代为计算机辅助工程(CAE)阶段。与CAD相比,CAE除了有纯粹的图形绘制功能外,又增加了电路功能设计和结构设计,并且通过电气连接网络表将两者结合在一起,实现了工程设计。CAE的主要功能是:原理图输入,逻辑仿真,电路分析,自动布局布线,PCB后分析。90年代为电子系统设计自动化(EDA)阶段[2]。硬件描述语言HDL是相对于一般的计算机软件语言,如:C、PASCAL而言的。HDL语言使用与设计硬件电子系统的计算机语言,它能描述电子系统的逻辑功能、电路结构和连接方式。设计者可利用HDL程序来描述所希望的电路系统,规定器件结构特征和电路的行为方式;然后利用综合器和适配器将此程序编程能控制FPGA和CPLD内部结构,并实现相应逻辑功能的的门级或更底层的结构网表文件或下载文件。目前,就FPGA/CPLD开发来说,比较常用和流行的HDL主要有ABEL-HDL、AHDL和VHDL[3]。2.2硬件描述语言——VHDLVHDL的英文全名是Very-High-SpeedIntegratedCircuitHardwareDescriptionLanguage,诞生于1982年。1987年底,VHDL被IEEE和美国国防部确认为标准硬件描述语言。自IEEE公布了VHDL的标准版本,IEEE-1076(简称87版)之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具可以和VHDL接口。此后VHDL在电子设计领域得到了广泛的接受,并逐步取代了原有的非标准的硬件描述语言。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本,(简称93版)。现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。专家认为,在新的世纪中,VHDL于Verilog语言将承担起大部分的数字系统设计任务。VHDL主要用于描述数字系统的结构,行为,功能和接口。除了含有许多具有硬件特征的语句外,VHDL的语言形式和描述风格与句法是十分类似于一般的计算机高级语言。VHDL的程序结构特点是将一项工程设计,或称设计实体(可以是一个元件,一个电路模块或一个系统)分成外部(或称可是部分,及端口)和内部(或称不可视部分),既涉及实体的内部功能和算法完成部分[4]。在对一个设计实体定义了外部界面后,一旦其内部开发完成后,其他的设计就可以直接调用这个实体。这种将设计实体分成内外部分的概念是VHDL系统设计的基本点。应用VHDL进行工程设计的优点是多方面的[4]。(1)与其他的硬件描述语言相比,VHDL具有更强的行为描述能力,从而决定了他成为系统设计领域最佳的硬件描述语言。强大的行为描述能力是避开具体的器件结构,从逻辑行为上描述和设计大规模电子系统的重要保证。(2)VHDL丰富的仿真语句和库函数,使得在任何大系统的设计早期就能查验设计系统的功能可行性,随时可对设计进行仿真模拟。(3)VHDL语句的行为描述能力和程序结构决定了他具有支持大规模设计的分解和已有设计的再利用功能。符合市场需求的大规模系统高效,高速的完成必须有多人甚至多个代发组共同并行工作才能实现。(4)对于用VHDL完成的一个确定的设计,可以利用EDA工具进行逻辑综合和优化,并自动的把VHDL描述设计转变成门级网表。(5)VHDL对设计的描述具有相对独立性,设计者可以不懂硬件的结构,也不必管理最终设计实现的目标器件是什么,而进行