CN105487906A - 一种利用外挂flash实现mcu核代码更新的方法及系统 - Google Patents
一种利用外挂flash实现mcu核代码更新的方法及系统 Download PDFInfo
- Publication number
- CN105487906A CN105487906A CN201510897165.8A CN201510897165A CN105487906A CN 105487906 A CN105487906 A CN 105487906A CN 201510897165 A CN201510897165 A CN 201510897165A CN 105487906 A CN105487906 A CN 105487906A
- Authority
- CN
- China
- Prior art keywords
- mcu
- flash
- plug
- code
- code update
- 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
- 238000000034 method Methods 0.000 title claims abstract description 18
- 230000002093 peripheral effect Effects 0.000 claims description 10
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
- G06F8/654—Updates using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本发明涉及多单元服务器的控制单元代码更新技术领域,特别涉及一种利用外挂FLASH实现MCU核代码更新的方法及系统。本发明的方法是利用FPGA的可编程性,在FPGA内部搭建一个SPI控制器,从外挂FLASH中加载程序代码。本发明的一种利用外挂FLASH实现MCU核代码更新的方法及系统,其更新速度快,效率高,且调试过程十分简单。
Description
技术领域
本发明涉及多单元服务器的控制单元代码更新技术领域,特别涉及一种利用外挂FLASH实现MCU核代码更新的方法及系统。
背景技术
在先前的多单元服务器中,控制单元是利用成品的单片机和CPLD(CPLD,ComplexProgrammableLogicDevice复杂可编程逻辑器件)来实现的。
成品的单片机以及CPLD和成品的功能实现芯片比如OSD(on-screendisplay屏幕菜单式调节方式)功能,在画PCB(印制电路板)时需要占用较大的面积和利用较多的芯片。
为了减少设计的面积以及降低成品,提高系统的可靠性,提出了一种利用FPGA实现多单元服务器控制单元的功能方案,将MCU、OSD、USB、PS2等功能在FPGA内部集成实现。
对于此产品中的MCU的代码更新,如果只是利用ROM来做代码更新的话,每次更新代码都需要重新编译RTL代码,耗费时间长,效率低下,调试费事。
发明内容
为了解决现有技术的问题,本发明提供了一种利用外挂FLASH实现MCU核代码更新的方法及系统,其更新速度快,效率高,且调试过程十分简单。
本发明所采用的技术方案如下:
一种利用外挂FLASH实现MCU核代码更新的方法,包括以下步骤:
A、多单元服务器上电开机,进入代码更新状态模式;
B、将编译生成的MCU代码发送到外挂的FLASH中;
C、待MCU代码发送完毕后,恢复正常工作模式;
D、在正常工作模式下,系统先从FLASH中将MCU代码加载到MCU的程序存储器的RAM中;
E、加载完成后,让MCU正常工作。
使用拨动开关实现所述系统的代码更新状态模式以及正常工作模式两种模式之间的切换。
系统通过串行外设接口控制器将编译生成的MCU代码发送的FLASH中。
一种利用外挂FLASH实现MCU核代码更新的系统,包括FPGA芯片和外挂的FLASH,其特征在于,所述FPGA芯片内设置MCU模块,所述的MCU模块连接有随机存储器和串行外设接口控制器,所述外挂的FLASH通过串行外设接口控制器将编译生成的MCU代码发送到所述的随机存储器内。
本发明提供的技术方案带来的有益效果是:
本发明的方法是利用FPGA的可编程性,在FPGA内部搭建一个SPI(串行外设接口)控制器,从外挂FLASH中加载程序代码。
需要编写一个启动代码通过SPI控制器向FLASH中写入数据后,通过一个拨动开关键切换到正常工作模式下,从FLASH中将更新的代码加载到MCU的程序存储器中,这里利用了掉电丢失的RAM来实现。
本发明和现有技术相比,能够提高MCU的更新速度,提高工作效率,且调试过程十分简单。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的一种利用外挂FLASH实现MCU核代码更新的方法及系统的系统结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例一
如附图1所示,一种利用外挂FLASH实现MCU核代码更新的系统,包括FPGA芯片和外挂的FLASH,所述FPGA芯片内设置MCU模块,所述的MCU模块连接有随机存储器和串行外设接口控制器,所述外挂的FLASH通过串行外设接口(SPI)控制器将编译生成的MCU代码发送到所述的随机存储器RAM内。
实施例二
一种利用外挂FLASH实现MCU核代码更新的方法,包括以下步骤:
A、多单元服务器上电开机,进入代码更新状态模式;
B、将编译生成的MCU代码发送到外挂的FLASH中;
C、待MCU代码发送完毕后,恢复正常工作模式;
D、在正常工作模式下,系统先从FLASH中将MCU代码加载到MCU的程序存储器的RAM中;
E、加载完成后,让MCU正常工作。
使用拨动开关实现所述系统的代码更新状态模式以及正常工作模式两种模式之间的切换。
系统通过串行外设接口控制器将编译生成的MCU代码发送的FLASH中。
本实施例中,将多单元服务器上电开机后,拨动开关到代码更新状态,通过PC机上的串口助手将编译生成的MCU代码发送的Flash中。待MCU代码发送完毕后,拨动开关状态到正常工作模式下。
正常工作模式下,系统将先从FLASH中将程序代码加载到MCU的程序存储器的RAM中,加载完后让MCU正常工作。
利用已经接入的USB键鼠设备调出OSD界面,对通道进行切换。
如果能够进行通道切换以及键鼠正常使用,说明从FLASH中更新的程序代码没有问题。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (4)
1.一种利用外挂FLASH实现MCU核代码更新的方法,包括以下步骤:
A、多单元服务器上电开机,进入代码更新状态模式;
B、将编译生成的MCU代码发送到外挂的FLASH中;
C、待MCU代码发送完毕后,恢复正常工作模式;
D、在正常工作模式下,系统先从FLASH中将MCU代码加载到MCU的程序存储器的RAM中;
E、加载完成后,让MCU正常工作。
2.根据权利要求1所述的一种利用外挂FLASH实现MCU核代码更新的方法,其特征在于,使用拨动开关实现所述系统的代码更新状态模式以及正常工作模式两种模式之间的切换。
3.根据权利要求1所述的一种利用外挂FLASH实现MCU核代码更新的方法,其特征在于,系统通过串行外设接口控制器将编译生成的MCU代码发送的FLASH中。
4.一种利用外挂FLASH实现MCU核代码更新的系统,包括FPGA芯片和外挂的FLASH,其特征在于,所述FPGA芯片内设置MCU模块,所述的MCU模块连接有随机存储器和串行外设接口控制器,所述外挂的FLASH通过串行外设接口控制器将编译生成的MCU代码发送到所述的随机存储器内。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510897165.8A CN105487906A (zh) | 2015-12-07 | 2015-12-07 | 一种利用外挂flash实现mcu核代码更新的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510897165.8A CN105487906A (zh) | 2015-12-07 | 2015-12-07 | 一种利用外挂flash实现mcu核代码更新的方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105487906A true CN105487906A (zh) | 2016-04-13 |
Family
ID=55674902
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510897165.8A Pending CN105487906A (zh) | 2015-12-07 | 2015-12-07 | 一种利用外挂flash实现mcu核代码更新的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105487906A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106200457A (zh) * | 2016-06-28 | 2016-12-07 | 中车株洲电力机车研究所有限公司 | 一种程序下载方法及装置 |
CN106354598A (zh) * | 2016-10-14 | 2017-01-25 | 无锡中微爱芯电子有限公司 | 一种基于快闪存储器的一次性可编程微控制器调试方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060155978A1 (en) * | 2002-08-30 | 2006-07-13 | Jens David | Method for initialising programmable systems |
CN102520961A (zh) * | 2011-12-22 | 2012-06-27 | 福州大学 | 片外在线可编程的soc系统及其控制方法 |
CN102662810A (zh) * | 2012-03-27 | 2012-09-12 | 上海大学 | 一种微处理器的在线调试方法 |
CN102945174A (zh) * | 2012-11-08 | 2013-02-27 | 大连捷成实业发展有限公司 | 通过接着片外Flash实现单片机程序升级的方法 |
CN104636168A (zh) * | 2015-02-09 | 2015-05-20 | 南京国电南自美卓控制系统有限公司 | 基于mlvds总线的soc fpga在线升级方法 |
-
2015
- 2015-12-07 CN CN201510897165.8A patent/CN105487906A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20060155978A1 (en) * | 2002-08-30 | 2006-07-13 | Jens David | Method for initialising programmable systems |
CN102520961A (zh) * | 2011-12-22 | 2012-06-27 | 福州大学 | 片外在线可编程的soc系统及其控制方法 |
CN102662810A (zh) * | 2012-03-27 | 2012-09-12 | 上海大学 | 一种微处理器的在线调试方法 |
CN102945174A (zh) * | 2012-11-08 | 2013-02-27 | 大连捷成实业发展有限公司 | 通过接着片外Flash实现单片机程序升级的方法 |
CN104636168A (zh) * | 2015-02-09 | 2015-05-20 | 南京国电南自美卓控制系统有限公司 | 基于mlvds总线的soc fpga在线升级方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106200457A (zh) * | 2016-06-28 | 2016-12-07 | 中车株洲电力机车研究所有限公司 | 一种程序下载方法及装置 |
CN106200457B (zh) * | 2016-06-28 | 2019-07-26 | 中车株洲电力机车研究所有限公司 | 一种程序下载方法及装置 |
CN106354598A (zh) * | 2016-10-14 | 2017-01-25 | 无锡中微爱芯电子有限公司 | 一种基于快闪存储器的一次性可编程微控制器调试方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105740139B (zh) | 一种基于虚拟环境的嵌入式软件调试方法 | |
CN104516747A (zh) | 一种系统切换方法及电子设备 | |
CN105138487A (zh) | 一种外插卡cpld/fpga程序下载方法 | |
CN103995939A (zh) | 一种基于arm与fpga的动态可重构嵌入式系统 | |
CN103886267A (zh) | 内外网隔离切换方法、装置、芯片、计算机主板和计算机 | |
CN102253844B (zh) | 一种启动处理器的方法和设备 | |
CN105487906A (zh) | 一种利用外挂flash实现mcu核代码更新的方法及系统 | |
CN110399328B (zh) | 一种板载图形处理器控制方法与装置 | |
CN103226523B (zh) | 一种外接设备与移动终端及其组成的系统 | |
CN203250312U (zh) | 一种接口形式可扩展的通用核心处理子板 | |
CN103605328A (zh) | 一种基于stc单片机的嵌入式plc工控板 | |
CN102566481A (zh) | 一种基于c语言的plc控制系统及其实现方法 | |
CN207503227U (zh) | 一种基于嵌入式系统的核心板 | |
CN204116869U (zh) | 一种控制器程序下载电路 | |
CN107329417B (zh) | 一种微控制器及其输入输出引脚映射电路 | |
CN204331370U (zh) | 单片机程序烧录器及系统 | |
CN203745856U (zh) | 一种基于stc单片机的嵌入式plc工控板 | |
CN207601692U (zh) | 云桌面终端 | |
CN202748777U (zh) | 一种在线调试单片机的系统 | |
JP2013015985A (ja) | マルチコアプロセッサのすべてのプロセッサコアの実行トレースダンプが可能なsocデバイス | |
CN105005541A (zh) | 一种计算机上usb、ps/2接口复用的电路及方法 | |
CN218768136U (zh) | 利用可编程逻辑器件切换i2c总线的装置 | |
CN103984263A (zh) | 一种兼容isa、pci总线接口的通用dsp模块和配置方法 | |
CN204440309U (zh) | 热复位系统 | |
CN210776653U (zh) | 通过可编程逻辑芯片制作的通用型SoC开发板 |
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 |
Application publication date: 20160413 |
|
WD01 | Invention patent application deemed withdrawn after publication |