Method for co-verifying hardware and software for a semiconductor device
First Claim
1. A method, using a host CPU, for co-verifying hardware and software for a semiconductor device on which at least one target CPU and one OS are mounted, the hardware/software co-verification method comprising the steps of:
- (a) inputting, as a verification model, a timed software component described in a C-based language and compiling the same, inputting, as a verification model, a hardware component described in the C-based language and compiling the same, and linking together the compiled timed software component and the compiled hardware component, wherein an interrupt routine scheduler is input that is equivalent to an interrupt processing section of an instruction set simulator but is provided as an independent unit;
(b) inputting a testbench and compiling the same;
(c) linking together the verification models input in step (a) and the teatbench input in step (b);
(d) performing a C-based native code simulation without per-instruction interpretation and execution, based on an executing program generated in step (c); and
(e) outputting a result of the simulation performed in step (d).
2 Assignments
0 Petitions
Accused Products
Abstract
A hardware/software co-verification method that achieves fast simulation execution by implementing a C-based native code simulation without degrading the accuracy of timing verification. This method is a method for co-verifying hardware and software, by using a host CPU, for a semiconductor device on which at least one target CPU and one OS are mounted wherein, first, a timed software component described in a C-based language or constructed from binary code native to the host CPU and a hardware component described in the C-based language are input as verification models, necessary compiling is performed, and the compiled components are linked together. Next, a testbench is input and compiled. Then, the components and the testbench are linked together, after which simulation is performed and the result of the simulation is output.
34 Citations
7 Claims
-
1. A method, using a host CPU, for co-verifying hardware and software for a semiconductor device on which at least one target CPU and one OS are mounted, the hardware/software co-verification method comprising the steps of:
-
(a) inputting, as a verification model, a timed software component described in a C-based language and compiling the same, inputting, as a verification model, a hardware component described in the C-based language and compiling the same, and linking together the compiled timed software component and the compiled hardware component, wherein an interrupt routine scheduler is input that is equivalent to an interrupt processing section of an instruction set simulator but is provided as an independent unit; (b) inputting a testbench and compiling the same; (c) linking together the verification models input in step (a) and the teatbench input in step (b); (d) performing a C-based native code simulation without per-instruction interpretation and execution, based on an executing program generated in step (c); and (e) outputting a result of the simulation performed in step (d). - View Dependent Claims (2)
-
-
3. A method, using a host CPU, for co-verifying hardware and software for a semiconductor device on which at least one target CPU and one OS are mounted, the hardware/software co-verification method comprising the steps of:
-
(a) inputting, as a verification model, a timed software component constructed from binary code native to the host CPU, inputting as a verification model, a hardware component described in a C-based language and compiling the same, and linking together the input timed software component and the compiled hardware component, wherein an interrupt routine scheduler is input that is equivalent to an interrupt processing section of an instruction set simulator but is provided as an independent unit; (b) inputting a teatbench and compiling the same; (c) linking together the verification models input in step (a) and the teetbench input in step (b); (d) performing a C-based native code simulation without per-instruction interpretation and execution, based on an executing program generated in step (c); and (e) outputting a result of the simulation performed in step (d). - View Dependent Claims (4)
-
-
5. A method, using a host CPU, for co-verifying hardware and software for a semiconductor device on which at least one target CPU and one OS are mounted, the hardware/software co-verification method comprising the steps of:
-
(a) inputting, as a verification model, a timed software component described in a C-based language and compiling the same, inputting, as a verification model, a timed software component constructed from binary code native to the host CPU and compiling the same, inputting, as a verification model, a hardware component described in the C-based language and compiling the same, and linking together the compiled or input timed software components and the compiled hardware component, wherein an interrupt routine scheduler is input that is equivalent to an interruct processing section of an instruction set simulator but is provided as an independent unit; (b) inputting a testbench and compiling the same; (c) linking together the verification models input in step (a) and the testbench input in step (b); (d) performing a C-based native code simulation without pre-construction interpretation and execution, based on an executing program generated in step (c); and (e) outputting a result of the simulation performed in step (d). - View Dependent Claims (6, 7)
-
Specification