JP2026007731A - Circuit verification device and circuit verification method - Google Patents

Circuit verification device and circuit verification method

Info

Publication number
JP2026007731A
JP2026007731A JP2024107851A JP2024107851A JP2026007731A JP 2026007731 A JP2026007731 A JP 2026007731A JP 2024107851 A JP2024107851 A JP 2024107851A JP 2024107851 A JP2024107851 A JP 2024107851A JP 2026007731 A JP2026007731 A JP 2026007731A
Authority
JP
Japan
Prior art keywords
terminal
circuit
information
verification
resistor
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2024107851A
Other languages
Japanese (ja)
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.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Co Ltd
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 Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP2024107851A priority Critical patent/JP2026007731A/en
Publication of JP2026007731A publication Critical patent/JP2026007731A/en
Pending legal-status Critical Current

Links

Abstract

【課題】プログラマブルデバイスを含む回路を精度よく検証する回路検証装置及び方法を提供する。
【解決手段】回路検証装置において、検証部は、ネットリスト及び各ICの設計情報を使用して回路を検証する。設計情報は、各端子の属性を表す属性情報及びIC内で各端子に接続する内部回路を表す内部回路情報を含む。検証部はまた、第1のICの第1の端子が指定されたときに、ネットリストに基づいて、第1の端子に電気的に接続する第2のICの第2の端子を検出し、検証対象回路部分を特定し、第1の端子に係わる属性情報及び第2の端子に係わる属性情報に基づいて、第1の端子と第2の端子とが電気的に接続されてよいか否かを判定し、ネットリスト、第1の端子に係わる属性情報及び内部回路情報並びに第2の端子に係わる属性情報及び内部回路情報に基づいて、検証対象回路部分において抵抗が正しく設けられているか否かを判定する。
【選択図】図5

A circuit verification apparatus and method for accurately verifying a circuit including a programmable device are provided.
[Solution] In a circuit verification device, a verification unit verifies a circuit using a netlist and design information for each IC. The design information includes attribute information describing attributes of each terminal and internal circuit information describing internal circuits connected to each terminal within the IC. When a first terminal of a first IC is specified, the verification unit also detects a second terminal of a second IC electrically connected to the first terminal based on the netlist, identifies a circuit portion to be verified, determines whether the first terminal and the second terminal may be electrically connected based on the attribute information related to the first terminal and the attribute information related to the second terminal, and determines whether resistors are correctly provided in the circuit portion to be verified based on the netlist, the attribute information and internal circuit information related to the first terminal, and the attribute information and internal circuit information related to the second terminal.
[Selected figure] Figure 5

Description

本発明は、プログラマブルデバイスを含む回路を検証する装置および方法に係わる。 The present invention relates to an apparatus and method for verifying circuits including programmable devices.

各種機器を製造する際には、設計した回路が事前に検証される。他方、近年の各種機器は、設計の柔軟性を高めるために、プログラマブルデバイスを使用することが多い。ここで、プログラマブルデバイスは、その内部にユーザが設定可能な構成を備えている。このため、プログラマブルデバイス内の構成も考慮して回路の検証が行われる。なお、回路設計時にPLD(Programmable Logic Device)の内部抵抗と外部抵抗の整合性をチェックする方法が提案されている(例えば、特許文献1)。 When manufacturing various devices, the designed circuits are verified in advance. Meanwhile, in recent years, various devices often use programmable devices to increase design flexibility. Programmable devices have internal configurations that can be set by the user. Therefore, circuit verification takes into account the internal configuration of the programmable device. A method has been proposed for checking the consistency between the internal and external resistances of a programmable logic device (PLD) during circuit design (see, for example, Patent Document 1).

特開2020-095607号公報Japanese Patent Application Laid-Open No. 2020-095607

従来技術(例えば、特許文献1に記載の方法)においては、プルアップ抵抗/プルダウン抵抗の重複または不足を検出できるが、各集積回路(IC:Integrated Circuit)の各端子の属性に応じて回路を検証することはできない。このため、従来技術では、プログラマブルデバイスを含む回路が適切に設計されているか否かを精度よく検証することは難しい。 Conventional technology (for example, the method described in Patent Document 1) can detect overlapping or missing pull-up/pull-down resistors, but it cannot verify circuits based on the attributes of each terminal of each integrated circuit (IC). For this reason, it is difficult to accurately verify whether a circuit including a programmable device is properly designed using conventional technology.

本発明の1つの側面に係わる目的は、プログラマブルデバイスを含む回路を精度よく検証できる装置および方法を提供することである。 An object of one aspect of the present invention is to provide an apparatus and method capable of accurately verifying circuits including programmable devices.

本発明の1つの態様に係わる回路検証装置は、複数のICを含む対象回路を検証する。この回路検証装置は、前記複数のICどうしの接続を表すネットリスト情報を保存する第1の保存部と、前記複数のICそれぞれについての設計情報を保存する第2の保存部と、前記ネットリスト情報および前記複数のICそれぞれについての設計情報に基づいて前記対象回路を検証する検証部と、を備える。前記設計情報は、前記複数のICそれぞれについて、当該ICの各端子の属性を表す属性情報、および当該IC内で各端子に接続する内部回路を表す内部回路情報を含む。前記検証部は、前記複数のICのうちの第1のICの第1の端子が指定されたときに、前記ネットリスト情報に基づいて、前記第1の端子に電気的に接続する前記複数のICのうちの第2のICの第2の端子を検出する。前記検証部は、前記ネットリスト情報、前記第1の端子に係わる前記内部回路情報、および前記第2の端子に係わる前記内部回路情報に基づいて、前記第1の端子に電気的に接続する検証対象回路部分を検出する。前記検証部は、前記第1の端子に係わる前記属性情報および前記第2の端子に係わる前記属性情報に基づいて、前記第1の端子と前記第2の端子とが電気的に接続されてよいか否かを判定する第1の判定を行う。前記検証部は、前記ネットリスト情報、前記第1の端子に係わる前記属性情報および前記内部回路情報、および前記第2の端子に係わる前記属性情報および前記内部回路情報に基づいて、前記検証対象回路部分において抵抗が正しく設けられているか否かを判定する第2の判定を行う。 A circuit verification device according to one aspect of the present invention verifies a target circuit including multiple ICs. The circuit verification device includes a first storage unit that stores netlist information representing connections between the multiple ICs, a second storage unit that stores design information for each of the multiple ICs, and a verification unit that verifies the target circuit based on the netlist information and the design information for each of the multiple ICs. The design information includes, for each of the multiple ICs, attribute information representing attributes of each terminal of the IC and internal circuit information representing internal circuits connected to each terminal within the IC. When a first terminal of a first IC of the multiple ICs is specified, the verification unit detects a second terminal of a second IC of the multiple ICs that is electrically connected to the first terminal based on the netlist information. The verification unit detects a portion of the target circuit that is electrically connected to the first terminal based on the netlist information, the internal circuit information related to the first terminal, and the internal circuit information related to the second terminal. The verification unit performs a first determination based on the attribute information related to the first terminal and the attribute information related to the second terminal to determine whether the first terminal and the second terminal may be electrically connected. The verification unit performs a second determination based on the netlist information, the attribute information and internal circuit information related to the first terminal, and the attribute information and internal circuit information related to the second terminal to determine whether resistors are correctly provided in the circuit portion to be verified.

上述の態様によれば、プログラマブルデバイスを含む回路を精度よく検証できる。 The above-described aspects enable accurate verification of circuits including programmable devices.

検証対象の回路の一例を示す図である。FIG. 1 illustrates an example of a circuit to be verified. プログラマブルデバイスの一例を示す図である。FIG. 1 illustrates an example of a programmable device. 本発明の実施形態に係わる回路検証装置の一例を示す図である。1 is a diagram illustrating an example of a circuit verification device according to an embodiment of the present invention. プログラマブルデバイスの設計情報の一例を示す図である。FIG. 2 is a diagram illustrating an example of design information of a programmable device. 回路検証装置による検証の一例を示す図である。FIG. 10 illustrates an example of verification by a circuit verification device. 検証ルールの一例を示す図である。FIG. 10 is a diagram illustrating an example of a validation rule. 回路検証装置による検証結果の例を示す図(その1)である。FIG. 10 is a diagram (part 1) showing an example of a verification result obtained by the circuit verification device; 回路検証装置による検証結果の例を示す図(その2)である。FIG. 10 is a diagram (part 2) showing an example of a verification result obtained by the circuit verification device; 回路を検証する際に使用する回路フォーマットの一例を示す図である。FIG. 10 is a diagram illustrating an example of a circuit format used when verifying a circuit. 検証フォームおよび検証結果の表示例を示す図である。10A and 10B are diagrams illustrating examples of display of a verification form and verification results. 設計情報を登録する方法の一例を示すフローチャートである。10 is a flowchart illustrating an example of a method for registering design information. 回路検証装置の処理の一例を示すフローチャートである。10 is a flowchart illustrating an example of processing performed by the circuit verification device. 検証フォームに必要な情報を書き込む手順の一例を示す図(その1)である。FIG. 10 is a diagram (part 1) showing an example of a procedure for writing necessary information into a verification form. 検証フォームに必要な情報を書き込む手順の一例を示す図(その2)である。FIG. 10 is a diagram (part 2) showing an example of a procedure for writing necessary information into a verification form. 検証フォームに必要な情報を書き込む手順の一例を示す図(その3)である。FIG. 10 is a diagram (part 3) showing an example of a procedure for writing necessary information into a verification form. 検証部による検証処理の概要を示すフローチャートである。10 is a flowchart showing an outline of a verification process performed by a verification unit. 信号名を検証する処理の一例を示すフローチャートである。10 is a flowchart illustrating an example of a process for verifying a signal name. 出力端子に係わる検証処理の一例を示すフローチャートである。10 is a flowchart illustrating an example of a verification process related to an output terminal. オープンドレイン入力端子に係わる検証処理の一例を示すフローチャートである。10 is a flowchart illustrating an example of a verification process related to an open-drain input terminal. オープンドレイン端子に係わる検証処理の一例を示すフローチャートである。10 is a flowchart illustrating an example of a verification process related to an open drain terminal. 双方向端子に係わる検証処理の一例を示すフローチャートである。10 is a flowchart illustrating an example of a verification process related to a bidirectional terminal. 入力端子に係わる検証処理の一例を示すフローチャートである。10 is a flowchart showing an example of a verification process related to an input terminal. 回路検証装置のハードウェア構成の一例を示す図である。FIG. 1 illustrates an example of a hardware configuration of a circuit verification apparatus.

図1は、検証対象の回路の一例を示す。この実施例では、検証対象回路は、3個の集積回路(IC1~IC3)を備える。IC1のB3端子、IC2のA2端子、およびIC3の4番端子は、互いに電気的に接続されている。また、IC1のB3端子、IC2のA2端子、およびIC3の4番端子を互いに接続する信号線には、プルアップ抵抗が設けられている。 Figure 1 shows an example of a circuit to be verified. In this example, the circuit to be verified comprises three integrated circuits (IC1 to IC3). Terminal B3 of IC1, terminal A2 of IC2, and terminal 4 of IC3 are electrically connected to each other. In addition, a pull-up resistor is provided on the signal line connecting terminal B3 of IC1, terminal A2 of IC2, and terminal 4 of IC3 to each other.

