ПРОЕКТИРОВАНИЕРучноеАвтоматическое Автоматизированное (САПР) ЧеловекМашинаЧеловек + Машина
Ручное проектирование (в художественном оформлении) Традиционный образ электронщика конца прошлого века представлял собой человека с дымящимся паяльником в руках, согнувшегося над печатной платой, в которой он что-то выпаивал, регулировал и с помощью осциллографа наблюдал сигналы в разных точках схемы. Традиционный образ электронщика конца прошлого века представлял собой человека с дымящимся паяльником в руках, согнувшегося над печатной платой, в которой он что-то выпаивал, регулировал и с помощью осциллографа наблюдал сигналы в разных точках схемы.
Ручное проектирование
Ручное проектирование (неизменные атрибуты) Макет, прототип, опытный образец Макет, прототип, опытный образец Навесной (проволочный) монтаж Навесной (проволочный) монтаж «Пустышка», «шапка» проводов «Пустышка», «шапка» проводов Ручная трассировка Ручная трассировка Схема – наглядность Схема – наглядность Карты Карно Карты Карно Спецификации Спецификации Карты «прошивки» Карты «прошивки» Физический эксперимент, синхронизация Физический эксперимент, синхронизация Плохая наблюдаемость результатов Плохая наблюдаемость результатов
Ручное проектирование традиционные (ручные) методы проектирования электронной аппаратуры весьма трудоёмки, связаны со значительными затратами времени и средств, порождают много ошибок, которые потом с таким трудом «вылавливаются». традиционные (ручные) методы проектирования электронной аппаратуры весьма трудоёмки, связаны со значительными затратами времени и средств, порождают много ошибок, которые потом с таким трудом «вылавливаются». Внесение в проект изменений, которых при итерационном проектировании не избежать, тоже требует немало времени и сил. Внесение в проект изменений, которых при итерационном проектировании не избежать, тоже требует немало времени и сил. По этим причинам сроки проектирования оказываются большими, а качество проекта оставляет желать лучшего. По этим причинам сроки проектирования оказываются большими, а качество проекта оставляет желать лучшего. При реализации сложных проектов ситуация усугубляется настолько, что ручные методы проектирования становятся просто невозможными. При реализации сложных проектов ситуация усугубляется настолько, что ручные методы проектирования становятся просто невозможными.
Ручное проектирование (недостатки) Трудно, долго, много ошибок Трудно, долго, много ошибок Дорого, опасно Дорого, опасно Ограниченная сложность проекта Ограниченная сложность проекта «Иголки» - проблема «Иголки» - проблема Контроль временных соотношений -проблема Контроль временных соотношений -проблема Контроль правильности схемы – проблема (закороченные выходы, «висячие» входы) Контроль правильности схемы – проблема (закороченные выходы, «висячие» входы)
«Иголки» Предустановки данных
Автоматизированное проектирование
Поведенческое описание проекта на HDL Поведенческое описание проекта на HDL Диаграммы состояний цифровых автоматов Диаграммы состояний цифровых автоматов Схема, автоматический контроль, чекеры Схема, автоматический контроль, чекеры Имитационное моделирование Имитационное моделирование Функциональная верификация Функциональная верификация Автоматический синтез Автоматический синтез Временное моделирование Временное моделирование Беспаяльные цифровые технологии (ПЛИС) Беспаяльные цифровые технологии (ПЛИС) Автотрассировка Автотрассировка
Сквозные САПР DesignLab 8.0(MicroSim) DesignLab 8.0(MicroSim) OrCAD 9.1(OrCAD) OrCAD 9.1(OrCAD) PCAD 2006(ALTIUM) PCAD 2006(ALTIUM)
Монстры САПР ФИРМА ФИРМА Aldec Aldec Cadence Cadence Protel Protel Mentor Graphics Mentor Graphics Xilinx Xilinx Altera Altera САПР (АСМ) Active-HDL 7.1 OrCAD 9.1 PCAD 2004 ModelSim –моделятор Leonardo Spectrum - синтезатор Foundation 4.1 Xilinx ISE 7.1 Quartus 2
Метод проб и ошибок Моделирование элементов Моделирование схем Моделирование паразитных параметров Физическое моделирование (макет) Системы моделирования Проектирование схем Поведенческий синтез Логический синтез Проектирование схем Поведенческий синтез Логический синтез Функциональная верификация проекта Функциональная верификация проекта Конструкторское проектирование Конструкторское проектирование Технологическое проектирование Технологическое проектирование САПРАСМ
Технологии проектирования
Проектирование на корпусных микросхемах Входная информация о проекте должна содержать кроме функционального описания также сведения конструкторского характера: «цоколёвку» ИМС, число элементов в корпусе (например, в ИМС 555ТМ2 – два D- триггера, в ИМС 555ЛН1 – шесть инверторов и т.д.). Входная информация о проекте должна содержать кроме функционального описания также сведения конструкторского характера: «цоколёвку» ИМС, число элементов в корпусе (например, в ИМС 555ТМ2 – два D- триггера, в ИМС 555ЛН1 – шесть инверторов и т.д.). Кроме того, необходимо знать, к каким выводам микросхемы подключаются цепи питания и земли. Такая информация называется упаковочной (от слов «упаковывать в корпус») и хранится в специальных библиотеках САПР. Кроме того, необходимо знать, к каким выводам микросхемы подключаются цепи питания и земли. Такая информация называется упаковочной (от слов «упаковывать в корпус») и хранится в специальных библиотеках САПР.
САПР DesignLab 8.0 Графический редактор схем Графический редактор внешних воздействий Программа моделирования Постпроцессор моделирования Графический редактор печатных плат
Проектирование на корпусных микросхемах Первый этап – создание входного описания проекта (Entry Design).
Проектирование на корпусных микросхемах На втором этапе выполняется логическое моделирование (функциональная верификация) с целью проверки правильности работы. На втором этапе выполняется логическое моделирование (функциональная верификация) с целью проверки правильности работы. Обратите внимание, на временных диаграммах видна задержка распространения сигнала. В данном случае измерена задержка от входа D0 до выхода Y. Она составляет 27.5 ns. Обратите внимание, на временных диаграммах видна задержка распространения сигнала. В данном случае измерена задержка от входа D0 до выхода Y. Она составляет 27.5 ns.
Проектирование на корпусных микросхемах На третьем этапе верифицированная схема подготавливается для создания печатной платы. На третьем этапе верифицированная схема подготавливается для создания печатной платы. В частности, из схемы удаляются генераторы входных сигналов (стимулы), и вместо них устанавливаются разъёмы В частности, из схемы удаляются генераторы входных сигналов (стимулы), и вместо них устанавливаются разъёмы
Проектирование на корпусных микросхемах На четвёртом этапе в автоматическом режиме выполняется трассировка печатной платы
Проектирование на микросхемах программируемой логики САПР Active-HDL 7.1 (новое поколение)
Проектирование на микросхемах программируемой логики Вводим в систему описание проекта. В среде Active-HDL это можно сделать тремя способами. Мы выберем наиболее привлекательный – описание проекта в виде диаграммы состояний цифрового автомата. Вводим в систему описание проекта. В среде Active-HDL это можно сделать тремя способами. Мы выберем наиболее привлекательный – описание проекта в виде диаграммы состояний цифрового автомата.
Проектирование на микросхемах программируемой логики Чтобы избежать возможных ошибок, цифровой автомат следует промоделировать на тестовом наборе входных воздействий. Чтобы избежать возможных ошибок, цифровой автомат следует промоделировать на тестовом наборе входных воздействий.
Проектирование на микросхемах программируемой логики Передаём проект на синтез и реализацию в другую САПР, например в Xilinx ISE. В этом пакете будет выполнен автоматический синтез автомата. Передаём проект на синтез и реализацию в другую САПР, например в Xilinx ISE. В этом пакете будет выполнен автоматический синтез автомата. Результаты такого синтеза, выполненного на RTL – уровне, показаны ниже (для HDL - описания).
Проектирование на микросхемах программируемой логики
Синтезированная схема будет отображена (mapping) на множество технологических элементов выбранной микросхемы программируемой логики, и в автоматическом режиме решены задачи размещения элементов и трассировки связей на кристалле (place and route). Теперь, имея схему низкоуровневого описания, можно выполнить временное моделирование. Синтезированная схема будет отображена (mapping) на множество технологических элементов выбранной микросхемы программируемой логики, и в автоматическом режиме решены задачи размещения элементов и трассировки связей на кристалле (place and route). Теперь, имея схему низкоуровневого описания, можно выполнить временное моделирование.
Проектирование на микросхемах программируемой логики Выбираем отладочный модуль Spartan-3 фирмы Xilinx, на котором смонтирована микросхема с программируемой логикой XC3S200 (метка 1) Выбираем отладочный модуль Spartan-3 фирмы Xilinx, на котором смонтирована микросхема с программируемой логикой XC3S200 (метка 1)
Проектирование на микросхемах программируемой логики Все отладочные компоненты с помощью печатных проводников связаны с выводами ПЛИС. Например, левая кнопка, которую рекомендуется использовать как сигнал сброса, подключена к выводу микросхемы с именем L14 Все отладочные компоненты с помощью печатных проводников связаны с выводами ПЛИС. Например, левая кнопка, которую рекомендуется использовать как сигнал сброса, подключена к выводу микросхемы с именем L14
Проектирование на микросхемах программируемой логики После окончания процедуры назначения контактов ПЛИС создаётся файл конфигурации, который по GTAG – интерфейсу загружается в программируемую микросхему. Эта работа выполняется специальной программой iMPACT, входящей в состав пакета Xilinx ISE.
Проектирование на микросхемах программируемой логики Готовое устройство можно получить на основании его текстового описания на каком-либо языке описания аппаратуры, например VHDL или Verilog. Готовое устройство можно получить на основании его текстового описания на каком-либо языке описания аппаратуры, например VHDL или Verilog. VHDL - код цифрового автомата count_reg_HDL (описание интерфейса) VHDL - код цифрового автомата count_reg_HDL (описание интерфейса)
Проектирование на микросхемах программируемой логики Архитектурное тело
Проектирование на микросхемах программируемой логики Результаты высокоуровневого синтеза цифрового автомата (RTL - уровень).
Проектирование на микросхемах программируемой логики Один из блоков RTL – уровня раскрыт более подробно.
Языки моделирования и описания аппаратуры (HDL) Макроассемблер Автокод Ассемблер, ЯСК Машинный язык Процедурно- ориентированные Проблемно- ориентированные ЯОО, ЯОА, HDL - языки описания аппаратуры (VHDL, Verilog) ЯЛМ – языки логического моделирования (PML, DSL, VHDL) H – Hardware D – Description L – Language
ПРОЕКТИРОВАНИЕ Ручное проектирование Ручное проектирование Автоматизированное проектирование (САПР) НЕТДА
SIMULATION => SYNTESIS
НЕ ЗАБ ЫВАЙ !!!
БУДЕМ РАБОТАТЬ ВМЕСТЕ
Это всё