CN117170986B - 芯片一致性处理系统,及其方法、装置、设备及介质 - Google Patents

芯片一致性处理系统,及其方法、装置、设备及介质 Download PDF

Info

Publication number
CN117170986B
CN117170986B CN202311452479.8A CN202311452479A CN117170986B CN 117170986 B CN117170986 B CN 117170986B CN 202311452479 A CN202311452479 A CN 202311452479A CN 117170986 B CN117170986 B CN 117170986B
Authority
CN
China
Prior art keywords
chip
consistency
data address
determining
target
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202311452479.8A
Other languages
English (en)
Other versions
CN117170986A (zh
Inventor
李祖松
郇丹丹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Micro Core Technology Co ltd
Original Assignee
Beijing Micro Core Technology Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Micro Core Technology Co ltd filed Critical Beijing Micro Core Technology Co ltd
Priority to CN202311452479.8A priority Critical patent/CN117170986B/zh
Publication of CN117170986A publication Critical patent/CN117170986A/zh
Application granted granted Critical
Publication of CN117170986B publication Critical patent/CN117170986B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开涉及一种芯片一致性处理系统,及其方法、装置、设备及介质,有效解决了在处理芯片一致性时,需要跨多个Die进行判断,处理效率过低的同时,计算量较大,致使芯片性能降低的技术问题,芯片一致性处理系统包括:第一芯片和芯片组,其中:所述芯片组中包括多个第二芯片;所述第一芯片中设置有一致性判断模块,所述一致性判断模块上存储有全部第二芯片的签名信息的签名表,用于利用所述签名信息和接收到的一致性请求,确定需要进行同步的目标芯片。

Description

芯片一致性处理系统,及其方法、装置、设备及介质
技术领域
本公开涉及芯片技术领域,尤其涉及一种芯片一致性处理系统,及其方法、装置、设备及介质。
背景技术
人工智能、高性能计算、网络等应用飞速发展,对高性能处理器的算力需求越来越高。多核处理器(Multi-Core Processor)是高性能处理器的发展方向,而且趋势是芯片上的处理器核的数量越来越多,处理器核的种类也越来越多,包括CPU(中央处理器,CentralProcessing Unit)核、AI(人工智能,Artificial Intelligence)核和GPU(图形处理器,graphics processing unit)核、DPU (数据处理器,Data Processing Unit)核、DSP(数字信号处理器,Digital Signal Processor)核和其他加速器(Accelerator)核等。然而,在相关技术中,由于Chiplet(芯粒)系统中每个Die(裸片)上的高速缓存(Cache)容量都很大,跨Die访问的带宽受限,且跨Die访问的延时远大于Die内的访问延时,致使在处理芯片一致性时,需要跨多个Die进行判断,处理效率过低的同时,计算量较大,致使芯片性能降低。
发明内容
为了解决上述技术问题,本公开提供了一种芯片一致性处理系统,及其方法、装置、设备及介质,有效解决了在处理芯片一致性时,需要跨多个Die进行判断,处理效率过低的同时,计算量较大,致使芯片性能降低的技术问题。
第一方面,本公开实施例提供了一种芯片一致性处理系统,包括至少一个第一芯片和芯片组,其中:
芯片组中包括多个第二芯片;
第一芯片中设置有一致性判断模块,一致性判断模块上存储有全部第二芯片的签名信息的签名表,用于利用签名信息和接收到的一致性请求,确定需要进行同步的目标芯片。
在一种可能实施的方式中,本发明实施例提供的系统中,第二芯片为以下一种或多种:
中央处理器芯片CPU Die、图形处理器芯片GPU Die、人工智能芯片AI Die、数据处理器芯片DPU Die、数字信号处理器芯片DSP Die和加速器芯片Accelerator Die。
在一种可能实施的方式中,本发明实施例提供的系统中,第一芯片为输入输出芯片IO Die。
本公开实施例提供的芯片一致性处理系统,通过设立第一芯片,并在第一芯片中设置有一致性判断模块,来判断一致性请求中需要进行同步的目标芯片,避免将芯片的一致性请求广播到所有的其他芯片上,降低了跨芯片传输时的带宽消耗,从而提高多核处理器的性能,提高了芯片上存储资源的利用率。
第二方面,本公开实施例提供了一种芯片一致性处理方法,方法包括:
获取任意芯片发送的一致性请求,一致性请求用于请求同步多个芯片的数据;
基于一致性请求,确定需要进行同步的目标芯片;
将一致性请求发送至目标芯片,以使目标芯片根据一致性请求同步数据。
在一种可能实施的方式中,本发明实施例提供的方法中,基于一致性请求,确定需要进行同步的目标芯片,包括:
基于一致性请求,确定一致性请求对应的数据地址;
从预先存储的签名表中,确定包含数据地址的芯片为目标芯片。
在一种可能实施的方式中,本发明实施例提供的方法中,从预先存储的签名表中,确定包含数据地址的芯片为目标芯片,包括:
对数据地址进行哈希计算,得到数据地址对应的哈希值;
将哈希值映射在签名表中,得到每个芯片的哈希值映射结果;
基于哈希值映射结果,确定包含数据地址的芯片为目标芯片。
在一种可能实施的方式中,本发明实施例提供的方法中,从预先存储的签名表中,确定包含数据地址的芯片为目标芯片,包括:
从预先存储的签名表中,确定包含数据地址的芯片组;
将数据地址发送至芯片组对应的中继芯片,以使中继芯片根据数据地址在芯片组中确定包含数据地址的目标芯片,中继芯片用于根据数据地址在预设数量的第二芯片中确定目标芯片。
在一种可能实施的方式中,本发明实施例提供的方法中,签名表为布隆过滤器Bloom Filter和/或改进型布隆过滤器Counting Bloom Filter。
本公开实施例提供了一种芯片一致性处理方法,包括:
首先获取任意芯片发送的一致性请求,然后基于一致性请求,确定需要进行同步的目标芯片,最后将一致性请求发送至目标芯片,以使目标芯片根据一致性请求同步数据。解决了在处理芯片一致性时,需要跨多个Die进行判断,处理效率过低的同时,计算量较大,致使了芯片性能的利用率较低的技术问题,本公开提供的方法统一判定在其他芯片上存在一致性请求的地址,再将一致性请求发送到对应存在一致性请求地址的芯片,避免将芯片的一致性请求广播到所有的其他芯片上,降低了跨芯片传输时的带宽消耗,从而提高多核处理器的性能,提高了芯片上存储资源的利用率。
第三方面,本公开实施例提供了一种芯片一致性处理装置,装置包括:
获取单元,用于获取任意芯片发送的一致性请求,一致性请求用于请求同步多个芯片的数据;
确定单元,用于基于一致性请求,确定需要进行同步的目标芯片;
发送单元,用于将一致性请求发送至目标芯片,以使目标芯片根据一致性请求同步数据。
在一种可能实施的方式中,本发明实施例提供的装置中,确定单元具体用于:
基于一致性请求,确定一致性请求对应的数据地址;
从预先存储的签名表中,确定包含数据地址的芯片为目标芯片。
在一种可能实施的方式中,本发明实施例提供的装置中,确定单元具体用于:
对数据地址进行哈希计算,得到数据地址对应的哈希值;
将哈希值映射在签名表中,得到每个芯片的哈希值映射结果;
基于哈希值映射结果,确定包含数据地址的芯片为目标芯片。
在一种可能实施的方式中,本发明实施例提供的装置中,确定单元具体用于:
从预先存储的签名表中,确定包含数据地址的芯片组;
将数据地址发送至芯片组对应的中继芯片,以使中继芯片根据数据地址在芯片组中确定包含数据地址的目标芯片,中继芯片用于根据数据地址在预设数量的第二芯片中确定目标芯片。
在一种可能实施的方式中,本发明实施例提供的装置中,签名表为布隆过滤器Bloom Filter和/或改进型布隆过滤器Counting Bloom Filter。
第四方面,本公开实施例提供了一种电子设备,包括:
存储器;
处理器;以及
计算机程序;
其中,计算机程序存储在存储器中,并被配置为由处理器执行以实现如上述的芯片一致性处理方法。
第五方面,本公开实施例提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现如上述的芯片一致性处理方法的步骤。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本公开实施例提供的一种芯片一致性系统的结构示意图;
图2为本公开实施例提供的一种多核处理器的结构示意图;
图3为本公开实施例提供的一种64核处理器的结构示意图;
图4为本公开实施例提供的一种CPU Die的结构示意图;
图5为本公开实施例提供的一种芯片一致性处理方法的流程示意图;
图6为本公开实施例提供的一种芯片一致性处理方法的具体流程示意图;
图7为本公开实施例提供的一种Bloom Filter判定的原理示意图;
图8为本公开实施例提供的又一种芯片一致性处理方法的具体流程示意图;
图9为本公开实施例提供的一种芯片一致性处理装置的结构示意图;
图10为本公开实施例提供的一种电子设备的结构示意图。
具体实施方式
为了能够更清楚地理解本公开的上述目的、特征和优点,下面将对本公开的方案进行进一步描述。需要说明的是,在不冲突的情况下,本公开的实施例及实施例中的特征可以相互组合。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
在下面的描述中阐述了很多具体细节以便于充分理解本公开,但本公开还可以采用其他不同于在此描述的方式来实施;显然,说明书中的实施例只是本公开的一部分实施例,而不是全部的实施例。
1、本发明实施例中术语“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
2、本发明实施例中术语“CPU”,即中央处理器(Central Processing Unit,CPU)作为计算机系统的运算和控制核心,是信息处理、程序运行的最终执行单元。
3、本发明实施例中术语“GPU”,即图形处理器(graphics processing unit,GPU),又称显示核心、视觉处理器、显示芯片,是一种做图像和图形相关运算工作的微处理器。同时,在科学计算、深度学习等领域中,GPU也可以作为计算加速器来使用,可以大幅提高计算速度和效率。
4、本发明实施例中术语“Die”,即芯片,在集成电路中,Die是一小块半导体材料,在其上制造了给定的功能电路,本公开文本中,芯片即指Die,为最小单位的整块半导体材料芯片。
5、本发明实施例中术语“Chiplet”,是指预先制造好、具有特定功能、可组合集成的晶片,也称芯粒。
人工智能、高性能计算、网络等应用飞速发展,对高性能处理器的算力需求越来越高。多核处理器(Multi-Core Processor)是高性能处理器的发展方向,而且趋势是芯片上的处理器核的数量越来越多,处理器核的种类也越来越多,包括CPU(中央处理器,CentralProcessing Unit)核、AI(人工智能,Artificial Intelligence)核和GPU(图形处理器,graphics processing unit)核、DPU (数据处理器,Data Processing Unit)核、DSP(数字信号处理器,Digital Signal Processor)核和其他加速器(Accelerator)核等。伴随而来的是高性能处理器的设计规模以及复杂度快速增加,芯片面积越来越大,导致制造难度增加,同时也增加了由于良率下降带来的损失。
通过Chiplet(芯粒)设计,可以把超大型的芯片按照不同的功能模块切割成独立的小芯片,进行分开制造,再将Die(裸片)在封装上通过Die to Die(裸片到裸片)互连组成一个芯片,这样不仅可以有效改善良率,也能够降低因为不良率所导致的成本增加。而且Chiplet系统的各Die(裸片)可以采用最适合的工艺分开制造,再通过先进封装组装成一个系统芯片,不需要全部都采用同样的先进工艺制程在一块晶圆上进行一体化制造,各个Die也可以独立进行工艺升级,因此可以大幅度降低芯片的制造成本。
Chiplet系统每个Die上的高速缓存(Cache)容量都很大,跨Die访问的带宽受限,并且跨Die访问的延时远大于Die内的访问延时,如何高效的实现Chiplet系统的多核高速缓存一致性(Cache Coherence),提高存储资源利用率,是目前学术界和工业界普遍关注和研究的重要问题。
图1为本公开实施例提供的一种芯片一致性系统的结构示意图,如图1所示,该系统包括至少一个第一芯片101和芯片组102,芯片组102中包括多个第二芯片,第一芯片101中设置有一致性判断模块,该模块存储着包含每个第二芯片签名信息的签名表,用于利用该签名信息和接收的一致性请求来确定第二芯片中需要同步的芯片,第一芯片101的数量可以是一个也可以是多个,按需求自行设置。优选地,第一芯片和第二芯片均可以为中央处理器芯片CPU Die、图形处理器芯片GPU Die、人工智能芯片AI Die、数据处理器芯片DPUDie、数字信号处理器芯片DSP Die和加速器芯片Accelerator Die中的一种或多种,加速器包括其他领域处理器、其他功能加速器和其他应用场景加速器等。例如,网络处理器、图像信号处理器、显示处理器、加解密加速器、音频加速器、视频编解码加速器、各种数学运算加速器、卷积运算加速器、矩阵运算加速器等。
优选地,第一芯片为IO Die,例如在如图2所示的多核处理器中包括N(N为正整数)个处理器芯片(处理器 Die)和1个输入输出芯片。N个处理器 芯片即为芯片组中的第二芯片,输入输出芯片为第一芯片。
在一个示例中,如图3所示,应用于一个64核处理器中,处理器Die为CPU Die,共有8个CPU Die,也即N为8,处理器核为CPU核,每个CPU Die如图4所示,包含8个处理器核,L1Cache和L2 Cache为处理器核的私有Cache,L3 Cache为共享的最后一级Cache(LLC,LastLevel Cache),一级Cache、二级Cache和三级Cache都在CPU Die上。多核处理器的IO Die包括CPU Die的签名部件和外设接口,外设接口包括内存接口、PCIE接口以及低速IO接口等。CPU Die和IO Die通过芯片对芯片接口(Die to Die Interface)互连,所有的处理器Die的一致性请求都先进入IO Die进行判定,由IO Die接收其他Die的一致性请求。
图5为本公开实施例提供的一种芯片一致性处理方法的流程示意图,具体包括如图5所示的如下步骤S501至S503:
S501、获取任意芯片发送的一致性请求。
具体实施时,首先获取任意芯片发起的一致性请求,该一致性请求用于请求同步多个芯片的数据。在本公开实施例中,可以由独立的输入输出芯片(Input/Output Die,IODie)进行,也可以由多核处理器中的任意其他芯片进行。
S502、基于一致性请求,确定需要进行同步的目标芯片。
具体实施时,首先基于一致性请求,确定所述一致性请求对应的数据地址,然后从预先存储的签名表中,确定包含所述数据地址的芯片为目标芯片。具体在确认目标芯片时,首先对数据地址进行哈希计算,得到数据地址对应的哈希值,然后将哈希值映射在签名表中,得到每个芯片的哈希值映射结果,最后基于哈希值映射结果,确定包含数据地址的芯片为目标芯片。在另一个实施例中,若由多个芯片进行目标芯片的确认,则可以进行分层处理,由第一个处理的芯片来判断目标芯片在哪个芯片组中,再由该芯片组中指定处理的芯片(中继芯片)进行进一步判断,具体来说,从预先存储的签名表中,确定包含数据地址的芯片组,然后将数据地址发送至芯片组对应的中继芯片,以使中继芯片根据数据地址在芯片组中确定包含数据地址的目标芯片。
S503、将一致性请求发送至目标芯片,以使目标芯片根据一致性请求同步数据。
具体实施时,在确定需要进行数据同步的目标芯片后,将该一致性请求发送至目标芯片,以使目标芯片同步数据。
图6为本公开实施例提供的一种芯片一致性处理方法的具体流程示意图,具体包括如图6所示的如下步骤S601至S604:
S601、获取任意芯片发送的一致性请求。
具体实施时,首先获取任意芯片发起的一致性请求,该一致性请求用于请求同步多个芯片的数据。
S602、基于一致性请求,确定一致性请求对应的数据地址。
具体实施时,对该一致性请求进行解析,得到该一致性请求对应的数据地址。
S603、从预先存储的签名表中,确定包含数据地址的芯片为目标芯片。
具体实施时,通过查询每个处理器Die的签名机制,判定处理器Die发出的一致性请求的地址是否在其他处理器Die上,以及在哪些处理器Die上,如果签名机制判定在其他处理器Die上存在一致性请求的地址,再将一致性请求发送到对应存在一致性请求地址的处理器Die,既减少IO Die记录的表项,又减少对处理器Die的访问,降低Die间一致性传输的带宽负荷,从而提高多核处理器的性能,降低功耗和面积。
在一个示例中,如图7所示,将第一处理器的一致性请求送到输入输出芯片的第二处理器的Bloom Filter签名模块进行判定,判定该一致性请求地址是否在第二处理器中,如果在第二处理器中,则将该一致性请求发送到第二处理器进行处理,否则不发送到第二处理器中。同理,第一处理器会将其一致性请求地址发送到输入输出芯片中的各处理器的签名模块进行判定,如果在哪个处理器中判定为命中,则将该一致性请求发送到对应的处理器进行处理,否则不发送到对应的处理器。在进行签名判定时,可以使用布隆过滤器(Bloom Filter),也可以使用改进型布隆过滤器(Counting Bloom Filter,CBF),当然,也可以组合使用BF与CBF。如果进行签名判定时判定结果为是,该元素不一定在集合中;但如果检测结果为否,该元素一定不在集合中。因此Bloom Filter判定不在处理器中的一定不会在对应的处理器中,所以Bloom Filter签名机制可以节省空间,过滤掉大部分不需要的对处理器的广播,而且确保正确性。
具体来说,在使用BloomFilter时,由于BloomFilter的主要数据结构是一个由m个二进制位组成的位数组,初始时所有位都被置为0。同时,布隆过滤器还需要k个哈希函数,这些哈希函数将输入元素映射到位数组中的k个位置上,每个位置都标记为1。具体的哈希函数可以是任意一种哈希算法,例如MD5、SHA1等,本公开实施例对此不做限定。将一个元素插入到布隆过滤器时,需要将该元素通过k个哈希函数映射到位数组中的k个位置上,并将这些位置的值都置为1。查询一个元素是否在布隆过滤器中时,只需要将该元素通过k个哈希函数映射到位数组中的k个位置上,检查这些位置的值是否都为1,若都为1,则该元素可能存在于集合中,否则该元素肯定不存在于集合中。
在使用CBF时,由于CBF的主要特点是在位数组中不是只存储0或1,而是使用L位的计数器来存储每个元素出现的次数。具体来说,CBF采用一个m个元素的位数组C和k个哈希函数,每个哈希函数可以将元素映射到位数组的一个位置上。对于一个元素e,对应的CBF计算方法如下:将C中所有经过哈希函数映射到的位置的计数器加1。如果计数器的值超过了一个阈值(通常为3),则将这个元素标记为存在于CBF中。查询一个元素是否在CBF中时,需要查询所有哈希函数映射到的位置上的计数器的值是否都大于0,如果都大于0,则认为这个元素可能存在于CBF中。删除一个元素时,需要将CBF中所有哈希函数映射到的位置上的计数器减1。如果某个位置上的计数器减为了0,则认为这个元素已经不存在于CBF中。
S604、将一致性请求发送至目标芯片,以使目标芯片根据一致性请求同步数据。
具体实施时,在确定需要进行数据同步的目标芯片后,将该一致性请求发送至目标芯片,以使目标芯片同步数据。
图8为本公开实施例提供的又一种芯片一致性处理方法的具体流程示意图,具体包括如图8所示的如下步骤:
S801、获取任意芯片发送的一致性请求。
S802、基于一致性请求,确定一致性请求对应的数据地址。
步骤S801和步骤S802与步骤S601和步骤S602相同,在此不再赘述。
S803、从预先存储的签名表中,确定包含数据地址的芯片为目标芯片。
具体实施时,若由多个IO Die进行判断,则先由第一个IO Die判断数据地址对应的Die组,然后将该数据地址发送至该Die组的中继芯片,该中继芯片也可以是其他IO Die,也可以是其他芯片,本公开实施例对此不做限定。否则不发送到对应的Die组,再由该Die组的中继芯片计算出具体需要发送至的处理器Die。两次的判断可以使用相同或不同的哈希值算法,本公开实施例对此不作限定。
S804、将一致性请求发送至目标芯片,以使目标芯片根据一致性请求同步数据。
具体实施时,在确定需要进行数据同步的目标芯片后,将该一致性请求发送至目标芯片,以使目标芯片同步数据。
图9为本公开实施例提供的芯片一致性处理装置的结构示意图。本公开实施例提供的芯片一致性处理装置900可以执行上述芯片一致性处理方法实施例提供的处理流程,如图9所示,芯片一致性处理装置900包括获取单元901、确定单元902和发送单元903,其中:
获取单元901,用于获取任意芯片发送的一致性请求,一致性请求用于请求同步多个芯片的数据;
确定单元902,用于基于一致性请求,确定需要进行同步的目标芯片;
发送单元903,用于将一致性请求发送至目标芯片,以使目标芯片根据一致性请求同步数据。
在一种可能实施的方式中,本发明实施例提供的装置中,确定单元902具体用于:
基于一致性请求,确定一致性请求对应的数据地址;
从预先存储的签名表中,确定包含数据地址的芯片为目标芯片。
在一种可能实施的方式中,本发明实施例提供的装置中,确定单元902具体用于:
对数据地址进行哈希计算,得到数据地址对应的哈希值;
将哈希值映射在签名表中,得到每个芯片的哈希值映射结果;
基于哈希值映射结果,确定包含数据地址的芯片为目标芯片。
在一种可能实施的方式中,本发明实施例提供的装置中,确定单元902具体用于:
从预先存储的签名表中,确定包含数据地址的芯片组;
将数据地址发送至芯片组对应的中继芯片,以使中继芯片根据数据地址在芯片组中确定包含数据地址的目标芯片,中继芯片用于根据数据地址在预设数量的第二芯片中确定目标芯片。
在一种可能实施的方式中,本发明实施例提供的装置中,签名表为布隆过滤器Bloom Filter和/或改进型布隆过滤器Counting Bloom Filter。
图9所示实施例的芯片一致性处理装置可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
另外,结合图1-图9描述的本申请实施例的芯片一致性处理方法和装置可以由电子设备来实现。图10示出了本申请实施例提供的电子设备的硬件结构示意图。
如图10所示,电子设备1000可以包括处理装置(例如中央处理器、图形处理器等)1001,其可以根据存储在只读存储器(ROM)1002中的程序或者从存储装置1008加载到随机访问存储器(RAM)1003中的程序而执行各种适当的动作和处理以实现如本公开所述的实施例的芯片一致性处理方法。在RAM 1003中,还存储有电子设备1000操作所需的各种程序和数据。处理装置1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
通常,以下装置可以连接至I/O接口1005:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置1006;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置1007;包括例如磁带、硬盘等的存储装置1008;以及通信装置1009。通信装置1009可以允许电子设备1000与其他设备进行无线或有线通信以交换数据。虽然图10示出了具有各种装置的电子设备1000,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在非暂态计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码,从而实现如上所述的语音控制方法。在这样的实施例中,该计算机程序可以通过通信装置1009从网络上被下载和安装,或者从存储装置1008被安装,或者从ROM 1002被安装。在该计算机程序被处理装置1001执行时,执行本公开实施例的方法中限定的上述功能。
需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText TransferProtocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备:
获取任意芯片发送的一致性请求,一致性请求用于请求同步多个芯片的数据;
基于一致性请求,确定需要进行同步的目标芯片;
将一致性请求发送至目标芯片,以使目标芯片根据一致性请求同步数据。
可选的,当上述一个或者多个程序被该电子设备执行时,该电子设备还可以执行上述实施例所述的其他步骤。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD-ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
本公开实施例提供的芯片一致性处理系统,通过设立第一芯片,并在第一芯片中设置有一致性判断模块,来判断一致性请求中需要进行同步的目标芯片,避免将芯片的一致性请求广播到所有的其他芯片上,降低了跨芯片传输时的带宽消耗,从而提高多核处理器的性能,提高了芯片上存储资源的利用率。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (15)

1.一种芯片一致性处理系统,其特征在于,所述系统包括至少一个第一芯片和芯片组,其中:
所述芯片组中包括多个第二芯片;
所述第一芯片中设置有一致性判断模块,所述一致性判断模块上存储有全部第二芯片的签名信息的签名表,用于利用所述签名信息和接收到的一致性请求,确定需要进行同步的目标芯片;
所述一致性判断模块,还用于:
基于所述一致性请求,确定所述一致性请求对应的数据地址;
对所述数据地址进行哈希计算,得到所述数据地址对应的哈希值;
将所述哈希值映射在所述签名表中,得到每个芯片的哈希值映射结果;
基于所述哈希值映射结果,确定包含所述数据地址的芯片为目标芯片。
2.根据权利要求1所述的系统,其特征在于,所述第二芯片为以下一种或多种:
中央处理器芯片CPU Die、图形处理器芯片GPU Die、人工智能芯片AI Die、数据处理器芯片DPU Die、数字信号处理器芯片DSP Die和加速器芯片Accelerator Die。
3.根据权利要求1或2所述的系统,其特征在于,所述第一芯片为输入输出芯片IO Die。
4.一种芯片一致性处理方法,应用于如权利要求1-3任一项所述系统的第一芯片,其特征在于,所述方法包括:
获取任意芯片发送的一致性请求,所述一致性请求用于请求同步发送一致性请求的芯片与多个第二芯片的数据;
基于所述一致性请求,确定需要进行同步的目标芯片;
将所述一致性请求发送至所述目标芯片,以使所述目标芯片根据所述一致性请求同步数据。
5.根据权利要求4所述的方法,其特征在于,所述基于所述一致性请求,确定需要进行同步的目标芯片,包括:
基于所述一致性请求,确定所述一致性请求对应的数据地址;
从预先存储的签名表中,确定包含所述数据地址的芯片为目标芯片。
6.根据权利要求5所述的方法,其特征在于,所述从预先存储的签名表中,确定包含所述数据地址的芯片为目标芯片,包括:
对所述数据地址进行哈希计算,得到所述数据地址对应的哈希值;
将所述哈希值映射在所述签名表中,得到每个芯片的哈希值映射结果;
基于所述哈希值映射结果,确定包含所述数据地址的芯片为目标芯片。
7.根据权利要求5所述的方法,其特征在于,所述从预先存储的签名表中,确定包含所述数据地址的芯片为目标芯片,包括:
从预先存储的签名表中,确定包含所述数据地址的芯片组;
将所述数据地址发送至所述芯片组对应的中继芯片,以使所述中继芯片根据所述数据地址在所述芯片组中确定包含所述数据地址的目标芯片,所述中继芯片用于根据所述数据地址在预设数量的第二芯片中确定所述目标芯片。
8.根据权利要求5所述的方法,其特征在于,所述签名表为布隆过滤器Bloom Filter或改进型布隆过滤器Counting Bloom Filter。
9.基于权利要求1-3任一项所述系统的第一芯片,实现一种芯片一致性处理装置,其特征在于,所述装置包括:
获取单元,用于获取任意芯片发送的一致性请求,所述一致性请求用于请求同步发送一致性请求的芯片与多个第二芯片的数据;
确定单元,用于基于所述一致性请求,确定需要进行同步的目标芯片;
发送单元,用于将所述一致性请求发送至所述目标芯片,以使所述目标芯片根据所述一致性请求同步数据。
10.根据权利要求9所述的装置,其特征在于,所述确定单元具体用于:
基于所述一致性请求,确定所述一致性请求对应的数据地址;
从预先存储的签名表中,确定包含所述数据地址的芯片为目标芯片。
11.根据权利要求10所述的装置,其特征在于,所述确定单元具体用于:
对所述数据地址进行哈希计算,得到所述数据地址对应的哈希值;
将所述哈希值映射在所述签名表中,得到每个芯片的哈希值映射结果;
基于所述哈希值映射结果,确定包含所述数据地址的芯片为目标芯片。
12.根据权利要求10所述的装置,其特征在于,所述确定单元具体用于:
从预先存储的签名表中,确定包含所述数据地址的芯片组;
将所述数据地址发送至所述芯片组对应的中继芯片,以使所述中继芯片根据所述数据地址在所述芯片组中确定包含所述数据地址的目标芯片,所述中继芯片用于根据所述数据地址在预设数量的第二芯片中确定所述目标芯片。
13. 根据权利要求10所述的装置,其特征在于,所述签名表为布隆过滤器BloomFilter或改进型布隆过滤器Counting Bloom Filter。
14.一种电子设备,其特征在于,包括:
存储器;
处理器;以及
计算机程序;
其中,所述计算机程序存储在所述存储器中,并被配置为由所述处理器执行以实现如权利要求4至8中任一所述的芯片一致性处理方法。
15.一种计算机可读存储介质,其上存储有计算机程序指令,其特征在于,当所述计算机程序指令被处理器执行时实现如权利要求4-8中任一项所述的芯片一致性处理方法。
CN202311452479.8A 2023-11-03 2023-11-03 芯片一致性处理系统,及其方法、装置、设备及介质 Active CN117170986B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311452479.8A CN117170986B (zh) 2023-11-03 2023-11-03 芯片一致性处理系统,及其方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311452479.8A CN117170986B (zh) 2023-11-03 2023-11-03 芯片一致性处理系统,及其方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN117170986A CN117170986A (zh) 2023-12-05
CN117170986B true CN117170986B (zh) 2024-02-06

Family

ID=88932145

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311452479.8A Active CN117170986B (zh) 2023-11-03 2023-11-03 芯片一致性处理系统,及其方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN117170986B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101794271A (zh) * 2010-03-31 2010-08-04 华为技术有限公司 多核内存一致性的实现方法和装置
CN103440223A (zh) * 2013-08-29 2013-12-11 西安电子科技大学 一种实现高速缓存一致性协议的分层系统及其方法
CN104699654A (zh) * 2015-03-02 2015-06-10 福州瑞芯微电子有限公司 一种基于chi片内互联总线与qpi片间互联总线互联适配系统和方法
US9715470B1 (en) * 2016-09-26 2017-07-25 International Business Machines Corporation Direct memory access between an accelerator and a processor using a coherency adapter
CN108573016A (zh) * 2017-12-25 2018-09-25 北京金山云网络技术有限公司 一种数据一致性检查方法、装置、设备和存储介质
CN114564435A (zh) * 2022-02-25 2022-05-31 中国农业银行股份有限公司 异构多核芯片的核间通信方法、装置及介质
CN116361235A (zh) * 2023-02-15 2023-06-30 芯至科技(上海)有限公司 多核处理器同步方法、装置及多核处理器

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101794271A (zh) * 2010-03-31 2010-08-04 华为技术有限公司 多核内存一致性的实现方法和装置
CN103440223A (zh) * 2013-08-29 2013-12-11 西安电子科技大学 一种实现高速缓存一致性协议的分层系统及其方法
CN104699654A (zh) * 2015-03-02 2015-06-10 福州瑞芯微电子有限公司 一种基于chi片内互联总线与qpi片间互联总线互联适配系统和方法
US9715470B1 (en) * 2016-09-26 2017-07-25 International Business Machines Corporation Direct memory access between an accelerator and a processor using a coherency adapter
CN108573016A (zh) * 2017-12-25 2018-09-25 北京金山云网络技术有限公司 一种数据一致性检查方法、装置、设备和存储介质
CN114564435A (zh) * 2022-02-25 2022-05-31 中国农业银行股份有限公司 异构多核芯片的核间通信方法、装置及介质
CN116361235A (zh) * 2023-02-15 2023-06-30 芯至科技(上海)有限公司 多核处理器同步方法、装置及多核处理器

Also Published As

Publication number Publication date
CN117170986A (zh) 2023-12-05

Similar Documents

Publication Publication Date Title
CN102906726B (zh) 协处理加速方法、装置及系统
CN111580974B (zh) Gpu实例分配方法、装置、电子设备和计算机可读介质
CN112418389A (zh) 数据处理方法、装置、电子设备及计算机可读存储介质
CN114840339A (zh) Gpu服务器、数据计算方法及电子设备
CN112182374B (zh) 库存控制方法、装置、电子设备和计算机可读介质
CN111680791B (zh) 适用于异构环境中的通信方法、装置、系统
CN111596992B (zh) 导航栏展示方法、装置和电子设备
CN111262907B (zh) 服务实例访问方法、装置和电子设备
CN117170986B (zh) 芯片一致性处理系统,及其方法、装置、设备及介质
CN116594568A (zh) 一种数据存储方法、装置、电子设备及存储介质
CN111756833B (zh) 节点处理方法、装置、电子设备及计算机可读介质
JP2023031248A (ja) エッジコンピューティングネットワーク、データ伝送方法、装置、機器、及び記憶媒体
CN112346870B (zh) 模型处理方法及系统
CN112416887B (zh) 信息交互方法、装置和电子设备
CN111680754B (zh) 图像分类方法、装置、电子设备及计算机可读存储介质
CN114095907A (zh) 蓝牙连接的控制方法、装置及设备
CN114785770A (zh) 镜像层文件发送方法、装置、电子设备和计算机可读介质
CN113064704A (zh) 任务处理方法、装置、电子设备和计算机可读介质
CN111580890A (zh) 用于处理特征的方法、装置、电子设备和计算机可读介质
CN113342837B (zh) 数据发送方法、装置、电子设备和计算机可读介质
CN116755889B (zh) 应用于服务器集群数据交互的数据加速方法、装置与设备
CN114928862B (zh) 基于任务卸载和服务缓存的系统开销降低方法及系统
CN115993942B (zh) 数据缓存方法、装置、电子设备和计算机可读介质
CN113791908B (zh) 服务运行方法、装置和电子设备
US20240028518A1 (en) Performance and reliability of processor store operation data transfers

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant