CN115994110A - 一种i2c总线信号测试系统、方法、装置及可读存储介质 - Google Patents
一种i2c总线信号测试系统、方法、装置及可读存储介质 Download PDFInfo
- Publication number
- CN115994110A CN115994110A CN202310014249.7A CN202310014249A CN115994110A CN 115994110 A CN115994110 A CN 115994110A CN 202310014249 A CN202310014249 A CN 202310014249A CN 115994110 A CN115994110 A CN 115994110A
- Authority
- CN
- China
- Prior art keywords
- signal
- analog
- voltage
- bus
- comparator
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 128
- 238000000034 method Methods 0.000 title abstract description 27
- 238000012545 processing Methods 0.000 claims description 7
- 238000001514 detection method Methods 0.000 claims description 6
- 230000014759 maintenance of location Effects 0.000 claims description 6
- 238000010998 test method Methods 0.000 claims description 3
- 238000004891 communication Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000036541 health Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Tests Of Electronic Circuits (AREA)
Abstract
本发明提出的一种I2C总线信号测试系统、方法、装置及可读存储介质,所述系统包括:BMC芯片分别与CPLD模块、模数转换器、EEPROM存储器、比较器和从机模块数据连接,CPLD模块分别与模数转换器、数模转换器和比较器数据连接;BMC芯片,用于读取测试指令并对从机模块进行读写操作;模数转换器,用于采集I2C信号电压值;数模转换器,用于将选取的基准电压转换为模拟信号输入到比较器;比较器,用于采集温度传感器的I2C信号,并通过与基准电压的模拟信号比较,得到触发信号;CPLD模块,用于根据触发信号计算信号间隔时间,并判断是否满足I2C协议规范的时序要求,确定测试结果。本发明能够提高测试效率,对每一路I2C总线信号进行多次测量,提高了测试结果的可靠性。
Description
技术领域
本发明涉及计算机技术领域,更具体的说是涉及一种I2C总线信号测试系统、方法、装置及可读存储介质。
背景技术
随着物联网技术的发展,服务器的数量和规模日益增加,由于服务器具有全天无间歇运行的特点,通常采用BMC芯片对服务器进行板级管理来实现服务器的带外管理功能,包括系统健康状态监测、风扇控制、故障指示与告警等。I2C是一种双向二线制同步串行总线,具有低功耗、抗干扰强的特点,支持多主机设备,是BMC芯片进行带外管理,与服务器主机上被监控对象进行通信的重要总线之一,在产品测试时,需要对BMC芯片的I2C总线信号进行测量,以检测BMC的管理模式是否正常。
在服务器硬件测试过程中,需要对I2C总线信号进行测试验证,I2C信号的测试标准需要参考其总线协议规范,定义了11个关于I2C信号的时序测试项,包括起始信号建立/保持时间、数据信号建立/保持时间等,此外,服务器系统中BMC芯片通常支持14条I2C总线,每条总线又通过I2C Switch芯片连接到不同模块,使得系统中I2C总线信号数量众多。依照现有测试方法,使用示波器进行I2C测试,工程师要对每一路I2C总线信号的时序测试项进行逐一验证,费时费力,且效果不理想,并且对两线(SCL、SDA)同时进行测试,需要在板卡上进行飞线操作,操作不当可能会造成板卡短路,进而烧坏板卡。
发明内容
针对以上问题,本发明的目的在于提供一种I2C总线信号测试系统、方法、装置及可读存储介质,能够提高测试效率,对每一路I2C总线信号进行多次测量,提高了测试结果的可靠性,避免了因操作不当导致板卡损坏的问题,降低了硬件成本。
本发明为实现上述目的,通过以下技术方案实现:一种I2C总线信号测试系统,包括:BMC芯片、CPLD模块、模数转换器、数模转换器、EEPROM存储器、比较器和从机模块;BMC芯片分别与CPLD模块、模数转换器、EEPROM存储器、比较器和从机模块数据连接,CPLD模块分别与模数转换器、数模转换器和比较器数据连接;
所述BMC芯片,用于建立与多路温度传感器的I2C总线信号连接,读取测试指令并对从机模块进行读写操作;
所述模数转换器,用于采集I2C总线的I2C信号电压值,并输入到CPLD模块;
所述数模转换器,用于将选取的基准电压转换为模拟信号输入到比较器;
所述比较器,用于采集温度传感器的I2C信号,并通过与基准电压的模拟信号比较,得到触发信号,并输入CPLD模块;
所述CPLD模块,用于根据触发信号计算信号间隔时间,并通过判断是否满足I2C协议规范的时序要求,确定测试结果;
所述EEPROM存储器,用于存储测试指令。
进一步,所述系统还包括Flash存储器,Flash存储器与CPLD模块数据连接,用于存储测试数据。
相应的,本发明还公开了一种I2C总线信号测试方法,包括如下步骤:
步骤1:设备上电后,利用模数转换器得到I2C信号电压值;
步骤2:通过BMC芯片读取EEPROM存储器中的测试指令,对从机模块进行读写操作;
步骤3:采集一路温度传感器的I2C信号,通过比较器得到在相应电压处的触发信号;
步骤4:将触发信号输入到CPLD模块,计算相应触发信号的间隔时间;
步骤5:判断触发信号的间隔时间是否满足I2C协议规范的时序要求,若满足,则重复执行步骤3-步骤5,利用当前测试指令进行I2C总线信号的复测;若不满足,记录当前测试指令;
步骤6:记录测试数据,并执行步骤2,进行下一路温度传感器的I2C信号检测,直至所有温度传感器的I2C信号检测均已完成。
进一步,所述步骤1包括:
设备上电后,I2C总线处于空闲状态,此时SCL与SDA均为高电平,利用模数转换器得到上拉电压Vcc,输入到CPLD模块。
进一步,所述步骤3包括:
选取比较器的基准电压为0.7Vcc与0.3Vcc,通过数模转换器将基准电压转换为模拟信号,记为第一电压VH与第二电压VL,并输入到比较器中;
采集一路温度传感器的I2C信号,将其中的SDA信号和SCL信号输入到比较器中;
比较器将第一电压VH和第二电压VL分别与SDA信号和SCL信号进行比较,得到在相应电压处的触发信号,并确定触发信号对应的时间。
进一步,所述比较器将第一电压VH和第二电压VL分别与SDA信号和SCL信号进行比较,得到在相应电压处的触发信号,并确定触发信号对应的时间,具体为:将第一电压VH与SDA信号进行比较得到两个触发信号,并确定其对应的时间为T4、T8;
将第一电压VH与SCL信号进行比较得到两个触发信号,并确定其对应的时间为T2、T7;
将第二电压VL与SDA信号进行比较得到两个触发信号,并确定其对应的时间为T1、T5;
将第二电压VL与SCL进行比较得到两个触发信号,并确定其对应的时间为T3、T6。
进一步,所述步骤4包括:
通过CPLD模块对触发信号进行处理,通过预设公式计算出I2C信号的时序测试项;
时序测试项包括:
起始信号建立时间tSU;STA=T8-T7
起始信号保持时间tHD;STA=T2-T1
数据信号建立时间tSU;DAT=T6-T5
数据信号保持时间tHD;DAT=T4-T3。
进一步,所述步骤1之前还包括:
将BMC芯片的I2C总线信号经过I2C Switch芯片与每一路不同地址下的温度传感器进行通信;
开始测试前,打开I2C Switch芯片的所有通道,扫描得到挂接的温度传感器对应的地址信息,并将测试指令写入EEPROM存储器。
相应的,本发明公开了一种I2C总线信号测试装置,包括:
存储器,用于存储I2C总线信号测试程序;
处理器,用于执行所述I2C总线信号测试程序时实现如上文任一项所述I2C总线信号测试方法的步骤。
相应的,本发明公开了一种可读存储介质,所述可读存储介质上存储有I2C总线信号测试程序,所述I2C总线信号测试程序被处理器执行时实现如上文任一项所述I2C总线信号测试方法的步骤。
对比现有技术,本发明有益效果在于:本发明公开了一种I2C总线信号测试系统、方法、装置及可读存储介质,优化了I2C信号的测试流程,能够提高测试效率,对每一路I2C总线信号进行多次测量,提高测试结果的可靠性,避免因操作不当导致板卡损坏的问题,降低硬件成本。
由此可见,本发明与现有技术相比,具有突出的实质性特点和显著的进步,其实施的有益效果也是显而易见的。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1是本发明具体实施方式的系统结构图。
图2是本发明具体实施方式的方法流程图。
图3是本发明具体实施方式的触发信号示意图。
具体实施方式
本发明的核心是提供一种I2C总线信号测试方法,现有技术中,依照现有测试方法,使用示波器进行I2C测试,工程师要对每一路I2C总线信号的时序测试项进行逐一验证,费时费力,且效果不理想,并且对两线(SCL、SDA)同时进行测试,需要在板卡上进行飞线操作,操作不当可能会造成板卡短路,进而烧坏板卡。
而本发明提供的I2C总线信号测试方法,首先,检测设备上电后,利用模数转换器获取I2C信号高低电平对应的电压值。然后读取存储器中测试指令,主机发送指令进行主从I2C通信。此时,采集测试点处信号,与数模转换器输出电压进行比较,获取相应触发信号,并将触发信号输入到逻辑控制单元CPLD,计算相应触发信号的间隔时间。最后,判断触发信号的间隔时间是否满足I2C协议规范的时序要求,若间隔时间满足要求,则利用当前测试指令进行I2C总线信号的复测,待复测完成后,记录测试数据;若间隔时间不满足要求,记录当前测试指令与测试数据。由此可见,本发明能够提高测试效率,对每一路I2C总线信号进行多次测量,提高测试结果的可靠性,避免因操作不当导致板卡损坏的问题,降低硬件成本。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一:
如图1所示,本实施例提供了一种I2C总线信号测试系统,包括:BMC芯片、CPLD模块、模数转换器、数模转换器、EEPROM存储器、比较器、从机模块和Flash存储器。BMC芯片分别与CPLD模块、模数转换器、EEPROM存储器、比较器和从机模块数据连接,CPLD模块分别与模数转换器、数模转换器、比较器和Flash存储器数据连接。
BMC芯片,用于建立与多路温度传感器的I2C总线信号连接,读取测试指令并对从机模块进行读写操作。具体的,BMC芯片包括多路I2C总线信号,BMC芯片的每路I2C信号在硬件设计上完全相同,每路信号都有串行数据线SDA和串行时钟线SCL,BMC芯片作为主机发送测试指令,通过SDA与SCL实现数据的发送与接收,进而展开相关测试。
模数转换器,用于采集I2C总线的I2C信号电压值,并输入到CPLD模块。
数模转换器,用于将选取的基准电压转换为模拟信号输入到比较器。
比较器,用于采集温度传感器的I2C信号,并通过与基准电压的模拟信号比较,得到触发信号,并输入CPLD模块。
CPLD模块,用于根据触发信号计算信号间隔时间,并通过判断是否满足I2C协议规范的时序要求,确定测试结果。
EEPROM存储器,用于存储测试指令。
Flash存储器,用于存储测试数据。
本实施例提供了一种I2C总线信号测试系统,能够提高测试效率,对每一路I2C总线信号进行多次测量,提高测试结果的可靠性,避免因操作不当导致板卡损坏的问题,降低硬件成本。
实施例二:
基于实施例一,如图2所示,本发明还公开了一种I2C总线信号测试方法,包括如下步骤:
步骤1:设备上电后,利用模数转换器得到I2C信号电压值。
I2C总线信号为开漏输出,设备上电后,I2C总线处于空闲状态,此时SCL与SDA均为高电平,利用模数转换器得到上拉电压Vcc,输入到CPLD模块
步骤2:通过BMC芯片读取EEPROM存储器中的测试指令,对从机模块进行读写操作。
步骤3:采集一路温度传感器的I2C信号,通过比较器得到在相应电压处的触发信号。
具体来说,首先,选取比较器的基准电压为0.7Vcc与0.3Vcc,通过数模转换器将基准电压转换为模拟信号,记为第一电压VH与第二电压VL,并输入到比较器中。然后,采集一路温度传感器的I2C信号,将其中的SDA信号和SCL信号输入到比较器中。最后,比较器将第一电压VH和第二电压VL分别与SDA信号和SCL信号进行比较,得到在相应电压处的触发信号,并确定触发信号对应的时间。
作为示例的,比较器具体执行过程如下:
将第一电压VH与SDA信号进行比较得到两个触发信号,并确定其对应的时间为T4、T8;将第一电压VH与SCL信号进行比较得到两个触发信号,并确定其对应的时间为T2、T7;将第二电压VL与SDA信号进行比较得到两个触发信号,并确定其对应的时间为T1、T5;将第二电压VL与SCL进行比较得到两个触发信号,并确定其对应的时间为T3、T6。
步骤4:将触发信号输入到CPLD模块,计算相应触发信号的间隔时间。
如图3所示,通过CPLD模块对触发信号进行处理,通过预设公式计算出I2C信号的时序测试项。
其中,时序测试项包括:起始信号建立/保持时间tSU;STA、tHD;STA,数据信号建立/保持时间tSU;DAT、tHD;DAT。
预设公式具体如下:
起始信号建立时间tSU;STA=T8-T7
起始信号保持时间tHD;STA=T2-T1
数据信号建立时间tSU;DAT=T6-T5
数据信号保持时间tHD;DAT=T4-T3。
步骤5:判断触发信号的间隔时间是否满足I2C协议规范的时序要求,若满足,则重复执行步骤3-步骤5,利用当前测试指令进行I2C总线信号的复测;若不满足,记录当前测试指令。
也就是说,若时序不满足要求,记录当前测试指令,将测试数据记录在Flash存储器中。若时序满足要求,利用当前测试指令进行复测,以提高测试结果的可靠性。若复测结果同样满足时序要求,则将测试数据记录在Flash存储器中。
步骤6:记录测试数据,并执行步骤2,进行下一路温度传感器的I2C信号检测,直至所有温度传感器的I2C信号检测均已完成。
此时,一路温度传感器的I2C信号测试完成,利用UART串口通信通知BMC芯片,进行下一路温度传感器的I2C信号测试,直到所有温度传感器的I2C信号测试数据记录完成,CPLD控制点亮LED灯,表明当前I2C总线信号测试完成,测试人员可以通过存储器中的数据了解测试情况。
另外,在本方法执行前,需要将BMC芯片的I2C总线信号经过I2C Switch芯片与每一路不同地址下的温度传感器进行通信。并在开始测试前,打开I2CSwitch芯片的所有通道,扫描得到挂接的温度传感器对应的地址信息,并将测试指令写入EEPROM存储器。
需要特别说明的是,本实施例以BMC芯片发送到TEMP Sensor的I2C总线信号的时序测试项tHD;STA,tHD;DAT,tSU;DAT,tSU;STA为例进行说明,本方法可引申至服务器系统中每一路I2C总线信号下的11个时序测试项。
本实施例提供了一种I2C总线信号测试方法,优化了I2C信号的测试流程,能够提高测试效率,对每一路I2C总线信号进行多次测量,提高测试结果的可靠性,避免因操作不当导致板卡损坏的问题,降低硬件成本。
实施例三:
本实施例公开了一种I2C总线信号测试装置,包括处理器和存储器;其中,所述处理器执行所述存储器中保存的I2C总线信号测试程序时实现以下步骤:
1、设备上电后,利用模数转换器得到I2C信号电压值。
2、通过BMC芯片读取EEPROM存储器中的测试指令,对从机模块进行读写操作。
3、采集一路温度传感器的I2C信号,通过比较器得到在相应电压处的触发信号。
4、将触发信号输入到CPLD模块,计算相应触发信号的间隔时间。
5、判断触发信号的间隔时间是否满足I2C协议规范的时序要求,若满足,则重复执行步骤3-步骤5,利用当前测试指令进行I2C总线信号的复测;若不满足,记录当前测试指令。
6、记录测试数据,并执行步骤2,进行下一路温度传感器的I2C信号检测,直至所有温度传感器的I2C信号检测均已完成。
进一步的,本实施例中的I2C总线信号测试装置,还可以包括:
输入接口,用于获取外界导入的I2C总线信号测试程序,并将获取到的I2C总线信号测试程序保存至所述存储器中,还可以用于获取外界终端设备传输的各种指令和参数,并传输至处理器中,以便处理器利用上述各种指令和参数展开相应的处理。本实施例中,所述输入接口具体可以包括但不限于USB接口、串行接口、语音输入接口、指纹输入接口、硬盘读取接口等。
输出接口,用于将处理器产生的各种数据输出至与其相连的终端设备,以便于与输出接口相连的其他终端设备能够获取到处理器产生的各种数据。本实施例中,所述输出接口具体可以包括但不限于USB接口、串行接口等。
通讯单元,用于在I2C总线信号测试装置和外部服务器之间建立远程通讯连接,以便于I2C总线信号测试装置能够将镜像文件挂载到外部服务器中。本实施例中,通讯单元具体可以包括但不限于基于无线通讯技术或有线通讯技术的远程通讯单元。
键盘,用于获取用户通过实时敲击键帽而输入的各种参数数据或指令。
显示器,用于运行服务器供电线路短路定位过程的相关信息进行实时显示。
鼠标,可以用于协助用户输入数据并简化用户的操作。
实施例四:
本实施例还公开了一种可读存储介质,这里所说的可读存储介质包括随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动硬盘、CD-ROM或技术领域内所公知的任意其他形式的存储介质。可读存储介质中存储有I2C总线信号测试程序,所述I2C总线信号测试程序被处理器执行时实现以下步骤:
1、设备上电后,利用模数转换器得到I2C信号电压值。
2、通过BMC芯片读取EEPROM存储器中的测试指令,对从机模块进行读写操作。
3、采集一路温度传感器的I2C信号,通过比较器得到在相应电压处的触发信号。
4、将触发信号输入到CPLD模块,计算相应触发信号的间隔时间。
5、判断触发信号的间隔时间是否满足I2C协议规范的时序要求,若满足,则重复执行步骤3-步骤5,利用当前测试指令进行I2C总线信号的复测;若不满足,记录当前测试指令。
6、记录测试数据,并执行步骤2,进行下一路温度传感器的I2C信号检测,直至所有温度传感器的I2C信号检测均已完成。
综上所述,本发明优化了I2C信号的测试流程,能够提高测试效率,对每一路I2C总线信号进行多次测量,提高测试结果的可靠性,避免因操作不当导致板卡损坏的问题,降低硬件成本。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的方法而言,由于其与实施例公开的系统相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统、系统和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,系统或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能模块可以集成在一个处理单元中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个单元中。
同理,在本发明各个实施例中的各处理单元可以集成在一个功能模块中,也可以是各个处理单元物理存在,也可以两个或两个以上处理单元集成在一个功能模块中。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的I2C总线信号测试方法、系统、装置及可读存储介质进行了详细介绍。本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
Claims (10)
1.一种I2C总线信号测试系统,其特征在于,包括:BMC芯片、CPLD模块、模数转换器、数模转换器、EEPROM存储器、比较器和从机模块;BMC芯片分别与CPLD模块、模数转换器、EEPROM存储器、比较器和从机模块数据连接,CPLD模块分别与模数转换器、数模转换器和比较器数据连接;
所述BMC芯片,用于建立与多路温度传感器的I2C总线信号连接,读取测试指令并对从机模块进行读写操作;
所述模数转换器,用于采集I2C总线的I2C信号电压值,并输入到CPLD模块;
所述数模转换器,用于将选取的基准电压转换为模拟信号输入到比较器;
所述比较器,用于采集温度传感器的I2C信号,并通过与基准电压的模拟信号比较,得到触发信号,并输入CPLD模块;
所述CPLD模块,用于根据触发信号计算信号间隔时间,并通过判断是否满足I2C协议规范的时序要求,确定测试结果;
所述EEPROM存储器,用于存储测试指令。
2.根据权利要求1所述的I2C总线信号测试系统,其特征在于,所述系统还包括Flash存储器,Flash存储器与CPLD模块数据连接,用于存储测试数据。
3.一种I2C总线信号测试方法,其特征在于,包括如下步骤:
步骤1:设备上电后,利用模数转换器得到I2C信号电压值;
步骤2:通过BMC芯片读取EEPROM存储器中的测试指令,对从机模块进行读写操作;
步骤3:采集一路温度传感器的I2C信号,通过比较器得到在相应电压处的触发信号;
步骤4:将触发信号输入到CPLD模块,计算相应触发信号的间隔时间;
步骤5:判断触发信号的间隔时间是否满足I2C协议规范的时序要求,若满足,则重复执行步骤3-步骤5,利用当前测试指令进行I2C总线信号的复测;若不满足,记录当前测试指令;
步骤6:记录测试数据,并执行步骤2,进行下一路温度传感器的I2C信号检测,直至所有温度传感器的I2C信号检测均已完成。
4.根据权利要求3所述的I2C总线信号测试方法,其特征在于,所述步骤1包括:设备上电后,I2C总线处于空闲状态,此时SCL与SDA均为高电平,利用模数转换器得到上拉电压Vcc,输入到CPLD模块。
5.根据权利要求4所述的I2C总线信号测试方法,其特征在于,所述步骤3包括:选取比较器的基准电压为0.7Vcc与0.3Vcc,通过数模转换器将基准电压转换为模拟信号,记为第一电压VH与第二电压VL,并输入到比较器中;
采集一路温度传感器的I2C信号,将其中的SDA信号和SCL信号输入到比较器中;
比较器将第一电压VH和第二电压VL分别与SDA信号和SCL信号进行比较,得到在相应电压处的触发信号,并确定触发信号对应的时间。
6.根据权利要求5所述的I2C总线信号测试方法,其特征在于,所述比较器将第一电压VH和第二电压VL分别与SDA信号和SCL信号进行比较,得到在相应电压处的触发信号,并确定触发信号对应的时间,具体为:
将第一电压VH与SDA信号进行比较得到两个触发信号,并确定其对应的时间为T4、T8;
将第一电压VH与SCL信号进行比较得到两个触发信号,并确定其对应的时间为T2、T7;
将第二电压VL与SDA信号进行比较得到两个触发信号,并确定其对应的时间为T1、T5;
将第二电压VL与SCL进行比较得到两个触发信号,并确定其对应的时间为T3、T6。
7.根据权利要求6所述的I2C总线信号测试方法,其特征在于,所述步骤4包括:通过CPLD模块对触发信号进行处理,通过预设公式计算出I2C信号的时序测试项;
时序测试项包括:
起始信号建立时间tSU;STA=T8-T7
起始信号保持时间tHD;STA=T2-T1
数据信号建立时间tSU;DAT=T6-T5
数据信号保持时间tHD;DAT=T4-T3。
8.根据权利要求3所述的I2C总线信号测试方法,其特征在于,所述步骤1之前还包括:
将BMC芯片的I2C总线信号经过I2C Switch芯片与每一路不同地址下的温度传感器进行通信;
开始测试前,打开I2C Switch芯片的所有通道,扫描得到挂接的温度传感器对应的地址信息,并将测试指令写入EEPROM存储器。
9.一种I2C总线信号测试装置,其特征在于,包括:
存储器,用于存储I2C总线信号测试程序;
处理器,用于执行所述I2C总线信号测试程序时实现如权利要求3至8任一项权利要求所述的I2C总线信号测试方法的步骤。
10.一种可读存储介质,其特征在于:所述可读存储介质上存储有I2C总线信号测试程序,所述I2C总线信号测试程序被处理器执行时实现如权利要求3至8任一项权利要求所述的I2C总线信号测试方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310014249.7A CN115994110A (zh) | 2023-01-05 | 2023-01-05 | 一种i2c总线信号测试系统、方法、装置及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310014249.7A CN115994110A (zh) | 2023-01-05 | 2023-01-05 | 一种i2c总线信号测试系统、方法、装置及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115994110A true CN115994110A (zh) | 2023-04-21 |
Family
ID=85994839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310014249.7A Pending CN115994110A (zh) | 2023-01-05 | 2023-01-05 | 一种i2c总线信号测试系统、方法、装置及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115994110A (zh) |
-
2023
- 2023-01-05 CN CN202310014249.7A patent/CN115994110A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9082242B2 (en) | Vehicle network health assessment | |
US7610526B2 (en) | On-chip circuitry for bus validation | |
TWI470242B (zh) | 協定認知之序列型樣產生器 | |
KR20010104363A (ko) | 예상 응답을 생성하는 주지의 양호한 디바이스를 이용한집적 회로 디바이스의 효율적인 병렬 테스트 | |
US20100169714A1 (en) | Test apparatus and recording medium | |
CN105446837B (zh) | 检测iic接口器件是否连接的方法、装置以及系统 | |
CN103308846A (zh) | 一种基于模型识别的集成芯片功能性能检测方法和装置 | |
CN105760612A (zh) | 用于硅后芯片验证的断言检测装置、方法、系统、芯片 | |
CN208140901U (zh) | 一种服务器电源实时监控装置 | |
CN115098319A (zh) | 一种电源上电时序检测的方法、装置、设备及可读介质 | |
TWI405992B (zh) | Test equipment, test method, computer program and electronic component for self-diagnosis of open circuit test or short circuit test related to functional test of test element | |
JP2015005189A (ja) | Ecu評価装置、コンピュータプログラム及びecu評価方法 | |
CN115994110A (zh) | 一种i2c总线信号测试系统、方法、装置及可读存储介质 | |
CN215642683U (zh) | I2c总线数据传输监测装置 | |
TWI644111B (zh) | 用以控制測試器之半導體檢驗方法及裝置 | |
US7395454B1 (en) | Integrated circuit with integrated debugging mechanism for standard interface | |
CN107704417A (zh) | 与被测设备通信的方法及其通信系统 | |
RU2007117102A (ru) | Автоматизированная система диагностирования | |
JP2008117500A (ja) | デバイス試験装置 | |
EP0032895A1 (en) | Testor for microprocessor-based systems | |
JPH085708A (ja) | 電気回路診断方法およびその方法に使用する電気回路診断装置 | |
CN110446936B (zh) | 波形信号检测方法及装置 | |
CN210051880U (zh) | 一种跨接电缆检测仪 | |
RU91183U1 (ru) | Автоматизированная система диагностирования цифровых устройств | |
CN117170350B (zh) | 服务的测试方法、装置、电子设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |