专利名称:Usb接口控制面板在线更新方法
USB接口控制面板在线更新方法技术领域:
本发明涉及一种电子设备的固件的在线更新方法。背景技术:
目前采用单片机(MCU)架构的医疗设备控制面板大多数仍沿用RS232 串口或PS/2与上位机通讯,选择支持在应用中编程功能(IAP)的MCU可 以实现MCU程序的在线更新,但不能实现板上其他可编程器件的在线更新 功能。目前医疗设备中USB接口控制面板大多数采用商用USB接口的键盘等 多种USB接口输入设备组合而成,基本上不支持在线更新功能。其原因也显 而易见,比如常见的USB接口的PC键盘技术已经非常成熟,其更新的可能 性不高,故没用提供在线更新功能的必要。故现有技术的缺点是在线更新功 能不完善。目前有一些MCU支持在线更新固件功能,该类MCU的选用改善了控制面板 固件在线更新的功能,但可编程逻辑器件CPLD在线更新实现难度较大,且在 MCU上实现需要占有很多资源。
发明内容本发明的目的提供一种USB接口控制面板在线更新方法,通过USB接口对 控制面板进行在线更新,实现在线通过USB接口更新FPGA嵌入式软核处理器 的固件以及FPGA的配置文件。为实现上述目的,本发明提出一种USB接口控制面板在线更新方法,包
括如下步骤A、嵌入式软核处理器通过USB模块接收上位机的在线更新命 令后,获取上位机发送的更新数据,存放在嵌入式软核处理器的易失存储器中;B、擦除非易失存储器内原嵌入式软核处理器固件或/和FPGA配置文件; C、将易失存储器内的嵌入式软核处理器固件或/和FPGA配置文件编程写入 非易失存储器中。上述的在线更新方法,在执行所述步骤C后,系统又进入正常工作状态; 此时系统仍运行旧的嵌入式软核处理器固件或/和FPGA配置文件。上述的在线更新方法,所述步骤B中,根据不同的升级命令,选择擦除 非易失存储器中嵌入式软核处理器固件或/和FPGA配置文件,然后将易失存 储器内的新数据写入非易失存储器中相应的分区。上述的在线更新方法,在所述步骤A之前,还包括步骤A':系统上电 后加载FPGA配置文件到FPGA及加载嵌入式软核固件到易失存储器,开始执 行应用程序,应用程序中包含在线更新功能。上述的在线更新方法,在执行所述步骤C后,上位机通过USB接口发送 控制面板复位命令,使得控制面板重新复位,或者系统断电重启,系统运行 新的嵌入式软核处理器固件或/和FPGA配置文件。由于采用了以上的方案,本发明使用USB接口对医疗设备等的控制面板 进行在线更新,控制面板可以在上位机控制、不影响用户正常使用情况下完 全更新嵌入式软核处理器固件或/和FPGA硬件配置。本发明不但可以更新控 制CPU运行的应用程序,还可以更新构建CPU及其对应的部分外设控制器的 能力,也就是可以更新CPU及其外设的配置,可以根据不同需要,改变CPU 硬件本身的各个特性。
图l是本发明硬件电路示意图,图2是本发明实施例控制面板电路原理框图,图3是本发明实施例控制面板布局图, 图4是在线更新的状态图, 图5存储空间划分示意图。
具体实施方式下面通过具体的实施例并结合附图对本发明作进一步详细的描述。 本发明硬件设计主要涉及四个部分,请参考图l的硬件电路示意图,其中 核心部分FPGA用于实现逻辑电路SDRAM控制器、嵌入式软核处理器以及其他 逻辑电路;FPGA配置文件和嵌入式软核处理器固件存储于非易失存储器中, 掉电情况下仍可长期保存数据;易失存储器作为嵌入式软核处理器的存储空 间,嵌入式软核处理器固件加载到易失存储器中运行,从而提高嵌入式软核 处理器的执行效率;USB模块作为FPGA与PC机USB的桥接器件,实现数据的交 换。请参考图2所示控制面板电路原理框图,为适用于超声医疗诊断系统的控 制面板,包括控制模块、按键矩阵、发声模块、LED驱动模块、TGC调节模块、 非易失存储器、易失存储器、编码器模块、轨迹球模块、USB通信模块及USB 接口。控制模块采用FPGA,用于实现逻辑电路SDRAM控制器、嵌入式软核处 理器以及其他逻辑电路。软核处理器程序和FPGA逻辑设计数据保持在非易失 存储器Flash中,当控制面板上电后,FPGA自动从该Flash中读取配置数据, 完成FPGA的配置; 一旦FPGA配置结束,软核处理器的PC (Program counter) 指针指向Boot Rom,此时开始将Flash中的数据拷贝到易失存储器SDR扁中,
拷贝结束后,软核处理器的PC (Program counter)指针指向SDRAM,从而运 行整个应用程序,控制面板开始正常工作。
请参考图3所示超声医疗诊断系统的控制面板布局图,为了保证通过物理 上的一个USB接口实现各个功能,将控制面板划分为三部分第一部分为字符、 数字按键;第二部分为轨迹球部分;第三部分为超声诊断设备专用的各种模 块,包括各种功能按键、调节旋钮、TGC滑动电位器和各种信号指示LED等。 按键背光LED分布于所有的按键和编码器周围,因此没有在图3中标出。
控制面板在线更新的实现过程请参考图4的在线更新的状态图,具体实现 步骤如下
(1) 系统上电后进入复位状态;
(2) 复位信号无效后,系统进入加载FPGA配置文件到FPGA和嵌入式软核 处理器固件到SDRAM;
(3) 加载完成后,嵌入式软核处理器开始运行应用程序,进入正常工作 状态;应用程序中包含在线更新功能。
(4) 嵌入式软核处理器接收到升级命令,进入更新状态,同时接收更新 数据放入SDRAM进行缓冲,根据不同的升级命令,选择擦除非易失存储器 中嵌入式软核处理器固件或/和FPGA配置文件,然后将SDRAM缓冲区内的 新数据写入非易失存储器中相应的分区。存储空间划分示意图请参考图5所 示。
(5) 更新完成后,系统又进入正常工作状态。此时系统仍运行旧的嵌入 式软核处理器固件或/和FPGA配置文件。
(6) 上位机通过USB接口发送控制面板复位命令,使得控制面板重新复 位,或者系统断电重启,进入步骤(2),系统运行新的嵌入式软核处理器固
件或/和FPGA配置文件。在步骤(6)之后,系统再次进入正常工作状态时即运行更新后的嵌入式 软核处理器固件或/和FPGA配置文件。此时,控制面板的布局、各功能模块、 按键位置、按键定义等根据新的嵌入式软核处理器固件或/和FPGA配置文件作 出更新,完成了控制面板的在线更新。本发明可以在变更桥接器件后,如更改为串口桥接器件,即可通过串口 实现在线更新。本发明中所指的易失存储器包含但不仅限于SDRAM,非易失存储器包含 但不仅限于Flash。
权利要求
1、一种USB接口控制面板在线更新方法,包括如下步骤A、嵌入式软核处理器通过USB模块接收上位机的在线更新命令后,获取上位机发送的更新数据,存放在嵌入式软核处理器的易失存储器中;B、擦除非易失存储器内原嵌入式软核处理器固件或/和FPGA配置文件;C、将易失存储器内的嵌入式软核处理器固件或/和FPGA配置文件编程写入非易失存储器中。
2、 如权利要求1所述的在线更新方法,其特征是在执行所述步骤C 后,系统又进入正常工作状态;此时系统仍运行原嵌入式软核处理器固件或/ 和FPGA配置文件。
3、 如权利要求1所述的在线更新方法,其特征是所述步骤B中,根 据不同的升级命令,选择擦除非易失存储器中嵌入式软核处理器固件或/和 FPGA配置文件,然后将易失存储器内的新数据写入非易失存储器中相应的分 区。
4、 如权利要求1所述的在线更新方法,其特征是在所述步骤A之前, 还包括步骤A':系统上电后加载FPGA配置文件到FPGA及加载嵌入式软核 固件到易失存储器,开始执行应用程序,应用程序中包含在线更新功能。
5、 如权利要求1-4中任一项所述的在线更新方法,其特征是在执行 所述步骤C后,上位机通过USB接口发送控制面板复位命令,使得控制面板 重新复位,或者系统断电重启,系统运行新的嵌入式软核处理器固件或/和 FPGA配置文件。
全文摘要
本发明公开一种USB接口控制面板在线更新方法,包括如下步骤A.嵌入式软核处理器通过USB模块接收上位机的在线更新命令后,获取上位机发送的更新数据,存放在嵌入式软核处理器的易失存储器中;B.擦除非易失存储器内原嵌入式软核处理器固件或/和FPGA配置文件;C.将易失存储器内的嵌入式软核处理器固件或/和FPGA配置文件编程写入非易失存储器。本发明使用USB接口对医疗设备等的控制面板进行在线更新,控制面板可以通过上位机控制、在不影响用户正常使用情况下完全更新嵌入式软核处理器固件或/和FPGA硬件配置。
文档编号G06F9/445GK101131648SQ200610062309
公开日2008年2月27日 申请日期2006年8月25日 优先权日2006年8月25日
发明者刘照泉, 佳 姚, 韩乾全 申请人:深圳迈瑞生物医疗电子股份有限公司