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

开通VIP
 

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

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

开通VIP折扣优惠下载文档

            查看会员权益                  [ 下载后找不到文档?]

填表反馈(24小时):  下载求助     关注领币    退款申请

开具发票请登录PC端进行申请

   平台协调中心        【在线客服】        免费申请共赢上传

权利声明

1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前可先查看【教您几个在下载文档中可以更好的避免被坑】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时联系平台进行协调解决,联系【微信客服】、【QQ客服】,若有其他问题请点击或扫码反馈【服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【版权申诉】”,意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:0574-28810668;投诉电话:18658249818。

注意事项

本文(基于FPGA的UART设计.doc)为本站上传会员【w****g】主动上传,咨信网仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知咨信网(发送邮件至1219186828@qq.com、拔打电话4009-655-100或【 微信客服】、【 QQ客服】),核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载【60天内】不扣币。 服务填表

基于FPGA的UART设计.doc

1、郑州轻工业学院 课程设计说明书 题目:基于FPGA的UART设计 姓名:王鹏飞 院(系):电子信息工程学院 专业班级:电子信息工程13-01 学号: 541301030135 指导教师:杜海明 成绩: 时间:2016年6月21日至2016年6月28日 郑州轻工业学院 课 程 设 计 任 务 书 题目基于FPGA的UART设计 专业、班级电子信息工程13-01学号 35 姓名 王鹏飞 主要内容、基本要求、主要参考资料等: 主要内容: 要求学生使用硬件描述语言描述硬件功能,利用FPGA并采用模块化设计方法设计UART(通用异步收发器)的各

2、个模块.其中包括波特发生器,程序控制器,UART数据接收器和UART数据发送器,本文采用的外部时钟为48MHZ,波特率为9600。在软件上进行设计、编译和仿真。 基本要求: 1、 掌握FPGA 的程序设计方法. 2、掌握硬件描述语言语法。 3、程序设计完成后要求在软件中实现功能仿真. 主要参考资料: 1、夏宇闻. Verilog 数字系统设计教程[M]。北京:北京航空航天大学出版社,2003 2、潘松,王国栋.VHDL实用教程「M]。成都:电子科技大学出版社,2003。 完 成 期 限:2016.6.21—2016。6.28 指导教师签名: 课程负责人签名: 2

3、016年 6月 18日 基于FPGA的UART设计 摘要 UART作为RS232协议的控制接口得到了广泛的应用,将UART的功能集成到FPGA芯片中,可使整个系统更为灵活、紧凑,减小整个电路的体积,提高系统的可靠性和稳定性。提出了一种基于FPGA的UART的实现方法,具体描述了发送、接收等模块的设计,恰当使用了有限状态机,实现了FPGA上的UART的设计,给出仿真结果。 关键词FPGA UART模块化有限状态机 目 录 1 FPGA与UART简介 1 1.1 FPGA介绍 1 1。2 UART简介 1 2 UART工作原理及功能设计 3 2.1UART工作原理 3 2.

4、2UART功能设计 3 2。2。1 波特率发生器设计 4 2。2。2 发送器设计 5 2.2。3 接收器设计 5 3。仿真 8 4 总结 9 参考文献 10 I 1 FPGA与UART简介 1。1 FPGA介绍 FPGA(Field-Programmable Gate Array),即现场可编程门阵列,它是在PAL、GAL、CPLD等可编程器件的基础上进一步发展的产物.它是作为专用集成电路(ASIC)领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。 FPGA主要特点: 1)采用FPGA设计ASIC电路(专用集成电路)

5、用户不需要投片生产,就能得到合用的芯片. 2)FPGA可做其它全定制或半定制ASIC电路的中试样片。 3)FPGA内部有丰富的触发器和I/O引脚. 4)FPGA是ASIC电路中设计周期最短、开发费用最低、风险最小的器件之一。 5) FPGA采用高速CMOS工艺,功耗低,可以与CMOS、TTL电平兼容。 可以说,FPGA芯片是小批量系统提高系统集成度、可靠性的最佳选择之一. FPGA是由存放在片内RAM中的程序来设置其工作状态的,因此,工作时需要对片内的RAM进行编程。用户可以根据不同的配置模式,采用不同的编程方式。 加电时,FPGA芯片将EPROM中数据读入片内编程RAM中,配

6、置完成后,FPGA进入工作状态。掉电后,FPGA恢复成白片,内部逻辑关系消失,因此,FPGA能够反复使用。FPGA的编程无须专用的FPGA编程器,只须用通用的EPROM、PROM编程器即可.当需要修改FPGA功能时,只需换一片EPROM即可。这样,同一片FPGA,不同的编程数据,可以产生不同的电路功能.因此,FPGA的使用非常灵活。 1.2 UART简介 通用异步收发器(UART)是一种短距离串行通信接口,主要用于计算机、微处理器与小型通信网络之间的短距离通信。目前通信接口技术已发展成为硬件和软件相结合的综合性技术,在嵌入式系统设计中,异步串行通信接口已成为必不可少的一部分.随着FPGA技

7、术和嵌入式系统的发展,在单芯片上可以实现多种功能,虽然目前许多器件已经把UART集成在内,但是要求用单一芯片实现处理器和控制器等复杂功能,同时需要串行通信场合,采用高密度、大容量FPGA器件来设计UART具有很高的实用价值。 计算机内部采用并行数据,不能直接把数据发到Modem,必须经过UART整理才能进行异步传输,其过程为:CPU先把准备写入串行设备的数据放到UART的寄存器(临时内存块)中,再通过FIFO(First Input First Output,先入先出队列)传送到串行设备,若是没有FIFO,信息将变得杂乱无章,不可能传送到Modem。 它是用于控制计算机与串行设备的芯片。有

8、一点要注意的是,它提供了RS—232C数 2 据终端设备接口,这样计算机就可以和调制解调器或其它使用RS-232C接口的串行设备通信了。作为接口的一部分,UART还提供以下功能:将由计算机内部传送过来的并行数据转换为输出的串行数据流。将计算机外部来的串行数据转换为字节,供计算机内部并行数据的器件使用。在输出的串行数据流中加入奇偶校验位,并对从外部接收的数据流进行奇偶校验。在输出数据流中加入启停标记,并从接收数据流中删除启停标记。处理由键盘或鼠标发出的中断信号(键盘和鼠标也是串行设备)。可以处理计算机与外部串行设备的同步管理问题.有一些比较高档的UART还提供输入输出数据的缓冲区,比较新

9、的UART是16550,它可以在计算机需要处理数据前在其缓冲区内存储16字节数据,而通常的UART是8250.如果您购买一个内置的调制解调器,此调制解调器内部通常就会有16550 UART。 3 2 UART工作原理及功能设计 2。1UART工作原理 UART是一种串行数据总线,用于异步通信,并且双向通信,可实现全双工发送和接收。基本的UART只需要两条信号线(TXD,RXD)和一条地线就可以完成数据的互相通信,接收和发送互不干扰,这样就大大节省了传输费用。由于UART是异步通信,所以需要对数据进行同步。UART发送/接收数据的传输格式如图1所示,一个字符单位由开始位、数据位、校验

10、位、停止位组成(其中校验位可供选). 发送或接收一个完整的字节信息,首先是一个作为起始位的逻辑“o"位,接着是8个数据位,然后是停止位逻辑“1”位,数据线空闲时为高或“1”状态.在字符的8位数据部分,先发送数据的最低位,最后发送最高位。每位持续时间是固定的,由发送器本地时钟控制,每秒发送的数据位个数,即为“波特率”。起始位和停止位起着很重要的作用。显然,它们标志每个字符的开始和结束,但更重要的是他们使接收器能把他的局部时钟与每个新开始接收的字符再同步。异步通信没有可参照的时钟信号,发送器随时都可能发送数据,任何时刻串行数据到来时,接收器必须准确地发现起始位下降沿的出现时间,从而正确地采样紧接

11、着的io或者m位(包括开始位、数据位和停止位),接收器的时钟和发送器的时钟不是同一个,因此,接收器所确定的采样点的间隔和发送器所确定的位间隔时间不同,这点要特别注意。 2.2UART功能设计 异步通信的一帧传输经历以下步骤: 1)空闲状态.发送方连续发送信号,处于信息“1"状态。 2)开始传输。发送方在任何时刻将传号变成空号,即“1”跳变到“0",并持续1位时间表明发送方开始传输数据。而同时,接收方收到空号后,开始与发送方同步,并期望收到随后的数据。 3)奇偶传输。数据传输之后是可供选择的奇偶位发送或接收. 4)停止传输.最后是发送或接收的停止位,其状态恒为“1”。 设计的基本原

12、则是保留最主要的功能,基于FPGA的UART系统由波特率时钟发生器、接收器和发送器3个子模块组成,如图2所示。 图2 UART功能框图 2。2.1 波特率发生器设计 波特率发生器实质是设计一个分频器,用于产生和RS232通信同步的时钟.在系统中用一个计数器来完成这个功能,分频系数N决定了波特率的数值。该计数器一般工作在一个频率较高的系统时钟下,当计数到N/2时将输出置为高电平,再计数到N/2的数值后将输出置为低电平,如此反复即可得到占空比50%的波特率时钟,具体的波特率依赖于所使用的系统时钟频率和N的大小。如系统时钟频率是6。4 MHz,要求波特率是9 600,则16倍波特率时钟的周期约

13、等于42个系统时钟周期,则计数器取42/2=21时,当计数溢出时输出电平取反就可以得到16倍约定波特率的时钟. 使用VHDL来描述波特率发生器的完整代码如下: Process(rst,clk6_4M) if rst=’0’ then count<=0; bclkr〈='0’; elsif rising_edge(clk6_4M) then if (count=20) count〈=0; bclkr〈=not bclkr; else count<=count+1; end if; end if; end process; 2。2。2 发送器设计 UART发送器

