分布式系统及其主系统和从系统以及代码加载方法

文档序号:6584462阅读:268来源:国知局
专利名称:分布式系统及其主系统和从系统以及代码加载方法
技术领域
本发明涉及代码加载技术,特别涉及一种可实现各从设备代码加载的分布式系 统、一种分布式系统中可向从系统加载代码的主系统、一种分布式系统中可由主系统加载 代码的从系统、以及一种分布式系统中的代码加载方法。
背景技术
分布式系统一般由一个主设备和至少一个从系统组成,各从系统与主系统分别执 行特定的应用程序、并通过系统间接口通信,即可协同完成特定的功能。其中,无论是主系 统还是从系统,都包含有例如PCI控制器等CPU、SDRAM等随机存储器件、FPGA/CPLD等可编 程逻辑芯片、以及非易失性存储器件。在分布式系统启动的过程中,每个从系统的CPU均先从本系统的非易失性存储器 件中读取并执行用于对硬件进行基本初始化的引导程序代码,从而为后续执行应用程序做 好准备,然后再从本系统的非易失性存储器件中读取、或通过PCI接口等系统间接口从主 系统加载应用程序代码至本系统的随机存储器件中,最后跳转到应用程序入口地址执行应 用程序代码。参见图1,以两个从系统为例,主系统的非易失性存储器件中存储有主系统的引导 程序和应用程序,还存储有从系统2的应用程序,在分布式系统上电后,主系统的CPU先后 从本系统的非易失性存储器件中读取并执行本系统的引导程序和应用程序;从系统1的非 易失性存储器件中则存储有从系统1的引导程序和应用程序,在分布式系统上电后,从系 统1的CPU先后从本系统的非易失性存储器件中读取并执行本系统的引导程序和应用程 序 ’从系统2的非易失性存储器件中仅存储有从系统2的引导程序,在分布式系统上电后, 从系统2的CPU从本系统的非易失性存储器件中读取并执行引导程序后,再从主系统加载 应用程序并执行。然而,随着分布式系统在功能上的不断丰富,其对于运行性能、小型化、微型化、低 成本、低功耗的要求也就随之提高。对于这些不断提高的要求,上述分布式系统会存在如下 缺陷1、每个从系统都需要至少一个非易失性存储器件、并且至少需要预先在该非易失 性存储器件中写入本系统的引导程序,增加了从系统的生产成本;2、非易失性存储器件及其布线会占用较大空间,不利于系统的小型化;3、每个从系统的引导程序和应用程序同样存在版本配套关系,因而增加了从系统 的维护成本;4、为了保证版本配套关系而手动升级从系统的引导程序时易出错,例如正在向从 系统的非易失性存储器件写入引导程序时发生断电,从而易导致从系统无法正常启动;5、从系统引导程序和应用程序的后续版本升级和业务扩展,受限于非易失性存储 器件的容量;6、从系统的非易失性存储器件在启动完成后依然上电消耗能量,增加了分布式系统的总功耗。可见,现有的分布式系统存在成本高、可靠性低、升级和扩展受限、以及功耗大等 诸多缺陷。

发明内容
有鉴于此,本发明提供了一种可实现各从设备代码加载的分布式系统、一种分布 式系统中可向从系统加载代码的主系统、一种分布式系统中可由主系统加载代码的从系 统、以及一种分布式系统中的代码加载方法,能够降低成本、提高可靠性、减少升级和扩展 所受限制、以及降低功耗。本发明提供的一种可实现各从设备代码加载的分布式系统,包括主系统和至少一 个从系统,其中,主系统包括主系统CPU、主系统逻辑芯片、主系统随机存储器件、以及非易失性存 储器件,主系统的非易失性存储器件中存放有主系统的引导程序和应用程序、以及从系统 的应用程序;从系统包括从系统CPU、从系统逻辑芯片、以及从系统随机存储器件,从系统CPU 通过系统间接口与主系统CPU相连;从系统逻辑芯片通过系统间总线与主系统CPU相连、且内部具有双口 RAM,该双口 RAM 一端连接所述系统间总线、另一端连接其所在从系统的从系统CPU ;主系统非易失性存储器件中还存放有各从系统的引导程序;主系统CPU,用于在分布式系统上电后从主系统的非易失性存储器件加载主系统 引导程序,用以初始化主系统随机存储器件、以及所述系统间接口和所述系统间总线;在初 始化完毕后,通过所述系统间总线将主系统非易失性存储器件中的各从系统的引导程序分 别写入至各从系统逻辑芯片内的双口 RAM;在写入完毕后,对各从系统CPU解除复位;在收 到从系统CPU发送的请求应用程序的通知后,通过所述系统间接口将主系统的非易失性存 储器件中的对应从系统的应用程序发送给对应从系统CPU ;从系统CPU,用于在分布式系统上电后保持复位状态;在被主系统CPU解除复位 后,从其所在从系统的从系统逻辑芯片内的双口 RAM加载该从系统的引导程序、用以初始 化所述系统间接口以及从系统随机存储器件;在初始化完毕后,通过所述系统间接口向主 系统CPU发送请求应用程序的通知,然后接收主系统CPU发送的该从系统的应用程序、并加 载至从系统随机存储器件中。
从系统逻辑芯片为FPGA ;所述FPGA内固化有所述双口 RAM ;或者,所述FPGA内置有只读存储器、该只读存 储器内存储有可供所述FPGA构建所述双口 RAM的逻辑芯片代码;或者,主系统非易失性 存储器件中存放有可供所述FPGA构建所述双口 RAM的逻辑芯片代码,且所述FPGA进一步 通过JTAG总线从主系统非易失性存储器件中加载所述逻辑芯片代码、用以构建所述双口 RAM0从系统的引导程序由汇编语言编写、且不需要堆栈空间。主系统CPU利用电平信号改变从系统CPU复位管脚状态,以实现对从系统CPU解 除复位。
本发明提供的一种分布式系统中可向从系统加载代码的主系统,包括主系统CPU、 主系统逻辑芯片、主系统随机存储器件、以及非易失性存储器件,该主系统的非易失性存储 器件存放有主系统的引导程序和应用程序、以及各从系统的应用程序,且该主系统CPU通 过系统间接口与所述分布式系统中的各从系统CPU相连;所述非易失性存储器件中还存放有各从系统的引导程序,且主系统CPU还通过系 统间总线与各从系统的逻辑芯片相连;在分布式系统上电后,主系统CPU用于从所述非易失性存储器件加载主系统引导 程序,用以初始化主系统随机存储器件、以及所述系统间接口和所述系统间总线;在初始化完毕后,主系统CPU用于通过所述系统间总线将所述非易失性存储器件 中的各从系统的引导程序分别写入至各从系统逻辑芯片内的双口 RAM ;在任一从系统的引导程序写入完毕后,主系统CPU用于对该从系统的CPU解除复 位,以使该从系统的CPU能够从该从系统逻辑芯片内的双口 RAM中加载该从系统的引导程 序、并初始化所述系统间接口 ;在收到任一从系统CPU初始化完毕后发送的请求应用程序的通知后,主系统CPU 用于通过所述系统间接口将所述非易失性存储器件中的该从系统的应用程序发送给该从 系统的CPU。从系统逻辑芯片为FPGA,且所述非易失性存储器件中存放有可供逻辑芯片构建所 述双口 RAM的逻辑芯片代码,以供各从系统逻辑芯片在所述分布式系统上电后通过JTAG总 线予以加载。从系统的引导程序由汇编语言编写、且不需要堆栈空间。所述CPU利用电平信号改变从系统CPU复位管脚状态,以实现对从系统CPU解除复位。一种分布式系统中可由主系统加载代码的从系统,包括从系统CPU、从系统逻辑芯 片、以及从系统随机存储器件,从系统CPU通过系统间接口与所述分布式系统中的主系统 CPU相连,从系统逻辑芯片通过系统间总线与主系统CPU相连,且内部具有双口 RAM,该双口 RAM 一端连接所述系统间总线、以使主系统CPU写入该从系统的引导程序,该双口 RAM另一 端则连接其所在从系统的从系统CPU ;从系统CPU,用于在分布式系统上电后保持复位状态;在被主系统CPU解除复位 后,从其所在从系统的从系统逻辑芯片内的双口 RAM加载该从系统的引导程序、用以初始 化所述系统间接口以及从系统随机存储器件;在初始化完毕后,通过所述系统间接口向主 系统CPU发送请求应用程序的通知,然后接收主系统CPU发送的该从系统的应用程序、并加 载至从系统随机存储器件中。从系统逻辑芯片为FPGA ;所述FPGA内固化有所述双口 RAM ;或者,所述FPGA内置有只读存储器,该只读存 储器内存储有可供所述FPGA构建所述双口 RAM的逻辑芯片代码;或者,主系统非易失性 存储器件中存放有可供所述FPGA构建所述双口 RAM的逻辑芯片代码,且所述FPGA进一步 通过JTAG总线从主系统非易失性存储器件中加载所述逻辑芯片代码、用以构建所述双口 RAM0
从系统的引导程序由汇编语言编写、且不需要堆栈空间。从系统CPU的复位管脚的状态可被主系统CPU通过电平信号予以改变,用以实现 从系统CPU的解除复位。一种分布式系统中的代码加载方法,包括a、分布式系统上电后,从系统CPU保持复位状态;主系统CPU从本系统非易失性存 储器件加载主系统弓I导程序,用以初始化主系统随机存储器件、主系统CPU与从系统CPU之 间的系统间接口、以及主系统CPU与从系统逻辑芯片内的双口 RAM之间的系统间总线;b、主系统CPU完成初始化后,从主系统非易失性存储器件中读取从系统的引导程 序,并通过所述系统间总线写入至从系统逻辑芯片内的双口 RAM ;C、主系统CPU写入从系统引导程序完毕后,对从系统CPU解除复位;d、从系统CPU解除复位后,从其所在从系统的从系统逻辑芯片内的双口 RAM加载 引导程序、并初始化所述系统间接口、以及从系统随机存储器件;e、从系统CPU完成初始化后,通过所述系统间接口通知主系统CPU发送该从系统 的应用程序;f、主系统CPU从本系统非易失性存储器件中读取从系统的,并通过所述系统间接 口发送至从系统CPU;g、从系统CPU将接收的该从系统的应用程序加载至本系统随机存储器件中。从系统逻辑芯片为FPGA ;所述FPGA内固化有所述双口 RAM ;或者,所述FPGA内置有只读存储器,该只读存储器内存储有可供从系统逻辑芯片 构建所述双口 RAM的逻辑芯片代码,所述步骤a中,从系统逻辑芯片从自身内置的只读存储 器中加载逻辑芯片代码、用以构建所述双口 MM ;或者,所述步骤a之前进一步在主系统非易失性存储器件中存放可供逻辑芯片构 建所述双口 RAM的逻辑芯片代码,所述步骤a中,从系统逻辑芯片通过JTAG总线从主系统 非易失性存储器件中加载所述逻辑芯片代码、用以构建所述双口 RAM。从系统的引导程序由汇编语言编写、且不需要堆栈空间。所述步骤c中,主系统CPU通过电平信号改变从系统CPU复位管脚状态来实现对 从系统CPU解除复位。由上述技术方案可见,本发明由主系统统一管理和维护各从系统的引导程序和应 用程序、且各从系统逻辑芯片内具有用于存放本系统引导程序的双口 RAM,因而使得主系统 能够将各从系统的引导程序分别写入至该从系统逻辑芯片内的双口 RAM,并能够在写入完 毕后对该从系统CPU解除复位、以使该从系统CPU从本系统逻辑芯片内的双口 RAM中加载 本系统引导程序,从而通过主系统统一实现各从系统引导程序加载及初始化启动,产生了 如下的技术效果1、利用从系统逻辑芯片内的双口 RAM替代现有的非易失性存储器件,降低生产成 本;2、无需非易失性存储器件,能够节省非易失性存储器件及其布线所占用的空间, 利于系统的小型化、提高功能密度;3、由主系统管理和维护所有从系统的引导程序及应用程序,自动保证了版本兼容性、降低维护成本;4、避免手动升级从系统引导程序时的出错,提高系统的健壮性;5、主系统可对从系统逻辑芯片内的双口 RAM反复写入不同版本的引导程序、对从 系统CPU反复发送不同版本的应用程序,从而使得从系统引导程序和应用程序的后续版本 升级和业务扩展不会受限于非易失性存储器件的容量;6、无需非易失性存储器件,降低了分布式系统的总功耗。


图1为现有分布式系统的一实例示意图;图2为本发明实施例分布式系统的框架示意图;图3为本发明实施例代码加载方法的示例性流程图。
具体实施例方式为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对 本发明进一步详细说明。在现有技术的硬件设计中,各从系统中都会设置有FPGA或CPLD等逻辑芯片,而这 些逻辑芯片内部通常会具有IOk IOOk左右的双口 RAM,逻辑芯片内部的双口 RAM具有如 下特点1、可以从一端写入数据、并可以从另一端读出所写入的数据;2、写入的数据会在掉电后丢失;3、在从系统初始化阶段、双口 RAM内的空间不会被使用。考虑到现有技术所具有的诸多缺陷都是由从系统必须利用其非易失性存储器件 实现初始化启动所导致,因此,本发明实施例利用从系统中的上述双口 RAM替代现有从系 统中的非易失性存储器,并提供了一种区别于现有技术的代码加载方式。需要说明的是,由于随机存储器所具有的数据掉电丢失特性,因而现有所有的传 统硬件设计中都不会使用随机存储器来存放待加载的引导程序,进而,本发明实施例也不 是简单地利用从系统中的上述双口 RAM替代非易失性存储器,而是利用从系统中的上述双 口 RAM、以及主系统的配合来实现的;进一步说,这里所述的主系统的配合,主要是指现有 所有传统硬件设计中并未使用过的主系统控制从系统初始化启动的方式,即,例如本文背 景技术部分所述现有各种传统的加载方式均无法脱离从系统自身控制初始化启动的思路。具体说,本发明实施例由主系统统一管理和维护各从系统的引导程序和应用程 序、并可由主系统将各从系统的引导程序分别写入至该从系统逻辑芯片内的双口 RAM,而 且,主系统CPU还能够在从系统引导程序写入完毕后对该从系统CPU解除复位、以使该从系 统CPU从本系统逻辑芯片内的双口 RAM中加载本系统弓I导程序。下面,先对本发明实施例中基于上述代码加载方式的分布式系统、以及该分布式 系统中的主系统和从系统进行详细说明。图2为本发明实施例分布式系统的框架示意图。如图2所示,本实施例的分布式 系统中,包括主系统和至少一个从系统(图2中仅示出了一个从系统,其余从系统用省略号表示)。
主系统内部的硬件结构相比于现有技术并未发生变化,仍包括主系统CPU、主系统 逻辑芯片、主系统随机存储器件、以及非易失性存储器件(图2中仅示出了主系统中的非易 失性存储器件)。而从系统中虽然仍包括从系统CPU、从系统逻辑芯片、以及从系统随机存储器件, 但从系统中并不是必须包括非易失性存储器件。此外,本实施例的分布式系统中,主系统的非易失性存储器件中除了像现有技术 那样存放了主系统的引导程序和应用程序、以及从系统的应用程序之外,还存放有各从系 统的引导程序;而且,主系统与从系统之间的连接关系也区别于现有技术,即除了各从系统 CPU通过系统间接口与主系统CPU相连之外,各从系统逻辑芯片进一步通过预设的系统间 总线与主系统CPU相连。基于上述硬件架构,主系统和从系统之间涉及代码加载的交互方式如下首先,是分布式系统上电后的主系统初始化启动阶段主系统CPU从主系统的非易失性存储器件加载主系统引导程序,用以初始化主系 统随机存储器件、以及所述系统间接口和所述系统间总线;
而从系统CPU则保持复位状态;且,从系统逻辑芯片内具有双口 RAM,该双口 RAM—端连接所述系统间总线、另一 端通过系统内总线连接该逻辑芯片所在从系统的从系统CPU。此后,是从系统引导程序加载、以及从系统初始化启动阶段主系统CPU在其初始化完毕后,通过已进行初始化的系统间总线,将主系统非易 失性存储器件中的各从系统的引导程序分别写入至各从系统逻辑芯片内的双口 RAM ;在对 每个从系统逻辑芯片内的双口 MM写入完毕后,对该从系统逻辑芯片所连接的从系统CPU 解除复位,例如,主系统CPU可利用电平信号改变从系统CPU复位管脚状态,以实现对从系 统CPU解除复位;从系统CPU在被主系统CPU解除复位后,从其所在从系统的从系统逻辑芯片内的 双口 RAM加载该从系统的引导程序、用以初始化所述系统间接口以及从系统随机存储器 件。最后,是从系统应用程序加载阶段从系统CPU在初始化完毕后,通过已初始化的系统间接口向主系统CPU发送请求 应用程序的通知;主系统CPU在收到从系统CPU发送的请求应用程序的通知后,通过已初始化的系 统间接口,将主系统的非易失性存储器件中的对应从系统的应用程序发送给对应从系统 CPU ;相应地,从系统CPU即可接收主系统CPU发送的该从系统的应用程序、并按照现有 方式校验和解压缩后加载至从系统随机存储器件中,然后跳转到应用程序入口地址执行应 用程序代码、并进行应用程序初始化,在应用程序初始化完毕后通知主系统CPU启动完毕, 以供主系统记录各从系统是否启动完毕。实际应用中,从系统逻辑芯片通常采用FPGA,其中一部分型号的FPGA内固化有上述双口 RAM ;还有一部分型号的FPGA内置有只读存储器,该只读存储器内存储有可供从系统逻辑芯片构建所述双口 RAM的逻辑芯片代码;另外一部分型号的FPGA则既没有固化的双口 RAM、也未内置可存放逻辑芯片代码 的只读存储器,对于这类FPGA,主系统中的非易失性存储器件内,还需要进一步存放有可供 逻辑芯片构建所述双口 RAM的逻辑芯片代码,且作为从系统逻辑芯片的FPGA在分布式系统 上电后,需要进一步通过JTAG总线从主系统非易失性存储器件中加载上述逻辑芯片代码、 用以构建前述双口 RAM。此外,考虑到逻辑芯片所能够构建的双口 RAM容量有限,较佳地,从系统的引导程 序可由程序汇编语言编写、且不需要堆栈空间,这样,可以节省引导程序文件本身所占用的 空间、以及运行引导程序所需要的空间;进而,为了进一步节省引导程序文件本身所占用 的空间,从系统的引导程序可以仅包含从系统CPU初始化系统间接口和从系统随机存储器 件这两种功能,而现有技术中从系统引导程序所具备的其他非必要的辅助扩展功能可以舍 弃。以上,是对本发明实施例中分布式系统及其主系统和从系统的详细说明,下面,再 对本发明实施例中的代码加载方法进行详细说明。图3为本发明实施例代码加载方法的示例性流程图。如图3所示,本实施例中的 代码加载方法基于如图2所示的分布式系统,并包括如下步骤步骤300,分布式系统上电。步骤301,从系统CPU保持复位状态,如果从系统逻辑芯片内未固化有双口 RAM,则 还需要从系统逻辑芯片构建双口 RAM ;主系统CPU从本系统非易失性存储器件加载主系统 引导程序,用以初始化主系统随机存储器件、主系统CPU与从系统CPU之间的系统间接口、 以及主系统CPU与从系统逻辑芯片内的双口 RAM之间的系统间总线。实际应用中,从系统逻辑芯片通常采用FPGA,其中一部分型号的FPGA内固化有可在上电时自动构建而成的双口 RAM ;还有一部分型号的FPGA内置有只读存储器,该只读存储器内存储有可供从系统 逻辑芯片构建所述双口 RAM的逻辑芯片代码,对于这种情况,本步骤中,从系统逻辑芯片从 自身内置的只读存储器中加载逻辑芯片代码、用以构建所述双口 MM另外一部分型号的FPGA则既没有固化的双口 RAM、也未内置可存放逻辑芯片代 码的只读存储器,对于这种情况,本步骤之前需要进一步在主系统非易失性存储器件中存 放可供逻辑芯片构建所述双口 MM的逻辑芯片代码,且在本步骤中,从系统逻辑芯片通过 JTAG总线从主系统非易失性存储器件中加载所述逻辑芯片代码、用以构建所述双口 RAM。此外,考虑到逻辑芯片所能够构建的双口 RAM容量有限,较佳地,从系统的引导程 序可由程序汇编语言编写、且不需要堆栈空间,进而从系统的引导程序可以仅包含从系统 CPU初始化系统间接口和从系统随机存储器件这两种功能。步骤302,主系统CPU完成其初始化后,从主系统非易失性存储器件中读取从系 统的引导程序,并通过已初始化的系统间总线写入至从系统逻辑芯片内的双口 RAM予以保存。步骤303,主系统CPU写入从系统引导程序完毕后,对从系统CPU解除复位。本步骤中,主系统CPU可以通过电平信号改变从系统CPU复位管脚状态来实现对 从系统CPU解除复位。
步骤304,从系统CPU解除复位后,从其所在从系统的从系统逻辑芯片内的双口 RAM加载引导程序、并初始化所述系统间接口、以及从系统随机存储器件,从系统CPU完成 初始化后通过已初始化的系统间接口通知主系统CPU发送该从系统的应用程序。步骤305,主系统CPU从本系统非易失性存储器件中读取从系统的应用程序,并通 过已初始化的系统间接口发送至从系统CPU。步骤306,从系统CPU将接收的该从系统的应用程序加载至本系统随机存储器件 中,然后跳转到应用程序入口地址执行应用程序代码、并进行应用程序初始化,从系统CPU 还在应用程序初始化后通知主系统CPU启动完毕,以供主系统记录各从系统是否启动完 毕。至此,本流程结束,分布式系统开始正常运行应用程序所对应的业务。需要说明的是,上述流程仅仅是以一个从系统为例,实际应用中,对于每一个从系 统均需要并行执行上述流程。如上可见,本发明实施例由主系统统一管理和维护各从系统的引导程序和应用程 序、且各从系统逻辑芯片内具有用于存放本系统引导程序的双口 RAM,因而使得主系统能够 将各从系统的引导程序分别写入至该从系统逻辑芯片内的双口 RAM,并能够在写入完毕后 对该从系统CPU解除复位、以使该从系统CPU从本系统逻辑芯片内的双口 RAM中加载本系 统引导程序,从而通过主系统统一实现各从系统引导程序加载及初始化启动,降低系统生 产和维护成本、提高系统可靠性和健壮性、减少升级和扩展所受限制、并降低系统功耗。以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在 本发明的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本发明的保 护范围之内。
权利要求
1.一种分布式系统,包括主系统和至少一个从系统,其中,主系统包括主系统CPU、主系统逻辑芯片、主系统随机存储器件、以及非易失性存储器 件,主系统的非易失性存储器件中存放有主系统的引导程序和应用程序、以及从系统的应 用程序;从系统包括从系统CPU、从系统逻辑芯片、以及从系统随机存储器件,从系统CPU通过 系统间接口与主系统CPU相连;其特征在于,从系统逻辑芯片通过系统间总线与主系统CPU相连、且内部具有双口 RAM,该双口 RAM 一端连接所述系统间总线、另一端连接其所在从系统的从系统CPU ;主系统非易失性存储器件中还存放有各从系统的引导程序;主系统CPU,用于在分布式系统上电后从主系统的非易失性存储器件加载主系统引导 程序,用以初始化主系统随机存储器件、以及所述系统间接口和所述系统间总线;在初始化 完毕后,通过所述系统间总线将主系统非易失性存储器件中的各从系统的引导程序分别写 入至各从系统逻辑芯片内的双口 RAM;在写入完毕后,对各从系统CPU解除复位;在收到从 系统CPU发送的请求应用程序的通知后,通过所述系统间接口将主系统的非易失性存储器 件中的对应从系统的应用程序发送给对应从系统CPU ;从系统CPU,用于在分布式系统上电后保持复位状态;在被主系统CPU解除复位后,从 其所在从系统的从系统逻辑芯片内的双口 RAM加载该从系统的引导程序、用以初始化所 述系统间接口以及从系统随机存储器件;在初始化完毕后,通过所述系统间接口向主系统 CPU发送请求应用程序的通知,然后接收主系统CPU发送的该从系统的应用程序、并加载至 从系统随机存储器件中。
2.如权利要求1所述的分布式系统,其特征在于,从系统逻辑芯片为FPGA;所述FPGA内固化有所述双口 RAM ;或者,所述FPGA内置有只读存储器、该只读存储器 内存储有可供所述FPGA构建所述双口 RAM的逻辑芯片代码;或者,主系统非易失性存储 器件中存放有可供所述FPGA构建所述双口 RAM的逻辑芯片代码,且所述FPGA进一步通过 JTAG总线从主系统非易失性存储器件中加载所述逻辑芯片代码、用以构建所述双口 RAM。
3.如权利要求2所述的分布式系统,其特征在于,从系统的引导程序由汇编语言编写、 且不需要堆栈空间。
4.如权利要求1至3中任一项所述的分布式系统,其特征在于,主系统CPU利用电平信 号改变从系统CPU复位管脚状态,以实现对从系统CPU解除复位。
5.一种分布式系统中的主系统,包括主系统CPU、主系统逻辑芯片、主系统随机存储器 件、以及非易失性存储器件,该主系统的非易失性存储器件存放有主系统的引导程序和应 用程序、以及各从系统的应用程序,且该主系统CPU通过系统间接口与所述分布式系统中 的各从系统CPU相连;其特征在于,所述非易失性存储器件中还存放有各从系统的引导程序,且主系统CPU还通过系统间 总线与各从系统的逻辑芯片相连;在分布式系统上电后,主系统CPU用于从所述非易失性存储器件加载主系统引导程 序,用以初始化主系统随机存储器件、以及所述系统间接口和所述系统间总线;在初始化完毕后,主系统CPU用于通过所述系统间总线将所述非易失性存储器件中的 各从系统的引导程序分别写入至各从系统逻辑芯片内的双口 RAM ;在任一从系统的引导程序写入完毕后,主系统CPU用于对该从系统的CPU解除复位,以 使该从系统的CPU能够从该从系统逻辑芯片内的双口 RAM中加载该从系统的引导程序、并 初始化所述系统间接口;在收到任一从系统CPU初始化完毕后发送的请求应用程序的通知后,主系统CPU用于 通过所述系统间接口将所述非易失性存储器件中的该从系统的应用程序发送给该从系统 的 CPU。
6.如权利要求5所述的主系统,其特征在于,从系统逻辑芯片为FPGA,且所述非易失性 存储器件中存放有可供逻辑芯片构建所述双口 RAM的逻辑芯片代码,以供各从系统逻辑芯 片在所述分布式系统上电后通过JTAG总线予以加载。
7.如权利要求6所述的主系统,其特征在于,从系统的引导程序由汇编语言编写、且不 需要堆栈空间。
8.如权利要求5至7中任一项所述的主系统,其特征在于,所述CPU利用电平信号改变 从系统CPU复位管脚状态,以实现对从系统CPU解除复位。
9.一种分布式系统中的从系统,包括从系统CPU、从系统逻辑芯片、以及从系统随机存 储器件,从系统CPU通过系统间接口与所述分布式系统中的主系统CPU相连,其特征在于,从系统逻辑芯片通过系统间总线与主系统CPU相连、且内部具有双口 RAM,该双口 RAM 一端连接所述系统间总线、以使主系统CPU写入该从系统的引导程序,该双口 RAM另一端则 连接其所在从系统的从系统CPU ;从系统CPU,用于在分布式系统上电后保持复位状态;在被主系统CPU解除复位后,从 其所在从系统的从系统逻辑芯片内的双口 RAM加载该从系统的引导程序、用以初始化所 述系统间接口以及从系统随机存储器件;在初始化完毕后,通过所述系统间接口向主系统 CPU发送请求应用程序的通知,然后接收主系统CPU发送的该从系统的应用程序、并加载至 从系统随机存储器件中。
10.如权利要求9所述的主系统,其特征在于,从系统逻辑芯片为FPGA;所述FPGA内固化有所述双口 RAM;或者,所述FPGA内置有只读存储器,该只读存储器 内存储有可供所述FPGA构建所述双口 RAM的逻辑芯片代码;或者,主系统非易失性存储 器件中存放有可供所述FPGA构建所述双口 RAM的逻辑芯片代码,且所述FPGA进一步通过 JTAG总线从主系统非易失性存储器件中加载所述逻辑芯片代码、用以构建所述双口 RAM。
11.如权利要求10所述的主系统,其特征在于,从系统的引导程序由汇编语言编写、且 不需要堆栈空间。
12.如权利要求9至11中任一项所述的从系统,其特征在于,从系统CPU的复位管脚的 状态可被主系统CPU通过电平信号予以改变,用以实现从系统CPU的解除复位。
13.—种分布式系统中的代码加载方法,其特征在于,该方法包括a、分布式系统上电后,从系统CPU保持复位状态;主系统CPU从本系统非易失性存储器 件加载主系统引导程序,用以初始化主系统随机存储器件、主系统CPU与从系统CPU之间的 系统间接口、以及主系统CPU与从系统逻辑芯片内的双口 RAM之间的系统间总线;b、主系统CPU完成初始化后,从主系统非易失性存储器件中读取从系统的引导程序, 并通过所述系统间总线写入至从系统逻辑芯片构建的双口 RAM ;C、主系统CPU写入从系统引导程序完毕后,对从系统CPU解除复位;d、从系统CPU解除复位后,从其所在从系统的从系统逻辑芯片内的双口RAM加载引导 程序、并初始化所述系统间接口、以及从系统随机存储器件;e、从系统CPU完成初始化后,通过所述系统间接口通知主系统CPU发送该从系统的应 用程序;f、主系统CPU从本系统非易失性存储器件中读取从系统的,并通过所述系统间接口发 送至从系统CPU ;g、从系统CPU将接收的该从系统的应用程序加载至本系统随机存储器件中。
14.如权利要求13所述的代码加载方法,其特征在于,从系统逻辑芯片为FPGA;所述FPGA内固化有所述双口 RAM ;或者,所述FPGA内置有只读存储器,该只读存储器内存储有可供从系统逻辑芯片构建 所述双口 RAM的逻辑芯片代码,所述步骤a中,从系统逻辑芯片从自身内置的只读存储器中 加载逻辑芯片代码、用以构建所述双口 MM ;或者,所述步骤a之前进一步在主系统非易失性存储器件中存放可供逻辑芯片构建所 述双口 RAM的逻辑芯片代码,所述步骤a中,从系统逻辑芯片通过JTAG总线从主系统非易 失性存储器件中加载所述逻辑芯片代码、用以构建所述双口 RAM。
15.如权利要求14所述的代码加载方法,其特征在于,从系统的引导程序由汇编语言 编写、且不需要堆栈空间。
16.如权利要求13至15中任一项所述的代码加载方法,其特征在于,所述步骤c中,主 系统CPU通过电平信号改变从系统CPU复位管脚状态来实现对从系统CPU解除复位。
全文摘要
本发明公开了一种分布式系统及其主系统和从系统以及代码加载方法。本发明由主系统统一管理和维护各从系统的引导程序和应用程序、且各从系统逻辑芯片内具有用于存放本系统引导程序的双口RAM,因而使得主系统能够将各从系统的引导程序分别写入至该从系统逻辑芯片内的双口RAM,并能够在写入完毕后对该从系统CPU解除复位、以使该从系统CPU从本系统逻辑芯片内的双口RAM中加载本系统引导程序,从而通过主系统统一实现各从系统引导程序加载及初始化启动,降低系统生产和维护成本、提高系统可靠性和健壮性、减少升级和扩展所受限制、并降低系统功耗。
文档编号G06F9/445GK102053849SQ20091023595
公开日2011年5月11日 申请日期2009年10月30日 优先权日2009年10月30日
发明者李星爽, 段琳, 赵志宇, 钱嘉林 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1