Register configuration method and device, equipment and medium

By introducing register control modules and register comparison modules into the chip verification platform, combining the register model and additional register model, the effective configuration and verification of instantiated multiple circuit module registers is achieved, which solves the problems of high verification complexity and low real-time performance in the existing technology, and improves the accuracy and speed of verification.

CN119720887AActive Publication Date: 2025-03-28SHANGHAI ENFLAME INTELLIGENCE TECH CO LTD
View PDF 13 Cites 0 Cited by

Patent Information

Application Number
CN202510228901.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-02-28
Publication Date
2025-03-28
Estimated Expiration
2045-02-28

AI Technical Summary

Technical Problem

It is difficult for the prior art to effectively verify registers in instantiated multiple circuit modules, especially in scenarios where registers share a set of register models and address segments, broadcast access methods and gate module access methods coexist, the real-time and coverage of verification are low, and the maintenance complexity of the verification platform is high.

Method used

By introducing register control module and register comparison module into the chip verification platform, combining the register model and additional register model, the configuration and verification of instantiated multiple circuit module registers are realized. The specific steps include obtaining register operation instructions, generating and sending register configuration transactions, updating register attributes, and performing attribute comparisons.

Benefits of technology

This method can effectively reduce the complexity of the verification platform, improve the accuracy and speed of register verification, be compatible with the original register access method, and be portable and popularizable, and can replace traditional test cases.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119720887A_ABST
    Figure CN119720887A_ABST
Patent Text Reader

Abstract

The invention discloses a register configuration method and device, equipment and a medium. The method is cooperatively executed by a register control module and a register comparison module in the chip verification platform, and comprises the following steps: sending a register operation instruction to a register model through the register control module when determining that a register configuration transaction issued by a front door is obtained, and obtaining register information; generating a register configuration transaction through the register control module, and sending the register configuration transaction to the to-be-tested system; updating the attribute of the register to be configured in the register model or the additional register model through a register control module; and through a register comparison module, when it is monitored that the to-be-tested system carries out register configuration operation, attribute comparison is carried out according to the interface information of the to-be-tested system, the register model and the additional register model. By adopting the technical scheme, register verification can be carried out on multiple instantiated circuit modules, and the complexity of a verification platform is reduced.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the field of chip verification technology, and in particular to a register configuration method, device, equipment and medium. Background Art

[0002] With the rapid development of artificial intelligence applications, the integration scale and design complexity of high-performance computing chips are increasing day by day. In order to achieve higher integration, the number of instantiations of the same circuit module in the chip is increasing exponentially. In order to save bus address resources and adapt to various usage scenarios, the registers in the instantiation of multiple copies of the circuit module share a set of register address segments. The design method of coexistence of broadcast access mode and gated module access mode has become an important means for chips to obtain better performance and customization.

[0003] During the chip verification process, by verifying the registers, it can be ensured that the registers can correctly store and transmit data in the entire system and meet the design specifications and functional requirements.

[0004] In the traditional register verification method, the register information in each circuit module is generally maintained through a pre-generated register model. However, since the register lists of multiple instantiated circuit modules are the same, and one address in the register model can only store the attribute value of one register, the traditional register model can only be used for register verification of circuit modules that are not instantiated in multiple copies, and cannot be used for register verification of multiple instantiated circuit modules. In the prior art, if registers in multiple instantiated circuit modules in a broadcast access mode are to be verified, it is necessary to establish a special test case to test broadcast access-related functions, which reduces the real-time and coverage of the verification. When the number of instantiated circuit modules is large or the number of registers is large, the register attribute array will also increase geometrically, and the maintenance challenge of the verification platform will also increase. Summary of the invention

[0005] The present invention provides a register configuration method, device, equipment and medium, which can realize register verification of multiple instantiated circuit modules and reduce the complexity of the verification platform.

[0006] According to one aspect of the present invention, a register configuration method is provided, which is executed by a register control module and a register comparison module in a chip verification platform, and includes:

[0007] When it is determined through the register control module that the acquired register operation instruction is a register configuration transaction issued by the front door, the register operation instruction is sent to the register model, and the register information of the register to be configured returned by the register model is acquired;

[0008] Generate a register configuration transaction according to the register information and the register operation instruction through a register control module, and send the register configuration transaction to the system under test so that the system under test can perform attribute configuration on the register to be configured;

[0009] By means of a register control module, updating the attribute of the register to be configured in the register model or the additional register model according to the register information and the register operation instruction;

[0010] Through the register comparison module, when the system under test is monitored to perform register configuration operations, attribute comparison is performed according to the interface information, register model and additional register model of the system under test.

[0011] According to another aspect of the present invention, a register configuration device is provided, which is executed by a register control module and a register comparison module in a chip verification platform, and includes:

[0012] A register information acquisition unit, configured to send the acquired register operation instruction to the register model through the register control module when determining that the acquired register operation instruction is a register configuration transaction issued by the front door, and acquire register information of the register to be configured returned by the register model;

[0013] A configuration transaction issuing unit, configured to generate a register configuration transaction according to the register information and the register operation instruction through a register control module, and send the register configuration transaction to the system under test so that the system under test can perform attribute configuration on the register to be configured;

[0014] A register attribute maintenance unit, configured to update the attribute of the register to be configured in the register model or the additional register model according to the register information and the register operation instruction through the register control module;

[0015] The attribute comparison unit is used to perform attribute comparison according to the interface information, register model and additional register model of the system under test through the register comparison module when monitoring the system under test to perform register configuration operation.

[0016] According to another aspect of the present invention, an electronic device is provided, the electronic device comprising:

[0017] at least one processor; and

[0018] a memory communicatively connected to the at least one processor; wherein,

[0019] The memory stores a computer program executable by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the register configuration method described in any embodiment of the present invention.

[0020] According to another aspect of the present invention, a computer-readable storage medium is provided, wherein the computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the register configuration method described in any embodiment of the present invention when executed.

[0021] The technical solution of the embodiment of the present invention is to send the register operation instruction to the register model and obtain the register information through the register control module when it is determined that the register configuration transaction sent by the front door is obtained, generate the register configuration transaction through the register control module, and send the register configuration transaction to the system to be tested, update the attributes of the register to be configured in the register model or the additional register model through the register control module, and perform attribute comparison according to the interface information, register model and additional register model of the system to be tested when the system to be tested is monitored to perform the register configuration operation through the register comparison module. The method does not affect the use of registers by the existing test platform, is compatible with the original register access method, has portability and promotion, and can replace test cases, simplifies the complexity of the test platform, and makes the overall architecture of the test platform clearer. The register information can be monitored in real time, which improves the accuracy and speed of register verification, and effectively solves the difficult problem of verifying the coexistence of a set of register models and register address segments, broadcast access methods and gating module access methods in multiple circuit modules in chip verification.

