EDIF


Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску

EDIF ( Electronic Design Interchange Format ) - это независимый от производителя формат, основанный на S-выражениях, в котором хранятся электронные списки соединений и схемы. Это была одна из первых попыток создать нейтральный формат обмена данными для индустрии автоматизации электронного проектирования (EDA). Цель состояла в том, чтобы установить общий формат, из которого можно было бы извлечь проприетарные форматы систем EDA. Когда клиентам требовалось перенести данные из одной системы в другую, приходилось писать переводчики из одного формата в другой. По мере увеличения количества форматов ( N ) проблема с переводчиком превратилась в N-квадратная задача. Ожидалось, что с помощью EDIF количество переводчиков может быть сокращено до количества задействованных систем.

Представители компаний EDA Daisy Systems , Mentor Graphics , Motorola , National Semiconductor , Tektronix , Texas Instruments и Калифорнийского университета в Беркли учредили Руководящий комитет EDIF в ноябре 1983 года. Позже Хилари Кан , профессор компьютерных наук Манчестерского университета , присоединился к команде и руководил разработкой от версии EDIF 2 0 0 до финальной версии 4 0 0.

Синтаксис

Общий формат EDIF включает использование круглых скобок для ограничения определений данных, и в этом отношении он внешне напоминает Лисп . Основными токенами EDIF 2.0.0 были ключевые слова (например, библиотека , ячейка , экземпляр и т. Д.), Строки (разделенные двойными кавычками), целые числа, символьные константы (например, GENERIC , TIE , RIPPER для типов ячеек) и «Идентификаторы» , которые являются ссылочными метками, сформированными из очень ограниченного набора символов. В EDIF 3.0.0 и 4.0.0 символические константы полностью исключены, вместо них используются ключевые слова. Итак, синтаксис EDIF имеет довольно простую основу. Типичный файл EDIF выглядит так:

( edif  fibex  ( edifVersion  2  0  0 )  ( edifLevel  0 )  ( keywordMap  ( keywordLevel  0 ))  ( status  ( написано  ( timeStamp  1995  1  1  1  1  1 )  ( программа  "xxx"  ( версия  "v1" ))))  ( библиотека  xxx  ( edifLevel  0 )  ( технология  ( numberDefinition  (масштаб  1  ( е  1  -6 )  ( единица  расстояния ))))  ( клетки  dff_4  ( тип клеток  родовое )  ( вид  view1  ( viewType  список соединений )  ( интерфейс  ( порт  Aset  ( направление  ВХОДА ))  ( порт  Входящие Все входящие вызовы  ( направление  ВХОДА ))  ...  ( клетки  YYY  ( тип клеток  родовой )  ( вид schematic_  ( список соединений viewType  ) ( интерфейс ( порт CLEAR ( направление INPUT )) ( порт CLOCK ( направление INPUT )) ... ) ( содержимое ( экземпляр I_36_1 ( viewRef view1 ( cellRef dff_4 ))) ( экземпляр ( переименовать I_36_3 в "I $ 3" ) ( viewRef view1 ( cellRef добавляетub_4 )))                           ...  ( чистый  ОЧИСТИТЬ  ( вступил  ( portRef  ОЧИСТИТЬ )  ( portRef  Асет  ( instanceRef  I_36_1 ))  ( portRef  Асет  ( instanceRef  I_36_3 ))))  ...

Версии

10 выпуск EDIF был выпущен в 1985 году.

EDIF 2 0 0

Первым «настоящим» публичным выпуском EDIF была версия 2 0 0, которая была утверждена в марте 1988 г. как стандарт ANSI / EIA-548-1988. Издается в единственном томе. Эта версия не имеет формального оператора области видимости, но то, что она пытается захватить, покрывается определенными viewType s:

  • ПОВЕДЕНИЕ для описания поведения клетки
  • ДОКУМЕНТ для описания документации ячейки
  • ГРАФИЧЕСКИЙ для описания тупой графики и текстового представления отображаемой или печатаемой информации.
  • LOGICMODEL для описания логико-имитационной модели ячейки
  • МАСКАРТ для описания топологии интегральной схемы
  • NETLIST для описания списка соединений
  • PCBLAYOUT для описания печатной платы
  • SCHEMATIC для описания схематического представления и связности ячейки
  • ЧУЖОЙ, чтобы описать пока неизвестное представление клетки
  • СИМВОЛИКА для описания символического макета

Промышленность тестировала этот выпуск в течение нескольких лет, но, наконец, широко использовалось только представление NETLIST, и некоторые инструменты EDA все еще поддерживают его сегодня для EDIF 2 0 0.

Для решения проблем с основным стандартом 2 0 0 было выпущено несколько дополнительных документов:

  • Ассоциация электронной промышленности
    • Серия монографий EDIF, Том 1, Введение в EDIF , EIA / EDIF-1, сентябрь 1988 г.
    • Серия монографий EDIF, Том 2, Связность EDIF , EIA / EDIF-2, июнь 1989 г.
    • Использование EDIF 2 0 0 для передачи схем , EIA / EDIF / AG-1, июль 1989 г.
  • Документация от Хилари Дж. Кан, факультет компьютерных наук, Манчестерский университет
    • EDIF 2 0 0, Введение », сентябрь 1989 г.
    • EDIF Вопросы и ответы, том первый , ноябрь 1988 г.
    • EDIF Вопросы и ответы, том второй , февраль 1989 г.
    • EDIF Вопросы и ответы, том третий , июль 1989 г.
    • EDIF Вопросы и ответы, том четвертый , ноябрь 1989 г.
    • EDIF Вопросы и ответы, том пятый , июнь 1991 г.

EDIF 3 0 0

Из - за некоторых основных недостатков в выпуске 2 0 0 новый не совместимы выпуск 3 0 0 был выпущен в сентябре 1993 года, учитывая обозначение EIA стандарта EIA-618. Позже он получил обозначения ANSI и ISO . Издается в 4-х томах. Основное внимание в этой версии уделялось типам представлений NETLIST и SCHEMATIC из 20 0. MASKLAYOUT, PCBLAYOUT и некоторые другие представления были исключены из этого выпуска и перенесены на более поздние выпуски, поскольку работа над этими представлениями не была полностью завершена.

EDIF 3 0 0 доступен в Международной электротехнической комиссии как IEC 61690-1.

EDIF 4 0 0

EDIF 4 0 0 был выпущен в конце августа 1996 года, главным образом для добавления расширений «Печатная плата» (исходное представление PCBLAYOUT) в EDIF 3 0 0. Это более чем удвоило размер EDIF 3 0 0 и опубликовано в формате HTML. на компакт-диске.

EDIF 4 0 0 доступен в Международной электротехнической комиссии как IEC 61690-2.

Эволюция

Проблемы с 2 0 0

Чтобы понять проблемы, с которыми пользователи и поставщики сталкиваются с EDIF 2 0 0, сначала необходимо представить себе все элементы и динамику электронной промышленности. В этом стандарте нуждались в основном инженеры-конструкторы, работавшие в компаниях, размер которых варьировался от гаража до многомиллиардных предприятий с тысячами инженеров. В конце 1980-х эти инженеры работали в основном со схемами и списками соединений, и большим толчком стало автоматическое создание списков соединений из схем. Первыми поставщиками были поставщики средств автоматизации электронного проектирования (например, Daisy, Mentor и Valid сформировали самую раннюю преобладающую группу). Эти компании активно боролись за свои доли на этом рынке.

Одной из тактик, используемых этими компаниями для «поимки» своих клиентов, были их собственные базы данных. У каждого были особенности, которых не было у других. После того, как было принято решение использовать программное обеспечение конкретного поставщика для ввода в проект, заказчик никогда не был вынужден использовать никакое другое программное обеспечение. Переход от систем поставщика A к системам поставщика B обычно означал очень дорогостоящий повторный ввод почти всех проектных данных вручную в новую систему. Расходы на «миграцию» были основным фактором, заставившим инженеров-проектировщиков использовать одного поставщика.

Но у «заказчиков» было иное желание. Они сразу увидели, что в то время как поставщик A может иметь действительно хорошую среду аналогового моделирования, поставщик B имеет гораздо лучший автоматический маршрутизатор печатной платы или кремниевой схемы. И они хотели, чтобы у них была возможность выбирать среди различных поставщиков.

EDIF в основном поддерживался конечными пользователями электроники и их компаниями. Поставщики EDA также были вовлечены, но их мотивация была больше похожа на желание не оттолкнуть своих клиентов. Большинство поставщиков EDA производили переводчики EDIF 20 0, но они определенно были больше заинтересованы в создании высококачественных считывателей EDIF, и у них не было абсолютно никакой мотивации писать какое-либо программное обеспечение, генерирующее EDIF (модуль записи EDIF), помимо угроз со стороны заказчики массового перехода на ПО другого производителя.

Результат получился довольно интересным. Вряд ли какой-либо поставщик программного обеспечения написал вывод EDIF 2 0 0, в котором не было бы серьезных нарушений синтаксиса или семантики. Семантика была достаточно свободной, чтобы можно было описать одни и те же данные несколькими способами. Это стало называться «ароматизаторами» EDIF. Компании-поставщики не всегда считали важным выделять много ресурсов на продукты EDIF, даже если они продавали их большое количество. Было несколько историй об активных продуктах, когда практически никто не обслуживал их в течение многих лет. Жалобы пользователей просто собирались и распределялись по приоритетам. Чем сложнее становилось экспортировать данные клиентов в EDIF, тем больше это нравилось поставщикам. Те, кто писал переводчики EDIF, обнаружили, что они потратили огромное количество времени и усилий на создание достаточно мощных, прощающих ошибок, читателей с искусственным интеллектом,который мог обработать и собрать воедино некачественный код, созданный существующими авторами EDIF 20 0 того времени.

При разработке EDIF 3 0 0 комитеты хорошо осознавали недостатки языка, клевету, обрушившуюся на EDIF 2 0 0 со стороны поставщиков, и разочарование конечных пользователей. Таким образом, чтобы ужесточить семантику языка и обеспечить более формальное описание стандарта, был применен революционный подход к предоставлению информационной модели для EDIF на языке информационного моделирования EXPRESS . Это помогло лучше задокументировать стандарт, но было сделано в большей степени с опозданием, поскольку создание синтаксиса выполнялось независимо от модели, а не генерировалось из модели. Кроме того, несмотря на то, что стандарт говорит, что если синтаксис и модель не совпадают, модель является стандартной, на практике это не так. BNFОписание синтаксиса является основой языка, поскольку программное обеспечение, выполняющее повседневную работу по созданию описаний проекта, основано на фиксированном синтаксисе. Информационная модель также страдала от того, что она не была (и не подходит) идеально для описания EDIF. Он вообще не очень хорошо описывает такие концепции, как пространства имен, и различия между определением и ссылкой также не поддаются четкому описанию. Кроме того, конструкции в EXPRESS для описания ограничений могут быть формальными, но описание ограничений иногда бывает довольно сложным. Таким образом, большинство ограничений было просто описано как комментарии. Большинство других превратились в тщательно продуманные формальные описания, которые большинство читателей никогда не смогут расшифровать и, следовательно, могут не выдержать автоматической отладки / компиляции.точно так же, как программа может хорошо выглядеть в обзоре, но компилятор может обнаружить некоторые интересные ошибки, а при запуске написанной программы могут быть обнаружены еще более интересные ошибки. (Кроме того, аналогичные компиляторы / исполнители EXPRESS не существовали, когда стандарт был написан, и могут не существовать до сих пор!)

Решения проблем EDIF 2 0 0

Решение проблемы «вкуса» EDIF 2 0 0 заключалось в разработке более конкретного семантического описания в EDIF 3 0 0 (1993). Действительно, сообщенные результаты людей, генерирующих переводчики EDIF 3 0 0, заключаются в том, что составителей теперь было намного труднее получить правильно из-за большого количества семантических ограничений, а читателей сравнительно несложно развивать.

Решением «конфликта интересов» поставщиков были нейтральные сторонние компании, которые могли предоставлять продукты EDIF на основе интерфейсов поставщиков. Такое отделение продуктов EDIF от прямого контроля со стороны поставщиков было критически важно для обеспечения сообщества конечных пользователей инструментами, которые хорошо работают. Он сложился естественно и без комментариев. Engineering DataXpress была, пожалуй, первой такой компанией в этой сфере с Electronic Tools Company.казалось, что они захватили рынок в середине-конце 1990-х годов. Еще одна динамика в этой отрасли - это сам EDIF. Поскольку они выросли до довольно больших размеров, создание читателей и писателей стало очень дорогим делом. Обычно сторонние компании собирают необходимых специалистов и могут использовать эти знания для более эффективного создания программного обеспечения. Они также могут использовать совместное использование кода и другие методы, недоступные отдельным поставщикам. Не к 2000 году практически ни один крупный поставщик произвел свои собственные инструменты EDIF, выбирая вместо того, чтобы OEM инструменты сторонних производителей .

С момента выпуска EDIF 4 0 0 вся организация стандартизации EDIF практически распалась. Не было опубликовано ни одного заседания технических подкомитетов, группы экспертов EDIF и т. Д. Большинство вовлеченных лиц перешли в другие компании или в другие компании. Рассылка новостей была прекращена, и группа пользователей больше не проводит ежегодные собрания. EDIF 3 0 0 и 4 0 0 теперь являются стандартами ANSI , IEC и европейскими (EN). Версия EDIF 3 0 0 - это IEC / EN 61690-1, а EDIF Version 4 0 0 - это IEC / EN 61690-2.

Потомки EDIF

  • LKSoft взяла основные концепции из EDIF 2 0 0, чтобы создать собственный формат данных с расширением по умолчанию ".cam" для своей системы CircuitCAM, первоначально предложенной LPKF Laser & Electronics AG в Гарбсен / Ганновер, Германия, а сегодня принадлежащей DCT Co., Ltd. в Тяньцзине, Китай . Для того, чтобы эффективно работать на EDIF как форматы LKSoft разработала EDIF процедурный интерфейс , к API для языка программирования Си .
  • Компания Zuken , ранее называвшаяся Racal-Redac Ltd., взяла концепции из ранней разработки EDIF 4 0 0, чтобы создать новый частный формат под названием CADIF для своей системы Visula PCB-CAD. Этот формат также широко используется сторонними поставщиками.
  • STEP-AP210, часть ISO 10303 , практически унаследовал все функциональные возможности EDIF 4 0 0, за исключением схем.

внешние ссылки

  • Инструменты BYU EDIF Среда Java для анализа / управления файлами EDIF, разработанная и поддерживаемая лабораторией конфигурируемых вычислений BYU.
  • Torc C ++ API с открытым исходным кодом для реконфигурируемых вычислений, включая синтаксический анализ и обработку EDIF 2 0 0, от группы реконфигурируемых вычислений ISI
  • Обзор EDIF от Elgris Technologies, Inc.
  • www.edif.org в архиве Интернет-архива www.edif.org (ныне несуществующий), содержащий введение в формат EDIF
  • Компьютерные средства для проектирования СБИС - Приложение D: Электронный формат обмена проектами Стивена М. Рубина
  • Профессор Хилари Кан (1943-2007)
Источник « https://en.wikipedia.org/w/index.php?title=EDIF&oldid=956133791 »