CN116992814A - 一种芯片和电子设备 - Google Patents
一种芯片和电子设备 Download PDFInfo
- Publication number
- CN116992814A CN116992814A CN202310968380.7A CN202310968380A CN116992814A CN 116992814 A CN116992814 A CN 116992814A CN 202310968380 A CN202310968380 A CN 202310968380A CN 116992814 A CN116992814 A CN 116992814A
- Authority
- CN
- China
- Prior art keywords
- dram
- chip
- resource
- circuit
- fault
- 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.)
- Pending
Links
- 238000012360 testing method Methods 0.000 claims abstract description 50
- 230000002159 abnormal effect Effects 0.000 claims abstract description 11
- 239000008187 granular material Substances 0.000 claims description 13
- 230000002950 deficient Effects 0.000 claims description 11
- 238000000034 method Methods 0.000 claims description 9
- 230000008569 process Effects 0.000 claims description 5
- 230000001360 synchronised effect Effects 0.000 claims description 4
- 238000013461 design Methods 0.000 abstract description 5
- 102100020800 DNA damage-regulated autophagy modulator protein 1 Human genes 0.000 description 169
- 101000931929 Homo sapiens DNA damage-regulated autophagy modulator protein 1 Proteins 0.000 description 169
- 238000013507 mapping Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 9
- 238000007726 management method Methods 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000002955 isolation Methods 0.000 description 3
- 238000013178 mathematical model Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
本申请实施例提供了一种芯片和电子设备,涉及芯片设计技术领域,芯片包括BMU、BIST电路、NOC电路和DRAM控制器,每个DRAM控制器外接一个DRAM;BIST电路用于对DRAM进行读写测试,以确定故障DRAM资源,将故障DRAM资源对应的故障标识记录在BMU的寄存器中;BMU用于基于故障标识确定故障DRAM资源,从除故障DRAM资源之外的DRAM资源中为访问者分配物理地址;NOC电路用于对除故障DRAM资源之外的其他DRAM资源进行物理地址与逻辑地址之间的映射。如此,某些DRAM出现异常时,其他模块仍然可以访问读写测试正常的DRAM,无需更换整个PCB板,节约了成本。
Description
技术领域
本申请涉及芯片设计技术领域,特别是涉及一种芯片和电子设备。
背景技术
为满足芯片的数据存储需求,且受限于芯片的成本、功耗等需求,通常芯片需要外接高带宽高容量的动态随机存取存储器(Dynamic Random Access Memory,DRAM)。目前,每个芯片可以外接多个DRAM,芯片将数据存储在外接的多个DRAM中。
通常一个芯片以及该芯片外接的多个DRAM被焊接在一个印制电路板(PrintedCircuit Board,PCB)上,当该PCB板上的DRAM出现故障时,需要替换整个PCB板,导致成本比较高。
发明内容
本申请实施例的目的在于提供一种芯片和电子设备,用以解决当PCB板上的DRAM出现故障时,需要替换整个PCB板,导致成本比较高问题。具体技术方案如下:
第一方面,本申请实施例提供一种芯片,所述芯片包括存储管理电路BMU、内部自测BIST电路、片上网络NOC电路和动态随机存取存储器DRAM控制器,所述BMU和所述DRAM控制器均与所述NOC电路连接,每个DRAM控制器外接一个DRAM;
所述BIST电路,用于对所述DRAM进行读写测试,以确定故障DRAM资源,并将所述故障DRAM资源对应的故障标识记录在所述BMU的寄存器中;
所述BMU,用于基于所述故障标识确定故障DRAM资源,在接收到访问者发送的物理地址分配请求时,从除所述故障DRAM资源之外的DRAM资源中为所述访问者分配物理地址;
所述NOC电路,用于对除所述故障DRAM资源之外的其他DRAM资源进行物理地址与逻辑地址之间的映射。
在一种可能的实现方式中,所述芯片中还包括控制CPU;
所述控制CPU,用于在所述芯片上电后,触发所述BIST电路对所述DRAM进行读写测试;或者,
所述控制CPU,用于在接收到异常中断信号后,触发所述BIST电路对所述DRAM进行读写测试,若确定出故障DRAM资源,则对所述芯片进行软复位,所述异常中断信号用于指示DRAM访问异常。
在一种可能的实现方式中,所述控制CPU,还用于从所述BMU的寄存器中读取故障标识,将所述故障标识记录在所述NOC电路的寄存器中;
所述NOC电路,还用于从自身的寄存器中读取所述故障标识,基于所述故障标识确定所述故障DRAM资源。
在一种可能的实现方式中,所述芯片与主机CPU相连;
所述BIST电路,具体用于在所述主机CPU的控制下,对所述DRAM进行读写测试。
在一种可能的实现方式中,所述BIST电路位于所述BMU中;
所述BIST电路,具体用于依次对每个DRAM进行读写测试。
在一种可能的实现方式中,每个DRAM控制器中包括一个BIST电路;
每个DRAM控制器中的BIST电路,具体用于对该DRAM控制器连接的DRAM进行读写测试。
在一种可能的实现方式中,所述DRAM为双倍数据率同步动态随机存取存储器DDR颗粒;
所述BIST电路,具体用于依次对每个DDR颗粒进行读写测试,若确定存在故障的DDR颗粒,则将所述故障DDR颗粒作为故障DRAM资源。
在一种可能的实现方式中,所述DRAM为为高带宽存储器HBM,每个HBM具有多个访问通道,每个访问通道支持访问所述HBM中的部分存储资源;
所述BIST电路,具体用于依次对每个HBM的每个访问通道对应的存储资源进行读写测试,若存在故障的访问通道,则将故障的访问通道对应的存储资源作为所述故障DRAM资源。
第二方面,本申请实施例提供一种电子设备,包括第一方面所述的芯片以及与所述芯片连接的多个DRAM。
在一种可能的实现方式中,所述电子设备还包括主机CPU,所述主机CPU与所述芯片连接。
采用本申请实施例提供的芯片,芯片中包括BIST电路、BMU、NOC电路和DRAM控制器,BIST电路用于对与芯片相连的DRAM进行读写测试,并确定故障DRAM资源,并将故障DRAM资源对应的故障标识记录在BMU的寄存器中。进而BMU在接收到访问者发送的物理地址分配请求时,从除故障DRAM资源之外的DRAM资源中为访问者分配物理地址,即BMU可以将故障DRAM资源隔离。并且NOC电路在进行物理地址和逻辑地址的映射时,将上述故障DRAM资源排除,对除故障DRAM资源之外的其他DRAM资源进行物理地址和逻辑地址的映射,即NOC电路也可以将故障DRAM资源隔离。可见,在存在故障DRAM资源的情况下,通过对故障DRAN资源进行隔离,使得其他DRAM资源可以被正常使用,无需更换整个PCB板,节约了成本。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
图1为本申请实施例提供的第一种芯片的示例性示意图;
图2为本申请实施例提供的一种芯片的结构示意图;
图3为本申请实施例提供的一种NOC电路结构的示例性示意图;
图4为本申请实施例提供的另一种芯片的结构示意图;
图5为本申请实施例提供的又一种芯片的结构示意图;
图6为本申请实施例提供的一种BIST电路结构的示例性示意图;
图7为本申请实施例提供的一种逻辑地址和物理地址映射关系的示例性示意图;
图8为本申请实施例提供的另一种逻辑地址和物理地址映射关系的示例性示意图;
图9为本申请实施例提供的一种BMU资源管理方法的示例性示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本申请所获得的所有其他实施例,都属于本发明保护的范围。
目前,为了满足芯片的存储需求,需要为芯片外挂多个DRAM,如图1所示,图1示例性示出了芯片外挂3个DRAM,在实际实现中,芯片外挂DRAM的数量不限于此。
其中,芯片内部可以包括DRAM控制器,DRAM控制器与DRAM相连,DRAM控制器具有错误检查和纠正(Error Correcting Code,ECC)容错设计。ECC容错设计是指DRAM控制器可以根据预设的ECC算法对DRAM的读写数据进行错误检查和纠正。目前ECC算法通常可以检测1比特和2比特的错误数据,当DRAM的数据出现超过2比特的错误时,DRAM控制器无法通过ECC算法识别。这种情况下,直至芯片所在的设备确定访问DRAM出现异常时,才可确定存在故障的DRAM,但无法确定哪一DRAM出现故障。
芯片以及该芯片外挂的多个DRAM被焊接在一个PCB板上,当出现访问异常的DRAM后,需要人工替换整个PCB板,导致成本比较高。
为了解决上述问题,本申请实施例提供一种芯片,如图2所示,芯片10包括存储管理电路(Buffer Management Unit,BMU)101、内部自测电路(Built-In Self-Test)BIST电路102、片上网络(Network-on-Chip,NOC)电路103和DRAM控制器104,BMU101和DRAM控制器104均与NOC电路103连接,每个DRAM控制器104外接一个DRAM20。
BIST电路102,用于对DRAM20进行读写测试,以确定故障DRAM资源,并将故障DRAM资源对应的故障标识记录在BMU101的寄存器中。
BIST电路102对每个DRAM20进行读写测试后,可以得到每个DRAM20的读写测试结果,然后将异常的读写测试结果对应的DRAM资源,确定为故障DRAM资源。
BMU101,用于基于故障标识确定故障DRAM资源,在接收到访问者发送的物理地址分配请求时,从除故障DRAM资源之外的DRAM资源中为访问者分配物理地址。
其中,访问者为申请访问DRAM资源的模块。
NOC电路103,用于对除故障DRAM资源之外的其他DRAM资源进行物理地址与逻辑地址之间的映射。
NOC电路103是一种通用的片上互联结构,是芯片内部用于模块之间互联的电路,可以实现多个模块对多个资源的共享。
在本申请实施例中,多个模块可通过NOC电路103访问DRAM资源,NOC电路103可以实现DRAM资源访问过程中的地址解析以及多用户访问仲裁。
上述多个模块可以为主机CPU、直接内存访问(Direct Memory Access,DMA)模块以及标准高速串行计算机扩展总线(Peripheral Component Interconnect Express,PCIE)接口等任意可以访问DRAM20的模块,本申请实施例对此不作限定。
NOC电路103可以为除故障DRAM资源之外的其他DRAM资源对应的物理地址分配逻辑地址,完成物理地址与逻辑地址的映射。
可以理解的,上述多个模块中的任一模块请求访问DRAM资源时,访问请求中携带有逻辑地址或物理地址。若访问请求中携带的是物理地址,则NOC电路103可透传该访问请求;若访问请求中携带有逻辑地址,因NOC电路103存储有逻辑地址和物理地址的映射关系,NOC电路103可以根据该映射关系完成地址解析,以确定该模块请求访问的DRAM资源的物理地址。由于NOC电路103进行逻辑地址与物理地址之间的映射时,未对故障DRAM资源进行映射,因此各访问者不会访问到故障DRAM资源,尽可能避免了访问异常的情况出现,提高了芯片的稳定性与容错性。
采用本申请实施例提供的芯片,芯片中包括BIST电路、BMU、NOC电路和DRAM控制器,BIST电路用于对与芯片相连的DRAM进行读写测试,并确定故障DRAM资源,并将故障DRAM资源对应的故障标识记录在BMU的寄存器中。进而BMU在接收到访问者发送的物理地址分配请求时,从除故障DRAM资源之外的DRAM资源中为访问者分配物理地址,即BMU可以将故障DRAM资源隔离。并且NOC电路在进行物理地址和逻辑地址的映射时,将上述故障DRAM资源排除,对除故障DRAM资源之外的其他DRAM资源进行物理地址和逻辑地址的映射,即NOC电路也可以将故障DRAM资源隔离。可见,在存在故障DRAM资源的情况下,通过对故障DRAN资源进行隔离,使得其他DRAM资源可以被正常使用,无需更换整个PCB板,节约了成本。
如图3所示,NOC电路103包括地址解析模块1031和仲裁器1032,且NOC电路103可以连接多个主机105和多个从机106。
其中,主机105和从机106均为通过NOC电路互连的模块,主机105为需要通过NOC电路103访问DRAM资源的模块,从机106为需要接收NOC电路103传递的资源的模块。可以理解的是,同一个模块既可以作为主机105也可以作为从机106。在本申请实施例中以主机105和从机106均位于芯片10内部为例,在实际实现中,主机105和从机106也可以为芯片10外部的模块,例如主机CPU。
其中,主机105可以向NOC电路103发送DRAM访问请求。
地址解析模块1301,用于对主机105发送的DRAM访问请求携带的逻辑地址进行地址解析,以得到该逻辑地址对应的物理地址,然后使得主机105可以访问解析得到的物理地址对应的DRAM资源。
仲裁器1302,用于在接收到来自多个主机105发送的DRAM访问请求时,对多个主机105进行仲裁,以确定多个主机105的访问顺序。
本申请实施例中,NOC电路103可以将逻辑地址映射到除故障DRAM资源之外的其他DRAM资源对应的物理地址上,实现了对故障DRAM资源的隔离。因此,当PCB板上的某些DRAM出现异常时,PCB板上的各模块仍然可以通过NOC电路访问未故障的DRAM,而不会访问到故障DRAM资源,能够正常进行数据的读写,提升了芯片的稳定性和容错性,并且无需更换整个PCB板,节约了成本。
在本申请的一些实施例中,如图4所示,芯片10中还包括控制CPU107。
在一种实施方式中,控制CPU107,用于在芯片10上电后,触发BIST电路102对DRAM20进行读写测试。
在另一种实施方式中,在控制CPU107接收到异常中断信号后,存在以下两种情况,控制CPU107可以触发BIST电路102对DRAM20进行读写测试:
情况1、在控制CPU107接收到异常中断信号后,可以上报给芯片10所在的设备,进而使得用户获知存在访问异常的DRAM资源。然后控制CPU107在接收到用户触发的芯片重启指令时,对芯片10进行重启,在芯片10上电后,控制CPU107触发BIST电路102对DRAM20进行读写测试。
情况2、控制CPU107,用于在接收到异常中断信号后,触发BIST电路102对DRAM20进行读写测试,若确定出故障DRAM资源,则对芯片进行软复位,异常中断信号用于指示DRAM20访问异常。
在控制CPU107接收到异常中断信号后,无需人工参与,即控制CPU107触发BIST电路102对DRAM20进行读写测试。若通过读写测试确定存在访问异常的DRAM资源,则BIST电路102将故障DRAM资源的故障标识记录在BMU101的寄存器中,并对芯片10进行软复位。
其中,软复位是指对芯片包括的各模块的软件层面进行复位。
需要说明的是,控制CPU107在进行软复位前,需将芯片10设置为仅CPU模式(CPUonly mode)。在该模式下,只有控制CPU107可以访问NOC电路103,如此可以避免其他模块继续访问故障DRAM资源。在完成软复位后,NOC电路103也已完成对除故障DRAM资源之外的其他DRAM资源进行物理地址与逻辑地址之间的映射,如此,可以避免其他模块后续继续访问故障DRAM资源,实现了对故障DRAM资源的隔离。
在本申请的一些实施例中,控制CPU107,还用于从BMU101的寄存器中读取故障标识,将故障标识记录在NOC电路103的寄存器中。
NOC电路103,还用于从自身的寄存器中读取故障标识,基于故障标识确定故障DRAM资源。
可以理解的,在控制CPU107对芯片10进行软复位之后,NOC电路103可以基于NOC电路103的寄存器中存储的故障标识,对除故障DRAM资源之外的其他DRAM资源进行物理地址与逻辑地址之间的映射,并覆盖原有的物理地址与逻辑地址之间的映射。进而,芯片10完成软复位后,则不会访问到故障DRAM资源。
在本申请的一些实施例中,如图5所示,芯片10与主机CPU30相连,即本申请实施例中还可以由主机CPU30触发BIST电路102。其中,主机CPU30是指芯片10所属电子设备的CPU。
BIST电路102,具体用于在主机CPU30的控制下,对DRAM20进行读写测试。
在一种实施方式中,主机CPU30,用于在芯片10上电后,触发BIST电路102对DRAM20进行读写测试。
另一实施方式中,在主机CPU30接收到异常中断信号后,存在以下两种情况,主机CPU30可以触发BIST电路102对DRAM20进行读写测试:
情况1、在主机CPU30接收到异常中断信号后,可以上报给主机CPU30所在设备的软件系统,进而使得用户获知存在访问异常的DRAM资源。然后在接收到用户触发的芯片重启指令时,对芯片10进行重启,在芯片10上电后,主机CPU30触发BIST电路102对DRAM20进行读写测试。
情况2、在主机CPU30接收到异常中断信号后,无需人工参与,即主机CPU30触发BIST电路102对每个DRAM20进行读写测试。若通过读写测试确定存在访问异常的DRAM资源,则BISR电路102将故障DRAM资源的故障标识记录在BMU101的寄存器中,并对芯片10进行软复位。且主机CPU30可以从BMU101的寄存器中读取故障标识,并将故障标识写入NOC电路103的寄存器中。
后续NOC电路103可以基于寄存器中存储的故障标识,对除故障DRAM资源之外的其他DRAM资源进行物理地址与逻辑地址之间的映射,并覆盖原有的物理地址与逻辑地址之间的映射。
需要说明的是,主机CPU30在对芯片10进行软复位前,需将芯片10设置为仅CPU模式(CPU only mode)。在该模式下,只有主机CPU30可以访问NOC电路103,如此可以避免其他模块继续访问故障DRAM资源。在完成软复位后,NOC电路103也已完成对除故障DRAM资源之外的其他DRAM资源进行物理地址与逻辑地址之间的映射,如此,可以避免其他模块后续继续访问故障DRAM资源,实现了对故障DRAM资源的隔离。
在本申请的一些实施例中,BIST电路102可以设置在DRAM控制器104或者BMU101中,具体包括两种实现方式:
实现方式1、芯片10可以包括一个BIST电路102,该BIST电路102位于BMU101中。
BIST电路102,具体用于依次对每个DRAM20进行读写测试。由于芯片10的硬件资源稀缺,仅利用一个BIST电路102就可以完成对每个DRAM20的读写测试,可以节约芯片10的硬件资源。
在上述实施例的基础上,DRAM20可以为双倍数据率同步动态随机存取存储器(Double Data Rate Synchronous Dynamic Random Access Memory,DDR SDRAM),也可以为高带宽存储器(High Bandwidth Memory,HBM)。通常将DDR SDRAM称为DDR颗粒。
其中,每个HBM具有多个访问通道,每个访问通道支持访问HBM中的部分存储资源。
当DRAM20为DDR颗粒时,BIST电路102,具体用于依次对每个DDR颗粒进行读写测试,若确定存在故障的DDR颗粒,则将故障DDR颗粒作为故障DRAM资源。
当DRAM20为HBM时,BIST电路102,具体用于依次对每个HBM的每个访问通道对应的存储资源进行读写测试,若存在故障的访问通道,则将故障的访问通道对应的存储资源作为故障DRAM资源。
实现方式2、每个DRAM控制器104中包括一个BIST电路102。
每个DRAM控制器104中的BIST电路102,用于对该DRAM控制器104连接的DRAM20进行读写测试。如此,在每个DRAM控制器104中设置BIST电路102,可以并行的对每个DRAM20进行读写测试,可以提高读写测试速度。
针对上述实施例中的BIST电路102,如图6所示,BIST电路102具体包括BIST档案(BIST profile)1021、BIST有限状态机(BIST Finite State Automata,BIST FSM)1022、以及存储访问接口1023。
其中,BIST profile1021中存储有不同的数学模型,以及预先为不同生产工艺、设计和使用场景中的DRAM20配置的数学模型。
BIST FSM1022,用于根据BIST profile1021中存储的数学模型,实现对DRAM20的读写测试以及数据比对,根据读写测试结果以及数据比对结果确定是否存在故障DRAM资源,并将故障DRAM资源对应的故障标识记录在BMU101的寄存器中。
BIST FSM1022可以通过存储访问接口1023访问DRAM20,实现对DRAM20的读写测试。
在上述实施例基础上,在确定故障DRAM资源后,NOC电路103需要对除故障DRAM资源之外的其他DRAM资源进行物理地址与逻辑地址之间的映射。
具体的,NOC电路103在进行物理地址和逻辑地址的映射时,需要参考以下维度:颗粒(Device)、每个颗粒支持的内存库(Bank)数量、每个Bank中的行(Row)地址、以及每个Bank中的列地址,列地址可以用行地址的偏移量(Offset)表示。其中,Device用于表示DRAM。
以16个2GB的Device为例,Device的编号为0至15,Bank的数量根据Device的位宽和Device的容量计算得到。本申请实施例中,Bank的数量为16,编号为0至15,Row的大小为1K字节(Byte)。如图7所示,图7示例性示出了逻辑地址和物理地址的映射关系,图7最上方的0至34表示35个字节。
其中,BMU101提供了32GB的连续逻辑地址(Logic address),在图7中表示为Addr[34:0]。物理地址(Physics address)包括如下字段:
Device[3:0],长度为4字节,用于表示Device编号;
Bank[8:0]:长度为4字节,用于表示Bank编号;
Row[9:0]:长度为10字节,用于表示行地址;
Offset[8:0]:长度为9字节,用于表示列地址在行地址中的偏移量;
Offset[7:0]:长度为8字节,也用于表示列地址在行地址中的偏移量。
需要说明的是,图7中的Offset[8:0]占用第22至第30字节,Offset[7:0]占用第0至第7字节,均用于存储列地址在行地址的偏移量,即Offset字段总共需要占用17个字节,图7中以将Offset字段存储在两个不同位置为例,实际实现中,也可以为Offset字段分配连续的空间,例如,可以使得Offset[16:0]占用图7中的第0至第16字节。
当芯片10外挂的多个DRAM20中存在访问异常的DRAM资源时,NOC电路103可以通过以下方式进行物理地址和逻辑地址的映射,如图8所示。
假设Device的编号为0至15,共16个Device。
在Device中不存在故障DRAM资源的情况下,正常颗粒(Normal Device)的编号在逻辑地址中从最低位到最高位的排列顺序为从0至15,如图8中第二行所示。
在Device中存在故障DRAM资源的情况下,假设故障DRAM资源对应的Device的编号为6,NOC电路103对Normal Device中编号为0-5以及编号为7-15的Device进行物理地址和逻辑地址的映射。
其中,编号为0-5的重映射颗粒(Remap Device)和编号为0-5的Normal Device在逻辑地址中的排列顺序相同。NOC电路103将Normal Device中编号为7的Device的物理地址重映射到Normal Device中编号为6的Device原本对应的逻辑地址上,将Normal Device中编号为8的Device的物理地址重映射到Normal Device中编号为7的Device原本对应的逻辑地址上,以此类推,直至完成除故障DRAM资源之外的其他DRAM资源的物理地址和逻辑地址之间的映射,如图8中第三行所示。如此,可以将未发生故障的颗粒转换为30GB的连续逻辑地址空间。
需要说明的是,上述重映射方式仅作为示例,本申请实施例对重映射方式不做具体限定。
在芯片10外挂的DRAM20存在故障DRAM资源的情况下,在NOC电路103完成对除故障DRAM资源之外的其他DRAM资源进行物理地址和逻辑地址的映射后,PCB板上的各模块可以访问芯片10外挂的正常DRAM,以使得包括上述芯片和DRAM的设备可以在检测到故障DRAM资源的情况下,继续正常工作,提高了设备的稳定性和容错性。
BMU101可以维护DRAM资源的使用情况,如图9所示,图9示例性示出了BMU101与x个DRAM连接,且与6个需要访问DRAM资源的模块连接,分别为模块1-6。BMU101可以为每一块独立的DRAM资源建立资源池,例如可以分别建立DRAM1至DRAMx的资源池。
当任一模块申请的资源为离散资源时,例如若任一模块需要存储报文,则需申请离散资源,则需要先向BMU101发起资源请求,即物理地址分配请求。
具体的,当任意一个模块,例如模块1向BMU101发起资源请求后,BMU101可以对模块1发起的资源请求进行申请资源仲裁,然后BMU101确定向模块1返回的资源。具体的,BMU101可以根据均衡策略以及模块1需要的资源大小,从仲裁得到的DRAM的资源池中选取资源并将选取的资源的物理地址返回给模块1。进而模块1可以利用BMU101返回的物理地址进行数据的读写。
其中,该物理地址可以为DRAM中的一段地址,或者为DRAM中一个可用的地址块的首地址。
相应的,当任意一个模块,例如模块4不再需要申请到的资源时,可以向BMU101申请资源返还,BMU101对模块4申请返还的资源进行回收资源仲裁,确定模块4返还的资源对应的资源池,然后将模块4返还的资源回收到对应的DRAM的资源池中。
基于相同的构思,本申请实施例还提供一种电子设备,该电子设备包括上述实施例中介绍的芯片10,以及芯片连接的多个DRAM20。
可选地,电子设备还包括主机CPU30,主机CPU30与芯片10连接。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种芯片,其特征在于,所述芯片包括存储管理电路BMU、内部自测BIST电路、片上网络NOC电路和动态随机存取存储器DRAM控制器,所述BMU和所述DRAM控制器均与所述NOC电路连接,每个DRAM控制器外接一个DRAM;
所述BIST电路,用于对所述DRAM进行读写测试,以确定故障DRAM资源,并将所述故障DRAM资源对应的故障标识记录在所述BMU的寄存器中;
所述BMU,用于基于所述故障标识确定故障DRAM资源,在接收到访问者发送的物理地址分配请求时,从除所述故障DRAM资源之外的DRAM资源中为所述访问者分配物理地址;
所述NOC电路,用于对除所述故障DRAM资源之外的其他DRAM资源进行物理地址与逻辑地址之间的映射。
2.根据权利要求1所述的芯片,其特征在于,所述芯片中还包括控制CPU;
所述控制CPU,用于在所述芯片上电后,触发所述BIST电路对所述DRAM进行读写测试;或者,
所述控制CPU,用于在接收到异常中断信号后,触发所述BIST电路对所述DRAM进行读写测试,若确定出故障DRAM资源,则对所述芯片进行软复位,所述异常中断信号用于指示DRAM访问异常。
3.根据权利要求2所述的芯片,其特征在于,
所述控制CPU,还用于从所述BMU的寄存器中读取故障标识,将所述故障标识记录在所述NOC电路的寄存器中;
所述NOC电路,还用于从自身的寄存器中读取所述故障标识,基于所述故障标识确定所述故障DRAM资源。
4.根据权利要求1所述的芯片,其特征在于,所述芯片与主机CPU相连;
所述BIST电路,具体用于在所述主机CPU的控制下,对所述DRAM进行读写测试。
5.根据权利要求1-4任一项所述的芯片,其特征在于,所述BIST电路位于所述BMU中;
所述BIST电路,具体用于依次对每个DRAM进行读写测试。
6.根据权利要求1-4任一项所述的芯片,其特征在于,每个DRAM控制器中包括一个BIST电路;
每个DRAM控制器中的BIST电路,具体用于对该DRAM控制器连接的DRAM进行读写测试。
7.根据权利要求5所述的芯片,其特征在于,所述DRAM为双倍数据率同步动态随机存取存储器DDR颗粒;
所述BIST电路,具体用于依次对每个DDR颗粒进行读写测试,若确定存在故障的DDR颗粒,则将所述故障DDR颗粒作为故障DRAM资源。
8.根据权利要求5所述的芯片,其特征在于,所述DRAM为高带宽存储器HBM,每个HBM具有多个访问通道,每个访问通道支持访问一个HBM中的部分存储资源;
所述BIST电路,具体用于依次对每个HBM的每个访问通道对应的存储资源进行读写测试,若存在故障的访问通道,则将故障的访问通道对应的存储资源作为所述故障DRAM资源。
9.一种电子设备,其特征在于,包括权利要求1-8任一所述的芯片以及与所述芯片连接的多个DRAM。
10.根据权利要求9所述的电子设备,其特征在于,所述电子设备还包括主机CPU,所述主机CPU与所述芯片连接。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310968380.7A CN116992814A (zh) | 2023-08-02 | 2023-08-02 | 一种芯片和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310968380.7A CN116992814A (zh) | 2023-08-02 | 2023-08-02 | 一种芯片和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116992814A true CN116992814A (zh) | 2023-11-03 |
Family
ID=88533459
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310968380.7A Pending CN116992814A (zh) | 2023-08-02 | 2023-08-02 | 一种芯片和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116992814A (zh) |
-
2023
- 2023-08-02 CN CN202310968380.7A patent/CN116992814A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7121875B1 (ja) | パーシステントメモリシステム等のデータ完全性 | |
JP5327484B2 (ja) | 大容量/高帯域幅メモリデバイスを修復するための方法および装置 | |
TWI446353B (zh) | 在堆疊式記憶體中之錯誤校正 | |
JP5874119B2 (ja) | Dramをスタックする方法及び装置 | |
US8024638B2 (en) | Apparatus and method for memory read-refresh, scrubbing and variable-rate refresh | |
US7478285B2 (en) | Generation and use of system level defect tables for main memory | |
US8745323B2 (en) | System and method for controller independent faulty memory replacement | |
US7246269B1 (en) | Efficient memory check architecture and method | |
US11314590B2 (en) | Memory device for detecting a defective memory chip | |
KR20130050362A (ko) | 어드레스 스와핑을 통한 동적 물리적 메모리 대체 | |
ITRM940602A1 (it) | Architettura di memoria per dischi a stato solido | |
KR20160143744A (ko) | 로컬 메모리를 갖는 제어기를 가진 메모리 디바이스 | |
KR20160122483A (ko) | 메모리 시스템, 메모리 모듈 및 메모리 모듈의 동작 방법 | |
CN111566738B (zh) | 存储器系统中的有效和选择性的备用位 | |
US11797369B2 (en) | Error reporting for non-volatile memory modules | |
CN110765032A (zh) | 基于系统管理总线接口对i2c存储器进行读写的方法 | |
US8819353B2 (en) | Host bus adapters with shared memory and battery backup | |
US9442658B2 (en) | Apparatuses and methods including selectively providing a single or separate chip select signals | |
US20240013851A1 (en) | Data line (dq) sparing with adaptive error correction coding (ecc) mode switching | |
US20030051193A1 (en) | Computer system with improved error detection | |
CN116992814A (zh) | 一种芯片和电子设备 | |
KR20230121611A (ko) | 시스템 메모리 신뢰성, 가용성 및 서비스 가능성(ras)을개선하기 위한 적응형 오류 정정 | |
JPH02105241A (ja) | メモリ故障検出回路 |
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 |