WO2012131978A1 - 設計検証装置及び設計検証方法 - Google Patents

設計検証装置及び設計検証方法 Download PDF

Info

Publication number
WO2012131978A1
WO2012131978A1 PCT/JP2011/058216 JP2011058216W WO2012131978A1 WO 2012131978 A1 WO2012131978 A1 WO 2012131978A1 JP 2011058216 W JP2011058216 W JP 2011058216W WO 2012131978 A1 WO2012131978 A1 WO 2012131978A1
Authority
WO
WIPO (PCT)
Prior art keywords
connection
model
unit
input
information
Prior art date
Application number
PCT/JP2011/058216
Other languages
English (en)
French (fr)
Inventor
聡 松原
東樹 佐野
Original Assignee
富士通株式会社
富士通セミコンダクター株式会社
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 富士通株式会社, 富士通セミコンダクター株式会社 filed Critical 富士通株式会社
Priority to PCT/JP2011/058216 priority Critical patent/WO2012131978A1/ja
Publication of WO2012131978A1 publication Critical patent/WO2012131978A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking
    • G06F30/3323Design verification, e.g. functional simulation or model checking using formal methods, e.g. equivalence checking or property checking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/36Circuit design at the analogue level
    • G06F30/367Design verification, e.g. using simulation, simulation program with integrated circuit emphasis [SPICE], direct methods or relaxation methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2119/00Details relating to the type or aim of the analysis or the optimisation
    • G06F2119/06Power analysis or power optimisation

