您当前的位置:五五电子网电子知识单片机-工控设备DSP/FPGA技术基于FPGA的SoC原型验证的设计与实现 正文
基于FPGA的SoC原型验证的设计与实现

基于FPGA的SoC原型验证的设计与实现

点击数:7404 次   录入时间:03-04 11:40:08   整理:http://www.55dianzi.com   DSP/FPGA技术

3 FPGA原型验证测试激励的设计
    测试程序在FPGA基原型验证中起至关重要的作用,现在的SoC设计很多都采用IP复用的方式,本文所设计出的测试程序有可重用性好、功能覆盖率高和调试简易等特点。
    测试程序的基本框架如图5所示,具体模块的测试程序只需要根据框架所提供的接口进行编写相应的测试程序即可,代码主要由以下四部分组成:
    (1)系统启动部分。主要包含系统的异常向量表和系统启动后设置ARM内核的配置程序,如各种模式下的堆栈设置、开启或关闭FIR和IRQ、设定中断向量表等,在Boot_gfd.s中提供了跳到测试程序的接口。
    (2)模块测试部分。在此部分根据各个模块的功能,编写相应的测试函数,系统在执行时会调用这些函数,完成我们各个模块的功能测试。
    (3)头文件部分。为了方便代码的编写和理解,在tyoedef.h文件中对系统的数据类型做了重新定义并包含了部分公用函数的宏定义。一个SoC系统中拥有大量的寄存器,在本设计中用Register.h文件来存放这些寄存器地址的宏定义。

www.55dianzi.com
    (4)Scatter文件部分。scatter文件是用来描述删连接器生成映像文件时需要的地址映射信息和加载域信息。

e.JPG


    下面以UART模块为例,在此框架下根据其接口编写相应的测试程序。
    验证计划:通过待验UART与PC进行通信来验证其功能是否正确,主要验证的功能点有:1)寄存器读写;2)三种工作模式普通模式、自流控模式、LoopBack模式;3)奇偶校验;4)波特率;5)FIFO触发级。
    测试程序:根据上边的功能点可以划分两个测试的基本的函数,一个是寄存器读写的测试函数UART_RWTst(),还有一个就是UART工作配置函数UART_Config(),这个函数提供一个接口,通过这个接口可以配置UART的工作模式、奇偶校验方式、波特率大小、FIFO触发级。在更高层的测试应用程序中调用配置程序,变化配置参数,使其与PC进行收发数据,然后查看或比对数据,判别其功能是否正确。测试程序文件结构如图5所示。
    验证结果:当待验UART向PC发送数据时,在PC的超级终端会显示这些数据,UART功能验证结果可通过观测或数据比对来判断,如图6所示。

f.JPG


   
4 结论
    同样的测试激励程序在此原型平台的执行速度要比SDV(SOFtware driven verifICation)平台快4~6个数量级。本验证平台的搭建过程中对其进行了形式验证和时序分析,大大减少了在原型设计中由于FPGA实现而导致的错误。本平台的软件测试程序具有接口简单、易调试、可重用性好等特点,笔者在此原型平台下完成了部分模块的验证,有效地提高了验证效率,缩短了项目的开发周期,加大了流片成功率。



上一页  [1] [2] 


本文关键字:暂无联系方式DSP/FPGA技术单片机-工控设备 - DSP/FPGA技术