没有合适的资源?快使用搜索试试~ 我知道了~
uart 模块级验证小结
5星 · 超过95%的资源 需积分: 5 9 下载量 103 浏览量
2023-03-09
23:10:32
上传
评论 6
收藏 6.22MB PPTX 举报
温馨提示
试读
43页
内容概要: 本章小结重点介绍了uart模块的验证思路,功能点的提取,TB环境框架,以及包含有详细的验证环境代码详解,base case 的dubug,以及最后功能覆盖率的收集提高。内容解释详细。 适用群体: 特别适用与转行的验证工程师,
资源推荐
资源详情
资源评论
UART模块的验证小结
方志勇
理解DUT
Coachip confidential
2
uart design spec
1
2 3
4
5
6
7
Uart概述:
UART是一种异步全双工串行通信协议,它将要传输的资料在串行通信与并行
通信之间加以转换。作为把并行输入信号转成串行输出信号的芯片,UART通
常被集成于其他通讯接口的连结上,其工作原理是将数据的二进制位一位一位
的进行传输。
DUT 功能理解:
DUT design Spec 如左图所示,DUT有两种执行方式,一种是对外围设备接收
的数据进行串行到并行的转换(RX方向);另一种是对传输到外围的数据进行
并行到串行的转换(TX方向)。
DUT 模块理解:
模块1:APB interface,实现接口信号的解码,用于访问状态,配置寄存器,
接收,发送数据到FIFO。
模块2:transmit FIFO,8位宽,16位深,用于存储从APB interface中写入的数
据,直到数据被传输逻辑读走,该fifo可以被disable,使其成为单字节寄存器;
模块3:receive FIFO,12位宽,16位深,用于存储上行端接收的数据以及错误
位信息,直到数据被APB 接口读走,该fifo可以被disable,使其成为单字节寄
存器;
模块4:transmitter,将传输fifo中的数据实现并行到串行的转换;
模块5:receiver,将对外围设备数据进行串行到并向的转换,同时还会执行溢
出,奇偶校验,frame错误检测和中断检测,并将其写入到receive fifo;
模块6:波特率发生器包含自由运行的计数器,产生内部x16时钟和Baud16信
号。Baud16为UART发射和接收控制提供定时信息。Baud16是一种脉冲流,其
宽度为一个uartclock周期,频率为波特率的16倍。
模块7:interrupt generation,该控制器在每个外围设备的基础上实现另一级别
的屏蔽,这样,全局的中断服务例程可以从系统中断服务器中读取;
理解DUT - 设计概述
Coachip confidential
3
控制数据写入UART线路控制寄存器UARTLCR_H。该寄存器内部宽29位,但外部通过AMBA APB总线通过三次写入寄存器位置
UARTLCR_H、UARTIBRD和UARTFBRD进行访问。
UARTLCR_H定义:
•传输参数
•字长
•缓冲区模式
•传输停止位数
•奇偶校验模式
•中断生成。
UARTIBRD和UARTFBRD一起定义波特率除数。
波特率配置:
波特率除数是由16位整数和6位小数部分组成的22位数字。波特率生成器使用该值来确定位周期。波特率除数=UARTCLK /(16xBaud Rate
)=BRDI+BRDF,其中BRDI是整数部分,BRDF是小数点分隔的小数部分
小数m=integer(BRDF*2^n+0.5)
生成内部时钟启用信号Baud16,它是一个UARTCLK宽脉冲流,平均频率为所需波特率的16倍。然后将该信号除以16,得到传输时钟。波特
率除数中的低数字表示较短的位周期,而波特率除数中的高数字表示较长的位周期;
数据传输和接收:
对于传输,数据被写入传输FIFO。如果UART已启用,则会导致数据帧开始使用UARTLCR_H中指定的参数进行传输。数据继续传输,直到
传输FIFO中没有数据为止。一旦数据写入传输FIFO(即FIFO非空),BUSY信号就会变高,并在传输数据时保持高电平。只有当传输FIFO为
空,并且最后一个字符(包括停止位)已从移位寄存器传输时,BUSY才被否定。即使UART可能不再启用,也可以将BUSY断言为HIGH。
当接收器空闲为idle时(UARTRXD连续1,处于标记状态)且在数据输入上检测到低电平(已接收到起始位)时,接收计数器(时钟由
Baud16启用)开始运行,并在正常UART模式下在该计数器的第八个周期对数据进行采样。如果UARTRXD在Baud16的第八个周期上仍然处
于低位,则起始位有效,否则会检测到错误的起始位并将其忽略。如果起始位有效,则根据数据字符的编程长度,在Baud16的每16个周期(
即一个位周期之后)对连续数据位进行采样。如果启用了奇偶校验模式,则检查奇偶校验位。最后,如果UARTRXD高,则确认有效的停止
位,否则会发生帧错误。
理解DUT - 设计概述
Coachip confidential
4
uart 读写时序
uart 数据帧格式
起始位:发送1位逻辑0(低电平),开始传输数据。
数据位:可以是5~8位的数据,先发低位,再发高位,一般常见的就是8位(1个字节),其他的如7位的ASCII码。
校验位:奇偶校验,将数据位加上校验位,1的位数为偶数(偶校验),1的位数为奇数(奇校验)。
停止位:停止位是数据传输结束的标志,可以是1/2位的逻辑1(高电平)。
空闲位:空闲时数据线为高电平状态,代表无数据传输。
验证策略
Coachip confidential
5
验证方法
• 白盒验证
• 随机测试
• 定向测试
• 覆盖率收集
剩余42页未读,继续阅读
创芯人
- 粉丝: 1692
- 资源: 8
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页