CN112114831A - 一种基于uart接口的固件烧写实现方法 - Google Patents

一种基于uart接口的固件烧写实现方法 Download PDF

Info

Publication number
CN112114831A
CN112114831A CN202010975770.3A CN202010975770A CN112114831A CN 112114831 A CN112114831 A CN 112114831A CN 202010975770 A CN202010975770 A CN 202010975770A CN 112114831 A CN112114831 A CN 112114831A
Authority
CN
China
Prior art keywords
firmware
module
code
sending
uart interface
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.)
Granted
Application number
CN202010975770.3A
Other languages
English (en)
Other versions
CN112114831B (zh
Inventor
何全
李岩
付彦淇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tianjin Jinhang Computing Technology Research Institute
Original Assignee
Tianjin Jinhang Computing Technology Research Institute
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tianjin Jinhang Computing Technology Research Institute filed Critical Tianjin Jinhang Computing Technology Research Institute
Priority to CN202010975770.3A priority Critical patent/CN112114831B/zh
Publication of CN112114831A publication Critical patent/CN112114831A/zh
Application granted granted Critical
Publication of CN112114831B publication Critical patent/CN112114831B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明涉及一种基于UART接口的固件烧写实现方法,属于数字芯片数据传输技术领域。本发明采用UART接口作为C*Core的程序固件存储器的烧写接口,通过实时对码的方式实现程序固件的数据传输烧写流程,在保证减少程序固件烧写接口信号数量的基础上完成了程序固件的烧写。

Description

一种基于UART接口的固件烧写实现方法
技术领域
本发明属于数字芯片数据传输技术领域,具体涉及一种基于UART接口的固件烧写实现方法。
背景技术
C*Core国产CPU是苏州国芯科技有限公司开发的32位高性能国产嵌入式CPU,苏州国芯在2002年引进Motorola 32位嵌入式CPU技术后,进行了消化吸收再创新,发展出具有自主知识产权的系列化32位嵌入式RISC CPU——C*Core,具有高性能、低功耗和低成本的特点,为国内IC设计企业和产业化提供核心技术,在国内已有较多的应用。
C*Core在产品应用中需要配套有程序固件存储器,利用C*Core配套的工具将程序代码转换成程序固件,使用PC机通过工具接口将程序固件烧写至程序固件存储器中。传统烧写方式一般是采用专用接口(主要采用SPI等传统接口),接口信号数量一般都是4根以上,而在实际应用中,鉴于芯片面积的局限,需要尽可能减少接口信号数量,这样,传统的程序烧写接口(4根以上的数据线)就占用了过多的数据线,对芯片的管脚资源造成了冲击。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是:如何在保证减少程序固件烧写接口信号数量的基础上完成程序固件的烧写。
(二)技术方案
为了解决上述技术问题,本发明提供了一种基于UART接口的固件烧写实现方法,包括以下步骤:
1)PC主机启动一对码检测及固件发送模块的软件程序,对码检测及固件发送模块软件程序循环等待对码;
2)利用对码发送及固件接收模块通过UART接口发送对码至对码检测及固件发送模块;
3)对码检测及固件发送模块接收到正确的对码后,通知PC主机已完成对码流程;
4)PC主机发送固件文件至对码检测及固件发送模块;
5)对码检测及固件发送模块将固件文件通过UART接口发送至对码发送及固件接收模块;
6)对码发送及固件接收模块将固件文件发送给C*Core模块;
7)C*Core模块将程序固件烧写至程序存储模块。
优选地,所述对码检测及固件发送模块通过PC主机的软件实现。
优选地,所述对码检测及固件发送模块与UART接口的通信通过PC主机的UART硬件驱动实现。
优选地,所述对码发送及固件接收模块通过硬件设计实现。
优选地,所述对码发送及固件接收模块与UART接口的通信通过PC主机的UART硬件驱动实现。
优选地,所述对码发送及固件接收模块设计为包括对码数据发送模块、UART接口数据收发模块、固件文件接收模块,对码发送及固件接收模块的硬件工作流程,相应地,步骤“对码发送及固件接收模块将固件文件发送给C*Core模块”具体为:
C*Core模块配置对码数据发送模块中存储的对码数值;
对码数据发送模块发送对码数值到UART接口数据收发模块,UART接口数据收发模块将对码数据转换为UART接口通信协议发送到UART接口上;
UART接口数据收发模块通过UART通信协议接收UART接口发来的固件文件,将固件文件发送至固件文件接收模块进行缓存;
固件文件接收模块缓存完毕,将固件文件发送至C*Core模块。
优选地,所述程序存储模块为程序固件存储器。
优选地,所述程序存储模块为C*Core的程序固件存储器。
本发明还提供了一种用于实现所述固件烧写实现方法的系统,包括对码检测及固件发送模块、对码发送及固件接收模块。
本发明还提供了一种所述固件烧写实现方法在数字芯片数据传输技术领域中的应用。
(三)有益效果
本发明采用UART接口作为C*Core的程序固件存储器的烧写接口,通过实时对码的方式实现程序固件的数据传输烧写流程,在保证减少程序固件烧写接口信号数量的基础上完成了程序固件的烧写。
附图说明
图1为改进前的固件烧写实现方法框图;
图2为本发明的改进后的固件烧写实现方法框图;
图3为本发明中的对码检测及固件发送模块软件流程图;
图4为本发明中的对码发送及固件接收模块架构图。
具体实施方式
为使本发明的目的、内容、和优点更加清楚,下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。
图1为改进前的固件烧写实现方法。
·改进前的方法:
1)PC主机将固件文件发送给SPI接口模块;
2)SPI接口模块将固件文件通过SPI协议写入到程序存储模块。
图2为改进后的固件烧写实现方法,改进部分是虚线框内部分。
·改进后的方法,即本发明提供的一种基于UART接口的固件烧写实现方法包括以下步骤:
1)PC主机启动一对码检测及固件发送模块的软件程序,对码检测及固件发送模块软件程序循环等待对码;
2)利用对码发送及固件接收模块通过UART接口发送对码至对码检测及固件发送模块;
3)对码检测及固件发送模块接收到正确的对码后,通知PC主机已完成对码流程;
4)PC主机发送固件文件至对码检测及固件发送模块;
5)对码检测及固件发送模块将固件文件通过UART接口发送至对码发送及固件接收模块;
6)对码发送及固件接收模块将固件文件发送给C*Core模块;
7)C*Core模块将程序固件烧写至程序存储模块。
·虚线框内改进部分中的模块说明:
对码检测及固件发送模块通过PC主机的软件实现,该模块与UART接口的通信通过PC主机的UART硬件驱动实现,软件实现流程图如图3所示。
对码发送及固件接收模块通过硬件设计实现,该模块与UART接口的通信通过PC主机的UART硬件驱动实现,模块实现架构图如图4所示。
对码发送及固件接收模块包括对码数据发送模块、UART接口数据收发模块、固件文件接收模块,对码发送及固件接收模块的硬件工作流程(即对应步骤“对码发送及固件接收模块将固件文件发送给C*Core模块”)为:
1)C*Core模块配置对码数据发送模块中存储的对码数值;
2)对码数据发送模块发送对码数值到UART接口数据收发模块,UART接口数据收发模块将对码数据转换为UART接口通信协议发送到UART接口上;
3)UART接口数据收发模块通过UART通信协议接收UART接口发来的固件文件,将固件文件发送至固件文件接收模块进行缓存;
4)固件文件接收模块缓存完毕,将固件文件发送至C*Core模块。
可以看出,本发明使用UART接口作为程序固件文件的烧写接口,采用对码收发模块实现PC主机与C*Core的固件烧写指令通信,通过固件收发模块实现程序固件数据的传输,由于UART协议不能直接将程序固件写入到固件存储器,需要经过C*Core的处理,将程序固件写入到固件存储器中。从而实现使用较少接口数据线完成程序固件的烧写。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

Claims (10)

1.一种基于UART接口的固件烧写实现方法,其特征在于,包括以下步骤:
1)PC主机启动一对码检测及固件发送模块的软件程序,对码检测及固件发送模块软件程序循环等待对码;
2)利用对码发送及固件接收模块通过UART接口发送对码至对码检测及固件发送模块;
3)对码检测及固件发送模块接收到正确的对码后,通知PC主机已完成对码流程;
4)PC主机发送固件文件至对码检测及固件发送模块;
5)对码检测及固件发送模块将固件文件通过UART接口发送至对码发送及固件接收模块;
6)对码发送及固件接收模块将固件文件发送给C*Core模块;
7)C*Core模块将程序固件烧写至程序存储模块。
2.如权利要求1所述的方法,其特征在于,所述对码检测及固件发送模块通过PC主机的软件实现。
3.如权利要求2所述的方法,其特征在于,所述对码检测及固件发送模块与UART接口的通信通过PC主机的UART硬件驱动实现。
4.如权利要求3所述的方法,其特征在于,所述对码发送及固件接收模块通过硬件设计实现。
5.如权利要求4所述的方法,其特征在于,所述对码发送及固件接收模块与UART接口的通信通过PC主机的UART硬件驱动实现。
6.如权利要求5所述的方法,其特征在于,所述对码发送及固件接收模块设计为包括对码数据发送模块、UART接口数据收发模块、固件文件接收模块,对码发送及固件接收模块的硬件工作流程,相应地,步骤“对码发送及固件接收模块将固件文件发送给C*Core模块”具体为:
C*Core模块配置对码数据发送模块中存储的对码数值;
对码数据发送模块发送对码数值到UART接口数据收发模块,UART接口数据收发模块将对码数据转换为UART接口通信协议发送到UART接口上;
UART接口数据收发模块通过UART通信协议接收UART接口发来的固件文件,将固件文件发送至固件文件接收模块进行缓存;
固件文件接收模块缓存完毕,将固件文件发送至C*Core模块。
7.如权利要求1所述的方法,其特征在于,所述程序存储模块为程序固件存储器。
8.如权利要求8所述的方法,其特征在于,所述程序存储模块为C*Core的程序固件存储器。
9.一种用于实现如权利要求1至8中任一项所述固件烧写实现方法的系统,其特征在于,包括对码检测及固件发送模块、对码发送及固件接收模块。
10.一种如权利要求1至8中任一项所述固件烧写实现方法在数字芯片数据传输技术领域中的应用。
CN202010975770.3A 2020-09-16 2020-09-16 一种基于uart接口的固件烧写实现方法 Active CN112114831B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010975770.3A CN112114831B (zh) 2020-09-16 2020-09-16 一种基于uart接口的固件烧写实现方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010975770.3A CN112114831B (zh) 2020-09-16 2020-09-16 一种基于uart接口的固件烧写实现方法

