CN105844056A - 一种gpio验证***与方法 - Google Patents

一种gpio验证***与方法 Download PDF

Info

Publication number
CN105844056A
CN105844056A CN201610236254.2A CN201610236254A CN105844056A CN 105844056 A CN105844056 A CN 105844056A CN 201610236254 A CN201610236254 A CN 201610236254A CN 105844056 A CN105844056 A CN 105844056A
Authority
CN
China
Prior art keywords
gpio
measured
chip
target
described target
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.)
Granted
Application number
CN201610236254.2A
Other languages
English (en)
Other versions
CN105844056B (zh
Inventor
卢杰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Wangao (hangzhou) Technology Co Ltd
Original Assignee
Wangao (hangzhou) Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Wangao (hangzhou) Technology Co Ltd filed Critical Wangao (hangzhou) Technology Co Ltd
Priority to CN201610236254.2A priority Critical patent/CN105844056B/zh
Publication of CN105844056A publication Critical patent/CN105844056A/zh
Application granted granted Critical
Publication of CN105844056B publication Critical patent/CN105844056B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2115/00Details relating to the type of the circuit
    • G06F2115/06Structured ASICs

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

本发明公开了一种GPIO验证***与方法,***包括:上位机模块和验证模块;所述上位机模块与所述验证模块相连接,所述验证模块包括验证GPIO管脚,通过所述验证GPIO管脚与所述目标待测芯片相连接,所述上位机模块为目标待测芯片配置对应的目标GPIO信息,并将所述目标GPIO信息发送至所述验证模块,所述验证模块根据所述目标GPIO信息确定所述目标待测芯片的GPIO的目标验证内容,根据所述目标验证内容进行验证GPIO管脚的配置,再根据所述目标待测芯片的各GPIO管脚的输入输出信息对所述目标待测芯片的各GPIO管脚进行验证,可以高效全面地验证芯片的GPIO,且对于不同芯片的GPIO验证,只需使用上位机模块重新配置,即可进行验证,提高了芯片GPIO的验证效率。

Description

一种GPIO验证***与方法
技术领域
本发明涉及IC验证领域,特别是涉及一种GPIO验证***与方法。
背景技术
随着微电子技术的发展,集成芯片的应用越来越广泛,而在集成芯片的研发过程中,设计完集成芯片后,需要对该集成芯片的GPIO的功能进行验证,以确保最后生产出来的芯片的正确性。
目前对于集成芯片的GPIO的验证,有的是人工手动在集成芯片的GPIO上提供高电平或者低电平,再使用集成芯片读取外部电平来验证集成芯片的GPIO输入功能,这种验证方式效率低,并且验证不够充分,比如人工手动将集成芯片的全部GPIO供给高电平,使用软件配置集成芯片的所有GPIO为输入,然后读取GPIO输入电平值,将不能验证各个GPIO之间的相互影响,而且对于集成芯片的各个GPIO的上拉电阻和下拉电阻的控制是否正确无法判断;而有的是在集成芯片的GPIO外连接其他微控制器来配合验证,将与集成芯片连接的微控制器的GPIO全部配置为输出,输出高电平或者低电平,再读取集成芯片的所有GPIO的输入是否为全0或全1,或者是配置集成芯片的所有GPIO为输出模式,输出高电平或者低电平,使用与集成芯片连接的微控制器读取集成芯片的GPIO输出的电平值,观察集成芯片是否能正常输出高电平或者低电平,但这种方式也不能验证集成芯片各个GPIO之间的相互影响,并且如果后续研发新的集成芯片,验证集成芯片GPIO的程序又需要重新开发,验证效率较低。
发明内容
有鉴于此,本发明的主要目的在于提供一种GPIO验证***与方法,可以高效地对集成芯片的GPIO进行验证。
为实现上述目的,本发明提供了一种GPIO验证***,包括:上位机模块和验证模块;
所述上位机模块与所述验证模块相连接,用于为目标待测芯片配置对应的目标GPIO信息,并将所述目标GPIO信息发送至所述验证模块;
所述验证模块包括验证GPIO管脚,通过所述验证GPIO管脚与所述目标待测芯片相连接,用于根据所述目标GPIO信息确定所述目标待测芯片的GPIO的目标验证内容,根据所述目标验证内容进行验证GPIO管脚的配置,再根据所述目标待测芯片的各GPIO管脚的输入输出信息对所述目标待测芯片的各GPIO管脚进行验证。
优选地,所述目标GPIO信息包括:
所述目标待测芯片的GPIO分组信息,各所述目标待测芯片的GPIO分组的管脚分配信息,所述目标待测芯片的GPIO管脚上拉电阻信息,所述目标待测芯片的GPIO管脚下拉电阻信息,所述目标待测芯片的GPIO管脚开漏输出信息,所述目标待测芯片的GPIO管脚推挽输出信息,所述目标待测芯片的GPIO管脚类型设置寄存器地址和设置对应GPIO管脚为普通GPIO管脚的数值。
优选地,所述验证模块还包括:
与各所述验证GPIO管脚相对应的,根据所述目标验证内容与对应的验证GPIO管脚进行程控连接的上拉电阻与下拉电阻;
与所述目标待测芯片相连接,用于与所述目标待测芯片进行信息交换的通信通路。
优选地,所述目标待测芯片的GPIO的目标验证内容包括:
浮空输入验证,禁止输入验证,上拉输入验证,下拉输入验证,推挽输出验证,禁止输出验证和开漏输出验证。
本发明还提供了一种GPIO验证方法,包括:
上位机模块为目标待测芯片配置对应的目标GPIO信息,并将所述目标GPIO信息发送至所述验证模块;
所述验证模块根据所述目标GPIO信息确定所述目标待测芯片的GPIO的目标验证内容,根据所述目标验证内容进行验证GPIO管脚的配置,再根据所述目标待测芯片的各GPIO管脚的输入输出信息对所述目标待测芯片的各GPIO管脚进行验证。
优选地,所述目标GPIO信息包括:
所述目标待测芯片的GPIO分组信息,各所述目标待测芯片的GPIO分组的管脚分配信息,所述目标待测芯片的GPIO管脚上拉电阻信息,所述目标待测芯片的GPIO管脚下拉电阻信息,所述目标待测芯片的GPIO管脚开漏输出信息,所述目标待测芯片的GPIO管脚推挽输出信息,所述目标待测芯片的GPIO管脚类型设置寄存器地址和设置对应GPIO管脚为普通GPIO管脚的数值。
优选地,所述验证模块根据所述目标验证内容进行验证GPIO管脚的配置包括:
所述验证模块根据所述目标验证内容控制各所述验证GPIO管脚与对应的上拉电阻与下拉电阻连通或断开。
优选地,所述目标待测芯片的GPIO的验证内容包括:
浮空输入验证,禁止输入验证,上拉输入验证,下拉输入验证,推挽输出验证,禁止输出验证和开漏输出验证。
应用本发明提供的一种GPIO验证***与方法,***包括:上位机模块和验证模块;所述上位机模块与所述验证模块相连接,所述验证模块包括验证GPIO管脚,通过所述验证GPIO管脚与所述目标待测芯片相连接,所述上位机模块为目标待测芯片配置对应的目标GPIO信息,并将所述目标GPIO信息发送至所述验证模块,所述验证模块根据所述目标GPIO信息确定所述目标待测芯片的GPIO的目标验证内容,根据所述目标验证内容进行验证GPIO管脚的配置,再根据所述目标待测芯片的各GPIO管脚的输入输出信息对所述目标待测芯片的各GPIO管脚进行验证,可以高效全面地验证芯片的GPIO,且对于不同芯片的GPIO验证,只需使用上位机模块重新配置,即可进行验证,提高了芯片GPIO的验证效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一部分实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本发明一种GPIO验证***实施例的结构示意图;
图2为本发明一种GPIO验证***实施例的详细结构示意图;
图3为本发明一种GPIO验证方法实施例的流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供了一种GPIO验证***,图1示出了本发明一种GPIO验证***实施例的结构示意图,包括:上位机模块101和验证模块102;
所述上位机模块101与所述验证模块102相连接,用于为目标待测芯片配置对应的目标GPIO信息,并将所述目标GPIO信息发送至所述验证模块102;
所述目标GPIO信息可包括所述目标待测芯片的GPIO分组信息,各所述目标待测芯片的GPIO分组的管脚分配信息,所述目标待测芯片的GPIO管脚上拉电阻信息,所述目标待测芯片的GPIO管脚下拉电阻信息,所述目标待测芯片的GPIO管脚开漏输出信息,所述目标待测芯片的GPIO管脚推挽输出信息,所述目标待测芯片的GPIO管脚类型设置寄存器地址和设置对应GPIO管脚为普通GPIO管脚的数值等。
所述验证模块102包括验证GPIO管脚,通过所述验证GPIO管脚与所述目标待测芯片相连接,用于根据所述目标GPIO信息确定所述目标待测芯片的GPIO的目标验证内容,根据所述目标验证内容进行验证GPIO管脚的配置,再根据所述目标待测芯片的各GPIO管脚的输入输出信息对所述目标待测芯片的各GPIO管脚进行验证。
本实施例中所述验证模块还可包括:
与各所述验证GPIO管脚相对应的,根据所述目标验证内容与对应的验证GPIO管脚进行程控连接的上拉电阻与下拉电阻;
与所述目标待测芯片相连接,用于与所述目标待测芯片进行信息交换的通信通路。
所述目标待测芯片的GPIO的验证内容可包括浮空输入验证,禁止输入验证,上拉输入验证,下拉输入验证,推挽输出验证,禁止输出验证和开漏输出验证等。
如图2所示,为本发明一种GPIO验证***实施例的详细结构示意图,验证模块有很多验证GPIO管脚,每个验证GPIO管脚有可配置的上拉电阻和下拉电阻,这些GPIO管脚能够与目标待测芯片的GPIO管脚相连接,验证模块将利用从上位机模块接收到的目标GPIO信息来配置目标待测芯片的GPIO功能。验证模块与目标待测芯片之间还有一路通信通路,这个通信通路是验证模块与目标待测芯片进行信息交换的通路,这两者都设计了基于这一通路的通信协议。
应用本实施例提供的一种GPIO验证***,包括:上位机模块和验证模块;所述上位机模块与所述验证模块相连接,所述验证模块包括验证GPIO管脚,通过所述验证GPIO管脚与所述目标待测芯片相连接,所述上位机模块为目标待测芯片配置对应的目标GPIO信息,并将所述目标GPIO信息发送至所述验证模块,所述验证模块根据所述目标GPIO信息确定所述目标待测芯片的GPIO的目标验证内容,根据所述目标验证内容进行验证GPIO管脚的配置,再根据所述目标待测芯片的各GPIO管脚的输入输出信息对所述目标待测芯片的各GPIO管脚进行验证,可以高效全面地验证芯片的GPIO,且对于不同芯片的GPIO验证,只需使用上位机模块重新配置,即可进行验证,提高了芯片GPIO的验证效率。
本发明还提供了一种GPIO验证方法,图3示出了本发明一种GPIO验证方法实施例的流程图,包括:
步骤S101:上位机模块为目标待测芯片配置对应的目标GPIO信息,并将所述目标GPIO信息发送至所述验证模块;
上位机模块设置目标待测芯片的目标GPIO信息,比如设置目标待测芯片的GPIO分组(比如GPIOA,GPIOB,GPIOC等),设置每一个GPIO分组的管脚分配信息(GPIOA0~GPIOA15,GPIOB0~GPIOB9,GPIOC5~GPIOC15等)。具体实施时目标待测芯片的GPIO分组可在上位机模块的一个文本框中填入设置,比如目标待测芯片的GPIO包括GPIOA/GPIOB/GPIOC/GPIOD/GPIOE/GPIOF,则在该文本框中填入数值5(表示0~5);GPIO分组的管脚分配信息在另一个文本框中填入,这个填入的数值是一个不小于目标待测芯片每一个GPIO分组的GPIO下标数,比如目标待测芯片每一个GPIO分组的GPIO管脚分配是GPIOA0~GPIOA15,GPIOB0~GPIOB9,GPIOC5~GPIOC15,GPIOD8~GPIOB23,GPIOE15~GPIOE25,GPIOF0~GPIOF20时,则可在该文本框中填入大于等于25的数值,比如设置为31(表示0~31),有了上面两步操作后上位机模块界面上生成一个6行32列的一张田字方格,然后只需要按照目标待测芯片的GPIO管脚分配情况将6行32列的田字方格的对应位置上打勾以作标记,比如将第一行的0~15列勾选,第二行的0~9列勾选,第三行的5~15列勾选,第四行的8~23列勾选,第五行的15~25列勾选,第六行的0~20列勾选,这样表示待测芯片这些管脚是存在的,然后设置目标待测芯片的GPIO上拉电阻信息,在目标待测芯片每一个存在的GPIO管脚对应的田字方格位置上标记无上拉电阻(比如标记为1),有固定上拉电阻,且程序不能编程关断的上拉电阻(比如标记为2),程序可编程关断的上拉电阻(比如标记为3)。然后配置目标待测芯片的GPIO下拉电阻信息,过程与配置目标待测芯片上拉电阻信息类似,然后配置目标待测芯片的每个GPIO管脚开漏输出情况,在目标待测芯片每一个存在的GPIO管脚对应的田字方格位置上标记对应GPIO管脚开漏输出情况,如无开漏输出功能(比如标记为1),有开漏输出模式,并且对应GPIO管脚输出时只能开漏输出(比如标记为2),有开漏输出模式,并且对应GPIO管脚能够配置为其他输出模式,比如配置为推挽输出模式等(比如标记为3),最后设置每一个GPIO配置功能类型的寄存器地址和配置其为普通GPIO时的寄存器值,这个是对于现在很多芯片的GPIO复用的情况,比如一个GPIO管脚可以作为普通GPIO使用,也可以作为UART的TX管脚使用,甚至该GPIO管脚还能配置为其他功能使用,在目标待测芯片每一个存在的GPIO管脚对应的田字方格位置上填入对应GPIO管脚配置功能类型寄存器的地址和将该GPIO作为普通GPIO使用时应该配置的值,比如GPIOA7的配置功能类型寄存器的值为0时作普通GPIO用,为1时作UART的TX管脚使用,为2时作ADC的输入管脚使用等,并且配置功能类型寄存器的地址为0x2878,那么就需要选择GPIOA7的格子,在地址位置设置为0x2878,在值的位置设置为0,其他GPIO管脚的配置类似,上位机模块将目标待测芯片的GPIO相关信息设置好,以方便传送给验证模块做后续处理,可以使用UART方式或者USB通讯方式传送给验证模块,使用何种传送方式不做要求。
步骤S102:所述验证模块根据所述目标GPIO信息确定所述目标待测芯片的GPIO的目标验证内容,根据所述目标验证内容进行验证GPIO管脚的配置,再根据所述目标待测芯片的各GPIO管脚的输入输出信息对所述目标待测芯片的各GPIO管脚进行验证。
所述目标待测芯片的GPIO的目标验证内容可包括浮空输入验证,禁止输入验证,上拉输入验证,下拉输入验证,推挽输出验证,禁止输出验证和开漏输出验证等,根据目标验证内容配置验证模块的验证GPIO管脚,即控制各所述验证GPIO管脚与对应的上拉电阻与下拉电阻连通或断开。然后获取目标待测芯片的GPIO管脚的输入或输出信息,根据这些信息验证各GPIO管脚是否异常。
根据图2所示的结构示意图,下面对不同的目标验证内容分别进行说明:
1、目标待测芯片浮空输入验证:验证模块将自身的全部有效GPIO配置为上拉输入,并通过通信通路20配置目标待测芯片的全部GPIO(31/32/33……3n)为浮空输入模式,然后验证模块通过通信通路20读取目标待测芯片的所有GPIO的输入电平值到验证模块的内存中,然后判断处理是否全部都为1,正常的话应该全部为1;如果有为0就报错,即在验证模块中记录出错的详细信息,并发送到上位机模块的对应界面上显示出出错的类型和详细位置,比如验证模块检查到目标待测芯片的GPIOA7输入电平值为0,则验证模块处理完成后将在内存中记录该出错的位置和类型,并将错误信息传送到上位机模块上进行显示;验证模块只将自身的第一个GPIO(IO0 210)配置为下拉输入,再次通过通信通路20检查目标待测芯片的GPIO输入电平值,判断目标待测芯片的GPIO输入电平值是否只有IO0(31)为0,其他都为1;然后验证模块将自身的第一个GPIO(IO0 210)配置为上拉输入,只将自身第二个GPIO(IO0 220)配置为下拉输入,再通过通信通路20检查目标待测芯片的GPIO输入电平值,判断目标待测芯片的GPIO输入电平值是否只有IO1(32)为0,其他都为1;如此循环直到目标待测芯片的全部GPIO管脚检查完毕。这里也可以使用这种方式来验证目标待测芯片浮空输入:验证模块将自己的全部有效GPIO配置为下拉输入,并通过通信通路20配置目标待测芯片的全部GPIO(31/32/33……3n)为浮空输入模式,然后验证模块通过通信通路20读取目标待测芯片的所有GPIO的输入电平值进行判断,判断是否全部都为0;然后验证模块只将自身的第一个GPIO(IO0 210)配置为上拉输入,再次通过通信通路20检查目标待测芯片的GPIO输入电平值,判断目标待测芯片的GPIO输入电平值是否只有IO0(31)为1,其他都为0;然后验证模块将自身的第一个GPIO(IO0 210)配置为下拉输入,只将自身第二个GPIO(IO0 220)配置为上拉输入,再通过通信通路20检查目标待测芯片的GPIO输入电平值,判断目标待测芯片的GPIO输入电平值是否只有IO1(32)为1,其他都为0;如此循环直到目标待测芯片的全部GPIO管脚检查完毕,检查判断的实现方式不做要求,这里只是优选方式,验证模块可在检查出有错误时将详细信息进行记录。
2、目标待测芯片禁止输入验证:验证模块将自身的全部有效GPIO配置为上拉输入,并通过通信通路20配置目标待测芯片的全部GPIO(31/32/33……3n)为浮空输入模式,然后验证模块通过通信通路20读取目标待测芯片的所有GPIO的输入电平值进行判断,判断是否全部都为1;如果有为0就报错,即在验证模块中记录出错的详细信息,并发送到上位机模块的对应界面上显示出出错的类型和详细位置,比如验证模块检查到目标待测芯片的GPIOA7输入电平值为0,则验证模块处理完成后将在内存中记录该出错的位置和类型,并将错误信息传送到上位机模块上进行显示;验证模块只将自身的第一个GPIO(IO0 210)配置为下拉输入,再次通过通信通路20检查目标待测芯片的GPIO输入电平值,判断目标待测芯片的GPIO输入电平值是否只有IO0(31)为0,其他都为1;验证模块通过通信通路20将目标待测芯片的第一个GPIO(IO0 31)配置为禁止输入,通过通信通路20检查目标待测芯片的GPIO输入电平值记录为DATA1,然后验证模块将自身的第一个GPIO(IO0 210)配置为上拉输入,通过通信通路20检查目标待测芯片的GPIO输入电平值记录为DATA1’,验证模块判断DATA1与DATA1’是否相等,并且除了目标待测芯片的第一个GPIO(IO0 31)的输入电平值为x(可能是0,也可能是1),其他都为1;然后验证模块只将自身第二个GPIO(IO0 220)配置为下拉输入,通过通信通路20将目标待测芯片的第一个GPIO(IO0 31)配置为使能输入,并检查目标待测芯片的GPIO输入电平值,判断目标待测芯片的GPIO输入电平值是否只有IO1(32)为0,其他都为1;然后验证模块通过通信通路20将目标待测芯片的第二个GPIO(IO1 32)配置为禁止输入,通过通信通路20检查目标待测芯片的GPIO输入电平值记录为DATA2,然后验证模块将自身的第二个GPIO(IO1 220)配置为上拉输入,通过通信通路20检查目标待测芯片的GPIO输入电平值记录为DATA2’,验证模块判断DATA2与DATA2’是否相等,并且除了目标待测芯片的第二个GPIO(IO1 32)的输入电平值为x(可能是0,也可能是1),其他都为1;如此循环直到目标待测芯片的全部GPIO管脚检查完毕。这里也可以使用这种方式来验证目标待测芯片禁止输入:验证模块将自身的全部有效GPIO配置为下拉输入,并通过通信通路20配置目标待测芯片的全部GPIO(31/32/33……3n)为浮空输入模式,然后验证模块通过通信通路20读取目标待测芯片的所有GPIO的输入电平值进行判断,判断是否全部都为0;如果有为1就报错,即在验证模块中记录出错的详细信息,并发送到上位机模块的对应界面上显示出出错的类型和详细位置,比如验证模块检查到目标待测芯片的GPIOA7输入电平值为1,则验证模块处理完成后将在内存中记录该出错的位置和类型,并将错误信息传送到上位机模块上进行显示;验证模块只将自身的第一个GPIO(IO0 210)配置为上拉输入,再次通过通信通路20检查目标待测芯片的GPIO输入电平值,判断目标待测芯片的GPIO输入电平值是否只有IO0(31)为1,其他都为0;验证模块通过通信通路20将目标待测芯片的第一个GPIO(IO0 31)配置为禁止输入,通过通信通路20检查目标待测芯片的GPIO输入电平值记录为DATA1,然后验证模块将自身的第一个GPIO(IO0 210)配置为下拉输入,通过通信通路20检查目标待测芯片的GPIO输入电平值记录为DATA1’,验证模块判断DATA1与DATA1’是否相等,并且除了目标待测芯片的第一个GPIO(IO0 31)的输入电平值为x(可能是0,也可能是1),其他都为0;然后验证模块只将自身第二个GPIO(IO0 220)配置为上拉输入,再通过通信通路20将目标待测芯片的第一个GPIO(IO0 31)配置为使能输入,并检查目标待测芯片的GPIO输入电平值,判断目标待测芯片的GPIO输入电平值是否只有IO1(32)为1,其他都为0;然后验证模块通过通信通路20将目标待测芯片的第二个GPIO(IO1 32)配置为禁止输入,通过通信通路20检查目标待测芯片的GPIO输入电平值记录为DATA2,然后验证模块将自身的第二个GPIO(IO1 220)配置为下拉输入,通过通信通路20检查目标待测芯片的GPIO输入电平值记录为DATA2’,验证模块判断DATA2与DATA2’是否相等,并且除了目标待测芯片的第二个GPIO(IO1 32)的输入电平值为x(可能是0,也可能是1),其他都为0;如此循环直到目标待测芯片的全部GPIO管脚检查完毕,检查判断的实现方式不做要求,这里只是优选方式,验证模块可在检查出有错误时将详细信息进行记录。
3、目标待测芯片上拉输入验证:验证模块将自身的全部有效GPIO配置为浮空输入,并且验证模块通过通信通路20配置目标待测芯片的全部GPIO为上拉输入模式,然后验证模块通过通信通路20检查目标待测芯片的所有GPIO的输入电平值是否为全1;验证模块将自身的第一个GPIO(IO0 210)配置为推挽输出0,验证模块通过通信通路20检查目标待测芯片的GPIO是否只有第一个GPIO(IO0 31)的输入电平值为0,其他都为1;验证模块将自身的第一个GPIO(IO0 210)配置为浮空输入,第二个GPIO(IO1 220)配置为推挽输出0,验证模块通过通信通路20检查目标待测芯片的GPIO是否只有第二个GPIO(IO1 32)的输入电平值为0,其他都为1;如此循环,一直到目标待测芯片的最后一个GPIO。检查判断的实现方式不做要求,这里只是优选方式,验证模块可在检查出有错误时将详细信息进行记录。
4、目标待测芯片下拉输入验证:验证模块将自身的全部有效GPIO配置为浮空输入,并且验证模块通过通信通路20配置目标待测芯片的全部GPIO为下拉输入模式,然后验证模块通过通信通路20检查目标待测芯片的所有GPIO的输入电平值是否为全0;验证模块将自身的第一个GPIO(IO0 210)配置为推挽输出1,验证模块通过通信通路20检查目标待测芯片的GPIO是否只有第一个GPIO(IO0 31)的输入电平值为1,其他都为0;验证模块将自身的第一个GPIO(IO0 210)配置为浮空输入,第二个GPIO(IO1 220)配置为推挽输出1,验证模块通过通信通路20检查目标待测芯片的GPIO是否只有第二个GPIO(IO1 32)的输入电平值为1,其他都为0;如此循环,一直到目标待测芯片的最后一个GPIO验证结束。检查判断的实现方式不做要求,这里只是优选方式,验证模块可在检查出有错误时将详细信息进行记录。
5、目标待测芯片推挽输出验证:验证模块将自身的全部有效GPIO配置为浮空输入,并且验证模块通过通信通路20配置目标待测芯片的全部GPIO为推挽输出模式并全部输出1,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否为全1;验证模块通过通信通路20配置目标待测芯片的第一个GPIO(IO0 31)推挽输出0,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否只有第一个GPIO(IO0 210)为0,其他都为1;验证模块通过通信通路20配置目标待测芯片的第一个GPIO(IO031)推挽输出1,且第二个GPIO(IO1 32)推挽输出0,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否只有第二个GPIO(IO1 220)为0,其他都为1;如此循环,一直到目标待测芯片的最后一个GPIO验证结束。这里也可以使用这种方式来验证目标待测芯片推挽输出:验证模块将自身的全部有效GPIO配置为浮空输入,并且验证模块通过通信通路20配置目标待测芯片的全部GPIO为推挽输出模式并全部输出0,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否为全0;验证模块通过通信通路20配置目标待测芯片的第一个GPIO(IO0 31)推挽输出1,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否只有第一个GPIO(IO0 210)为1,其他都为0;验证模块通过通信通路20配置目标待测芯片的第一个GPIO(IO0 31)推挽输出0,且第二个GPIO(IO1 32)推挽输出1,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否只有第二个GPIO(IO1 220)为1,其他都为0;如此循环,一直到目标待测芯片的最后一个GPIO验证结束,检查判断的实现方式不做要求,这里只是优选方式,验证模块可在检查出有错误时将详细信息进行记录。
6、目标待测芯片禁止输出验证:验证模块将自身的全部有效GPIO配置为下拉输入,并且验证模块通过通信通路20配置目标待测芯片的全部GPIO为推挽输出模式并全部输出1,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否为全1;验证模块通过通信通路20配置目标待测芯片的第一个GPIO(IO0 31)推挽输出0,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否只有第一个GPIO(IO0 210)为0,其他都为1;然后验证模块通过通信通路20配置目标待测芯片的第一个GPIO(IO0 31)禁止输出,然后验证模块读取目标待测芯片的全部GPIO的输出电平值记录为DATA1,验证模块通过通信通路20配置目标待测芯片的第一个GPIO(IO0 31)推挽输出1,然后验证模块读取目标待测芯片的全部GPIO的输出电平值记录为DATA1’,判断读取到的DATA1与DATA1’是否相等,并且除了验证模块的第一个GPIO(IO0 210)为0,其他的有效GPIO均为1;验证模块通过通信通路20配置目标待测芯片的第一个GPIO(IO0 31)使能输出,并配置目标待测芯片的第二个GPIO(IO1 32)推挽输出0,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否只有第二个GPIO(IO1 220)的输入电平值为0,其他都为1;然后验证模块通过通信通路20配置目标待测芯片的第二个GPIO(IO1 32)禁止输出,然后验证模块读取目标待测芯片的全部GPIO的输出电平值记录为DATA2,验证模块通过通信通路20配置目标待测芯片的第二个GPIO(IO1 32)推挽输出1,然后验证模块读取目标待测芯片的全部GPIO的输出电平值记录为DATA2’,判断读取到的DATA2与DATA2’是否相等,并且除了验证模块的第二个GPIO(IO1 220)为0,其他的有效GPIO均为1;如此循环,一直到目标待测芯片的最后一个GPIO验证结束。这里也可以使用这种方式来验证目标待测芯片禁止输出:验证模块将自身的全部有效GPIO配置为上拉输入,并且验证模块通过通信通路20配置目标待测芯片的全部GPIO为推挽输出模式并全部输出0,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否为全0;验证模块通过通信通路20配置目标待测芯片的第一个GPIO(IO0 31)推挽输出1,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否只有第一个GPIO(IO0 210)为1,其他都为0;然后验证模块通过通信通路20配置目标待测芯片的第一个GPIO(IO0 31)禁止输出,然后验证模块读取目标待测芯片的全部GPIO的输出电平值记录为DATA1,验证模块通过通信通路20配置目标待测芯片的第一个GPIO(IO0 31)推挽输出0,然后验证模块读取目标待测芯片的全部GPIO的输出电平值记录为DATA1’,判断读取到的DATA1与DATA1’是否相等,并且除了验证模块的第一个GPIO(IO0 210)为1,其他的有效GPIO均为0;验证模块通过通信通路20配置目标待测芯片的第一个GPIO(IO0 31)使能输出,并配置目标待测芯片的第二个GPIO(IO1 32)推挽输出1,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否只有第二个GPIO(IO1 220)的输入电平值为1,其他都为0;然后验证模块通过通信通路20配置目标待测芯片的第二个GPIO(IO1 32)禁止输出,然后验证模块读取目标待测芯片的全部GPIO的输出电平值记录为DATA2,验证模块通过通信通路20配置目标待测芯片的第二个GPIO(IO1 32)推挽输出0,然后验证模块读取目标待测芯片的全部GPIO的输出电平值记录为DATA2’,判断读取到的DATA2与DATA2’是否相等,并且除了验证模块的第二个GPIO(IO1 220)为1,其他的有效GPIO均为0;如此循环,一直到目标待测芯片的最后一个GPIO验证结束,检查判断的实现方式不做要求,这里只是优选方式,验证模块可在检查出有错误时将详细信息进行记录。
7、目标待测芯片开漏输出验证:验证模块将自身的全部有效GPIO配置为下拉输入,并且验证模块通过通信通路20配置目标待测芯片的全部GPIO为开漏输出模式并全部输出0,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否为全0;验证模块通过通信通路20配置目标待测芯片的第一个GPIO(IO0 31)开漏输出1,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否全部为0;验证模块通过通信通路20配置目标待测芯片的第一个GPIO(IO0 31)开漏输出0,且第二个GPIO(IO1 32)开漏输出1,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否全部为0;如此循环,一直到目标待测芯片的最后一个GPIO验证结束。然后验证模块将自身的全部有效GPIO配置为上拉输入,并且验证模块通过通信通路20配置目标待测芯片的全部GPIO为开漏输出模式并全部输出0,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否为全0;验证模块通过通信通路20配置目标待测芯片的第一个GPIO(IO0 31)开漏输出1,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否只有第一个GPIO(IO0 210)为1,其他都为0;验证模块通过通信通路20配置目标待测芯片的第一个GPIO(IO0 31)开漏输出0,且第二个GPIO(IO1 32)开漏输出1,然后验证模块读取目标待测芯片的全部GPIO的输出电平值,验证模块判断读取到的目标待测芯片输出电平值是否只有第二个GPIO(IO1 220)为1,其他都为0;如此循环,一直到目标待测芯片的最后一个GPIO验证结束,检查判断的实现方式不做要求,这里只是优选方式,验证模块可在检查出有错误时将详细信息进行记录。
应用本实施例提供的一种GPIO验证方法,所述上位机模块为目标待测芯片配置对应的目标GPIO信息,并将所述目标GPIO信息发送至所述验证模块,所述验证模块根据所述目标GPIO信息确定所述目标待测芯片的GPIO的目标验证内容,根据所述目标验证内容进行验证GPIO管脚的配置,再根据所述目标待测芯片的各GPIO管脚的输入输出信息对所述目标待测芯片的各GPIO管脚进行验证,可以高效全面地验证芯片的GPIO,且对于不同芯片的GPIO验证,只需使用上位机模块重新配置,即可进行验证,提高了芯片GPIO的验证效率。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于***类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的***与方法进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (8)

1.一种GPIO验证***,其特征在于,包括:上位机模块和验证模块;
所述上位机模块与所述验证模块相连接,用于为目标待测芯片配置对应的目标GPIO信息,并将所述目标GPIO信息发送至所述验证模块;
所述验证模块包括验证GPIO管脚,通过所述验证GPIO管脚与所述目标待测芯片相连接,用于根据所述目标GPIO信息确定所述目标待测芯片的GPIO的目标验证内容,根据所述目标验证内容进行验证GPIO管脚的配置,再根据所述目标待测芯片的各GPIO管脚的输入输出信息对所述目标待测芯片的各GPIO管脚进行验证。
2.根据权利要求1所述的GPIO验证***,其特征在于,所述目标GPIO信息包括:
所述目标待测芯片的GPIO分组信息,各所述目标待测芯片的GPIO分组的管脚分配信息,所述目标待测芯片的GPIO管脚上拉电阻信息,所述目标待测芯片的GPIO管脚下拉电阻信息,所述目标待测芯片的GPIO管脚开漏输出信息,所述目标待测芯片的GPIO管脚推挽输出信息,所述目标待测芯片的GPIO管脚类型设置寄存器地址和设置对应GPIO管脚为普通GPIO管脚的数值。
3.根据权利要求1所述的GPIO验证***,其特征在于,所述验证模块还包括:
与各所述验证GPIO管脚相对应的,根据所述目标验证内容与对应的验证GPIO管脚进行程控连接的上拉电阻与下拉电阻;
与所述目标待测芯片相连接,用于与所述目标待测芯片进行信息交换的通信通路。
4.根据权利要求1所述的GPIO验证***,其特征在于,所述目标待测芯片的GPIO的目标验证内容包括:
浮空输入验证,禁止输入验证,上拉输入验证,下拉输入验证,推挽输出验证,禁止输出验证和开漏输出验证。
5.一种GPIO验证方法,其特征在于,包括:
上位机模块为目标待测芯片配置对应的目标GPIO信息,并将所述目标GPIO信息发送至所述验证模块;
所述验证模块根据所述目标GPIO信息确定所述目标待测芯片的GPIO的目标验证内容,根据所述目标验证内容进行验证GPIO管脚的配置,再根据所述目标待测芯片的各GPIO管脚的输入输出信息对所述目标待测芯片的各GPIO管脚进行验证。
6.根据权利要求5所述的GPIO验证方法,其特征在于,所述目标GPIO信息包括:
所述目标待测芯片的GPIO分组信息,各所述目标待测芯片的GPIO分组的管脚分配信息,所述目标待测芯片的GPIO管脚上拉电阻信息,所述目标待测芯片的GPIO管脚下拉电阻信息,所述目标待测芯片的GPIO管脚开漏输出信息,所述目标待测芯片的GPIO管脚推挽输出信息,所述目标待测芯片的GPIO管脚类型设置寄存器地址和设置对应GPIO管脚为普通GPIO管脚的数值。
7.根据权利要求5所述的GPIO验证方法,其特征在于,所述验证模块根据所述目标验证内容进行验证GPIO管脚的配置包括:
所述验证模块根据所述目标验证内容控制各所述验证GPIO管脚与对应的上拉电阻与下拉电阻连通或断开。
8.根据权利要求5所述的GPIO验证方法,其特征在于,所述目标待测芯片的GPIO的验证内容包括:
浮空输入验证,禁止输入验证,上拉输入验证,下拉输入验证,推挽输出验证,禁止输出验证和开漏输出验证。
CN201610236254.2A 2016-04-15 2016-04-15 一种gpio验证***与方法 Active CN105844056B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610236254.2A CN105844056B (zh) 2016-04-15 2016-04-15 一种gpio验证***与方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610236254.2A CN105844056B (zh) 2016-04-15 2016-04-15 一种gpio验证***与方法

Publications (2)

Publication Number Publication Date
CN105844056A true CN105844056A (zh) 2016-08-10
CN105844056B CN105844056B (zh) 2019-02-05

Family

ID=56589009

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610236254.2A Active CN105844056B (zh) 2016-04-15 2016-04-15 一种gpio验证***与方法

Country Status (1)

Country Link
CN (1) CN105844056B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108073738A (zh) * 2016-11-16 2018-05-25 鸿富锦精密电子(天津)有限公司 Gpio验证***及方法
CN109254891A (zh) * 2018-09-25 2019-01-22 郑州云海信息技术有限公司 一种调试板卡
CN109633415A (zh) * 2018-12-28 2019-04-16 泰斗微电子科技有限公司 一种异常芯片的识别方法及设备
CN111983437A (zh) * 2020-08-25 2020-11-24 深圳市旗开电子有限公司 一种5g模块产品gpio口测试电路及测试方法
CN112270152A (zh) * 2020-10-29 2021-01-26 厦门紫光展锐科技有限公司 芯片io引脚验证***和方法
CN112286750A (zh) * 2020-10-29 2021-01-29 山东云海国创云计算装备产业创新中心有限公司 一种gpio验证方法、装置、电子设备和介质
CN113255271A (zh) * 2021-05-17 2021-08-13 厦门紫光展锐科技有限公司 一种芯片io引脚自动验证***及方法
CN116306409A (zh) * 2023-05-22 2023-06-23 南京芯驰半导体科技有限公司 芯片验证方法、装置、设备及存储介质
CN116540146A (zh) * 2023-05-25 2023-08-04 深圳市航顺芯片技术研发有限公司 一种gpio短路检测方法及gpio短路检测***

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030078752A1 (en) * 1999-05-14 2003-04-24 Chakravarthy K. Allamsetty System and method for testing a circuit implemented on a programmable logic device
CN201097171Y (zh) * 2007-11-06 2008-08-06 海信(山东)空调有限公司 空调器片外存储器读写装置
CN101697003A (zh) * 2009-11-06 2010-04-21 烽火通信科技股份有限公司 一种短路检测方法和短路检测装置
CN101753212A (zh) * 2009-12-30 2010-06-23 武汉电信器件有限公司 小封装可插拔收发器时序参数的检测装置及检测方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030078752A1 (en) * 1999-05-14 2003-04-24 Chakravarthy K. Allamsetty System and method for testing a circuit implemented on a programmable logic device
CN201097171Y (zh) * 2007-11-06 2008-08-06 海信(山东)空调有限公司 空调器片外存储器读写装置
CN101697003A (zh) * 2009-11-06 2010-04-21 烽火通信科技股份有限公司 一种短路检测方法和短路检测装置
CN101753212A (zh) * 2009-12-30 2010-06-23 武汉电信器件有限公司 小封装可插拔收发器时序参数的检测装置及检测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
疏凤: "YHFT-DSP GPIO 部件的设计实现及其应用研究", 《中国优秀硕士学位论文全文数据库信息科技辑》 *

Cited By (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108073738B (zh) * 2016-11-16 2022-02-18 鸿富锦精密电子(天津)有限公司 Gpio验证***及方法
CN108073738A (zh) * 2016-11-16 2018-05-25 鸿富锦精密电子(天津)有限公司 Gpio验证***及方法
CN109254891A (zh) * 2018-09-25 2019-01-22 郑州云海信息技术有限公司 一种调试板卡
CN109633415A (zh) * 2018-12-28 2019-04-16 泰斗微电子科技有限公司 一种异常芯片的识别方法及设备
CN109633415B (zh) * 2018-12-28 2021-08-10 泰斗微电子科技有限公司 一种异常芯片的识别方法及设备
CN111983437A (zh) * 2020-08-25 2020-11-24 深圳市旗开电子有限公司 一种5g模块产品gpio口测试电路及测试方法
CN111983437B (zh) * 2020-08-25 2023-09-08 深圳市旗开电子有限公司 一种5g模块产品gpio口测试电路及测试方法
CN112270152A (zh) * 2020-10-29 2021-01-26 厦门紫光展锐科技有限公司 芯片io引脚验证***和方法
CN112270152B (zh) * 2020-10-29 2022-06-21 厦门紫光展锐科技有限公司 芯片io引脚验证***和方法
CN112286750A (zh) * 2020-10-29 2021-01-29 山东云海国创云计算装备产业创新中心有限公司 一种gpio验证方法、装置、电子设备和介质
CN113255271A (zh) * 2021-05-17 2021-08-13 厦门紫光展锐科技有限公司 一种芯片io引脚自动验证***及方法
CN113255271B (zh) * 2021-05-17 2022-09-09 厦门紫光展锐科技有限公司 一种芯片io引脚自动验证***及方法
CN116306409A (zh) * 2023-05-22 2023-06-23 南京芯驰半导体科技有限公司 芯片验证方法、装置、设备及存储介质
CN116306409B (zh) * 2023-05-22 2023-08-08 南京芯驰半导体科技有限公司 芯片验证方法、装置、设备及存储介质
CN116540146A (zh) * 2023-05-25 2023-08-04 深圳市航顺芯片技术研发有限公司 一种gpio短路检测方法及gpio短路检测***
CN116540146B (zh) * 2023-05-25 2024-03-22 深圳市航顺芯片技术研发有限公司 一种gpio短路检测方法及gpio短路检测***

Also Published As

Publication number Publication date
CN105844056B (zh) 2019-02-05

Similar Documents

Publication Publication Date Title
CN105844056A (zh) 一种gpio验证***与方法
CN104517004B (zh) 产生集成电路布图的方法
CN104461799B (zh) 板卡配置正确性检测***
CN104569794B (zh) 一种基于边界扫描结构的fpga在线测试仪及测试方法
US8683419B1 (en) Power domain crossing interface analysis
CN106531654B (zh) 一种芯片输入引脚测试方法和装置
CN104516798B (zh) 无线一对多测试***
CN103544122B (zh) 一种接口自适应匹配的协同***及其协同方法
US6925614B2 (en) System and method for protecting and integrating silicon intellectual property (IP) in an integrated circuit (IC)
CN105975726A (zh) 一种基于SystemVerilog语言的验证方法及平台
CN111339731B (zh) 一种面向SoC的FPGA验证平台和验证方法
CN103852681B (zh) 测试装置以及电子装置的测试方法
US20130132628A1 (en) Plug-in module, electronic system, and judging method and querying method thereof
CN103631738B (zh) 一种片外配置和回读fpga装置
CN105740487A (zh) 基于工艺设计包的版图与原理图一致性验证方法
CN104573242A (zh) 一种pcb设计版图审核***
CN105068955B (zh) 一种局部总线结构及数据交互方法
CN110489259A (zh) 一种内存故障检测方法及设备
CN105955890A (zh) 一种功能测试案例的生成方法及装置
CN108133069A (zh) 集成电路后端设计***及方法
CN111104278A (zh) Sas连接器导通检测***及其方法
CN204989454U (zh) 一种用于检定双模费控电能表的自动检定流水线
CN105093096B (zh) 一种fpga的测试装置
CN107704351B (zh) 一种芯片的验证方法和装置
CN109885327A (zh) 一种升级cpld的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 310053 Binjiang District, Hangzhou, No. six and road, a building (North), building B4004, room, four

Applicant after: Hangzhou hi tech Limited by Share Ltd

Address before: 310053 Binjiang District, Hangzhou, No. six and road, a building (North), building four, B4004,

Applicant before: Wangao (Hangzhou) Technology Co.Ltd

COR Change of bibliographic data
GR01 Patent grant
GR01 Patent grant