自启动串行引导程序加载与读取系统及其方法

文档序号:6470690阅读:215来源:国知局
专利名称:自启动串行引导程序加载与读取系统及其方法
技术领域
本发明涉及程序加载系统领域,具体是指基于系统级芯片的自启动串行引导程序
加载与读取系统及其方法。
背景技术
目前,基于系统级芯片(SOC芯片或DSP芯片等)的程序加载与读取系统,结构如 图1所示,包括S0C芯片或DSP芯片和用于存储算法程序的外部存储器,如SPI-EEPROM(高 速同步串行口 _电可擦写可编程只读存储器)等。其中,SOC或DSP芯片包括CPU、程序加 载模块以及芯片内部程序存储器(RAM),该程序加载模块由外部接口和一个自带初始化引 导程序的ROM组成,所述RAM、外部接口、自带初始化引导程序的ROM分别与CPU信号连接, 外部接口还外接外部存储器。该SOC或DSP芯片系统的程序加载方法是一种复杂的引导程 序加载方法,具体如下系统上电后,CPU读取ROM内的初始化引导程序并对其执行解码等 处理,对将要进行加载算法程序的外部接口进行读写模式配置等初始化操作,然后通过外 部接口读取外部存储器中的算法程序,最后,算法程序在CPU的控制下加载到芯片内部程 序存储器(RAM)内并执行。 上述程序加载系统的程序加载方法存在的问题是每次系统上电后,CPU都要花 费一段时间来启动初始化引导程序等复杂的初始化配置。首先要花费一段时间对ROM内自 带的初始化引导程序进行读取、解码等处理,然后对将要进行加载算法程序的外部接口进 行读写模式配置等初始化操作,最后才真正开始下载算法程序并执行。启动初始化引导程 序所花费的时间拖慢了 SOC或DSP芯片系统的启动时间。

发明内容
本发明目的在于克服上述现有技术的不足,提供一种自启动串行引导程序加载 与读取系统,本系统上电后,其内置的自启动串行引导程序加载模块(SSBL, Self Serial Boot Loader)无需经过CPU的初始化配置,而直接通过标准SPI协议接口快速读取外部SPI 接口存储器中的算法程序,然后通过两路双向复用器(Multiplexer)将算法程序快速加载 到内部程序存储器(RAM)中,程序加载方法简单、系统启动时间短,而且容易实现。
本发明的另一目的在于提供上述自启动串行引导程序加载与读取系统实现算法 程序加载和读取的方法。 本发明的目的通过下述技术方案实现自启动串行引导程序加载与读取系统,包 括系统级芯片和用于存储算法程序的外部SPI接口存储器,其中,系统级芯片包括CPU、内 部程序存储器(RAM)、自启动串行引导程序加载模块(SSBL,Self Serial Boot Loader)、两 路双向复用器(Multiplexer)及标准SPI协议接口 ,所述自启动串行引导程序加载模块分 别与两路双向复用器的输入端I、 CPU信号连接,自启动串行引导程序加载模块还通过标准 SPI协议接口与外部存储器信号连接,同时,两路双向复用器的输入端II与CPU信号连接, 两路双向复用器的输出端与RAM信号连接。所述自启动串行引导程序加载模块由自启动加载电路(SBL)、工作模式切换电路(SMC) 、 SPI主模式电路(SPM)组成,工作模式切换电路 分别与自启动加载电路、SPI主模式电路信号连接。 为了更好地实现本发明目的,所述系统级芯片为S0C芯片或DSP芯片,所述用于存 储算法程序的外部SPI接口存储器为SPI-EEPROM。 上述自启动串行引导程序加载与读取系统实现算法程序加载和读取的方法,包括 算法程序加载方法和读取方法,其中,加载方法具体包括如下步骤 (1)系统上电后,自启动串行引导程序加载模块中的工作模式切换电路(SMC)禁 用SPI主模式电路(SPIM),并选通自启动加载电路(SBL); (2)自启动加载电路(SBL)发送复位(RESET)信号对CPU进行复位(RESET),同时, 发送选通控制信号选通两路双向复用器(Multiplexer)的输入端I ; (3)自启动加载电路(SBL)控制工作模式切换电路(SMC)通过标准SPI协议 接口读取外部SPI接口存储器中的算法程序,并将所读取的算法程序经两路双向复用器 (Multiplexer)加载到内部程序存储器(RAM)中;
读取方法具体包括以下步骤 A、上述加载方法步骤(3)中,当算法程序加载到内部程序存储器(RAM)完成后,自 启动串行引导程序加载模块中的工作模式切换电路(SMC)禁用自启动加载电路(SBL),并 选通SPI主模式电路(SPIM),使SPI主模式电路(SPIM)连接上外部SPI接口存储器;
B、自启动加载电路(SBL)发送选通控制信号使CPU进入正常运行状态,同时,自启 动加载电路(SBL)发送选通控制信号选通两路双向复用器(Multiplexer)的输入端II ;然 后,CPU通过两路双向复用器(Multiplexer)读取内部程序存储器(RAM)中的算法程序。
上述方法步骤B中,当CPU通过两路双向复用器(Multiplexer)读取内部程序 存储器(RAM)中的算法程序后,若CPU发现算法程序内的代码包含对外部SPI接口存 储器的重新访问,则控制SPI主模式电路(SPIM) 二次读取外部SPI接口存储器中对应 与CPU所读取算法程序内的代码的算法程序,并将二次读取的算法程序经两路双向复用 器(Multiplexer) 二次加载到内部程序存储器(RAM)中,然后,CPU通过两路双向复用器 (Multiplexer)对二次加载到内部程序存储器(RAM)的算法程序进行二次读取。
若CPU发现二次读取的算法程序内的代码包含对外部SPI接口存储器的重新访 问,可以按照上述二次加载和读取方法进行循环多次加载和读取操作。
本发明相对于现有技术具有如下的优点及效果 (1)本发明自启动串行引导程序加载与读取系统,在进行外部算法程序加载时,系 统内置的自启动串行引导程序加载模块直接通过标准SPI协议接口快速读取外部SPI接口 存储器中的算法程序,然后通过两路双向复用器将算法程序快速加载到RAM中,而无需经 过CPU的初始化配置,从而节省了现有系统级芯片的程序加载系统启动时用在启动初始化 引导程序的时间,程序加载方法简单、程序加载所需时间短,所以系统启动时间相对于现有 程序加载系统短,而且容易实现; (2)本发明自启动串行引导程序加载与读取系统在外部算法程序加载完成后,内 置的自启动串行引导程序加载模块立刻选通两路双向复用器与CPU的相连接的输入端II, 从而,CPU可以快速读取RAM中的算法程序并执行; (3)本发明中,当CPU通过两路双向复用器(Multiplexer)读取内部程序存储器
4(RAM)中的算法程序后,若CPU发现算法程序内的代码包含对外部存储器的重新访问,则 CPU可以根据算法程序内的代码控制SPI主模式电路(SPIM)读取外部SPI接口存储器对应 于所述代码的算法程序,以实现二次加载或读写操作,甚至于循环多次加载和读取操作,而 且多次加载和读取操作逻辑简单、快速、容易实现。


图1为现有基于系统级芯片的程序加载与读取系统的结构示意图;
图2为本发明自启动串行引导程序加载与读取系统的结构示意图;
图3为本发明系统中自启动串行引导程序加载模块的结构示意图;
图4为本发明自启动串行引导程序加载与读取系统的工作流程框图。
具体实施例方式
下面结合实施例及附图对本发明作进一步详细的描述,但本发明的实施方式不限 于此。 实施例1 如图2所示,本发明自启动串行引导程序加载与读取系统,包括S0C芯片或DSP芯 片和用于存储算法程序的SPI-EEPROM,其中,SOC芯片或DSP芯片包括CPU、内部程序存储 器(RAM)、自启动串行引导程序加载模块(SSBL, SelfSerial Boot Loader)、两路双向复用 器(Multiplexer)及标准SPI协议接口 ,所述自启动串行引导程序加载模块分别与两路双 向复用器的输入端I、 CPU信号连接,自启动串行引导程序加载模块还通过标准SPI协议接 口与外部存储器信号连接,同时,两路双向复用器的输入端II与CPU信号连接,两路双向复 用器的输出端与RAM信号连接。 如图3所示,自启动串行引导程序加载模块由自启动加载电路(SBL)、工作模式切 换电路(SMC)、SPI主模式电路(SPIM)组成,工作模式切换电路分别与自启动加载电路、SPI 主模式电路信号连接,工作模式切换电路根据具体情况连通自启动加载电路或SPI主模式 电路,以实现自启动串行引导程序加载模块的工作模式转换。 上述自启动串行引导程序加载与读取系统实现算法程序加载和读取的方法,包括 算法程序加载方法和读取方法,其中,加载方法具体包括如下步骤 (1)系统上电后,自启动串行引导程序加载模块中的工作模式切换电路(SMC)禁 用SPI主模式电路(SPIM),并选通自启动加载电路(SBL); (2)自启动加载电路(SBL)发送复位(RESET)信号对CPU进行复位(RESET),同时, 发送选通控制信号选通两路双向复用器(Multiplexer)的输入端I ; (3)自启动加载电路(SBL)控制工作模式切换电路(SMC)通过标准SPI协议 接口读取外部SPI接口存储器中的算法程序,并将所读取的算法程序经两路双向复用器 (Multiplexer)加载到内部程序存储器(RAM)中;
读取方法具体包括以下步骤 A、上述加载方法步骤(3)中,当算法程序加载到内部程序存储器(RAM)完成后,自 启动串行引导程序加载模块中的工作模式切换电路(SMC)禁用自启动加载电路(SBL),并 选通SPI主模式电路(SPIM),使SPI主模式电路(SPIM)连接上外部SPI接口存储器;
B、自启动加载电路(SBL)发送选通控制信号释放CPU,使CPU进入正常运行状态, 同时,自启动加载电路(SBL)发送选通控制信号选通两路双向复用器(Multiplexer)的输 入端II ;然后,CPU通过两路双向复用器(Multiplexer)读取内部程序存储器(RAM)中的算 法程序。 上述方法步骤B中,当CPU通过两路双向复用器(Multiplexer)读取内部程序 存储器(RAM)中的算法程序后,若CPU发现算法程序内的代码包含对外部SPI接口存 储器的重新访问,则控制SPI主模式电路(SPIM) 二次读取外部SPI接口存储器中对应 与CPU所读取算法程序内的代码的算法程序,并将二次读取的算法程序经两路双向复用 器(Multiplexer) 二次加载到内部程序存储器(RAM)中,然后,CPU通过两路双向复用器 (Multiplexer)对二次加载到内部程序存储器(RAM)的算法程序进行二次读取。
若CPU发现二次读取的算法程序内的代码包含对外部SPI接口存储器的重新访 问,可以按照上述二次加载和读取方法进行循环多次加载和读取操作。
如上所述,便可较好地实现本发明。
权利要求
自启动串行引导程序加载与读取系统,包括系统级芯片和用于存储算法程序的外部存储器,系统级芯片包括CPU、内部程序存储器,其特征在于所述外部存储器为外部SPI接口存储器,所述系统级芯片还包括自启动串行引导程序加载模块、两路双向复用器及标准SPI协议接口,所述自启动串行引导程序加载模块分别与两路双向复用器的输入端I、CPU信号连接,自启动串行引导程序加载模块还通过标准SPI协议接口与外部存储器信号连接,同时,两路双向复用器的输入端II与CPU信号连接,两路双向复用器的输出端与RAM信号连接;所述自启动串行引导程序加载模块由自启动加载电路、工作模式切换电路、SPI主模式电路组成,工作模式切换电路分别与自启动加载电路、SPI主模式电路信号连接。
2. 根据权利要求1所述自启动串行引导程序加载与读取系统,其特征在于所述系统 级芯片为S0C芯片或DSP芯片。
3. 根据权利要求1所述自启动串行引导程序加载与读取系统,其特征在于所述外部 SPI接口存储器为SPI-EEPROM。
4. 利用权利要求1所述自启动串行引导程序加载与读取系统实现算法程序加载和读 取的方法,包括加载方法和读取方法,其特征在于加载方法的具体步骤如下(1) 系统上电后,自启动串行引导程序加载模块中的工作模式切换电路禁用SPI主模 式电路,并选通自启动加载电路;(2) 自启动加载电路发送复位信号对CPU进行复位,同时,发送选通控制信号选通两路 双向复用器的输入端I ;(3) 自启动加载电路控制工作模式切换电路通过标准SPI协议接口读取外部SPI接 口存储器中的算法程序,并将所读取的算法程序经两路双向复用器加载到内部程序存储器 中;读取方法具体包括以下步骤A、 上述加载方法步骤(3)中,当算法程序加载到内部程序存储器完成后,自启动串行 引导程序加载模块中的工作模式切换电路禁用自启动加载电路,并选通SPI主模式电路, 使SPI主模式电路连接上外部SPI接口存储器;B、 自启动加载电路发送选通控制信号使CPU进入正常运行状态,同时,自启动加载电 路发送选通控制信号选通两路双向复用器的输入端II ;然后,CPU通过两路双向复用器读 取内部程序存储器中的算法程序。
5. 根据权利要求4所述自启动串行引导程序加载和读取方法,其特征在于步骤B中,当CPU通过两路双向复用器读取内部程序存储器中的算法程序后,若CPU发 现算法程序内的代码包含对外部SPI接口存储器的重新访问,则控制SPI主模式电路二次 读取外部SPI接口存储器中对应与CPU所读取算法程序内的代码的算法程序,并将二次读 取的算法程序经两路双向复用器二次加载到内部程序存储器中,然后,CPU通过两路双向复 用器对二次加载到内部程序存储器的算法程序进行二次读取;若CPU发现二次读取的算法程序内的代码包含对外部SPI接口存储器的重新访问,可 以按照上述二次加载和读取方法进行循环多次加载和读取操作。
全文摘要
本发明为自启动串行引导程序加载与读取系统,包括系统级芯片和外部SPI接口存储器,系统级芯片包括CPU、内部程序存储器、自启动串行引导程序加载模块、两路双向复用器及标准SPI协议接口。自启动串行引导程序加载模块分别与两路双向复用器的输入端I、CPU连接,通过标准SPI协议接口与外部SPI接口存储器连接,两路双向复用器的输入端II与CPU连接,输出端与RAM连接;自启动串行引导程序加载模块由自启动加载电路、工作模式切换电路、SPI主模式电路组成。上电后,自启动串行引导程序加载模块直接读取外部存储器中的算法程序,并快速加载到内部程序存储器,程序加载方法简单、系统启动时间短,且能进行多次加载和读取操作。
文档编号G06F13/38GK101770373SQ200810220688
公开日2010年7月7日 申请日期2008年12月31日 优先权日2008年12月31日
发明者伍康文, 李世锐 申请人:广州市鸿芯微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1