一种利用外挂flash实现mcu核代码更新的方法及系统的制作方法

xiaoxiao2021-3-1  159

一种利用外挂flash实现mcu核代码更新的方法及系统的制作方法
【技术领域】
[0001]本发明涉及多单元服务器的控制单元代码更新技术领域,特别涉及一种利用外挂FLASH实现MCU核代码更新的方法及系统。
【背景技术】
[0002]在先前的多单元服务器中,控制单元是利用成品的单片机和CPLD(CPLD,ComplexProgrammable Logic Device复杂可编程逻辑器件)来实现的。
[0003]成品的单片机以及CPLD和成品的功能实现芯片比如0SD(on_screen display屏幕菜单式调节方式)功能,在画PCB(印制电路板)时需要占用较大的面积和利用较多的芯片。
[0004]为了减少设计的面积以及降低成品,提高系统的可靠性,提出了一种利用FPGA实现多单元服务器控制单元的功能方案,将MCU、0SD、USB、PS2等功能在FPGA内部集成实现。
[0005]对于此产品中的MCU的代码更新,如果只是利用ROM来做代码更新的话,每次更新代码都需要重新编译RTL代码,耗费时间长,效率低下,调试费事。

【发明内容】

[0006]为了解决现有技术的问题,本发明提供了一种利用外挂FLASH实现MCU核代码更新的方法及系统,其更新速度快,效率高,且调试过程十分简单。
[0007]本发明所采用的技术方案如下:
[0008]—种利用外挂FLASH实现Μ⑶核代码更新的方法,包括以下步骤:
[0009]Α、多单元服务器上电开机,进入代码更新状态模式;
[0010]Β、将编译生成的Μ⑶代码发送到外挂的FLASH中;
[0011 ] C、待Μ⑶代码发送完毕后,恢复正常工作模式;
[0012]D、在正常工作模式下,系统先从FLASH中将Μ⑶代码加载至IjM⑶的程序存储器的RAM中;
[0013]E、加载完成后,让Μ⑶正常工作。
[0014]使用拨动开关实现所述系统的代码更新状态模式以及正常工作模式两种模式之间的切换。
[0015]系统通过串行外设接口控制器将编译生成的Μ⑶代码发送的FLASH中。
[0016]一种利用外挂FLASH实现Μ⑶核代码更新的系统,包括FPGA芯片和外挂的FLASH,其特征在于,所述FPGA芯片内设置MCU模块,所述的MCU模块连接有随机存储器和串行外设接口控制器,所述外挂的FLASH通过串行外设接口控制器将编译生成的MCU代码发送到所述的随机存储器内。
[0017]本发明提供的技术方案带来的有益效果是:
[0018]本发明的方法是利用FPGA的可编程性,在FPGA内部搭建一个SPI(串行外设接口)控制器,从外挂FLASH中加载程序代码。
[0019]需要编写一个启动代码通过SPI控制器向FLASH中写入数据后,通过一个拨动开关键切换到正常工作模式下,从FLASH中将更新的代码加载至IjM⑶的程序存储器中,这里利用了掉电丢失的RAM来实现。
[0020]本发明和现有技术相比,能够提高MCU的更新速度,提高工作效率,且调试过程十分简单。
【附图说明】
[0021]为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0022]图1为本发明的一种利用外挂FLASH实现MCU核代码更新的方法及系统的系统结构图。
【具体实施方式】
[0023]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0024]实施例一
[0025]如附图1所示,一种利用外挂FLASH实现MCU核代码更新的系统,包括FPGA芯片和外挂的FLASH,所述FPGA芯片内设置MCU模块,所述的MCU模块连接有随机存储器和串行外设接口控制器,所述外挂的FLASH通过串行外设接口(SPI)控制器将编译生成的Μ⑶代码发送到所述的随机存储器RAM内。
[0026]实施例二
[0027]—种利用外挂FLASH实现Μ⑶核代码更新的方法,包括以下步骤:
[0028]Α、多单元服务器上电开机,进入代码更新状态模式;
[0029]Β、将编译生成的Μ⑶代码发送到外挂的FLASH中;
[0030]C、待Μ⑶代码发送完毕后,恢复正常工作模式;
[0031]D、在正常工作模式下,系统先从FLASH中将Μ⑶代码加载至IjM⑶的程序存储器的RAM中;
[0032]E、加载完成后,让Μ⑶正常工作。
[0033]使用拨动开关实现所述系统的代码更新状态模式以及正常工作模式两种模式之间的切换。
[0034]系统通过串行外设接口控制器将编译生成的Μ⑶代码发送的FLASH中。
[0035]本实施例中,将多单元服务器上电开机后,拨动开关到代码更新状态,通过PC机上的串口助手将编译生成的MCU代码发送的Flash中。待MCU代码发送完毕后,拨动开关状态到正常工作模式下。
[0036]正常工作模式下,系统将先从FLASH中将程序代码加载到MCU的程序存储器的RAM中,加载完后让MCU正常工作。
[0037]利用已经接入的USB键鼠设备调出0SD界面,对通道进行切换。
[0038]如果能够进行通道切换以及键鼠正常使用,说明从FLASH中更新的程序代码没有问题。
[0039]以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【主权项】
1.一种利用外挂FLASH实现MCU核代码更新的方法,包括以下步骤: A、多单元服务器上电开机,进入代码更新状态模式; B、将编译生成的MCU代码发送到外挂的FLASH中; C、待MCU代码发送完毕后,恢复正常工作模式; D、在正常工作模式下,系统先从FLASH中将MCU代码加载到MCU的程序存储器的RAM中; E、加载完成后,让MCU正常工作。2.根据权利要求1所述的一种利用外挂FLASH实现Μ⑶核代码更新的方法,其特征在于,使用拨动开关实现所述系统的代码更新状态模式以及正常工作模式两种模式之间的切换。3.根据权利要求1所述的一种利用外挂FLASH实现Μ⑶核代码更新的方法,其特征在于,系统通过串行外设接口控制器将编译生成的MCU代码发送的FLASH中。4.一种利用外挂FLASH实现mj核代码更新的系统,包括FPGA芯片和外挂的FLASH,其特征在于,所述FPGA芯片内设置MCU模块,所述的MCU模块连接有随机存储器和串行外设接口控制器,所述外挂的FLASH通过串行外设接口控制器将编译生成的MCU代码发送到所述的随机存储器内。
【专利摘要】本发明涉及多单元服务器的控制单元代码更新技术领域,特别涉及一种利用外挂FLASH实现MCU核代码更新的方法及系统。本发明的方法是利用FPGA的可编程性,在FPGA内部搭建一个SPI控制器,从外挂FLASH中加载程序代码。本发明的一种利用外挂FLASH实现MCU核代码更新的方法及系统,其更新速度快,效率高,且调试过程十分简单。
【IPC分类】G06F9/445
【公开号】CN105487906
【申请号】CN201510897165
【发明人】张孝飞, 赵素梅, 刘强
【申请人】浪潮集团有限公司
【公开日】2016年4月13日
【申请日】2015年12月7日

最新回复(0)