[go: up one dir, main page]

JP3196931B2 - Partitioning method and device, and emulation method and device - Google Patents

Partitioning method and device, and emulation method and device

Info

Publication number
JP3196931B2
JP3196931B2 JP01237699A JP1237699A JP3196931B2 JP 3196931 B2 JP3196931 B2 JP 3196931B2 JP 01237699 A JP01237699 A JP 01237699A JP 1237699 A JP1237699 A JP 1237699A JP 3196931 B2 JP3196931 B2 JP 3196931B2
Authority
JP
Japan
Prior art keywords
data
processing unit
candidate block
result
circuit
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.)
Expired - Fee Related
Application number
JP01237699A
Other languages
Japanese (ja)
Other versions
JP2000207445A (en
Inventor
こずえ 小林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP01237699A priority Critical patent/JP3196931B2/en
Publication of JP2000207445A publication Critical patent/JP2000207445A/en
Application granted granted Critical
Publication of JP3196931B2 publication Critical patent/JP3196931B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、パーティショニン
グ方法および装置、ならびにエミュレーション方法およ
び装置に関する。
[0001] The present invention relates to a partitioning method and device, and an emulation method and device.

【0002】[0002]

【従来の技術】エミュレーションについては、特開平9
−50453号公報に開示された技術が知られている。
エミュレーション装置は、LSIの論理検証を行うもの
である。エミュレーション装置は、検証対象のLSIの
論理(Logic)をフィールド・プログラマブル・ゲ
ートアレイ(FPGA)等のプログラマブルデバイスに
マッピングして、前記プログラマブルデバイス上でLS
Iの論理検証を行うものである。
2. Description of the Related Art Emulation is disclosed in
A technique disclosed in Japanese Patent Publication No. -50453 is known.
The emulation device performs logic verification of an LSI. The emulation apparatus maps the logic (Logic) of the LSI to be verified to a programmable device such as a field programmable gate array (FPGA) and performs LS on the programmable device.
The logic verification of I is performed.

【0003】エミュレーション装置は、前記プログラマ
ブルデバイスが複数搭載されるエミュレーションボード
(以下、単にボードという)を、複数枚備えている。エ
ミュレーション装置において検証対象となるLSIの回
路(論理)を示すデータ(回路データ)は、複数のデー
タブロック(回路ブロック)に分割され、それぞれのデ
ータブロックが前記複数のボードのそれぞれに割り当て
られる。この割り当て作業を、パーティショニングとい
う。なお、ここで、前記LSIの回路(論理)を示すデ
ータとは、一般的にネットリストと呼ばれるものに相当
する。
An emulation apparatus includes a plurality of emulation boards (hereinafter, simply referred to as boards) on which a plurality of the programmable devices are mounted. Data (circuit data) indicating an LSI circuit (logic) to be verified in the emulation device is divided into a plurality of data blocks (circuit blocks), and each data block is assigned to each of the plurality of boards. This assignment is called partitioning. Here, the data indicating the circuit (logic) of the LSI corresponds to what is generally called a netlist.

【0004】1枚のボードに搭載可能なデータ(前記回
路ブロック)量には、一定の限界がある(これを最大搭
載ゲート数という)。したがって、前記パーティショニ
ングは、前記複数のボードのそれぞれに割り当てられる
前記回路ブロックのデータ量(回路規模、ゲート数)
が、前記限界を超えないように行われる必要がある。
There is a certain limit to the amount of data (the circuit block) that can be mounted on one board (this is called the maximum number of mounted gates). Therefore, the partitioning is performed by the data amount (circuit size, number of gates) of the circuit block allocated to each of the plurality of boards.
Must be performed so as not to exceed the limit.

【0005】前記複数のボードのそれぞれに割り当てら
れた前記回路ブロック同士の電気的接続は、前記複数の
ボード間に接続された信号線(配線)によって行われ
る。この場合、1枚のボードに接続可能な信号線の数
(信号数)には、一定の制約がある。これは、前記エミ
ュレーション装置の物理的な構成上の制約で、前記エミ
ュレーション装置の仕様により決定される。したがっ
て、前記パーティショニングに際して、前記1枚のボー
ドに前記回路ブロックが割り当てられるときに、前記回
路ブロックから引き出される信号線の数が、前記制約の
数(最大ボード間信号数)を超えないようになされる必
要がある。
The electrical connection between the circuit blocks allocated to each of the plurality of boards is performed by signal lines (wirings) connected between the plurality of boards. In this case, there is a certain restriction on the number of signal lines (number of signals) that can be connected to one board. This is a restriction on the physical configuration of the emulation device and is determined by the specifications of the emulation device. Therefore, at the time of the partitioning, when the circuit block is allocated to the one board, the number of signal lines drawn from the circuit block does not exceed the number of constraints (maximum number of signals between boards). Need to be done.

【0006】前記パーティショニングが行われた後、前
記複数のボードのそれぞれにコンパイル処理が行われ
る。その後、前記回路データの全体のコンパイル処理が
行われる。ここで、前記エミュレーション装置における
前記コンパイル処理とは、ユーザーの設計する回路の基
本単位である論理ゲート(後述する)を接続したものと
して記載された回路データを、前記エミュレーション装
置のFPGA上にマッピング可能な回路データに変換す
る処理を意味している。なお一般に、前記論理ゲートの
バリエーションの集合は、プリミティブライブラリと呼
ばれるものに相当する。
After the partitioning is performed, a compile process is performed on each of the plurality of boards. After that, the whole circuit data is compiled. Here, the compiling process in the emulation device means that circuit data described as connecting a logic gate (described later), which is a basic unit of a circuit designed by a user, can be mapped on an FPGA of the emulation device. Means to convert the data into simple circuit data. In general, a set of variations of the logic gate corresponds to what is called a primitive library.

【0007】以下、図9を参照して、前記パーティショ
ニングを行うパーティショニングシステムについて説明
する。
Hereinafter, a partitioning system for performing the partitioning will be described with reference to FIG.

【0008】従来のパーティショニングシステムは、入
力部5と、データ処理部6と、データ格納部7と、出力
部8とを備えている。
The conventional partitioning system includes an input unit 5, a data processing unit 6, a data storage unit 7, and an output unit 8.

【0009】入力部5は、例えば、作業者によって操作
されるキーボードである。データ処理部6は、ゲート数
検出部51と、階層展開部52と、信号検出部53と、
パーティション生成部54とを備えている。
The input unit 5 is, for example, a keyboard operated by an operator. The data processing unit 6 includes a gate number detection unit 51, a hierarchy development unit 52, a signal detection unit 53,
And a partition generation unit 54.

【0010】データ格納部7は、回路データ格納部71
と、ゲート数換算ライブラリ格納部72と、モジュール
ゲート数格納部73と、信号数格納部74と、パーティ
ションデータ格納部75とを備えている。出力部8は、
データ処理部6によるパーティショニング処理の結果を
出力する。
The data storage unit 7 includes a circuit data storage unit 71
, A gate number conversion library storage section 72, a module gate number storage section 73, a signal number storage section 74, and a partition data storage section 75. The output unit 8
The result of the partitioning process by the data processing unit 6 is output.

【0011】次に、図3を参照して、前記パーティショ
ニング処理を行う対象である前記回路データについて説
明する。
Next, the circuit data to be subjected to the partitioning process will be described with reference to FIG.

【0012】図3に示すように、前記回路データは、複
数のモジュールM1,M2,M3,M11,M12,…
から構成されている。前記複数のモジュールM1,M
2,M3,M11,M12,…は、1または2以上の階
層A,B,C,Dを形成することが多い。図3に示され
るように、階層構造を形成する複数のモジュールM1,
M2,M3,M11,M12,…において、最下位階層
C,Dに相当するモジュールM30,M31,M32,
M33,M121,…M12Yは、ゲートのレベルで記
載されている。
As shown in FIG. 3, the circuit data includes a plurality of modules M1, M2, M3, M11, M12,.
It is composed of The plurality of modules M1, M
2, M3, M11, M12,... Often form one or more layers A, B, C, D. As shown in FIG. 3, a plurality of modules M1,
In M2, M3, M11, M12,..., Modules M30, M31, M32,
, M12Y are described at the gate level.

【0013】ここで、「ゲート」とは、ANDゲートや
ORゲートなどの二入力型または三入力型の論理ゲート
の意味である。ここでいう「ゲートのレベル」とは、前
記基本単位となる前記論理ゲート(ANDゲートやOR
ゲートなど)同士を接続したものとして記載されたレベ
ルである。「モジュール」とは、一の機能を実現する単
位であり、複数のプリミティブブロックからなるもので
ある。1つのモジュールは、複数のモジュールを含む場
合がある。
Here, "gate" means a two-input or three-input logic gate such as an AND gate or an OR gate. Here, the “gate level” refers to the logic gate (AND gate or OR gate) serving as the basic unit.
Gates, etc.) are connected to each other. A “module” is a unit that realizes one function, and is composed of a plurality of primitive blocks. One module may include a plurality of modules.

【0014】「プリミティブブロック」とは、前記ゲー
トと同じ意味である。前記プリミティブブロック(=前
記ゲート)のバリエーションの集合として、前記プリミ
ティブライブラリが用意される。前記最下位階層C,D
に相当する機能ブロック(最下位階層ブロック)は、1
または2以上の前記ゲートからなり、前記FPGA上に
マッピング可能な最小機能単位である。すなわち、前記
回路データの構成を整理すると、前記階層の上位から下
位に向けて、上位階層ブロック−…−前記最下位階層ブ
ロック−前記ゲート(=前記プリミティブブロック)と
いう関係になる。前記ボードにマッピング可能な最小単
位が前記最下位階層ブロックであり、前記最下位階層ブ
ロックの構成要素として、前記ゲート(=プリミティブ
ブロック)がある。以下、前記ゲート(=プリミティブ
ブロック)を基本単位という。前記最下位階層ブロック
を前記FPGAにマッピングする上での最小単位とい
う。機能記述(HDL記述)されたもの(前記機能ブロ
ック)が論理合成されてゲート記述されることにより、
前記プリミティブブロック(=前記ゲート)に変換され
る。
"Primitive block" has the same meaning as the gate. The primitive library is prepared as a set of variations of the primitive block (= the gate). The lowest hierarchy C, D
The functional block (lowest hierarchical block) corresponding to
Alternatively, it is a minimum functional unit that includes two or more of the gates and can be mapped on the FPGA. That is, when the configuration of the circuit data is arranged, from the upper level to the lower level of the hierarchy, there is a relation of an upper hierarchical block---the lowermost hierarchical block-the gate (= the primitive block). The minimum unit that can be mapped to the board is the lowest hierarchical block, and the gate (= primitive block) is a component of the lowest hierarchical block. Hereinafter, the gate (= primitive block) is referred to as a basic unit. It is referred to as a minimum unit for mapping the lowest hierarchical block to the FPGA. Functionally described (HDL description) (the above functional block) is logically synthesized and gate-described,
It is converted to the primitive block (= the gate).

【0015】図9において、前記回路データ格納部71
には、予め、論理検証の対象となるLSIの回路データ
が複数格納されている。前記回路データは、その前記最
小単位を、前記最下位階層の機能ブロック(前記最下位
階層ブロック)として、前記回路データ格納部71に格
納されている。前記機能記述(HDL記述)されたもの
(前記機能ブロック)が論理合成されてゲート記述化さ
れたものが、前記回路データとして前記回路データ格納
部71に格納されている。
In FIG. 9, the circuit data storage 71
In advance, a plurality of circuit data of an LSI to be subjected to logic verification are stored. The circuit data is stored in the circuit data storage unit 71 with the minimum unit as the functional block of the lowest hierarchy (the lowest hierarchical block). The function description (HDL description) (the function block) is logically synthesized and the gate description is stored in the circuit data storage unit 71 as the circuit data.

【0016】前記ゲート数換算ライブラリ格納部72に
は、予め、複数の前記プリミティブブロックのそれぞれ
のゲート規模を示すデータが格納されている。前述した
ように、前記プリミティブブロックとは、前記ゲートの
意味であるが、ここでいう前記ゲート規模とは、例え
ば、2入力NANDの前記ゲートは1ゲートとなり、3
入力NANDの前記ゲートは2ゲートとなるというよう
に、各ゲートの規模(ゲート数)を示すものである。
The gate number conversion library storage section 72 previously stores data indicating the gate size of each of the plurality of primitive blocks. As described above, the primitive block means the gate, but the gate size here means, for example, that the gate of a two-input NAND becomes one gate, and
The gates of the input NAND indicate the scale (the number of gates) of each gate, such as two gates.

【0017】次に、図9に示したパーティショニングシ
ステムの動作について説明する。
Next, the operation of the partitioning system shown in FIG. 9 will be described.

【0018】まず、前記入力部5から前記データ処理部
6に、制御コマンドが出力される。この制御コマンド
は、論理検証の対象とすべき回路データを、前記回路デ
ータ格納部71に格納された前記複数の回路データの中
から指定する旨の内容を示している。
First, a control command is output from the input unit 5 to the data processing unit 6. This control command indicates that the circuit data to be subjected to logic verification is specified from among the plurality of circuit data stored in the circuit data storage unit 71.

【0019】前記ゲート数検出部51の動作について説
明する。
The operation of the gate number detecting section 51 will be described.

【0020】前記ゲート数検出部51は、前記制御コマ
ンドを入力し、前記入力した制御コマンドにより指定さ
れた回路データを、前記回路データ格納部71から読み
出す。
The gate number detecting section 51 receives the control command and reads circuit data specified by the input control command from the circuit data storage section 71.

【0021】前記ゲート数検出部51は、前記ゲート数
換算ライブラリ格納部72に格納された前記データを参
照する。前記ゲート数検出部51は、前記参照された前
記データに基づいて、前記読み出された前記回路データ
に含まれる全体の前記ゲート数(前記回路データを構成
する全てのモジュールの前記ゲート数)を検出する。
The gate number detecting section 51 refers to the data stored in the gate number conversion library storage section 72. The gate number detection unit 51 calculates the total number of gates (the number of gates of all modules constituting the circuit data) included in the read circuit data based on the referenced data. To detect.

【0022】このとき、前記ゲート数検出部51は、前
記回路データを構成する前記複数のモジュールのそれぞ
れに含まれる前記ゲート数を検出する。この場合、前記
ゲート数検出部51は、階層構造を形成する前記複数の
モジュールのうち、最下位階層に含まれる前記モジュー
ルから上位の階層に向かう順に、それぞれの階層に含ま
れるそれぞれの前記モジュールに含まれる前記ゲート数
を検出していく。
At this time, the gate number detector 51 detects the number of gates included in each of the plurality of modules constituting the circuit data. In this case, the number-of-gates detection unit 51 determines, for each of the modules included in each of the plurality of modules forming the hierarchical structure, in order from the module included in the lowest hierarchy to the higher hierarchy. The number of the gates included is detected.

【0023】前記ゲート数検出部51は、上記のような
順序(ボトムアップ)で前記ゲート数を検出することに
より、前記複数のモジュールのそれぞれに含まれる前記
ゲート数の他、前記複数の階層のそれぞれに含まれる全
モジュールの前記ゲート数や、前記回路データの全体に
含まれる前記ゲート数を検出することができる。
The number-of-gates detecting section 51 detects the number of gates in the above-described order (bottom-up), and thereby, in addition to the number of gates included in each of the plurality of modules, the number of gates of the plurality of layers. It is possible to detect the number of gates of all the modules included therein and the number of gates included in the entire circuit data.

【0024】前記ゲート数検出部51は、前記検出され
たゲート数を示すデータを、前記モジュールゲート数格
納部73に格納する。この場合、前記ゲート数検出部5
1により検出された前記ゲート数を示すデータは、前記
複数のモジュールのそれぞれに含まれるゲート数が分か
る状態で、前記モジュールゲート数格納部73に格納さ
れる。
The gate number detecting section 51 stores data indicating the detected gate number in the module gate number storing section 73. In this case, the gate number detector 5
The data indicating the number of gates detected by 1 is stored in the module gate number storage 73 with the number of gates included in each of the plurality of modules being known.

【0025】次に、前記階層展開部52の動作について
説明する。
Next, the operation of the hierarchy expanding section 52 will be described.

【0026】前記階層展開部52は、前記モジュールゲ
ート数格納部73から、前記回路データを構成する前記
複数のモジュールのそれぞれに含まれる前記ゲートの数
を示すデータを読み出す。
The hierarchy expanding section 52 reads out from the module gate number storing section 73 data indicating the number of gates included in each of the plurality of modules constituting the circuit data.

【0027】前記階層展開部52は、前記複数のモジュ
ールのそれぞれに含まれる前記ゲートの数が、前記ボー
ド1枚あたりの前記最大搭載ゲート数よりも大きいか否
かを判断する。前記階層展開部52は、前記判断の結
果、そのモジュールの前記ゲート数が前記最大搭載ゲー
ト数よりも大きい場合には、前記そのモジュールについ
て階層を展開する。
The hierarchy expanding section 52 determines whether or not the number of gates included in each of the plurality of modules is larger than the maximum number of mounted gates per board. If the number of gates of the module is larger than the maximum number of mounted gates as a result of the determination, the hierarchy expanding unit 52 expands the hierarchy for the module.

【0028】前記階層展開部52による、前記判断、お
よび前記判断結果に基づく前記階層展開は、前記回路デ
ータを構成する前記複数のモジュールのうち、上位の階
層に含まれるモジュールから下位の階層に向かう順序
(トップダウン)で、行われる。
The determination by the hierarchical expansion unit 52 and the hierarchical expansion based on the determination result are performed from a module included in an upper hierarchy to a lower hierarchy among the plurality of modules constituting the circuit data. It is done in order (top down).

【0029】上記において、「階層を展開する」とは、
例えば、階層AのモジュールM3に含まれるゲート数が
前記最大搭載ゲート数よりも大きいと判断された場合
に、モジュールM3の下位に階層Cを設けて、モジュー
ルM3に含まれる複数のゲートを、階層Cの複数のモジ
ュールM30,31,32,33に分割することであ
る。そして、階層展開された各モジュールM30,3
1,32,33を単位として、後述するパーティショニ
ングが行われる。一方、例えば、モジュールM1に含ま
れるゲート数が前記最大搭載ゲート数以下であると判断
された場合には、モジュールM1の階層展開を行わず
に、パーティショニングの際には、モジュールM1をそ
の単位とする。
In the above, “expanding the hierarchy” means
For example, when it is determined that the number of gates included in the module M3 in the hierarchy A is larger than the maximum number of mounted gates, a hierarchy C is provided below the module M3, and a plurality of gates included in the module M3 are classified into the hierarchy. C is divided into a plurality of modules M30, 31, 32, and 33. Then, each of the modules M30, M3
Partitioning described later is performed in units of 1, 32, and 33. On the other hand, for example, when it is determined that the number of gates included in the module M1 is equal to or smaller than the maximum number of mounted gates, the module M1 is not expanded in a hierarchy, and the module M1 is divided into the unit in partitioning. And

【0030】次に、前記信号検出部53の動作について
説明する。
Next, the operation of the signal detector 53 will be described.

【0031】前記階層展開部52による前記モジュール
の階層展開が終わると、前記信号検出部53は、前記複
数のモジュールのそれぞれの前記外部信号数を検出す
る。前記信号検出部53は、その検出結果を示すデータ
を前記信号数格納部74に格納する。
When the hierarchical development of the module by the hierarchical development unit 52 is completed, the signal detection unit 53 detects the number of external signals of each of the plurality of modules. The signal detector 53 stores data indicating the detection result in the signal number storage 74.

【0032】ここで、「モジュールの外部信号数」と
は、当該モジュールが他のモジュールと接続するために
必要とされる端子(接続部)の数である。
Here, the "number of external signals of a module" is the number of terminals (connection portions) required for connecting the module to another module.

【0033】次に、前記パーティション生成部54の動
作について説明する。
Next, the operation of the partition generator 54 will be described.

【0034】前記パーティション生成部54は、前記エ
ミュレーション装置が有する前記複数のボードのそれぞ
れに、前記回路データの一部(前記回路ブロック)を割
り当てる。この場合、前記パーティション生成部54の
具体的な動作は、以下の通りである。
The partition generation unit 54 allocates a part of the circuit data (the circuit block) to each of the plurality of boards included in the emulation device. In this case, a specific operation of the partition generation unit 54 is as follows.

【0035】前記パーティション生成部54は、まず、
前記複数のボードのうちの1枚目のボードに、前記最大
搭載ゲート数を超える直前まで、前記複数のモジュール
のそれぞれを単位として搭載していく。このとき、前記
複数のモジュールのそれぞれは、前記階層展開部52に
よる処理を経た後のものであるから、それぞれのモジュ
ールのゲート数は、いずれも前記最大搭載ゲート数以下
である。
The partition generation unit 54 first
Each of the plurality of modules is mounted on the first board of the plurality of boards until immediately before the maximum number of mounted gates is exceeded. At this time, since each of the plurality of modules has been processed by the hierarchy expanding unit 52, the number of gates of each module is equal to or less than the maximum number of mounted gates.

【0036】前記1枚目のボードに、前記最大搭載ゲー
ト数の直前まで前記モジュールが搭載されたときに、前
記パーティション生成部54は、前記1枚目のボードへ
の前記割り当てを終了し、次は2枚目の前記ボードに、
前記最大搭載ゲート数を超える直前まで、前記モジュー
ルを搭載していく。3枚目の前記ボード以降についても
同様であり、この動作は、前記回路データを構成する前
記複数のモジュールの全てが前記ボードに搭載されるま
で行われる。
When the module is mounted on the first board up to just before the maximum number of mounted gates, the partition generation unit 54 finishes the assignment to the first board, and Is on the second board,
The module is mounted until immediately before exceeding the maximum number of mounted gates. The same applies to the third and subsequent boards, and this operation is performed until all of the plurality of modules constituting the circuit data are mounted on the board.

【0037】上記のように、前記パーティション生成部
54は、前記ボードの使用枚数が少なくなるように、前
記ボードの1枚目から順に、当該ボードが最大搭載ゲー
ト数の直前になるまで、前記モジュールを搭載してい
く。したがって、回路に含まれるゲートの数が少ない
(回路規模が小さい)ものを論理検証の対象とする場合
は、前記エミュレーション装置が有する全てのボードが
使用されるとは限らない。
As described above, the partition generation unit 54 operates in order from the first board of the board so as to reduce the number of used boards until the board becomes immediately before the maximum number of mounted gates. Will be installed. Therefore, when a circuit having a small number of gates (small circuit size) is to be subjected to logic verification, not all the boards included in the emulation device are used.

【0038】また、前記パーティション生成部54で
は、前記信号検出部53により検出された前記モジュー
ルごとの前記外部信号数を示すデータに基づいて、前記
ボード間(パーティション間)の信号数が最小になるよう
に、前記パーティショニングを行う。ここで、「ボード
間の接続信号数」とは、前記ボードと前記ボードとの間
で、それぞれの前記ボードに搭載された前記回路ブロッ
ク同士の電気的接続を行うためのインターフェースとな
る信号線の数を示す。前述したように、前記ボード間の
接続信号数は、前記最大搭載ゲート数と同様に物理的な
制約を受ける。
In the partition generator 54, the number of signals between the boards (between partitions) is minimized based on the data indicating the number of external signals for each module detected by the signal detector 53. The partitioning is performed as described above. Here, "the number of connection signals between the boards" refers to a signal line serving as an interface for electrically connecting the circuit blocks mounted on each of the boards between the boards. Indicates a number. As described above, the number of connection signals between the boards is subject to physical restrictions as in the case of the maximum number of mounted gates.

【0039】[0039]

【発明が解決しようとする課題】ところで、上記パーテ
ィショニングシステムでは、前述したように、前記エミ
ュレーション装置が有する前記複数のボードの1枚目か
ら順に、前記最大搭載ゲート数を超える直前まで、前記
複数のモジュールのそれぞれが単位として搭載されてい
く。
As described above, in the partitioning system, as described above, the plurality of boards included in the emulation apparatus are sequentially arranged from the first one until the number exceeds the maximum number of mounted gates. Each of the modules is mounted as a unit.

【0040】ここで、前記モジュールの階層展開は、前
記最大搭載ゲート数を基準になされているため、前記階
層展開された、パーティショニングの単位として扱われ
る、それぞれのモジュールごとのゲート数は、大きく異
なっている。このように、それぞれの搭載ゲート数が大
きく異なっているモジュールを、前記ボードに搭載して
いくため、パーティショニング終了時の各ボード間での
搭載ゲート数の差は大きい。
Here, since the hierarchical expansion of the modules is based on the maximum number of mounted gates, the hierarchically expanded number of gates for each module treated as a unit of partitioning is large. Is different. As described above, since the modules having significantly different numbers of mounted gates are mounted on the boards, the difference in the number of mounted gates between the boards at the end of the partitioning is large.

【0041】また、前記回路データを構成する前記複数
のモジュールのそれぞれの割り当てが、前記複数のボー
ドの1枚目から順に、前記最大搭載ゲート数を超える直
前までを基準に行われるため、最終枚目のボードには、
前記最大搭載ゲート数を大きく下回ったゲート(「最終
枚−1枚」目のボードまでで搭載されずに残ったゲー
ト)しか搭載されない場合がある。
In addition, each of the plurality of modules constituting the circuit data is allocated in order from the first board of the plurality of boards until immediately before exceeding the maximum number of mounted gates. On the eye board,
In some cases, only gates that are significantly less than the maximum number of mounted gates (gates that have not been mounted up to the “final one-to-one” board) may be mounted.

【0042】上記のことから、前記パーティショニング
の結果として、前記複数のボードのそれぞれに搭載され
るゲートの数は、前記最大搭載ゲート数のほぼ100%
を占めるものから、1%に満たないものまでと、大きく
異なる。
As described above, as a result of the partitioning, the number of gates mounted on each of the plurality of boards is almost 100% of the maximum number of mounted gates.
From 1% to less than 1%.

【0043】前記コンパイルの処理時間は、前記ボード
に搭載された前記ゲート数に影響される。前記コンパイ
ル処理は、前記複数のボードのそれぞれについて、並行
して(パラレルに)行われる。前述したように、前記複
数のボードのそれぞれの搭載ゲート数が大きく異なるこ
とから、前記コンパイル処理の実行時間も、前記複数の
ボードのそれぞれで大きく異なる(例えば、数秒で済む
ものから、数時間を要するものまでと、大きく異なる)
場合がある。
The processing time of the compilation is affected by the number of gates mounted on the board. The compiling process is performed in parallel (in parallel) for each of the plurality of boards. As described above, since the number of mounted gates of each of the plurality of boards is significantly different, the execution time of the compile process is also significantly different for each of the plurality of boards (for example, from several seconds only to several hours). It is very different from what you need)
There are cases.

【0044】一般的なエミュレーション装置では、前述
したように、前記複数のボードのそれぞれについての前
記コンパイル処理が終了した後に、前記回路データの全
体についての前記コンパイル処理が行われる。したがっ
て、前記複数のボードのそれぞれの前記コンパイル処理
時間(搭載ゲート数)の大差は、全体の処理時間の増大
につながってしまう。
In a general emulation device, as described above, after the compile process for each of the plurality of boards is completed, the compile process for the entire circuit data is performed. Therefore, a large difference in the compile processing time (the number of mounted gates) of each of the plurality of boards leads to an increase in the overall processing time.

【0045】また、上記のコンパイルの処理時間の問題
に加えて、コンパイルエラーの問題がある。すなわち、
従来は、前記複数のボードのそれぞれに、前記最大搭載
ゲート数近くの前記ゲート数が搭載されている場合があ
ったため、その分、前記コンパイルのエラーが発生する
可能性が高いという問題があった。一般に、前記エミュ
レーション装置の前記FPGAに前記回路データを前記
マッピングする場合、前記搭載ゲート数(搭載ゲート規
模)が大きいほど、前記複数のプリミティブブロック
(前記ゲート)間の接続信号の総数が大きくなるため、
その接続を実現するための前記FPGAで消費する資産
が大きくなり、前記コンパイルエラーとなる可能性が高
くなる。
In addition to the above-mentioned problem of the compile processing time, there is a problem of a compile error. That is,
Conventionally, the number of gates near the maximum number of mounted gates may be mounted on each of the plurality of boards, so that there is a problem that the compilation error is highly likely to occur accordingly. . Generally, when the circuit data is mapped to the FPGA of the emulation device, the total number of connection signals between the plurality of primitive blocks (the gates) increases as the number of mounted gates (scale of mounted gates) increases. ,
The resources consumed by the FPGA for realizing the connection increase, and the possibility of the compile error increases.

【0046】本発明は、上記の事情に鑑みてなされたも
ので、全体の処理時間を短縮化することができ、コンパ
イル等の処理でエラーが発生する可能性を最小限に抑え
ることのできる、パーティショニング方法および装置、
ならびにエミュレーション方法および装置を提供するこ
とを目的としている。
The present invention has been made in view of the above circumstances, and can shorten the entire processing time and minimize the possibility of occurrence of an error in a process such as compiling. Partitioning method and apparatus,
And an emulation method and apparatus.

【0047】[0047]

【課題を解決するための手段】本発明のパーティショニ
ング方法は、被検査対象データ(回路データ)を複数に
分割して前記分割の結果としての複数のデータブロック
(回路ブロック,1パーティション)を生成するパーテ
ィショニング方法であって、少なくとも一つの要素デー
タ(ゲート)を備えた処理単位データ(モジュールM3
0,M31,M32,M33)を複数備えて構成される
データを前記被検査対象データ(M3)として提供する
ステップと、前記被検査対象データ(M3)を構成する
前記複数の処理単位データ(M30,M31,M32,
M33)にそれぞれ含まれる前記要素データの数を検出
するステップ(B1)と、前記検出結果に基づいて、前
記被検査対象データ(M3)を構成する前記複数の処理
単位データ(M30,M31,M32,M33)から複
数の前記処理単位データ(M33,M30)を選択して
前記選択された複数の処理単位データ(M33,M3
0)により候補ブロック(新モジュールM33,M3
0)を生成するステップ(B2,B3)と、前記生成さ
れた候補ブロック(M33,M30)に含まれる前記要
素データの数と設定値との比較を行うステップ(B4)
と、前記比較結果に基づいて、前記候補ブロック(M3
3,M30)を前記データブロックとするか否かを決定
するステップ(B4,B7)とを備えている。
According to a partitioning method of the present invention, data to be inspected (circuit data) is divided into a plurality of pieces to generate a plurality of data blocks (circuit blocks, one partition) as a result of the division. Processing unit data (module M3) including at least one element data (gate).
0, M31, M32, and M33) as data to be inspected (M3); and a plurality of processing unit data (M30) constituting the inspected data (M3). , M31, M32,
M33) detecting the number of element data included in each of the plurality of processing unit data (M30, M31, M32) constituting the inspection object data (M3) based on the detection result. , M33) to select a plurality of processing unit data (M33, M30) and select the plurality of processing unit data (M33, M3).
0) to the candidate block (new modules M33, M3
(B2, B3) and a step (B4) of comparing the number of the element data included in the generated candidate blocks (M33, M30) with a set value.
And the candidate block (M3
(B4, B7) for determining whether or not (3, M30) is the data block.

【0048】本発明のパーティショニング方法におい
て、前記分割の結果としての複数のデータブロックのそ
れぞれは、ボードに割り当てられ、前記比較を行うステ
ップ(B4)は、前記被検査対象データに含まれる全て
の前記要素データの数を前記複数のデータブロックのそ
れぞれを割り当てるための全ての前記ボードの数で割っ
た数に対応する平均搭載要素データ数、に基づいて設定
される数を前記設定値とする。
In the partitioning method of the present invention, each of the plurality of data blocks as a result of the division is allocated to a board, and the step (B4) of performing the comparison includes all the blocks included in the data to be inspected. The number set based on the average number of mounted element data corresponding to the number obtained by dividing the number of the element data by the number of all the boards for allocating each of the plurality of data blocks is the set value.

【0049】本発明のパーティショニング方法におい
て、前記データを前記被検査対象データ(M3)として
提供するステップは、入力データに含まれる前記要素デ
ータの数を検出するステップと、前記検出された前記入
力データに含まれる要素データの数と、所定値との比較
検討を行なうステップ(A3)と、前記比較検討結果に
基づいて、前記処理単位データを生成するステップ(A
5,A8)とを備えたものである。
In the partitioning method of the present invention, the step of providing the data as the data to be inspected (M3) includes the steps of: detecting the number of the element data included in the input data; Comparing the number of element data included in the data with a predetermined value (A3); and generating the processing unit data based on the result of the comparison (A3).
5, A8).

【0050】本発明のパーティショニング方法におい
て、前記分割の結果としての複数のデータブロックのそ
れぞれは、ボードに割り当てられ、前記比較検討を行う
ステップ(A3)は、前記被検査対象データに含まれる
全ての前記要素データの数を前記複数のデータブロック
のそれぞれを割り当てるための全ての前記ボードの数で
割った数に対応する平均搭載要素データ数、に基づいて
設定される数を前記所定値とするものである。
In the partitioning method of the present invention, each of the plurality of data blocks as a result of the division is assigned to a board, and the step (A3) of performing the comparison and review includes all of the data included in the data to be inspected. The number set based on the average number of mounted element data corresponding to the number obtained by dividing the number of the element data by the number of all the boards for allocating each of the plurality of data blocks is the predetermined value. Things.

【0051】本発明のパーティショニング方法におい
て、前記比較検討を行なうステップ(A3)は、前記被
検査対象データの前記分割を行なうことができないと判
断されたときに、前記所定値の値を自動的に更新するも
のである。
In the partitioning method according to the present invention, the step (A3) of performing the comparison and examination includes automatically determining the value of the predetermined value when it is determined that the division of the data to be inspected cannot be performed. Is to be updated.

【0052】本発明のパーティショニング方法におい
て、前記比較を行うステップ(B4)は、前記被検査対
象データの前記分割を行なうことができないと判断され
たときに、前記設定値の値を自動的に更新するものであ
る。
In the partitioning method of the present invention, the step (B4) of performing the comparison includes automatically changing the value of the set value when it is determined that the division of the data to be inspected cannot be performed. To be updated.

【0053】本発明のパーティショニング方法におい
て、更に、前記決定するステップの結果、前記候補ブロ
ック(M33,M30)を前記データブロックとしない
と決定した場合に、前記検出結果に基づいて、前記被検
査対象データ(M3)を構成する前記複数の処理単位デ
ータ(M30,M31,M32,M33)の中から、前
記候補ブロック(M33,M30)に含まれる前記複数
の処理単位データ(M33,M30)のうちの少なくと
も一の前記処理単位データ(M30)に代わる前記処理
単位データ(M31)を選択し、前記選択された前記処
理単位データ(M31)により第2の候補ブロック(M
31,M33)を生成するステップ(B4−N,B10
−N,B3)を備え、前記比較を行うステップは、前記
生成された第2の候補ブロック(M31,M33)に含
まれる前記要素データの数と前記設定値との比較を行
い、前記決定するステップは、前記比較結果に基づい
て、前記第2の候補ブロック(M31,M33)を前記
データブロックとするか否かを決定するものである。
In the partitioning method of the present invention, if the candidate block (M33, M30) is determined not to be the data block as a result of the determining step, the inspection target is determined based on the detection result. Among the plurality of processing unit data (M30, M31, M32, M33) constituting the target data (M3), the plurality of processing unit data (M33, M30) included in the candidate block (M33, M30) The processing unit data (M31) that replaces at least one of the processing unit data (M30) is selected, and a second candidate block (M3) is selected based on the selected processing unit data (M31).
(B4-N, B10)
-N, B3), and the step of performing the comparison includes comparing the number of the element data included in the generated second candidate block (M31, M33) with the set value and determining the value. The step determines whether or not the second candidate block (M31, M33) is the data block based on the comparison result.

【0054】本発明のパーティショニング方法におい
て、更に、前記決定するステップの結果、前記候補ブロ
ック(M33,M30)が前記データブロックとして決
定されたときに、前記被検査対象データ(M3)を構成
する前記複数の処理単位データ(M30,M31,M3
2,M33)のうちの前記データブロックとして決定さ
れた前記候補ブロック(M33,M30)以外の複数の
前記処理単位データ(M31,M32)から複数の前記
処理単位データ(M31,M32)を選択して前記選択
された複数の処理単位データ(M31,M32)により
第3の候補ブロック(新モジュールM31,M32)を
生成するステップ(B8,B1,B2,B3)を備え、
前記比較を行うステップは、前記生成された第3の候補
ブロック(M31,M32)に含まれる前記要素データ
の数と前記設定値との比較を行い、前記決定するステッ
プは、前記比較結果に基づいて、前記第3の候補ブロッ
ク(M31,M32)を前記データブロックとするか否
かを決定するものである。
In the partitioning method of the present invention, when the candidate block (M33, M30) is determined as the data block as a result of the determining step, the inspection object data (M3) is formed. The plurality of processing unit data (M30, M31, M3
2, M33), a plurality of processing unit data (M31, M32) are selected from a plurality of processing unit data (M31, M32) other than the candidate block (M33, M30) determined as the data block. (B8, B1, B2, B3) of generating a third candidate block (new modules M31, M32) from the selected plurality of processing unit data (M31, M32).
The step of performing the comparison includes comparing the number of the element data included in the generated third candidate block (M31, M32) with the set value, and the step of determining based on the result of the comparison Then, it is determined whether or not the third candidate block (M31, M32) is to be the data block.

【0055】本発明のパーティショニング方法におい
て、前記分割の結果としての複数のデータブロックのそ
れぞれは、ボードに割り当てられ、更に、前記生成され
た候補ブロック(M33,M30)に含まれる前記要素
データの数と、前記ボードに割り当て可能な前記要素デ
ータの最大数を示す最大搭載要素データ数との対比を行
うステップ(B5)を備え、前記決定するステップ(B
4,B5,B7)は、前記比較結果および前記対比結果
に基づいて前記決定を行うものである。
In the partitioning method of the present invention, each of the plurality of data blocks as a result of the division is assigned to a board, and further, the data blocks of the element data included in the generated candidate blocks (M33, M30) are further assigned. (B5) comparing the number with the maximum number of mounted element data indicating the maximum number of element data that can be allocated to the board, and the step of determining (B)
4, B5, B7) make the determination based on the comparison result and the comparison result.

【0056】本発明のパーティショニング方法におい
て、前記分割の結果としての複数のデータブロックのそ
れぞれは、ボードに割り当てられ、更に、前記生成され
た候補ブロック(M33,M30)における他の前記複
数のデータブロックのそれぞれとの間の電気的接続を行
うための外部信号の数を検出するステップと、前記検出
された前記候補ブロック(M33,M30)の前記外部
信号の数と、前記ボードに接続可能な前記外部信号の最
大数を示す最大ボード間信号数との対比を行うステップ
(B6)を備え、前記決定するステップ(B4,B6,
B7)は、前記比較結果および前記対比結果に基づいて
前記決定を行うものである。
In the partitioning method of the present invention, each of the plurality of data blocks as a result of the division is assigned to a board, and the plurality of other data blocks in the generated candidate block (M33, M30) are further assigned. Detecting the number of external signals for making an electrical connection with each of the blocks; the number of the external signals of the detected candidate blocks (M33, M30); (B6) comparing with the maximum number of inter-board signals indicating the maximum number of external signals, and determining (B4, B6,
B7) performs the determination based on the comparison result and the comparison result.

【0057】本発明のパーティショニング方法におい
て、更に、前記対比の結果、前記検出された前記候補ブ
ロック(M33,M30)の前記外部信号の数が、前記
最大ボード間信号数を超えていると判断した場合(B6
−N)に、前記被検査対象データ(M3)を構成する前
記複数の処理単位データ(M30,M31,M32,M
33)の中から、前記候補ブロック(M33,M30)
に含まれる前記複数の処理単位データ(M33,M3
0)のうちの少なくとも一の前記処理単位データ(M3
0)に代わる前記処理単位データ(M31)を選択し、
前記選択された前記処理単位データ(M31)により第
4の候補ブロック(M31,M33)を生成するステッ
プ(B6−N,B9−N,B3)を備え、前記比較を行
うステップは、前記生成された第4の候補ブロック(M
31,M33)に含まれる前記要素データの数と前記設
定値との比較を行い、前記決定するステップは、前記比
較結果に基づいて、前記第4の候補ブロック(M31,
M33)を前記データブロックとするか否かを決定する
ものである。
In the partitioning method of the present invention, it is further determined that the number of the external signals of the detected candidate blocks (M33, M30) exceeds the maximum number of signals between boards as a result of the comparison. (B6
-N) includes the plurality of processing unit data (M30, M31, M32, M) constituting the inspection object data (M3).
33), the candidate blocks (M33, M30)
The plurality of processing unit data (M33, M3
0) of the processing unit data (M3
0) the processing unit data (M31) instead of
Generating a fourth candidate block (M31, M33) based on the selected processing unit data (M31) (B6-N, B9-N, B3); The fourth candidate block (M
31, M33) and comparing the set value with the number of the element data included in the fourth candidate block (M31, M33) based on the comparison result.
M33) is determined as the data block.

【0058】本発明のパーティショニング方法は、被検
査対象データ(回路データ)を複数に分割して前記分割
の結果としての複数のデータブロック(回路ブロック,
1パーティション)を生成するパーティショニング方法
であって、少なくとも一つの要素データ(ゲート)を備
えた処理単位データ(モジュールM1,M2,M3,M
30,M31,M32,M33)を複数提供するステッ
プと、前記提供された複数の処理単位データ(M1,M
2,M3,M30,M31,M32,M33)を複数の
グループ(階層A,C)に分類して前記分類された結果
としての前記複数の処理単位データ(M1,M2,M
3,M30,M31,M32,M33)を前記被検査対
象データとして提供するステップと、前記複数のグルー
プ(階層A,C)のうちの第1のグループ(階層C)に
帰属する前記複数の処理単位データ(M30,M31,
M32,M33)にそれぞれ含まれる前記要素データの
数を検出するステップ(B1)と、前記検出結果に基づ
いて、前記第1のグループ(階層C)に帰属する前記複
数の処理単位データ(M30,M31,M32,M3
3)から複数の前記処理単位データ(M33,M30)
を選択して前記選択された前記複数の処理単位データ
(M33,M30)により候補ブロック(新モジュール
M33,M30)を生成するステップ(B2,B3)
と、前記生成された候補ブロック(M33,M30)に
含まれる前記要素データの数と設定値との比較を行うス
テップ(B4)と、前記比較結果に基づいて、前記候補
ブロック(M33,M30)を前記データブロックとす
るか否かを決定するステップ(B4,B7)とを備えた
ものである。
According to the partitioning method of the present invention, the data to be inspected (circuit data) is divided into a plurality of data blocks and a plurality of data blocks (circuit blocks,
A partitioning method for generating one partition), comprising processing unit data (modules M1, M2, M3, M) having at least one element data (gate).
30, M31, M32, M33); and providing the plurality of processing unit data (M1, M
2, M3, M30, M31, M32, M33) into a plurality of groups (hierarchies A, C) and the plurality of processing unit data (M1, M2, M) as a result of the classification.
3, M30, M31, M32, M33) as the data to be inspected, and the plurality of processes belonging to a first group (layer C) of the plurality of groups (layers A, C). Unit data (M30, M31,
M32, M33), and detecting the number of element data included in each of the plurality of processing unit data (M30, M30, M30) belonging to the first group (layer C) based on the detection result. M31, M32, M3
3) From the plurality of processing unit data (M33, M30)
(B2, B3) generating a candidate block (new modules M33, M30) from the selected plurality of processing unit data (M33, M30)
(B4) comparing the number of the element data included in the generated candidate block (M33, M30) with a set value, and the candidate block (M33, M30) based on the comparison result. (B4, B7) for determining whether or not is a data block.

【0059】本発明のパーティショニング方法におい
て、更に、前記決定するステップの結果、前記候補ブロ
ック(M33,M30)を前記データブロックとしない
と決定した場合(B4−N)に、前記検出結果に基づい
て、前記第1のグループ(階層C)に帰属する前記複数
の処理単位データ(M30,M31,M32,M33)
の中から、前記候補ブロック(M33,M30)に含ま
れる前記複数の処理単位データ(M33,M30)のう
ちの少なくとも一の前記処理単位データ(M30)に代
わる前記処理単位データ(M31)を選択し、前記選択
された前記処理単位データ(M31)により第2の候補
ブロック(M31,M33)を生成するステップ(B
3)を備え、前記比較を行うステップは、前記生成され
た第2の候補ブロック(M31,M33)に含まれる前
記要素データの数と前記設定値との比較を行い、前記決
定を行うステップは、前記比較結果に基づいて、前記第
2の候補ブロック(M31,M33)を前記データブロ
ックとするか否かを決定するものである。
In the partitioning method of the present invention, further, if it is determined that the candidate block (M33, M30) is not to be the data block as a result of the determining step (B4-N), based on the detection result. The plurality of processing unit data (M30, M31, M32, M33) belonging to the first group (layer C)
From among the plurality of processing unit data (M33, M30) included in the candidate block (M33, M30), the processing unit data (M31) that replaces at least one of the processing unit data (M30) is selected. Generating a second candidate block (M31, M33) from the selected processing unit data (M31) (B)
The step of performing the comparison includes the step of comparing the number of the element data included in the generated second candidate blocks (M31, M33) with the set value and performing the determination. , Based on the comparison result, it is determined whether or not the second candidate block (M31, M33) is to be the data block.

【0060】本発明のパーティショニング方法におい
て、更に、前記決定するステップの結果、前記候補ブロ
ック(M33,M30)を前記データブロックとしない
と決定した場合(B4−N)に、前記第1のグループ
(階層C)に帰属する前記複数の処理単位データ(M3
0,M31,M32,M33)を用いて前記候補ブロッ
ク(M33,M30)に代わる第2の候補ブロックを生
成できないとき(B10−Y)に、前記第1のグループ
(階層C)に帰属する前記複数の処理単位データ(M3
0,M31,M32,M33)の少なくとも一部の処理
単位データを前記複数のグループのうちの第2のグルー
プ(階層A)に帰属させるステップ(B12)を備えた
ものである。
In the partitioning method of the present invention, if the candidate block (M33, M30) is determined not to be the data block as a result of the determining step (B4-N), the first group The plurality of processing unit data (M3
0, M31, M32, M33), when it is not possible to generate a second candidate block in place of the candidate block (M33, M30) (B10-Y), the above-mentioned belonging to the first group (layer C) Multiple processing unit data (M3
0, M31, M32, and M33) in a step (B12) of assigning at least a part of the processing unit data to a second group (layer A) of the plurality of groups.

【0061】本発明のパーティショニング方法におい
て、前記分割の結果としての複数のデータブロックのそ
れぞれは、ボードに割り当てられ、更に、前記生成され
た候補ブロック(M33,M30)に含まれる前記要素
データの数と、前記ボードに割り当て可能な前記要素デ
ータの最大数を示す最大搭載要素データ数との対比を行
うステップ(B5)と、前記対比の結果、前記候補ブロ
ック(M33,M30)に含まれる前記要素データの数
が前記最大搭載要素データ数を超えていると判断した場
合(B5−N)には、前記候補ブロック(M33,M3
0)に含まれる前記複数の処理単位データ(M33,M
30)のうちの少なくとも一の前記処理単位データ(M
33)を、前記複数のグループのうちの第2のグループ
(階層A)に帰属させるステップ(B14)を備えたも
のである。
In the partitioning method of the present invention, each of the plurality of data blocks as a result of the division is assigned to a board, and furthermore, the data blocks of the element data included in the generated candidate blocks (M33, M30) are further assigned. (B5) comparing the number with the maximum number of mounted element data indicating the maximum number of element data that can be allocated to the board, and as a result of the comparison, the number included in the candidate block (M33, M30) If it is determined that the number of element data exceeds the maximum number of mounted element data (B5-N), the candidate block (M33, M3
0) contained in the plurality of processing unit data (M33, M
30) at least one of the processing unit data (M
33) belonging to a second group (layer A) of the plurality of groups.

【0062】本発明のパーティショニング方法におい
て、前記分割の結果としての複数のデータブロックのそ
れぞれは、ボードに割り当てられ、更に、前記生成され
た候補ブロック(M33,M30)における他の前記複
数のデータブロックのそれぞれとの間の電気的接続を行
うための外部信号の数を検出するステップと、前記検出
された前記候補ブロック(M33,M30)の前記外部
信号の数と、前記ボードに接続可能な前記外部信号の最
大数を示す最大ボード間信号数との対比を行うステップ
(B6)と、前記対比の結果、前記検出された前記候補
ブロック(M33,M30)の前記外部信号の数が、前
記最大ボード間信号数を超えていると判断した場合(B
6−N)に、前記第1のグループ(階層C)に帰属する
前記複数の処理単位データ(M30,M31,M32,
M33)を用いて前記候補ブロック(M33,M30)
に代わる第2の候補ブロックを生成できないとき(B9
−Y)に、前記候補ブロック(M33,M30)の少な
くとも一の前記処理単位データ(M33)を、前記複数
のグループのうちの第2のグループ(階層A)に帰属さ
せるステップ(B14)を備えたものである。
[0062] In the partitioning method of the present invention, each of the plurality of data blocks resulting from the division is allocated to a board, and the plurality of other data blocks in the generated candidate block (M33, M30) are further allocated. Detecting the number of external signals for making an electrical connection with each of the blocks; the number of the external signals of the detected candidate blocks (M33, M30); (B6) comparing with the maximum number of inter-board signals indicating the maximum number of the external signals, and as a result of the comparison, the number of the external signals of the detected candidate blocks (M33, M30) is determined by the When it is determined that the maximum number of signals between boards has been exceeded (B
6-N), the plurality of processing unit data (M30, M31, M32, M3) belonging to the first group (layer C).
M33) using the candidate blocks (M33, M30)
Cannot generate the second candidate block in place of (B9
-Y), a step (B14) of assigning at least one of the processing unit data (M33) of the candidate blocks (M33, M30) to a second group (layer A) of the plurality of groups. It is a thing.

【0063】本発明のパーティショニング方法におい
て、前記複数のグループ(階層A,C)は、階層を形成
し、前記第2のグループ(階層A)に帰属させるステッ
プ(B12,B14)は、前記第2のグループ(階層
A)として、前記第1のグループ(階層C)よりも前記
階層において上位にあるグループを選択するものであ
る。
In the partitioning method according to the present invention, the step (B12, B14) of forming the plurality of groups (layers A and C) into a layer and assigning the group to the second group (layer A) includes the step (B12, B14). As a second group (layer A), a group higher in the hierarchy than the first group (layer C) is selected.

【0064】本発明のパーティショニング方法におい
て、更に、前記第1のグループ(階層C)が前記階層に
おいて最上位にあるか否かを判断するステップ(B1
1,B13)と、前記判断の結果、前記第1のグループ
(階層C)が前記最上位にあると判断された場合には、
前記第2のグループ(階層A)に帰属させるステップ
(B12)に代えて、前記被検査対象データの前記分割
を行うことができない旨を報知するステップ(B15)
を備えたものである。
In the partitioning method of the present invention, a step (B1) of determining whether the first group (layer C) is at the top of the hierarchy (B1).
1, B13), and when it is determined that the first group (layer C) is at the highest level,
A step (B15) of notifying that the division of the data to be inspected cannot be performed instead of the step (B12) of belonging to the second group (layer A).
It is provided with.

【0065】被検査対象データ(回路データ)を複数に
分割して前記分割の結果としての複数のデータブロック
(回路ブロック,1パーティション)を生成した後に、
前記被検査対象データのエミュレーションを行うエミュ
レーション方法であって、少なくとも一つの要素データ
(ゲート)を備えた処理単位データ(モジュールM3
0,M31,M32,M33)を複数備えて構成される
データを前記被検査対象データ(M3)として提供する
ステップと、前記被検査対象データ(M3)を構成する
前記複数の処理単位データ(M30,M31,M32,
M33)にそれぞれ含まれる前記要素データの数を検出
するステップ(B1)と、前記検出結果に基づいて、前
記被検査対象データ(M3)を構成する前記複数の処理
単位データ(M30,M31,M32,M33)から複
数の前記処理単位データ(M33,M30)を選択して
前記選択された複数の処理単位データ(M33,M3
0)により候補ブロック(新モジュールM33,M3
0)を生成するステップ(B2,B3)と、前記生成さ
れた候補ブロック(M33,M30)に含まれる前記要
素データの数と設定値との比較を行うステップ(B4)
と、前記比較結果に基づいて、前記候補ブロック(M3
3,M30)を前記データブロックとするか否かを決定
するステップ(B4,B7)と、複数の前記決定された
前記データブロックのそれぞれに並行してデータ処理を
行うステップとを備えたものである。
After dividing the data to be inspected (circuit data) into a plurality of data blocks and generating a plurality of data blocks (circuit blocks, one partition) as a result of the division,
An emulation method for emulating the data to be inspected, comprising: processing unit data (module M3) including at least one element data (gate)
0, M31, M32, and M33) as data to be inspected (M3); and a plurality of processing unit data (M30) constituting the inspected data (M3). , M31, M32,
M33) detecting the number of element data included in each of the plurality of processing unit data (M30, M31, M32) constituting the inspection object data (M3) based on the detection result. , M33) to select a plurality of processing unit data (M33, M30) and select the plurality of processing unit data (M33, M3).
0) to the candidate block (new modules M33, M3
(B2, B3) and a step (B4) of comparing the number of the element data included in the generated candidate blocks (M33, M30) with a set value.
And the candidate block (M3
3, M30) as the data block (B4, B7), and a step of performing data processing on each of the plurality of determined data blocks in parallel. is there.

【0066】本発明のパーティショニング方法は、被検
査対象データを複数に分割して前記分割の結果としての
複数のデータブロックを生成するパーティショニング装
置であって、少なくとも一つの要素データを備えた処理
単位データ(M30,M31,M32,M33)を複数
備えて構成されるデータを前記被検査対象データ(M
3)として提供する手段と、前記被検査対象データ(M
3)を構成する前記複数の処理単位データ(M30,M
31,M32,M33)にそれぞれ含まれる前記要素デ
ータの数を検出する手段(B1)と、前記検出結果に基
づいて、前記被検査対象データ(M3)を構成する前記
複数の処理単位データ(M30,M31,M32,M3
3)から複数の前記処理単位データ(M33,M30)
を選択して前記選択された複数の処理単位データ(M3
3,M30)により候補ブロック(新モジュールM3
3,M30)を生成する手段(B2,B3)と、前記生
成された候補ブロック(M33,M30)に含まれる前
記要素データの数と設定値との比較を行う手段(B4)
と、前記比較結果に基づいて、前記候補ブロック(M3
3,M30)を前記データブロックとするか否かを決定
する手段(B4,B7)とを備えたものである。
A partitioning method according to the present invention is a partitioning apparatus which divides data to be inspected into a plurality of pieces and generates a plurality of data blocks as a result of the above-mentioned division, wherein the processing includes at least one piece of element data. The data composed of a plurality of unit data (M30, M31, M32, M33) is referred to as the inspection object data (M
3), and the data to be inspected (M
3) The plurality of processing unit data (M30, M
(M1, M32, M33) and a plurality of processing unit data (M30) constituting the inspection object data (M3) based on the detection result. , M31, M32, M3
3) From the plurality of processing unit data (M33, M30)
To select a plurality of processing unit data (M3
3, M30) and the candidate block (new module M3)
(B2, B3) and means (B4) for comparing the number of the element data included in the generated candidate blocks (M33, M30) with a set value.
And the candidate block (M3
(B4, B7) for determining whether or not (3, M30) is the data block.

【0067】本発明のパーティショニング装置におい
て、前記分割の結果としての複数のデータブロックのそ
れぞれは、ボードに割り当てられ、前記比較を行う手段
(B4)は、前記被検査対象データに含まれる全ての前
記要素データの数を前記複数のデータブロックのそれぞ
れを割り当てるための全ての前記ボードの数で割った数
に対応する平均搭載要素データ数、に基づいて設定され
る数を前記設定値とするものである。
In the partitioning apparatus according to the present invention, each of the plurality of data blocks as a result of the division is allocated to a board, and the means (B4) for performing the comparison includes all the data blocks included in the data to be inspected. The set value is a number set based on an average mounted element data number corresponding to a number obtained by dividing the number of the element data by the number of all the boards for allocating each of the plurality of data blocks. It is.

【0068】本発明のパーティショニング装置におい
て、前記データを前記被検査対象データ(M3)として
提供する手段は、入力データに含まれる前記要素データ
の数を検出する手段と、前記検出された前記入力データ
に含まれる要素データの数と、所定値との比較検討を行
なう手段(A3)と、前記比較検討結果に基づいて、前
記処理単位データを生成する手段(A5,A8)とを備
えたものである。
In the partitioning device of the present invention, the means for providing the data as the data to be inspected (M3) includes: means for detecting the number of the element data included in the input data; A means (A3) for comparing and examining the number of element data included in the data with a predetermined value, and means (A5, A8) for generating the processing unit data based on the result of the comparison and examination It is.

【0069】本発明のパーティショニング装置におい
て、前記分割の結果としての複数のデータブロックのそ
れぞれは、ボードに割り当てられ、前記比較検討を行う
手段(A3)は、前記被検査対象データに含まれる全て
の前記要素データの数を前記複数のデータブロックのそ
れぞれを割り当てるための全ての前記ボードの数で割っ
た数に対応する平均搭載要素データ数、に基づいて設定
される数を前記所定値とするものである。
In the partitioning apparatus of the present invention, each of the plurality of data blocks as a result of the division is assigned to a board, and the means (A3) for performing the comparison and examination includes all of the data included in the data to be inspected. The number set based on the average number of mounted element data corresponding to the number obtained by dividing the number of the element data by the number of all the boards for allocating each of the plurality of data blocks is the predetermined value. Things.

【0070】本発明のパーティショニング装置におい
て、前記比較検討を行なう手段(A3)は、前記被検査
対象データの前記分割を行なうことができないと判断さ
れたときに、前記所定値の値を自動的に更新するもので
ある。
In the partitioning device according to the present invention, the means (A3) for performing the comparison and examination automatically changes the value of the predetermined value when it is determined that the division of the data to be inspected cannot be performed. Is to be updated.

【0071】本発明のパーティショニング装置におい
て、前記比較を行う手段(B4)は、前記被検査対象デ
ータの前記分割を行なうことができないと判断されたと
きに、前記設定値の値を自動的に更新するものである。
In the partitioning device of the present invention, the comparing means (B4) automatically changes the value of the set value when it is determined that the division of the data to be inspected cannot be performed. To be updated.

【0072】本発明のパーティショニング装置におい
て、更に、前記決定する手段の結果、前記候補ブロック
(M33,M30)を前記データブロックとしないと決
定した場合に、前記検出結果に基づいて、前記被検査対
象データ(M3)を構成する前記複数の処理単位データ
(M30,M31,M32,M33)の中から、前記候
補ブロック(M33,M30)に含まれる前記複数の処
理単位データ(M33,M30)のうちの少なくとも一
の前記処理単位データ(M30)に代わる前記処理単位
データ(M31)を選択し、前記選択された前記処理単
位データ(M31)により第2の候補ブロック(M3
1,M33)を生成する手段(B4−N,B10−N,
B3)を備え、前記比較を行う手段は、前記生成された
第2の候補ブロック(M31,M33)に含まれる前記
要素データの数と前記設定値との比較を行い、前記決定
する手段は、前記比較結果に基づいて、前記第2の候補
ブロック(M31,M33)を前記データブロックとす
るか否かを決定するものである。
In the partitioning apparatus of the present invention, when the candidate block (M33, M30) is determined not to be the data block as a result of the determining means, the inspection target is determined based on the detection result. Among the plurality of processing unit data (M30, M31, M32, M33) constituting the target data (M3), the plurality of processing unit data (M33, M30) included in the candidate block (M33, M30) The processing unit data (M31) that replaces at least one of the processing unit data (M30) is selected, and a second candidate block (M3) is selected based on the selected processing unit data (M31).
1, M33) (B4-N, B10-N,
B3), wherein the means for comparing compares the number of the element data included in the generated second candidate blocks (M31, M33) with the set value, and the means for determining comprises: Based on the comparison result, it is determined whether or not the second candidate block (M31, M33) is to be the data block.

【0073】本発明のパーティショニング装置におい
て、更に、前記決定する手段の結果、前記候補ブロック
(M33,M30)が前記データブロックとして決定さ
れたときに、前記被検査対象データ(M3)を構成する
前記複数の処理単位データ(M30,M31,M32,
M33)のうちの前記データブロックとして決定された
前記候補ブロック(M33,M30)以外の複数の前記
処理単位データ(M31,M32)から複数の前記処理
単位データ(M31,M32)を選択して前記選択され
た複数の処理単位データ(M31,M32)により第3
の候補ブロック(新モジュールM31,M32)を生成
する手段(B8,B1,B2,B3)を備え、前記比較
を行う手段は、前記生成された第3の候補ブロック(M
31,M32)に含まれる前記要素データの数と前記設
定値との比較を行い、前記決定する手段は、前記比較結
果に基づいて、前記第3の候補ブロック(M31,M3
2)を前記データブロックとするか否かを決定するもの
である。
In the partitioning apparatus according to the present invention, when the candidate block (M33, M30) is determined as the data block as a result of the determining means, the inspection object data (M3) is formed. The plurality of processing unit data (M30, M31, M32,
M33), a plurality of processing unit data (M31, M32) are selected from a plurality of processing unit data (M31, M32) other than the candidate block (M33, M30) determined as the data block. Based on the selected plurality of processing unit data (M31, M32),
(B8, B1, B2, B3) for generating candidate blocks (new modules M31, M32), and the means for performing the comparison includes the third candidate block (M
31, M32), and compares the set value with the number of the element data included in the third candidate block (M31, M3) based on the comparison result.
It is determined whether or not 2) is the data block.

【0074】本発明のパーティショニング装置におい
て、前記分割の結果としての複数のデータブロックのそ
れぞれは、ボードに割り当てられ、更に、前記生成され
た候補ブロック(M33,M30)に含まれる前記要素
データの数と、前記ボードに割り当て可能な前記要素デ
ータの最大数を示す最大搭載要素データ数との対比を行
う手段(B5)を備え、前記決定する手段(B4,B
5,B7)は、前記比較結果および前記対比結果に基づ
いて前記決定を行うものである。
In the partitioning device of the present invention, each of the plurality of data blocks as a result of the division is allocated to a board, and further, the data blocks of the element data included in the generated candidate blocks (M33, M30) are further assigned. Means (B5) for comparing the number with the maximum number of mounted element data indicating the maximum number of element data that can be allocated to the board, and the determining means (B4, B
5, B7) makes the determination based on the comparison result and the comparison result.

【0075】本発明のパーティショニング装置におい
て、前記分割の結果としての複数のデータブロックのそ
れぞれは、ボードに割り当てられ、更に、前記生成され
た候補ブロック(M33,M30)における他の前記複
数のデータブロックのそれぞれとの間の電気的接続を行
うための外部信号の数を検出する手段と、前記検出され
た前記候補ブロック(M33,M30)の前記外部信号
の数と、前記ボードに接続可能な前記外部信号の最大数
を示す最大ボード間信号数との対比を行う手段(B6)
を備え、前記決定する手段(B4,B6,B7)は、前
記比較結果および前記対比結果に基づいて前記決定を行
うものである。
In the partitioning apparatus of the present invention, each of the plurality of data blocks as a result of the division is assigned to a board, and the plurality of other data blocks in the generated candidate block (M33, M30) are further assigned. Means for detecting the number of external signals for making an electrical connection with each of the blocks; the number of the external signals of the detected candidate blocks (M33, M30); Means for comparing with the maximum number of inter-board signals indicating the maximum number of the external signals (B6)
And the determining means (B4, B6, B7) performs the determination based on the comparison result and the comparison result.

【0076】本発明のパーティショニング装置におい
て、更に、前記対比の結果、前記検出された前記候補ブ
ロック(M33,M30)の前記外部信号の数が、前記
最大ボード間信号数を超えていると判断した場合(B6
−N)に、前記被検査対象データ(M3)を構成する前
記複数の処理単位データ(M30,M31,M32,M
33)の中から、前記候補ブロック(M33,M30)
に含まれる前記複数の処理単位データ(M33,M3
0)のうちの少なくとも一の前記処理単位データ(M3
0)に代わる前記処理単位データ(M31)を選択し、
前記選択された前記処理単位データ(M31)により第
4の候補ブロック(M31,M33)を生成する手段
(B6−N,B9−N,B3)を備え、前記比較を行う
手段は、前記生成された第4の候補ブロック(M31,
M33)に含まれる前記要素データの数と前記設定値と
の比較を行い、前記決定する手段は、前記比較結果に基
づいて、前記第4の候補ブロック(M31,M33)を
前記データブロックとするか否かを決定するものであ
る。
In the partitioning apparatus according to the present invention, it is further determined that the number of the external signals of the detected candidate blocks (M33, M30) exceeds the maximum number of signals between boards as a result of the comparison. (B6
-N) includes the plurality of processing unit data (M30, M31, M32, M) constituting the inspection object data (M3).
33), the candidate blocks (M33, M30)
The plurality of processing unit data (M33, M3
0) of the processing unit data (M3
0) the processing unit data (M31) instead of
Means (B6-N, B9-N, B3) for generating a fourth candidate block (M31, M33) based on the selected processing unit data (M31), and the means for performing the comparison includes: The fourth candidate block (M31,
M33) compares the number of the element data included in M33) with the set value, and the determining unit sets the fourth candidate block (M31, M33) as the data block based on the comparison result. It is to determine whether or not.

【0077】本発明のパーティショニング装置は、被検
査対象データ(回路データ)を複数に分割して前記分割
の結果としての複数のデータブロック(回路ブロック,
1パーティション)を生成するパーティショニング装置
であって、少なくとも一つの要素データ(ゲート)を備
えた処理単位データ(モジュールM1,M2,M3,M
30,M31,M32,M33)を複数提供する手段
と、前記提供された複数の処理単位データ(M1,M
2,M3,M30,M31,M32,M33)を複数の
グループ(階層A,C)に分類して前記分類された結果
としての前記複数の処理単位データ(M1,M2,M
3,M30,M31,M32,M33)を前記被検査対
象データとして提供する手段と、前記複数のグループ
(階層A,C)のうちの第1のグループ(階層C)に帰
属する前記複数の処理単位データ(M30,M31,M
32,M33)にそれぞれ含まれる前記要素データの数
を検出する手段(B1)と、前記検出結果に基づいて、
前記第1のグループ(階層C)に帰属する前記複数の処
理単位データ(M30,M31,M32,M33)から
複数の前記処理単位データ(M33,M30)を選択し
て前記選択された前記複数の処理単位データ(M33,
M30)により候補ブロック(新モジュールM33,M
30)を生成する手段(B2,B3)と、前記生成され
た候補ブロック(M33,M30)に含まれる前記要素
データの数と設定値との比較を行う手段(B4)と、前
記比較結果に基づいて、前記候補ブロック(M33,M
30)を前記データブロックとするか否かを決定する手
段(B4,B7)とを備えたものである。
The partitioning device according to the present invention divides the data to be inspected (circuit data) into a plurality of data blocks (circuit blocks, circuit blocks,
A partitioning device that generates one partition), and includes processing unit data (modules M1, M2, M3, M) including at least one element data (gate).
30, M31, M32, M33), and the provided plurality of processing unit data (M1, M3).
2, M3, M30, M31, M32, M33) into a plurality of groups (hierarchies A, C) and the plurality of processing unit data (M1, M2, M) as a result of the classification.
3, M30, M31, M32, M33) as the data to be inspected, and the plurality of processes belonging to a first group (layer C) of the plurality of groups (layers A, C). Unit data (M30, M31, M
32, M33), a means (B1) for detecting the number of the element data included in each of the element data,
A plurality of processing unit data (M33, M30) is selected from the plurality of processing unit data (M30, M31, M32, M33) belonging to the first group (layer C), and the selected plurality of processing unit data (M33, M30) is selected. Processing unit data (M33,
M30), the candidate block (new module M33, M
30), a means (B4) for comparing the number of the element data included in the generated candidate blocks (M33, M30) with a set value, and (B4) Based on the candidate block (M33, M
30) means (B4, B7) for deciding whether or not 30) is to be the data block.

【0078】本発明のパーティショニング装置におい
て、更に、前記決定する手段の結果、前記候補ブロック
(M33,M30)を前記データブロックとしないと決
定した場合(B4−N)に、前記検出結果に基づいて、
前記第1のグループ(階層C)に帰属する前記複数の処
理単位データ(M30,M31,M32,M33)の中
から、前記候補ブロック(M33,M30)に含まれる
前記複数の処理単位データ(M33,M30)のうちの
少なくとも一の前記処理単位データ(M30)に代わる
前記処理単位データ(M31)を選択し、前記選択され
た前記処理単位データ(M31)により第2の候補ブロ
ック(M31,M33)を生成する手段(B3)を備
え、前記比較を行う手段は、前記生成された第2の候補
ブロック(M31,M33)に含まれる前記要素データ
の数と前記設定値との比較を行い、前記決定を行う手段
は、前記比較結果に基づいて、前記第2の候補ブロック
(M31,M33)を前記データブロックとするか否か
を決定するものである。
In the partitioning device of the present invention, when the candidate block (M33, M30) is determined not to be the data block as a result of the determining means (B4-N), based on the detection result, hand,
Among the plurality of processing unit data (M30, M31, M32, M33) belonging to the first group (layer C), the plurality of processing unit data (M33) included in the candidate block (M33, M30) , M30) is selected as the processing unit data (M31) in place of at least one of the processing unit data (M30), and a second candidate block (M31, M33) is selected based on the selected processing unit data (M31). ), And the comparing means compares the number of the element data included in the generated second candidate blocks (M31, M33) with the set value, The determining means determines whether or not the second candidate block (M31, M33) is to be the data block based on the comparison result. .

【0079】本発明のパーティショニング装置におい
て、更に、前記決定する手段の結果、前記候補ブロック
(M33,M30)を前記データブロックとしないと決
定した場合(B4−N)に、前記第1のグループ(階層
C)に帰属する前記複数の処理単位データ(M30,M
31,M32,M33)を用いて前記候補ブロック(M
33,M30)に代わる第2の候補ブロックを生成でき
ないとき(B10−Y)に、前記第1のグループ(階層
C)に帰属する前記複数の処理単位データ(M30,M
31,M32,M33)の少なくとも一部の処理単位デ
ータを前記複数のグループのうちの第2のグループ(階
層A)に帰属させる手段(B12)を備えたものであ
る。
In the partitioning apparatus of the present invention, when the candidate block (M33, M30) is determined not to be the data block as a result of the determining means (B4-N), the first group (M30, M)
31, M32, M33) and the candidate block (M
33, M30) when the second candidate block cannot be generated (B10-Y), the plurality of processing unit data (M30, M30) belonging to the first group (layer C).
(M12, M32, M33) belonging to a second group (layer A) of the plurality of groups.

【0080】本発明のパーティショニング装置におい
て、前記分割の結果としての複数のデータブロックのそ
れぞれは、ボードに割り当てられ、更に、前記生成され
た候補ブロック(M33,M30)に含まれる前記要素
データの数と、前記ボードに割り当て可能な前記要素デ
ータの最大数を示す最大搭載要素データ数との対比を行
う手段(B5)と、前記対比の結果、前記候補ブロック
(M33,M30)に含まれる前記要素データの数が前
記最大搭載要素データ数を超えていると判断した場合
(B5−N)には、前記候補ブロック(M33,M3
0)に含まれる前記複数の処理単位データ(M33,M
30)のうちの少なくとも一の前記処理単位データ(M
33)を、前記複数のグループのうちの第2のグループ
(階層A)に帰属させる手段(B14)を備えたもので
ある。
In the partitioning device of the present invention, each of the plurality of data blocks as a result of the division is allocated to a board, and further, the data blocks of the element data included in the generated candidate blocks (M33, M30) are further allocated. Means (B5) for comparing the number with the maximum number of mounted element data indicating the maximum number of element data that can be allocated to the board; and the result of the comparison, the means included in the candidate block (M33, M30) If it is determined that the number of element data exceeds the maximum number of mounted element data (B5-N), the candidate block (M33, M3
0) contained in the plurality of processing unit data (M33, M
30) at least one of the processing unit data (M
33), means (B14) for belonging to the second group (layer A) of the plurality of groups.

【0081】本発明のパーティショニング装置におい
て、前記分割の結果としての複数のデータブロックのそ
れぞれは、ボードに割り当てられ、更に、前記生成され
た候補ブロック(M33,M30)における他の前記複
数のデータブロックのそれぞれとの間の電気的接続を行
うための外部信号の数を検出する手段と、前記検出され
た前記候補ブロック(M33,M30)の前記外部信号
の数と、前記ボードに接続可能な前記外部信号の最大数
を示す最大ボード間信号数との対比を行う手段(B6)
と、前記対比の結果、前記検出された前記候補ブロック
(M33,M30)の前記外部信号の数が、前記最大ボ
ード間信号数を超えていると判断した場合(B6−N)
に、前記第1のグループ(階層C)に帰属する前記複数
の処理単位データ(M30,M31,M32,M33)
を用いて前記候補ブロック(M33,M30)に代わる
第2の候補ブロックを生成できないとき(B9−Y)
に、前記候補ブロック(M33,M30)の少なくとも
一の前記処理単位データ(M33)を、前記複数のグル
ープのうちの第2のグループ(階層A)に帰属させる手
段(B14)を備えたものである。
In the partitioning apparatus of the present invention, each of the plurality of data blocks resulting from the division is allocated to a board, and further, the other plurality of data blocks in the generated candidate block (M33, M30) Means for detecting the number of external signals for making an electrical connection with each of the blocks; the number of the external signals of the detected candidate blocks (M33, M30); Means for comparing with the maximum number of inter-board signals indicating the maximum number of the external signals (B6)
When it is determined that the number of the external signals of the detected candidate blocks (M33, M30) exceeds the maximum number of inter-board signals (B6-N).
The plurality of processing unit data (M30, M31, M32, M33) belonging to the first group (layer C)
When a second candidate block that replaces the candidate block (M33, M30) cannot be generated using (B9-Y)
Means (B14) for assigning at least one of the processing unit data (M33) of the candidate blocks (M33, M30) to a second group (layer A) of the plurality of groups. is there.

【0082】本発明のパーティショニング装置におい
て、前記複数のグループ(階層A,C)は、階層を形成
し、前記第2のグループ(階層A)に帰属させる手段
(B12,B14)は、前記第2のグループ(階層A)
として、前記第1のグループ(階層C)よりも前記階層
において上位にあるグループを選択するものである。
In the partitioning apparatus of the present invention, the plurality of groups (layers A and C) form a layer, and the means (B12, B14) for belonging to the second group (layer A) include the second group (layer A). Group 2 (Tier A)
And selecting a group higher in the hierarchy than the first group (hierarchy C).

【0083】本発明のパーティショニング装置におい
て、更に、前記第1のグループ(階層C)が前記階層に
おいて最上位にあるか否かを判断する手段(B11,B
13)と、前記判断の結果、前記第1のグループ(階層
C)が前記最上位にあると判断された場合には、前記第
2のグループ(階層A)に帰属させる手段(B12)に
代えて、前記被検査対象データの前記分割を行うことが
できない旨を報知する手段(B15)を備えたものであ
る。
In the partitioning apparatus according to the present invention, means (B11, B) for judging whether or not the first group (hierarchy C) is at the top of the hierarchy.
13) and when the result of the determination is that the first group (layer C) is at the top, the unit (B12) for belonging to the second group (layer A) is replaced with the unit (B12). Means (B15) for notifying that the division of the data to be inspected cannot be performed.

