JP2781305B2 - マルチポートramを含む論理シミュレーション方式 - Google Patents

マルチポートramを含む論理シミュレーション方式

Info

Publication number
JP2781305B2
JP2781305B2 JP4116230A JP11623092A JP2781305B2 JP 2781305 B2 JP2781305 B2 JP 2781305B2 JP 4116230 A JP4116230 A JP 4116230A JP 11623092 A JP11623092 A JP 11623092A JP 2781305 B2 JP2781305 B2 JP 2781305B2
Authority
JP
Japan
Prior art keywords
output
input
port
side memory
ram
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
JP4116230A
Other languages
English (en)
Other versions
JPH05314203A (ja
Inventor
実 斉藤
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP4116230A priority Critical patent/JP2781305B2/ja
Priority to US08/054,258 priority patent/US5511011A/en
Publication of JPH05314203A publication Critical patent/JPH05314203A/ja
Application granted granted Critical
Publication of JP2781305B2 publication Critical patent/JP2781305B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/32Circuit design at the digital level
    • G06F30/33Design verification, e.g. functional simulation or model checking

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マルチポートRAMを
含む論理回路のシミュレーション方式に関する。
【0002】
【従来の技術】マルチポートRAMは、複数の読出・書
込ポートを有するRAMであり、それぞれのポートから
異なったアドレスを同時にアクセスして、その書込およ
び読出が可能な機能を有している。
【0003】この種のマルチポートRAMは、LSIの
内蔵RAMとして使用される頻度が高く、その一例を図
2の概念図で示す。図2では、それぞれの書込ポート
(WRITE PORT)に書込アドレス(WADD
R)、書込データ(WDATA)およびイネーブル(W
E)の3種類の入力端子を有し、データポート(DAT
A PORT)には読出アドレス(RADDR)の入力
端子と、データ読出(DOUT)の出力端子とを有して
いる。
【0004】ところで、LSIで構成された論理回路で
は通常、論理回路が正確に動作するか否かを検査するた
めに、シミュレータを用いてメモリへの書込、読出動作
をシミュレーションする必要がある。
【0005】この種のメモリを含んだ論理回路をシミュ
レーションする技術としては、特開昭63−20444
2号公報に記載された技術が知られている。
【0006】
【発明が解決しようとする課題】しかし、前記公報をは
じめとして従来技術におけるシミュレータは、メモリプ
リミティブとして一対の入力ポートおよび出力ポートを
有するシングルポートのRAMのみを含む論理回路を対
象していた。そのために、複雑な動作をする前記マルチ
ポートRAMを含んだ論理回路のシミュレーションは困
難であった。
【0007】したがって、シミュレーション対象の論理
回路にマルチポートRAMを含んでいる場合には、当該
RAM部分のみを切り離してその入力側の論理回路と出
力側の論理回路とに分割して評価する等の方法を採らざ
るを得なかった。
【0008】本発明は前記課題に鑑みてなされたもので
あり、このようなマルチポートRAMを含む論理回路に
対しても、シミュレータによるシミュレーションを可能
とする技術を提供することにある。
【0009】
【課題を解決するための手段】本発明は、マルチポート
RAMを含む論理回路を評価する際に、前記マルチポー
トRAMについて複数のメモリプリミティブによって各
入出力ポートを擬似的に実現することによって、マルチ
ポートRAMの動作を再現し、シミュレータによるシミ
ュレーションを可能とした。
【0010】
【作用】前記マルチポートRAMを構成する各メモリプ
リミティブ1a,1b間のベースアドレスを一致させる
ことにより、前記マルチポートRAMの再現が可能であ
る。
【0011】このとき、入力側メモリプリミティブ1a
の書込イネーブル信号の変化を主力側のメモリプミティ
ブの入力変化として伝えてやることにより、シミュレー
タ2に対してイベント発生を通知でき、出力側プリミテ
ィブが最新のメモリ内容を読み出して出力することがで
き、シミュレータ2においてイベント法アルゴリズムに
よる評価が可能となる。
【0012】また、入力側メモリプリミティブ1aを出
力側メモリプリイティブ1bよりも小さいレベルで定義
することにより、入力側メモリプリミティブ1に対して
書込動作が行われた後に出力側メモリプリイティブ1b
からの出力データを評価することになるため、評価の序
列に矛盾を生じることなくレベルソート法アルゴリズム
による評価が可能となる。
【0013】
【実施例】
(実施例1)従来技術の図2で説明したマルチポートR
AMを、メモリプリミティブで擬似的に再現したモデル
を示したものが図5である。
【0014】同図において、マルチポートRAMは入力
側にn個の入力側メモリプリミティブ1aを有し、出力
側にm個の出力側メモリプリミティブ1bを有してい
る。各メモリプリミティブ1a,1bは、図3に示すよ
うに、入力側にアドレス(ADRS)、データ入力(D
I)、書込イネーブル(−WE)およびチップセレクト
(−CS)を有しており、出力側にデータ出力(DO)
を有している。
【0015】各メモリプリミティブ1はそれぞれに割り
当てられたベースアドレスを有している。すなわち、こ
のようなメモリプリミティブ1を用いてシミュレーショ
ンを行う場合には、メモリプリミティブ1に記憶させる
値は専用のメモリ(実メモリ)に蓄えるが、一つの回路
モデルの中で、メモリプリミティブ1は複数個モデル化
することができる。これに対して値を記憶させておく実
メモリは連続するアドレス空間に存在しているので、ま
ずそれぞれのメモリプリミティブ1を実メモリのアドレ
ス空間上のどのアドレス範囲に割り当てるかを決めなく
てはならない。つまり、この実アドレスの先頭を示すの
がベースアドレスである。
【0016】したがって、図4に示すようにシミュレー
タ2には加算器3からなるアドレス生成回路を有してお
り、メモリプリミティブ1の入力アドレス(ADRS)
と、このメモリプリミティブ1に設定されたベースアド
レス(BADRS)とを加算することにより実メモリへ
のアドレスを算出するようになっている。
【0017】ところで、シングルポートRAMの場合、
評価対象となるRAM毎にベースアドレスは異なるが、
図5に示すようなマルチポートRAMの場合、論理シミ
ュレーションを実行する場合には、マルチポートRAM
を擬似的に構成する、各メモリプリミティブ1のベース
アドレスは一致させなくてはならない。
【0018】また、イベント法による論理シミュレーシ
ョンを実行する場合、書込等のイベントが発生する度に
その変化を評価するが、この場合、入力側メモリプリミ
ティブ1aにおけるイベント発生を出力側メモリプリミ
ティブ1bに伝えなければならない。
【0019】図5において、各メモリプリミティブ1は
アドレス入力(WADDR1〜n)、データ入力(D
I)、チップセレクト(−CS)および書込イネーブル
(−WE)の各入力端子を有している。入力側メモリプ
リミティブ1では、チップセレクト(−CS)には常
に”0”、すなわち全てのチップが選択されている状態
に保持している。
【0020】また、前記入力側メモリプリミティブ1a
と出力側メモリプリミティブ1bとの間には、各入力側
メモリプリミティブ1aへの書込イネーブル(−WE)
の論理積を出力側メモリプリミティブ1bのデータ入力
(DI)に出力する論理積ゲート(負論理の場合:AN
D)が設けられている。
【0021】前記入力側メモリプリミティブ1の書込イ
ネーブル(−WE)は負論理となっているから、通常時
は”1”である。したがって、全ての入力側メモリプリ
ミティブ1が書込を行っていないときには論理積が成立
し論理積ゲート(AND)より”1”が出力されてい
る。
【0022】出力側メモリプリミティブ1では、チップ
セレクト(−CS)には常に”0”が入力されてチップ
が選択された状態に維持されている。また、全ての書込
イネーブル(−WE)には”1”が入力されており、出
力側メモリプリミティブ1bは読出専用となっている。
したがって、出力側メモリプリミティブ1bではデータ
入力(DI)がどのように変化しても出力(DOUT1
〜n)には影響はない。
【0023】次に、図5のマルチポートRAMのモデル
を使用したイベント法によるシミュレーション方法を説
明する。まず、このマルチポートRAMを構成する各メ
モリプリミティブ1間では実メモリ上のベースアドレス
が一致しており、入力側メモリプリミティブ1aと、こ
れと対となっている出力側メモリプリミティブ1bとの
間でアドレスが不一致になることはない。
【0024】ここで、たとえばPORT−1を構成する
入力側第1メモリプリミティブ11aとPORT−nを
構成する入力側第nメモリプリミティブ12aとに対し
て、それぞれ異なったアドレスに対してデータが同時に
書き込まれたとする。
【0025】シミュレータ2上は第1メモリプリミティ
ブ11aと第nメモリプリミティブ12aとが順番(順
序は不定)に評価される。これによりWDATA1の値
とWDATAnの値がそれぞれのアドレスに書き込まれ
る。
【0026】前記書込動作に際して、入力側メモリプリ
ミティブ1のWE1およびWEnの信号は”1”→”
0”となるから、論理積ゲート(AND)の論理積は不
成立となり、各出力側メモリプリミティブ1へのデータ
入力(DI)は、”1”→”0”に変化する。
【0027】シミュレータ2では、出力側メモリプリミ
ティブ11bへのデータ入力(DI)の変化によってイ
ベントの発生を検出し、このときのデータ出力(DOU
T1〜n)を評価し、最新のメモリ内容を出力する。こ
れにより書き込みアドレスと読み出しアドレスが一致し
た場合でも、直前に書き込まれた値を読み出すことがで
きる。
【0028】次に、図6および図7によって具体的なマ
ルチポートRAMを想定した評価の例を説明する。1W
/2R型のマルチポートRAMを含む論理回路として、
図6に示した入出力信号および真理値表にしたがう回路
モデルを想定する。
【0029】この回路モデルでは、アドレス入力(AD
DR1)に書込用のアドレスを与えるとともにデータ出
力(DOUT1)の読出用のアドレスを与えている。A
DDR1とADDR2とが一致しない場合で、書込イネ
ーブル(−WE)が”H”の場合(読出モード)の時に
はDOUT1,DOUT2からはそれぞれADDR1,
ADDR2の内容が出力される。また、書込イネーブル
(−WE)が”L”の場合(書込モード)の時にはDO
UT1からは書き込まれた内容、DOUT2からはAD
DR2の内容が出力される。
【0030】なお、同モデルでは、ADDR1とADD
R2とが一致した場合、すなわち同一のアドレスが同時
にアクセスされた場合には、その結果は保証されないこ
ととしている。シミュレータ2ではこのようにADDR
1とADDR2とに同一のアドレス値が入力された場
合、DOUT1およびDOUT2に”X”を出力して警
告を促すこととする。
【0031】図7は、前記図6に示した回路モデルを具
体的に実現した例であり、マルチポートRAMの本体部
分は図5に示したメモリプリミティブ1の組み合わせで
実現できる。
【0032】同図において、ADDR1は書込ポート
(WRITE POTE−1)および第1読出ポート
(READ PORT1)に入力されるとともに、排他
論理和ゲート(EOR1,2)に入力される。そしてA
DDR2は第2読出ポート(READ PORT2)に
入力されるとともに、前記排他論理和ゲート(EOR
1,2)に入力される。ADDR1とADDR2の排他
論理和出力は論理和ゲート(OR1)を通じて論理積ゲ
ート(AND1〜4)に入力され、この論理積ゲート
(AND1〜4)ではこれらと第1読出ポート(REA
D PORT1)と第2読出ポート(READ POR
T2)との論理積をとって論理和ゲート(OR2,3)
を通じて出力する。
【0033】この回路モデルは図6の真理値表にしたが
った動作を行う。すなわち、ADDR1とADDR2の
アドレス値が異なるときには−WEが”L”となると、
EOR1およびEOR2の排他論理和が成立し、OR1
を通じてAND1およびAND3に”1”が入力されこ
れらのゲートが開かれる。この状態で第1読出ポートか
らADDR1の値がAND1→OR1を通じてDOUT
1として出力される。一方、第2読出ポートからADD
R2の値がAND3→OR2を通じてDOUT2として
出力される。
【0034】また、書込イネーブル(−WE)が”H”
となると第1読出ポート(READPORT1)からは
書込データがそのままAND1→OR1を通じてDOU
T1として出力される。
【0035】一方、ADDR1とADDR2のアドレス
値が一致している場合には、EOR1およびEOR2の
排他論理和が不成立となるため、OR1からは”0”が
出力されAND1およびAND3はゲートが閉じられ
る。またOR1の出力を反転して入力するAND2およ
びAND4ではゲートが開き、”X”がそれぞれAND
2→OR1を通じてDOUT1として、またAND4→
OR2を通じてDOUT2として出力される。
【0036】このように、図5のようなメモリプリイテ
ィブの組み合わせでマルチポートRAMを擬似的に実現
することにより、図7に示すようなマルチポートRAM
を含む回路の論理シミュレーションが可能となる。
【0037】図9は、論理回路のシミュレーション手順
をフロー図で示している。すなわち、シミュレーション
対象論理回路が与えられると(ステップ901)、シミ
ュレーションモデルが生成され(902)、次にマルチ
ポートRAMの部分が前述のようにメモリプリミティブ
で構成されたモデルに変換され(903)、これらのモ
デルがシュミレータ1にロードされて(904)、シミ
ュレーションが実行される(905)。
【0038】なお、前記シミュレーション対象論理回路
中にマルチポートRAMを含まずにシングルポートRA
Mのみである場合には、ステップ903のマルチポート
RAMモデルの変換はスキップしてよい。 (実施例2)図5は、イベント法を前提としたマルチポ
ートRAMのモデルを示したが、図8はシミュレーショ
ン論理としてレベルソート法を用いた場合のメモリプリ
ミティブ1の組み合わせ例である。
【0039】同図において、図5で用いていた論理積ゲ
ート(AND)が省略されており、出力側メモリプリミ
ティブ1のデータ入力(DI)とチップセレクト(−C
S)とが短絡されて、両入力が”0”で固定されてい
る。
【0040】レベルソート法は、下位の回路から上位の
回路の順にシミュレーションを順次実行していく評価ア
ルゴリズムであるが、入力側メモリプリミティブ1a
は、出力側メモリプリミティブ1bよりも下位のレベル
で定義されており(たとえばレベル”m”)、出力側メ
モリプリミティブ1bはこれよりも上位のレベル(たと
えばレベル”m+1”)で定義されている。
【0041】入力側メモリプリミティブ群1aと出力側
メモリプリミティブ群1bとをこのように定義しておく
ことによって、必ず入力側メモリプリミティブ群1aに
書込動作を行った後に出力側メモリプリミティブ群1b
に対して読出動作を行うことが保証され、書込動作前に
読出動作を行ってしまうことによるシミュレーションの
誤評価を防止できる。
【0042】
【発明の効果】本発明によれば、メモリプリミティブを
用いて擬似的にマルチポートRAMを再現することによ
り、このようなマルチポートRAMを含む論理回路のシ
ミュレーションが可能となった。
【図面の簡単な説明】
【図1】本発明の原理図
【図2】マルチポートRAMのポート構成例を示す説明
【図3】メモリプリミティブを示す説明図
【図4】アドレス生成回路を示す説明図
【図5】マルチポートRAMをメモリプリミティブで擬
似的に再現したブロック図
【図6】マルチポートRAMの端子図およびその真理値
【図7】マルチポートRAMを含む回路モデル例を示す
【図8】レベルソート法を用いる場合のメモリプリミテ
ィブの組み合わせ例を示すブロック図
【図9】シミュレーション手順を示すフロー図
【符号の説明】
1・・メモリプリミティブ 2・・シミュレータ 3・・加算器

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 2以上の入力アドレスポートと2以上の
    出力データポートとを備えたマルチポートRAMを含む
    論理回路をシミュレータによって評価するシミュレーシ
    ョン装置であって、 単一の入力アドレスポートと単一の出力データポートと
    を有するメモリプリミティブによって前記マルチポート
    RAMの個々のポートを擬似的に実現するために、 前記入力アドレスポートとして配置された入力側メモリ
    プリミティブ群に入力される書込イネーブル信号の変化
    を捕捉して、出力側メモリプリミティブ群の入力データ
    状態を変化させることによりシミュレータにイベント発
    生を通知し、当該出力側メモリプリミティブ群の出力デ
    ータを評価することを特徴とするマルチポートRAMを
    含む論理シミュレーション装置。
  2. 【請求項2】 前記入力側メモリプリミティブ群と出力
    側メモリプリミティブ群との間に、全ての入力側メモリ
    プリミティブへの書込イネーブル信号を入力してこの論
    理積を出力する論理債ゲートを備え、当該論理積ゲート
    の出力を個々の前記出力側メモリプリミティブのデータ
    入力端子に出力することを特徴とする請求項記載のマ
    ルチポートRAMを含む論理シミュレーション装置
  3. 【請求項3】 マルチポートRAMの入力アドレスポー
    トとして入力側メモリプリミティブ群を配置し,出力ア
    ドレスポートとして前記入力アドレスポートと同期して
    アドレス入力が行われる出力側メモリプリミティブ群を
    配置し、 シミュレータにおいて前記入力側メモリプリミティブ群
    を前記出力側メモリプリミティブ群よりも低いレベルに
    定義し、 前記入力側メモリプリミティブ群への書込を実行した後
    に、前記出力側メモリプリミティブ群からの出力データ
    を評価することを特徴とする請求項1記載のマルチポー
    トRAMを含む論理シミュレーション装置
JP4116230A 1992-05-08 1992-05-08 マルチポートramを含む論理シミュレーション方式 Expired - Fee Related JP2781305B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP4116230A JP2781305B2 (ja) 1992-05-08 1992-05-08 マルチポートramを含む論理シミュレーション方式
US08/054,258 US5511011A (en) 1992-05-08 1993-04-30 Method and apparatus for logic simulation of logic system including multi-port memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4116230A JP2781305B2 (ja) 1992-05-08 1992-05-08 マルチポートramを含む論理シミュレーション方式

Publications (2)

Publication Number Publication Date
JPH05314203A JPH05314203A (ja) 1993-11-26
JP2781305B2 true JP2781305B2 (ja) 1998-07-30

Family

ID=14682055

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4116230A Expired - Fee Related JP2781305B2 (ja) 1992-05-08 1992-05-08 マルチポートramを含む論理シミュレーション方式

Country Status (2)

Country Link
US (1) US5511011A (ja)
JP (1) JP2781305B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5592634A (en) * 1994-05-16 1997-01-07 Motorola Inc. Zero-cycle multi-state branch cache prediction data processing system and method thereof
AU2002255723A1 (en) * 2002-03-14 2003-11-17 Unisys Corporation System, and method for resource usage estimation
US7539608B1 (en) * 2002-05-10 2009-05-26 Oracle International Corporation Techniques for determining effects on system performance of a memory management parameter

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5036473A (en) 1988-10-05 1991-07-30 Mentor Graphics Corporation Method of using electronically reconfigurable logic circuits

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4587625A (en) * 1983-07-05 1986-05-06 Motorola Inc. Processor for simulating digital structures
US4862347A (en) * 1986-04-22 1989-08-29 International Business Machine Corporation System for simulating memory arrays in a logic simulation machine
JPS63204441A (ja) * 1987-02-20 1988-08-24 Fujitsu Ltd 論理シミユレ−シヨン専用プロセツサの処理方式
JPH0690713B2 (ja) * 1988-01-18 1994-11-14 日本電気株式会社 メモリicシミュレータ

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5036473A (en) 1988-10-05 1991-07-30 Mentor Graphics Corporation Method of using electronically reconfigurable logic circuits

Also Published As

Publication number Publication date
JPH05314203A (ja) 1993-11-26
US5511011A (en) 1996-04-23

Similar Documents

Publication Publication Date Title
US4924429A (en) Hardware logic simulator
JP3214830B2 (ja) Icテスト用データ処理装置
US5345393A (en) Logic circuit generator
JPH0122652B2 (ja)
US20020046391A1 (en) Method for generating behavior model description of circuit and apparatus for logic verification
JP3248753B2 (ja) 組み合わせ論理回路の遷移表決定方法及び装置
JPS5916050A (ja) ダイナミツクゲ−トアレイ
JPS5878253A (ja) 自動観察検査システム用のデ−タ修正装置及びその方法
JP2915945B2 (ja) メモリ試験装置
JPS63145549A (ja) 論理回路シミユレ−シヨン方法
JPH0820967B2 (ja) 集積回路
US20040260528A1 (en) Co-simulation via boundary scan interface
JP2781305B2 (ja) マルチポートramを含む論理シミュレーション方式
JP4405599B2 (ja) 集積回路設計用の設計シェルの生成及び使用方法
US7395197B2 (en) Verification method and system for logic circuit
KR0158887B1 (ko) 논리 모의실험기
Gavrilov et al. Method of mathematical description for digital system blocks logical models
US20030009318A1 (en) Method of utilizing timing models to provide data for static timing analysis of electronic circuits
US11461522B1 (en) Emulation system supporting computation of four-state combinational functions
US6691288B1 (en) Method to debug IKOS method
JPH02202640A (ja) パターン発生装置
JPH0690713B2 (ja) メモリicシミュレータ
JPS63108747A (ja) ゲ−トアレイ集積回路
Al-Ars et al. Automatic analysis of memory faulty behavior in defective memories
JPH0443310B2 (ja)

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: 19980428

LAPS Cancellation because of no payment of annual fees