14、的设计较容易,只要每隔一个发送周期按照数据帧格式及要求的速率输出数据即可。没有数据要发送时,发送数据寄存器为空,发送器处于空闲状态;当检测到发送数据寄存器满信号后,发送器及发送起始位,同时8个数据位被并行装入发送移位寄存器停止位紧接着数据位指示一帧数据结束。只有发送数据寄存器为空时,RAM中的待发数据才能被装入、程序中使用计数器要保证各位周期定时正确. 2。2。3 接收器设计 接收器的工作过程如下,串行数据帧和接收时钟是异步的,发送来的数据由逻辑1变为逻辑0可以视为一个数据帧的开始。接收器先要捕捉起始位,然而,通信线上的噪音也极有可能使传号“1”跳变到空号“0”.所以接收器以16倍的波特率

15、对这种跳变进行检测,确定rxd输入由1到0,逻辑0要8个bclkr(16倍的波特率时钟)周期,才是正常的起始位,而不是噪音引起的,其中若有一次采样得到的为高电平则认为起始信号无效,返回初始状态重新等待起始信号的到来. 采到正确的起始位后,就开始接收数据,最可靠的接收应该是接收时钟的出现时刻正好对着数据位的中央。由于在起始位检测时,己使时钟对准了位中央,用16倍波特率的时钟作为接收时钟,就是为了确保在位宽的中心时间对接收的位序列进行可靠采样,当采样计数器计数结束后所有数据位都己经输入完成。最后对停止位的高电平进行检测,若正确检测到高电平,说明本帧的各位正确接收完毕,否则出错。最后将正确的数据转

16、存到数据寄存器中,输出数据。还要输出一个数据接收标志信号标志数据接收完. 利用有限状态机实现,完整代码如下: Process(bclkr,reset,rxd_sync) Variable count :std_logic_vector(3 downto 0); —-—定义中间变量 Variable rcnt :integer:=0; Variable rbufs :std_logic_vector(7 downto 0); Begin If reset=’0' then State<=r_start; Count:=”0000”; elsif rising_edge

17、bclkr) then case state is when r_start=〉 if rxd_sync=’0' then state〈=r_center; r_ready〈='0’; rcnt:=0; else state〈=r_start; r_ready<=’0’; end if; when r_center=〉 if rxd_sync='0’ then if count>=”0100" then state<=r_wait; count:="0000”; else count:=count+1; state〈=r_center; end if;

18、 else state<=r_start; end if; when r_wait=〉 if count>=”1110” then count:=”0000”; if rcnt=framlenr then state〈=r_stop; else state<=r_sample; end if; else count:=count+1; state〈=r_wait; end if; when r_sample=> rbufs(rcnt):=rxd_sync; rcnt:=rcnt+1; state〈=r_wait; when r_stop=> r_read

19、y〈=’1’; rbuf〈=rbufs; state〈=r_start; when others=〉 state<=r_start; end case; end if; end process; 3。仿真 本设计在Altera Cyclone系列的芯片上进行了验证,对发送模块和接收模块的仿真结果分别如图3、图4所示。发送的数据能严格按照串行通信协议进行传输;接收的数据也完全正确。 用FPGA设计UART,可以用片上很少的逻辑单元实现UART的基本功能。与传统设计相比,能有效减少系统的PCB面积,降低系统的功耗,提高设计的稳定性和可靠性,充分利用FPGA的剩余资源、并可方便地

20、进行系统升级和移植。 图3 发送模块仿真 图4 接收模块仿真 4 总结 该设计具有很大的灵活性,通过调整波特率发生器的分频参数,就可以使其工作在不同的频率。采用16倍波特率的采样时钟,可以实时有效监测数据的起始位,并对数据位进行中央采样,从而保证了所采样数据的正确性。该模块可以作为一个完整的IP核,灵活地移植进各种型号FPGA中,在实际应用时也可嵌入到其他系统中,有很好的借鉴和参考价值。 参考文献 1.吴厚航,深入浅出玩转FPGA,北京航空航天大学出版社,2013年7月。 2.于斌,modelsim电子系统分析及仿真,电子工业出版社,2014年2月. 3.潘松 黄继业,

21、EDA技术实用教程Verilog版,科学出版社,2010年7月 4.夏宇闻,verilog数字系统设计教程,北京航空航天大学出版社2013年7月 5.康华光,电子技术基础,高教出版社,2003. 6。李莉,Altera FPGA系统设计实用教程,清华大学出版社,2014年1月 7。 吴厚航,FPGA设计实战演练,清华大学出版社,2015年1月 8 课程设计成绩评定表 评定项目 内容 满分 评分 总分 学习态度 学习认真,态度端正,遵守纪律。 10 答疑和设计情况 认真查阅资料,勤学好问,提出的问题有一定的深度,分析解决问题的能力较强. 40 说明书质量 设计方案正确、表达清楚;设计思路、实验(论证)方法科学合理;达到课程设计任务书规定的要求;图、表、文字表达准确规范,上交及时. 40 回答问题情况 回答问题准确,基本概念清楚,有理有据,有一定深度。 10 总成绩 采用五级分制:优、良、中、及格、不及格 指导教师评语: 签名: 年月日

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服