Integrated circuit safety control method, device, storage medium, and electronic device
By introducing a group data collection module and a security control module into the integrated circuit, the problem that the integrated circuit cannot handle a large amount of error data is solved, efficient collection and processing of error data is achieved, the number of connections is reduced, and the normal and reliable operation of the integrated circuit is supported.
Patent Information
- Application Number
- JP2023183749
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Priority Date
- 2022-11-28
- Filing Date
- 2023-10-26
- Publication Date
- 2025-04-08
- Estimated Expiration
- 2043-10-26
AI Technical Summary
The prior art is difficult to support the collection and processing of large amounts of error data of integrated circuits, resulting in the inability to ensure the normal and reliable operation of integrated circuits.
By introducing a group data collection module and a security control module into the integrated circuit, the group data collection module is used to determine the error data and verification code of the target control module, and pass it to the security control module to perform preset processing operations.
It realizes efficient collection and processing of error data of integrated circuits, reduces the number of connections between the safety control module and the target control module, and reduces the required number of communication lines, thereby supporting the processing of large amounts of error data.
Smart Images

Figure 0007659030000001 
Figure 0007659030000002 
Figure 0007659030000003
Abstract
Description
[Technical field]
[0001] The present disclosure relates to integrated circuit technology, and more particularly to a safety control method, device, storage medium, and electronic device for an integrated circuit. [Background technology]
[0002] In order to ensure normal and reliable operation of integrated circuits, errors that occur in the integrated circuits need to be collected, processed, etc. Currently, there is an architecture for realizing the collection and processing of error data for integrated circuits, but this architecture cannot support the collection and processing of a huge amount of error data for integrated circuits. Summary of the Invention [Problem to be solved by the invention]
[0003] The present disclosure is presented to solve the problem that the above architecture cannot support collecting and processing a huge number of error data for an integrated circuit. The embodiments of the present disclosure provide a safety control method, an apparatus, a storage medium, and an electronic device for an integrated circuit. [Means for solving the problem]
[0004] According to one aspect of an embodiment of the present disclosure, a method for controlling safety of an integrated circuit is provided, comprising: determining first error data of a first target control module in a group data collection module, the group data collection module including at least one of the first target control modules; determining a first check code corresponding to the first error data based on a first collection module in the group data collection module; and controlling a safety control module based on the first check code and the first error data to perform a preset processing operation corresponding to the first error data.
[0005] According to another aspect of an embodiment of the present disclosure, there is provided a safety control device of an integrated circuit, the safety control device including a group data collection module and a safety control module, The group data collection module includes a first collection module and at least one first target control module connected to the first collection module, and the safety control module is connected to the first collection module; The first collection module is used to determine first error data of the first target control module and determine a first check code corresponding to the first error data; The safety control module is used for performing, according to the first check code and the first error data, a preset processing operation corresponding to the first error data.
[0006] According to yet another aspect of the present disclosure, a computer-readable storage medium is provided, the storage medium storing a computer program for executing the above-described integrated circuit safety control method.
[0007] According to yet another aspect of the present disclosure, there is provided an electronic device comprising: A processor; a memory for storing executable instructions for said processor; The processor is adapted to read the executable instructions from the memory and execute the instructions to implement the safety control method of the integrated circuit. Effect of the Invention
[0008] Based on the integrated circuit safety control method, device, storage medium, and electronic device provided in the above embodiments of the present disclosure, several first target control modules are installed in the same group data collection module, and the first collection module in the group data collection module provides error data and check codes to the safety control module, thereby realizing the collection and processing of error data, and the safety control module does not need to be connected to all the first target control modules respectively, but only needs to be connected to the first collection module. On the premise of realizing the collection and processing of error data in this manner, the number of wirings that need to be installed in the safety control module can be effectively controlled, and therefore the embodiments of the present disclosure can support the collection and processing of a huge number of error data for integrated circuits.
[0009] The technical solutions of the present disclosure are further described in detail below with reference to the drawings and examples. The above and other objects, features and advantages of the present disclosure will become more apparent from the detailed description of the embodiments of the present disclosure in conjunction with the drawings. The drawings are used to provide a further understanding of the embodiments of the present disclosure, constitute a part of the specification, and are used to interpret the present disclosure together with the embodiments of the present disclosure, and are not intended to limit the present disclosure. In the drawings, the same reference numerals generally represent the same components or steps. [Brief description of the drawings]
[0010] [Figure 1] FIG. 2 is a structural schematic diagram of a safety control device of an integrated circuit provided in one exemplary embodiment of the present disclosure. [Diagram 2] FIG. 2 is a structural schematic diagram of a group data collection module in a safety control device of an integrated circuit provided in one exemplary embodiment of the present disclosure. [Diagram 3] FIG. 2 is a structural schematic diagram of a safety control module in the integrated circuit safety control device provided in one exemplary embodiment of the present disclosure. [Figure 4]FIG. 11 is a structural schematic diagram of a safety control device of an integrated circuit provided in another exemplary embodiment of the present disclosure. [Diagram 5] 1 is a flowchart of a safety control method for an integrated circuit provided in one exemplary embodiment of the present disclosure. [Figure 6] 11 is a flowchart of a safety control method for an integrated circuit provided in another exemplary embodiment of the present disclosure. [Figure 7] 11 is a flowchart of a safety control method for an integrated circuit provided in yet another exemplary embodiment of the present disclosure. [Figure 8] 11 is a flowchart of a safety control method for an integrated circuit provided in yet another exemplary embodiment of the present disclosure. [Figure 9] 11 is a flowchart of a safety control method for an integrated circuit provided in yet another exemplary embodiment of the present disclosure. [Figure 10] 11 is a flowchart of a safety control method for an integrated circuit provided in yet another exemplary embodiment of the present disclosure. [Figure 11] 11 is a flowchart of a safety control method for an integrated circuit provided in yet another exemplary embodiment of the present disclosure. [Figure 12] FIG. 2 is a structural diagram of an electronic device provided in one exemplary embodiment of the present disclosure. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0011] Hereinafter, exemplary embodiments according to the present disclosure will be described in detail with reference to the drawings. Obviously, the described embodiments are only some embodiments of the present disclosure, but not all embodiments of the present disclosure, and it should be understood that the present disclosure is not limited to the exemplary embodiments described herein.
[0012] It should be noted that the relative arrangement of components and steps, numerical expressions and values described in these examples do not limit the scope of the present disclosure unless specifically stated otherwise.
[0013] As can be understood by those skilled in the art, the terms "first", "second", etc. in the embodiments of the present disclosure are used to distinguish different steps, devices, modules, etc., and do not represent any particular technical meaning, nor do they represent a necessary logical order between them.
[0014] It should also be understood that in the embodiments of the present disclosure, "plurality" can refer to two or more than two, and "at least one" can refer to one, two, or more than two.
[0015] The embodiments of the present disclosure may be applied to electronic devices, such as terminal devices, computer systems, servers, etc., that may operate with many other general-purpose or dedicated computing system environments or configurations. In addition, the electronic devices may include chips, which may include at least one integrated circuit and multiple processors, and the various electrical connections of the embodiments of the present disclosure may all be realized within the chip, and all operations of the embodiments of the present disclosure may all be completed within the chip. Examples of well-known terminal devices, computing systems, environments, and / or configurations suitable for use with electronic devices, such as terminal devices, computer systems, servers, etc., include, but are not limited to, personal computer systems, server computer systems, thin clients, fat clients, handheld or laptop devices, microprocessor-based systems, set-top boxes, programmable consumer electronic products, networked personal computers, small computer systems, large computer systems, and distributed cloud computing technology environments including any of the above systems.
[0016] Overview of the Application In order to ensure normal and reliable operation of the integrated circuit, errors that occur in the integrated circuit need to be collected, processed, etc., where the integrated circuit may include a plurality of Intellectual Property (IP) modules (i.e., modules having pre-designed, deterministic functions), and the errors that occur in the integrated circuit may include random errors, permanent failure errors, etc. that occur in the IP modules related to the functional safety of the integrated circuit.
[0017] Currently, there is an architecture for realizing the collection and processing of error data for integrated circuits. However, in this architecture, all error data of IP modules related to functional safety in the integrated circuit are directly reported to a specific module for error processing. This requires the installation of a huge number of wiring in the module. However, the available space for installing wiring in the module is usually limited and cannot support the installation of a huge number of wiring. Therefore, the architecture cannot support the collection and processing of a huge number of error data for the integrated circuit.
[0018] Exemplary Apparatus 1 is a structural schematic diagram of a safety control device of an integrated circuit provided in one exemplary embodiment of the present disclosure. The device shown in FIG. 1 includes: a group data collection module 11 and a safety control module 13; The group data collection module 11 includes a first collection module 111 and at least one first target control module 113 connected to the first collection module 111, and the safety control module 13 is connected to the first collection module 111; The first collection module 111 is used to determine first error data of the first target control module 113 and determine a first check code corresponding to the first error data; The safety control module 13 is used for performing a preset processing operation corresponding to the first error data according to the first check code and the first error data.
[0019] Optionally, the number of group data collection modules 11 may be one, two, three or more than three, and is not listed here one by one.
[0020] Optionally, the number of the first target control modules 113 in the group data collection module 11 may be two, three, four or more than four, not listed here, where any two of the first target control modules 113 in the group data collection module 11 can satisfy at least one of the following four conditions: (1) the two first target control modules 113 are located in the same subsystem of the integrated circuit; (2) the two first target control modules 113 cooperate to support the same functionality; (3) the number of connecting lines between the two first target control modules 113 is greater than a preset number; (4) The positions of the two first target control modules 113 satisfy a preset relationship.
[0021] In one example, when M IP modules related to functional safety in an integrated circuit are simultaneously located in the sensing subsystem of the integrated circuit or simultaneously located in the computing subsystem of the integrated circuit, the M IP modules can be assigned to the same group data collection module 11, and each of the M IP modules can be one first target control module 113.
[0022] In another example, when N IP modules related to functional safety in an integrated circuit work together to realize an environmental sensing function or a computing function, the N IP modules can be assigned to the same group data collection module 11, and each of the N IP modules can be one first target control module 113.
[0023] In yet another example, if the number of connecting lines between two IP modules related to functional safety in an integrated circuit is greater than a preset number (e.g., greater than three), this indicates that many interactions need to occur between the two IP modules, in which case the two IP modules can be assigned to the same group data collection module 11, and each of the two IP modules can be a first target control module 113.
[0024] In yet another example, when the placement locations of K IP modules related to functional safety in an integrated circuit are very close to each other, for example concentrated in a small area in the integrated circuit, it can be determined that the placement locations of the K IP modules satisfy a predetermined relationship, and the K IP modules can be assigned to the same group data collection module 11, and each of the K IP modules can be a first target control module 113.
[0025] Optionally, as shown in Figures 1 and 2, the first target control module 113 in the group data collection module 11 can be electrically connected to the first collection module 111 in the group data collection module 11 via one or more first error alarm lines 115.
[0026] Based on the signal transmitted on the first error alarm line 115 between the first target control module 113 and the first collection module 111, the first collection module 111 can determine first error data of the first target control module 113, and then the first collection module 111 can perform a preset check operation on the first error data to obtain a first check code corresponding to the first error data.
[0027] Optional predefined check operations include, but are not limited to, a Cyclic Redundancy Check (CRC) operation, an Error Checking and Correcting (ECC) operation, a parity check operation, etc., which will not be listed here one by one.
[0028] In one example, when the preset check operation is a CRC operation, the first collection module 111 can perform a CRC operation on the first error data based on the preset CRC polynomial to obtain a corresponding CRC value, and the CRC value can be a first check code.
[0029] In another example, when the preset check operation is an ECC operation, the first collection module 111 can generate a row check value and a column check value for every 256-bit data in the first error data, and can use the generated row check value and column check value to generate an ECC check code, and the generated ECC check code can be the first check code.
[0030] Optionally, as shown in FIG. 1, the first collection module 111 can be electrically connected to the safety control module 13 via the data bus 14, and thus, the first collection module 111 can provide the first error data and the first check code to the safety control module 13 via the data bus 14.
[0031] The safety control module 13 can execute a preset processing operation corresponding to the first error data based on the first error data and the first check code, where the preset processing operation corresponding to the first error data includes, but is not limited to, an operation of outputting an error code (e.g., an operation of setting an error pin), an operation of outputting a reset request, an operation of outputting an interrupt signal, etc.
[0032] Based on the safety control device of the integrated circuit provided in the embodiment of the present disclosure, several first target control modules 113 are installed in the same group data collection module 11, and the first collection module 111 in the group data collection module 11 provides error data and check codes to the safety control module 13, thereby realizing the collection and processing of error data; and the safety control module 13 does not need to be connected to all the first target control modules 113 respectively, but only needs to be connected to the first collection module 111. On the premise of realizing the collection and processing of error data in this manner, the number of wirings that need to be installed in the safety control module 13 can be effectively controlled, and therefore the embodiment of the present disclosure can support the collection and processing of a huge number of error data for integrated circuits.
[0033] In one optional example, the first collection module 111 is used to determine a first error identifier based on a first error alert signal generated by the first target control module 113, determine a first error attribute corresponding to the first error identifier, and determine first error data based on the first error identifier and the first error attribute.
[0034] Optionally, a configuration table (for convenience of explanation, hereinafter referred to as a first configuration table) can be stored in the first collection module 111, and a correspondence between an error identifier and an error attribute (for convenience of explanation, hereinafter referred to as a first correspondence) can be recorded in the first configuration table, where the error identifier can include an error ID, and the error attributes can include an error severity, an error urgency, a desired handling manner of the error, etc., where the error severity includes, but is not limited to, very serious, serious, generally serious, non-serious, etc., the error urgency includes, but is not limited to, very urgent, urgent, generally urgent, non-urgent, etc., and the desired handling manner of the error includes, but is not limited to, an error code output, a reset, an interrupt, etc.
[0035] In addition, there may be multiple types of errors that can occur in the first target control module 113, including, but not limited to, power supply errors, clock errors, Electro Magnetic Compatibility (EMC) interference errors, etc. In this way, when the first target control module 113 is electrically connected to the first collection module 111 via multiple first error alarm lines 115, different first error alarm lines 115 can be used to transmit first error alarm signals corresponding to different errors of the first target control module 113.
[0036] In one example, the first target control module 113 can be electrically connected to the first collection module 111 via three first error alarm lines 115, where the first first error alarm line 115 can be used to transmit a first error alarm signal corresponding to a power supply error of the first target control module 113, the second first error alarm line 115 can be used to transmit a first error alarm signal corresponding to a clock error of the first target control module 113, and the third first error alarm line 115 can be used to transmit a first error alarm signal corresponding to an EMC interference error of the first target control module 113. In this way, the correspondence between each first error alarm line 115 and the error identifier of the corresponding error (for convenience of explanation, hereinafter, it is referred to as the second correspondence) can be determined and recorded in advance.
[0037] After receiving a first error alarm signal from the first target control module 113 via a certain first error alarm line 115, the first collection module 111 can determine, based on the second correspondence relationship, an error identifier corresponding to the first error alarm line 115 through which the first error alarm signal was received, and the determined error identifier can be, i.e., the first error identifier.
[0038] Of course, the manner of determining the first error identifier is not limited thereto. For example, the first error warning signal can have an error identifier, and the first collection module 111 can directly extract the error identifier from the first error warning signal as the first error identifier.
[0039] After determining the first error identifier, the first collection module 111 can determine a first error attribute corresponding to the first error identifier according to the first correspondence in the first arrangement table, thereby generating first error data including the first error attribute and the first error identifier. Of course, the first error data can further include other information, such as the generation time of the first error warning signal.
[0040] In an embodiment of the present invention, a first error identifier can be efficiently and reliably determined based on the first error alarm signal generated by the first target control module 113, and by determining a first error attribute corresponding to the first error identifier, first error data can be efficiently and reliably determined by referring to the first error identifier and the first error attribute, and the first error data can not only indicate the error source (specifically, by the first error identifier), but also indicate the error attribute. In this way, for an IP module assigned to the group data collection module 11, the safety control module 13 can quickly and accurately handle an error that occurs in the IP module without needing to locate the error source by readback using software, and can handle the error that occurs in the IP module with an appropriate processing policy (e.g., an appropriate processing method, an appropriate processing timing, etc.).
[0041] In one optional example, the safety control module 13 is used to determine a second check code corresponding to the first error data, and if the second check code is the same as the first check code, determine a first error attribute based on the first error data, and perform a preset processing operation matching the first error attribute.
[0042] After the first collection module 111 provides the first error data and the first check code to the safety control module 13 via the data bus 14, the safety control module 13 can perform a preset check operation on the first error data provided by the first collection module 111 to obtain a second check code corresponding to the first error data. For the specific acquisition method of the second check code, please refer to the introduction of the acquisition method of the first check code mentioned above, and the description will be omitted here.
[0043] The safety control module 13 can compare the second check code with the first check code to determine whether the second check code and the first check code are the same.
[0044] If the second check code is the same as the first check code, it indicates that no error occurs during the process of transmitting the first error data from the first collection module 111 to the safety control module 13, and the first error data received by the safety control module 13 is genuine and reliable data. Then, the safety control module 13 can analyze the first error data to extract a first error attribute from the analysis result and execute a preset processing operation matching the first error attribute. For example, if the urgency of the error in the first error attribute is very urgent and the desired processing method of the error in the first error attribute is to output an error code, the safety control module 13 can immediately execute an operation of outputting a check code. Also, for example, if the severity of the error in the first error attribute is serious and the desired processing method of the error in the first error attribute is to reset, the safety control module 13 can execute an operation of outputting a reset request after completing the processing of other very serious errors.
[0045] If the second check code is not the same as the first check code, an error occurs during the process of transmitting the first error data from the first collection module 111 to the safety control module 13, indicating that the first error data received by the safety control module 13 is not true and reliable, and therefore the safety control module 13 does not need to perform a preset processing operation matching the first error attribute.
[0046] In the embodiment of the present disclosure, by determining a second check code corresponding to the first error data and comparing the second check value with the first check value, it is possible to efficiently and reliably determine whether an error occurs during the transmission of the first error data, and the safety control module 13 can execute a preset processing operation matching the first error attribute only if no error occurs, thereby effectively ensuring the authenticity and reliability of the first error attribute referred to by the safety control module 13 when performing error processing, which is advantageous to ensuring the error processing effect.
[0047] In one alternative example, as shown in FIG. 1, the integrated circuit safety control device further includes a second target control module 16; The safety control module 13 is connected to a second target control module 16; The safety control module 13 is used to determine a second error identifier based on the second error alarm signal generated by the second target control module 16, determine a second error attribute corresponding to the second error identifier, and perform a preset processing operation matching the second error attribute.
[0048] Optionally, each IP module related to functional safety in the integrated circuit and not assigned to the group data collection module 11 can be one second target control module 16, and the number of second target control modules 16 may be one, two, three or more than three, and is not listed here one by one.
[0049] Optionally, the second target control module 16 may be electrically connected to the safety control module 13 via one or more second error alarm lines 18 .
[0050] In addition, similar to the first target control module 113, there may be multiple types of errors that may occur in the second target control module 16. In this manner, when the second target control module 16 is electrically connected to the safety control module 13 via multiple second error alarm lines 18, different second error alarm lines 18 can be used to transmit second error alarm signals corresponding to different errors in the second target control module 16.
[0051] After receiving a second error alarm signal through a second error alarm line 18, the safety control module 13 can sequentially determine a second error identifier and a second error attribute, and for a specific determination method, please refer to the introduction of the determination method of the first error identifier and the first error attribute described above, and the description will be omitted here. Thereafter, the safety control module 13 can execute a preset processing operation matching the second error attribute, and for the preset processing operation matching the second error attribute, please refer to the introduction of the preset processing operation matching the first error attribute described above, and the description will be omitted here.
[0052] In the embodiment of the present disclosure, a second error identifier can be efficiently and reliably determined based on the second error alarm signal generated by the second target control module 16, and a pre-set processing operation matching the second error attribute can be performed by determining a second error attribute corresponding to the second error identifier. In this way, for an IP module related to functional safety in an integrated circuit and not assigned to a group data collection module 11, the error occurring in the IP module can be promptly and accurately processed without the need to locate the error source by software read-back, and the error occurring in the IP module can be processed with an appropriate processing policy, thereby ensuring the error processing effect.
[0053] In one alternative embodiment, as shown in FIG. 3, the safety control module 13 includes a second acquisition module 131, a third acquisition module 133, a register 135 and a controller 137 for performing a preset processing operation; The second collecting module 131 is connected to the first collecting module 111, and the second collecting module 131 is used to receive the first error data and the first check code; The third acquisition module 133 is connected to the second target control module 16, and the third acquisition module 133 is used to receive the second error alarm signal; The controller 137 is connected to the second acquisition module 131, the third acquisition module 133, and the register 135, respectively; The controller 137 is used to store error identifiers and error attributes corresponding to error records that satisfy a preset condition in the register 135 based on the error record data, the error record data including an error record corresponding to each of the at least one first error data and / or an error record corresponding to each of the at least one second error warning signal, and the preset processing operations performed by the controller 137 are associated with the error identifiers and error attributes stored in the register 135.
[0054] Optionally, the second acquisition module 131 can be electrically connected to the first acquisition module 111 via the data bus 14, and the third acquisition module 133 can be electrically connected to the second target control module 16 via the second error alarm line 18.
[0055] Optionally, the controller 137 may include a first connection port, a second connection port and a third connection port, where the first connection port may be electrically connected to the second collection module 131, the second connection port may be electrically connected to the third collection module 133, and the third connection port may be electrically connected to the register 135.
[0056] In this way, the second collection module 131 can collect a large amount of first error data from the first collection module 111 and provide all of the collected first error data to the controller 137, the third collection module 133 can collect a large amount of second error alarm signals from the second target control module 16 and provide all of the collected second error alarm signals to the controller 137, and the controller 137 can generate error record data based on the data and information provided by the second collection module 131 and the third collection module 133, and the error record data can include an error record corresponding to each of the multiple first error data, and an error record corresponding to each of the multiple second error alarm signals.
[0057] In addition, an error record corresponding to any one of the first error data may include a first error identifier and a first error attribute in the first error data, and an error record corresponding to any one of the second error alarm signals may include a second error identifier determined based on the second error alarm signal and a second error attribute corresponding to the second error identifier, i.e., any one of the error records includes an error identifier and a corresponding error attribute.
[0058] The controller 137 can select an error record that satisfies a preset condition from the error record data according to a preset rule, for example, a priority order can be set, the priority order includes multiple error identifiers, the earlier the error identifier is located, the higher the priority of the error corresponding to the error identifier, and the later the error identifier is located, the lower the priority of the error corresponding to the error identifier, and the error record in which the error identifier located at the first position in the priority order is located can be the error record that satisfies the preset condition. Optionally, after the error record in which the error identifier located at the first position in the priority order is located is the error record that satisfies the preset condition, the error identifier can be adjusted from the first position to the lowest position in the priority order, and in this way, when the error record that satisfies the preset condition is selected from the error record data multiple times, the error record selected each time can be different.
[0059] In addition, the preset rules are not limited to the above situations. For example, the controller 137 may prioritize an error record whose error attributes include an error urgency that is very urgent over an error record whose error attributes include an error severity that is very serious over an error record whose error attributes include an error severity that is very serious.
[0060] After selecting an error record that satisfies the preset condition, the controller 137 can store the error identifier and error attribute in the selected error record in the register 135, and the error corresponding to the error identifier and error attribute stored in the register 135 can be set as the error to be currently processed. It is understood that the preset processing operation performed by the controller 137 is associated with the error identifier and error attribute stored in the register 135 such that the controller 137 performs an appropriate preset processing operation on the error to be currently processed to realize processing for the error.
[0061] In one alternative embodiment, the controller 137 is used to execute a preset processing operation corresponding to the first error data according to the first check code and the first error data when the error identifier and the error attribute stored in the register 135 correspond to the first error data; The controller 137 is used to execute a preset processing operation matching the second error attribute in response to the error identifier and the error attribute stored in the register 135 corresponding to the second error alert signal.
[0062] If the error identifier and error attribute stored in the register 135 correspond to the first error data, it indicates that the error currently to be processed is an error that occurred in the first target control module 113 in the group data collection module 11. At this time, the controller 137 can execute a preset processing operation corresponding to the first error data based on the first check code and the first error data to realize processing for the error that occurred in the first target control module 113. For specific processing processes, please refer to the related introduction mentioned above, and the description will be omitted here.
[0063] If the error identifier and error attribute stored in the register 135 correspond to the second error alarm signal, it indicates that the error currently being processed is an error that has occurred in the second target control module 16. At this time, the controller 137 can execute a preset processing operation matching the second error attribute to realize processing for the error that has occurred in the second target control module 16. For specific processing procedures, please refer to the related introduction mentioned above, and the description will be omitted here.
[0064] In this manner, by referring to the information stored in register 135, controller 137 can process errors in all IP modules that relate to the functional safety of the integrated circuit and in which errors have occurred in an orderly, immediate and effective manner.
[0065] In the embodiment of the present disclosure, the safety control module 13 includes a second collection module 131, a third collection module 133, a register 135 and a controller 137. The structure of the safety control module 13 is simple. Moreover, the cooperation of the second collection module 131, the third collection module 133 and the controller 137 can realize the collection and aggregation of a large amount of error-related information to form error recording data. Based on the error recording data, a specific error identifier and error attributes can be stored in the register 135, so that the controller 137 can process errors in an orderly manner.
[0066] In one alternative embodiment, as shown in FIG. 4, the integrated circuit safety control device further includes a central processing unit 20; The central processing unit 20 is connected to the controller 137 in FIG. 3, and the preset processing operations include an operation of sending an interrupt signal to the central processing unit 20; The central processing unit 20 is used to read the error identifier and the error attribute stored in the register 135 in FIG. 3 in response to the interrupt signal, and to perform interrupt processing based on the read result.
[0067] Optionally, register 135 may be configured by software so that information stored in register 135 may be accessed by central processing unit 20 and is not erased by a reset of the integrated circuit.
[0068] Assuming that the preset processing operation performed by the controller 137 for the error currently being processed includes an operation of sending an interrupt signal to the central processing unit 20, after the central processing unit 20 receives the interrupt signal, the central processing unit 20 can determine information such as what kind of error is currently being processed, where the error source is, and the severity and urgency of the error by reading the error identifier and error attribute stored in the register 135, and the central processing unit 20 can enter an interrupt processing program based on the information. Specifically, the central processing unit 20 can suspend the program that was being executed when the interrupt signal was received, refer to the execution status of the application program associated with the error source, and determine the next processing method, which includes, but is not limited to, outputting an error code, resetting, retransmitting data, recording the number of errors, discarding data, etc., and the central processing unit 20 can perform a corresponding processing according to the determined processing method, and after the processing is completed, the central processing unit 20 can resume the execution of the previously suspended program.
[0069] In the embodiment of the present disclosure, by providing the central processing unit 20, the central processing unit 20, the controller 137, the register 135, etc. cooperate with each other to efficiently and reliably process the error currently being processed in an interrupt manner.
[0070] In one optional example, as shown in FIG. 4, the safety control device of the integrated circuit may further include a reset module 22, and the safety control module 13 may send a reset command to the reset module 22, and the reset module 22 may perform a reset operation on the entire integrated circuit according to the reset command, thereby realizing processing for the error currently to be processed.
[0071] In one optional example, the controller 137 is used to determine a correspondence relationship between the error identifier and the error attribute from a configuration table (for convenience of explanation, hereinafter referred to as a second configuration table) stored in the register 135, and determine a second error attribute corresponding to the second error identifier based on the correspondence relationship (for convenience of explanation, hereinafter referred to as a third correspondence relationship).
[0072] The second arrangement table is stored in advance in the register 135, and the third correspondence is stored in the second arrangement table, and the information in the third correspondence can be referred to in the introduction to the first correspondence described above, and the explanation will be omitted here. In this way, the third correspondence can be determined by reading the information in the second arrangement table, and the second error attribute corresponding to the second error identifier can be determined efficiently and reliably by referring to the third correspondence.
[0073] In one optional example, the controller 137 is used to update the correspondence (i.e., the third correspondence) in the placement table and determine a second error attribute corresponding to the second error identifier based on the updated correspondence (i.e., the third correspondence).
[0074] Furthermore, in some situations, a user may need to update the third correspondence, for example, the user may want to modify the severity of an error in an error attribute corresponding to an error identifier in the third correspondence from generally severe to very severe, or modify the desired handling manner of an error in an error attribute corresponding to another error identifier in the third correspondence from outputting an error code to resetting.
[0075] In a situation where there is a need to update the third correspondence relationship, the user can send an information modification command to the controller 137, and the controller 137 can modify the corresponding information in the third correspondence relationship according to the received information modification command, thereby realizing the update of the third correspondence relationship. In this way, when the second error attribute is subsequently determined using the updated third correspondence relationship, the determined second error attribute can be more suitable for the user's needs.
[0076] Similar to the third correspondence relationship, the first correspondence relationship can also be updated according to the needs of the user.
[0077] In one optional example, as shown in FIG. 4, the architecture for realizing error data collection and processing provided in the embodiments of the present disclosure includes a plurality of group data collection modules 11, a safety control module 13, a plurality of second target data collection modules 16, a central processing unit 20 and a reset module 22, wherein each group data collection module 11 includes a first collection module 111 and a plurality of first target control modules 113 as shown in FIG. 1 and FIG. 2, and the safety control module 13 includes a second collection module 131, a third collection module 133, a register 135 and a controller 137 as shown in FIG. 3.
[0078] In actual operation, the first collection module 111 can collect information (corresponding to the above-mentioned first error data and first check code) such as the error ID, the severity of the error, the urgency of the error, the desired processing method of the error, and the ECC check code (which may be the above-mentioned CRC value or the parity check value obtained by the above-mentioned parity check calculation) of the first target control module 113, and send it to the safety control module 13. The second target control module 16 can directly send its own error alarm signal (corresponding to the above-mentioned second error alarm signal) to the safety control module 13.
[0079] The safety control module 13, as a comprehensive error collection module, collects all error-related information, determines the next processing method, and notifies the outside of the chip where the integrated circuit is located, for example by outputting an error code, or sends an interrupt signal to the central processing unit 20, or sends a reset request to the reset module 22.
[0080] The central processing unit 20 receives an interrupt signal from the safety control module 13 and enters the interrupt processing program by reading the information stored in the register 135 .
[0081] The reset module 22 receives a reset request from the safety control module 13 and determines whether to reset the chip on which the integrated circuit is located.
[0082] In summary, the architecture provided in the embodiments of the present disclosure can support the collection and processing of a huge amount of error data for an integrated circuit, and does not require multiple software reads to locate the error source, making it applicable to chips with high location speed and high real-time requirements.
[0083] Exemplary Methods 5 is a flowchart of a safety control method for an integrated circuit provided in one exemplary embodiment of the present disclosure. The method shown in FIG. 5 includes steps 510, 520, and 530, and each step will be described below.
[0084] In step 510, a first error data of a first target control module in a group data collection module is determined, where the group data collection module includes at least one first target control module.
[0085] Optionally, the number of group data collection modules may be one, two, three or more than three, and the number of first target control modules in the group data collection module may be two, three, four or more than four, which are not listed here one by one.
[0086] In step 520, a first check code corresponding to the first error data is determined based on a first collection module in the group data collection module.
[0087] Optionally, a preset check operation can be performed on the first error data to obtain a first check code corresponding to the first error data, where the preset check operation includes, but is not limited to, a CRC operation, a parity check operation, etc.
[0088] In step 530, according to the first check code and the first error data, control the safety control module to perform a preset processing operation corresponding to the first error data.
[0089] Optionally, the preset processing operation corresponding to the first error data includes, but is not limited to, an operation of outputting an error code, an operation of outputting a reset request, an operation of outputting an interrupt signal, and the like.
[0090] Based on the safety control method of an integrated circuit provided in the embodiment of the present disclosure, several first target control modules are installed in the same group data collection module, and the first collection module in the group data collection module provides error data and check codes to the safety control module, thereby realizing the collection and processing of error data, and the safety control module does not need to be connected to all the first target control modules respectively, but only needs to be connected to the first collection module. On the premise of realizing the collection and processing of error data in this way, the number of wirings that need to be installed in the safety control module can be effectively controlled, and therefore the embodiment of the present disclosure can support the collection and processing of a huge number of error data for integrated circuits.
[0091] In the embodiment shown in FIG. 5, as shown in FIG. 6, step 510 includes: determining 5101 a first error identifier based on a first error warning signal generated by a first target control module; a step 5103 of determining a first error attribute corresponding to the first error identifier; and determining 5105 first error data based on the first error identifier and the first error attribute.
[0092] In addition, the methods for determining the first error identifier, the first error attribute, and the first error data can be referred to in the relevant introduction in the embodiment of the above device, and the description thereof will be omitted here.
[0093] In an embodiment of the present disclosure, a first error identifier can be efficiently and reliably determined based on a first error alarm signal generated by a first target control module, and a first error attribute corresponding to the first error identifier can be determined by referring to the first error identifier and the first error attribute, and first error data can be efficiently and reliably determined, and the first error data can not only indicate the error source, but also indicate the error attribute. In this way, for an IP module assigned to a group data collection module, an error occurring in the IP module can be quickly and accurately handled without the need to locate the error source by software readback, and the error occurring in the IP module can be handled with an appropriate processing policy.
[0094] In the embodiment shown in FIG. 5, as shown in FIG. 7, step 510 includes: determining 5107 a second check code corresponding to the first error data based on the safety control module; a step 5109 of determining a first error attribute based on the first error data in response to the second check code and the first check code being the same; and controlling the safety control module to execute a preset processing operation matching the first error attribute 5111.
[0095] In addition, the method of determining the second check code and the first error attribute, as well as the type of pre-set processing operation matching the first error attribute, can all be referred to the relevant introduction in the embodiment of the above device, and description thereof will be omitted here.
[0096] In the embodiment of the present disclosure, by determining a second check code corresponding to the first error data and comparing the second check value with the first check value, it is possible to efficiently and reliably determine whether an error occurs during the transmission of the first error data, and the safety control module can execute a preset processing operation matching the first error attribute only if no error occurs, thereby effectively ensuring the authenticity and reliability of the first error attribute referred to by the safety control module when performing error processing, which is advantageous to ensuring the error processing effect.
[0097] In the embodiment shown in FIG. 5, as shown in FIG. 8, the method includes: determining 540 a second error identifier based on the second error alert signal generated by the second target control module; determining 550 a second error attribute corresponding to the second error identifier; The method further includes controlling the safety control module to perform a preset processing operation matching the second error attribute 560 .
[0098] Furthermore, the method of determining the second error identifier and the second error attribute, as well as the type of pre-set processing operation matching the second error attribute, can all be referred to the relevant introduction in the above device embodiment, and description thereof will be omitted here.
[0099] In the embodiments of the present disclosure, a second error identifier can be efficiently and reliably determined based on the second error alarm signal generated by the second target control module, and a pre-set processing operation matching the second error attribute can be performed by determining a second error attribute corresponding to the second error identifier. In this way, for an IP module related to functional safety in an integrated circuit and not assigned to a group data collection module, the error occurring in the IP module can be quickly and accurately handled without the need to locate the error source by software read-back, and the error occurring in the IP module can be handled with an appropriate processing policy, thereby ensuring the error processing effect.
[0100] In one optional example, as shown in FIG. 8, the safety control method of the integrated circuit includes: The method further includes a step 525 of storing error identifiers and error attributes corresponding to error records that satisfy a preset condition in a register based on the error record data, the error record data including an error record corresponding to each of the at least one first error data and / or an error record corresponding to each of the at least one second error alarm signal, and the preset processing operation performed by the safety control module is associated with the error identifiers and error attributes stored in the register.
[0101] Incidentally, the error record data, the information contained in the error record, and the preset conditions can all be referred to in the relevant introductions in the embodiments of the device described above, and the explanation thereof will be omitted here.
[0102] The embodiments of the present disclosure can realize the collection and aggregation of a large amount of error-related information to form error recording data, and based on the error recording data, store specific error identifiers and error attributes in registers, thereby enabling orderly error handling.
[0103] In one selectable example, Step 530 is According to the error identifier and the error attribute stored in the register corresponding to the first error data, controlling the safety control module to perform a preset processing operation corresponding to the first error data based on the first check code and the first error data; Step 560 is The method includes controlling the safety control module to execute a preset processing operation matching the second error attribute in response to the error identifier and the error attribute stored in the register corresponding to the second error alarm signal.
[0104] In an embodiment of the present disclosure, by referencing the information stored in the register, errors in all IP modules that are related to the functional safety of the integrated circuit and in which errors have occurred can be handled in an orderly, immediate, and efficient manner.
[0105] In the embodiment shown in FIG. 8, as shown in FIG. 9, step 550 includes: Step 5501 of determining a correspondence relationship between an error identifier and an error attribute (i.e., a third correspondence relationship) from a configuration table (i.e., a second configuration table) stored in a register; and determining 5503 a second error attribute corresponding to the second error identifier based on the correspondence (i.e., the third correspondence).
[0106] In an embodiment of the present disclosure, a third correspondence relationship can be determined by reading information in the second arrangement table, and a second error attribute corresponding to the second error identifier can be efficiently and reliably determined based on the third correspondence relationship.
[0107] Based on the embodiment shown in FIG. 9, as shown in FIG. 10, the safety control method of the integrated circuit includes: Step 570 of updating the correspondence (i.e., the third correspondence) in the arrangement table (i.e., the second arrangement table); The method further includes determining 580 a second error attribute corresponding to the second error identifier based on the updated correspondence (ie, the third correspondence).
[0108] In the embodiment of the present disclosure, the corresponding information in the third correspondence can be modified according to an information modification command issued by a user, thereby realizing the update of the third correspondence. In this way, when the second error attribute is determined using the subsequently updated third correspondence, the determined second error attribute can be more suitable for the needs of the user.
[0109] In one optional example, as shown in FIG. 11, when an error occurs in an IP module related to functional safety in an integrated circuit, it can be determined whether the IP module is located in a group data collection module.
[0110] If the IP module is located in the group data collection module, the first collection module can collect error-related information of the IP module (which may include the above-mentioned first error data), and transmit the collected related information to the safety control module via the data bus.
[0111] If the IP module is not located in the group data collection module, an error alert signal of the IP module's error (corresponding to the second error alert signal described above) can be sent directly to the safety control module to allow the safety control module to determine relevant information of the error.
[0112] For an error in the IP module, the safety control module can refer to the error attributes in the relevant information of the error and determine a handling method for the error, for example, notifying the outside of the chip where the integrated circuit is located by outputting an error code, or sending an interrupt signal to the above-mentioned central processing unit, or sending a reset request to the above-mentioned reset module.
[0113] Any of the integrated circuit safety control methods provided in the embodiments of the present disclosure may be executed by any suitable device having data processing capabilities, including, but not limited to, a terminal device and a server, etc. Alternatively, any of the integrated circuit safety control methods provided in the embodiments of the present disclosure may be executed by a processor, for example, the processor executes any of the integrated circuit safety control methods mentioned in the embodiments of the present disclosure by calling corresponding instructions stored in a memory. The following description is omitted.
[0114] Exemplary Electronic Devices Hereinafter, an electronic device according to an embodiment of the present disclosure will be described with reference to Fig. 12. The electronic device may be any one or two of the first device and the second device, or may be a standalone device independent of them, and the standalone device can communicate with the first device and the second device and receive collected input signals from them.
[0115] FIG. 12 shows a block diagram of an electronic device according to an embodiment of the present invention.
[0116] As shown in FIG. 12, electronic device 1200 includes one or more processors 1210 and memory 1220.
[0117] The processor 1210 may be a central processing unit (CPU) or other type of processing unit having data processing and / or instruction execution capabilities, and may control other components in the electronic device 1200 to perform desired functions.
[0118] The memory 1220 may include one or more computer program products, which may include various forms of computer-readable storage media, such as volatile memory and / or non-volatile memory. The volatile memory may include, for example, random access memory (RAM) and / or cache memory. The non-volatile memory may include, for example, read-only memory (ROM), hard disk, flash memory, etc. The computer-readable storage medium may store one or more computer program instructions, and the processor 1210 may execute the program instructions to realize the safety control method of the integrated circuit of each embodiment of the present disclosure and / or other desired functions. The computer-readable storage medium may also store various types of content, such as input signals, signal components, noise components, etc.
[0119] In one example, the electronic device 1200 may further include input devices 1230 and output devices 1240, where these components are connected together by a bus system and / or other form of connection (not shown).
[0120] For example, if the electronic device is a first device or a second device, the input device 1230 may be a microphone or a microphone array for capturing an input signal of an audio source, or if the electronic device is a stand-alone device, the input device 1230 may be a communication network connector for receiving input signals collected from the first device and the second device.
[0121] In addition, the input device 1230 may further include, for example, a keyboard and a mouse.
[0122] The output device 1240 can output various types of information, including the determined distance information, direction information, etc. The output device 1240 can include, for example, a display, a speaker, a printer, and a communication network and a remote output device connected thereto.
[0123] Of course, for the sake of simplicity, in Fig. 12, only some of the components related to the present disclosure in the electronic device 1200 are shown, and components such as buses, input / output interfaces, etc. In addition, the electronic device 1200 may further include any other appropriate components according to a specific application situation.
[0124] Exemplary Computer Program Products and Computer-Readable Storage Media In addition to the methods and apparatus described above, embodiments of the present disclosure may also be a computer program product including computer program instructions that, when executed by a processor, cause the processor to perform steps in the method for safety control of an integrated circuit according to various embodiments of the present disclosure described in the "Exemplary Methods" section above of this specification.
[0125] The computer program product may be written in any combination of one or more programming languages, including object oriented programming languages such as Java, C++, and the like, as well as conventional procedural programming languages such as "C" or similar programming languages, and the program code may be executed entirely on the user computing device, partially on the user device, as a stand-alone software package, partially on the user computing device and partially on a remote computing device, or entirely on a remote computing device or server.
[0126] In addition, an embodiment of the present disclosure may be a computer-readable storage medium having computer program instructions stored thereon that, when executed by a processor, cause the processor to perform steps in a method for safety control of an integrated circuit according to each type of embodiment of the present disclosure described in the "Exemplary Method" section above in this specification.
[0127] The computer readable storage medium may employ any combination of one or more readable media. The readable medium may be a readable signal medium or a readable storage medium. The readable storage medium may include, but is not limited to, an electrical, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any combination thereof. More specific examples (non-exhaustive list) of readable storage media include an electrical connection with one or more wires, a portable disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), optical fiber, a compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the above.
[0128] Although the basic principles of the present disclosure have been described above in conjunction with specific embodiments, it should be pointed out that the advantages, advantages, effects, etc. mentioned in the present disclosure are merely illustrative and not limiting, and it is not considered that these advantages, advantages, effects, etc. must be provided in each embodiment of the present disclosure. In addition, the role of the specific details disclosed above is merely an example and an easy-to-understand function, and is not limiting, and the details do not limit what the present disclosure must achieve with the specific details.
[0129] Block diagrams of devices, apparatus, instruments, and systems according to the present disclosure are merely illustrative examples and are not intended to require or imply that the devices, apparatus, instruments, and systems be necessarily connected, configured, or arranged in the manner shown in the block diagrams. Those skilled in the art will recognize that these devices, apparatus, instruments, and systems can be connected, configured, or arranged in any manner.
[0130] It should also be noted that in the apparatus, device, and method of the present disclosure, each component or each step may be disassembled and / or recombined, and such disassembly and / or recombination should be considered as an equivalent means of the present disclosure.
Claims
1. determining a first error identifier based on a first error alert signal generated by a first target control module in a group data collection module, the group data collection module including at least one of the first target control modules; determining a first error attribute corresponding to the first error identifier based on a first correspondence relationship in a first location table; determining first error data based on the first error identifier and the first error attribute; determining a first check code corresponding to the first error data based on a first collection module in the group data collection module; and controlling a safety control module based on the first check code and the first error data to perform a preset processing operation corresponding to the first error data.
2. The step of controlling a safety control module to perform a preset processing operation corresponding to the first error data according to the first check code and the first error data includes: determining a second check code corresponding to the first error data based on the safety control module; determining a first error attribute based on the first error data in response to the second check code and the first check code being the same; and controlling the safety control module to perform a pre-defined processing operation matching the first error attribute.
3. determining a second error identifier based on the second error alert signal generated by the second target control module; determining a second error attribute corresponding to the second error identifier; The method of claim 1 , further comprising: controlling the safety control module to perform a pre-defined processing operation matching the second error attribute.
4. 4. The method of claim 3, further comprising the step of storing in a register, based on error record data, an error identifier and an error attribute corresponding to an error record that satisfies a preset condition, the error record data including an error record corresponding to each of at least one of the first error data and / or an error record corresponding to each of at least one of the second error alarm signals, and the preset processing operation performed by the safety control module is associated with the error identifier and the error attribute stored in the register.
5. The step of controlling a safety control module to perform a preset processing operation corresponding to the first error data according to the first check code and the first error data includes: According to the error identifier and the error attribute stored in the register corresponding to the first error data, controlling the safety control module based on the first check code and the first error data to perform a preset processing operation corresponding to the first error data; The step of controlling the safety control module to execute a preset processing operation matching the second error attribute includes:
5. The method of claim 4, further comprising: in response to the error identifier and error attribute stored in the register corresponding to the second error alarm signal, controlling the safety control module to execute a preset processing operation matching the second error attribute.
6. The step of determining a second error attribute corresponding to the second error identifier comprises: determining a correspondence between an error identifier and an error attribute from a location table stored in the register; and determining a second error attribute corresponding to the second error identifier based on the correspondence.
7. updating the correspondence in the arrangement table; The method of claim 6 , further comprising: determining a second error attribute corresponding to the second error identifier based on the updated correspondence.
8. A safety control device of an integrated circuit, comprising: a group data collection module and a safety control module; The group data collection module includes a first collection module and at least one first target control module connected to the first collection module, and the safety control module is connected to the first collection module; The first collection module is used for determining a first error identifier according to a first error alarm signal generated by the first target control module, determining a first error attribute corresponding to the first error identifier according to a first correspondence relationship in a first configuration table, determining first error data according to the first error identifier and the first error attribute, and determining a first check code corresponding to the first error data; A safety control device of an integrated circuit, wherein the safety control module is used to execute a preset processing operation corresponding to the first error data based on the first check code and the first error data.
9. Further comprising a second target control module; the safety control module is connected to the second target control module; 9. The apparatus of claim 8, wherein the safety control module is used to determine a second error identifier based on the second error alarm signal generated by the second target control module, determine a second error attribute corresponding to the second error identifier, and perform a preset processing operation matching the second error attribute.
10. The safety control module includes a second acquisition module, a third acquisition module, a register, and a controller for performing a preset processing operation; the second acquisition module is connected to the first acquisition module, and the second acquisition module is used to receive the first error data and the first check code; the third acquisition module is connected to the second target control module, and the third acquisition module is used to receive the second error alarm signal; the controller is connected to the second acquisition module, the third acquisition module, and the register, 10. The apparatus of claim 9, wherein the controller is used to store in the register an error identifier and an error attribute corresponding to an error record that satisfies a preset condition based on error record data, the error record data including an error record corresponding to each of at least one of the first error data and / or an error record corresponding to each of at least one of the second error warning signals, and the preset processing operation performed by the controller is associated with the error identifier and the error attribute stored in the register.
11. the controller is adapted to execute, according to the error identifier and the error attribute stored in the register corresponding to the first error data, a preset processing operation corresponding to the first error data based on the first check code and the first error data; 11. The apparatus of claim 10, wherein the controller is adapted to execute a preset processing operation matching the second error attribute in response to the error identifier and error attribute stored in the register corresponding to the second error alert signal.
12. Further comprising a central processing unit; the central processing unit is connected to the controller, and the preset processing operation includes an operation of sending an interrupt signal to the central processing unit; The device according to claim 10 , wherein the central processing unit is adapted to read the error identifier and the error attribute stored in the register in response to the interrupt signal, and perform interrupt processing based on a read result.
13. A computer-readable storage medium having stored therein a computer program for executing the integrated circuit safety control method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Trouble information holding circuit
JP1987171045A
Integrated circuit, malfunction information processing method, and malfunction information collection device
WO2012020487A1