一种fpga控制设备的检测装置和方法

文档序号:6330062阅读:119来源:国知局
专利名称:一种fpga控制设备的检测装置和方法
一种FPGA控制设备的检测装置和方法技术领域
本发明属于信号检测技术领域,具体涉及一种FPGA控制设备的检测装置和方法。
技术背景
在现在的网络通信中,一些设备的主芯片由FPGA来实现,FPGA的内部可集成MAC 控制器、DDR控制器和QDR控制器等功能处理部件,相应的,FPGA的周边一般有MAC接入、内存插槽、QDR存储颗粒等板载器件。当PCB板卡焊接好后,需要对这些内部和外部的功能部件进行正确性检测,以排除可能的逻辑故障或硬件故障。
现有的FPGA板卡设备在焊接好后,对FPGA板卡设备的电气检测一般为通过物理方式测量板卡上的电阻或电压来判断是否存在硬件故障,但对一些PCB板上内层或无测量孔的信号线则无法测量其正确性;FPGA内部的功能也需要烧写完整的固件程序才能进行系统的调试,在调试过程中即使发现问题也不能很快就定位是否由何处的硬件故障引起。
专利号ZL200510080017. 3,名称为一种芯片接口检测装置及方法的发明中披露了一种利用外部检测器件和内部检测器件检测外部存储模块控制或数据正确性的方法,此方法对检测FPGA外部的内存设备有指导意义,但此方法具有所用设备多,且检测内容单一, 只能对存储模块进行检测,不能对其他控制设备进行检测的缺陷。发明内容
为克服上述缺陷,本发明提供了一种FPGA控制设备的检测装置和方法,可有效定位可能存在的硬件故障,验证各控制通路的正确性。
为实现上述目的,本发明提供一种FPGA控制设备的检测装置,所述检测装置包括内存网卡单元和FPGA,所述内存网卡单元包括内存和PHY ;所述FPGA包括分别对所述内存和所述PHY进行控制的内存控制器和MAC控制器;其改进之处在于,所述FPGA还包括 与所述内存控制器和所述MAC控制器分别连接的内存检测模块和MAC检测模块,以及分别与所述内存检测模块和所述MAC检测模块连接的结果汇总模块。
本发明提供的优选技术方案中,所述检测装置包括与所述FPGA连接的LED显示单兀。
本发明提供的第二优选技术方案中,所述内存包括DDR/2/3SDRAM和QDR/II/ II+SRAMO
本发明提供的第三优选技术方案中,所述PHY包括千兆PHY和万兆PHY。
本发明提供的第四优选技术方案中,所述内存控制器包括DDR内存控制器和QDR 内存控制器;所述DDR内存控制器对DDR/2/3SDRAM进行控制;QDR内存控制器对QDR/II/ II+SRAM进行控制。
本发明提供的第五优选技术方案中,所述MAC控制器包括千兆MAC控制器和万兆 MAC控制器。
本发明提供的第六优选技术方案中,所述内存检测模块包括DDR内存检测模块和QDR内存检测模块。
本发明提供的第七优选技术方案中,所述MAC检测模块包括千兆MAC检测模块和万兆MAC检测模块。
本发明提供的第八优选技术方案中,所述结果汇总模块将所述DDR内存检测模块、所述QDR内存检测模块、所述千兆MAC检测模块和所述万兆MAC检测模块输入的实时结果进行寄存,当所有的检测结束后,所述结果汇总模块会按照时间先后顺序将四个检测模块的最终结果依次输出显示给所述LED显示单元。
本发明提供的第九优选技术方案中,所述LED显示单元包括8个LED指示灯。
本发明提供的第十优选技术方案中,所述DDR内存检测模块,用于检测DDR/2/3 SDRAM的数据线、控制线及存储空间。
本发明提供的较优选技术方案中,所述QDR内存检测模块,用于检测QDR/II/ II+SDRAM的数据线、控制线及存储空间。
本发明提供的第二较优选技术方案中,所述千兆MAC检测模块,用于检测千兆网络所在通路的数据传输正确性。
本发明提供的第三较优选技术方案中,所述万兆MAC检测模块,用于检测万兆网络所在通路的数据传输正确性。
本发明提供的第四较优选技术方案中,提供一种FPGA控制设备的检测方法,所述检测方法以地址线走1、地址线走0、数据线走1、数据线走0的方式对所述内存进行检测,其特征在于,所述检测方法以单burst的方式对存储空间进行检测。
本发明提供的第五较优选技术方案中,所述检测方法包括如下步骤
(1)对地址线进行检测,判断对地址线的检测是否完成,判断结果为“否”,则继续对地址线进行检测;判断结果为“是”,则输出检测结果并进行步骤2 ; (2)对数据线进行检测,判断对数据线的检测是否完成,判断结果为“否”,则继续对数据线进行检测;判断结果为“是”,则输出检测结果并进行步骤3 ; (3)对内存存储区块进行检测,判断对内存存储区块的检测是否完成,判断结果为“否”,则继续对内存存储区块进行检测;判断结果为“是”, 则输出检测结果并结束。
与现有技术比,本发明提供的一种FPGA控制设备的检测装置和方法,通过自动检测,可有效验证FPGA内各控制通路的正确性,若有故障,亦可准确定位FPGA网络控制设备上存在的故障的位置,减少此类设备在焊接完后初检的时间;而且检测装置及方法可对 DDR/2/3 SDRAM、QDR/II/II+SRAM、千兆PHY和万兆PHY分别进行检测,在检测时只需一张没有焊接质量问题的PCB电路板和需要检测的板卡即可,在检测过程中无需人工干预,检测的结果可通过LED灯来显示,避免了现有检测方法使用设备多,检测内容单一,只能对存储模块进行检测,不能对其他控制设备进行检测的缺陷。


