一种区块链网络连接方法及装置转让专利
申请号 : CN202110335847.5
文献号 : CN112954074B
文献日 : 2022-05-06
发明人 : 郝威峰 , 严闪光 , 尹三文
申请人 : 北京三快在线科技有限公司
摘要 :
权利要求 :
1.一种区块链网络连接方法,其特征在于,包括:根据参与区块链网络连接的各节点的网络位置特征,确定各聚类中心节点,并从各聚类中心节点中确定所述区块链网络的网络中心节点;
根据各非聚类中心节点与各聚类中心节点的距离、各非聚类中心节点与所述网络中心节点的距离以及各聚类中心节点与所述网络中心节点的距离,对各非聚类中心节点进行聚类,确定各非聚类中心节点所属的簇;
针对所述区块链网络中的每个节点,根据该节点与所属簇中各其他节点的历史通信数据,确定各其他节点对于该节点的传输稳定值,以依次对该节点与所属簇中的各其他节点进行网络连接;
针对每个簇,确定该簇中的路由节点,并根据确定出的传输稳定值,确定所述路由节点的簇内稳定值;
根据各簇的路由节点的簇内稳定值,确定各路由节点之间的簇间稳定值,以依次进行各路由节点间的网络连接,使所述区块链网络通过簇内节点的网络连接以及簇间路由节点的网络连接进行通信。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:针对每个簇中的每个节点,该节点向所属簇中各其他节点广播在线探测信息,并接收各其他节点发送的在线探测信息;
按照接收在线探测信息的顺序,从发送在线探测信息的节点中,确定该节点对应的探测节点,并将其他发送在线探测信息的节点作为订阅节点;
向所述探测节点返回包含各订阅节点标识的探测反馈信息,使所述探测节点继续向该节点发送在线探测信息,以及向各订阅节点返回该节点的订阅反馈信息。
3.如权利要求2所述的方法,其特征在于,所述方法还包括:所述探测节点当在预设时间内未收到该节点的探测反馈信息时,确定该节点失常;
根据各订阅节点的标识,向各订阅节点发送该节点的状态反馈信息。
4.如权利要求1所述的方法,其特征在于,根据该节点与所属簇中各其他节点的历史通信数据,确定各其他节点对于该节点的传输稳定值,具体包括:根据该节点与所属簇中各其他节点在预设时间内传输数据成功的次数以及传输数据失败的次数,确定该节点与所属簇中各其他节点的传输参数,其中,该节点所属簇中各其他节点为与该节点进行过数据传输的节点;
根据该节点所属簇中的认证节点,获取该节点所属簇中各其他节点的历史稳定值;
根据确定出的传输参数以及历史稳定值,确定各其他节点对于该节点自身的直接稳定值,分别作为各其他节点对于该节点的传输稳定值。
5.如权利要求4所述的方法,其特征在于,所述方法还包括:在该节点所属的簇中,确定与该节点以及至少一个其他节点进行过数据传输的节点,作为中间节点;
根据各其他节点对于各中间节点的直接稳定值,以及各中间节点对于该节点的直接稳定值,确定各中间节点的间接稳定值;
根据各中间节点的间接稳定值,确定各其他节点对于该节点的间接稳定值;
根据各其他节点对于该节点的直接稳定值以及各其他节点对于该节点的间接稳定值,确定各其他节点对于该节点的传输稳定值。
6.如权利要求4所述的方法,其特征在于,确定各路由节点的簇内稳定值,具体包括:针对每个路由节点,确定该路由节点所属簇中的各其他节点为目标节点;
针对每个目标节点,确定该路由节点对于该目标节点的直接稳定值,并确定该路由节点所属簇中除该目标节点外的其他节点对于该目标节点的直接稳定值;
根据该路由节点对于各目标节点的直接稳定值,以及除该目标节点外的各其他节点对于该目标节点的直接稳定值,确定该路由节点的簇内稳定值。
7.如权利要求1所述的方法,其特征在于,依次对该节点与所属簇中的各其他节点进行网络连接,具体包括:
将该节点所属簇中其他节点对于该节点的传输稳定值进行排序,根据排序结果依次使该节点所属簇中其他节点与该节点进行网络连接。
8.一种区块链网络连接装置,其特征在于,包括:确定模块,用于根据参与区块链网络连接的各节点的网络位置特征,确定各聚类中心节点,并从各聚类中心节点中确定所述区块链网络的网络中心节点;
聚簇模块,用于根据各非聚类中心节点与各聚类中心节点的距离、各非聚类中心节点与所述网络中心节点的距离以及各聚类中心节点与所述网络中心节点的距离,对各非聚类中心节点进行聚类,确定各非聚类中心节点所属的簇;
簇内连接模块,用于针对所述区块链网络中的每个节点,根据该节点与所属簇中各其他节点的历史通信数据,确定各其他节点对于该节点的传输稳定值,以依次对该节点与所属簇中的各其他节点进行网络连接;
路由确定模块,用于针对每个簇,确定该簇中的路由节点,并根据确定出的传输稳定值,确定所述路由节点的簇内稳定值;
簇间连接模块,用于根据各簇的路由节点的簇内稳定值,确定各路由节点之间的簇间稳定值,以依次进行各路由节点间的网络连接,使所述区块链网络通过簇内节点的网络连接以及簇间路由节点的网络连接进行通信。
9.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述权利要求1~7任一项所述的方法。
10.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述权利要求1~7任一项所述的方法。
说明书 :
一种区块链网络连接方法及装置
技术领域
背景技术
的提供者,又是获取者。
影响着网络的稳定性、节点间传输数据的成功率以及传输效率。目前,一些区块链网络的连
接方法由于网络结构不合理,导致区块链网络存在稳定性较差、节点间传输数据失败率较
高、节点间传输数据的效率低等问题,且容易造成网络资源的浪费。
发明内容
行聚类,确定各非聚类中心节点所属的簇;
点进行网络连接;
网络连接进行通信。
方法还包括:
其他节点为与该节点进行过数据传输的节点;
聚类中心节点进行聚类,确定各非聚类中心节点所属的簇;
属簇中的所述其他节点进行网络连接;
以及簇间路由节点的网络连接进行通信。
心节点以及网络中心节点三者间的距离,确定各非聚类中心节点所属的簇。针对每个节点,
根据该节点与所属簇中各其他节点的历史通信数据,确定各其他节点对于该节点的传输稳
定值,以对该节点与所属簇中其他节点进行网络连接。确定各簇中的路由节点,根据确定出
的传输稳定值,确定各路由节点的簇内稳定值,以及各路由节点间的簇间稳定值,以进行路
由节点间的网络连接,使该区块链网络通过簇内节点的网络连接以及路由节点间的网络连
接进行通信。
类中心节点、网络中心节点间的距离,对参与区块链网络连接的各节点进行聚类分簇,以尽
可能远离网络中心节点为目标,将不同节点聚类到不同聚类中心节点对应的簇中。如此,能
够在使每个簇中的节点数量尽可能接近期望数量的同时,让各网络簇分布均匀,并通过在
各簇中选取路由节点,使不同网络簇通过路由节点进行通信,降低了网络传输压力和通信
成本。另外,本方法通过确定各节点对于其他节点的传输稳定值,使各节点按照传输稳定值
从高到低的排序依次与对应的节点进行连接,能够加快整个区块链网络的连接速度,在使
连接得到的区块链网络足够稳定的同时,尽快达到可以使整个区块链网络进行广播的连接
状况,并能够提高节点间传输数据的成功率以及数据传输效率,减少网络资源的浪费。
附图说明
在附图中:
具体实施方式
说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人
员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本说明书保护的范围。
个区块链网络传输数据的成本较高,且容易造成网络资源的浪费。在建立了网络连接之后,
区块链网络中的节点需要向所有与自身进行了网络连接的节点发送心跳信号,以进行节点
状态的探测和网络连接的维持,导致探测节点状态和维持网络连接的成本较高。并且在短
时间内,节点间难以通过随机连接形成稳定的区块链网络,使区块链网络在较长时间内处
于不稳定的阶段,导致节点间传输数据的成功率较低。
跳信号以检测是否存在因出现故障等原因而离线的节点。不同簇可通过自身簇中的路由节
点进行通信。
置,本说明书在此不做限制。根据参与区块链网络连接的节点总数确定网络簇的数量,确定
网络簇数量的公式如下:
目标进行聚类,当然最终聚类得到的各网络簇中的节点数量可以不等于logN。
具体的,在确定各个网络簇的聚类中心节点时,首先可根据参与区块链网络连接的各节点
的网络位置特征,从各节点中选取出J个网络位置分散的节点,作为各网络簇的聚类中心节
点的候选节点,并且J>M,即候选节点的数量大于网络簇数量。通过路由追踪来确定各候选
节点间的路由跳数,以根据各候选节点的路由跳数,确定各聚类中心节点。
作量等信息。基于该网络位置特征中各节点的地理位置,可从各节点中选取地理位置较为
分散的节点作为聚类中心节点的候选节点,以使后续根据各聚类节点聚类得到的各网络簇
足够分散。具体怎样选取地理位置较为分散的节点作为聚类中心节点的候选节点,可根据
需要设置,本说明书在此不做限制。例如,可预设距离阈值,节点间距离大于该距离阈值的
节点可视为位置较为分散的节点。
候选节点中继续选取一对距离最远的候选节点作为聚类中心节点,直到得到的聚类中心节
点的数量等于M为止,确定从各候选节点中选出各聚类中心节点。其中,最终确定出的各聚
类中心节点对应不同的网络簇。
IP),并通过ping命令确定各聚类中心节点间的网络延迟。在确定出各聚类中心节点后,可
根据各聚类中心节点的地理位置以及各聚类中心节点间的网络延迟,从各聚类中心节点中
确定网络中心节点,该网络中心节点为各聚类中心节点中最接近于该区块链网络的几何中
心的节点,即该网络中心节点在地理位置上更接近于该区块链网络的中心,且该网络中心
节点与其他聚类中心节点间的网络延迟不高于预设值。
节点,作为聚类中心节点,目的是使各网络簇内的节点数量差异减少,避免某个网络簇中节
点数量较多,或某个网络簇中节点数据量较少的情况出现,使每个簇内节点之间相互通信
的成本(包括网络传输的时间成本、需要传输信息的节点数量导致的成本等)保持在可承受
的范围内。
节点进行聚类,确定各非聚类中心节点所属的簇。
心节点的距离、各非聚类中心节点与该网络中心节点的距离以及各聚类中心节点与该网络
中心节点的距离,对各非聚类中心节点进行聚类,确定各非聚类中心节点所属的网络簇。
点与该聚类中心节点的距离,d2(s,c)表示该聚类中心节点与该网络中心节点的距离,d3(x,
c)表示该非聚类中心节点与该网络中心节点的距离。
的网络簇中。因此在得到该非聚类中心节点与各聚类中心节点的聚簇值D(x,s)后,最小的
聚簇值对应的聚类中心节点所属的网络簇即该非聚类中心节点所属的网络簇。
为聚类中心节点,白色节点为非聚类中心节点。图中第二个方框为从各聚类中心节点中选
取出网络中心节点后该区块链网络中节点的分布情况,其中,黑色节点即网络中心节点。图
中第三个方框为根据聚类中心节点、非聚类中心节点以及网络中心节点三种节点间的距离
对各非聚类中心节点进行聚类后,网络中的分簇情况,由同一个虚线框圈起的节点为同一
个簇中的节点。
其他节点进行网络连接。
得到的区块链网络更加稳定、传输数据的成功率更高,在本说明书一个或多个实施例中,在
确定出各非聚类中心节点所属的网络簇之后,可针对每个节点,确定该节点所属簇中其他
节点对于该节点的直接稳定值,并确定其他节点对于该节点的传输稳定值,以根据其他节
点对于该节点的传输稳定值使该节点与其他节点进行网络连接。
数,并根据各其他节点的传输参数以及该节点所属簇中的认证节点存有的各其他节点的历
史稳定值,确定该节点所属簇中其他节点对于该节点的直接稳定值,并将其他节点对于该
节点的直接稳定值作为其他节点对于该节点的传输稳定值。
数。其他节点对于该节点的传输稳定值用于表示对该节点来说其他节点与该节点进行数据
传输的稳定程度。对于未与该节点进行过数据传输的节点,可将预设的初始值作为其对于
该节点自身的直接稳定值,例如,该初始值可以为零或其他数值,具体可根据需要设置,本
说明书在此不做限制。该历史稳定值是能够表示其他节点历史上传输数据的稳定程度的数
据,例如,其他节点的历史失常次数,或该其他节点历史上对于所属簇中各节点的传输稳定
值的均值、中位数等。
点a的直接稳定值,λ与μ为预设的参数,且都为非负数。
中间节点的间接稳定值,以确定各其他节点对于该节点自身的间接稳定值。
定各其他节点对于该节点的间接稳定值。
点的直接稳定值,DTrmb表示其他节点b对于该中间节点m的直接稳定值,DTram×DTrmb即为中
间节点m的间接稳定值。
值,确定各其他节点对于该节点的传输稳定值。
对于该节点a的间接稳定值。
序,以根据排序结果,从对于该节点传输稳定值高的其他节点开始依次将该节点所属簇中
其他节点与该节点进行网络连接,需要说明的是,与该节点进行网络连接的节点数量不高
于预设的节点数量值,该节点数量值具体可根据需要设置。如此,可以使在预设的节点数量
值内,与该节点进行连接的节点皆为传输稳定值高的节点,使节点间的连接更稳定,传输数
据成功率更高。
路由节点,当该路由节点故障或该路由节点对应的周期结束,则重新进行路由节点的选取。
具体怎样进行路由节点的选取可根据需要设置,本说明书在此不做限制。
标节点,并针对每个目标节点,确定该路由节点对于该目标节点的直接稳定值,以及确定该
路由节点所属簇中除该目标节点外的其他节点对于该目标节点的直接稳定值。根据该路由
节点对于各目标节点的直接稳定值,以及除该目标节点外的各其他节点对于该目标节点的
直接稳定值,确定该路由节点的簇内稳定值。
值, 表示路由节点对于目标节点q的直接稳定值, 表示该路由节点的簇内稳定
值。
点的网络连接进行通信。
节点间的网络连接,使该区块链网络通过簇内节点的网络连接以及簇间路由节点的网络连
接进行通信。
点以及网络中心节点三者间的距离,确定各非聚类中心节点所属的簇。针对每个节点,根据
该节点与所属簇中各其他节点的历史通信数据,确定各其他节点对于该节点的传输稳定
值,以对该节点与所属簇中其他节点进行网络连接。确定各簇中的路由节点,根据确定出的
传输稳定值,确定各路由节点的簇内稳定值,以及各路由节点间的簇间稳定值,以进行路由
节点间的网络连接,使该区块链网络通过簇内节点的网络连接以及路由节点间的网络连接
进行通信。
类中心节点、网络中心节点间的距离,对参与区块链网络连接的各节点进行聚类分簇,以尽
可能远离网络中心节点为目标,将不同节点聚类到不同聚类中心节点对应的簇中。如此,能
够在使每个簇中的节点数量尽可能接近期望数量的同时,让各网络簇分布均匀,并通过在
各簇中选取路由节点,使不同网络簇通过路由节点进行通信,降低了网络传输压力和通信
成本。另外,本方法通过确定各节点对于其他节点的传输稳定值,使各节点按照传输稳定值
从高到低的排序依次与对应的节点进行连接,能够加快整个区块链网络的连接速度,在使
连接得到的区块链网络足够稳定的同时,尽快达到可以使整个区块链网络进行广播的连接
状况,并能够提高节点间传输数据的成功率以及数据传输效率,减少网络资源的浪费。
执行,且该服务器仅用于确定各聚类中心节点、各路由节点、网络中心节点,以及进行聚类
分簇。在路由节点故障或周期结束后,新的路由节点可由该服务器选取也可由该路由节点
所属簇内的节点进行选取,具体可根据需要设置,本说明书在此不做限制。本说明书步骤
S104中的认证节点,是用于存储该区块链网络中各节点间的通信记录但不执行其他业务的
节点,也可以为执行该区块链网络连接过程的服务器,本说明书在此不做限制,该认证节点
可以有一个也可以有多个,具体可根据需要设置。另外,本说明书中参与区块链网络连接的
各节点为参与共识的节点,对于客户端节点即不参与共识但可以发起业务请求的节点,不
进行聚类分簇。
的连接,以使区块链网络更加稳定。该区块链网络在最初进行连接时,由于节点间未进行过
数据传输,传输稳定值为零,则可随机进行网络连接,待连接一段时间后,再基于在该段时
间内节点间的历史通信数据确定传输稳定值,基于确定出的传输稳定值进行区块链网络的
连接。
之后,各节点与不同的中继节点进行网络连接,通过中继节点进行通信。可见,在确定可信
节点时,需要进行大量的计算,对网络资源的消耗较高,且中继节点的选取具有随机性,不
够可靠,使通过中继节点进行通信也不够可靠。另外,在计算两个节点间的传输稳定值时,
未考虑从第三节点(与该两个节点皆有连接的节点)角度确定该两个节点与该第三节点的
直接稳定值以综合确定该两个节点间的传输稳定值,使得到的传输稳定值较为片面,可靠
性较低。
探测节点,以通过该探测节点与其他节点进行通信。具体的,针对每个簇中的每个节点,该
节点可以向自身所属簇中各其他节点广播在线探测信息,并接收各其他节点发送的在线探
测信息。该在线探测信息可视为一种心跳信号,用于探测节点是否失常。然后,该节点可按
照接收在线探测信息的顺序,从发送在线探测信息的节点中,确定该节点对应的探测节点。
例如,该节点可将接收到的首个在线探测信息对应的节点作为该节点对应的探测节点,并
将其他发送在线探测信息的节点作为订阅节点。在确定了探测节点之后,该节点可向该探
测节点返回包含各订阅节点标识的探测反馈信息,使该探测节点继续向该节点发送在线探
测信息,以及向各订阅节点返回包含该节点与该探测节点对应关系的订阅反馈信息,使各
订阅节点停止向该节点发送在线探测信息。
线探测信息的节点作为订阅节点。并针对每个探测节点,向该探测节点返回包含各订阅节
点标识以及其他探测节点标识的探测反馈信息,使各探测节点继续向该节点发送在线探测
信息。当然,具体怎样根据接收到的在线探测信息的顺序确定探测节点,可根据需要设置,
本说明书在此不做限制。
指向的节点为“在线探测信息”、“探测反馈信息”或“订阅反馈信息”的接收方。节点A为被节
点B、C、D探测是否失常的对象,节点E为被节点A探测是否失常的对象。可见,节点A向其他节
点广播在线探测信息的同时,接收其他节点发送的在线探测信息。节点D为节点A对应的探
测节点。节点A在根据接收到的在线探测信息的顺序,确定节点D为探测节点后,向探测节点
D发送探测反馈信息,并向订阅节点B、C发送订阅反馈信息。
测信息,以探测节点A是否处于正常状态。
正常状态。当探测节点在预设时间内未收到该节点的探测反馈信息时,则探测节点可确定
该节点失常,并根据各订阅节点的标识,向各订阅节点发送该节点的状态反馈信息,通知各
订阅节点该节点处于失常状态。
点D则根据节点A的各订阅节点的标识,向订阅节点B、C发送节点A的状态反馈信息,通知订
阅节点B、C节点A处于失常状态。
线探测信息的顺序,从各订阅节点中重新确定探测节点,并向新的探测节点发送包含新的
订阅节点的标识的探测反馈信息,使新的探测节点继续向该节点发送在线探测信息,并向
各订阅节点发送包含该节点与新的探测节点对应关系的订阅反馈信息。
发送的在线探测信息的顺序,重新确定探测节点。并向新的探测节点发送包含新的订阅节
点标识的探测反馈信息。如图可见,节点B为新的探测节点。
测时,传输稳定值高的节点更容易成为该节点的探测节点,使得节点间的状态探测更加可
靠,也更利于节点间维持稳定的网络连接。
连接的所有节点都连接完毕后或满足预设数量的节点连接完毕后,再向该其他节点发送在
线探测信息进行节点状态的探测,该节点可以是路由节点,可也以是其他节点,该区块链网
络可以通过确定探测节点进行簇内节点的状态探测,也可以进行簇间的路由节点的状态探
测,具体可根据需要设置,本说明书在此不做限制。
本说明书中,对传输稳定值较高的其他节点先进行连接,则对于该节点传输稳定值高的其
他节点先与该节点进行网络连接,且较容易成为该节点的探测节点,因此,通过探测节点传
输数据具有较高的传输稳定性和可靠性)。
并使该区块链网络中节点状态探测和节点间维持网络连接的效率得到保障。
成功率,降低网络传输压力,使整个区块链网络的传输效率更高,减少网络资源的浪费。
络I/O通信处理客户端发送的请求。该区块链网络可通过I/O多路复用技术将多个客户端请
求复用到同一个select函数中,能够使得区块链网络在单线程情况下实现多个客户端的访
问。
操作,以提高区块链网络的性能。
getblocktemplate接口(用于获取完整区块数据)、prioritisetransaction接口(用于获取
完整的交易数据)以及submitblock接口(用于提交待共识的区块),当然也可以包含其他接
口,具体可根据需要设置。在本说明书中,通过提供上述RPC接口,可以使区块链应用程序开
发人员根据上述RPC接口改善区块链应用的性能,提升区块链应用程序的开发速度,并在提
升区块链网络传输可靠性的同时,在基础的P2P网络通信上提供功能更丰富的RPC调用。
算法模型对对象进行结构化编组的协议。被编组后的数据具有特殊的元数据信息,根据这
些元数据信息可以高效地仅读取和更改对象中的某个元素,可以减少区块链网络的传输开
销,并且可以保持数据的完整性。
非聚类中心节点进行聚类,确定各非聚类中心节点所属的簇;
所属簇中的所述其他节点进行网络连接;
接以及簇间路由节点的网络连接进行通信。
在线探测信息的顺序,从发送在线探测信息的节点中,确定该节点对应的探测节点,并将其
他发送在线探测信息的节点作为订阅节点,向所述探测节点返回包含各订阅节点标识的探
测反馈信息,使所述探测节点继续向该节点发送在线探测信息,以及向各订阅节点返回该
节点的订阅反馈信息。
点的状态反馈信息。
传输参数,其中,该节点所属簇中各其他节点为与该节点进行过数据传输的节点,根据该节
点所属簇中的认证节点,获取该节点所属簇中各其他节点的历史稳定值,根据确定出的传
输参数以及历史稳定值,确定各其他节点对于该节点自身的直接稳定值,分别作为各其他
节点对于该节点的传输稳定值。
的直接稳定值,以及各中间节点对于该节点的直接稳定值,确定各中间节点的间接稳定值,
根据各中间节点的间接稳定值,确定各其他节点对于该节点的间接稳定值,根据各其他节
点对于该节点的直接稳定值以及各其他节点对于该节点的间接稳定值,确定各其他节点对
于该节点的传输稳定值。
稳定值,并确定该路由节点所属簇中除该目标节点外的其他节点对于该目标节点的直接稳
定值,根据该路由节点对于各目标节点的直接稳定值,以及除该目标节点外的各其他节点
对于该目标节点的直接稳定值,确定该路由节点的簇内稳定值。
接。
要的硬件。处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,以实现
上述图1提供的区块链网络连接方法。
也可以是硬件或逻辑器件。
而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。
设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因
此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件
(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable Gate
Array,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员
自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作
专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻
辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,
而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言
(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL
(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description
Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL
(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby
Hardware Description Language)等,目前最普遍使用的是VHDL(Very‑High‑Speed
Integrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应
该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,
就可以很容易得到实现该逻辑方法流程的硬件电路。
读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,
ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制
器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存
储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以
纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使
得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实
现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种
功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视
为既可以是实现方法的软件模块又可以是硬件部件内的结构。
以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放
器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何
设备的组合。
施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机
可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等)上实施的计算机程序产
品的形式。
程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序
指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产
生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实
现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或
多个方框中指定的功能。
其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一
个方框或多个方框中指定的功能的步骤。
示例。
计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动
态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除
可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD‑ROM)、
数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备
或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算
机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要
素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要
素的过程、方法、商品或者设备中还存在另外的相同要素。
例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机
可用存储介质(包括但不限于磁盘存储器、CD‑ROM、光学存储器等)上实施的计算机程序产
品的形式。
组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境
中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块
可以位于包括存储设备在内的本地和远程计算机存储介质中。
施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例
的部分说明即可。
修改、等同替换、改进等,均应包含在本说明书的权利要求范围之内。