CN110362965B - 集成电路芯片的固件处理方法、装置、系统、设备及介质 - Google Patents

集成电路芯片的固件处理方法、装置、系统、设备及介质 Download PDF

Info

Publication number
CN110362965B
CN110362965B CN201910507675.8A CN201910507675A CN110362965B CN 110362965 B CN110362965 B CN 110362965B CN 201910507675 A CN201910507675 A CN 201910507675A CN 110362965 B CN110362965 B CN 110362965B
Authority
CN
China
Prior art keywords
firmware
client
server
compiled
original
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
CN201910507675.8A
Other languages
English (en)
Other versions
CN110362965A (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.)
Chuangxin Workshop Technology Shenzhen Co ltd
Original Assignee
Chuangxin Workshop Technology Shenzhen 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 Chuangxin Workshop Technology Shenzhen Co ltd filed Critical Chuangxin Workshop Technology Shenzhen Co ltd
Priority to CN201910507675.8A priority Critical patent/CN110362965B/zh
Publication of CN110362965A publication Critical patent/CN110362965A/zh
Application granted granted Critical
Publication of CN110362965B publication Critical patent/CN110362965B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0633Lists, e.g. purchase orders, compilation or processing
    • G06Q30/0635Processing of requisition or of purchase orders

Abstract

本发明适用于集成电路技术领域,提供了一种集成电路芯片的固件处理方法、装置、系统、设备及介质,该方法应用于服务器,所述服务器存储有原始固件及对应的使用信息,方法包括:接收各需求客户端发送的对原始固件的下单请求,根据对应的原始固件的使用信息生成订单信息,并将订单信息发送至相应的需求客户端;在需求客户端根据订单信息成功支付对应费用且连接固件烧录器后,根据需求客户端发送的固件获取请求处理对应的原始固件以生成受限固件,并将受限固件发送到相应的需求客户端的缓存区,以使需求客户端将受限固件传送至固件烧录器。本发明解决了现有的固件处理过程导致固件利用效率低且相应的固件版权无法得到有效保护的技术问题。

Description

集成电路芯片的固件处理方法、装置、系统、设备及介质
技术领域
本发明属于集成电路技术领域,尤其涉及一种集成电路芯片的固件处理方法、装置、系统、设备及介质。
背景技术
随着半导体技术的发展,集成电路芯片在各种电子产品中应用得越来越广泛。针对不同的应用,需要烧录到集成电路芯片中的固件也不同,这就需要开发者付出大量时间和精力进行具体的固件开发。目前,对集成电路芯片进行固件烧录,需要固件开发者将烧录好固件的芯片或将做好的样板寄给固件需求者进行测试确认,在固件需求者确认没有问题后,开发者需要定制一个限制烧录次数或烧录时间的固件,通过邮件等方式发给固件需求者对待烧录芯片进行固件烧录。
然而,该固件烧录过程,存在运输快件易丢失易耽搁,或样板易损坏而影响固件需求者测试等一系列导致固件利用效率低的问题,同时,由于在该固件烧录过程中,固件需求者会直接接触到已限制烧录次数或烧录时间的固件,这就很大程度上增大了固件被能破解该限制的非法固件需求者所复制、窃取,继而进行反编译的可能性,致使固件版权无法得到有效保护。
发明内容
有鉴于此,本发明实施例提供一种集成电路芯片的固件处理方法、装置、系统、设备及介质,以解决现有技术中集成电路芯片的固件处理过程导致固件利用效率低且相应的固件版权无法得到有效保护的问题。
本发明实施例的第一方面提供了一种集成电路芯片的固件处理方法,应用于服务器,所述服务器存储有原始固件及对应的使用信息,所述固件处理方法包括:
接收各需求客户端发送的对原始固件的下单请求,根据对应的原始固件的使用信息生成订单信息,并将订单信息发送至相应的需求客户端;
在需求客户端根据订单信息成功支付对应费用且连接固件烧录器后,根据需求客户端发送的固件获取请求处理对应的原始固件以生成受限固件,并将受限固件发送到相应的需求客户端的缓存区,以使需求客户端将受限固件传送至固件烧录器。
本发明实施例的第二方面提供了一种集成电路芯片的固件处理装置,所述固件处理装置配置于服务器中,所述固件处理装置包括:
原始固件存储模块,用于存储原始固件及对应的使用信息;
订单信息发送模块,用于接收各需求客户端发送的对原始固件的下单请求,根据对应的原始固件的使用信息生成订单信息,并将订单信息发送至相应的需求客户端;
受限固件发送模块,用于在需求客户端根据订单信息成功支付对应费用且连接固件烧录器后,根据需求客户端发送的固件获取请求处理对应的原始固件以生成受限固件,并将受限固件发送到相应的需求客户端的缓存区,以使需求客户端将受限固件传送至固件烧录器。
本发明实施例的第三方面提供了一种集成电路芯片的固件处理系统,所述固件处理系统包括:服务器、需求客户端、固件烧录器,所述服务器与所述需求客户端通信连接,所述需求客户端与所述固件烧录器通信连接;
所述服务器,用于存储原始固件及对应的使用信息;
所述需求客户端,用于向所述服务器发送对原始固件的下单请求;
所述服务器,还用于接收各需求客户端发送的对原始固件的下单请求,根据对应的原始固件的使用信息生成订单信息,并将订单信息发送至相应的需求客户端;
所述需求客户端,还用于根据订单信息支付对应费用至所述服务器,并连接固件烧录器,发送固件获取请求至所述服务器;
所述服务器,还用于在所述需求客户端根据订单信息成功支付对应费用且连接固件烧录器后,根据需求客户端发送的固件获取请求处理对应的原始固件以生成受限固件,并将受限固件发送到相应的需求客户端的缓存区,以使需求客户端将受限固件传送至固件烧录器;
所述需求客户端,还用于接收所述服务器发送的受限固件,并将受限固件传送至固件烧录器;
所述固件烧录器,用于接收所述需求客户端传送的受限固件。
本发明实施例的第四方面提供了一种集成电路芯片的固件处理设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述方法的步骤。
本发明实施例的第五方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面所述方法的步骤。
本发明实施例通过将烧录集成电路芯片所需要的不同固件集中存储在服务器上,服务器与需求客户端通信连接,需求客户端与固件烧录器通信连接,使得固件需求客户端能根据具体需求从服务器快速将烧录集成电路芯片所需求的固件加载到缓存区,并传送至固件烧录器,继而实现对集成电路芯片的高效烧录,相比现有的集成电路芯片的固件处理过程,很大程度上提升了固件的利用效率,同时,固件烧录器仅能从需求客户端的缓存区快速获取到烧录受限的固件用于烧录集成电路芯片,因此,能够很好地保证服务器上所存储的集成电路芯片固件被合法利用,有效保护固件版权。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种集成电路芯片的固件处理方法的实现流程示意图;
图2是本发明实施例提供的另一种集成电路芯片的固件处理方法的实现流程示意图;
图3是本发明实施例提供的另一种集成电路芯片的固件处理方法的实现流程示意图;
图4是本发明实施例提供的一种集成电路芯片的固件处理装置的示意图;
图5是本发明实施例提供的另一种集成电路芯片的固件处理装置的示意图;
图6是本发明实施例提供的另一种集成电路芯片的固件处理装置的示意图;
图7是本发明实施例提供的一种集成电路芯片的固件处理系统结构示意图;
图8是本发明实施例提供的另一种集成电路芯片的固件处理系统结构示意图;
图9是本发明实施例提供的集成电路芯片的固件处理设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
为了说明本发明的技术方案,下面通过具体实施例来进行说明。
如图1所示,为本发明实施例提供的一种集成电路芯片的固件处理方法的实现流程示意图。该固件处理方法适用于对集成电路芯片固件进行处理的情形,应用于服务器,服务器存储有原始固件及对应的使用信息,该固件处理方法包括步骤:S110至S120。
S110,接收各需求客户端发送的对原始固件的下单请求,根据对应的原始固件的使用信息生成订单信息,并将订单信息发送至相应的需求客户端。
其中,固件是指固化在集成电路内部的程序代码,负责控制和协调电子设备上所应用的集成电路芯片的功能,一般存储在集成电路芯片的存储器中。固件由对源程序编译而生成,其格式包括.otp、.trs、.flh、.bin等。原始固件是指未进行功能限定等防护处理,而可以直接用于集成电路芯片烧录从而使芯片具备具体功能的固件。
原始固件的使用信息可以包括固件单价,还可以包括固件库存、固件详情,还可以包括芯片供应商、芯片母体、母体型号等。固件单价可以是该固件用于烧录一片集成电路芯片的价格,还可以是该固件使用一个时间单位的价格,如使用一小时。固件库存可以是对该固件能够烧录的芯片的数量的限定值,该限定值为大于等于0的整数,固件库存还可以是对该固件能够用于烧录的时间的限定值,该限定值为大于等于0的数。固件详情是指对该固件所能实现功能的详细说明。
下单请求是指对原始固件指定了购买需求的请求。购买需求可以是购买次数,还可以是购买时间。例如,可以对原始固件指定购买次数,购买次数是指需要进行固件烧录的集成电路芯片的数量。例如,指定了购买次数为1次,则说明需要进行固件烧录的集成电路芯片为1片,若需要对N片集成电路芯片进行烧录,则需要对固件指定购买次数为N次,N为小于等于固件库存的正整数。也可以对原始固件指定购买时间,购买时间是指需要利用固件进行烧录的时间。例如,指定了购买时间为1小时,则说明需要利用该固件进行烧录的时间为1小时。
需求客户端是指需要获取芯片烧录所对应的固件的终端,可以为台式计算机、笔记本电脑或智能手机。固件需求者利用该终端获取芯片固件。
订单信息由服务器根据需求客户端发送的下单请求并结合对应的原始固件的使用信息而生成的请求需求客户端支付对应费用的信息。
本发明实施例中,服务器存储有不同的原始固件及对应的使用信息。各需求客户端可以根据实际待烧录芯片的数量购买对应的固件,发送对原始固件指定购买次数的下单请求至服务器,服务器根据对应的原始固件的使用信息,如固件单价,具体指固件用于烧录一片集成电路芯片的价格,生成订单信息,并将订单信息发送至相应的需求客户端以供其支付对应的费用至服务器。各需求客户端也可以根据实际需要利用固件进行烧录的时间购买对应的固件,发送对原始固件指定购买时间的下单请求至服务器,服务器根据对应的原始固件的使用信息,如固件单价,具体指固件使用一个时间单位的价格,生成订单信息,并将订单信息发送至相应的需求客户端以供其支付对应的费用至服务器。
S120,在需求客户端根据订单信息成功支付对应费用且连接固件烧录器后后,根据需求客户端发送的固件获取请求处理对应的原始固件以生成受限固件,并将受限固件发送到相应的需求客户端的缓存区,以使需求客户端将受限固件传送至固件烧录器。
其中,受限固件是指对原始固件设置了限制条件的固件。限制条件用于规定固件的可烧录次数或可烧录时间,由服务器根据需求客户端发送的下单请求中所指定的购买需求和固件获取请求而确定。
服务器根据需求客户端的下单请求确定对应的原始固件,并结合限制条件处理原始固件以生成相应的受限固件,并将受限固件发送到相应的需求客户端的缓存区,以使需求客户端将受限固件传送至固件烧录器。
具体地,需求客户端从服务器加载受限固件至缓存区,在需求客户端将受限固件传送至固件烧录器后,缓存区中的受限固件很快被擦除。固件烧录器获取到的受限固件仅能用于烧录芯片数量等于可烧录次数的集成电路芯片,或者可用于烧录芯片的时间不超过可烧录时间。
具体地,固件获取请求中包括请求服务器对原始固件配置可烧录次数或可烧录时间的信息,可以多次配置可烧录次数或可烧录时间,但多次配置的可烧录次数之和不超过购买次数,多次配置的可烧录时间之和不超过购买时间,也可以一次配置可烧录次数等于购买次数,或一次配置可烧录时间等于购买时间。
具体地,若需求客户端在下单请求中指定购买需求为100次,请求服务器对原始固件配置可烧录次数为100次,则服务器针对对应的原始固件设定可烧录次数为100次,即一次生成可烧录次数等于购买次数的受限固件,该受限固件只能烧录100片集成电路芯片;若需求客户端请求服务器对原始固件配置可烧录次数为20次,则服务器针对对应的原始固件设定可烧录次数为20次,即生成可烧录次数等于20次的受限固件用于烧录20片集成电路芯片,需求客户端可以多次请求服务器对原始固件配置可烧录次数,但多次请求配置的可烧录次数之和不可超过100次。若需求客户端在下单请求中指定了购买需求为24小时,请求服务器对原始固件配置可烧录时间为24小时,则服务器针对对应的原始固件设定可烧录时间为24小时,即一次生成可烧录时间等于购买时间的受限固件,该受限固件用于烧录的时间不能超过24小时。
本发明实施例通过将烧录集成电路芯片所需要的不同固件集中存储在服务器上,服务器与需求客户端通信连接,需求客户端与固件烧录器通信连接,使得固件需求客户端能根据具体需求从服务器快速将烧录集成电路芯片所需求的固件加载到缓存区,并传送至固件烧录器,继而实现对集成电路芯片的高效烧录,相比现有的集成电路芯片的固件处理过程,很大程度上提升了固件的利用效率,同时,固件烧录器仅能快速获取到烧录受限的固件用于烧录集成电路芯片,此外,需求客户端虽然加载了受限固件,但受限固件短时间内存储于缓存区,并在传送至固件烧录器后很快被擦除,与固件需求者通过邮件直接获得受限固件的方式相比,采用本发明实施例的方案,使用客户端的固件需求者无法直接获取并非法处理该受限固件,因此,能够很好地保证服务器上所存储的集成电路芯片固件被合法利用,从而有效保护了固件版权。
如图2所示,为本发明实施例提供的另一种集成电路芯片的固件处理方法的实现流程示意图。在该实施例中,服务器存储的原始固件及对应的使用信息由各开发客户端上传,该固件处理方法包括步骤:S210至S230。
S210,接收各开发客户端发送的原始固件及对应的使用信息。
开发客户端是指开发芯片烧录所对应的固件的终端,可以为台式计算机、笔记本电脑或智能手机。固件开发者利用该终端开发或发送芯片固件。
各开发客户端将开发好的不同的原始固件及对应的使用信息发送到服务器,服务器接收并存储这些不同的原始固件及对应的使用信息。
S220,接收各需求客户端发送的对原始固件的下单请求,根据对应的原始固件的使用信息生成订单信息,并将订单信息发送至相应的需求客户端。
S230,在需求客户端根据订单信息成功支付对应费用且连接固件烧录器后,根据需求客户端发送的固件获取请求处理对应的原始固件以生成受限固件,并将受限固件发送到相应的需求客户端的缓存区,以使需求客户端将受限固件传送至固件烧录器。
本发明实施例通过服务器与开发客户端、需求客户端通信连接,需求客户端与固件烧录器通信连接,使得需要付出大量开发成本的芯片固件拥有统一的上传和获取路径,即不同的开发客户端能够将开发好的用于烧录集成电路芯片所需要的不同固件上传至服务器,不同的需求客户端也能根据其具备需求从服务器快速将烧录集成电路芯片所需求的固件加载到缓存区,并传送至固件烧录器,继而实现对集成电路芯片的高效烧录,相比现有的集成电路芯片的固件处理过程,有效地避免了集成电路行业相同芯片固件的重复开发,还节约了集成电路行业的固件需求者获取烧录集成电路芯片所需求的固件的时间成本,很大程度上提升了固件的利用效率。同时,固件烧录器仅能快速获取到烧录受限的固件用于烧录集成电路芯片,此外,需求客户端虽然加载了受限固件,但受限固件短时间内存储于缓存区,并在传送至固件烧录器后很快被擦除,与固件需求者通过邮件直接获得受限固件的方式相比,采用本发明实施例的方案,使用客户端的固件需求者无法直接获取并非法处理该受限固件,因此,能够很好地保证服务器上所存储的集成电路芯片固件被合法利用,从而有效保护了固件版权。
上述实施例提供了集成电路芯片的固件处理方法,该方法中,服务器所接收并存储的是各开发客户端发送的原始固件及对应的使用信息,固件烧录器获取到的烧录受限的固件是直接用于烧录集成电路芯片而使芯片具备确定的具体功能。然而,当固件需求者需要利用具体功能与原始固件之间有较小差异的芯片固件时,便无法快速实现。此外,在现有技术中,开发者往往是将付出时间和精力编写好的通用函数打包为库文件或目标文件免费或有偿提供给他人使用以开发出所需求的固件,但他人获取到这些有价值的库文件或目标文件后能够无限次利用,这也就导致开发者所编写的通用函数的版权无法得到有效保护。
如图3所示,为本发明实施例提供的另一种集成电路芯片的固件处理方法的实现流程示意图。在该实施例中,服务器存储的原始固件由服务器编译生成,该固件处理方法包括步骤:S310至S350。
S310,接收各开发客户端发送的通用函数及对应的使用信息。
其中,通用函数是指可供在固件开发中进行调用的函数,可以是调用频率较高的函数,也可以是具备核心利用价值的函数。例如,常用的指纹识别函数、加密函数、滤波函数、特征提取函数等。开发客户端通过web浏览器发送通用函数到服务器,可以发送通用函数的源程序,也可以直接发送将通用函数的源程序进行打包后的库文件或目标文件。通用函数对应的使用信息可以包括函数单价,还可以包括函数详情。函数单价可以是该函数用于一次调用的价格,还可以是该函数被调用编译生成固件后用于烧录一片集成电路芯片的价格,还可以是该函数被调用编译生成固件后用于烧录一个时间单位的价格。函数详情是指对该函数的使用方法和该函数所能实现功能的详细说明。
S320,接收各需求客户端发送的待编译程序及对应的通用函数调用请求、待编译程序编译请求。
其中,待编译程序是指为开发芯片固件而编写的需要编译的程序。
通用函数调用请求是指调用通用函数以对待编译程序进行编译的请求。
待编译程序编译请求是指对待编译程序进行编译的请求。
固件需求者利用客户端web浏览器编写用于芯片固件开发的程序,形成待编译程序发送至服务器,固件需求者还利用客户端发送待编译程序对应的通用函数调用请求以及待编译程序编译请求至服务器。
S330,根据调用请求提供对应的通用函数给待编译程序调用,并根据相应的需求客户端发送的编译请求对待编译程序进行编译,从而生成原始固件。
服务器接收各需求客户端发送的待编译程序及对应的通用函数调用请求、待编译程序编译请求后,根据调用请求确定对应的通用函数供待编译程序调用,并根据需求客户端发送的编译请求编译待编译程序以生成原始固件。
需要注意的是,通用函数由开发客户端上传在服务器上,经服务器提供通用函数调用并编译生成的原始固件存储在服务器上,需求客户端向服务器发送编译请求后并没有获取到服务器上的通用函数,也没有获取到经服务器编译而生成的原始固件。
S340,接收各需求客户端发送的对原始固件的下单请求,根据对应的原始固件的使用信息生成订单信息,并将订单信息发送至相应的需求客户端。
当原始固件由服务器根据需求客户端请求调用通用函数对待编译程序进行编译而生成时,该原始固件的使用信息由编写该待编译程序的需求客户端发送至服务器。
S350,在需求客户端根据订单信息成功支付对应费用且连接固件烧录器后,根据需求客户端发送的固件获取请求处理对应的原始固件以生成受限固件,并将受限固件发送到相应的需求客户端的缓存区,以使需求客户端将受限固件传送至固件烧录器。
本发明实施例通过服务器与开发客户端、需求客户端通信连接,需求客户端与固件烧录器通信连接,使得需要付出时间和精力编写的通用函数拥有统一的上传和调用方式,即不同的开发客户端能够将编写好的具备使用价值的通用函数上传至服务器,不同的需求客户端也能根据其实际所需固件编写待编译程序,从服务器快速调用对应的通用函数,并请求服务器进行编译以生成其实际所需固件,继而相应的需求客户端可以通过向服务器发送下单请求,从而快速将其实际所需固件获取到固件烧录器中,实现对集成电路芯片的高效烧录。相比现有技术,本发明实施例所提供的基于云编译的固件处理方法,有效地避免了集成电路芯片固件开发所需使用的通用函数的重复编写,同时,很大程度上提升了固件的利用效率,有效保护固件的版权。
此外,由于通用函数存储在服务器上,相应的需求客户端只能向服务器请求调用通用函数以及请求服务器对待编译程序进行编译以生成其实际所需固件,而并没有获取到服务器上存储的通用函数,也没有获取到经服务器编译而生成的原始固件,其只能通过向服务器发送对原始固件的下单请求,从而将原始固件对应的受限固件获取到固件烧录器中。因此,本发明实施例所提供的基于云编译的固件处理方法,能够很好地解决了现有技术中开发者付出时间和精力所编写的有价值的通用函数被无限次利用的问题,有效保护了开发者所编写的通用函数的版权。
如图4所示,为本发明实施例提供的一种集成电路芯片的固件处理装置的示意图。该集成电路芯片的固件处理装置,配置于服务器中,该固件处理装置包括:原始固件存储模块410、订单信息发送模块420、受限固件发送模块430。
其中,原始固件存储模块410,用于存储原始固件及对应的使用信息;
订单信息发送模块420,用于接收各需求客户端发送的对原始固件的下单请求,根据对应的原始固件的使用信息生成订单信息,并将订单信息发送至相应的需求客户端;
受限固件发送模块430,用于在需求客户端根据订单信息成功支付对应费用且连接固件烧录器后,根据需求客户端发送的固件获取请求处理对应的原始固件以生成受限固件,并将受限固件发送到相应的需求客户端的缓存区,以使需求客户端将受限固件传送至固件烧录器。
如图5所示,为本发明实施例提供的另一种集成电路芯片的固件处理装置的示意图。该集成电路芯片的固件处理装置,配置于服务器中,该固件处理装置包括:原始固件接收模块510、原始固件存储模块520、订单信息发送模块530、受限固件发送模块540。
其中,原始固件接收模块510,用于接收各开发客户端发送的原始固件及对应的使用信息;
原始固件存储模块520,用于存储原始固件及对应的使用信息;
订单信息发送模块530,用于接收各需求客户端发送的对原始固件的下单请求,根据对应的原始固件的使用信息生成订单信息,并将订单信息发送至相应的需求客户端;
受限固件发送模块540,用于在需求客户端根据订单信息成功支付对应费用且连接固件烧录器后,根据需求客户端发送的固件获取请求处理对应的原始固件以生成受限固件,并将受限固件发送给相应的需求客户端的缓存区,以使需求客户端将受限固件传送至固件烧录器。
如图6所示,为本发明实施例提供的另一种集成电路芯片的固件处理装置的示意图。该集成电路芯片的固件处理装置,配置于服务器中,该固件处理装置包括:通用函数接收模块610、待编译程序接收模块620、原始固件生成模块630、原始固件存储模块640、订单信息发送模块650、受限固件发送模块660。
其中,通用函数接收模块610,用于接收各开发客户端发送的通用函数及对应的使用信息;
待编译程序接收模块620,用于接收各需求客户端发送的待编译程序及对应的通用函数调用请求、待编译程序编译请求;
原始固件生成模块630,用于根据调用请求提供对应的通用函数给待编译程序调用,并根据相应的需求客户端发送的编译请求对待编译程序进行编译,从而生成原始固件;
原始固件存储模块640,用于存储原始固件及对应的使用信息;
订单信息发送模块650,用于接收各需求客户端发送的对原始固件的下单请求,根据对应的原始固件的使用信息生成订单信息,并将订单信息发送至相应的需求客户端;
受限固件发送模块660,用于在需求客户端根据订单信息成功支付对应费用且连接固件烧录器后,根据需求客户端发送的固件获取请求处理对应的原始固件以生成受限固件,并将受限固件发送到相应的需求客户端的缓存区,以使需求客户端将受限固件传送至固件烧录器。
上述固件处理装置可执行本发明任意实施例所提供的固件处理方法,具备执行方法相应的功能模块和有益效果。未在本实施实施例中详尽描述的技术细节,可参见本发明任意实施例提供的固件处理方法。
如图7所示,为本发明实施例提供的一种集成电路芯片的固件处理系统的示意图。该固件处理系统包括:服务器710、需求客户端720、固件烧录器730,服务器710与需求客户端720通信连接,需求客户端720与固件烧录器730通信连接。
服务器710,用于存储原始固件及对应的使用信息;
需求客户端720,用于向服务器710发送对原始固件的下单请求;
服务器710,还用于接收各需求客户端720发送的对原始固件的下单请求,根据对应的原始固件的使用信息生成订单信息,并将订单信息发送至相应的需求客户端720;
需求客户端720,还用于根据订单信息支付对应费用至服务器710,并连接固件烧录器730,发送固件获取请求至服务器710;
服务器710,还用于在需求客户端720根据订单信息成功支付对应费用且连接固件烧录器730后,根据需求客户端720发送的固件获取请求处理对应的原始固件以生成受限固件,并将受限固件发送到相应的需求客户端720的缓存区,以使需求客户端720将受限固件传送至固件烧录器730;
需求客户端720,还用于接收服务器710发送的受限固件,并将受限固件传送至固件烧录器730;
固件烧录器730,用于与需求客户端720通信连接并接收需求客户端720传送的受限固件。
如图8所示,为本发明实施例提供的另一种集成电路芯片的固件处理系统的示意图。该固件处理系统包括:上述实施例中的服务器710、需求客户端720、固件烧录器730,以及开发客户端740,服务器710分别与开发客户端740、需求客户端720通信连接,需求客户端720与固件烧录器730通信连接。
开发客户端740,用于发送原始固件及对应的使用信息至服务器710;
服务器710,还用于接收各开发客户端740发送的原始固件及对应的使用信息。
未在本实施例中详尽描述的技术细节,可参见上述实施例提供的固件处理系统。
本发明实施例还提供另一种集成电路芯片的固件处理系统。该固件处理系统包括:上述实施例中的服务器710和需求客户端720、固件烧录器730,以及开发客户端740,服务器710分别与开发客户端740、需求客户端720通信连接,需求客户端720与固件烧录器730通信连接。
开发客户端740,用于发送通用函数及对应的使用信息至服务器710;
服务器710,用于接收各开发客户端740发送的通用函数及对应的使用信息;
需求客户端720,用于发送待编译程序及对应的通用函数调用请求、待编译程序编译请求至服务器710;
服务器710,还用于接收各需求客户端720发送的待编译程序及对应的通用函数调用请求、待编译程序编译请求;
服务器710,还用于根据调用请求提供对应的通用函数给待编译程序调用,并根据相应的需求客户端720发送的编译请求对待编译程序进行编译,从而生成原始固件。
未在本实施例中详尽描述的技术细节,可参见上述实施例提供的固件处理系统。
上述实施例通过将开发客户端、服务器以及需求客户端、固件烧录器组成固件处理系统,并通过系统中的开发客户端向服务器发送通用函数,通过系统中的需求客户端向服务器发送对待编译程序的通用函数调用请求及待编译程序编译请求,以使服务器编译待编译程序,从而快速生成需求客户端实际所需固件,很好地解决了现有技术中开发者付出时间和精力所编写的有价值的通用函数被无限次利用的问题,有效保护了开发者所编写的通用函数的版权,同时解决了固件需求者需要获取具体功能与原始固件之间有较小差异的芯片固件时而无法快速实现的问题。
图9是本发明一实施例提供的一种集成电路芯片的固件处理设备的示意图。如图9所示,该实施例的设备10包括:处理器100、存储器101以及存储在存储器101中并可在处理器100上运行的计算机程序102。处理器100执行计算机程序102时实现上述各个集成电路芯片的固件处理方法实施例中的步骤,例如图1所示的步骤S110至S120;又如图2所示的步骤S210至S240。或者,处理器100执行计算机程序102时实现上述各装置实施例中各模块/单元的功能,例如图4所示模块410至430的功能;又如图5所示模块510至540的功能。
示例性的,计算机程序102可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器101中,并由处理器100执行,以完成本发明。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序102在集成电路芯片的固件处理设备10中的执行过程。
例如,计算机程序102可以被分割成原始固件存储模块、订单信息发送模块和受限固件发送模块(虚拟装置中的模块),各模块具体功能如下:
原始固件存储模块,用于存储原始固件及对应的使用信息;
订单信息发送模块,用于接收各需求客户端发送的对原始固件的下单请求,根据对应的原始固件的使用信息生成订单信息,并将订单信息发送至相应的需求客户端;
受限固件发送模块,用于在需求客户端根据订单信息成功支付对应费用后,根据对应的原始固件生成受限固件,并将受限固件发送给相应的需求客户端。
又如,计算机程序102可以被分割成通用函数接收模块、待编译程序接收模块、原始固件生成模块、原始固件存储模块、订单信息发送模块和受限固件发送模块(虚拟装置中的模块),各模块具体功能如下:
通用函数接收模块,用于接收各开发客户端发送的通用函数及对应的使用信息;
待编译程序接收模块,用于接收各需求客户端发送的待编译程序及对应的通用函数调用请求、待编译程序编译请求;
原始固件生成模块,用于根据调用请求提供对应的通用函数给待编译程序调用,并根据相应的需求客户端发送的编译请求对待编译程序进行编译,从而生成原始固件。
其他相同模块功能不再赘述。
集成电路芯片的固件处理设备10可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。固件处理设备10可包括,但不仅限于,处理器100、存储器101。本领域技术人员可以理解,图9仅仅是固件处理设备10的示例,并不构成对固件处理设备10的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如固件处理设备10还可以包括输入输出设备、网络接入设备、总线等。
所称处理器100可以是CPU,还可以是其他通用处理器、DSP、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
存储器101可以是固件处理设备10的内部存储单元,例如固件处理设备10的硬盘或内存。存储器101也可以是固件处理设备10的外部存储设备,例如固件处理设备10上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,Flash卡等。进一步地,存储器101还可以既包括固件处理设备10的内部存储单元也包括外部存储设备。存储器101用于存储计算机程序以及固件处理设备10所需的其他程序和数据。存储器101还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,计算机程序包括计算机程序代码,计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

Claims (8)

1.一种集成电路芯片的固件处理方法,其特征在于,所述固件处理方法应用于服务器,所述服务器存储有原始固件及对应的使用信息,所述服务器存储的原始固件由服务器编译生成,所述固件处理方法包括:
接收各开发客户端发送的通用函数及对应的使用信息;
接收各需求客户端发送的待编译程序及对应的通用函数调用请求、待编译程序编译请求,其中,所述待编译程序是指为开发芯片固件而编写的需要编译的程序;
根据调用请求提供对应的通用函数给所述待编译程序调用,并根据相应的需求客户端发送的编译请求对所述待编译程序进行编译,从而生成原始固件;
接收各需求客户端发送的对原始固件的下单请求,根据对应的原始固件的使用信息生成订单信息,并将订单信息发送至相应的需求客户端;
在需求客户端根据订单信息成功支付对应费用且连接固件烧录器后,根据需求客户端发送的固件获取请求处理对应的原始固件以生成受限固件,并将受限固件发送到相应的需求客户端的缓存区,以使需求客户端将受限固件传送至固件烧录器,在将受限固件传送至固件烧录器后,所述缓存区中的受限固件被擦除。
2.如权利要求1所述的固件处理方法,其特征在于,所述服务器存储的原始固件及对应的使用信息由各开发客户端上传,所述固件处理方法还包括:
接收各开发客户端发送的原始固件及对应的使用信息。
3.一种集成电路芯片的固件处理装置,其特征在于,所述固件处理装置配置于服务器中,所述固件处理装置包括:
通用函数接收模块,用于接收各开发客户端发送的通用函数及对应的使用信息;
待编译程序接收模块,用于接收各需求客户端发送的待编译程序及对应的通用函数调用请求、待编译程序编译请求,其中,所述待编译程序是指为开发芯片固件而编写的需要编译的程序;
原始固件生成模块,用于根据调用请求提供对应的通用函数给所述待编译程序调用,并根据相应的需求客户端发送的编译请求对所述待编译程序进行编译,从而生成原始固件;
原始固件存储模块,用于存储原始固件及对应的使用信息;
订单信息发送模块,用于接收各需求客户端发送的对原始固件的下单请求,根据对应的原始固件的使用信息生成订单信息,并将订单信息发送至相应的需求客户端;
受限固件发送模块,用于在需求客户端根据订单信息成功支付对应费用且连接固件烧录器后,根据需求客户端发送的固件获取请求处理对应的原始固件以生成受限固件,并将受限固件发送到相应的需求客户端的缓存区,以使需求客户端将受限固件传送至固件烧录器,在将受限固件传送至固件烧录器后,所述缓存区中的受限固件被擦除。
4.如权利要求3所述的固件处理装置,其特征在于,所述固件处理装置还包括:
原始固件接收模块,用于接收各开发客户端发送的原始固件及对应的使用信息。
5.一种集成电路芯片的固件处理系统,其特征在于,所述固件处理系统包括:服务器、需求客户端、开发客户端、固件烧录器,所述服务器与所述需求客户端通信连接,所述服务器与开发客户端通信连接,所述需求客户端与所述固件烧录器通信连接;
所述开发客户端,用于发送通用函数及对应的使用信息至所述服务器;
所述服务器,用于存储原始固件及对应的使用信息;
所述服务器,还用于接收各开发客户端发送的通用函数及对应的使用信息;
所述需求客户端,用于发送待编译程序及对应的通用函数调用请求、待编译程序编译请求至所述服务器,其中,所述待编译程序是指为开发芯片固件而编写的需要编译的程序;
所述服务器,还用于接收各需求客户端发送的待编译程序及对应的通用函数调用请求、待编译程序编译请求;
所述服务器,还用于根据调用请求提供对应的通用函数给所述待编译程序调用,并根据相应的需求客户端发送的编译请求对所述待编译程序进行编译,从而生成原始固件;
所述需求客户端,还用于向所述服务器发送对原始固件的下单请求;
所述服务器,还用于接收各需求客户端发送的对原始固件的下单请求,根据对应的原始固件的使用信息生成订单信息,并将订单信息发送至相应的需求客户端;
所述需求客户端,还用于根据订单信息支付对应费用至所述服务器,并连接固件烧录器,发送固件获取请求至所述服务器;
所述服务器,还用于在所述需求客户端根据订单信息成功支付对应费用且连接固件烧录器后,根据需求客户端发送的固件获取请求处理对应的原始固件以生成受限固件,并将受限固件发送到相应的需求客户端的缓存区,以使需求客户端将受限固件传送至固件烧录器,在将受限固件传送至固件烧录器后,所述缓存区中的受限固件被擦除;
所述需求客户端,还用于接收所述服务器发送的受限固件,并将受限固件传送至固件烧录器;
所述固件烧录器,用于接收所述需求客户端传送的受限固件。
6.如权利要求5所述的固件处理系统,其特征在于,所述固件处理系统还包括:开发客户端,所述服务器与开发客户端通信连接;
所述开发客户端,用于发送原始固件及对应的使用信息至所述服务器;
所述服务器,还用于接收各开发客户端发送的原始固件及对应的使用信息。
7.一种集成电路芯片的固件处理设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至2任一项所述方法的步骤。
8.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至2任一项所述方法的步骤。
CN201910507675.8A 2019-06-12 2019-06-12 集成电路芯片的固件处理方法、装置、系统、设备及介质 Active CN110362965B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910507675.8A CN110362965B (zh) 2019-06-12 2019-06-12 集成电路芯片的固件处理方法、装置、系统、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910507675.8A CN110362965B (zh) 2019-06-12 2019-06-12 集成电路芯片的固件处理方法、装置、系统、设备及介质

Publications (2)

Publication Number Publication Date
CN110362965A CN110362965A (zh) 2019-10-22
CN110362965B true CN110362965B (zh) 2021-11-16

Family

ID=68215813

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910507675.8A Active CN110362965B (zh) 2019-06-12 2019-06-12 集成电路芯片的固件处理方法、装置、系统、设备及介质

Country Status (1)

Country Link
CN (1) CN110362965B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116248282A (zh) * 2022-12-02 2023-06-09 北京深盾科技股份有限公司 固件下载方法、电子设备、加密机及计算机可读存储介质
CN115544464A (zh) * 2022-12-06 2022-12-30 深圳市航顺芯片技术研发有限公司 针对微控制芯片的固件烧录方法、装置、系统及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102693144A (zh) * 2012-05-25 2012-09-26 惠州Tcl移动通信有限公司 一种Android移动终端的电容屏固件升级的方法
CN104679556A (zh) * 2015-02-06 2015-06-03 深圳市硅格半导体有限公司 应用程序烧录方法及系统
CN107729723A (zh) * 2017-11-08 2018-02-23 深圳市希顿科技有限公司 一种集成电路程序烧录方法及烧录系统
CN207704435U (zh) * 2017-11-08 2018-08-07 深圳市希顿科技有限公司 一种集成电路程序烧录系统
CN109165029A (zh) * 2018-08-27 2019-01-08 北京奇虎科技有限公司 实现下载运行付费应用的方法、服务器和装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI220225B (en) * 2003-01-03 2004-08-11 Mediatek Inc Control chip for optical disk drive and method for updating the firmware in the control chip
KR101215350B1 (ko) * 2005-09-14 2012-12-26 엘지전자 주식회사 케이블 방송 수신기 및 펌웨어 업그레이드 방법
CN101778378B (zh) * 2009-01-14 2013-03-13 英华达(上海)电子有限公司 一种固件节点更新方法、装置和系统
CN104090790B (zh) * 2014-06-30 2017-05-17 飞天诚信科技股份有限公司 一种安全终端的双芯片方案的固件更新方法
CN104166565B (zh) * 2014-08-11 2017-10-17 成都瑞博慧窗信息技术有限公司 一种智能显示终端固件升级方法
CN106020905B (zh) * 2016-05-31 2021-01-26 阿里云计算有限公司 一种微控制器固件开发与更新的方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102693144A (zh) * 2012-05-25 2012-09-26 惠州Tcl移动通信有限公司 一种Android移动终端的电容屏固件升级的方法
CN104679556A (zh) * 2015-02-06 2015-06-03 深圳市硅格半导体有限公司 应用程序烧录方法及系统
CN107729723A (zh) * 2017-11-08 2018-02-23 深圳市希顿科技有限公司 一种集成电路程序烧录方法及烧录系统
CN207704435U (zh) * 2017-11-08 2018-08-07 深圳市希顿科技有限公司 一种集成电路程序烧录系统
CN109165029A (zh) * 2018-08-27 2019-01-08 北京奇虎科技有限公司 实现下载运行付费应用的方法、服务器和装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
全自动烧录系统的研究与开发;徐新悦;《中国优秀硕士学位论文全文数据库 信息科技辑》;20190515(第05期);第I138-809页 *

Also Published As

Publication number Publication date
CN110362965A (zh) 2019-10-22

Similar Documents

Publication Publication Date Title
CN108776941B (zh) 数字作品版权管理方法、系统及区块链节点设备
WO2020001112A1 (zh) 一种支持多类型设备的平台的应用方法、移动终端
CN110362965B (zh) 集成电路芯片的固件处理方法、装置、系统、设备及介质
CN108563575B (zh) 应用程序测试方法、装置、终端及计算机可读存储介质
CN101627364A (zh) 用于标识随遵循设备分发的硬件和软件许可证的数据结构
CN110046477B (zh) 工业应用软件验证授权方法、系统、介质、客户/服务端
CN109391694B (zh) 基于sftp的文件传输方法及相关设备
CN111767056A (zh) 一种源码编译方法、可执行文件运行方法及终端设备
US20150154575A1 (en) Methods for Storage and Delivery of 3D Printing Digital File
CN108628712B (zh) 一种应用程序测试方法及终端设备
KR101276559B1 (ko) 더미 블록에 의한 타임아웃 방지를 사용하는 휴대용 모듈 인터페이스
CN108876339B (zh) 基于通证的电子宠物交易方法及装置
CN108259895A (zh) 机顶盒测试方法、系统及终端设备
CN110569038A (zh) 随机验证参数设计方法、装置、计算机设备及存储介质
CN107885674B (zh) 蓝牙设备模拟器及其工作方法、蓝牙设备作业系统
CN110489151A (zh) 一种终端升级方法及系统
CN111831549B (zh) 增量代码覆盖率确定方法、装置、设备及存储介质
CN110506257A (zh) 在云服务代理系统中创建和分配集成连接器的技术
CN108536455B (zh) 芯片控制方法及终端设备
CN104301297A (zh) 生成指示命令的分组和/或发出该命令的部分执行结果
CN111369282B (zh) 一种资源处理方法以及装置
CN111190750A (zh) 一种数据处理方法以及系统
CN112953996B (zh) 服务方法及其系统
CN108664293B (zh) 安卓系统中的应用控制方法和装置
CN114911509A (zh) 一种补丁包的配置方法、设备及存储介质

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