基于ARM的数字集成电路测试系统的研究
2018-05-22张建文
张建文
摘 要:为了丰富数字集成电路测试系统功能,实现上位机数据独立传送,本文采用ARM控制器,设计一套数字集成电路测试系统。首先,对ARM处理器进行简要概述,其次,明确设计目标,提出系统设计方案,最后,制定系统调试步骤,并对其调试结果做出分析。调试结果表明:本文提出的数字集成电流测试系统设计方案满足设计要求。
关键词:ARM;数字集成电路测试;软件架构
中图分类号:TP311 文献标志码:A
近年來,数字集成电路逐渐融入人们的日常生活中,无论是农业、工业,还是服务业等,均离不开数字集成电路。目前,集成电路与我国国防建设、国民经济发展建立密切关系。为了保证国防建设与时俱进,提高国民经济发展速度,必须将数字集成电路作为重点研究对象,而ARM处理器是当前应用开发比较火热的技术,其在单片机基础上增加了很多功能,本文将采用该项技术,设计一套测试系统。
1 ARM处理器简介
ARM处理器产品系列有很多,包括ARM9E、ARM10E、Cortex等。ARM体系结构特征如下:
(1)寄存器较多,可根据开发人员需求,应用于多个领域。
(2)体系结构由两部分构成,分别是store、Load。
(3)支持多寄存器指令运行,包括store指令、Load指令。
(4)具备单时钟周期运行,按照单条操作命令执行任务。
(5)支持指令集的扩散,在编程模式中添加了数据类型和寄存器。
2 基于ARM的数字集成电路测试系统软件设计
2.1 设计目标
本次研究将选取ARM作为核心处理器,设计一套数字集成电路测试系统,支持32管脚同时测试,保证其测量深度达到2M,测试频率在20M左右。
2.2 设计方案
本次研究采用软件开发工具为Visual Studio 2008,数据存储与用户信息设置采用的工具为SQL Server2008,ARM程序的开发与调试选取的工具为keill软件,并通过USB口驱动程序。如图1所示为测试系统软件总体架构设计。
2.2.1 上位机软件层
该层次位于整个系统的最上端,与用户直接接触。用户可以根据自身需求,设置测试项目信息、群组信息、个人信息等内容。除此之外,上位机层支持测试结果的展示,使用上位机即可查看测试结果。
2.2.2 USB 驱动层
该层次位于整个系统的中间部分,主要用于驱动函数,构建上位机层与ARM层之间的通信连接,实现数据解析与编排,作为整个测试系统的运行的纽带。
2.2.3 ARM 程序层
该层次位于整个系统结构的最下端,是整个系统运行的核心控制器,支持多个测试版同时运行程序,通过程序编写,分别对各个控制板进行程序控制,从而达到预期目的。
关于系统软件流程设计如下:
本次研究选取ARM作为核心控制器,通过编写程序对各个模块进行实时控制,利用USB总线实现数据发送,使其从上位机传输至ARM中。在其基础上,利用ARM处理器将数据发送到扩展板上,或者将其发送至DTB板、TFB板,最后对交流参数、直流参数、多项功能进行测试,并对其测试结果进行分析。系统软件流程设计如下:
第一步:打开测试工程;
第二步:判断工程是否存在,如果存在,则执行第四步,反之,执行第三步;
第三步:构建新的测试工程;
第四步:判断USB总线连接是否存在问题,如果存在问题,则执行第五步,反之,跳转到第六步;
第五步:构建USB总线连接;
第六步:测试系统初始化处理;
第七步:下载工程参数;
第八步:运行程序;
第九步:芯片测试;
第十步:返回测试结果;
第十一步:判断测试是否停止,如果已经停止,反之,返回第九步;
第十二步:停止测试。
关于上位机软件结构的设计:
该部分设计同样分为3个层次,分别是表示层、业务逻辑层、数据访问层。
(1)表示层设计
该层次的作用主要在于为用户提供结果展示界面,该层次位于上位机软件的最上层,与用户直接接触,用户可以根据自身需求,通过参数设置与程序运行,从而获取数据结果。
(2)业务逻辑层
该层次主要用于业务逻辑处理,通过数据计算,体现业务价值。此次设计将其设置在表示层与数据访问层的中间,在两者之间建立连接,从而实现业务交流。该层次是抽象出来的类,除了需要对数据进行验证,判断其合理性以外,还需要对其操作步骤的完整性进行探究,为用户层提供数据调用工具。
(3)数据访问层
该层次主要用于数据操作,根据实际需求,采取数据修改、删除、添加、查找和更新等多项操作。主要负责数据库系统的访问,对XML文档、文本文档、二进制文档的调整与控制。本次设计将其设计为数据库操作类,为业务层提供数据资源。
3 系统调试步骤与结果分析
为了验证本文提出的测试系统设计方案满足相关需求,本文将对该系统进行调试,经过调试,使其达到设计标准。
此次调试选取的调试环境为Windows 7,并安装keill软件。调试步骤如下:
第一步:运行ARM程序,测试系统功能,并分析数据结果。将测试结果与标准值进行对比分析,判断其是否在误差允许范围之内,如果在该范围内,则通过,无需调整,如果不在该范围内,需要重新设置参数,再次调试。
第二步:调试USB驱动层。利用USB,在上位机层与ARM层之间建立连接。在上位机层发出控制命令,根据命令内容在ARM层编写程序内容,通过观察程序执行结果,检验上位机是否有相应结果出现,从而判断USB是否连接正确,起到预期作用,如果异常,重新调试。
第三步:调试上位机层。该层次主要用于控制与结果验收。以此,对其的调试方法为下达控制命令,在ARM层中检验是否接受到命令信息,另外,在USB层无误的情况下,检验程序运行结果是否可以在该层次显示,如果均无误,则不用再次调试,反之,再次调试。
调试结果见表1。
结语
本文选取ARM作为核心控制器,对数字集成电流测试系统展开研究。本次研究将系统划分为ARM程序层、USB驱动层、上位机层分别进行测试。其中,ARM程序层用于系统控制程序编写与执行;USB驱动层用于构建ARM程序层与上位机层通信连接;上位机层用于下达控制命令与结果展示。经过调试,其结果表明本文设计的基于ARM的数字集成电路测试系统满足设计要求。
参考文献
[1]张红升,王国裕,陆明莹.基于MATLAB定点运算的数字集成电路协同设计方法[J].微电子学,2017(1):87-91.
[2]郄君,韩晓倩,李颜鑫.基于ARM的远程电能质量监测系统的研究与设计[J].电源技术,2016,40(8):1703-1705.
[3]徐立艳.基于ARM和LabVIEW的网络数据采集测试系统设计[J].现代电子技术,2016,39(5):24-27.