IC1およびIC2は、それぞれプログラマブルデバイスである。すなわち、IC1およびIC2は、それぞれ、その内部にユーザが設定可能な構成を備える。このため、ユーザは、必要に応じて、IC1およびIC2の各端子に対して信号名を付与することができる。この実施例では、IC1のB3端子に対して信号名「IO04」が付与されており、IC2のA2端子に対して信号名「GPIO1_0」が付与されている。IC3は、非プログラマブルデバイスであり、各端子の信号名は、このICの製造者により予め設定されている。この例では、IC3の4番端子に対して信号名「ADDR3」が予め付与されている。さらに、IC1のB3端子、IC2のA2端子、およびIC3の4番端子を互いに接続する信号線(又は、その信号線を介して伝搬する信号)に対して、ユーザにより信号名「ADDR[3]」が付与されている。 IC1 and IC2 are both programmable devices. That is, IC1 and IC2 each have internal configuration that can be set by the user. Therefore, the user can assign signal names to each terminal of IC1 and IC2 as needed. In this example, the signal name "IO04" is assigned to terminal B3 of IC1, and the signal name "GPIO1_0" is assigned to terminal A2 of IC2. IC3 is a non-programmable device, and the signal names of each terminal are preset by the IC manufacturer. In this example, terminal 4 of IC3 is assigned the signal name "ADDR3." Furthermore, the user assigns the signal name "ADDR[3]" to the signal line (or the signal propagating via that signal line) connecting terminal B3 of IC1, terminal A2 of IC2, and terminal 4 of IC3 to each other.

IC1は、例えば、FPGA(Field Programmable Gate Array)である。IC2は、例えば、SoC(System on Chip)またはCPU(Central Processing Unit)である。IC3は、例えば、メモリチップである。 IC1 is, for example, an FPGA (Field Programmable Gate Array). IC2 is, for example, an SoC (System on Chip) or a CPU (Central Processing Unit). IC3 is, for example, a memory chip.

図2は、プログラマブルデバイスの一例を示す。この例では、IC1およびIC2がプログラマブルデバイスである。プログラマブルデバイスは、その内部にユーザが設定可能な構成を備える。 Figure 2 shows an example of a programmable device. In this example, IC1 and IC2 are programmable devices. A programmable device has internal configurations that can be set by the user.

IC1のB3端子には、スイッチS1、S2、抵抗R1、R2、バッファBUF、およびOE(Output Enable)端子付きトライステートバッファTRIBUFが接続されている。ユーザは、スイッチS1、S2のオン/オフ状態を設定できる。例えば、B3端子をプルアップする場合には、スイッチS1をオン状態に設定し、スイッチS2をオフ状態に設定する。B3端子をプルダウンする場合には、スイッチS1をオフ状態に設定し、スイッチS2をオン状態に設定する。B3端子を所定の電圧に固定する場合には、スイッチS1およびS2をオン状態に設定する。なお、スイッチS1およびS2をオフ状態に設定することも可能である。また、ユーザは、端子の属性に応じて、BUF、TRIBUFの状態を設定できる。例えば、B3端子を入力端子として使用するときは、BUFを有効化し、TRIBUFを無効化する。B3端子を出力端子として使用するときは、BUFを無効化し、OEを常時有効にすることでTRIBUFを有効化する。B3端子を双方向端子として使用するときは、BUFを有効化すると共に、ユーザロジックにてTRIBUFのOE端子を制御可能にする。 Connected to the B3 terminal of IC1 are switches S1 and S2, resistors R1 and R2, a buffer BUF, and a tri-state buffer TRIBUF with an OE (Output Enable) terminal. The user can set the on/off states of switches S1 and S2. For example, to pull up the B3 terminal, set switch S1 to the on state and switch S2 to the off state. To pull down the B3 terminal, set switch S1 to the off state and switch S2 to the on state. To fix the B3 terminal to a specified voltage, set switches S1 and S2 to the on state. Note that switches S1 and S2 can also be set to the off state. The user can also set the states of BUF and TRIBUF according to the terminal attributes. For example, when using the B3 terminal as an input terminal, enable BUF and disable TRIBUF. When using the B3 terminal as an output terminal, disable BUF and enable OE at all times to enable TRIBUF. When using the B3 terminal as a bidirectional terminal, enable BUF and make it possible to control the OE terminal of TRIBUF using user logic.

このように、回路がプログラマブルデバイスを含む場合、プログラマブルデバイスの内部の構成も考慮して回路を検証する必要がある。例えば、図2に示す例では、信号線ADD[3]は、抵抗R3によりプルアップされている。ここで、仮に、IC1においてスイッチS1がオン状態に設定され、スイッチS2がオフ状態に設定されているものとする。すなわち、IC1のB3端子は、その内部回路によりプルアップされている。この場合、プルアップ抵抗が重複しており、回路設計が不適切であると判定される。 As such, when a circuit includes a programmable device, the internal configuration of the programmable device must also be taken into consideration when verifying the circuit. For example, in the example shown in Figure 2, signal line ADD[3] is pulled up by resistor R3. Now, let's assume that switch S1 in IC1 is set to the on state and switch S2 is set to the off state. In other words, the B3 terminal of IC1 is pulled up by its internal circuit. In this case, the pull-up resistor is duplicated, and the circuit design is determined to be inappropriate.

なお、回路の規模が大きくなると、複数人が分担して1つの回路を設計することが多くなる。例えば、ICごとに異なる設計者が設計を行うことがある。このため、上述のように、例えば、プルアップ/プルダウン抵抗の重複または未接続が発生することがある。そこで、プログラマブルデバイスを含む回路を精度よく検証できる装置および方法が求められている。 As the scale of a circuit increases, it is common for multiple people to share the design work of a single circuit. For example, different designers may be responsible for the design of each IC. This can result in, for example, overlapping or unconnected pull-up/pull-down resistors, as described above. Therefore, there is a need for an apparatus and method that can accurately verify circuits that include programmable devices.

図3は、本発明の実施形態に係わる回路検証装置の一例を示す。本発明の実施形態に係わる回路検証装置10は、図3に示すように、ネットリスト保存部1、デバイス設計情報保存部2、検証部3、および表示部4を備える。なお、回路検証装置10は、図3に示していない他の機能をさらに備えてもよい。 Figure 3 shows an example of a circuit verification device according to an embodiment of the present invention. As shown in Figure 3, the circuit verification device 10 according to an embodiment of the present invention includes a netlist storage unit 1, a device design information storage unit 2, a verification unit 3, and a display unit 4. Note that the circuit verification device 10 may also include other functions not shown in Figure 3.

ネットリスト保存部1には、検証対象回路のネットリストが保存される。ネットリストは、回路内の部品どうしの端子間の接続を表す。例えば、図2に示す回路のネットリストは、下記の接続情報を含む。
(1)IC1のB3端子は、IC2のA2端子、IC3の4番端子、および抵抗R3の2番端子に接続する。
(2)抵抗R3の1番端子は、電源に接続する。
The netlist of the circuit to be verified is stored in the netlist storage unit 1. The netlist represents the connections between the terminals of the components in the circuit. For example, the netlist of the circuit shown in FIG. 2 includes the following connection information:
(1) The B3 terminal of IC1 is connected to the A2 terminal of IC2, the 4th terminal of IC3, and the 2nd terminal of resistor R3.
(2) Connect terminal 1 of resistor R3 to the power supply.

なお、ネットリストは、例えば、HDL(Hardware Description Language)により記述される。或いは、ネットリストは、HDLにより記述されたコードを変換することで得られる。 The netlist is written, for example, in HDL (Hardware Description Language). Alternatively, the netlist can be obtained by converting code written in HDL.

デバイス設計情報保存部2には、検証対象回路において使用される各デバイスの設計情報が保存される。この設計情報は、各端子に接続するデバイス内の信号線に付与されている信号名を表す信号名情報、各端子の属性を表す属性情報、および各端子に接続する内部回路を表す内部回路情報を含む。プログラマブルデバイスの設計情報は、ユーザにより作成される。例えば、FPGAの設計情報は、ユーザの指示に応じて配置配線ツールを利用して作成される。SoC(CPU)の設計情報は、例えば、ユーザの指示に応じてPinMux設計ツールを利用して作成される。非プログラマブルデバイスの設計情報は、製造者により提供されるデータシートから一意に定まるライブラリを作成して使用することができる。 The device design information storage unit 2 stores design information for each device used in the circuit under verification. This design information includes signal name information indicating the signal names assigned to the signal lines within the device connected to each terminal, attribute information indicating the attributes of each terminal, and internal circuit information indicating the internal circuits connected to each terminal. Design information for programmable devices is created by the user. For example, design information for FPGAs is created using a place and route tool in accordance with user instructions. Design information for SoCs (CPUs) is created using a PinMux design tool in accordance with user instructions, for example. Design information for non-programmable devices can be used by creating a unique library from data sheets provided by the manufacturer.

図4は、プログラマブルデバイスの設計情報の一例を示す。設計情報は、端子番号、信号名、属性、プル抵抗を表す情報を含む。「端子番号」は、デバイスが備える各端子を識別する。なお、BGA(Ball Grid Array)モジュールのように複数の端子が2次元状に配置されているデバイスにおいては、端子番号は、各端子が位置する座標を表す位置情報であってもよい。「信号名」は、プログラマブルデバイスにおいては、ユーザにより付与される名称を表す。例えば、FPGAにおいては、信号名は、HDLで記述された名称に相当する。SoC(CPU)においては、信号名は、デバイスの製造者が提供する複数の名称のうちからユーザにより選択された名称に相当する。 Figure 4 shows an example of design information for a programmable device. The design information includes information representing terminal numbers, signal names, attributes, and pull resistors. "Terminal numbers" identify each terminal of the device. Note that in devices with multiple terminals arranged two-dimensionally, such as BGA (Ball Grid Array) modules, the terminal numbers may be positional information representing the coordinates of the locations of each terminal. "Signal names" represent names assigned by the user in programmable devices. For example, in FPGAs, signal names correspond to names written in HDL. In SoCs (CPUs), signal names correspond to names selected by the user from among multiple names provided by the device manufacturer.

「属性」は、当該端子が、出力端子、オープンドレイン入力端子、オープンドレイン端子、双方向端子、または入力端子のいずれであるのかを表す。「プル抵抗」は、プル抵抗が設けられているか否かを表すと共に、プル抵抗が設けられている場合には、プルアップ抵抗、プルダウン抵抗、またはKEEPER回路を識別する。KEEPER回路は、電圧保持回路の一例である。なお、「プル抵抗」は、IC内で各端子に接続する内部回路を表す内部回路情報の一例である。 "Attribute" indicates whether the terminal is an output terminal, open-drain input terminal, open-drain terminal, bidirectional terminal, or input terminal. "Pull resistor" indicates whether a pull resistor is provided, and if a pull resistor is provided, identifies it as a pull-up resistor, pull-down resistor, or KEEPER circuit. A KEEPER circuit is an example of a voltage holding circuit. Note that "Pull resistor" is an example of internal circuit information that indicates the internal circuit connected to each terminal within the IC.

設計情報は、さらに他の情報を含んでもよい。例えば、設計情報は、ICの各端子について、出力駆動電流、出力負荷容量、入力容量などを表す情報を含んでもよい。 The design information may also include other information. For example, the design information may include information representing the output drive current, output load capacitance, input capacitance, etc. for each terminal of the IC.

なお、回路図が完成する前に、その回路の設計が妥当か否かを検証したいことがある。例えば、FPGAの設計の途中の段階で、そのFPGAを含む回路を検証したいことがある。よって、プログラマブルデバイスの設計情報は、ユーザが手作業で入力できるものとする。また、例えば、設計情報の一部の項目が設定されてない状態であっても、回路検証装置10は、その項目をブランクとして回路を検証できることが好ましい。 It may be necessary to verify whether the circuit design is valid before the circuit diagram is completed. For example, it may be necessary to verify a circuit including an FPGA during the design stage of that FPGA. Therefore, it is assumed that the design information for the programmable device can be manually entered by the user. Furthermore, even if some items of the design information are not set, it is preferable that the circuit verification device 10 be able to verify the circuit by leaving those items blank.

検証部3は、ネットリスト保存部1に保存されている検証対象回路のネットリストおよびデバイス設計情報保存部2に保存されている各デバイスについての設計情報に基づいて検証対象回路を検証する。このとき、検証部3は、各デバイスの各端子について、回路が検証ルールに従って設計されているか否かを検証してもよい。 The verification unit 3 verifies the circuit under verification based on the netlist of the circuit under verification stored in the netlist storage unit 1 and the design information for each device stored in the device design information storage unit 2. At this time, the verification unit 3 may verify, for each terminal of each device, whether the circuit has been designed in accordance with the verification rules.

表示部4は、検証部3による検証結果を表示する。このとき、表示部4は、検証ルールに違反している内容を強調して表示してもよい。例えば、1つの信号線に対して複数のプルアップ抵抗が重複して設けられているケース、或いは、信号線に対して必要なプルアップ抵抗が設けられてないケースなどが強調表示される。また、表示部4は、注意喚起すべき内容を強調して表示してもよい。例えば、同じ信号に対して付与されている信号名がデバイス間で異なっているケースが強調表示される。 The display unit 4 displays the verification results obtained by the verification unit 3. At this time, the display unit 4 may highlight any violations of the verification rules. For example, cases where multiple pull-up resistors are provided redundantly for a single signal line, or cases where a required pull-up resistor is not provided for a signal line, may be highlighted. The display unit 4 may also highlight any content that requires attention. For example, cases where the same signal is given different signal names between devices may be highlighted.

図5は、回路検証装置10による検証の一例を示す。この実施例では、図5Aに示す検証対象回路について検証が行われる。検証対象回路においては、IC1のA3端子、IC2のH6端子、およびIC3の5番端子が互いに接続されており、これらの端子間を接続する信号線に対して信号名「GPMC_D[8]」が付与されている。また、この信号線は、抵抗R100によりプルアップされている。 Figure 5 shows an example of verification by the circuit verification device 10. In this example, verification is performed on the circuit under verification shown in Figure 5A. In the circuit under verification, terminal A3 of IC1, terminal H6 of IC2, and terminal 5 of IC3 are connected to each other, and the signal line connecting these terminals is given the signal name "GPMC_D[8]". This signal line is also pulled up by resistor R100.

IC1のA3端子は、双方向端子であり、その信号名として「DATA[8]」が付与されている。IC2のH6端子は、双方向端子であり、その信号名として「GPMC_D08」が付与されている。また、H6端子は、IC2内でプルアップされている。IC3の5番端子は、双方向端子であり、その信号名として「D08」が付与されている。 The A3 terminal of IC1 is a bidirectional terminal, and its signal name is "DATA[8]". The H6 terminal of IC2 is a bidirectional terminal, and its signal name is "GPMC_D08". The H6 terminal is also pulled up within IC2. The 5th terminal of IC3 is a bidirectional terminal, and its signal name is "D08".

図5Bは、IC1のA3端子について行った検証の結果を示す。回路検証装置10の検証部3は、ネットリストを参照することにより、IC1のA3端子、IC2のH6端子、およびIC3の5番端子が互いに接続されており、これらの端子を接続する信号線が抵抗R100によりプルアップされていることを認識する。また、検証部3は、IC1のA3端子、IC2のH6端子、およびIC3の5番端子の設計情報を取得する。そして、検証部3は、検証対象回路のネットリストおよび各ICの設計情報に基づいて、検証対象回路が検証ルールに従って設計されている否かを検証する。 Figure 5B shows the results of verification performed on the A3 terminal of IC1. By referencing the netlist, the verification unit 3 of the circuit verification device 10 recognizes that the A3 terminal of IC1, the H6 terminal of IC2, and the 5th terminal of IC3 are connected to each other and that the signal line connecting these terminals is pulled up by resistor R100. The verification unit 3 also acquires design information for the A3 terminal of IC1, the H6 terminal of IC2, and the 5th terminal of IC3. The verification unit 3 then verifies whether the circuit under verification has been designed in accordance with the verification rules based on the netlist of the circuit under verification and the design information of each IC.

図6は、検証ルールの一例を示す。この例では、CMOSデバイスの多機能(プログラマブル)端子におけるエラー/忠告の条件を示している。また、起点となる端子の属性に対して、電源端子、GND端子、専用端子(クロック、SerDes等)は除いている。 Figure 6 shows an example of a verification rule. This example shows the error/warning conditions for multi-function (programmable) terminals of a CMOS device. Furthermore, power supply terminals, GND terminals, and dedicated terminals (clock, SerDes, etc.) are excluded from the attributes of the starting terminal.

検証ルールは、互いに電気的に接続してはいけない端子の属性の組合せを表すルール情報を含む。また、検証ルールは、端子の属性ごとに必要な抵抗回路(プルアップ抵抗、プルダウン抵抗、KEEPER回路)を表すルール情報を含む。さらに、検証ルールは、端子の属性ごとに設けてはいけない抵抗回路を表すルール情報を含む。 The validation rules include rule information that indicates combinations of terminal attributes that must not be electrically connected to each other. The validation rules also include rule information that indicates the resistor circuits (pull-up resistors, pull-down resistors, keeper circuits) required for each terminal attribute. The validation rules also include rule information that indicates the resistor circuits that must not be provided for each terminal attribute.

例えば、出力端子に係わる1つ目のルールによれば、互いに接続する複数の端子のうちの1つが出力端子であるときには、他の端子はいずれも入力端子でなければならない。そして、このルールに違反する場合、検証部3は、エラーメッセージを出力する。 For example, the first rule regarding output terminals states that if one of multiple terminals that are connected to each other is an output terminal, all other terminals must be input terminals. If this rule is violated, the verification unit 3 outputs an error message.

出力端子に係わる2つ目のルールによれば、互いに接続する複数の端子のうちの1つが出力端子であるときは、これらの端子を含む回路に2つ以上のプルアップ抵抗が設けられてはいけない。そして、このルールに違反する場合も、検証部3は、エラーメッセージを出力する。 The second rule, which concerns output terminals, states that if one of multiple interconnected terminals is an output terminal, two or more pull-up resistors must not be provided in the circuit containing these terminals. If this rule is violated, the verification unit 3 will also output an error message.

図5に示す例では、IC1のA3端子について検証が行われている。ここで、IC1のA3端子は、図5Aに示すように、双方向端子である。また、他の端子(IC2のH6端子およびIC3の5番端子)は、いずれも双方向端子である。よって、これら3つの端子の属性は検証ルールに違反していない。ところが、IC1のA3端子に電気的に接続する信号線には、プルアップ抵抗R100およびプルアップ抵抗Upが設けられている。すなわち、プルアップ抵抗が重複している。よって、検証部3は、抵抗の接続が検証ルールに違反していると判定し、表示部4は、図5Bに示すように、プルアップ抵抗R100およびIC2内でH6端子に接続するプルアップ抵抗Upを強調して表示している。 In the example shown in Figure 5, verification is being performed on the A3 terminal of IC1. Here, as shown in Figure 5A, the A3 terminal of IC1 is a bidirectional terminal. The other terminals (terminal H6 of IC2 and terminal 5 of IC3) are also bidirectional terminals. Therefore, the attributes of these three terminals do not violate the verification rules. However, the signal line electrically connected to the A3 terminal of IC1 is provided with pull-up resistor R100 and pull-up resistor Up. In other words, the pull-up resistors are duplicated. Therefore, the verification unit 3 determines that the resistor connection violates the verification rules, and the display unit 4 highlights pull-up resistor R100 and pull-up resistor Up connected to terminal H6 within IC2, as shown in Figure 5B.

また、この信号線を介して伝搬する信号に対して、デバイス毎に異なる信号名が付与されている。よって、表示部4は、図5に示すように、各デバイス内で使用される信号名を強調して表示している。 In addition, different signal names are assigned to the signals propagating through these signal lines for each device. Therefore, the display unit 4 highlights the signal names used within each device, as shown in Figure 5.

ユーザ(回路の設計者)は、表示部4により表示される検証結果を参照して、検証対象回路の妥当性を検討することができる。図5に実施例では、プルアップ抵抗の重複は、設計ミスであると認識される。そうすると、ユーザは、重複しているプルアップ抵抗のうちの一方(例えば、抵抗R100)を削除し、検証対象回路を再検証する。この場合、プルアップ抵抗の重複に係わるエラーメッセージは出力されなくなる。 The user (circuit designer) can examine the validity of the circuit under verification by referring to the verification results displayed on the display unit 4. In the example shown in Figure 5, the overlapping pull-up resistors are recognized as a design error. The user then deletes one of the overlapping pull-up resistors (e.g., resistor R100) and re-verifies the circuit under verification. In this case, the error message related to the overlapping pull-up resistors is no longer output.

また、ユーザは、検証結果により、同じ信号に対してデバイス間で異なる信号名が使用されていることを認識できる。よって、ユーザは、必要に応じて、信号名を変更することができる。 The verification results also allow users to recognize when different signal names are used for the same signal across devices. This allows users to change signal names as needed.

図7~図8は、回路検証装置10による検証結果の例を示す。なお、図7~図8に示す例では、信号名の整合性に係わる検証については説明を省略する。 Figures 7 and 8 show examples of verification results by the circuit verification device 10. Note that in the examples shown in Figures 7 and 8, verification related to the consistency of signal names will not be described.

図7Aに示すケースでは、IC1のA3端子、IC2のH6端子、およびIC3の5番端子が互いに接続されている。これらの端子は、いずれも双方向端子である。IC1のA3端子に電気的に接続する信号線には、プルアップ抵抗、プルダウン抵抗、およびKEEPER回路は設けられてはいけない。 In the case shown in Figure 7A, terminal A3 of IC1, terminal H6 of IC2, and terminal 5 of IC3 are connected to each other. These terminals are all bidirectional terminals. The signal line electrically connected to terminal A3 of IC1 must not have a pull-up resistor, pull-down resistor, or KEEPER circuit.

検証ルールによれば、双方向端子に接続する信号線には、プルアップ抵抗、プルダウン抵抗、またはKEEPER回路のうちのいずれかを設ける必要がある。よって、このケースでは、プルアップ抵抗、プルダウン抵抗、またはKEEPER回路が設けられてないことを表すエラーメッセージが出力される。また、抵抗回路(プルアップ、プルダウン、またはKEEPER)を設けるべき位置に「×」印が表示されている。 According to the verification rules, signal lines connected to bidirectional terminals must be equipped with either a pull-up resistor, pull-down resistor, or KEEPER circuit. Therefore, in this case, an error message is output indicating that a pull-up resistor, pull-down resistor, or KEEPER circuit is not installed. In addition, an "X" mark is displayed in the location where a resistor circuit (pull-up, pull-down, or KEEPER) should be installed.

図7Bに示すケースでは、IC1のA3端子、IC2のH6端子、およびIC3の5番端子が互いに接続されている。これらの端子は、いずれも双方向端子である。IC1において、A3端子に接続する内部回路は、KEEPER回路(V-Keeper)を備える。IC2において、H6端子に接続する内部回路は、プルアップ抵抗を備える。 In the case shown in Figure 7B, terminal A3 of IC1, terminal H6 of IC2, and terminal 5 of IC3 are connected to each other. These terminals are all bidirectional terminals. In IC1, the internal circuit connected to terminal A3 includes a KEEPER circuit (V-Keeper). In IC2, the internal circuit connected to terminal H6 includes a pull-up resistor.

検証ルールによれば、双方向端子に接続する信号線は、プルアップ抵抗、プルダウン抵抗、またはKEEPER回路のうちの2つ以上を備えることは禁止されている。よって、このケースでは、プルアップ抵抗、プルダウン抵抗、またはKEEPER回路のうちの2つ以上を備えることを表すエラーメッセージが出力される。また、検証ルールに違反している箇所が強調表示されている。 The validation rules prohibit signal lines connected to bidirectional terminals from having two or more of the following: pull-up resistors, pull-down resistors, or KEEPER circuits. Therefore, in this case, an error message is output indicating that the signal line has two or more of the following: pull-up resistors, pull-down resistors, or KEEPER circuits. The parts that violate the validation rules are also highlighted.

図8Aに示すケースでは、IC1のC2端子、IC2のD9端子、およびIC3の5番端子が互いに接続されている。IC2のD9端子は出力端子であり、IC1のC2端子およびIC3の5番端子は入力端子である。これらの端子に接続する信号線には、プルアップ抵抗R101が設けられている。 In the case shown in Figure 8A, the C2 terminal of IC1, the D9 terminal of IC2, and the 5th terminal of IC3 are connected to each other. The D9 terminal of IC2 is an output terminal, and the C2 terminal of IC1 and the 5th terminal of IC3 are input terminals. A pull-up resistor R101 is provided on the signal line connecting to these terminals.

検証ルールによれば、出力端子(図8では、IC2のD9端子)に接続する信号線は、プルアップ抵抗、プルダウン抵抗、またはKEEPER回路を設けるか否かを検討する必要がある。よって、このケースでは、プルアップ抵抗が設けられていることについて忠告メッセージが出力される。 According to the verification rules, it is necessary to consider whether to install a pull-up resistor, pull-down resistor, or KEEPER circuit on the signal line connected to the output terminal (in Figure 8, terminal D9 of IC2). Therefore, in this case, a warning message is output stating that a pull-up resistor is installed.

図8Bに示すケースでは、IC1のC2端子、IC2のD9端子、およびIC11の5番端子が互いに接続されている。IC2のD9端子は入力端子であり、IC1のC2端子およびIC11の5番端子はオープンドレイン端子である。これらの端子に接続する信号線には、プルアップ抵抗、プルダウン抵抗、またはKEEPER回路は設けられてない。 In the case shown in Figure 8B, the C2 terminal of IC1, the D9 terminal of IC2, and the 5th terminal of IC11 are connected to each other. The D9 terminal of IC2 is an input terminal, and the C2 terminal of IC1 and the 5th terminal of IC11 are open-drain terminals. The signal lines connected to these terminals do not have pull-up resistors, pull-down resistors, or KEEPER circuits.

検証ルールによれば、オープンドレイン端子に接続する信号線は、プルアップ抵抗を設ける必要がある。よって、このケースでは、プルアップ抵抗が無いことを表すエラーメッセージが出力される。また、プルアップ抵抗を設けるべき位置に「×」印が表示されている。 According to the verification rules, a pull-up resistor must be installed on the signal line connected to the open drain terminal. Therefore, in this case, an error message indicating that there is no pull-up resistor is output. In addition, an "X" mark is displayed in the location where the pull-up resistor should be installed.

このように、回路検証装置10は、検証対象回路を構成する各デバイスの各端子について回路構成が正しいか否かを検証する際に、端子の属性を考慮する。よって、回路検証装置10は、プルアップ抵抗またはプルダウン抵抗の重複をチェックするだけでなく、各端子に接続する信号線に対して、プルアップ抵抗、プルダウン抵抗、またはKEEPER回路を設けることについて、または、設けないことについての妥当性を検証できる。すなわち、プログラマブルデバイスを含む回路を精度よく検証できる。 In this way, the circuit verification device 10 takes into account the attributes of the terminals when verifying whether the circuit configuration of each terminal of each device that makes up the circuit under verification is correct. Therefore, the circuit verification device 10 not only checks for overlapping pull-up or pull-down resistors, but also verifies the appropriateness of providing or not providing pull-up resistors, pull-down resistors, or KEEPER circuits for signal lines connected to each terminal. In other words, circuits that include programmable devices can be verified with high accuracy.

図9は、回路を検証する際に使用する回路フォーマットの一例を示す。この回路フォーマットにおいては、複数のデバイスが互いに電気的に接続されている。即ち、IC1のP1端子、IC2のP2端子、IC3のP3端子・・・IC9のP9端子が互いに電気的に接続されている。これらの端子を接続する信号線には、プルアップ抵抗Rupおよびプルダウン抵抗Rdnを設けることができる。プルアップ抵抗Rupおよびプルダウン抵抗Rdnの双方を設けると、KEEPER回路が構成される。プルアップ抵抗Rup/プルダウン抵抗Rdnの設定点と各デバイス(IC1~IC9)との間に、ダンピング抵抗(Rdu_1~Rdu_9)を設けることができる。なお、Net_0~Net_9は、信号名を入力するための変数を表す。 Figure 9 shows an example of a circuit format used when verifying a circuit. In this circuit format, multiple devices are electrically connected to one another. That is, the P1 terminal of IC1, the P2 terminal of IC2, the P3 terminal of IC3, and the P9 terminal of IC9 are electrically connected to one another. A pull-up resistor Rup and a pull-down resistor Rdn can be provided on the signal line connecting these terminals. Providing both a pull-up resistor Rup and a pull-down resistor Rdn forms a KEEPER circuit. Damping resistors (Rdu_1 to Rdu_9) can be provided between the set points of the pull-up resistor Rup/pull-down resistor Rdn and each device (IC1 to IC9). Note that Net_0 to Net_9 represent variables for inputting signal names.

回路検証装置10は、この回路フォーマットに検証対象回路のネットリストおよび各デバイスの設計情報を反映させることで、検証フォームを作成する。検証フォームは、例えば、一般的な表計算ソフトにより実現され、回路を検証するために使用される。さらに、検証フォームは、検証結果を表示することができる。 The circuit verification device 10 creates a verification form by incorporating the netlist of the circuit to be verified and the design information of each device into this circuit format. The verification form is implemented, for example, using general spreadsheet software, and is used to verify the circuit. Furthermore, the verification form can display the verification results.

図10は、検証フォームおよび検証結果の表示例を示す。ここでは、図5Aに示すIC1のA3端子が指定され、その端子に電気的に接続する回路に対応する検証フォームが作成されている。 Figure 10 shows an example of the verification form and verification results. In this example, the A3 terminal of IC1 shown in Figure 5A is specified, and a verification form corresponding to the circuit electrically connected to that terminal is created.

このケースでは、回路検証装置10は、検証対象回路のネットリストを取得することにより、IC1のA3端子に接続する信号線にプルアップ抵抗R100が設けられていることを認識する。したがって、図10に示すように、プルアップ抵抗Rupに対して抵抗R100が表示され、プルダウン抵抗Rdnに対して「なし」が表示される。さらに、ダンピング抵抗Rdu_1として抵抗R10が表示されている。 In this case, by acquiring the netlist of the circuit under verification, the circuit verification device 10 recognizes that a pull-up resistor R100 is provided on the signal line connected to the A3 terminal of IC1. Therefore, as shown in Figure 10, resistor R100 is displayed for pull-up resistor Rup, and "none" is displayed for pull-down resistor Rdn. Furthermore, resistor R10 is displayed as damping resistor Rdu_1.

回路検証装置10は、選択された端子(ここでは、IC1のA3端子)および選択された端子に電気的に接続する他のデバイスの端子(ここでは、IC2のH6端子およびIC3の5番端子)の設計情報をそれぞれ取得する。そして、回路検証装置10は、図10に示すように、取得した設計情報を検証フォームに書き込む。このとき、少なくとも、部品番号、端子番号、信号名、属性、プル抵抗が書き込まれる。なお、「プル抵抗」は、デバイス内のプルアップ抵抗、プルダウン抵抗、KEEPER回路の有無を表す。図10に示す検証フォームは、IC2においてH6端子にプルアップ抵抗が設けられていることを表している。 The circuit verification device 10 acquires design information for the selected terminal (here, terminal A3 of IC1) and the terminals of other devices that are electrically connected to the selected terminal (here, terminal H6 of IC2 and terminal 5 of IC3). Then, as shown in Figure 10, the circuit verification device 10 enters the acquired design information into a verification form. At this time, at least the part number, terminal number, signal name, attribute, and pull resistor are entered. Note that "pull resistor" indicates the presence or absence of a pull-up resistor, pull-down resistor, and KEEPER circuit within the device. The verification form shown in Figure 10 indicates that a pull-up resistor is provided at terminal H6 of IC2.

この実施例では、選択された端子(すなわち、IC1のA3端子)は、双方向端子である。よって、回路検証装置10は、図6に示す「Bidirectional」についての3つの項目を検証する。まず、他の端子(即ち、IC2のH6端子およびIC3の5番端子)は、それぞれ双方向端子なので、1つ目の項目には違反していない。つづいて、IC1のA3端子に電気的に接続する信号線には、プルアップ抵抗R100およびプルアップ抵抗Upが設けられているので、2つ目の項目に違反(設計ミス)している。よって、図10に示すように、プルアップ抵抗R100およびプルアップ抵抗Upがそれぞれ強調表示される。一例としては、プルアップ抵抗R100およびプルアップ抵抗Upを赤色で表示してもよい。さらに、IC1のA3端子に電気的に接続する信号線には、プルアップ抵抗が設けられているので、3つ目の項目には違反していない。 In this example, the selected terminal (i.e., terminal A3 of IC1) is a bidirectional terminal. Therefore, the circuit verification device 10 verifies the three items for "Bidirectional" shown in Figure 6. First, the other terminals (i.e., terminal H6 of IC2 and terminal 5 of IC3) are both bidirectional terminals, so they do not violate the first item. Next, the signal line electrically connected to terminal A3 of IC1 is equipped with pull-up resistors R100 and Up, which violates the second item (design error). Therefore, as shown in Figure 10, pull-up resistors R100 and Up are each highlighted. As an example, pull-up resistors R100 and Up may be displayed in red. Furthermore, the signal line electrically connected to terminal A3 of IC1 is equipped with pull-up resistors, so they do not violate the third item.

上述の検証に加えて、回路検証装置10は、信号名を検証してもよい。この例では、同じ信号または信号線に対して、各デバイス内で異なる信号名が付与されている。したがって、図10に示すように、信号名が強調表示される。ただし、信号名が一致していない場合であっても、設計自体が正しければ、回路は正しく動作する。すなわち、信号名の不一致は、設計ミスと比較して重要度は低い。したがって、信号名の不一致は、設計ミスが生じているケースと異なる色(例えば、緑色)で表示される。 In addition to the above verification, the circuit verification device 10 may also verify signal names. In this example, different signal names are assigned to the same signal or signal line within each device. Therefore, as shown in FIG. 10, the signal names are highlighted. However, even if the signal names do not match, the circuit will operate correctly if the design itself is correct. In other words, a mismatch in signal names is less important than a design error. Therefore, a mismatch in signal names is displayed in a different color (e.g., green) than cases where a design error has occurred.

図11は、設計情報を登録する方法の一例を示すフローチャートである。このフローチャートの処理は、例えば、検証すべき回路がユーザにより指定されたときに実行される。 Figure 11 is a flowchart showing an example of a method for registering design information. The processing of this flowchart is executed, for example, when a circuit to be verified is specified by a user.

S1において、回路検証装置10は、検証対象回路のネットリストを取得し、ネットリスト保存部1に保存する。なお、ネットリストは、検証対象回路内の部品どうしの接続を表す。したがって、ネットリストには、検証対象回路内のすべてのデバイスが記述されている。 In S1, the circuit verification device 10 acquires a netlist of the circuit under verification and stores it in the netlist storage unit 1. The netlist represents the connections between components within the circuit under verification. Therefore, the netlist describes all devices within the circuit under verification.