Publications (2)

Publication Number Publication Date
CN112114831A true CN112114831A (zh) 2020-12-22
CN112114831B CN112114831B (zh) 2023-08-01

Family

ID=73802142

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010975770.3A Active CN112114831B (zh) 2020-09-16 2020-09-16 一种基于uart接口的固件烧写实现方法

Country Status (1)

Country Link
CN (1) CN112114831B (zh)

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3326912A1 (de) * 1983-07-26 1985-02-07 Siemens AG, 1000 Berlin und 8000 München Einrichtung zur codeumsetzung
CN101592976A (zh) * 2009-04-16 2009-12-02 苏州国芯科技有限公司 一种将片上仿真器时钟同步到微处理器时钟域的方法
CN105320531A (zh) * 2014-07-15 2016-02-10 北京自动化控制设备研究所 一种基于MicroBlaze软核的FPGA软件在线升级方法
CN109117151A (zh) * 2018-07-18 2019-01-01 珠海市杰理科技股份有限公司 烧写器以及程序烧写方法、装置、计算机设备和存储介质
CN109491686A (zh) * 2018-11-02 2019-03-19 天津津航技术物理研究所 基于xilinx公司k7系列的FPGA程序在线升级方法
CN109783340A (zh) * 2017-11-10 2019-05-21 深圳市中兴微电子技术有限公司 SoC的测试代码烧写方法、IP测试方法及装置
CN110225289A (zh) * 2019-05-14 2019-09-10 视联动力信息技术股份有限公司 一种会议终端及接口信号转换方法
CN110597523A (zh) * 2019-08-08 2019-12-20 深圳优地科技有限公司 板卡固件烧录方法、装置、系统及板卡、终端设备
TW202024933A (zh) * 2018-12-18 2020-07-01 英業達股份有限公司 相容型板上韌體燒錄裝置

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE3326912A1 (de) * 1983-07-26 1985-02-07 Siemens AG, 1000 Berlin und 8000 München Einrichtung zur codeumsetzung
CN101592976A (zh) * 2009-04-16 2009-12-02 苏州国芯科技有限公司 一种将片上仿真器时钟同步到微处理器时钟域的方法
CN105320531A (zh) * 2014-07-15 2016-02-10 北京自动化控制设备研究所 一种基于MicroBlaze软核的FPGA软件在线升级方法
CN109783340A (zh) * 2017-11-10 2019-05-21 深圳市中兴微电子技术有限公司 SoC的测试代码烧写方法、IP测试方法及装置
CN109117151A (zh) * 2018-07-18 2019-01-01 珠海市杰理科技股份有限公司 烧写器以及程序烧写方法、装置、计算机设备和存储介质
CN109491686A (zh) * 2018-11-02 2019-03-19 天津津航技术物理研究所 基于xilinx公司k7系列的FPGA程序在线升级方法
TW202024933A (zh) * 2018-12-18 2020-07-01 英業達股份有限公司 相容型板上韌體燒錄裝置
CN110225289A (zh) * 2019-05-14 2019-09-10 视联动力信息技术股份有限公司 一种会议终端及接口信号转换方法
CN110597523A (zh) * 2019-08-08 2019-12-20 深圳优地科技有限公司 板卡固件烧录方法、装置、系统及板卡、终端设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
P. T. KARULE: "Firmware upgradation of ARM7 through communication link: Via UART over CAN", 《2016 INTERNATIONAL CONFERENCE ON SIGNAL PROCESSING, COMMUNICATION, POWER AND EMBEDDED SYSTEM (SCOPES)》, pages 80 - 84 *
朱鑫 等: "基于Verilog语言的UART串口协议实现新方法", 《科技成果纵横》, no. 20, pages 28 - 30 *

Also Published As

Publication number Publication date
CN112114831B (zh) 2023-08-01

Similar Documents

Publication Publication Date Title
US8612790B2 (en) Serial data transfer apparatus
US9864723B2 (en) Information-processing apparatus, information-processing method, and program
CN101237690A (zh) 双界面sim卡
CN110851388A (zh) 针对risc-v处理器的调试系统及调试信号传输方法
CN100538678C (zh) 高速内部无线总线
CN101673220B (zh) 一种提高双界面sim卡工作并行度的方法
CN101937415A (zh) 嵌入式信号处理平台的处理器内外数据交换系统
CN105527633A (zh) 一种基于usb便携式北斗/gps导航授时装置及方法
CN203224620U (zh) 基于超高速usb的雷达数据采集装置
CN112114831A (zh) 一种基于uart接口的固件烧写实现方法
CN111913899B (zh) 一种基于fsmc与fpga的uart拓展方法
CN101882231B (zh) 一种rfid读写器及其数据传输方法
CN113875162B (zh) Nfc读取器与双nfc接口应答器之间的数据交换装置
CN101753393B (zh) 基于iec61158标准现场总线的通信芯片架构
CN101685319A (zh) 一种实时时钟电路
CN202058294U (zh) 一种应用无线数据传输的超声波无损检测系统
CN111651399A (zh) 一种ai板卡及主机
CN114385544A (zh) Uart芯片及fpga芯片
CN216490487U (zh) 基于dk25l系列的超低功耗蓝牙读写模块
CN212969697U (zh) 一种4g路由摄像头传输模组
CN211531339U (zh) 一种基于无线通信技术的物联网网关
CN101853233B (zh) 用于计算机系统的传输系统
CN101576866B (zh) 一种利用NandFlash总线扩展T卡的方法
CN218996372U (zh) 一种8位元传输的spi闪存控制芯片
CN201957055U (zh) 基于sdio接口的多媒体信息协处理设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant