Firmware loading method and device based on dual-chip cooperation
Through dual-chip collaborative design and intelligent recommendation algorithm, the firmware loading device achieves zero-wait startup and flexible upgrade, solving the balance problem between fast startup and flexible upgrade in traditional firmware loading technology and improving the overall performance of the device.
Patent Information
- Application Number
- CN202511213195.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-08-28
- Publication Date
- 2025-11-18
- Estimated Expiration
- 2045-08-28
AI Technical Summary
Existing firmware loading technologies struggle to balance rapid startup and flexible upgrades. Traditional online loading methods are time-consuming, offline pre-installed firmware lacks dynamic update capabilities, and physical DIP switches are inconvenient to operate and have poor reliability.
It adopts a dual-chip collaborative design, including a main control chip and at least two cache chips. The firmware loading is achieved through a path selection module without physical switching. Combined with an offline storage module and intelligent recommendation algorithm, it supports pre-burning and storing firmware, enabling zero-wait boot and dynamic updates.
It improves the usability and overall performance of the firmware loading device, enabling zero-wait startup, flexible upgrades and dynamic updates, and enhancing the user experience.
Smart Images

Figure CN120704717B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the field of software-defined radio, and in particular to a firmware loading method and device based on dual-chip cooperation. BACKGROUND
[0002] In modern electronic devices, the efficiency and flexibility of firmware loading are crucial. Traditional firmware loading schemes have significant drawbacks: first, the single online loading mode relies on the real-time transmission of firmware by the host computer, and the device needs to wait for the burning to complete during startup, usually taking more than 30 seconds, resulting in poor user experience; second, although some devices use the offline pre-installed firmware method to achieve fast startup, they lack dynamic update capability and cannot adapt to diverse application scenarios or customer demand changes; third, in existing technologies, the switching of firmware loading modes often relies on physical dial switches, which need to be disassembled for operation, making them inconvenient and prone to reliability issues such as poor contact. These technical bottlenecks make it difficult for devices to balance between "fast startup" and "flexible upgrade", severely limiting their application in fields such as software-defined radio (SDR) and artificial intelligence video processing, which require high response speed and adaptability of firmware. SUMMARY
[0003] The present application provides a firmware loading method and device based on dual-chip cooperation, which combines firmware loading efficiency and flexibility, and is beneficial to improve the overall performance of modern electronic devices.
[0004] In a first aspect, the present application provides a firmware loading device based on dual-chip cooperation. The device includes a master control chip, at least two cache chips, a communication path configured between the cache chips and the master control chip, and a path gating module for gating the communication path.
[0005] The cache chip is used for burning and storing firmware, which is loaded by the master control chip to define the function of the device.
[0006] The master control chip is also used to connect to the host computer to control the path gating module in response to the control instructions of the host computer, thereby gating the communication path, and to burn firmware into the cache chip in response to the operation instructions of the host computer.
[0007] By adopting the technical solutions, the path gating module and the design of the at least two cache chips enable the firmware loading device to support the coexistence of the pre-burned and stored firmware and the empty cache chip without loaded firmware, the path gating module supports the firmware loading device to implement the non-physical switch firmware loading mechanism, the pre-burned and stored firmware cache chip supports the firmware loading device to implement the zero-wait startup, and the design of the empty cache chip and the at least two cache chips supports the dynamic updating capability and flexible upgrading of the firmware loading device, thereby making the firmware loading device have high availability and effectively improving the comprehensive performance.
[0008] Further, the firmware loading device further comprises an offline storage module.
[0009] The offline storage module is connected to the master control chip, and is configured to store the gating state of the connected path when power is off. When power is restored, the master control chip reads the gating state of the offline storage module and controls the path gating module to control the gating path to be restored to the state when power is off.
[0010] In a second aspect, the application provides a firmware loading method based on double-chip cooperation. The firmware loading method is applied to the firmware loading device as described in any one of the above first aspect, and the firmware loading method comprises the following steps.
[0011] Obtaining chip attribute information and storage state information of each cache chip, wherein the chip attribute information comprises a plurality of chip attribute identifiers, and the storage state information reflects whether the cache chip stores firmware or the firmware identifier of the stored firmware.
[0012] Obtaining application environment information, a loadable firmware library, and a firmware loading record, wherein the application environment information reflects the application environment of the firmware loading device and comprises a plurality of application environment tags, the loadable firmware library comprises the firmware identifier of all loadable firmware, a plurality of firmware description tags carried by each firmware, and the chip attribute information of the cache chip to which each firmware identifier can be loaded, and the firmware loading record comprises the firmware identifier of the historical loading firmware carrying the historical application environment and the historical loading time and the historical chip attribute of the cache chip to which the historical loading firmware is loaded.
[0013] For all cache chips without stored firmware, a firmware recommendation list is determined in the loadable firmware library by combining and analyzing the chip attribute information, the application environment information, and the firmware loading record, the firmware recommendation list comprises recommended loading firmware and the cache chip without stored firmware to which the recommended loading firmware is recommended to be loaded, and the total number of the recommended loading firmware is less than the total number of the cache chips without stored firmware.
[0014] By adopting the technical scheme, the ability of dynamic sensing and predictive loading is realized by analyzing and determining the recommended loading firmware for the empty cache chip in combination with the storage device and chip attribute of the cache chip in the firmware loading device, the application environment of the firmware loading device, the loadable firmware library of the host computer and the firmware loading record of the similar firmware loading device, and the comprehensive performance of the firmware loading device is further improved.
[0015] Further, the cache chip facing all the non-stored firmware determines the firmware recommendation list in the loadable firmware library in combination with the analysis of the chip attribute information, the application environment information and the firmware loading record, including:
[0016] Based on the application environment information and the chip attribute information, the loading recommendation degree data of each loadable firmware is determined for each non-loaded firmware cache chip according to the firmware loading record in the loadable firmware library;
[0017] For each non-loaded firmware cache chip, the loadable firmware with the loading recommendation degree data higher than the first recommendation degree threshold is determined as the adaptive firmware of the corresponding cache chip;
[0018] According to the analysis and determination of the firmware of the adaptive firmware and the stored firmware in the cache chip, the recommended loading firmware in the firmware recommendation list is not the same as the firmware in any stored firmware cache chip, the firmware similarity between any two recommended loading firmwares is not less than the firmware similarity threshold, and the sum of the loading recommendation degree data of all the recommended loading firmwares facing the corresponding cache chip is maximum.
[0019] Further, the loading recommendation degree data of each loadable firmware is determined for each non-loaded firmware cache chip according to the firmware loading record in the loadable firmware library based on the application environment information and the chip attribute information, including:
[0020] The first type of loading record and the second type of loading record are filtered in the firmware loading record based on the application environment information and the chip attribute information, the historical application environment in the first type of loading record is the same as the application environment information and the historical chip attribute is the same as the chip attribute information, and the environment similarity between the historical application environment in the second type of loading record and the application environment information is higher than the environment similarity threshold and the chip similarity between the historical chip attribute information and the chip attribute information is higher than the chip similarity threshold;
[0021] The first loading proportion of each loadable firmware is determined based on the first type of loading record, and the first loading proportion is associated with the ratio of the loading frequency of the loadable firmware in the first type of loading record to the total number of the first type of loading record;
[0022] determining a second loading proportion of each loadable firmware based on the second type of loading record analysis, the second loading proportion being associated with a ratio of a loading frequency of the loadable firmware in the second type of loading record to a total number of the second type of loading record;
[0023] determining a loading recommendation degree by combining the first loading proportion and the second loading proportion, the loading recommendation degree being positively correlated with the first loading proportion and the second loading proportion.
[0024] Further, the first loading proportion is also associated with a change trend of the loading frequency of the loadable firmware determined based on the time sequence analysis of the first type of loading record;
[0025] The second loading proportion is also associated with a change trend of the loading frequency of the loadable firmware determined based on the time sequence analysis of the second type of loading record.
[0026] Further, the determining of the loading recommendation degree by combining the first loading proportion and the second loading proportion, the loading recommendation degree being positively correlated with the first loading proportion and the second loading proportion, comprises:
[0027] determining a loading recommendation degree range based on the first loading proportion, the upper limit and the lower limit of the loading recommendation degree range being positively correlated with the first loading proportion;
[0028] determining the loading recommendation degree in the loading recommendation degree range according to the second loading proportion, the loading recommendation degree being positively correlated with the second loading proportion.
[0029] Further, the determining of the loading recommendation degree by combining the first loading proportion and the second loading proportion, the loading recommendation degree being positively correlated with the first loading proportion and the second loading proportion, comprises:
[0030] determining a basic loading recommendation degree based on the first loading proportion, determining a recommendation degree influence coefficient according to a result of subtracting the first loading proportion from the second loading proportion, and taking a product of the basic loading recommendation degree and the recommendation degree influence coefficient as the loading recommendation degree, the loading recommendation degree being positively correlated with the basic loading recommendation degree and the recommendation degree influence coefficient.
[0031] Further, the determining of the firmware recommendation list based on the firmware in the cache chip of the adaptive firmware and the stored firmware comprises:
[0032] for each cache chip of the unloading firmware, screening all loadable firmwares with a loading recommendation degree higher than a loading recommendation degree threshold and not the same as the firmware in the cache chip of any stored firmware as the optional firmware of the cache chip;
[0033] grouping all the optional firmwares into an optional firmware set, the optional firmware set containing all the optional firmwares of each cache chip of the unloading firmware;
[0034] The recommendation method is repeatedly performed on the optional firmware set until the optional firmware set is empty or the number of the cache chips of the unloaded firmware not added to the firmware recommendation list is less than a preset number;
[0035] The recommendation method comprises: adding an optional firmware with the highest recommendation degree data in the optional firmware set to the firmware recommendation list and storing the chip identification of the cache chip of the corresponding unloaded firmware, and removing, from the optional firmware set, all other optional firmwares of the optional firmware and all other optional firmwares of the cache chips of other unloaded firmwares of the optional firmware, and the part of the optional firmware with the firmware similarity lower than the firmware similarity threshold.
[0036] In summary, the present application at least has the following beneficial effects:
[0037] 1. A firmware loading method and device based on double-chip cooperation are provided, which are configured with multiple cache chips and gating paths at the hardware level, and can effectively improve the usability and comprehensive performance of the firmware loading device.
[0038] 2. The design of the offline storage module can further improve the startup performance of the firmware loading device.
[0039] 3. The algorithm design of specifically determining the recommended firmware can guarantee the optimal recommendation, the richness of the recommended content, and the reservation of a certain number of empty cache chips to support online burning, thereby further improving the performance of the firmware loading device.
[0040] It should be understood that the content described in the summary section is not intended to limit the key or important features of the embodiments of the present application, nor to limit the scope of the present application. Other features of the present application will become apparent through the following description. BRIEF DESCRIPTION OF DRAWINGS
[0041] The above and other features, advantages, and aspects of the embodiments of the present application will become more apparent upon consideration of the following detailed description, taken in conjunction with the accompanying drawings. In the drawings, like reference numerals refer to like elements, and wherein:
[0042] Figure 1 A schematic diagram of a firmware loading device based on double-chip cooperation in an embodiment of the present application is shown;
[0043] Figure 2 A flowchart of a firmware loading method based on double-chip cooperation in an embodiment of the present application is shown. DETAILED DESCRIPTION
[0044] In order to make the purposes, technical solutions and advantages of the embodiments of the present application clearer, the technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are some but not all of the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by a person of ordinary skill in the art without creative work fall within the protection scope of the present application.
[0045] In addition, the term "and / or" in the present application is only used to describe an association relationship of associated objects, which means that there can be three relationships, for example, A and / or B can mean that A exists alone, A and B exist together, and B exists alone. In addition, the character " / " in the present application generally represents an "or" relationship between the front and rear associated objects.
[0046] The present application provides a firmware loading method and device based on double-chip cooperation, which can realize different configurations of multiple cache chips based on multiple optional paths to the control chip and the path gating module for controlling the gating, so as to improve the flexibility and availability of the firmware loading device.
[0047] In a first aspect, the embodiments of the present application disclose a firmware loading device based on double-chip cooperation.
[0048] Figure 1 A schematic diagram of a firmware loading device based on double-chip cooperation in the embodiments of the present application is shown.
[0049] Referring to Figure 1 The device specifically includes a master control chip, at least two cache chips, a communication path configured between the cache chips and the master control chip, and a path gating module for gating the communication path; wherein the cache chip is used for burning and storing firmware for the master control chip to load and define device functions with the firmware; the master control chip is also used for connecting a host computer to control the path gating module in response to a control instruction of the host computer, and then to gate the communication path, and is also used for burning firmware into the cache chip in response to an operation instruction of the host computer.
[0050] Specifically, the firmware loading device is generally a software-defined radio (SDR) board card, the master control chip is an FPGA chip, and the cache chip is a Flash chip. The master control chip calls the firmware pre-burned and stored in the cache chip to realize the definition of the function of the board card.
[0051] Each cache chip is connected to the master chip through a communication path. When the communication path is turned on, the master chip can communicate with the cache chip, for example, to burn firmware into the cache chip or read the firmware stored in the cache chip. The selection of the communication path is controlled by a path selection module. Specifically, a structure similar to a "controlled switch" can be configured on each communication path. The path selection module controls each "controlled switch" to achieve the selection control of the communication path. Alternatively, other structures such as a bus structure or a switch array structure can be configured, as long as they can achieve the selection control of the communication path.
[0052] In actual use of the board card, the master chip is communicatively connected to the host computer. The host computer can burn firmware into the cache chip through the master chip. The burned firmware can be solidified in the cache chip and will not be lost due to power failure of the firmware loading device.
[0053] The firmware loading device can further include an offline storage module connected to the master chip. The offline storage module is used to store the selection state of the communication path at the time of power failure. When power is restored, the master chip reads the selection state of the offline storage module and controls the path selection module to control the selection path to be restored to the state before the last power failure. The offline storage module is used to store the selection state of each communication path of the firmware loading device at the time of power failure. When the firmware storage device is powered on, the master chip retrieves the storage content stored in the offline storage module and automatically restores the state of each communication path of the firmware storage device to the state before the last power failure based on the storage content, thereby further improving the startup speed of the board card.
[0054] Based on the foregoing, the firmware loading device can achieve the following functions: supporting the pre-burning and storage of firmware in the cache chip, thereby being able to balance the zero-wait startup and the online burning and upgrading of firmware; different cache chips can be configured with different versions of the same firmware or different types of firmware, thereby being able to achieve flexible upgrading and flexible switching of the definition of the function of the board card; the offline state memory function can further improve the startup performance of the firmware loading device; the path selection module in the form of a non-physical switch and controllable by the host computer through the master chip enables the firmware loading device to more conveniently and flexibly control the selection path.
[0055] Based on the structural advantages of the firmware loading device, it can also use intelligent sensing and control means to load firmware. The specific method of loading firmware is described in the disclosure of the second aspect of the present application.
[0056] In the second aspect, the present application discloses a firmware loading method based on the cooperation of dual chips. The method can be executed by the master chip or the host computer in Figure 1
[0057] Figure 2 A flow chart of a firmware loading method based on dual-chip cooperation in an embodiment of the present application is shown.
[0058] With reference to Figure 2 The method specifically includes the following steps:
[0059] S210: Obtain chip attribute information and storage state information of each cache chip, wherein the chip attribute information includes a plurality of chip attribute identifiers.
[0060] The storage state information reflects whether the cache chip stores firmware or the firmware identifier of the stored firmware.
[0061] The chip attribute information of the cache chip is fixed information, and the chip attribute information of each cache chip is fixed when the firmware loading device is determined. The chip attribute information is pre-stored in the master control chip or the upper computer and can be obtained by calling.
[0062] The storage state information reflects the storage state of each cache chip, including two states of having stored firmware and not having stored firmware. The storage state information of the cache chip having stored firmware further includes the firmware identifier of the stored firmware. The firmware identifier is the unique identifier of each firmware, and different firmwares can be distinguished based thereon.
[0063] S220: Obtain application environment information, a loadable firmware library, and firmware loading records.
[0064] The application environment information reflects the application environment of the firmware loading device and includes a plurality of application environment tags. The application environment tag can be specifically represented as the connection state of the external port of the firmware loading device and / or the data condition of the accessed data. The application environment tag can be determined based on a pre-configured environment analysis rule according to the connection state of the external port and by analyzing the data characteristics (such as data type, data tag, data change condition, etc.) of the accessed data. The environment analysis rule can include a data analysis rule for extracting data characteristics and a tag analysis rule for determining the application environment tag based on the data characteristics and the connection state of the external port. The data analysis rule can be configured based on the specific data characteristics, which is not disclosed here. The tag analysis rule can be a mapping logic or a comparison table, or configured as other analysis logic, as long as it can determine the application environment tag based on the data characteristics and the connection state of the external port.
[0065] The loadable firmware library includes firmware identifiers of all loadable firmware, a plurality of firmware description tags carried by each firmware, and chip attribute information of cache chips to which each firmware identifier can be loaded. Different firmware, different cache chips, and different adaptation of different firmware to different cache chips are different. The loadable firmware library contains all possible loadable firmware. The plurality of firmware description tags of the loadable firmware reflect the attributes of the loadable firmware. The chip attribute information of the cache chips to which the firmware identifier can be loaded reflects the attribute information of the cache chips.
[0066] The firmware loading record includes a firmware identifier of a historical loading firmware carrying a historical application environment and a historical loading time, and historical chip attributes loaded to a cache chip. The firmware loading record contains a record of loading firmware to a cache chip in a past firmware loading device (or a same type of firmware loading device) and a historical application environment of the firmware loading device at that time. The historical application environment and the application environment information are the same type of information and are represented by a plurality of application environment tags. The firmware identifier corresponds to a specific type of firmware and corresponds to a plurality of firmware description tags that can be called to describe the firmware corresponding to the firmware identifier. The historical chip attribute and the chip attribute information are the same type of information and represent the chip attribute information of the cache chip in the historical application. The historical loading time includes a time (start time) when the firmware is loaded and burned to the cache chip and a time (end time) when the firmware is cleared or overwritten. Of course, only the duration between the start time and the end time that is not less than a unit duration can be recorded. The start time can be used as a reference, or the end time can be used as a reference. As long as the references of all firmware loading records are consistent, it is acceptable.
[0067] S230: For all cache chips without stored firmware, determine a firmware recommendation list in the loadable firmware library by combining and analyzing the chip attribute information, the application environment information, and the firmware loading record. The firmware recommendation list contains recommended loading firmware and cache chips without stored firmware to which the recommended loading firmware is recommended to be loaded. The total number of the recommended loading firmware is less than the total number of the cache chips without stored firmware.
[0068] The method of this step specifically includes: based on the application environment information and the chip attribute information, determining, for each cache chip without loaded firmware, a loading recommendation degree data of each loadable firmware in the loadable firmware library according to the firmware loading record; for each cache chip without loaded firmware, determining a loadable firmware with a loading recommendation degree data higher than a first recommendation degree threshold value as an adaptation firmware of the corresponding cache chip; and determining the firmware recommendation list according to the adaptation firmware and the analysis of the firmware in the cache chips with stored firmware. The recommended loading firmware in the firmware recommendation list is not the same as the firmware in any cache chip with stored firmware. The firmware similarity between any two recommended loading firmware is not less than a firmware similarity threshold value. And the sum of the loading recommendation degree data of all recommended loading firmware facing the corresponding cache chip is maximum.
[0069] In the method of the present step, the determining, based on the application environment information and the chip attribute information, of the loading recommendation degree data of each loadable firmware for each cache chip without loaded firmware according to the firmware loading record in the loadable firmware library comprises: screening first type loading records and second type loading records in the firmware loading record based on the application environment information and the chip attribute information, the historical application environment in the first type loading record being the same as the application environment information and the historical chip attribute being the same as the chip attribute information, the environmental similarity of the historical application environment in the second type loading record being higher than an environmental similarity threshold and the chip similarity of the historical chip attribute information being higher than a chip similarity threshold; determining a first loading proportion of each loadable firmware based on the first type loading record analysis, the first loading proportion being associated with a ratio of the loading frequency of the loadable firmware in the first type loading record to the total number of the first type loading records; determining a second loading proportion of each loadable firmware based on the second type loading record analysis, the second loading proportion being associated with a ratio of the loading frequency of the loadable firmware in the second type loading record to the total number of the second type loading records; and determining the loading recommendation degree by combining the first loading proportion and the second loading proportion, the loading recommendation degree being positively correlated with the first loading proportion and the second loading proportion.
[0070] Further, the first loading proportion is further associated with a change trend of the loading frequency of the loadable firmware determined based on the time sequence analysis of the first type loading record; and the second loading proportion is further associated with a change trend of the loading frequency of the loadable firmware determined based on the time sequence analysis of the second type loading record.
[0071] In one example, the determining, based on the first loading proportion and the second loading proportion, of the loading recommendation degree positively correlated with the first loading proportion and the second loading proportion comprises: determining a loading recommendation degree range based on the first loading proportion, the upper limit and the lower limit of the range of the loading recommendation degree range being positively correlated with the first loading proportion; and determining the loading recommendation degree in the loading recommendation degree range according to the second loading proportion, the loading recommendation degree being positively correlated with the second loading proportion.
[0072] In another example, the determining, based on the first loading proportion and the second loading proportion, of the loading recommendation degree positively correlated with the first loading proportion and the second loading proportion comprises: determining a basic loading recommendation degree based on the first loading proportion; determining a recommendation degree influence coefficient according to a result of subtracting the first loading proportion from the second loading proportion; and taking a product of the basic loading recommendation degree and the recommendation degree influence coefficient as the loading recommendation degree, the loading recommendation degree being positively correlated with the basic loading recommendation degree and the recommendation degree influence coefficient.
[0073] In the method of the present step, the determining of the firmware recommendation list according to the analysis of the firmware in the adaptive firmware and the cached firmware includes: for each cached firmware that is not loaded, screening all loadable firmware with a loading recommendation degree higher than a loading recommendation degree threshold and different from the firmware in any cached firmware that is stored as optional firmware of the cached firmware; forming an optional firmware set by combining all the optional firmware in the optional firmware set; repeatedly executing the recommendation method for the optional firmware set until the optional firmware set is empty or the number of the cached firmware that is not loaded and not added to the firmware recommendation list is less than a preset number; the recommendation method includes: adding the optional firmware with the highest loading recommendation degree in the optional firmware set to the firmware recommendation list and storing the chip identifier of the corresponding cached firmware that is not loaded, and removing from the optional firmware set the optional firmware, all other optional firmware of the cached firmware that is not loaded and corresponds to the optional firmware, and all optional firmware of other cached firmware that is not loaded and corresponding to the optional firmware with a firmware similarity lower than a firmware similarity threshold to the optional firmware, to obtain an updated optional firmware set.
[0074] To solve the problem of no historical loading record to calculate the loading proportion in new devices or new application scenarios, a virtual historical record generation mechanism can be introduced. Specifically, the application environment information is first decomposed into an n-dimensional feature vector The feature dimensions of the vector include temperature, signal bandwidth, communication protocol, data type, and other quantifiable indicators that can be obtained from application environment labels. Numerical features are normalized (val is the actual value of the feature, and the feature range of the firmware adaptation in the loadable firmware library), and categorical features are assigned values according to firmware adaptation requirements (e.g., 0.2 for 4G protocol, 0.4 for 5G protocol, and 0.6 for radio frequency protocol). At the same time, the chip attribute information is decomposed into a feature vector with dimensions including storage capacity, read-write speed, and upper limit of operating temperature, which are also processed according to the normalization method described above. The historical environment vector and the historical chip vector are extracted from the desensitization mapping relationship of "environment-chip-firmware" of the same type of device. The environment similarity is calculated by the cosine similarity formula and the chip similarity is calculated by The historical records that satisfy and are selected as virtual first-class loading records, and the historical records that satisfy and The history record of the similarity threshold set for the foregoing is taken as a virtual second type loading record, and the 'environment-chip-firmware' desensitization mapping relationship of the same type device is pre-stored in the loadable firmware library by the firmware manufacturer or is synchronously obtained through the host chip connection host computer (desensitization processing ensures no device privacy data).
[0075] In calculating the virtual loading proportion, a dynamic weight based on the sample amount k of the same type device needs to be introduced When , When , When , . For the virtual second type loading record, it also needs to be weighted and corrected according to the average similarity with the current device, and the average similarity is the environment and chip similarity of a single virtual second type record, and the corrected virtual second loading frequency is the original virtual second loading frequency, is the virtual second type record set of loading firmware F, and the number of sets is ). The fusion of virtual records and real records (when the new device has no real record initially, the real frequency is 0 The loading proportion calculation formula is: , wherein is the firmware F frequency and total frequency of the real first type record, is the firmware F frequency and total frequency of the virtual first type record, is the firmware F frequency and total frequency of the real second type record.
[0076] When the device generates a real loading record, a virtual-real feedback closed loop needs to be constructed to calculate the real loading proportion is the frequency of firmware F in the real record, is the total frequency of the real record) and the deviation of the virtual loading proportion ( is the loading proportion fused with virtual records). If , the feature deviation of each history record of the same type device and the real record is calculated (the environment and chip similarity of the real record are both 1.0), and the first samples with the smallest feature deviation are retained to update the desensitization mapping relationship; if the first 3 real records all satisfy , the virtual weight is lowered to . If the lowered , the firmware function matching degree is introduced (Firmware description tags and device core functions are aligned; for example, RF processing firmware is assigned a value of 0.9, and other types are assigned a value of 0.3.) The virtual loading ratio is adjusted using the following formula: The firmware function matching degree The assigned value is based on the functional classification tags of the firmware in the loadable firmware library. Core functional firmware such as 'RF processing' and 'signal acquisition' are assigned a value of 0.8-1.0, while auxiliary functional firmware such as 'data backup' and 'log recording' are assigned a value of 0.3-0.7. The specific value is determined by the manufacturer based on the compatibility test between the firmware and the core functions of the device.
[0077] When the device accumulates 30 real records, the virtual record decay mechanism is activated, and the virtual weight is adjusted accordingly. Exponential decay ( (where t is the cumulative number of actual records, and the weight is the weight before decay). hour, When the value approaches 0 and is automatically set to 0, the loading percentage calculation completely reverts to the logic described above. The improved first loading percentage mentioned above. Second loading percentage This can be directly substituted into the aforementioned content recommendation calculation logic. If a recommendation range interpolation method is used, then... , , If the basic recommendation level is used The influence coefficient method, then , , ,in All of these are consistent with the aforementioned settings.
[0078] When a new device is powered on, an initial recommendation (if any) is generated first through the scene template of the offline storage module, and the dual-chip detection is started simultaneously to generate virtual records. After real records are generated, the virtual weight and template are optimized through a virtual-real feedback closed loop. When the number of real records reaches 50, the virtual records are completely decayed, and the loading ratio is calculated only based on the real records, realizing the full-process adaptation of 'cold start → transition → stable operation'.
[0079] In summary, this firmware loading method can analyze and determine the strategy for loading firmware onto idle cache chips in the firmware loading device based on perceived environment and data experience, thereby enabling intelligent firmware loading by the firmware loading device. This further saves firmware loading time, achieves zero-wait switching of firmware loading by the firmware loading device, and further improves the performance of the firmware loading device.
[0080] It should be noted that, for the method embodiments described above, each of the features could be implemented in hardware, software, or a combination of hardware and software. The described above features can be implemented in different embodiments, and are not limited to the embodiments described above. In the above description, for a better description of the present application, a series of actions are described as a combination of a series of actions, but those skilled in the art should know that the present application is not limited by the order of the actions described, because according to the embodiments of the present application, certain steps can be performed in other orders or simultaneously. Secondly, those skilled in the art should know that the embodiments described in the specification are all optional embodiments, and the actions and modules involved are not necessarily required by the present application.
[0081] The above description is only the preferred embodiment of the present application and the explanation of the technical principles used. Those skilled in the art should understand that the disclosed range of the present application is not limited to the technical solutions formed by the specific combination of the above technical features, and should also cover other technical solutions formed by any combination of the above technical features or their equivalent features without departing from the above disclosed concept. For example, the above features are replaced with the technical features disclosed in the present application (but not limited to) with similar functions to form a technical solution.
Claims
1. A firmware loading device based on dual-chip collaboration, characterized in that, It includes a main control chip, at least two cache chips, a connection path configured between the cache chips and the main control chip, and a path selection module for selecting the connection path; The cache chip is used to burn and store firmware, which is loaded by the main control chip and the device functions are defined by the firmware. The main control chip is also used to connect to a host computer to control the path selection module in response to the host computer's control commands, and then select the connection path. It is also used to burn firmware to the cache chip in response to the host computer's operation commands. The firmware loading device is also used to apply a firmware loading method based on dual-chip collaboration, the method comprising: Obtain chip attribute information and storage status information for each cache chip. The chip attribute information includes multiple chip attribute identifiers, and the storage status information reflects the firmware identifier of the cache chip if it does not store firmware or if it does store firmware. The system acquires application environment information, loadable firmware library, and firmware loading records. The application environment information reflects the application environment of the firmware loading device and includes multiple application environment tags. The loadable firmware library includes firmware identifiers for all loadable firmware, multiple firmware description tags carried by each firmware, and chip attribute information of the cache chip to which each firmware identifier can be loaded. The firmware loading records include firmware identifiers of historically loaded firmware carrying historical application environments and historical loading times, and historical chip attributes loaded into the cache chip. For all cache chips without stored firmware, a firmware recommendation list is determined in the loadable firmware library by combining analysis of chip attribute information, application environment information and firmware loading records. The firmware recommendation list includes recommended loading firmware and cache chips with unstored firmware to which the recommended loading firmware is recommended to be loaded. The total number of recommended loading firmware is less than the total number of cache chips without stored firmware. The cache chip, which is designed for all chips without stored firmware, determines a recommended firmware list in the loadable firmware library by combining analysis of chip attribute information, application environment information, and firmware loading records. This list includes: Based on application environment information and chip attribute information, for each cache chip without loaded firmware, the loading recommendation data of each loadable firmware is determined in the loadable firmware library according to the firmware loading record. For each cache chip without loaded firmware, determine the loadable firmware with a recommendation score higher than the first recommendation score threshold as the corresponding cache chip's compatible firmware. The firmware recommendation list is determined based on firmware analysis of the adapted firmware and the cache chips containing the stored firmware. The recommended firmware in the firmware recommendation list is not the same as the firmware in any cache chip containing the stored firmware, and the firmware similarity between any two recommended firmware is not lower than the firmware similarity threshold. Furthermore, the sum of the loading recommendation data of all recommended firmware for the corresponding cache chip is the largest.
2. The firmware loading device according to claim 1, characterized in that, It also includes an offline storage module; The offline storage module is connected to the main control chip. The offline storage module is used to store the selection status of the connected path when the power is off. When the power is restored, the main control chip reads the selection status of the offline storage module and controls the path selection module to control the selected path to be restored to the state when the power was off.
3. A firmware loading method based on dual-chip collaboration, characterized in that, Applied to the firmware loading apparatus as described in claim 1 or 2, the method includes: Obtain chip attribute information and storage status information for each cache chip. The chip attribute information includes multiple chip attribute identifiers, and the storage status information reflects the firmware identifier of the cache chip if it does not store firmware or if it does store firmware. The system acquires application environment information, loadable firmware library, and firmware loading records. The application environment information reflects the application environment of the firmware loading device and includes multiple application environment tags. The loadable firmware library includes firmware identifiers for all loadable firmware, multiple firmware description tags carried by each firmware, and chip attribute information of the cache chip to which each firmware identifier can be loaded. The firmware loading records include firmware identifiers of historically loaded firmware carrying historical application environments and historical loading times, and historical chip attributes loaded into the cache chip. For all cache chips without stored firmware, a firmware recommendation list is determined in the loadable firmware library by combining analysis of chip attribute information, application environment information and firmware loading records. The firmware recommendation list includes recommended loading firmware and cache chips with unstored firmware to which the recommended loading firmware is recommended to be loaded. The total number of recommended loading firmware is less than the total number of cache chips without stored firmware. The cache chip, which is designed for all chips without stored firmware, determines a recommended firmware list in the loadable firmware library by combining analysis of chip attribute information, application environment information, and firmware loading records. This list includes: Based on application environment information and chip attribute information, for each cache chip without loaded firmware, the loading recommendation data of each loadable firmware is determined in the loadable firmware library according to the firmware loading record. For each cache chip without loaded firmware, determine the loadable firmware with a recommendation score higher than the first recommendation score threshold as the corresponding cache chip's compatible firmware. The firmware recommendation list is determined based on firmware analysis of the adapted firmware and the cache chips containing the stored firmware. The recommended firmware in the firmware recommendation list is not the same as the firmware in any cache chip containing the stored firmware, and the firmware similarity between any two recommended firmware is not lower than the firmware similarity threshold. Furthermore, the sum of the loading recommendation data of all recommended firmware for the corresponding cache chip is the largest.
4. The firmware loading method according to claim 3, characterized in that, The process of determining the loading recommendation data for each loadable firmware in the loadable firmware library based on application environment information and chip attribute information for each cache chip without loaded firmware includes: Based on the application environment information and chip attribute information, the firmware loading records are filtered into a first type of loading record and a second type of loading record. In the first type of loading record, the historical application environment is the same as the application environment information and the historical chip attribute is the same as the chip attribute information. In the second type of loading record, the environment similarity between the historical application environment and the application environment information is higher than the environment similarity threshold and the chip similarity between the historical chip attribute information and the chip attribute information is higher than the chip similarity threshold. The first loading percentage of each loadable firmware is determined based on the analysis of the first type of loading records. The first loading percentage is related to the ratio of the loading frequency of loadable firmware in the first type of loading records to the total number of the first type of loading records. The second loading percentage of each loadable firmware is determined based on the analysis of the second type of loading records. The second loading percentage is related to the ratio of the loading frequency of loadable firmware in the second type of loading records to the total number of the second type of loading records. The loading recommendation degree is determined by combining the first loading percentage and the second loading percentage, and the loading recommendation degree is positively correlated with the first loading percentage and the second loading percentage.
5. The firmware loading method according to claim 4, characterized in that, The first loading ratio is also related to the changing trend of the loading frequency of the loadable firmware determined based on the first type of loading records of time sequence analysis; The second loading percentage is also related to the changing trend of the loading frequency of loadable firmware determined based on the second type of loading records in time-series analysis.
6. The firmware loading method according to claim 4, characterized in that, The process of determining the loading recommendation degree by combining the first loading percentage and the second loading percentage, wherein the loading recommendation degree is positively correlated with the first loading percentage and the second loading percentage, includes: The loading recommendation range is determined based on the first loading ratio, and the upper and lower limits of the loading recommendation range are both positively correlated with the first loading ratio. The loading recommendation degree is determined based on the second loading percentage within the loading recommendation degree range, and the loading recommendation degree is positively correlated with the second loading percentage.
7. The firmware loading method according to claim 4, characterized in that, The process of determining the loading recommendation degree by combining the first loading percentage and the second loading percentage, wherein the loading recommendation degree is positively correlated with the first loading percentage and the second loading percentage, includes: The basic loading recommendation degree is determined based on the first loading percentage. The recommendation degree influence coefficient is determined by subtracting the first loading percentage from the second loading percentage. The loading recommendation degree is the product of the basic loading recommendation degree and the recommendation degree influence coefficient. The loading recommendation degree is positively correlated with the basic loading recommendation degree and the recommendation degree influence coefficient.
8. The firmware loading method according to claim 3, characterized in that, The process of determining the firmware recommendation list based on firmware analysis in the cache chip of the adapted firmware and the stored firmware includes: For each cache chip without loaded firmware, select all loadable firmware that has a loading recommendation score higher than the loading recommendation score threshold and is not the same as the firmware in any cache chip with stored firmware as the available firmware for the cache chip. All available firmware are combined into a firmware set, which contains all available firmware for each cache chip that has not been loaded. The recommended method is repeatedly executed for the selected firmware set until the selected firmware set is empty or the number of cache chips with unloaded firmware not added to the firmware recommendation list is less than a preset number. The recommendation method includes: adding the firmware with the highest recommendation score from the firmware selection set to the firmware recommendation list and storing the chip identifier of the corresponding unloaded firmware cache chip; removing all other firmware selections for the firmware selection set, the firmware similarity of the firmware selection set to the firmware selection set and the corresponding unloaded firmware cache chip, and the firmware similarity of the firmware selection set to ... recommendation list and the corresponding unloaded firmware cache chip, and storing the chip identifier of the corresponding unloaded firmware cache chip, and removing the firmware similarity of the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware recommendation list to the firmware selection set to the firmware recommendation list to the firmware selection set to the firmware selection set to the firmware recommendation list to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to the firmware selection set to
Citation Information
Patent Citations
Device and method for burning SOC chips in batches
CN120162058A