S2において、回路検証装置10は、ネットリストを参照し、検証対象回路内のデバイスのうちの1つを選択する。このとき、プログラマブルデバイスの内部回路をセットで検証すべきICを選択してもよい。 In S2, the circuit verification device 10 references the netlist and selects one of the devices in the circuit to be verified. At this time, it may select an IC to be verified as a set with the internal circuit of the programmable device.

S3において、回路検証装置10は、S2で選択したデバイスについて、設計ツールから出力される設計情報(レポートファイル)を取得できるか否かを確認する。設計情報を取得できるときには、回路検証装置10は、S4において、S2で選択したデバイスに対して部品番号を設定する。図4に示す例では、例えば、「IC1」が設定される。続いて、回路検証装置10は、S5において、S2で選択したデバイスの設計情報を読み込み、S4で設定した部品番号に対応づけてデバイス設計情報保存部2に保存する。 In S3, the circuit verification device 10 checks whether it can acquire the design information (report file) output from the design tool for the device selected in S2. If the design information can be acquired, in S4 the circuit verification device 10 sets a part number for the device selected in S2. In the example shown in FIG. 4, for example, "IC1" is set. Next, in S5, the circuit verification device 10 reads the design information for the device selected in S2 and stores it in the device design information storage unit 2 in association with the part number set in S4.

設計ツールから設計情報を取得できないときは、回路検証装置10は、S6において、S2で選択したデバイスについて、ユーザが作成した設計情報を取得できるか否かを確認する。設計情報を取得できるときには、回路検証装置10は、S7において、S2で選択したデバイスに対して部品番号を設定する。続いて、回路検証装置10は、S8において、S2で選択したデバイスの設計情報を読み込み、S7で設定した部品番号に対応づけてデバイス設計情報保存部2に保存する。 If design information cannot be obtained from the design tool, the circuit verification device 10 checks in S6 whether design information created by the user for the device selected in S2 can be obtained. If design information can be obtained, the circuit verification device 10 sets a part number for the device selected in S2 in S7. Next, in S8, the circuit verification device 10 reads the design information for the device selected in S2 and stores it in the device design information storage unit 2 in association with the part number set in S7.

なお、設計ツールから出力される設計情報およびユーザが作成した設計情報のいずれも取得できないときは、回路検証装置10の処理は終了する。この場合、ユーザは、各デバイスの設計情報を作成する必要がある。 If neither the design information output by the design tool nor the design information created by the user can be obtained, the circuit verification device 10 terminates processing. In this case, the user must create design information for each device.

S9において、回路検証装置10は、選択していないデバイス残っているか否かを判定する。選択していないデバイス残っているときには、回路検証装置10の処理はS2に戻る。すなわち、検証対象回路内の各デバイスについてS3~S8の処理を実行する。そして、すべてのデバイスについて設計情報を取得してデバイス設計情報保存部2に保存すると、回路検証装置10の処理は検証手順に移行する。 In S9, the circuit verification device 10 determines whether any unselected devices remain. If so, the circuit verification device 10 returns to S2. That is, it executes the processes of S3 to S8 for each device in the circuit under verification. Once design information for all devices has been acquired and stored in the device design information storage unit 2, the circuit verification device 10 proceeds to the verification procedure.

図12は、回路検証装置10の処理の一例を示すフローチャートである。なお、このフローチャートの処理を実行する前に、図11に示す手順により必要な情報がネットリスト保存部1およびデバイス設計情報保存部2に登録されており、また、図9に示す回路フォーマットが予め用意されているものとする。そして、ユーザにより、検証対象回路中の所望のデバイス(ここでは、所望のIC)が指定される。 Figure 12 is a flowchart showing an example of processing by the circuit verification device 10. Note that before executing the processing of this flowchart, the necessary information is registered in the netlist storage unit 1 and the device design information storage unit 2 according to the procedure shown in Figure 11, and the circuit format shown in Figure 9 is prepared in advance. The user then specifies the desired device (here, the desired IC) in the circuit to be verified.

S11において、検証部3は、指定されたデバイスが備える複数の端子のうちの1つを選択する。以下の記載では、S11で選択した端子を「対象端子」と呼ぶことがある。 In S11, the verification unit 3 selects one of the multiple terminals provided by the specified device. In the following description, the terminal selected in S11 may be referred to as the "target terminal."

S12において、検証部3は、対象端子が電源端子、GND端子、または所定の専用端子(例えば、クロック、SerDes)であるか否かを判定する。そして、対象端子が電源端子、GND端子、または所定の専用端子であるときには、検証部3は、S13において、対象端子を識別する端子番号を不図示の非チェック端子リストに登録する。この後、対象端子のステータスは「チェック済」として管理される。 In S12, the verification unit 3 determines whether the target terminal is a power terminal, a GND terminal, or a specified dedicated terminal (e.g., clock, SerDes). If the target terminal is a power terminal, a GND terminal, or a specified dedicated terminal, in S13 the verification unit 3 registers the terminal number identifying the target terminal in a list of unchecked terminals (not shown). After this, the status of the target terminal is managed as "checked."

対象端子が電源端子、GND端子、または所定の専用端子でないときは、検証部3は、S14において、ネットリストを参照し、対象端子に電気的に接続する他のデバイスおよび抵抗を検出する。なお、このフローチャートの説明において、「他のデバイス」は、指定されたデバイス以外のデバイスを意味する。また、「対象端子に電気的に接続」は、信号線などの導体パターンで接続する構成、および、ダンピング抵抗を介して接続する構成を含む。例えば、図5Aに示す例において、対象端子がIC1のA3端子であるものとする。この場合、IC2のH6端子、IC3の5番端子、プルアップ抵抗として使用される抵抗R100、およびダンピング抵抗として使用される抵抗R10が検出される。 If the target terminal is not a power supply terminal, GND terminal, or a specified dedicated terminal, the verification unit 3, in S14, references the netlist and detects other devices and resistors electrically connected to the target terminal. Note that in the description of this flowchart, "other devices" refers to devices other than the specified device. Furthermore, "electrically connected to the target terminal" includes a configuration in which the device is connected via a conductor pattern such as a signal line, and a configuration in which the device is connected via a damping resistor. For example, in the example shown in Figure 5A, the target terminal is assumed to be the A3 terminal of IC1. In this case, the H6 terminal of IC2, terminal 5 of IC3, resistor R100 used as a pull-up resistor, and resistor R10 used as a damping resistor are detected.

S15において、検証部3は、対象端子に電気的に接続する回路部分が図9に示す回路フォーマットに当てはまるか否かを判定する。対象端子に電気的に接続する回路部分は、対象端子を含むデバイス(即ち、ユーザにより指定されたデバイス)、及び、S14で検出された他のデバイスおよび抵抗から構成される。例えば、図5Aに示す例において対象端子がIC1のA3端子であるものとすると、IC2のH6端子、IC3の5番端子、抵抗R100、および抵抗R10が、それぞれ、IC2のP2端子、IC3のP3端子、抵抗Rup、および抵抗Rdu_1に該当するので、対象端子に電気的に接続する回路部分が図9に示す回路フォーマットに当てはまると判定される。 In S15, the verification unit 3 determines whether the circuit portion electrically connected to the target terminal conforms to the circuit format shown in FIG. 9. The circuit portion electrically connected to the target terminal consists of the device that includes the target terminal (i.e., the device specified by the user) and the other devices and resistors detected in S14. For example, in the example shown in FIG. 5A, if the target terminal is the A3 terminal of IC1, the H6 terminal of IC2, the 5th terminal of IC3, resistor R100, and resistor R10 correspond to the P2 terminal of IC2, the P3 terminal of IC3, resistor Rup, and resistor Rdu_1, respectively, and therefore it is determined that the circuit portion electrically connected to the target terminal conforms to the circuit format shown in FIG. 9.

対象端子に電気的に接続する回路部分が図9に示す回路フォーマットに当てはまらないときには、検証部3は、S16において、対象端子を識別する端子番号を不図示のフォーマット外端子リストに登録する。この後、対象端子のステータスは「チェック済」として管理される。 If the circuit portion electrically connected to the target terminal does not conform to the circuit format shown in Figure 9, the verification unit 3 registers the terminal number identifying the target terminal in an out-of-format terminal list (not shown) in S16. After this, the status of the target terminal is managed as "checked."

対象端子に電気的に接続する回路部分が図9に示す回路フォーマットに当てはまるときは、検証部3は、S17において、S14で検出した部品を表す部品情報を検証フォームに書き込む。続いて、検証部3は、S18において、各デバイス(すなわち、対象端子を含むICおよびS14で検出した他のIC)の設計情報をデバイス設計情報保存部2から検証フォームにコピーする。 If the circuit portion electrically connected to the target terminal conforms to the circuit format shown in FIG. 9, then in S17 the verification unit 3 writes component information representing the component detected in S14 into the verification form. Next, in S18, the verification unit 3 copies the design information for each device (i.e., the IC including the target terminal and other ICs detected in S14) from the device design information storage unit 2 into the verification form.

例えば、図5Aに示すIC1のA3端子が対象端子として選択されるケースについて説明する。ここで、検証フォームは、図13に示すように初期化されている。この状態は、図9に示す回路フォーマットに相当する。そして、対象端子としてIC1のA3端子が選択されると、図14に示すように、対象端子を含むデバイス(IC1)、S14で検出される他のデバイス(IC2、IC3)、およびS14で検出される抵抗(R100、R10)が検証フォームに書き込まれる。このとき、信号名も検証フォームに書き込まれる。続いて、図15に示すように、各デバイスの設計情報がデバイス設計情報保存部2から検証フォームにコピーされる。 For example, consider the case where the A3 terminal of IC1 shown in Figure 5A is selected as the target terminal. Here, the verification form is initialized as shown in Figure 13. This state corresponds to the circuit format shown in Figure 9. When the A3 terminal of IC1 is selected as the target terminal, the device (IC1) that includes the target terminal, other devices (IC2, IC3) detected in S14, and resistors (R100, R10) detected in S14 are written into the verification form, as shown in Figure 14. At this time, the signal names are also written into the verification form. Next, as shown in Figure 15, the design information for each device is copied from the device design information storage unit 2 to the verification form.

上述のようにして検証フォームに必要な情報が書き込まれると、検証部3は、S19において検証処理を実行する。検証処理については、後で詳しく説明する。 Once the necessary information has been entered into the verification form as described above, the verification unit 3 executes the verification process in S19. The verification process will be explained in detail later.

S20において、検証部3は、未チェックの端子が残っているか否かを確認する。そして、未チェックの端子が残っていれば、検証部3の処理はS11に戻る。すなわち、検証部11は、指定されたデバイスの次の端子についてS12~S19の処理を実行する。そして、指定されたデバイスのすべての端子についてS12~S19の処理を実行すると、検証部3の処理は終了する。 In S20, the verification unit 3 checks whether any unchecked terminals remain. If any unchecked terminals remain, the verification unit 3 returns to S11. That is, the verification unit 11 performs steps S12 to S19 on the next terminal of the specified device. When steps S12 to S19 have been performed on all terminals of the specified device, the verification unit 3 terminates its processing.

図16は、検証部3による検証処理の概要を示すフローチャートである。この処理は、図12に示すフローチャートのS19に相当する。 Figure 16 is a flowchart showing an overview of the verification process performed by the verification unit 3. This process corresponds to S19 in the flowchart shown in Figure 12.

S31において、検証部3は、信号名を検証する。S32において、検証部3は、出力端子に係わる検証ルールに基づいて回路を検証する。S33において、検証部3は、オープンドレイン入力端子に係わる検証ルールに基づいて回路を検証する。S34において、検証部3は、オープンドレイン端子に係わる検証ルールに基づいて回路を検証する。S35において、検証部3は、双方向端子に係わる検証ルールに基づいて回路を検証する。S36において、検証部3は、入力端子に係わる検証ルールに基づいて回路を検証する。なお、図16に示す手順は一例であり、検証部3は、任意の順番でS31~S36の処理を実行してもよい。 In S31, the verification unit 3 verifies the signal names. In S32, the verification unit 3 verifies the circuit based on verification rules related to output terminals. In S33, the verification unit 3 verifies the circuit based on verification rules related to open-drain input terminals. In S34, the verification unit 3 verifies the circuit based on verification rules related to open-drain terminals. In S35, the verification unit 3 verifies the circuit based on verification rules related to bidirectional terminals. In S36, the verification unit 3 verifies the circuit based on verification rules related to input terminals. Note that the procedure shown in FIG. 16 is an example, and the verification unit 3 may execute the processes of S31 to S36 in any order.

図17は、信号名を検証する処理の一例を示すフローチャートである。このフローチャートの処理は、図16に示すS31に相当する。また、この処理は、対象端子に電気的に接続する回路部分に対して実行される。以下の記載では、対象端子に電気的に接続する回路部分を「対象回路部分」と呼ぶことがある。 Figure 17 is a flowchart showing an example of a process for verifying a signal name. The process in this flowchart corresponds to S31 shown in Figure 16. This process is also performed on the circuit portion that is electrically connected to the target terminal. In the following description, the circuit portion that is electrically connected to the target terminal may be referred to as the "target circuit portion."

S41において、検証部3は、必要な情報が書き込まれた検証フォームを参照し、対象回路部分において、デバイス間を接続する信号線に付与された1または複数の信号名および各デバイス内で使用される信号名を互いに比較する。そして、これらの信号名が互いに一致するときは、検証部3は、S52において、信号名の設定に問題が無いことを表す正常メッセージを出力する。一方、これらの信号名が互いに一致しないときには、検証部3は、S53において、信号名の設定に問題があることを表す忠告メッセージを出力する。正常メッセージおよび忠告メッセージは、検証フォーム上に表示されてもよい。図10に示す実施例では、信号名が互いに一致していないので、忠告メッセージ「W:信号名が異なる」が表示されている。「W」は、警告(Warning)を表す。 In S41, the verification unit 3 references the verification form in which the necessary information has been entered and compares one or more signal names assigned to signal lines connecting devices in the target circuit portion with the signal names used within each device. If these signal names match, the verification unit 3 outputs a normal message in S52 indicating that there is no problem with the signal name settings. On the other hand, if these signal names do not match, the verification unit 3 outputs a warning message in S53 indicating that there is a problem with the signal name settings. The normal message and warning message may be displayed on the verification form. In the example shown in Figure 10, the signal names do not match, so the warning message "W: Signal names differ" is displayed. "W" stands for warning.

図18は、出力端子に係わる検証処理の一例を示すフローチャートである。このフローチャートの処理は、図16に示すS32に相当し、対象回路部分が出力端子を含むときに実行される。 Figure 18 is a flowchart showing an example of verification processing related to output terminals. The processing in this flowchart corresponds to S32 shown in Figure 16 and is executed when the target circuit portion includes an output terminal.

S51において、検証部3は、各デバイスの設計情報を参照し、対象回路部分内に入力端子以外の端子が存在するか否かを判定する。このとき、検証部3は、各端子の属性をチェックするときには、検証フォームにおいて「属性」として書き込まれている値を抽出する。この手順は、図18~図22において同じである。 In S51, the verification unit 3 references the design information for each device and determines whether any terminals other than input terminals exist within the target circuit portion. When checking the attributes of each terminal, the verification unit 3 extracts the value entered as "attribute" in the verification form. This procedure is the same in Figures 18 to 22.

ここで、対象回路部分内に出力端子が存在する場合、他の端子は入力端子でなければならない。よって、対象回路部分内に入力端子以外の端子が存在するときは、検証部3は、S52において、属性エラーメッセージを出力する。この場合、検証部3は、属性エラーメッセージとして、「E:入力端子以外の端子を含む」を表示してもよい。「E」は、エラーを表す。一方、対象端子を除く端子がいずれも入力端子である場合、検証部3は、S53において、属性について正常メッセージを出力する。この場合、検証部3は、正常メッセージとして、「端子の属性は異常なし」を表示してもよい。 Here, if an output terminal exists within the target circuit portion, the other terminals must be input terminals. Therefore, if a terminal other than an input terminal exists within the target circuit portion, the verification unit 3 outputs an attribute error message in S52. In this case, the verification unit 3 may display "E: Includes terminals other than input terminals" as the attribute error message. "E" indicates an error. On the other hand, if all terminals except the target terminal are input terminals, the verification unit 3 outputs a normal message about the attributes in S53. In this case, the verification unit 3 may display "No abnormalities in the terminal attributes" as the normal message.

S54~S55において、検証部3は、対象回路部分に設けられるプル抵抗の個数を検出する。プル抵抗は、プルアップ抵抗、プルダウン抵抗、KEEPER回路を含む。また、プル抵抗は、デバイス間の信号線に接続するプル抵抗、およびデバイス内に設けられるプル抵抗を含む。さらに、プル抵抗は、ダンピング抵抗を含まない。 In S54 and S55, the verification unit 3 detects the number of pull resistors provided in the target circuit portion. Pull resistors include pull-up resistors, pull-down resistors, and KEEPER circuits. Pull resistors also include pull resistors connected to signal lines between devices and pull resistors provided within devices. Furthermore, pull resistors do not include damping resistors.

検証部3は、対象回路部分内に設けられているプル抵抗を検出するときは、検証フォームにおいて「Rup」「Rdn」「プル抵抗」として書き込まれている値を抽出する。この手順は、図18~図22において同じである。 When detecting pull resistors installed within the target circuit portion, the verification unit 3 extracts the values entered as "Rup," "Rdn," and "pull resistor" in the verification form. This procedure is the same in Figures 18 to 22.

そして、対象回路部分内に2個以上のプル抵抗が設けられているときは、検証部3は、抵抗接続が正しくないと判定し、S56において抵抗エラーメッセージを出力する。例えば、プルアップ抵抗が重複して設けられているときは、検証部3は、抵抗エラーメッセージとして、「プルアップ抵抗が重複」を表示してもよい。 If two or more pull resistors are provided within the target circuit portion, the verification unit 3 determines that the resistor connection is incorrect and outputs a resistor error message in S56. For example, if duplicate pull-up resistors are provided, the verification unit 3 may display the resistor error message "Duplicate pull-up resistors."

対象回路部分内に1つのプル抵抗が設けられているときは、この設計が正しいか否かを判定できない。よって、検証部3は、S57において抵抗忠告メッセージを出力する。この場合、検証部3は、抵抗忠告メッセージとして、「抵抗接続について要確認」を表示してもよい。 When a single pull resistor is provided within the target circuit portion, it is not possible to determine whether the design is correct. Therefore, the verification unit 3 outputs a resistor advice message in S57. In this case, the verification unit 3 may display "Resistor connection needs to be checked" as the resistor advice message.

対象回路部分内にプル抵抗が設けられてないときは、検証部3は、S58において、抵抗接続について正常メッセージを出力する。この場合、検証部3は、正常メッセージとして、「問題なし」を表示してもよい。 If a pull resistor is not installed in the target circuit portion, the verification unit 3 outputs a normal message regarding the resistor connection in S58. In this case, the verification unit 3 may display "No problem" as the normal message.

図19は、オープンドレイン入力端子に係わる検証処理の一例を示すフローチャートである。このフローチャートの処理は、図16に示すS33に相当し、対象回路部分がオープンドレイン入力端子を含むときに実行される。また、この実施例では、図18に示す処理(すなわち、出力端子に係わる検証)が終了しているものとする。 Figure 19 is a flowchart showing an example of verification processing related to an open-drain input terminal. The processing of this flowchart corresponds to S33 shown in Figure 16, and is executed when the target circuit portion includes an open-drain input terminal. In this example, it is assumed that the processing shown in Figure 18 (i.e., verification related to the output terminal) has been completed.

S61において、検証部3は、各デバイスの設計情報を参照し、対象回路部分内に双方向端子が存在するか否かを判定する。そして、対象回路部分内に双方向端子が存在するときには、検証部3は、S62において、属性エラーメッセージを出力する。この場合、検証部3は、属性エラーメッセージとして、「E:双方向端子を含む」を表示してもよい。一方、対象回路部分内に双方向端子が存在しないときは、検証部3は、S63において、属性について正常メッセージを出力する。 In S61, the verification unit 3 references the design information for each device and determines whether or not a bidirectional terminal exists in the target circuit portion. If a bidirectional terminal exists in the target circuit portion, the verification unit 3 outputs an attribute error message in S62. In this case, the verification unit 3 may display "E: Bidirectional terminal included" as the attribute error message. On the other hand, if a bidirectional terminal does not exist in the target circuit portion, the verification unit 3 outputs a normal message for the attribute in S63.

なお、対象回路部分内にオープンドレイン入力端子および出力端子が混在する設計は誤りである。ただし、出力端子に係わる検証は既に終了している。よって、図19に示すフローチャートにおいては、各端子の属性の検証として、出力端子が存在するか否かを判定する必要はない。 Note that a design that includes both open-drain input and output terminals within the target circuit is an error. However, verification of the output terminals has already been completed. Therefore, in the flowchart shown in Figure 19, there is no need to determine whether an output terminal exists when verifying the attributes of each terminal.

S64において、検証部3は、対象回路部分に2以上のプルアップが存在するか否かを判定する。そして、対象回路部分に2以上のプルアップが存在するときは、検証部3は、抵抗接続が正しくないと判定し、S65において抵抗エラーメッセージを出力する。この場合、検証部3は、抵抗エラーメッセージとして、「プルアップ抵抗が重複」を表示してもよい。 In S64, the verification unit 3 determines whether two or more pull-ups exist in the target circuit portion. If two or more pull-ups exist in the target circuit portion, the verification unit 3 determines that the resistor connection is incorrect and outputs a resistor error message in S65. In this case, the verification unit 3 may display "Duplicate pull-up resistor" as the resistor error message.

S66において、検証部3は、対象回路部分にプルダウン抵抗またはKEEPER回路が存在するか否かを判定する。そして、対象回路部分にプルダウン抵抗またはKEEPER回路が存在するときは、検証部3は、抵抗接続が正しくないと判定し、S67において抵抗エラーメッセージを出力する。この場合、検証部3は、抵抗エラーメッセージとして、「プルダウンまたはKEEPER回路がある」を表示してもよい。 In S66, the verification unit 3 determines whether a pull-down resistor or a KEEPER circuit is present in the target circuit portion. If a pull-down resistor or a KEEPER circuit is present in the target circuit portion, the verification unit 3 determines that the resistor connection is incorrect and outputs a resistor error message in S67. In this case, the verification unit 3 may display the resistor error message "Pull-down or KEEPER circuit present."

S68において、検証部3は、対象回路部分がプルアップを有するかを判定する。そして、対象回路部分内にプルアップが無いときは、検証部3は、抵抗接続が正しくないと判定し、S69において抵抗エラーメッセージを出力する。この場合、検証部3は、抵抗エラーメッセージとして、「プルアップ無し」を表示してもよい。一方、対象回路部分がプルアップを有するときは、検証部3は、抵抗接続が正しいと判定し、S70において抵抗接続について正常メッセージを出力する。 In S68, the verification unit 3 determines whether the target circuit portion has a pull-up. If there is no pull-up in the target circuit portion, the verification unit 3 determines that the resistor connection is incorrect and outputs a resistor error message in S69. In this case, the verification unit 3 may display "No pull-up" as the resistor error message. On the other hand, if the target circuit portion has a pull-up, the verification unit 3 determines that the resistor connection is correct and outputs a normal message about the resistor connection in S70.

図20は、オープンドレイン端子に係わる検証処理の一例を示すフローチャートである。このフローチャートの処理は、図16に示すS34に相当し、対象回路部分がオープンドレイン端子を含むときに実行される。また、この実施例では、図18~図19に示す処理(すなわち、出力端子およびオープンドレイン入力端子に係わる検証)が終了しているものとする。 Figure 20 is a flowchart showing an example of verification processing related to open-drain terminals. The processing in this flowchart corresponds to S34 shown in Figure 16, and is executed when the target circuit portion includes an open-drain terminal. In this example, it is assumed that the processing shown in Figures 18 and 19 (i.e., verification related to output terminals and open-drain input terminals) has been completed.

S81において、検証部3は、各デバイスの設計情報を参照し、対象回路部分内に双方向端子が存在するか否かを判定する。そして、対象回路部分内に双方向端子が存在するときには、検証部3は、S82において、属性エラーメッセージを出力する。この場合、検証部3は、属性エラーメッセージとして、「E:双方向端子を含む」を表示してもよい。一方、対象回路部分内に双方向端子が存在しないときには、検証部3の処理はS83に進む。 In S81, the verification unit 3 references the design information for each device and determines whether or not a bidirectional terminal exists in the target circuit portion. If a bidirectional terminal exists in the target circuit portion, the verification unit 3 outputs an attribute error message in S82. In this case, the verification unit 3 may display "E: Includes bidirectional terminal" as the attribute error message. On the other hand, if a bidirectional terminal does not exist in the target circuit portion, the processing of the verification unit 3 proceeds to S83.

なお、対象回路部分内にオープンドレイン端子および出力端子が混在する設計は正しくない。ただし、出力端子に係わる検証は既に終了している。よって、図20に示すフローチャートにおいては、各端子の属性の検証として、出力端子が存在するか否かを判定する必要はない。 Note that a design that includes both open-drain terminals and output terminals within the target circuit is incorrect. However, verification of output terminals has already been completed. Therefore, in the flowchart shown in Figure 20, there is no need to determine whether an output terminal exists when verifying the attributes of each terminal.

S83において、検証部3は、各デバイスの設計情報を参照し、対象回路部分内に入力端子が存在するか否かを判定する。そして、対象回路部分内に入力端子が存在しないときは、検証部3は、S84において、属性エラーメッセージを出力する。この場合、検証部3は、属性エラーメッセージとして、「E:入力端子が無い」を表示してもよい。一方、対象回路部分内に入力端子が存在するときは、検証部3は、S85において、属性について正常メッセージを出力する。 In S83, the verification unit 3 references the design information for each device and determines whether or not an input terminal exists within the target circuit portion. If no input terminal exists within the target circuit portion, the verification unit 3 outputs an attribute error message in S84. In this case, the verification unit 3 may display "E: No input terminal" as the attribute error message. On the other hand, if an input terminal exists within the target circuit portion, the verification unit 3 outputs a normal message for the attribute in S85.

S86~S92の処理は、図19に示すフローチャートのS64~S70と実質的に同じである。よって、S86~S92についての説明を省略する。 The processing of S86 to S92 is essentially the same as S64 to S70 in the flowchart shown in Figure 19. Therefore, a description of S86 to S92 will be omitted.

図21は、双方向端子に係わる検証処理の一例を示すフローチャートである。このフローチャートの処理は、図16に示すS35に相当し、対象回路部分が双方向端子を含むときに実行される。また、この実施例では、図18~図20に示す処理(すなわち、出力端子、オープンドレイン入力端子、およびオープンドレイン端子に係わる検証)が終了しているものとする。 Figure 21 is a flowchart showing an example of verification processing related to bidirectional terminals. The processing in this flowchart corresponds to S35 shown in Figure 16, and is executed when the target circuit portion includes a bidirectional terminal. In this example, it is assumed that the processing shown in Figures 18 to 20 (i.e., verification related to output terminals, open-drain input terminals, and open-drain terminals) has been completed.

対象回路部分内に双方向端子と、出力端子、オープンドレイン入力端子、またはオープンドレイン端子とが混在する設計は正しくない。ただし、出力端子、オープンドレイン入力端子、およびオープンドレイン端子に係わる検証は既に終了している。よって、図21に示すフローチャートにおいては、各端子の属性の検証は不要である。 A design that mixes bidirectional terminals with output terminals, open-drain input terminals, or open-drain terminals within the target circuit portion is incorrect. However, verification of output terminals, open-drain input terminals, and open-drain terminals has already been completed. Therefore, in the flowchart shown in Figure 21, verification of the attributes of each terminal is not necessary.

S101において、検証部3は、対象回路部分が2個以上のプル抵抗を有するか否かを判定する。そして、対象回路部分が2個以上のプル抵抗を有するときは、検証部3は、抵抗接続が正しくないと判定し、S102において抵抗エラーメッセージを出力する。例えば、プルアップ抵抗が重複して設けられているときは、検証部3は、抵抗エラーメッセージとして、「プルアップ抵抗が重複」を表示してもよい。 In S101, the verification unit 3 determines whether the target circuit portion has two or more pull resistors. If the target circuit portion has two or more pull resistors, the verification unit 3 determines that the resistor connection is incorrect and outputs a resistor error message in S102. For example, if duplicate pull-up resistors are provided, the verification unit 3 may display the resistor error message "Duplicate pull-up resistors."

S103において、検証部3は、対象回路部分がプル抵抗を有するか否かを判定する。そして、対象回路部分がプル抵抗を有していないときは、検証部3は、抵抗接続が正しくないと判定し、S104において抵抗エラーメッセージを出力する。この場合、検証部3は、抵抗エラーメッセージとして、「プル抵抗が無い」を表示してもよい。一方、対象回路部分がプル抵抗を1つ有するときは、検証部3は、抵抗接続が正しいと判定し、S105において、抵抗接続について正常メッセージを出力する。 In S103, the verification unit 3 determines whether the target circuit portion has a pull resistor. If the target circuit portion does not have a pull resistor, the verification unit 3 determines that the resistor connection is incorrect and outputs a resistor error message in S104. In this case, the verification unit 3 may display "No pull resistor" as the resistor error message. On the other hand, if the target circuit portion has one pull resistor, the verification unit 3 determines that the resistor connection is correct and outputs a normal message about the resistor connection in S105.

図22は、入力端子に係わる検証処理の一例を示すフローチャートである。このフローチャートの処理は、図16に示すS36に相当し、対象回路部分が入力端子を含むときに実行される。また、この実施例では、図18~図21に示す処理(すなわち、出力端子、オープンドレイン入力端子、オープンドレイン端子、および双方向端子に係わる検証)が終了しているものとする。 Figure 22 is a flowchart showing an example of verification processing related to input terminals. The processing in this flowchart corresponds to S36 shown in Figure 16, and is executed when the target circuit portion includes an input terminal. In this example, it is assumed that the processing shown in Figures 18 to 21 (i.e., verification related to output terminals, open-drain input terminals, open-drain terminals, and bidirectional terminals) has been completed.

S111において、検証部3は、各デバイスの設計情報を参照し、対象回路部分内のすべての端子が入力端子のみであるか否かを判定する。ここで、この例では、出力端子、オープンドレイン入力端子、オープンドレイン端子、および双方向端子に係わる検証処理は終了している。よって、入力端子以外の端子が残っている場合、何らかの異常(例えば、データベースエラー)が発生していると考えられる。よって、この場合、検証部3の処理は、異常停止により終了する。 In S111, the verification unit 3 references the design information for each device and determines whether all terminals in the target circuit portion are input terminals only. In this example, verification processing for output terminals, open-drain input terminals, open-drain terminals, and bidirectional terminals has been completed. Therefore, if any terminals other than input terminals remain, it is assumed that some kind of abnormality (e.g., a database error) has occurred. Therefore, in this case, the processing of the verification unit 3 is terminated with an abnormal stop.

すべての端子が入力端子であるときは、検証部3の処理はS112に進む。S112~S116の処理は、図21に示すフローチャートのS101~S105と実質的に同じである。ただし、S114において検証部3は、対象回路部分がプル抵抗、電源、またはGNDに接続しているか否かを判定する。そして、対象回路部分がプル抵抗、電源、またはGNDに接続しているときは、検証部3は、S116において、正常メッセージを出力する。 If all terminals are input terminals, the verification unit 3 proceeds to S112. The processes of S112 to S116 are essentially the same as S101 to S105 in the flowchart shown in Figure 21. However, in S114, the verification unit 3 determines whether the target circuit portion is connected to a pull resistor, power supply, or GND. If the target circuit portion is connected to a pull resistor, power supply, or GND, the verification unit 3 outputs a normal message in S116.

<ハードウェア構成>
図23は、回路検証装置10のハードウェア構成の一例を示す。回路検証装置10は、プロセッサ101、メモリ102、記憶装置103、入出力デバイス104、記録媒体読取り装置105、および通信インタフェース106を備えるコンピュータ100により実現される。
<Hardware configuration>
23 shows an example of the hardware configuration of the circuit verification device 10. The circuit verification device 10 is realized by a computer 100 including a processor 101, a memory 102, a storage device 103, an input/output device 104, a recording medium reader 105, and a communication interface 106.

プロセッサ101は、記憶装置103に保存されている回路検証プログラムを実行する。そして、プロセッサ101が回路検証プログラムを実行することにより、図3に示す検証部3の機能が提供される。メモリ102は、プロセッサ101の作業領域として使用される。記憶装置103は、回路検証プログラムおよび他のプログラムを保存する。なお、ネットリスト保存部1およびデバイス設計情報保存部2は、メモリ102または記憶装置103により実現される。 The processor 101 executes the circuit verification program stored in the storage device 103. The processor 101 executes the circuit verification program, thereby providing the functionality of the verification unit 3 shown in FIG. 3. The memory 102 is used as a working area for the processor 101. The storage device 103 stores the circuit verification program and other programs. The netlist storage unit 1 and the device design information storage unit 2 are realized by the memory 102 or the storage device 103.

入出力デバイス104は、キーボード、マウス、タッチパネル、マイクなどの入力デバイスを含んでもよい。また、入出力デバイス104は、表示装置、スピーカーなどの出力デバイスを含んでもよい。記録媒体読取り装置105は、記録媒体110に記録されているデータおよび情報を取得することができる。記録媒体110は、コンピュータ100に着脱可能なリムーバブル記録媒体である。また、記録媒体110は、例えば、半導体メモリ、光学的作用で信号を記録する媒体、または磁気的作用で信号を記録する媒体により実現される。回路検証プログラムは、記録媒体110からコンピュータ100に与えられてもよい。通信インタフェース106は、ネットワークに接続する機能を提供する。なお、回路検証プログラムがプログラムサーバ120に保存されているときには、コンピュータ100は、プログラムサーバ120から回路検証プログラムを取得してもよい。 The input/output device 104 may include input devices such as a keyboard, mouse, touch panel, and microphone. The input/output device 104 may also include output devices such as a display device and speaker. The recording medium reader 105 can acquire data and information recorded on the recording medium 110. The recording medium 110 is a removable recording medium that can be attached to and detached from the computer 100. The recording medium 110 may be realized, for example, by a semiconductor memory, a medium that records signals optically, or a medium that records signals magnetically. The circuit verification program may be provided to the computer 100 from the recording medium 110. The communication interface 106 provides the function of connecting to a network. When the circuit verification program is stored on the program server 120, the computer 100 may acquire the circuit verification program from the program server 120.

1 ネットリスト保存部
2 デバイス設計情報保存部
3 検証部
4 表示部
10 回路検証装置
101 プロセッサ
102 メモリ
1 Netlist storage unit 2 Device design information storage unit 3 Verification unit 4 Display unit 10 Circuit verification device 101 Processor 102 Memory

Claims (6)

複数のICを含む対象回路を検証する回路検証装置であって、
前記複数のICどうしの接続を表すネットリスト情報を保存する第1の保存部と、
前記複数のICそれぞれについての設計情報を保存する第2の保存部と、
前記ネットリスト情報および前記複数のICそれぞれについての設計情報に基づいて前記対象回路を検証する検証部と、を備え、
前記設計情報は、前記複数のICそれぞれについて、当該ICの各端子の属性を表す属性情報、および当該IC内で各端子に接続する内部回路を表す内部回路情報を含み、
前記検証部は、
前記複数のICのうちの第1のICの第1の端子が指定されたときに、前記ネットリスト情報に基づいて、前記第1の端子に電気的に接続する前記複数のICのうちの第2のICの第2の端子を検出し、
前記ネットリスト情報、前記第1の端子に係わる前記内部回路情報、および前記第2の端子に係わる前記内部回路情報に基づいて、前記第1の端子に電気的に接続する検証対象回路部分を検出し、
前記第1の端子に係わる前記属性情報および前記第2の端子に係わる前記属性情報に基づいて、前記第1の端子と前記第2の端子とが電気的に接続されてよいか否かを判定する第1の判定を行い、
前記ネットリスト情報、前記第1の端子に係わる前記属性情報および前記内部回路情報、および前記第2の端子に係わる前記属性情報および前記内部回路情報に基づいて、前記検証対象回路部分において抵抗が正しく設けられているか否かを判定する第2の判定を行う
ことを特徴とする回路検証装置。
A circuit verification device that verifies a target circuit including a plurality of ICs,
a first storage unit that stores netlist information representing connections between the plurality of ICs;
a second storage unit that stores design information for each of the plurality of ICs;
a verification unit that verifies the target circuit based on the netlist information and design information for each of the plurality of ICs,
the design information includes, for each of the plurality of ICs, attribute information representing attributes of each terminal of the IC, and internal circuit information representing an internal circuit connected to each terminal within the IC;
The verification unit
when a first terminal of a first IC among the plurality of ICs is designated, detecting a second terminal of a second IC among the plurality of ICs that is electrically connected to the first terminal based on the netlist information;
detecting a circuit portion to be verified that is electrically connected to the first terminal based on the netlist information, the internal circuit information related to the first terminal, and the internal circuit information related to the second terminal;
performing a first determination based on the attribute information related to the first terminal and the attribute information related to the second terminal to determine whether or not the first terminal and the second terminal may be electrically connected;
and performing a second determination of whether or not a resistor is correctly provided in the circuit portion to be verified, based on the netlist information, the attribute information and internal circuit information related to the first terminal, and the attribute information and internal circuit information related to the second terminal.
前記属性情報は、前記各端子の属性が、出力端子、オープンドレイン入力端子、オープンドレイン端子、双方向端子、または入力端子のいずれであるのかを表し、
前記検証部は、
前記第1の判定において、互いに電気的に接続してはいけない端子の属性の組合せを表すルール情報、前記第1の端子の属性、および前記第2の端子の属性に基づいて、前記第1の端子と前記第2の端子とが電気的に接続されてよいか否かを判定する
ことを特徴とする請求項1に記載の回路検証装置。
the attribute information indicates whether the attribute of each terminal is an output terminal, an open-drain input terminal, an open-drain terminal, a bidirectional terminal, or an input terminal;
The verification unit
2. The circuit verification device according to claim 1, wherein in the first determination, it is determined whether or not the first terminal and the second terminal may be electrically connected based on rule information representing a combination of attributes of terminals that must not be electrically connected to each other, an attribute of the first terminal, and an attribute of the second terminal.
前記内部回路情報は、前記各端子にプルアップ抵抗が接続されているか否か、前記各端子にプルダウン抵抗が接続されているか否か、および前記各端子に電圧保持回路が接続されているか否かを表し、
前記ルール情報は、端子の属性ごとに必要な抵抗回路を表す情報を含み、
前記検証部は、
前記第2の判定において、前記ルール情報、前記第1の端子の属性、および前記第2の端子の属性に基づいて、前記検証対象回路部分において抵抗が正しく設けられているか否かを判定する
ことを特徴とする請求項2に記載の回路検証装置。
the internal circuit information indicates whether a pull-up resistor is connected to each of the terminals, whether a pull-down resistor is connected to each of the terminals, and whether a voltage holding circuit is connected to each of the terminals;
the rule information includes information indicating a resistor circuit required for each attribute of a terminal;
The verification unit
3. The circuit verification device according to claim 2, wherein in the second determination, it is determined whether or not a resistor is correctly provided in the circuit portion to be verified based on the rule information, an attribute of the first terminal, and an attribute of the second terminal.
前記内部回路情報は、前記各端子にプルアップ抵抗が接続されているか否か、前記各端子にプルダウン抵抗が接続されているか否か、および前記各端子に電圧保持回路が接続されているか否かを表し、
前記ルール情報は、端子の属性ごとに設けてはいけない抵抗回路を表す情報を含み、
前記検証部は、
前記第2の判定において、前記ルール情報、前記第1の端子の属性、および前記第2の端子の属性に基づいて、前記検証対象回路部分において抵抗が正しく設けられているか否かを判定する
ことを特徴とする請求項2に記載の回路検証装置。
the internal circuit information indicates whether a pull-up resistor is connected to each of the terminals, whether a pull-down resistor is connected to each of the terminals, and whether a voltage holding circuit is connected to each of the terminals;
the rule information includes information indicating a resistor circuit that should not be provided for each attribute of the terminal;
The verification unit
3. The circuit verification device according to claim 2, wherein in the second determination, it is determined whether or not a resistor is correctly provided in the circuit portion to be verified based on the rule information, an attribute of the first terminal, and an attribute of the second terminal.
前記設計情報は、前記複数のICそれぞれについて、各端子に付与されている信号名を表す信号名情報をさらに含み、
前記検証部は、前記第1の端子に付与されている信号名と前記第2の端子に付与されている信号名とを比較した結果を出力する
ことを特徴とする請求項1に記載の回路検証装置。
the design information further includes signal name information indicating signal names assigned to each terminal of each of the plurality of ICs;
2. The circuit verification device according to claim 1, wherein the verification unit outputs a result of comparing the signal name assigned to the first terminal with the signal name assigned to the second terminal.
複数のICどうしの接続を表すネットリスト情報および前記複数のICそれぞれについての設計情報に基づいて前記複数のICを含む回路を検証する回路検証方法であって、
前記設計情報は、前記複数のICそれぞれについて、当該ICの各端子の属性を表す属性情報、および当該IC内で各端子に接続する内部回路を表す内部回路情報を含み、
前記複数のICのうちの第1のICの第1の端子が指定されたときに、前記ネットリスト情報に基づいて、前記第1の端子に電気的に接続する前記複数のICのうちの第2のICの第2の端子を検出し、
前記ネットリスト情報、前記第1の端子に係わる前記内部回路情報、および前記第2の端子に係わる前記内部回路情報に基づいて、前記第1の端子に電気的に接続する検証対象回路部分を検出し、
前記第1の端子に係わる前記属性情報および前記第2の端子に係わる前記属性情報に基づいて、前記第1の端子と前記第2の端子とが電気的に接続されてよいか否かを判定する第1の判定を行い、
前記ネットリスト情報、前記第1の端子に係わる前記属性情報および前記内部回路情報、および前記第2の端子に係わる前記属性情報および前記内部回路情報に基づいて、前記検証対象回路部分において抵抗が正しく設けられているか否かを判定する第2の判定を行う
ことを特徴とする回路検証方法。
A circuit verification method for verifying a circuit including a plurality of ICs based on netlist information representing connections between the plurality of ICs and design information for each of the plurality of ICs, comprising:
the design information includes, for each of the plurality of ICs, attribute information representing attributes of each terminal of the IC, and internal circuit information representing an internal circuit connected to each terminal within the IC;
when a first terminal of a first IC among the plurality of ICs is designated, detecting a second terminal of a second IC among the plurality of ICs that is electrically connected to the first terminal based on the netlist information;
detecting a circuit portion to be verified that is electrically connected to the first terminal based on the netlist information, the internal circuit information related to the first terminal, and the internal circuit information related to the second terminal;
performing a first determination based on the attribute information related to the first terminal and the attribute information related to the second terminal to determine whether or not the first terminal and the second terminal may be electrically connected;
and performing a second determination of whether or not a resistor is correctly provided in the circuit portion to be verified based on the netlist information, the attribute information and internal circuit information related to the first terminal, and the attribute information and internal circuit information related to the second terminal.
JP2024107851A 2024-07-04 2024-07-04 Circuit verification device and circuit verification method Pending JP2026007731A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2024107851A JP2026007731A (en) 2024-07-04 2024-07-04 Circuit verification device and circuit verification method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2024107851A JP2026007731A (en) 2024-07-04 2024-07-04 Circuit verification device and circuit verification method

Publications (1)

Publication Number Publication Date
JP2026007731A true JP2026007731A (en) 2026-01-16

Family

ID=98412760

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2024107851A Pending JP2026007731A (en) 2024-07-04 2024-07-04 Circuit verification device and circuit verification method

Country Status (1)

Country Link
JP (1) JP2026007731A (en)

Similar Documents

Publication Publication Date Title
US6292766B1 (en) Simulation tool input file generator for interface circuitry
US11176295B1 (en) Matched net and device analysis based on parasitics
EP0508075B1 (en) Automatic logic model generation from schematic data base
US5590049A (en) Method and system for user programmable design verification for printed circuit boards and multichip modules
US8201136B2 (en) CAD apparatus, method, and computer product for designing printed circuit board
US7093216B2 (en) Apparatus connectable to a computer network for circuit design verification, computer implemented method for circuit design verification, and computer program product for controlling a computer system so as to verify circuit designs
EP0508620B1 (en) Method and System for automatically determing the logical function of a circuit
US7117464B2 (en) System and method for evaluating signal coupling between differential traces in a package design
JP2004213605A (en) Logical equivalence verification device
US8127263B2 (en) Improving routability of integrated circuit design without impacting the design area
US20080141183A1 (en) CAD apparatus, method, and computer product for designing printed circuit board
US20170011138A1 (en) System and method for hierarchical power verification
KR100873885B1 (en) Design Verification Device, Design Verification Method and CAD System
US7194715B2 (en) Method and system for performing static timing analysis on digital electronic circuits
JP2026007731A (en) Circuit verification device and circuit verification method
US7287236B2 (en) Electronic device connectivity analysis methods and systems
US20200192992A1 (en) Information processing apparatus and pull-up and pull-down resistor verification method
JP2004013821A (en) Semiconductor integrated circuit design method and design apparatus
JP3941336B2 (en) Logic circuit verification device
JPH07129647A (en) Cad system
JP7355462B1 (en) Circuit design device, circuit design method, and program
US20250165670A1 (en) Automatic check method and device
JP7278981B2 (en) Crosstalk check device
JP4559519B2 (en) Logical equivalence verification device
CN120509367A (en) Time sequence adjusting method, device, electronic equipment and storage medium