CN102184131B - The emulation verification method of SOC (system on a chip) and device - Google Patents

The emulation verification method of SOC (system on a chip) and device Download PDF

Info

Publication number
CN102184131B
CN102184131B CN201110092119.2A CN201110092119A CN102184131B CN 102184131 B CN102184131 B CN 102184131B CN 201110092119 A CN201110092119 A CN 201110092119A CN 102184131 B CN102184131 B CN 102184131B
Authority
CN
China
Prior art keywords
graphical
dut
function
dpi
software module
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
CN201110092119.2A
Other languages
Chinese (zh)
Other versions
CN102184131A (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.)
Shenzhen ZTE Microelectronics Technology Co Ltd
Original Assignee
ZTE Corp
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 ZTE Corp filed Critical ZTE Corp
Priority to CN201110092119.2A priority Critical patent/CN102184131B/en
Publication of CN102184131A publication Critical patent/CN102184131A/en
Application granted granted Critical
Publication of CN102184131B publication Critical patent/CN102184131B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

The invention discloses a kind of emulation verification method and device of SOC (system on a chip).Wherein, the method comprises: in simulation process, and equipment under test (DUT) utilizes in software module the graphical function preset to generate the graphical controllable interface needed by Direct Programming interface (DPI); By described graphical controllable interface, receive input information and/or the Output simulation information of external unit.By the present invention, control command can be inputed or outputed in the simulating, verifying process of DUT, thus improve the controllability of simulating, verifying.

Description

The emulation verification method of SOC (system on a chip) and device
Technical field
The present invention relates to digital IC design technical field, in particular to a kind of emulation verification method and device of SOC (system on a chip).
Background technology
At SOC (system on a chip) (System On Chip, referred to as SOC) in the simulating, verifying of system, frequent employing software-hardware synergism carries out simulating, verifying, thus software and the hardware debug of system can be carried out in advance, do not need hardware design by the time after completing, just to start the debugging of software, thus greatly can shorten the cycle of exploitation.
At present, software-hardware synergism is adopted to carry out in the implementation of simulating, verifying, after design completes, in simulating, verifying process, hardware RTL (Register Transfer Level) module does not arrange the IO interface for external control in operational process, therefore, the simulation run of hardware RTL module does not accept outside intervention, and the controllability of simulating, verifying is lower.Such as, the parameter configuration of equipment under test (Design Under Test, referred to as DUT) can not be upgraded in simulation run process, and before emulation starts, can only complete when designing.If according to current DUT parameter configuration, find that there is certain parameter configuration error in simulation run, can not in this emulation corrected parameter, and the mode that again emulates can only be taked.Thus reduce the efficiency of simulating, verifying, increase the time repeatedly run, especially in the checking of net table, emulation can waste the plenty of time again.Further, the functions such as the printing of artificial intelligence can not be realized in simulation process, thus reduce the intuitive of emulation
Cause due to the IO interface do not arranged for external control the problem that the controllability of simulating, verifying is lower in correlation technique, not yet propose effective solution at present.
Summary of the invention
Fundamental purpose of the present invention is the emulation verification method and the device that provide a kind of SOC, at least to solve the problem.
According to an aspect of the present invention, provide a kind of emulation verification method of SOC (system on a chip), comprise: in simulation process, equipment under test (DUT) utilizes in software module the graphical function preset to generate the graphical controllable interface needed by Direct Programming interface (DPI); By described graphical controllable interface, receive input information and/or the Output simulation information of external unit.
Preferably, described graphical controllable interface comprises: one or more form.
Preferably, when described graphical controllable interface comprises multiple form, the graphical controllable interface that described DUT utilizes in software module the graphical function preset to generate needs by DPI comprises: described DUT imports described graphical function by described DPI, wherein, described graphical function is for setting up the form identical with described multiple form quantity; Described DUT calls described graphical function, sets up described multiple form.
Preferably, described method can also comprise: described software module creates multiple process, each process corresponds to a form in described multiple form, and after setting up described multiple form, form described in each waits for that each event loop that event triggers circulates in each self-corresponding process.
Preferably, when described graphical controllable interface comprises multiple form, the graphical controllable interface that described DUT utilizes in software module the graphical function preset to generate needs by DPI comprises: described DUT imports described graphical function by described DPI, wherein, described graphical function is used for setting up haplopia window; Described DUT calls n described graphical function, sets up described multiple form respectively, and wherein, n is the quantity of described multiple form.
Preferably, after setting up described multiple form, described method can also comprise: described DUT imports multiple handling function by described DPI from described software module, and wherein, each handling function is used for performing a kind of operation to described form; Described DUT calls described handling function, performs corresponding operation to described form; The operation of execution is generated task to described DUT or function exports to described software module.
Preferably, described multiple form can comprise: for show type information form, for showing the form of the image information in emulation and the form for the input information that receives external unit.
Preferably, the input information of described external unit can comprise: DUT parameter; After the input information receiving described external unit, described method can also comprise: the described DUT parameter received exports in described software module by described DPI by described DUT, and described software module utilizes described DUT parameter to be configured renewal to described DUT.
According to a further aspect in the invention, provide a kind of simulating, verifying device of SOC (system on a chip), comprise: equipment under test, for utilizing the graphical function preset in software module to generate the graphical controllable interface needed by DPI in simulation process, by described graphical controllable interface, receive input information and/or the Output simulation information of external unit; Described software module, for providing described graphical function by described DPI.
Preferably, described equipment under test adopts Verilog to describe.
Pass through the present invention, equipment under test is by Direct Programming interface (Direct Programming Interface, referred to as DPI) utilize the graphical function in software module to generate graphical controllable interface, thus outside control can be received in simulation process, solve in correlation technique and cause due to the IO interface do not arranged for external control the problem that the controllability of simulating, verifying is lower, and then improve the controllability of SOC checking.
Accompanying drawing explanation
Accompanying drawing described herein is used to provide a further understanding of the present invention, and form a application's part, schematic description and description of the present invention, for explaining the present invention, does not form inappropriate limitation of the present invention.In the accompanying drawings:
Fig. 1 is the structural representation of the simulating, verifying device of SOC according to the embodiment of the present invention;
Fig. 2 is the structural representation of the simulating, verifying device of SOC according to the preferred embodiment of the invention;
Fig. 3 is the process flow diagram of the emulation verification method of SOC according to the embodiment of the present invention;
Fig. 4 is the process flow diagram that many according to the preferred embodiment of the invention forms create.
Embodiment
Hereinafter also describe the present invention in detail with reference to accompanying drawing in conjunction with the embodiments.It should be noted that, when not conflicting, the embodiment in the application and the feature in embodiment can combine mutually.
Fig. 1 is the structural representation of the simulating, verifying device of SOC according to the embodiment of the present invention, as shown in Figure 1, this device mainly comprises: equipment under test (DUT) 10, for utilizing the graphical function preset in software module 20 to generate the graphical controllable interface needed by DPI in simulation process, by described graphical controllable interface, receive input information and/or the Output simulation information of external unit; Software module 20, is communicated with equipment under test 10 by DPI, for providing described graphical function by described DPI.
By the said apparatus of the embodiment of the present invention, equipment under test 10 can utilize the graphical function in software module 20 to generate graphical controllable interface by DPI in simulation process, thus outside can be controlled simulation process by graphical function, and then improve the controllability of checking.
In a preferred implementation of the embodiment of the present invention, equipment under test 10 can be described by Verilog, such as, equipment under test 10 can for describe hardware register transmitting stage (Register Transfer Level, referred to as RTL) module with Verilog.
In another preferred implementation of the embodiment of the present invention, as shown in Figure 2, software module 20 can be that C language realizes, and provides described graphical function.
In a preferred implementation of the embodiment of the present invention, the graphical function that C language realizes can call Xlib storehouse, and the basic function utilizing Xlib storehouse to provide writes the utility function based on X Server.The utility function write is carried out a series ofly to encapsulate flexibly, become and such as create window, create cie system of color representation cie, create the basic handling function such as font and the input of wait event for flexible Application.Wherein, X Window system is the graphic operation interface of UNIX world Plays, what take is the mode operating of Server/Client, Server refers to X Server, be a complete graphic tabletop device, Client refers to all X Window application programs performed in this Display, screen drawing, receives mouse and input through keyboard etc., all must send request to X Server, by X Server on behalf of completing.The line of communication of Server/Client is X Window bottom function storehouse: Xlib.Xlib storehouse provides the access to X server bottom to program, is the storehouse that C language provides simultaneously, and the function that therefore can call Xlib storehouse in C software uses.
As shown in Figure 2, function recycling DPI interface packaged in C imports in the hardware verification environment (comprising DUT 10) of Verilog realization, in Verilog, directly can utilize the graphical function of the support X Server be encapsulated in C like this, set up general Modular jig.By module flexibly exampleization in the verification platform of software and hardware cooperating simulation, the graphical controllable interface expected just can be realized in the process of emulation, the information such as real-time Output simulation image, change DUT configuration parameter etc. at any time, the controllability of whole simulation process and intuitive are greatly enhanced.Module can carry out creating and safeguarding according to concrete needs flexibly simultaneously, and order uses more convenient, and simulation process has more maintainability.
According to the embodiment of the present invention, additionally provide the emulation verification method of a kind of SOC, the method can be realized by the device shown in Fig. 1 or Fig. 2.
Fig. 3 is the process flow diagram of the emulation verification method of SOC according to the embodiment of the present invention, and as shown in Figure 3, the method mainly comprises the following steps:
Step S302, in simulation process, DUT utilizes in software module the graphical function preset to generate the graphical controllable interface needed by DPI;
Wherein, graphical controllable interface can comprise one or more form, and each form may be used for responding different inputs, and wherein, set up haplopia window relatively simple, setting up multiple form in actual applications can be convenient and more directly perceived.Such as, three forms can be set up: a form is for showing type information, a form for showing the image information in emulation, and another form is for receiving the input information (comprising DUT parameter and drawing etc.) of the external unit such as keyboard or mouse.
In specific implementation process, for the foundation of graphical controllable interface comprising multiple form, include but not limited to following two schemes:
The first scheme: write one for creating the module (i.e. graphical function) of multiple form in software module, by DPI, this module is imported in DUT, DUT calls this module, platform module exampleization being entered emulation directly creates multiple form, and each form respectively circular wait event separately triggers;
First scheme: the module (i.e. graphical function) of writing a general haplopia window in software module, by DPI, this module is imported in DUT, then as required, DUT calls this module for many times, the multiple such module of exampleization in platform, create different viewing windows, each form single cycle waits for that the event of oneself triggers.
The first scheme is convenient in actual use, and first scheme is more flexible, can select the mode of employing according to different demands.
Step S304, by described graphical controllable interface, receives input information and/or the Output simulation information of external unit.
Wherein, the input information of external unit comprises: DUT parameter, after the input information receiving described external unit, the described DUT parameter received exports in described software module by described DPI by described DUT, described software module utilizes described DUT parameter to be configured renewal to described DUT, thus follow-up the Realization of Simulation is operated on new DUT configuration, and without the need to reruning emulation, and then improve the efficiency of whole proof procedure.
Below for the device shown in Fig. 2, the flow process setting up many forms in the preferred embodiment of the present invention is described.
Example 1
In this example, above-mentioned first scheme is adopted to create the mode of multiple form, as shown in Figure 4, in this example, first need to link with Xlib storehouse, compile the software based on Xlib, such as, XOpenDisplay () function can be used to obtain display pointer that one is connected to this server, can be packaged into contiguous function, and obtain a rreturn value.The function creation that Xlib namely can be utilized after being connected to X server to provide and initialization window, can set the attribute of window according to the concrete function of window after creating window.Such as, load font, color, then arrange prospect background look, window title etc., these all can be write flexibly according to the function provided in Xlib handbook and encapsulate and then use at window.Next step is the pre-receiving kind of setting window, and such as, window is the response etc. of certain operation receiving keyboard or mouse.After a form sets, whole program just waits in its event loop event_loop that corresponding event triggers, if event obtains triggering and just goes to process this event according to design, judge whether after process still to need to continue wait event, need, return event_loop and continue circular wait, do not need, exit and terminate, wherein, event_loop can write as required.
In a preferred implementation of the embodiment of the present invention, each step can be packaged into function separately by the process of above-mentioned establishment form, calls successively respectively in import to verilog hardware.In another preferred embodiment, overall package can become create the function of viewer module, then imported in hardware environment by DPI and use, all can realize required window-functions.
In embodiments of the present invention, after setting up the desktop window of a general single window module, can exampleization be several in software and hardware cooperating simulation platform flexibly according to specific needs, thus creating multiple viewer module, each module is independently operated in its event loop, can respond respective event respectively and trigger.
Example 2
For the mode adopting the first scheme to create multiple form, if adopt one process to create the mode of many viewer module, the refreshing efficiency that form is drawn can be lower, there is certain delay the time, thus the triggering of some events may be caused not processed in real time, the effect of refreshing is good not.
Such as, if adopt one process to create three viewer module, event_loop circulation is all there is in three c_task, three circulations all will utilize DPI interface to refresh in real time, there will be a circulation and rob the situation that account for event that DPI interface causes other to circulate and also need to wait for the response of DPI interface when triggering, such refreshing efficiency comparison is low, if if other the circulation current state being in derivation (expose) when circulation takies DPI interface, then its event triggers and will can not get response, the process of some events will be lost, and the effect refreshed is bad.
Adopt in this example and create multi-process programming solution in software module, realize three forms and wait for that three event_loop that event triggers circulate in respective process, three processes are independent of each other, no longer seize same DPI interface, the situation of the event of losing can be avoided, and improve the effect of refreshing.
In the preferred implementation of the embodiment of the present invention, setting up when multiple form responds different inputs and various output all to adopt the mode of this multi-process to realize, can in RTL hardware environment many viewer module of the software simulating that exampleization one importing (import) is come in, in emulation when receiving the DUT parameter of input through keyboard, renewal is configured to DUT, follow-up the Realization of Simulation is made to operate on new DUT configuration, and without the need to reruning emulation, improve the efficiency of whole proof procedure.
In above-mentioned example 1 and example 2, after simulating, verifying terminates and terminates all calling, need to close the connection with X Server server, such as, XCloseDisplay (display) function of Xlib can be called.The desktop window module of such foundation is carried out exampleization according to the needs of concrete checking and is used, and the DUT configuration that can realize software-hardware co-designing process is controlled, and increases intuitional means such as exporting printing control information.
From above description, can find out, the embodiment of the present invention provides a kind of utilization to set up the device and method that graphic tabletop viewer module improves proof procedure controllability flexibly, it has can change emulation DUT parameter at any time in the process of software-hardware co-designing, real-time Output simulation information, Output simulation image, the effects such as change block configuration, change uncontrollable defect in simulating, verifying process.Realizing graphic tabletop device within hardware, this module is added software and hardware cooperating simulation verification platform flexibly as a fixture, for verifying the graphic tabletop form providing controlled flexibly, controllability and the intuitive of checking can be increased.
Obviously, those skilled in the art should be understood that, above-mentioned of the present invention each module or each step can realize with general calculation element, they can concentrate on single calculation element, or be distributed on network that multiple calculation element forms, alternatively, they can realize with the executable program code of calculation element, thus, they can be stored and be performed by calculation element in the storage device, and in some cases, step shown or described by can performing with the order be different from herein, or they are made into each integrated circuit modules respectively, or the multiple module in them or step are made into single integrated circuit module to realize.Like this, the present invention is not restricted to any specific hardware and software combination.
The foregoing is only the preferred embodiments of the present invention, be not limited to the present invention, for a person skilled in the art, the present invention can have various modifications and variations.Within the spirit and principles in the present invention all, any amendment done, equivalent replacement, improvement etc., all should be included within protection scope of the present invention.

Claims (9)

1. an emulation verification method of SOC (system on a chip) SOC, is characterized in that, comprising:
In simulating, verifying process, equipment under test DUT utilizes in software module the graphical function preset to generate the graphical controllable interface needed by Direct Programming interface DPI;
By described graphical controllable interface, receive input information and/or the Output simulation information of external unit;
Wherein, described equipment under test is for describe hardware register transmitting stage RTL module with Verilog;
The input information of described external unit comprises: DUT parameter.
2. method according to claim 1, is characterized in that, described graphical controllable interface comprises: one or more form.
3. method according to claim 2, is characterized in that, when described graphical controllable interface comprises multiple form, the graphical controllable interface that described DUT utilizes in software module the graphical function preset to generate needs by DPI comprises:
Described DUT imports described graphical function by described DPI, and wherein, described graphical function is for setting up the form identical with described multiple form quantity;
Described DUT calls described graphical function, sets up described multiple form.
4. method according to claim 3, it is characterized in that, described method also comprises: described software module creates multiple process, each process corresponds to a form in described multiple form, after setting up described multiple form, form described in each waits for that each event loop that event triggers circulates in each self-corresponding process.
5. method according to claim 2, is characterized in that, when described graphical controllable interface comprises multiple form, the graphical controllable interface that described DUT utilizes in software module the graphical function preset to generate needs by DPI comprises:
Described DUT imports described graphical function by described DPI, and wherein, described graphical function is used for setting up haplopia window;
Described DUT calls n described graphical function, sets up described multiple form respectively, and wherein, n is the quantity of described multiple form.
6. method according to claim 5, is characterized in that, after setting up described multiple form, described method also comprises:
Described DUT imports multiple handling function by described DPI from described software module, and wherein, each handling function is used for performing a kind of operation to described form;
Described DUT calls described handling function, performs corresponding operation to described form;
The operation of execution is generated task to described DUT or function exports to described software module.
7. the method according to any one of claim 3 to 6, is characterized in that, described multiple form comprises: for show type information form, for showing the form of the image information in emulation and the form for the input information that receives external unit.
8. method according to any one of claim 1 to 6, is characterized in that, the input information of described external unit comprises: DUT parameter; After the input information receiving described external unit, described method also comprises: the described DUT parameter received exports in described software module by described DPI by described DUT, and described software module utilizes described DUT parameter to be configured renewal to described DUT.
9. a simulating, verifying device of SOC (system on a chip) SOC, is characterized in that, comprising:
Equipment under test, for utilizing the graphical function preset in software module to generate the graphical controllable interface needed by DPI in simulating, verifying process, by described graphical controllable interface, receives input information and/or the Output simulation information of external unit;
Described software module, for providing described graphical function by described DPI;
Wherein, described equipment under test is for describe hardware register transmitting stage RTL module with Verilog;
The input information of described external unit comprises: DUT parameter.
CN201110092119.2A 2011-04-13 2011-04-13 The emulation verification method of SOC (system on a chip) and device Active CN102184131B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110092119.2A CN102184131B (en) 2011-04-13 2011-04-13 The emulation verification method of SOC (system on a chip) and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110092119.2A CN102184131B (en) 2011-04-13 2011-04-13 The emulation verification method of SOC (system on a chip) and device

Publications (2)

Publication Number Publication Date
CN102184131A CN102184131A (en) 2011-09-14
CN102184131B true CN102184131B (en) 2015-08-12

Family

ID=44570311

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110092119.2A Active CN102184131B (en) 2011-04-13 2011-04-13 The emulation verification method of SOC (system on a chip) and device

Country Status (1)

Country Link
CN (1) CN102184131B (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111061629A (en) * 2019-11-21 2020-04-24 中国航空工业集团公司西安航空计算技术研究所 Graphic command pre-decoding unit verification platform based on Verilog

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1577274A (en) * 2003-07-01 2005-02-09 华为技术有限公司 Automation emulation method and system
CN101174283A (en) * 2007-12-03 2008-05-07 电子科技大学 Software and hardware cooperating simulation platform based on network

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7409602B2 (en) * 2003-11-12 2008-08-05 Lsi Corporation Methodology for debugging RTL simulations of processor based system on chip
US8205174B2 (en) * 2009-08-17 2012-06-19 Hong Kong Applied Science And Technology Research Integrated circuit modeling method and framework tool

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1577274A (en) * 2003-07-01 2005-02-09 华为技术有限公司 Automation emulation method and system
CN101174283A (en) * 2007-12-03 2008-05-07 电子科技大学 Software and hardware cooperating simulation platform based on network

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
基于System Verilog DPI 的ARM SoC虚拟调试验证平台的设计;虞致国等;《微电子学与计算机》;20091105;第117-119页、图4 *

Also Published As

Publication number Publication date
CN102184131A (en) 2011-09-14

Similar Documents

Publication Publication Date Title
CN108519952B (en) A kind of distributed WEB automatization test system and method
CN104866327B (en) A kind of PHP development approaches and framework
CN1105353C (en) Method for testing the system components in an object-oriented program
CN104216715A (en) Web App development framework and method
CN105740139B (en) A kind of debugging embedded software method based on virtual environment
CN106406266A (en) Method used for simulating device controlled by nuclear power plant DCS system
US20100082315A1 (en) Interface between a verification environment and a hardware acceleration engine
CN103092732A (en) System used for dynamically monitoring device by scripts
CN106775668A (en) The mobile applications Development Framework and implementation method of cross operating system
CN108985459A (en) The method and apparatus of training pattern
US20160094158A1 (en) Method for power station simulation
CN105487403A (en) Establishment of motion control system based on CAN and simulation modeling method
CN102184131B (en) The emulation verification method of SOC (system on a chip) and device
CN108228139B (en) Singlechip development system and device based on HTML5 browser frame
CN103678099A (en) Method and device for achieving communications of hardware platform and software platform
CN106896956B (en) The implementation method of multi-point touch under one kind " road " system
CN102043628A (en) Method and system for developing on screen display (OSD) application software and multimedia terminal
US11223961B2 (en) Configuration method of wireless network system, configuration terminal and configuration system
CN102331961A (en) Method, system and dispatcher for simulating multiple processors in parallel
CN102033751A (en) Software adaptation method and system for OSD, and multimedia terminal
CN105740039A (en) RTX and VMIC based GNC real-time simulation system construction method
CN114745257B (en) Data frame debugging method, device, equipment and storage medium
CN105630513A (en) Framework building method and framework building device
US20220147097A1 (en) Synchronization signal generating circuit, chip and synchronization method and device, based on multi-core architecture
CN104951346A (en) Process management method for embedded system as well as system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20151109

Address after: Dameisha Yantian District of Shenzhen City, Guangdong province 518085 Building No. 1

Patentee after: SHENZHEN ZTE MICROELECTRONICS TECHNOLOGY CO., LTD.

Address before: 518057 Nanshan District science and technology, Guangdong Province, South Road, No. 55, No.

Patentee before: ZTE Corporation

EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20110914

Assignee: Xi'an Chris Semiconductor Technology Co. Ltd.

Assignor: SHENZHEN ZTE MICROELECTRONICS TECHNOLOGY CO., LTD.

Contract record no.: 2019440020036

Denomination of invention: Simulation verification method and device for SoC (system on a chip)

Granted publication date: 20150812

License type: Common License

Record date: 20190619

EE01 Entry into force of recordation of patent licensing contract