欢迎来到三一文库! | 帮助中心 三一文库31doc.com 一个上传文档投稿赚钱的网站
三一文库
全部分类
  • 研究报告>
  • 工作总结>
  • 合同范本>
  • 心得体会>
  • 工作报告>
  • 党团相关>
  • 幼儿/小学教育>
  • 高等教育>
  • 经济/贸易/财会>
  • 建筑/环境>
  • 金融/证券>
  • 医学/心理学>
  • ImageVerifierCode 换一换
    首页 三一文库 > 资源分类 > DOC文档下载  

    [工学]基于NIOS II的俄罗斯方块_毕业论文.doc

    • 资源ID:1977133       资源大小:2.78MB        全文页数:49页
    • 资源格式: DOC        下载积分:6
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录   微博登录  
    二维码
    微信扫一扫登录
    下载资源需要6
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    [工学]基于NIOS II的俄罗斯方块_毕业论文.doc

    论文编码(原论文分类号)论文编码(原论文分类号):TP39 首都师范大学本科学生毕业论文首都师范大学本科学生毕业论文 基于基于 NIOS II 的俄罗斯方块的俄罗斯方块 设计与实现设计与实现 The Design and Implementation of Russian box Based on NIOS II 论文作者论文作者 姚瑶姚瑶 院院 系系 信息工程学院信息工程学院 专专 业业 计算机科学与技术计算机科学与技术 学学 号号 1061000101 指导老师指导老师 邱德慧邱德慧 完成日期完成日期 2010 年年 5 月月 10 日日 I 提要提要 俄罗新方块游戏是一种古老而又有趣的游戏,游戏软件不计其数,本设计的实现是 基于 NIOS II 的俄罗斯方块设计与实现,采用 SOPC 技术方案和基于 NIOS II 处理器开发 游戏,尝试着把 NIOS II 软核处理器系统应用到俄罗斯方块游戏中,实现对游戏的控制功 能。SOPC 即可编程片上系统,是一种特殊的嵌入式系统,它结合了 SOC 和 PLD、FPGA 各自的优点,具有多方面的特点,譬如,至少包含一个嵌入式处理器内核、丰富的 IP Core 资源可供选择、有足够的片上可编程逻辑资源、低功耗、微封装等优点,提高了应 用上的灵活性。同时,在开发周期个价格上具有极大的优势。 在构造基于 NIOS II 嵌入式处理器的俄罗斯方块游戏系统中,通过软核中的 VGA 显 示与 DE2-70 开发板的硬件连接,成功的在显示器上进行游戏运行。NIOS IDE 中并采用 C 语言设计了运行于该系统上的俄罗斯方块游戏。通过 DE2-70 开发板上的按钮输入,实现 了俄罗斯方块的移动、旋转、消除满行、计分和加速等功能。 经过实验和测试结果的验证,证明本系统设计的正确性和基于 NIOS II 处理器开发 游戏的可行性,为 NIOS II 处理器开发游戏奠定了技术基础。 关键词:关键词: SOPC NIOS II VGA 俄罗斯方块游戏 DE2-70 II AbstractAbstract Russia is an ancient puzzle game new and fun games, games software countless realization of this design is based on the Russian box NIOS II design and implementation of programs using SOPC technology and develop games based on the Nios processor, try with the Nios soft core processor system applied to the Tetris game, to achieve control of the game. SOPC can be programmed on-chip system, is a special embedded system, which combines the SOC and the PLD, FPGA respective advantages, they had many characteristics, for example, contains at least one embedded processor core, rich IP Core Resources to choose from, there are enough resources for programmable logic chip, low power, the advantages of micro-encapsulation to improve the application flexibility. Meanwhile, prices in the development cycle a great advantage. In the structure embedded processor-based Nios Tetris game system, through the soft core of the VGA display and DE2-70 development board's hardware connection, the success of the game running on the display. NIOS IDE and use in the C language designed to run on the system on the Tetris game. DE2-70 development board through the button input, to achieve the movement of the Russian box, rotate, eliminate full-line, scoring and accelerated functions. Through experiments and test results have proved the correctness of the system design and develop games based on the Nios processor feasibility of developing games for the Nios processor technical basis. Keywords: SOPC NIOS II VGA Tetris Games DE2-70 III 目录目录 第一章第一章 引言引言 1 1 第二章第二章 绪论绪论 2 2 2.1 研究的目的和意义.2 2.2 研究的基础、背景和现状.3 2.3 应用的相关技术.5 2.3.1 SOPC 技术 5 2.3.2 开发环境.6 2.3.3 硬件描述语言Verilog HDL7 第三章第三章 VGAVGA 显示的实现显示的实现8 8 3.1 VGA 显示原理.8 3.1.1 VGA 色彩显示 .10 3.1.2 VGA 时序分析 .11 3.1.3 VGA 时序实现 .12 3.2 用 VERILOG HDL 描述 VGA.12 第四章第四章 俄罗斯方块硬件设计俄罗斯方块硬件设计 1414 4.1 系统需求和设计思路14 4.2 硬件系统结构14 4.3 基于 NIOS II 的硬件开发设计.15 4.3.1 Quartus II 软件设计 15 4.3.2 SOPC Builder 组件添加 19 第五章第五章 NIOSNIOS IIII 软件设计软件设计3030 5.1 功能描述 .31 5.2 功能模块设计 .33 5.2.1 游戏执行的主要流程.33 5.2.2 游戏方块功能.35 5.3 数据结构设计 .36 5.4 函数功能描述 .38 5.5程序实现 39 第六章第六章 俄罗斯方块结果演示及分析俄罗斯方块结果演示及分析 4242 收获、体验和致谢收获、体验和致谢 4444 参考文献参考文献 4545 第第 1 1 页页 第一章第一章 引言引言 由莫斯科数学家亚历克西·帕杰诺夫(Alexey pajitnov)所设计的“俄罗斯方块” 被公认为有史以来最畅销的游戏,至今魅力不减。俄罗斯方块游戏可以说是随计算机的 发展而发展,并不断推陈出新,演变出各种类似游戏,深受广大玩家喜爱。这个游戏有 的简单,有的复杂,但其根本原理是一样的:都是对运动的方块进行组合,来训练玩家 的反应能力。谈到游戏软件,大多数人都认为其神妙莫测,高不可及,而一般游戏软件 也确实具有很高的技术难度,随着开发工具及软件开发方法学的不断发展,动手开发游 戏也不是十分困难的。俄罗斯方块的基本规则是移动、旋转和摆放游戏自动输出的各种 方块,使之排列成完整的一行或多行并且消除得分。由于上手简单、老少皆宜,从而家 喻户晓,风靡世界。采用 SOPC 技术方案和基于 Nios处理器开发游戏,尝试着把 Nios 软核处理器系统应用到俄罗斯方块游戏中,实现对游戏的控制功能。 本设计的重点之一是如何实现 VGA 显示,Altera 公司为广大设计者提供了一系列的 IP 内核设计,其中包括 VGA 的设计和 Verilog HDL 语言描述。本系统参考了 VGA 的一些 成功案例,完整的实现了 Nios对 VGA 显示器的驱动控制;设计了由 Nios处理器、数据 传输接口等 IP 核构成的 SOPC 系统。采用 Altera DE2-70 最新多媒体开发平台,该平台 配备了数量高达 70,000 个逻辑单元的 Altera Cyclone® II 2C70,并完全承袭了 Altera DE2 多媒体平台丰富的多媒体、储存及网络等应用接口的优点。为系统设计提供了很多可支 持的内存空间和硬件设计。软件设计在 Nios II IDE 中完成,采用 C 语言程序设计实现俄 罗斯方块游戏的基本功能,并且将软件与硬件通过接口很好的结合。 最后对游戏进行了测试,测试结果验证了本系统方案设计的正确性和基于 Nios处理 器开发游戏的可行性。 第第 2 2 页页 第二章第二章 绪论绪论 2.1 研究的目的和意义研究的目的和意义 基于 Nios II 的嵌入式系统的可应用领域很广,包括网络、无线通信、医疗器械、交 通、消费电子、工业控制、军事和航空航天等。在巨大的市场需求面前,兼之 Nios II 本 身的众多优势,使 Nios II 的应用具备了巨大的发展空间。 集成电路是中间产品,必须将它装入到整机上才能发挥其作用,具体地说是通过印 刷电路版(PCB)来集成到整机上去的。由于 PCB 板中各种 IC 芯片之间的连线延迟较大, 再加上 PCB 板体积大、重量大、可靠性差等原因,使得整机系统的性能及可靠性受到严 重影响。随着高性能系统对系统复杂度、处理速度、功耗、功能多样化的要求,在现代 信息处理与通信系统如网络、多媒体、移动通信和其它电子系统中迫切需要开发高性能 的片上系统。而 Nios II,正是一个优秀的选择。Nios II 处理器具有完善的软件开发套件, 包括编译器、集成开发环境(IDE) 、JTAG 调试器、实时操作系统(RTOS)和 TCP/IP 协 议栈。设计者能够用 Altera Quartus II 开发软件中的 SOPC Builder 系统开发工具很容易地 创建专用的处理器系统,并能够根据系统的需求添加 Nios II 处理器核的数量。长期以来, Altera 一直推行嵌入式处理器战略的原因是,随着应用的 ASIC 开发日益受到成本的困扰, OEM 日渐转向 FPGA 来构建自己的系统。这些系统中绝大多数需要一个处理器,而 Altera 正是为设计者提供了为 FPGA 优化的灵活的嵌入式处理器方案,可以满足 16 位和 32 位嵌入式处理器市场的需求。 对嵌入式开发而言,开发基于 Nios II 系统的好处很多。Altera DE2-70 多媒体开发平 台配备了数量高达 70,000 个逻辑单元的 Altera Cyclone® II 2C70,并完全承袭了 Altera DE2 多媒体平台丰富的多媒体、储存及网络等应用接口的优点。此开发平台提供多样的 产品功能,在广泛的电路设计运用上,从简易的电路设计,到多样化的多媒体项目,使 用者都能轻易完成。 基于 Nios II 的系统实现了设计的可复用性,即使是同样一块开发板,根据载入的代 码不同,可以实现不同的应用。这也是缩短开发周期、加快产品上市时间的一条捷径。 本系统方案设计为基于 Nios II 处理器的游戏开发奠定了技术基础。 第第 3 3 页页 2.2 研究的基础、背景和现状研究的基础、背景和现状 本题研究背景本题研究背景: 在集成电路发展初期,电路设计都从器件的物理版图设计入手,后 来出现了集成电路单元库,使得集成电路设计从器件级进入逻辑级,这样的设计思路使 大批电路和逻辑设计师可以直接参与集成电路设计,极大地推动了 IC 产业的发展。但集 成电路不是最终产品,它只有装入整机系统才能发挥它的作用。IC 芯片是通过印刷电路 板(PCB)等技术实现整机系统的。尽管 IC 的速度可以很高、功耗可以很小,但由于 PCB 板中 IC 芯片之间的连线延时、PCB 板可靠性以及重量等因素的限制,整机系统的性能受 到了很大的限制。 随着系统向高速度、低功耗、低电压和多媒体、网络化、移动化的发展,系统对电 路的要求越来越高,传统集成电路设计技术已无法满足性能日益提高的整机系统的要求。 同时,由于IC设计与工艺技术水平提高,集成电路规模越来越大,复杂程度越来越高, 己经可以将整个系统集成为一个芯片。 正是在需求牵引和技术推动的双重作用下,出现了将整个系统集成在一个集成电路 芯片上的系统芯片(System On Chip,简称 SOC)概念。系统芯片与集成电路的设计思想是 不同的,它是微电子设计领域的一场革命。SOC 是从整个系统的角度出发,把处理机制、 模型算法、软件(特别是芯片上的操作系统嵌入式的操作系统)、芯片结构、各层次 电路直至器件的设计紧密结合起来,在单个芯片上完成整个系统的功能。它的设计必须 从系统行为级开始自顶向下。 本题研究的基础:本题研究的基础:游戏电子产品属于嵌入式应用的一个重要门类,嵌入式系统的核 心是 CPU,以往采用的嵌入式 CPU 都是硬核器件,比如摩托罗拉公司的 Coldfire, PowerPC 等。最近几年出现了在 FPGA 片内实现的软核 CPU。硬核 CPU 以硅片的形式提 交给用户,而软核 CPU 则以设计文件的形式交付给用户,用户再根据自己的需求将其固 化在 FPGA 芯片内这种新出现的技术有着非常广阔的应用前景。 本题研究的现状本题研究的现状:随着微电子技术和计算机技术的发展,可编程逻辑器件、EDA 技 术、嵌入式系统、SOC、SOPC、IP、核等新概念和新技术层出不穷,新技术的应用迅速 渗透到电子、通信、信息、机械制造、仪器仪表、航空航天、家用电器等领域,有力地 推动了社会生产力的发展和社会信息化程度的提高。 软核CPU的本质是一段实现特定功能的代码,需要一款合适的FPGA作为载体。Nios II 若配置在Cyclone II中,只占用35美分的逻辑资源,若配置在Stratix II中,可以实现超过 20ODMIPS的高性能表现。在Cyclone II中也可以达到超过lOODMIPS的表现,足以与中低 密度的ASIC形成竞争。Nios II不同于16位指令集的Nios,它是真正的32位软核CPU,具有 32位的指令集、32位的数据路径和32位的寻址空间。Nios II脱胎于Nios,并分化出7三个 版本。一种是Nios II/f,快速型;第二种是Nios II/s,标准型;第三种是Nios II/e,经济型。 这三种产品都针对特定的价格和性能范围进行了优化,并都使用同样的指令集架构(ISA), 第第 4 4 页页 具有100%二进制代码兼容性。快速版本的Nios II具有最强的性能,其运算能力在175MHz时 钟频率下可达大约200 Dhrystone MIPS(DMIPS)。它需要占用中等数量的FPGA资源,大 约1180个逻辑单元。标准版本的性能略低于快速版本,其175MHz时钟频率下的运算能力 为大约90DMIPS,但只需要占用800个逻辑单元。经济版本是三种版本中性能最弱的,其 运算能力在190MHz时钟频率下仅能达到28DMIPS,但它所占用的FPGA资源最少,只需大 约400个逻辑单元。可以根据自己设计的特定需求选择合适的软核。如果逻辑资源充裕, 那么快速版本显然是首选。Nios II处理器能通过Quartus II开发软件中的SOPC Builder系统 开发工具添加到设计者的系统中。 关于Nios II的开发现状。在baidu或google上用关键词Nios II搜索,只有一些概要性的 介绍,并无具体的开发实例报道。也曾经试图通过中国期刊网,以及国内较有影响力的 水木清华等高校BBS的嵌入式开发版寻找相关资讯,但是少有收获。这也是正常的。Nios II是Altera近几年新近推出的一款通用32位软核RISC CPU,目前作为开发板做教学、测试、 实验的居多,比较著名的开发实例还没有,所以,可以说Nios II还处于开始阶段。作为 Altera免费提供的IP(intellectual property),根据Altera自己提供的资料,Nios II软核在配合 Stratix II系列FPGA的情况下,可以实现超过20ODMIPS的性能表现。有这样美味的免费 大餐可以吃,相信今后会有越来越多的人会加入Nios II开发者的行列。 简要介绍一下国内外的几款Nios开发实例: 无线阅读器 把Nios嵌入低成本FPGA Cyclone中,有小型化和低功耗两大特点,执行数 据处理和无线接收的功能。 光多业务节点 这是一款阿尔卡特开发的用于同步数字序列传输的产品。利用Nios的定 制指令功能和同步多Master总线结构(Avalon),实现了吉比特(Gigabite)速率码流的可靠 传输。 ISDN协议处理器 飞利浦公司把Nios处理器运用于综合业务数字网的协议处理器的在线 更新。这一应用极大的提高了视频会议和IP网关服务的可靠性。 数码相机中的通用控制处理器 柯达公司在某型号的数码相机中成功的应用了Nios处理 器,作为DC的控制中枢。 国内 对Nios的最高应用可能是某保密项目,该款应用同时使用了八个Nios软核,把 Avalon总线的多master功能发挥的淋漓尽致。 可以说,Nios是相当成功的。对比Nios,它的第二代Nios II处理器更是青出于蓝而胜 于蓝。Nios II具备更强大的灵活性、更高的性能、更低的成本、占用更少的资源,能够满 足各种嵌入式应用的性能要求。并且,Altera提供了更易用的Nios II开发套件提供给客户。 Altera曾将其两代软核做了对比,结果显示Nios II只用了50%的逻辑单元就实现了2倍于 Nios的性能。 第第 5 5 页页 2.3 应用的相关技术应用的相关技术 2.3.1 SOPC 技术技术 SOPC(System-on-a-Programmable-Chip)即可编程片上系统 ,用可编程逻辑技 术把整个系统放到一块硅片上,称作SOPC。可编程片上系统 (SOPC)是一种特殊 的嵌入式系统:首先它是片上系统( SOC),即由单个芯片完成整个系统的主要逻辑 功能;其次,它是可编程系统,具有灵活的设计方式,可裁减、可扩充、可升级,并 具备软硬件在系统可编程的功能。 因此,著名的可编程逻辑器件生产厂家美国 Altera 公司提出了基于 PLD 的 SOC 设计方案SOPC。 近年来 SOPC 技术已成为备受众多中小企业、研究所和大学院校青睐的设计技术。 SOPC(System on a Programmable Chip)成为可编程片上系统,是 Altera 公司提出的一种 灵活、高校的 SOC 解决方案,是一种新的软硬件协同设计的系统设计技术。SOPC 集成 了硬核或软核 CPU、DSP、锁相环(PLL) 、存储器、I/O 接口及可编程逻辑,可以灵活高 效地解决 SOC 方案,而且设计周期短,设计成本低。Nios II 是一种软核(Soft-Core)处 理器,软核处理器最大的特点就是可由用户需要进行设置。与专用 CPU 不同的是,Nios II 是一个用户可以自行定制的 CPU,用户可以增加新的外设、新的指令,分配外设的地 址等。Nios II 的硬件开发就是由用户制定适合的 CPU 外设,Altera 公司的 SOPC Builder 提供了大量的 IP Core 来加快 Nios II 外设的开发速度。综合来看,SOPC 是 PLD 和 ASIC 技术融合的结果,可以认为 SOPC 代表了半导体产业未来的发展方向,对 SOPC 进行深 入的研究不仅有利于半导体产业的发展,同时对微电子技术和计算机技术的发展也具有 重要的意义。 SOPC 技术主要应用以下三个方向 : 1)基于 FPGA 嵌入 IP 硬核的应用。这种 SOPC 系统是指在 FPGA 中预先植入 处理器。这使得 FPGA 灵活的硬件设计与处理器的强大软件功能有机地结合在一起, 高效地实现 SOPC 系统。 2)基于 FPGA 嵌入 IP 软核的应用。这种 SOPC 系统是指在 FPGA 中植入软核 处理器,如: NIOS II 核等。用户可以根据设计的要求,利用相应的EDA 工具,对 NIOS II 及其外围设备进行构建,使该嵌入式系统在硬件结构、功能特点、资源占用等 方面全面满足用户系统设计的要求。 3)基于 HardCopy 技术的应用。这种 SOPC 系统是指将成功实现于 FPGA 器件 上的 SOPC 系统通过特定的技术直接向 ASIC 转化。把大容量 FPGA 的灵活性和 ASIC 的市场优势结合起来,实现对于有较大批量要求并对成本敏感的电子产品,避开 了直接设计 ASIC 的困难。 第第 6 6 页页 本设计是基于 FPGA 嵌入 IP 软核的应用,在硬件设计中植入 NIOS II 软核处理 器,根据俄罗斯方块的设计要求,对 对 NIOS II 及其外围设备进行构建 。 2.3.2 开发环境开发环境 1.1. Quartus II Quartus II 是 Altera 公司的综合性 PLD 开发软件,支持原理图、 VHDL、VerilogHDL 以及 AHDL(Altera Hardware Description Language)等多种设 计输入形式,内嵌自有的综合器以及仿真器,可以完成从设计输入到硬件配置的完整 PLD 设计流程。 Quartus II 是继承 Altera Max+plus II 后的新一代开发工具,适合大规 模 FPGA 的开发。Quartus II 提供了更优化的综合和适配的功能,改善了对第三方仿 真和时序分析工具的支持。 Quartus II 还包含 DSP Builder 和 SOPC Builder 等开发工 具,支持系统级的开发,支持 NIOS II 嵌入式核 IP 核和用户自定义逻辑。 Quartus II 支持 Altera 的 IP 核,包含了 LPM/MegaFunction 宏功能模块库,使用户可以充分利 用成熟的模块,简化了设计的复杂性、加快了设计速度。 SOPC Builder 是 Quartus II 开发套件之一,支持 NIOS II 嵌入式核的开发与调试, 可设置 、评估 SOPC 体系结构。 SOPC Builder 避免了手动系统集成任务,使设计者 能够将精力集中在定制用户逻辑设计上,在更高级抽象层上进行设计。SOPC Builder 能够定制常用的 SOPC Builder 组件、IP 核,高效地连接外部处理器和 SOPC Builder 可用 IP 库,自动生成系统 HDL,形成优化的系统架构。 SOPC Builder 评估 自动系统开发工具提供了强大的开发平台,可构成包括处理器、外设和存储器接口等 常用系统组成的总线系统。 通过 Altera Quartus II 开发软件中的 SOPC Builder 系统 开发工具很容易地创建专用的处理器系统,并能够根据系统的需求添加Nios II 处理 器核的数量。 本设计采用的是 Quartus II 8.0 版本进行的系统开发。 2 Nios II Nios 嵌入式处理器是 Altera 公司推出的采用哈佛结构、具有 32 位指令集的第 二代片上可编程的软核处理器 , 其最大优势和特点是模块化的硬件结构 , 以及由此带 来的灵活性和可裁减性。相对于传统的处理器 , Nios 系统可以在设计阶段根据实际 的需求来增减外设的数量和种类。设计者可以使用Altera 提供的开发工具 SOPC Builder, 在 PLD 器件上创建软硬件开发的基础平台 , 也即用 SOPC Builder 创建软核 CPU 和参数化的接口总线 Avalon。在此基础上 , 可以很快地将硬件系统 (包括处理器、 存储器、外设接口和用户逻辑电路 )与常规软件集成在单一可编程芯片中。而且 , SOPC Builder 还提供了标准的接口方式 ,以便用户将自己的外围电路做成 Nios 软 核可以添加的外设模块。这种设计方式 , 更加方便了各类系统的调试。 Nios II 处理器具有完善的软件开发套件,包括编译器、集成开发环境(IDE) 、 第第 7 7 页页 JTAG 调试器、实时操作系统 (RTOS)和 TCP/IP 协议栈。Nios II 集成开发环境 (integrated development environment, IDE)是 Nios II 系列嵌入式处理器的基本软件开发工具。 所有软件开发任务都可以在 Nios II IDE 下完成,包括编辑、编译和调试程序。Nios II IDE 提供了一个统一的开发平台,用于所有 Nios II 处理器系统。 3 DE2-70 开开发发板板 采用 DE2-70 开发平台,芯片使用 cyclone II EP2C70F896C6。 2.3.3 硬件描述语言硬件描述语言Verilog HDL Verilog HDL 是一种硬件描述语言 (hardware description language),是 1983 年由 GDA(Gateway Design Automation)公司的 Phil Moorby 首创的,之后 Moorby 又设计了 Verilog-XL 仿真器,Verilog-XL 仿真器大获成功,也使得 Verilog HDL 语 言得到推广使用。由于 Verilog HDL 语言具有简洁、高效、易用、功能强大等优点, 因此,逐渐被众多设计者接受了喜爱。 Verilog HDL 是目前应用最为广泛的硬件描述 语言。 Verilog HDL 是在 C 语言的基础上发展而来的。从语法结构上看, Verilog HD L 继和借鉴了 C 语言的很多语法结构,两者有许多相似之处。当然,Verilog HDL 作为一种硬件描述语言,与 C 语言还是有着本质区别的。 Verilog HDL 可以用来进行各种层次的逻辑设计,也可以进行 数字系统的逻辑 综合,仿真验证和时序分析等。 Verilog HDL 适合算法级,寄存器级,逻辑级,门级 和版图级等各个层次的设计和描述 。Verilog HDL 进行设计最大的优点是其工艺无关 性这使得工程师在功能设计,逻辑验证阶段可以不必过多考虑门级及工艺实现的具 体细节,只需根据系统设计的要求施加不同的约束条件,即可设计出实际电路。 概括地说,Verilog HDL 语言具有以下一些特点: 既适于可综合的电路设计,也可胜任电路与系统的仿真; 能在多个层次上对所设计的系统加以描述; 灵活多样的电路描述风格,可以进行行为描述,也可进行结构描述;支持混合 建模,在一个设计中,各个模块可以在不同的设计层次上建模和描述; Verilog HDL 的行为描述语句,如 and、or、nand 等可方便进行门级结构描 述;内置各种开关级元件,如 pmos、nmos、cmos 等,可进行开关级的建模 ; 用户定义原语 (UDP)创建的灵活性; 另外,Verilog HDL 语言易学易用,可以使设计者更快更好地掌握并用于电路设 计。Verilog HDL 的功能强可以满足各个层次设计人员的需要。正是以上优良的性能 ,使得它广泛流行。在 ASIC 设计领域, Verilog HDL 语言一直就是事实上的标准。 第第 8 8 页页 第三章第三章 VGAVGA 显示的实现显示的实现 3.1 VGA 显示原理显示原理 VGA 是 IBM 在 1987 年随 PS2 机一起推出的一种视频传输标准,具有 分辨率 高、显示速率快、颜色丰富等优点,在彩色显示器领域得到了广泛的应用。VGA 的 英文全称是 Video Graphics Array,即显示绘图阵列。 VGA 支持在 640X480 的较高 分辨率下同时显示 16 种色彩或 256 种灰度,同时在 320X240 分辨率下可以同时显 示 256 种颜色。VGA 接口是一种 D 型接口,上面共有 15 针空,分成三排,每排五 个。VGA 接口是显卡上应用最为广泛的接口类型,多数的显卡都带有此种接口。有些 不带 VGA 接口而带有 DVI(Digital Visual Interface 数字视频接口)接口的显卡,也 可以通过一个简单的转接头将 DVI 接口转成 VGA 接口,通常没有 VGA 接口的显卡 会附赠这样的转接头。 图 3-1 VGA 15 针母插座 图 3-2 VGA15 针公插座 图 3-3 VGA15 针序号的排列 第第 9 9 页页 一般在 VGA 接头上,会 1,5,6,10,11,15 等标明每个接口编号。如果没有 ,如上图所示编号。 VGA 接口 15 根针,其对应接口定义如 表所示: PinName Description 1REDRed Video (75 ohm, 0.7 V p-p)(红色信号) 2GREENGreen Video (75 ohm, 0.7 V p-p)(绿色信号) 3BLUEBlue Video (75 ohm, 0.7 V p-p)(蓝色信号) 4ID2Monitor ID Bit 2(显示器标识位 2) 5GNDGround(地) 6RGNDRed Ground(红色地) 7GGNDGreen Ground(绿色地) 8BGNDBlue Ground(蓝色地) 9KEY-Key(No pin)(空,无引脚) 10SGNDSync Ground(同步地) 11ID0Monitor ID Bit 0(显示器标识位 0) 12ID1or SDAMonitor ID Bit 1(显示器标识位 1) 13HSYNCCSYNC Horizontal Sync (or Composite Sync)(行同步 ) 14VSYNCVertical Sync(场同步) 15ID3or SCLMonitor ID Bit 3(显示器标识位 3) 表 3-1 VGA 接口定义 图 3-4 VGA 针孔连接图 第第 1010 页页 15 个管脚里有 5 个是最重要的,分别是红、绿、蓝三个基本色彩线和水平与垂直 两条控制线,由这五条线,可以再屏幕内显示8 中不同的色彩,如下表: 表 3-2 VGA 颜色显示 显示是采用逐行扫描的方式,阴极射线枪发出的电子束打在涂有荧光粉的荧光屏 上,产生 RGB 三色基,最后合成一个彩色图像。从荧幕的左上方开始向右扫描,每 扫完一行图像电子束回到下一行的最左端,每行结束后电子枪回扫的过程中进行消隐。 然后从新开始行扫描,消隐 ,直到扫到荧幕的右下方,电子束回到荧幕的左上方 从新开始新的图像扫描,并且在回到荧幕左上方的过程中进行消隐。在消隐过程中不 发射电子束。每一行扫描结束时,用HS(行同步)信号进行同步;扫描完所有的行后 用 VS(场同步)信号进行同步。 VGA 工业标准要求的频率: 时钟频率:25.175MHz(像素输出的频率) 行频: 31469Hz 场频: 59.94Hz(每秒图像刷新频率) 3.1.1 VGA 色彩显示色彩显示 RGB 色彩模式是工业界的一种颜色标准,是通过对红 (R)、绿(G)、蓝(B)三个 颜色 通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB 即是代 表红、 绿、蓝三个通道的颜色,通过三种基本颜色亮度值从 0255 不同产生出其 他各种颜色,这种模式叫加色模式。 三基色是指红 ,绿,蓝三色,各自对应的波长分别为 700nm,546.1nm,435.8nm 从原色的定义出发, 或是以实际应用的结果 为验证,都足以说明,把黄、品红、青称 为三原色,较红、黄、蓝为三原色更为恰当。 如下图所示: 第第 1111 页页 图 3-5 VGA 三原色 3.1.2 VGA 时序分析时序分析 通过对 VGA 显示卡基本工作原理的分析可知,要实现VGA 显示就要解决数据 来源、数据存储、时序实现等问题,其中关键还是如何实现VGA 时序。 几种常用模式的时序参数如 表 3 所示。 表 3-3 VGA 时序参数数据 通用 VGA 显示卡系统主要由控制电路、显示缓存区和视频BIOS 程序三个部分组成。 控制电路如下图所示。 第第 1212 页页 图 3-6 通用 VGA 显示卡控制电路图 控制电路主要完成时序发生、显示缓冲区数据操作、主时钟选择和DA 转换 等功能;显示缓冲区提供显示数据缓存空间;视频BIOS 作为控制程序固化在显示卡 的 ROM 中。 行时序和帧时序都需要产生同步脉冲 (Sync a)、显示后沿(Back porch b)、显示时 序段(Display interval c)和显示前沿(Front porch d)四个部分。 VGA 的标准参考显示时序如 下图所示。 图 3-7 VGA 标准参考时序图 3.1.3 VGA 时序实现时序实现 首先,根据刷新频率确定主时钟频率,然后由主时钟频率和图像分辨率计算出行 总周期数,再把 图 1 中给出的 a、b、c、d 各时序段的时间按照主计数脉冲源频率折 算成时钟周期数。在 CPLD 中利用计数器和 RS 触发器,以计算出的各时序段时钟周 期数为基准,产生不同宽度和周期的脉冲信号,再利用它们的逻辑组合构成图 3-7 中的 a、b、c、d 各时序段以及 DA 转换器的空白信号 BLANK 和同步信号 SYNC。 3.2 用用 Verilog HDL 描述描述 VGA VGA 工业标准时 640×480×60Hz,主要有 5 个信号,即三个颜色信号 R/G/B、行 同步信号 HS 和场同步信号 VS。它是从左上角开始一行接一行的扫描,扫描完一屏 后又回到左上角扫描。 标准要求是场频 59.94Hz,行频 31469Hz,时钟频率 25.175MHz。 在设计时,可以先设计一个底层模块,输入是上层模块提供的屏幕上当前点的RGB 值,输出是向 VGA 接口输出符合 VGA 时序的 RGB、HS、VS 信号,并将当前扫描 电的值输出给上层模块。 再设计上层模块,利用点阵或坐标绘图即可。上层模块收到 第第 1313 页页 底层模块的当前坐标,算出 RGB 传给底层模块。让底层模块负责显示就好了。 VGA接口定义 定义 VGA 时钟信号、颜色定义,场、行同步信号等 /VGA/ oVGA_CLOCK, /VGA Clock oVGA_HS, /VGA H_SYNC oVGA_VS, /VGA V_SYNC oVGA_BLANK_N,/VGA BLANK oVGA_SYNC_N,/VGA SYNC oVGA_R, /VGA Red9:0 oVGA_G, /VGA Green9:0 oVGA_B, /VGA Blue9:0 /VGA/ outputoVGA_CLOCK; /VGA Clock outputoVGA_HS; /VGA H_SYNC outputoVGA_VS; /VGA V_SYNC outputoVGA_BLANK_

    注意事项

    本文([工学]基于NIOS II的俄罗斯方块_毕业论文.doc)为本站会员(音乐台)主动上传,三一文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    经营许可证编号:宁ICP备18001539号-1

    三一文库
    收起
    展开