[0022] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present invention, nor are they intended to limit the scope of the present invention. Other features of the present invention will become easily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0023] In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following briefly introduces the drawings required for use in the description of the embodiments. Obviously, the drawings described below are only some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without creative work.

[0024] Figure 1 is a flow chart of a register configuration method provided according to Embodiment 1 of the present invention;

[0025] Figure 2 is a schematic diagram of the structure of a chip verification platform provided according to an embodiment of the present invention;

[0026] Figure 3 is a schematic diagram of the structure of an existing chip verification platform provided according to an embodiment of the present invention;

[0027] Figure 4 is a schematic diagram of a register model provided according to an embodiment of the present invention;

[0028] Figure 5 is a flowchart of a register configuration method for sending register configuration transactions by a front door according to a second embodiment of the present invention;

[0029] Figure 6 is a flowchart of a register configuration method for backdoor access to registers provided according to Embodiment 3 of the present invention;

[0030] Figure 7 is a structural diagram of a register configuration device provided according to a fourth embodiment of the present invention;

[0031] Figure 8 It is a structural schematic diagram of an electronic device for implementing the register configuration method according to an embodiment of the present invention. DETAILED DESCRIPTION

[0032] In order to enable those skilled in the art to better understand the scheme of the present invention, the technical scheme in the embodiments of the present invention will be clearly and completely described below in conjunction with the drawings in the embodiments of the present invention. Obviously, the described embodiments are only part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work should fall within the scope of protection of the present invention.

[0033] It should be noted that the terms "first", "second", etc. in the specification and claims of the present invention and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged where appropriate, so that the embodiments of the present invention described herein can be implemented in an order other than those illustrated or described herein. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions, for example, a process, method, system, product or device that includes a series of steps or units is not necessarily limited to those steps or units that are clearly listed, but may include other steps or units that are not clearly listed or inherent to these processes, methods, products or devices.

[0034] Embodiment 1

[0035] Figure 1This is a flow chart of a register configuration method provided in the first embodiment of the present invention. This embodiment is applicable to the case of real-time verification of register configuration in a chip. The method can be executed by a register configuration device. The register configuration device can be implemented in the form of hardware and / or software and can generally be configured in a chip verification platform with data processing functions. Figure 1 As shown, the method includes:

[0036] S110. When it is determined through the register control module that the acquired register operation instruction is a register configuration transaction issued by the front door, the register operation instruction is sent to the register model, and register information of the register to be configured returned by the register model is acquired.

[0037] Optional, Figure 2 The structure diagram of a chip verification platform provided by an embodiment of the present invention is shown in FIG. Figure 2 As shown, the chip verification platform includes a register control module, a register comparison module, a register model, an additional register model and a system to be tested.

[0038] Optionally, the system to be tested may refer to a chip to be verified, and the system to be tested includes multiple circuit modules, which may be uninstantiated multiple circuit modules or instantiated multiple circuit modules, and the circuit modules may include multiple registers. Since in most usage scenarios, the configuration values ​​of the registers in the instantiated multiple circuit modules are the same, if each instantiated multiple circuit module is assigned an independent address, it will greatly occupy the address space of the control bus and affect the address allocation. Therefore, in the currently designed chips, the register lists in the instantiated multiple circuit modules are the same.

[0039] Furthermore, the register model is generated by the verification platform according to the register list of the chip, so one address in the register model only stores the data of one register.

[0040] Figure 3 FIG. 1 is a schematic diagram of the structure of an existing chip verification platform. Figure 3As shown, the existing chip verification platform only includes a register model, a register processing module, and a system to be tested. When registers are configured according to the existing chip verification platform, the register model cannot maintain all register properties of multiple instantiated circuit modules. Therefore, in the prior art, a test case is generally established, and then an attribute array of multiple instantiated circuit modules is established in the test case to save the attribute values ​​of multiple instantiated circuit modules. However, through the test case method, it is impossible to monitor any register access in real time like the register model, which reduces the real-time and coverage of the verification. If the number of instantiated circuit modules is large or the number of registers is large, the register attribute array will increase geometrically, the complexity is high, and the maintenance challenge of the verification platform will also increase.

[0041] Figure 4 is a schematic diagram of an optional register model. Figure 4 As shown, the chip includes circuit modules A and E that are not instantiated in multiple copies, and also includes circuit modules B, C, and D that are instantiated in multiple copies. Among them, the registers of circuit modules B1, circuit modules B2, ..., and circuit modules Bn share a section of register addresses, the registers of circuit modules C1, circuit modules C2, ..., and circuit modules Cm share a section of register addresses, and the registers of circuit modules D1, circuit modules D2, ..., and circuit modules Dp share a section of register addresses.

[0042] In an optional example, when circuit module B is instantiated as circuit module B1, circuit module B2, ..., circuit module Bn, if circuit module B1 includes register 1, register 2, and register 3, then circuit module B2, ..., circuit module Bn also include register 1, register 2, and register 3. This is only for illustrative purposes.

[0043] Optionally, in order to solve the problem in the prior art that an address in a register model can only save the attribute value of one register and can only be used for register verification of circuit modules that are not instantiated in multiple copies, the present invention proposes a method of adding an additional register model to the chip verification platform to maintain the register information of multiple instantiated circuit modules through the additional register model.

[0044] Optionally, the front door sending the register configuration transaction may refer to sending the register configuration transaction to the system under test through a standardized manner such as an interface or a communication channel.

[0045] Optionally, in the register model proposed in the present invention, the register model can maintain register information and attribute values ​​of non-instantiated multiple circuit modules. At the same time, the register model also includes register information of instantiated multiple circuit modules. The register information may be information such as address, name, circuit module, whether the circuit module is an instantiated multiple circuit module, etc., but the register model does not maintain register attributes of instantiated multiple circuit modules. The additional register model is not restricted by address. The additional register model can maintain register attributes of instantiated multiple circuit modules, and the registers in the instantiated multiple circuit modules are all identified by register names. For example, the additional register can maintain circuit module B2, register x, and attribute value.

[0046] Optionally, the register operation instruction may include the name or address of the register to be configured, and may also include the attribute value to be configured of the register to be configured, so that the original attribute value of the register to be configured in the chip is replaced according to the attribute value in the register operation instruction.

[0047] Optionally, after the register control module receives the register operation instruction, the register operation instruction is sent to the register model, so that the register model obtains the register information of the register to be configured in the register model according to the register name or address in the register operation instruction, and returns the register information of the register to be configured to the register control module.

[0048] Optionally, the returned register information of the register to be configured may include the address of the register to be configured, information of the circuit module to which the register to be configured belongs, and the name of the register to be configured. If the register to be configured belongs to multiple instantiated circuit modules, the returned register information of the register to be configured may also include selection module information in the circuit module to which the register to be configured belongs.

[0049] S120 , generating a register configuration transaction according to the register information and the register operation instruction through the register control module, and sending the register configuration transaction to the system under test, so that the system under test can perform attribute configuration on the register to be configured.

[0050] Optionally, through the register control module, after obtaining the register address of the register to be configured, the target attribute values ​​of each attribute to be configured of the register to be configured can be determined according to the register operation instruction, the register address and the target attribute value can be combined to generate a register configuration transaction, and the register configuration transaction can be sent to the system to be tested, so that the system to be tested can determine the register to be configured according to the register address, and update the attribute value of the register to be configured to the target attribute value.

[0051] Optionally, for a circuit module that is instantiated in multiple copies, a selection module may be included, and the selection module may be used to configure the circuit module into a broadcast access mode or a gated module mode.

[0052] Optionally, if the circuit module is configured as a broadcast access mode, an address may correspond to a register of the same name in each of the multiple instantiated circuit modules. For example, when circuit module B is not instantiated in multiple copies, address adress_0 may correspond to register x in circuit module B. When circuit module B is instantiated into circuit module B1, circuit module B2, ..., circuit module Bn, address adress_0 may correspond to register x in each of circuit modules in circuit module B1, circuit module B2, ..., circuit module Bn.

[0053] Optionally, if the circuit module is configured as a gated module, an address only corresponds to a specified register in one of the multiple instantiated circuit modules, and the specific corresponding circuit module can also be configured through the selection module. For example, for the multiple instantiated circuit module B, the address adress_0 can be configured in the selection module to correspond to the register x in the circuit module B2.

[0054] Furthermore, if the register to be configured in the register configuration transaction received by the system under test belongs to an uninstantiated multiple circuit module, it can be configured directly according to the register address and the target attribute value of the register to be configured; if the register to be configured belongs to an instantiated multiple circuit module, and the circuit module is configured as a broadcast access mode, then each register belonging to the register address is configured according to the target attribute value; if the register to be configured belongs to an instantiated multiple circuit module, and the circuit module is configured as a broadcast access mode, then the register specified in the selection module for the register address is configured according to the target attribute value.

[0055] S130 , updating the attributes of the register to be configured in the register model or the additional register model according to the register information and the register operation instruction through the register control module.

[0056] Optionally, in order to verify the reliability and accuracy of the register configuration, it is necessary to maintain the attribute values ​​of the registers to be configured in the register model or the additional register model while sending the register configuration transaction to the system under test, so as to facilitate subsequent viewing or comparison of the register attributes.

[0057] Optionally, through the register control module, it is determined whether the register to be configured belongs to the instantiated multiple circuit modules; if not, the corresponding register is directly determined in the register model according to the register address or name, and the attribute value of the register in the register model is updated according to the target attribute value; if it does, at least one register is determined in the additional register model, and the register attribute determined in the additional register model is updated using the target attribute value.

[0058] Furthermore, if the register to be configured belongs to multiple instantiated circuit modules, then based on the information of the circuit module to which the register to be configured belongs, it is determined whether the circuit module to which the register to be configured belongs is in broadcast access mode or module selection mode. If it is a broadcast access mode, then the names of all instantiated circuit modules of the circuit module and the names of the registers to be configured are determined, and all registers in the additional register model that match the names of the instantiated circuit modules and the names of the registers to be configured are updated to target attribute values; if it is a module selection mode, it is also necessary to obtain the target instantiated circuit module corresponding to the module selection mode, and update the register corresponding to the name of the register to be configured in the target instantiated circuit module in the additional register model to the target attribute value.

[0059] S140 , when the register configuration operation of the system under test is monitored, a register comparison module performs an attribute comparison according to the interface information, register model and additional register model of the system under test.

[0060] Optionally, the register configuration operation on the interface of the system under test can be monitored in real time through the register comparison module. When the interface information in the register configuration interface of the system under test is read, it is determined that the register configuration operation of the system under test is monitored.

[0061] Optionally, when a register configuration operation is monitored, the interface information can be parsed to obtain the register properties and register address of the current configuration register in the system under test, and the register address can be sent to the register model again to obtain the register information fed back by the register model to the register comparison module.

[0062] Furthermore, after obtaining the register information, it is first necessary to determine whether it belongs to a register of multiple instantiated circuit modules. If it belongs to a register of multiple instantiated circuit modules, the backdoor reads the status of the selection register to determine whether it is a broadcast access mode or a module access mode, and then obtains the attribute values ​​of the corresponding register from the additional register model and compares them with the monitored register configuration to complete the closed-loop check of the register. If it belongs to a register of multiple circuit modules that are not instantiated, the attribute values ​​of the register in the register model are obtained and compared with the attribute values ​​obtained by parsing the interface information.

[0063] The technical solution of the embodiment of the present invention is to send the register operation instruction to the register model and obtain the register information through the register control module when it is determined that the register configuration transaction sent by the front door is obtained, generate the register configuration transaction through the register control module, and send the register configuration transaction to the system to be tested, update the attributes of the register to be configured in the register model or the additional register model through the register control module, and perform attribute comparison according to the interface information, register model and additional register model of the system to be tested when the system to be tested is monitored to perform the register configuration operation through the register comparison module. The method does not affect the use of registers by the existing test platform, is compatible with the original register access method, has portability and promotion, and can replace test cases, simplifies the complexity of the test platform, and makes the overall architecture of the test platform clearer. The register information can be monitored in real time, which improves the accuracy and speed of register verification, and effectively solves the difficult problem of verifying the coexistence of a set of register models and register address segments, broadcast access methods and gating module access methods in multiple circuit modules in chip verification.

[0064] Embodiment 2

[0065] Figure 5 This is a flow chart of a register configuration method for sending register configuration transactions by the front door provided in the second embodiment of the present invention. This embodiment specifically describes the register configuration method for sending register configuration transactions by the front door based on the above embodiments. Figure 5 As shown, the method includes:

[0066] S210. When it is determined through the register control module that the acquired register operation instruction is a register configuration transaction issued by the front door, the register operation instruction is sent to the register model, and register information of the register to be configured returned by the register model is acquired.

[0067] Optionally, the register information of the register to be configured includes the register address of the register to be configured, the first circuit module information of the first circuit module to which the register to be configured belongs, and the first register name; when the register to be configured belongs to multiple instantiated circuit modules, the register information of the register to be configured also includes the first selection module information of the first circuit module.

[0068] Optionally, the first circuit module may refer to the circuit module to which the register to be configured in the register operation instruction belongs, the first register name is the register name of the register to be configured, and the first circuit module information includes the first circuit module name and whether the first circuit module is a circuit module for routine multiple copies.

[0069] S220, determining target attribute values ​​of various attributes of the register to be configured according to the register operation instruction through the register control module, and generating a register configuration transaction according to the register address of the register to be configured and the target attribute values ​​of various attributes.

[0070] S230 . Send the register configuration transaction to the system under test through the register control module, so that the system under test can perform attribute configuration on the register to be configured.

[0071] Optionally, when a register configuration transaction is sent to the front door, the register configuration transaction is sent to the system under test through an interface in the system under test.

[0072] S240 , updating the attributes of the register to be configured in the register model or the additional register model according to the register information and the register operation instruction through the register control module.

[0073] Optionally, the chip verification platform only needs to customize an additional register list for instantiating multiple circuit modules, and then use the automated tool ralgen to generate an additional register model. The additional register model stores the attribute values ​​of the registers of each instantiated circuit module, and there is no need to manually create an array for maintenance.

[0074] The advantage of this setting is that it breaks through the address restrictions of the register model and increases the portability and maintainability of the verification platform. If there are modifications to the registers or circuit modules, you only need to modify the additional register list to complete the update of the additional register model.

[0075] Wherein, updating the attribute of the register to be configured in the register model or the additional register model through the register control module according to the register information and the register operation instruction may include any of the following:

[0076] By means of the register control module, when it is determined according to the first circuit module information that the register to be configured belongs to the uninstantiated multiple copies of the circuit module, the first register to be configured is located in the register model according to the first register name or register address, and each attribute array of the first register to be configured is updated using the target attribute value;

[0077] Through the register control module, when it is determined according to the first circuit module information that the register to be configured belongs to the instantiated multiple circuit modules, the attribute of the register to be configured is updated in the additional register model according to the register information and the register operation instruction.

[0078] Optionally, the properties of uninstantiated multiple circuit modules are maintained in the register model. The register model stores the name, address, circuit module name, whether the circuit module is an instantiated circuit module, and register attribute array of the registers in the uninstantiated multiple circuit modules. After determining the address or name of the register of the uninstantiated multiple circuit modules, the attribute array of the register can be directly located in the register model.

[0079] Optionally, the first register name is a combination of a module name of a circuit module to which the register belongs and a register name, for example, circuit module B2 register x. This naming method can accurately locate the register in the register model and the additional register model.

[0080] Optionally, if the register to be configured belongs to a circuit module that has not been instantiated in multiple copies, the first register to be configured may be directly located in the register model according to the first register name or register address.

[0081] Among them, when it is determined through the register control module that the register to be configured belongs to the instantiated multiple circuit modules according to the first circuit module information, the attribute of the register to be configured is updated in the additional register model according to the register information and the register operation instruction, which may include:

[0082] By means of the register control module, when it is determined according to the first circuit module information that the register to be configured belongs to the instantiated multiple copies of the circuit module, the register configuration mode of the first circuit module is determined according to the first selection module information to be the broadcast access mode or the gated module mode;

[0083] Through the register control module, if the register configuration mode is a broadcast access mode, multiple second registers to be configured are located in the additional register model according to the first register name, and each attribute array of each second register to be configured is updated respectively by using the target attribute value; wherein each second register to be configured belongs to each instantiated circuit module of the first circuit module;

[0084] Through the register control module, if the register configuration mode is the selection module mode, the first instantiated circuit module in the first circuit module is determined according to the first selection module information, and the third register to be configured is located in the additional register according to the first register name and the first instantiated circuit module, and the attribute arrays of the third register to be configured are updated using the target attribute value.

[0085] Optionally, the register model also maintains the address, name, name of the circuit module to which each register of the instantiated circuit module belongs, whether the circuit module is an instantiated circuit module, and whether the register configuration mode is a broadcast access mode or a gated module mode. If it is a gated module mode, it also includes the module name specified by the gated module. After obtaining the above information in the register model, the attribute array of the register can be located in the additional register model. In the additional register model, each register information includes the register name and the attribute array.

[0086] Optionally, if it is for multiple instantiated circuit modules, a register address corresponds to a register with the same name in each of the multiple instantiated circuit modules, and the first register name may include a specified register in each of the multiple instantiated circuit modules, for example, it may be circuit module B1 register x, circuit module B2 register x,..., circuit module Bn register x.

[0087] Optionally, if the access mode is broadcast, each register belonging to the first register name in the additional register model is determined as the second register to be configured.

[0088] Optionally, if it is a module selection method, the first instantiated circuit module specified in the instantiated multiple circuit modules is determined according to the first selection module information, for example, the circuit module B2 in each instantiated circuit module of the specified circuit module B. At this time, the first register name matching the first segment instantiated circuit module is determined in the first register name, for example, the circuit module B2 register x, and then the third register to be configured is determined in the additional register according to the first register name matching the first instantiated circuit module.

[0089] S250. Through the register comparison module, when it is monitored that the system under test is performing a register configuration operation, the interface information of the system under test is parsed to obtain the target address of the current configuration register in the system under test and the first attribute value of each attribute of the current configuration register, and send the target address to the register model to obtain the register information of the current configuration register returned by the register model.

[0090] Optionally, the first attribute value may refer to the attribute value obtained by parsing the interface information, and the target address may refer to the address of the current configuration register of the system to be tested. After sending the target address to the register model, the register information of the current configuration register fed back by the register model may be obtained, which may include the name and address of the current configuration register, the name of the circuit module to which it belongs, and whether the circuit module is a multiple-copy circuit module for instantiation. If it is a multiple-copy circuit module for instantiation, the register information of the current configuration register also includes whether the register configuration mode is a broadcast access mode or a gate module mode. If it is a gate module mode, it also includes the module name specified by the gate module.

[0091] S260 . Performing attribute comparison with the register model or the additional register model according to the register information of the current configuration register and the first attribute value through the register comparison module.

[0092] Among them, the register information of the current configuration register includes the second register name of the current configuration register, the second circuit module information of the second circuit module to which the current configuration register belongs, and the second selection module information of the second circuit module; if the second circuit module belongs to an uninstantiated multiple circuit module, the register information of the current configuration register also includes the second attribute value of each attribute of the current configuration register stored in the register module.

[0093] Optionally, performing attribute comparison with the register model or the additional register model according to the register information of the current configuration register and the first attribute value by the register comparison module may include any of the following:

[0094] By the register comparison module, when it is determined according to the second circuit module information that the current configuration register belongs to a circuit module that has not been instantiated multiple times, the first attribute value is compared with the second attribute value to obtain a comparison result of the register configuration;

[0095] When it is determined through the register comparison module that the current configuration register belongs to the instantiated multiple circuit modules according to the second circuit module information, a property comparison is performed with the additional register model according to the register information of the current configuration register and the first property value.

