JP3373296B2 - Logic simulation device for integrated circuits - Google Patents

Logic simulation device for integrated circuits

Info

Publication number
JP3373296B2
JP3373296B2 JP12956094A JP12956094A JP3373296B2 JP 3373296 B2 JP3373296 B2 JP 3373296B2 JP 12956094 A JP12956094 A JP 12956094A JP 12956094 A JP12956094 A JP 12956094A JP 3373296 B2 JP3373296 B2 JP 3373296B2
Authority
JP
Japan
Prior art keywords
data
flag
error message
cell
output
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
JP12956094A
Other languages
Japanese (ja)
Other versions
JPH07311788A (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.)
Dai Nippon Printing Co Ltd
Original Assignee
Dai Nippon Printing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dai Nippon Printing Co Ltd filed Critical Dai Nippon Printing Co Ltd
Priority to JP12956094A priority Critical patent/JP3373296B2/en
Publication of JPH07311788A publication Critical patent/JPH07311788A/en
Application granted granted Critical
Publication of JP3373296B2 publication Critical patent/JP3373296B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は集積回路用論理シミュレ
ーション装置、特に、エラーメッセージに対するフィル
タリング機能を有する論理シミュレーション装置に関す
る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a logic simulation device for an integrated circuit, and more particularly to a logic simulation device having an error message filtering function.

【0002】[0002]

【従来の技術】半導体集積回路は、大規模な回路を微細
化技術によって小さなスペースに集積したものであり、
その内部構造は非常に複雑である。近年、このような集
積回路の設計は、コンピュータを利用した効率的な方法
によって行われるようになってきている。集積回路設計
において欠かせない技術は、論理シミュレーションの技
術である。通常、集積回路の設計が行われた段階から、
実際の半導体チップを製造する段階に至るまでに、幾度
もの論理シミュレーションが行われ、不都合な箇所につ
いては、その都度、設計変更が行われることになる。
2. Description of the Related Art A semiconductor integrated circuit is a large-scale circuit integrated in a small space by a miniaturization technique.
Its internal structure is very complicated. In recent years, such integrated circuits have been designed by an efficient method using a computer. The technology essential for integrated circuit design is the logic simulation technology. Normally, from the stage where the integrated circuit was designed,
Up to the stage of actually manufacturing a semiconductor chip, logic simulation is performed many times, and inconvenient portions, design changes are made each time.

【0003】一般的な論理シミュレーション装置は、汎
用のコンピュータに論理シミュレーション用のソフトウ
エアを組み込むことにより構成され、シミュレーション
の対象となる集積回路についての設計データに基づい
て、この集積回路をコンピュータ上で疑似的に動作さ
せ、その結果を出力するものである。すなわち、この集
積回路に所定の入力信号を与えたときに、得られるであ
ろうと予測される出力信号が、論理シミュレーション装
置によって模擬的に作り出されることになる。通常は、
時間的に変化する入力信号に対して、時間的に変化する
出力信号が作り出される。また、一般的な論理シミュレ
ーション装置には、所定のエラーメッセージを出力する
機能も備わっている。すなわち、論理回路の内部で所定
の設計条件に違背した動作が発生すると、これをエラー
として検出し、エラーの内容とともに、エラー発生箇所
および発生時間を示すメッセージが出力される。通常
は、ディスプレイ装置の画面上にエラーメッセージが表
示されたり、プリンタによって紙面上にエラーメッセー
ジが印字されたりする。設計者は、このエラーメッセー
ジを手掛かりに、設計に欠陥があることを認識すること
ができ、必要があれば設計変更などの対策を講じること
になる。
A general logic simulation apparatus is constructed by incorporating software for logic simulation into a general-purpose computer, and based on design data of an integrated circuit to be simulated, this integrated circuit is executed on a computer. It is operated in a pseudo manner and the result is output. That is, an output signal predicted to be obtained when a predetermined input signal is given to this integrated circuit is simulated by the logic simulation device. Normally,
A time-varying output signal is produced for a time-varying input signal. A general logic simulation device also has a function of outputting a predetermined error message. That is, when an operation that violates a predetermined design condition occurs inside the logic circuit, this is detected as an error, and a message indicating the error occurrence location and the occurrence time is output together with the error content. Usually, an error message is displayed on the screen of a display device, or an error message is printed on the paper by a printer. The designer can recognize that there is a defect in the design based on this error message, and will take measures such as design change if necessary.

【0004】[0004]

【発明が解決しようとする課題】論理シミュレーション
の結果として発生するエラーは、設計変更などを行って
ゆくうちに徐々に解消されてゆく。しかし、設計の初期
段階などでは、至るところであらゆるエラーが発生する
傾向にあり、論理シミュレーションの結果は、多数のエ
ラーメッセージで埋まってしまう。もちろん、こうして
出力された個々のエラーメッセージは、設計変更などの
対策を講じる上で重要な情報を与える役割を果たすが、
同じエラーメッセージであっても、重大なエラーの発生
を示すメッセージから軽微なエラーの発生を示すメッセ
ージまで、種々のエラーメッセージが存在する。軽微な
エラーメッセージの場合、特に設計変更を行わなくても
回路全体の動作に支障は起こらず、無視してしまっても
かまわないことが多い。これに対して、重大なエラーメ
ッセージの場合、根本的な回路設計を変更する必要が生
じることがあり、これを見落としてしまったら、後の工
程で重大な支障を来すおそれがある。
The error generated as a result of the logic simulation is gradually eliminated as the design is changed. However, in the initial stage of design, all errors tend to occur everywhere, and the result of the logic simulation is filled with many error messages. Of course, the individual error messages output in this way serve to provide important information for taking measures such as design changes, but
Even with the same error message, there are various error messages from a message indicating the occurrence of a serious error to a message indicating the occurrence of a minor error. In the case of a minor error message, the operation of the entire circuit will not be affected even if no design change is made, and it can be safely ignored. On the other hand, in the case of a serious error message, it may be necessary to change the fundamental circuit design, and if it is overlooked, it may cause a serious trouble in a later process.

【0005】ところが、従来の論理シミュレーション装
置では、このような種々のエラーメッセージを区別なく
すべて出力してしまうため、多数の軽微なエラーメッセ
ージによって、重大なエラーメッセージが埋もれてしま
い、重大なエラーメッセージを見落としてしまうという
ミスが発生する可能性が高かった。また、論理シミュレ
ーションの結果自体も見づらいものになっていた。
However, in the conventional logic simulation apparatus, since all of these various error messages are output without distinction, a large number of minor error messages cover up a serious error message, and a serious error message is buried. There was a high possibility that the mistake of overlooking the item would occur. Also, the result of the logical simulation itself was difficult to see.

【0006】そこで本発明は、必要のないエラーメッセ
ージについては、これをマスクして出力させないように
するフィルタリング機能をもった集積回路用論理シミュ
レーション装置を提供することを目的とする。
Therefore, an object of the present invention is to provide a logic simulation device for an integrated circuit having a filtering function for masking unnecessary error messages so that they are not output.

【0007】[0007]

【課題を解決するための手段】[Means for Solving the Problems]

(1) 本発明の第1の態様は、集積回路について、所定
の設計データに基づいて論理シミュレーションを行う集
積回路用論理シミュレーション装置において、シミュレ
ーションの対象となる集積回路に所定の入力信号を与え
たときに、この集積回路から出力されるであろう所定の
出力信号もしくは所定のエラーメッセージを行単位の文
字列データとして出力する論理シミュレータ部と、この
論理シミュレータ部から出力される文字列データの1行
分を格納することができるデータセルをn個分並べるこ
とにより構成され、第1段目のデータセルから第n段目
のデータセルまで一連の順序をもった段階が定義された
データ格納部と、各データセルにそれぞれ対応して定義
されたフラグセルをn個分並べることにより構成され、
第1段目のフラグセルから第n段目のフラグセルまで一
連の順序をもった段階が定義されたフラグ格納部と、第
n段目のデータセル内のデータをデータ格納部から出力
させ、第1段目〜第(n−1)段目のデータセル内の各
データをそれぞれ第2段目〜第n段目のデータセルに移
し、論理シミュレータ部から出力された一行分のデータ
を第1段目のデータセル内に取り込む、という1段分の
データ転送処理と、第n段目のフラグセル内のフラグを
フラグ格納部から出力させ、第1段目〜第(n−1)段
目のフラグセル内の各フラグをそれぞれ第2段目〜第n
段目のフラグセルに移し、非マスク状態を示すフラグを
第1段目のフラグセル内に立てる、という1段分のフラ
グ転送処理と、を同期させて行う転送処理部と、論理シ
ミュレータ部が出力する種々のエラーメッセージのう
ち、マスクする必要がある個々のエラーメッセージにつ
いて、当該エラーメッセージに含まれる所定のキーワー
ドと、当該エラーメッセージを構成する文字列データが
占める行範囲と、当該エラーメッセージに含まれる所定
のパラーメータがとるべき所定のマスク条件と、を設定
する条件設定部と、チェックポイントとして予め設定さ
れた第k番目のデータセルに格納されている1行分の文
字列データ内に、条件設定部で設定されたキーワードが
含まれているか否かを検査し、含まれていた場合には、
このキーワードを含むエラーメッセージについて、条件
設定部に設定された行範囲を参照することにより、この
エラーメッセージが格納されているデータセルを特定
し、この特定されたデータセルに格納されているデータ
と条件設定部に設定された所定のマスク条件とを比較す
ることにより、このエラーメッセージをマスクすべきか
否かを判断し、マスクすべきとの判断が得られたら、特
定されたデータセルに対応するフラグセルにマスク状態
を示すフラグを立てる処理を行うマスク判断部と、フラ
グ格納部から出力されたフラグが非マスク状態を示すフ
ラグであったときのみ、このフラグに同期してデータ格
納部から出力されたデータを、最終的に提示すべきデー
タとして出力するマスク実行部と、を設けたものであ
る。
(1) According to a first aspect of the present invention, in a logic simulation device for an integrated circuit, which performs a logic simulation on an integrated circuit based on predetermined design data, a predetermined input signal is applied to the integrated circuit to be simulated. Sometimes, a logic simulator unit that outputs a predetermined output signal or a predetermined error message that may be output from this integrated circuit as line-by-line character string data, and 1 of the character string data output from this logical simulator unit. A data storage unit configured by arranging n data cells capable of storing rows and defining a series of steps from the first-stage data cell to the n-th data cell And n flag cells defined corresponding to each data cell are arranged,
A flag storage unit in which stages having a series of orders from the flag cell of the first stage to the flag cell of the nth stage is defined, and the data in the data cell of the nth stage is output from the data storage unit, The data in the data cells in the stages (n-1) to (n-1) are transferred to the data cells in the stages 2 to n, and the data for one row output from the logic simulator section is transferred to the first stage. The data transfer processing for one stage of fetching in the data cell of the first stage, the flag in the flag cell of the nth stage are output from the flag storage unit, and the flag cell of the first to (n-1) th stages Each flag in the second to nth stages
The transfer processing unit that performs the one-stage flag transfer process of shifting to the flag cell of the first stage and setting the flag indicating the unmasked state in the flag cell of the first stage and the logic simulator unit output Among various error messages, for each error message that needs to be masked, a predetermined keyword included in the error message, a line range occupied by the character string data forming the error message, and the error message are included in the error message. A condition setting section for setting a predetermined mask condition that a predetermined parameter should take, and a condition setting in the character string data for one line stored in the kth data cell preset as a checkpoint. Check whether the keyword set in the section is included, and if it is included,
For the error message that contains this keyword, identify the data cell that stores this error message by referring to the line range that is set in the condition setting section, and specify the data cell that is stored in this identified data cell. By comparing with a predetermined mask condition set in the condition setting unit, it is determined whether or not this error message should be masked, and if it is determined that the error message should be masked, it corresponds to the specified data cell. Only when the flag output from the flag storage unit and the mask determination unit that sets the flag indicating the masked state in the flag cell is the flag indicating the non-masked state, the flag is output from the data storage unit in synchronization with this flag. And a mask execution unit that outputs the data as data to be finally presented.

【0008】(2) 本発明の第2の態様は、上述の第1
の態様に係る集積回路用論理シミュレーション装置にお
いて、マスク判断部における検査によって、第k番目の
データセルに格納されている1行分の文字列データ内
に、条件設定部で設定されたキーワードが含まれている
ことが判明したときには、転送処理部が、このキーワー
ドを含むエラーメッセージの最終行が第(k+1)番目
のデータセルにくるまでに必要な段数分のデータ転送処
理およびフラグ転送処理を実行するようにしたものであ
る。
(2) A second aspect of the present invention is the above-mentioned first aspect.
In the logic simulation device for an integrated circuit according to the aspect of the present invention, the keyword set by the condition setting unit is included in the character string data for one row stored in the kth data cell by the inspection in the mask determination unit. If it is found that the error message including this keyword has reached the (k + 1) th data cell, the transfer processing unit executes the data transfer processing and the flag transfer processing for the number of stages required. It is something that is done.

【0009】(3) 本発明の第3の態様は、上述の第1
または第2の態様に係る集積回路用論理シミュレーショ
ン装置において、条件設定部に設定されるマスク条件と
して、エラー発生箇所および/またはエラー発生時間を
用い、エラーメッセージ中のエラー発生箇所あるいはエ
ラー発生時間を示す情報の位置を、キーワードが含まれ
ている行に対する相対位置として設定するようにしたも
のである。
(3) A third aspect of the present invention relates to the above-mentioned first aspect.
Alternatively, in the logic simulation apparatus for an integrated circuit according to the second aspect, the error occurrence location and / or the error occurrence time is used as the mask condition set in the condition setting unit, and the error occurrence location or the error occurrence time in the error message is used. The position of the information to be shown is set as a relative position with respect to the line containing the keyword.

【0010】[0010]

【作 用】本発明に係る集積回路用論理シミュレーショ
ン装置では、論理シミュレータ部から出力された文字列
データは、データ格納部を通過して出力されることにな
る。このデータ格納部内には、単位行の文字列データを
格納することができるデータセルがn段階用意されてお
り、いわゆるFIFO(First In First Out)の形式
で、第1段目から入力された文字列データが1段ずつ順
次転送され、第n段目から出力される。一方、条件設定
部には、マスクすべきエラーメッセージに含まれるキー
ワードが設定されている。データ格納部内を転送される
文字列データに、このキーワードが発見されると、この
キーワードを含むエラーメッセージについてパラーメー
タが調べられ、このパラーメータが所定のマスク条件に
合致していると、このエラーメッセージに対応する文字
列データにマスク状態を示すフラグが立てられる。こう
して、論理シミュレータ部から出力された文字列データ
のうち、マスクすべきデータに対しては、FIFOの形
式のデータセルを通過する過程において、マスク状態を
示すフラグが立てられることになる。したがって、この
FIFOの形式のデータ格納部から出力された文字列デ
ータのうち、マスク状態を示すフラグが立てられたもの
をマスクして出力しないようにすれば、必要のないエラ
ーメッセージについては、これをマスクして出力させな
いようにするフィルタリング機能をもった集積回路用論
理シミュレーション装置が実現できる。
[Operation] In the logic simulation device for an integrated circuit according to the present invention, the character string data output from the logic simulator section is output after passing through the data storage section. In this data storage unit, there are n stages of data cells capable of storing the character string data of a unit row, and the characters input from the first stage in the so-called FIFO (First In First Out) format. The column data is sequentially transferred one stage at a time and is output from the nth stage. On the other hand, the keyword included in the error message to be masked is set in the condition setting section. When this keyword is found in the character string data transferred in the data storage, the parameter is checked for the error message containing this keyword, and when this parameter meets the specified mask condition, this error message is displayed. A flag indicating a masked state is set in the corresponding character string data. In this way, of the character string data output from the logic simulator unit, a flag indicating a masking state is set for the data to be masked in the process of passing through the data cell of the FIFO format. Therefore, if the character string data output from the data storage unit of this FIFO format is masked so as not to be output, the error message not necessary It is possible to realize a logic simulation device for an integrated circuit having a filtering function that masks and does not output.

【0011】[0011]

【実施例】以下、本発明を図示する実施例に基づいて説
明する。図1は、本発明の一実施例に係る集積回路用論
理シミュレーション装置の基本構成を示すブロック図で
ある。この論理シミュレーション装置の主たる構成要素
は、論理シミュレータ部10、データ格納部20、フラ
グ格納部30、転送処理部40、条件設定部50、マス
ク判断部60、マスク実行部70、である。これらの構
成要素のうち、論理シミュレータ部10は、従来の一般
的な論理シミュレーション装置をそのまま利用すること
ができる。すなわち、この論理シミュレータ部10は、
集積回路について、所定の設計データに基づいて論理シ
ミュレーションを行う装置であって、シミュレーション
の対象となる集積回路に所定の入力信号を与えたとき
に、この集積回路から出力されるであろう所定の出力信
号もしくは所定のエラーメッセージを行単位の文字列デ
ータとして出力する機能を有する。本発明の特徴は、こ
のような従来一般に利用されている論理シミュレーショ
ン装置(論理シミュレータ部10)に、フィルタリング
機能をもたせるために、データ格納部20、フラグ格納
部30、転送処理部40、条件設定部50、マスク判断
部60、マスク実行部70、という新規な構成要素を付
加した点にある。
The present invention will be described below based on illustrated embodiments. FIG. 1 is a block diagram showing the basic configuration of a logic simulation apparatus for an integrated circuit according to an embodiment of the present invention. The main constituent elements of this logic simulation apparatus are a logic simulator unit 10, a data storage unit 20, a flag storage unit 30, a transfer processing unit 40, a condition setting unit 50, a mask determination unit 60, and a mask execution unit 70. Of these components, the logic simulator unit 10 can use the conventional general logic simulation device as it is. That is, the logic simulator unit 10
A device for performing a logic simulation on an integrated circuit based on predetermined design data, and when a predetermined input signal is given to the integrated circuit to be simulated, a predetermined circuit that will be output from this integrated circuit. It has a function of outputting an output signal or a predetermined error message as character string data in units of lines. The feature of the present invention is that the data storage unit 20, the flag storage unit 30, the transfer processing unit 40, and the condition setting are provided in order to allow the logic simulation device (the logic simulator unit 10) that has been generally used in the past to have a filtering function. The point is that new constituent elements such as a section 50, a mask determination section 60, and a mask execution section 70 are added.

【0012】論理シミュレータ部10に、所定の論理値
を入力信号として与えると、これに応じた所定の論理値
が出力信号として得られる。このとき、何らかのエラー
が生じると、出力信号とともにエラーメッセージが出力
されることになる。このような出力信号やエラーメッセ
ージは、通常、行単位の文字列データとして論理シミュ
レータ部10から出力される。この行単位の各文字列デ
ータは、データ格納部20を通ってマスク実行部70へ
と送られることになる。データ格納部20は、論理シミ
ュレータ部10から出力される文字列データの1行分を
格納することができるデータセル(図1において、「デ
ータ」という文字が記載されているn個の箱)から構成
されている。このデータセルは全部でn個用意されてお
り、第1段目のデータセルから第n段目のデータセルま
で一連の順序をもった段階が定義されている。また、フ
ラグ格納部30は、各データセルにそれぞれ対応して定
義されたn個のフラグセル(図1において、「フラグ」
という文字が記載されているn個の箱)から構成されて
おり、データセルと同様に、第1段目のフラグセルから
第n段目のフラグセルまで一連の順序をもった段階が定
義されている。
When a predetermined logic value is given to the logic simulator unit 10 as an input signal, a predetermined logic value corresponding to this is obtained as an output signal. At this time, if any error occurs, an error message will be output together with the output signal. Such output signals and error messages are normally output from the logic simulator unit 10 as character string data in units of lines. Each character string data in units of rows is sent to the mask execution section 70 through the data storage section 20. The data storage unit 20 starts from a data cell (n boxes in which the characters “data” are described in FIG. 1) capable of storing one line of the character string data output from the logic simulator unit 10. It is configured. A total of n data cells are prepared, and stages having a series of order from the first-stage data cell to the n-th stage data cell are defined. The flag storage unit 30 also includes n flag cells (“flag” in FIG. 1) defined corresponding to each data cell.
And n boxes in which the letters are written) are defined, and similarly to the data cells, stages having a series of orders from the flag cell of the first stage to the flag cell of the nth stage are defined. .

【0013】転送処理部40は、データセルおよびフラ
グセルに格納されているデータおよびフラグを、次の段
(図1における1つ上の段)へと転送する処理を行う。
より具体的に説明すれば、この転送処理部40の行う1
段分の転送処理は、次の〜の処理である。 第n段目のデータセル内のデータをマスク実行部7
0へと出力させ、同時に、第n段目のフラグセル内のフ
ラグをマスク実行部70へと出力させる。 第1段目〜第(n−1)段目のデータセル内の各デ
ータをそれぞれ第2段目〜第n段目のデータセルに移
し、同時に、第1段目〜第(n−1)段目のフラグセル
内の各フラグをそれぞれ第2段目〜第n段目のフラグセ
ルに移す(要するに、各データおよび各フラグを、それ
ぞれ1つ上の段に移す)。 論理シミュレータ部10から出力された一行分のデ
ータを第1段目のデータセル内に取り込み、非マスク状
態を示すフラグを第1段目のフラグセル内に立てる。
The transfer processing section 40 performs a process of transferring the data and the flag stored in the data cell and the flag cell to the next stage (the stage immediately above in FIG. 1).
To be more specific, the transfer processing unit 40 executes 1
The transfer process for the stage is the following processes from to. The data in the data cell of the nth row is masked by the mask execution unit 7
At the same time, the flag in the flag cell of the nth stage is output to the mask executing section 70. The respective data in the data cells in the first to (n-1) th stages are moved to the data cells in the second to nth stages, respectively, and at the same time, the first to the (n-1) th stages. The respective flags in the flag cells of the second stage are moved to the flag cells of the second to nth stages (in short, the respective data and the respective flags are moved to the next higher stage). The data for one row output from the logic simulator unit 10 is fetched into the first-stage data cell, and a flag indicating the non-masked state is set in the first-stage flag cell.

【0014】要するに、論理シミュレータ部10から出
力された一行分のデータは、第1段目のデータセルから
第n段目のデータセルまで順次転送され、マスク実行部
70に与えられることになる。このとき、各データに1
対1に対応するようにフラグが定義され、データの転送
と同時にフラグも転送されることになる。このフラグ
は、そのデータをマスクするか否かを示すためのもので
あり、第1段目のデータセルに取り込まれたデータにつ
いては、とりあえず非マスクフラグ「0」が付与される
ことになる。そして、後述するように、第k段目に定義
されたチェックポイント付近を通過するときに、マスク
判断部60による判断が行われ、ここで「マスクすべ
き」と判断されたデータについては、非マスクフラグ
「0」がマスクフラグ「1」に変えられることになる。
In short, the data for one row output from the logic simulator unit 10 is sequentially transferred from the data cells of the first stage to the data cells of the nth stage and is given to the mask executing unit 70. At this time, 1 for each data
The flag is defined so as to correspond to the pair 1, and the flag is also transferred at the same time when the data is transferred. This flag is for indicating whether or not to mask the data, and the non-mask flag "0" is added to the data taken into the first-stage data cell for the time being. Then, as will be described later, when passing the vicinity of the checkpoint defined in the k-th stage, the mask determination unit 60 makes a determination, and the data determined to be “masked” is not The mask flag “0” is changed to the mask flag “1”.

【0015】条件設定部50は、マスク判断部60によ
る判断の条件を設定する部分である。ここでは、論理シ
ミュレータ部10が出力する種々のエラーメッセージの
うち、マスクする必要があるいくつかのエラーメッセー
ジA,B,Cについて、当該エラーメッセージに含まれ
る所定のキーワード51と、当該エラーメッセージを構
成する文字列データが占める行範囲52と、当該エラー
メッセージに含まれる所定のパラーメータがとるべき所
定のマスク条件53と、が設定される。マスク判断部6
0は、この条件設定部50内の設定条件に基づいて、次
のような判断処理を行う。まず、チェックポイントとし
て予め設定された第k番目のデータセルに格納されてい
る1行分の文字列データ内に、キーワード51が含まれ
ているか否かを検査する。もしキーワード51が含まれ
ていたら、このキーワード51を含むエラーメッセージ
について、行範囲52を参照することにより、このエラ
ーメッセージが格納されているデータセルを特定し、こ
の特定されたデータセルに格納されているデータと所定
のマスク条件53とを比較することにより、このエラー
メッセージをマスクすべきか否かを判断し、マスクすべ
きとの判断が得られたら、特定されたデータセルに対応
するフラグセルにマスクフラグ「1」を立てる処理を行
うのである。なお、この判断処理については、後に具体
例に即して詳述する。
The condition setting section 50 is a section for setting conditions for the judgment by the mask judgment section 60. Here, among the various error messages output by the logic simulator unit 10, for some error messages A, B, and C that need to be masked, the predetermined keyword 51 included in the error message and the error message are described. A line range 52 occupied by the constituent character string data and a predetermined mask condition 53 to be taken by a predetermined parameter included in the error message are set. Mask determination unit 6
0 performs the following determination processing based on the setting conditions in the condition setting unit 50. First, it is checked whether or not the keyword 51 is included in the character string data for one row stored in the kth data cell set in advance as a checkpoint. If the keyword 51 is included, by referring to the row range 52 for the error message including the keyword 51, the data cell in which the error message is stored is specified, and the data cell is stored in the specified data cell. It is determined whether or not this error message should be masked by comparing the specified data with a predetermined mask condition 53, and if it is determined that the error message should be masked, the flag cell corresponding to the specified data cell is selected. The process of setting the mask flag “1” is performed. The determination process will be described in detail later with reference to a specific example.

【0016】マスク実行部70では、最終的なマスク処
理が実行される。このマスク実行部70には、第n段目
のデータセルからのデータと、第n段目のフラグセルか
らのフラグと、が同時に与えられる。そして、与えられ
たフラグが非マスクフラグ「0」であったときには、こ
れに同期して与えられたデータを、最終的に提示すべき
データとして出力し、与えられたフラグがマスクフラグ
「1」であったときには、与えられたデータをマスクし
て出力しない。別言すれば、非マスクフラグ「0」が付
与されたデータだけがマスク実行部70から出力され、
マスクフラグ「1」が付与されたデータはマスクされて
出力されないことになる。かくして、フィルタリング機
能をもったエラーメッセージの出力が可能になる。
The mask execution unit 70 executes the final mask processing. The mask execution unit 70 is simultaneously supplied with the data from the n-th stage data cell and the flag from the n-th stage flag cell. When the given flag is the non-mask flag “0”, the data given in synchronization with this is output as the data to be finally presented, and the given flag is the mask flag “1”. If it is, the given data is masked and not output. In other words, only the data to which the non-mask flag “0” is added is output from the mask execution unit 70,
The data to which the mask flag “1” is added is masked and is not output. Thus, it becomes possible to output an error message having a filtering function.

【0017】以上、この論理シミュレーション装置の基
本構成を説明したが、実際には、これらの各構成要素
は、コンピュータを利用して実現される。たとえば、デ
ータ格納部20やフラグ格納部30は、コンピュータ内
のRAMなどの一時記憶装置を利用して構成でき、条件
設定部50は、コンピュータに接続された磁気ディスク
などの記憶装置を利用して構成できる。また、転送処理
部40、マスク判断部60、マスク実行部70、といっ
た各要素は、このコンピュータのCPUおよびこのCP
Uにそれぞれの動作を実行させるためのソフトウエアに
よって実現できる。
Although the basic configuration of the logic simulation apparatus has been described above, each of these components is actually realized by using a computer. For example, the data storage unit 20 and the flag storage unit 30 can be configured by using a temporary storage device such as a RAM in the computer, and the condition setting unit 50 uses a storage device such as a magnetic disk connected to the computer. Can be configured. Further, each element such as the transfer processing unit 40, the mask determination unit 60, and the mask execution unit 70 is a CPU of this computer and this CP.
It can be realized by software for causing U to execute each operation.

【0018】続いて、具体例に即して、この論理シミュ
レーション装置の動作を詳述する。ここでは、論理シミ
ュレータ部10から、図2に示すような出力が得られた
場合を例にとって説明する。前述したように、論理シミ
ュレータ部10は、出力信号およびエラーメッセージを
行単位の文字列データとして出力する機能を有する。図
2において、左欄に「行数」なる見出しで示す数値は、
論理シミュレータ部10から実際に出力されるデータで
はなく、説明の便宜上付与した行番号である。したがっ
て、実際に出力されるデータは、第1行目では「0
0000」、第2行目では「100 0011」とい
ったデータであり、第7行目では「#time = 5
30 ns.」といったデータである。ここで、行頭に
#が付与されたデータはエラーメッセージであり、行頭
に@が付与されたデータ(第24行目)は終端文字列で
あり、その他のデータは出力信号である。各出力信号の
前半の数値は時刻(time)を示しており、後半の数
値は出力論理値(OUT)を示している。たとえば、第
1行目の「0 0000」なるデータは、時刻0ns
において、出力論理値「0000」が得られ、第2行目
の「100 0011」なるデータは、時刻100n
sにおいて、出力論理値「0011」が得られたことを
示している。この実施例では、出力論理値は4ビットの
信号として得られ、時間とともに変化している。
Next, the operation of the logic simulation apparatus will be described in detail with reference to a concrete example. Here, a case where an output as shown in FIG. 2 is obtained from the logic simulator unit 10 will be described as an example. As described above, the logic simulator unit 10 has a function of outputting the output signal and the error message as character string data in units of lines. In Figure 2, the number shown in the left column under the heading "Number of lines" is
It is not the data actually output from the logic simulator unit 10, but the line number given for convenience of explanation. Therefore, the data actually output is "0" in the first line.
0000 ”, data such as“ 100 0011 ”in the second line, and“ # time = 5 ”in the seventh line.
30 ns. Data such as ". Here, the data with # added to the beginning of the line is an error message, the data with @ added to the beginning of the line (24th line) is the end character string, and the other data is the output signal. The numerical value of the first half of each output signal shows the time (time), and the numerical value of the latter half shows the output logical value (OUT). For example, the data "0000" in the first line is the time 0ns.
, The output logical value "0000" is obtained, and the data "100 0011" on the second line is the time 100n.
In s, the output logical value “0011” is obtained. In this embodiment, the output logic value is obtained as a 4-bit signal and changes with time.

【0019】論理シミュレーションの対象となる集積回
路において、エラーが生じなければ、論理シミュレータ
部10は、図2の第1〜6行目に示すような出力信号の
みを出力するが、エラーが生じた場合には、その都度、
図2の第7〜9行目,第12〜14行目,第19〜21
行目に示すようなエラーメッセージ1,2,3を出力す
ることになる。また、論理シミュレーションのすべての
過程が終了すると、図2の第24行目に示すような終端
文字列「@end」を出力することになる。このエラー
メッセージや終端文字列のフォーマットは、用いる論理
シミュレータ部10によって様々であるが、この図2に
示す例では、エラーメッセージ1,2,3はいずれも3
行でひとまとまりのエラーメッセージとなっており、最
初の行がエラー発生時間を示し、中央の行がエラーの種
類を示し、最後の行がエラー発生箇所を示している。た
とえば、エラーメッセージ1の最初の行(第7行目)
は、エラー発生時間が、時刻530nsの時点であるこ
とを示しており、中央の行(第8行目)は、「Setup vi
olation 」という種類のエラーであることを示してお
り、最後の行(第9行目)は、エラー発生箇所が、イン
スタンス名「U1」なる素子の「A[3]」なるピンで
あることを示している。また、エラーメッセージ2の最
初の行(第12行目)は、エラー発生時間が、時刻73
0nsの時点であることを示しており、中央の行(第1
3行目)は、「address unknown 」という種類のエラー
であることを示しており、最後の行(第14行目)は、
エラー発生箇所が、インスタンス名「U2」なる素子の
「A[0]」なるピンであることを示している。同様
に、エラーメッセージ3の最初の行(第19行目)は、
エラー発生時間が、時刻1150nsの時点であること
を示しており、中央の行(第20行目)は、「Setup vi
olation 」という種類のエラーであることを示してお
り、最後の行(第21行目)は、エラー発生箇所が、イ
ンスタンス名「U2」なる素子の「A[3]」なるピン
であることを示している。
If no error occurs in the integrated circuit which is the object of the logic simulation, the logic simulator section 10 outputs only the output signals as shown in the first to sixth lines of FIG. 2, but the error occurs. In each case,
2nd to 9th lines, 12th to 14th lines, 19th to 21st lines in FIG.
The error messages 1, 2, and 3 shown in the line are output. When all the steps of the logic simulation are completed, the termination character string "@end" as shown in the 24th line of FIG. 2 is output. The format of the error message and the termination character string varies depending on the logic simulator unit 10 used, but in the example shown in FIG. 2, the error messages 1, 2, and 3 are all 3
The line is a set of error messages, the first line shows the error occurrence time, the center line shows the error type, and the last line shows the error occurrence point. For example, the first line (7th line) of error message 1
Indicates that the error occurrence time is at the time of 530 ns, and the middle line (8th line) indicates “Setup vi
"Olation", and the last line (9th line) shows that the error location is the pin "A [3]" of the element with instance name "U1". Shows. The first line (12th line) of the error message 2 indicates that the error occurrence time is the time 73
It indicates that the time is 0 ns, and the middle row (first
The third line) indicates that the type of error is "address unknown", and the last line (14th line) is
It indicates that the error occurrence location is the pin "A [0]" of the element having the instance name "U2". Similarly, the first line (19th line) of error message 3 is
This indicates that the error occurrence time is at the time of 1150 ns, and the middle line (20th line) shows "Setup vi
"Olation", the last line (21st line) shows that the error location is the pin "A [3]" of the element with instance name "U2". Shows.

【0020】ここで、エラーメッセージ1および3は、
いずれも「Setup violation 」という同種類のエラーメ
ッセージであり、ここでは、このタイプを「エラーメッ
セージA」と呼ぶことにする。一方、エラーメッセージ
2は、「address unknown 」という別な種類のエラーメ
ッセージであり、ここでは、このタイプを「エラーメッ
セージB」と呼ぶことにする。エラーメッセージ1およ
び3は、同じエラーメッセージAに属するものである
が、エラー発生時間とエラー発生箇所において異なって
いることになる。実際には、より多くの種類のエラーメ
ッセージが用意されており、出力信号に混在して多数の
エラーメッセージが出力されることになる。しかしなが
ら、これらエラーメッセージには、重大なものと軽微な
ものとが混在しており、これらすべてを区別なく出力し
てしまうと、重大なエラーメッセージが軽微なエラーメ
ッセージによって埋もれてしまい、見落とされてしまう
危険性があることは既に述べたとおりである。本発明に
係るフィルタリング機能は、軽微なエラーメッセージに
ついては、これをマスクして出力させないようにし、エ
ラーメッセージを選択的に出力させるためのものであ
る。
Here, the error messages 1 and 3 are
All are the same type of error message as "Setup violation", and this type is called "error message A" here. On the other hand, the error message 2 is another type of error message called "address unknown", and this type is called "error message B" here. Although the error messages 1 and 3 belong to the same error message A, the error occurrence time and the error occurrence location are different. In reality, more kinds of error messages are prepared, and a large number of error messages are output in a mixed manner in the output signal. However, these error messages include both serious ones and minor ones, and if all of them are output without distinction, the serious error messages will be overwritten by the minor error messages and will be overlooked. As mentioned above, there is a risk that it will happen. The filtering function according to the present invention masks a minor error message so that it is not output and selectively outputs the error message.

【0021】それでは、図1に示す論理シミュレーショ
ン装置の動作を、図3の流れ図に基づいて詳述する。な
お、ここでは、論理シミュレータ部10から図2に示す
ような具体的な出力信号およびエラーメッセージが行単
位の文字列データとして出力されることを前提として、
以下の説明を行うことにする。
Now, the operation of the logic simulation apparatus shown in FIG. 1 will be described in detail with reference to the flow chart of FIG. Here, on the premise that the logic simulator unit 10 outputs a specific output signal and error message as shown in FIG. 2 as character string data in units of lines,
The following description will be given.

【0022】まず、図3の流れ図のステップS1におい
て、マスクのための条件設定が行われる。これは、設計
者が、どのエラーメッセージが重要で、どのエラーメッ
セージが軽微なものであるかを判断して、マスクの対象
となるエラーメッセージを特定する作業である。ここで
は、上述したエラーメッセージAのタイプを軽微なエラ
ーメッセージとしてマスクする例について述べることに
する。この場合、条件設定部50内には、マスクする必
要があるエラーメッセージAについて、所定のキーワー
ド51と、このエラーメッセージを構成する文字列デー
タが占める行範囲52と、このエラーメッセージに含ま
れる所定のパラーメータがとるべき所定のマスク条件5
3と、が設定されることになる。
First, in step S1 of the flowchart of FIG. 3, condition setting for the mask is performed. This is a work for the designer to determine which error message is important and which error message is minor, and specify the error message to be masked. Here, an example in which the type of the error message A described above is masked as a minor error message will be described. In this case, in the condition setting unit 50, for the error message A that needs to be masked, a predetermined keyword 51, a line range 52 occupied by the character string data forming this error message, and a predetermined range included in this error message. Predetermined mask condition 5 that the parameters of
3 will be set.

【0023】図4は、このようにして設定されたエラー
メッセージAについての条件を示す図である。ここで
は、キーワード51として「Setup violation 」なる文
字列が設定されている。
FIG. 4 is a diagram showing the conditions for the error message A set in this way. Here, the character string "Setup violation" is set as the keyword 51.

【0024】また、行範囲52としては「−1〜1」な
る数値が設定されているが、これは、このエラーメッセ
ージAを構成する3行にわたる文字列データの開始行と
終了行の位置を、キーワードが含まれている行に対する
相対位置として示したものである。すなわち、行範囲5
2における「−1」なる数値は、このエラーメッセージ
の開始行が、キーワードが含まれている「行数−1」の
行(すなわち、キーワードが含まれている行の1つ前の
行)であることを示し、行範囲52における「1」なる
数値は、このエラーメッセージの終了行が、キーワード
が含まれている「行数+1」の行(すなわち、キーワー
ドが含まれている行の1つ後の行)であることを示して
いる。図2に示したエラーメッセージ1,2,3は、い
ずれも全3行からなり、いずれもキーワードは中央の行
に含まれているため、行範囲52としては「−1〜1」
なる数値設定がなされることになるが、エラーメッセー
ジのタイプによっては、全4行、全5行、など種々のも
のが用いられ、また、必ずしも中央行の文字列がキーワ
ードとして設定されるとは限らないため、この行範囲5
2は各エラーメッセージのタイプごとに種々の設定がな
されることになる。
A numerical value of "-1 to 1" is set as the line range 52, which indicates the positions of the start line and the end line of the character string data over the three lines forming the error message A. , Relative to the line containing the keyword. Ie line range 5
The number "-1" in 2 means that the start line of this error message is the line of "number of lines-1" containing the keyword (that is, the line immediately before the line containing the keyword). The number "1" in the line range 52 indicates that the end line of this error message is the line "number of lines + 1" containing the keyword (that is, one of the lines containing the keyword). Later line). The error messages 1, 2, and 3 shown in FIG. 2 each consist of all three lines, and since the keywords are included in the central line, the line range 52 is "-1 to 1".
However, depending on the type of error message, various types such as all four lines, all five lines, etc. are used, and the character string in the center line is not always set as a keyword. This line range is not limited to 5
2, various settings are made for each error message type.

【0025】マスク条件53としては、この例では、
「エラー発生箇所」と「エラー発生時間」との2つの条
件が設定されている。第1の条件である「エラー発生箇
所」としては、インスタンス名「U1」なる素子が指定
されており(この例では、ピンについての指定はな
い)、第2の条件である「エラー発生時間」としては、
「0〜600nsの間」と「1000ns以降」との期
間が指定されている。そして、この例では、この2つの
条件が2つともに満足された場合に、そのエラーメッセ
ージが「マスク条件を満足した」と判断するようにして
いる。別言すれば、インスタンス名「U1」なる素子に
おいてエラーが発生し、かつ、そのエラー発生時刻が、
「0〜600nsの間」または「1000ns以降」で
あった場合にのみ、マスク条件を満足することになる。
As the mask condition 53, in this example,
Two conditions, "error occurrence location" and "error occurrence time" are set. The element having the instance name "U1" is specified as the "error occurrence location" that is the first condition (in this example, no pin is specified), and the second condition "error occurrence time" is specified. as,
The periods of "between 0 and 600 ns" and "after 1000 ns" are designated. Then, in this example, when both of these two conditions are satisfied, it is determined that the error message is "the mask condition is satisfied". In other words, an error occurs in the element with the instance name “U1”, and the error occurrence time is
The mask condition is satisfied only when it is “between 0 and 600 ns” or “after 1000 ns”.

【0026】結局、図4に示すようなエラーメッセージ
Aについての条件設定によりマスクすべきか否かの判断
を行った場合、「Setup violation 」なるキーワードを
含んでおり、行範囲「−1〜1」に記述された内容が上
述のマスク条件を満足するようなエラーメッセージにつ
いては、「マスクすべき」との判断がなされることにな
る。具体的には、図2に示すエラーメッセージ1,2,
3のうち、エラーメッセージ1,3が「Setup violatio
n 」なるキーワードを含んでいるが、上述のマスク条件
を満足するのはエラーメッセージ1だけということにな
る(エラーメッセージ3は、エラー発生箇所の条件が満
たされていない)。もちろん、条件設定部50内の設定
は、この論理シミュレーション装置を使用する者の自由
意思に基づいて行われるものであり、どのような条件設
定を行ってもかまわない。
After all, when it is determined whether or not to mask by the condition setting for the error message A as shown in FIG. 4, the keyword "Setup violation" is included and the line range "-1 to 1" is included. An error message whose content described in (1) satisfies the above-mentioned mask condition is judged to be "maskable". Specifically, the error messages 1, 2 shown in FIG.
Error messages 1 and 3 of 3 are "Setup violatio
Although the keyword "n" is included, only the error message 1 satisfies the above mask condition (error message 3 does not satisfy the condition of the error occurrence location). Of course, the setting in the condition setting unit 50 is performed based on the free will of the person who uses the logic simulation apparatus, and any condition setting may be performed.

【0027】ところで、図4に示すような条件設定の内
容は、この実施例では、実際には図5のような記述とし
てコンピュータに与えられる。この図5に示す記述の先
頭の文字列「Setup violation 」は、キーワード51を
示すものであり、これに続く(−1 1)なる文字列
は、行範囲52を示すものである。その次の、(ins
t 1 5)なる文字列は、エラー発生箇所としてイン
スタンス名を特定することを示すとともに、このインス
タンス名を示す情報の位置を、キーワードが含まれてい
る行に対する相対位置として示す文字列である。具体的
には、「inst」なる文字列に続く「1」なる数値
は、(キーワードが含まれている行数+1)行目を指し
示しており、これに続く「5」なる数値は、その行の5
ワード目を指し示している(ワードは、空白で区切られ
た1まとまりの単語)。たとえば、図2のエラーメッセ
ージ1にこれを当てはめてみると、「Setup violation
」なるキーワードは第8行目に含まれているので、イ
ンスタンス名を示す情報は、第(8+1)行目の5ワー
ド目の「U1」なる文字ということになる。同様に、次
の(time −1 4)なる文字列は、エラー発生時
間を示す情報の位置を、キーワードが含まれている行に
対する相対位置として示す文字列である。具体的には、
「time」なる文字列に続く「−1」なる数値は、
(キーワードが含まれている行数−1)行目を指し示し
ており、これに続く「4」なる数値は、その行の4ワー
ド目を指し示している。たとえば、図2のエラーメッセ
ージ1にこれを当てはめてみると、「Setup violation
」なるキーワードは第8行目に含まれているので、エ
ラー発生時間を示す情報は、第(8−1)行目の4ワー
ド目の「530」なる文字ということになる。
By the way, the contents of the condition setting as shown in FIG. 4 are actually given to the computer as the description as shown in FIG. 5 in this embodiment. The character string "Setup violation" at the head of the description shown in FIG. 5 indicates the keyword 51, and the character string (-11) following the keyword indicates the line range 52. Next, (ins
The character string t 15) indicates that the instance name is specified as the error occurrence point, and the position of the information indicating the instance name is a relative position with respect to the line including the keyword. Specifically, the numerical value “1” following the character string “inst” indicates the (number of lines including the keyword + 1) line, and the numerical value “5” following this is the line. Of 5
It points to the word (the word is a group of words separated by white space). For example, applying this to error message 1 in Figure 2, "Setup violation
Since the keyword "" is included in the eighth line, the information indicating the instance name is the character "U1" in the fifth word of the (8 + 1) th line. Similarly, the next character string of (time -14) is a character string indicating the position of the information indicating the error occurrence time as a relative position to the line containing the keyword. In particular,
The numerical value "-1" following the character string "time" is
It indicates the line (the number of lines including the keyword-1), and the numerical value "4" following this indicates the fourth word of the line. For example, applying this to error message 1 in Figure 2, "Setup violation
Since the keyword "" is included in the 8th line, the information indicating the error occurrence time is the character "530" in the 4th word of the (8-1) th line.

【0028】図5の2行目の文字列は、マスク条件の設
定値である。すなわち、「U1」なる文字列は、エラー
発生箇所として条件を満たすインスタンス名を示してお
り、これに続く(0 600)および(1000 −)
なる文字列は、エラー発生時間として条件を満たす期間
を示している。こうして、図5に示すような条件が、条
件設定部50内に設定されていれば、図2に示すような
実際のエラーメッセージ1,2,3などが出力されたと
きに、「マスクすべきか否か」の判断を一義的に行うこ
とができることが理解できよう。すなわち、そのエラー
メッセージ内に所定のキーワード51が含まれているか
を検査し、キーワード51が含まれていた場合には、そ
のエラーメッセージの所定位置に記述されているエラー
発生箇所およびエラー発生時間を認識し、これらが、図
5の2行目に示された条件を満足するか否かを判断すれ
ばよいことになる。
The character string on the second line in FIG. 5 is the set value of the mask condition. That is, the character string “U1” indicates an instance name that satisfies the condition as an error occurrence point, and is followed by (0 600) and (1000 −).
The character string indicates a period that satisfies the condition as the error occurrence time. In this way, if the conditions as shown in FIG. 5 are set in the condition setting unit 50, when the actual error messages 1, 2, 3, etc. as shown in FIG. It will be understood that the decision "whether or not" can be made uniquely. That is, it is checked whether or not the predetermined keyword 51 is included in the error message, and if the predetermined keyword 51 is included, the error occurrence location and the error occurrence time described in the predetermined position of the error message are checked. It is only necessary to recognize and judge whether or not these satisfy the conditions shown in the second line of FIG.

【0029】さて、図3に示す流れ図におけるステップ
S1で、上述のような条件設定が完了したら、いよいよ
フィルタリング機能をもった転送/出力処理が実行され
る。ここでは、説明の便宜上、n=5の場合(すなわ
ち、データ格納部20が5段階のデータセルから構成さ
れ、フラグ格納部30が5段階のフラグセルから構成さ
れる場合)について、この処理を具体的に示すことにす
る。なお、チェックポイントは第3段目に定義されてい
るものとする。
Now, in step S1 in the flow chart shown in FIG. 3, when the above-mentioned condition setting is completed, the transfer / output processing having a filtering function is finally executed. Here, for convenience of explanation, this process will be concretely described for the case of n = 5 (that is, the case where the data storage unit 20 is composed of five-stage data cells and the flag storage unit 30 is composed of five-stage flag cells) I will show it to you. The checkpoint is defined in the third row.

【0030】はじめに、ステップS2において、データ
格納部20およびフラグ格納部30の初期化が行われ
る。図6は、このような初期化が行われた直後の状態を
示している。この実施例では、データ格納部20を構成
する各データセルについては所定の「空データ」を初期
値として設定し、フラグ格納部30を構成する各フラグ
セルについては初期フラグ「−1」を初期値として設定
するようにしている。前述したように、この実施例で
は、各フラグセルには、非マスクフラグ「0」かマスク
フラグ「1」が入れられることになるが、この初期フラ
グ「−1」はそのいずれでもない第3のフラグであり、
対応するデータセルが本来のデータではなく「空デー
タ」であることを示すものである。
First, in step S2, the data storage unit 20 and the flag storage unit 30 are initialized. FIG. 6 shows the state immediately after such initialization. In this embodiment, a predetermined "empty data" is set as an initial value for each data cell forming the data storage unit 20, and an initial flag "-1" is set as an initial value for each flag cell forming the flag storage unit 30. I am trying to set it as. As described above, in this embodiment, the non-mask flag "0" or the mask flag "1" is put in each flag cell, but the initial flag "-1" is not the third flag. Is a flag,
It indicates that the corresponding data cell is not the original data but “empty data”.

【0031】次のステップS3では、転送処理部40に
よって1段分の転送処理が行われる。すなわち、図7に
示すように、第1段目のデータセルに、図2に示す第1
行目のデータ「0 0000」が取り込まれ、第1段
目のフラグセルには、非マスクフラグ「0」がセットさ
れる。このとき、第5段目のデータセルにあった「空デ
ータ」および第5段目のフラグセルにあった初期フラグ
「−1」は、ともにマスク実行部70へと送られるが、
マスク実行部70は、初期フラグ「−1」により、送ら
れてきた「空データ」が本来のデータではないと判断
し、マスク処理(送られてきたデータを出力せずに捨て
る処理)を実行する。
In the next step S3, the transfer processing unit 40 performs the transfer processing for one stage. That is, as shown in FIG. 7, the first-stage data cell shown in FIG.
The data "00000" of the row is fetched, and the non-mask flag "0" is set in the flag cell of the first stage. At this time, the "empty data" in the fifth-stage data cell and the initial flag "-1" in the fifth-stage flag cell are both sent to the mask execution unit 70.
The mask executing unit 70 determines that the “empty data” sent is not the original data by the initial flag “−1”, and executes the mask process (the process of discarding the sent data without outputting it). To do.

【0032】続いて、ステップS4において、チェック
ポイントのデータが終端文字列(この例では「@en
d」なる文字列)か否かが判断される。この時点では、
チェックポイントには「空データ」が入っているため、
否定的な判断がなされ、ステップS5へ進む。このステ
ップS5では、チェックポイントのデータがキーワード
(この例では、条件設定部50に設定された「Setup vi
olation 」なる文字列)を含むか否かが判断される。や
はりこの時点では、チェックポイントには「空データ」
が入っているため、否定的な判断がなされ、ステップS
3へと戻る。
Then, in step S4, the checkpoint data is the end character string (in this example, "@en
It is determined whether the character string is "d"). At this point,
Since the checkpoint contains "empty data",
A negative determination is made, and the process proceeds to step S5. In this step S5, the checkpoint data is a keyword (in this example, “Setup vi
It is determined whether or not the character string "olation" is included. After all, at this point, the checkpoint is "empty data"
Is included, a negative judgment is made, and step S
Return to 3.

【0033】こうして、ステップS3,S4,S5とい
うループ処理を繰り返してゆくと、やがて、図8に示す
ように、5段階のデータセルのすべてに本来のデータが
取り込まれた状態になる。このとき、各フラグセルに
は、いずれも非マスクフラグがセットされた状態になっ
ている。チェックポイントの位置には、まだキーワード
が現れていないので、依然として、ステップS3,S
4,S5というループを繰り返し実行することになる。
図8の状態から3段分転送を行ったときの状態が図9に
示されている。これは、図2に示す第4〜8行目までが
取り込まれた状態である。この時点では、図2に示す第
1〜3行目のデータは既にマスク実行部70へと送られ
ていることになる。このとき、これらのデータについて
は、いずれも非マスクフラグ「0」が付与されているの
で、マスク実行部70は、これらのデータをそのまま出
力することになる。すなわち、マスク処理は実行されな
い。
By repeating the loop processing of steps S3, S4 and S5 in this manner, eventually, as shown in FIG. 8, the original data is taken in all of the five-stage data cells. At this time, the non-mask flag is set in each flag cell. Since the keyword has not yet appeared at the position of the checkpoint, steps S3 and S are still executed.
The loop of S4 and S5 will be repeatedly executed.
FIG. 9 shows a state in which transfer is performed for three stages from the state of FIG. This is a state in which the 4th to 8th lines shown in FIG. 2 are fetched. At this point, the data of the first to third lines shown in FIG. 2 have already been sent to the mask execution section 70. At this time, since the non-mask flag "0" is added to all of these data, the mask execution unit 70 outputs these data as they are. That is, the mask processing is not executed.

【0034】さて、図9に示す状態から更に2段分転送
を行うと、図10の状態になる。これは、図2に示す第
6〜10行目までを取り込んだ状態である。この状態で
は、ステップS4における終端文字列に関する判断は否
定的であるが、ステップS5におけるキーワードに関す
る判断は肯定的となる。すなわち、チェックポイントで
ある第3段目のデータセルには、キーワードである「Se
tup violation 」なる文字列が含まれている。そこで、
ステップS5からS6へと進み、このキーワード「Setu
p violation 」を含むエラーメッセージをマスクすべき
か否かの判断がなされる。この判断の方法は、既に述べ
たとおりである。すなわち、図5に示す(−1 1)な
る記述から、この「Setup violation 」を含むエラーメ
ッセージの行範囲は、キーワードを含む行の1行前から
1行後までであることが認識できる。そして、(ins
t 1 5)なる記述から、キーワードを含む行の1行
後の5ワード目に示された「U1」がエラー発生箇所で
あることが確認でき、これが「U1」なる設定条件(図
5の2行目の記述)に合致することが確認できる。更
に、(time −1 4)なる記述から、キーワード
を含む行の1行前の4ワード目に示された「530」が
エラー発生時間であることが確認でき、これが設定条件
「0〜600」(図5の2行目の記述)に合致すること
が確認できる。
Now, when the transfer of two stages is further carried out from the state shown in FIG. 9, the state shown in FIG. 10 is obtained. This is a state in which the sixth to tenth lines shown in FIG. 2 are captured. In this state, the determination regarding the end character string in step S4 is negative, but the determination regarding the keyword in step S5 is affirmative. That is, the keyword "Se
The string "tup violation" is included. Therefore,
From step S5 to step S6, the keyword "Setu
A determination is made as to whether error messages containing "p violation" should be masked. The method of this determination is as described above. That is, it can be recognized from the description (-11) shown in FIG. 5 that the line range of the error message including "Setup violation" is from one line before to one line after the line including the keyword. And (ins
From the description of t 1 5), it can be confirmed that “U1” shown in the fifth word one line after the line containing the keyword is the error occurrence point, and this is the setting condition of “U1” (2 in FIG. 5). It can be confirmed that it matches the description of the line). Further, from the description of (time-14), it can be confirmed that "530" shown in the fourth word one line before the line containing the keyword is the error occurrence time, which is the setting condition "0-600". It can be confirmed that it matches (the description in the second line of FIG. 5).

【0035】こうして、エラーメッセージ1について、
「マスクすべき」との判断が、マスク判断部60によっ
てなされると、ステップS7において、行範囲となった
フラグセルに、マスクフラグ「1」が立てられることに
なる。この例の場合、第2〜4段目のフラグセルが
「1」となり、図10の状態から図11の状態に変化す
る。ここで、再びステップS3に戻り、1段分の転送処
理が繰り返し実行される。図12は、このときの状態を
示している。図11の状態から図12の状態に遷移する
とき、「500 1111」なるデータがマスク実行
部70に送られるが、このデータには非マスクフラグ
「0」が付与されているため、マスクされることはな
く、そのまま出力される。
Thus, for error message 1,
When the mask determination unit 60 determines that the mask should be performed, the mask flag "1" is set in the flag cells in the row range in step S7. In the case of this example, the flag cells of the second to fourth stages become "1", and the state of FIG. 10 changes to the state of FIG. Here, the process returns to step S3 again, and the transfer process for one stage is repeatedly executed. FIG. 12 shows the state at this time. When transitioning from the state of FIG. 11 to the state of FIG. 12, data “500 1111” is sent to the mask execution unit 70, but this data is masked because the non-mask flag “0” is attached. It is output as it is.

【0036】ここで再び、ステップS3,S4,S5と
いうループが繰り返し実行されてゆく。図13は、図1
2に示す状態から更に3段分の転送を行ったときの状態
を示している。この図12から図13の状態へ移ると
き、図2に示したエラーメッセージ1に相当する第7〜
9行目がマスク実行部70へと送られることになるが、
この3行分のデータについては、マスクフラグ「1」が
付与されているため、マスク実行部70においてマスク
処理が実行され、出力されずに捨てられることになる。
こうして、マスク判断部60によって「マスクすべき」
と判断されたエラーメッセージについては、マスク実行
部70においてマスク処理が実行されることになる。
Here again, the loop of steps S3, S4 and S5 is repeatedly executed. 13 is the same as FIG.
It shows a state in which the transfer of three stages is further performed from the state shown in FIG. When shifting from the state of FIG. 12 to the state of FIG.
The ninth line will be sent to the mask execution unit 70.
Since the mask flag “1” is added to the data for these three lines, the mask processing is executed in the mask execution unit 70 and is discarded without being output.
In this way, the mask determination unit 60 “should be masked”.
The mask process is executed by the mask execution unit 70 for the error message determined to be.

【0037】ところで、図2に示すエラーメッセージ2
は、「address unknown 」という文字列を含んでいる
が、この実施例では、この文字列はキーワードとして設
定されていないので、エラーメッセージ2がチェックポ
イントを通過しても、フラグが書き替えられることはな
い。したがって、ステップS3,S4,S5というルー
プが繰り返し実行され、エラーメッセージ2は、マスク
されることなく、マスク実行部70から出力されること
になる。
By the way, the error message 2 shown in FIG.
Contains a character string "address unknown", but in this embodiment, since this character string is not set as a keyword, the flag is rewritten even if the error message 2 passes the checkpoint. There is no. Therefore, the loop of steps S3, S4 and S5 is repeatedly executed, and the error message 2 is output from the mask execution unit 70 without being masked.

【0038】この後、ステップS5において、キーワー
ド「Setup violation 」が再度発見されるのは、図14
に示すように、図2の第18〜22行目が取り込まれた
ときである。この状態では、ステップS5におけるキー
ワードに関する判断は肯定的となる。すなわち、チェッ
クポイントである第3段目のデータセルには、キーワー
ドである「Setup violation 」なる文字列が含まれてい
る。そこで、ステップS5からS6へと進み、このキー
ワード「Setup violation 」を含むエラーメッセージ3
をマスクすべきか否かの判断がなされる。既に述べたよ
うに、このエラーメッセージ3についての判断では、エ
ラー発生時間については条件が合致するものの、エラー
発生箇所については条件が合致しない。そこで、エラー
メッセージ3については、「マスクすべきではない」と
の判断が、マスク判断部60によってなされる。よっ
て、ステップS7は実行されず、エラーメッセージ3に
ついて付与されたフラグは、依然として非マスクフラグ
「0」のままであり、マスク実行部70に送られてもマ
スクされることなくそのまま出力されることになる。
After that, in step S5, the keyword "Setup violation" is found again in FIG.
2, the 18th to 22nd lines in FIG. 2 are fetched. In this state, the determination regarding the keyword in step S5 is affirmative. That is, the character string "Setup violation" that is the keyword is included in the data cell in the third row that is the checkpoint. Therefore, the process proceeds from step S5 to S6, and the error message 3 including this keyword "Setup violation"
A determination is made whether or not to mask. As described above, in the judgment of the error message 3, the condition of the error occurrence time matches, but the condition of the error occurrence point does not match. Therefore, with respect to the error message 3, the mask determination unit 60 determines that “it should not be masked”. Therefore, step S7 is not executed, the flag added for the error message 3 is still the non-mask flag “0”, and even if it is sent to the mask executing unit 70, it is output as it is without being masked. become.

【0039】やがて、図2に示す第24行目の終端文字
列までが取り込まれると、もはや、論理シミュレータ部
10からは文字列は出力されなくなる。この場合は、図
15に示すように、第1段目のデータセルには、「空デ
ータ」が取り込まれ、第1段目のフラグセルには、初期
フラグ「−1」がセットされる。この図15に示す状態
から更に1段分転送を行うと、図16に示す状態が得ら
れる。この図16の状態では、チェックポイントに終端
文字列「@end」が位置している。そこで、ステップ
S4において肯定的な判断がなされ、ステップS8へと
分岐する。このステップS8は、データ格納部20内に
残っている残存データをすべて排出するための処理であ
る。具体的には、(n−k+1)段分の転送処理が行わ
れることになる。この実施例では、3段分の転送処理が
行われ、図16の状態は図17の状態となる。
When the character string up to the end character string on the 24th line shown in FIG. 2 is taken in, the character string is no longer output from the logic simulator unit 10. In this case, as shown in FIG. 15, "empty data" is taken in the first-stage data cell, and the initial flag "-1" is set in the first-stage flag cell. When the transfer for one stage is further performed from the state shown in FIG. 15, the state shown in FIG. 16 is obtained. In the state of FIG. 16, the end character string “@end” is located at the checkpoint. Therefore, a positive determination is made in step S4, and the process branches to step S8. This step S8 is a process for discharging all the residual data remaining in the data storage unit 20. Specifically, the transfer processing for (n−k + 1) stages is performed. In this embodiment, the transfer process for three stages is performed, and the state of FIG. 16 becomes the state of FIG.

【0040】かくして、論理シミュレータ部10から出
力された行単位の文字列データ、すなわち、図2に示す
第1〜24行目の文字列データのうち、エラーメッセー
ジ1に相当する第7〜9行目のデータをマスクし、残り
のデータだけを出力するというフィルタリング処理が可
能になる。
Thus, the line-by-line character string data output from the logic simulator unit 10, that is, the 7th to 9th lines corresponding to the error message 1 in the character string data of the 1st to 24th lines shown in FIG. Filtering processing that masks the eye data and outputs only the remaining data becomes possible.

【0041】以上、図1に示す論理シミュレーション装
置の動作を、簡単な具体例に基づいて説明したが、最後
に、この論理シミュレーション装置のより実際的な動作
例を示しておく。図18および図19に示すリストは、
論理シミュレータ部10から実際に出力された出力信号
(時刻を示す数値と4ビットの論理出力値)およびエラ
ーメッセージ(行頭に#が付されている文字列)であ
る。図示のとおり、非常に多数のエラーメッセージが羅
列されており、全体として非常に見にくく、重大なエラ
ーメッセージが含まれていたとしても見落としてしまう
危険性がある。そこで、条件設定部50内に、図20に
示すような条件設定を行い、この論理シミュレーション
装置を動作させてみる。この図20に示す条件設定で
は、「address unknown 」なる文字列がキーワードとし
て設定されている。図21は、このような条件設定を行
ったときに、マスク実行部70から実際に出力される文
字列データである。図18および図19のリストに示さ
れているエラーメッセージのうちの大部分がマスク処理
で除去されており、非常に見やすいシミュレーション結
果となっている。この図21に示されているエラーメッ
セージをすべてマスク処理で除去し、論理出力値のみを
残したい場合には、たとえば、図22に示すような条件
設定を条件設定部50に対して行っておけばよい。この
ように、本発明に係る論理シミュレーション装置では、
条件設定部50に設定する条件によって、フィルタリン
グ機能を自由に変えることができ、希望に応じたシミュ
レーション結果を出力させることが可能になる。
The operation of the logic simulation apparatus shown in FIG. 1 has been described above based on a simple concrete example. Finally, a more practical operation example of the logic simulation apparatus will be shown. The lists shown in FIGS. 18 and 19 are
An output signal (a numerical value indicating a time and a 4-bit logical output value) actually output from the logic simulator unit 10 and an error message (a character string prefixed with #) are shown. As shown in the figure, a very large number of error messages are listed, and it is very difficult to see as a whole, and even if a serious error message is included, it may be overlooked. Therefore, conditions are set in the condition setting unit 50 as shown in FIG. 20, and the logic simulation device is operated. In the condition setting shown in FIG. 20, the character string "address unknown" is set as a keyword. FIG. 21 shows character string data actually output from the mask executing unit 70 when such condition setting is performed. Most of the error messages shown in the lists of FIGS. 18 and 19 are removed by the masking process, and the simulation result is very easy to see. When it is desired to remove all the error messages shown in FIG. 21 by the mask processing and leave only the logical output value, the condition setting as shown in FIG. Good. Thus, in the logic simulation device according to the present invention,
The filtering function can be freely changed according to the condition set in the condition setting unit 50, and the simulation result can be output as desired.

【0042】以上、本発明を図示する実施例に基づいて
説明したが、本発明はこれらの実施例に限定されるもの
ではない。特に、図3に示す流れ図は、図1に示す論理
シミュレーション装置を動作させる手順の一例を示した
ものであり、必ずしもこのような手順で動作させる必要
はない。たとえば、図3のステップS3では、常に1段
分の転送処理を行っているが、状況に応じて、複数段分
の転送処理を連続して行うことも可能である。特に、ス
テップS5において、チェックポイントのデータにキー
ワードが含まれていると判断された直後は、このキーワ
ードを含むエラーメッセージの最終行が第(k+1)番
目のデータセルにくるまでに必要な段数分のデータ転送
処理を、ステップS3において行うことが可能である。
これを具体的に示すと、次のようになる。いま、図10
に示す状態において、チェックポイントにキーワード
「Setup violation 」が発見された場合を考える。この
場合、少なくとも、このエラーメッセージ1の行範囲に
所属する3行については、もはやキーワードを含むか否
かのチェックを行う必要はない。ところが、上述の実施
例では、ステップS5においてキーワードが発見される
と、ステップS6,S7を経て、図11に示すようにフ
ラグを変え、続くステップS3において、1段分の転送
処理を行って、図12に示す状態とし、この図12の状
態に対して、チェックポイントにキーワードが含まれて
いるかを判断する処理をステップS5において行ってい
た。しかし、この図12に示す状態において、チェック
ポイントにキーワードが含まれているか否かを判断する
処理は、いわば無駄な冗長な処理である。なぜなら、図
12の状態において、チェックポイントに位置するデー
タは、図10の状態において行範囲に含まれていたデー
タであるから、もはやマスクするか否かの判断が完了し
たデータだからである。したがって、図10に示すよう
に、チェックポイントにキーワードが発見された場合に
は、このキーワードを含むエラーメッセージの最終行
が、チェックポイントの次のデータセル(すなわち、第
(k+1)番目のデータセル)にくるまでに必要な段数
分のデータ転送処理を行ってかまわない。この例では、
図10に示す状態が得られたら、続くステップS3の転
送処理では、2段分の転送処理を行ってかまわないこと
になる。
Although the present invention has been described above based on the illustrated embodiments, the present invention is not limited to these embodiments. In particular, the flowchart shown in FIG. 3 shows an example of a procedure for operating the logic simulation apparatus shown in FIG. 1, and it is not always necessary to operate in such a procedure. For example, in step S3 of FIG. 3, the transfer process for one stage is always performed, but the transfer process for a plurality of stages can be continuously performed depending on the situation. In particular, immediately after it is determined in step S5 that the checkpoint data contains a keyword, the number of steps required until the last line of the error message containing this keyword reaches the (k + 1) th data cell. The data transfer process of can be performed in step S3.
This is specifically shown below. Now, FIG.
Consider the case where the keyword "Setup violation" is found at the checkpoint in the state shown in. In this case, it is not necessary to check whether or not at least the three lines belonging to the line range of the error message 1 include the keyword. However, in the above-described embodiment, when the keyword is found in step S5, the flag is changed as shown in FIG. 11 through steps S6 and S7, and the transfer process for one stage is performed in the following step S3. In the state shown in FIG. 12, the process of determining whether or not the checkpoint includes a keyword is performed in step S5 for the state of FIG. However, in the state shown in FIG. 12, the process of determining whether or not the keyword is included in the checkpoint is, so to speak, useless and redundant process. This is because the data located at the check point in the state of FIG. 12 is the data included in the row range in the state of FIG. Therefore, as shown in FIG. 10, when a keyword is found in a checkpoint, the last line of the error message including this keyword is the next data cell of the checkpoint (that is, the (k + 1) th data cell). ) You may perform the data transfer processing for the required number of steps before coming to. In this example,
When the state shown in FIG. 10 is obtained, in the transfer processing of the subsequent step S3, the transfer processing of two stages may be performed.

【0043】また、上述の実施例では、n=5、すなわ
ち全5段階のセルからなるデータ格納部20およびフラ
グ格納部30を用意していたが、このセルの全段階数は
任意に設定することができる。ただし、少なくとも、所
定のセルにチェックポイントを定義したときに、エラー
メッセージの行範囲に属する複数行のデータを、データ
格納部20内にすべて格納することができるだけの十分
な段階数を設ける必要がある。
Further, in the above-described embodiment, the data storage unit 20 and the flag storage unit 30 each having n = 5, that is, cells of all five stages are prepared, but the total number of stages of this cell is arbitrarily set. be able to. However, at least when a checkpoint is defined in a predetermined cell, it is necessary to provide a sufficient number of stages so that all the data of a plurality of lines belonging to the line range of the error message can be stored in the data storage unit 20. is there.

【0044】[0044]

【発明の効果】以上のとおり本発明に係る集積回路用論
理シミュレーション装置によれば、いわゆるFIFO
(First In First Out)の形式の複数段のデータセルを
通過させながら、マスク対象となるデータについては所
定のフラグを立ててマスクできるようにしたため、必要
のないエラーメッセージについては、これをマスクして
出力させないようにするフィルタリング機能を実現させ
ることができる。
As described above, according to the logic simulation apparatus for an integrated circuit of the present invention, a so-called FIFO is provided.
The data to be masked can be masked by setting a predetermined flag while passing through multiple rows of data cells in the (First In First Out) format, so that you can mask unnecessary error messages. It is possible to realize a filtering function that prevents the output.

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

【図1】本発明の一実施例に係る集積回路用論理シミュ
レーション装置の基本構成を示すブロック図である。
FIG. 1 is a block diagram showing a basic configuration of a logic simulation device for an integrated circuit according to an embodiment of the present invention.

【図2】図1に示す論理シミュレーション装置における
論理シミュレータ部10から出力される行単位の文字列
データの一例を示すリストである。
FIG. 2 is a list showing an example of line-by-line character string data output from a logic simulator unit 10 in the logic simulation apparatus shown in FIG.

【図3】図1に示す論理シミュレーション装置の動作の
一例を示す流れ図である。
FIG. 3 is a flow chart showing an example of the operation of the logic simulation apparatus shown in FIG.

【図4】図1に示す論理シミュレーション装置の条件設
定部50内に設定される条件の一例を示す図である。
4 is a diagram showing an example of conditions set in a condition setting unit 50 of the logic simulation apparatus shown in FIG.

【図5】図4に示す条件を実際のコンピュータに対して
提示するための記述形式の一例を示す図である。
5 is a diagram showing an example of a description format for presenting the conditions shown in FIG. 4 to an actual computer.

【図6】図1に示す論理シミュレーション装置の具体的
な動作を説明するための各セルの初期状態を示す図であ
る。
6 is a diagram showing an initial state of each cell for explaining a specific operation of the logic simulation apparatus shown in FIG.

【図7】図6に示す状態から、1段分の転送処理を行
い、1行分のデータを取り込んだ状態を示す図である。
FIG. 7 is a diagram showing a state in which the transfer processing for one stage is performed and the data for one row is fetched from the state shown in FIG. 6;

【図8】図7に示す状態から、4段分の転送処理を行
い、全部で5行分のデータを取り込んだ状態を示す図で
ある。
8 is a diagram showing a state in which a transfer process for four stages is performed from the state shown in FIG. 7 and a total of five rows of data are fetched.

【図9】図8に示す状態から、3段分の転送処理を行
い、エラーメッセージの一部を取り込んだ状態を示す図
である。
9 is a diagram showing a state in which a transfer process for three stages is performed from the state shown in FIG. 8 and a part of an error message is captured.

【図10】図9に示す状態から、2段分の転送処理を行
い、チェックポイントにキーワード「Setup violation
」が位置した状態を示す図である。
[Fig. 10] From the state shown in Fig. 9, transfer processing for two steps is performed, and the keyword "Setup violation" is added to the checkpoint.
It is a figure showing the state where "" was located.

【図11】図10に示す状態において、行範囲に属する
3行分についてのフラグを書き換えた状態を示す図であ
る。
11 is a diagram showing a state in which flags in three rows belonging to a row range are rewritten in the state shown in FIG.

【図12】図11に示す状態から、1段分の転送処理を
行った状態を示す図である。
12 is a diagram showing a state in which a transfer process for one stage is performed from the state shown in FIG.

【図13】図12に示す状態から、3段分の転送処理を
行った状態を示す図である。
13 is a diagram showing a state in which transfer processing for three stages has been performed from the state shown in FIG.

【図14】図13に示す状態から、8段分の転送処理を
行い、チェックポイントに、再度、キーワード「Setup
violation 」が位置した状態を示す図である。
FIG. 14 is a process of performing transfer processing for eight steps from the state shown in FIG. 13, and again using the keyword “Setup
It is a figure which shows the state in which "violation" was located.

【図15】図14に示す状態から、3段分の転送処理を
行い、「空データ」を1行分取り込んだ状態を示す図で
ある。
FIG. 15 is a diagram showing a state in which “empty data” for one row is fetched by performing transfer processing for three stages from the state shown in FIG. 14;

【図16】図15に示す状態から、1段分の転送処理を
行い、チェックポイントに、終端文字列「@end」が
位置した状態を示す図である。
16 is a diagram showing a state in which a transfer process for one stage is performed from the state shown in FIG. 15 and a terminating character string “@end” is located at a checkpoint.

【図17】図16に示す状態から、3段分の転送処理を
行い、すべてのデータを排出した状態を示す図である。
FIG. 17 is a diagram showing a state in which transfer processing for three stages is performed and all data is discharged from the state shown in FIG. 16;

【図18】図1に示す論理シミュレーション装置の論理
シミュレータ部10から実際に出力された行単位の文字
列データの一例を示すリストの前半部分である。
FIG. 18 is a first half portion of a list showing an example of character string data in line units actually output from the logic simulator unit 10 of the logic simulation apparatus shown in FIG. 1.

【図19】図1に示す論理シミュレーション装置の論理
シミュレータ部10から実際に出力された行単位の文字
列データの一例を示すリストの後半部分である。
FIG. 19 is the latter half of the list showing an example of character string data in line units actually output from the logic simulator unit 10 of the logic simulation apparatus shown in FIG.

【図20】図1に示す論理シミュレーション装置の条件
設定部50内に設定される条件の別な一例を示す図であ
る。
20 is a diagram showing another example of the conditions set in the condition setting unit 50 of the logic simulation apparatus shown in FIG.

【図21】図18および図19に示すリストに対して、
図20に示す条件設定に基づくフィルタリングを行って
得られるシミュレーションの出力結果を示すリストであ
る。
21 is a list of the lists shown in FIG. 18 and FIG.
21 is a list showing an output result of a simulation obtained by performing filtering based on the condition setting shown in FIG. 20.

【図22】図1に示す論理シミュレーション装置の条件
設定部50内に設定される条件の更に別な一例を示す図
である。
22 is a diagram showing still another example of the conditions set in the condition setting unit 50 of the logic simulation apparatus shown in FIG.

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

1,2,3…エラーメッセージ 10…論理シミュレータ部 20…データ格納部 30…フラグ格納部 40…転送処理部 50…条件設定部 60…マスク判断部 70…マスク実行部 1, 2, 3 ... error message 10 ... Logic simulator section 20 ... Data storage unit 30 ... Flag storage unit 40 ... Transfer processing unit 50 ... Condition setting section 60 ... Mask determination unit 70 ... Mask execution unit

Claims (3)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 集積回路について、所定の設計データに
基づいて論理シミュレーションを行う装置であって、 シミュレーションの対象となる集積回路に所定の入力信
号を与えたときに、この集積回路から出力されるであろ
う所定の出力信号もしくは所定のエラーメッセージを行
単位の文字列データとして出力する論理シミュレータ部
と、 この論理シミュレータ部から出力される文字列データの
1行分を格納することができるデータセルをn個分並べ
ることにより構成され、第1段目のデータセルから第n
段目のデータセルまで一連の順序をもった段階が定義さ
れたデータ格納部と、 前記各データセルにそれぞれ対応して定義されたフラグ
セルをn個分並べることにより構成され、第1段目のフ
ラグセルから第n段目のフラグセルまで一連の順序をも
った段階が定義されたフラグ格納部と、 第n段目のデータセル内のデータを前記データ格納部か
ら出力させ、第1段目〜第(n−1)段目のデータセル
内の各データをそれぞれ第2段目〜第n段目のデータセ
ルに移し、前記論理シミュレータ部から出力された一行
分のデータを第1段目のデータセル内に取り込む、とい
う1段分のデータ転送処理と、第n段目のフラグセル内
のフラグを前記フラグ格納部から出力させ、第1段目〜
第(n−1)段目のフラグセル内の各フラグをそれぞれ
第2段目〜第n段目のフラグセルに移し、非マスク状態
を示すフラグを第1段目のフラグセル内に立てる、とい
う1段分のフラグ転送処理と、を同期させて行う転送処
理部と、 前記論理シミュレータ部が出力する種々のエラーメッセ
ージのうち、マスクする必要がある個々のエラーメッセ
ージについて、当該エラーメッセージに含まれる所定の
キーワードと、当該エラーメッセージを構成する文字列
データが占める行範囲と、当該エラーメッセージに含ま
れる所定のパラーメータがとるべき所定のマスク条件
と、を設定する条件設定部と、 チェックポイントとして予め設定された第k番目のデー
タセルに格納されている1行分の文字列データ内に、前
記条件設定部で設定されたキーワードが含まれているか
否かを検査し、含まれていた場合には、このキーワード
を含むエラーメッセージについて、前記条件設定部に設
定された行範囲を参照することにより、このエラーメッ
セージが格納されているデータセルを特定し、この特定
されたデータセルに格納されているデータと前記条件設
定部に設定された所定のマスク条件とを比較することに
より、このエラーメッセージをマスクすべきか否かを判
断し、マスクすべきとの判断が得られたら、前記特定さ
れたデータセルに対応するフラグセルにマスク状態を示
すフラグを立てる処理を行うマスク判断部と、 前記フラグ格納部から出力されたフラグが非マスク状態
を示すフラグであったときのみ、このフラグに同期して
前記データ格納部から出力されたデータを、最終的に提
示すべきデータとして出力するマスク実行部と、 を備えることを特徴とする集積回路用論理シミュレーシ
ョン装置。
1. An apparatus for performing a logic simulation on an integrated circuit based on predetermined design data, which is output from the integrated circuit when a predetermined input signal is applied to the integrated circuit to be simulated. A logic simulator unit that outputs a predetermined output signal or a predetermined error message as character string data in units of lines, and a data cell that can store one line of the character string data output from this logic simulator unit Are arranged by n, and the nth
It is configured by arranging n data storage units in which stages having a series of steps are defined up to the data cells in the tier and flag cells defined corresponding to the respective data cells are arranged. A flag storage unit in which stages having a series of orders from the flag cell to the flag cell of the nth stage is defined, and the data in the data cell of the nth stage is output from the data storage unit, The respective data in the (n-1) th stage data cells are transferred to the second to nth stage data cells, respectively, and the data for one row output from the logic simulator section is transferred to the first stage data. The data transfer process for one stage of loading in the cell and the flag in the flag cell of the nth stage are output from the flag storage unit, and
A first stage in which each flag in the (n-1) th stage flag cell is transferred to the second to nth stage flag cells, and a flag indicating a non-masked state is set in the first stage flag cell Minute flag transfer processing and a transfer processing section that performs the transfer processing in synchronization with each other, among the various error messages output by the logic simulator section, for each error message that needs to be masked, a predetermined error message included in the error message A condition setting section that sets a keyword, a line range occupied by the character string data that forms the error message, and a predetermined mask condition that a predetermined parameter included in the error message should take, and a preset check point. In the character string data for one row stored in the kth data cell, the key word set by the condition setting unit is set. If the error message contains this keyword, the error message is stored by referring to the line range set in the condition setting section. By specifying the data cell that is present and comparing the data stored in the specified data cell with the predetermined mask condition set in the condition setting unit, it is determined whether or not this error message should be masked. If it is determined that masking should be performed, a mask determination unit that performs a process of setting a flag indicating a masked state in a flag cell corresponding to the specified data cell, and a flag output from the flag storage unit Only when the flag indicates the unmasked state, the data output from the data storage unit is finally presented in synchronization with this flag. Logic simulation apparatus for integrated circuits, characterized in that it comprises a mask execution unit for outputting as can data.
【請求項2】 請求項1に記載のシミュレーション装置
において、 マスク判断部における検査によって、第k番目のデータ
セルに格納されている1行分の文字列データ内に、条件
設定部で設定されたキーワードが含まれていることが判
明したときには、転送処理部が、このキーワードを含む
エラーメッセージの最終行が第(k+1)番目のデータ
セルにくるまでに必要な段数分のデータ転送処理および
フラグ転送処理を実行するようにしたことを特徴とする
集積回路用論理シミュレーション装置。
2. The simulation device according to claim 1, wherein the condition setting unit sets the character string data for one row stored in the k-th data cell by inspection by the mask determination unit. When it is determined that the keyword is included, the transfer processing unit performs the data transfer processing and the flag transfer for the number of stages required until the last line of the error message including the keyword reaches the (k + 1) th data cell. A logic simulation device for an integrated circuit, characterized in that a process is executed.
【請求項3】 請求項1または2に記載のシミュレーシ
ョン装置において、 条件設定部に設定されるマスク条件として、エラー発生
箇所および/またはエラー発生時間を用い、エラーメッ
セージ中のエラー発生箇所あるいはエラー発生時間を示
す情報の位置を、キーワードが含まれている行に対する
相対位置として設定することを特徴とする集積回路用論
理シミュレーション装置。
3. The simulation apparatus according to claim 1, wherein an error occurrence location and / or an error occurrence time is used as a mask condition set in the condition setting unit, and the error occurrence location or error occurrence in the error message is used. A logic simulation device for an integrated circuit, wherein a position of information indicating time is set as a relative position with respect to a line containing a keyword.
JP12956094A 1994-05-19 1994-05-19 Logic simulation device for integrated circuits Expired - Fee Related JP3373296B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP12956094A JP3373296B2 (en) 1994-05-19 1994-05-19 Logic simulation device for integrated circuits

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP12956094A JP3373296B2 (en) 1994-05-19 1994-05-19 Logic simulation device for integrated circuits

Publications (2)

Publication Number Publication Date
JPH07311788A JPH07311788A (en) 1995-11-28
JP3373296B2 true JP3373296B2 (en) 2003-02-04

Family

ID=15012519

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12956094A Expired - Fee Related JP3373296B2 (en) 1994-05-19 1994-05-19 Logic simulation device for integrated circuits

Country Status (1)

Country Link
JP (1) JP3373296B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011008350A (en) * 2009-06-23 2011-01-13 Canon Inc Image processing method and image processing apparatus

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011008350A (en) * 2009-06-23 2011-01-13 Canon Inc Image processing method and image processing apparatus
US8994729B2 (en) 2009-06-23 2015-03-31 Canon Kabushiki Kaisha Method for simulating operation of object and apparatus for the same

Also Published As

Publication number Publication date
JPH07311788A (en) 1995-11-28

Similar Documents

Publication Publication Date Title
JPH03257671A (en) Design uptake system
JP3373296B2 (en) Logic simulation device for integrated circuits
JP2960740B2 (en) Testing digital circuits
US20050086621A1 (en) Method for processing design data of semiconductor integrated circuit
US20030188272A1 (en) Synchronous assert module for hardware description language library
US8156395B2 (en) Methods for generating test patterns for sequential circuits
JP2000181933A (en) Hierarchical structure preparation method and device
US6625768B1 (en) Test bus architecture
US7277920B2 (en) Implementing applications requiring access to multiple files
JP2636221B2 (en) How to create partial test items
US20110191739A1 (en) Circuit design method, circuit design system, and recording medium
JPH03116277A (en) Simulation system and method of the same
JPH05225277A (en) Design assistance device
JPH06259495A (en) Logic simulation system
JPH0778195A (en) Data updating system in circuit design cad
JPH05312905A (en) Circuit simulating apparatus
SU1654822A1 (en) Logic analyzer
JP2001076024A (en) Logic circuit simulation method
JP3191183B2 (en) Scan test control gate insertion method
JPH03294969A (en) Logical simulation method
CN109948226A (en) The processing method and processing system of activation bit
JPS63188268A (en) Design supporting device
JPH0756980A (en) Library verifying device
JPH04359376A (en) Logic verification method
JPH03127232A (en) Pattern data writing system

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071122

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081122

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees