本科毕业论文微电子学.docx

上传人:牧羊曲112 文档编号:3585308 上传时间:2023-03-14 格式:DOCX 页数:54 大小:63.84KB
返回 下载 相关 举报
本科毕业论文微电子学.docx_第1页
第1页 / 共54页
本科毕业论文微电子学.docx_第2页
第2页 / 共54页
本科毕业论文微电子学.docx_第3页
第3页 / 共54页
本科毕业论文微电子学.docx_第4页
第4页 / 共54页
本科毕业论文微电子学.docx_第5页
第5页 / 共54页
亲,该文档总共54页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《本科毕业论文微电子学.docx》由会员分享,可在线阅读,更多相关《本科毕业论文微电子学.docx(54页珍藏版)》请在三一办公上搜索。

1、本科毕业论文微电子学四川大学本科毕业论文 UART接口设计及验证 UART接口设计及FPGA验证 The Design of UART Interface and FPGA Verification 专业:微电子一班 学生:熊 涛 指导教师:王 勇,高 博 摘 要:随着电子技术的发展,以及数据传送的需要,通用异步接收/发送器已成为MCU、CPU、DSP等的基本配置,应用广泛。UART数据通过串行输入、输出,不同装置间通信不需要传送时钟信号,避免了同步传送的时序处理问题,数据线引脚较少,避免了信号间的相互干扰,是未来数据传送的发展方向。本文主要讨论如何应用Verilog HDL语言,基于FPGA

2、器件实现可复用的UART IP Core。通过修改配置文件,用户可以根据需要设置相应的参数,以实现相应功能的UART器件。本设计模块主要包括UART发送器、接收器、波特率发生器,以及总线接口控制逻辑。设计通过Xilinx公司的Spartan3系列器件XC3S400 FPGA进行功能验证。 关键词:UART、IP核、发送器、接收器、波特率发生器、Verilog HDL Abstract: With the development of electronic technology, as the need of data transmitter, the Universal Asynchronou

3、s Receiver/Transmitter (UART) now is the basic component of MCU, CPU, DSP , etc. By series data input/output, there is no need to send clock signal when communication between different equipments, avoiding timing synchronous problem, and the data pin is only one, avoid the disturb among the signals

4、in parallel communication. So, series data transmitting is the development direction in future. This paper focuses on how to use Verilog HDL to carry out reusable UART IP Core, based on FPGA. By modifying the configuration documents, the user can design different UART component. The design is made u

5、p of these modules, such as Transmitter, Receiver, Bade_rate generator, and the Bus interface mastering logic. When validating the design, we use XC3S400 FPGA of Xilinx CO.,LTDs Spartan-3 spectrum. Key Words: UART , IP Core,Transmitter, Receiver, Verilog HDL i 四川大学本科毕业论文 UART接口设计及验证 目录 第一章 引言1 第二章 U

6、ART的协议.2 2.1 异步通信2 2.2串行通信的过程及通信协议.3 2.2.1串并转换与设备同步.3 2.2.2串行通信协议3 2.3 UART的典型应用.5 2.4 UART的时钟控制.6 2.5 UART的数据采样.6 第三章 UART的硬件设计.7 3.1 UART总体构架.7 3.1.1 UART结构.7 3.1.2 UART的帧格式.7 3.1.3 UART 的设计规格8 3.2 串行数据发送模块 11 3.2.1 发送顶层模块. 11 3.2.2 取数控制. 12 3.2.3 发送状态机. 13 3.2.4 EDA工具验证 14 3.3 串行数据接收模块 15 3.3.1 接

7、收顶层模块. 15 3.3.2 数据同步装置. 15 3.3.3 数据抽样装置. 16 3.3.4 接收状态机. 17 3.3.5 EDA工具验证.18 3.4 波特率发生器 18 3.4.1 波特率发生器概述18 3.4.2 EDA工具验证19 3.5 总线接口控制模块. 19 3.5.1 接口功能描述20 3.5.2 EDA综合结果.21 ii 四川大学本科毕业论文 UART接口设计及验证 第四章 UART的FPGA验证.22 4.1 Xilinx Spartan-3 系列器件介绍. 22 4.2 FPGA实现过程 23 第五章 结论26 致谢27 参考文献28 外文译文29 翻译原文35

8、 iii 四川大学本科毕业论文 UART接口设计及验证 第一章 引 言 目前,基于传统IC芯片的微电子应用系统设计技术正在转向基于知识产权核的片上系统技术发展。IC设计在国内外的发展很快,各种规模的IC设计中心和公司不断出现。因此,IP核的设计已开始逐渐成为国内微电子系统设计的一项支撑技术。从应用功能角度划分,IP核分为两大类:微处理器IP核和各种接口IP核。其中,接口IP核在数字通信系统中有着广泛的应用。 设备间的通信方式,可分为并行和串行两种。在相同频率下,并行总线优于串行总线。随着并行总线的数据传输率越来越高,传统的并行接口逐渐暴露出一些信号传输上的缺陷,其中最致命的莫过于信号互相干扰问

9、题。要满足高速传输的需要,要么提升它的总线频率,要么增加数据宽度。但是这两种都会导致成本的上升,并且使信号偏移和串扰更加严重。而串行技术采有极少的数据线,并使用差分信号线,在传输数据时几乎不会因为受到干扰而出错。 通用异步接收器和发送器用异步串行输入、输出进行通信。串行传输以速度为代价,换取了成本的降低和连线复杂度的降低。UART提供串行异步接收数据的同步化,发送器和接收器两个部分的并串转换和串并转换,对于串行传输系统而言,这些功能是必不可少的。串行数据流的同步化是通过给发送数据增加起始位和停止位、以形成一个数据字符而实现的。数据完整性是通过在数据字符中附加一个校验位来实现的,由接收器来检验。

10、对于主机系统,UART就像一个能读取和写入的8位输入和输出端口,任何时候,当主机要发送数据,它只需以字节格式把这些数据发送到UART;当UART从另一个串行装置接收数据时,它把这些数据临时缓存在它的FIFO中,然后通过内部寄存器位或硬件中断信号向主机指示这些数据的可用性。 随着串行通信技术的发展,新一代的串行通信接口如USB1.0,USB2.0,1394,SATA等高速串行接口逐渐成熟,串行通信的传输速度不断提升,接口技术有串行化的趋势。本课题通过对由CCITT制定的串并转换协议RS-232-C, 及其协议实现的通用器件UART的研究、实现,以期进一步了解串行通信技术,并系统学习IP Core

11、 的设计。 1 四川大学本科毕业论文 UART接口设计及验证 第二章 UART的协议 UART按照异步通信传输格式传送数据,它的传送符合通信协议的规范。以下主要介绍异步通信及通信协议,以及UART中数据传输的具体方式。 2.1 异步通信 在异步通信中,数据是一帧一帧传送的, 一帧的数据格式如下图所示。 图 2-1 异步通信的一帧数据格式 在帧格式中,一个字符由四个部分组成:起始位、数据位、奇偶校验位和停止位。起始位只占用一位,通知接收设备一个待接收的字符开始到达。线路上不传送字符时应保持为1,接收端不断检测线路的状态,若连续为1后测到一个0,就表示发来一个新字符,应马上准备接收。字符的起始位还

12、被用作同步接收端的时钟,以保证以后的接收能正确进行。 起始位后面紧接着是数据位,它可以是5位、6位、7位或8位。 2 四川大学本科毕业论文 UART接口设计及验证 奇偶校验只占一位,也可以不用校验位,则这一位就可省略。也可用这一位来确定这一帧中的字符所代表信息的性质。停止位用来表征字符的结束,一定是高电位。停止位位宽可以是1位、1.5位或者2位。接收端收到停止位后,表明上一字符已传送完毕,同时,也为接收下一个字符做好准备,如果再接收到0,就是新的字符开始传送。若停止位以后不是紧接着一个字符,则使线路电平保持为高电平。 2.2 串行通信的过程及通信协议 串行通信指数据是一位一位按顺序传送的通信方

13、式。它的突出优点是只需一对传输线,这样就大大降低了传送成本,特别适用于远距离通信;其缺点是传送速度较低。串行通信的传送方向通常有三种:单工、半双工、全双工。全双工是一对单向配置,它要求两端的通信设备都具备完整和独立的发送和接收能力。本文设计的UART以全双工模式工作。 2.2.1 串并转换与设备同步 两个通信设备在串行线路上成功地实现通信必须解决两个问题:一是串并、并串转换,即如何把要发送的并行数据串行化,把接收的串行数据并行化;二是设备同步,即同步发送设备和接收设备的工作节拍,以确保发送数据在接收端被正确读出。 2.2.1.1 并串转换与串并转换 串行通信是将计算机内部的并行数据转换成串行数

14、据,然后将其通过一根通信线传送;在接收时将串行数据再转换成并行数据,再通过与主机的连接将其送到计算机中。 在计算机串行发送数据之前,计算机内部的并行数据被送到移位寄存器并一位一位地移出,将并行数据转换成串行数据。如下图所示。 8765432187654321876543并行数据2串行数据18图 2-2 发送时的并串转换 在接收数据时,来自通信线路的串行数据被送入移位寄存器,移位保存满8位后并行 3 四川大学本科毕业论文 UART接口设计及验证 送到计算机内部。 78串行数据18765432187654321654321并行数据2.2.1.2 设备同步 图 2-3 接收时的串并转换 进行串行通信

15、的两台设备必须同步工作才能有效地检测通信线路上地信号变化,从而采样传送数据脉冲。设备同步必须保证两点:一是必须采用统一的编码方法;二是通信双方必须保证相同的传送速率。 统一的编码方法确定了一个字符的位发送顺序和位串长度,以及统一的逻辑电平规定,即电平信号高低与逻辑1和逻辑0的固定对应关系。 通信双方只有保持相同的速率,才能确保设备同步,这就要求发送设备和接收设备采用相同频率的时钟。发送设备在统一的时钟脉冲上发出数据,接收设备才能正确检测出与时钟脉冲同步的数据信息。 2.2.2 串行通信协议 通信协议是对数据传送方式的规定,包括数据格式定义和数据位定义等。通信双方必须遵循统一的通信协议。串行通信

16、协议包括同步协议和异步协议。以下是异步串行通信协议和异步串行协议规定的字符数据的传送格式。 1、起始位 通信线上没有数据被传送时处于逻辑1状态。当发送设备要发送一个字符数据时,首先加入一个逻辑0的信号,这个逻辑低电平就是起始位。起始位通过通信线传向接收设备,接收设备检测到这个逻辑低电平后,就开始准备接受数据位信号。起始位能使设备同步,通信双方必须在传送数据位前协调同步。 4 四川大学本科毕业论文 UART接口设计及验证 2、数据位 当接收设备接收到起始位后,紧接着就会收到数据位。数据位的个数可以是5、6、7或8。这些数据位被接收到移位寄存器中,构成传送数据字符。在字符数据传送过程中,数据位从最

17、低有效位开始发送,依次顺序在接收设备中被转换为数据。 3、奇偶校验位 数据位发送完,可发送奇偶校验位。奇偶校验属于有限差错检测,通信双方需约定一致的奇偶校验方式。如果选择偶校验,那么组成数据位和奇偶位的逻辑1的个数必须是偶数;如果选择奇校验,那么逻辑1的个数必须是奇数。 4、停止位约定 在奇偶位或数据位之后发送停止位。停止位是一个字符数据的结束标志,可以是1位、1.5位或2位的高电平。接收设备收到停止位之后,通信线路上便又恢复逻辑1状态,直至下一个字符数据的起始位到来。 5、波特率设置 通信线上传送的所有位信号都保持一致的信号持续时间,每一位的信号持续时间都由数据传送速度决定,即以每秒多少个二

18、进制位来衡量的,这个速度就叫波特率。如果数据以300个二进制位每秒在通信线上传送,那么传送速度为300波特,通常记为300b/s。 6、握手信号约定 计算机与modem进行数据交换时,往往通过一些信号线作为交换数据的先提条件,当满足条件时允许数据进行传送;当不满足条件时,处于等待状态,等到允许数据传送的信号发生时,才又开始传送数据。 2.3 UART的典型应用 UART由于理想的低功耗、降低软件开销、降低CPU 开销、避免丢失数据、 发送和接收通道可以在不同的波特率下工作等优点,广泛应用于对速度要求不高的数据传输中。典型应用如下: ADSL boxes 基站 PC PABX 系统 便携式电话

19、Fax 服务器 5 四川大学本科毕业论文 UART接口设计及验证 Modem 集线器和路由器 工业自动控制 导航系统 自动售货机 其他更多 2.4 UART的时钟控制 UART以异步方式工作,接收器和传输器工作于不同的时钟频率,在传送数据的时候,一定要预先知道被传送数据的传输频率。也就是说,对于接收的UART来说,它在接收之前需要知道传输的UART的工作频率;相反,对于传输的UART来说,在它传输之前应该知道接收的UART的工作频率。由于很多情况下,同一个UART的传输器和接收器都工作于相同的频率下,可以把UART的传输、接收模块设置为统一的工作频率。 2.5 UART的数据采样 在接收器接收

