ImageVerifierCode 换一换
格式:DOCX , 页数:9 ,大小:34.47KB ,
资源ID:7803991      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7803991.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(FPGA点阵显示论文.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

FPGA点阵显示论文.docx

1、FPGA点阵显示论文桂林电子科技大学点阵显示器学院(系): 专 业: 学 号: 学生姓名 : 指导教师 : 摘要 主要研究基于VHDL的 Led点阵数字滚动显示。首先描述了基于现场可编程门阵(FPGA)的硬件电路,以及点阵显示数字的原理;然后在单个8X8 LED发光二极管点阵上滚动数字的原理;最后给出了描述其功能的VHDL语言程序设计方法。通过编程、调试、仿真、下载正确地实现了数字滚动显示扫描结果,其硬件系统的实验验证也获得了与软件模拟仿真结论相吻合的结果。关键词:LED点阵;FPGA;VHDL语言;数字滚动显示AbstractPrimary research is based on VHDL

2、, Led Scrolling dot matrix numbers. First described based on field programmable gate array (FPGA) hardware circuit, as well as the principle numbers dot matrix display; and then in a single 8X8 LED scrolling LED dot matrix on the principles of numbers; Finally, the VHDL description language program

3、of its functions design. Through programming, debugging, simulation, download the correct character scroll achieved scan results, the experimental verification of its hardware and software are also obtained findings consistent with simulation results.Keywords: LED dot-matrix; FPGA; VHDL language; nu

4、mber scrolling displa目录第一章 前言1.1 本设计的研究背景和研究目的受到体育场馆用LED显示屏需求快速增长的带动,近年来,中国 LED显示屏应用逐步增多。目前,LED已经广泛应用在银行、火车站、广告、体育场馆之中。而随着世博会的临近,LED显示屏将广泛的应用在体育场馆以及道路交通指示中,LED显示屏在体育广场中的应用将出现快速增长。目前,国内从事LED显示屏生产的企业众多,同时,受到外资企业LED显示屏价格过高的影响,在中国LED显示屏市场上多以本土企业为主。目前,本土LED显示屏生产企业除供应国内需求外,还不断把产品出口到国外市场。而近年来,受到成本压力的影响,国际上

5、一些知名的LED显示屏企业也逐步把 生产基地移到了中国,如巴可在北京设立了显示屏生产基地,Lighthouse在惠州也拥有生产基地,Daktronics、莱茵堡都在国内设立了生产工厂。随着国际LED显示屏生产大厂不断把生产基地转移至国内, 加之国内众多的LED显示屏本土企业,中国正在成为全球LED显示屏的主要生产基地。因此研究LED数字滚动显示屏的设计方法具有重要的理论和现实意义。随着我国经济的高速发展,对公共场合发布信息的需求日益增长,利用LED点阵滚动显示数字的出现正好适应了这一市场需求,已经成为信息传播的一种重要手段。采用传统方法设计的数字滚动显示器,通常需要使用单片机、存储器和制约逻辑

6、电路来进行PCB板级的系统集成。尽管这种方案有单片机软件的支持较为灵活,但是由于受硬件资源的限制,未来对设计的变更和升级,总是难以避免要付出较多研发经费和较长投放市场周期的代价。随着电子设计自动化(EDA)技术的进展,基于可编程FPGA器件进行系统芯片集成的新设计方法,也正在快速地到代基于PCB板的传统设计方式。因此,本设计的研究是很有必要的,之所以基于FPGA设计是因为现场可编程门阵列(FPGA)设计周期小,灵活度高,适合用于小批量系统,提高系统的可靠性和集成度。并且采用编写灵活的VHDL语言编写主程序。1.2 LED点阵显示特点(1)可以显示各种数字、文字、图表、曲线、图形;(2)采用纯红

7、、高绿作双基色发光器件,发光亮度高,色彩鲜艳、丰富;(3)显示效果清晰、稳定、功耗低、寿命长;(4)优质铝合金结构,磨沙、银镜或钛金不锈钢包边。尺寸和规格可根据需要灵活组合;(5)支持各种计算机网络,编辑软件丰富、易用;(6)适用于室内、外所有信息发布及广告宣传场所。如:银行、证券交易所、商场、市场、宾馆、洒楼、电信、邮政、医院、车站、机场等。1.3 FPGA设计的特点FPGA 通常被认为是ASIC 实现的一种替代手段. 一般ASIC 包括三种, 既全定制、半定制(含标准单元和门阵列) 以及可编程器件。对于前两种, 需要支付不可重复使用的工程费用NRE (Non recurring Engin

8、eering) , 主要用于芯片的流片、中测、分析的工程开销, 一次费用一般在1 万至数万美元以上。如果一次不成功、返工、甚至多次返工,NRE 费用将要上升。成本高、风险大, 而通常对每个ASIC 品种的需求量往往不大,NRE 费用分摊到每个产品上价太高, 用户无法接受。而对于可编程器件PLD (Programmable Logic Device) 正是可以解决上述问题的新型ASIC, PLD 以其操作灵活、使用方便、开发迅速、投资风险小等突出优点, 特别适合于产品开发初期、科研样品研制或小批量的产品. FPGA 是一种新型的PLD, 其除了具有PLD 的优点外, 其规模比一般的PLD 的规模

9、大。目前,Xilinx 推出的XC4025 可以达到25000 门的规模,Altera 公司的FLEX10K100 系列芯片可达到十万门的规模,完全可以满足用户的一般设计需要。 FPGA 的主要特点是: 寄存器数目多, 采用查找表计数,适合时序逻辑设计。 但是互连复杂, 由于互连采用开关矩阵,因而使得延时估计往往不十分准确。 FPGA 也有其自身的局限性, 其一就是器件规模的限制,其二就是单元延迟比较大。 所以, 在设计者选定某一FPGA器件后, 要求设计者对器件的结构、性能作深入的了解, 在体系结构设计时, 就必须考虑到器件本身的结构及性能, 尽可能使设计的结构满足器件本身的要求. 这样就增

10、加了设计的难度。 离开对FPGA 结构的详细了解, 设计人员就不可能优化设计。因而设计人员必须了解FPGA 器件的特性和限制, 熟悉FPGA 的结构。 在了解FPGA 结构特点的基础上, 就可以利用VHDL 语言描写出高效的电路描述实现性能优化的电路。第二章 系统设计2.1设计任务与要求2.1.1设计任务(1)设计一个88的LED点阵显示器; (2)在设计过程中,EDA试验箱进行仿真调试。2.1.2设计要求(1)输出预定义“091222333”九个数字;(2)输出数字循环显示;(3)操作方便、可维护性高;(4)程序简捷,便于修改。2.2设计原理2.2.1总体设计方案方案一:本设计所使用的88的

11、点阵,EDA实验箱上有其接口电路,列选信号为SEL0,SEL1,SEL2,SEL3,经4线16线译码器输出16列,从左起为第一列,列选信号是由一个4位向量SEL3.0控制;行选信号为H0H15,是由16个行信号组成的,每一行由一个单独的位来控制,高电平有效。例如“0000”表示第0列,“00000001”表示第一行的点亮。由于列是由一个向量决定,而每一时刻的值只能有一个固定的值,因而只能使某一列的若干个点亮,因此就决定了只能用逐列扫描的方法。例如要使第一列的2,4,6,8,行亮,则列为“0001”、行为“10101010”就可以实现了。方案二:VHDL程序设计的是硬件,他和编程语言的最大区别是

12、它可以“并发执行”。本设计可以将LED显示屏要的显示内容抽象成一个二维数组(数组中的1对映点阵显示屏上面的亮点),用VHDL语言设计一个进程将这个数组动态显示在LED显示屏上,再利用另一个进程对这个数组按一定频率进行数据更新,更新的方式可以有多种。因为两个进程是同时进行的(并发执行),如果对数组中的数字数据按滚动的方式更新,则可实现数字的滚动显示。如图2-1为该方案原理图。图2-1 方案二原理图2.2.2方案的比较方案一很容易实现,而且占用FPGA的资源较少。但是由于其实现方式的局限性,该方案只能实现数字的滚动显示。方案二中将LED点阵抽象成了一个二维数组。可以设计一些比较复杂的算法来控制这个

13、数组,使设计的系统不但可以滚动显示汉字,还可以扩展一些其它的显示效果。但是方案二中对数组的处理部分对FPGA芯片的资源消耗太大。所以最终选择方案一。2.2.3点阵模块 数字显示的原理数字09点阵显示代码的形成如下图所示,假设显示数字“0”因此,形成的列代码为00H,00H,3EH,41H,3EH,00H,00H;只要把这些代码分别送到相应的列线上面,即可实现“0”的数字显示。送显示代码过程如下所示先送列扫描码 然后再送行扫描数据00 00 3E 41 41 3E 00 00图2-2 点阵显字2.2.4程序调试module kk(out,sbit,res,clk);output reg 7:0o

14、ut;output reg 7:0sbit;input res;input clk;reg clk1;reg 9:0i;reg 9:0state;reg 29:0counter0;reg 29:0counter1;initial begin i=0;out=8b0000_0000;sbit=8b1111_1111;endalways (posedge clk) begin if(!res)begin counter0=0;counter1=0;state=0;end else begin if(counter0=40000000) begin counter0=0;state=state+1;

15、if(state=9)state=0;end else counter0=counter0+1; if(counter1=10000) begin counter1=0;clk1=clk1;end else counter1=counter1+1; end endalways (posedge clk1) begin casex(state) 0:begin i=i+1;if(i=1)begin out=8b1111_1111;sbit=8b1111_1110;end /0 if(i=2)begin out=8b1100_0011;sbit=8b1111_1101;end if(i=3)beg

16、in out=8b1101_1011;sbit=8b1111_1011;end if(i=4)begin out=8b1101_1011;sbit=8b1111_0111;end if(i=5)begin out=8b1101_1011;sbit=8b1110_1111;end if(i=6)begin out=8b1101_1011;sbit=8b1101_1111;end if(i=7)begin out=8b1101_1011;sbit=8b1011_1111;end if(i=8)begin out=8b1100_0011;sbit=8b0111_1111;end if(i=9)i=0

17、; end 1:begin i=i+1;if(i=1)begin out=8b1111_1111;sbit=8b1111_1110;end /9 if(i=2)begin out=8b1100_0011;sbit=8b1111_1101;end if(i=3)begin out=8b1101_1011;sbit=8b1111_1011;end if(i=4)begin out=8b1101_1011;sbit=8b1111_0111;end if(i=5)begin out=8b1100_0011;sbit=8b1110_1111;end if(i=6)begin out=8b1101_111

18、1;sbit=8b1101_1111;end if(i=7)begin out=8b1101_1011;sbit=8b1011_1111;end if(i=8)begin out=8b1100_0011;sbit=8b0111_1111;end if(i=9)i=0; end 2:begin i=i+1;if(i=1)begin out=8b1111_1111;sbit=8b1111_1110;end /1 if(i=2)begin out=8b1110_0111;sbit=8b1111_1101;end if(i=3)begin out=8b1110_0011;sbit=8b1111_101

19、1;end if(i=4)begin out=8b1110_0111;sbit=8b1111_0111;end if(i=5)begin out=8b1110_0111;sbit=8b1110_1111;end if(i=6)begin out=8b1110_0111;sbit=8b1101_1111;end if(i=7)begin out=8b1110_0111;sbit=8b1011_1111;end if(i=8)begin out=8b1100_0011;sbit=8b0111_1111;end if(i=9)i=0; end 3:begin i=i+1;if(i=1)begin o

20、ut=8b1111_1111;sbit=8b1111_1110;end /2 if(i=2)begin out=8b1110_0001;sbit=8b1111_1101;end if(i=3)begin out=8b1110_1101;sbit=8b1111_1011;end if(i=4)begin out=8b1110_1111;sbit=8b1111_0111;end if(i=5)begin out=8b1110_0001;sbit=8b1110_1111;end if(i=6)begin out=8b1111_1101;sbit=8b1101_1111;end if(i=7)begi

21、n out=8b1110_1101;sbit=8b1011_1111;end if(i=8)begin out=8b1110_0001;sbit=8b0111_1111;end if(i=9)i=0; end 4:begin i=i+1;if(i=1)begin out=8b1110_0001;sbit=8b1111_1110;end /2 if(i=2)begin out=8b1110_1101;sbit=8b1111_1101;end if(i=3)begin out=8b1110_1111;sbit=8b1111_1011;end if(i=4)begin out=8b1110_0001

22、;sbit=8b1111_0111;end if(i=5)begin out=8b1111_1101;sbit=8b1110_1111;end if(i=6)begin out=8b1110_1101;sbit=8b1101_1111;end if(i=7)begin out=8b1110_0001;sbit=8b1011_1111;end if(i=8)begin out=8b1111_1111;sbit=8b0111_1111;end if(i=9)i=0; end 5:begin i=i+1;if(i=1)begin out=8b1111_1111;sbit=8b1111_1110;en

23、d /2 if(i=2)begin out=8b1110_0001;sbit=8b1111_1101;end if(i=3)begin out=8b1110_1101;sbit=8b1111_1011;end if(i=4)begin out=8b1110_1111;sbit=8b1111_0111;end if(i=5)begin out=8b1110_0001;sbit=8b1110_1111;end if(i=6)begin out=8b1111_1101;sbit=8b1101_1111;end if(i=7)begin out=8b1110_1101;sbit=8b1011_1111

24、;end if(i=8)begin out=8b1110_0001;sbit=8b0111_1111;end if(i=9)i=0; end 6:begin i=i+1;if(i=1)begin out=8b1111_1111;sbit=8b1111_1110;end /3 if(i=2)begin out=8b1100_1111;sbit=8b1111_1101;end if(i=3)begin out=8b1011_0111;sbit=8b1111_1011;end if(i=4)begin out=8b1011_1111;sbit=8b1111_0111;end if(i=5)begin

25、 out=8b1000_1111;sbit=8b1110_1111;end if(i=6)begin out=8b1011_1111;sbit=8b1101_1111;end if(i=7)begin out=8b1011_0111;sbit=8b1011_1111;end if(i=8)begin out=8b1100_1111;sbit=8b0111_1111;end if(i=9)i=0; end 7:begin i=i+1;if(i=1)begin out=8b1100_1111;sbit=8b1111_1110;end /3 if(i=2)begin out=8b1011_0111;

26、sbit=8b1111_1101;end if(i=3)begin out=8b1011_1111;sbit=8b1111_1011;end if(i=4)begin out=8b1000_1111;sbit=8b1111_0111;end if(i=5)begin out=8b1011_1111;sbit=8b1110_1111;end if(i=6)begin out=8b1011_0111;sbit=8b1101_1111;end if(i=7)begin out=8b1100_1111;sbit=8b1011_1111;end if(i=8)begin out=8b1111_1111;

27、sbit=8b0111_1111;end if(i=9)i=0; end 8:begin i=i+1;if(i=1)begin out=8b1111_1111;sbit=8b1111_1110;end /3 if(i=2)begin out=8b1100_1111;sbit=8b1111_1101;end if(i=3)begin out=8b1011_0111;sbit=8b1111_1011;end if(i=4)begin out=8b1011_1111;sbit=8b1111_0111;end if(i=5)begin out=8b1000_1111;sbit=8b1110_1111;end if(i=6)begin out=8b1011_1111;sbit=8b1101_1111;end if(i=7)begin out=8b1011_0111;sbit=8b1011_1111;end if(i=8)begin out=8b1100_1111;sbit=8b0111_1111;end if(i=9)i=0; end default:begin out=8bz;sbit=8bz;end endcase endendmodule

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1