Definitions

  • the present invention relates to an integrated circuit design verification apparatus and a design verification method.
  • a circuit design is verified using a model (behavior model) described in a hardware language.
  • model-based verification that verifies the circuit by replacing it with a model with a high abstraction level created in a hardware description language is the mainstream.
  • the verification using the model since there is no means for acquiring the load at the connection destination, the verification is based on a preset output load. Therefore, there is a problem that when a load different from the assumption is connected, the verification cannot be performed accurately.
  • connection information indicating a connection relationship between models which are functional units of an integrated circuit
  • input capacitance information indicating an input capacitance value of an input terminal for each model
  • an output load condition for each model.
  • a search unit that searches for a connection destination model connected from a connection source model, and the connection destination model searched by the connection destination search unit
  • a first extraction unit for extracting the input capacitance value from the input capacitance information; the input capacitance value extracted by the first extraction unit; and the output load condition of the connection source model stored in the storage unit
  • a verification unit that verifies the output load of the connection source model by comparing the connection source models.
  • a program for causing a computer to function as the design verification apparatus, a recording medium recording the program, and a design verification apparatus method can be used.
  • the output load can be accurately verified according to the connection state of the model before the operation of the circuit using the model is verified.
  • FIG. 11 is a flowchart for explaining an example of wiring capacity information extraction processing performed in step S10-2 of FIG. 10;
  • FIG. 11 is a flowchart for explaining another example of the wiring capacity information extraction process performed in step S10-2 of FIG.
  • It is a figure which shows the 1st model connection example.
  • It is a figure which shows the 2nd model connection example.
  • It is a figure for demonstrating the output characteristic in a different connection state. An example of a test bench is shown.
  • the design verification apparatus is a computer apparatus and has a hardware configuration as shown in FIG.
  • FIG. 1 is a block diagram illustrating a hardware configuration of the design verification apparatus.
  • a design verification apparatus 100 is a terminal controlled by a computer, and includes a CPU (Central Processing Unit) 11, a memory unit 12, a display unit 13, an output unit 14, an input unit 15, and communication.
  • Unit 16 It has a storage device 17 and a driver 18 and is connected to the system bus B.
  • CPU Central Processing Unit
  • the CPU 11 controls the design verification apparatus 100 according to a program stored in the memory unit 12.
  • the memory unit 12 uses RAM (Random Access Memory), ROM (Read-Only Memory), etc., and is obtained by a program executed by the CPU 11, data necessary for processing by the CPU 11, and processing by the CPU 11. Stored data. A part of the memory unit 12 is allocated as a work area used for processing by the CPU 11.
  • the display unit 13 displays various information required under the control of the CPU 11.
  • the output unit 14 has a printer or the like, and is used for outputting various types of information in accordance with instructions from the user.
  • the input unit 15 includes a mouse, a keyboard, and the like, and is used by a user who is a designer to input various information necessary for the design verification apparatus 100 to perform processing.
  • the communication unit 16 is a device that is connected to, for example, the Internet, a LAN (Local Area Network), or the like and controls communication with an external device.
  • a hard disk unit is used as the storage device 17 and stores data such as programs for executing various processes.
  • a program for realizing the processing performed by the design verification apparatus 100 is provided to the design verification apparatus 100 by a storage medium 19 such as a CD-ROM (Compact Disc Read-Only Memory). That is, when the storage medium 19 storing the program is set in the driver 18, the driver 18 reads the program from the storage medium 19, and the read program is installed in the storage device 17 via the system bus B. . When the program is activated, the CPU 11 starts its processing according to the program installed in the storage device 17.
  • the medium for storing the program is not limited to a CD-ROM, and any medium that can be read by a computer may be used.
  • a computer-readable storage medium in addition to a CD-ROM, a portable recording medium such as a DVD disk or a USB memory, or a semiconductor memory such as a flash memory may be used.
  • FIG. 2 is a diagram illustrating a first functional configuration example of the design verification apparatus.
  • the design verification apparatus 100 includes a connection destination search unit 41, an information extraction unit 42, an output load verification unit 43, and a storage unit 50.
  • the storage unit 50 includes a model DB (DataBase) 51, connection information 52, specific input terminal information 53, input capacity information 61, extracted input capacity information 62, output load specification data 71, and a verification result 72. Is stored.
  • model DB DataBase
  • the information 62, the output load specification data 71, and the verification result 72 are realized by processing performed by the CPU 11 executing the program according to the present embodiment.
  • connection destination search unit 41 For each model (behavior model) constituting the large-scale integrated circuit stored in the model DB 51, the connection destination search unit 41 uses the connection information 52 to input the model of the connection destination connected to each model output terminal. A processing unit for searching for a terminal. The input terminals of all connected models are searched, and the specific input terminal information 53 related to the searched input terminals is stored in the storage unit 50.
  • the information extraction unit 42 extracts the value of the input capacity of the input terminal from the input capacity information 61 for each input terminal of the connection destination model indicated by the specific input terminal information 53, and inputs the value for each output terminal of the connection source model. It is a processing unit for adding up the capacity values. Extracted input capacity information 62 indicating the total value of the input capacity extracted for each output terminal is stored in the storage unit 50.
  • the output load verification unit 43 adds the input capacity obtained from the extracted input capacity information 62 and the load condition (allowable range, etc.) of the output load defined by the specifications obtained from the output load specification data 71. Is a processing unit that verifies the output load. A verification result 72 indicating the detection result of the output load is stored in the storage unit 50.
  • the model DB 51 is a database that stores and manages model data 51a in which functional unit operations are described in a hardware description language or the like in association with model identification information for identifying a model.
  • Model data 51a is managed by the model DB 51 for all models constituting the large-scale integrated circuit.
  • the model data 51a includes the input capacitance of the input terminal in advance.
  • connection information 52 is information indicating the connection relationship between the output terminal and the input terminal connected to the terminal.
  • the specific input terminal information 53 includes input terminal identification information for identifying the input terminal of the connection destination model for each output terminal of the connection source model.
  • the connection destination model identification information of the connection destination model, the input terminal identification information of the input terminal Are associated.
  • the input capacity information 61 includes the value of the input capacity of each input terminal included in the model data 51a.
  • the value of the input capacity is associated with each combination of the model identification information and the input terminal identification information of the input terminal for each input terminal extracted in advance from the model data 51a of all models. Yes.
  • the extracted input capacity information 62 includes the total value of the input capacity extracted for each output terminal of the connection source model.
  • the value of the input capacity extracted for each combination of the connection source model identification information of the connection source model and the output terminal identification information of the output terminal is associated.
  • the output load specification data 71 includes data indicating the allowable range of the output load defined by the specifications for each model.
  • the output load specification data 71 may be a table in which an allowable range of output load is associated with each model identification information.
  • the verification result 72 indicates the verification result of the output load for each model and for each output terminal.
  • the verification result 72 may be a table indicating the verification result in association with the combination of the model identification information of the connection source model and the output terminal identification information of the output terminal.
  • FIG. 3 is a flowchart for explaining the overall process of the model output load verification process.
  • the connection destination search unit 41 performs a connection destination input terminal search process (step S10).
  • the connection destination search unit 41 stores the specific input terminal information 53 in the storage unit 50.
  • the information extraction unit 42 performs an information extraction process using the specific input terminal information 53 stored in the storage unit 50 by the connection destination search unit 41 (step S20).
  • the extracted input capacity information 62 is stored in the storage unit 50 by the information extraction unit 42.
  • the output load verification unit 43 performs an output load verification process using the extracted input capacity information 62 stored in the storage unit 50 by the information extraction unit 42 (step S30).
  • the output load verification unit 43 stores the verification result 72 by the output load verification process in the storage unit 50.
  • FIG. 4 is a flowchart for explaining the connection destination input terminal search process in step S10 of FIG.
  • the connection destination search unit 41 inputs one model as a connection source (step S11).
  • Model data 51a corresponding to one model is read from the model DB 51, and model identification information is acquired.
  • connection destination searching unit 41 selects one output terminal of the connection source model by referring to the model data 51a (step S12). Output terminal identification information of the selected output terminal is acquired.
  • connection destination search unit 41 refers to the connection information 52 using the output terminal identification information acquired in step S12, and identifies input terminals of all models that are connected to the selected output terminal (step S13). ). From the connection information 52, input terminal identification information of the input terminals of all models that are connected to the selected output terminal is acquired. Specific input terminal information 53 including the acquired input terminal identification information is stored in the storage unit 50. At that time, in association with the combination of the model identification information acquired in step S11 and the output terminal identification information acquired in step S12, the model identification information of each model connected to the selected output terminal and the input of the input terminal Stores terminal identification information.
  • connection destination search unit 41 determines whether or not the search for the input terminals that are connected for all the output terminals has been completed (step S14). If the search for input terminals that are connected for all output terminals has not been completed, the connection destination search unit 41 returns to step S12 and performs the same processing as described above.
  • connection destination search unit 41 determines whether or not the process has been completed for all the models (step S15).
  • FIG. 5 is a flowchart for explaining the information extraction process in step S20 of FIG.
  • the information extraction part 42 extracts the value of the input capacitance of each input terminal (step S21).
  • the information extraction unit 42 acquires the input capacity information 61 including the input terminal identification information indicated by the specific input terminal information 53 acquired by the connection destination search unit 41 from the storage unit 50, and acquires the input capacity information 61 from the acquired input capacity information 61. Extract the input capacitance value.
  • the information extraction unit 42 adds the input capacity values extracted for each output terminal of the connection source model (step S22).
  • the information extraction unit 42 sorts the specific input terminal information 53 in the order of connection source model identification information, output terminal identification information, connection destination model identification information, and input terminal identification information to obtain connection source model identification information and output terminal identification information. For the specific input terminal information 53 having the same value, the associated input capacity values are added together.
  • the information extraction unit 42 stores extracted input capacity information 62 including connection source model identification information, output terminal identification information, and an input capacity value in the storage unit 50. And the information extraction part 42 complete
  • FIG. 6 is a flowchart for explaining the output load verification process in step S30 of FIG.
  • the output load verification unit 43 compares the total value of the input capacity indicated by the extracted input capacity information 62 stored in the storage unit 50 with the load condition of the output terminal indicated by the output load specification data 71. (Step S31).
  • the output load verification unit 43 determines whether or not the total value of the input capacitance satisfies the load condition of the output terminal (step S32). When the total value of the input capacitance does not satisfy the load condition of the output terminal, the output load verification unit 43 stores the verification result 72 indicating the specification violation detection in the storage unit 50 (step S33). On the other hand, when the total value of the input capacitance satisfies the load condition of the output terminal, the output load verification unit 43 stores a verification result 72 indicating no specification violation in the storage unit 50 (step S34). And the output load verification part 43 complete
  • FIG. 7 illustrates an example of load amount extraction of an output terminal by the above-described model output load verification process for a connection source model having an output terminal connected to a plurality of connection destination models (a plurality of input terminals).
  • FIG. 7 is a diagram for explaining an example of load amount extraction at the output terminal.
  • the connection source model 51b includes a buffer 8b, an input terminal IN, output terminals OUT-A, OUT-B, OUT-C, and the like.
  • the connection destination model 51c-1 includes a buffer 8c-1, an input terminal IN1, an output terminal OUT1, and the like.
  • the connection destination model 51c-2 includes a buffer 8c-2, an input terminal IN2, an output terminal OUT2, and the like.
  • the connection destination model 51c-3 includes a buffer 8c-3, an input terminal IN3, an output terminal OUT3, and the like.
  • the connection destination model 51c-4 has an input terminal IN4, an output terminal OUT4, and the like.
  • the connection destination model 51c-5 has an input terminal IN5, an output terminal OUT5, and the like.
  • connection source model 51b having a plurality of output terminals OUT-A to OUT-C is input in step S11 of FIG.
  • connection destination search unit 41 is connected to the output terminal OUT-A, the input terminal IN1 of the connection destination model 51c-1, the input terminal IN2 of the connection destination model 51c-2, and the connection The input terminal IN3 of the previous model 51c-3 is specified.
  • Specific input terminal information 53 is created for each of the input terminals IN1, IN2, and IN3 connected to the output terminal OUT-A and stored in the storage unit 50 (steps S12 and S13 in FIG. 4).
  • connection destination search unit 41 refers to the connection information 52 to identify the input terminal IN4 of the connection destination model 51c-4 connected to the output terminal OUT-B, and specific input terminal information of the input terminal IN4. 53 is created and stored in the storage unit 50. Similarly, the specific input terminal information 53 is created and stored in the storage unit 50 for the input terminal IN5 of the connection destination model 51c-5 connected to the output terminal OUT-B.
  • the information extraction unit 42 acquires the value A of the input capacitance of the input terminal IN1 from the model data 51a of the connection destination model 51c-1 for the output terminal OUT-A of the connection source model 51b (FIG. 5). Step S21). In addition, the information extraction unit 42 acquires the value B of the input capacity of the input terminal IN1 from the model data 51a of the connection destination model 51c-2, and the input capacity of the input terminal IN1 from the model data 51a of the connection destination model 51c-3. Get the value C.
  • the information extraction unit 42 acquires the value D of the input capacitance of the input terminal IN4 from the model data 51a of the connection destination model 51c-4 for the output terminal OUT-B of the connection source model 51b. Further, the information extraction unit 42 acquires the value E of the input capacitance of the input terminal IN5 from the model data 51a of the connection destination model 51c-5 for the output terminal OUT-C of the connection source model 51b.
  • the information extraction unit 42 creates the extracted input capacity information 62 for each output terminal OUT-A, OUT-B, and OUT-C (step S22 in FIG. 5).
  • the extracted input capacity information 62 indicating the total value of the input capacity values A, B, and C is created.
  • Extracted input capacity information 62 indicating an input capacity value D is created for the output terminal OUT-B of the connection source model 51b.
  • extracted input capacity information 62 indicating an input capacity value E is created for the output terminal OUT-C of the connection source model 51b.
  • FIG. 8 is a flowchart for explaining the first output load verification process for verifying the output load of the selected output terminal.
  • steps similar to those in FIGS. 4, 5, and 6 are given the same reference numerals, and descriptions thereof are omitted.
  • the first output load verification process is executed by the CPU 11.
  • step S12 in which the output terminal is selected from the model input in step S11 by the connection destination search unit 41, the output terminal may be selected by the user.
  • the input terminals of all models that are connected to the selected output terminal are identified (step S13).
  • the information extraction unit 42 performs steps S21 and S22.
  • the total value of the input capacity obtained in step S22 is set in the capacity parameter of the instance part of the output terminal (step S29).
  • the capacity parameter By changing the capacity parameter to the capacity corresponding to the connection state, it is possible to accurately verify the operation of the large scale integrated circuit using the model. For example, the relationship between the output buffer voltage V, current A, ON resistance R, and capacitance C is
  • the model expressed by can be used.
  • An output voltage waveform corresponding to the capacitance C changed according to the connection state can be generated.
  • step S31 to S34 are performed by the output load verification part 43, this 1st output load verification process is complete
  • the output load is verified using the parameter values included in the model data 51a.
  • a method for verifying the output load by further adding wiring capacitance will be described below.
  • FIG. 9 is a diagram illustrating a second functional configuration example of the design verification apparatus.
  • the design verification apparatus 100-2 shown in FIG. 9 further includes a wiring capacity information extraction unit 42-2, and the storage unit 50-2 includes Furthermore, layout data 80, wiring capacity information 81, and extracted wiring capacity information 82 are stored.
  • the wiring capacity information extracting unit 42-2, the layout data 80, the wiring capacity information 81, and the extracted wiring capacity information 82 are realized by processing performed by the CPU 11 executing the program according to the present embodiment. .
  • the wiring capacity information extraction unit 42-2 extracts the wiring capacity value of the connection node from the wiring capacity information 81 extracted from the layout data 80 for each input terminal of the connection destination model indicated by the specific input terminal information 53. This is a processing unit that adds the wiring capacitance values for each output terminal of the connection source model. Extracted wiring capacity information 82 indicating the total value of the wiring capacity extracted for each output terminal is stored in the storage unit 50-2.
  • the layout data 80 includes information such as model arrangement information, wiring capacity for each connection node between models, wiring resistance, and wiring inductance.
  • Each connection node is defined by an output terminal of the connection source model and an input terminal of the connection destination model.
  • the wiring capacity information 81 includes a wiring capacity value for each connection node.
  • the value of the wiring capacity previously extracted from the layout data 30 is associated with each combination of the output terminal identification information of the output terminal that defines the connection node and the input terminal identification information of the input terminal.
  • the extracted wiring capacity information 82 includes the total value of the wiring capacity extracted for each output terminal of the connection source model.
  • the value of the wiring capacity extracted for each combination of the connection source model identification information of the connection source model and the output terminal identification information of the output terminal is associated.
  • FIG. 10 is a flowchart for explaining the second output load verification process in consideration of the wiring capacity.
  • the second output load verification process is executed by the CPU 11.
  • step S10 After the connection destination search process by the connection destination search unit 41 (step S10), the wiring capacity information extraction process by the wiring capacity information extraction unit 42-2 is performed (step S10). -2).
  • step S20 information extraction processing by the information extraction unit 42 is also performed (step S20).
  • the order of the wiring capacity information extraction process (step S10-2) and the information extraction process (step S20) does not matter. It may be processed in parallel.
  • the load capacity value for each output terminal of the connection source model Is calculated.
  • step S30 the output load is verified in consideration of the wiring capacity.
  • FIG. 11 is a flowchart for explaining an example of the wiring capacity information extraction process performed in step S10-2 of FIG.
  • the wiring capacity information extracting unit 42-2 extracts the wiring capacity value of each connection node (step S51).
  • the wiring capacity information extraction unit 42-2 acquires the wiring capacity information 81 including the input terminal identification information indicated by the specific input terminal information 53 acquired by the connection destination search unit 41 from the storage unit 50, and acquires the acquired wiring A wiring capacitance value is extracted from the capacitance information 81.
  • the wiring capacity information extraction unit 42-2 adds the wiring capacity values extracted for each output terminal of the connection source model (step S52).
  • the wiring capacity information extraction unit 42-2 sorts the specific input terminal information 53 in the order of connection source model identification information, output terminal identification information, connection destination model identification information, and input terminal identification information, so that connection source model identification information and With respect to the specific input terminal information 53 having the same output terminal identification information, the associated wiring capacitance values are added together.
  • the wiring capacity information extraction unit 42-2 stores the extracted wiring capacity information 82 including the connection source model identification information, the output terminal identification information, and the wiring capacity value in the storage unit 50. Then, the wiring capacity information extraction unit 42-2 ends this wiring capacity information extraction process.
  • FIG. 12 is a flowchart for explaining another example of the wiring capacity information extraction processing performed in step S10-2 of FIG.
  • the wiring capacity information extraction unit 42-2 extracts the value of the wiring capacity of each connection node (step S51-2).
  • the wiring capacity information extraction unit 42-2 acquires the wiring capacity information 81 ′ including the input terminal identification information indicated by the specific input terminal information 53 acquired by the connection destination search unit 41 from the storage unit 50 and acquires the wiring capacity information 81 ′.
  • a wiring capacitance value is extracted from the wiring capacitance information 81 ′.
  • the wiring capacity information 81 ′ has the same data structure as the wiring capacity information 81, and includes a wiring capacity value estimated in advance by a designer for each connection node.
  • step S52 the wiring capacity information extraction unit 42-2 adds the wiring capacity values extracted for each output terminal of the connection source model (step S52), and ends this wiring capacity information extraction process. Since the processing in step S52 is the same as that in FIG. 11, the description thereof is omitted.
  • FIG. 13 is a diagram illustrating a first model connection example.
  • the connection source model 9a has a buffer 7a and the like
  • the connection destination model 9b has a buffer 7b and the like.
  • the first model connection example shown in FIG. 13 shows a case where the connection source model 9a is connected to only one connection destination model 9b.
  • the node N1 indicates a connection node in the connection between the connection source model 9a and the connection destination model 9b.
  • FIG. 14 is a diagram illustrating a second model connection example.
  • the connection source model 9a includes a buffer 7a and the like as in FIG.
  • the connection destination models 9b-1, 9b-2,... 9b-m have buffers 7b-1, 7b-2,.
  • connection source model 9a is connected to a plurality of connection destination models 9b-1 to 9b-m.
  • the node N2 indicates a connection node in the connection between the connection source model 9a and the connection destination model 9b-m.
  • FIG. 15A shows an output voltage waveform in the first model connection example shown in FIG.
  • FIG. 15B shows an output voltage waveform in the second model connection example shown in FIG.
  • the vertical axis represents voltage and the horizontal axis represents time.
  • FIG. 15A shows an output voltage waveform NV1 at the node N1 when a circuit operation simulation is performed in the first model connection example shown in FIG.
  • FIG. 15B the output voltage waveform NV2 at the node N2 when the present embodiment is applied when the circuit operation is simulated in the second model connection example shown in FIG. 14, and the present embodiment is applied.
  • An output voltage waveform NV3 at the node N2 in the case of not performing is shown.
  • FIG. 15B when a plurality of connection destination models 9b-1 to 9b-m are connected to the connection source model 9a, a difference is indicated depending on whether this embodiment is applied.
  • the output load uses a constant expected value regardless of the number of connection destination models connected to the output terminal OUT of the connection source model 9a, and therefore the output voltage waveform NV3 of the node N2 is A waveform similar to the output voltage waveform NV1 shown in FIG.
  • the time from the rising to the stabilization of the voltage is a time t2 longer than the time t1.
  • connection destination models 9b-1 to 9b-m are connected to the connection source model 9a, the circuit operation is simulated with a voltage waveform corresponding to the connection state. Therefore, the behavior of the actual circuit can be verified with higher accuracy.
  • the voltage waveform corresponding to the connection state can be output. That is, as the number of connections increases, it becomes possible to output a voltage waveform that takes time from the rising to the stabilization at each connection node.
  • a value of the load capacity corresponding to the connection state is given to the output terminal OUT of the connection source model 9a, and whether the given load capacity satisfies the specification It can be verified before the simulation of the circuit operation. Therefore, the circuit operation can be simulated more efficiently.
  • FIG. 16 shows an example of a test bench.
  • the verification circuit 210 is a circuit that configures a plurality of models 2a to 2h in the uppermost layer.
  • the models 2a, 2b, 2c, 2f, 2g, and 2h transmit and receive signals to and from the test bench 200.
  • the model 2a is connected to two or more models from the other models 2b to 2h.
  • Each model 2b to 2h is similarly connected to two or more models.
  • Models 2a to 2h show complex connection relationships.
  • the verification circuit 210 may have a one-to-one connection relationship model.
  • the output load uses a constant expected value, and thus it is not possible to detect a state in which a load different from the assumption is connected.
  • verification based on the output load corresponding to the number of connections is possible, so that highly accurate verification can be realized.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

 設計検証装置は、集積回路の機能単位であるモデル間の接続関係を示す接続情報と、該モデル毎の入力端子の入力容量値を示す入力容量情報と、該モデル毎の出力負荷条件とを記憶する記憶部と、前記記憶部に記憶された前記接続情報に基づいて、接続元モデルから接続される接続先モデルを探索する探索部と、前記接続先探索部によって探索された前記接続先モデルの前記入力容量情報から前記入力容量値を抽出する第1抽出部と、前記第1抽出部によって抽出された前記入力容量値と、前記記憶部に記憶された前記接続元モデルの前記出力負荷条件とを比較することによって前記接続元モデルの出力負荷を検証する検証部とを有する。

Description

設計検証装置及び設計検証方法
 本発明は、集積回路の設計検証装置及び設計検証方法に関する。
 従来より、回路設計の段階において、ハードウェア言語で記述されたモデル(ビヘイビアモデル)を使用して回路設計を検証することが行なわれている。
 回路設計を精度良く行うために、ビヘイビアモデルの電圧電流特性、過渡特性、及び負荷特性間の整合性が満たされるように、各特性について補正した補正モデルを生成することなどが提案されている。
特開2009-70287号公報
 しかしながら、回路の出力負荷の検証は、トランジスタモデルや素子レベルのモデルを使用して行う必要があり、シミュレーションに膨大な時間を要するため、小規模回路の設計検証のみに行なわれていた。
 大規模集積回路に対して出力負荷検証を行うには、使用するコンピュータ装置のメモリ制約、又は、現実的な時間でシミュレーションが終了しない等の問題があり、実際に回路を製造してからでないと検証できなかった。従って、製造後の検証にて不具合が発生した場合、設計の見直しなどによるコストの増大、また、納期の遅延が発生していた。
 上述した従来技術のように、大規模な集積回路の設計ではシミュレーション時間を短縮する為に、回路をハードウェア記述言語で作成した高い抽象度のモデルに置き換えて検証するモデルベース検証が主流であるが、モデルを用いた検証では、接続先の負荷を取得する手段がないため予め設定された出力負荷に基づく検証となっていた。従って、想定と異なる負荷が接続された場合、精度よく検証することができないと言った問題があった。
 開示の技術は、集積回路の機能単位であるモデル間の接続関係を示す接続情報と、該モデル毎の入力端子の入力容量値を示す入力容量情報と、該モデル毎の出力負荷条件とを記憶する記憶部と、前記記憶部に記憶された前記接続情報に基づいて、接続元モデルから接続される接続先モデルを探索する探索部と、前記接続先探索部によって探索された前記接続先モデルの前記入力容量情報から前記入力容量値を抽出する第1抽出部と、前記第1抽出部によって抽出された前記入力容量値と、前記記憶部に記憶された前記接続元モデルの前記出力負荷条件とを比較することによって前記接続元モデルの出力負荷を検証する検証部とを有することを特徴とする設計検証装置のように構成される。
 また、上記課題を解決するための手段として、コンピュータに上記設計検証装置として機能させるためのプログラム、そのプログラムを記録した記録媒体、及び設計検証装置方法とすることもできる。
 開示の技術では、モデルを用いた回路の動作検証を行なう前の段階で、モデルの接続状態に応じて出力負荷を精度よく検証することができる。
設計検証装置のハードウェア構成を示すブロック図である。 設計検証装置の機能構成例を示す図である。 モデル出力負荷検証処理の全体処理を説明するためのフローチャート図である。 図3のステップS10での接続先入力端子探索処理を説明するためのフローチャート図である。 図3のステップS20での情報抽出処理を説明するためのフローチャート図である。 図3のステップS30での出力負荷検証処理を説明するためのフローチャート図である。 出力端子の負荷量抽出例を説明するための図である。 選択された出力端子の出力負荷を検証する第1出力負荷検証処理について説明するためのフローチャート図である。 設計検証装置の第2機能構成例を示す図である。 配線容量を考慮した第2出力負荷検証処理について説明するためのフローチャート図である。 図10のステップS10-2で行われる配線容量情報抽出処理の一例を説明するためのフローチャート図である。 図10のステップS10-2で行われる配線容量情報抽出処理の他の例を説明するためのフローチャート図である。 第1モデル接続例を示す図である 第2モデル接続例を示す図である。 異なる接続状態における出力特性を説明するための図である。 テストベンチの例を示す。
 以下、本発明の実施の形態を図面に基づいて説明する。本実施例に係る設計検証装置は、コンピュータ装置であり、図1に示すようなハードウェア構成を有する。図1は、設計検証装置のハードウェア構成を示すブロック図である。
 図1において、設計検証装置100は、コンピュータによって制御される端末であって、CPU(Central Processing Unit)11と、メモリユニット12と、表示ユニット13と、出力ユニット14と、入力ユニット15と、通信ユニット16と、
記憶装置17と、ドライバ18とを有し 、システムバスBに接続される。
 CPU11は、メモリユニット12に格納されたプログラムに従って設計検証装置100を制御する。メモリユニット12には、RAM(Random Access Memory)及びROM(Read-Only Memory)等が用いられ、CPU11にて実行されるプログラム、CPU11での処理に必要なデータ、CPU11での処理にて得られたデータ等を格納する。また、メモリユニット12の一部の領域が、CPU11での処理に利用されるワークエリアとして割り付けられている。
 表示ユニット13は、CPU11の制御のもとに必要な各種情報を表示する。出力ユニット14は、プリンタ等を有し、利用者からの指示に応じて各種情報を出力するために用いられる。入力ユニット15は、マウス、キーボード等を有し、設計者であるユーザが設計検証装置100が処理を行なうための必要な各種情報を入力するために用いられる。通信ユニット16は、例えばインターネット、LAN(Local Area Network)等に接続し、外部装置との間の通信制御をするための装置である。記憶装置17には、例えば、ハードディスクユニットが用いられ、各種処理を実行するプログラム等のデータを格納する。
 設計検証装置100によって行われる処理を実現するプログラムは、例えば、CD-ROM(Compact Disc Read-Only Memory)等の記憶媒体19によって設計検証装置100に提供される。即ち、プログラムが保存された記憶媒体19がドライバ18にセットされると、ドライバ18が記憶媒体19からプログラムを読み出し、その読み出されたプログラムがシステムバスBを介して記憶装置17にインストールされる。そして、プログラムが起動されると、記憶装置17にインストールされたプログラムに従ってCPU11がその処理を開始する。尚、プログラムを格納する媒体としてCD-ROMに限定するものではなく、コンピュータが読み取り可能な媒体であればよい。コンピュータ読取可能な記憶媒体として、CD-ROMの他に、DVDディスク、USBメモリ等の可搬型記録媒体、フラッシュメモリ等の半導体メモリであっても良い。
 図2は、設計検証装置の第1機能構成例を示す図である。図2において、設計検証装置100は、接続先探索部41と、情報抽出部42と、出力負荷検証部43と、記憶部50とを有する。記憶部50には、モデルDB(DataBase)51と、接続情報52と、特定入力端子情報53と、入力容量情報61と、抽出入力容量情報62と、出力負荷仕様データ71と、検証結果72とが格納される。
 接続先探索部41と、情報抽出部42と、出力負荷検証部43と、記憶部50と、モデルDB51と、接続情報52と、特定入力端子情報53と、入力容量情報61と、抽出入力容量情報62と、出力負荷仕様データ71と、検証結果72とは、本実施例に係るプログラムをCPU11が実行することによって行われる処理によって実現される。
 接続先探索部41は、モデルDB51に格納される大規模集積回路を構成する各モデル(ビヘイビアモデル)について、接続情報52を用いて、モデルの出力端子毎に接続される接続先のモデルの入力端子を探索する処理部である。接続先の全てのモデルの入力端子が探索され、探索された入力端子に係る特定入力端子情報53が記憶部50に格納される。
 情報抽出部42は、特定入力端子情報53によって示される接続先モデルの入力端子毎に、入力容量情報61からその入力端子の入力容量の値を抽出して、接続元モデルの出力端子毎に入力容量の値を合算する処理部である。出力端子毎に抽出された入力容量の合算値を示す抽出入力容量情報62が記憶部50に格納される。
 出力負荷検証部43は、出力端子毎に、抽出入力容量情報62から得られる入力容量の合算値と、出力負荷仕様データ71から得られる仕様で定められた出力負荷の負荷条件(許容範囲など)とを比較することによって、出力負荷を検証する処理部である。出力負荷の検出結果を示す検証結果72が記憶部50に格納される。
 モデルDB51は、機能単位の動作をハードウェア記述言語などによって記述したモデルデータ51aを、モデルを識別するモデル識別情報に対応付けて格納し管理するデータベースである。大規模集積回路を構成する全ての各モデルに関してモデルデータ51aがモデルDB51で管理される。本実施例において、モデルデータ51aには、予め、入力端子の入力容量を含めておく。
 接続情報52は、出力端子とその端子に接続される入力端子との接続関係を示す情報である。RTL(Register Transfer Level)設計によるVerilogモデル、アナログ回路のSPICEネットリスト等である。
 特定入力端子情報53は、接続元モデルの出力端子毎に、接続先モデルの入力端子を識別する入力端子識別情報を含む。特定入力端子情報53では、接続元モデルの接続元モデル識別情報と出力端子を識別する出力端子識別情報との組み合わせ毎に、接続先モデルの接続先モデル識別情報と入力端子の入力端子識別情報とが対応付けられている。
 入力容量情報61は、モデルデータ51aに含まれている各入力端子の入力容量の値を含む。入力容量情報61では、全てのモデルのモデルデータ51aから予め抽出しておいた入力端子毎に入力容量の値が、モデル識別情報と入力端子の入力端子識別情報との組み合わせ毎に対応付けられている。
 抽出入力容量情報62は、接続元モデルの出力端子毎に抽出した入力容量の合算値を含む。抽出入力容量情報62では、接続元モデルの接続元モデル識別情報と出力端子の出力端子識別情報との組み合わせ毎に抽出した入力容量の値が対応付けられている。
 出力負荷仕様データ71は、モデル毎の仕様で定められた出力負荷の許容範囲を示すデータを含む。出力負荷仕様データ71は、モデル識別情報毎に出力負荷の許容範囲を対応付けたテーブルであってもよい。
 検証結果72は、モデル毎かつ出力端子毎の出力負荷の検証結果を示す。検証結果72は、接続元モデルのモデル識別情報と出力端子の出力端子識別情報との組み合わせに対応付けて検証結果を示すテーブルであってもよい。
 大規模集積回路を構成する全モデルの出力負荷を検証するモデル出力負荷検証処理について説明する。図3は、モデル出力負荷検証処理の全体処理を説明するためのフローチャート図である。図3において、先ず、接続先探索部41が接続先入力端子探索処理を行う(ステップS10)。接続先探索部41によって、特定入力端子情報53が記憶部50に格納される。
 次に、情報抽出部42が、接続先探索部41によって記憶部50に格納された特定入力端子情報53を用いて、情報抽出処理を行う(ステップS20)。情報抽出部42によって、抽出入力容量情報62が記憶部50に格納される。
 そして、出力負荷検証部43が、情報抽出部42によって記憶部50に格納された抽出入力容量情報62を用いて、出力負荷検証処理を行う(ステップS30)。出力負荷検証部43によって、出力負荷検証処理による検証結果72が記憶部50に格納される。
 図4は、図3のステップS10での接続先入力端子探索処理を説明するためのフローチャート図である。図4において、接続先探索部41は、接続元となるモデルを1つ入力する(ステップS11)。モデルDB51から1つのモデルに相当するモデルデータ51aが読み込まれ、モデル識別情報が取得される。
 接続先探索部41は、モデルデータ51aを参照することによって、接続元モデルの出力端子を1つ選択する(ステップS12)。選択した出力端子の出力端子識別情報が取得される。
 次に、接続先探索部41は、ステップS12で取得した出力端子識別情報を用いて接続情報52を参照して、選択した出力端子と接続関係にある全モデルの入力端子を特定する(ステップS13)。接続情報52から、選択した出力端子と接続関係にある全モデルの入力端子の入力端子識別情報が取得される。取得した入力端子識別情報を含む特定入力端子情報53が記憶部50に格納される。その際、ステップS11で取得したモデル識別情報とステップS12で取得した出力端子識別情報との組み合わせに対応づけて、選択した出力端子と接続関係にある各モデルのモデル識別情報とその入力端子の入力端子識別情報とを格納する。
 そして、接続先探索部41は、全出力端子について接続関係にある入力端子の探索を終了したか否かを判断する(ステップS14)。全出力端子について接続関係にある入力端子の探索が終了していない場合、接続先探索部41は、ステップS12へ戻り、上述同様の処理を行う。
 一方、全出力端子について接続関係にある入力端子の探索が終了した場合、接続先探索部41は、全モデルに対して処理を終了したか否かを判断する(ステップS15)。
 図5は、図3のステップS20での情報抽出処理を説明するためのフローチャート図である。図5において、情報抽出部42は、各入力端子の入力容量の値を抽出する(ステップS21)。情報抽出部42は、記憶部50から、接続先探索部41によって取得された特定入力端子情報53で示される入力端子識別情報を含む入力容量情報61を取得して、取得した入力容量情報61から入力容量の値を抽出する。
 次に、情報抽出部42は、接続元モデルの出力端子毎に抽出した入力容量の値を合算する(ステップS22)。情報抽出部42は、特定入力端子情報53を、接続元モデル識別情報、出力端子識別情報、接続先モデル識別情報、入力端子識別情報の順にソートして、接続元モデル識別情報及び出力端子識別情報が同一の特定入力端子情報53に関して、対応付けられている入力容量の値を合算する。情報抽出部42は、接続元モデル識別情報と、出力端子識別情報と、入力容量の値とを含む抽出入力容量情報62を記憶部50に格納する。そして、情報抽出部42は、この情報抽出処理を終了する。
 図6は、図3のステップS30での出力負荷検証処理を説明するためのフローチャート図である。図6において、出力負荷検証部43は、記憶部50に格納されている抽出入力容量情報62で示される入力容量の合算値と出力負荷仕様データ71で示される出力端子の負荷条件とを比較する(ステップS31)。
 出力負荷検証部43は、入力容量の合算値が出力端子の負荷条件を満たしているか否かを判断する(ステップS32)。入力容量の合算値が出力端子の負荷条件を満たしていない場合、出力負荷検証部43は、仕様違反検出を示す検証結果72を記憶部50に格納する(ステップS33)。一方、出力負荷検証部43は、入力容量の合算値が出力端子の負荷条件を満たしていた場合、仕様違反なしを示す検証結果72を記憶部50に格納する(ステップS34)。そして、出力負荷検証部43は、この出力負荷検証処理を終了する。
 複数の接続先モデル(複数の入力端子)に接続される出力端子を有する接続元モデルについて、上述したモデル出力負荷検証処理による出力端子の負荷量抽出例を図7で説明する。図7は、出力端子の負荷量抽出例を説明するための図である。図7中、接続元モデル51bは、バッファ8bと、入力端子INと、出力端子OUT-A、OUT-B、及びOUT-Cなどを有する。また、接続先モデル51c-1は、バッファ8c-1と、入力端子IN1と、出力端子OUT1などを有する。接続先モデル51c-2は、バッファ8c-2と、入力端子IN2と、出力端子OUT2などを有する。接続先モデル51c-3は、バッファ8c-3と、入力端子IN3と、出力端子OUT3などを有する。接続先モデル51c-4は、入力端子IN4と、出力端子OUT4などを有する。接続先モデル51c-5は、入力端子IN5と、出力端子OUT5などを有する。
 図7に示す出力端子の負荷量抽出例では、図4のステップS11において、複数の出力端子OUT-AからOUT-Cを有する接続元モデル51bが入力された場合を示している。
 接続先探索部41は、接続情報52を参照することによって、出力端子OUT-Aに接続される、接続先モデル51c-1の入力端子IN1、接続先モデル51c-2の入力端子IN2、及び接続先モデル51c-3の入力端子IN3を特定する。出力端子OUT-Aに接続される入力端子IN1、IN2、及びIN3の各々に対して特定入力端子情報53が作成され、記憶部50に格納される(図4のステップS12及びS13)。
 同様に、接続先探索部41は、接続情報52を参照することによって、出力端子OUT-Bに接続される接続先モデル51c-4の入力端子IN4を特定し、入力端子IN4の特定入力端子情報53が作成され、記憶部50に格納される。出力端子OUT-Bに接続される接続先モデル51c-5の入力端子IN5についても、同様に、特定入力端子情報53が作成され、記憶部50に格納される。
 次に、情報抽出部42は、接続元モデル51bの出力端子OUT-Aに対して、接続先モデル51c-1のモデルデータ51aから入力端子IN1の入力容量の値Aを取得する(図5のステップS21)。また、情報抽出部42は、接続先モデル51c-2のモデルデータ51aから入力端子IN1の入力容量の値Bを取得し、接続先モデル51c-3のモデルデータ51aから入力端子IN1の入力容量の値Cを取得する。
 また、情報抽出部42は、接続元モデル51bの出力端子OUT-Bに対して、接続先モデル51c-4のモデルデータ51aから入力端子IN4の入力容量の値Dを取得する。更に、情報抽出部42は、接続元モデル51bの出力端子OUT-Cに対して、接続先モデル51c-5のモデルデータ51aから入力端子IN5の入力容量の値Eを取得する。
 そして、情報抽出部42は、各出力端子OUT-A、OUT-B、及びOUT-Cの抽出入力容量情報62を作成する(図5のステップS22)。接続元モデル51bの出力端子OUT-Aに対して、入力容量の値A、B、及びCの合算値を示す抽出入力容量情報62が作成される。接続元モデル51bの出力端子OUT-Bに対して、入力容量の値Dを示す抽出入力容量情報62が作成される。同様に、接続元モデル51bの出力端子OUT-Cに対して、入力容量の値Eを示す抽出入力容量情報62が作成される。
 上述したように、モデルデータ51aに入力端子毎に入力容量の値を設定しておくことで、接続情報52に基づいて、接続元モデル51bの出力端子OUT-A、OUT-B、及びOUT-Cの各々の出力負荷を取得することが可能となる。
 次に、選択された出力端子に関して出力負荷を検証する第1出力負荷検証処理について説明する。図8は、選択された出力端子の出力負荷を検証する第1出力負荷検証処理について説明するためのフローチャート図である。図8中、図4、図5、及び図6におけるステップと同様のステップには同一符号を付し、その説明を省略する。第1出力負荷検証処理はCPU11によって実行される。
 図8に示される第1出力負荷検証処理において、接続先探索部41によってステップS11にて入力されたモデルから出力端子が選択されるステップS12では、ユーザによって出力端子を選択してもよい。選択された出力端子と接続関係にある全モデルの入力端子が特定される(ステップS13)。そして、情報抽出部42によってステップS21及びS22が行われる。
 その後、出力端子のインスタンス部の容量パラメータに、ステップS22で求めた入力容量の合算値が設定される(ステップS29)。容量パラメータが接続状態に対応した容量に変更されることで、モデルを用いて大規模集積回路の動作をシミュレーションする際に精度良く検証することができる。例えば、出力バッファの電圧V、電流A、ON抵抗R、及び容量Cとの関係が、
Figure JPOXMLDOC01-appb-M000001
で表現されるモデルを用いればよい。接続状態に従って変更された容量Cに応じた出力電圧波形を生成することができる。
 そして、出力負荷検証部43によってステップS31からS34が行われた後、この第1出力負荷検証処理は終了する。
 上述したモデル出力負荷検証処理(図3から図6)及び第1出力負荷検証処理(図8)では、モデルデータ51aに含まれるパラメータの値を用いて出力負荷を検証するようにしたものであるが、以下に、配線容量を更に加えて出力負荷を検証する方法について説明する。
 図9は、設計検証装置の第2機能構成例を示す図である。図9中、図2に示す構成部と同様の構成部には同一符号を付し、その説明を省略する。図2に示す第1機能構成例との違いにおいて、図9に示す設計検証装置100-2は、更に、配線容量情報抽出部42-2を有し、また、記憶部50-2には、更に、レイアウトデータ80と、配線容量情報81と、抽出配線容量情報82とが格納される。配線容量情報抽出部42-2と、レイアウトデータ80と、配線容量情報81と、抽出配線容量情報82とも同様に、本実施例に係るプログラムをCPU11が実行することによって行われる処理によって実現される。
 配線容量情報抽出部42-2は、特定入力端子情報53によって示される接続先モデルの入力端子毎に、レイアウトデータ80から抽出された配線容量情報81から接続ノードの配線容量の値を抽出して、接続元モデルの出力端子毎に配線容量の値を合算する処理部である。出力端子毎に抽出された配線容量の合算値を示す抽出配線容量情報82が記憶部50-2に格納される。
 レイアウトデータ80は、モデルの配置情報、モデル間の接続ノード毎の配線容量、配線抵抗、配線インダクタンスなどの情報を含む。各接続ノードは、接続元モデルの出力端子と接続先モデルの入力端子とで定義される。
 配線容量情報81は、接続ノード毎の配線容量の値を含む。配線容量情報81では、予めレイアウトデータ30から抽出した配線容量の値が、接続ノードを定義する出力端子の出力端子識別情報と入力端子の入力端子識別情報との組み合わせ毎に対応付けられている。
 抽出配線容量情報82は、接続元モデルの出力端子毎に抽出した配線容量の合算値を含む。抽出配線容量情報82では、接続元モデルの接続元モデル識別情報と出力端子の出力端子識別情報との組み合わせ毎に抽出した配線容量の値が対応付けられている。
 接続先の入力端子の入力容量と配線容量との合計値を接続元モデルの出力端子の容量値とする第2出力負荷検証処理について説明する。図10は、配線容量を考慮した第2出力負荷検証処理について説明するためのフローチャート図である。図10中、図4におけるステップと同様のステップには同一符号を付し、その説明を省略する。第2出力負荷検証処理はCPU11によって実行される。
 図10に示される第2出力負荷検証処理において、接続先探索部41による接続先探索処理(ステップS10)の後、配線容量情報抽出部42-2による配線容量情報抽出処理が行われる(ステップS10-2)。
 一方、情報抽出部42による情報抽出処理も行われる(ステップS20)。配線容量情報抽出処理(ステップS10-2)と情報抽出処理(ステップS20)の順序は問わない。並列に処理されてもよい。
 配線容量情報抽出処理(ステップS10-2)から得られる抽出配線容量情報82と、情報抽出処理(ステップS20)から得られる抽出入力容量情報62とから、接続元モデルの出力端子毎に負荷容量値の合計が算出される。
 従って、出力負荷検証部43によって行なわれる出力負荷検証処理(ステップS30)では、配線容量を考慮した出力負荷の検証が行なわれる。
 図11は、図10のステップS10-2で行われる配線容量情報抽出処理の一例を説明するためのフローチャート図である。図11において、配線容量情報抽出部42-2は、各接続ノードの配線容量の値を抽出する(ステップS51)。配線容量情報抽出部42-2は、記憶部50から、接続先探索部41によって取得された特定入力端子情報53で示される入力端子識別情報を含む配線容量情報81を取得して、取得した配線容量情報81から配線容量の値を抽出する。
 次に、配線容量情報抽出部42-2は、接続元モデルの出力端子毎に抽出した配線容量の値を合算する(ステップS52)。配線容量情報抽出部42-2は、特定入力端子情報53を、接続元モデル識別情報、出力端子識別情報、接続先モデル識別情報、入力端子識別情報の順にソートして、接続元モデル識別情報及び出力端子識別情報が同一の特定入力端子情報53に関して、対応付けられている配線容量の値を合算する。配線容量情報抽出部42-2は、接続元モデル識別情報と、出力端子識別情報と、配線容量の値とを含む抽出配線容量情報82を記憶部50に格納する。そして、配線容量情報抽出部42-2は、この配線容量情報抽出処理を終了する。
 レイアウトデータ80から予め抽出しておいた配線容量情報81を用いる代わりに、設計者が見積もった配線容量の値を用いてもよい。図12は、図10のステップS10-2で行われる配線容量情報抽出処理の他の例を説明するためのフローチャート図である。図12において、配線容量情報抽出部42-2は、各接続ノードの配線容量の値を抽出する(ステップS51-2)。配線容量情報抽出部42-2は、記憶部50から、接続先探索部41によって取得された特定入力端子情報53で示される入力端子識別情報を含む配線容量情報81’を取得して、取得した配線容量情報81’から配線容量の値を抽出する。
 配線容量情報81’は、配線容量情報81と同様のデータ構成を有し、接続ノード毎の設計者によって予め見積もられた配線容量の値を含む。
 次に、配線容量情報抽出部42-2は、接続元モデルの出力端子毎に抽出した配線容量の値を合算して(ステップS52)、この配線容量情報抽出処理を終了する。ステップS52での処理は、図11と同様であるので、その説明を省略する。
 以下に、本実施例を適用した場合と適用しない場合との出力負荷の検証結果の違いについて、図13から図15で説明する。図13は、第1モデル接続例を示す図である。図13中、接続元モデル9aはバッファ7aなどを有する、接続先モデル9bはバッファ7bなどを有する。
 図13に示す第1モデル接続例では、接続元モデル9aが、一つの接続先モデル9bとだけに接続される場合を示している。このモデル接続例において、ノードN1は接続元モデル9aと接続先モデル9bとの接続における接続ノードを示している。
 図14は、第2モデル接続例を示す図である。図14中、図13と同様に接続元モデル9aはバッファ7aなどを有する。接続先モデル9b-1、9b-2、・・・9b-mは夫々バッファ7b-1、7b-2、・・・7b-mなどを有する。
 図14に示す第2モデル接続例では、接続元モデル9aが、複数の接続先モデル9b-1から9b-mに接続される場合を示している。このモデル接続例において、ノードN2は接続元モデル9aと接続先モデル9b-mとの接続における接続ノードを示している。
 異なる接続状態の出力特性について図15で説明する。図15(A)は、図13に示す第1モデル接続例における出力電圧波形を示す。図15(B)は、図14に示す第2モデル接続例における出力電圧波形を示す。図15(A)及び図15(B)中、縦軸に電圧を示し、横軸に時間を示す。
 図15(A)では、図13に示す第1モデル接続例において回路動作のシミュレーションを行った場合の、ノードN1での出力電圧波形NV1が示されている。
 図15(A)に示されるように、一つの接続先モデル9bが接続元モデル9aに接続された場合には、ノードN1での出力電圧波形NV1の立ち上がりから安定するまでに時間t1を要していることが分かる。この出力電圧波形NV1は、本実施例の適用の有無に大きな違いはない。
 図15(B)では、図14に示す第2モデル接続例において回路動作のシミュレーションを行った場合の、本実施例を適用した場合のノードN2での出力電圧波形NV2と、本実施例を適用していない場合のノードN2での出力電圧波形NV3とが示されている。図15(B)に示されるように、複数の接続先モデル9b-1から9b-mが接続元モデル9aに接続された場合には、本実施例の適用の有無によって違いが示される。
 本実施例が適用されていない場合、接続元モデル9aの出力端子OUTに接続される接続先モデルの数に寄らず、出力負荷は一定の期待値を用いるため、ノードN2の出力電圧波形NV3は、図15(A)に示す出力電圧波形NV1と同様の波形となる。一方、本実施例が適用された場合のノードN2の出力電圧波形NV2では、立ち上がりから電圧が安定するまでの時間が時間t1より長い時間t2となる。
 本実施例を適用した場合には、複数の接続先モデル9b-1から9b-mが接続元モデル9aに接続された場合であっても、接続状態に応じた電圧波形で回路動作をシミュレーションすることが可能となり、より高い精度で実回路の挙動を検証することができる。
 前述したような数1で表現されるモデルを用いて回路動作をシミュレーションすることにより、図15(A)に示す出力電圧波形NV1、又は、図15(A)に示す出力電圧波形NV3のように、接続状態に応じた電圧波形を出力させることができる。つまり、接続数が多いほど、各接続ノードにおいて立ち上がりから安定するまでに時間を要する電圧波形を出力させることが可能となる。
 本実施例に係る設計検証装置100又は100-2では、接続状態に応じた負荷容量の値が接続元モデル9aの出力端子OUTに与えられ、また、与えられた負荷容量が仕様を満たしているか否かを、回路動作のシミュレーションの前に検証することができる。従って、より効率的に回路動作のシミュレーションを行うことができる。
 図16は、テストベンチの例を示す。図16に示されるテストベンチ200のモデルベースの検証対象は、検証回路210あることが示されている。例えば、検証回路210は、複数のモデル2aから2hを最上位層に構成する回路である。
 検証回路210において、モデル2a、2b、2c、2f、2g、及び2hは、テストベンチ200との間で信号の送受信を行う。モデル2aは、他モデル2bから2hの2以上のモデルと接続される。各モデル2bから2hについても同様に2以上のモデルと接続される。モデル2aから2hは複雑な接続関係を示す。また、検証回路210において、1対1の接続関係のモデルがあってもよい。
 このような複雑な接続関係を有する回路構成では、本実施例の適用がない場合、出力負荷は一定の期待値を用いるため、想定と異なる負荷が接続された状態を検出することができない。しかしながら、本実施例では、接続数に応じた出力負荷に基づいた検証が可能となるため、精度の高い検証を実現することができる。
 本発明は、具体的に開示された実施例に限定されるものではなく、特許請求の範囲から逸脱することなく、種々の変形や変更が可能である。
 2a~2h  モデル
 7a、7b、7b-1~7b-m バッファ
 8b、8c-1~8c-5 バッファ
 9a     接続元モデル
 9b、9b-1~9b-m 接続先モデル
 11     CPU
 12     メモリユニット
 13     表示ユニット
 14     出力ユニット
 14f    近似式
 15     入力ユニット
 16     通信ユニット
 16f    近似式
 17     記憶装置
 18     ドライバ
 19     記憶媒体
 41     接続先探索部
 42     情報抽出部
 42-2   配線容量情報抽出部
 43     出力負荷検証部
 50、50-2 記憶部
 51     モデルDB
 51a    モデルデータ
 51b    接続元モデル
 51c-1~51c-5 接続先モデル
 52     接続情報
 53     特定入力端子情報
 61     入力容量情報
 62     抽出入力容量情報
 71     出力負荷仕様データ
 72     検証結果
 80     レイアウトデータ
 81     配線容量情報
 82     抽出配線容量情報
 100、100-2 設計検証装置
 200    テストベンチ
 210    検証回路

Claims (8)

  1.  集積回路の機能単位であるモデル間の接続関係を示す接続情報と、該モデル毎の入力端子の入力容量値を示す入力容量情報と、該モデル毎の出力負荷条件とを記憶する記憶部と、
     前記記憶部に記憶された前記接続情報に基づいて、接続元モデルから接続される接続先モデルを探索する探索部と、
     前記接続先探索部によって探索された前記接続先モデルの前記入力容量情報から前記入力容量値を抽出する第1抽出部と、
     前記第1抽出部によって抽出された前記入力容量値と、前記記憶部に記憶された前記接続元モデルの前記出力負荷条件とを比較することによって前記接続元モデルの出力負荷を検証する検証部と
    を有することを特徴とする設計検証装置。
  2.  前記接続情報は、前記接続元モデルの出力端子と前記接続先モデルの入力端子との接続関係を示し、
     前記探索部は、前記接続情報を参照することによって、前記接続元モデルの出力端子に接続される1以上の前記接続先モデルの入力端子を特定し、
     前記第1抽出部は、前記接続元モデルの出力端子に対して、前記探索部によって特定された各入力端子の前記入力容量値を抽出し、該抽出した入力容量値を合算し、
     前記検証部は、前記合算された入力容量値と前記出力負荷条件とを比較することを特徴とする請求項1に記載の設計検証装置。
  3.  前記記憶部は、接続ノード毎の配線容量値を示す配線容量情報を記憶し、
     前記記憶部に記憶されている前記配線容量情報から、前記接続元モデルと前記探索部によって探索された前記接続先モデルとを接続する前記接続ノードの前記配線容量値を抽出する第2抽出部と、
     前記第1抽出部によって抽出された前記入力容量値と、前記第2抽出部によって抽出された前記配線容量値とを合算する容量値合算部と
    を更に有する請求項2に記載の設計検証装置。
  4.  前記第2抽出部は、前記接続元モデルの出力端子に対して、前記探索部によって特定された各入力端子の前記配線容量値を抽出し、該抽出した配線容量値を合算することを特徴とする請求項3に記載の設計検証装置。
  5.  前記配線容量情報は、前記集積回路のレイアウトデータから抽出された接続ノード毎の配線容量値を示すことを特徴とする請求項3又は4に記載の設計検証装置。
  6.  前記配線容量情報は、設計者によって予め見積もられた接続ノード毎の配線容量値を示すことを特徴とする請求項3又は4に記載の設計検証装置。
  7.  コンピュータによって実行される設計検証方法であって、
     記憶部に記憶された集積回路の機能単位であるモデル間の接続関係を示す接続情報に基づいて、接続元モデルから接続される接続先モデルを探索し、
     前記記憶部に記憶された前記接続先モデルの入力端子の入力容量値を示す入力容量情報から前記入力容量値を抽出し、
     前記抽出された前記入力容量値と、前記記憶部に記憶された前記接続元モデルの出力負荷条件とを比較することによって該接続元モデルの出力負荷を検証することを特徴とする設計検証方法。
  8.  記憶部に記憶された集積回路の機能単位であるモデル間の接続関係を示す接続情報に基づいて、接続元モデルから接続される接続先モデルを探索し、
     前記記憶部に記憶された前記接続先モデルの入力端子の入力容量値を示す入力容量情報から前記入力容量値を抽出し、
     前記抽出された前記入力容量値と、前記記憶部に記憶された前記接続元モデルの出力負荷条件とを比較することによって該接続元モデルの出力負荷を検証する
    処理をコンピュータに実行させるプログラムを記憶したコンピュータ読取可能な記憶媒体。
PCT/JP2011/058216 2011-03-31 2011-03-31 設計検証装置及び設計検証方法 WO2012131978A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/058216 WO2012131978A1 (ja) 2011-03-31 2011-03-31 設計検証装置及び設計検証方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2011/058216 WO2012131978A1 (ja) 2011-03-31 2011-03-31 設計検証装置及び設計検証方法

Publications (1)

Publication Number Publication Date
WO2012131978A1 true WO2012131978A1 (ja) 2012-10-04

Family

ID=46929799

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2011/058216 WO2012131978A1 (ja) 2011-03-31 2011-03-31 設計検証装置及び設計検証方法

Country Status (1)

Country Link
WO (1) WO2012131978A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005339003A (ja) * 2004-05-25 2005-12-08 Matsushita Electric Ind Co Ltd 回路解析方法および回路解析装置
JP2006339610A (ja) * 2005-06-06 2006-12-14 Sharp Corp 半導体集積回路装置の信頼性検証方法、半導体集積回路装置の信頼性検証装置、及びコンピュータプログラム
JP2007193518A (ja) * 2006-01-18 2007-08-02 Matsushita Electric Ind Co Ltd 半導体集積回路のレイアウト設計方法及び信頼性検証方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005339003A (ja) * 2004-05-25 2005-12-08 Matsushita Electric Ind Co Ltd 回路解析方法および回路解析装置
JP2006339610A (ja) * 2005-06-06 2006-12-14 Sharp Corp 半導体集積回路装置の信頼性検証方法、半導体集積回路装置の信頼性検証装置、及びコンピュータプログラム
JP2007193518A (ja) * 2006-01-18 2007-08-02 Matsushita Electric Ind Co Ltd 半導体集積回路のレイアウト設計方法及び信頼性検証方法

Similar Documents

Publication Publication Date Title
US8117576B2 (en) Method for using an equivalence checker to reduce verification effort in a system having analog blocks
KR101679920B1 (ko) 집적 회로 설계 방법 및 장치
US9280621B1 (en) Methods, systems, and articles of manufacture for analyzing a multi-fabric electronic design and displaying analysis results for the multi-fabric electronic design spanning and displaying simulation results across multiple design fabrics
KR102402673B1 (ko) Beol의 공정 변이를 고려하여 집적 회로를 설계하기 위한 컴퓨터 구현 방법 및 컴퓨팅 시스템
US9501593B2 (en) Semiconductor device design method, system and computer program product
US10678973B2 (en) Machine-learning design enablement platform
US20160224697A1 (en) Integrated circuit design system
US8136067B2 (en) Method of design for manufacturing
US10592631B2 (en) Method for performing netlist comparison based on pin connection relationship of components
US10997332B1 (en) System and method for computing electrical over-stress of devices associated with an electronic design
US10262097B2 (en) Method to optimize standard cells manufacturability
US7424690B2 (en) Interconnect integrity verification
US9721059B1 (en) Post-layout thermal-aware integrated circuit performance modeling
US8850374B2 (en) Method of reducing parasitic mismatch
JP2015166981A (ja) レイアウト検証方法、検証装置、及び検証プログラム
CN117610491A (zh) 一种芯片设计方法、装置、设备及计算机可读存储介质
US8510693B2 (en) Changing abstraction level of portion of circuit design during verification
JP2007094506A (ja) 回路検証システムと方法、及びプログラム
US9411918B1 (en) Simplified device model extension using subcircuits
US20230237228A1 (en) Computer readable recording medium with stored program and method of extracting parasitic parameters of a 3d ic thereof
US20080027701A1 (en) Printed Circuit Board Design Instruction Support Method and Device
WO2012131978A1 (ja) 設計検証装置及び設計検証方法
CN112861455B (zh) Fpga建模验证系统及方法
US11126768B2 (en) Methods of designing semiconductor devices, design systems performing the same and methods of manufacturing semiconductor devices using the same
JP4080464B2 (ja) 検証ベクタ生成方法およびこれを用いた電子回路の検証方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 11862792

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 11862792

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP