用于交换芯片的申请、管理独占资源的方法及装置

著录项
  • CN201810996048.0
  • 20180829
  • CN109240829A
  • 20190118
  • 盛科网络(苏州)有限公司
  • 蒋震;夏杰;许俊
  • G06/F950
  • G06/F950

  • 江苏省苏州市工业园区星汉街5号B幢4楼13/16单元
  • 江苏(32)
  • 苏州威世朋知识产权代理事务所(普通合伙)
  • 杨林洁
摘要
本发明提供一种用于交换芯片的申请、管理独占资源的方法及装置,所述交换芯片包含M颗裸片、仲裁模块和若干独占资源,M为大于等于2的整数,所述管理独占资源的方法包括以下步骤:接收到N颗裸片发送的用于表征申请第一独占资源的申请请求,N为大于等于1的整数,且N≤M;在确定第一独占资源没有被独占时,基于预设选择算法从所述N颗裸片中选择出第一裸片;向所述M颗裸片都发送用于表征第一裸片成功申请到第一独占资源的申请结果。在该交换芯片中,是否能够得到对独占资源的占用最终是由仲裁模块来决定,从而避免了不同裸片同时使用同一独占资源的情况的发生。
权利要求

1.一种用于交换芯片中的仲裁模块的管理独占资源的方法,所述交换芯片包含M颗裸片、仲裁模块和若干独占资源,M为大于等于2的整数,其特征在于,包括以下步骤:

接收到N颗裸片发送的用于表征申请第一独占资源的申请请求,N为大于等于1的整数,且N≤M;

在确定所述仲裁模块中的独占清单中不存储有用于表征第一独占资源已经被独占的存储项时,基于预设选择算法从所述N颗裸片中选择出第一裸片;

向所述独占清单中添加用于表征第一独占资源被第一裸片占用的第一存储项,并向所述M颗裸片都发送用于表征第一裸片成功申请到第一独占资源的申请结果。

2.根据权利要求1所述的管理独占资源的方法,其特征在于,所述基于预设选择算法从所述N颗裸片中选择出第一裸片,包括:从所述N颗裸片中选择出优先级最高的裸片作为第一裸片。

3.根据权利要求1所述的管理独占资源的方法,其特征在于,所述基于预设选择算法从所述N颗裸片中选择出第一裸片,包括:从所述N颗裸片中随机选择出一个裸片作为第一裸片。

4.根据权利要求1所述的管理独占资源的方法,其特征在于,还包括以下步骤:

接收到所述M颗芯片中的第二裸片发送的用于释放第二独占资源的释放请求;

在确定所述仲裁模块中的独占清单存储有用于表征第二独占资源被第二裸片独占的第二存储项时,删除第二存储项,且向所述M颗裸片都发送用于表征第二裸片成功释放第二独占资源的释放结果。

5.一种用于交换芯片中的仲裁模块的管理独占资源的装置,所述交换芯片包含M颗裸片、仲裁模块和若干独占资源,M为大于等于2的整数,其特征在于,包括以下模块:

申请请求接收模块,用于接收到N颗裸片发送的用于表征申请第一独占资源的申请请求,N为大于等于1的整数,且N≤M;

仲裁模块,用于在确定所述仲裁模块中的独占清单中不存储有用于表征第一独占资源已经被独占的存储项时,基于预设选择算法从所述N颗裸片中选择出第一裸片;

仲裁结果发送模块,用于向所述独占清单中添加用于表征第一独占资源被第一裸片占用的第一存储项,并向所述M颗裸片都发送用于表征第一裸片成功申请到第一独占资源的申请结果。

6.一种用于交换芯片中的裸片的申请独占资源的方法,所述交换芯片包含仲裁模块和若干独占资源,M为大于等于2的整数,其特征在于,包括以下步骤:

接收到预独占第一独占资源的指令;

在确定所述裸片中的独占清单中不存储有用于表征第一独占资源已经被独占的存储项时,向所述仲裁模块发送用于表征申请第一独占资源的申请请求。

7.根据权利要求6所述的申请独占资源的方法,其特征在于,包括以下步骤:

接收到所述仲裁模块发送的用于表征第一裸片成功申请到第一独占资源的申请结果;

在确定第一裸片与所述裸片相同时,独占第一独占资源,并且向所述独占清单中添加用于表征第一独占资源被所述裸片独占的存储项。

8.根据权利要求6所述的申请独占资源的方法,其特征在于,还包括以下步骤:

接收到释放第二独占资源的指令;

向所述仲裁模块发送用于表征释放第二独占资源的释放请求。

9.根据权利要求6所述的申请独占资源的方法,其特征在于,还包括以下步骤:

接收到所述仲裁模块发送的用于表征第二裸片成功释放第二独占资源的释放结果;

在确定第二裸片与所述裸片相同时,释放所述第二独占资源,并从所述裸片中的独占清单中删除用于表征第二独占资源被裸片独占的存储项。

10.一种用于交换芯片中的裸片的申请独占资源的装置,所述交换芯片包含仲裁模块和若干独占资源,M为大于等于2的整数,其特征在于,包括以下模块:

指令接收模块,用于接收到预独占第一独占资源的指令;

申请请求发送模块,用于在确定所述裸片中的独占清单中不存储有用于表征第一独占资源已经被独占的存储项时,向所述仲裁模块发送用于表征申请第一独占资源的申请请求。

说明书
技术领域

本发明涉及芯片制造技术领域,尤其涉及一种用于交换芯片的申请、管理独占资源的方法及装置。

随着技术的发展和时代的进步,要求交换芯片的带宽越来越高,为了适应高带宽的要求,通常在一颗芯片中封装多颗裸片。可以理解的是,该芯片中通常会包含一些独占资源(例如,同一内存区域等),由于裸片是独立工作的,因此,可能出现若干裸片在竞争同一独占资源,可以理解的是,这有可能发生错误或者死锁等。例如,在硬件学习中,当第一裸片学习到第一地址时,需要将第一地址通知其他所有裸片,当第二裸片学习到第二地址时,同样也需要将第二地址通知其他所有裸片。如果第一、第二地址相同,即第一、第二芯片都希望独占同一内存区域,就会造成错误或死锁等。

因此,设计一种让若干颗裸片有序占用独占资源的方法,就成为一个亟待解决的问题。

本发明的目的在于提供一种用于交换芯片的申请、管理独占资源的方法及装置。

为了实现上述发明目的之一,本发明一实施方式提供了一种用于交换芯片中的仲裁模块的管理独占资源的方法,所述交换芯片包含M颗裸片、仲裁模块和若干独占资源,M为大于等于2的整数,包括以下步骤:接收到N颗裸片发送的用于表征申请第一独占资源的申请请求,N为大于等于1的整数,且N≤M;在确定所述仲裁模块中的独占清单中不存储有用于表征第一独占资源已经被独占的存储项时,基于预设选择算法从所述N颗裸片中选择出第一裸片;向所述独占清单中添加用于表征第一独占资源被第一裸片占用的第一存储项,并向所述M颗裸片都发送用于表征第一裸片成功申请到第一独占资源的申请结果。

作为本发明一实施方式的进一步改进,所述基于预设选择算法从所述N颗裸片中选择出第一裸片,包括:从所述N颗裸片中选择出优先级最高的裸片作为第一裸片。

作为本发明一实施方式的进一步改进,所述基于预设选择算法从所述N颗裸片中选择出第一裸片,包括:从所述N颗裸片中随机选择出一个裸片作为第一裸片。

作为本发明一实施方式的进一步改进,还包括以下步骤:接收到所述M颗芯片中的第二裸片发送的用于释放第二独占资源的释放请求;在确定所述仲裁模块中的独占清单存储有用于表征第二独占资源被第二裸片独占的第二存储项时,删除第二存储项,且向所述M颗裸片都发送用于表征第二裸片成功释放第二独占资源的释放结果。

本发明实施例还提供了一种用于交换芯片中的仲裁模块的管理独占资源的装置,所述交换芯片包含M颗裸片、仲裁模块和若干独占资源,M为大于等于2的整数,包括以下模块:

申请请求接收模块,用于接收到N颗裸片发送的用于表征申请第一独占资源的申请请求,N为大于等于1的整数,且N≤M;

仲裁模块,用于在确定所述仲裁模块中的独占清单中不存储有用于表征第一独占资源已经被独占的存储项时,基于预设选择算法从所述N颗裸片中选择出第一裸片;

仲裁结果发送模块,用于向所述独占清单中添加用于表征第一独占资源被第一裸片占用的第一存储项,并向所述M颗裸片都发送用于表征第一裸片成功申请到第一独占资源的申请结果。

本发明实施例还提供了一种用于交换芯片中的裸片的申请独占资源的方法,所述交换芯片包含仲裁模块和若干独占资源,M为大于等于2的整数,包括以下步骤:接收到预独占第一独占资源的指令;在确定所述裸片中的独占清单中不存储有用于表征第一独占资源已经被独占的存储项时,向所述仲裁模块发送用于表征申请第一独占资源的申请请求。

作为本发明一实施方式的进一步改进,包括以下步骤:接收到所述仲裁模块发送的用于表征第一裸片成功申请到第一独占资源的申请结果;在确定第一裸片与所述裸片相同时,独占第一独占资源,并且向所述独占清单中添加用于表征第一独占资源被所述裸片独占的存储项。

作为本发明一实施方式的进一步改进,还包括以下步骤:接收到释放第二独占资源的指令;向所述仲裁模块发送用于表征释放第二独占资源的释放请求。

作为本发明一实施方式的进一步改进,还包括以下步骤:接收到所述仲裁模块发送的用于表征第二裸片成功释放第二独占资源的释放结果;在确定第二裸片与所述裸片相同时,释放所述第二独占资源,并从所述裸片中的独占清单中删除用于表征第二独占资源被裸片独占的存储项。

本发明实施例还提供了一种用于交换芯片中的裸片的申请独占资源的装置,所述交换芯片包含仲裁模块和若干独占资源,M为大于等于2的整数,包括以下模块:指令接收模块,用于接收到预独占第一独占资源的指令;申请请求发送模块,用于在确定所述裸片中的独占清单中不存储有用于表征第一独占资源已经被独占的存储项时,向所述仲裁模块发送用于表征申请第一独占资源的申请请求。

相对于现有技术,本发明的技术效果在于:本发明实施例提供了一种用于交换芯片的申请、管理独占资源的方法及装置,所述交换芯片包含M颗裸片、仲裁模块和若干独占资源,M为大于等于2的整数,所述管理独占资源的方法包括以下步骤:接收到N颗裸片发送的用于表征申请第一独占资源的申请请求,N为大于等于1的整数,且N≤M;在确定第一独占资源没有被独占时,基于预设选择算法从所述N颗裸片中选择出第一裸片;向所述M颗裸片都发送用于表征第一裸片成功申请到第一独占资源的申请结果。在该交换芯片中,是否能够得到对独占资源的占用最终是由仲裁模块来决定,从而避免了不同裸片同时使用同一独占资源的情况的发生。

图1是本发明实施例一中的管理独占资源的方法的流程示意图;

图2是本发明实施例二中的申请独占资源的方法的流程示意图;

图3是本发明实施例三中的分配内存的序列图。

以下将结合附图所示的各实施方式对本发明进行详细描述。但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。

在本发明中,交换芯片中包含有M颗裸片(Die)、仲裁模块和若干独占资源,M为大于等于2的整数,其中,可以从M颗裸片中选择出一颗来执行仲裁模块的功能,即仲裁模块可以为一颗裸片;也可以在交换芯片的内部设置一个单独的仲裁模块。这里,独占资源是指在同一时刻只能被一个裸片占用的资源,例如,某个特定地址的内存等。

在该交换芯片中,仲裁模块中会有一份存储每个独占资源的占用情况的占用清单,且负责管理独占资源,而任一裸片想要独占某个独占资源时,需要向仲裁模块进行申请,只有在该仲裁模块允许该裸片独占该独占资源时,该裸片才能够独占并使用该独占资源。并且该仲裁模块会将每个独占资源的决策都发送给每个裸片,从而每个裸片中也会有一份存储每个独占资源的占用情况的占用清单。

本发明实施例一提供了一种用于交换芯片中的仲裁模块的管理独占资源的方法,所述交换芯片包含M颗裸片、仲裁模块和若干独占资源,M为大于等于2的整数,这里,该管理独占资源的方法由该仲裁模块执行;如图1所示,该管理独占资源的方法包括以下步骤:

步骤101:接收到N颗裸片发送的用于表征申请第一独占资源的申请请求,N为大于等于1的整数,且N≤M;这里,如果一个裸片想要申请某一独占资源,则需要向仲裁模块发送申请请求,该申请请求通常需要包含有:能唯一标识该裸片的标识符,能唯一标识该独占资源的标识符等等,从而,仲裁模块就会接收到该裸片所发送的申请请求。

步骤102:在确定所述仲裁模块中的独占清单中不存储有用于表征第一独占资源已经被独占的存储项时,基于预设选择算法从所述N颗裸片中选择出第一裸片;这里,在仲裁模块中会有一份存储每个独占资源的占用情况的占用清单,在该占用清单中,存储有若干存储项,每个存储项用于表征某个独占资源被某个裸片占用;因此,如果在该独占清单包含有一个用于表征第一独占资源被某个裸片占用的存储项时,第一独占资源已经被占用,反之,第一独占资源没有被占用。

这里,在仲裁模块接收到申请请求之后,会使用预设选择算法来仲裁,最后确定哪个裸片获得该独占资源的使用权。这里,预设选择算法可以为:(1)随机算法,即从N颗裸片中随机选择出一个裸片作为第一裸片;(2)基于优先权的算法,例如,不同裸片具有不同的优先级,优先级最高的裸片为第一裸片;(3)基于时间顺序的算法,可以理解的是,仲裁模块接收不同申请请求的时间是不相同的,因此,可以将接收时间最早的申请请求对应的裸片设置为第一裸片。

步骤103:向所述独占清单中添加用于表征第一独占资源被第一裸片占用的第一存储项,并向所述M颗裸片都发送用于表征第一裸片成功申请到第一独占资源的申请结果。

在该步骤102中已经进行了仲裁,则需要将仲裁结果通知所有M颗裸片。可以理解的是,第一裸片在接收到申请结果之后,就可以独占该独占资源。而其他的裸片,就不会使用该独占资源了。可以理解的是,一旦决定将第一独占资源分配给第一裸片之后,需要对独占清单进行相应的更新。

优选的,所述基于预设选择算法从所述N颗裸片中选择出第一裸片,包括:从所述N颗裸片中选择出优先级最高的裸片作为第一裸片。

优选的,所述基于预设选择算法从所述N颗裸片中选择出第一裸片,包括:从所述N颗裸片中随机选择出一个裸片作为第一裸片。

优选的,还包括以下步骤:

步骤104:接收到所述M颗芯片中的第二裸片发送的用于释放第二独占资源的释放请求;

步骤105:在确定所述仲裁模块中的独占清单存储有用于表征第二独占资源被第二裸片独占的第二存储项时,删除第二存储项,且向所述M颗裸片都发送用于表征第二裸片成功释放第二独占资源的释放结果。这里,在实际使用中,当第二裸片使用完第二独占资源时,就需要释放第二独占资源,此时,需要向仲裁模块发送释放第二独占资源的释放请求,于是,仲裁模块就会接收到第二裸片发送的用于释放第二独占资源的释放请求;可以理解的是,必须对该释放请求的真实性进行确定,即只有在确定第二独占资源被第二裸片独占时,才能释放第二独占资源。

本发明实施例还提供了一种用于交换芯片中的仲裁模块的管理独占资源的装置,所述交换芯片包含M颗裸片、仲裁模块和若干独占资源,M为大于等于2的整数,包括以下模块:

申请请求接收模块,用于接收到N颗裸片发送的用于表征申请第一独占资源的申请请求,N为大于等于1的整数,且N≤M;

仲裁模块,用于在确定所述仲裁模块中的独占清单中不存储有用于表征第一独占资源已经被独占的存储项时,基于预设选择算法从所述N颗裸片中选择出第一裸片;

仲裁结果发送模块,用于向所述独占清单中添加用于表征第一独占资源被第一裸片占用的第一存储项,并向所述M颗裸片都发送用于表征第一裸片成功申请到第一独占资源的申请结果。

本发明实施例二提供了一种用于交换芯片中的裸片的申请独占资源的方法,所述交换芯片包含仲裁模块和若干独占资源,M为大于等于2的整数,如图2所示,包括以下步骤:

步骤201:接收到预独占第一独占资源的指令;这里,在裸片的运行过程中,如果需要独占第一独占资源时,就表示接收到独占第一独占资源的指令;例如,裸片学习到一个地址,且想要独占该地址所对应的内存时,则表示该裸片接收到预独占该地址所对应的内存的指令。

步骤202:在确定所述裸片中的独占清单中不存储有用于表征第一独占资源已经被独占的存储项时,向所述仲裁模块发送用于表征申请第一独占资源的申请请求。这里,在裸片中会有一份存储每个独占资源的占用情况的占用清单,在该独占清单中,存储有若干存储项,每个存储项用于表征某个独占资源被某个裸片占用;因此,如果在该独占清单包含有一个用于表征第一独占资源被某个裸片占用的存储项时,第一独占资源已经被占用,反之,第一独占资源没有被占用。

优选的,还包括以下步骤:

步骤203:接收到所述仲裁模块发送的用于表征第一裸片成功申请到第一独占资源的申请结果;

步骤204:在确定第一裸片与所述裸片相同时,独占第一独占资源,并且向所述独占清单中添加用于表征第一独占资源被所述裸片独占的存储项。这里,可以为每个裸片都设置有能够唯一标识该裸片的标识符,从而依据该标识符就可以确定第一裸片与所述裸片是否相同,可以理解的是,如果第一裸片的标识符与所述裸片的标识符相同,就表示仲裁模块允许所述裸片独占第一独占资源,则所述裸片就可以独占并使用第一独占资源了。可以理解的是,一旦决定将该裸片独占第一独占资源之后,需要对该裸片中的独占清单进行相应的更新。

可选的,在确定第一裸片与所述裸片不相同时,向所述独占清单中添加用于表征第一独占资源被所述第一裸片独占的存储项。

优选的,还包括以下步骤:

步骤205:接收到释放第二独占资源的指令;这里,在裸片的工作过程中,如果需要释放第二独占资源时,就表示接收到释放第二独占资源的指令;例如,裸片已经独占某个地址所对应的内存,在使用完之后,可以释放该地址所对应的内存。

步骤206:向所述仲裁模块发送用于表征释放第二独占资源的释放请求。裸片将释放请求发送到仲裁模块,由仲裁模块来决定是否允许裸片释放第二独占资源。

优选的,还包括以下步骤:

步骤207:接收到所述仲裁模块发送的用于表征第二裸片成功释放第二独占资源的释放结果;

步骤208:在确定第二裸片与所述裸片相同时,释放所述第二独占资源,并从所述裸片中的独占清单中删除用于表征第二独占资源被裸片独占的存储项。

可选的,在确定第二裸片与所述裸片不相同时,从所述裸片中的独占清单中删除用于表征第二独占资源被裸片独占的存储项。

本发明实施例还提供了一种用于交换芯片中的裸片的申请独占资源的装置,所述交换芯片包含仲裁模块和若干独占资源,M为大于等于2的整数,包括以下模块:

指令接收模块,用于接收到预独占第一独占资源的指令;

申请请求发送模块,用于在确定所述裸片中的独占清单中不存储有用于表征第一独占资源已经被独占的存储项时,向所述仲裁模块发送用于表征申请第一独占资源的申请请求。

本发明实施例二提供了一种交换芯片,该交换芯片包含M颗裸片、仲裁模块和若干独占资源,M为大于等于2的整数;这里仲裁模块为M颗裸片中的一颗。如图3所示,在某个时刻有报文进入裸片1和裸片M,此时裸片1和裸片M都进行哈希查,从而学习到了第一地址,且经过对本地所存储的占用清单进行检索之后,确认第一地址所对应的内存没有被任一裸片占用,于是,裸片1和裸片M都希望能够独占第一地址所对应的内存,则在该交换芯片中,分配内存的方法包括以下步骤:

步骤1:裸片1向仲裁模块发送请第一地址对应的内存的申请请求;

步骤2:裸片M向仲裁模块发送请第一地址对应的内存的申请请求;

步骤3:仲裁模块进行仲裁,首先仲裁模块会基于特定算法,将所接受到的申请请求进行排序(可以由仲裁模块中的聚合模块完成),例如,裸片1的申请请求排在裸片M的申请请求的前面。因此,先处理裸片1的申请请求,在仲裁模块中会有一份存储每个独占资源的占用情况的占用清单,且在该占用清单中,第一地址对应的内存没有被独占,因此,允许裸片1占用第一地址对应的内存,且对占用清单进行相应的修改;之后,处理裸片M的申请请求,由于在该占用清单中,第一地址对应的内存已经被裸片1独占,因此,允许裸片M不允许占用第一地址对应的内存;

步骤4:向所有裸片(即向裸片1,裸片2,……,裸片M都发送)发送申请结果;可以理解的是,此时,裸片1会独占第一地址对应的内存,而裸片M就不能独占第一地址对应的内存;但是所有的裸片都会对其本地所存储的占用清单进行相应的修改;

步骤5:所有裸片(即向裸片1,裸片2,……,裸片M都发送)向仲裁模块发生确认信息,即确认已经收到申请结果。

应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。

本文发布于:2024-09-25 18:32:56,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/85663.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议