CN111913840A - Verification method of APB-UART module based on UVM - Google Patents
Verification method of APB-UART module based on UVM Download PDFInfo
- Publication number
- CN111913840A CN111913840A CN202010360438.6A CN202010360438A CN111913840A CN 111913840 A CN111913840 A CN 111913840A CN 202010360438 A CN202010360438 A CN 202010360438A CN 111913840 A CN111913840 A CN 111913840A
- Authority
- CN
- China
- Prior art keywords
- apb
- uart
- verification
- uvm
- data
- 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.)
- Pending
Links
- 238000012795 verification Methods 0.000 title claims abstract description 58
- 238000000034 method Methods 0.000 title claims abstract description 23
- 230000006870 function Effects 0.000 claims abstract description 32
- 238000001514 detection method Methods 0.000 claims abstract description 18
- 238000012360 testing method Methods 0.000 claims abstract description 13
- 230000003993 interaction Effects 0.000 claims abstract 2
- 238000005070 sampling Methods 0.000 claims description 7
- 238000004088 simulation Methods 0.000 claims description 3
- 230000000712 assembly Effects 0.000 claims 1
- 238000000429 assembly Methods 0.000 claims 1
- 230000000694 effects Effects 0.000 claims 1
- 238000013461 design Methods 0.000 abstract description 3
- 238000006243 chemical reaction Methods 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 230000005284 excitation Effects 0.000 description 3
- LHMQDVIHBXWNII-UHFFFAOYSA-N 3-amino-4-methoxy-n-phenylbenzamide Chemical compound C1=C(N)C(OC)=CC=C1C(=O)NC1=CC=CC=C1 LHMQDVIHBXWNII-UHFFFAOYSA-N 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2247—Verification or detection of system hardware configuration
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Maintenance And Management Of Digital Transmission (AREA)
Abstract
The invention relates to the field of chip verification, and mainly realizes a verification method of an APB-UART module based on UVM. The verification platform constructed by the verification method comprises the following steps: the agent component realizes data interaction with different protocol ports; the scoreboard component is used for realizing data comparison; a checker component for realizing baud rate detection; a register model with an early warning mechanism is added; a verification environment env component; a coverage collection component, and the like. The verification method also designs corresponding test cases and sequences according to various functions of the APB-UART module. The verification platform can realize the input of various test stimuli, has the functions of automatic comparison of results and coverage rate collection, and can quickly and completely verify the APB-UART module.
Description
Technical Field
The invention relates to the field of chip Verification, in particular to a Verification method of a protocol conversion module based on UVM (Universal Verification method).
Background
With the continuous development of the integrated circuit theory and the appearance of soc (system On chip) technology, designers have improved the design capability and efficiency of chips to some extent, which makes the complexity and scale of chips increase gradually. Because of the continuous improvement of the process and the lower tolerance of the market to the product defects, the loss to be borne after each tape-out failure is larger and larger, so that the verification work before tape-out becomes very important and becomes an indispensable loop in the chip design flow gradually.
The APB (advanced Peripheral bus) protocol belongs to one of AMBA bus protocols, has the characteristics of low power consumption, simple interconnection signals and the like, and is suitable for low-performance Peripheral modules. The UART (Universal Asynchronous Receiver-Transmitter) protocol is a common protocol in serial Asynchronous communication, has low cost and is suitable for low-performance long-distance transmission scenes. In a typical AMBA bus architecture, the APB-UART module may perform protocol conversion on read and write data and perform certain control on data transmission, and if the processor wants to access data in a UART format, the APB-UART module is indispensable. In addition, due to the requirement of data transmission, the module can also realize functions of hardware flow control, data format adjustment, interrupt feedback, UART format detection and the like.
The Universal Verification Methodology (UVM) provides a set of standard class library based on SystemVerilog language, which not only enables a Verification engineer to quickly complete the construction work of a bottom Verification platform, but also provides a set of unified standards, restricts and guides the Verification method and improves the reusability and portability of the Verification platform. The verification platform established according to the UVM verification methodology can realize the functions of test excitation random generation, verification result self-detection, function coverage rate collection and the like, and can sufficiently cope with most scenes in the current verification process.
For the verification of the APB-UART protocol conversion module, the traditional verification method generally uses Verilog language to write a test platform, and verifies the module functions one by applying a directional test excitation mode. In the verification process, an FPGA development board can be used for hardware detection, or MATLAB software is used for related assistance. However, the above methods all have the disadvantages of low reusability, low verification efficiency, difficulty in complete verification, and the like, and cannot be qualified for the verification work of complex functional modules.
Disclosure of Invention
In order to solve the problems, the invention compiles an APB-UART module verification platform based on UVM verification methodology, and fully and completely verifies the module by applying various stimuli. Due to the universality and portability of the UVM verification platform, the verification platform can be transplanted for use, so that the verification work of other modules with similar functions is accelerated.
The composition of the APB-UART module verification platform is as follows.
interface: and packaging the signal ports with specific attributes together to realize the interconnection work between the module to be tested and the verification platform. The verification platform has three interfaces, and corresponding signals of the APB, the UART and the Modem are respectively packaged.
agent class component: the assembly is used for processing operations related to a specific port, realizing conversion of signal-level data and transaction-level data, and completing driving and acquisition work of a specific protocol. The verification platform comprises four agents which respectively correspond to an APB end, a UART receiving end, a UART transmitting end and a Modem end.
scoreboard-like components: the component is used for realizing data comparison work and is a key component for verifying the automatic detection result of the platform. The verification platform has three scoreboards which are respectively used for UART received data comparison, UART sent data comparison and Modem data comparison.
A checker component: the system is used for sampling the baud rate signal and judging whether the signal frequency is consistent with the configured expected frequency.
A coverage component: the verification platform is used for collecting functional coverage rates, and the verification platform respectively collects the coverage rates of the registers and the read-write data formats.
The env component: the creation and interconnection work of the components is realized, and a complete verification platform for a specific module is constructed.
Register model: the modeling work of the internal register of the DUT is realized, a total number of 15 registers are included, and the related register types comprise Readable and Writable (RW), read-only (RO), write-only (WO), zero clearing after Reading (RC) and the like. In addition, the component also adds a hardware access path of each register, and provides a basis for the back door access of the registers.
Test cases and sequences: the method is used for establishing a verification environment, interconnecting the module to be tested and the verification platform and realizing corresponding test excitation.
Drawings
FIG. 1 is a general architecture of an APB-UART module validation platform.
FIG. 2 is a schematic diagram of frequency-doubled sampling of the UART data 16.
Figure 3 is an interconnection diagram of scoreboard components and related components.
Detailed Description
The general architecture of the present verification platform is shown in fig. 1, wherein the specific implementation of each module is as follows.
The verification platform uses agents to realize the driving and collection work of a specific port, and comprises four agents which are Apb _ Agent, Rx _ Agent, Tx _ Agent and Modem _ Agent in total, wherein the Rx _ Agent and the Tx _ Agent are generated by instantiating a Uart _ Agent. As can be seen in the overall architecture diagram, the different agents encapsulate the corresponding driver, monitor, sequence. Each agent realizes the conversion of data from a transaction level to a signal level through a corresponding driver component and drives the data to a related port of the DUT; collecting related port signals at a specific moment through a corresponding monitor component, converting the signals from a signal level to a transaction level, and sending the signals to a subsequent module for use; and independently sending out the generation work of different incentives through the corresponding sequence r, and completing the generation work of the incentives by cooperating with the sequence. Apb _ Agent and Modem _ Agent use APB clock as reference clock for driving and sampling, and Uart _ Agent uses multiplied baud rate signal additionally, and adopts different sampling strategies to different UART data bits in internal monitor to ensure data accuracy: for the start bit and the stop bit in the UART data, the first 8 periods are continuously taken to eliminate interference, and for the data bit, the data in the 8 th period represents the final sampling value, as shown in fig. 2. In addition, the control of sampling time is realized through an event in the Uart _ Monitor; and data receiving and transmitting information of the UART port is timely collected through semaphore and transmitted to the corresponding test, so that the problem of indefinite simulation ending time is solved.
The verification platform uses the Scoreboard component to realize data comparison work, and the Scoreboard component comprises three scoreboards, namely Rx _ Scoreboard, Tx _ Scoreboard and Modem _ Scoreboard. The data source in the Scoreboard is divided into two parts, the first part is the register read-write data information collected by Apb _ Agent, and the second part is the data information collected by the corresponding Agent, including data received and sent by UART and modem input and output data. In addition, a register model is introduced into the scoreboard, and specific information can be transferred to the coverage collection component through a corresponding transmission port, as shown in fig. 3.
The verification platform uses a checker component to realize the detection related to the baud rate configuration. The component can continuously acquire frequency information of a corresponding clock and detect the baud rate frequency division function according to the value of a relevant register in the DUT.
The register model adopts a three-level structure to realize the modeling of the registers in the DUT, namely, the information of addresses, attributes and the like of 15 registers is described through field, reg and block structures. The register model also adds a hardware access path of each register, and provides a basis for the back door access of the registers. In addition, because part of registers have the same access address, the register model adds an early warning mechanism by using a callback mechanism and a hook function, and can output early warning information when unexpected access is performed on a specific register.
The verification platform verifies the common functions of the APB-UART module by applying various test stimuli and sequences, and related test cases cover the following contents: detecting related functions of a register; detecting basic transceiving functions, including various data content and data format combinations; detecting a hardware flow control function; detecting an interrupt function; detecting a baud rate configuration function; detecting a character/half character read-write function; detecting a port protocol; detecting an overrun function; receiving data error monitoring function detection; receiving a break low level function detection; sending data null prompt detection; sending a break low level function detect; FIFO flush function detection, etc.
The verification platform covers the access condition and the receiving and sending data format of each register through the coverage rate collection component, and provides an important basis for representing the verification progress.
Claims (5)
1. A verification method of an APB-UART module based on UVM is characterized in that a verification platform is established by adopting UVM verification methodology, and the APB-UART module is verified by applying a plurality of test stimuli, and the verification platform comprises: the four agent components are internally packaged with corresponding drivers, monitors, sequencers and the like, and respectively realize data driving and acquisition work of an APB port, a UART transmitting port, a UART receiving port and a Modem port; the three scoreboard assemblies respectively realize comparison work of APB read-write data, UART received data, UART sent data and Modem data; the checker component realizes the detection of the baud rate function; the register model with an early warning mechanism realizes the early warning function when the specific register is illegally accessed; the coverage rate collection component realizes the collection of the functional coverage rate; verifying the environment env and configuring a config file; a plurality of test cases and sequences cover the common functions of the APB-UART module, and mainly comprise: register correlation detection, basic transceiving function detection, Modem function detection, interrupt function detection, baud rate function detection, word/half-word read-write function detection, port protocol detection and the like.
2. The verification method of the APB-UART module based on UVM of claim 1, characterized in that the problem of interaction effect among the same address registers is solved by using callback mechanism and hook function: the UART module generally uses a DLAB register/domain as a selection signal, different registers with the same address are respectively enabled according to the level of DLAB, at the moment, the condition of register access error caused by DLAB configuration error is easy to occur, the register model realizes the alarm function when unexpected access is carried out on a specific register, and the problems are solved.
3. The verification method of the APB-UART module based on UVM of claim 1, wherein: the problem of unclear simulation ending time is solved by collecting the data receiving and sending conditions of the UART port in time through semaphore and transmitting the data receiving and sending conditions to the corresponding test.
4. The verification method of the APB-UART module based on UVM of claim 1, wherein: the problem of ambiguous sampling time in Modem _ Monitor is solved through the event.
5. The verification method of the APB-UART module based on UVM of claim 1, wherein: the data results are automatically compared through the scoreboard component; the collection of the function coverage rate is realized through the coverage rate collection component, and a judgment basis is provided for the simulation progress.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010360438.6A CN111913840A (en) | 2020-04-30 | 2020-04-30 | Verification method of APB-UART module based on UVM |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010360438.6A CN111913840A (en) | 2020-04-30 | 2020-04-30 | Verification method of APB-UART module based on UVM |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111913840A true CN111913840A (en) | 2020-11-10 |
Family
ID=73237911
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010360438.6A Pending CN111913840A (en) | 2020-04-30 | 2020-04-30 | Verification method of APB-UART module based on UVM |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111913840A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112559264A (en) * | 2020-12-08 | 2021-03-26 | 北京京航计算通讯研究所 | Simulation test method for realizing FPGA (field programmable Gate array) universal serial port by verification platform based on UVM (Universal verification Module) |
CN115952758A (en) * | 2023-03-10 | 2023-04-11 | 成都登临科技有限公司 | Chip verification method and device, electronic equipment and storage medium |
CN117709046A (en) * | 2023-07-24 | 2024-03-15 | 无锡摩芯半导体有限公司 | Method for building APB_bridge subsystem-level verification platform based on uvm |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8504973B1 (en) * | 2010-04-15 | 2013-08-06 | Altera Corporation | Systems and methods for generating a test environment and test system surrounding a design of an integrated circuit |
US20150310159A1 (en) * | 2014-03-05 | 2015-10-29 | Vayavya Labs Private. Limited | Computer-implemented verification system for performing a functional verification of an integrated circuit |
CN109684681A (en) * | 2018-12-06 | 2019-04-26 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | Using the high layering verification method of UVM verification platform |
CN109739699A (en) * | 2018-11-06 | 2019-05-10 | 电子科技大学 | A kind of SPI verification method based on UVM verification methodology |
CN110046387A (en) * | 2019-03-14 | 2019-07-23 | 广东工业大学 | A kind of SM2 module verification platform and verification method based on UVM |
-
2020
- 2020-04-30 CN CN202010360438.6A patent/CN111913840A/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8504973B1 (en) * | 2010-04-15 | 2013-08-06 | Altera Corporation | Systems and methods for generating a test environment and test system surrounding a design of an integrated circuit |
US20150310159A1 (en) * | 2014-03-05 | 2015-10-29 | Vayavya Labs Private. Limited | Computer-implemented verification system for performing a functional verification of an integrated circuit |
CN109739699A (en) * | 2018-11-06 | 2019-05-10 | 电子科技大学 | A kind of SPI verification method based on UVM verification methodology |
CN109684681A (en) * | 2018-12-06 | 2019-04-26 | 西南电子技术研究所(中国电子科技集团公司第十研究所) | Using the high layering verification method of UVM verification platform |
CN110046387A (en) * | 2019-03-14 | 2019-07-23 | 广东工业大学 | A kind of SM2 module verification platform and verification method based on UVM |
Non-Patent Citations (3)
Title |
---|
WEI NI等: "Functional Coverage-Driven UVM-based UART IP Verification", 《2015 IEEE 11TH INTERNATIONAL CONFERENCE ON ASIC (ASICON)》 * |
张彦磊: "基于UVM的APB-I_2C验证IP的设计与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
韩雪: "基于UVM的UART系统级验证平台设计", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112559264A (en) * | 2020-12-08 | 2021-03-26 | 北京京航计算通讯研究所 | Simulation test method for realizing FPGA (field programmable Gate array) universal serial port by verification platform based on UVM (Universal verification Module) |
CN115952758A (en) * | 2023-03-10 | 2023-04-11 | 成都登临科技有限公司 | Chip verification method and device, electronic equipment and storage medium |
CN117709046A (en) * | 2023-07-24 | 2024-03-15 | 无锡摩芯半导体有限公司 | Method for building APB_bridge subsystem-level verification platform based on uvm |
CN117709046B (en) * | 2023-07-24 | 2024-06-25 | 无锡摩芯半导体有限公司 | Method for building APB_bridge subsystem-level verification platform based on uvm |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111913840A (en) | Verification method of APB-UART module based on UVM | |
CN109684681B (en) | High-level verification method using UVM verification platform | |
CN113297017B (en) | SOC verification system and method based on UVM | |
US5434804A (en) | Method and apparatus for synchronizing a JTAG test control signal to an on-chip clock signal | |
US5983379A (en) | Test access port controller and a method of effecting communication using the same | |
EP0840217B1 (en) | An integrated circuit with TAP (test access port) controller | |
CN117709046B (en) | Method for building APB_bridge subsystem-level verification platform based on uvm | |
CN105653409B (en) | A kind of hardware emulator verify data extraction system based on data type conversion | |
CN115695234A (en) | System-level verification platform for PCIe bus network interface card | |
CN111832237A (en) | Intellectual property right verification method and system | |
Vineeth et al. | Uvm based testbench architecture for coverage driven functional verification of spi protocol | |
CN111914501A (en) | Implementation method of FeRAM interface verification platform based on UVM verification methodology | |
CN115496018A (en) | Multi-version verification method, device and equipment for SoC (System on chip) | |
CN112685212A (en) | Debugging and tracking method, device and system for processor exception | |
CN113742230A (en) | Verification method and verification system of chip monitor module based on UVM | |
Mahale et al. | Architecture Analysis and Verification of I3C Protocol | |
CN116432593A (en) | Chip peripheral module verification method based on UVM | |
CN116776785A (en) | Passive mode verification method and system for integrated chip | |
Guo et al. | A SPI interface module verification method based on UVM | |
US6868545B1 (en) | Method for re-using system-on-chip verification software in an operating system | |
Liang et al. | Python based testbench for coverage driven functional verification | |
CN113204929B (en) | Method, electronic device and storage medium for realizing AHB VIP based on SV and UVM | |
Yang et al. | Current status and challenges of soc verification for embedded systems market | |
CN112836455B (en) | SOC simulation method and system | |
CN100499410C (en) | Apparatus and method for implementing automatic detection of communication interface time sequence |
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 | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20201110 |
|
WD01 | Invention patent application deemed withdrawn after publication |