基于UVM的APB slave RAM core的IC验证——1 协议、设计及时序

1协议及设计简介

  • 先进外围总线:Advanced Peripheral BusAPB ——ARM公司提供的低功耗、低复杂度的低成本互联协议。
  • APB slave SARM core 是一个AMBA APB主总线的从外设核。是一个静态随机存储器核心。  通过写操作存储数据。通过APB总线接口读取数据。Ram内核还支持错误响应和等待状态。
  • 在开发SRAM存储核心时,做了以下假设:
  • 1. 内存块大小必须是可调整的。(这意味着可以定义每个内存地址将分配多少内存,例如8 bit, 16 bit, 32 bit等。)
  • 2. 内存大小必须是可配置的。(这意味着您可以将RAM的地址空间定义为063。)
  • 3.地址和数据的总线宽度必须可配置。(您可以为地址和数据总线定义总线宽度。)
  • 4. 设计必须实现可配置的等待状态,该状态可以根据用户需求启用或禁用。
  • 5. 当内存读写操作超出限制时,从机必须触发错误响应。

2体系结构设计——硬件结构

1. 可配置参数

1)内存块和内存大小:  MEMSIZE=64   MEM_BLOCK_SIZE=8

2)地址和数据的总线宽度:  ADDR_BUS_WIDTH=32    DATA_BUS_WIDTH=32

3)重置值配置:  内存地址的重置值 RESET_VAL=0

4)等待状态(开=1,关=0)配置:  EN_WAIT_DELAY_FUNC=0启用时从核将在读写操作传输之间产生随机等待状态延迟:  MIN_RAND_WAIT_CYC=0   MAX_RAND_WAIT_CYC=1

2体系结构设计——IO端口 

Port name

Width

方向

Description

PRESETn

I/P

Active low reset signal

PCLK

I/P

Clock signal of 100MHz

PSEL

I/P

Slave Select Signal

PENABLE

I/P

Enable signal

PWRITE

I/P

Write Strobe.

1 = Write, 0 = Read

PADDR

[ADDR_BUS_WIDTH-1:0]

I/P

Address Bus

PWDATA

[DATA_BUS_WIDTH-1:0]

I/P

Write Data Bus

PRDATA

[DATA_BUS_WIDTH-1:0]

O/P

Read Data Bus

PREADY

O/P

Slave Ready Signal

PSLVERR

O/P

Slave Error Response Signal

3体系结构设计——操作

1. 复位操作: PRESETn=0 ;PRESETn=0持续 >1clk ; 重置后所有内存保持RESET_VAL的重置值

2.  写操作: 根据APB规范进行写操作

3. 读操作:  根据APB规范进行读操作

4.错误响应: PSLVERR=1;  SRAM内核接收到超出地址绑定的内存读或写请求时,它通过将PSLVERR信号设置为1来响应错误。

3体系结构设计——操作:写操作

 

Figure 1: Write Transfer with no wait
Write Transfer with no wait

 

Write Transfer with wait state

 3体系结构设计——操作:读操作

Read Transfer with no wait state

 

Read Transfer with wait state

 3体系结构设计——操作:错误响应

Write Transfer failing

 

Read Transfer with wait state

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
UVM是一种利用SystemVerilog语言开发的硬件验证平台,旨在提高硬件验证的效率和可重用性。APB和SPI作为两种常见的通信协议,在芯片设计中也得到了广泛的应用。基于UVMAPB-SPI验证,可以有效地验证芯片中的通信功能,确保数据传输的正确性和稳定性。 在UVM APB-SPI验证流程中,通过建立测试环境、生成测试用例、执行测试和分析结果等步骤,逐步实现对APB和SPI通信协议验证。其中,测试环境是搭建UVM框架的基础,通常由DUT(设计单元)、测试控制器、测试代理以及信号记录器等组件构成。测试用例的生成是测试环节的核心,通过模拟不同的使用场景、数据和模式,覆盖不同的协议功能,完整地检查APB和SPI的特性和功能,并对其进行评估和优化。测试执行阶段主要是对测试用例进行仿真验证,并记录其输出结果,包括通信数据、时序波形和错误信息等。最后,在测试结果分析阶段,通过对输出结果的统计分析和比较,识别和解决发现的问题,不断优化和改进芯片的设计和开发,提高生产效率和质量。 总之,基于UVMAPB-SPI验证是一种高效可靠的硬件验证方法,能够在芯片设计和开发阶段准确评估通信协议的性能和功能,发现和解决可能存在的问题,保证芯片设计的质量和可靠性,提高整个芯片研发流程的效率和成功率。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值