CN104102530B - 一种提高电子产品烧录速度的方法和*** - Google Patents

一种提高电子产品烧录速度的方法和*** Download PDF

Info

Publication number
CN104102530B
CN104102530B CN201410371445.0A CN201410371445A CN104102530B CN 104102530 B CN104102530 B CN 104102530B CN 201410371445 A CN201410371445 A CN 201410371445A CN 104102530 B CN104102530 B CN 104102530B
Authority
CN
China
Prior art keywords
data block
thread
equipment end
equipment
host side
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.)
Active
Application number
CN201410371445.0A
Other languages
English (en)
Other versions
CN104102530A (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.)
Guangdong Genius Technology Co Ltd
Original Assignee
Guangdong Genius Technology 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 Guangdong Genius Technology Co Ltd filed Critical Guangdong Genius Technology Co Ltd
Priority to CN201410371445.0A priority Critical patent/CN104102530B/zh
Publication of CN104102530A publication Critical patent/CN104102530A/zh
Application granted granted Critical
Publication of CN104102530B publication Critical patent/CN104102530B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种提高电子产品烧录速度的方法和***,包括主机端和设备端,将待烧录的所有数据块中的各数据块从主机端传输至设备端并最终写入存储器的过程中,主机端和设备端的各个处理线程执行过程均为对前一个数据块执行完上一个线程并开始执行下一个线程的同时,对后一个数据块开始执行所述上一个线程,直至把待烧录的所有数据块写入设备端的存储器,以实现多个数据块烧录过程中每个传输线程的并发运行,而不需等待上一个线程完成才进行下一个线程,提高了固件烧录的速度。每个数据块的烧录过程采用多线程并发传输的方式,使每个数据块的处理过程都可以并发进行,缩短了固件烧录消耗的时间且降低生产成本。

Description

一种提高电子产品烧录速度的方法和***
技术领域
本发明涉及电子产品固件烧录技术领域,尤其涉及一种提高电子产品烧录速度的方法和***。
背景技术
随着电子产品内容的丰富,电子产品的固件越来越大,动辄几个G的固件让电子产品的烧录过程变成了漫长的等待。现有固件烧录工具均使用同步传输的方法实现固件烧录,这种同步传输固件烧录的方法包括主机端和设备端两个主体,对于主机端,主要包括从PC中读取一个数据块,再等待USB设备端准备好,接着将该数据块通过USB发送给设备端;对于设备端,主要包括等待主机端发送数据块,从USB接口接收数据块,再将该数据块写入存储器(FLASH/eMMC/SD)。以上自主机端从PC中读取一个数据块始,至设备端将该数据块写入存储器止,即为传输一个数据块的完整过程。该过程中的每一个步骤都要等待上一个步骤执行完才能开始下一个步骤。所有步骤结束之后,即该过程结束之后,才能开始下一个数据块的传输过程,直至固件数据的所有数据块都写入设备端的存储器。因此电子产品固件烧录的总烧录时间就是以上每一个传输过程对应的每一个步骤时间的累加,这使得电子产品固件烧录需要消耗大量时间,增加了电子产品的生产成本。
发明内容
本发明的目的在于提出一种提高电子产品烧录速度的方法和***,能够提高固件烧录的速度,缩短固件烧录消耗的时间,降低生产成本。
第一方面,本发明提供了一种提高电子产品烧录速度的方法,包括:
对待烧录的所有数据块中的各数据块依次执行以下线程:
主机端的读取线程:主机端从外部存储设备中读取数据块并存储至主机缓冲区;
主机端的USB传输线程:主机端查询主机缓冲区,当主机缓冲区有存储的数据块,则从主机缓冲区读取存储的所述数据块并输出至USB输出端,以便发出USB数据块传输指令;
设备端的USB传输线程:设备端接收到所述USB数据块传输指令,通过USB接收端接收所述数据块;
设备端的写入线程:设备端将USB接收的所述数据块存储至设备缓冲区,并从设备缓冲区读取存储的所述数据块写入存储器;
其中,对前一个数据块执行完上一个线程并开始执行下一个线程的同时,对后一个数据块开始执行所述上一个线程,直至把待烧录的所有数据块写入设备端的存储器。
其中,所述对待烧录的所有数据块中的各数据块依次执行以下线程之前,还包括:
建立主机缓冲区,设置主机缓冲区的主机缓冲信息量阈值;
建立设备缓冲区,设置设备缓冲区的设备缓冲信息量阈值。
其中,所述主机缓冲信息量阈值为4-8个数据块大小,所述设备缓冲信息量阈值为4-8个数据块大小。
其中,所述主机端的读取线程,还包括:
主机端检测主机缓冲区的当前存储数据块大小,当当前存储数据块大小等于主机缓冲信息量阈值,则主机端的读取线程进入挂起状态。
其中,所述主机端的USB传输线程,还包括:
主机端查询主机缓冲区当前存储数据块大小,当当前存储数据块大小等于0,则主机端的USB传输线程进入挂起状态。
其中,所述设备端的USB传输线程,还包括:
设备端检测设备缓冲区当前存储数据块大小,当当前存储数据块大小等于设备缓冲信息量阈值,则设备端的USB传输线程进入挂起状态。
其中,所述设备端的写入线程,还包括:
设备端查询设备缓冲区当前存储数据块大小,当当前存储数据块大小等于0,则设备端的写入线程进入挂起状态。
第二方面,本发明提供了一种提高电子产品烧录速度的***,包括主机端和设备端,
所述主机端,用于执行主机端的读取线程和主机端的USB传输线程;所述主机端的读取线程包括:主机端从外部存储设备中读取数据块并存储至主机缓冲区;所述主机端的USB传输线程包括:主机端查询主机缓冲区,当主机缓冲区有存储的数据块,则从主机缓冲区读取存储的所述数据块并输出至USB输出端,以便发出USB数据块传输指令;
所述设备端,用于执行设备端的USB传输线程和设备端的写入线程;所述设备端的USB传输线程包括:设备端接收到所述USB数据块传输指令,通过USB接收端接收所述数据块;所述设备端的写入线程包括:设备端将USB接收的所述数据块存储至设备缓冲区,并从设备缓冲区读取存储的所述数据块写入存储器;
其中,将待烧录的所有数据块中的各数据块从主机端传输至设备端并最终写入存储器的过程中,主机端和设备端的各个处理线程执行过程均为对前一个数据块执行完上一个线程并开始执行下一个线程的同时,对后一个数据块开始执行所述上一个线程,直至把待烧录的所有数据块写入设备端的存储器。
其中,所述主机端,还用于建立主机缓冲区,设置主机缓冲区的主机缓冲信息量阈值;
所述设备端,还用于建立设备缓冲区,设置设备缓冲区的设备缓冲信息量阈值。
其中,所述主机缓冲信息量阈值为4-8个数据块大小,所述设备缓冲信息量阈值为4-8个数据块大小。
其中,所述主机端,还用于主机端检测主机缓冲区的当前存储数据块大小,当当前存储数据块大小等于主机缓冲信息量阈值,则主机端的读取线程进入挂起状态。
其中,所述主机端,还用于主机端查询主机缓冲区当前存储数据块大小,当当前存储数据块大小等于0,则主机端的USB传输线程进入挂起状态。
其中,所述设备端,还用于设备端检测设备缓冲区当前存储数据块大小,当当前存储数据块大小等于设备缓冲信息量阈值,则设备端的USB传输线程进入挂起状态。
其中,所述设备端,还用于设备端查询设备缓冲区当前存储数据块大小,当当前存储数据块大小等于0,则设备端的写入线程进入挂起状态。
本发明的有益效果在于:一种提高电子产品烧录速度的方法和***,包括主机端和设备端,将待烧录的所有数据块中的各数据块从主机端传输至设备端并最终写入存储器的过程中,主机端和设备端的各个处理线程执行过程均为对前一个数据块执行完上一个线程并开始执行下一个线程的同时,对后一个数据块开始执行所述上一个线程,直至把待烧录的所有数据块写入设备端的存储器,以实现多个数据块烧录过程中每个传输线程的并发运行,而不需等待上一个线程完成才进行下一个线程,提高了固件烧录的速度。每个数据块的烧录过程采用多线程并发传输的方式,使每个数据块的处理过程都可以并发进行,缩短了固件烧录消耗的时间且降低生产成本。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据本发明实施例的内容和这些附图获得其他的附图。
图1是本发明实施例提供的提高电子产品烧录速度的方法第一个实施例的流程示意图。
图2是本发明实施例提供的提高电子产品烧录速度的方法第二个实施例的流程示意图。
图3是本发明实施例提供的提高电子产品烧录速度的***的结构示意图。
图4是本发明实施例提供的提高电子产品烧录速度的***的时序图。
具体实施方式
为使本发明解决的技术问题、采用的技术方案和达到的技术效果更加清楚,下面将结合附图对本发明实施例的技术方案作进一步的详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,其是本发明实施例提供的提高电子产品烧录速度的方法第一个实施例的流程示意图。本发明实施例的提高电子产品烧录速度的方法,主机端可为个人电脑、笔记本电脑或平板电脑等。设备端可为手机、数码相机、mp3、mp4、电子书、PSP或U盘等。
该提高电子产品烧录速度的方法,包括:
步骤S111、对待烧录的所有数据块中的各数据块依次执行以下线程:
固件(Firmware)就是写入EROM或EEPROM(可编程只读存储器)中的程序。通常这些硬件内所保存的程序是无法被用户直接读出或修改的,一般也没有必要对固件进行升级操作。不过随着技术的不断发展,修改固件以适应不断更新的硬件环境成了用户们的迫切要求,所以,可重复写入的可编程可擦除只读存储器EPROM(Erasable Programmable ROM)、EEPROM和Flash出现了。这些芯片是可以重复刷写的,让固件得以修改和升级。固件修改和升级的过程也称为固件烧录过程,固件修改和升级的速度也称为固件烧录速度,固件修改和升级的时间也称为固件烧录时间。固件烧录时间主要由固件大小和烧录速度决定。当固件大小不变,则固件烧录时间主要由烧录速度决定。
步骤S101、主机端的读取线程:主机端从外部存储设备中读取数据块并存储至主机缓冲区;
步骤S102、主机端的USB传输线程:主机端查询主机缓冲区,当主机缓冲区有存储的数据块,则从主机缓冲区读取存储的所述数据块并输出至USB输出端,以便发出USB数据块传输指令;
步骤S101和步骤S102主要针对主机端进行描述,具体说明了主机端发送、传输数据块的过程。
步骤S103、设备端的USB传输线程:设备端接收到所述USB数据块传输指令,通过USB接收端接收所述数据块;
步骤S104、设备端的写入线程:设备端将USB接收的所述数据块存储至设备缓冲区,并从设备缓冲区读取存储的所述数据块写入存储器;
步骤S103和步骤S104要针对设备端进行描述,具体说明了设备端接收、写入数据块的过程。
步骤S112、其中,对前一个数据块执行完上一个线程并开始执行下一个线程的同时,对后一个数据块开始执行所述上一个线程,直至把待烧录的所有数据块写入设备端的存储器。
本发明提供的提高电子产品烧录速度的方法,将待烧录的所有数据块中的各数据块从主机端传输至设备端并最终写入存储器的过程中,主机端和设备端的各个处理线程执行过程均为对前一个数据块执行完上一个线程并开始执行下一个线程的同时,对后一个数据块开始执行所述上一个线程,直至把待烧录的所有数据块写入设备端的存储器,以实现多个数据块烧录过程中每个传输线程的并发运行,而不需等待上一个线程完成才进行下一个线程,提高了固件烧录的速度。每个数据块的烧录过程采用多线程并发传输的方式,使每个数据块的处理过程都可以并发进行,缩短了固件烧录消耗的时间且降低生产成本。
请参考图2,其是本发明实施例提供的提高电子产品烧录速度的方法第二个实施例的流程示意图。本发明实施例与提高电子产品烧录速度的方法第一个实施例的主要区别在于,增加了主机端和设备端进入挂起状态的具体步骤。
该提高电子产品烧录速度的方法,包括:
步骤S211、建立主机缓冲区,设置主机缓冲区的主机缓冲信息量阈值;
建立设备缓冲区,设置设备缓冲区的设备缓冲信息量阈值。
优选的,所述主机缓冲信息量阈值为4-8个数据块大小,所述设备缓冲信息量阈值为4-8个数据块大小。
当然,所述主机缓冲信息量阈值和设备缓冲信息量阈值还可以为其他个数据块大小,如10个数据块大小或15个数据块大小。具体阈值大小的确定需根据主机端和设备端的性能及内存大小决定。
将待烧录的数据包分成N个数据块,所述N≥2。目前的网络为包交换无连接网络。在包交换网络里,单个数据被划分为多个数据块,这些数据块称为包,它包含发送者和接收者的地址信息,在一个或多个网络中传输,并且在目的地重新组合。这些包的传输彼此独立,互不影响,并且通常沿着不同的路由到达目的地。数据通常被划分为数千个包,通常其中的一些包会在传输中丢失。协议允许这种情况的发生,并且包含了要求重发在传输中丢失的数据包的方法。
步骤S212、对待烧录的所有数据块中的各数据块依次执行以下线程:
步骤S201、主机端的读取线程:主机端从外部存储设备中读取数据块并存储至主机缓冲区;
步骤S202、主机端检测主机缓冲区的当前存储数据块大小,当当前存储数据块大小等于主机缓冲信息量阈值,则主机端的读取线程进入挂起状态;
步骤S203、主机端的USB传输线程:主机端查询主机缓冲区,当主机缓冲区有存储的数据块,则从主机缓冲区读取存储的所述数据块并输出至USB输出端,以便发出USB数据块传输指令;
步骤S204、主机端查询主机缓冲区当前存储数据块大小,当当前存储数据块大小等于0,则主机端的USB传输线程进入挂起状态;
步骤S205、设备端的USB传输线程:设备端接收到所述USB数据块传输指令,通过USB接收端接收所述数据块;
步骤S206、设备端检测设备缓冲区当前存储数据块大小,当当前存储数据块大小等于设备缓冲信息量阈值,则设备端的USB传输线程进入挂起状态;
步骤S207、设备端的写入线程:设备端将USB接收的所述数据块存储至设备缓冲区,并从设备缓冲区读取存储的所述数据块写入存储器;
步骤S208、设备端查询设备缓冲区当前存储数据块大小,当当前存储数据块大小等于0,则设备端的写入线程进入挂起状态;
步骤S213、其中,对前一个数据块执行完上一个线程并开始执行下一个线程的同时,对后一个数据块开始执行所述上一个线程,直至把待烧录的所有数据块写入设备端的存储器。
本发明提供的提高电子产品烧录速度的方法,在每个数据块烧录的过程中,通过建立缓冲区的方式,实现了每个线程的并发运行,不用等待上一个线程完成就可以开始进行下一个线程。在多个数据块烧录的过程中,通过多线程并发传输的方式,实现了降低总烧录时间的效果。
通过多线程并发传输的方式,每个数据块传输的线程(主机端数据块读取、USB传输、设备端存储器写入)都可以并发进行,总体传输速度仅受最慢的那一个线程限制,通常为设备端的写入线程。经过试验结果证明,现有的同步传输固件烧录的方法,烧录速度仅能达到2.8MBytes/s,使用本发明提供的提高电子产品烧录速度的方法,烧录速度能达到7.8MBytes/s,整体速度提高了179%。
本发明提供的提高电子产品烧录速度的方法,根据主机缓冲区的存储数据块大小和设备缓冲区的存储数据块大小,实时调整主机端和设备端进入挂起状态,以实现数据块传输过程中每个线程并发运行的顺畅,提高了固件烧录的速度。
以下为本发明实施例提供的提高电子产品烧录速度的***的实施例。提高电子产品烧录速度的***的实施例与上述的提高电子产品烧录速度的方法实施例属于同一构思,提高电子产品烧录速度的***的实施例中未详尽描述的细节内容,可以参考上述提高电子产品烧录速度的方法实施例。
请参考图3,其是本发明实施例提供的提高电子产品烧录速度的***的结构示意图。
该提高电子产品烧录速度的***,包括主机端和设备端,
所述主机端,用于执行主机端的读取线程和主机端的USB传输线程;所述主机端的读取线程包括:主机端从外部存储设备中读取数据块并存储至主机缓冲区;所述主机端的USB传输线程包括:主机端查询主机缓冲区,当主机缓冲区有存储的数据块,则从主机缓冲区读取存储的所述数据块并输出至USB输出端,以便发出USB数据块传输指令;
所述设备端,用于执行设备端的USB传输线程和设备端的写入线程;所述设备端的USB传输线程包括:设备端接收到所述USB数据块传输指令,通过USB接收端接收所述数据块;所述设备端的写入线程包括:设备端将USB接收的所述数据块存储至设备缓冲区,并从设备缓冲区读取存储的所述数据块写入存储器;
其中,将待烧录的所有数据块中的各数据块从主机端传输至设备端并最终写入存储器的过程中,主机端和设备端的各个处理线程执行过程均为对前一个数据块执行完上一个线程并开始执行下一个线程的同时,对后一个数据块开始执行所述上一个线程,直至把待烧录的所有数据块写入设备端的存储器。
请参考图4,其是本发明实施例提供的提高电子产品烧录速度的***的时序图。
其中,所述主机端,还用于建立主机缓冲区,设置主机缓冲区的主机缓冲信息量阈值;
所述设备端,还用于建立设备缓冲区,设置设备缓冲区的设备缓冲信息量阈值。
其中,所述主机缓冲信息量阈值为4-8个数据块大小,所述设备缓冲信息量阈值为4-8个数据块大小。
本发明提供的提高电子产品烧录速度的***,包括主机端和设备端,将待烧录的所有数据块中的各数据块从主机端传输至设备端并最终写入存储器的过程中,主机端和设备端的各个处理线程执行过程均为对前一个数据块执行完上一个线程并开始执行下一个线程的同时,对后一个数据块开始执行所述上一个线程,直至把待烧录的所有数据块写入设备端的存储器,以实现多个数据块烧录过程中每个传输线程的并发运行,而不需等待上一个线程完成才进行下一个线程,提高了固件烧录的速度。每个数据块的烧录过程采用多线程并发传输的方式,使每个数据块的处理过程都可以并发进行,缩短了固件烧录消耗的时间且降低生产成本。
以下为本发明实施例提供的提高电子产品烧录速度的***的又一个实施例。
该提高电子产品烧录速度的***,包括主机端和设备端,
所述主机端,用于执行主机端的读取线程和主机端的USB传输线程;所述主机端的读取线程包括:主机端从外部存储设备中读取数据块并存储至主机缓冲区;所述主机端的USB传输线程包括:主机端查询主机缓冲区,当主机缓冲区有存储的数据块,则从主机缓冲区读取存储的所述数据块并输出至USB输出端,以便发出USB数据块传输指令;
所述设备端,用于执行设备端的USB传输线程和设备端的写入线程;所述设备端的USB传输线程包括:设备端接收到所述USB数据块传输指令,通过USB接收端接收所述数据块;所述设备端的写入线程包括:设备端将USB接收的所述数据块存储至设备缓冲区,并从设备缓冲区读取存储的所述数据块写入存储器;
其中,将待烧录的所有数据块中的各数据块从主机端传输至设备端并最终写入存储器的过程中,主机端和设备端的各个处理线程执行过程均为对前一个数据块执行完上一个线程并开始执行下一个线程的同时,对后一个数据块开始执行所述上一个线程,直至把待烧录的所有数据块写入设备端的存储器。
其中,所述主机端,还用于建立主机缓冲区,设置主机缓冲区的主机缓冲信息量阈值;
所述设备端,还用于建立设备缓冲区,设置设备缓冲区的设备缓冲信息量阈值。
其中,所述主机端,还用于主机端检测主机缓冲区的当前存储数据块大小,当当前存储数据块大小等于主机缓冲信息量阈值,则主机端的读取线程进入挂起状态。
其中,所述主机端,还用于主机端查询主机缓冲区当前存储数据块大小,当当前存储数据块大小等于0,则主机端的USB传输线程进入挂起状态。
其中,所述设备端,还用于设备端检测设备缓冲区当前存储数据块大小,当当前存储数据块大小等于设备缓冲信息量阈值,则设备端的USB传输线程进入挂起状态。
其中,所述设备端,还用于设备端查询设备缓冲区当前存储数据块大小,当当前存储数据块大小等于0,则设备端的写入线程进入挂起状态。
本发明提供的提高电子产品烧录速度的***,主机端建立主机缓冲区,设备端建立设备缓冲区,根据主机缓冲区的存储数据块大小和设备缓冲区的存储数据块大小,实时调整主机端和设备端进入挂起状态,以实现数据块传输过程中每个线程并发运行的顺畅,提高了固件烧录的速度。
一种提高电子产品烧录速度的方法和***,能够提高固件烧录的速度,缩短固件烧录消耗的时间,降低生产成本。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括存储器、磁盘或光盘等。
以上内容仅为本发明的较佳实施例,对于本领域的普通技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,本说明书内容不应理解为对本发明的限制。

Claims (4)

1.一种提高电子产品烧录速度的方法,其特征在于,包括:
对待烧录的所有数据块中的各数据块依次执行以下线程:
主机端的读取线程:主机端从外部存储设备中读取数据块并存储至主机缓冲区;
主机端的USB传输线程:主机端查询主机缓冲区,当主机缓冲区有存储的数据块,则从主机缓冲区读取存储的所述数据块并输出至USB输出端,以便发出USB数据块传输指令;
设备端的USB传输线程:设备端接收到所述USB数据块传输指令,通过USB接收端接收所述数据块;
设备端的写入线程:设备端将USB接收的所述数据块存储至设备缓冲区,并从设备缓冲区读取存储的所述数据块写入存储器;
其中,对前一个数据块执行完上一个线程并开始执行下一个线程的同时,对后一个数据块开始执行所述上一个线程,直至把待烧录的所有数据块写入设备端的存储器;
所述主机端的USB传输线程,还包括:
主机端查询主机缓冲区当前存储数据块大小,当当前存储数据块大小等于0,则主机端的USB传输线程进入挂起状态;
所述设备端的写入线程,还包括:
设备端查询设备缓冲区当前存储数据块大小,当当前存储数据块大小等于0,则设备端的写入线程进入挂起状态;
所述对待烧录的所有数据块中的各数据块依次执行以下线程之前,还包括:
建立主机缓冲区,设置主机缓冲区的主机缓冲信息量阈值;
建立设备缓冲区,设置设备缓冲区的设备缓冲信息量阈值;
所述主机端的读取线程,还包括:
主机端检测主机缓冲区的当前存储数据块大小,当当前存储数据块大小等于主机缓冲信息量阈值,则主机端的读取线程进入挂起状态;
所述设备端的USB传输线程,还包括:
设备端检测设备缓冲区当前存储数据块大小,当当前存储数据块大小等于设备缓冲信息量阈值,则设备端的USB传输线程进入挂起状态。
2.根据权利要求1所述的提高电子产品烧录速度的方法,其特征在于,所述主机缓冲信息量阈值为4-8个数据块大小,所述设备缓冲信息量阈值为4-8个数据块大小。
3.一种提高电子产品烧录速度的***,其特征在于,包括主机端和设备端,所述主机端,用于执行主机端的读取线程和主机端的USB传输线程;所述主机端的读取线程包括:主机端从外部存储设备中读取数据块并存储至主机缓冲区;所述主机端的USB传输线程包括:主机端查询主机缓冲区,当主机缓冲区有存储的数据块,则从主机缓冲区读取存储的所述数据块并输出至USB输出端,以便发出USB数据块传输指令;
所述设备端,用于执行设备端的USB传输线程和设备端的写入线程;所述设备端的USB传输线程包括:设备端接收到所述USB数据块传输指令,通过USB接收端接收所述数据块;所述设备端的写入线程包括:设备端将USB接收的所述数据块存储至设备缓冲区,并从设备缓冲区读取存储的所述数据块写入存储器;
其中,将待烧录的所有数据块中的各数据块从主机端传输至设备端并最终写入存储器的过程中,主机端和设备端的各个处理线程执行过程均为对前一个数据块执行完上一个线程并开始执行下一个线程的同时,对后一个数据块开始执行所述上一个线程,直至把待烧录的所有数据块写入设备端的存储器;
所述主机端,还用于主机端查询主机缓冲区当前存储数据块大小,当当前存储数据块大小等于0,则主机端的USB传输线程进入挂起状态;
所述设备端,还用于设备端查询设备缓冲区当前存储数据块大小,当当前存储数据块大小等于0,则设备端的写入线程进入挂起状态;
所述主机端,还用于建立主机缓冲区,设置主机缓冲区的主机缓冲信息量阈值;
所述设备端,还用于建立设备缓冲区,设置设备缓冲区的设备缓冲信息量阈值;
所述主机端,还用于主机端检测主机缓冲区的当前存储数据块大小,当当前存储数据块大小等于主机缓冲信息量阈值,则主机端的读取线程进入挂起状态;
所述设备端,还用于设备端检测设备缓冲区当前存储数据块大小,当当前存储数据块大小等于设备缓冲信息量阈值,则设备端的USB传输线程进入挂起状态。
4.根据权利要求3所述的提高电子产品烧录速度的***,其特征在于,所述主机缓冲信息量阈值为4-8个数据块大小,所述设备缓冲信息量阈值为4-8个数据块大小。
CN201410371445.0A 2014-07-30 2014-07-30 一种提高电子产品烧录速度的方法和*** Active CN104102530B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410371445.0A CN104102530B (zh) 2014-07-30 2014-07-30 一种提高电子产品烧录速度的方法和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410371445.0A CN104102530B (zh) 2014-07-30 2014-07-30 一种提高电子产品烧录速度的方法和***

Publications (2)

Publication Number Publication Date
CN104102530A CN104102530A (zh) 2014-10-15
CN104102530B true CN104102530B (zh) 2017-11-21

Family

ID=51670702

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410371445.0A Active CN104102530B (zh) 2014-07-30 2014-07-30 一种提高电子产品烧录速度的方法和***

Country Status (1)

Country Link
CN (1) CN104102530B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106933603B (zh) * 2015-12-29 2024-03-05 深圳市博巨兴微电子科技有限公司 一种芯片烧录的方法、装置和微控制器
CN109165025A (zh) * 2018-08-01 2019-01-08 京信通信***(中国)有限公司 芯片离线烧录方法、装置、***、计算机存储介质及设备
CN110399143A (zh) * 2019-07-29 2019-11-01 Oppo广东移动通信有限公司 终端设备的刷机方法、装置、计算机存储介质和***

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1641782A (zh) * 2004-01-08 2005-07-20 财团法人工业技术研究院 光盘烧录器及其控制方法
CN101655894A (zh) * 2008-08-19 2010-02-24 上海华虹集成电路有限责任公司 在通用串行总线加密锁设备上提高分组算法吞吐量的方法
CN101692217A (zh) * 2009-09-16 2010-04-07 东莞市步步高教育电子产品有限公司 一种芯片烧录方法及其装置
CN103412781A (zh) * 2013-08-27 2013-11-27 信利光电股份有限公司 一次性可编程芯片的烧录方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1641782A (zh) * 2004-01-08 2005-07-20 财团法人工业技术研究院 光盘烧录器及其控制方法
CN101655894A (zh) * 2008-08-19 2010-02-24 上海华虹集成电路有限责任公司 在通用串行总线加密锁设备上提高分组算法吞吐量的方法
CN101692217A (zh) * 2009-09-16 2010-04-07 东莞市步步高教育电子产品有限公司 一种芯片烧录方法及其装置
CN103412781A (zh) * 2013-08-27 2013-11-27 信利光电股份有限公司 一次性可编程芯片的烧录方法

Also Published As

Publication number Publication date
CN104102530A (zh) 2014-10-15

Similar Documents

Publication Publication Date Title
CN202870808U (zh) 一种spi串口模块的fpga实现装置
KR20170063332A (ko) 솔리드 스테이트 드라이브 및 그것의 동작 방법
CN107426322A (zh) 一种推送消息目标匹配方法、服务器、终端以及计算机可读存储介质
CN109558344B (zh) 一种适用于网络传输的dma传输方法及dma控制器
RU2617388C2 (ru) Способ, терминал и электронное устройство для обработки документа электронной книги
CN104102530B (zh) 一种提高电子产品烧录速度的方法和***
CN106797557B (zh) 数据传输的方法和终端
CN106462270B (zh) 用于电子设备的输入设备、方法和***
EP2124155A3 (en) Information processing apparatus, information processing system, method of processing information, and computer program
CN106649024A (zh) 一种应用性能实时监控方法及装置
CN103473145B (zh) 一种终端死机复位的方法、装置和终端
CN113377288B (zh) 硬件队列管理***、方法、固态硬盘控制器及固态硬盘
CN103399832A (zh) 总线间的乱序返回数据的归序方法
CN205898154U (zh) 一种小区导航用地图绘制及应用***
CN109408426B (zh) 一种灵活通用的串行通信方法及***
CN103902471B (zh) 数据缓存处理方法和装置
CN109074187A (zh) 触控检测误报点的确定方法、电容触控装置及电子装置
CN106294225A (zh) 一种数据读取方法、对端设备及控制器
CN116467235B (zh) 一种基于dma的数据处理方法、装置、电子设备及介质
US10276177B2 (en) Technologies for privately processing voice data using a repositioned reordered fragmentation of the voice data
CN104375783A (zh) 一种eeprom数据写入的方法
CN103838694A (zh) 一种fpga高速读取usb接口数据的方法
CN103685229A (zh) 节能连续数据传递
CN103558995A (zh) 一种存储控制芯片及磁盘报文传输方法
CN115904259A (zh) 非易失性存储器标准NVMe指令的处理方法及相关装置

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