一种模拟智能电能表存储器测试板系统及其测试方法
技术领域
本发明涉及一种测试板及其测试方法,具体讲涉及一种基于智能电表软件可靠性测试平台模拟智能电能表存储器测试板系统及其测试方法。
背景技术
智能电表是智能电网的智能终端,它已经不是传统意义上的电能表,智能电表除了具备传统电能表基本用电量的计量功能以外,为了适应智能电网和新能源的使用它还具有用电信息存储、双向多种费率计量功能、用户端控制功能、多种数据传输模式的双向数据通信功能、防窃电功能等智能化的功能,智能电表代表着未来节能型智能电网最终用户智能化终端的发展方向。随着智能电网的日益发展,世界各国对于智能化用户终端的需求也日益增大,据统计,在未来5年,随着智能电网在世界各国的建设,智能电表在全球安装的数量将高达2亿只。同样,在中国,随着国家坚强智能电网建设的进展,作为用户端的智能电表的需求也会大幅度地增长,保守的预计,市场将会有1.7亿只左右的需求。美国政府为升级本国电网的拨款中,就有一部分专门用于在未来3年致使13%的美国家庭(1800万户家庭)能装上智能电表。在欧洲,意大利及瑞典已经完成先进计量基础设施的部署,将所有普通电表更换为智能电表。法国、西班牙、德国和英国预计在未来10年内完成也将完成智能电表的全面推广和应用。
传统的智能电表是由用户交费对智能IC卡充值并输入电表中,电表才能供电,表中电量用完后自动拉闸断电,新型的智能电表目前以完美实现网络购电,就像手机充值一样简单。智能电表行业的背景或许是投资者在思考这一问题时首先需要把握的:随着中国提出建设国家智能电网概念之后,与之直接配套的智能电表开始成为关注的焦点。智能电能表是一种新型电能表,相对以往的普通电能表,除具备基本的计量功能外,智能电能表是全电子式电能表,带有硬件时钟和完备的通信接口,具有高可靠性、高安全等级以及大存储容量等特点,完全符合中国未来发展“节能环保”的要求。
随着越来越多的智能电表投入到现场运行中,智能电表运行的可靠性至关重要,因此需要在使用前对智能电表进行检测以确保其运行的可靠性。
针对智能电表软件可靠性测试方案对存储芯片模块的需求,上位机软件需要通过ARM对存储芯片模块进行信息配置以及故障写入等相关操作,实际的存储芯片难以实现这些操作;并且在测试过程中,ARM要同时对上位机测试软件和被测的电表存储芯片进行交互操作,其中运行的软件处理速度相对整个测试平台的信息交互速度太慢,有可能导致测试结果出现偏差等问题,因此,需要采用其他方式模拟智能电能表存储芯片模块以代替实际的存储芯片。
发明内容
针对现有技术的不足,本发明的目的是提供一种基于智能电表软件可靠性测试平台模拟存储器测试板系统及其测试方法,本发明模拟存储器测试板以ARM和FPGA相结合,以FPGA硬件逻辑模拟实际存储芯片的功能,解决ARM与存储芯片模块信息交互速度较慢,无法模拟失效等测试所需状态的问题。
本发明的目的是采用下述技术方案实现的:
本发明提供一种模拟智能电能表存储器测试板系统,其改进之处在于,所述测试板系统是基于智能电表软件可靠性测试平台的,包括检测计算机1、模拟存储器测试板2、被测单元3、接口A 4和接口C 6;所述检测计算机1通过接口A 4与模拟存储器测试板2进行信息交互;所述被测单元3通过接口C 6与模拟存储器测试板2进行信息交互。
进一步地,所述模拟存储器测试板2包括通过接口B 5进行信息交互的存储器模拟监控板ARM7和存储器模拟板FPGA8;
所述存储器模拟板FPGA8包括i2c总线内核9、仲裁选择模块10、三总线模块11、SRAM存储控制模块12、SRAM芯片13、修改存储器内容模块14、读取操作指令模块15和寄存器模块16;所述仲裁选择模块10与i2c总线内核9进行信息交互;所述I2C总线内核9、三总线模块11、SRAM存储控制模块12和SRAM芯片13依次进行信息交互;所述修改存储器内容模块14分别与SRAM存储控制模块12和寄存器模块16连接;所述读取操作指令模块15分别与SRAM芯片13和寄存器模块16连接;所述SRAM存储控制模块12和寄存器模块16进行信息交互。
进一步地,在测试进行过程中,存储器模拟监控板ARM7通过接口A4接收检测计算机1发送的指令,同时通过接口B5与存储器模拟板FPGA8进行信息交互,完成检测计算机1要求的操作;被测单元3通过接口C6与存储器模拟板FPGA8进行信息交互,模拟电表对EEPROM的读写操作;所述存储器模拟监控板ARM7为ARM芯片;
所述i2c总线内核9满足EEPROM通信协议。
进一步地,所述接口A4是检测计算机1和模拟存储器测试板2之间的接口,采用以太网接口,模拟存储器测试板2作为服务端;所述接口C6是模拟存储器测试板2与被测单元3之间的接口,满足i2c总线协议。
进一步地,模拟存储器测试板利用存储器模拟板FPGA8硬件逻辑及SRAM芯片13模拟被测单元3对智能电能表的存储芯片的读写操作,通过ARM芯片与存储器模拟板FPGA8的信息交互,进行特殊操作:根据测试中使用的不同智能电表,对存储器模拟板FPGA8的模拟存储芯片信息进行配置,配置信息包括设备地址、存储器数量、存储器容量、是否分页和页大小;读取存储芯片模块的操作指令和记录操作状态;模拟智能电能表存储芯片的故障写入操作,满足智能电表软件可靠性测试平台检测存储器失效的需求。
进一步地,所述特殊操作包括:ARM芯片通过以太网接收上位机发送的指令,以读写时序与存储器模拟板FPGA8进行信息交互,将指令发送到存储器模拟板FPGA8模拟的寄存器中,再按照存储器模拟板FPGA8内部逻辑解析寄存器内容,实现存储器芯片的信息配置、读取操作指令及故障写入操作。
本发明还提供一种模拟智能电能表存储器测试板系统的测试方法,其改进之处在于,所述方法包括下述步骤:
步骤1:分析存储器模拟板FPGA的模拟存储芯片读写操作以及ARM芯片与存储器模拟板FPGA间的通信协议;
步骤2:根据存储器模拟板FPGA读写数据以及ARM芯片与智能电能表存储芯片间的通信协议,设计符合协议的时序逻辑;
步骤3:根据设计的时序逻辑,基于Quartus ii软件,利用VHDL语言实现存储芯片内核及智能电能表的存储芯片与ARM芯片进行交互的硬件逻辑;
步骤4:根据智能电表软件可靠性测试平台的需求,设计智能电能表存储芯片内核外围的硬件逻辑,分配管脚,并对VHDL语言编写的程序进行综合;
步骤5:在模拟存储器测试板上运行综合后的程序,对智能电表进行测试,并对模拟的智能电能表的存储芯片进行验证。
与最接近的现有技术相比,本发明的优异效果是:
本发明模拟存储器测试板以ARM和FPGA相结合,以FPGA硬件逻辑模拟实际存储芯片的功能,解决ARM与存储芯片模块信息交互速度较慢,无法模拟失效等测试所需状态的问题,具体为:
1)本发明可解决ARM对上位机测试软件和被测的电表存储芯片同时进行交互操作时,软件运行速度较慢,可能导致测试错误的问题;
2)本发明可针对不同的电表类型,对存储芯片类型、存储芯片数量、存储容量等信息进行配置;
3)本发明可针对智能电表软件可靠性测试平台的测试需求,执行读取操作指令、存储器故障写入等操作。
附图说明
图1是本发明提供的ARM及FPGA相结合的模拟存储器测试板的系统结构图;
其中:1-检测计算机,2-模拟存储器测试板,3-被测单元,4-接口A,5-接口B,6-接口C,7-存储器模拟监控板ARM,8-存储器模拟板FPGA,9-满足EEPROM通信协议的i2c总线内核,10-仲裁选择模块,11-三总线模块,12-SRAM存储控制模块,13-SRAM,14-修改存储器内容模块,15-读取操作指令模块,16-寄存器模块。
具体实施方式
下面结合附图对本发明的具体实施方式作进一步的详细说明。
本发明提供一种模拟存储器测试板系统,其结构图如图1所示,包括1-检测计算机,2-模拟存储器测试板,3-被测单元,4-接口A,5-接口B,6-接口C。模拟存储器测试板包括7-存储器模拟监控板ARM及8-存储器模拟板FPGA;接口A 4是检测计算机和存贮器模拟板之间的接口,采用以太网接口,存储器模拟板作为服务端;接口B 5是存贮器模拟板内部控制MCU与外设FPGA之间的接口;接口C 6是存储器模拟板与被测单元之间的接口,满足i2c总线协议。测试进行过程中,存储器模拟监控板ARM 7通过接口A 4接收检测计算机发送的指令,同时通过接口B5与存储器模拟板FPGA 8进行信息交互,完成检测计算机要求的操作。被测单元3通过接口C 6对存储器模拟板FPGA 8进行信息交互,模拟电表对EEPROM的读写操作。
模拟存储器测试板2内部包括9-满足EEPROM通信协议的i2c总线内核,10-仲裁选择模块,11-三总线模块,12-SRAM存储控制模块,13-SRAM,14-修改存储器内容模块,15-读取操作指令模块,16-寄存器模块及7-ARM即存储器模拟监控板ARM。其工作原理如下:
模拟电表对EEPROM的读写操作:通过i2c总线内核9(最多可模拟8片)接收电表MCU发送的串行时钟信号、串行数据信号及写保护信号,i2c总线内核9根据i2c总线协议将接收的数据信号解析为地址、数据及读写控制信号;仲裁选择模块10接收i2c总线内核9发送的请求信号,进行片选,使能对应的i2c总线内核9将数据、地址、读写控制等信息发送至三总线模块11;三总线模块11将接收到的数据、地址、读写控制等信息通过SRAM存储控制模块12实现对SRAM13的读写操作。
读取操作指令:读取操作指令模块15由操作指令控制子模块和操作指令FIFO子模块两部分组成,操作指令控制子模块读取SRMA存储器控制模块12内的数据、地址。读写控制等信息,并按照一定的协议组合成一条完整的操作指令,发送至操作指令FIFO子模块。由于FIFO满足先入先出的排序方式,因此操作指令可按执行操作的先后顺序存入操作指令FIFO子模块。当寄存器模块16接收到存储器模拟监控板ARM7发送的读取操作指令的信号时,即可读取操作指令FIFO子模块内的操作指令,再发送至存储器模拟监控板ARM7,实现读取操作指令的功能。
存储器故障写入:存储器模拟监控板ARM7发送修改存储器内容指令至寄存器模块16,寄存器模块16按协议解析接收的指令,将数据、地址、写控制等信息经过修改存储器内容模块14发送至三总线模块11,再通过SRAM存储控制模块12将修改的数据写入SRAM13对应的地址。在执行存储器故障写入的过程中,需屏蔽由i2c内核写入该地址的功能,以免ARM7修改的数据被电表MCU写入的数据覆盖。同时,存储器模拟监控板ARM7可通过寄存器模块16将数据、地址、读控制信息发送至三总线模块11,经过SRAM存储控制模块12读取SRAM13对应地址的数据,以检验故障是否成功写入。
存储芯片信息配置:寄存器模块16按协议对ARM7发送的配置存储芯片信息指令进行解析,再发送至i2c内核9中,具体实现方式如下:使能不同数量的i2c内核9,可配置存储芯片数量;修改页首地址,可配置不同的页大小及是否分页;修改存储器地址位数,可配置不同的存储容量;设备地址由寄存器模块16解析后直接写入i2c内核9,可配置不同存储芯片的设备地址。
模拟存储器测试板除可以利用FPGA硬件逻辑及SRAM芯片模拟被测单元对存储芯片模块的读写操作,还可以通过存储器模拟监控板ARM与存储器模拟板FPGA的信息交互,进行某些特殊操作:根据测试中使用的不同电表,对模拟存储器芯片信息进行配置,配置信息主要包括设备地址、存储器数量、存储器容量、是否分页、页大小等;可读取存储芯片模块的操作指令,记录操作状态;模拟存储器芯片故障写入的操作,满足测试平台检测存储器失效的需求。
某些特殊操作指的是:存储器模拟监控板ARM通过以太网接收上位机发送的指令,以一定的读写时序与存储器模拟板FPGA进行信息交互,将指令发送到存储器模拟板FPGA模拟的寄存器中,再按照存储器模拟板FPGA内部逻辑解析寄存器内容,实现存储器芯片的信息配置、读取操作指令及故障写入操作。
本发明还提供一种基于智能电表软件可靠性测试平台模拟存储器测试板系统的测试方法,包括以下步骤:
步骤1:分析存储器模拟板FPGA的模拟存储芯片读写操作以及ARM芯片与存储器模拟板FPGA间的通信协议;
步骤2:根据存储器模拟板FPGA读写数据以及存储器模拟监控板ARM与存储芯片模块间的通信协议,设计符合协议的时序逻辑;
步骤3:根据设计的时序逻辑,基于Quartus ii软件,利用VHDL语言实现存储芯片内核及存储芯片模块与存储器模拟监控板ARM进行交互的硬件逻辑;
步骤4:根据智能电表软件可靠性测试平台的需求,设计存储芯片内核外围的硬件逻辑,如,仲裁选择、读取操作指令、修改存储器内容、存储器控制等模块。合理分配管脚,并对VHDL语言编写的程序程序进行综合;
步骤5:在存储器模拟测试板上运行综合后的程序,对电能表进行测试,对该方案模拟的存储芯片模块进行验证。
本发明提供的模拟智能电能表存储器测试板系统主要包括模拟单元和监控单元,其中,模拟单元主要利用FPGA模拟智能电能表与测试芯片的信息交互过程,监控单元利用ARM对上述过程进行监听和控制。FPGA硬件逻辑主要模拟存储芯片模块内满足EEPROM通信协议的i2c总线内核,仲裁选择模块,三总线模块,SRAM存储控制模块,修改存储器内容模块,读取操作指令模块,寄存器模块。FPGA模拟的存储芯片模块除完成实际存储芯片与被测单元的信息交互外,还可以与ARM结合,实现一些特殊操作:ARM通过以太网接口接收上位机指令,并按一定协议与存储芯片模块进行信息交互,实现存储芯片信息配置、故障写入及读取操作指令等功能,以满足智能电表测试方案的具体需求。
最后应当说明的是:以上实施例仅用以说明本发明的技术方案而非对其限制,尽管参照上述实施例对本发明进行了详细的说明,所属领域的普通技术人员依然可以对本发明的具体实施方式进行修改或者等同替换,这些未脱离本发明精神和范围的任何修改或者等同替换,均在申请待批的本发明的权利要求保护范围之内。