20、数据时,UART的内部时钟频率往往高于外部数据输入频率。当接收器开始接收信号时,如果内部时钟工作的频率接近或者小于外部数据传输频率,那么在接收器接收数据时,在数据采样的边缘很可能采集不到数据,或者采集到错误的数据。采样的频率可以设置为外部数据传输频率的8倍,16倍。该UART采用的16倍外部时钟频率,采样的波形图如下所示。 sampling the start bitsampling the incomingdatasampling the stop bitstart bitUART Receiversamplesthe incomingdata using 16BaudRate Clocks

21、top bitLSBTuaMSB0123456781图 2-4 采样波形图 6 四川大学本科毕业论文 UART接口设计及验证 第三章 UART的硬件设计 UART是广泛使用的串行数据传输协议,允许在串行链路上进行全双工的通信。串行外设用到RS232-C异步串行接口,一般采用专用的集成电路即UART实现。如8250、8251、NS16450等芯片都是常见的UART器件,这类芯片已经相当复杂,有的含有许多辅助的模块。有时我们不需要使用完整的UART的功能和这些辅助功能。如果设计上用到了FPGA/CPLD器件,那么就可以将所需要的UART功能集成到FPGA内部。本设计使用Verilog HDL将UA

22、RT的核心功能集成,从而使整个设计更加紧凑、稳定且可靠。 3.1 UART总体构架 3.1.1 UART结构 UART主要有由数据总线接口、总线控制逻辑、波特率发生器、发送部分和接收部分组成。其功能包括微处理器接口,发送缓冲器、发送移位寄存器、帧产生、并转串、数据接收缓冲器、接收移位寄存器、帧产生、串转并。 图 3-1 UART的模块构成 DATAData BUS andLogic ControlerDATAUARTTransmitterDATALOGIC CONTROCLKDATASYS_CLKBaud GeneraterUART Receiver3.1.2 UART的帧格式 UART的帧包

23、括线路空闲状态、起始位(start bit,低电平)、58位数据位(data bits)、校验位(parity bit,可选)和停止位(stop bit,位数可为1、1.5、2位)。这种格式是由起始位和停止位来实现字符的同步 UART内部一般有配置寄存器,可以配置数据位数、是否有校验位和校验的类型、停止位的位数等7 四川大学本科毕业论文 UART接口设计及验证 设置。 1 character8 bit data00/10/10/10/10/10/10/10/11LSBMSBstart bit 00/10/10/10/10/10/10/10/1start bitstop bit图 3-2 UAR

24、T的帧格式 3.1.3 UART 的设计规格 设计采用模块化、层次化的设计思想,全部设计采用Verilog HDL实现。整个UART IP由串行数据发送模块、串行数据接收模块、接收和发送FIFO、总线接口逻辑、寄存器和控制逻辑构成。串行发送模块和接收完成并/串和串/并的转换。发送和接收FIFO用于缓存发送和接收的数据。总线接口逻辑用于连接UART IP内部总线和微控制器接口。寄存器和控制逻辑实现UART IP内部所有数据的收发、控制和状态寄存器、内部中断的控制及波特率信号的产生。 3.1.3.1 UART模块的划分 该UART主要由波特率产生器模块、发送器模块、接收器模块、微控制器模块构成。结

25、构图可参考图 3-1。 主要模块代码包括: UART.v :UART的顶层模块,主要是完成各子模块的调用。 U_XMIT.v :异步发送传输模块,将数据由并行转换成串行的输出。 U_REC.v :异步接收模块,完成数据由串行到并行的转换,并送给CPU。 U_BAUD.v :波特率生成模块,主要产生波特率时钟。 U_MP.v :微控制器模块,完成UART内部信号的处理、与外部信号的连接。 3.1.3.2 输入输出信号描述 整个UART的输入输出信号如下描述: 表3-1 UART输入输出信号说明 信号 输入/输出 输入输出信号定义 SYS_CLK input 系统时钟 信号说明 8 四川大学本科毕

26、业论文 UART接口设计及验证 表3-1续 SYS_RST MP_CS MP_WR MP_RD BAUD_RAT_DIV UART_DATA MP_DATA_TO_UART UART_XMITH XMIT_DONE MP_DATA_FROM_UART MP_DATA_READY input Input Input Input Input Input Input Output Output Output Output 系统复位信号 UART片选信号 UART写使能信号 UART读使能信号 波特率分频系数 UART数据接收端 控制器向UART的将要输出的数据 UART数据发送端 UART数据发送完

27、成反馈信号 UART到控制器的UART已经接收到的数据 UART通知控制器可以取数信号 3.1.3.3 模块简介 1、 发送器模块 发送器模块主要由并串转换装置、状态机、逻辑控制单元和数据选择器构成。它主要是负责并行数据转换成串行数据的输出,并在数据传输的开始置开始位0,数据传输结束是置停止位1。 图 3-3 发送器模块外部接口图 表3-2 发送器输入输出信号说明 信号 输入/输出 输入输出信号定义 UART_CLK UART_RST XMITH input input input UART时钟 UART复位信号 UART发送使能信号 信号说明 9 四川大学本科毕业论文 UART接口设计及验证

28、 表3-2 续 XMIT_DATA UART_XMITTH UART_DONEH input output output UART发送数据并行输入口 UART发送数据线 UART数据发送完成应答信号 2、 接收器模块 接收器模块主要由状态机、串并转换装置和逻辑控制单元组成。主要功能是在检测开始位后,对输入的有效数据进行串行到并行的转换,在接收到的数据到一个字符宽度后将并行数据输出。 图 3-4 接收器模块外部接口图 表3-3 接收器输入输出信号说明 信号 输入/输出 输入输出信号定义 UART_CLK UART_RST UART_DATA REC_DATA REC_READY input in

29、put input output output UART时钟 UART复位信号 UART数据接收信号 UART接收数据并行输出线 UART数据接收完成应答信号 信号说明 3、 波特率产生模块 波特率产生模块主要由计数器、逻辑控制单元和反向器构成。它主要负责由系统时钟生产波特率时钟。 图 3-5 波特率产生模块外部接口图 10 四川大学本科毕业论文 UART接口设计及验证 表3-4 发送器输入输出信号说明 信号 输入/输出 输入输出信号定义 SYS_CLK SYS_RST BAUD_RAT_DIV UART_CLK input input input output 系统时钟 系统复位信号 波特率

30、分频系数输入 UART时钟输出信号 信号说明 4、 总线接口控制模块 本设计的数据接口比较简洁,包含两个接口:UART 管脚和同步处理器总线接口。UART 管脚包括发送和接收管脚,能直接通过底层通信协议与计算机进行通讯,也能直接与远程的UART器件进行数据交换。同步处理器数据接口是一个8位并行总线,受UART 控制模块的控制和驱动。由于其端口在后文中有很详细的说明,这里就不再累诉。 图 3-6 总线接口控制模块 3.2 串行数据发送模块 3.2.1 发送顶层模块 串行数据发送模块将数据或地址码由并行转换为串行,并从串行总线输出。设计采用11 四川大学本科毕业论文 UART接口设计及验证 有限状

31、态机实现,其顶层模块图如下 图 3-7 UART发送器顶层模块 UART transmitter各信号定义: 输入部分: UART_CLK : 波特率时钟,频率是传送波特率的16倍 XMITH :输入使能位,高电平有效 SYS_RST_L : 系统复位,高电平有效时,发送器回到初始工作状态 XMIT_DATAH : 并行输入数据,8 bits ,需要传送的数据 输出部分: UART_XMITH : 串行输出数据,包括起始位和结束位 XMIT_DONEH : 每输出一字节数据,变为高电平,提示主机传送完毕 3.2.2 取数控制 为了确保数据的同步性和准确性,UART发送器利用两个计数器来控制发送

32、:Xmitbit Counter和Bit_Cell Counter。Xmited bit Counter用来控制发送的数据个数,数据可取,并开始传送时,用Xmited bit Counter来确定何时插入正确的起始位,数据传送完毕,即Xmited bit Counter计数到传送的数据宽度时,插入结束位。而另一个计数器Bit_Cell Counter是为了从寄存器中取数时控制数据位宽而设计的。 12 四川大学本科毕业论文 UART接口设计及验证 图3-8 发送器取数原理图 在上图中,T为1 bit数据的位宽,TUA=T/16,为波特率时钟周期。将发送字符中的每一个数据用16倍频的信号去对其抽样

33、,计数器每进行一次循环,就采样1 bit数据,并在将该数据输出。所以在发送字符的数据宽度应为TUA的16倍,而起始位和结束位的位宽可以通过修改配置文件来确定用户需要的数据宽度。 3.2.3 发送状态机 发送器的主要控制装置为其状态机。分为空闲、取数、发送三个状态。下图为状态机流程图。 X_STOPX_SHIFTBITCELL_CNTRH!=15XMITH=0XMITH=1RESETX_IDLEX_STARTBITCELL_CNTRH!=15X_WAITREAD_BITCNTRH=WORD_LEN图 3-9 发送状态机流程图 13 四川大学本科毕业论文 UART接口设计及验证 各个状态说明如下:

34、 空闲状态:状态机不断检测发送UART使能位,如果使能位为高、UART使能打开,串行发送进入取数状态。 取数状态:在此状态,分两个周期从发送寄存器中取出待发送的数据或者地址,然后进入发送状态。 发送状态:在此状态,状态机按照九位串行数据的格式依次发送开始位、数据位、地址指示位。待停止位发送完毕后,返回空闲状态。一个字节的数据发送完毕后,进行下一个字节数据的发送流程。 发送状态其由R_WAIT的内部信号XMITDATASELH控制,未在图上标出。而X_START、X_STOP分别为起始和结束状态,在此状态,分别为数据添加起始位和结束位。X_WAIT为等待状态,由计数进行控制,计满一个循环后才对寄

35、存器进行移位并取数。在X_SHIFT状态,有效数据被送出。 3.2.4 EDA工具验证 3.2.4.1 综合顶层模块 图3-10 发送器顶层综合图 由上图可以看出,综合出来的结果与设计的构想一致,内部层次较为合理。 限于篇幅,发送器内部各小模块的综合结果将不再赘述。 3.2.4.2 发送验证波形图 图3-11 发送数据验证波形图 14 四川大学本科毕业论文 UART接口设计及验证 上图是由Modelsim仿真得到的验证波形图。限于篇幅,在这里只列出了波形图的一部分,包括传送一字节数据的完整周期。由上图可以看出,在Reset之后,发送器检测到使能位有效,准备传送数据。发送端先插入长度为一个位宽的

36、起始位0,然后将要传送的数据8b01010101从低位到高位逐个输出,即uart_xmitH依次送出1、0、1、0、1、0、1、0,送完数据以后,再插入长度为一个位宽的结束位1,整个字符连同起始位、结束位就传送完毕。起始位和结束位是通过计数器bitcountH来控制的,在计到8以后,该计数器将被置0。而另一个计数器bitcellcount控制位宽,在整个周期内变化太快,未在图中列表里表示。 3.3 串行数据接收模块 3.3.1 接收顶层模块 串行数据接收模块将串行总线上送来的串行数据转换成并行数据并输出,接收逻辑也采用有限状态机实现,接收模块顶层图如下 UART Receiver 各信号定义:

37、 输入部分: UART_CLK : 输入波特率时钟,频率为波特率的16倍 SYS_RST_L : 输入系统复位信号,高电平有效 UART_DATAH : 外部输入的串行数据 输出部分: REC_DATA : 接收并转化得到的8 bit 数据输出 REC_READY : 串并转换结束,为高电平,提示外设送下一个数据 3.3.2 数据同步装置 由于数据异步输入,为了保证在接收器内部处理时,数据在时钟的上升沿稳定,在输入端加入两个串联的D触发器,实现数据的同步: 图 3-12 接收器顶层模块图 15 四川大学本科毕业论文 UART接口设计及验证 DATADATA_TDATA_SCLK 图 3-13

38、接收端数据同步装置 其RTL级描述为: always (posedge UART_CLK) if begin DATA_T = DATA; /触发第一次 DATA_S = DATA_T; /触发第二次 end 示意波形图: CLKDATAxx0100010 DATA_R DATA_R_1D 图 3-14 输入同步示意图 xxxx010001xxxxxx010003.3.3 数据抽样装置 3.3.3.1 抽样原理 为了使抽样数值更加准确,在每个数据位中间进行三次抽样,即在UART_CLK的计数值为6,8,10时抽样,最后比较收到的0和1的个数,输出抽样次数最多的数据。原理图如下: 16 四川大学本科毕业论文 UART接口设计及验证 CLKTLSBMSB12345678DATAT1T2T3TuaThe First Sample: T1,X=6The Second Sample: T2,X=8The Three Sample: T3,X=10X=16图 3-15 接收数据抽样原理 3.3.4 接收状态机 接收逻辑也采用有限状态机实现,分为空闲状态、寻找开始位、接收数据和保存数据四个状态。流程图如下: 图 3-16 接收状态机流程图 R_SAMPLEBITCELL_CNTRH!=12READ_BITCNTRH=WO

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号