用于对多个原型验证板进行编号的方法及存储介质与流程

文档序号:25520895发布日期:2021-06-18 20:08阅读:76来源:国知局
用于对多个原型验证板进行编号的方法及存储介质与流程

本公开涉及计算机软件技术领域,尤其涉及一种用于对多个原型验证板进行编号的方法及存储介质。



背景技术:

由于芯片设计规模日益增大,仅仅使用一块原型验证板无法满足对芯片设计的原型验证的需求。通常,需要将一个芯片设计分割为多个部分,并且分别载入到多个原型验证板进行原型验证,并且可能对某一个原型验证板进行单独地操作。此外,在不同的验证项目中,需要使用的原型验证板的数量通常也不同。尽管每一块原型验证板具有其独一无二的识别码(例如,mac地址),但用户(甚至是与验证板连接的主机)通过复杂的识别码来确定自己操作的原型验证板是相对困难的,增加了原型验证板的管理难度。



技术实现要素:

有鉴于此,本公开提出了一种用于对多个原型验证板进行编号的方法及存储介质。

本公开的第一方面,提供了一种用于对多个原型验证板进行编号的方法,其中,所述多个原型验证板包括第一验证板、与所述第一验证板连接的第二验证板和与所述第二验证板连接的第三验证板,所述方法包括:在所述第一验证板处接收到第一编号指令;响应于在所述第一验证板接收到所述第一编号指令,由所述第一验证板将所述第一验证板设置为第一编号并且向所述第二验证板发送第二编号指令,其中,所述第二编号指令进一步包括关于所述第一编号的信息;响应于在所述第二验证板接收到所述第二编号指令,由所述第二验证板将所述第二验证板设置为第二编号并且向所述第三验证板发送第三编号指令,其中,所述第三编号指令进一步包括关于所述第二编号的信息;响应于在所述第三验证板接收到所述第三编号指令,由所述第三验证板将所述第三验证板设置为第三编号;以及将所述第一编号、所述第二编号和所述第三编号发送到主机。

本公开的第二方面,提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储电子装置的一组指令,该组指令用于使所述电子装置执行第一方面所述的方法。

本公开实施例提供的用于对多个原型验证板进行编号的方法及存储介质,在第一验证板接收到第一编号指令后,由第一验证板将其本身设置为第一编号,并向第二验证板发送第二编号指令;在第二编号指令接收到第二编号指令后,由第二验证板将其本身设置为第二编号,并向第三验证板发送第三编号指令;在第三验证板接收到第三编号指令后,由第三验证板将其本身设置为第三编号,从而实现对多个原型验证板进行编号,并将第一编号、第二编号和第三编号发送至主机进行存储。这样,在对芯片设计进行原型验证时,能够根据被操作的原型验证板的编号准确定位该原型验证板,从而能够降低了原型验证的难度,提高了原型验证的效率,并且降低了对原型验证板的管理难度。

附图说明

为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书一个或多个实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1示出了根据本公开实施例的一种示例性验证系统的结构示意图。

图2a示出了根据本公开实施例的示例性多个原型验证板的连接方式示意图。

图2b示出了根据本公开实施例的又一示例性多个原型验证板的连接方式示意图。

图3示出了根据本公开实施例的示例性编号拓扑图的示意图。

图4示出了本公开实施例所提供的一种用于对多个原型验证板进行编号的示例性方法的流程示意图。

具体实施方式

为使本公开的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本公开进一步详细说明。

需要说明的是,除非另外定义,本说明书一个或多个实施例使用的技术术语或者科学术语应当为本公开所属领域内具有一般技能的人士所理解的通常意义。本说明书一个或多个实施例中使用的“第一”、“第二”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分。“包括”或者“包含”等类似的词语意指出现该词前面的元件或者物件涵盖出现在该词后面列举的元件或者物件及其等同,而不排除其他元件或者物件。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。

如上所述,在传统方式下管理数量可变的多个原型验证板是存在困难的。

有鉴于此,本公开实施例提供了一种用于对多个原型验证板进行编号的方法,其中,所述多个原型验证板包括第一验证板、与所述第一验证板连接的第二验证板和与所述第二验证板连接的第三验证板,所述方法包括:在所述第一验证板处接收到第一编号指令;响应于在所述第一验证板接收到所述第一编号指令,由所述第一验证板将所述第一验证板设置为第一编号并且向所述第二验证板发送第二编号指令,其中,所述第二编号指令进一步包括关于所述第一编号的信息;响应于在所述第二验证板接收到所述第二编号指令,由所述第二验证板将所述第二验证板设置为第二编号并且向所述第三验证板发送第三编号指令,其中,所述第三编号指令进一步包括关于所述第二编号的信息;响应于在所述第三验证板接收到所述第三编号指令,由所述第三验证板将所述第三验证板设置为第三编号;以及将所述第一编号、所述第二编号和所述第三编号发送到主机。

本公开实施例提供的用于对多个原型验证板进行编号的方法,在第一验证板接收到第一编号指令后,由第一验证板将其本身设置为第一编号,并向第二验证板发送第二编号指令;在第二编号指令接收到第二编号指令后,由第二验证板将其本身设置为第二编号,并向第三验证板发送第三编号指令;在第三验证板接收到第三编号指令后,由第三验证板将其本身设置为第三编号,从而实现对多个原型验证板进行编号,并将第一编号、第二编号和第三编号发送至主机进行存储。这样,在对芯片设计进行原型验证时,能够根据被操作的原型验证板的编号准确定位该原型验证板,从而能够降低了原型验证的难度,提高了原型验证的效率,并且降低了对原型验证板的管理难度。

图1示出了根据本公开实施例的一种示例性验证系统100的结构示意图。

如图1所示,验证系统100可以包括主机102和多个原型验证板112-118。

主机102可以是一个具有处理器和存储器的计算装置(例如,台式计算机、笔记本计算机等)。主机102可以发送指令(例如,原型验证指令、编号指令等)至多个原型验证板112-118,由多个原型验证板112-118根据接收到的指令执行相应的操作。例如,主机102向多个原型验证板112-118发送原型验证执行指令,在多个原型验证板112-118接收到原型验证执行指令后,多个原型验证板可以执行通过在现场可编程逻辑门阵列(fieldprogrammablegatearray,fpga)上搭建片上系统(systemonchip,soc)和专用集成电路(applicationspecificintegratedcircuit,asic)设计原型的方法,可以方便地进行硬件验证和早期软件开发,加快asic等设计的开发,缩短研发周期,降低asic应用系统的开发成本,提高了流片的成功率。

主机102可以与多个原型验证板112-118连接,多个原型验证板112-118之间可以通过串行总线进行串行连接。其中,多个原型验证板112-118包括验证板112、与验证板112连接的验证板114和与验证板114连接的验证板116。可以理解的是,在实际的验证系统中,由于多个原型验证板分别仿真芯片设计的多个模块,而芯片设计的多个模块之间存在大量的数据通信,因此,多个原型验证板112-118之间还可以存在并行总线的连接,用来进行彼此之间的数据通信。在对多个原型验证板进行实际操作的过程中,用户(甚至是与验证板连接的主机)很难确定当前的操作具体在哪一块原型验证板上,想要精准定位被操作的原型验证板则需要通过特殊的标识来区分并管理各个原型验证板。

其中,特殊标识可以是不同的编号。编号可以是字母、数字等。

图2a示出了根据本公开实施例的示例性多个原型验证板的连接方式210示意图。

如图2a所示,多个原型验证板112-116可以通过串行总线进行串行连接。以不同的编号来作为区分并管理原型验证板的特殊标识,可以通过主机向需要编号的原型验证板发送编号指令,使需要编号的原型验证板根据编号指令完成对其自身的编号。由于多个原型验证板112-116可以通过串行总线转发编号指令,所以在多个原型验证板112-116中首个接收到编号指令的验证板(例如,验证板112)可以被确定为初始验证板。例如,当验证板112接收到来自主机102的编号指令后,验证板112可以确定该编号指令并不包括任何编号信息,并因此确认验证板112自身就是初始验证板。其中初始验证板没有上级验证板,只有与其下行接口1124连接的下级验证板(即,验证板114)。例如,原型验证板112的上行接口1122与主机102连接并进行通信。

可以理解的是,也可以采用其他方式来确定初始验证板。例如,可以由主机102发送一个指令来遍历多个原型验证板112-116以确定验证板112为初始验证板。

在一些实施例中,可以由主机102向验证板112发送编号指令202,在验证板112处接收到编号指令202后,验证板112可以为自身设置唯一编号。例如,验证板112可以为自身设置编号“000”。并且验证板112可以调用其下行接口1124向与其连接的验证板114发送编号指令204,其中编号指令204可以包括关于验证板112编号的信息。例如编号指令204中可以包括验证板112编号“000”。

当验证板114的上行接口1142接收到编号指令204时,验证板114可以为自身设置不同于其余原型验证板编号的另一编号。例如,验证板114可以在验证板112编号“000”的基础上按序为自身设置编号“001”。并且验证板114可以调用其下行接口1144向与其连接的验证板116发送编号指令206,其中编号指令206可以包括关于验证板114编号的信息。例如编号指令206中可以包括验证板114编号“001”。

类似地,当验证板116的上行接口1162接收到编号指令206时,验证板116可以为自身设置不同于其余原型验证板编号的另一编号。例如,验证板116可以在验证板114编号“001”的基础上按序为自身设置编号“002”。验证板116可以是终止验证板,在验证板116对其自身进行编号后,不再调用验证板116的下行接口继续发送编号指令。其中终止验证板只有与其上行接口1162连接的上级验证板(即,验证板114),没有下级验证板。此时,可以将验证板112编号、验证板114编号和验证板116编号发送到主机102进行存储。

需要注意的是,多个原型验证板112-116可以判断其自身是否已经被设置了编号。对于已经设置了编号的原型验证板,该原型验证板接收到编号指令不会再次对其自身设置新的编号。

由于多个原型验证板之间不仅仅包括串行连接,图2b示出了根据本公开实施例的又一示例性多个原型验证板的连接方式230示意图。

如图2b所示,多个原型验证板112a-118c之间构成多个串联线路。由于在实际操作中,会出现某个或部分原型验证板不可用的情况,如果只依赖于单条串联线路对多个原型验证板112a-118c进行编号,在串联线路上出现不可用的原型验证板,编号指令则无法继续转发,导致无法完成对多个原型验证板112a-118c的编号。

因此,验证板112a可以连接多个下级验证板(例如,112b、114a、114b和114c)。可以理解的是,当多个原型验证板的验证能力以云服务的形式提供时,每个原型验证板在当前时刻是否尚未被客户使用是不确定的。

在一些实施例中,主机102可以将编号指令发送到验证板112a。验证板112a则可以确定验证板112a自身是否可用。当验证板112a可用时,则验证板112a可以在接收到由主机102发送的编号指令212后对其自身进行编号;当验证板112a不可用时,则验证板112a可以将编号指令212转发至多个下级验证板中的一个目标验证板。例如,当验证板112a不可用时,验证板112a可以将编号指令212转发至目标验证板112b。

在一些实施例中,可以进一步确定被选择的目标验证板是否可用。当目标验证板可用时,则目标验证板向验证板112a发送确认信息,并根据接收到的编号指令212对其自身进行编号;当目标验证板不可用时,则由验证板112a将编号指令212转发至多个下级验证板中不同于该目标验证板的另一目标验证板。例如,当目标验证板112b不可用时,验证板112a可以将编号指令212转发至目标验证板114a。从而在需要编号且向下转发编号指令的原型验证板不可用时,可以通过将编号指令转发至其他可用的原型验证板,由可用的原型验证板执行编号指令,继续转发编号指令至其他原型验证板以完成对多个原型验证板的编号。

在一些实施例中,任意验证板在被用户使用后都将向主机102发送信息,从而告知主机102该验证板已经被占用。这样,当主机102接收到一个新的验证请求时,主机102可以根据验证板的当前可用状态来确定一个连接验证板的方案(也就是,编号指令的传递路径),从而选定一些可用验证板用于向用户提供验证能力。主机102可以相应地向传递路径中的初始验证板(或上级验证板)发送编号指令,并由该初始验证板根据该传递路径逐级向下传递。相应地,编号指令可以包括验证板的该连接方案。在一些实施例中,根据用户对原型验证板数量的需求,可以选择多个原型验证板进行编号操作。例如,用户想要5个满足其需求的原型验证板,则可以由验证板112a根据接收到的主机102发送的编号指令212为自身设置编号“000”后,将编号指令214转发至验证板114b;由验证板114b根据接收到的编号指令214为自身设置编号“001”后,将编号指令216转发至验证板116b;由验证板116b根据接收到的编号指令216为自身设置编号“002”后,将编号指令218转发至验证板116a;由验证板116a根据接收到的编号指令218为自身设置编号“003”后,将编号指令220转发至验证板118a;由验证板118a根据接收到的编号指令220为自身设置编号“004”,最终将5个原型验证板(即验证板112a、114b、116b、116a和118a)的编号发送至主机,从而使用户得知自己选用的原型验证板的编号。

图3示出了根据本公开实施例的示例性编号拓扑图300的示意图。

如图3所示,在对多个原型验证板完成编号操作后,通过主机102可以获取多个原型验证板的连接关系(例如,112a分别与112b、114a、114b和114c连接),建立连接关系与编号(例如,000、001、002)相对应的编号拓扑图300。对于用户而言,仅能够看到一个非常简单明了的编号拓扑图300,从而方便了用户的操作。此外,由于每个验证板在经过编号操作之后,均知晓了自身的编号,因此每个验证板还可以根据自身编号进行一些对应操作。

在一些实施例中,主机102可以分析多个原型验证板的占用信息,根据编号拓扑图300和编号查询请求提供符合需求的原型验证板的编号。其中,符合需求的原型验证板可以为占用信息不高于预设占用量的原型验证板。例如,占用信息可以为资源占用比,主机102通过分析确定多个原型验证板的资源占用比,用户想要知道目前剩余资源满足原型验证需求的原型验证板的编号,则会向主机102发送编号查询请求,主机102根据编号查询请求在编号拓扑图300中确定资源占用比不高于预设占用量(例如,资源占用比为30%)的原型验证板所对应的编号,并将该编号提供给用户,使得用户能够根据编号选择需要操作的原型验证板。

在验证系统100中,可以对原型验证板的数量进行增减,增加的原型验证板可以添加至任意一条串联线路中。在原型验证板的数量发生变化后,可以重新确定数量变化后的多个原型验证板的编号,并相应修改编号拓扑图300中的连接关系与编号之间的对应关系。

图4示出了本公开实施例所提供的一种用于对多个原型验证板进行编号的示例性方法400的流程示意图。该方法400可以由所述多个原型验证板执行。

本公开实施例提供的用于对多个原型验证板进行编号的方法400,其中,所述多个原型验证板(例如,图1中的验证板112-118)包括第一验证板(例如,图2a中的验证板112)、与所述第一验证板连接的第二验证板(例如,图2a中的验证板114)和与所述第二验证板连接的第三验证板(例如,图2a中的验证板116),所述方法400可以包括以下步骤。

在步骤402,可以在所述第一验证板处接收到第一编号指令(例如,图2a中的编号指令202)。

在一些实施例中,由于在实际操作中,会出现某个或部分原型验证板不可用的情况。因此多个原型验证板的连接方式不仅仅可以有单条线路的串行连接,还可以存在由多个串联线路连接的多个原型验证板(例如,图2b中的原型验证板112a-118c)。第一验证板(例如,图2b中的验证板112a)可以连接多个下级验证板(例如,图2b中的验证板112b、114a、114b或114c)。在一些实施例中,在第一验证板处接收到第一编号指令进一步包括:确定所述第一验证板是否可用;以及响应于所述第一验证板不可用,由所述第一验证板将所述第一编号指令转发到所述多个下级验证板中的第一目标验证板(例如,图2b中的验证板112b)。在又一些实施例中,所述第一编号指令可以包括连接验证板的方案,用于在所述多个下级验证板中选择一目标验证板来向其转发所述第一编号指令。

在一些实施例中,由于可能出现第一目标验证板依然不可用的问题,所以可以进一步确定被选择的第一目标验证板是否可用。响应于所述第一验证板不可用,可以由所述第一验证板将所述第一编号指令转发到所述多个下级验证板中的第一目标验证板进一步包括:确定所述第一目标验证板是否可用;以及响应于所述第一目标验证板可用,向所述第一验证板发送确认信息;或响应于所述第一目标验证板不可用,由所述第一验证板将所述第一编号指令转发到所述多个下级验证板中的第二目标验证板(例如,图2b中的验证板114a)。

在步骤404,响应于在所述第一验证板接收到所述第一编号指令,可以由所述第一验证板将所述第一验证板设置为第一编号(例如,图2a中的编号“000”)并且向所述第二验证板发送第二编号指令(例如,图2a中的编号指令204),其中,所述第二编号指令进一步包括关于所述第一编号的信息。可以理解的是,在一些实施例中,被所述第一验证板转发的第一编号指令可以被视为所述第二编号指令。

在一些实施例中,第一验证板可以是初始验证板,所述方法进一步可以包括:遍历所述多个原型验证板以确定所述第一验证板为所述初始验证板;以及调用所述验证板的下行接口(例如,图2a中的下行接口1124)向所述第二验证板发送所述第二编号指令。

在步骤406,响应于在所述第二验证板接收到所述第二编号指令,可以由所述第二验证板将所述第二验证板设置为第二编号(例如,图2a中的编号“001”)并且向所述第三验证板发送第三编号指令(例如,图2a中的编号指令206),其中,所述第三编号指令进一步包括关于所述第二编号的信息。可以理解的是,在一些实施例中,被所述第二验证板转发的第二编号指令可以被视为所述第三编号指令。

在步骤408,响应于在所述第三验证板接收到所述第三编号指令,可以由所述第三验证板将所述第三验证板设置为第三编号(例如,图2a中的编号“002”)。

在一些实施例中,第三验证板可以是终止验证板,所述方法可以进一步包括:经由所述第三验证板的上行接口(例如,图2a中的上行接口1162)接收所述第三编号指令。

在步骤410,可以将所述第一编号、所述第二编号和所述第三编号发送到主机(例如,图1中的主机102)。

如上所述,在确定多个原型验证板的编号后,用户可以进一步得知被操作的原型验证板的编号以及具体位置,从而更精准地定位被操作的原型验证板。因此,在一些实施例中,所述方法还可以包括:获取所述多个原型验证板的连接关系(例如,图2b中验证板112a分别与验证板112b、114a、114b和114c连接);建立所述连接关系与编号相对应的编号拓扑图(例如,图3中的编号拓扑图300);以及响应于接收到编号查询请求,根据所述编号拓扑图提供所述原型验证板的编号。

在一些实施例中,用户想要在满足其需求的原型验证板中挑选部分原型验证板进行相应操作,则响应于接收到编号查询请求,根据所述编号拓扑图提供所述原型验证板的编号可以进一步包括:分析所述多个原型验证板的占用信息;以及根据所述编号拓扑图和所述编号查询请求提供所述占用信息不高于预设占用量的所述原型验证板的编号。

如上所述,可以在验证系统(例如,图1中的验证系统100)中任意一条串联线路中增减任意数量的原型验证板。在原型验证板的数量发生变化后,可以重新执行方法400重新确定数量变化后的多个原型验证板的编号,并相应修改编号拓扑图300中的连接关系与编号之间的对应关系。

本公开实施例提供的用于对多个原型验证板进行编号的方法及存储介质,在第一验证板接收到第一编号指令后,由第一验证板将其本身设置为第一编号,并向第二验证板发送第二编号指令;在第二编号指令接收到第二编号指令后,由第二验证板将其本身设置为第二编号,并向第三验证板发送第三编号指令;在第三验证板接收到第三编号指令后,由第三验证板将其本身设置为第三编号,从而实现对多个原型验证板进行编号,并将第一编号、第二编号和第三编号发送至主机进行存储。这样,在对芯片设计进行原型验证时,能够根据被操作的原型验证板的编号准确定位该原型验证板,从而能够降低了原型验证的难度,提高了原型验证的效率,并且降低了对原型验证板的管理难度。

需要说明的是,本公开的方法可以由单个设备执行,例如一台计算机或服务器等。本实施例的方法也可以应用于分布式场景下,由多台设备相互配合来完成。在这种分布式场景的情况下,这多台设备中的一台设备可以只执行本公开的方法中的某一个或多个步骤,这多台设备相互之间会进行交互以完成所述的方法。

本公开实施例还提供存储了指令的计算机可读存储介质。该指令在被电子设备执行时用于进行上述方法。该计算机可读存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。

上述对本公开特定实施例进行了描述。其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本公开的范围(包括权利要求)被限于这些例子;在本公开的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本公开的不同方面的许多其它变化,为了简明它们没有在细节中提供。

另外,为简化说明和讨论,并且为了不会使本公开难以理解,在所提供的附图中可以示出或可以不示出与集成电路(ic)芯片和其它部件的公知的电源/接地连接。此外,可以以框图的形式示出装置,以便避免使本公开难以理解,并且这也考虑了以下事实,即关于这些框图装置的实施方式的细节是高度取决于将要实施本公开的平台的(即,这些细节应当完全处于本领域技术人员的理解范围内)。在阐述了具体细节(例如,电路)以描述本公开的示例性实施例的情况下,对本领域技术人员来说显而易见的是,可以在没有这些具体细节的情况下或者这些具体细节有变化的情况下实施本公开。因此,这些描述应被认为是说明性的而不是限制性的。

尽管已经结合了本公开的具体实施例对本公开进行了描述,但是根据前面的描述,这些实施例的很多替换、修改和变型对本领域普通技术人员来说将是显而易见的。例如,其它存储器架构(例如,动态ram(dram))可以使用所讨论的实施例。

本公开旨在涵盖落入所附权利要求的宽泛范围之内的所有这样的替换、修改和变型。因此,凡在本公开的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本公开的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1