一种基于知识库的fpga故障自动诊断方法

文档序号:6510298阅读:217来源:国知局
一种基于知识库的fpga故障自动诊断方法
【专利摘要】本发明公开一种基于知识库的FPGA故障自动诊断方法,该方法首先结构化存储FPGA设计和验证过程中发生的故障信息;然后根据新故障案例的特征信息进行故障检索,再依据故障发生过程、故障特征等信息,匹配最具关联性和相似性的故障信息,并向用户展示详细内容和故障解决方案,解决新故障。本发明利用在FPGA设计验证过程中已经获得的故障经验和方法,构建知识库系统,直观显示故障详细信息和解决方法,能准确、方便、快捷地定位故障问题,极大地提高了FPGA设计验证人员在调试解决故障时的效率。
【专利说明】—种基于知识库的FPGA故障自动诊断方法
【技术领域】
[0001]本发明涉及一种基于知识库的FPGA故障自动诊断方法,尤其涉及一种利用格式化的FPGA故障知识,利用相似度检测方法为用户自动匹配出所有可能的故障信息的基于知识库的FPGA故障自动诊断方法。
【背景技术】
[0002]现场可编程门阵列(Field Programmable Gate Array),是一种现场可编程ASIC,作为一种将门阵列的通用结构与可编程逻辑器件的现场可编程特性结合与一体的新型可编程器件,FPGA具有诸多优点,得到了十分迅速的发展。但随着FPGA规模和集成度的不断扩大,FPGA产品设计人员和验证人员,特别是没有经验的人员在开发过程中特别容易犯错误,而鉴于FPGA设计过程与普通软件开发的区别性,使得在开发和测试验证时不容易定位到问题所在,找不到解决问题的方法。而现有技术方案一般是通过询问专业人员,通过个人经验加以解决。个人经验不仅获取困难、知识存量较少,还会存在不精确、甚至不准确的问题。
[0003]构建故障知识库能将以往的故障经验(包括故障表现、解决方案等)都以结构化方式存储起来,通过系统查询方便快捷定位故障,并通过故障相似度检查方法把所有可能的故障知识全部呈现给用户。这样就能通过知识库中提供的解决方案(包括验证过程中的testbench),能准确定位故障,解决故障,为开发和验证人员提高了工作效率,有利于项目的顺利可靠完成。

【发明内容】

