一种DSP2407的中断测试方法
2023-10-29许亚星张智勇李庆楠
许亚星,张智勇,门 茜,李庆楠
(中国航空计算技术研究所,陕西 西安 710065)
0 引言
中断触发是DSP系列芯片必须具备的基础功能,是维持芯片正常工作必不可少的工作机制,因而是考核芯片功能性能的重要指标之一[1],快速判断芯片中断功能是否正常,对芯片筛查具有重要意义。
1 系统架构
本文为了验证DSP2407芯片的中断触发功能,设计一套DSP2407芯片开发板,该开发板包含DSP2407芯片、FPGA芯片以及一些必不可少的外围电路[2],包括时钟、供电、串口通信、CAN通信、I/O电路等,开发板的硬件模块框图如图1所示。
图1 开发板硬件模块图
开发板通过UART总线、CAN总线、I/O硬件与测试设备连接,测试设备使用专用测试软件通过串口下发指令给DSP2407芯片,将芯片响应结果通过串口回传进行显示,或将硬线响应状态直接显示。测试系统整体架构如图2所示[3]。
图2 测试系统架构图
2 软件设计
DSP2407的软件用CCS3.3环境开发,软件系统包含源文件、头文件、CMD文件、汇编文件、库文件等[4]。本文设计的软件包含初始化、任务函数、中断函数、CMD文件配置,其中初始化包含系统初始化、SCI初始化、CAN初始化、GPIO初始化、捕获模块初始化、定时器初始化;任务函数包含SCI解包函数、命令获取函数、功能执行函数、SCI发送函数;中断函数包含SCI接收中断、CAN接收中断、定时器中断、四个捕获中断;CMD文件配置包含程序空间分配、数据空间分配、中断向量分配等。软件模块架构如图3所示。
图3 软件模块图
开发板与测试设备间通过固定格式的422通信进行命令下发和状态上传,通信格式如图4所示[5]。开发板获取到数据包后,通过解包函数对数据进行解析,如果解析正确,通过命令获取函数获得测试项和测试命令,经过功能执行后,将执行结果组包到状态1和状态2进行上传显示。
图4 通信数据包格式
3 工作原理
测试设备下发命令,DSP2407解包后接收到测试命令,向FPGA的特定地址写入中断命令。FPGA检测到写入命令后,根据不同的命令置不同的GPIO为低电平。GPIO通过硬线与DSP2407连接,GPIO电平变低后,会触发DSP2407的不同中断。捕获中断触发后,在不同的中断函数里将中断状态置为不同的值,功能执行函数根据不同的中断状态值,按照表1将相应的对外GPIO置为低电平,同时将中断状态组包填进发送数据包里上传。测试设备检测到特定的GPIO变为低电平后,会在界面上将对应的灯显示为亮色,从而获知不同命令下DSP2407中断的执行结果。
表1 中断与GPIO关系对应表
4 测试结果
按照本文设计,经过调试试验,在测试设备上下发不同的中断触发指令后,测设界面上显示对应的灯会变亮,测试结果符合预期。
5 结论
该方法可以有效、快速测试DSP2407芯片的中断系统响应是否正常,有效提高芯片筛查效率。