[0096] Optionally, if the currently configured register belongs to a circuit module that is not instantiated in multiple copies, the second attribute value of the register can be directly used in the register model. The second attribute value is the attribute value of the register saved in the register model. If the first attribute value is the same as the second attribute value, it is determined that the configuration value of the register in the register model is the same as that in the system to be tested, thereby completing a closed-loop check of the register configuration.

[0097] Optionally, when it is determined through the register comparison module that the current configuration register belongs to the instantiated multiple circuit modules according to the second circuit module information, performing attribute comparison with the additional register model according to the register information of the current configuration register and the first attribute value may include:

[0098] When it is determined by the register comparison module that the current configuration register belongs to the instantiated multiple copies of the circuit module according to the second circuit module information, the register configuration mode of the second circuit module is determined to be the broadcast access mode or the gated module mode according to the second selection module information;

[0099] Through the register comparison module, if the access mode is broadcast, the attribute values ​​of multiple first registers are obtained in the additional register model according to the second register name, and the attribute values ​​of each first register are respectively compared with the first attribute value to obtain the comparison result of the register configuration; wherein each first register belongs to each instantiated circuit module of the second circuit module;

[0100] Through the register comparison module, if it is a selection module mode, the second instantiated circuit module in the second circuit module is determined according to the second selection module information, and the second register is located in the additional register according to the second register name and the second instantiated circuit module, and the attribute value of the second register is compared with the first attribute value to obtain the comparison result of the register configuration.

[0101] Optionally, if the currently configured register belongs to a circuit module that is instantiated in multiple copies, a corresponding register is determined in the additional register model based on register information of the currently configured register, and then the attribute value stored in the additional register model is compared with the first attribute value.

[0102] Optionally, the manner of determining the current configuration register in the additional register model according to the register information of the current configuration register is similar to the manner of determining the register to be configured in the additional register model in step S240, and is not described in detail here.

[0103] The technical solution of the embodiment of the present invention uses a register control module. When it is determined that a register configuration transaction is obtained by the front door, the register operation instruction is sent to the register model and the register information is obtained. The register control module is used to generate a register configuration transaction and the register configuration transaction is sent to the system to be tested. The register control module is used to update the attributes of the register to be configured in the register model or the additional register model. When the system to be tested is monitored to perform a register configuration operation, the register comparison module is used to perform attribute comparison according to the interface information, register model and additional register model of the system to be tested. The method does not affect the use of registers by the existing test platform, is compatible with the original register access method, has portability and promotion, and can replace test cases, simplifies the complexity of the test platform, and makes the overall architecture of the test platform clearer. The register information can be monitored in real time, which improves the accuracy and speed of register verification, and effectively solves the difficult problem of verifying the coexistence of a set of register models and register address segments, broadcast access methods and gating module access methods in multiple circuit modules in chip verification.

[0104] Embodiment 3

[0105] Figure 6This is a flowchart of a register configuration method for backdoor access to registers provided in Embodiment 3 of the present invention. Based on the above embodiments, this embodiment specifically describes a register configuration method for backdoor access to registers. Figure 6 As shown, the method includes:

[0106] S310. When it is determined through the register control module that the acquired register operation instruction is a backdoor access register, the register operation instruction is sent to the register model, and the second register name of the register to be configured returned by the register model is acquired.

[0107] Optionally, backdoor access to a register may refer to directly obtaining a backdoor access address of a register, thereby directly configuring a property value of the register through the backdoor access address of the register without modifying the register configuration through an interface.

[0108] Optionally, since there is only one register group in the register model, only one register group can be accessed when implementing backdoor access, and backdoor access cannot be performed on other register groups. The backdoor access path is a string type. If backdoor access is to be implemented, it is necessary to save the backdoor access paths of all registers of multiple instantiated circuit modules, such as circuit module B1, circuit module B2,..., circuit module Bn, circuit module C1, circuit module C2,..., circuit module Cm, circuit module D1, circuit module D2,..., circuit module Dp. However, the number of instantiated multiple circuit modules and registers actually set in existing chips is large. If the backdoor access path is saved manually, the workload is extremely large, and it is necessary to go through multi-layer selection and judgment, which is not conducive to the maintenance of the verification platform.

[0109] In the embodiment described in the present invention, the additional register model can provide a backdoor access path for the corresponding registers of each of the instantiated multiple circuit modules. When the register control module receives a module register operation, after instruction analysis and processing, if the operation type is backdoor access, the backdoor access path of the corresponding module register will be obtained directly from the additional register model. The backdoor access operation is completed by calling the built-in backdoor access function of the UVM (Universal Verification Methodology) function library. The introduction of the additional register model solves the problem of the backdoor access path.

[0110] It is understandable that if the backdoor access path is saved in the prior art, then when obtaining the backdoor access path, it is necessary to traverse all the register backdoor access paths to determine the backdoor access path of the register to be configured. By instantiating an additional register model, not only is the problem that the existing register model cannot save the backdoor access paths of each register in multiple circuit modules solved, but also the backdoor access path corresponding to the name can be quickly obtained after the second register name is entered.

[0111] Optionally, the second register name may include the circuit module name to which the register to be configured belongs and the register name.

[0112] S320. Obtain a backdoor access address corresponding to the second register name in the additional register model through the register control module, and determine second attribute values ​​of various attributes of the register to be configured according to the register operation instruction.

[0113] S330 , calling the backdoor access function through the register control module, and performing attribute configuration on the register to be configured in the system under test according to the backdoor access address and the second attribute value.

[0114] Optionally, the backdoor access function may be a backdoor access function built into the UVM function library.

[0115] Optionally, for the backdoor access register, after obtaining the backdoor access address, the register may be directly accessed according to the backdoor access address, and the attribute value of the register may be updated to the second attribute value.

[0116] The technical solution of the embodiment of the present invention utilizes a register control module. When it is determined that the acquired register operation instruction is a backdoor access register, the register operation instruction is sent to the register model, and the second register name of the register to be configured returned by the register model is obtained, and the backdoor access address corresponding to the second register name is obtained in the additional register model, and according to the register operation instruction, the second attribute value of each attribute of the register to be configured is determined, and the backdoor access function is called. According to the backdoor access address and the second attribute value, the attribute configuration of the register to be configured in the system under test is performed. The backdoor access path of the registers in multiple circuit modules can be quickly obtained through the additional register model. For chips with a large number of registers, the workload of chip designers can be greatly reduced. In addition, the backdoor access path can be quickly obtained during the register configuration process, thereby improving the register configuration efficiency.

[0117] Embodiment 4

[0118] Figure 7 This is a schematic diagram of the structure of a register configuration device provided by Embodiment 4 of the present invention. Figure 7 As shown, the device includes: a register information acquisition unit 410 , a configuration transaction issuing unit 420 , a register attribute maintenance unit 430 and an attribute comparison unit 440 .

