项目背景及可行性分析
项目名称:
手舞足蹈跳舞机
项目的主要内容:在游戏厅里转一圈不难发现,总会有几个少男少女在跳舞机前手舞足蹈,四周的观众围得水泄不通。劲爆的音乐,富有青春气息的舞姿使跳舞机游戏极其拉风,也正因为如此,跳舞机市场前景非常看好。
我们的目标就是设计一个基于FPGA的跳舞机。伴随着音乐的节奏,跳舞机的LCD显示器上会出现一个个方向不同的箭头符号,引导玩家完成相应的舞蹈动作,玩家可以在跳舞机上尽情地手舞足蹈,而跳舞机的
压力传感器和
光传感器会忠实地捕捉玩家的动作,转换器将处理过后的动作信息传递给CPU,CPU根据游戏规则,公正地给玩家评分,LCD则会公布玩家的得分情况。在游戏进行的过程中,LED会随着音乐节奏的快慢不停地调整发光节奏,竭力为玩家营造出绚丽的游戏氛围;扬声器也会不停地为玩家呐喊助威,尤其是玩家表现出色时,扬声器会不遗余力地为玩家喝彩。
首先我们要设计一个soc,片上系统的某些功能模块可以使用预定制模块IP核,例如MicroBlaze(我们选择它作为CPU)就可以使用Xilinx公司提供的IP核来实现;当然,我们的系统中也存在独立设计的系统结构,例如PPU(图像处理器)。该系统脱离了pc,这样大大降低了系统的成本与功耗,减小了体积,而且软硬件的更新比较方便。除了完成硬件设计之外,我们还有大量工作需要在soc上用软件完成,例如移植操作系统、编写游戏软件框架和跳舞机游戏软件等。
进展情况:现在处于模块设计阶段
项目关键技术及创新点的论述
要处理大量的图像文件,其中,图层间的α运算、图像的卷动等图形图像运算会频繁发生,如果这些运算都交给CPU处理,就会占用大量的CPU资源,会破坏图像显示的连贯性。我们引入PPU,用于将上述繁重的计算任务从CPU分离出来,从而提高系统的性能。
声像同步也是项目的关键技术之一:SoC集成的Mp3 Decoder将游戏音乐文件解码为PCM流,PCM流传输到两块同样大小的缓冲区(暂且假设每块缓冲区的大小为1K),如下图所示,这两块缓冲区相当于构成一个循环队列,一块缓冲区的PCM流文件播放完以后,接着播放另一个缓冲区中的流文件。在切换缓冲区时,会产生中断,在这个中断周期,系统渲染新的图像帧,从而实现声像像同步。
游戏开发Framework:这是在该硬件驱动上实现的一组API,它是独立于跳舞机游戏的,提供游戏开发的常用接口,规定了游戏开发的模型。
技术成熟性和可靠性论述:
目前市场上有很多基于PC的跳舞机的设计案例可以参考(当中的PPU部件等关键功能模块可以参考任天堂公司红白机的设计),技术已经相当成熟。
项目实施方案
方案基本功能框图及描述
硬件功能框图及描述
Compact Flash(CF) Card:
CF卡扮演只读存储器的角色,用于存储游戏文件;游戏文件分为三个部分:第一部分是控制程序,这一部分供CPU(MicroBlaze)执行;第二部分是位图文件,这一部分由PPU处理;第三部分是音乐文件,其中MP3格式的文件交给图中所示的MP3 Decoder处理。
之所以使用CF卡作为ROM,是因为CF卡可以很方便地从系统中取出,并与PC兼容,这样容易实现游戏软件的更新。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