图1为FPGA控制设备的检测装置的结构示意图。
图2为FPGA控制设备的检测方法的流程图。
具体实施方式
5
如图1所示,FPGA控制设备的检测装置包括内存网卡单元和FPGA,所述内存网卡单元包括DDR/2/3 SDRAM、QDR/II/II+SRAM、千兆PHY和万兆PHY ;所述FPGA包括与所述DDR/2/3 SDRAM、所述QDR/II/II+SRAM、所述千兆PHY和所述万兆PHY依次连接的DDR内存控制器、QDR内存控制器、千兆MAC控制器和万兆MAC控制器,与所述DDR内存控制器、所述QDR内存控制器、所述千兆MAC控制器和所述万兆MAC控制器依次连接的DDR内存检测模块、QDR内存检测模块、千兆MAC检测模块和万兆MAC检测模块,以及与所述DDR内存检测模块、所述QDR内存检测模块、所述千兆MAC检测模块和所述万兆MAC检测模块分别连接的结果汇总模块。
在检测装置的FPGA内部实现MAC控制器、DDR控制器和QDR控制器等功能处理模块,同时在各控制器旁边各增加一个检测模块,用于检测PCB板卡焊接好后,这些内部和外部功能部件的正确性,以排除可能的逻辑或硬件故障;具体的,在PCB板卡焊接好并经过普通电气测试后,在FPGA上烧写入本检测程序,检测时将各控制器形成闭环回路,向该闭环回路发送特定的检测数据,以检测各控制器每条地址线或数据线的连通性,从而可有效定位可能存在的硬件故障,验证各控制通路的正确性。
具体的,FPGA控制设备的检测装置的各部件功能描述如下
DDR/2/3 SDRAM,为普通的SODIMM内存,在此处指DDR、DDR2、DDR3三种中的某一种内存,即此处待检测的内存及其所在通路所有物理器件在同一时刻仅有一种被检测;
QDR/II/II+,为普通的SRAM存储颗粒,在此处指QDR、QDRII、QDRII+三种中的某一种颗粒,即此处待检测的SRAM存储颗粒及其所在通路的所有物理器件在同一时刻仅有一种被检测;
千兆PHY,为通用的千兆以太网PHY,此处还包括了用于光传输的光纤及光电转换模块,千兆PHY与FPGA的连接为高速差分电信号,光纤部分采用自回环的方式,使得整个千兆数据通路为一个闭环回路;
万兆PHY,为专用处理芯片,此处还包括了用于光传输的光纤及光电转换模块, 万兆PHY与FPGA的连接为并行的高速差分电信号,光纤部分采用自回环的方式,使得整个万兆数据通路为一个闭环回路;
DDR内存控制器,标准的SDRAM控制器,但增加了对内存类型判断的逻辑,可以控制DDR、DDR2、DDR3三种类型内存的数据读写,并向后提供读写操作接口 ;
QDR内存控制器,标准的SRAM控制器,但增加了对SRAM类型判断的逻辑,可以控制 QDR、QDRII, QDRII+三种SRAM颗粒的数据读写,并向后提供读写操作接口 ;
千兆MAC控制器,标准的千兆以太网MAC层控制器,向后提供数据接口 ;
万兆MAC控制器,标准的万兆以太网MAC层控制器,向后提供数据接口 ;
DDR内存检测模块,生成特定的检测序列,用于检测SDRAM的所有数据线和控制线及所有存储空间,主要用到的方法是利用走1和走0的方法测试物理上的数据线和控制线,以单burst的方式测试所有存储空间;DDR内存检测模块通过向DDR内存控制器发出读写访问的命令,将读回的结果与寄存的结果对比,并将实时对比的结果输出至结果汇总模块;
QDR内存检测模块,原理与上述DDR内存检测模块相同,仅接口数据和地址宽度不同;
千兆MAC检测模块,生成特定的检测序列,检测千兆网络所在通路的数据传输正确性,千兆MAC检测模块向千兆MAC控制器发出读写访问的命令,将读回的结果与寄存的结果对比,并将实时对比的结果输出至结果汇总模块;
万兆MAC检测模块,原理与上述千兆MAC检测模块完全相同,唯一不同是其检测的序列长度相对较长一些;
结果汇总模块,将上述四个检测模块输入的实时结果进行寄存,如果检测过程中没有出现错误,后续寄存的结果会直接覆盖前一时刻寄存的结果,如果检测过程中有错误, 后续寄存的结果会将此错误保留下来,其中,所述的没有出现错误指检测的结果位始终为高电平“1”,出现错误指检测的结果位出现低电平“0”;当所有的检测结束后,结果汇总模块会按照时间先后顺序将前述四个检测模块的最终结果依次输出显示给8个LED指示灯, 如果所有检测都通过,则只需要显示4次,如果某个或多个检测模块检测出错误,则在显示完4次的结果后,会再次显示1次或多次,并按照一定的编码将错误的数据或地址线指示出来;前文所述的4次,是指可以从LED的亮灭情况观察的、明显的4个过程,并不是指亮灭 4次,另外,所述过程编码和后续出错的编码可依据个人设计进行,只要能明显区分结果即可。
其中,所述DDR内存控制器,可以根据前面的内存类型,使用专门的内存控制器而不必采用本方案中所述的通用的内存控制器;即在生成烧写逻辑前就提前指定好所控制的内存类型,类似的,QDR内存控制器也可以采用专门的内存控制器替代。
如图2所示,FPGA控制设备的检测方法以地址线走1、地址线走0、数据线走1、数据线走0的方式对所述内存进行检测,以单burst的方式对内存存储区块进行检测;所述检测方法包括如下步骤
(1)对地址线进行检测,判断对地址线的检测是否完成,判断结果为“否”,则继续对地址线进行检测;判断结果为“是”,则输出检测结果并进行步骤2 ;
(2)对数据线进行检测,判断对数据线的检测是否完成,判断结果为“否”,则继续对数据线进行检测;判断结果为“是”,则输出检测结果并进行步骤3 ;
(3)对内存存储区块进行检测,判断对内存存储区块的检测是否完成,判断结果为 “否”,则继续对内存存储区块进行检测;判断结果为“是”,则输出检测结果并结束。
需要声明的是,本发明内容及具体实施方式
意在证明本发明所提供技术方案的实际应用,不应解释为对本发明保护范围的限定。本领域技术人员在本发明的精神和原理启发下,可作各种修改、等同替换、或改进。但这些变更或修改均在申请待批的保护范围内。
权利要求
1.一种FPGA控制设备的检测装置,所述检测装置包括内存网卡单元和FPGA,所述内存网卡单元包括内存和PHY ;所述FPGA包括分别对所述内存和所述PHY进行控制的内存控制器和MAC控制器;其特征在于,所述FPGA包括与所述内存控制器和所述MAC控制器分别连接的内存检测模块和MAC检测模块,以及分别与所述内存检测模块和所述MAC检测模块连接的结果汇总模块。
2.根据权利要求1所述的检测装置,其特征在于,所述检测装置包括与所述FPGA连接的LED显示单元。
3.根据权利要求1所述的检测装置,其特征在于,所述内存包括DDR/2/3SDRAM和QDR/ II/II+SRAM。
4.根据权利要求1所述的检测装置,其特征在于,所述PHY包括千兆PHY和万兆PHY。
5.根据权利要求1所述的检测装置,其特征在于,所述内存控制器包括DDR内存控制器和QDR内存控制器;所述DDR内存控制器对DDR/2/3 SDRAM进行控制;QDR内存控制器对 QDR/II/II+SRAM 进行控制。
6.根据权利要求1所述的检测装置,其特征在于,所述MAC控制器包括千兆MAC控制器和万兆MAC控制器。
7.根据权利要求1所述的检测装置,其特征在于,所述内存检测模块包括DDR内存检测模块和QDR内存检测模块。
8.根据权利要求1所述的检测装置,其特征在于,所述MAC检测模块包括千兆MAC检测模块和万兆MAC检测模块。
9.根据权利要求7、8所述的检测装置,其特征在于,所述结果汇总模块将所述DDR内存检测模块、所述QDR内存检测模块、所述千兆MAC检测模块和所述万兆MAC检测模块输入的实时结果进行寄存,当所有的检测结束后,所述结果汇总模块会按照时间先后顺序将四个检测模块的最终结果依次输出显示给所述LED显示单元。
10.根据权利要求2所述的检测装置,其特征在于,所述LED显示单元包括8个LED指示灯。
11.根据权利要求7所述的检测装置,其特征在于,所述DDR内存检测模块,用于检测 DDR/2/3 SDRAM的数据线、控制线及存储空间。
12.根据权利要求7所述的检测装置,其特征在于,所述QDR内存检测模块,用于检测 QDR/II/II+SDRAM的数据线、控制线及存储空间。
13.根据权利要求8所述的检测装置,其特征在于,所述千兆MAC检测模块,用于检测千兆网络所在通路的数据传输正确性。
14.根据权利要求8所述的检测装置,其特征在于,所述万兆MAC检测模块,用于检测万兆网络所在通路的数据传输正确性。
15.根据1-14项权利要求任一项所述的FPGA控制设备的检测装置的FPGA控制设备的检测方法,所述检测方法以地址线走1、地址线走0、数据线走1、数据线走0的方式对所述内存进行检测,其特征在于,所述检测方法以单burst的方式对内存存储区块进行检测。
16.根据权利要求15所述的检测方法,所述检测方法包括如下步骤(1)对地址线进行检测,判断对地址线的检测是否完成,判断结果为“否”,则继续对地址线进行检测;判断结果为“是”,则输出检测结果并进行步骤2 ; (2)对数据线进行检测,判断对数据线的检测是否完成,判断结果为“否”,则继续对数据线进行检测;判断结果为 “是”,则输出检测结果并进行步骤3 ; (3)对内存存储区块进行检测,判断对内存存储区块的检测是否完成,判断结果为“否”,则继续对内存存储区块进行检测;判断结果为“是”,则输出检测结果并结束。
全文摘要
本发明提供了一种FPGA控制设备的检测装置和方法,检测装置包括内存网卡单元和FPGA,所述内存网卡单元包括内存和PHY;所述FPGA包括分别对所述内存和所述PHY进行控制的内存控制器和MAC控制器,与所述内存控制器和所述MAC控制器分别连接的内存检测模块和MAC检测模块,以及分别与所述内存检测模块和所述MAC检测模块连接的结果汇总模块;检测方法以地址线走1、地址线走0、数据线走1、数据线走0的方式对所述内存进行检测,以单burst的方式对内存存储区块进行检测。本发明提供的FPGA控制设备的检测装置和方法可有效定位可能存在的硬件故障,验证各控制通路的正确性。
文档编号G05B23/02GK102520710SQ201110383700
公开日2012年6月27日 申请日期2011年11月28日 优先权日2011年11月28日
发明者刘朝辉, 张英文, 李静, 窦晓光 申请人:曙光信息产业(北京)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1