[发明专利]CPLD远程升级方法及系统在审
申请号: | 202011035492.X | 申请日: | 2020-09-27 |
公开(公告)号: | CN112346757A | 公开(公告)日: | 2021-02-09 |
发明(设计)人: | 李星钢;彭祥吉 | 申请(专利权)人: | 深圳市紫光同创电子有限公司 |
主分类号: | G06F8/65 | 分类号: | G06F8/65 |
代理公司: | 深圳国新南方知识产权代理有限公司 44374 | 代理人: | 周雷 |
地址: | 518000 广东省深圳市南山区粤海*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | cpld 远程 升级 方法 系统 | ||
本发明提供了一种CPLD远程升级方法,所述方法应用于MCU模块和待升级CPLD,所述MCU模块通过GPIO模拟JTAG端口与所述CPLD通信,所述方法包括:步骤S1、配置系统参数至所述CPLD;步骤S2、读取所述CPLD的系统参数,并通过所述GPIO模拟JTAG端口写入所述MCU模块;步骤S3、读取所述MCU模块的应用数据流,并通过所述GPIO模拟JTAG端口写入所述CPLD。本发明通过GPIO模拟JTAG端口与所述CPLD通信,读取CPLD的系统参数并写入所述MCU模块;以及读取所述MCU模块的应用数据流并写入所述CPLD。本发明通过MCU的GPIO模拟JTAG端口连接到CPLD,升级过程中使CPLD的GPIO状态保持在升级位流前的状态。
【技术领域】
本发明涉及通信技术领域,尤其涉及一种CPLD远程升级方法及系统。
【背景技术】
CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件)作为一种用户可自行构造逻辑功能的大规模数字集成电路,广泛应用于工业控制、通信设备、消费电子等多个领域。而CPLD的固件版本往往并非一成不变的,当用户要求新增功能或者出现了一些bug(缺陷)时就需要进行CPLD升级。
为了适应通信设备可维护性的要求,CPLD的升级目前主要通过远程升级的方式;但是,在升级过程中大多数通信设备的应用场景需要CPLD的GPIO保持在升级前的状态,以防止升级后通信设备工作异常。一般升级方式只能进行位流升级,但在升级过程中CPLD的GPIO状态不能保持在升级位流前的状态,这就容易导致CPLD的GPIO状态异常,进而导致通信设备重启或工作异常。
【发明内容】
本发明的目的在于提供了一种GPIO保持升级位流前的状态的CPLD远程升级方法。
为达到上述目的,本发明提供一种CPLD远程升级方法,所述方法应用于MCU模块和待升级CPLD,所述MCU模块通过GPIO模拟JTAG端口与所述CPLD通信,所述方法包括:
步骤S1、配置系统参数至所述CPLD;
步骤S2、读取所述CPLD的系统参数,并通过所述GPIO模拟JTAG端口写入所述MCU模块;
步骤S3、读取所述MCU模块的应用数据流,并通过所述GPIO模拟JTAG端口写入所述CPLD。
优选的,所述步骤S1还包括备份黄金数据流至所述MCU模块的缓存空间。
优选的,所述步骤S1、配置系统参数至所述CPLD,包括:
S11、将黄金数据流写入所述CPLD;
S12、JTAG编程特征控制位并开启主自加载模式;
S13、复位并自黄金数据流开始运行;
S14、将当前系统参数写入所述CPLD的EFlash。
优选的,步骤S2之前还包括,步骤S20、判断是否触发升级,若是则执行步骤S2。
优选的,所述步骤S3、读取所述MCU模块的应用数据流,并通过所述GPIO模拟JTAG端口写入所述CPLD,包括:
步骤S31、按页读取所述SPI FLASH中的应用数据流至所述MCU模块的缓存空间;
步骤S32、通过所述GPIO模拟JTAG端口将读取到所述缓存空间的应用数据流烧写到所述CPLD的CRAM;同时,所述CPLD进行边界扫描并通过ISC升级应用数据流。
优选的,所述方法还包括,
步骤S33、判断升级是否成功,若是则退出ISC模式、释放IO口;否则执行步骤S4;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市紫光同创电子有限公司,未经深圳市紫光同创电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011035492.X/2.html,转载请声明来源钻瓜专利网。