CN110618929B - Verification platform and verification method of symmetric encryption algorithm based on UVM - Google Patents

Verification platform and verification method of symmetric encryption algorithm based on UVM Download PDF

Info

Publication number
CN110618929B
CN110618929B CN201910709077.9A CN201910709077A CN110618929B CN 110618929 B CN110618929 B CN 110618929B CN 201910709077 A CN201910709077 A CN 201910709077A CN 110618929 B CN110618929 B CN 110618929B
Authority
CN
China
Prior art keywords
verification
uvm
sequence
data
reference model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201910709077.9A
Other languages
Chinese (zh)
Other versions
CN110618929A (en
Inventor
张景龙
熊晓明
陆江城
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangdong University of Technology
Original Assignee
Guangdong University of Technology
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Guangdong University of Technology filed Critical Guangdong University of Technology
Priority to CN201910709077.9A priority Critical patent/CN110618929B/en
Publication of CN110618929A publication Critical patent/CN110618929A/en
Application granted granted Critical
Publication of CN110618929B publication Critical patent/CN110618929B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3664Environments for testing or debugging software
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Tests Of Electronic Circuits (AREA)

Abstract

The invention discloses a verification platform of a symmetric encryption algorithm based on UVM, which comprises a top layer, a test case and a verification environment. The verification environment is derived from uvm _ env, required components are integrated and connected to work, the required components comprise a register model, a sequence generator, a sequence, transaction data, a driver, a coverage rate statistic device, an input monitor, an output monitor, a score board, a reference model, an input interface and an output interface, and the verification environment comprises: generating transaction data through the sequence, transmitting the random excitation to the reference model and the DUT module through driving, then transmitting the operation results of the reference model and the DUT module to the scoring board, and performing data comparison and judging on the functional verification condition by the scoring board, and performing coverage rate check through the coverage rate model to ensure that the functional verification simulation is normal. The invention does not limit the symmetric encryption algorithm, can realize the function verification of various encrypted symmetric algorithms, and the verification platform has good reusability and reusability.

Description

Verification platform and verification method of symmetric encryption algorithm based on UVM
Technical Field
The invention relates to the field of cryptographic algorithm verification, in particular to a verification platform and a verification method of a symmetric encryption algorithm based on UVM.
Background
The current integrated circuit industry is rapidly increased in China, the manufacturing technology of integrated circuits is continuously developed, the integration level of chips is rapidly improved, the gate level scale of the chips is developed from ten thousand gate levels to millions of gate levels at present many years, and the functional complexity which can be realized on the chips even exceeds the development speed of the integration level predicted by the moore's law. Due to the rapid increase of the functional complexity of the chip, the verification work occupies most of the whole development period, and the time to market of the chip is seriously influenced.
The traditional verification method is that a simple verification platform is built by using verilog language, the verification structure lacks hierarchical design, and meanwhile, the project verification engineering is poor in reusability, so that development and maintenance among projects are difficult and the reusability is low. The traditional verification method can not meet the verification requirement of the current design more and more, and the appearance of the universal verification methodology aims to improve the verification capability of the current verification method.
The universal verification methodology introduced a new verification language, systemVerilog (SV). The SV comprises RTL design, test platform design, assertion and coverage rate statistical functions, and the general verification methodology is a development set of SV language and comprises a plurality of verification function objects to realize a plurality of verification methods. By using the universal verification methodology, the module verification reusability can be enhanced, the chip development efficiency can be improved, and the chip development period can be shortened.
Currently, there are three general verification methodologies based on systemveilog: VMM, OVM, and UVM. Wherein the UVM inherits most of the advantages of OVM while adopting register solution RAL of Synopsys in VMM. UVM overcomes the defects of OVM and VMM, represents the development direction of the current general verification methodology, and is the mainstream general verification methodology in the industry at present.
The conventional verification symmetric cryptographic algorithm is mainly operated on an FPGA hardware platform for functional verification through a verilog writing verification platform method. Meanwhile, the method is suitable for directional testing, and non-directional testing is difficult to perform through various different test vectors, so that the efficiency of verifying the symmetric encryption algorithm is low, and reuse cannot be realized.
Disclosure of Invention
The invention aims to provide a verification platform of a symmetrical encryption algorithm based on UVM, which improves the verification capability and reusability of the symmetrical encryption algorithm.
A further object of the invention is a method for verification of a UVM-based symmetric encryption algorithm.
In order to solve the technical problems, the technical scheme of the invention is as follows:
a verification platform of a symmetric encryption algorithm based on UVM comprises a top layer, a test case and a verification environment, the verification work of the symmetric encryption algorithm is completed through the combined connection of three modules, the verification environment is derived from UVM _ env, required components are integrated and connected for working, and the verification platform comprises: the top layer comprises a DUT module, data connection is carried out between the DUT module and the test case through the top layer, meanwhile, the DUT module and the verification environment carry out operation result comparison, and the purpose of verifying the DUT module is achieved; the verification environment can realize the connection and data transmission of each component and complete the system verification function.
The top layer performs function simulation verification on a symmetric encryption algorithm (DUT) by calling a test case, and performs function simulation through a large amount of non-directional tests and a small amount of directional tests of the test case to ensure that each function and operation of the DUT are normal. The test cases comprise a large number of non-directional tests and a small number of directional tests, meanwhile, a large number of constraints are set, a large number of verification tests are provided for DUT verification, the coverage rate of verification functions is close to 100%, and the verification effect of the verification platform is determined to a large extent by the number of the test cases.
Preferably, the components include a register model, a sequencer, a sequence, transaction data, a driver, a coverage statistic, an input monitor, an output monitor, a scoreboard, a reference model, an input interface, and an output interface, wherein:
the register model (register model) is derived from uvm _ reg, stable and quick communication between a driver and a reference model in a verification environment can be realized, and the operation on the reference model can be quickly realized by configuring the register model;
the sequence generator (sequence) is derived from uvm _ sequence, stores and packs sequences and sends out the sequences, when sequence data is required to be driven, the sequence generator checks whether the sequences need to be sent, if so, the sequences are directly sent, otherwise, the sequences are generated and sent;
the sequence (sequence) is derived from uvm _ sequence, the sequence is a source generated by the excitation of the verification platform, and different sequences are set as default sequences of the sequence generator in the test case to generate different verification excitations;
the transaction data (transaction) is derived from uvm _ sequence _ item, and comprises 2 input variables and 2 output variables of a symmetric encryption algorithm module, wherein the input variables are random data, and the data and a keyword rand ensure the randomness of verification excitation;
the driver is derived from uvm _ driver, obtains transaction data required for verification by applying to the sequencer, and then transmits the transaction data to the DUT module and the reference model through the interface, so as to drive the DUT module and the reference model to perform function simulation;
the coverage rate statistics device (coverage) is derived from uvm _ subscriber, completes the statistics of the coverage rate of the functional coverage point through a functional coverage group (coveragegroup) and a sampling function sample (), and collects all the occurred values or changed conditions of data or expressions;
the input monitor (in _ monitor) is derived from uvm _ monitor, the input monitor extracts transaction data through an interface and then transmits the transaction data to the reference model and the coverage rate statistic device, and visual feedback is ensured to be obtained through verification;
the output monitor (out _ monitor) is derived from the uvm _ monitor and is used for detecting the output result of the DUT module, after the computation of the DUT module is finished, effective information of the computation result is put into transaction data, then the transaction data is transmitted to the reference model for comparison, and whether the DUT module correctly outputs the computation data is verified;
the scoring board (scoreboard) is derived from uvm _ scoreboard and is used for comparing the operation output result of the DUT module with the calculation output result of the reference model and judging whether the operation of the current DUT module is normal or not according to the comparison result;
the reference model (reference model) is a behavior model for simulating the DUT module, and the reference model adopts a high-level programming language to build a functional model of the DUT, so that the calculation work of the DUT module can be completed quickly; the reference model is not derived from the UVM general verification methodology, but is an indispensable component of the present verification platform
The input interface (interface _ in) is a channel for transmitting data to the DUT module by the verification platform, because the code of the DUT is written by using a hardware description language Verilog and belongs to a static example; and the UVM general verification methodology is an abstract object on the basis of an SV language and belongs to a dynamic instance. Therefore, the two data cannot be directly connected, so that an input interface is needed to transmit the data from the verification platform to the DUT module;
the output interface (interface _ out) is a channel for transmitting data to the verification platform by the DUT module, because the code of the DUT is written by using a hardware description language Verilog and belongs to a static example; and the UVM general verification methodology is an abstract object on the basis of an SV language and belongs to a dynamic instance. The two data cannot be directly connected so an output interface is required to transfer the data from the DUT module to the verification platform.
Preferably, the register model comprises a control register, a status register, an input register and an output register.
Preferably, the sequence comprises a random sequence, a special sequence and a directional sequence, so that the verification of the verification platform is more comprehensive.
Preferably, the coverage statistics are coverage models built by SV language.
Preferably, the input monitor transmits transaction-like data to the reference model and the coverage statistics via a first-in-first-out storage area FIFO or port.
Preferably, the output monitor transmits the transaction class data to the reference model via a first-in-first-out storage area FIFO.
Preferably, the reference model and the score counting board perform data communication through a first-in first-out storage area FIFO, so that data disorder is prevented from being generated when a large amount of data are compared, the verification result of the verification platform is prevented from being influenced, meanwhile, the method can ensure that data verification does not need to wait, and the possibility of system downtime is reduced.
Preferably, the reference model is built by adopting C language, a test algorithm is completed before verification, an expected result can be obtained only by directly transmitting data to carry out operation in the later verification process, and meanwhile, a C code function can be conveniently called in SV language through a DPI interface.
An authentication method for an authentication platform based on a symmetric encryption algorithm of UVM is applied to the authentication platform and comprises the following steps:
s1: building a verification platform according to a preset structure, initializing each component of the UVM verification platform and starting the verification platform through a run _ test statement;
s2: the drive of the verification platform sends a sequence request to the sequencer, then the sequencer drives a sequence to acquire transaction data, the sequencer sends the transaction data to the drive, then the drive data transmits the data to the DUT module through the input interface, and finally the DUT module is driven to carry out operation;
s3: after the operation of the DUT module is finished, transmitting the result to an output monitor of the verification platform through an output interface, converting the result into transaction data through the output monitor, and then transmitting the transaction data to a score board through FIFO for storage;
s4: the reference model processes the transaction data acquired from the input monitor by using a model function of C language, obtains expected output through calculation, transmits the calculated data to the score board module for comparison, and obtains a simulation verification result according to the comparison result;
s5: and establishing a functional coverage rate model through a coverage rate statistics device to test the verification effect of the verification platform, then connecting the functional coverage rate model with the UVM verification platform to perform data sampling, and finally outputting a coverage rate report through software. Through checking the coverage rate report, a designer can modify the test cases or add constraint conditions in time so as to completely verify each function of the DUT module
Compared with the prior art, the technical scheme of the invention has the beneficial effects that:
according to the invention, the DUT module is called through the top layer to perform function simulation verification, and function simulation is performed through a large amount of non-directional tests and a small amount of directional tests of the test cases, so that each function and operation of the DUT are ensured to be normal.
Drawings
FIG. 1 is a schematic diagram of a verification platform according to the present invention.
Fig. 2 is a schematic flow chart of a verification method in the embodiment.
Detailed Description
The drawings are for illustrative purposes only and are not to be construed as limiting the patent;
for the purpose of better illustrating the embodiments, certain features of the drawings may be omitted, enlarged or reduced, and do not represent the size of an actual product;
it will be understood by those skilled in the art that certain well-known structures in the drawings and descriptions thereof may be omitted.
The technical solution of the present invention is further described below with reference to the accompanying drawings and examples.
Example 1
The embodiment provides a verification platform based on a UVM symmetric encryption algorithm, as shown in fig. 1, including a top layer, test cases, and a verification environment, where the verification environment is derived from UVM _ env, and integrates and connects required components to work, where: the top layer comprises a DUT module, data connection is carried out between the DUT module and the test case, meanwhile, the DUT module and the verification environment carry out operation result comparison, and the purpose of verifying the DUT module is achieved; the verification environment can realize the connection and data transmission of each component and complete the system verification function.
The components include a register model, a sequencer, a sequence, transaction data, a driver, a coverage statistics engine, an input monitor, an output monitor, a scoreboard, a reference model, an input interface, and an output interface, wherein:
the register model (register model) is derived from uvm _ reg, stable and rapid communication between a driver and a reference model in a verification environment can be realized, and the operation on the reference model can be rapidly realized by configuring the register model;
the sequence generator (sequence) is derived from uvm _ sequence, stores and packs the sequence and sends out, when the sequence data is required to be driven, the sequence generator checks whether the sequence needs to be sent, if so, the sequence is directly sent, otherwise, the sequence is generated and sent;
the sequence (sequence) is derived from uvm _ sequence, and different sequences are set as default sequences of the sequence generator in the test case to generate different verification stimuli;
the transaction data (transaction) is derived from uvm _ sequence _ item, and comprises 2 input variables and 2 output variables of a symmetric encryption algorithm module, wherein the input variables are random data, and data and a keyword rand;
the driver is derived from uvm _ driver, and the driver applies for obtaining transaction data required by verification to the sequencer and then transmits the transaction data to the DUT module and the reference model through the interface;
the coverage rate statistics device (coverage) is derived from uvm _ subscriber, completes the statistics of the coverage rate of the functional coverage point through a functional coverage group (coveragegroup) and a sampling function sample (), and collects all the occurred values or changed conditions of data or expressions;
the input monitor (in _ monitor) is derived from uvm _ monitor, the input monitor extracts transaction data through an interface and then transmits the transaction data to the reference model and the coverage rate statistic device to ensure that the verification is fed back;
the output monitor (out _ monitor) is derived from uvm _ monitor, after the DUT module finishes calculating, effective information of a calculation result is put into transaction data, then the transaction data is transmitted to a reference model for comparison, and whether the DUT module correctly outputs the calculation data is verified;
the scoring board (scoreboard) is derived from uvm _ scoreboard and is used for comparing the operation output result of the DUT module with the calculation output result of the reference model and judging whether the operation of the current DUT module is normal or not according to the comparison result;
the reference model (reference model) is a behavior model for simulating a DUT module, and the model adopts a high-level programming language to build a functional model of the DUT;
the input interface (interface _ in) is a channel for transmitting data to the DUT module by the verification platform;
the output interface (interface _ out) is a channel for the DUT module to transmit data to the verification platform.
The register model includes a control register, a status register, an input register, and an output register.
The sequences include random sequences, special sequences, and directed sequences.
The coverage rate statistic device is a coverage rate model established through an SV language.
The input monitor transmits the transaction type data to the reference model and the coverage rate statistics device through a first-in first-out storage area FIFO or a port.
The output monitor transmits the transaction type data to the reference model through the first-in first-out storage area FIFO.
And the reference model and the score counting board are in data communication through a first-in first-out storage area FIFO.
And the reference model is built by adopting C language, and a test algorithm is completed before verification.
In a specific implementation, the authentication platform according to the UVM-based symmetric encryption algorithm, as shown in fig. 2, includes the following steps:
s10: initializing each component of a verification platform of a symmetric encryption algorithm, and starting the verification platform by using a run _ test statement;
s20: starting a preset test case, generating a large amount of random transaction data, special transaction data and oriented transaction data through a sequence, and providing complete verification excitation for a verification platform;
s30: judging whether the current test case runs completely, if so, performing coverage constraint check, otherwise, running function simulation verification, respectively sending test sequences to the reference model and the DUT module, and performing related function operation;
s40: after functional simulation verification, transmitting a calculation result of the reference model and a calculation result of the DUT module to a scoring board through a port and an interface respectively;
s50: and the scoring board compares the calculation result of the reference model with the calculation result of the DUT module, when the calculation result of the DUT module is consistent with the calculation result of the reference model, the functional verification is correct, and whether the test case operation is finished is continuously judged. If the operation result of the DUT module is inconsistent with the calculation result of the reference model, indicating that the function verification is wrong, and performing coverage rate constraint check at the moment;
s60: and when the score board inspection error occurs or the test case is completely run, performing coverage rate constraint inspection, and if the current coverage rate constraint meets a preset coverage rate condition, successfully verifying the platform. If the current coverage rate constraint does not meet the preset coverage rate condition, judging whether the current coverage rate is improved;
s70: when judging whether the coverage rate is improved or not, if the coverage rate is improved, increasing a test case or modifying constraint conditions, and if the coverage rate cannot be improved or is not maintained, increasing a directional test;
s80: and after the test cases are added or the constraint conditions are modified, if quantitative tests are added, judging that the test cases are completely operated.
The same or similar reference numerals correspond to the same or similar parts;
the terms describing positional relationships in the drawings are for illustrative purposes only and should not be construed as limiting the patent;
it should be understood that the above-described embodiments of the present invention are merely examples for clearly illustrating the present invention, and are not intended to limit the embodiments of the present invention. Other variations and modifications will be apparent to persons skilled in the art in light of the above description. And are neither required nor exhaustive of all embodiments. Any modification, equivalent replacement, and improvement made within the spirit and principle of the present invention should be included in the protection scope of the claims of the present invention.

Claims (9)

1. A verification platform based on UVM symmetric encryption algorithm is characterized by comprising a top layer, test cases and a verification environment, wherein the verification environment is derived from UVM _ env and integrates and connects required components for working, and the verification platform comprises: the top layer comprises a DUT module, data connection is carried out between the DUT module and the test case through the top layer, meanwhile, the DUT module and the verification environment carry out operation result comparison, and the purpose of verifying the DUT module is achieved; the verification environment realizes the connection and data transmission of each component to complete the system verification function;
the components include a register model, a sequencer, a sequence, transaction data, a driver, a coverage statistics engine, an input monitor, an output monitor, a scoreboard, a reference model, an input interface, and an output interface, wherein:
the register model (register model) is derived from uvm _ reg, stable and rapid communication between a driver and a reference model in a verification environment is realized, and the register model is configured to rapidly realize the operation of the reference model;
the sequence generator (sequence) is derived from uvm _ sequence, stores and packs the sequence and sends out, when the sequence data is required to be driven, the sequence generator checks whether the sequence needs to be sent, if so, the sequence is directly sent, otherwise, the sequence is generated and sent;
the sequence (sequence) is derived from uvm _ sequence, and different sequences are set as default sequences of the sequence generator in the test case to generate different verification stimuli;
the transaction data (transaction) is derived from uvm _ sequence _ item, and comprises 2 input variables and 2 output variables of a symmetric encryption algorithm module, wherein the input variables are random data, and data and a keyword rand;
the driver is derived from uvm _ driver, and the driver applies for obtaining transaction data required by verification to the sequencer and then transmits the transaction data to the DUT module and the reference model through the interface;
the coverage rate statistics device (coverage) is derived from uvm _ subscriber, completes the statistics of the coverage rate of the functional coverage point through a functional coverage group (coveragegroup) and a sampling function sample (), and collects all the occurred values or changed conditions of data or expressions;
the input monitor (in _ monitor) is derived from uvm _ monitor, the input monitor extracts transaction data through an interface and then transmits the transaction data to the reference model and the coverage rate statistic device to ensure that the verification is fed back;
the output monitor (out _ monitor) is derived from uvm _ monitor, after the DUT module finishes calculating, effective information of a calculation result is put into transaction data, then the transaction data is transmitted to a reference model for comparison, and whether the DUT module correctly outputs the calculation data is verified;
the scoring board (scoreboard) is derived from uvm _ scoreboard and is used for comparing the operation output result of the DUT module with the calculation output result of the reference model and judging whether the operation of the current DUT module is normal or not according to the comparison result;
the reference model (reference model) is a behavior model for simulating a DUT module, and the reference model adopts a high-level programming language to build a functional model of the DUT;
the input interface (interface _ in) is a channel for transmitting data to the DUT module by the verification platform;
the output interface (interface _ out) is a channel for transmitting data to the verification platform by the DUT module;
the method comprises the following steps:
s10: initializing each component of a verification platform of a symmetric encryption algorithm and starting the verification platform by using a run _ test statement;
s20: starting a preset test case, generating a large amount of random transaction data, special transaction data and oriented transaction data through a sequence, and providing complete verification excitation for a verification platform;
s30: judging whether the current test case is completely operated, if the test case is completely operated, performing coverage rate constraint check, and if not, operating functional simulation verification, respectively sending the test sequence to the reference model and the DUT module, and performing related functional operation;
s40: after functional simulation verification, respectively transmitting a reference model calculation result and a DUT module calculation result to a scoring board through a port and an interface;
s50: the scoring board compares the calculation result of the reference model with the calculation result of the DUT module, if the calculation result of the DUT module is consistent with the calculation result of the reference model, the functional verification is correct, and whether the test case operation is finished is continuously judged, if the calculation result of the DUT module is inconsistent with the calculation result of the reference model, the functional verification is wrong, and at the moment, the coverage rate constraint check is carried out;
s60: when the score board inspection error occurs or the test case is operated completely, performing coverage rate constraint inspection, if the current coverage rate constraint meets a preset coverage rate condition, successfully verifying the platform, and if the current coverage rate constraint does not meet the preset coverage rate condition, judging whether the current coverage rate is improved;
s70: when judging whether the coverage rate is improved or not, if the coverage rate is improved, increasing a test case or modifying constraint conditions, and if the coverage rate cannot be improved or is not maintained, increasing a directional test;
s80: and after the test cases are added or the constraint conditions are modified, if quantitative tests are added, judging that the test cases are completely operated.
2. A verification platform for a UVM based symmetric encryption algorithm according to claim 1 wherein the register model includes a control register, a status register, an input register and an output register.
3. An authentication platform for a UVM based symmetric encryption algorithm according to claim 1 wherein the sequence includes a random sequence, a special sequence and a directional sequence.
4. An authentication platform for UVM based symmetric encryption algorithms according to claim 1, characterised in that said coverage statistics are coverage models built by SV language.
5. An authentication platform for UVM based symmetric encryption algorithms according to claim 1, characterised in that the input monitor transmits transaction-like data to the reference model and the coverage statistics through a first-in-first-out storage area FIFO or port.
6. An authentication platform for a UVM based symmetric cryptographic algorithm in accordance with claim 1, wherein the output monitor transfers transaction class data to the reference model via a first-in-first-out storage area FIFO.
7. An authentication platform for a UVM based symmetric encryption algorithm according to claim 1 wherein the reference model is in data communication with the scoreboard via a first-in first-out storage area FIFO.
8. The verification platform of the UVM-based symmetric encryption algorithm of claim 7, wherein the reference model is built in C language and a test algorithm is completed before verification.
9. A verification method of a UVM-based symmetric encryption algorithm verification platform, wherein the verification method is applied to the verification platform of any one of claims 2 to 8, and the verification method comprises the following steps:
s1: building a verification platform according to a preset structure, initializing each component of the UVM verification platform and starting the verification platform through a run _ test statement;
s2: the drive of the verification platform sends a sequence request to the sequencer, then the sequencer drives a sequence to acquire transaction data, the sequencer sends the transaction data to the drive, then the drive data transmits the data to the DUT module through the input interface, and finally the DUT module is driven to carry out operation;
s3: after the operation of the DUT module is finished, transmitting the result to an output monitor of the verification platform through an output interface, converting the result into transaction data through the output monitor, and then transmitting the transaction data to a score board through FIFO for storage;
s4: the reference model processes the transaction data acquired from the input monitor by using a model function of C language, expected output is obtained through calculation, then the data obtained through calculation is transmitted to the scoring board module for comparison, and a simulation verification result is obtained through analysis according to a comparison result;
s5: establishing a functional coverage rate model through a coverage rate statistics device to test the verification effect of a verification platform, then connecting the functional coverage rate model with a UVM verification platform to perform data sampling, and finally outputting a coverage rate report; by viewing the coverage rate report, the test cases can be modified or the constraint conditions can be added in time so as to completely verify the functions of the DUT module.
CN201910709077.9A 2019-08-01 2019-08-01 Verification platform and verification method of symmetric encryption algorithm based on UVM Active CN110618929B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910709077.9A CN110618929B (en) 2019-08-01 2019-08-01 Verification platform and verification method of symmetric encryption algorithm based on UVM

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910709077.9A CN110618929B (en) 2019-08-01 2019-08-01 Verification platform and verification method of symmetric encryption algorithm based on UVM

Publications (2)

Publication Number Publication Date
CN110618929A CN110618929A (en) 2019-12-27
CN110618929B true CN110618929B (en) 2023-03-21

Family

ID=68921402

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910709077.9A Active CN110618929B (en) 2019-08-01 2019-08-01 Verification platform and verification method of symmetric encryption algorithm based on UVM

Country Status (1)

Country Link
CN (1) CN110618929B (en)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111339731B (en) * 2020-01-21 2021-01-08 中国人民解放军军事科学院国防科技创新研究院 FPGA (field programmable Gate array) verification platform and method for SoC (System on chip)
CN112069756B (en) * 2020-09-02 2024-06-18 中国航空工业集团公司西安飞行自动控制研究所 Programmable logic verification architecture and implementation method thereof
CN112306882B (en) * 2020-11-06 2023-04-25 山东云海国创云计算装备产业创新中心有限公司 Chip algorithm module verification method and system based on C algorithm model
CN112486835B (en) * 2020-12-11 2024-05-03 南京艾科朗克信息科技有限公司 Verification platform and method applied to securities futures counter
CN112711533A (en) * 2020-12-30 2021-04-27 北京华捷艾米科技有限公司 Verification system and method based on image processing
CN113076227A (en) * 2021-04-28 2021-07-06 深圳市汇春科技股份有限公司 MCU verification method, system and terminal equipment
CN113518074B (en) * 2021-05-11 2023-04-18 北京物芯科技有限责任公司 Data message forwarding method, device, equipment and storage medium
CN113297071B (en) * 2021-05-14 2022-08-19 山东云海国创云计算装备产业创新中心有限公司 Verification method, device and equipment based on UVM function coverage rate driving
CN113297073B (en) * 2021-05-20 2022-07-29 山东云海国创云计算装备产业创新中心有限公司 Verification method, device and equipment of algorithm module in chip and readable storage medium
CN113157269B (en) * 2021-06-10 2023-11-17 上海齐感电子信息科技有限公司 Verification system and verification method thereof
CN113407408B (en) * 2021-06-11 2024-01-26 海光信息技术股份有限公司 Data transmission rule verification method, device, equipment and storage medium
CN113434355B (en) 2021-08-26 2021-12-17 苏州浪潮智能科技有限公司 Module verification method, UVM verification platform, electronic device and storage medium
CN113989150A (en) * 2021-10-28 2022-01-28 西安微电子技术研究所 SV-DPI-based image dead pixel correction FPGA verification system and verification method
CN114386365B (en) * 2021-12-29 2022-09-27 北京得瑞领新科技有限公司 Data verification method and system based on verification platform and electronic equipment
CN114374514A (en) * 2022-01-04 2022-04-19 电子科技大学 UVM-based ECDSA verification system and method
CN115190030A (en) * 2022-06-30 2022-10-14 东风汽车集团股份有限公司 Hardware device and UVM verification platform for realizing CAN FD
CN115618800B (en) * 2022-11-14 2023-05-12 沐曦集成电路(上海)有限公司 GPU joint simulation system based on DPI
CN115719047B (en) * 2022-11-14 2023-06-06 沐曦集成电路(上海)有限公司 Waveform GPU-based joint simulation system
CN116827522B (en) * 2023-08-25 2023-11-17 珠海星云智联科技有限公司 UVM-based AES-GCM function verification method and related equipment
CN117332742B (en) * 2023-12-01 2024-02-23 芯动微电子科技(武汉)有限公司 Simulation verification method and device for chip design stage
CN117422025B (en) * 2023-12-18 2024-03-29 青岛本原微电子有限公司 Random interrupt debugging verification system based on RISC-V architecture
CN117541896B (en) * 2024-01-09 2024-04-09 深流微智能科技(深圳)有限公司 UVM-based rasterization module verification system, method and storage medium
CN118093292A (en) * 2024-04-23 2024-05-28 成都北中网芯科技有限公司 Self-adaptive random excitation verification method, system, terminal and medium
CN118095155A (en) * 2024-04-29 2024-05-28 井芯微电子技术(天津)有限公司 Functional simulation method and system for back pressure overshoot based on general verification methodology

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103530216A (en) * 2013-10-12 2014-01-22 江苏华丽网络工程有限公司 PCIE verification method based on UVM
CN104065486A (en) * 2014-07-04 2014-09-24 山东超越数控电子有限公司 Encryption strategy matching algorithm module verification platform and realizing method thereof
CN105893202A (en) * 2016-04-26 2016-08-24 浪潮(北京)电子信息产业有限公司 Function testing method and function testing system of storage controller based on UVM (Universal Verification Methodology)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106503308B (en) * 2016-10-08 2019-03-19 中国电子科技集团公司第五十八研究所 A kind of CAN controller IP verification platform based on UVM
CN108763981A (en) * 2018-05-15 2018-11-06 佛山市顺德区中山大学研究院 A kind of RFID reader verification platform and verification method based on UVM
CN109684681B (en) * 2018-12-06 2023-05-16 西南电子技术研究所(中国电子科技集团公司第十研究所) High-level verification method using UVM verification platform
CN110046387B (en) * 2019-03-14 2022-04-08 广东工业大学 SM2 module verification platform and verification method based on UVM

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103530216A (en) * 2013-10-12 2014-01-22 江苏华丽网络工程有限公司 PCIE verification method based on UVM
CN104065486A (en) * 2014-07-04 2014-09-24 山东超越数控电子有限公司 Encryption strategy matching algorithm module verification platform and realizing method thereof
CN105893202A (en) * 2016-04-26 2016-08-24 浪潮(北京)电子信息产业有限公司 Function testing method and function testing system of storage controller based on UVM (Universal Verification Methodology)

Also Published As

Publication number Publication date
CN110618929A (en) 2019-12-27

Similar Documents

Publication Publication Date Title
CN110618929B (en) Verification platform and verification method of symmetric encryption algorithm based on UVM
US6678625B1 (en) Method and apparatus for a multipurpose configurable bus independent simulation bus functional model
US10503848B2 (en) Target capture and replay in emulation
JP3872954B2 (en) System and method for identifying finite state machines and inspecting circuit designs
WO1998055879A1 (en) Method and apparatus for test generation during circuit design
US8214195B2 (en) Testing in a hardware emulation environment
CN101499937A (en) Software and hardware collaborative simulation verification system and method based on FPGA
KR20000029237A (en) Semiconductor integrated circuit evaluation system
US8504344B2 (en) Interface between a verification environment and a hardware acceleration engine
CN109885905B (en) Verification system for improving function verification efficiency of digital circuit
CN201522707U (en) Software and hardware cooperated simulation verification system based on FPGA
US6842883B2 (en) Application of co-verification tools to the testing of IC designs
US11295051B2 (en) System and method for interactively controlling the course of a functional simulation
US10268556B2 (en) System and method for simulation results analysis and failures debug using a descriptive tracking header
US11200127B2 (en) Automated self-check of a closed loop emulation replay
US6968286B1 (en) Functional-pattern management system for device verification
US20030135838A1 (en) Method and apparatus for isolating the root of indeterminate logic values in an HDL simulation
US10755012B2 (en) System and method for generating a functional simulations progress report
CN117195783A (en) Method for verifying chip design
CN112329369B (en) Method for debugging software on chip simulation model
US7533011B2 (en) Simulating and verifying signal glitching
CN114416460A (en) Method and simulation system for analyzing baseband performance
US10769332B2 (en) Automatic simulation failures analysis flow for functional verification
US20180189435A1 (en) System and method for capturing transaction specific stage-wise log data
Muhammad et al. RTL platform validation of digital intellectual property (IP) of real time clock (RTC) for customized wireless microcontroller unit

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant