CN105630530A - 数字信号处理器多级启动方法及系统 - Google Patents
数字信号处理器多级启动方法及系统 Download PDFInfo
- Publication number
- CN105630530A CN105630530A CN201410648238.5A CN201410648238A CN105630530A CN 105630530 A CN105630530 A CN 105630530A CN 201410648238 A CN201410648238 A CN 201410648238A CN 105630530 A CN105630530 A CN 105630530A
- Authority
- CN
- China
- Prior art keywords
- program
- level
- digital signal
- signal processor
- starts
- 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
Landscapes
- Stored Programmes (AREA)
Abstract
本发明提出一种数字信号处理器多级启动方法及系统,该方法包括:执行数字信号处理器的第一级启动程序,根据外围配置电路选择启动方式,并读取第二级启动程序;执行位于所述第二级启动程序,完成对数字信号处理器最小系统的基本配置,并跳转至存储在外部闪存中的第三级程序,复制所述外部闪存中的第三级程序到内存中;在所述内存中执行所述第三级程序。该方案采用多级引导程序的方式启动储存于数字处理器外部闪存中的第三级程序,该第三级程序可以为嵌入式操作系统或中断控制系统。所述数字信号处理器多级启动方法,针对中断控制系统设计了多级启动程序,提供通用的普适性解决方案,可以同时支持嵌入式操作系统和中断控制系统的启动。
Description
技术领域
本发明涉及嵌入式开发领域,尤其涉及一种可以同时支持对于嵌入式操作系统和中断控制系统的数字信号处理器多级启动方法及系统。
背景技术
数字信号处理器用于连续模拟信号进行测量或滤波,以数字的方式表示并处理信息。德州仪器公司的Davinci处理器是一种应用广泛的典型数字信号处理器,其将高性能的可编程核与存储器及外设集成在一起,包括一个可编程的数字信号处理器(DigitalSignalProcessor,DSP),以及面向视频的硬件加速器,为实时的压缩-解压缩算法及其他的通信信号处理算法提供所需的计算功能;该处理器还将一个精简指令集计算机(ReducedInstructionSetComputer,RISC)处理器和一个数字信号处理器组合在一起,增加对控制界面和用户界面的支持,使之更加易于编程;所集成的视频外设,降低了系统成本,简化了设计。这种多处理器的硬件结构,构成了开放软件结构的基础,便于灵活、快速地开发各类包含数字视频的产品。更为重要的是,Davinci技术不仅包含了处理器以及传统的开发工具和应用支持,还包含了嵌入式的操作系统,开发多媒体应用所需的基础软件,以及针对视频、图像、音频、话音处理的标注化程序,使开发者能够更快、更容易地实现数字视频。
Davinci技术处理器是建立在德州仪器公司最新的TMS320C64x+DSP核基础上的SoC,包含DSP核、ARM核、加速器和外设,从而保证各种数字视频终端设备对价格、性能及将来发展的苛刻要求。目前基于Davinci架构下的处理器主要用于运行嵌入式操作系统,其对linux2.6.10及以上版本提供丰富的支持,linux2.6.10的程序包中陆续开始为Davinci架构下的数字信号处理器提供有效支持,使得linux在Davinci架构下的数字信号处理器中得到了广泛、成功的应用,同时德州仪器公司开发了一套适用于Davinci架构下的数字信号处理器,针对linux启动的多级启动程序,使得处理器上点后能够自动加载存储于外部闪存(如NandFlash)中的内核。
然而,目前Davinci架构数字信号处理器并没有专门设计针对中断控制系统的多级启动程序,无法同时支持对于嵌入式操作系统和中断控制系统的启动。
发明内容
本发明的技术解决问题是:解决现有技术不足,提供一种数字信号处理器多级启动方法及系统,以解决现有的Davinci架构数字信号处理器没有专门设计针对中断控制系统的多级启动程序,无法同时支持对于嵌入式操作系统和中断控制系统的启动的缺陷。
基于此,本发明提供的技术解决方案是:
一种数字信号处理器多级启动方法,包括:
执行数字信号处理器的第一级启动程序,根据外围配置电路选择启动方式,并读取第二级启动程序;
执行位于所述第二级启动程序,完成对数字信号处理器最小系统的基本配置,并跳转至存储在外部闪存中的第三级程序,复制所述外部闪存中的第三级程序到内存中;
在所述内存中执行所述第三级程序。
较佳的,所述的数字信号处理器多级启动方法中:
所述第三级程序为嵌入式操作系统或中断控制系统。
较佳的,所述的数字信号处理器多级启动方法,还包括:
所述第二级启动程序位于该数字信号处理器的外部EEPROM中。
所述第一级启动程序将所述通过串行外设接口将所述外部EEPROM中的第二级启动程序拷贝到数字信号处理器的内部IRAM中,并开始运行所述第二级启动程序。
较佳的,完成对数字信号处理器最小系统的基本配置包括:
第二级启动程序配置数字信号处理器时钟,异步收发传输器串口以及中断;
第二级启动程序根据外围配置芯片的选型,对外部闪存接口,与内存接口进行配置。
较佳的,在执行数字信号处理器的第一级启动程序之前,还包括:
分别编写并编译第二级启动程序和第三级程序,并转换编译后的程序文件格式;
将转化文件格式后的第二级启动程序刻录到该数字信号处理器的外部EEPROM中,将转化文件格式后的第三级程序刻录到外部闪存中。
较佳的,所述将转化文件格式后的第二级启动程序刻录到该数字信号处理器外部的EEPROM中,包括:
对与外部EEPROM相连的串行外设接口进行初始化;
读入待刻录的第二级启动程序文件,并计算该文件的大小;
将待刻录的第二级启动程序文件写入外部EEPROM;
从EEPROM中读取已刻录的第二级启动程序文件;
比较所述待刻录的第二级启动程序文件和所述已刻录的第二级启动程序文件是否一致。
较佳的,所述将转化文件格式后的第三级程序刻录到外部闪存中,包括:
计算转化文件格式后的第三级程序文件的大小;
在外部闪存中分别存储启动第三级程序所需要的标识头、第三级程序入口地址、第三级程序存储block地址、第三级程序存储page地址以及第三级程序拷贝目的地址。
较佳的,在内存中执行所述第三级程序包括:
第三级程序由第三级程序入口地址开始顺序执行;
当发生中断请求时,第三级程序首先转到第一指定地址开始运行,第一指定地址预设的机器码为短跳转命令,并指定有短跳转地址,在该短跳转地址上存储有长跳转命令及长跳转地址;
执行长跳转命令,在长跳转地址存储中断检测函数,通过读取中断状态寄存器参数,判断触发中断的事件,并响应中断服务函数。
较佳的,所述的数字信号处理器多级启动方法中:
编写第三级程序包括:将短跳转命令以及短跳转地址、长跳转命令、长跳转地址翻译成二进制机器码,并写入第三级程序,完成中断跳转控制。
本发明还提供了一种数字信号处理器多级启动系统,包括:
数字信号处理器,其内部IROM中存储有用于根据外围配置电路选择启动方式并读取第二级启动程序的第一级启动程序;
连接到所述数字信号处理器的外部EEPROM,其中存储有用于完成对数字信号处理器最小系统的基本配置并跳转至第三级程序的第二级启动程序;
连接到所述数字信号处理器的外部闪存,其中存储有第三级程序;
连接到所述数字信号处理器的内存,用于运行所述第三级程序。
本发明与现有技术相比的有益效果是:
本发明技术方案根据数字信号处理器的程序启动方式,采用多级引导程序的方式启动储存于数字信号处理器外部闪存中的第三级程序,该第三级程序可以为嵌入式操作系统或中断控制系统。所述嵌入式操作系统可以为linux,所述中断控制系统可以为用户自己编写的具备中断功能的嵌入式程序,采用主循环加中断触发事件的模式响应突发任务。因此,本发明采用的数字信号处理器多级启动方法,针对中断控制系统设计了多级启动程序,为Davinci架构的数字信号处理器提供了通用的普适性的解决方案,可以支持对于嵌入式操作系统和中断控制系统的启动,具备高度可移植性。
附图说明
图1是本发明提供的数字信号处理器多级启动方法流程示意图;
图2是本发明提供的刻录第二级启动程序和第三级程序的实现方式示意图;
图3是本发明提供的文件格式转换流程图;
图4是本发明提供的EEPROM刻录的固化流程示意图;
图5是本发明提供的NandFlash刻录的固化流程示意图;
图6是本发明提供的第二级启动程序加载DSP程序模块控制流程图;
图7是本发明提供的数字信号处理器多级启动系统架构图。
具体实施方式
为解决现有的数字信号处理器无法同时支持对于嵌入式操作系统和中断控制系统的启动的缺陷,本申请实施例提供了一种数字信号处理器多级启动方法。
实施例一:
下面结合附图对本发明的技术方案进行详细说明,参见图1所示的数字信号处理器多级启动方法流程示意图,其包括以下步骤:
S101,执行数字信号处理器的第一级启动程序,根据外围配置电路选择启动方式,并读取第二级启动程序;
S102,执行位于所述第二级启动程序,完成对数字信号处理器最小系统的基本配置,并跳转至存储在外部闪存中的第三级程序,复制所述外部闪存中的第三级程序到内存中;
S103,在内存中执行所述第三级程序。
本实施例提供的技术方案根据数字信号处理器的程序启动方式,采用多级引导程序的方式启动储存于数字信号处理器外部闪存中的第三级程序,该第三级程序可以为嵌入式操作系统或中断控制系统。所述嵌入式操作系统可以为linux,所述中断控制系统可以为用户自己编写的具备中断功能的嵌入式程序,采用主循环加中断触发事件的模式响应突发任务。因此,本实施例采用的数字信号处理器多级启动方法,针对中断控制系统设计了多级启动程序,同时可以支持对于嵌入式操作系统和中断控制系统的启动。
上述步骤S101中,所述第一级启动程序RBL(ROMBootloader)可以预先被固化在位于数字信号处理器的内部IROM中,数字信号处理器上电后首先根据外围配置电路选择启动方式,所述启动方式包括I2C(Inter-IntegratedCircuit)、SPI(串行外设接口)、UART(通用异步收发传输器)或Nandflash(外部闪存),本实施例中可以采用SPI方式启动,读取第二级启动程序。
本实施提供的数字信号处理器多级启动方法中,所述第二级启动程序可以预先刻录在该数字信号处理器外部的EEPROM中。并通过SPI接口与数字信号处理器连接。
所述第一级启动程序将所述通过串行外设接口将所述外部EEPROM中的第二级启动程序拷贝到数字信号处理器的内部IRAM中,并开始运行所述第二级启动程序。
上述步骤S102中,第二级启动程序UBL(UserBootloader)可以预先存储于数字信号处理器外围的EEPROM中,RBL通过SPI接口将EEPROM中的UBL拷贝到地址为0x20的内部IRAM中,并开始运行。UBL完成对数字信号处理器最小系统的基本配置(时钟,UART,NandFlash,DDRII),拷贝位于外部闪存NandFlash中的第三级程序到DDRII中,并跳转到DDRII中的第三级程序的入口地址开始运行。
上述步骤S102中,所述第二级启动程序完成对数字信号处理器最小系统的基本配置还可以包括:
第二级启动程序配置数字信号处理器时钟,异步收发传输器串口以及中断;
第二级启动程序根据外围配置芯片的选型,对外部闪存接口,与内存接口进行配置。
第二级启动程序UBL主要完成对数字信号处理器为核心的最小系统的配置,UBL程序首先完成数字信号处理器时钟,UART串口,中断的配置,并根据外围配置芯片的选型,对相应接口如与NandFlash接口,与DDRII接口进行配置,保证该最小系统能够顺利工作,完成第三级程序的搬移和加载运行。
上述步骤S103中,第三级程序可以预先存储在NandFlash中,为需要数字信号处理器运行、具有不同应用功能的程序,对于嵌入式操作系统(linux)而言,该级程序为linux内核,对于中断控制系统而言,该级程序为用户自己编写的具备中断功能的嵌入式程序。
本实施例中,由于第三级程序存储于外部闪存中,运行于内存中,因此实际应用中,该第三级程序(即所述中断控制系统)不受程序大小的限制。
本实施例中所述如NandFlash、DDRII、EEPROM以及IRAM等具有存储功能的单元、模块及其之间的连接方式(I2C、SPI、UART串口)等均为具体的实例,在实现其功能的基础上,还可以等同替换为其它类型的存储单元、模块和连接方式,本实施例描述的范围不局限于上述实例。
实施例二:
结合实施例一提供的数字信号处理器多级启动方法,本实施例还提供了如何编写并刻录第二级启动程序和第三级程序的方法,以实现多级启动的所述数字信号处理器的预先设置,其中,在执行数字信号处理器的第一级启动程序之前,还可以包括:
分别编写并编译第二级启动程序和第三级程序,并转换文件格式;
将转化文件格式后的第二级启动程序刻录到该数字信号处理器的外部EEPROM中;
将转化文件格式后的第三级程序刻录到外部闪存中。
参见图2所示,为其中一种具体的实现方式,包括以下步骤:
步骤S201,编写第二级启动程序,编译连接生成第二级启动程序可执行文件UBLdavinci.out。
步骤S202,编写第三级程序,编译连接生成第三级程序可执行文件DSP.out。
步骤S203,利用文件格式转换,转换UBLdavinci.out为UBLdavinci.bin,转换DSP.out为DSP.bin。
步骤S204,利用EEPROM刻录程序刻录UBLdavinci.bin到EEPROM。
步骤S205,利用NandFlash刻录程序刻录DSP.bin到NandFlash。
所述步骤S203中,所述文件格式转换包括:转换UBLdavinci.out为UBLdavinci.bin转换DSP.out为DSP.bin,其流程如图3所示。进入文件转换模块,调用批处理程序转换.out文件为ASCII格式的中间过程文件,调用ascii2bin.exe生成.bin文件。
本实施例中,为了验证所述第二级启动程序是否刻录成功,在所述将转化文件格式后的第二级启动程序刻录到该数字信号处理器的外部EEPROM中,可以包括以下步骤:
(1)对与外部EEPROM相连的串行外设接口进行初始化;
(2)读入待刻录的第二级启动程序文件,并计算该文件的大小;
(3)将待刻录的第二级启动程序文件写入EEPROM;
(4)从EEPROM中读取已刻录的第二级启动程序文件;
(5)比较所述待刻录的第二级启动程序文件和所述已刻录的第二级启动程序文件是否一致。
具体的,在上述步骤S204将UBLdavinci.bin利用EEPROM刻录程序固化到EEPROM中,其固化流程如图4所示。首先对与EEPROM相连的SPI进行初始化,然后读入待写入的UBLdavinci.bin文件,并计算该文件的大小,将UBLdavinci.bin写入EEPROM,从EEPROM中读取UBLdavinci.bin,并比较写入EEPROM和从EEPROM中读取的数据是否一致。若一致则显示固化成功,否则显示失败。
本实施例中,为了成果实现所述第三级程序在外部闪存中的成功启动,所述将转化文件格式后的第三级程序刻录到外部闪存中,还可以包括:
计算转化文件格式后的第三级程序文件的大小;
在外部闪存中分别存储启动第三级程序所需要的标识头、第三级程序入口地址、第三级程序存储block地址、第三级程序存储page地址以及第三级程序拷贝目的地址。
具体的,所述步骤S205利用NandFlash刻录程序刻录DSP.bin到NandFlash中,其固化流程如图5所示。首先对与NandFlash初始化,并擦除NandFlash。然后读入待写入的DSP.bin文件,并计算该文件的大小,将DSP.bin以page为单位写入NandFlash。若写入失败则打印失败信息。
在将DSP.bin刻录到NandFlash的过程中,需要首先计算DSP.bin文件的大小,而后在NandFlash的block0,page0的前五个字中分别存储启动DSP.bin所需要的信息,1.标识头:0xA1ACED11;2.DSP程序入口地址;3.DSP程序存储block地址(block1);4.DSP程序存储page地址(page1);5.DSP程序拷贝目的地址。
当完成Nandflash及EEPROM程序刻录后,对数字信号处理器重新上电,此时完成对数字信号处理器的预处理,开始执行所述实施例一中所述的数字信号处理器多级启动方法,参见图6所示的第二级启动程序UBL加载DSP程序模块控制流程图,具体步骤和操作参见实施例一中描述即可,在此不再赘述。
本实施例中所述如NandFlash、DDRII、EEPROM以及IRAM等具有存储功能的单元、模块及其之间的连接方式(I2C、SPI、UART串口)等均为具体的实例,在实现其功能的基础上,还可以等同替换为其它类型的存储单元、模块和连接方式,本实施例描述的范围不局限于上述实例。同时本实施例中,所述的程序地址、标志头等也可以由技术人员根据具体需求设定,不以上述实例为限制。
实施例三:
在上述两个实施例的基础上,本实施例在所述数字信号处理器多级启动方法的基础上,进一步提供了一种典型的如何在内存中执行所述第三级程序实现中断控制系统的方法,具体的包括以下步骤:
第三级程序由第三级程序入口地址开始顺序执行;
当发生中断请求时,第三级程序首先转到第一指定地址开始运行,由第一指定地址起始的预设字节的机器码为短跳转命令,并指定有短跳转地址,在该短跳转地址上存储有长跳转命令及长跳转地址;
执行长跳转命令,在长跳转地址存储中断检测函数,通过读取中断状态寄存器参数,判断触发中断的事件,并响应中断服务函数。
对于本实施例中所述的数字信号处理器,当发生中断响应请求后需要经过两次跳转到中断检测函数判断触发中断的事件。当发生中断响应请求后,程序首先转到0X18开始运行,由0X18起始的连续4个字节的机器码为短跳转命令,并指定短跳转地址,并在该短跳转地址上顺序存储长跳转命令及长跳转地址,最终在长跳转地址存储中断检测函数,通过读取中断状态寄存器相应参数,判断触发中断的事件,并响应相应的ISR(InterruptServiceRoutines,中断服务函数)。
因此所述的数字信号处理器多级启动方法中,编写第三级程序包括:将短跳转命令以及短跳转地址、长跳转命令、长跳转地址翻译成二进制机器码,并写入第三级程序,完成中断跳转控制。
对应的,在步骤S202编写数字信号处理器的中断控制系统程序时,需要将短跳转命令联合短跳转地址、长跳转命令、长跳转地址翻译成二进制机器码,并对应到的内存单元,保证触发中断后及时响应相应的ISR。
通过在第三级程序中修改相应的二进制机器码,利用短跳转+长跳转的方式实现中断服务函数的快速加载,快速而高效。
本实施例中所述如NandFlash、DDRII、EEPROM以及IRAM等具有存储功能的单元、模块及其之间的连接方式(I2C、SPI、UART串口)等均为具体的实例,在实现其功能的基础上,还可以等同替换为其它类型的存储单元、模块和连接方式,本实施例描述的范围不局限于上述实例。同时本实施例中,所述的程序地址、标志头以及命令的长度等也可以由技术人员根据具体需求设定,不以上述实例为限制。
实施例四:
相应于上述实施例提供的数字信号处理器多级启动方法,本实施例还对应的提供了一种数字信号处理器多级启动系统,用于实现,参见图7所述的系统架构图,该系统包括以下部分:
数字信号处理器,其内部IROM中存储有用于根据外围配置电路选择启动方式并读取第二级启动程序的第一级启动程序;
连接到所述数字信号处理器的外部带电可擦写可编程只读存储器(EEPROM),其中存储有用于完成对数字信号处理器最小系统的基本配置并跳转至第三级程序的第二级启动程序;所述数字信号处理器还可以包括连接EEPROM的DDRII接口。
连接到所述数字信号处理器的外部闪存(NandFlash),其中存储有第三级程序;所述数字信号处理器还可以包括连接外部闪存的EMIF接口。
连接到所述数字信号处理器的内存(DDRII),用于运行所述第三级程序。所述数字信号处理器还可以包括连接内存的DDRII接口。
本实施例提供的种数字信号处理器多级启动系统,根据数字信号处理器的程序启动方式,采用多级引导程序的方式启动储存于数字信号处理器外部闪存中的第三级程序,该第三级程序可以为嵌入式操作系统或中断控制系统。所述嵌入式操作系统可以为linux,所述中断控制系统可以为用户自己编写的具备中断功能的嵌入式程序,采用主循环加中断触发事件的模式响应突发任务。因此,本实施例采用的种数字信号处理器多级启动系统,针对中断控制系统设计了多级启动程序,同时可以支持对于嵌入式操作系统和中断控制系统的启动。
本实施例中所述如NandFlash、DDRII、EEPROM等具有存储功能的单元、模块及其之间的连接方式等均为具体的实例,在实现其功能的基础上,还可以等同替换为其它类型的存储单元、模块和连接方式,本实施例描述的范围不局限于上述实例。
本实施例是针对上述方法实施例提供的装置实施例,其类同之处相互参见即可,在此不再赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (10)
1.一种数字信号处理器多级启动方法,其特征在于,包括:
执行数字信号处理器的第一级启动程序,根据外围配置电路选择启动方式,并读取第二级启动程序;
执行位于所述第二级启动程序,完成对数字信号处理器最小系统的基本配置,并跳转至存储在外部闪存中的第三级程序,复制所述外部闪存中的第三级程序到内存中;
在所述内存中执行所述第三级程序。
2.根据权利要求1所述的数字信号处理器多级启动方法,其特征在于:
所述第三级程序为嵌入式操作系统或中断控制系统。
3.根据权利要求1所述的数字信号处理器多级启动方法,其特征在于,还包括:
所述第二级启动程序位于该数字信号处理器的外部带电可擦写可编程只读存储器(ElectricallyErasableProgrammableRead-OnlyMemory,EEPROM)中。
所述第一级启动程序将所述通过串行外设接口将所述外部EEPROM中的第二级启动程序拷贝到数字信号处理器的内部随机存储器(Internalrandomaccessmemory,IRAM)中,并开始运行所述第二级启动程序。
4.根据权利要求1所述的数字信号处理器多级启动方法,其特征在于,完成对数字信号处理器最小系统的基本配置包括:
第二级启动程序配置数字信号处理器时钟,异步收发传输器串口以及中断;
第二级启动程序根据外围配置芯片的选型,对外部闪存接口与内存接口进行配置。
5.根据权利要求1所述的数字信号处理器多级启动方法,其特征在于,在执行数字信号处理器的第一级启动程序之前,还包括:
分别编写并编译第二级启动程序和第三级程序,并转换编译后的程序文件格式;
将转化文件格式后的第二级启动程序刻录到该数字信号处理器的外部EEPROM中,将转化文件格式后的第三级程序刻录到外部闪存中。
6.根据权利要求5所述的数字信号处理器多级启动方法,其特征在于,所述将转化文件格式后的第二级启动程序刻录到该数字信号处理器的外部EEPROM中,包括:
对与外部EEPROM相连的串行外设接口进行初始化;
读入待刻录的第二级启动程序文件,并计算该文件的大小;
将待刻录的第二级启动程序文件写入外部EEPROM;
从EEPROM中读取已刻录的第二级启动程序文件;
比较所述待刻录的第二级启动程序文件和所述已刻录的第二级启动程序文件是否一致。
7.根据权利要求5所述的数字信号处理器多级启动方法,其特征在于,所述将转化文件格式后的第三级程序刻录到外部闪存中,包括:
计算转化文件格式后的第三级程序文件的大小;
在外部闪存中分别存储启动第三级程序所需要的标识头、第三级程序入口地址、第三级程序存储block地址、第三级程序存储page地址以及第三级程序拷贝目的地址。
8.根据权利要求5所述的数字信号处理器多级启动方法,其特征在于,在内存中执行所述第三级程序包括:
第三级程序由第三级程序入口地址开始顺序执行;
当发生中断请求时,第三级程序首先转到第一指定地址开始运行,第一指定地址预设的机器码为短跳转命令,并指定有短跳转地址,在该短跳转地址上存储有长跳转命令及长跳转地址;
执行长跳转命令,在长跳转地址存储中断检测函数,通过读取中断状态寄存器参数,判断触发中断的事件,并响应中断服务函数。
9.根据权利要求5所述的数字信号处理器多级启动方法,其特征在于:
编写第三级程序包括:将短跳转命令以及短跳转地址、长跳转命令、长跳转地址翻译成二进制机器码,并写入第三级程序,完成中断跳转控制。
10.一种数字信号处理器多级启动系统,其特征在于,包括:
数字信号处理器,其内部只读存储器(InternalRead-OnlyMemory,IROM)中存储有用于根据外围配置电路选择启动方式并读取第二级启动程序的第一级启动程序;
连接到所述数字信号处理器的外部EEPROM,其中存储有用于完成对数字信号处理器最小系统的基本配置并跳转至第三级程序的第二级启动程序;
连接到所述数字信号处理器的外部闪存,其中存储有第三级程序;
连接到所述数字信号处理器的内存,用于运行所述第三级程序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410648238.5A CN105630530A (zh) | 2014-11-15 | 2014-11-15 | 数字信号处理器多级启动方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410648238.5A CN105630530A (zh) | 2014-11-15 | 2014-11-15 | 数字信号处理器多级启动方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105630530A true CN105630530A (zh) | 2016-06-01 |
Family
ID=56045515
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410648238.5A Pending CN105630530A (zh) | 2014-11-15 | 2014-11-15 | 数字信号处理器多级启动方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105630530A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108279935A (zh) * | 2016-12-30 | 2018-07-13 | 北京中科晶上科技股份有限公司 | 一种针对片上系统的操作系统启动引导方法 |
CN108762828A (zh) * | 2018-04-24 | 2018-11-06 | 桂林长海发展有限责任公司 | 一种dsp多核阵列二级启动方法和装置 |
CN113489597A (zh) * | 2020-03-16 | 2021-10-08 | 广达电脑股份有限公司 | 用于网络装置的最佳启动路径的方法和系统 |
CN113535468A (zh) * | 2021-05-26 | 2021-10-22 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | Dsp芯片的启动方法和启动装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8443135B2 (en) * | 2009-10-27 | 2013-05-14 | Texas Instruments Incorporated | Exhaustive parameter search algorithm for interface with nand flash memory |
CN103473031A (zh) * | 2013-01-18 | 2013-12-25 | 龙建 | 协同并发式消息总线、主动构件组装模型及构件拆分方法 |
-
2014
- 2014-11-15 CN CN201410648238.5A patent/CN105630530A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8443135B2 (en) * | 2009-10-27 | 2013-05-14 | Texas Instruments Incorporated | Exhaustive parameter search algorithm for interface with nand flash memory |
CN103473031A (zh) * | 2013-01-18 | 2013-12-25 | 龙建 | 协同并发式消息总线、主动构件组装模型及构件拆分方法 |
Non-Patent Citations (6)
Title |
---|
匿名: "ARM9从启动代码到应用程序", 《CSDN博客》 * |
张丹 等: "嵌入式系统引导加载程序分析", 《软件》 * |
杨守良 等: "《电子工程基础实验教程》", 30 April 2009, 电子科技大学出版社 * |
沈沛意: "《DAVINCI技术剖析及实战应用开发指南》", 30 April 2012, 西安电子科技大学出版社 * |
王化福 等: "从nand flash启动嵌入式操作系统的方法", 《PLC&FA》 * |
胡皓 主编: "《电气信息类专业英语》", 31 May 2013, 西安电子科技大学出版社 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108279935A (zh) * | 2016-12-30 | 2018-07-13 | 北京中科晶上科技股份有限公司 | 一种针对片上系统的操作系统启动引导方法 |
CN108762828A (zh) * | 2018-04-24 | 2018-11-06 | 桂林长海发展有限责任公司 | 一种dsp多核阵列二级启动方法和装置 |
CN108762828B (zh) * | 2018-04-24 | 2021-11-16 | 桂林长海发展有限责任公司 | 一种dsp多核阵列二级启动方法和装置 |
CN113489597A (zh) * | 2020-03-16 | 2021-10-08 | 广达电脑股份有限公司 | 用于网络装置的最佳启动路径的方法和系统 |
CN113489597B (zh) * | 2020-03-16 | 2023-05-02 | 广达电脑股份有限公司 | 用于网络装置的最佳启动路径的方法和系统 |
CN113535468A (zh) * | 2021-05-26 | 2021-10-22 | 武汉船舶通信研究所(中国船舶重工集团公司第七二二研究所) | Dsp芯片的启动方法和启动装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8484631B2 (en) | Supporting hardware configuration changes in a UEFI firmware component | |
US9558016B2 (en) | Platform system, method for changing support hardware configuration of universal extensible firmware interface basic input output system and computer program product | |
CN102388366B (zh) | 实现不同处理器兼容的方法及装置 | |
CN102567128B (zh) | 系统复位 | |
US20100211769A1 (en) | Concurrent Execution of a Smartphone Operating System and a Desktop Operating System | |
CN105190550A (zh) | 用于启动具有多个中央处理器的计算机系统的方法 | |
CN101149701A (zh) | 用于多线程系统中重定向中断的方法和设备 | |
CN102402427A (zh) | 一种Java应用程序的更新方法及装置 | |
TW201502764A (zh) | 用以從睡眠狀態加速回復之專用啟動路徑 | |
CN102693144B (zh) | 一种Android移动终端的电容屏固件升级的方法 | |
CN103927187A (zh) | 嵌入式系统程序执行方法 | |
EP3063621A1 (en) | Flexible bootstrap code architecture | |
CN105630530A (zh) | 数字信号处理器多级启动方法及系统 | |
CN105739961A (zh) | 一种嵌入式系统的启动方法和装置 | |
CN104156234A (zh) | 启动多核处理器、bootloader大小端模式自适应的方法及装置 | |
CN102364433B (zh) | 在ARM处理器上实现Wine构建工具移植的方法 | |
CN102662688B (zh) | 一种Nor flash更新方法及装置 | |
CN102073514A (zh) | 基本输入输出系统的更新方法 | |
CN105117255A (zh) | 一种启动装载BootLoader程序的引导方法和装置 | |
CN104050006A (zh) | 一种fpga的更新系统及其更新方法 | |
CN101484878B (zh) | 为基于efi的固件中的预efi初始化模块使用全局变量的方法 | |
CN108694052B (zh) | 一种固件升级方法、固件升级装置及固件升级系统 | |
CN102830988A (zh) | 固件更新的方法及其相关计算机系统 | |
CN100384122C (zh) | 网络终端产品的在线升级方法 | |
JP2007206933A (ja) | 情報処理装置、情報処理装置におけるブートローダ生成方法およびプログラム転送方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20160601 |