970:
describe such concepts as name spaces very well at all, and the differences between a definition and a reference is not clearly describable either. Also, the constructs in EXPRESS for describing constraints might be formal, but constraint description is a fairly complicated matter at times. So, most constraints ended up just being described as comments. Most of the others became elaborate formal descriptions which most readers will never be able to decipher, and therefore may not stand up to automated debugging/compiling, just as a program might look good in review, but a compiler might find some interesting errors, and actually running the program written might find even more interesting errors. (Additionally, analogous EXPRESS compilers/executors didn't exist when the standard was written, and may not still exist today!)
957:
companies did not always feel it important to allocate many resources to EDIF products, even if they sold a large number of them. There were several stories of active products with virtually no-one to maintain them for years. User complaints were merely gathered and prioritized. The harder it became to export customer data to EDIF, the more the vendors seemed to like it. Those who did write EDIF translators found they spent a huge amount of time and effort on generating sufficiently powerful, forgiving, artificially intelligent readers, that could handle and piece together the poor-quality code produced by the extant EDIF 2 0 0 writers of the day.
880:
941:
multi-billion dollar facilities with thousands of engineers. These engineers worked mainly from schematics and netlists in the late 1980s, and the big push was to generate the netlists from the schematics automatically. The first suppliers were
Electronic Design Automation vendors (e.g., Daisy, Mentor, and Valid formed the earliest predominating set). These companies competed vigorously for their shares of this market.
965:. This helped to better document the standard, but was done more as an afterthought, as the syntax crafting was done independently of the model, instead of being generated from the model. Also, even though the standard says that if the syntax and model disagree, the model is the standard, this is not the case in practice. The
1003:
Since the release of EDIF 4 0 0, the entire EDIF standards organisation has essentially dissolved. There have been no published meetings of any of the technical subcommittees, the EDIF Experts group, etc. Most of the individuals involved have moved on to other companies or efforts. The newsletter was
969:
description of the syntax is the foundation of the language inasmuch as the software that does the day-to-day work of producing design descriptions is based on a fixed syntax. The information model also suffered from the fact that it was not (and is not) ideally suited to describing EDIF. It does not
960:
In designing EDIF 3 0 0, the committees were well aware of the faults of the language, the calumny heaped on EDIF 2 0 0 by the vendors and the frustration of the end users. So, to tighten the semantics of the language, and provide a more formal description of the standard, the revolutionary approach
956:
The result was rather interesting. Hardly any software vendor wrote EDIF 2 0 0 output that did not have severe violations of syntax or semantics. The semantics were just loose enough that there might be several ways to describe the same data. This began to be known as "flavors" of EDIF. The vendor
952:
EDIF was mainly supported by the electronics design end-users, and their companies. The EDA vendors were involved also, but their motivation was more along the lines of wanting to not alienate their customers. Most of the EDA vendors produced EDIF 2 0 0 translators, but they were definitely more
995:
seeming to have captured the market in the mid to late 1990s. Another dynamic in this industry is EDIF itself. Since they have grown to a rather large size, generating readers and writers has become a very expensive proposition. Usually the third-party companies have congregated the necessary
944:
One of the tactics used by these companies to "capture" their customers was their proprietary databases. Each had special features that the others did not. Once a decision was made to use a particular vendor's software to enter a design, the customer was ever after constrained to use no other
986:
The solution to vendor "conflict of interest" was neutral third-party companies, who could provide EDIF products based on vendor interfaces. This separation of the EDIF products from direct vendor control was critical to providing the end-user community with tools that worked well. It formed
122:
for cell types) and "Identifiers", which are reference labels formed from a very restricted set of characters. EDIF 3.0.0 and 4.0.0 dropped the symbolic constants entirely, using keywords instead. So, the syntax of EDIF has a fairly simple foundation. A typical EDIF file looks like this:
838:
designations. It is published in 4 volumes. The main focus of this version were the viewTypes NETLIST and SCHEMATIC from 2 0 0. MASKLAYOUT, PCBLAYOUT and some other views were dropped from this release and shifted for later releases because the work for these views was not fully completed.
940:
To understand the problems users and vendors encountered with EDIF 2 0 0, one first has to picture all the elements and dynamics of the electronics industry. The people who needed this standard were mainly design engineers, who worked for companies whose size ranged from a house garage to
35:(EDA) industry. The goal was to establish a common format from which the proprietary formats of the EDA systems could be derived. When customers needed to transfer data from one system to another, it was necessary to write translators from one format to other. As the number of formats (
948:
But the "customers" had a different desire. They saw immediately that while vendor A might have a really nice analog simulation environment, vendor B had a much better PCB or silicon layout auto-router. And they wished that they could pick and choose amongst the different vendors.
996:
specialists and can use this expertise to more efficiently generate the software. They are also able to leverage code sharing and other techniques an individual vendor could not. By 2000, almost no major vendor produced its own EDIF tools, choosing instead to
945:
software. To move from vendor A's to vendor B's systems usually meant a very expensive re-entry of almost all design data by hand into the new system. This expense of "migration" was the main factor that locked design engineers into using a single vendor.
953:
interested in generating high-quality EDIF readers, and they had absolutely no motivation at all to write any software that generated EDIF (an EDIF Writer), beyond threats from customers of mass migration to another vendor's software.
854:
EDIF 4 0 0 was released in late August 1996, mainly to add "Printed
Circuit Board" extensions (the original PCBLAYOUT view) to EDIF 3 0 0. This more than doubled the size of EDIF 3 0 0, and is published in HTML format on CD.
978:
The solution to the "flavor" problem of EDIF 2 0 0 was to develop a more specific semantic description in EDIF 3 0 0 (1993). Indeed, reported results of people generating EDIF 3 0 0 translators was that the writers were now
674:
The first "real" public release of EDIF was version 2 0 0, which was approved in March 1988 as the standard ANSI/EIA-548-1988. It is published in a single volume. This version has no formal
1033:
1029:
741:
The industry tested this release for several years, but finally only the NETLIST view was the one widely used and some EDA tools are still supporting it today for EDIF 2 0 0.
992:
988:
826:
Because of some fundamental weaknesses in the 2 0 0 release a new not compatible release 3 0 0 was released in
September 1993, given the designation of
835:
1142:
859:
1050:, formerly Racal-Redac Ltd., took concepts from the early EDIF 4 0 0 development to create a new proprietary format called CADIF for their
1025:
1009:
983:
more difficult to get right, due to the great number of semantic restrictions, and the readers are comparatively trivial to develop.
843:
1021:
43:-squared problem. The expectation was that with EDIF the number of translators could be reduced to the number of involved systems.
94:
The general format of EDIF involves using parentheses to delimit data definitions, and in this way it superficially resembles
1005:
831:
71:
927:
1024:
took major concepts from EDIF 2 0 0 to create a proprietary data format with the default extension ".cam" for their
909:
962:
1101:
997:
905:
827:
1012:
and
European (EN) standards. EDIF Version 3 0 0 is IEC/EN 61690-1, and EDIF Version 4 0 0 is IEC/EN 61690-2.
32:
1118:
Open-source C++ API for reconfigurable computing, including parsing and manipulation of EDIF 2 0 0, from
95:
1157:
31:
and schematics. It was one of the first attempts to establish a neutral data exchange format for the
1138:
Computer Aids for VLSI Design - Appendix D: Electronic Design
Interchange Format by Steven M. Rubin
1041:
890:
83:
1131:
894:
86:, joined the team and led the development from version EDIF 2 0 0 till the final version 4 0 0.
59:
1004:
abandoned, and the Users' Group no longer holds yearly meetings. EDIF 3 0 0 and 4 0 0 are now
901:
771:
Documentation from Hilary J. Kahn, Department of
Computer Science, University of Manchester
110:, etc.), strings (delimited with double quotes), integer numbers, symbolic constants (e.g.
744:
To overcome problems with the main 2 0 0 standard several further documents got released:
8:
961:
was taken to provide an information model for EDIF, in the information modeling language
1071:
67:
1134:
Archive of www.edif.org (now defunct) containing an introduction to the EDIF format
1125:
966:
1108:
A Java framework for parsing/manipulating EDIF files, developed and maintained by
1061:, practically inherited all of the EDIF 4 0 0 functionality except for schematics.
1137:
1105:
675:
51:
1086:
858:
EDIF 4 0 0 is available from the
International Electrotechnical Commission as
1151:
1080:
726:
SCHEMATIC to describe the schematic representation and connectivity of a cell
47:
24:
79:
701:
graphics and text representation of displayable or printable information
1083: – Standard file format used for designing printed circuit boards
1098:
1058:
1054:
PCB-CAD system. This format is also widely used by 3rd party vendors.
63:
1036:. To efficiently work on EDIF like formats LKSoft has developed the
879:
55:
28:
731:
STRANGER to describe an as yet unknown representation of a cell
1047:
706:
LOGICMODEL to describe the logic-simulation model of the cell
1109:
1076:
Pages displaying short descriptions of redirect targets
991:
was perhaps the first such company in this realm, with
678:
but what it tries to capture is covered by the defined
1115:
1074: – A widely used CAD 3D data exchange file format
1119:
752:
EDIF Monograph Series, Volume 1, Introduction to EDIF
98:. The basic tokens of EDIF 2.0.0 were keywords (like
973:
711:
MASKLAYOUT to describe an integrated circuit layout
758:EDIF Monograph Series, Volume 2, EDIF Connectivity
1149:
1032:in Garbsen/Hannover, Germany and today owned by
692:DOCUMENT to describe the documentation of a cell
721:PCBLAYOUT to describe a printed circuit board
39:) multiplied, the translator issue became an
908:. Unsourced material may be challenged and
687:BEHAVIOR to describe the behavior of a cell
928:Learn how and when to remove this message
844:International Electrotechnical Commission
793:EDIF Questions and answers, volume three
805:EDIF Questions and answers, volume five
799:EDIF Questions and answers, volume four
764:Using EDIF 2 0 0 for schematic transfer
1150:
869:
787:EDIF Questions and answers, volume two
781:EDIF Questions and answers, volume one
736:SYMBOLIC to describe a symbolic layout
82:, a computer science professor at the
23:) is a vendor-neutral format based on
46:Representatives of the EDA companies
1132:www.edif.org at the Internet Archive
906:adding citations to reliable sources
873:
830:standard EIA-618. It later achieved
775:EDIF 2 0 0, An Introductory Tutorial
21:Electronic Design Interchange Format
1015:
658:
13:
748:Electronic Industries Association
72:University of California, Berkeley
14:
1169:
1143:Professor Hilary Kahn (1943-2007)
1122:'s Reconfigurable Computing Group
1092:
842:EDIF 3 0 0 is available from the
974:Solutions to EDIF 2 0 0 problems
878:
818:Released on 15 September, 1992.
1030:LPKF Laser & Electronics AG
987:naturally and without comment.
1128:from Elgris Technologies, Inc.
1034:DCT Co., Ltd. in Tianjn, China
1:
1112:'s Configurable Computing Lab
1028:system offered originally by
849:
821:
813:
716:NETLIST to describe a netlist
669:
27:in which to store Electronic
864:
33:electronic design automation
7:
1065:
666:EDIF Version 1 1 0 in 1986
663:EDIF Version 1 0 0 in 1985
10:
1174:
766:, EIA/EDIF/AG-1, July 1989
1038:EDIF Procedural Interface
89:
993:Electronic Tools Company
754:, EIA/EDIF-1, Sept. 1988
125:
84:University of Manchester
78:in November 1983. Later
760:, EIA/EDIF-2, June 1989
76:EDIF Steering Committee
1057:STEP-AP210, a part of
1042:C programming language
989:Engineering DataXpress
697:GRAPHIC to describe a
60:National Semiconductor
1000:third-party tools.
902:improve this section
870:Problems with 2 0 0
1104:2006-12-05 at the
1072:STEP (file format)
1040:, an API for the
938:
937:
930:
68:Texas Instruments
1165:
1158:EDA file formats
1077:
1016:EDIF Descendants
933:
926:
922:
919:
913:
882:
874:
777:, September 1989
659:Revision History
654:
651:
648:
645:
642:
639:
636:
633:
630:
627:
624:
621:
618:
615:
612:
609:
606:
603:
600:
597:
594:
591:
588:
585:
582:
579:
576:
573:
570:
567:
564:
561:
558:
555:
554:"I$ 3"
552:
549:
546:
543:
540:
537:
534:
531:
528:
525:
522:
519:
516:
513:
510:
507:
504:
501:
498:
495:
492:
489:
486:
483:
480:
477:
474:
471:
468:
465:
462:
459:
456:
453:
450:
447:
444:
441:
438:
435:
432:
429:
426:
423:
420:
417:
414:
411:
408:
405:
402:
399:
396:
393:
390:
387:
384:
381:
378:
375:
372:
369:
366:
363:
360:
357:
354:
351:
348:
345:
342:
339:
336:
333:
330:
327:
324:
321:
318:
315:
312:
309:
306:
303:
300:
297:
294:
291:
288:
285:
282:
279:
276:
275:numberDefinition
273:
270:
267:
264:
261:
258:
255:
252:
249:
246:
243:
240:
237:
234:
231:
228:
225:
222:
219:
216:
213:
210:
207:
204:
201:
198:
195:
192:
189:
186:
183:
180:
177:
174:
171:
168:
165:
162:
159:
156:
153:
150:
147:
144:
141:
138:
135:
132:
129:
74:established the
1173:
1172:
1168:
1167:
1166:
1164:
1163:
1162:
1148:
1147:
1106:Wayback Machine
1095:
1075:
1068:
1018:
976:
934:
923:
917:
914:
899:
883:
872:
867:
852:
846:as IEC 61690-1
824:
816:
801:, November 1989
789:, February 1989
783:, November 1988
676:scope statement
672:
661:
656:
655:
652:
649:
646:
643:
640:
637:
634:
631:
628:
625:
622:
619:
616:
613:
610:
607:
604:
601:
598:
595:
592:
589:
586:
583:
580:
577:
574:
571:
568:
565:
562:
559:
556:
553:
550:
547:
544:
541:
538:
535:
532:
529:
526:
523:
520:
517:
514:
511:
508:
505:
502:
499:
496:
493:
490:
487:
484:
481:
478:
475:
472:
469:
466:
463:
460:
457:
454:
451:
448:
445:
442:
439:
436:
433:
430:
427:
424:
421:
418:
415:
412:
409:
406:
403:
400:
397:
394:
391:
388:
385:
382:
379:
376:
373:
370:
367:
364:
361:
358:
355:
352:
349:
346:
343:
340:
337:
334:
331:
328:
325:
322:
319:
316:
313:
310:
307:
304:
301:
298:
295:
292:
289:
286:
283:
280:
277:
274:
271:
268:
265:
262:
259:
256:
253:
250:
247:
244:
241:
238:
235:
232:
230:"xxx"
229:
226:
223:
220:
217:
214:
211:
208:
205:
202:
199:
196:
193:
190:
187:
184:
181:
178:
175:
172:
169:
166:
163:
160:
157:
154:
151:
148:
145:
142:
139:
136:
133:
130:
127:
92:
52:Mentor Graphics
12:
11:
5:
1171:
1161:
1160:
1146:
1145:
1140:
1135:
1129:
1123:
1113:
1099:BYU EDIF Tools
1094:
1093:External links
1091:
1090:
1089:
1087:PCB NC formats
1084:
1078:
1067:
1064:
1063:
1062:
1055:
1045:
1017:
1014:
975:
972:
936:
935:
886:
884:
877:
871:
868:
866:
863:
851:
848:
823:
820:
815:
812:
811:
810:
809:
808:
802:
796:
790:
784:
778:
769:
768:
767:
761:
755:
739:
738:
733:
728:
723:
718:
713:
708:
703:
694:
689:
671:
668:
660:
657:
239:"v1"
126:
91:
88:
9:
6:
4:
3:
2:
1170:
1159:
1156:
1155:
1153:
1144:
1141:
1139:
1136:
1133:
1130:
1127:
1126:EDIF Overview
1124:
1121:
1117:
1114:
1111:
1107:
1103:
1100:
1097:
1096:
1088:
1085:
1082:
1081:Gerber format
1079:
1073:
1070:
1069:
1060:
1056:
1053:
1049:
1046:
1043:
1039:
1035:
1031:
1027:
1023:
1020:
1019:
1013:
1011:
1007:
1001:
999:
994:
990:
984:
982:
971:
968:
964:
958:
954:
950:
946:
942:
932:
929:
921:
911:
907:
903:
897:
896:
892:
887:This section
885:
881:
876:
875:
862:
861:
856:
847:
845:
840:
837:
833:
829:
819:
806:
803:
800:
797:
794:
791:
788:
785:
782:
779:
776:
773:
772:
770:
765:
762:
759:
756:
753:
750:
749:
747:
746:
745:
742:
737:
734:
732:
729:
727:
724:
722:
719:
717:
714:
712:
709:
707:
704:
702:
698:
695:
693:
690:
688:
685:
684:
683:
681:
677:
667:
664:
124:
121:
117:
113:
109:
105:
101:
97:
87:
85:
81:
77:
73:
69:
65:
61:
57:
53:
49:
48:Daisy Systems
44:
42:
38:
34:
30:
26:
25:S-Expressions
22:
18:
1051:
1037:
1002:
985:
980:
977:
959:
955:
951:
947:
943:
939:
924:
918:October 2007
915:
900:Please help
888:
857:
853:
841:
825:
817:
804:
798:
792:
786:
780:
774:
763:
757:
751:
743:
740:
735:
730:
725:
720:
715:
710:
705:
700:
696:
691:
686:
679:
673:
665:
662:
176:keywordLevel
119:
115:
111:
107:
103:
99:
93:
75:
45:
40:
36:
20:
16:
15:
860:IEC 61690-2
807:, June 1991
795:, July 1989
644:instanceRef
623:instanceRef
140:edifVersion
80:Hilary Kahn
1026:CircuitCAM
850:EDIF 4 0 0
822:EDIF 3 0 0
814:EDIF 2 9 0
670:EDIF 2 0 0
434:schematic_
269:technology
170:keywordMap
1059:ISO 10303
889:does not
865:Evolution
488:direction
467:direction
452:interface
395:direction
374:direction
359:interface
257:edifLevel
200:timeStamp
158:edifLevel
64:Tektronix
1152:Category
1102:Archived
1066:See also
680:viewType
575:addsub_4
542:instance
512:instance
506:contents
440:viewType
419:cellType
347:viewType
326:cellType
308:distance
108:instance
70:and the
56:Motorola
29:netlists
963:EXPRESS
910:removed
895:sources
635:portRef
614:portRef
602:portRef
572:cellRef
563:viewRef
530:cellRef
521:viewRef
443:netlist
422:generic
350:netlist
329:generic
248:library
236:version
227:program
194:written
112:GENERIC
100:library
1052:Visula
1022:LKSoft
647:I_36_3
626:I_36_1
596:joined
551:I_36_3
548:rename
515:I_36_1
188:status
120:RIPPER
90:Syntax
1048:Zuken
605:CLEAR
590:CLEAR
566:view1
533:dff_4
524:view1
491:INPUT
482:CLOCK
470:INPUT
461:CLEAR
398:INPUT
377:INPUT
341:view1
320:dff_4
281:scale
134:fibex
1116:Torc
1006:ANSI
981:much
893:any
891:cite
834:and
832:ANSI
699:dumb
650:))))
638:aset
617:aset
479:port
458:port
431:view
410:cell
389:clok
386:port
368:aset
365:port
338:view
317:cell
311:))))
305:unit
242:))))
203:1995
131:edif
104:cell
96:Lisp
17:EDIF
1120:ISI
1110:BYU
1010:IEC
998:OEM
967:BNF
904:by
836:ISO
828:EIA
682:s:
653:...
587:net
581:...
578:)))
536:)))
497:...
413:yyy
404:...
251:xxx
116:TIE
1154::
1008:,
629:))
494:))
473:))
401:))
380:))
296:-6
182:))
118:,
114:,
106:,
102:,
66:,
62:,
58:,
54:,
50:,
1044:.
931:)
925:(
920:)
916:(
912:.
898:.
641:(
632:(
620:(
611:(
608:)
599:(
593:(
584:(
569:(
560:(
557:)
545:(
539:(
527:(
518:(
509:(
503:(
500:)
485:(
476:(
464:(
455:(
449:(
446:)
437:(
428:(
425:)
416:(
407:(
392:(
383:(
371:(
362:(
356:(
353:)
344:(
335:(
332:)
323:(
314:(
302:(
299:)
293:1
290:e
287:(
284:1
278:(
272:(
266:(
263:)
260:0
254:(
245:(
233:(
224:(
221:)
218:1
215:1
212:1
209:1
206:1
197:(
191:(
185:(
179:0
173:(
167:(
164:)
161:0
155:(
152:)
149:0
146:0
143:2
137:(
128:(
41:N
37:N
19:(
Text is available under the Creative Commons Attribution-ShareAlike License. Additional terms may apply.