【0084】本発明のパーティショニング装置は、被検
査対象データ(回路データ)を複数に分割して前記分割
の結果としての複数のデータブロック(回路ブロック,
1パーティション)を生成した後に、前記被検査対象デ
ータのエミュレーションを行うエミュレーション装置で
あって、少なくとも一つの要素データ(ゲート)を備え
た処理単位データ(モジュールM30,M31,M3
2,M33)を複数備えて構成されるデータを前記被検
査対象データ(M3)として提供する手段と、前記被検
査対象データ(M3)を構成する前記複数の処理単位デ
ータ(M30,M31,M32,M33)にそれぞれ含
まれる前記要素データの数を検出する手段(B1)と、
前記検出結果に基づいて、前記被検査対象データ(M
3)を構成する前記複数の処理単位データ(M30,M
31,M32,M33)から複数の前記処理単位データ
(M33,M30)を選択して前記選択された複数の処
理単位データ(M33,M30)により候補ブロック
(新モジュールM33,M30)を生成する手段(B
2,B3)と、前記生成された候補ブロック(M33,
M30)に含まれる前記要素データの数と設定値との比
較を行う手段(B4)と、前記比較結果に基づいて、前
記候補ブロック(M33,M30)を前記データブロッ
クとするか否かを決定する手段(B4,B7)と、複数
の前記決定された前記データブロックのそれぞれに並行
してデータ処理を行う手段とを備えたものである。
The partitioning apparatus of the present invention divides the data to be inspected (circuit data) into a plurality of data blocks (circuit blocks,
An emulation device for emulating the data to be inspected after generating one partition), the processing unit data (modules M30, M31, M3) including at least one element data (gate)
2, M33) and a plurality of processing unit data (M30, M31, M32) constituting the inspection target data (M3). , M33), means (B1) for detecting the number of the element data respectively included in
Based on the detection result, the inspection object data (M
3) The plurality of processing unit data (M30, M
Means for selecting a plurality of the processing unit data (M33, M30) from the plurality of processing unit data (M33, M30) and generating a candidate block (new modules M33, M30) based on the selected plurality of processing unit data (M33, M30). (B
2, B3) and the generated candidate block (M33,
A means (B4) for comparing the number of the element data included in M30) with a set value, and determining whether or not the candidate block (M33, M30) is to be the data block based on the comparison result. (B4, B7) and means for performing data processing on each of the plurality of determined data blocks in parallel.

【0085】[0085]

【発明の実施の形態】以下、図面を参照して、本発明の
パーティショニング方法の第1の実施形態について説明
する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, a first embodiment of a partitioning method according to the present invention will be described with reference to the drawings.

【0086】なお、以下、用いられる用語の定義は、前
記従来技術で行った定義と同じである。
The definitions of the terms used hereinafter are the same as those defined in the above-mentioned prior art.

【0087】本実施形態に係るパーティショニング方法
は、前記エミュレーション装置に適用することが可能で
ある。ここで、前記エミュレーション装置とは、LSI
などの回路データ(被検査対象データ)を、FPGA
(フィールド・プログラマブル・ゲートアレイ)にマッ
ピングして、FPGA上で前記回路データの論理検証を
行うための装置である。
The partitioning method according to the present embodiment can be applied to the emulation device. Here, the emulation device is an LSI
Circuit data (test target data) such as FPGA
(Field Programmable Gate Array) to perform logic verification of the circuit data on the FPGA.

【0088】前記エミュレーション装置は、複数枚のエ
ミュレーションボード(以下ボードという)と、前記複
数枚のボードのそれぞれに搭載される複数のFPGAと
を備えている。
The emulation device includes a plurality of emulation boards (hereinafter, referred to as boards) and a plurality of FPGAs mounted on each of the plurality of boards.

【0089】本実施形態のパーティショニング方法は、
前記エミュレーション装置において、前記複数のボード
間の接続信号数を考慮しながら、各ボードにマッピング
される前記回路データの回路規模(前記ゲート数、前記
ゲート規模)を、従来に比べて均等化するためのもので
ある。
The partitioning method of this embodiment is as follows.
In the emulation apparatus, in order to equalize the circuit scale (the number of gates, the gate scale) of the circuit data mapped to each board, in consideration of the number of connection signals between the plurality of boards, as compared with the related art. belongs to.

【0090】すなわち、本実施形態のパーティショニン
グシステムでは、前記回路データを前記複数のボードの
それぞれにマッピングする(前記回路データの一部を前
記回路ブロックとして前記複数のボードのそれぞれに割
り当てる)ときに、1枚のボードにマッピングされるゲ
ート数(搭載ゲート数)が、ボード1枚あたりの前記最
大搭載ゲート数および、前記最大ボード間信号数の制限
を満たし、かつ予め設定される搭載基準ゲート数(設定
値)に近い数となるように、前記パーティショニングが
行われる。
That is, in the partitioning system of the present embodiment, when the circuit data is mapped to each of the plurality of boards (a part of the circuit data is assigned to each of the plurality of boards as the circuit block). The number of gates (number of mounted gates) mapped to one board satisfies the maximum number of mounted gates per board and the maximum number of signals between boards, and a preset number of mounting reference gates The partitioning is performed so that the number is close to (set value).

【0091】本実施形態において、前記搭載基準ゲート
数に近い数とは、前記搭載基準ゲート数をわずかに超え
ている数を示す。なお、上記に関わらず、本発明におい
ては、前記搭載基準ゲート数に近い数とは、前記搭載基
準ゲート数±Cにおいて、Cがなるべく小さい値をとる
という意味である。
In the present embodiment, the number close to the mounting reference gate number indicates a number slightly exceeding the mounting reference gate number. Regardless of the above, in the present invention, the number close to the mounting reference gate number means that C takes as small a value as possible in the mounting reference gate number ± C.

【0092】このように、前記複数のボードのそれぞれ
について搭載される前記ゲート(要素データ)の数(前
記搭載ゲート数)を、一定の値(前記搭載基準ゲート
数)の近傍に集めることができるため、前記複数のボー
ドのそれぞれの前記搭載ゲート数の最大値と最小値の差
が小さくなる。これにより、前記搭載ゲート数の前記最
大値をなるべく小さい値にすることができる。よって、
前記複数のボードのそれぞれについて並行して行われる
コンパイル(データ処理)の処理時間が従来に比べて均
一化し、全体の処理時間の短縮化を図ることができる。
In this way, the number of the gates (element data) mounted on each of the plurality of boards (the number of mounted gates) can be gathered near a fixed value (the number of mounted reference gates). Therefore, the difference between the maximum value and the minimum value of the number of mounted gates of each of the plurality of boards is reduced. Thereby, the maximum value of the number of mounted gates can be made as small as possible. Therefore,
The processing time of compiling (data processing) performed in parallel for each of the plurality of boards is made uniform as compared with the conventional case, and the overall processing time can be reduced.

【0093】図1を参照して、本実施形態の構成につい
て説明する。
Referring to FIG. 1, the configuration of the present embodiment will be described.

【0094】本実施形態のパーティショニングシステム
は、キーボード等の外部からデータを入力するための入
力部1と、プログラム制御で動作するデータ処理部2
と、データを格納するデータ格納部3と、外部にデータ
を出力するための出力部4とを備えている。
The partitioning system according to the present embodiment comprises an input unit 1 for inputting data from outside such as a keyboard, and a data processing unit 2 which operates under program control.
And a data storage unit 3 for storing data, and an output unit 4 for outputting data to the outside.

【0095】前記データ処理部2は、ゲート数検出部2
1と、平均搭載ゲート算出部22と、階層展開部23
と、信号検出部24と、パーティション生成部25とを
備えている。
The data processing unit 2 includes a gate number detection unit 2
1, an average mounted gate calculation unit 22, and a hierarchy development unit 23
, A signal detection unit 24 and a partition generation unit 25.

【0096】前記データ格納部3は、回路データ格納部
31と、ゲート数換算ライブラリ格納部32と、モジュ
ールゲート数格納部33と、パーティションパラメータ
格納部34と、階層データ格納部35と、信号データ格
納部36と、パーティションデータ格納部37とを備え
ている。
The data storage unit 3 includes a circuit data storage unit 31, a gate number conversion library storage unit 32, a module gate number storage unit 33, a partition parameter storage unit 34, a hierarchical data storage unit 35, A storage unit 36 and a partition data storage unit 37 are provided.

【0097】回路データ格納部31には、前記エミュレ
ーション装置で論理検証の対象となる複数の回路データ
(被検査対象データ)が予め格納されている。前記回路
データ格納部31に格納されている前記回路データは、
前記プリミティブブロック(前記ゲート)を前記基本単
位として記述されている。また、前記回路データは、複
数の前記モジュール(処理単位データ)が階層構造を形
成してなるものである。
A plurality of circuit data (data to be inspected) to be subjected to logic verification by the emulation device are stored in the circuit data storage 31 in advance. The circuit data stored in the circuit data storage unit 31 is:
The primitive block (the gate) is described as the basic unit. Further, the circuit data is formed by a plurality of modules (processing unit data) forming a hierarchical structure.

【0098】前記ゲート数換算ライブラリ格納部32に
は、ゲート数換算ライブラリが格納されている。前記ゲ
ート数換算ライブラリには、前記プリミティブブロック
(前記ゲート)のそれぞれの前記ゲート規模(前記ゲー
ト数、要素データの数)を示すデータが格納されてい
る。
The gate number conversion library storage section 32 stores a gate number conversion library. The gate number conversion library stores data indicating the gate scale (the number of gates and the number of element data) of each of the primitive blocks (the gates).

【0099】前記モジュールゲート数格納部33には、
前記回路データを構成する複数のモジュールのそれぞれ
に含まれる前記ゲート数を示すデータ、前記回路データ
を構成する階層のそれぞれに含まれる前記ゲート数を示
すデータ、および前記回路データに含まれる全ての前記
ゲート数を示すデータが格納される。
In the module gate number storage section 33,
Data indicating the number of gates included in each of the plurality of modules configuring the circuit data, data indicating the number of gates included in each of the layers configuring the circuit data, and all the numbers included in the circuit data Data indicating the number of gates is stored.

【0100】前記パーティションパラメータ格納部34
には、前記パーティショニングに必要なデータとして、
前記エミュレーション装置が具備するボード枚数を示す
データ、ボード1枚あたりの最大搭載ゲート数を示すデ
ータ、最大ボード間信号数を示すデータ、および後述す
る平均搭載ゲート数(平均搭載要素データ数)を示すデ
ータが格納される。
The partition parameter storage unit 34
Contains the data necessary for the partitioning,
Data indicating the number of boards provided in the emulation device, data indicating the maximum number of mounted gates per board, data indicating the maximum number of signals between boards, and an average mounted gate number (average mounted element data number) described later. Data is stored.

【0101】前記階層データ格納部35には、前記階層
展開部23による階層展開処理がなされた後の階層を示
すデータが格納される。
The hierarchy data storage unit 35 stores data indicating the hierarchy after the hierarchy expansion process by the hierarchy expansion unit 23.

【0102】前記信号データ格納部36には、前記信号
検出部24により検出された、前記階層展開されたモジ
ュール単体の外部信号数を示すデータが格納される。
The signal data storage unit 36 stores data indicating the number of external signals of the hierarchically expanded module unit detected by the signal detection unit 24.

【0103】前記パーティションデータ格納部37に
は、前記パーティション生成部25により生成されたパ
ーティションデータが格納される。
The partition data storage unit 37 stores the partition data generated by the partition generation unit 25.

【0104】次に、図1から図5を参照して、本実施形
態の動作について説明する。
Next, the operation of this embodiment will be described with reference to FIGS.

【0105】まず、前記入力部1から前記データ処理部
2に、制御コマンドが出力される。この制御コマンド
は、論理検証の対象とすべき前記回路データを、前記回
路データ格納部31に格納された前記複数の回路データ
の中から指定する旨の内容を示している。
First, a control command is output from the input unit 1 to the data processing unit 2. The control command indicates that the circuit data to be subjected to logic verification is specified from among the plurality of circuit data stored in the circuit data storage unit 31.

【0106】前記ゲート数検出部21について説明す
る。
The gate number detecting section 21 will be described.

【0107】前記ゲート数検出部21は、前記制御コマ
ンドを入力し、前記入力した制御コマンドにより指定さ
れた前記回路データを、前記回路データ格納部31から
読み出す。
The gate number detection section 21 receives the control command and reads out the circuit data specified by the input control command from the circuit data storage section 31.

【0108】前記ゲート数検出部21は、前記ゲート数
換算ライブラリ格納部32に格納された前記データを参
照する。前記ゲート数検出部21は、前記参照された前
記データに基づいて、前記読み出された前記回路データ
に含まれる全体の前記ゲート数を、前記モジュール単位
で(前記回路データに含まれる前記モジュールごとに)
検出する。
The gate number detector 21 refers to the data stored in the gate number conversion library storage 32. The gate number detection unit 21 calculates the total number of gates included in the read circuit data on a module basis (for each module included in the circuit data) based on the referenced data. To)
To detect.

【0109】前記ゲート数検出部21は、前記モジュー
ル単位の前記ゲート数に基づいて、前記回路データの階
層(グループ)のそれぞれの前記ゲート数および、前記
回路データ全体の前記ゲート数を算出する。
The gate number detector 21 calculates the number of gates in each of the layers (groups) of the circuit data and the number of gates in the entire circuit data based on the number of gates in the module unit.

【0110】この場合、前記ゲート数検出部21は、前
記ボトムアップで前記モジュールごとの前記ゲート数を
検出することにより、前記複数のモジュールのそれぞれ
に含まれる前記ゲート数の他、前記複数の階層のそれぞ
れに含まれる全モジュールの前記ゲート数や、前記回路
データの全体に含まれる前記ゲート数を検出することが
できる。
In this case, the number-of-gates detecting section 21 detects the number of gates for each of the modules in the bottom-up manner, so that the number of gates included in each of the plurality of modules and the plurality of layers The number of gates of all modules included in each of the above and the number of gates included in the entire circuit data can be detected.

【0111】前記ゲート数検出部21は、これらの、モ
ジュール単位の(モジュールのそれぞれの)前記ゲート
数を示すデータ、前記階層のそれぞれの前記ゲート数を
示すデータおよび、前記回路データ全体の前記ゲート数
を示すデータを、前記モジュールゲート数格納部33に
格納する。
The gate number detector 21 calculates the number of gates in each module (each module), the number of gates in the hierarchy, and the number of gates in the entire circuit data. Data indicating the number is stored in the module gate number storage unit 33.

【0112】次に、平均搭載ゲート数算出部22につい
て説明する。
Next, the average mounted gate number calculator 22 will be described.

【0113】平均搭載ゲート数算出部22は、前記パー
ティションパラメータ格納部34に格納された前記ボー
ド枚数を示すデータと、前記モジュールゲート数格納部
33に格納された前記回路データに含まれる全ての前記
ゲート数(回路データ全体の前記ゲート数)を示すデー
タに基づいて、ボード1枚あたりの平均搭載ゲート数
(平均搭載要素データ数)を算出する。
The average number-of-mounted-gates calculating unit 22 calculates data indicating the number of boards stored in the partition parameter storing unit 34 and all the circuit data included in the circuit data stored in the module gate number storing unit 33. An average number of mounted gates per board (average mounted element data number) is calculated based on data indicating the number of gates (the number of gates in the entire circuit data).

【0114】前記平均搭載ゲート数算出部22は、前記
算出された平均搭載ゲート数を示すデータを前記パーテ
ィションパラメータ格納部34に格納する。
The average mounted gate number calculation unit 22 stores data indicating the calculated average mounted gate number in the partition parameter storage unit 34.

【0115】ここで、前記平均搭載ゲート数の計算式
は、以下の通りとなる。 平均搭載ゲート数=(回路データ全体のゲート数)/(使
用ボード枚数)
Here, the formula for calculating the average number of mounted gates is as follows. Average number of mounted gates = (number of gates in entire circuit data) / (number of boards used)

【0116】上記の計算式において、前記使用ボード枚
数とは、前記エミュレーション装置が備える前記ボード
の全ての枚数であり、同一の前記エミュレーション装置
を使用する限り常に同じ値である。言い換えれば、前記
回路データに含まれる全ての前記ゲート数が小さい場合
であっても、前記エミュレーション装置が備える前記ボ
ードの全てを用いて前記パーティショニングが行われ
る。
In the above formula, the number of boards used is the total number of boards provided in the emulation device, and is always the same value as long as the same emulation device is used. In other words, even when the number of all the gates included in the circuit data is small, the partitioning is performed using all of the boards included in the emulation device.

【0117】次に、前記階層展開部23について説明す
る。
Next, the hierarchy expanding section 23 will be described.

【0118】前記階層展開部23は、外部から前記入力
部1を介して設定される展開基準ゲート数(所定値)よ
り大きいゲート数を持つモジュールについて階層を展開
する。この場合、前記階層展開部23は、前記モジュー
ルゲート数格納部33に格納された前記モジュールのそ
れぞれの前記ゲート数を示すデータ、前記パーティショ
ンパラメータ格納部34に格納された前記平均搭載ゲー
ト数を示すデータおよび前記最大搭載ゲート数を示すデ
ータ、ならびに前記展開基準ゲート数を示すデータに基
づいて、前記階層展開を行う。
The hierarchy expanding section 23 expands a hierarchy for a module having a gate number larger than the expansion reference gate number (predetermined value) set via the input section 1 from the outside. In this case, the hierarchy developing unit 23 indicates the data indicating the number of gates of each of the modules stored in the module gate number storage unit 33, and indicates the average mounted gate number stored in the partition parameter storage unit 34. The hierarchical expansion is performed based on data, data indicating the maximum number of mounted gates, and data indicating the expansion reference gate number.

【0119】前記階層展開部23による前記モジュール
の階層展開は、前記回路データの階層を形成する複数の
モジュールのうち、最上位階層から下位階層に向かう順
序(トップダウン)で行われる。
The hierarchical expansion of the module by the hierarchical expansion unit 23 is performed in the order from the highest hierarchy to the lower hierarchy (top down) among a plurality of modules forming the hierarchy of the circuit data.

【0120】前記階層展開部23により階層展開された
後の階層を示すデータは、前記階層データ格納部35に
格納される。
The data indicating the hierarchy after the hierarchical development by the hierarchical development unit 23 is stored in the hierarchical data storage unit 35.

【0121】前記階層展開部23の動作を、図2のフロ
ーチャートを参照して説明する。
The operation of the hierarchy expanding section 23 will be described with reference to the flowchart of FIG.

【0122】前記階層展開部23は、前記モジュールゲ
ート数格納部33に格納された前記モジュールのそれぞ
れの前記ゲート数を示すデータと、前記入力部1より設
定される前記展開基準ゲート数を示すデータを入力する
(ステップA1)。
The hierarchy expanding section 23 stores data indicating the number of gates of each of the modules stored in the module gate number storing section 33 and data indicating the expansion reference gate number set from the input section 1. Is input (step A1).

【0123】前記設定された展開基準ゲート数が、前記
パーティションパラメータ格納部34に格納された前記
平均搭載ゲート数よりも大きいとき(ステップA2−
N)は、前記展開基準ゲート数の設定エラーを前記出力
部4を介して通知する(ステップA2a)。
When the set number of expansion reference gates is larger than the average number of mounted gates stored in the partition parameter storage unit 34 (step A2-
N) notifies the setting error of the expansion reference gate number via the output unit 4 (step A2a).

【0124】ここで、設定エラーとされる理由は、次の
通りである。本実施形態では、後述するように、前記展
開基準ゲート数以下の前記モジュールを複数組み合わせ
て、(前記平均搭載ゲート数≦)前記搭載基準ゲート数
に近い前記ゲート数をもつ新モジュールを生成するた
め、前記階層展開された後の前記モジュール(前記新モ
ジュールを構成する要素の一つ)が既に前記平均搭載ゲ
ート数以上であると、前記組み合わせを作らない状態で
前記搭載基準ゲート数を超えている場合が有り得る。そ
の場合には、後述する図4および図5のフローチャート
が無効となり、本実施形態の狙い(前記複数のボードの
それぞれの前記搭載ゲート数を、前記搭載基準ゲート数
の近傍に集めること)を実現することができなくなるか
らである。
The reason for the setting error is as follows. In the present embodiment, as will be described later, in order to generate a new module having the number of gates close to the number of mounted reference gates (the average number of mounted gates ≤) by combining a plurality of the modules equal to or less than the number of expanded reference gates. If the module (one of the elements constituting the new module) after the hierarchical expansion is already equal to or more than the average number of mounted gates, the number exceeds the mounting reference gate number without making the combination. There may be cases. In that case, the flowcharts of FIGS. 4 and 5 described later become invalid, and the purpose of the present embodiment (collecting the number of mounted gates of each of the plurality of boards near the number of mounted reference gates) is realized. Because they can no longer do so.

【0125】また、前記モジュールの単体で前記平均搭
載ゲート数以上であると、前記組み合わせたときには
(前記組み合わせ方を工夫したとしても)、前記搭載基
準ゲート数を大幅に超えることが考えられ、やはり前記
本実施形態の狙いを実現することができなくなるからで
ある。
When the number of mounted modules alone is equal to or larger than the average number of mounted gates, the number of the mounted reference gates may greatly exceed the number of mounted reference gates when combined (even if the method of combination is devised). This is because the aim of the present embodiment cannot be realized.

【0126】前記展開基準ゲート数は、前記最大搭載ゲ
ート数よりも小さい値が設定される。そうでないと、ス
テップA3でNo−ステップA8となったときに、その
モジュールの前記搭載ゲート数が前記最大搭載ゲート数
よりも大きいケースが生じてしまうからである。
As the number of reference gates for development, a value smaller than the maximum number of mounted gates is set. Otherwise, when the result of step A3 is No-step A8, a case may occur in which the number of mounted gates of the module is larger than the maximum number of mounted gates.

【0127】一方、前記展開基準ゲート数が前記平均搭
載ゲート数以下のとき(ステップA2−Y)は、前記ス
テップA1で入力された前記モジュールのそれぞれの前
記ゲート数と前記展開基準ゲート数とを比較する(ステ
ップA3)。
On the other hand, when the number of expansion reference gates is equal to or less than the average number of mounted gates (step A2-Y), the number of gates and the number of expansion reference gates of the module input in step A1 are determined. Compare (Step A3).

【0128】前記モジュールのゲート数が前記展開基準
ゲート数より大きいと判断された場合(ステップA3−
Y)は、そのモジュールを含む階層が前記最下位階層で
ないかを判断する(ステップA4)。
When it is determined that the number of gates of the module is larger than the number of reference gates for development (step A3-
Y) determines whether the hierarchy including the module is not the lowest hierarchy (step A4).

【0129】前記判断の結果、そのモジュールを含む階
層が最下位階層ではないと判断された場合(ステップA
4−Y)は、そのモジュールを階層展開し(ステップA
5)、展開後の階層データを前記階層データ格納部35
に格納する(ステップA9)。
When it is determined that the hierarchy including the module is not the lowest hierarchy (step A).
4-Y) expands the module hierarchically (step A
5) storing the expanded hierarchical data in the hierarchical data storage unit 35;
(Step A9).

【0130】例えば、図3に示す例では、前記モジュー
ルM1に含まれるゲート数は、前記展開基準ゲート数よ
りも大きいと判断されており(ステップA3−Y)、ま
た、前記モジュールM1が含まれる前記階層Aは、前記
最下位階層ではないと判断される(ステップA4−Y)
ため、前記モジュールM1が前記階層展開されて(ステ
ップA5)、モジュールM11,12に分割される。前
記階層展開された前記モジュールM1の階層を示すデー
タは、前記階層データ格納部35に格納される(ステッ
プA9)。
For example, in the example shown in FIG. 3, it is determined that the number of gates included in the module M1 is larger than the number of expansion reference gates (step A3-Y), and the module M1 is included. It is determined that the hierarchy A is not the lowest hierarchy (step A4-Y).
Therefore, the module M1 is hierarchically expanded (step A5) and divided into modules M11 and M12. The data indicating the hierarchy of the module M1 expanded in the hierarchy is stored in the hierarchy data storage unit 35 (step A9).

【0131】次いで、前記回路データに含まれる全ての
前記階層データが前記階層データ格納部35に格納され
たか否かを判断する(ステップA10)。前記モジュー
ルの階層展開は、前記トップダウンで行われていること
から、このときは、全ての前記階層データが前記階層デ
ータ格納部35に格納されている訳ではないと判断され
(ステップA10−N)、前記ステップA1に戻って2
度目のフローに移る。この2度目のフローで、前記モジ
ュールM12が階層展開されて(ステップA5)、前記
モジュールM121…M12Yに分割される。その後、
前記モジュールM12の階層を示すデータは、前記階層
データ格納部35に格納される。
Next, it is determined whether or not all the hierarchical data included in the circuit data has been stored in the hierarchical data storage unit 35 (step A10). Since the hierarchical expansion of the module is performed from the top down, it is determined at this time that not all the hierarchical data is stored in the hierarchical data storage unit 35 (step A10-N). ), Returning to step A1
Move to the second flow. In this second flow, the module M12 is hierarchically expanded (step A5) and divided into the modules M121... M12Y. afterwards,
Data indicating the hierarchy of the module M12 is stored in the hierarchy data storage unit 35.

【0132】前記ステップA3における判断の結果、前
記モジュールのゲート数が前記展開基準ゲート数以下と
判断された場合(ステップA3−N)、そのモジュール
の階層展開を行わない(ステップA8)で、そのままの
モジュールのデータを階層データ格納部35に格納する
(ステップA9)。
As a result of the determination in step A3, when it is determined that the number of gates of the module is equal to or smaller than the number of expansion reference gates (step A3-N), the hierarchical expansion of the module is not performed (step A8). Is stored in the hierarchical data storage unit 35 (step A9).

【0133】ここで、階層展開を行わない理由は、次の
通りである。前記展開基準ゲート数以下の前記ゲート数
を有する前記モジュールについて、さらに前記階層展開
を行うと、前記ゲート数の小さな前記モジュールが多数
できることになり、後で行われるパーティショニングの
際に、前記多数のモジュールの組み合わせ数が膨大にな
り、前記パーティショニングの処理が収束し難くなるた
めである。前記展開基準ゲート数より前記ゲート数が小
さい前記モジュールは前記階層展開を行わない(不要な
展開をしない)ことにより、前記組み合わせをするとき
の要素数をできるだけ少なくしている。
Here, the reason why the hierarchical development is not performed is as follows. When the hierarchical expansion is further performed on the module having the number of gates equal to or less than the number of expansion reference gates, a large number of the modules having the small number of gates can be formed. This is because the number of module combinations becomes enormous, and the partitioning process hardly converges. The module whose number of gates is smaller than the number of expansion reference gates does not perform the hierarchical expansion (does not perform unnecessary expansion), thereby minimizing the number of elements when performing the combination.

【0134】前記ステップA4における判断の結果、そ
のモジュールが最下位に相当する階層に含まれると判断
された場合(ステップA4−N)は、そのモジュールの
ゲート数と前記パーティションパラメータ格納部34に
格納された前記最大搭載ゲート数とを比較する(ステッ
プA6)。
As a result of the determination in step A4, if it is determined that the module is included in the lowest hierarchical level (step A4-N), the module is stored in the partition parameter storage unit 34 with the number of gates of the module. The calculated maximum number of mounted gates is compared (step A6).

【0135】前記ステップA6における判断の結果、前
記そのモジュールのゲート数が前記最大搭載ゲート数よ
りも大きいと判断された場合(ステップA6−Y)は、
前記そのモジュールが前記最大搭載ゲート数を超えてい
る旨のエラーの通知を、前記出力部4を介して行う(ス
テップA7)。
If it is determined in step A6 that the number of gates of the module is larger than the maximum number of mounted gates (step A6-Y),
An error notification that the module has exceeded the maximum number of mounted gates is made via the output unit 4 (step A7).

【0136】前記ステップA7において、前記エラーと
するのは以下の理由による。そのモジュールは、前記最
下位階層に含まれていて(ステップA4−N)、前述し
たように、前記FPGA上にマッピング可能な前記最小
単位であるため、これ以上階層展開して分割することが
できないにも拘わらず、最大搭載ゲート数を越えており
(ステップA6−Y)、そのモジュールがそのモジュー
ル1つのみで前記ボードに割り当てられたとしても、本
エミュレーション装置では扱えない規模であるからであ
る。
In step A7, the error is set for the following reason. The module is included in the lowest hierarchy (step A4-N) and, as described above, is the minimum unit that can be mapped on the FPGA, so that it cannot be further expanded and divided. Nevertheless, the maximum number of mounted gates is exceeded (step A6-Y), and even if that module is assigned to the board with only one module, the scale cannot be handled by this emulation device. .

【0137】この場合には、そのモジュールをさらに階
層展開できるように、さらに階層的に設計する(さらに
下位の階層をもつように階層化する)か、そのモジュー
ルに含まれるゲート数が前記最大搭載ゲート数以下とな
るように、設計し直す必要がある。
In this case, the module is designed in a hierarchical manner so that the module can be further expanded in a hierarchy (hierarchical so as to have a lower hierarchy), or the number of gates included in the module is equal to the maximum mounting number. It is necessary to redesign so that the number is less than the number of gates.

【0138】前記ステップA6における判断の結果、前
記そのモジュールのゲート数が前記最大搭載ゲート数よ
りも小さいと判断された場合(ステップA6−N)に
は、そのモジュールの階層を展開しない(ステップA
8)。前記そのモジュールは最下層である(ステップA
4−N)ため、それ以上階層展開できず、前記そのモジ
ュールのゲート数が前記最大搭載ゲート数よりも小さ
く、その点では問題が無いため、そのまま放置する。
If it is determined in step A6 that the number of gates of the module is smaller than the maximum number of mounted gates (step A6-N), the hierarchy of the module is not expanded (step A6).
8). The module is the lowest layer (step A
4-N), the hierarchy cannot be further expanded, and the number of gates of the module is smaller than the maximum number of mounted gates, and there is no problem in that point.

【0139】上記のようにして、前記トップダウンで前
記階層展開がなされる又は、なされないの処理(ステッ
プA5,A8)が行われた前記モジュールは、その都
度、その階層を示すデータ(階層データ)が前記階層デ
ータ格納部35に格納されていく。
As described above, each time the module is subjected to the processing (steps A5 and A8) in which the hierarchy is expanded or not performed in the top down, data indicating the hierarchy (hierarchical data) ) Are stored in the hierarchical data storage unit 35.

【0140】このようにして、前記回路データに含まれ
る全ての前記階層データが前記階層データ格納部35に
格納されたと判断されると(ステップA10−Y)、図
2の処理は終了する。
When it is determined that all the hierarchical data included in the circuit data have been stored in the hierarchical data storage unit 35 (step A10-Y), the processing in FIG. 2 ends.

【0141】上記図2に示すフローチャートに従って、
前記階層展開部23により所定の階層が展開される。図
3は、その階層展開例を示したものである。
According to the flowchart shown in FIG.
A predetermined hierarchy is expanded by the hierarchy expansion unit 23. FIG. 3 shows an example of the hierarchical development.

【0142】次に、前記信号検出部24について説明す
る。
Next, the signal detecting section 24 will be described.

【0143】前記信号検出部24は、前記階層展開部2
3により階層展開された後のモジュールのそれぞれ(モ
ジュール単体)の外部信号数を検出する。また、前記信
号検出部24は、後述する新モジュールの外部信号数を
検出する。このとき、前記信号検出部24は、前記回路
データ格納部31に格納された前記回路データと、前記
ゲート数換算ライブラリ格納部32に格納された前記デ
ータと、前記階層データ格納部35に格納された前記デ
ータとに基づいて、前記外部信号数を検出する。前記信
号検出部24は、前記検出された外部信号数を示すデー
タを、前記信号データ格納部36に格納する。
The signal detecting section 24 is provided with the hierarchical developing section 2
3, the number of external signals of each of the modules (single modules) after hierarchical expansion is detected. The signal detection unit 24 detects the number of external signals of a new module described later. At this time, the signal detection unit 24 stores the circuit data stored in the circuit data storage unit 31, the data stored in the gate number conversion library storage unit 32, and the data stored in the hierarchical data storage unit 35. The number of external signals is detected based on the data. The signal detector 24 stores data indicating the detected number of external signals in the signal data storage 36.

【0144】次に、前記パーティション生成部25につ
いて説明する。
Next, the partition generator 25 will be described.

【0145】前記パーティション生成部25は、前記最
大搭載ゲート数、前記最大ボード間信号数の制限を満た
し、かつ前記搭載基準ゲート数に近いゲート数が1枚の
ボードに搭載されるように、下位階層から(ボトムアッ
プで)パーティショニングを行う。
The partition generation unit 25 lowers the order so that the maximum number of mounted gates and the maximum number of inter-board signals are satisfied and the number of gates close to the mounted reference gate number is mounted on one board. Perform partitioning from the hierarchy (bottom up).

【0146】前記パーティション生成部25は、前記パ
ーティショニングの結果を示すデータを、前記パーティ
ションデータ格納部37に格納する。
The partition generation section 25 stores data indicating the result of the partitioning in the partition data storage section 37.

【0147】パーティション生成部25は、外部から前
記入力部1を介して設定される、前記ボードあたりの搭
載基準ゲート数を示すデータと、前記モジュールゲート
数格納部33に格納された前記モジュールのそれぞれの
ゲート数を示すデータ、前記パーティションパラメータ
格納部34に格納されたパーティショニングに必要なデ
ータ、前記信号データ格納部36に格納された前記モジ
ュールの外部信号数を示すデータおよび前記階層データ
格納部35に格納された前記階層を示すデータをもと
に、上記パーティショニングを行う。
[0147] The partition generation unit 25 stores data indicating the number of mounting reference gates per board, which is set externally via the input unit 1, and the module stored in the module gate number storage unit 33. Indicating the number of gates, data necessary for partitioning stored in the partition parameter storage unit 34, data indicating the number of external signals of the module stored in the signal data storage unit 36, and the hierarchical data storage unit 35 The partitioning is performed on the basis of the data indicating the hierarchy stored in.

【0148】前記パーティション生成部25では、最下
位階層(図3の例では階層Cまたは階層D)より順次、
同一階層内で以下に述べるようなパーティション処理を
実施していく。
In the partition generation section 25, sequentially from the lowest layer (layer C or layer D in the example of FIG. 3),
Partition processing as described below is performed in the same hierarchy.

【0149】なお、前記最下位階層C,Dのそれぞれの
モジュール(処理単位データ)M30…M33、M12
1…M12Yは、前記ゲート(要素データ)のレベルで
記述されている。
Each of the modules (processing unit data) M30... M33, M12 of the lowest hierarchical levels C and D
1... M12Y are described at the level of the gate (element data).

【0150】図3において、最下位階層の一つである階
層Cに関して、図4および図5のフローチャートを参照
しながら説明する。
Referring to FIG. 3, layer C, which is one of the lowest layers, will be described with reference to the flowcharts of FIGS.

【0151】なお、図4および図5のフローチャートに
おいて、モジュールが取り扱われるときには、図3に示
されるモジュールの階層構造の下位階層から上位階層に
向かう順序で(ボトムアップで)取り扱われる。
In the flowcharts of FIGS. 4 and 5, when a module is handled, the module is handled (bottom-up) in the order from the lower hierarchy to the upper hierarchy in the hierarchical structure of the module shown in FIG.

【0152】図3の階層Cにおいて、同一階層内のモジ
ュールは、M30、M31、M32、M33であり、そ
れぞれのモジュールのゲート数を、g30、g31,g
32,g33とし、ゲート数の大小関係を、 g30<g31<g32<g33 とする。
In the hierarchy C of FIG. 3, the modules in the same hierarchy are M30, M31, M32, and M33, and the number of gates of each module is g30, g31, g
32 and g33, and the relationship between the numbers of gates is g30 <g31 <g32 <g33.

【0153】まず、同一階層内でモジュールのゲート数
の大きい順に対象モジュールとする(ステップB1)。
例えば、前記階層Cでは、初めはモジュールM33が前
記対象モジュールとなる。
First, the modules are set as target modules in descending order of the number of gates in the same hierarchy (step B1).
For example, in the hierarchy C, initially, the module M33 is the target module.

【0154】次に、同一階層内で、前記対象モジュール
以外のモジュールを2つ以上組み合わせたときの全ての
組み合わせの合計ゲート数をそれぞれ算出し、その算出
された値を、組み合わせゲート和とする(ステップB
2)。
Next, within the same hierarchy, the total number of gates of all combinations when two or more modules other than the target module are combined is calculated, and the calculated value is used as the combination gate sum ( Step B
2).

【0155】前記階層Cでは、前記対象モジュールであ
る前記モジュールM33以外のモジュールの2つ以上の
組み合わせは、以下の4通り有り、それぞれの前記組み
合わせゲート和は以下の通りとなる。
In the hierarchy C, there are the following four combinations of two or more combinations of modules other than the module M33, which is the target module, and the combination gate sums of the respective combinations are as follows.

【0156】 (1)組み合わせ(M30、M31) 組み合わせゲート和=g30+g31 (2)組み合わせ(M30、M32) 組み合わせゲート和=g30+g32 (3)組み合わせ(M31、M32) 組み合わせゲート和=g31+g32 (4)組み合わせ(M30、M31、M32) 組み合わせゲート和=g30+g31+g32(1) Combination (M30, M31) Combination gate sum = g30 + g31 (2) Combination (M30, M32) Combination gate sum = g30 + g32 (3) Combination (M31, M32) Combination gate sum = g31 + g32 (4) Combination ( M30, M31, M32) Combination gate sum = g30 + g31 + g32

【0157】すなわち、N個のモジュールを含む階層で
は、組み合わせの数は、N個から対象モジュールを除い
たN−1個を母体数として、2個以上の組み合わせを作
るので、 N−1C2+N−1C3+N−1C4+…+N−1CN
−2+1 である。
In other words, in a hierarchy including N modules, the number of combinations is N-1C2 + N-1C3 + N. -1C4 + ... + N-1CN
−2 + 1.

【0158】次に、前記対象モジュールM33を除くモ
ジュール単体のゲート数と、前記組み合わせゲート和の
数を、少ない順に並べ、並べた結果、最も少ないものと
前記対象モジュールM33とを組み合わせて、新モジュ
ール(候補ブロック)とする(ステップB3)。
Next, the number of gates of a single module excluding the target module M33 and the number of combination gate sums are arranged in ascending order, and as a result of arrangement, the smallest one is combined with the target module M33 to form a new module. (Candidate block) (step B3).

【0159】前記階層Cの例では、それぞれのモジュー
ル単体のゲート数と、前記組み合わせゲート和の大小関
係を以下の通りとする。 g30<g31<g30+g31<g32<g30+g
32<g31+g32<g30+g31+g32
In the example of the hierarchical level C, the number of gates of each module alone and the magnitude relation of the combination gate sum are as follows. g30 <g31 <g30 + g31 <g32 <g30 + g
32 <g31 + g32 <g30 + g31 + g32

【0160】前記階層Cの例では、前記モジュールM3
0が一番小さいゲート数(g30)であるので、前記モ
ジュールM30と前記対象モジュールである前記モジュ
ールM33を組み合わせた(M33,M30)を前記新
モジュールとする。
In the example of the layer C, the module M3
Since 0 is the smallest number of gates (g30), (M33, M30), which is a combination of the module M30 and the module M33 as the target module, is defined as the new module.

【0161】前記ステップB3の出力である前記新モジ
ュール(M33,M30)のゲート数(g33+g3
0)と、前記入力部1より設定される前記搭載基準ゲー
ト数とを比較する(ステップB4)。
The number of gates (g33 + g3) of the new module (M33, M30) which is the output of step B3
0) is compared with the mounting reference gate number set by the input unit 1 (step B4).

【0162】ここで設定される前記搭載基準ゲート数
は、前述の展開基準ゲート数以上である必要がある。前
記階層展開部23で階層展開された後のそれぞれのモジ
ュールのゲート数は、前記展開基準ゲート数よりも小さ
いため(図2の前記ステップA3−Y、A5参照)、そ
れらのモジュールを組み合わせてなる前記新モジュール
のゲート数の判断基準である前記搭載基準ゲート数が、
前記展開基準ゲート数より小さいとするのは無意味だか
らである。
The number of mounting reference gates set here must be equal to or greater than the number of development reference gates described above. Since the number of gates of each module after hierarchical expansion by the hierarchical expansion unit 23 is smaller than the number of expansion reference gates (see steps A3-Y and A5 in FIG. 2), these modules are combined. The mounting reference gate number, which is a criterion for determining the number of gates of the new module,
This is because it is meaningless to make the number smaller than the number of expansion reference gates.

【0163】また、前記搭載基準ゲート数は、前記平均
搭載ゲート数以上である必要がある。そもそも、前記平
均搭載ゲート数は、上記計算式により算出されたもので
あることから、前記搭載基準ゲート数が前記平均搭載ゲ
ート数よりも小さいと、前記回路データを、前記エミュ
レーション装置が有する前記複数のボードに搭載しきれ
ないからである(後述するステップB7参照)。つま
り、 前記展開基準ゲート数≦前記平均搭載ゲート数≦前記搭
載基準ゲート数 の関係にある。
It is necessary that the number of mounting reference gates is equal to or larger than the average number of mounting gates. In the first place, since the average number of mounted gates is calculated by the above equation, if the number of mounted reference gates is smaller than the average number of mounted gates, the plurality of circuit data included in the emulation device may be used. (See step B7 described later). That is, there is a relation of the number of deployment reference gates ≦ the average number of mounted gates ≦ the number of mounted reference gates.

【0164】前記ステップB4における判断の結果、前
記新モジュール(M33,M30)の前記ゲート数(g
33+g30)が、前記搭載基準ゲート数以上であると
判断された場合(ステップB4−Y)、ステップB5に
進む。
As a result of the determination in step B4, the number of gates (g) of the new modules (M33, M30)
33 + g30) is determined to be greater than or equal to the mounting reference gate number (step B4-Y), the process proceeds to step B5.

【0165】前記ステップB5では、前記新モジュール
(M33,M30)の前記ゲート数(g33+g30)
と、前記パーティションパラメータ格納部34に格納さ
れた前記最大搭載ゲート数とを比較する。
In step B5, the gate number (g33 + g30) of the new module (M33, M30)
And the maximum number of mounted gates stored in the partition parameter storage unit 34.

【0166】前記ステップB5における判断の結果、前
記新モジュール(M33,M30)の前記ゲート数(g
33+g30)が前記最大搭載ゲート数以下であると判
断された場合(ステップB5−Y)、ステップB6に進
む。
As a result of the determination in step B5, the number of gates (g) of the new modules (M33, M30) is determined.
33 + g30) is determined to be equal to or less than the maximum number of mounted gates (step B5-Y), the process proceeds to step B6.

【0167】前記ステップB6では、前記新モジュール
(M33,M30)の外部信号数と、前記パーティショ
ンパラメータ格納部34に格納された前記最大ボード間
信号数とを比較する。
In step B6, the number of external signals of the new module (M33, M30) is compared with the maximum number of inter-board signals stored in the partition parameter storage unit.

【0168】ここで、「外部信号数」とは、他のモジュ
ールと接続するための配線の数に相当する。前記信号デ
ータ格納部36に前記モジュールごとの前記外部信号数
を示すデータが格納されている。したがって、前記パー
ティション生成部25は、前記信号データ格納部36に
格納された前記データに基づいて、前記信号検出部24
に、前記新モジュール(M33,M30)の前記外部信
号数を検出させる。
Here, the “number of external signals” corresponds to the number of wirings for connecting to another module. Data indicating the number of external signals for each module is stored in the signal data storage unit 36. Therefore, based on the data stored in the signal data storage unit 36, the partition generation unit 25
Then, the number of external signals of the new modules (M33, M30) is detected.

【0169】前記ステップB6における判断の結果、前
記新モジュール(M33,M30)の前記外部信号数が
前記最大ボード間信号数以下であると判断された場合
(ステップB6−Y)、この新モジュール(M33,M
30)を1パーティション(データブロック)と確定す
る(ステップB7)。ここで、前記1パーティションと
は、前記複数のボードのうちの1枚のボードに割り当て
られるゲート数(前記回路ブロック)に相当する。
As a result of the determination in step B6, when it is determined that the number of external signals of the new module (M33, M30) is less than the maximum number of signals between boards (step B6-Y), the new module (M33, M30) M33, M
30) is determined as one partition (data block) (step B7). Here, the one partition corresponds to the number of gates (the circuit block) assigned to one of the plurality of boards.

【0170】この場合、前記新モジュール(M33,M
30)に含まれるモジュールM33,M30を階層(本
例では階層C)から削除する(ステップB8)。
In this case, the new module (M33, M
Modules M33 and M30 included in 30) are deleted from the hierarchy (hierarchy C in this example) (step B8).

【0171】前記1パーティションとして確定された前
記新モジュール(M33,M30)では、前記モジュー
ルM33と前記モジュールM30とが組み合わされる前
に比べて、前記モジュールM33と前記モジュールM3
0との間のインターフェースに相当する分だけ、前記外
部信号数を減らすことができる。
In the new module (M33, M30) determined as the one partition, the module M33 and the module M3 are compared with the module M33 and the module M30 before they are combined.
The number of the external signals can be reduced by an amount corresponding to an interface between 0 and 0.

【0172】このように、前記パーティション生成部2
5によるパーティショニングの結果で、各モジュールの
前記外部信号数が変わるため、前記信号データ格納部3
6に格納された前記データは、その変わったデータにア
ップデートされる。
As described above, the partition generation unit 2
5, the number of the external signals of each module changes, so that the signal data storage unit 3
6 is updated to the unusual data.

【0173】前記ステップB8の後、次にゲート数の大
きいモジュールを前記対象モジュールとする(ステップ
B1)。前記階層Cの例では、前記ステップB8におい
て前記新モジュール(M33,M30)に含まれるモジ
ュールM33,M30が削除された結果、前記階層C内
の残りのモジュールは、M31,M32となり、このう
ちゲート数が大きい方のモジュールM32が前記対象モ
ジュールとなる(ステップB1)。前記モジュールM3
2が前記対象モジュールとされた後の各ステップについ
ては、その説明を省略する。
After step B8, the module having the next largest number of gates is set as the target module (step B1). In the example of the layer C, as a result of deleting the modules M33 and M30 included in the new modules (M33 and M30) in the step B8, the remaining modules in the layer C become M31 and M32, of which gates are M31 and M32. The module M32 with the larger number becomes the target module (step B1). The module M3
The description of each step after 2 is set as the target module will be omitted.

【0174】一方、前記ステップB4における判断の結
果、前記新モジュール(M33,M30)のゲート数
(g33+g30)が前記搭載基準ゲート数より小さい
と判断された場合(ステップB4−N)は、ステップB
10に進む。
On the other hand, if it is determined in step B4 that the gate number (g33 + g30) of the new module (M33, M30) is smaller than the mounting reference gate number (step B4-N), the process proceeds to step B4.
Go to 10.

【0175】前記ステップB10では、同一階層(本例
では階層C)内で、全てのモジュールM30…M33の
組み合わせが完了しているか否かを判断する。ここで、
「同一階層内で全てのモジュールM30…M33の組み
合わせが完了している」とは、同一階層内で他の全ての
モジュールについて前記新モジュールとしての検討を終
了しており、他に組み合わされるべきモジュールが残っ
ていないことを意味する。
In the step B10, it is determined whether or not the combination of all the modules M30 to M33 has been completed in the same layer (layer C in this example). here,
“The combination of all modules M30... M33 in the same hierarchy is completed” means that all other modules in the same hierarchy have been considered as the new module, and other modules to be combined Means that there are no remaining.

【0176】前記ステップB10における判断の結果、
前記全てのモジュールM30…M33の組み合わせが完
了していると判断された場合(ステップB10−Y)、
現在の階層(本例では階層C)が最上位階層ではないか
否かを判断する(ステップB11)。
As a result of the determination in step B10,
If it is determined that the combination of all the modules M30 to M33 has been completed (step B10-Y),
It is determined whether or not the current layer (layer C in this example) is not the highest layer (step B11).

【0177】前記ステップB11における判断の結果、
その階層が最上位階層ではないと判断された場合(ステ
ップB11−Y)、その階層Cにある残りの全てのモジ
ュールM31,32を1段階上位の階層(本例では階層
A)に上げる(ステップB12)。
As a result of the determination in step B11,
If it is determined that the hierarchy is not the highest hierarchy (step B11-Y), all the remaining modules M31 and M32 in the hierarchy C are raised to the next higher hierarchy (the hierarchy A in this example) (step B11-Y). B12).

【0178】階層Cにある残りの全てのモジュールM3
1,32のそれぞれと、当該上位の階層Aに含まれるモ
ジュールM1,M2,M3のそれぞれとの組み合わせ
を、その後に検討するためである。
All remaining modules M3 in the hierarchy C
This is because a combination of each of the modules 1 and 32 and each of the modules M1, M2, and M3 included in the higher hierarchy A is to be examined later.

【0179】一方、前記ステップB10における判断の
結果、階層(本例では階層C)内で、全てのモジュール
M30…M33の組み合わせを完了していないと判断さ
れた場合(ステップB10−N)、前記ステップB3に
戻る。
On the other hand, if it is determined in step B10 that the combination of all the modules M30 to M33 has not been completed in the hierarchy (hierarchy C in this example) (step B10-N), It returns to step B3.

【0180】前記ステップB3では、前記組み合わせゲ
ート和が次に少ない組み合わせモジュールを前記対象モ
ジュールM33と組み合わせて、前記新モジュールとす
る。前記階層Cの例では、2番目にゲート数の少ないモ
ジュールM31と組み合わせて、前記新モジュールは
(M33,M31)となる。
In step B3, the combination module having the next smallest combination gate sum is combined with the target module M33 to obtain the new module. In the example of the layer C, the new module is (M33, M31) in combination with the module M31 having the second smallest number of gates.

【0181】上記のように、同一階層C内で他に組み合
わせ可能なモジュールが残っている限り(ステップB1
0−N)、前記新モジュールのゲート数が前記搭載基準
ゲート数を超えるまで、最適な前記新モジュールの組み
合わせを模索するループ(ステップB3,B4−N,B
10−N)が繰り返される。そのゲート数が前記搭載基
準ゲート数に近い前記新モジュールを生成するためであ
る。
As described above, as long as other modules that can be combined remain in the same hierarchy C (step B1).
0-N), a loop (steps B3, B4-N, B) for searching for an optimal combination of the new modules until the number of gates of the new module exceeds the reference number of mounting gates.
10-N) are repeated. This is for generating the new module whose gate number is close to the mounting reference gate number.

【0182】一方、前記ステップB11における判断の
結果、その階層が最上位階層であると判断された場合
(ステップB11−N)、パーティショニングエラーを
出力部4を介して通知する(ステップB15)。
On the other hand, as a result of the determination in the step B11, when the hierarchy is determined to be the highest hierarchy (step B11-N), a partitioning error is notified via the output unit 4 (step B15).

【0183】ここで、パーティショニングエラーが通知
される理由は、以下の通りである。前記ステップB11
において最上位階層であると判断された場合(ステップ
B11−N)とは、2つ以上のモジュールM33,M3
0を組み合わせた前記新モジュール(M33,M30)
が前記搭載基準ゲート数より小さく(ステップB4−
N)かつ同一階層内で全てのモジュールM30…M33
の組み合わせを完了していて(ステップB10−Y)、
かつ最上位階層であり(ステップB11−N)、また前
述したように前記搭載基準ゲート数≧前記平均搭載ゲー
ト数であるため、前記搭載基準ゲート数よりも小規模の
ゲート数で他に組み合わせが無く前記パーティションを
決定してしまうと、前記回路データを前記複数のボード
に搭載しきれなくなる可能性があるからである。つま
り、現在の前記搭載基準ゲート数および前記展開基準ゲ
ート数の設定では、本実施形態が実現しようとするパー
ティショニングが不可能と判断されるためである。
Here, the reason why the partitioning error is notified is as follows. Step B11
Is determined to be the highest hierarchy (step B11-N) means that two or more modules M33 and M3
The new module (M33, M30) combining 0
Is smaller than the mounting reference gate number (step B4-
N) and all modules M30 ... M33 in the same hierarchy
Has been completed (step B10-Y),
In addition, since it is the highest hierarchy (step B11-N), and as described above, the number of mounting reference gates ≧ the average number of mounting gates, the number of gates smaller than the number of mounting reference gates and other combinations may be smaller. This is because, if the partition is determined without it, the circuit data may not be able to be mounted on the plurality of boards. That is, it is determined that the partitioning intended to be realized by the present embodiment cannot be performed with the current setting of the mounting reference gate number and the deployment reference gate number.

【0184】一方、前記ステップB5における判断の結
果、前記新モジュール(M33,M30)のゲート数
(g33+g30)が前記最大搭載ゲート数より大きい
と判断された場合(ステップB5−N)、ステップB1
3に進む。
On the other hand, if it is determined in step B5 that the number of gates (g33 + g30) of the new module (M33, M30) is larger than the maximum number of mounted gates (step B5-N), step B1 is executed.
Proceed to 3.

【0185】前記ステップB13では、前記新モジュー
ル(M33,M30)が含まれる現在の階層Cが、最上
位階層ではないか否かが判断される。
At step B13, it is determined whether or not the current hierarchy C including the new modules (M33, M30) is not the highest hierarchy.

【0186】前記ステップB13における判断の結果、
前記新モジュール(M33,M30)が含まれる階層C
が最上位階層ではないと判断された場合(ステップB1
3−Y)は、ステップB14に進む。
As a result of the judgment in the step B13,
Layer C including the new modules (M33, M30)
Is not the highest hierarchy (step B1).
In step 3-Y), the process proceeds to step B14.

【0187】前記ステップB14では、前記対象モジュ
ールを1段階上の階層に上げる。その後、前記対象モジ
ュールを前記階層から削除し(ステップB16)、前記
ステップB1に戻る。
In step B14, the target module is moved up one level. Thereafter, the target module is deleted from the hierarchy (step B16), and the process returns to step B1.

【0188】前記ステップB1では、前記モジュールの
ゲート数が次に大きいモジュールを前記対象モジュール
とする。
In step B1, the module having the next largest number of gates is set as the target module.

【0189】前記階層Cの例では、前記対象モジュール
M33を上位階層である階層Aに上げて(ステップB1
4)、現在の階層CよりモジュールM33を削除し(ス
テップB16)、次に大きいモジュールM32を前記対
象モジュールとする(ステップB1)。
In the example of the hierarchy C, the target module M33 is raised to the hierarchy A which is the upper hierarchy (step B1).
4) The module M33 is deleted from the current layer C (step B16), and the next largest module M32 is set as the target module (step B1).

【0190】前記対象モジュールM33を上位階層であ
る階層Aに上げる理由は、前記階層C内の前記モジュー
ルとの組み合わせで1パーティションが生成される可能
性が無いため(ステップB3、ステップB5−N参
照)、前記階層A内のモジュールとの組み合わせで1パ
ーティションが生成される可能性を残すためである。
The reason that the target module M33 is raised to the higher hierarchical level A is that there is no possibility that one partition is generated in combination with the module in the hierarchical level C (see steps B3 and B5-N). ), In order to leave a possibility that one partition will be generated in combination with the module in the hierarchy A.

【0191】また、上記のように、前記対象モジュール
を前記モジュールM33から前記モジュール32にする
(ステップB16,B1)ことで、前記ステップB5に
おいて、前記新モジュールのゲート数が前記最大搭載ゲ
ート数よりも小さいと判断される(ステップB5−Y)
可能性が生まれる。
Further, as described above, by changing the target module from the module M33 to the module 32 (steps B16 and B1), in step B5, the number of gates of the new module is larger than the maximum number of mounted gates. Is also smaller (step B5-Y).
Possibilities are born.

【0192】一方、前記ステップB13における判断の
結果、前記新モジュール(M33,M30)が含まれる
階層Cが最上位階層であると判断された場合(ステップ
B13−N)、パーティショニングエラーを出力部4を
介して通知する(ステップB15)。
On the other hand, as a result of the determination in step B13, when it is determined that the hierarchy C including the new modules (M33, M30) is the highest hierarchy (step B13-N), a partitioning error is output. 4 (step B15).

【0193】ここで、パーティショニングエラーが通知
される理由は、以下の通りである。前記新モジュール
(M33,M30)の前記ゲート数(g33+g30)
が、前記最大搭載ゲート数を越えており(ステップB5
−N)、この前記新モジュール(M33,M30)は前
記ゲート数が小さい順に前記対象モジュールM33と組
み合わせた場合なので、残りの候補モジュール(モジュ
ールM30以外のモジュールM31,M32)を組み合
わせてなる新モジュールは、全て最大搭載ゲート数を超
える。かつ前記新モジュール(M33,M30)は、最
上位階層である(ステップB13−N)ため、前記ボト
ムアップで前記モジュールが扱われるフローにおいて、
他に組み合わせの対象となるモジュールが存在しない。
また、前記モジュールM33単体の前記ゲート数は、前
記展開基準ゲート数以下である(ステップA3)ため、
前記平均搭載ゲート数よりも小さい(ステップA2)。
この場合、前記モジュールM33のようなモジュール単
体で前記パーティションを作ると、前記回路データを前
記複数のボードに搭載しきれなくなる可能性があるから
である。よって、現在の搭載基準ゲート数および展開基
準ゲート数の設定では、パーティショニングが不可能と
判断される。
Here, the reason why the partitioning error is notified is as follows. The number of gates of the new module (M33, M30) (g33 + g30)
Exceeds the maximum number of mounted gates (step B5).
-N), since the new module (M33, M30) is combined with the target module M33 in ascending order of the number of gates, a new module formed by combining the remaining candidate modules (modules M31 and M32 other than the module M30) All exceed the maximum number of mounted gates. In addition, since the new modules (M33, M30) are the highest hierarchy (step B13-N), in the flow in which the modules are handled in the bottom-up,
There are no other modules to be combined.
Further, the number of gates of the module M33 alone is equal to or less than the number of reference gates for development (step A3).
It is smaller than the average number of mounted gates (step A2).
In this case, if the partition is created by a single module such as the module M33, the circuit data may not be able to be mounted on the plurality of boards. Therefore, it is determined that partitioning is impossible with the current setting of the number of mounting reference gates and the number of deployment reference gates.

【0194】一方、前記ステップB6において、前記新
モジュール(M33,M30)の外部信号数が前記最大
ボード間信号数を越えていると判断された場合(ステッ
プB6−N)、ステップB9に進む。
On the other hand, if it is determined in step B6 that the number of external signals of the new module (M33, M30) exceeds the maximum number of inter-board signals (step B6-N), the process proceeds to step B9.

【0195】前記ステップB9では、同一階層C内で全
ての組み合わせが完了したか否かが判断される。
In step B9, it is determined whether all combinations in the same layer C have been completed.

【0196】前記ステップB9における判断の結果、同
一階層C内で全ての組み合わせが完了していると判断さ
れた場合(ステップB9−Y)、前述のステップB13
の処理を行う。
If it is determined in step B9 that all combinations have been completed in the same layer C (step B9-Y), the aforementioned step B13
Is performed.

【0197】一方、前記ステップB9における判断の結
果、同一階層C内で全ての組み合わせを完了していない
と判断された場合(ステップB9−N)、前記ステップ
B3に戻る。
On the other hand, as a result of the judgment in the step B9, when it is judged that all the combinations are not completed in the same hierarchy C (step B9-N), the process returns to the step B3.

【0198】前記ステップB3では、前記組み合わせゲ
ート和が次に少ない、組み合わせであるモジュールM3
1を前記対象モジュールM33と組み合わせて、新モジ
ュール(M31,M33)とする。
In step B3, the module M3 which is the combination having the next smallest combination gate sum
1 is combined with the target module M33 to form a new module (M31, M33).

【0199】これにより、前記新モジュール(M31,
M33)は、前記新モジュール(M30,M33)に比
べて、そのゲート数は増える(ステップB3)。しかし
ながら、ゲート数と外部信号数は、一般に無関係(一方
が他方に全く依存しない独立した関係)である。したが
って、前記ステップB6において、前記新モジュール
(M31,M33)の外部信号数が前記最大ボード間信
号数よりも小さいと判断される(ステップB6−Y)可
能性はある。
Thus, the new module (M31,
M33) has more gates than the new modules (M30, M33) (step B3). However, the number of gates and the number of external signals are generally unrelated (an independent relationship in which one does not depend at all on the other). Therefore, in step B6, there is a possibility that the number of external signals of the new module (M31, M33) is determined to be smaller than the maximum number of signals between boards (step B6-Y).

【0200】以上のように、前記パーティション生成部
25では、前記同一階層C内のゲート数の大きいモジュ
ールMから順に(ステップB1)、残りの小さいモジュ
ールMまたは小さいモジュールMの組み合わせと組み合
わせて(ステップB2,B3)、新モジュールを生成
し、前記生成された新モジュールのゲート数が前記搭載
基準ゲート数を越えるまで前記組み合わせ作業を繰り返
す(ステップB4−N→ステップB10−N→ステップ
B−3→ステップB4)。
As described above, in the partition generation unit 25, in order from the module M having the largest number of gates in the same hierarchy C (step B1), it is combined with the remaining small module M or the combination of the small modules M (step B1). B2, B3), a new module is generated, and the combination is repeated until the number of gates of the generated new module exceeds the number of mounted reference gates (Step B4-N → Step B10-N → Step B-3 → Step B4).

【0201】前記新モジュールのゲート数が前記搭載基
準ゲート数を越えたところで(ステップB4−Y)、前
記新モジュールについて、前記最大搭載ゲート数と前記
最大ボード関信号数の制限を判断し(ステップB5,B
6)、前記判断の結果、問題なければ、前記新モジュー
ルをパーティションとして決定する(ステップB7)。
したがって、本実施形態では、前記搭載基準ゲート数に
近いゲート数で前記パーティションが確定し易い。
When the number of gates of the new module exceeds the number of reference gates for mounting (step B4-Y), for the new module, the limitation of the maximum number of mounted gates and the maximum number of board related signals is determined (step B4-Y). B5, B
6) If the result of the determination is that there is no problem, the new module is determined as a partition (step B7).
Therefore, in this embodiment, the partition is easily determined by the number of gates close to the number of mounting reference gates.

【0202】この場合、前記搭載基準ゲート数を、前記
平均搭載ゲート数に近い値に設定しておけば、更に、各
ボードに搭載されるゲート数の均等化を図ることができ
る。この場合、前記搭載基準ゲート数が前記平均搭載ゲ
ート数を大きく上回っていると、前記平均搭載ゲート数
に遠い分だけ、各ボードに搭載されるゲート数がばらつ
く可能性がある。
In this case, if the number of mounted reference gates is set to a value close to the average number of mounted gates, the number of gates mounted on each board can be further equalized. In this case, if the number of mounted reference gates greatly exceeds the average number of mounted gates, there is a possibility that the number of gates mounted on each board varies by an amount farther from the average number of mounted gates.

【0203】次に、図6から図8を参照して、第2の実
施形態について説明する。
Next, a second embodiment will be described with reference to FIGS.

【0204】まず、第2の実施形態の構成について説明
する。
First, the configuration of the second embodiment will be described.

【0205】図6の例では、図1の構成に対して、パー
ティション条件設定部26を追加したもので、その他の
構成は図1と同様である。
In the example of FIG. 6, a partition condition setting unit 26 is added to the configuration of FIG. 1, and the other configuration is the same as that of FIG.

【0206】前記入力部1より、前記パーティション条
件設定部26に、前記パーティショニングの条件とし
て、前記展開基準ゲート数についての調整幅数αと、前
記搭載基準ゲート数についての調整幅数βが設定され
る。これら調整幅数α,βの意味については後述する。
[0206] The input unit 1 sets in the partition condition setting unit 26, as the partitioning condition, an adjustment width number α for the expansion reference gate number and an adjustment width number β for the mounting reference gate number. Is done. The meaning of these adjustment width numbers α and β will be described later.

【0207】前記パーティション条件設定部26は、前
記設定された調整幅数α,βのそれぞれに基づいて、前
記階層展開部23に入力される前記展開基準ゲート数お
よび前記パーティション生成部25に入力される前記搭
載基準ゲート数のそれぞれを自動的に更新する。
The partition condition setting unit 26 inputs the number of expansion reference gates input to the hierarchy expansion unit 23 and the number of expansion reference gates input to the partition generation unit 25 based on the set adjustment width numbers α and β, respectively. The number of the mounted reference gates is automatically updated.

【0208】図7および図8においては、図4および図
5における前記ステップB15のパーティションエラー
の通知処理の代わりに、新たにステップB17として、
パーティション条件見直し処理ステップを備えている。
その他のフローは図4および図5と同じである。
In FIGS. 7 and 8, instead of the partition error notifying process of step B15 in FIGS. 4 and 5, a new step B17 is provided.
It includes a partition condition review processing step.
Other flows are the same as those in FIG. 4 and FIG.

【0209】次に、第2の実施形態の動作について説明
する。
Next, the operation of the second embodiment will be described.

【0210】前記パーティション条件設定部26は、前
記展開基準ゲート数(所定値)と前記搭載基準ゲート数
(設定値)の初期値を、 展開基準ゲート数=搭載基準ゲート数=平均搭載ゲート
数 として設定する。なお、前記パーティション条件設定部
26は、前記平均搭載ゲート数を示すデータを、前記パ
ーティションパラメータ格納部34から入力する。
The partition condition setting unit 26 sets the initial values of the number of deployment reference gates (predetermined value) and the number of installation reference gates (set value) as follows: Set. The partition condition setting unit 26 inputs data indicating the average number of mounted gates from the partition parameter storage unit 34.

【0211】上記のように前記展開基準ゲート数および
前記搭載基準ゲート数が初期値設定された後、第1の実
施形態と同様に、前記階層展開部23および前記信号検
出部24のそれぞれの処理が行われる。
After the initial values of the number of expansion reference gates and the number of mounting reference gates are set as described above, the processing of each of the hierarchical expansion unit 23 and the signal detection unit 24 is performed in the same manner as in the first embodiment. Is performed.

【0212】次に、前記パーティション生成部25は、
図7および図8のフローチャートに従って処理を行う。
図7および図8において、ステップB17以外のステッ
プは、前述の図4および図5のステップと同様である。
Next, the partition generation unit 25
The processing is performed according to the flowcharts of FIGS.
7 and 8, steps other than step B17 are the same as the steps in FIGS. 4 and 5 described above.

【0213】ステップB11およびステップB13のそ
れぞれにおいて、最上位階層であると判断された場合
(ステップB11−N、ステップB13−N)、前記パ
ーティショニングの条件変更が、前記パーティション条
件設定部26に通知される(ステップB17)。
In each of Steps B11 and B13, when it is determined that the hierarchical level is the highest level (Steps B11-N and B13-N), the change of the partitioning condition is notified to the partition condition setting unit 26. (Step B17).

【0214】前記ステップB17の通知を受けた前記パ
ーティション条件設定部26では、前記設定された調整
幅数α、βのそれぞれに基づいて、前記展開基準ゲート
数および前記搭載基準ゲート数のそれぞれを 展開基準ゲート数=前回の展開基準ゲート数−α 搭載基準ゲート数=前回の搭載基準ゲート数+β と再設定する(図7および図8には図示せず)。
In the partition condition setting section 26 having received the notification of the step B17, the partitioning reference gate number and the mounting reference gate number are respectively developed based on the set adjustment width numbers α and β. Reference gate number = previous deployment reference gate number−α Mounting reference gate number = previous mounting reference gate number + β is reset (not shown in FIGS. 7 and 8).

【0215】上記のように、再設定された前記展開基準
ゲート数および前記搭載基準ゲート数に基づいて、再
度、前記階層展開部23の処理から実行する。なお、前
記初期設定および前記再設定された前記展開基準ゲート
数および前記搭載基準ゲート数のそれぞれの値は、前記
出力部4に出力される。
As described above, the processing is again executed from the processing of the hierarchical developing section 23 based on the reset number of the developing reference gates and the number of the mounting reference gates. In addition, the values of the initial setting and the reset number of the deployment reference gates and the mounting reference gates are output to the output unit 4.

【0216】前記パーティション条件設定部26では、
上記のように、前記パーティショニングの条件の見直し
を繰り返し行い、展開基準ゲート数≦0または 搭載基準ゲート数≧最大搭載ゲート数 になった場合は、パーティショニングエラーを出力部4
を介して出力する(図7および図8には図示せず)。
In the partition condition setting section 26,
As described above, the above-mentioned partitioning condition is repeatedly reviewed, and if the number of deployment reference gates ≦ 0 or the number of mounting reference gates ≧ the maximum number of mounting gates, a partitioning error is output to the output unit 4.
(Not shown in FIGS. 7 and 8).

【0217】このパーティショニングエラーに対し、ユ
ーザーは、前記展開基準ゲート数の調整幅数αおよび前
記搭載基準ゲート数の調整幅数βのそれぞれを、より小
さい値に設定し直すか、前記回路データを構成する前記
モジュールのゲート数をより小さいものに再設計すると
いう対応を行う必要がある。
In response to this partitioning error, the user resets each of the adjustment width number α of the expansion reference gate number and the adjustment width number β of the mounting reference gate number to a smaller value, or It is necessary to take measures to redesign the number of gates of the above-mentioned module to be smaller.

【0218】第2の実施形態では、前記第1の実施形態
の構成に加えて、前記パーティション条件設定部26を
設けることにより、前記展開基準ゲート数と前記搭載基
準ゲート数を自動的に設定することができ、かつ前記パ
ーティション生成部25において前記パーティションが
生成できない条件では、自動的に前記展開基準ゲート数
および前記搭載基準ゲート数の設定を更新することがで
きる。
In the second embodiment, in addition to the configuration of the first embodiment, by providing the partition condition setting section 26, the number of expansion reference gates and the number of mounting reference gates are automatically set. Under the condition that the partition generation unit 25 cannot generate the partition, the setting of the number of deployment reference gates and the number of mounting reference gates can be automatically updated.

【0219】なお、第1、第2の実施形態におけるエミ
ュレーション装置で用いられるFPGAは、動作速度が
遅いため、FPGA上にマッピングされたプリミティブ
ブロックのそれぞれの配線長の相違等による信号伝達遅
延が特に問題となることはない。すなわち、本実施形態
のエミュレーション装置は、論理検証を行うものであっ
て、レイアウトの良否判定を行うものではない。したが
って、本実施形態において、FPGA上にマッピングさ
れるプリミティブブロックのそれぞれが、実レイアウト
と異なっても問題が生じることはなく、本実施形態のよ
うにモジュールを階層展開して任意にパーティショニン
グを行うことができるのである。
Since the operation speed of the FPGA used in the emulation device in the first and second embodiments is low, the signal transmission delay due to the difference in the wiring length of each of the primitive blocks mapped on the FPGA is particularly large. There is no problem. That is, the emulation device according to the present embodiment performs logic verification, and does not determine the quality of the layout. Therefore, in the present embodiment, there is no problem even if each of the primitive blocks mapped on the FPGA is different from the actual layout, and the modules are hierarchically expanded and the partitioning is arbitrarily performed as in the present embodiment. You can do it.

【0220】[0220]

【発明の効果】本発明のパーティショニング方法によれ
ば、被検査対象データを複数に分割して前記分割の結果
としての複数のデータブロックを生成するパーティショ
ニング方法であって、少なくとも一つの要素データを備
えた処理単位データを複数備えて構成されるデータを前
記被検査対象データとして提供するステップと、前記被
検査対象データを構成する前記複数の処理単位データに
それぞれ含まれる前記要素データの数を検出するステッ
プと、前記検出結果に基づいて、前記被検査対象データ
を構成する前記複数の処理単位データから複数の前記処
理単位データを選択して前記選択された複数の処理単位
データにより候補ブロックを生成するステップと、前記
生成された候補ブロックに含まれる前記要素データの数
と設定値との比較を行うステップと、前記比較結果に基
づいて、前記候補ブロックを前記データブロックとする
か否かを決定するステップとを備えているため、全体の
処理時間を短縮化することができ、コンパイル等の処理
でエラーが発生する可能性を最小限に抑えることのでき
る。
According to the partitioning method of the present invention, there is provided a partitioning method for dividing data to be inspected into a plurality of data blocks and generating a plurality of data blocks as a result of the division. Providing the data to be inspected as data to be inspected, comprising a plurality of processing unit data comprising: the number of the element data respectively included in the plurality of processing unit data constituting the inspected data Detecting, based on the detection result, selecting a plurality of the processing unit data from the plurality of processing unit data constituting the inspection target data, and selecting a candidate block based on the selected plurality of processing unit data. Generating and comparing the set value with the number of element data included in the generated candidate block And a step of determining whether or not the candidate block is to be the data block based on the comparison result, so that the overall processing time can be reduced, and processing such as compiling can be performed. Can minimize the possibility of an error.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の第1の実施の形態に係るパーティショ
ニング方法を行う装置の構成を示すブロック図である。
FIG. 1 is a block diagram illustrating a configuration of an apparatus that performs a partitioning method according to a first embodiment of the present invention.

【図2】本発明の第1の実施の形態に係るパーティショ
ニング方法での階層展開部の処理を示すフローチャート
図である。
FIG. 2 is a flowchart illustrating a process of a hierarchy expanding unit in the partitioning method according to the first embodiment of the present invention.

【図3】本発明の第1の実施の形態に係るパーティショ
ニング方法で階層展開を行った後の回路データの構成の
一例を示すブロック図である。
FIG. 3 is a block diagram illustrating an example of a configuration of circuit data after hierarchical expansion is performed by the partitioning method according to the first embodiment of the present invention.

【図4】本発明の第1の実施の形態に係るパーティショ
ニング方法でのパーティション生成部の処理の一部を示
すフローチャート図である。
FIG. 4 is a flowchart showing a part of the processing of the partition generation unit in the partitioning method according to the first embodiment of the present invention.

【図5】本発明の第1の実施の形態に係るパーティショ
ニング方法でのパーティション生成部の処理の一部を示
すフローチャート図である。
FIG. 5 is a flowchart showing a part of the processing of the partition generation unit in the partitioning method according to the first embodiment of the present invention.

【図6】本発明の第2の実施の形態に係るパーティショ
ニング方法を行う装置の構成を示すブロック図である。
FIG. 6 is a block diagram illustrating a configuration of an apparatus that performs a partitioning method according to a second embodiment of the present invention.

【図7】本発明の第2の実施の形態に係るパーティショ
ニング方法でのパーティション生成部の処理の一部を示
すフローチャート図である。
FIG. 7 is a flowchart showing a part of the processing of the partition generation unit in the partitioning method according to the second embodiment of the present invention.

【図8】本発明の第2の実施の形態に係るパーティショ
ニング方法でのパーティション生成部の処理の一部を示
すフローチャート図である。
FIG. 8 is a flowchart showing a part of the processing of the partition generation unit in the partitioning method according to the second embodiment of the present invention.

【図9】従来のパーティショニング装置の構成を示すブ
ロック図である。
FIG. 9 is a block diagram showing a configuration of a conventional partitioning device.

【符号の説明】[Explanation of symbols]

1 入力部 2 データ処理部 3 データ格納部 4 出力部 5 入力部 6 データ処理部 7 データ格納部 8 出力部 21 ゲート数検出部 22 平均搭載ゲート数算出部 23 階層展開部 24 信号検出部 25 パーティション生成部 31 回路データ格納部 32 ゲート数換算ライブラリ格納部 33 モジュールゲート数格納部 34 パーティションパラメータ格納部 35 階層データ格納部 36 信号データ格納部 37 パーティションデータ格納部 51 ゲート数検出部 52 階層展開部 53 信号検出部 54 パーティション生成部 71 回路データ格納部 72 ゲート数換算ライブラリ格納部 73 モジュールゲート数格納部 74 信号数格納部 75 パーティションデータ格納部 A 階層 B 階層 C 階層 D 階層 M1 モジュール M2 モジュール M3 モジュール M11 モジュール M12 モジュール M30 モジュール M31 モジュール M32 モジュール M33 モジュール M121 モジュール M12Y モジュール g30 ゲート数 g31 ゲート数 g32 ゲート数 g33 ゲート数 DESCRIPTION OF SYMBOLS 1 Input part 2 Data processing part 3 Data storage part 4 Output part 5 Input part 6 Data processing part 7 Data storage part 8 Output part 21 Gate number detection part 22 Average mounted gate number calculation part 23 Hierarchical development part 24 Signal detection part 25 Partition Generation unit 31 Circuit data storage unit 32 Gate number conversion library storage unit 33 Module gate number storage unit 34 Partition parameter storage unit 35 Hierarchical data storage unit 36 Signal data storage unit 37 Partition data storage unit 51 Gate number detection unit 52 Hierarchical development unit 53 Signal detection unit 54 Partition generation unit 71 Circuit data storage unit 72 Gate number conversion library storage unit 73 Module gate number storage unit 74 Signal number storage unit 75 Partition data storage unit A layer B layer C layer D layer M1 module M2 module M3 Module M11 module M12 module M30 module M31 module M32 module M33 module M121 module M12Y module g30 number of gates g31 number of gates g32 number of gates g33 number of gates

フロントページの続き (56)参考文献 特開 平11−134385(JP,A) 特開 平11−73440(JP,A) 特表 平4−502985(JP,A) Behrens,D.、外2名、”H ierarchical partit ioning”、Computer−A ided Design,1996.ICC AD−96. Digest of Te chnical Papers.,1996 IEEE/ACM Internat ional Conference o n 、平成8年、p.470〜477 Ober,U、外2名、”Hiera rchical partitioni ng in a rapid prot otyping environmen t”、Rapid System Pr ototyping,1996,Proce edings.,Seventh IE EE International W orkshop on、平成8年、p. 30〜35 Vi Chi Chan、外1名、" Hierarchical parti tioning for field− programmable syste ms”、Computer−Aided Design,1997.Digest of Technical Paper s.,1997 IEEE/ACM Int ernational Confere nce on、平成9年、p.428〜435 Sanchis,L.A.、”Mul tiple−way network partitioning”、Comp uters,IEEE Transac tions on Volume: 38 1、平成元年、p.62〜81 Riess,B.M.、”Archi tecture driven k−w ay partitioning fo r multichip module s”、European Design and Test Conferen ce,1995.ED&TC 1995,Pro ceedings.、平成7年、p.71 〜76 (58)調査した分野(Int.Cl.7,DB名) G06F 17/50 664 JICSTファイル(JOIS)Continuation of the front page (56) References JP-A-11-134385 (JP, A) JP-A-11-73440 (JP, A) JP-A-4-502985 (JP, A) Behrens, D. "Hierarchical party ioning", Computer-Aided Design, 1996. ICC AD-96. Digest of Technical Papers. , 1996 IEEE / ACM International Conference on, 1996, p. 470-477 Ober, U, and two others, "Hiera physical partitioning in a rapid prototyping environment", Rapid System Prototyping, 1996, Proceedings. , Seventh International Workshop on IEEE, 1996, p. 30-35 Vi Chi Chan, one outsider, "Hierarchical partitioning for field-programmable systems. Digest of Technical Papers. , 1997 IEEE / ACM International Conference, 1997, p. 428-435 Sanchis, L .; A. , "Multiple-way network partitioning", Computers, IEEE Transactions on Volume: 381, 1989, p. 62-81 Riess, B.S. M. "Architecture driven k-way partitioning for multichip modules", European Design and Test Conference, 1995. ED & TC 1995, Proceedings. 1995, p. 71-76 (58) Fields surveyed (Int. Cl. 7 , DB name) G06F 17/50 664 JICST file (JOIS)

Claims (38)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 被検査対象の回路データを複数に分割し
て前記分割の結果としての複数のデータブロックを生成
するパーティショニング方法であって、 少なくとも一つの要素データを備えた処理単位データを
複数備えて構成されるデータを前記被検査対象の回路
ータとして提供するステップと、 前記被検査対象の回路データを構成する前記複数の処理
単位データにそれぞれ含まれる前記要素データの数を検
出するステップと、 前記検出結果に基づいて、前記被検査対象の回路データ
を構成する前記複数の処理単位データから複数の前記処
理単位データを選択して前記選択された複数の処理単位
データにより候補ブロックを生成するステップと、 前記生成された候補ブロックに含まれる前記要素データ
の数と設定値との比較を行うステップと、 前記比較結果、前記要素データの数が前記設定値以上
であるときに、前記候補ブロックを前記データブロック
決定するステップとを備え 前記分割の結果としての複数のデータブロックのそれぞ
れは、ボードに割り当てられ、 前記比較を行うステップは、前記被検査対象の回路デー
タに含まれる全ての前記要素データの数を前記複数のデ
ータブロックのそれぞれを割り当てるための全ての前記
ボードの数で割った数に対応する平均搭載要素データ
数、に基づいて設定される数を前記設定値とする パーテ
ィショニング方法。
1. An object to be inspectedCircuitSplit the data into multiple
To generate a plurality of data blocks as a result of the division
A partitioning method, wherein the processing unit data including at least one element data is
A plurality of data to be inspectedCircuitDe
Providing the data to be inspected,CircuitThe plurality of processes constituting data
Check the number of the element data included in each unit data.
Issuing the object to be inspected based on the detection result.Circuitdata
A plurality of processing units from the plurality of processing unit data constituting
A plurality of processing units selected by selecting logical unit data
Generating a candidate block from data; and the element data included in the generated candidate block.
Comparing the number of data with a set value;ofresult, The number of the element data is equal to or more than the set value
When, The candidate block as the data block
WhendecideWith steps, Each of a plurality of data blocks as a result of said division
Is assigned to the board, The step of performing the comparison includes the circuit data of the inspection object.
The number of all of the element data included in the
All of the above for assigning each of the data blocks
Average mounted element data corresponding to the number divided by the number of boards
The number set based on the number is the set value. Pate
The method of positioning.
【請求項2】 請求項1記載のパーティショニング方法
において、 前記データを前記被検査対象の回路データとして提供す
るステップは、 入力時の前記処理単位データの候補に対応する処理単位
候補データに含まれる前記要素データの数を検出するス
テップと、 前記検出された前記処理単位候補データに含まれる要素
データの数と、所定値との比較検討を行なうステップ
と、 前記比較検討結果、前記処理単位候補データに含まれ
る要素データの数が前 記所定値を超えているときに、前
記処理単位候補データに含まれる要素データを分割し、
前記分割の結果として前記処理単位データを生成し、前
記比較検討の結果、前記処理単位候補データに含まれる
要素データの数が前記所定値を超えていないときに、前
記処理単位候補データをそのまま前記処理単位データと
するステップとを備えたパーティショニング方法。
2. The partitioning method according to claim 1, wherein the step of providing the data as the circuit data to be inspected includes a processing unit corresponding to the processing unit data candidate at the time of input.
Detecting the number of element data included in the candidate data; comparing the number of element data included in the detected processing unit candidate data with a predetermined value; and a result of the comparison Is included in the processing unit candidate data.
When the number of element data exceeds a pre-Symbol predetermined value that, before
Dividing the element data included in the processing unit candidate data,
Generating the processing unit data as a result of the division ;
As a result of the comparison and examination, it is included in the processing unit candidate data.
When the number of element data does not exceed the predetermined value,
The processing unit candidate data is directly used as the processing unit data.
And a partitioning method.
【請求項3】 請求項記載のパーティショニング方法
において、 前記分割の結果としての複数のデータブロックのそれぞ
れは、ボードに割り当てられ、 前記比較検討を行うステップは、前記被検査対象の回路
データに含まれる全ての前記要素データの数を前記複数
のデータブロックのそれぞれを割り当てるための全ての
前記ボードの数で割った数に対応する平均搭載要素デー
タ数、に基づいて設定される数を前記所定値とするパー
ティショニング方法。
3. The partitioning method according to claim 2 , wherein each of the plurality of data blocks as a result of the division is assigned to a board, and the step of performing the comparing and reviewing includes the circuit to be inspected. The number is set based on the average number of mounted element data corresponding to the number obtained by dividing the number of all the element data included in the data by the number of all the boards for allocating each of the plurality of data blocks. A partitioning method in which the number is set to the predetermined value.
【請求項4】 請求項またはに記載のパーティショ
ニング方法において、 前記比較検討を行なうステップは、前記被検査対象の回
データの前記分割を行なうことができないと判断され
たときに、前記所定値の値を自動的に更新するパーティ
ショニング方法。
4. A partitioning method according to claim 2 or 3, the step of performing the comparison, the inspection target times
A partitioning method for automatically updating the predetermined value when it is determined that the division of the road data cannot be performed.
【請求項5】 請求項1からのいずれかに記載のパー
ティショニング方法において、 前記比較を行うステップは、前記被検査対象の回路デー
タの前記分割を行なうことができないと判断されたとき
に、前記設定値の値を自動的に更新するパーティショニ
ング方法。
5. A partitioning method according to any one of claims 1 to 4, the step of performing said comparing, determining that it is impossible to perform the division of the circuit data <br/> data of the object to be inspected A partitioning method for automatically updating the value of the set value when the setting is performed.
【請求項6】 請求項1からのいずれかに記載のパー
ティショニング方法において、 更に、 前記決定するステップの結果、前記候補ブロックを前記
データブロックとしないと決定した場合に、前記検出結
果に基づいて、前記被検査対象の回路データを構成する
前記複数の処理単位データの中から、前記候補ブロック
に含まれる前記複数の処理単位データのうちの少なくと
も一の前記処理単位データに代わる前記処理単位データ
を選択し、前記選択された前記処理単位データにより第
2の候補ブロックを生成するステップを備え、 前記比較を行うステップは、前記生成された第2の候補
ブロックに含まれる前記要素データの数と前記設定値と
の比較を行い、 前記決定するステップは、前記比較結果、前記第2の
候補ブロックに含まれる要素データの数が前記設定値以
上であるときに、前記第2の候補ブロックを前記データ
ブロックと決定するパーティショニング方法。
6. A partitioning method according to any one of claims 1 to 5, further result in said determining step, if the candidate block is determined as not the data block, based on the detection result Out of the plurality of processing unit data constituting the circuit data to be inspected, the processing unit data replacing at least one of the plurality of processing unit data included in the candidate block. And generating a second candidate block based on the selected processing unit data. The step of performing the comparison comprises: determining the number of the element data included in the generated second candidate block; Performing a comparison with the set value, and the determining step includes, as a result of the comparison , the second
The number of element data included in the candidate block is equal to or less than the set value.
When it is above, a partitioning method for determining the second candidate block as the data block.
【請求項7】 請求項1からのいずれかに記載のパー
ティショニング方法において、 更に、 前記決定するステップの結果、前記候補ブロックが前記
データブロックとして決定されたときに、前記被検査対
の回路データを構成する前記複数の処理単位データの
うちの前記データブロックとして決定された前記候補ブ
ロック以外の複数の前記処理単位データから複数の前記
処理単位データを選択して前記選択された複数の処理単
位データにより第3の候補ブロックを生成するステップ
を備え、前記比較を行うステップは、前記生成された第
3の候補ブロックに含まれる前記要素データの数と前記
設定値との比較を行い、 前記決定するステップは、前記比較結果、前記第3の
候補ブロックに含まれる要素データの数が前記設定値以
上であるときに、前記第3の候補ブロックを前記データ
ブロックと決定するパーティショニング方法。
7. A partitioning method according to any one of claims 1 to 6, further result of said determining step, said candidate when the block is determined as the data block, the circuit of the object to be inspected The plurality of processing unit data selected from the plurality of processing unit data other than the candidate block determined as the data block among the plurality of processing unit data constituting the data, and the selected plurality of processing units are selected. Generating a third candidate block based on data, wherein the step of comparing compares the number of the element data included in the generated third candidate block with the set value, and Performing the third step as a result of the comparison .
The number of element data included in the candidate block is equal to or less than the set value.
A partitioning method for determining the third candidate block as the data block when the above condition is satisfied;
【請求項8】 請求項1からのいずれかに記載のパー
ティショニング方法において、更に、 前記生成された候補ブロックに含まれる前記要素データ
の数と、前記ボードに割り当て可能な前記要素データの
最大数を示す最大搭載要素データ数との対比を行うステ
ップを備え、 前記決定するステップは、前記比較結果、前記要素デ
ータの数が前記設定値以上であり、かつ前記対比
、前記要素データの数が前記最大搭載要素データ数以
下であるときに、前記候補ブロックを前記データブロッ
クと決定するパーティショニング方法。
8. From claim 17The par described in any of
In the method of tearing,Furthermore,  The element data included in the generated candidate block
Of the element data that can be assigned to the board
Step to compare with the maximum number of mounted element data indicating the maximum number
Wherein the determining comprises comparingofresult, The element
Data is greater than or equal to the set value, andContrastofConclusion
FruitThe number of element data is equal to or less than the maximum number of mounted element data.
When the candidate block is in the data block,
To decidePartitioning method.
【請求項9】 請求項1からのいずれかに記載のパー
ティショニング方法において、更に、 前記生成された候補ブロックにおける他の前記複数のデ
ータブロックのそれぞれとの間の電気的接続を行うため
の外部信号の数を検出するステップと、 前記検出された前記候補ブロックの前記外部信号の数
と、前記ボードに接続可能な前記外部信号の最大数を示
す最大ボード間信号数との対比を行うステップを備え、 前記決定するステップは、前記比較結果、前記要素デ
ータの数が前記設定値以上であり、かつ前記対比
、前記外部信号の数が前記最大ボード間信号数以下で
あるときに、前記候補ブロックを前記データブロックと
決定するパーティショニング方法。
9. From claim 17The par described in any of
In the method of tearing,Furthermore,  The other plurality of data in the generated candidate block
To make electrical connections between each of the data blocks
Detecting the number of external signals of the candidate block; and detecting the number of external signals of the detected candidate block.
Indicates the maximum number of external signals that can be connected to the board.
Comparing with the maximum number of signals between boards.ofresult, The element
Data is greater than or equal to the set value, andContrastofConclusion
FruitThe number of external signals is less than the maximum number of signals between boards
At some point, the candidate block is referred to as the data block.
decidePartitioning method.
【請求項10】 請求項記載のパーティショニング方
法において、 更に、 前記対比の結果、前記検出された前記候補ブロックの前
記外部信号の数が、前記最大ボード間信号数を超えてい
ると判断した場合に、前記被検査対象の回路データを構
成する前記複数の処理単位データの中から、前記候補ブ
ロックに含まれる前記複数の処理単位データのうちの少
なくとも一の前記処理単位データに代わる前記処理単位
データを選択し、前記選択された前記処理単位データに
より第4の候補ブロックを生成するステップを備え、 前記比較を行うステップは、前記生成された第4の候補
ブロックに含まれる前記要素データの数と前記設定値と
の比較を行い、 前記決定するステップは、前記比較結果、前記第4の
候補ブロックに含まれる前記要素データの数が前記設定
値以上であるときに、前記第4の候補ブロックを前記デ
ータブロックと決定するパーティショニング方法。
10. The partitioning method according to claim 9 , further comprising, as a result of the comparison, determining that the number of the external signals of the detected candidate block exceeds the maximum number of inter-board signals. In the case, the processing unit replacing the processing unit data of at least one of the plurality of processing unit data included in the candidate block from among the plurality of processing unit data configuring the circuit data to be inspected. Selecting data and generating a fourth candidate block based on the selected processing unit data; and performing the comparison, the number of the element data included in the generated fourth candidate block and makes a comparison with the set value, said determining step includes the comparison result, the fourth
The number of the element data included in the candidate block is set according to the setting.
A partitioning method for determining the fourth candidate block as the data block when the value is equal to or greater than the value ;
【請求項11】 被検査対象の回路データを複数に分割
して前記分割の結果としての複数のデータブロックを生
成するパーティショニング方法であって、 少なくとも一つの要素データを備えた処理単位データを
複数提供するステップと、 前記提供された複数の処理単位データを複数のグループ
に分類して前記分類された結果としての前記複数の処理
単位データを前記被検査対象の回路データとして提供す
るステップと、 前記複数のグループのうちの第1のグループに帰属する
前記複数の処理単位データにそれぞれ含まれる前記要素
データの数を検出するステップと、 前記検出結果に基づいて、前記第1のグループに帰属す
る前記複数の処理単位データから複数の前記処理単位デ
ータを選択して前記選択された前記複数の処理単位デー
タにより候補ブロックを生成するステップと、 前記生成された候補ブロックに含まれる前記要素データ
の数と設定値との比較を行うステップと、 前記比較結果、前記要素データの数が前記設定値以上
であるときに、前記候補ブロックを前記データブロック
決定するステップとを備え 前記分割の結果としての複数のデータブロックのそれぞ
れは、ボードに割り当てられ、 前記比較を行うステップは、前記被検査対象の回路デー
タに含まれる全ての前記要素データの数を前記複数のデ
ータブロックのそれぞれを割り当てるための全ての前記
ボードの数で割った数に対応する平均搭載要素データ
数、に基づいて設定される数を前記設定値とする パーテ
ィショニング方法。
11. An object to be inspectedCircuitSplit data into multiple
To generate a plurality of data blocks as a result of the division.
A partitioning method for generating processing unit data including at least one element data.
Providing a plurality of the plurality of processing unit data provided by a plurality of groups;
The plurality of processes as a result of the classification
Unit data to be inspectedCircuitProvide as data
Belonging to a first group of the plurality of groups
The element included in each of the plurality of processing unit data
Detecting the number of data; and belonging to the first group based on the detection result.
From the plurality of processing unit data
Data for the selected plurality of processing unit data.
Generating a candidate block by using the data, and the element data included in the generated candidate block.
Comparing the number of data with a set value;ofresult, The number of the element data is equal to or more than the set value
When, The candidate block as the data block
WhendecideWith steps, Each of a plurality of data blocks as a result of said division
Is assigned to the board, The step of performing the comparison includes the circuit data of the inspection object.
The number of all of the element data included in the
All of the above for assigning each of the data blocks
Average mounted element data corresponding to the number divided by the number of boards
The number set based on the number is the set value. Pate
The method of positioning.
【請求項12】 請求項11記載のパーティショニング
方法において、 更に、 前記決定するステップの結果、前記候補ブロックを前記
データブロックとしないと決定した場合に、前記検出結
果に基づいて、前記第1のグループに帰属する前記複数
の処理単位データの中から、前記候補ブロックに含まれ
る前記複数の処理単位データのうちの少なくとも一の前
記処理単位データに代わる前記処理単位データを選択
し、前記選択された前記処理単位データにより第2の候
補ブロックを生成するステップを備え、 前記比較を行うステップは、前記生成された第2の候補
ブロックに含まれる前記要素データの数と前記設定値と
の比較を行い、 前記決定を行うステップは、前記比較結果、前記第2
の候補ブロックに含まれる前記要素データの数が前記設
定値以上であるときに、前記第2の候補ブロックを前記
データブロックと決定するパーティショニング方法。
12. The partitioning method according to claim 11 , further comprising: determining that the candidate block is not to be the data block as a result of the determining step, based on the detection result. From among the plurality of processing unit data belonging to a group, the processing unit data that replaces at least one of the plurality of processing unit data included in the candidate block is selected, and the selected processing unit data is replaced with the selected processing unit data. Generating a second candidate block based on the processing unit data; and performing the comparison, comparing the number of the element data included in the generated second candidate block with the set value. Making the determination, the result of the comparison , the second
The number of the element data included in the candidate block
A partitioning method for determining the second candidate block as the data block when the value is equal to or more than a predetermined value ;
【請求項13】 請求項11または12に記載のパーテ
ィショニング方法において、 更に、 前記決定するステップの結果、前記候補ブロックを前記
データブロックとしないと決定した場合に、前記第1の
グループに帰属する前記複数の処理単位データを用いて
前記候補ブロックに代わる第2の候補ブロックを生成で
きないときに、前記第1のグループに帰属する前記複数
の処理単位データの少なくとも一部の処理単位データを
前記複数のグループのうちの第2のグループに帰属させ
るステップを備えたパーティショニング方法。
13. A partitioning method according to claim 11 or 12, further result in said determining step, if the candidate block is determined as not the data block, belonging to the first group When a second candidate block that replaces the candidate block cannot be generated using the plurality of processing unit data, at least a part of the plurality of processing unit data belonging to the first group is replaced with the plurality of processing unit data. Partitioning method comprising the step of belonging to a second of the groups.
【請求項14】 請求項11から13のいずれかに記載
のパーティショニング方法において、更に、 前記生成された候補ブロックに含まれる前記要素データ
の数と、前記ボードに割り当て可能な前記要素データの
最大数を示す最大搭載要素データ数との対比を行うステ
ップと、 前記対比の結果、前記候補ブロックに含まれる前記要素
データの数が前記最大搭載要素データ数を超えていると
判断した場合には、前記候補ブロックに含まれる前記複
数の処理単位データのうちの少なくとも一の前記処理単
位データを、前記複数のグループのうちの第2のグルー
プに帰属させるステップを備えたパーティショニング方
法。
Claim 1411From13Described in any of
In the partitioning method ofFurthermore,  The element data included in the generated candidate block
Of the element data that can be assigned to the board
Step to compare with the maximum number of mounted element data indicating the maximum number
And the element included in the candidate block as a result of the comparison.
When the number of data exceeds the maximum mounted element data number
If it is determined, the duplicate included in the candidate block is determined.
At least one of the plurality of processing unit data.
Position data in a second group of the plurality of groups.
Partitioning method with steps to attribute
Law.
【請求項15】 請求項11から13のいずれかに記載
のパーティショニング方法において、更に、 前記生成された候補ブロックにおける他の前記複数のデ
ータブロックのそれぞれとの間の電気的接続を行うため
の外部信号の数を検出するステップと、 前記検出された前記候補ブロックの前記外部信号の数
と、前記ボードに接続可能な前記外部信号の最大数を示
す最大ボード間信号数との対比を行うステップと、 前記対比の結果、前記検出された前記候補ブロックの前
記外部信号の数が、前記最大ボード間信号数を超えてい
ると判断した場合に、前記第1のグループに帰属する前
記複数の処理単位データを用いて前記候補ブロックに代
わる第2の候補ブロックを生成できないときに、前記候
補ブロックの少なくとも一の前記処理単位データを、前
記複数のグループのうちの第2のグループに帰属させる
ステップを備えたパーティショニング方法。
Claim 1511From13Described in any of
In the partitioning method ofFurthermore,  The other plurality of data in the generated candidate block
To make electrical connections between each of the data blocks
Detecting the number of external signals of the candidate block; and detecting the number of external signals of the detected candidate block.
Indicates the maximum number of external signals that can be connected to the board.
Comparing with the maximum number of inter-board signals; and, as a result of the comparison, before the detected candidate block.
The number of external signals exceeds the maximum number of signals between boards.
Before belonging to the first group
The candidate block is substituted by using a plurality of processing unit data.
When the second candidate block cannot be generated.
At least one of the processing unit data of a complementary block is
Belonging to the second group of the plurality of groups
Partitioning method with steps.
【請求項16】 請求項13から15のいずれかに記載
のパーティショニング方法において、 前記複数のグループは、階層を形成し、 前記第2のグループに帰属させるステップは、前記第2
のグループとして、前記第1のグループよりも前記階層
において上位にあるグループを選択するパーティショニ
ング方法。
16. A partitioning method according to any of claims 13 to 15, wherein the plurality of groups form a hierarchy, steps be assigned to the second group, the second
A partitioning method for selecting a group that is higher in the hierarchy than the first group as the group.
【請求項17】 請求項16記載のパーティショニング
方法において、 更に、 前記第1のグループが前記階層において最上位にあるか
否かを判断するステップと、 前記判断の結果、前記第1のグループが前記最上位にあ
ると判断された場合には、前記第2のグループに帰属さ
せるステップに代えて、前記被検査対象の回路データの
前記分割を行うことができない旨を報知するステップを
備えたパーティショニング方法。
17. The partitioning method according to claim 16 , further comprising: determining whether or not the first group is at the top of the hierarchy; and determining that the first group is A party having a step of notifying that the division of the circuit data to be inspected cannot be performed in place of the step of belonging to the second group when it is determined that the circuit data is at the highest level. Shoning method.
【請求項18】 被検査対象の回路データを複数に分割
して前記分割の結果としての複数のデータブロックを生
成した後に、前記被検査対象の回路データのエミュレー
ションを行うエミュレーション方法であって、 少なくとも一つの要素データを備えた処理単位データを
複数備えて構成されるデータを前記被検査対象の回路
ータとして提供するステップと、 前記被検査対象の回路データを構成する前記複数の処理
単位データにそれぞれ含まれる前記要素データの数を検
出するステップと、 前記検出結果に基づいて、前記被検査対象の回路データ
を構成する前記複数の処理単位データから複数の前記処
理単位データを選択して前記選択された複数の処理単位
データにより候補ブロックを生成するステップと、 前記生成された候補ブロックに含まれる前記要素データ
の数と設定値との比較を行うステップと、 前記比較結果、前記要素データの数が前記設定値以上
であるときに、前記候補ブロックを前記データブロック
決定するステップと、 複数の前記決定された前記データブロックのそれぞれに
並行してデータ処理を行うステップとを備え 前記分割の結果としての複数のデータブロックのそれぞ
れは、ボードに割り当てられ、 前記比較を行うステップは、前記被検査対象の回路デー
タに含まれる全ての前記要素データの数を前記複数のデ
ータブロックのそれぞれを割り当てるための全ての前記
ボードの数で割った数に対応する平均搭載要素データ
数、に基づいて設定される数を前記設定値とする エミュ
レーション方法。
18. An object to be inspectedCircuitSplit data into multiple
To generate a plurality of data blocks as a result of the division.
After the inspection,CircuitEmulate data
An emulation method for performing processing, wherein processing unit data including at least one element data is
A plurality of data to be inspectedCircuitDe
Providing the data to be inspected,CircuitThe plurality of processes constituting data
Check the number of the element data included in each unit data.
Issuing the object to be inspected based on the detection result.Circuitdata
A plurality of processing units from the plurality of processing unit data constituting
A plurality of processing units selected by selecting logical unit data
Generating a candidate block from data; and the element data included in the generated candidate block.
Comparing the number of data with a set value;ofresult, The number of the element data is equal to or more than the set value
When, The candidate block as the data block
WhendecideStep; for each of said plurality of said determined data blocks
Performing data processing in parallel, Each of a plurality of data blocks as a result of said division
Is assigned to the board, The step of performing the comparison includes the circuit data of the inspection object.
The number of all of the element data included in the
All of the above for assigning each of the data blocks
Average mounted element data corresponding to the number divided by the number of boards
The number set based on the number is the set value. Emu
Method.
【請求項19】 被検査対象の回路データを複数に分割19. The circuit data to be inspected is divided into a plurality.
して前記分割の結果としての複数の回路ブロックを生成To generate a plurality of circuit blocks as a result of the division
するパーティショニング方法であって、Partitioning method, 少なくとも一つのゲートを備えたモジュールを複数備えMultiple modules with at least one gate
て構成される回路データを前記被検査対象の回路データCircuit data composed of the circuit data to be inspected.
として提供するステップと、Providing the steps as 前記被検査対象の回路データを構成する前記複数のモジThe plurality of modules constituting the circuit data to be inspected;
ュールにそれぞれ含まれる前記ゲートの数を検出するスFor detecting the number of gates included in each
テップと、Tep, 前記検出結果に基づいて、前記被検査対象の回路データBased on the detection result, the circuit data of the inspection object
を構成する前記複数のモジュールから複数の前記モジュA plurality of the modules from the plurality of modules constituting
ールを選択して前記選択された複数のモジュールによりSelect the rule and select the module
新モジュールを生成するステップと、Generating a new module; 前記生成された新モジュールに含まれる前記ゲートの数Number of the gates included in the generated new module
と搭載基準ゲート数との比較を行うステップと、Comparing with the reference gate number and 前記比較の結果、前記ゲートの数が前記搭載基準ゲートAs a result of the comparison, the number of the gates is
数以上であるときに、前記新モジュールを前記回路ブロIf the number is greater than or equal to
ックと決定するステップとを備え、And a step of determining 前記分割の結果としての複数の回路ブロックのそれぞれEach of the plurality of circuit blocks as a result of the division
は、エミュレーションボードに割り当てられ、Is assigned to the emulation board, 前記比較を行うステップは、前記被検査対象の回路デーThe step of performing the comparison includes the circuit data of the inspection object.
タに含まれる全ての前記ゲートの数を前記複数の回路ブThe number of all the gates included in the plurality of circuit blocks.
ロックのそれぞれを割り当てるための全ての前記エミュAll the above emulations for assigning each of the locks
レーションボードの数で割った数に対応する平均搭載ゲAverage board size corresponding to the number divided by the number of
ート数以上の数を、前記搭載基準ゲート数とするパーテThe number of ports equal to or greater than the number of
ィショニング方法。The method of positioning.
【請求項20】 被検査対象の回路データを複数に分割
して前記分割の結果としての複数のデータブロックを生
成するパーティショニング装置であって、 少なくとも一つの要素データを備えた処理単位データを
複数備えて構成されるデータを前記被検査対象の回路
ータとして提供する手段と、 前記被検査対象の回路データを構成する前記複数の処理
単位データにそれぞれ含まれる前記要素データの数を検
出する手段と、 前記検出結果に基づいて、前記被検査対象の回路データ
を構成する前記複数の処理単位データから複数の前記処
理単位データを選択して前記選択された複数の処理単位
データにより候補ブロックを生成する手段と、 前記生成された候補ブロックに含まれる前記要素データ
の数と設定値との比較を行う手段と、 前記比較結果、前記要素データの数が前記設定値以上
であるときに、前記候補ブロックを前記データブロック
決定する手段とを備え 前記分割の結果としての複数のデータブロックのそれぞ
れは、ボードに割り当てられ、 前記比較を行う手段は、前記被検査対象の回路データに
含まれる全ての前記要素データの数を前記複数のデータ
ブロックのそれぞれを割り当てるための全ての前記ボー
ドの数で割った数に対応する平均搭載要素データ数、に
基づいて設定される数を前記設定値とする パーティショ
ニング装置。
20. Object to be inspectedCircuitSplit data into multiple
To generate a plurality of data blocks as a result of the division.
A partitioning device for generating processing unit data including at least one element data.
A plurality of data to be inspectedCircuitDe
Means to be provided as data, and the object to be inspectedCircuitThe plurality of processes constituting data
Check the number of the element data included in each unit data.
Output means; and the inspection target based on the detection result.Circuitdata
A plurality of processing units from the plurality of processing unit data constituting
A plurality of processing units selected by selecting logical unit data
Means for generating a candidate block from data; and the element data included in the generated candidate block
Means for comparing the number of data with a set value;ofresult, The number of the element data is equal to or more than the set value
When, The candidate block as the data block
WhendecideWith means, Each of a plurality of data blocks as a result of said division
Is assigned to the board, The means for performing the comparison is based on the circuit data of the inspection target.
The number of all the element data included is
All said boards for assigning each of the blocks
The average number of mounted element data corresponding to the number divided by the number of
The number set based on the above is the set value Partition
Device.
【請求項21】 請求項20記載のパーティショニング
装置において、 前記データを前記被検査対象の回路データとして提供す
る手段は、入力時の前記処理単位データの候補に対応す
る処理単位候補データに含まれる前記要素データの数を
検出する手段と、 前記検出された前記処理単位候補データに含まれる要素
データの数と、所定値との比較検討を行なう手段と、 前記比較検討結果、前記処理単位候補データに含まれ
る要素データの数が前記所定値を超えているときに、前
記処理単位候補データに含まれる要素データを分割し、
前記分割の結果として前記処理単位データを生成し、前
記比較検討の結果、前記処理単位候補データに含まれる
要素データの数が前記所定値を超えていないときに、前
記処理単位候補データをそのまま前記処理単位データと
する手段とを備えたパーティショニング装置。
21. The partitioning apparatus according to claim 20, wherein the means for providing the data as the circuit data to be inspected corresponds to the candidate for the processing unit data at the time of input .
Means for detecting the number of element data included in the processing unit candidate data to be processed ; means for comparing and examining the number of element data included in the detected processing unit candidate data with a predetermined value; As a result of the examination , it is included in the processing unit candidate data.
When the number of element data exceeds the predetermined value,
Dividing the element data included in the processing unit candidate data,
Generating the processing unit data as a result of the division ;
As a result of the comparison and examination, it is included in the processing unit candidate data.
When the number of element data does not exceed the predetermined value,
The processing unit candidate data is directly used as the processing unit data.
And a partitioning device.
【請求項22】 請求項21記載のパーティショニング
装置において、 前記分割の結果としての複数のデータブロックのそれぞ
れは、ボードに割り当てられ、 前記比較検討を行う手段は、前記被検査対象の回路デー
タに含まれる全ての前記要素データの数を前記複数のデ
ータブロックのそれぞれを割り当てるための全ての前記
ボードの数で割った数に対応する平均搭載要素データ
数、に基づいて設定される数を前記所定値とするパーテ
ィショニング装置。
22. The partitioning apparatus according to claim 21 , wherein each of the plurality of data blocks as a result of the division is allocated to a board, and the means for performing the comparison and examination includes the circuit data to be inspected. The number of all of the element data included in the data block is divided by the number of all of the boards for allocating each of the plurality of data blocks. The partitioning device, wherein the predetermined number is the predetermined value.
【請求項23】 請求項21または22に記載のパーテ
ィショニング装置において、 前記比較検討を行なう手段は、前記被検査対象の回路
ータの前記分割を行なうことができないと判断されたと
きに、前記所定値の値を自動的に更新するパーティショ
ニング装置。
23. A partitioning system according to claim 21 or 22, means for performing said comparison, it is determined that it can not to perform the division of the circuit de <br/> over data of the object to be inspected A partitioning device that automatically updates the value of the predetermined value when the error occurs.
【請求項24】 請求項20から23のいずれかに記載
のパーティショニング装置において、 前記比較を行う手段は、前記被検査対象の回路データの
前記分割を行なうことができないと判断されたときに、
前記設定値の値を自動的に更新するパーティショニング
装置。
24. A partitioning system according to any one of claims 20 to 23, means for performing said comparison, when the it is determined that it is not possible to perform the division of the circuit data to be inspected,
A partitioning device that automatically updates the value of the set value.
【請求項25】 請求項20から24のいずれかに記載
のパーティショニング装置において、 更に、 前記決定する手段の結果、前記候補ブロックを前記デー
タブロックとしないと決定した場合に、前記検出結果に
基づいて、前記被検査対象の回路データを構成する前記
複数の処理単位データの中から、前記候補ブロックに含
まれる前記複数の処理単位データのうちの少なくとも一
の前記処理単位データに代わる前記処理単位データを選
択し、前記選択された前記処理単位データにより第2の
候補ブロックを生成する手段を備え、 前記比較を行う手段は、前記生成された第2の候補ブロ
ックに含まれる前記要素データの数と前記設定値との比
較を行い、 前記決定する手段は、前記比較結果、前記第2の候補
ブロックに含まれる要 素データの数が前記設定値以上で
あるときに、前記第2の候補ブロックを前記データブロ
ックと決定するパーティショニング装置。
25. A partitioning system according to any one of claims 20 24, further result in said means for determining, when the candidate block decides not to said data blocks, based on the detection result Out of the plurality of processing unit data constituting the circuit data to be inspected, the processing unit data replacing at least one of the plurality of processing unit data included in the candidate block. And a means for generating a second candidate block based on the selected processing unit data, wherein the means for performing the comparison includes: a number of the element data included in the generated second candidate block; Performing a comparison with the set value, wherein the determining unit determines the second candidate as a result of the comparison.
The number of elements data contained in the block the set value or more
At one time, a partitioning device that determines the second candidate block as the data block.
【請求項26】 請求項20から25のいずれかに記載
のパーティショニング装置において、 更に、 前記決定する手段の結果、前記候補ブロックが前記デー
タブロックとして決定されたときに、前記被検査対象
回路データを構成する前記複数の処理単位データのうち
の前記データブロックとして決定された前記候補ブロッ
ク以外の複数の前記処理単位データから複数の前記処理
単位データを選択して前記選択された複数の処理単位デ
ータにより第3の候補ブロックを生成する手段を備え、 前記比較を行う手段は、前記生成された第3の候補ブロ
ックに含まれる前記要素データの数と前記設定値との比
較を行い、 前記決定する手段は、前記比較結果、前記第3の候補
ブロックに含まれる要素データの数が前記設定値以上で
あるときに、前記第3の候補ブロックを前記データブロ
ックと決定するパーティショニング装置。
In partitioning apparatus according to any one of claims 26] according to claim 20 to 25, further means for the determination result, when the candidate block is determined as the data block, wherein the inspection object
The plurality of processing unit data selected from the plurality of processing unit data other than the candidate block determined as the data block among the plurality of processing unit data constituting the circuit data and the selected plurality of processings are performed. Means for generating a third candidate block based on unit data, wherein the means for comparing compares the number of the element data included in the generated third candidate block with the set value; The means for determining includes the third candidate as a result of the comparison.
If the number of element data included in the block is greater than the set value
At one time, a partitioning device that determines the third candidate block as the data block.
【請求項27】 請求項20から26のいずれかに記載
のパーティショニング装置において、更に、 前記生成された候補ブロックに含まれる前記要素データ
の数と、前記ボードに割り当て可能な前記要素データの
最大数を示す最大搭載要素データ数との対比を行う手段
を備え、 前記決定する手段は、前記比較結果、前記要素データ
の数が前記設定値以上であり、かつ前記対比結果、前
記要素データの数が前記最大搭載要素データ数以下であ
るときに、前記候補ブロックを前記データブロックと決
定するパーティショニング装置。
27. From claim 2026Described in any of
In the partitioning equipment ofFurthermore,  The element data included in the generated candidate block
Of the element data that can be assigned to the board
Means to compare with the maximum number of mounted element data indicating the maximum number
Wherein said means for determining comprises said comparingofresult, The element data
Is greater than or equal to the set value, andContrastofresult,Previous
The number of element data is less than the maximum
The candidate block as the data block.
SpecifyPartitioning equipment.
【請求項28】 請求項20から26のいずれかに記載
のパーティショニング装置において、更に、 前記生成された候補ブロックにおける他の前記複数のデ
ータブロックのそれぞれとの間の電気的接続を行うため
の外部信号の数を検出する手段と、 前記検出された前記候補ブロックの前記外部信号の数
と、前記ボードに接続可能な前記外部信号の最大数を示
す最大ボード間信号数との対比を行う手段を備え、 前記決定する手段は、前記比較結果、前記要素データ
の数が前記設定値以上であり、かつ前記対比結果、前
記外部信号の数が前記最大ボード間信号数以下であると
きに、前記候補ブロックを前記データブロックと決定す
パーティショニング装置。
28. From claim 2026Described in any of
In the partitioning equipment ofFurthermore,  The other plurality of data in the generated candidate block
To make electrical connections between each of the data blocks
Means for detecting the number of external signals of the candidate block; and the number of the external signals of the detected candidate block.
Indicates the maximum number of external signals that can be connected to the board.
Means for making a comparison with the maximum number of signals between boards, wherein the means for deciding comprises:ofresult, The element data
Is greater than or equal to the set value, andContrastofresult,Previous
When the number of external signals is equal to or less than the maximum number of signals between boards.
The candidate block is determined as the data block.
ToPartitioning equipment.
【請求項29】 請求項28記載のパーティショニング
装置において、 更に、 前記対比の結果、前記検出された前記候補ブロックの前
記外部信号の数が、前記最大ボード間信号数を超えてい
ると判断した場合に、前記被検査対象の回路データを構
成する前記複数の処理単位データの中から、前記候補ブ
ロックに含まれる前記複数の処理単位データのうちの少
なくとも一の前記処理単位データに代わる前記処理単位
データを選択し、前記選択された前記処理単位データに
より第4の候補ブロックを生成する手段を備え、 前記比較を行う手段は、前記生成された第4の候補ブロ
ックに含まれる前記要素データの数と前記設定値との比
較を行い、 前記決定する手段は、前記比較結果、前記第4の候補
ブロックに含まれる前記要素データの数が前記設定値以
上であるときに、前記第4の候補ブロックを前記データ
ブロックと決定するパーティショニング装置。
29. The partitioning device according to claim 28 , further comprising, as a result of the comparison, determining that the number of the external signals of the detected candidate block exceeds the maximum number of inter-board signals. In the case, the processing unit replacing the processing unit data of at least one of the plurality of processing unit data included in the candidate block from among the plurality of processing unit data configuring the circuit data to be inspected. Means for selecting data and generating a fourth candidate block based on the selected processing unit data, wherein the means for performing the comparison includes the number of the element data included in the generated fourth candidate block. And the set value, and the determining means determines the fourth candidate as a result of the comparison.
The number of the element data included in the block is equal to or less than the set value.
A partitioning device that determines the fourth candidate block as the data block when the above is the case;
【請求項30】 被検査対象の回路データを複数に分割
して前記分割の結果としての複数のデータブロックを生
成するパーティショニング装置であって、 少なくとも一つの要素データを備えた処理単位データを
複数提供する手段と、 前記提供された複数の処理単位データを複数のグループ
に分類して前記分類された結果としての前記複数の処理
単位データを前記被検査対象の回路データとして提供す
る手段と、 前記複数のグループのうちの第1のグループに帰属する
前記複数の処理単位データにそれぞれ含まれる前記要素
データの数を検出する手段と、 前記検出結果に基づいて、前記第1のグループに帰属す
る前記複数の処理単位データから複数の前記処理単位デ
ータを選択して前記選択された前記複数の処理単位デー
タにより候補ブロックを生成する手段と、 前記生成された候補ブロックに含まれる前記要素データ
の数と設定値との比較を行う手段と、 前記比較結果、前記要素データの数が前記設定値以上
であるときに、前記候補ブロックを前記データブロック
決定する手段とを備え 前記分割の結果としての複数のデータブロックのそれぞ
れは、ボードに割り当てられ、 前記比較を行う手段は、前記被検査対象の回路データに
含まれる全ての前記要素データの数を前記複数のデータ
ブロックのそれぞれを割り当てるための全ての前記ボー
ドの数で割った数に対応する平均搭載要素データ数、に
基づいて設定される数を前記設定値とする パーティショ
ニング装置。
30. Object to be inspectedCircuitSplit data into multiple
To generate a plurality of data blocks as a result of the division.
A partitioning device for generating processing unit data including at least one element data.
A plurality of means for providing, a plurality of groups of the provided plurality of processing unit data
The plurality of processes as a result of the classification
Unit data to be inspectedCircuitProvide as data
Means belonging to a first group of the plurality of groups
The element included in each of the plurality of processing unit data
Means for detecting the number of data; and belonging to the first group based on the detection result.
From the plurality of processing unit data
Data for the selected plurality of processing unit data.
Means for generating a candidate block by using the data, and the element data included in the generated candidate block.
Means for comparing the number of data with a set value;ofresult, The number of the element data is equal to or more than the set value
When, The candidate block as the data block
WhendecideWith means, Each of a plurality of data blocks as a result of said division
Is assigned to the board, The means for performing the comparison is based on the circuit data of the inspection target.
The number of all the element data included is
All said boards for assigning each of the blocks
The average number of mounted element data corresponding to the number divided by the number of
The number set based on the above is the set value Partition
Device.
【請求項31】 請求項30記載のパーティショニング
装置において、 更に、 前記決定する手段の結果、前記候補ブロックを前記デー
タブロックとしないと決定した場合に、前記検出結果に
基づいて、前記第1のグループに帰属する前記複数の処
理単位データの中から、前記候補ブロックに含まれる前
記複数の処理単位データのうちの少なくとも一の前記処
理単位データに代わる前記処理単位データを選択し、前
記選択された前記処理単位データにより第2の候補ブロ
ックを生成する手段を備え、 前記比較を行う手段は、前記生成された第2の候補ブロ
ックに含まれる前記要素データの数と前記設定値との比
較を行い、 前記決定を行う手段は、前記比較結果、前記第2の候
補ブロックに含まれる前記要素データの数が前記設定値
以上であるときに、前記第2の候補ブロックを前記デー
タブロックと決定するパーティショニング装置。
31. The partitioning device according to claim 30 , further comprising: when the determining unit determines that the candidate block is not to be the data block, based on the detection result. From among the plurality of processing unit data belonging to a group, the processing unit data that replaces at least one of the plurality of processing unit data included in the candidate block is selected, and the selected processing unit data is replaced with the selected processing unit data. Means for generating a second candidate block based on the processing unit data, wherein the means for comparing compares the number of the element data included in the generated second candidate block with the set value The means for making the determination comprises: as a result of the comparison , the second
The number of the element data included in the complementary block is the set value.
When the above is the case, the partitioning device that determines the second candidate block as the data block.
【請求項32】 請求項30または31に記載のパーテ
ィショニング装置において、 更に、 前記決定する手段の結果、前記候補ブロックを前記デー
タブロックとしないと決定した場合に、前記第1のグル
ープに帰属する前記複数の処理単位データを用いて前記
候補ブロックに代わる第2の候補ブロックを生成できな
いときに、前記第1のグループに帰属する前記複数の処
理単位データの少なくとも一部の処理単位データを前記
複数のグループのうちの第2のグループに帰属させる手
段を備えたパーティショニング装置。
32. In partitioning device according to claim 30 or 31, further result in said means for determining, when the candidate block decides not to said data blocks, belonging to the first group When a second candidate block that replaces the candidate block cannot be generated using the plurality of processing unit data, at least a part of the plurality of processing unit data belonging to the first group is replaced with the plurality of processing unit data. A partitioning device comprising means for belonging to a second group of the groups.
【請求項33】 請求項30から32のいずれかに記載
のパーティショニング装置において、更に、 前記生成された候補ブロックに含まれる前記要素データ
の数と、前記ボードに割り当て可能な前記要素データの
最大数を示す最大搭載要素データ数との対比を行う手段
と、 前記対比の結果、前記候補ブロックに含まれる前記要素
データの数が前記最大搭載要素データ数を超えていると
判断した場合には、前記候補ブロックに含まれる前記複
数の処理単位データのうちの少なくとも一の前記処理単
位データを、前記複数のグループのうちの第2のグルー
プに帰属させる手段を備えたパーティショニング装置。
Claim 3330From32Described in any of
In the partitioning equipment ofFurthermore,  The element data included in the generated candidate block
Of the element data that can be assigned to the board
Means to compare with the maximum number of mounted element data indicating the maximum number
And the element included in the candidate block as a result of the comparison
When the number of data exceeds the maximum mounted element data number
If it is determined, the duplicate included in the candidate block is determined.
At least one of the plurality of processing unit data.
Position data in a second group of the plurality of groups.
Partitioning device with means to attribute to
【請求項34】 請求項30から32のいずれかに記載
のパーティショニング装置において、更に、 前記生成された候補ブロックにおける他の前記複数のデ
ータブロックのそれぞれとの間の電気的接続を行うため
の外部信号の数を検出する手段と、 前記検出された前記候補ブロックの前記外部信号の数
と、前記ボードに接続可能な前記外部信号の最大数を示
す最大ボード間信号数との対比を行う手段と、 前記対比の結果、前記検出された前記候補ブロックの前
記外部信号の数が、前記最大ボード間信号数を超えてい
ると判断した場合に、前記第1のグループに帰属する前
記複数の処理単位データを用いて前記候補ブロックに代
わる第2の候補ブロックを生成できないときに、前記候
補ブロックの少なくとも一の前記処理単位データを、前
記複数のグループのうちの第2のグループに帰属させる
手段を備えたパーティショニング装置。
34. A partitioning system according to any of claims 30 32, further, for electrically connecting between the respective other of said plurality of data blocks in the generated candidate blocks Means for detecting the number of external signals; means for comparing the detected number of external signals of the candidate block with the maximum number of inter-board signals indicating the maximum number of external signals connectable to the board And, as a result of the comparison, when it is determined that the number of the external signals of the detected candidate block exceeds the maximum number of inter-board signals, the plurality of processes belonging to the first group. When a second candidate block that replaces the candidate block cannot be generated using unit data, at least one of the processing unit data of the candidate block is Partitioning apparatus having means for belonging to a second group of the group of.
【請求項35】 請求項32から34のいずれかに記載
のパーティショニング装置において、 前記複数のグループは、階層を形成し、 前記第2のグループに帰属させる手段は、前記第2のグ
ループとして、前記第1のグループよりも前記階層にお
いて上位にあるグループを選択するパーティショニング
装置。
35. In partitioning device according to any of claims 32 34, wherein the plurality of groups form a hierarchy, means for belonging to the second group as the second group, A partitioning device that selects a group higher in the hierarchy than the first group.
【請求項36】 請求項35記載のパーティショニング
装置において、 更に、 前記第1のグループが前記階層において最上位にあるか
否かを判断する手段と、 前記判断の結果、前記第1のグループが前記最上位にあ
ると判断された場合には、前記第2のグループに帰属さ
せる手段に代えて、前記被検査対象の回路データの前記
分割を行うことができない旨を報知する手段を備えたパ
ーティショニング装置。
36. The partitioning device according to claim 35 , further comprising: means for determining whether or not the first group is at the top of the hierarchy, and as a result of the determination, the first group is A party provided with means for notifying that the division of the circuit data to be inspected cannot be performed in place of the means for belonging to the second group when it is determined to be at the highest level. Shoning equipment.
【請求項37】 被検査対象の回路データを複数に分割
して前記分割の結果としての複数のデータブロックを生
成した後に、前記被検査対象の回路データのエミュレー
ションを行うエミュレーション装置であって、 少なくとも一つの要素データを備えた処理単位データを
複数備えて構成されるデータを前記被検査対象の回路
ータとして提供する手段と、 前記被検査対象の回路データを構成する前記複数の処理
単位データにそれぞれ含まれる前記要素データの数を検
出する手段と、 前記検出結果に基づいて、前記被検査対象の回路データ
を構成する前記複数の処理単位データから複数の前記処
理単位データを選択して前記選択された複数の処理単位
データにより候補ブロックを生成する手段と、 前記生成された候補ブロックに含まれる前記要素データ
の数と設定値との比較を行う手段と、 前記比較結果、前記要素データの数が前記設定値以上
であるときに、前記候補ブロックを前記データブロック
決定する手段と、 複数の前記決定された前記データブロックのそれぞれに
並行してデータ処理を行う手段とを備え 前記分割の結果としての複数のデータブロックのそれぞ
れは、ボードに割り当てられ、 前記比較を行う手段は、前記被検査対象の回路データに
含まれる全ての前記要素データの数を前記複数のデータ
ブロックのそれぞれを割り当てるための全ての前記ボー
ドの数で割った数に対応する平均搭載要素データ数、に
基づいて設定される数を前記設定値とする エミュレーシ
ョン装置。
37. An object to be inspectedCircuitSplit data into multiple
To generate a plurality of data blocks as a result of the division.
After the inspection,CircuitEmulate data
An emulation device that performs processing, and converts processing unit data including at least one element data.
A plurality of data to be inspectedCircuitDe
Means to be provided as data, and the object to be inspectedCircuitThe plurality of processes constituting data
Check the number of the element data included in each unit data.
Output means; and the inspection target based on the detection result.Circuitdata
A plurality of processing units from the plurality of processing unit data constituting
A plurality of processing units selected by selecting logical unit data
Means for generating a candidate block from data; and the element data included in the generated candidate block
Means for comparing the number of data with a set value;ofresult, The number of the element data is equal to or more than the set value
When, The candidate block as the data block
WhendecideMeans for each of said plurality of said determined data blocks
Means for performing data processing in parallel., Each of a plurality of data blocks as a result of said division
Is assigned to the board, The means for performing the comparison is based on the circuit data of the inspection target.
The number of all the element data included is
All said boards for assigning each of the blocks
The average number of mounted element data corresponding to the number divided by the number of
The number set based on the above is the set value Emulation
Device.
【請求項38】 被検査対象の回路データを複数に分割38. The circuit data to be inspected is divided into a plurality of pieces.
して前記分割の結果としての複数の回路ブロックを生成To generate a plurality of circuit blocks as a result of the division
するパーティショニング装置であって、Partitioning device, 少なくとも一つのゲートを備えたモジュールを複数備えMultiple modules with at least one gate
て構成される回路データを前記被検査対象の回路データCircuit data composed of the circuit data to be inspected.
として提供する手段と、Means to provide as 前記被検査対象の回路データを構成する前記複数のモジThe plurality of modules constituting the circuit data to be inspected;
ュールにそれぞれ含まれる前記ゲートの数を検出する手For detecting the number of gates contained in each
段と、Steps and 前記検出結果に基づいて、前記被検査対象の回路データBased on the detection result, the circuit data of the inspection object
を構成する前記複数のモジュールから複数の前記モジュA plurality of the modules from the plurality of modules constituting
ールを選択して前記選択された複数のモジュールによりSelect the rule and select the module
新モジュールを生成する手段と、Means for creating a new module; 前記生成された新モジュールに含まれる前記ゲートの数Number of the gates included in the generated new module
と搭載基準ゲート数とAnd the number of reference gates の比較を行う手段と、Means for comparing 前記比較の結果、前記ゲートの数が前記搭載基準ゲートAs a result of the comparison, the number of the gates is
数以上であるときに、前記新モジュールを前記回路ブロIf the number is greater than or equal to
ックと決定する手段とを備え、And means for determining 前記分割の結果としての複数の回路ブロックのそれぞれEach of the plurality of circuit blocks as a result of the division
は、エミュレーションボードに割り当てられ、Is assigned to the emulation board, 前記比較を行う手段は、前記被検査対象の回路データにThe means for performing the comparison is based on the circuit data of the inspection target.
含まれる全ての前記ゲートの数を前記複数の回路ブロッThe number of all the gates included is
クのそれぞれを割り当てるための全ての前記エミュレーAll the emulations for assigning each of the
ションボードの数で割った数に対応する平均搭載ゲートAverage mounted gates corresponding to the number divided by the number of application boards
数以上の数を、前記搭載基準ゲート数とするパーティシThe number of the above-mentioned reference gates
ョニング装置。Device.
JP01237699A 1999-01-20 1999-01-20 Partitioning method and device, and emulation method and device Expired - Fee Related JP3196931B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP01237699A JP3196931B2 (en) 1999-01-20 1999-01-20 Partitioning method and device, and emulation method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01237699A JP3196931B2 (en) 1999-01-20 1999-01-20 Partitioning method and device, and emulation method and device

Publications (2)

Publication Number Publication Date
JP2000207445A JP2000207445A (en) 2000-07-28
JP3196931B2 true JP3196931B2 (en) 2001-08-06

Family

ID=11803565

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01237699A Expired - Fee Related JP3196931B2 (en) 1999-01-20 1999-01-20 Partitioning method and device, and emulation method and device

Country Status (1)

Country Link
JP (1) JP3196931B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4568599B2 (en) * 2004-12-24 2010-10-27 富士通株式会社 Logic circuit dividing method and apparatus
JP6365273B2 (en) * 2014-12-01 2018-08-01 富士通株式会社 Test pattern generation method, test pattern generation program, and test pattern generation apparatus

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
Behrens,D.、外2名、"Hierarchical partitioning"、Computer−Aided Design,1996.ICCAD−96. Digest of Technical Papers.,1996 IEEE/ACM International Conference on 、平成8年、p.470〜477
Ober,U、外2名、"Hierarchical partitioning in a rapid prototyping environment"、Rapid System Prototyping,1996,Proceedings.,Seventh IEEE International Workshop on、平成8年、p.30〜35
Riess,B.M.、"Architecture driven k−way partitioning for multichip modules"、European Design and Test Conference,1995.ED&TC 1995,Proceedings.、平成7年、p.71〜76
Sanchis,L.A.、"Multiple−way network partitioning"、Computers,IEEE Transactions on Volume: 38 1、平成元年、p.62〜81
Vi Chi Chan、外1名、"Hierarchical partitioning for field−programmable systems"、Computer−Aided Design,1997.Digest of Technical Papers.,1997 IEEE/ACM International Conference on、平成9年、p.428〜435

Also Published As

Publication number Publication date
JP2000207445A (en) 2000-07-28

Similar Documents

Publication Publication Date Title
US6272668B1 (en) Method for cell swapping to improve pre-layout to post-layout timing
US6026228A (en) Integrated circuit design method, database apparatus for designing integrated circuit and integrated circuit design support apparatus
US5666289A (en) Flexible design system
US6735742B2 (en) Method for optimizing a cell layout using parameterizable cells and cell configuration data
US6968514B2 (en) Block based design methodology with programmable components
US6574778B2 (en) Block based design methodology
JP3891599B2 (en) Device for automatic insertion of standard cells into an integrated circuit layout.
US5598344A (en) Method and system for creating, validating, and scaling structural description of electronic device
US5231589A (en) Input/output pin assignment method
US6066178A (en) Automated design method and system for synthesizing digital multipliers
US6113647A (en) Computer aided design system and method using hierarchical and flat netlist circuit representations
US20060064680A1 (en) Extensible internal representation of systems with parallel and sequential implementations
US6560571B1 (en) Method and apparatus for prioritizing the order in which checks are performed on a node in an integrated circuit
US6941532B2 (en) Clock skew verification methodology for grid-based design
JP3196931B2 (en) Partitioning method and device, and emulation method and device
US8813018B1 (en) Method and apparatus for automatically configuring memory size
US6260184B1 (en) Design of an integrated circuit by selectively reducing or maintaining power lines of the device
Behjat et al. Integer linear programming models for global routing
JP3193167B2 (en) Logic synthesis system
JP4053969B2 (en) Semiconductor integrated circuit design apparatus and semiconductor integrated circuit design method
US7594212B1 (en) Automatic pin placement for integrated circuits to aid circuit board design
US6983443B2 (en) System and method for placing clock drivers in a standard cell block
JP4855283B2 (en) Semiconductor integrated circuit design equipment
US20030074175A1 (en) Simulation by parts method for grid-based clock distribution design
JP2977422B2 (en) Product specification estimation method, logic circuit classification / evaluation device, product specification database creation device, product specification estimation device, and automatic logic circuit hierarchy generation device

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20010511

LAPS Cancellation because of no payment of annual fees