[0119] The register information acquisition unit 410 is used to send the acquired register operation instruction to the register model through the register control module when it is determined that the acquired register operation instruction is a register configuration transaction issued by the front door, and acquire the register information of the register to be configured returned by the register model.

[0120] The configuration transaction sending unit 420 is used to generate a register configuration transaction according to the register information and the register operation instruction through the register control module, and send the register configuration transaction to the system under test so that the system under test can perform attribute configuration on the register to be configured.

[0121] The register attribute maintenance unit 430 is used to update the attribute of the register to be configured in the register model or the additional register model according to the register information and the register operation instruction through the register control module.

[0122] The property comparison unit 440 is used to perform property comparison according to the interface information, register model and additional register model of the system under test through the register comparison module when monitoring the system under test to perform register configuration operation.

[0123] The technical solution of the embodiment of the present invention is to send the register operation instruction to the register model and obtain the register information through the register control module when it is determined that the register configuration transaction sent by the front door is obtained, generate the register configuration transaction through the register control module, and send the register configuration transaction to the system to be tested, update the attributes of the register to be configured in the register model or the additional register model through the register control module, and perform attribute comparison according to the interface information, register model and additional register model of the system to be tested when the system to be tested is monitored to perform the register configuration operation through the register comparison module. The method does not affect the use of registers by the existing test platform, is compatible with the original register access method, has portability and promotion, and can replace test cases, simplifies the complexity of the test platform, and makes the overall architecture of the test platform clearer. The register information can be monitored in real time, which improves the accuracy and speed of register verification, and effectively solves the difficult problem of verifying the coexistence of a set of register models and register address segments, broadcast access methods and gating module access methods in multiple circuit modules in chip verification.

[0124] On the basis of the above embodiments, the register information of the register to be configured includes the register address of the register to be configured;

[0125] The configuration transaction issuing unit 420 may be specifically used for:

[0126] The register control module determines the target attribute values ​​of various attributes of the register to be configured according to the register operation instruction, and generates a register configuration transaction according to the register address of the register to be configured and the target attribute values ​​of various attributes.

[0127] On the basis of the above embodiments, the register information of the register to be configured further includes first circuit module information of the first circuit module to which the register to be configured belongs and a first register name;

[0128] The register attribute maintenance unit 430 may include:

[0129] The uninstantiated multiple circuit module register maintenance subunit is used to locate the first register to be configured in the register model according to the first register name or register address, and update each attribute array of the first register to be configured by using the target attribute value, when it is determined that the register to be configured belongs to the uninstantiated multiple circuit modules according to the first circuit module information.

[0130] The instantiated circuit module register maintenance subunit is used to update the properties of the register to be configured in the additional register model according to the register information and the register operation instruction through the register control module when it is determined that the register to be configured belongs to multiple instantiated circuit modules according to the first circuit module information.

[0131] On the basis of the above embodiments, when the register to be configured belongs to multiple instantiated circuit modules, the register information of the register to be configured further includes the first selection module information of the first circuit module;

[0132] The instantiated circuit module register maintenance subunit can be specifically used for:

[0133] By means of the register control module, when it is determined according to the first circuit module information that the register to be configured belongs to the instantiated multiple copies of the circuit module, it is determined according to the first selection module information that the register configuration mode of the first circuit module is the broadcast access mode or the gated module mode;

[0134] Through the register control module, if the register configuration mode is a broadcast access mode, multiple second registers to be configured are located in the additional register model according to the first register name, and the attribute arrays of each second register to be configured are updated respectively by using the target attribute value; wherein each second register to be configured belongs to each instantiated circuit module of the first circuit module;

[0135] Through the register control module, if the register configuration mode is the selection module mode, the first instantiated circuit module in the first circuit module is determined according to the first selection module information, and the third register to be configured is located in the additional register according to the first register name and the first instantiated circuit module, and the attribute arrays of the third register to be configured are updated using the target attribute value.

[0136] Based on the above embodiments, the attribute comparison unit 440 may include:

[0137] The interface information parsing subunit is used to parse the interface information of the system to be tested through the register comparison module, obtain the target address of the current configuration register in the system to be tested and the first attribute value of each attribute of the current configuration register, and send the target address to the register model to obtain the register information of the current configuration register returned by the register model;

[0138] An information comparison subunit, configured to perform attribute comparison with a register model or an additional register model according to register information of a currently configured register and a first attribute value through a register comparison module;

[0139] Among them, the register information of the current configuration register includes the second register name of the current configuration register, the second circuit module information of the second circuit module to which the current configuration register belongs, and the second selection module information of the second circuit module; if the second circuit module belongs to an uninstantiated multiple circuit module, the register information of the current configuration register also includes the second attribute value of each attribute of the current configuration register stored in the register module.

[0140] Based on the above embodiments, the information comparison subunit can be used to perform any of the following:

[0141] When it is determined by the register comparison module that the current configuration register belongs to a circuit module that has not been instantiated multiple times according to the second circuit module information, the first attribute value is compared with the second attribute value to obtain a comparison result of the register configuration;

[0142] When it is determined through the register comparison module that the current configuration register belongs to the instantiated multiple circuit modules according to the second circuit module information, a property comparison is performed with the additional register model according to the register information of the current configuration register and the first property value.

[0143] Based on the above embodiments, the information comparison subunit can be further specifically used for:

[0144] When it is determined by the register comparison module that the current configuration register belongs to the instantiated multiple copies of the circuit module according to the second circuit module information, it is determined that the register configuration mode of the second circuit module is the broadcast access mode or the gated module mode according to the second selection module information;

[0145] Through the register comparison module, if the access mode is broadcast, the attribute values ​​of multiple first registers are obtained in the additional register model according to the second register name, and the attribute values ​​of each first register are respectively compared with the first attribute value to obtain the comparison result of the register configuration; wherein each first register belongs to each instantiated circuit module of the second circuit module;

[0146] Through the register comparison module, if it is a selection module mode, the second instantiated circuit module in the second circuit module is determined according to the second selection module information, and the second register is located in the additional register according to the second register name and the second instantiated circuit module, and the attribute value of the second register is compared with the first attribute value to obtain the comparison result of the register configuration.

[0147] Based on the above embodiments, a backdoor access unit may be further included, which is used to:

[0148] When it is determined through the register control module that the acquired register operation instruction is a backdoor access register, the register operation instruction is sent to the register model, and a second register name of the register to be configured returned by the register model is acquired;

[0149] Obtaining, through the register control module, a backdoor access address corresponding to the second register name in the additional register model, and determining, according to the register operation instruction, second attribute values ​​of various attributes of the register to be configured;

[0150] The backdoor access function is called through the register control module, and the property configuration is performed on the register to be configured in the system under test according to the backdoor access address and the second property value.

[0151] The register configuration device provided in the embodiment of the present invention can execute the register configuration method provided in any embodiment of the present invention, and has the corresponding functional modules and beneficial effects of the execution method.

[0152] Embodiment 5

[0153] Figure 8A schematic diagram of the structure of an electronic device 10 that can be used to implement an embodiment of the present invention is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital processing, cellular phones, smart phones, wearable devices (such as helmets, glasses, watches, etc.) and other similar computing devices. The components shown herein, their connections and relationships, and their functions are merely examples and are not intended to limit the implementation of the present invention described and / or required herein.

[0154] like Figure 8 As shown, the electronic device 10 includes at least one processor 11, and a memory connected to the at least one processor 11, such as a read-only memory (ROM) 12, a random access memory (RAM) 13, etc., wherein the memory stores a computer program that can be executed by at least one processor, and the processor 11 can perform various appropriate actions and processes according to the computer program stored in the read-only memory (ROM) 12 or the computer program loaded from the storage unit 18 to the random access memory (RAM) 13. In the RAM 13, various programs and data required for the operation of the electronic device 10 can also be stored. The processor 11, the ROM 12, and the RAM 13 are connected to each other through a bus 14. The input / output (I / O) interface 15 is also connected to the bus 14.

[0155] A number of components in the electronic device 10 are connected to the I / O interface 15, including: an input unit 16, such as a keyboard, a mouse, etc.; an output unit 17, such as various types of displays, speakers, etc.; a storage unit 18, such as a disk, an optical disk, etc.; and a communication unit 19, such as a network card, a modem, a wireless communication transceiver, etc. The communication unit 19 allows the electronic device 10 to exchange information / data with other devices through a computer network such as the Internet and / or various telecommunication networks.

[0156] The processor 11 may be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the processor 11 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various special artificial intelligence (AI) computing chips, various processors running machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The processor 11 executes the various methods and processes described above, such as the register configuration method described in the embodiment of the present invention. That is:

[0157] When it is determined through the register control module that the acquired register operation instruction is a register configuration transaction issued by the front door, the register operation instruction is sent to the register model, and the register information of the register to be configured returned by the register model is acquired;

[0158] Generate a register configuration transaction according to the register information and the register operation instruction through a register control module, and send the register configuration transaction to the system under test so that the system under test can perform attribute configuration on the register to be configured;

[0159] By means of a register control module, updating the attribute of the register to be configured in the register model or the additional register model according to the register information and the register operation instruction;

[0160] Through the register comparison module, when the system under test is monitored to perform register configuration operations, attribute comparison is performed according to the interface information, register model and additional register model of the system under test.

[0161] In some embodiments, the register configuration method may be implemented as a computer program, which is tangibly contained in a computer-readable storage medium, such as a storage unit 18. In some embodiments, part or all of the computer program may be loaded and / or installed on the electronic device 10 via the ROM 12 and / or the communication unit 19. When the computer program is loaded into the RAM 13 and executed by the processor 11, one or more steps of the register configuration method described above may be performed. Alternatively, in other embodiments, the processor 11 may be configured to perform the register configuration method in any other appropriate manner (e.g., by means of firmware).

[0162] Various implementations of the systems and techniques described above herein can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), systems on chips (SOCs), load programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various implementations can include: being implemented in one or more computer programs that can be executed and / or interpreted on a programmable system including at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0163] Computer programs for implementing the methods of the present invention may be written in any combination of one or more programming languages. These computer programs may be provided to a processor of a general-purpose computer, a special-purpose computer, or other programmable data processing device, so that when the computer program is executed by the processor, the functions / operations specified in the flow chart and / or block diagram are implemented. The computer program may be executed entirely on the machine, partially on the machine, partially on the machine and partially on a remote machine as a stand-alone software package, or entirely on a remote machine or server.

[0164] In the context of the present invention, a computer-readable storage medium may be a tangible medium that may contain or store a computer program for use by or in conjunction with an instruction execution system, device, or equipment. A computer-readable storage medium may include, but is not limited to, electronic, magnetic, optical, electromagnetic, infrared, or semiconductor systems, devices, or equipment, or any suitable combination of the foregoing. Alternatively, a computer-readable storage medium may be a machine-readable signal medium. A more specific example of a machine-readable storage medium may include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0165] To provide interaction with a user, the systems and techniques described herein may be implemented on an electronic device having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and a pointing device (e.g., a mouse or trackball) through which the user can provide input to the electronic device. Other types of devices may also be used to provide interaction with the user; for example, the feedback provided to the user may be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user may be received in any form (including acoustic input, voice input, or tactile input).

[0166] The systems and techniques described herein may be implemented in a computing system that includes backend components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes frontend components (e.g., a user computer with a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such backend components, middleware components, or frontend components. The components of the system may be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include: a local area network (LAN), a wide area network (WAN), a blockchain network, and the Internet.

[0167] A computing system may include a client and a server. The client and the server are generally remote from each other and usually interact through a communication network. The client and server relationship is generated by computer programs running on the corresponding computers and having a client-server relationship with each other. The server may be a cloud server, also known as a cloud computing server or cloud host, which is a host product in the cloud computing service system to solve the defects of difficult management and weak business scalability in traditional physical hosts and VPS services.

[0168] It should be understood that the various forms of processes shown above can be used to reorder, add or delete steps. For example, the steps described in the present invention can be executed in parallel, sequentially or in different orders, as long as the desired results of the technical solution of the present invention can be achieved, and this document does not limit this.

[0169] The above specific implementations do not constitute a limitation on the protection scope of the present invention. It should be understood by those skilled in the art that various modifications, combinations, sub-combinations and substitutions can be made according to design requirements and other factors. Any modification, equivalent substitution and improvement made within the spirit and principle of the present invention should be included in the protection scope of the present invention.

Claims

1. A register configuration method, characterized in that: The register control module and register comparison module in the chip verification platform cooperate to execute the following operations: When it is determined through the register control module that the acquired register operation instruction is a register configuration transaction issued by the front door, the register operation instruction is sent to the register model, and the register information of the register to be configured returned by the register model is acquired; Generate a register configuration transaction according to the register information and the register operation instruction through a register control module, and send the register configuration transaction to the system under test so that the system under test can perform attribute configuration on the register to be configured; By means of a register control module, updating the attribute of the register to be configured in the register model or the additional register model according to the register information and the register operation instruction; Through the register comparison module, when the system under test is monitored to perform register configuration operations, attribute comparison is performed according to the interface information, register model and additional register model of the system under test.

2. The method according to claim 1, characterized in that The register information of the register to be configured includes the register address of the register to be configured; Generate a register configuration transaction according to the register information and the register operation instruction, including: The register control module determines the target attribute values ​​of the attributes of the register to be configured according to the register operation instruction, and generates a register configuration transaction according to the register address of the register to be configured and the target attribute values ​​of the attributes.

3. The method according to claim 2, characterized in that The register information of the register to be configured also includes first circuit module information of the first circuit module to which the register to be configured belongs and a first register name; By means of a register control module, according to the register information and the register operation instruction, updating the attribute of the register to be configured in the register model or the additional register model includes any of the following: By means of the register control module, when it is determined according to the first circuit module information that the register to be configured belongs to a circuit module that has not been instantiated in multiple copies, the first register to be configured is located in the register model according to the first register name or register address, and each attribute array of the first register to be configured is updated using the target attribute value; Through the register control module, when it is determined according to the first circuit module information that the register to be configured belongs to multiple instantiated circuit modules, the attribute of the register to be configured is updated in the additional register model according to the register information and the register operation instruction.

4. The method according to claim 3, characterized in that When the register to be configured belongs to multiple instantiated circuit modules, the register information of the register to be configured also includes first selection module information of the first circuit module; When it is determined through the register control module that the register to be configured belongs to the instantiated multiple copies of the circuit module according to the first circuit module information, the attribute of the register to be configured is updated in the additional register model according to the register information and the register operation instruction, including: By means of the register control module, when it is determined according to the first circuit module information that the register to be configured belongs to the instantiated multiple copies of the circuit module, it is determined according to the first selection module information that the register configuration mode of the first circuit module is the broadcast access mode or the gated module mode; Through the register control module, if the register configuration mode is a broadcast access mode, multiple second registers to be configured are located in the additional register model according to the first register name, and the attribute arrays of each second register to be configured are updated respectively by using the target attribute value; wherein each second register to be configured belongs to each instantiated circuit module of the first circuit module; Through the register control module, if the register configuration mode is the selection module mode, the first instantiated circuit module in the first circuit module is determined according to the first selection module information, and the third register to be configured is located in the additional register according to the first register name and the first instantiated circuit module, and the attribute arrays of the third register to be configured are updated using the target attribute value.

5. The method according to any one of claims 1 to 4, characterized in that: Perform attribute comparison based on the interface information, register model, and additional register model of the system under test, including: The interface information of the system to be tested is parsed through the register comparison module to obtain the target address of the current configuration register in the system to be tested and the first attribute value of each attribute of the current configuration register, and the target address is sent to the register model to obtain the register information of the current configuration register returned by the register model; By means of a register comparison module, performing attribute comparison with a register model or an additional register model according to register information of a current configuration register and a first attribute value; Among them, the register information of the current configuration register includes the second register name of the current configuration register, the second circuit module information of the second circuit module to which the current configuration register belongs, and the second selection module information of the second circuit module; if the second circuit module belongs to an uninstantiated multiple circuit module, the register information of the current configuration register also includes the second attribute value of each attribute of the current configuration register stored in the register module.

6. The method according to claim 5, characterized in that By means of the register comparison module, according to the register information of the current configuration register and the first attribute value, an attribute comparison is performed with the register model or the additional register model, including any of the following: When it is determined by the register comparison module that the current configuration register belongs to a circuit module that has not been instantiated multiple times according to the second circuit module information, the first attribute value is compared with the second attribute value to obtain a comparison result of the register configuration; When it is determined through the register comparison module that the current configuration register belongs to the instantiated multiple circuit modules according to the second circuit module information, a property comparison is performed with the additional register model according to the register information of the current configuration register and the first property value.

7. The method according to claim 6, characterized in that When it is determined by the register comparison module that the current configuration register belongs to the instantiated multiple circuit modules according to the second circuit module information, a property comparison is performed with the additional register model according to the register information of the current configuration register and the first property value, including: When it is determined by the register comparison module that the current configuration register belongs to the instantiated multiple copies of the circuit module according to the second circuit module information, it is determined that the register configuration mode of the second circuit module is the broadcast access mode or the gated module mode according to the second selection module information; Through the register comparison module, if the access mode is broadcast, the attribute values ​​of multiple first registers are obtained in the additional register model according to the second register name, and the attribute values ​​of each first register are respectively compared with the first attribute value to obtain the comparison result of the register configuration; wherein each first register belongs to each instantiated circuit module of the second circuit module; Through the register comparison module, if it is a selection module mode, the second instantiated circuit module in the second circuit module is determined according to the second selection module information, and the second register is located in the additional register according to the second register name and the second instantiated circuit module, and the attribute value of the second register is compared with the first attribute value to obtain the comparison result of the register configuration.

8. The method according to claim 1, characterized in that Also includes: When it is determined through the register control module that the acquired register operation instruction is a backdoor access register, the register operation instruction is sent to the register model, and a second register name of the register to be configured returned by the register model is acquired; Obtaining, through the register control module, a backdoor access address corresponding to the second register name in the additional register model, and determining, according to the register operation instruction, second attribute values ​​of various attributes of the register to be configured; The backdoor access function is called through the register control module, and the property configuration is performed on the register to be configured in the system under test according to the backdoor access address and the second property value.

9. A register configuration device, characterized in that: The register control module and register comparison module in the chip verification platform cooperate to execute the following operations: A register information acquisition unit, configured to send the acquired register operation instruction to the register model through the register control module when determining that the acquired register operation instruction is a register configuration transaction issued by the front door, and acquire register information of the register to be configured returned by the register model; A configuration transaction issuing unit, configured to generate a register configuration transaction according to the register information and the register operation instruction through a register control module, and send the register configuration transaction to the system under test so that the system under test can perform attribute configuration on the register to be configured; A register attribute maintenance unit, configured to update the attribute of the register to be configured in the register model or the additional register model according to the register information and the register operation instruction through the register control module; The attribute comparison unit is used to perform attribute comparison according to the interface information, register model and additional register model of the system under test through the register comparison module when monitoring the system under test to perform register configuration operation.

10. An electronic device, characterized in that: The electronic device comprises: at least one processor; and a memory communicatively connected to the at least one processor; wherein, The memory stores a computer program that can be executed by the at least one processor, and the computer program is executed by the at least one processor so that the at least one processor can execute the register configuration method according to any one of claims 1 to 8 of the present invention.

11. A computer-readable storage medium, characterized in that: The computer-readable storage medium stores computer instructions, and the computer instructions are used to enable a processor to implement the register configuration method according to any one of claims 1 to 8 when executed.

Citation Information

Patent Citations

  • Chip prototype verification method, device, equipment and medium

    CN112560372A

  • Method and device for sharing register model by multiple hosts and electronic equipment

    CN113835757A

  • System-level verification method, system and equipment of chip register and storage medium

    CN114330177A

  • Method for verifying qualification of chip register, chip and electronic equipment

    CN117215857A

  • Register test method and device

    CN117574812A