[0004]本发明的目的在 于针对现有技术的不足,提供一种基于知识库的FPGA故障自动诊断方法,该方法应用于FPGA设计验证领域,能够提高开发验证人员的工作效率。
[0005]为实现上述目的,本发明所采用的技术方案是:一种基于知识库的FPGA故障自动诊断方法,该方法包括如下步骤:
(I)获取FPGA故障信息,并把FPGA故障信息格式化为统一格式,包括故障的发生过程、故障的表现状态和故障的解决方案等内容,作为故障知识库的信息来源,建立故障知识库。
[0006](2)对FPGA故障案例进行数据分析,通过提取关键词之间的语义关系来获得故障案例之间的关系,用权重值表示之间关系的紧密程度,用于故障案例的自动匹配。在知识库中检索故障的特征词,首先寻找与关键词匹配程度最高的故障知识,再根据检索到的知识与知识库中的其他知识进行相似度计算,寻找与现在发生的故障最可能相似的知识。
[0007]该步骤通过以下子步骤来实现:
(2.1)对构建出的知识库进行语义挖掘分析,得出一个以关键词为节点、关键词间相互关系为带权重的边的有向图Φ。
[0008](2.2)将表示FPGA故障知识库的某条知识文本di映射为一个特征向量:v(di) = (tl, wl (di);…;tn, wn(di)),其中ti (i=l,….,η)是特征词,是出现在文档中且能代表文档含义的基本单位;wi(i=l,….,n)是特征词ti在文档中的权重,用来度量文档di与特征词ti之间的关联度。
[0009](2.3)通过计算特征词的词频和逆文档词频后,得出该文档的特征向量vl。利用步骤2.1得出的有向图?对特征词进行更新加权。假设在有向四?中存在一条有向边(el,e2),而且el和e2在特征向量vl中的权重都不为O,那么将特征向量中U和v2的权重以(el,e2)边的权重w作为缩放因子进行相乘,以此得到更新后的表示知识内容的特征向量。
[0010](2.4)在步骤2.3计算完知识的特征向量后,再根据余弦算法计算知识间的相似度,把知识Dl和D2以向量形式vl和v2表示,相似度计算公式为:
如果相似度大于预先定义的阈值,则认为知识间具有一定的相似性,可能会是所要查找的故障知识,则把查找出的知识作为故障案例推荐给用户。
[0011](2.5)如果在知识库中没有找到需要的案例,则认为出现了新的故障知识。因此通过后台系统,把故障信息、解决方案等内容添加到知识库中。对更新后的知识库重新进行训练分析,重新计算得到新的有向图Φ。
[0012](3)如果未找到相似知识,则把当前的故障案例作为新的知识添加到知识库中,并根据步骤2提取和计算新知识与其他知识之间的关系。
[0013]与现有技术相比,本发明的有益效果是:
1、针对性地解决了采用传统人工技术方案的弊端--获取困难、知识存量较少、问题描述不精确、解决方案不准确的问题。通过构建FPGA故障知识库,能把发生过的所有故障情况、表现状况、解决方案等都以结构化方式存储起来,并且知识库可以动态添加知识,方便扩展。
[0014]2、解决了传统依靠关键词检索方法的匹配程度不高的问题,通过对知识库中所有故障信息进行相似度检测,匹配出最相关的故障案例。传统的基于关键词的搜索方案,只是将包含搜索关键词的知识呈现给用户,但往往用户并不能准确地用几个关键词描述知识的表现情况,这样就可以根据搜索出来的知识进行自动匹配搜索,再将与检索结果类似的知识提供给用户。
[0015]3、传统以向量空间模型为基础的文本相似度检测,只涉及到文本的词法方面,对词与词之间的语义关系在计算时没有作为参数。而本方法通过人工构建FPGA专有词库,并以词与词之间的关系作为所构建有向图中边的权重,以此为文本特征向量的缩放因子。这样就能在计算相似度时,使得具有相关联词汇的文本相似度更高,换句话说,处于同一个阶段的故障知识所包含的相关性描述性词语更为相似,因此这样就比传统方法更能检查率更高。并且可以根据问题发生的阶段针对性地匹配故障问题,实现故障的精确定位。
[0016]4、开发人员和验证人员可以通过查阅知识库,在开发中就能主动避免发生一些容易犯的故障问题,能提高他们的工作效率。
【专利附图】

【附图说明】[0017]图1是本发明基于知识库的FPGA故障自动诊断方法的工作流程图;
图2是故障案例自动匹配算法流程图。
【具体实施方式】
[0018]如图1所示,本发明基于知识库的FPGA故障自动诊断方法,包括如下步骤:
1、通过数据挖掘、人工采集等方法获取FPGA故障信息,并把故障信息格式化为统一格式,包括故障的发生过程(设计、仿真验证等)、故障的表现状态(芯片型号、输入输出、波形图等)、故障的解决方案等内容,作为故障知识库的信息来源,建立故障知识库。
[0019]现有FPGA故障解决技术方案一般是通过询问专业人员,通过个人经验加以解决。个人经验不仅获取困难、知识存量较少,还会存在不精确、甚至不准确的问题。建立的故障知识库具体包括以下内容:
a、器件选型;
b、时序设计;
C、约束设计;
d、资源审查;
e、编码规则检查;
f、跨时钟域检查;
g、静态时序分析;
h、仿真验证、板级测试,包括编写的测试用例(testbench)
知识库中的每一条知识都是由问题描述、故障基本信息、故障发生阶段、故障解决方案等内容组成的。
[0020]2、对FPGA故障案例进行数据分析,通过提取关键词之间的语义关系来获得故障案例之间的关系,用权重值表示之间关系的紧密程度,用于故障案例的自动匹配。在知识库中检索故障的特征词,首先寻找与关键词匹配程度最高的故障知识,再根据检索到的知识与知识库中的其他知识进行相似度计算,寻找与现在发生的故障最可能相似的知识。
[0021]用户在工作过程中如果发现了难以解决的问题,可以根据问题的特征信息(可以是错误提示、工作流程等)对故障知识库进行检索,系统先对用户的输入进行分析,过滤掉停用词和标点符号,只留下包含有意义信息的词语,在根据处理后的关键词在后台数据库中进行匹配,将匹配出的故障知识作为源知识,根据图2所描述的算法,计算源知识和存在知识库中的其他知识的相似度,如果相似度大于阈值,则将知识与源知识一同展示给用户,并提供相对应的解决方案。
[0022]如图2所示,本发明的关键在于知识案例之间相似度的计算,具体步骤如下:
2.1、对构建出的知识库进行语义挖掘分析,得出一个以关键词为节点、关键词间相互关系为带权重的边的有向图Φ。例如:在利用跨时钟域分析中,经常会出现缺少同步器的错误提示,则定义一条边(el,e2),el代表词跨时钟域,e2代表词同步器,再定义它们之间的关系作为边(el, e2) 的权重。
[0023]2.2、di表示FPGA故障知识库的某条知识文本,将文档di映射为一个特征向量:v(di) = (tl, wl (di);…;tn, wn(di)),其中ti (i=l,….,η)是特征词,是出现在文档中且能代表文档含义的基本单位;wi(i=l,….,n)是特征词ti在文档中的权重,用来度量文档di与特征词ti之间的关联度。
[0024]2.3、通过计算特征词的词频和逆文档词频后,得出该文档的特征向量Vl。利用步骤2.1得出的有向图?对特征词进行更新加权。假设在有向图Φ中存在一条有向边(el,e2),而且el和e2在特征向量vl中的权重都不为O,那么将特征向量中vl和v2的权重以(el,e2)边的权重w作为缩放因子进行相乘,以此得到更新后的表示知识内容的特征向量。
[0025]2.4、在步骤2.3计算完知识的特征向量后,再根据余弦算法计算知识间的相似
度,把知识Dl和D2以向量形式U和v2表示,相似度计算公式为:
【权利要求】
1.一种基于知识库的FPGA故障自动诊断方法,其特征在于,该方法包括如下步骤: (O获取FPGA故障信息,并把FPGA故障信息格式化为统一格式,包括故障的发生过程、故障的表现状态和故障的解决方案等内容,作为故障知识库的信息来源,建立故障知识库; (2)对FPGA故障案例进行数据分析,通过提取关键词之间的语义关系来获得故障案例之间的关系,用权重值表示之间关系的紧密程度,用于故障案例的自动匹配;在知识库中检索故障的特征词,首先寻找与关键词匹配程度最高的故障知识,再根据检索到的知识与知识库中的其他知识进行相似度计算,寻找与现在发生的故障最可能相似的知识;该步骤通过以下子步骤来实现: (2.1)对构建出的知识库进行语义挖掘分析,得出一个以关键词为节点、关键词间相互关系为带权重的边的有向图Φ; (2.2)将表示FPGA故障知识库的某条知识文本di映射为一个特征向量:v(di) = (tl, wl (di);…;tn, wn(di)),其中ti (i=l,….,η)是特征词,是出现在文档中且能代表文档含义的基本单位;wi(i=l,….,n)是特征词ti在文档中的权重,用来度量文档di与特征词ti之间的关联度; (2.3)通过计算特征词的词频和逆文档词频后,得出该文档的特征向量vl ;利用步骤,2.1得出的有向图?对特征词进行更新加权;假设在有向图Φ中存在一条有向边(el,e2),而且el和e2在特征向量U中的权重都不为O,那么将特征向量中vl和V:;的权重以(el, e2)边的权重w作为缩放因子进行相乘,以此得到更新后的表示知识内容的特征向量; (2.4)在步骤2.3计算完知识的特征向量后,再根据余弦算法计算知识间的相似度,把知识Dl和D2以向量形式vl和v2表示,相似度计算公式为:
【文档编号】G06F17/50GK103473409SQ201310399598
【公开日】2013年12月25日 申请日期:2013年8月25日 优先权日:2013年8月25日
【发明者】蔡铭, 赵旭林 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1