CN115114200B - 一种多芯片系统及基于其的启动方法 - Google Patents
一种多芯片系统及基于其的启动方法 Download PDFInfo
- Publication number
- CN115114200B CN115114200B CN202210755901.6A CN202210755901A CN115114200B CN 115114200 B CN115114200 B CN 115114200B CN 202210755901 A CN202210755901 A CN 202210755901A CN 115114200 B CN115114200 B CN 115114200B
- Authority
- CN
- China
- Prior art keywords
- chip
- storage device
- firmware
- speed storage
- slave
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 19
- 238000011068 loading method Methods 0.000 claims abstract description 43
- 230000005540 biological transmission Effects 0.000 abstract description 17
- 230000008901 benefit Effects 0.000 abstract description 8
- 238000004891 communication Methods 0.000 description 13
- 238000010586 diagram Methods 0.000 description 12
- 238000012546 transfer Methods 0.000 description 8
- 230000008859 change Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000003993 interaction Effects 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000013139 quantization Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
- G06F21/575—Secure boot
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种多芯片系统及基于其的启动方法,该多芯片系统通过设置接入芯片互连总线的高速存储装置,固件存储装置中存储有所有芯片都使用的相同固件的场景下,主芯片只需要访问低速的固件存储装置一次,将该相同固件从固件存储装置加载到高速存储装置,使主芯片和其他从芯片都使用芯片互连总线从高速存储装置中加载该相同固件。本申请的方案优化为使用芯片互连总线从高速存储装置中加载相同固件,将从固件存储装置中读取数据的读取速率从100Mbps量级,提高到了10Gbps量级,利用芯片与共享的高速存储装置之间的传输速率是低速的固件存储装置访问速率的100倍以上优点,极大的缩短每个芯片加载相同固件的时间,能够大幅缩短整个系统的安全启动时间。
Description
技术领域
本发明涉及芯片技术领域,尤其涉及一种多芯片系统及基于其的启动方法。
背景技术
在启动流程中,其中一步是加载基础固件的过程,该过程在多芯片启动过程中较为关键,对于芯片数目较多的场景,基础固件的加载方法直接影响系统的启动时间。即如何快速为多个芯片加载固件,是多芯片启动的关键问题。现有关于主板和多芯片结构的设计方式中,出于主板设计的成本和简单性的考虑,业界常识是在仅在主板上设计一个固件存储装置(通常是Flash,快闪存储器)。关于多芯片结构与固件存储装置的连接方式可以总结为两类。其中一类(简称方案a)为:只有一个芯片与Flash连接,该芯片作为主芯片,负责接收从芯片的读写请求,代理其固件存储装置的数据访问。另一类(简称方案b)为:各个芯片均与Flash连接,各个芯片可以依次独自访问固件存储装置获取数据。由于固件存储装置通常使用低速串行的SPI(Serial Peripheral Interface,串行外设接口)接口(速率在100Mbps量级),而芯片间Link(互连)通常使用的是高速接口(速率在10Gbps量级以上),因此方案a与方案b的固件加载效率相当,都约等于总共从固件存储装置中读取出所有固件数据的时间。对于多芯片结构中的多芯片使用不同固件的场景,受限于必须要从固件存储装置中读取出所有固件数据,上述方案a和方案b均是合理的。而对于多芯片结构中的多芯片使用相同固件的场景,方案a和方案b由于需要从固件存储装置中重复多次读取相同固件,当芯片数目较多时,会严重影响系统的启动时间。
发明内容
本发明提供了一种多芯片系统及基于其的启动方法,在针对多个芯片使用相同固件的多芯片场景下,能够有效缩短整个系统的安全启动时间。
第一方面,本发明提供了一种多芯片系统,该多芯片系统包括电路板,在电路板上设置有固件存储装置和至少两个芯片。至少两个芯片通过芯片互连总线互连,至少两个芯片包括一个主芯片和其他的从芯片;其中,主芯片与固件存储装置直接连接,每个从芯片均直接连接主芯片或通过其他的从芯片间接连接主芯片。该多芯片系统还包括接入芯片互连总线的高速存储装置。固件存储装置中存储有至少两个芯片均使用的相同固件,相同固件能够被主芯片从固件存储装置加载到高速存储装置中,且相同固件还能够从高速存储装置加载到每个芯片中。
在上述的方案中,通过设置接入芯片互连总线的高速存储装置,在固件存储装置中存储有所有芯片都使用的相同固件的场景下,主芯片只需要访问低速的固件存储装置一次,将该相同固件从固件存储装置加载到高速存储装置,使该主芯片和其他的从芯片都使用芯片互连总线从高速存储装置中加载该相同固件。相比现有技术中多个芯片都通过芯片互连总线从固件存储装置中多次重复读取该相同固件相比,本申请的方案优化为使用芯片互连总线从高速存储装置中加载相同固件,将从固件存储装置中读取数据的读取速率从100Mbps量级,提高到了10Gbps量级,利用芯片与共享的高速存储装置之间的传输速率是低速的固件存储装置访问速率的100倍以上优点,极大的缩短每个芯片加载相同固件的时间。即在针对多个芯片使用相同固件的多芯片场景下,本申请的方案能够有效缩短整个系统的安全启动时间。由于处理器领域中的多芯片结构无论是同构结构还是异构结构,整个系统都存在大量相同的芯片,相同的芯片由于初始化流程类似,通常使用相同固件。在将该方案应用到处理器领域的多芯片结构时,能够大幅缩短整个系统的安全启动时间。
在一个具体的实施方式中,每个芯片中均内置各个芯片私有的私有高速存储装置。高速存储装置内置于主芯片内的私有高速存储装置中,以使主芯片能够将相同固件从固件存储装置加载到高速存储装置中。通过将高速存储装置内置于主芯片的私有高速存储装置中,使用主芯片的内存即可实现,无需设置额外的高速存储装置,简化结构,便于设置。
在一个具体的实施方式中,每个从芯片中还均内置有与私有高速存储装置连接的区域权限管理模块。区域权限管理模块用于在设定时间段放开每个从芯片中私有高速存储装置的访问权限,以使主芯片或该从芯片之外的其他从芯片,将相同固件加载到该从芯片的私有高速存储装置中。通过设置区域权限管理模块,提高从芯片的安全性,防止主芯片误删误改从芯片的私有高速存储装置中的数据。
在一个具体的实施方式中,设定时间段位于主芯片将相同固件从固件存储装置加载到高速存储装置之后。每个从芯片中还均内置有状态寄存器;每个从芯片中的区域权限管理模块放开该从芯片中的私有高速存储装置的访问权限之后,将状态寄存器写为第一状态。主芯片或该从芯片之外的其他从芯片还用于读取该从芯片中的状态寄存器,并在读取到该从芯片的状态寄存器处于第一状态时,将相同固件加载到该从芯片的私有高速存储装置中,之后将该从芯片的状态寄存器改写为第二状态。通过设置状态寄存器,便于主芯片获知是否能够向每个从芯片的私有存储装置中加载该相同固件。
在一个具体的实施方式中,区域权限管理模块在设定时间段放开每个从芯片中私有高速存储装置的设定存储区域的访问权限,以使主芯片或该从芯片之外的其他从芯片,将相同固件加载到该从芯片中私有高速存储装置的设定存储区域中。通过在每个从芯片的私有高速存储装置中划分出一设定存储区域,作为接收相同固件的存储区域,区域权限管理模块只需放开该设定存储区域的访问权限即可完成相同固件的正常加载,进一步防止主芯片误删误改从芯片的私有高速存储装置中的数据,提高从芯片的安全性。
在一个具体的实施方式中,主芯片中还内置有与私有高速存储装置连接的区域权限管理模块。区域权限管理模块用于在设定时间段放开主芯片中私有高速存储装置的访问权限,以使每个从芯片通过访问主芯片的私有高速存储装置,将相同固件从主芯片的私有高速存储装置加载到每个从芯片的私有高速存储装置中。通过设置区域权限管理模块,提高主芯片的安全性,防止从芯片误删误改主芯片的私有高速存储装置中的数据。
在一个具体的实施方式中,设定时间段位于主芯片将相同固件从固件存储装置加载到高速存储装置之后。主芯片中还内置有状态寄存器;主芯片中的区域权限管理模块放开主芯片中的私有高速存储装置的访问权限之后,将状态寄存器写为第一状态。每个从芯片还用于读取状态寄存器,并在读取到状态寄存器处于第一状态时,访问主芯片的私有高速存储装置,将相同固件从主芯片的私有高速存储装置加载到每个从芯片的私有高速存储装置中;在相同固件被加载到所有的从芯片的私有高速存储装置中之后,状态寄存器被改写为第二状态。通过设置状态寄存器,便于从芯片获知是否能够从主芯片的私有存储装置加载该相同固件。
在一个具体的实施方式中,高速存储装置为主芯片中私有高速存储装置的设定存储区域。区域权限管理模块在设定时间段放开主芯片中私有高速存储装置的设定存储区域的访问权限,以使每个从芯片通过访问主芯片的设定存储区域,将相同固件从主芯片的设定存储区域加载到每个从芯片的私有高速存储装置中。通过在主芯片的私有高速存储装置中划分出一设定存储区域,作为接收相同固件的存储区域,区域权限管理模块只需放开该设定存储区域的访问权限即可使从芯片针对相同固件的正常加载,进一步防止从芯片误删误改主芯片的私有高速存储装置中的数据,提高主芯片的安全性。
在一个具体的实施方式中,每个芯片中还均内置有与私有高速存储装置连接的区域权限管理模块。区域权限管理模块用于在设定时间段放开各个芯片中私有高速存储装置的访问权限,以使每个从芯片通过访问主芯片或其他从芯片的私有高速存储装置,将相同固件从主芯片或其他从芯片的私有高速存储装置,加载到该从芯片的私有高速存储装置中。通过在主芯片和从芯片的每个芯片中均设置区域权限管理模块,提高主芯片和从芯片的安全性,防止其他的芯片误删误改某个芯片中私有高速存储装置中的数据。
在一个具体的实施方式中,每个芯片中均内置各个芯片私有的私有高速存储装置;主芯片中还内置有各个从芯片能够共享访问的共享高速存储装置,高速存储装置为该共享高速存储装置。主芯片用于将相同固件从固件存储装置加载到共享高速存储装置中。主芯片和每个从芯片均通过访问共享高速存储装置,将相同固件从共享高速存储装置加载到各个芯片的私有高速存储装置中。通过将高速存储装置内置于主芯片内且位于私有高速存储装置之外,便于主芯片将相同固件从固件存储装置加载到高速存储装置中,也便于从芯片访问高速存储装置。
在一个具体的实施方式中,主芯片中还内置有状态寄存器。主芯片在将相同固件从固件存储装置加载到共享高速存储装置中之后,将状态寄存器写为第一状态。每个从芯片还用于读取状态寄存器,并在读取到状态寄存器处于第一状态时,访问主芯片内的共享高速存储装置,将相同固件从高速存储装置加载到每个从芯片的私有高速存储装置中。通过设置状态寄存器,便于每个芯片获知是否能够从共享高速存储装置加载该相同固件。
在一个具体的实施方式中,每个芯片中均内置有各个芯片私有的私有高速存储装置、以及各个芯片共享的共享高速存储装置。高速存储装置为主芯片内的共享高速存储装置。主芯片用于将相同固件从固件存储装置加载到高速存储装置中,并从高速存储装置加载到主芯片的私有高速存储装置中。每个从芯片用于将相同固件从高速存储装置加载到各个从芯片的共享存储装置中,并从各个从芯片的共享高速存储装置加载到各个从芯片的私有高速存储装置中。在同构的主芯片和从芯片中,通过将主芯片内的共享高速存储装置作为高速存储装置,便于主芯片将相同固件从固件存储装置加载到高速存储装置中,也便于从芯片访问高速存储装置。
在一个具体的实施方式中,每个芯片中均内置有各个芯片私有的私有高速存储装置。高速存储装置外置于至少两个芯片外,且每个芯片均通过芯片互连总线与高速存储装置直接连接。主芯片用于将相同固件从固件存储装置加载到高速存储装置中,每个芯片用于将相同固件从高速存储装置加载到各个芯片的私有高速存储装置中。使每个芯片均通过芯片互连总线与高速存储装置直接连接,便于主芯片将相同固件从固件存储装置加载到高速存储装置中,也便于从芯片访问高速存储装置。
在一个具体的实施方式中,每个芯片中均内置有各个芯片私有的私有高速存储装置。高速存储装置外置于至少两个芯片外,且高速存储装置通过芯片互连总线与主芯片直接连接,每个从芯片均通过主芯片或其他的从芯片与高速存储装置间接连接。主芯片用于将相同固件从固件存储装置加载到高速存储装置中。每个从芯片通过主芯片或其他的从芯片,将相同固件从高速存储装置加载到该从芯片的私有高速存储装置中。使主芯片通过芯片互连总线与高速存储装置直接连接,而其他的从芯片通过主芯片或其他的从芯片与高速存储装置间接连接,检索芯片互连总线的布线复杂程度,便于布线。
在一个具体的实施方式中,高速存储装置与固件存储装置集成在同一个设备中,提高电路板上各个器件的集成度。
在一个具体的实施方式中,相同固件被拆分为至少两个数据块。相同固件在被从一个存储装置加载到另一个存储装置中时,每次加载一个数据块,分至少两次完成相同固件从一个存储装置到另一个存储装置的加载,提升该相同固件的加载效率。
第二方面,本发明还提供了一种基于上述任意一种多芯片系统的启动方法,该启动方法包括:主芯片将存储在固件存储装置中的相同固件加载到高速存储装置;相同固件被从高速存储装置加载到每个芯片,以使每个芯片获取到相同固件。
在上述的方案中,通过设置接入芯片互连总线的高速存储装置,在固件存储装置中存储有所有芯片都使用的相同固件的场景下,主芯片只需要访问低速的固件存储装置一次,将该相同固件从固件存储装置加载到高速存储装置,使该主芯片和其他的从芯片都使用芯片互连总线从高速存储装置中加载该相同固件。相比现有技术中多个芯片都通过芯片互连总线从固件存储装置中多次重复读取该相同固件相比,本申请的方案优化为使用芯片互连总线从高速存储装置中加载相同固件,将从固件存储装置中读取数据的读取速率从100Mbps量级,提高到了10Gbps量级,利用芯片与共享的高速存储装置之间的传输速率是低速的固件存储装置访问速率的100倍以上优点,极大的缩短每个芯片加载相同固件的时间。即在针对多个芯片使用相同固件的多芯片场景下,本申请的方案能够有效缩短整个系统的安全启动时间。由于处理器领域中的多芯片结构无论是同构结构还是异构结构,整个系统都存在大量相同的芯片,相同的芯片由于初始化流程类似,通常使用相同固件。在将该方案应用到处理器领域的多芯片结构时,能够大幅缩短整个系统的安全启动时间。
附图说明
图1~图4为本发明实施例提供的主芯片向从芯片推送相同固件的结构框图及流程图;
图5~图8为本发明实施例提供的从芯片从主芯片私有高速存储装置读取相同固件的结构框图及流程图;
图9~图12为本发明实施例提供的主芯片将相同固件加载到其内的共享高速存储装置;的结构框图及流程图;
图13~图15为本发明实施例提供的将高速存储装置设置在所有芯片外的结构框图;
图16~图17为本发明实施例提供的至少两个芯片封装在多个封装件内时的结构框图。
附图标记:
10-固件存储装置20-计算芯片21-主芯片22-从芯片
30-控制模块31-私有高速存储装置32-区域权限管理模块
33-共享高速存储装置34-高速存储装置
40-封装件51-主输入输出芯片52-从输入输出芯片
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了方便理解本发明实施例提供的多芯片系统,下面首先说明一下本发明实施例提供的多芯片系统的应用场景,该多芯片系统应用于由多个芯片互连组成的系统中。下面结合附图对该多芯片系统进行详细的叙述。
参考图1~图15,本发明实施例提供的多芯片系统包括电路板(图中未示出),在电路板上设置有固件存储装置10和至少两个芯片。至少两个芯片通过芯片互连总线互连,至少两个芯片包括一个主芯片21和其他的从芯片22;其中,主芯片21与固件存储装置10直接连接,每个从芯片22均直接连接主芯片21或通过其他的从芯片22间接连接主芯片21。该多芯片系统还包括接入芯片互连总线的高速存储装置34。固件存储装置10中存储有至少两个芯片均使用的相同固件,相同固件能够被主芯片21从固件存储装置10加载到高速存储装置34中,且相同固件还能够从高速存储装置34加载到每个芯片中。
在上述的方案中,通过设置接入芯片互连总线的高速存储装置34,在固件存储装置10中存储有所有芯片都使用的相同固件的场景下,主芯片21只需要访问低速的固件存储装置10一次,将该相同固件从固件存储装置10加载到高速存储装置34,使该主芯片21和其他的从芯片22都使用芯片互连总线从高速存储装置34中加载该相同固件。相比现有技术中多个芯片都通过芯片互连总线从固件存储装置10中多次重复读取该相同固件相比,本申请的方案优化为使用芯片互连总线从高速存储装置34中加载相同固件,将从固件存储装置10中读取数据的读取速率从100Mbps量级,提高到了10Gbps量级,利用芯片与共享的高速存储装置34之间的传输速率是低速的固件存储装置10访问速率的100倍以上优点,极大的缩短每个芯片加载相同固件的时间。即在针对多个芯片使用相同固件的多芯片场景下,本申请的方案能够有效缩短整个系统的安全启动时间。由于处理器领域中的多芯片结构无论是同构结构还是异构结构,整个系统都存在大量相同的芯片,相同的芯片由于初始化流程类似,通常使用相同固件。在将该方案应用到处理器领域的多芯片结构时,能够大幅缩短整个系统的安全启动时间。下面结合附图对上述各种结构进行详细的介绍。
在设置电路板时,该电路板具体可以为服务器中的主板,也可以为应用在其他场景下由走线和过孔组成的电路板。该电路板为设置固件存储装置10和芯片的承载和互连结构,可以采用印刷电路板实现。参考图1,在电路板上设置有固件存储装置10,该固件存储装置10作为存储介质,来存储各个芯片的片外固件,以在启动芯片时,使各个芯片从固件存储装置10中加载对应的固件,来实现相应的功能。具体设置时,该固件存储装置10可以采用诸如但不限于快速存储器(Flash)等的存储器。该固件存储装置10通常采用SPI接口,其传输速率在100Mbps量级。且在本申请中,固件存储装置10中存储有上述所有芯片都使用到的相同固件,即至少两个芯片中的每个芯片在启动过程中都需要加载该相同固件,来实现相应功能。
参考图1,在电路板上还设置有至少两个芯片,至少两个芯片之间通过芯片互连总线实现互连。其中,这里面的每个芯片可以为单芯片封装件40(SCM),也可以为同构的多芯片封装件40(MCM),同样还可以为同构的多芯片封装件40中的一个芯片。甚至,每个芯片可以为异构的多芯片封装件40(SIP),也可以为异构的多芯片封装件40中的一个芯片。如图16所示,每个芯片为封装件40中的一个芯片。如图17所示,每个封装件40中的计算芯片20为一个芯片。即本申请中的每个芯片具体可以为由单个和多个同构或异构芯片封装形成的封装件40,还可以为多个同构或异构芯片封装形成的封装件40中的一个芯片。本申请并不限定芯片具体为封装件40还是封装件40内的裸片,而是限定多个芯片之间通过芯片互连总线连接的方式。该芯片互连总线具体可以为形成在封装件40内来互连相同封装件40内的不同裸片之间的芯片互连总线;还可以为形成在封装件40外的封装基板或电路板上,来连接不同的封装件40或不同封装件40内芯片的芯片互连总线。该芯片互连总线的数据传输速率,要远大于芯片与该至少两个芯片系统之外的其他器件之间的数据传输速率。具体可以设置芯片互连总线的数据传输速率在10Gbps量级以上,即芯片间使用的芯片互连总线接口为高速接口。
继续参考图1,该至少两个芯片中包含有一个主芯片21,该主芯片21与固件存储装置10直接连接,具体可以为通过SPI总线与固件存储装置10直接连接。而该固件存储装置10与主芯片21之间直接连接的总线的数据传输速率要低于芯片互连总线的数据传输速率。如图1所示,该至少两个芯片中除了主芯片21之外的其他芯片均作为从芯片22,通过芯片互连总线与主芯片21直接连接,或通过芯片互连总线及其他的从芯片22与主芯片21间接连接。需要说明的是,即使从芯片22通过芯片互连总线及其他的从芯片22与主芯片21间接连接,但该从芯片22与主芯片21之间的数据传输速率也要远大于主芯片21与固件存储装置10之间的数据传输速率。具体实现从芯片22与主芯片21的互连时,可以采用诸如但不限于线型、环型、星型等的互连方式将至少两个芯片互连。如图1示出的至少两个芯片之间通过芯片互连总线线型互连,即至少两个芯片通过芯片互连总线连接成线型拓扑结构。应当注意的是,至少两个芯片互连的方式并不限于图1示出的线型互连的方式,除此之外,还可以采用其他的互连方式。
参考图1,该多芯片系统还包括一个高速存储装置34,该高速存储装置34接入芯片互连总线中,使该高速存储装置34拥有全局独立的地址。该高速存储装置34具备高速数据访问能力,从而在接入到芯片互连总线时,能够使主芯片21以较高的数据传输速率访问高速存储装置34。具体设置时,可以采用诸如但不限于高速缓冲存储器(Cache)等的随机存取存储器(Random Access Memory,RAM)作为高速存储装置34,使主芯片21能够通过芯片互连总线以高速数据传输速率访问高速存储装置34。
在安全启动过程中,参考图1及图2,主芯片21能够将该相同固件从固件存储装置10加载到高速存储装置34,具体的,主芯片21加载固件存储装置10中所存储的该相同固件,并将该相同固件写入到高速存储装置34中,以使主芯片21和每个从芯片22在使用该相同固件时,能够将该相同固件从高速存储装置34加载到每个芯片中。通过设置接入芯片互连总线的高速存储装置34,在固件存储装置10中存储有所有芯片都使用的相同固件的场景下,主芯片21只需要访问低速的固件存储装置10一次,将该相同固件从固件存储装置10加载到高速存储装置34,使该主芯片21和其他的从芯片22都使用芯片互连总线从高速存储装置34中获取该相同固件。相比现有技术中多个芯片都通过芯片互连总线从固件存储装置10中多次重复读取该相同固件相比,本申请的方案优化为使用芯片互连总线从高速存储装置34中读取相同固件,将从固件存储装置10中读取数据的读取速率从100Mbps量级,提高到了10Gbps量级,利用主芯片21与高速存储装置34之间的传输速率是低速的固件存储装置10访问速率的100倍以上优点,极大的缩短每个芯片读取相同固件的时间。即在针对多个芯片使用相同固件的多芯片场景下,本申请的方案能够有效缩短整个系统的安全启动时间。由于处理器领域中的多芯片结构无论是同构结构还是异构结构,整个系统都存在大量相同的芯片,相同的芯片由于初始化流程类似,通常使用相同固件。在将该方案应用到处理器领域的多芯片结构时,能够大幅缩短整个系统的安全启动时间。
根据高速存储装置34的设置位置、以及主芯片21与从芯片22之间进行相同固件的传送方式,下面示例性的示出几类设置及传输方式。
实施例1
参考图1~图4,可以将高速存储装置34设置在主芯片21内私有的私有高速存储装置31中,且由主芯片21在将相同固件从固件存储装置10加载到高速存储装置34之后,通过主动推送的方式推送到每个从芯片22的私有高速存储装置31中。具体的,如图1所示出的一种多芯片系统的结构框图,在每个芯片中均内置各个芯片私有的私有高速存储装置31。高速存储装置34内置于主芯片21内的私有高速存储装置31中,以使主芯片21能够将相同固件从固件存储装置10加载到高速存储装置34中。通过将高速存储装置34内置于主芯片21的私有高速存储装置31中,使用主芯片21的内存即可实现,无需设置额外的高速存储装置34,简化结构,便于设置。
继续参考图1,还可以在每个从芯片22中均内置有与私有高速存储装置31连接的区域权限管理模块32,区域权限管理模块32用于配置每个从芯片22本地的私有高速存储装置31的访问权限,以允许主芯片21或其他的从芯片22访问。具体的,参考图2,区域权限管理模块32用于在设定时间段放开每个从芯片22中私有高速存储装置31的访问权限,以使主芯片21或该从芯片22之外的其他从芯片22,将相同固件加载到该从芯片22的私有高速存储装置31中。该设定时间段位于主芯片21将相同固件从固件存储装置10加载到高速存储装置34之后的某个时间段。在主芯片21从固件存储装置10中获取到相同固件,并将相同固件保存在本地的私有高速存储装置31的同时,每个从芯片22完成相同固件接收相关的初始化配置,放开每个从芯片22本地的私有高速存储装置31的访问权限。如图1、图2及图3所示,在主芯片21了解到从芯片22的私有高速存储装置31的访问权限放开之后,主动将该相同固件推送给从芯片22。当然,除了上述示出的主芯片21将相同固件加载到某个从芯片22的私有高速存储装置31之外,参考图4,某个从芯片22还可以由其他的从芯片22将相同固件从其本地的私有高速存储装置31加载到该从芯片22中。主芯片21将相同固件加载到第一从芯片22的私有高速存储装置31之后,第一从芯片22将相同固件从其本地的私有高速存储装置31加载到第二从芯片22的私有高速存储装置31中。通过设置区域权限管理模块32,提高从芯片22的安全性,防止主芯片21误删误改从芯片22的私有高速存储装置31中的数据。参考图1、图3及图4,可以在每个芯片中设置有控制模块30,由控制模块30来控制通信链路的连接与切换。
在具体设置区域权限管理模块32时,区域权限管理模块32在设定时间段,可以仅放开每个从芯片22中私有高速存储装置31的设定存储区域的访问权限,而私有高速存储装置31的设定存储区域以外的存储区域的访问权限并不放开,以使主芯片21或该从芯片22之外的其他从芯片22,将相同固件加载到该从芯片22中私有高速存储装置31的设定存储区域中。该设定存储区域的配置方式可以通过1组或多组<起始地址,区域长度>配置寄存器作为设定存储区域,之后,放开设定存储区域段的访问权限。通过在每个从芯片22的私有高速存储装置31中划分出一设定存储区域,作为接收相同固件的存储区域,区域权限管理模块32只需放开该设定存储区域的访问权限即可完成相同固件的正常加载,进一步防止主芯片21误删误改从芯片22的私有高速存储装置31中的数据,提高从芯片22的安全性。
此外,参考图2,还可以在每个从芯片22中均内置有状态寄存器。在每个从芯片22中的区域权限管理模块32放开该从芯片22中的私有高速存储装置31的访问权限之后,将状态寄存器写为第一状态。主芯片21或该从芯片22之外的其他从芯片22还用于读取该从芯片22中的状态寄存器,并在读取到该从芯片22的状态寄存器处于第一状态时,将相同固件加载到该从芯片22的私有高速存储装置31中,之后将该从芯片22的状态寄存器改写为第二状态。通过设置状态寄存器,便于主芯片21获知是否能够向每个从芯片22的私有存储装置中加载该相同固件。当然,在该从芯片22的状态寄存器由第一状态改写为第二状态之后,可以由该从芯片22清除区域权限管理模块32中的配置,禁止主芯片21或其他的从芯片22访问该从芯片22本地的私有高速存储装置31。应当理解的是,除了上述设置状态寄存器的方式之外,还可以采用其他能够使主芯片21和从芯片22之间进行访问权限配置和加载相同固件是否完成等信息的通信方式。例如,还可以在主芯片21中设置针对每个从芯片22的状态寄存器,即每个从芯片22均对应在主芯片21内设置有一个状态寄存器,来和主芯片21进行状态的交互和同步。
下面结合图2及图3所示出的框图进行流程介绍。首先,确认主芯片21和从芯片22已经完成芯片间的通路连接,可以正常完成通信交互。主芯片21直接从固件存储装置10中加载相同固件到其本地的私有高速存储装置31中。同时,从芯片22完成相同固件接收相关的初始化配置,例如但不限于:对本地的私有高速存储装置31的复位释放,可靠性校验等,并通过区域权限管理模块32完全访问权限的配置,允许主芯片21或其他的从芯片22访问其私有高速存储装置31或私有高速存储装置31中的设定存储区域之后,从芯片22设置状态寄存器为第一状态。主芯片21在将相同固件加载到本地的私有高速存储装置31之后,主芯片21循环读取每个从芯片22的状态寄存器,等待状态寄存器变为第一状态,标识该从芯片22已经准备好接收固件的相关配置,即该从芯片22内的区域权限管理模块32已经完全放开了其本地的私有高速存储装置31或仅放开了其本地的私有高速存储装置31中设定存储区域的访问权限。主芯片21确认某个从芯片22的状态寄存器已设置为第一状态之后,从本地的私有高速存储装置31中获取相同固件,直接将该相同固件写入该从芯片22的私有高速存储装置31或其内的设定存储区域,并将该从芯片22的状态寄存器设置为第二状态。每个从芯片22的设定存储区域的位置可以与主芯片21放置相同固件的存储区域位置相同。此时,从芯片22循环读取状态寄存器,等待其变为第二状态,标识主芯片21已完成相同固件的推送。从芯片22确认状态寄存器的状态已经为第二状态时,了解到相同固件加载已完成,从芯片22可以清除区域权限管理模块32中的配置,禁止主芯片21或其他的从芯片22访问其本地的私有高速存储装置31。
下面以如图3所示出的一个主芯片21和一个从芯片22示例性的进行量化,说明其传输效率。假设示例中的步骤1使用的时间为T1,步骤2、3、5使用的时间均为T2,步骤4使用的时间为T3。针对图3中的示例,本专利方案和技术背景方案a的对比如下表所示:
表1-本申请一种方案和背景技术方案a的相同固件加载路径对比
本申请上述方案和背景技术方案a的相同固件加载路径对比效率差异为:S2-S1=n*T1-n*T2=n*(T1-T2)。由于处理器环境下T1基本上百倍于T2,因此随着芯片数目的增加,本申请技术方案的效率提升效果越显著。即使是只有两个芯片的环境,本申请技术方案的也能将固件加载的时间基本缩短一半。
实施例2
参考图5~图8,可以将高速存储装置34设置在主芯片21内私有的私有高速存储装置31中,且在主芯片21在将相同固件从固件存储装置10加载到高速存储装置34之后,由从芯片22主动读取相同固件的方式,使每个从芯片22将相同固件加载到其各个从芯片22的私有高速存储装置31中。即在该实施例中,每个芯片中如实施例1一样,均内置各个芯片私有的私有高速存储装置31,高速存储装置34内置于主芯片21内的私有高速存储装置31中,以使主芯片21能够将相同固件从固件存储装置10加载到高速存储装置34中。通过将高速存储装置34内置于主芯片21的私有高速存储装置31中,使用主芯片21的内存即可实现,无需设置额外的高速存储装置34,简化结构,便于设置。和实施例1所不同之处在于,本实施例是需要由从芯片22主动读取相同固件的方式,使每个从芯片22将相同固件加载到其各个从芯片22的私有高速存储装置31中。
具体的,如图5所示出的一种多芯片系统,主芯片21中还内置有与私有高速存储装置31连接的区域权限管理模块32,区域权限管理模块32用于配置主芯片21本地的私有高速存储装置31的访问权限,以允许从芯片22访问。具体的,参考图6,区域权限管理模块32用于在设定时间段放开主芯片21中私有高速存储装置31的访问权限,以使每个从芯片22通过访问主芯片21的私有高速存储装置31,将相同固件从主芯片21的私有高速存储装置31加载到每个从芯片22的私有高速存储装置31中。设定时间段位于主芯片21将相同固件从固件存储装置10加载到高速存储装置34之后。在主芯片21从固件存储装置10中获取到相同固件,并将相同固件保存在本地的私有高速存储装置31之后,主芯片21完全区域权限管理模块32的相关配置,放开主芯片21本地的私有高速存储装置31的访问权限。如图5、图6及图7所示,在从芯片22完全相同固件接收的相关初始化配置,并了解到逐芯片的私有高速存储装置31的访问权限放开之后,主动读取主芯片21的私有高速存储装置31,以将主芯片21内的相同固件加载到每个从芯片22中。通过设置区域权限管理模块32,提高主芯片21的安全性,防止从芯片22误删误改主芯片21的私有高速存储装置31中的数据。参考图5、图7及图8,可以在每个芯片中设置有控制模块30,由控制模块30来控制通信链路的连接与切换。
在具体设置区域权限管理模块32时,区域权限管理模块32在设定时间段,可以仅放开主芯片21中私有高速存储装置31的设定存储区域的访问权限,而私有高速存储装置31的设定存储区域以外的存储区域的访问权限并不放开,以使从芯片22通过访问主芯片21的该设定存储区域,将相同固件从主芯片21的设定存储区域加载到每个从芯片22本地的私有高速存储装置31中。该设定存储区域的配置方式可以通过1组或多组<起始地址,区域长度>配置寄存器作为设定存储区域,之后,放开设定存储区域段的访问权限。通过在主芯片21的私有高速存储装置31中划分出一设定存储区域,作为接收相同固件的存储区域,区域权限管理模块32只需放开该设定存储区域的访问权限即可使从芯片22针对相同固件的正常加载,进一步防止从芯片22误删误改主芯片21的私有高速存储装置31中的数据,提高主芯片21的安全性。
参考图6,还可以在主芯片21中内置有状态寄存器。在主芯片21中的区域权限管理模块32放开主芯片21中的私有高速存储装置31的访问权限之后,将状态寄存器写为第一状态。每个从芯片22还用于读取状态寄存器,并在读取到状态寄存器处于第一状态时,访问主芯片21的私有高速存储装置31,将相同固件从主芯片21的私有高速存储装置31加载到每个从芯片22的私有高速存储装置31中。在相同固件被加载到所有的从芯片22的私有高速存储装置31中之后,状态寄存器被改写为第二状态。通过设置状态寄存器,便于从芯片22获知是否能够从主芯片21的私有存储装置加载该相同固件。当然,在主芯片21的状态寄存器由第一状态改写为第二状态之后,可以由主芯片21清除区域权限管理模块32中的配置,禁止从芯片22访问其本地的私有高速存储装置31。应当理解的是,除了上述设置状态寄存器的方式之外,还可以采用其他能够使主芯片21和从芯片22之间进行访问权限配置和加载相同固件是否完成等信息的通信方式。例如,还可以在每个从芯片22中设置针对主芯片21的状态寄存器,来和主芯片21进行状态的交互和同步。
另外,参考图8,在至少两个芯片为同构芯片的应用场景下,即每个芯片中不仅内置有各个芯片私有的私有高速存储装置31,而且每个芯片中还均内置有与私有高速存储装置31连接的区域权限管理模块32时。除了上述示出的每个从芯片22均从主芯片21加载相同固件的方式之外,参考图8,某个从芯片22还可以从其他的从芯片22中,将相同固件从其本地的私有高速存储装置31加载到该从芯片22中。即第一从芯片22从主芯片21中加载相同固件,而第二从芯片22从第一从芯片22中加载相同固件,依次类推,具体可以通过每个从芯片22的区域权限管理模块32完全相应的设置。此时,区域权限管理模块32在设定时间段放开各个芯片中私有高速存储装置31的访问权限之后,能够使每个从芯片22通过访问主芯片21或其他从芯片22的私有高速存储装置31,将相同固件从主芯片21或其他从芯片22的私有高速存储装置31,加载到该从芯片22的私有高速存储装置31中。通过在主芯片21和从芯片22的每个芯片中均设置区域权限管理模块32,提高主芯片21和从芯片22的安全性,防止其他的芯片误删误改某个芯片中私有高速存储装置31中的数据。
下面结合图6及图7所示出的框图进行流程介绍。首先,确认主芯片21和从芯片22已经完成芯片间的通路连接,可以正常完成通信交互。主芯片21直接从固件存储装置10中加载相同固件到其本地的私有高速存储装置31中,之后通过区域权限管理模块32完全访问权限的配置,允许从芯片22访问其私有高速存储装置31或私有高速存储装置31中的设定存储区域之后,主芯片21设置状态寄存器为第一状态。同时,从芯片22完成相同固件接收相关的初始化配置,例如但不限于:对本地的私有高速存储装置31的复位释放,可靠性校验等。从芯片22在完全相同固件接收的相关初始化配置之后,从芯片22循环读取主芯片21的状态寄存器,等待状态寄存器变为第一状态,标识主芯片21内的区域权限管理模块32已经完全放开了其本地的私有高速存储装置31或仅放开了其本地的私有高速存储装置31中设定存储区域的访问权限。从芯片22确认主芯片21的状态寄存器已设置为第一状态之后,从芯片22访问主芯片21的私有高速存储装置31或其内的设定存储区域,来获取相同固件,并将该相同固件写入该从芯片22的私有高速存储装置31中。在所有的从芯片22均完成相同固件的加载之后,状态寄存器被设置为第二状态。每个从芯片22的设定存储区域的位置可以与主芯片21放置相同固件的存储区域位置相同。此时,主芯片21循环读取状态寄存器,等待其变为第二状态,标识所有的从芯片22已完成相同固件的加载,主芯片21可以清除区域权限管理模块32中的配置,禁止从芯片22访问其本地的私有高速存储装置31。
下面以如图7所示出的一个主芯片21和一个从芯片22示例性的进行量化,说明其传输效率。假设示例中的步骤1使用的时间为T1,步骤2、3、5使用的时间均为T2,步骤4使用的时间为T3。针对图7中的示例,本专利方案和技术背景方案a的对比如下表所示:
表2-本申请另一种方案和背景技术方案a的相同固件加载路径对比
本申请上述方案和背景技术方案a的相同固件加载路径对比效率差异为:S2-S1=n*T1+(n-2)*T2+n*T3。由于处理器环境下T1基本上百倍于T2,因此随着芯片数目的增加,本申请技术方案的效率提升效果越显著。即使是只有两个芯片的环境,本申请技术方案的也能将固件加载的时间基本缩短一半。
实施例3
参考图9~图12,可以将高速存储装置34设置在主芯片21内的非私有高速存储装置31中,即高速存储装置34设置在主芯片21的共享高速存储装置33中。在主芯片21在将相同固件从固件存储装置10加载到高速存储装置34之后,由从芯片22主动读取相同固件的方式,使每个从芯片22将相同固件加载到其各个从芯片22的私有高速存储装置31中。具体的,如图9所示出的一种多芯片系统的结构框图,每个芯片中均内置各个芯片私有的私有高速存储装置31。主芯片21中还内置有各个从芯片22能够共享访问的共享高速存储装置33,高速存储装置34为该共享高速存储装置33。主芯片21用于将相同固件从固件存储装置10加载到共享高速存储装置33中。主芯片21在将相同固件从固件存储装置10加载到其内的共享高速存储装置33之后,主芯片21和每个从芯片22均通过访问共享高速存储装置33,将相同固件从共享高速存储装置33加载到各个芯片的私有高速存储装置31中。通过将高速存储装置34内置于主芯片21内且位于私有高速存储装置31之外,便于主芯片21将相同固件从固件存储装置10加载到高速存储装置34中,也便于从芯片22访问高速存储装置34。参考图9、图11及图12,可以在每个芯片中设置有控制模块30,由控制模块30来控制通信链路的连接与切换。
参考图10,在主芯片21中还可以内置有状态寄存器。主芯片21在将相同固件从固件存储装置10加载到共享高速存储装置33中之后,将状态寄存器写为第一状态。每个从芯片22还用于读取状态寄存器,并在读取到状态寄存器处于第一状态时,访问主芯片21内的共享高速存储装置33,将相同固件从高速存储装置34加载到每个从芯片22的私有高速存储装置31中。通过设置状态寄存器,便于每个芯片获知是否能够从共享高速存储装置33加载该相同固件。当然,在所有的从芯片22完成从主芯片21内的共享高速存储装置33中加载相同固件之后,状态寄存器可以被改写为第二状态,使主芯片21了解到所有的从芯片22均完成了相同固件的加载。应当理解的是,除了上述设置状态寄存器的方式之外,还可以采用其他能够使主芯片21和从芯片22之间进行访问权限配置和加载相同固件是否完成等信息的通信方式。例如,还可以在每个从芯片22中设置针对主芯片21的状态寄存器,来和主芯片21进行状态的交互和同步。
另外,参考图12,在至少两个芯片为同构芯片的应用场景下,即每个芯片中均内置有各个芯片私有的私有高速存储装置31、以及各个芯片共享的共享高速存储装置33。高速存储装置34依然可以为主芯片21内的共享高速存储装置33。主芯片21用于将相同固件从固件存储装置10加载到高速存储装置34中,并从高速存储装置34加载到主芯片21的私有高速存储装置31中。此时,每个从芯片22仍然可以按照上述方式,从主芯片21的共享高速存储装置33将相同固件直接加载到各个从芯片22的私有高速存储装置31中。但是从芯片22除了上述示出的每个从芯片22均从主芯片21加载相同固件到其本地的私有高速存储装置31的方式之外,还可以采用其他的加载方式。例如,每个从芯片22可以先将相同固件从高速存储装置34加载到各个从芯片22的共享存储装置中,之后每个从芯片22从各个从芯片22的共享高速存储装置33加载到各个从芯片22的私有高速存储装置31中。在同构的主芯片21和从芯片22中,通过将主芯片21内的共享高速存储装置33作为高速存储装置34,便于主芯片21将相同固件从固件存储装置10加载到高速存储装置34中,也便于从芯片22访问高速存储装置34。
下面结合图10及图11所示出的框图进行流程介绍。首先,确认主芯片21和从芯片22已经完成芯片间的通路连接,可以正常完成通信交互。主芯片21直接从固件存储装置10中加载相同固件到其本地的共享高速存储装置33中,之后设置状态寄存器为第一状态。同时,从芯片22完成相同固件接收相关的初始化配置,例如但不限于:对本地的私有高速存储装置31的复位释放,可靠性校验等。从芯片22在完全相同固件接收的相关初始化配置之后,从芯片22循环读取主芯片21的状态寄存器,等待状态寄存器变为第一状态,标识主芯片21已经完成了相同固件的加载。从芯片22确认主芯片21的状态寄存器已设置为第一状态之后,从芯片22访问主芯片21的共享高速存储装置33,来获取相同固件,并将该相同固件写入该从芯片22的私有高速存储装置31中。在所有的从芯片22均完成相同固件的加载之后,状态寄存器可以被设置为第二状态。每个从芯片22放置相同固件的位置可以与主芯片21放置相同固件的位置相同。此时,主芯片21循环读取状态寄存器,等待其变为第二状态,标识所有的从芯片22已完成相同固件的加载。
下面以如图11所示出的一个主芯片21和一个从芯片22示例性的进行量化,说明其传输效率。假设示例中的步骤1使用的时间为T1,步骤2、3、4、6使用的时间均为T2,步骤5使用的时间为T3。针对图11中的示例,本专利方案和技术背景方案a的对比如下表所示:
表3-本申请另一种方案和背景技术方案a的相同固件加载路径对比
本申请上述方案和背景技术方案a的相同固件加载路径对比效率差异为:S2-S1=n*T1+(n-2)*T2+n*T3。由于所有芯片并发从主芯片21的共享高速存储装置33获取相同固件,因此随着从芯片22数目的增加,本技术方案的整体系统启动时间并不会跟着增加。由于处理器环境下T1基本上百倍于T2,因此随着芯片数目的增加,本申请技术方案的效率提升效果越显著。即使是只有两个芯片的环境,本申请技术方案的也能将固件加载的时间基本缩短一半。
实施例4
参考图13~图15,可以将高速存储装置34设置在至少两个芯片之外,即高速存储装置34既不位于主芯片21内,也不位于从芯片22内。在主芯片21在将相同固件从固件存储装置10加载到高速存储装置34之后,由从芯片22主动读取相同固件的方式,使每个从芯片22将相同固件加载到其各个从芯片22的私有高速存储装置31中。具体的,如图13所示出的一种多芯片系统的结构框图,每个芯片中均内置有各个芯片私有的私有高速存储装置31。但是,高速存储装置34外置于至少两个芯片外,且每个芯片均通过芯片互连总线与高速存储装置34直接连接,即包含主芯片21和从芯片22的所有芯片均通过芯片互连总线与高速存储装置34单独的直接连接,以进行直接通信。此时,主芯片21将相同固件从固件存储装置10加载到高速存储装置34中之后,主芯片21及每个从芯片22将相同固件从高速存储装置34加载到各个芯片的私有高速存储装置31中。使每个芯片均通过芯片互连总线与高速存储装置34直接连接,便于主芯片21将相同固件从固件存储装置10加载到高速存储装置34中,也便于从芯片22访问高速存储装置34。参考图13、图14及图15,可以在每个芯片中设置有控制模块30,由控制模块30来控制通信链路的连接与切换。
应当理解的是,高速存储装置34的通信连接方式并不限于图13所示出的方式,除此之外,还可以采用其他的通信连接方式。例如,参考图14,每个芯片中同样均内置有各个芯片私有的私有高速存储装置31。高速存储装置34虽然也外置于至少两个芯片外,但是高速存储装置34通过芯片互连总线仅与主芯片21直接连接,每个从芯片22均通过主芯片21或其他的从芯片22与高速存储装置34间接连接。主芯片21在将相同固件从固件存储装置10加载到高速存储装置34中之后。每个从芯片22通过主芯片21或其他的从芯片22,将相同固件从高速存储装置34加载到该从芯片22的私有高速存储装置31中。使主芯片21通过芯片互连总线与高速存储装置34直接连接,而其他的从芯片22通过主芯片21或其他的从芯片22与高速存储装置34间接连接,检索芯片互连总线的布线复杂程度,便于布线。另外,参考图15,还可以将高速存储装置34与固件存储装置10集成在同一个设备中,提高电路板上各个器件的集成度。
应当注意的是,高速存储装置34的设置方式除了上述各个实施例示出的几类设置方式之外,还可以采用其他的设置方式。
另外,在该相同固件被从一个存储装置加载到另一个存储装置的过程中,可以将该相同固件被拆分为至少两个数据块。相同固件在被从一个存储装置加载到另一个存储装置中时,每次加载一个数据块,分至少两次完成相同固件从一个存储装置到另一个存储装置的加载,提升该相同固件的加载效率。当然,加载的方式并不限于上述示出的拆分为数据块的方式,除此之外,还可以采用其他的方式。例如,可以以固件为单位,一次加载一个完整的固件的方式。再者,上述示出的不同类型的高速存储装置34在被多个从芯片22访问时,可以通过配置,使所有的从芯片22及主芯片21能够并发的共享访问高速存储装置34,来获取相同固件,以提高数据传输效率。
当然,在至少两个芯片封装在相同的封装件40时,主芯片21和从芯片22之间传输相同固件的方式可以参考前述的示出方式。而在至少两个芯片分别封装在不同的封装件40中时,在主芯片21将相同固件从固件存储装置10加载到高速存储装置34之后,可以将该相同固件通过封装件40之间的互联总线,将该相同固件加载到其他的封装件40中的一个从芯片22中,之后其他封装件40中的每个封装件40的传输过程中,由从主芯片21接收了相同固件的从芯片22按照上述示出的传输方式传输给同一封装件40之内的其他从芯片22,从而提高传输效率。具体的,如图16所示,在第一封装件40内的主芯片21将相同固件加载到高速存储装置34之后,首先由第一从芯片22和第七从芯片22从主芯片21获取到该相同固件,之后第七从芯片22作为类似第二封装件40的主芯片21,将相同固件传输给第六从芯片22、第五从芯片22和第四从芯片22,而第一封装件40中,由主芯片21向第一从芯片22、第二从芯片22及第三从芯片22传输相同固件。如图17所示,在第一封装件40内的主芯片21通过主输入输出芯片51获取到相同固件之后,分别通过第一从输入输出芯片52、第二从输入输出芯片52和第三从输入输出芯片52,将该相同固件传输给第二封装件40、第三封装件40和第四封装件40,之后按照上述的方式传输给不同封装件40内的每个从芯片22。
上述示出的各个实施方式中,通过设置接入芯片互连总线的高速存储装置34,在固件存储装置10中存储有所有芯片都使用的相同固件的场景下,主芯片21只需要访问低速的固件存储装置10一次,将该相同固件从固件存储装置10加载到高速存储装置34,使该主芯片21和其他的从芯片22都使用芯片互连总线从高速存储装置34中加载该相同固件。相比现有技术中多个芯片都通过芯片互连总线从固件存储装置10中多次重复读取该相同固件相比,本申请的方案优化为使用芯片互连总线从高速存储装置34中加载相同固件,将从固件存储装置10中读取数据的读取速率从100Mbps量级,提高到了10Gbps量级,利用芯片与共享的高速存储装置34之间的传输速率是低速的固件存储装置10访问速率的100倍以上优点,极大的缩短每个芯片加载相同固件的时间。即在针对多个芯片使用相同固件的多芯片场景下,本申请的方案能够有效缩短整个系统的安全启动时间。由于处理器领域中的多芯片结构无论是同构结构还是异构结构,整个系统都存在大量相同的芯片,相同的芯片由于初始化流程类似,通常使用相同固件。在将该方案应用到处理器领域的多芯片结构时,能够大幅缩短整个系统的安全启动时间。
另外,本发明实施例还提供了一种基于上述任意一种多芯片系统的启动方法,参考图1,该启动方法包括:主芯片21将存储在固件存储装置10中的相同固件加载到高速存储装置34;相同固件被从高速存储装置34加载到每个芯片,以使每个芯片获取到相同固件。通过设置接入芯片互连总线的高速存储装置34,在固件存储装置10中存储有所有芯片都使用的相同固件的场景下,主芯片21只需要访问低速的固件存储装置10一次,将该相同固件从固件存储装置10加载到高速存储装置34,使该主芯片21和其他的从芯片22都使用芯片互连总线从高速存储装置34中加载该相同固件。相比现有技术中多个芯片都通过芯片互连总线从固件存储装置10中多次重复读取该相同固件相比,本申请的方案优化为使用芯片互连总线从高速存储装置34中加载相同固件,将从固件存储装置10中读取数据的读取速率从100Mbps量级,提高到了10Gbps量级,利用芯片与共享的高速存储装置34之间的传输速率是低速的固件存储装置10访问速率的100倍以上优点,极大的缩短每个芯片加载相同固件的时间。即在针对多个芯片使用相同固件的多芯片场景下,本申请的方案能够有效缩短整个系统的安全启动时间。由于处理器领域中的多芯片结构无论是同构结构还是异构结构,整个系统都存在大量相同的芯片,相同的芯片由于初始化流程类似,通常使用相同固件。在将该方案应用到处理器领域的多芯片结构时,能够大幅缩短整个系统的安全启动时间。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。
Claims (17)
1.一种多芯片系统,其特征在于,包括:
电路板;
设置在所述电路板上的固件存储装置;
设置在所述电路板上且通过芯片互连总线互连的至少两个芯片,所述至少两个芯片包括一个主芯片和其他的从芯片;其中,所述主芯片与所述固件存储装置直接连接,每个从芯片均直接连接所述主芯片或通过其他的从芯片间接连接所述主芯片;
接入所述芯片互连总线的高速存储装置;
其中,所述固件存储装置中存储有所述至少两个芯片均使用的相同固件,所述相同固件能够被所述主芯片从所述固件存储装置加载到所述高速存储装置中,且所述相同固件还能够从所述高速存储装置加载到每个芯片中。
2.如权利要求1所述的多芯片系统,其特征在于,每个芯片中均内置各个芯片私有的私有高速存储装置;
所述高速存储装置内置于所述主芯片内的私有高速存储装置中,以使所述主芯片能够将所述相同固件从所述固件存储装置加载到所述高速存储装置中。
3.如权利要求2所述的多芯片系统,其特征在于,每个从芯片中还均内置有与所述私有高速存储装置连接的区域权限管理模块;
所述区域权限管理模块用于在设定时间段放开每个从芯片中所述私有高速存储装置的访问权限,以使所述主芯片或该从芯片之外的其他从芯片,将所述相同固件加载到该从芯片的私有高速存储装置中。
4.如权利要求3所述的多芯片系统,其特征在于,所述设定时间段位于所述主芯片将所述相同固件从所述固件存储装置加载到所述高速存储装置之后;
每个从芯片中还均内置有状态寄存器;每个从芯片中的区域权限管理模块放开该从芯片中的私有高速存储装置的访问权限之后,将所述状态寄存器写为第一状态;
所述主芯片或该从芯片之外的其他从芯片还用于读取该从芯片中的状态寄存器,并在读取到该从芯片的状态寄存器处于所述第一状态时,将所述相同固件加载到该从芯片的私有高速存储装置中,之后将该从芯片的状态寄存器改写为第二状态。
5.如权利要求3所述的多芯片系统,其特征在于,所述区域权限管理模块在设定时间段放开每个从芯片中所述私有高速存储装置的设定存储区域的访问权限,以使所述主芯片或该从芯片之外的其他从芯片,将所述相同固件加载到该从芯片中私有高速存储装置的所述设定存储区域中。
6.如权利要求2所述的多芯片系统,其特征在于,所述主芯片中还内置有与所述私有高速存储装置连接的区域权限管理模块;
所述区域权限管理模块用于在设定时间段放开所述主芯片中所述私有高速存储装置的访问权限,以使每个从芯片通过访问所述主芯片的私有高速存储装置,将所述相同固件从所述主芯片的私有高速存储装置加载到每个从芯片的私有高速存储装置中。
7.如权利要求6所述的多芯片系统,其特征在于,所述设定时间段位于所述主芯片将所述相同固件从所述固件存储装置加载到所述高速存储装置之后;
所述主芯片中还内置有状态寄存器;所述主芯片中的区域权限管理模块放开所述主芯片中的私有高速存储装置的访问权限之后,将所述状态寄存器写为第一状态;
每个从芯片还用于读取所述状态寄存器,并在读取到所述状态寄存器处于所述第一状态时,访问所述主芯片的私有高速存储装置,将所述相同固件从所述主芯片的私有高速存储装置加载到每个从芯片的私有高速存储装置中;在所述相同固件被加载到所有的从芯片的私有高速存储装置中之后,所述状态寄存器被改写为第二状态。
8.如权利要求6所述的多芯片系统,其特征在于,所述高速存储装置为所述主芯片中私有高速存储装置的设定存储区域;
所述区域权限管理模块在设定时间段放开所述主芯片中所述私有高速存储装置的设定存储区域的访问权限,以使每个从芯片通过访问所述主芯片的所述设定存储区域,将所述相同固件从所述主芯片的设定存储区域加载到每个从芯片的私有高速存储装置中。
9.如权利要求2所述的多芯片系统,其特征在于,每个芯片中还均内置有与所述私有高速存储装置连接的区域权限管理模块;
所述区域权限管理模块用于在设定时间段放开各个芯片中所述私有高速存储装置的访问权限,以使每个从芯片通过访问所述主芯片或其他从芯片的私有高速存储装置,将所述相同固件从所述主芯片或其他从芯片的私有高速存储装置,加载到该从芯片的私有高速存储装置中。
10.如权利要求1所述的多芯片系统,其特征在于,每个芯片中均内置各个芯片私有的私有高速存储装置;所述主芯片中还内置有各个从芯片能够共享访问的共享高速存储装置,所述高速存储装置为所述共享高速存储装置;
所述主芯片用于将所述相同固件从所述固件存储装置加载到所述共享高速存储装置;
所述主芯片和每个从芯片均通过访问所述共享高速存储装置,将所述相同固件从所述共享高速存储装置加载到各个芯片的私有高速存储装置中。
11.如权利要求10所述的多芯片系统,其特征在于,所述主芯片中还内置有状态寄存器;
所述主芯片在将所述相同固件从所述固件存储装置加载到所述共享高速存储装置中之后,将所述状态寄存器写为第一状态;
每个从芯片还用于读取所述状态寄存器,并在读取到所述状态寄存器处于所述第一状态时,访问所述主芯片内的所述共享高速存储装置,将所述相同固件从所述共享高速存储装置加载到每个从芯片的私有高速存储装置中。
12.如权利要求1所述的多芯片系统,其特征在于,每个芯片中均内置有各个芯片私有的私有高速存储装置、以及各个芯片共享的共享高速存储装置;
所述高速存储装置为所述主芯片内的所述共享高速存储装置;
所述主芯片用于将所述相同固件从所述固件存储装置加载到所述高速存储装置中,并从所述高速存储装置加载到所述主芯片的私有高速存储装置中;
每个从芯片用于将所述相同固件从所述高速存储装置加载到各个从芯片的共享存储装置中,并从各个从芯片的共享高速存储装置加载到各个从芯片的私有高速存储装置中。
13.如权利要求1所述的多芯片系统,其特征在于,每个芯片中均内置有各个芯片私有的私有高速存储装置;
所述高速存储装置外置于所述至少两个芯片外,且每个芯片均通过芯片互连总线与所述高速存储装置直接连接;
所述主芯片用于将所述相同固件从所述固件存储装置加载到所述高速存储装置中,每个芯片用于将所述相同固件从所述高速存储装置加载到各个芯片的私有高速存储装置中。
14.如权利要求1所述的多芯片系统,其特征在于,每个芯片中均内置有各个芯片私有的私有高速存储装置;
所述高速存储装置外置于所述至少两个芯片外,且所述高速存储装置通过芯片互连总线与所述主芯片直接连接,每个从芯片均通过所述主芯片或其他的从芯片与所述高速存储装置间接连接;
所述主芯片用于将所述相同固件从所述固件存储装置加载到所述高速存储装置中;
每个从芯片通过所述主芯片或其他的从芯片,将所述相同固件从所述高速存储装置加载到该从芯片的私有高速存储装置中。
15.如权利要求14所述的多芯片系统,其特征在于,所述高速存储装置与所述固件存储装置集成在同一个设备中。
16.如权利要求1所述的多芯片系统,其特征在于,所述相同固件被拆分为至少两个数据块;
所述相同固件在被从一个存储装置加载到另一个存储装置中时,每次加载一个所述数据块,分至少两次完成所述相同固件从一个存储装置到另一个存储装置的加载。
17.一种基于权利要求1~16任一项所述多芯片系统的启动方法,其特征在于,包括:
主芯片将存储在固件存储装置中的相同固件加载到高速存储装置;
所述相同固件被从所述高速存储装置加载到每个芯片,以使每个芯片获取到所述相同固件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210755901.6A CN115114200B (zh) | 2022-06-29 | 2022-06-29 | 一种多芯片系统及基于其的启动方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210755901.6A CN115114200B (zh) | 2022-06-29 | 2022-06-29 | 一种多芯片系统及基于其的启动方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115114200A CN115114200A (zh) | 2022-09-27 |
CN115114200B true CN115114200B (zh) | 2023-11-17 |
Family
ID=83330442
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210755901.6A Active CN115114200B (zh) | 2022-06-29 | 2022-06-29 | 一种多芯片系统及基于其的启动方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115114200B (zh) |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01241645A (ja) * | 1988-03-23 | 1989-09-26 | Nec Corp | 演算処理装置 |
WO1996041249A2 (en) * | 1995-06-07 | 1996-12-19 | Tricord Systems, Inc. | Intelligent disk-cache memory |
JP2001006270A (ja) * | 1999-06-18 | 2001-01-12 | Sony Corp | キャッシュ機能を備える情報・データ処理装置及び情報・データ処理方法及びコンピュータ読み取り可能な記録媒体及びシステム・オン・チップ型集積装置及びビデオデータ編集装置及びビデオ・オン・デマンドサーバ装置及びネットワーク・ゲーム・サーバ装置 |
JP2001147903A (ja) * | 1999-09-15 | 2001-05-29 | Internatl Business Mach Corp <Ibm> | 効率的なバス機構及びコヒーレンス制御を有する繰り返しチップ構造を有するスケーラブル共用メモリ・マルチプロセッサ・コンピュータ・システム |
JP2003337790A (ja) * | 2002-05-21 | 2003-11-28 | Mitsubishi Electric Corp | バス制御回路およびプロセッサ |
US7308521B1 (en) * | 2001-11-16 | 2007-12-11 | Marvell International Ltd. | Multi-port communications integrated circuit and method for facilitating communication between a central processing chipset and multiple communication ports |
CN102308538A (zh) * | 2011-07-20 | 2012-01-04 | 华为技术有限公司 | 报文处理方法及装置 |
CN104699654A (zh) * | 2015-03-02 | 2015-06-10 | 福州瑞芯微电子有限公司 | 一种基于chi片内互联总线与qpi片间互联总线互联适配系统和方法 |
CN105630127A (zh) * | 2015-04-15 | 2016-06-01 | 上海磁宇信息科技有限公司 | 嵌入MRAM的SoC芯片及其功耗控制方法 |
CN106502960A (zh) * | 2016-10-09 | 2017-03-15 | 上海庆科信息技术有限公司 | 一种基于sip封装的无线通信芯片 |
CN106557442A (zh) * | 2015-09-28 | 2017-04-05 | 北京兆易创新科技股份有限公司 | 一种芯片系统 |
CN107729268A (zh) * | 2017-09-20 | 2018-02-23 | 山东英特力数据技术有限公司 | 一种基于capi接口的内存扩展装置与方法 |
WO2020037621A1 (zh) * | 2018-08-23 | 2020-02-27 | 深圳市汇顶科技股份有限公司 | 一种主芯片、从芯片及芯片间的dma传输系统 |
CN113485754A (zh) * | 2021-06-22 | 2021-10-08 | 新华三半导体技术有限公司 | 一种芯片启动方法、装置及电子设备 |
CN113741979A (zh) * | 2020-05-29 | 2021-12-03 | Oppo广东移动通信有限公司 | 芯片及电子设备 |
CN114661368A (zh) * | 2022-05-19 | 2022-06-24 | 中昊芯英(杭州)科技有限公司 | 一种芯片及其启动方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7627732B2 (en) * | 2006-06-23 | 2009-12-01 | International Business Machines Corporation | Memory systems for automated computing machinery |
US10380060B2 (en) * | 2016-06-17 | 2019-08-13 | Etron Technology, Inc. | Low-pincount high-bandwidth memory and memory bus |
-
2022
- 2022-06-29 CN CN202210755901.6A patent/CN115114200B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01241645A (ja) * | 1988-03-23 | 1989-09-26 | Nec Corp | 演算処理装置 |
WO1996041249A2 (en) * | 1995-06-07 | 1996-12-19 | Tricord Systems, Inc. | Intelligent disk-cache memory |
JP2001006270A (ja) * | 1999-06-18 | 2001-01-12 | Sony Corp | キャッシュ機能を備える情報・データ処理装置及び情報・データ処理方法及びコンピュータ読み取り可能な記録媒体及びシステム・オン・チップ型集積装置及びビデオデータ編集装置及びビデオ・オン・デマンドサーバ装置及びネットワーク・ゲーム・サーバ装置 |
JP2001147903A (ja) * | 1999-09-15 | 2001-05-29 | Internatl Business Mach Corp <Ibm> | 効率的なバス機構及びコヒーレンス制御を有する繰り返しチップ構造を有するスケーラブル共用メモリ・マルチプロセッサ・コンピュータ・システム |
US7308521B1 (en) * | 2001-11-16 | 2007-12-11 | Marvell International Ltd. | Multi-port communications integrated circuit and method for facilitating communication between a central processing chipset and multiple communication ports |
JP2003337790A (ja) * | 2002-05-21 | 2003-11-28 | Mitsubishi Electric Corp | バス制御回路およびプロセッサ |
CN102308538A (zh) * | 2011-07-20 | 2012-01-04 | 华为技术有限公司 | 报文处理方法及装置 |
CN104699654A (zh) * | 2015-03-02 | 2015-06-10 | 福州瑞芯微电子有限公司 | 一种基于chi片内互联总线与qpi片间互联总线互联适配系统和方法 |
CN105630127A (zh) * | 2015-04-15 | 2016-06-01 | 上海磁宇信息科技有限公司 | 嵌入MRAM的SoC芯片及其功耗控制方法 |
CN106557442A (zh) * | 2015-09-28 | 2017-04-05 | 北京兆易创新科技股份有限公司 | 一种芯片系统 |
CN106502960A (zh) * | 2016-10-09 | 2017-03-15 | 上海庆科信息技术有限公司 | 一种基于sip封装的无线通信芯片 |
CN107729268A (zh) * | 2017-09-20 | 2018-02-23 | 山东英特力数据技术有限公司 | 一种基于capi接口的内存扩展装置与方法 |
WO2020037621A1 (zh) * | 2018-08-23 | 2020-02-27 | 深圳市汇顶科技股份有限公司 | 一种主芯片、从芯片及芯片间的dma传输系统 |
CN113741979A (zh) * | 2020-05-29 | 2021-12-03 | Oppo广东移动通信有限公司 | 芯片及电子设备 |
CN113485754A (zh) * | 2021-06-22 | 2021-10-08 | 新华三半导体技术有限公司 | 一种芯片启动方法、装置及电子设备 |
CN114661368A (zh) * | 2022-05-19 | 2022-06-24 | 中昊芯英(杭州)科技有限公司 | 一种芯片及其启动方法 |
Non-Patent Citations (1)
Title |
---|
基于USB和CPLD的高速数据采集系统;于雪磊;赵世平;蔡萌;;仪表技术与传感器(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN115114200A (zh) | 2022-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US12047447B2 (en) | Network storage device storing large amount of data | |
CN104346317B (zh) | 共享资源访问方法和装置 | |
US9639409B2 (en) | Device and method for communicating between cores | |
US20050071514A1 (en) | Autonomic configuration of interconnection cable speeds | |
US6493784B1 (en) | Communication device, multiple bus control device and LSI for controlling multiple bus | |
US20150261698A1 (en) | Memory system, memory module, memory module access method, and computer system | |
KR102693213B1 (ko) | 메모리 시스템 | |
US7000102B2 (en) | Platform and method for supporting hibernate operations | |
CN102301363A (zh) | 数据处理节点、系统及方法 | |
KR20180063128A (ko) | 멀티스테이지 부트 이미지 로딩 및 프로그램가능 로직 디바이스들의 구성 | |
US11409684B2 (en) | Processing accelerator architectures | |
CN117834447B (zh) | 基于PCIe Switch的互联池化系统拓扑管理装置及方法 | |
CN115114200B (zh) | 一种多芯片系统及基于其的启动方法 | |
US7206889B2 (en) | Systems and methods for enabling communications among devices in a multi-cache line size environment and disabling communications among devices of incompatible cache line sizes | |
US8943256B1 (en) | Serial data intermediary device, and related systems and methods | |
US8782302B2 (en) | Method and apparatus for routing transactions through partitions of a system-on-chip | |
US20080172510A1 (en) | Parallel bus architecture and related method for interconnecting sub-systems utilizing a parallel bus | |
WO2021086469A1 (en) | Programmable device configuration memory system | |
CN111614661A (zh) | 一种通信装置 | |
US20240220436A1 (en) | Supporting multiple controller circuits on a multiplexed communication bus | |
CN107122268B (zh) | 一种基于numa多物理层分区处理系统 | |
US20100017569A1 (en) | Pcb including multiple chips sharing an off-chip memory, a method of accessing off-chip memory and a mcm utilizing fewer off-chip memories than chips | |
CN112313633A (zh) | 用于片上系统中的可编程逻辑主机的基于硬件的虚拟到物理地址转换 | |
CN105929905A (zh) | 服务器主板及服务器 | |
CN117609123A (zh) | 重定时器的固件自动切换方法、系统、电子设备及介质 |
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 |