EDIF(イーディフ、イーディーアイエフ、Electronic Design Interchange Format)は電子設計データ交換用のフォーマット(データ形式)である。電子回路の回路図またはネットリスト(配線情報)を表現する中立のフォーマットとして使用されている。
EDIF以前
EDIFは、EDAベンダーの過当競争から起こるさまざまな問題を解決する試みである。これらの会社は自社専用の複雑な電子設計データベースを設計し使っていた。顧客があるシステムから別のシステムにデータを転送する必要があった時、1つのフォーマットから他のフォーマット変換するプログラムを書くことが必要であった。フォーマットの数 が増加すると変換プログラムは種類必要になり大きな問題となった。
EDIFは、当初はわずか3人の議論から始まっている。彼らは他のあらゆるフォーマットから変換することができる共通の中立のフォーマットの構想もっていた。実際にこのフォーマットの研究が始まったのは1983年11月でありデージー・システムズ、メンター・グラフィックス、モトローラ、ナショナル・セミコンダクター、テクトロニクス、テキサス・インスツルメンツおよびカリフォルニア大学バークレー校の代表が集まりEDIF運営委員会を結成した。
文法
構文
EDIFの構文は、LispのS式である。
その他
EDIF 2.0.0の基本的なトークンは、キーワード(library, cell, instance等)、文字列(ダブルクォートで囲まれたもの)、整数、記号定数(GENERIC、TIE、RIPPER等)で構成される。またラベルとして使用可能なのは予約されている文字列を除いた文字列の集合である。EDIF 3.0.0および4.0.0はキーワードを代わりに使用して記号定数を完全に無くしている。
バージョン
EDIFの1 0 0は1985年にリリースされた。
EDIFの最初の公式リリースはバージョン2 0 0である。これは標準ANSI/EIA-548-1988として1988年の3月に承認され、一冊の本として公表された。
電子産業界では数年に渡ってこのリリースをテストし、さらに多数の会社で構成される委員会がその弱点の評価も行った。1993年の9月にバージョン3 0 0をリリース、EIAの標準EIA-618の認証番号を付与された。それはその後ANSIとISOの認証も得た。これはそれは4巻の本となった。
EDIF 4 0 0は1996年8月後半にリリースされた。これは主としてEDIF 3 0 0にプリント基板に対応する拡張を加えたもので、3 0 0のサイズの2倍以上にふくれあがった。これは、CD-ROMまたはHTMLフォーマットで公表された。
発展
2 0 0の問題点
EDIF 2 0 0でユーザおよびベンダーが遭遇した問題を理解するためには、最初にエレクトロニクス産業の構成や力関係を全て説明しなければならない。この標準を必要とした人々は、主として設計技術者であり、その所属は小さなガレージ会社から何千人もの仲間を擁するような大企業まで様々であった。彼らは1980年代の終わりまで回路図とそこから生成されるネットリストと苦闘している。
大きな進展は回路図からネットリストを自動的に生成できるようになったことである。最初のサプライヤーは電子系CADベンダーであるデージー社、メンター社、バリッド社であり市場を支配し、またシェア争いで競争もした。
顧客を繋ぎ止めるための戦術の1つは、そのデータベースであり、それぞれ独自のフォーマットと特徴を持っていた。顧客がどのベンダーのソフトウェアを使うか一旦決め設計を入力し始めると、その後もずっとそのソフトウェアを使用することになった。ベンダーAからベンダーB のシステムに移ることは、それまで蓄積した設計データを再度入力しなければならず非常にコストがかかることを意味した。結果、設計技術者の特定のベンダーのシステムに固定してしまうことにもなった。
しかし顧客は別の要望も持っていた。たとえばベンダーAは優れたアナログ・シミュレーション環境を持っていて、一方ベンダーBは良いPCBやシリコン・レイアウト自動配線ソフトを持っていることもある。つまりベンダーが異なっていても優れたソフトを自由に選び使えたらという要望である。
EDIFは、電子設計会社やそこで働く技術者などエンドユーザに支援された。EDAベンダーも深く関わり合ってはいたが、彼らのモチベーションはそれらの顧客を逃したくないという消極的なものにすぎなかった。ほとんどのEDAベンダーはEDIF 2 0 0ライター(出力)ソフトを一応開発しはした。しかし彼らはより興味を持っていたのは高品質なEDIFリーダー(読み込み)の方である。他のベンダーから顧客を奪い取るために必要なのはリーダーの方であってライターではないからである。
その結果、やや奇妙なことが起こった。どのEDAベンダーのソフトも文法や意味論的に問題のあるようなライターソフトを作らなかった。意味論的なルールが緩く、同じこと意味するデータを表現するのにいくつもの方法が許された。これはいわばEDIFの「風味」として知られるようになった。
EDIF関連製品を開発したプログラマは有能で勤勉な人々ではあったが、ベンダーの方は熱心ではなかったということである。
例(冒頭のみ)
(edif sample_edif (edifVersion 2 0 0) (edifLevel 0)
(keywordMap (keywordLevel 0))
(status
(written (timeStamp 2005 0 29 18 34 21)
(program "Edif generator" (Version "v1.0"))
(dataOrigin "SAMPLE") (author "PlusMinus")
)
)