陈 琦 丁丽娜
(1.哈尔滨光宇电气自动化公司,黑龙江 哈尔滨 150078;2.滨绥化学院,黑龙江 哈尔滨 152061)
基于SAK-C167单片机的智能IC测试仪设计
陈 琦1丁丽娜2
(1.哈尔滨光宇电气自动化公司,黑龙江 哈尔滨 150078;2.滨绥化学院,黑龙江 哈尔滨 152061)
针对一些IC芯片类电子元件进行检验困难的问题,如RAM、ROM、FLASH或单片机等芯片,设计了智能IC检测仪器,此测试仪基于C167单片机,通过IO扩展接口和被测芯片测试板连接,对被测芯片进行功能性验证,并通过液晶显示出结果,也可以由CAN接口将结果传递给其他设备或上位机。经实际验证,此测试仪具有简单、可靠的特点,降低了IC测试的复杂性和测试成本。
C167;测试仪;单片机;IC测试
在对IC芯片(集成电路Integrated Circuit)类电子元件进行检验时,比如电子工厂要对新采购的RAM、ROM、FLASH或单片机等芯片进行进货检验,但由于这些芯片结构复杂、引脚数量多,且多为贴片元件,通常难以测量其是否损坏,专用检测设备成本高,使用方法复杂。一般采购方只能通过外观检查粗略判断,或边使用边检验,一旦在使用中出现问题,查找原因困难,且芯片已经焊接在线路板上,更换芯片也比较困难。针对这种无法测试或缺少有效方法测试的问题,此“智能IC测试仪”自动完成对芯片检测,将检测结果反馈给测试人员,以提高检验水平,保证进货质量。
智能IC测试仪主要由测试仪主控板、扩展板、上位机操作软件等组成。系统原理如图1所示。
图1
主控箱主要完成数据采集、数据滤波、键盘管理、数据显示、参数存储及串行通讯等功能,是测试仪的数字化核心。具体过程为先将被测IC扩展板插入扩展口,将被测IC芯片放入芯片夹具,通过3×3按键和128×64液晶显示选择对应芯片的测试目录,按提示时间等待测试结束,直接在液晶屏上查看测试结果或在通过串行连接的上位机上通过软件查看。
扩展板则是针对每种类型IC有对应的扩展板,上有对应芯片封装的测试座,可以轻易拿出或放入被测芯片,扩展板通过扩展接口和主控板连接。由于IC种类繁多的,以下主要针对应用范围广的几类IC的扩展板进行说明,如果测试单片机类IC芯片须针对此芯片做对应测试程序,并将对应测试程序传入待测芯片,主要进行IO测试。如果是存储类IC芯片,测试仪可通过扩展口对被测芯片进行读写或擦除测试,其原理为通过通用IO模拟被测芯片操作的时序进行读或写。对于存储芯片,为了测试到每一位是否有损坏,可以先往被测芯片所有存储地址上写入数据,再读出看是否正确;接着整体擦除再读出看是否正确。经过这样的步骤就可以判定被测存储芯片是否正常。注意对于掉电保持数据类的存储芯片还需要断电后,查看数据是否丢失。对于模数转换器类IC,可将通用IO模拟出AD芯片所需的时序,用可调电阻器输入电压等。
智能IC测试仪的硬件电路采用了模块化设计思想。其通用性非常突出,系统主要由四个模块组成:
2.1 控制和数据处理模块
此模块主要完成主测试程序、数据采集、数据滤波、键盘管理、数据显示、参数存储及串行通讯、CAN通讯等,是测试仪的数字化核心。主控模块采用英飞凌的SAK-C167单片机设计,此单片机为工业级,采用C166内核可工作在20MHz时钟下,四级流水线结构;达16M字节线性数据和指令地址空间;8位或16位外部数据总线,可选复用或非复用外部地址/数据总线;1024字节片内特殊功能寄存器区;16个优先级的可编程中断,56个中断源;16通道10位的A/D转换器,转换时间9.7μs;两个16通道的捕获比较单元,4通道PWM单元;两个多功能通用定时单元,有5个16位定制器;两个串行通道,两个片内CAN接口;可编程看门狗定时器;通用IO达111个,部分管脚带有输入阈值和滞后可选功能;温度范围-40°C到125°C,其特别适合工业应用,性能十分出色。
图2
主控芯片外扩两片AMD公司的128K字节flash(AM29F010),及2片宇庆公司的128K字节静态RAM(UT621024SC),程序存放在flash中,保证了程序代码过大时,存储空间的足够大,程序运行速度不受影响。外扩存储芯片直接挂在C167总线上,其原理图2。
2.2 液晶显示模块与扩展模块
显示部分主要是把测试后的数据或结果进行动态显示。选用了一款工业级128×64点阵液晶,其具有驱动元件少,性能可靠,高低温范围广等优点。使用其显示4行16×16汉字。由于使用汉字较少,所以没有采用全汉字库,而是直接加入自己所需的汉字字库。这样节省了很多存储空间。测试仪扩展模块主要由专用芯片测试夹具,测试外围电路,运行指示灯等组成,通过扩展接口与测试仪连接,当测试时,需将被测芯片按正确方向放入对应的扩展板。对测量不同的IC,可以制作不同扩展模块和主模块相连接,用主控板上引出的通用IO和扩展模块上被测IC连接,根据被测IC功能,用通用IO模拟出驱动时序,对其进行读写测试。由于扩展模块种类繁多,以下以测试常用EEPROM芯片的扩展模块原理图为例,如93Cxx系列和24Cxx系列测试原理图,P4为芯片夹具,可以适合so-8封装,以上两种类型IC可以分别测试。分别用IO模拟出IIC接口以及SPI接口读写时序,实现串行EEPROM的读写操作。
2.3 通讯模块
智能IC测试仪采用隔离CAN接口与上位机或其他设备通讯,CAN通讯采用NXP公司生产的PCA82C250控制器接口芯片。其应用范围广,完全符合ISO11898标准,抗干扰强;有斜率控制,可降低射频干扰(RFI);差分接收,抗宽范围的共模干扰及抗电磁干扰(EMI);热保护功能,低电流待机模式;未上电的节点对总线无影响等优点。原理图如图3,为保证速度采用了6N137高速光隔。
图3
软件部分是该测试仪的重要组成部分,也是实现设计功能的重要一环。根据系统的要求,软件编程的任务包括:单片机测试部分、RAM芯片测试部分、ROM芯片测试部分、EEPROM芯片测试部分、AD芯片测试部分,数据显示部分、键盘管理部分、RS232串行通讯部分、CAN通讯部分等。
3.1 系统子程序测试算法设计
对于单片机类芯片,测试方法为先进行下载测试,然后把所有IO分成两组,一组设为输入,一组设为输出,分别互相短接(注意控制电流不要过大,可串接电阻),判断输入IO口得道的状态是否和输出IO设置的状态相符,入不相符则可判定此对IO不正常。把两组IO端口分别反向配置,既输入变输出,输出变输入,同上测量,即可简单的断定出损坏或接触不良的IO对应的引脚。
对于存储类芯片,只需向其对应地址写入0xAA,然后读出此地之数据看是否和写入相符,第二次再写入0x55,如上方法读出对照,也可再写入0x00测试。这样既可把所有存储位置都测试到。注意flash芯片再写数据前要先擦除数据。
对于AD芯片可将芯片输入端分别接入电源正和地或可调电阻器,将输出的数字量处理后,用液晶或上位机软件显示数值,即可判定芯片是否正常。
3.2 按键功能和人机界面
测试仪按键采用3×3按键组,按键的功能主要是选择要测试的项目和开始测试。其中上下键,用于选择菜单;退出键,用于退出当前状态;确认键,用于进入所选菜单或开始测试;复位键,用于系统复位功能。系统人机界面设计力求简洁,方便查看,部分显示功能如图4所示:
图4
现智能IC测试仪对以下(不限于)芯片进行了智能检测,SAK-C167(MQFP-144)、IS2416(SOP-32)、AM29F010B(PLCC-32)、AT24C16(SO-8)、AT24C64(SO-8)、AT24C256(SO-8)、FM93C46(SO-8)、AD7812(SO-16)、AD7865(QFP-44)等。
经过实际使用智能IC测试仪,能准确快速测量待检验芯片,效果较好。其解决了通常不能检验或成本过高的检验IC芯片类的问题,提高了检测效率,也使质检部门容易把好进货质量关,从而提高了产品质量。
[1]王珩.ASIC的可测性设计.计算机与数字工程[J].1996(24).
[2]沉吉顺.常用集成电路的建议测试方法[J].电子与自动化,1996.
[3]柯璇.试析新型IC智能测试仪的原理、结构及其使用方法[J].高等函授学报,2003,8,43.
TP368.12
A
1671-0037(2014)10-78-2
绥化学院杰出青年基金项目,项目编号:SJ13005。
陈琦(1982-),男,工程师,本科,研究方向:继电保护和电力电子产品开发。
丁丽娜(1982-),女,工程师,博士,研究方向:单片机及嵌入式教学。