CN105117236A - 一种自动校验的编程烧写方法 - Google Patents

一种自动校验的编程烧写方法 Download PDF

Info

Publication number
CN105117236A
CN105117236A CN201510370483.9A CN201510370483A CN105117236A CN 105117236 A CN105117236 A CN 105117236A CN 201510370483 A CN201510370483 A CN 201510370483A CN 105117236 A CN105117236 A CN 105117236A
Authority
CN
China
Prior art keywords
data
programming
address
total check
check unit
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
CN201510370483.9A
Other languages
English (en)
Other versions
CN105117236B (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.)
CRM ICBG Wuxi Co Ltd
Original Assignee
Wuxi China Resources Semico Co Ltd
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 Wuxi China Resources Semico Co Ltd filed Critical Wuxi China Resources Semico Co Ltd
Priority to CN201510370483.9A priority Critical patent/CN105117236B/zh
Publication of CN105117236A publication Critical patent/CN105117236A/zh
Application granted granted Critical
Publication of CN105117236B publication Critical patent/CN105117236B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Programmable Controllers (AREA)

Abstract

本发明涉及可编程电路的烧写方法,具体是一种自动校验的编程烧写方法,包括步骤:编程控制器接收烧写器发出的时钟和数据;地址信息在第三时钟的控制下通过地址输入输出总线串行移入地址寄存器,编程数据在第二时钟的控制下通过数据输入输出总线串行移入数据存储器;编程控制器发出编程指令和第一时钟,数据寄存器的内容写入到地址寄存器指定的存储空间,实现数据的烧录;累加校验单元对编程后的可编程存储器读取的数据进行累加校验,得到一个累加值;比较烧写器送出的校验值和累加值,得到正确或错误标记信号,来判断写入的数据是否正确。本发明节省了校验时间,提高了生产效率。

Description

一种自动校验的编程烧写方法
技术领域
本发明涉及一种可编程电路的烧写校验方法,具体涉及一种自动校验的编程烧写方法。
背景技术
现有的otp(一次性可编程)、flash等可编程的MCU电路,在程序开发时,一般会有配套的烧写器,用于flash或otp的编程烧写。程序烧录进flash或otp后,为了确保程序烧录正确,一般还会通过烧写器将烧录的程序回读校验。如附图1所示,为了节省编程烧写引脚,烧写器采用四线制烧录(电源、地、时钟、双向数据口),烧写器进行数据烧写及数据回读时,都是通过一根数据线来实现的,其数据烧写和数据回读过程是分时的,如果烧写的数据需要全部回读出来,回读过程就需要花费比较长的时间。如附图2所示,是现有烧写器和MCU之间的烧写和校验回读时序图,校验回读过程中,数据是采用串行移位方式,从MCU的可编程存储器里面读出的数据给烧写器校验,一般烧写了多少个数据,就需要串行读出多少个数据来校验,已确保写入的数据都得到正确的编程,因此在编程数据回读校验时,编程容量越大,串行回读校验所花费的时间也就越多。
采用上述的方式进行烧写校验,MCU电路内部可编程存储器和MCU电路接口设计如附图3所示,MCU电路包括编程控制器、可编程存储器、数据寄存器和地址寄存器。该方式的校验原理是:(1)编程控制器接收烧写器发出的时钟和数据,可以使电路进入编程模式或读出校验模式;(2)在编程模式下,编程控制器接收烧写器发出的时钟和数据(包括地址信息和编程数据),地址信息在第三时钟(clk3)的控制下通过地址输入输出端口(aio)串行移入地址寄存器,决定编程的地址;编程数据在第二时钟(clk2)的控制下通过串行数据输入输出端口(dio)串行移入数据寄存器;(3)完成数据串并转换后,烧写器打入烧写命令,编程控制器发出编程指令(prog)和第一时钟(clk1),数据寄存器的内容写入到地址寄存器指定的存储空间,实现数据的烧录;(4)完成数据烧录后,为了校验烧录的正确性,烧写器再打入校验命令,编程控制器使电路进入校验模式;(5)在校验模式下,编程控制器接收烧写器发出的地址信息,先指定要校验存储空间的地址,接着发出读取信号(read)和第一时钟(clk1),将指定地址空间的内容读出到数据寄存器,再通过第二时钟(clk2),将数据寄存器的内容串行移出,通过数据端口送给烧写器校验。
现有的烧写校验方法存在的缺点是:写入的数据越多,串行读出的时间越长,这个缺点最终会导致产品的批量编程的生产效率低下。
发明内容
本发明的目的是克服现有技术的缺陷,提供一种自动校验的编程烧写方法,该方法在数据烧写的过程中就能够实现对烧写成功的数据进行自动校验,节省校验回读时间。
为了解决上述技术问题,本发明所采用的技术方案是:一种自动校验的编程烧写方法,基于可编程的MCU电路,该电路包括编程控制器、可编程存储器、数据寄存器和地址寄存器,其特征在于,所述的烧写方法的实现还基于MCU电路中增加了累加校验单元,所述的累加校验单元分别与可编程存储器、数据寄存器和编程控制器连接,该烧写方法具体包括如下步骤:(1)所述编程控制器接收配套的烧写器发出的时钟信号和数据信号,数据信号中包括地址信息和编程数据;(2)所述编程控制器中的地址信息在第三时钟的控制下通过地址输入输出总线串行移入地址寄存器,存储编程的地址,编程数据在第二时钟的控制下通过数据输入输出总线串行移入数据存储器;(3)在完成数据串并转换后,烧写器打入烧写命令,编程控制器发出编程指令和第一时钟,数据寄存器的内容写入到地址寄存器指定的存储空间,实现数据的烧录,在完成所有数据烧录后,烧写器发出一个校验值,数据寄存器将烧写器送出的校验值完成串并转换后送入累加校验单元;(4)所述可编程存储器进行对数据的编程存储,并将存储的数据发送到累加校验单元,所述累加校验单元对编程后的可编程存储器读取的数据进行累加校验,得到一个累加值;(5)通过所述累加校验单元比较累加值和烧写器送出的校验值,若校验值和累加值一致,则得到一个正确标志信号,并将正确标志信号通过编程控制器发送给烧写器;若校验值和累加值不一致,则得到一个错误标记信号,并将错误标志信号通过编程控制器发送给烧写器,烧写器根据返回的标志信号来判断写入的数据是否正确,如果接收到正确标志信号,则判断数据烧录正确,如果接收到错误标志信号,则判断数据烧录失效。
优选的:上述步骤(4)中的累加校验单元对可编程存储器中的数据进行读取累加校验的方式有两种。
第一种方式是进行当前地址编程后即读出给累加校验单元进行累加计算累加值;当字节或字编程时间加上读取时间小于等于数据串行移位时间时,采用的是此种方式,数据的移位、编程、读取、地址递增采用流水线方式进行,在进行当前数据移位时,编程控制器进行对上一次移位数据进行编程和读取动作,累加校验单元执行对当前读取数据进行累加计算,累加计算后当前地址加1,执行下一个数据的串行移位,并将上次移位数据写入到数据缓存中。
第二种方式是在所有地址编程结束后,顺序读取所有地址内容给累加校验单元进行累加计算累加值;当字节或字编程时间加上读取时间大于数据串行移位时间时,采用的是这种方式,编程控制器先对电路按地址顺序进行编程,编程结束后再按地址顺序将可编程存储器的内容读取进行累加,最后得到一个累加值。
本发明的有益效果是:在现有的MCU电路中增加了累加校验单元,能够实现自动校验功能,校验结束后送出少量的校验数据(即正确标志信号或错误标志信号)给烧写器做校验确认即可,可以节省回读校验时间,能够提高产品批量编程生产效率。
附图说明
图1,现有技术四线制烧写器与MCU电路的连接示意图;
图2,现有技术烧写器和MCU之间的烧写和校验回读时序图;
图3,现有技术MCU电路内部可编程存储器和MCU电路接口连接图;
图4,本发明MCU电路内部可编程存储器和MCU电路接口连接图;
图5,本发明实现实施例一的时序图;
图6,本发明实现实施例二的时序图。
具体实施方式
下面结合附图4-6来说明本发明的工作原理以及实现方式。
如图4所示,是本发明MCU电路内部可编程存储器和MCU电路接口连接图,该电路图中,包括可编程存储器、数据寄存器、地址寄存器(包括地址递增)、累加校验单元、编程控制器。所述的编程控制器通过时钟和数据端口连接配套的烧写器;所述的编程控制器通过第二时钟(clk2)、串行数据输入输出端口(dio)、数据传输方向(dir)端口分别与数据寄存器的时钟输入端口、串行数据输入输出端口、数据传输方向输入端口连接,数据寄存器的并行总线输入/输出端连接可编程存储器的数据总线(Data_bus);所述的编程控制器通过第三时钟(clk3)、地址输入输出端口(aio)分别连接地址寄存器的时钟输入端、地址输入端口,地址寄存器的地址总线输出端与可编程存储器的地址总线输入端连接;所述累加校验单元的输入端连接可编程存储器,其输出端连接编程控制器,所述数据寄存器也与累加校验单元连接。该电路的工作原理是:所述编程控制器接收配套的烧写器发出时钟信号、地址信息和编程数据;所述编程控制器中的地址信息在第三时钟(clk3)的控制下通过地址输入输出接口(aio)串行移入地址寄存器,存储编程的地址,编程数据在第二时钟(clk2)的控制下通过串行数据输入输出接口(dio)串行移入数据寄存器;(3)在完成数据串并转换后,烧写器打入烧写命令,编程控制器发出编程指令(prog)和第一时钟(clk1),数据寄存器的内容写入到地址寄存器指定的存储空间,实现数据的烧录,在完成所有数据烧录后,烧写器发出一个校验值,数据寄存器将烧写器送出的校验值完成串并转换后送入累加校验单元;(4)所述可编程存储器进行对数据的编程存储,并将存储的数据发送到累加校验单元,所述的累加校验单元对编程后的可编程存储器读取的数据进行累加校验,得到一个累加值;(5)通过所述累加校验单元比较累加值和烧写器送出的校验值,若校验值和累加值一致,则得到一个正确标志信号(ack),并将正确标志信号通过编程控制器发送给烧写器;若校验值和累加值不一致,则得到一个错误标记信号(nack),并将错误标志信号通过编程控制器发送给烧写器,烧写器根据返回的标志信号来判断写入的数据是否正确,如果接收到正确标志信号,则判断数据烧录正确,如果接收到错误标志信号,则判断数据烧录失效。
实施例一:若某款flaship要求的byte编程时间是6~7.5us,读取时间是32ns,如果设计byte编程时间取7us,读取时间32ns,那么加起来的编程时间和读取时间为7.032us;而烧写器端口通信时钟设为1MHz,串行移位传输1个byte需要8个时钟,也就是8us时间,编程时间和读取时间共7.032us小于串行移位8us的时间,则本实施例中累加校验单元对于可编程存储器中的编程数据的读取累加校验采用第一种实现方式。即数据的移位、编程、读取、地址递增采用流水线方式进行,在进行当前数据移位时,编程控制器进行对上一次移位数据进行编程和读取动作,累加校验单元执行对当前读取数据进行累加计算,累加计算后当前地址加1,执行下一个数据的串行移位,并将上次移位数据写入到数据缓存(DATA_REG)中。
流水线过程如下表格所示:
此种实现方式的时序图如附图5所示。
实施例二::若某款flaship要求的byte编程时间是6~7.5us,读取时间是32ns,如果设计byte编程时间取7us,读取时间32ns,那么加起来的编程时间和读取时间为7.032us;假设烧写器端口通信时钟假设为10MHz,串行移位传输1个byte需要8个时钟,也就是0.8us时间,则本实施例中累加校验单元对于可编程存储器中的编程数据的读取累加校验采用第二种实现方式。编程控制器先对电路按地址顺序进行编程,编程结束后再按地址顺序将可编程存储器的内容读取进行累加,最后得到一个累加值。从附图6的时序图中可以看出,和原先校验时序图(附图2)相比,不再进行并串转换后将数据从编程口串行输出,每个地址只需要1个读时钟的时间即可,大大节省了烧写器校验回读的时间。
本发明累加校验单元将累加得到的一个累加值累加,和烧写器发送的校验值进行比较,产生正确标志信号或者错误标志信号,烧写器根据标志信号判断此次烧录是否成功,本发明在累加校验单元校验结束后只送出少量的校验数据给烧写器做校验确认即可,大大提高了产品批量编程生产效率。

Claims (4)

1.一种自动校验的编程烧写方法,基于可编程的MCU电路,该电路包括编程控制器、可编程存储器、数据寄存器和地址寄存器,其特征在于,所述烧写方法的实现还基于MCU电路中增加了累加校验单元,所述累加校验单元分别与可编程存储器、数据寄存器和编程控制器连接,该烧写方法具体包括如下步骤:
(1)所述编程控制器接收配套的烧写器发出的时钟信号和数据信号,数据信号中包括地址信息和编程数据;
(2)所述编程控制器中的地址信息在第三时钟的控制下通过地址输入输出总线串行移入地址寄存器,存储编程的地址,编程数据在第二时钟的控制下通过串行数据输入输出总线串行移入数据存储器;
(3)在完成数据串并转换后,烧写器打入烧写命令,所述编程控制器发出编程指令和第一时钟,所述数据寄存器的内容写入到地址寄存器指定的存储空间,实现数据的烧录,在完成所有数据烧录后,烧写器发出一个校验值,数据寄存器将烧写器送出的校验值完成串并转换后送入累加校验单元;
(4)所述可编程存储器进行对数据的编程存储,并将存储的数据发送到累加校验单元,所述累加校验单元对编程后的可编程存储器读取的数据进行累加校验,得到一个累加值;
(5)通过所述累加校验单元比较累加值和烧写器送出的校验值,若校验值和累加值一致,则得到一个正确标志信号,并将正确标志信号通过编程控制器发送给烧写器;若校验值和累加值不一致,则得到一个错误标记信号,并将错误标志信号通过编程控制器发送给烧写器,烧写器根据返回的标志信号来判断写入的数据是否正确,如果接收到正确标志信号,则判断数据烧录正确,如果接收到错误标志信号,则判断数据烧录失效。
2.根据权利要求1所述的自动校验的编程烧写方法,其特征在于,所述的步骤(4)中的累加校验单元对可编程存储器中的数据进行读取累加校验的方式有两种,第一种方式是进行当前地址编程后即读出给累加校验单元进行累加计算得出累加值;第二种方式是在所有地址编程结束后,顺序读取所有地址内容给累加校验单元进行累加计算得出累加值。
3.根据权利要求2所述的自动校验的编程烧写方法,其特征在于,当字节或字编程时间加上读取时间小于等于数据串行移位时间时,采用的是所述的第一种方式,数据的移位、编程、读取、地址递增采用流水线方式进行,在进行当前数据移位时,编程控制器进行对上一次移位数据进行编程和读取动作,累加校验单元执行对当前读取数据进行累加计算,累加计算后当前地址加1,执行下一个数据的串行移位,并将上次移位数据写入到数据缓存中。
4.根据权利要求2所述的自动校验的编程烧写方法,其特征在于,当字节或字编程时间加上读取时间大于数据串行移位时间时,采用的是所述的第二种方式,编程控制器先对电路按地址顺序进行编程,编程结束后再按地址顺序将可编程存储器的内容读取进行累加,最后得到一个累加值。
CN201510370483.9A 2015-06-30 2015-06-30 一种自动校验的编程烧写方法 Active CN105117236B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510370483.9A CN105117236B (zh) 2015-06-30 2015-06-30 一种自动校验的编程烧写方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510370483.9A CN105117236B (zh) 2015-06-30 2015-06-30 一种自动校验的编程烧写方法

Publications (2)

Publication Number Publication Date
CN105117236A true CN105117236A (zh) 2015-12-02
CN105117236B CN105117236B (zh) 2018-06-01

Family

ID=54665238

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510370483.9A Active CN105117236B (zh) 2015-06-30 2015-06-30 一种自动校验的编程烧写方法

Country Status (1)

Country Link
CN (1) CN105117236B (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106933603A (zh) * 2015-12-29 2017-07-07 深圳市博巨兴实业发展有限公司 一种芯片烧录的方法、装置和微控制器
CN109189405A (zh) * 2018-07-19 2019-01-11 山东省科学院自动化研究所 一种验证程序Flash数据一致性的方法及系统
CN110007931A (zh) * 2019-01-21 2019-07-12 合肥市航嘉电子技术有限公司 烧写模块及其烧写方法
CN110956913A (zh) * 2019-11-21 2020-04-03 Tcl华星光电技术有限公司 时序控制器验证系统及时序控制器验证方法
CN111338658A (zh) * 2020-02-27 2020-06-26 上海电力大学 一种基于stm32CPU下载PIC单片机程序的方法及系统
CN112685344A (zh) * 2020-12-30 2021-04-20 合肥市芯海电子科技有限公司 Dma编程电路及基于dma编程电路的编程方法
CN113805903A (zh) * 2021-09-27 2021-12-17 深圳市爱协生科技有限公司 烧录控制方法、烧录控制设备和烧录系统
CN113836059A (zh) * 2021-11-26 2021-12-24 广州智慧城市发展研究院 一种应用于eeprom存储器的控制系统
CN116541032A (zh) * 2023-07-04 2023-08-04 英诺达(成都)电子科技有限公司 数据烧录方法、装置、设备及计算机存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060023560A1 (en) * 2004-07-28 2006-02-02 Inventec Coporation Structure for directly burning program into motherboard
CN102736938A (zh) * 2012-06-18 2012-10-17 中国电子科技集团公司第十研究所 Fpga配置程序的烧写方法
CN103646585A (zh) * 2013-12-17 2014-03-19 张玉馥 嵌入式单片机应用技术项目实训系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060023560A1 (en) * 2004-07-28 2006-02-02 Inventec Coporation Structure for directly burning program into motherboard
CN102736938A (zh) * 2012-06-18 2012-10-17 中国电子科技集团公司第十研究所 Fpga配置程序的烧写方法
CN103646585A (zh) * 2013-12-17 2014-03-19 张玉馥 嵌入式单片机应用技术项目实训系统

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106933603A (zh) * 2015-12-29 2017-07-07 深圳市博巨兴实业发展有限公司 一种芯片烧录的方法、装置和微控制器
CN106933603B (zh) * 2015-12-29 2024-03-05 深圳市博巨兴微电子科技有限公司 一种芯片烧录的方法、装置和微控制器
CN109189405A (zh) * 2018-07-19 2019-01-11 山东省科学院自动化研究所 一种验证程序Flash数据一致性的方法及系统
CN110007931A (zh) * 2019-01-21 2019-07-12 合肥市航嘉电子技术有限公司 烧写模块及其烧写方法
CN110956913A (zh) * 2019-11-21 2020-04-03 Tcl华星光电技术有限公司 时序控制器验证系统及时序控制器验证方法
CN110956913B (zh) * 2019-11-21 2022-07-26 Tcl华星光电技术有限公司 时序控制器验证系统及时序控制器验证方法
CN111338658B (zh) * 2020-02-27 2023-10-10 上海电力大学 一种基于stm32CPU下载PIC单片机程序的方法及系统
CN111338658A (zh) * 2020-02-27 2020-06-26 上海电力大学 一种基于stm32CPU下载PIC单片机程序的方法及系统
CN112685344A (zh) * 2020-12-30 2021-04-20 合肥市芯海电子科技有限公司 Dma编程电路及基于dma编程电路的编程方法
CN112685344B (zh) * 2020-12-30 2024-05-14 合肥市芯海电子科技有限公司 Dma编程电路及基于dma编程电路的编程方法
CN113805903A (zh) * 2021-09-27 2021-12-17 深圳市爱协生科技有限公司 烧录控制方法、烧录控制设备和烧录系统
CN113805903B (zh) * 2021-09-27 2024-02-13 深圳市爱协生科技股份有限公司 烧录控制方法、烧录控制设备和烧录系统
CN113836059A (zh) * 2021-11-26 2021-12-24 广州智慧城市发展研究院 一种应用于eeprom存储器的控制系统
CN116541032B (zh) * 2023-07-04 2023-09-29 英诺达(成都)电子科技有限公司 数据烧录方法、装置、设备及计算机存储介质
CN116541032A (zh) * 2023-07-04 2023-08-04 英诺达(成都)电子科技有限公司 数据烧录方法、装置、设备及计算机存储介质

Also Published As

Publication number Publication date
CN105117236B (zh) 2018-06-01

Similar Documents

Publication Publication Date Title
CN105117236A (zh) 一种自动校验的编程烧写方法
CN101828174B (zh) 用于同步串行接口nand的数据读取的系统及方法
US9792072B2 (en) Embedded multimedia card (eMMC), host controlling eMMC, and method operating eMMC system
TW201447897A (zh) 自記憶體讀取資料同時將寫入資料傳送至該記憶體之系統及方法
CN104658612B (zh) 存取快闪存储器中储存单元的方法以及使用该方法的装置
CN102568603A (zh) 数据传输装置、存储器控制装置和存储器系统
US9552287B2 (en) Data management method, memory controller and embedded memory storage apparatus using the same
CN103544994A (zh) 快闪存储器控制器、快闪存储器侦错方法
CN108962304A (zh) 存储装置及其操作方法
CN115080471A (zh) 基于FPGA的nand flash接口控制器及读写方法
CN101996686B (zh) 将测试数据写入存储器的方法和装置
TWI416523B (zh) 非揮發性記憶體之寫入錯誤管理方法、非揮發性記憶體、記憶卡、以及非揮發性記憶體之控制器
CN101853198B (zh) 地址总线的检测方法、设备和系统
CN108664362B (zh) 内存镜像的处理方法、内存控制器及用户设备
CN101354673B (zh) 内存之spd芯片错误信息仿真装置
CN108139993B (zh) 内存装置、内存控制器、数据缓存装置及计算机系统
CN102629212A (zh) 一种基于j-link间接烧写程序到nandflash的方法
CN101930406B (zh) 非易失性存储器的写入错误管理方法、存储卡、及控制器
US20150019899A1 (en) Memory system with improved bus timing calibration
CN111179996B (zh) 数据校准装置及其校准数据存写方法
CN110214316A (zh) 具有命令优先权的存储器协议
CN101295537B (zh) 记忆体的读取操作控制方法
CN104714892A (zh) 数据存取命令执行方法以及使用该方法的快闪存储器装置
CN104064221A (zh) 错误修正方法以及存储器装置
CN113176974B (zh) 用于验证ip核的方法、装置及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 214135 -6, Linghu Avenue, Wuxi Taihu international science and Technology Park, Wuxi, Jiangsu, China, 180

Patentee after: China Resources micro integrated circuit (Wuxi) Co., Ltd

Address before: No.180-22, Linghu Avenue, Taihu International Science and Technology Park, Wuxi, Jiangsu, 214135

Patentee before: WUXI CHINA RESOURCES SEMICO Co.,Ltd.