- 1、本文档共28页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
毕业设计(论文)
英文翻译
题 目 : 基于FPGA的串口控制器设计
院、系(部):
专业及班级:
姓 名:
学 号:
指 导 教 师 :
日 期 :
译文
基于FPGA的串口控制器设计
简介
使用硬件描述语言 (HDL) 设计和开发验证FPGA的成为当前的主流因素。使用行为级描述不只增加了产品的设计效率,也在设计中有独特的验证方式。目前最流行的HDL语言为Verilog 和 VHDL。 这篇文章将会举例说明用 Verilog语言 的设计和验证数字异步串行收发器UART。
UART介绍
通用异步串行收发器UART中有二个独立的VHDL模块。 一个模块实现发射功能, 当另一个实现接收功能, 发射和接收功能模块在顶端设计时组合到一起使用,接收和发射的组合是通信通道所必需的。 数据写入发射器,从接收器读出,所有的数据是以二进制8字节的信号通过CPU接口。在顶端设计时,地址有发射器映射,而且接收器通道能容易地建立从儿进入接口, 两者工用一个称为mclkx 16主控时钟,在每个模块中 mclkx 16 被分成独立的波特率时钟。
UART的功能概况
UART的基本功能概况见下表. 在左边显示传输保持记录,移位记录,传输控制时钟,全部集中在发射机的txmit端。在右边的是显示接收移位寄存器, 接收记录和控制逻辑时钟,所有都包含在接收模块的rxcver端,这两个模组都单独的投入与产出,大部分的控制线,只有双向数据总线, 主时钟和复位线共享的模块。
顶层UART系统的I/O功能描述
UART的标准数据格式
图3显示了UART的串行数据格式, 串行数据包含在帧8个数据字节,以及编码信息比特,在连续传输线路高通, 在传输初始化时开始低一点.,接下来的低一点开始到8比特的数据信息, 低位对于后边高位有重要的作用。然后后边的8 bits数据进行奇偶校验 ,反馈8位数据的结果。
UART时序图
下面显示怎么将从寄存器里出来的数据写给移位寄存器,并在上升沿速率时钟时,转向tx输出。
发送时间如下表,如何得到数据从rx传输到接收移位寄存器然后存储。
发送器
主控时钟称为mclkx16,分频成正确的等于mclkx16/16的txclk波特率。数据以平行的形式锁存模块,而转向以串行格式的tx输出波特率时钟频率。数据转到tx输出跟随串行数据格式显示在图6。
发送器行为描述
发送器等待新的数据来写入模块,新的数据在发送器初始化后发送。数据以并行方式传送串行数据帧的tx输出. 当没有传输序列的地方, tx输出是高通。
发送器实现
产生逻辑的Verilog始于模块端口的声明,这里定义的信号,是移植到从单元,没有方向指明这一点。
在下一个端口定义来自端口的方向,方向指定为输入,输出或(双向) ,见表1。指明端口方向来声明内部信号, 内部信号的Verilog称为wire和reg数据类型,WIRE被数字低音的分配,REG用在分配Verilog里的always时钟,座,常常使用逻辑顺序的分配,但不是一定的,进一步解释见Verilog参考书,数据类型的内部信号如表3 。
我们现在已经通过了所有必要的声明,并已作好准备,看看实际执行, 用硬件描述语言使我们描述的功能的发送器更加行为化, 而不是把重点放在它门级。
在软件编程语言,职能和工作程序分成更具可读性和易处理,一个Verilog的功能及任务是作为相当于复线Verilog代码, 如果某些输入信号或某些影响产出或变数. 使用的职能和任务,通常发生在多行代码都是重复使用的设计, 从而使得设计易于阅读和维护肯定,一个Verilog的功能,可以有多种输入,但始终只有一个输出, 虽然Verilog任务可以兼得多投入,多产出,甚至在某些情况下, 非取长补短,下面显示了Verilog任务,即拥有所有必要的顺序语句,用来描述发送器的转移模式。
我们可以看到在移位寄存器有2个标志位tag1和tag2,在描述空闲和置位模块时产生相同的作用,使用这些 Verilog 工作, 现在我们可以产生一个容易阅读的行为模型的空穴传输过程。如果txdone and txdatardy都是正确的,进入发送器负荷模式. 接下来的负载模式下,进入发送模式转变.,在上升沿的速率时钟,内容tsr转移到tx输出. 奇偶校验过程产生于tsr变化中,如下所示。
重要的一点,就是tsr为零发生在传输过程, 在不同的数据传输时标志位tag 和tsr赋零。
传输序列的模拟
在写上升沿时数据总线容量被锁存,在下一上升沿txclk,thr的容量载入tsr,
文档评论(0)