Реклама дисциплины Уточним три основополагающих для нашей дисциплины понятия: Уточним три основополагающих для нашей дисциплины понятия: ПРОЕКТИРОВАНИЕ.

Презентация:



Advertisements
Похожие презентации
ПРОЕКТИРОВАНИЕРучноеАвтоматическое Автоматизированное (САПР) ЧеловекМашинаЧеловек + Машина.
Advertisements

Реклама дисциплины «Моделирование» Единство и борьба противоположностей Единство и борьба противоположностей Материя первична, сознание вторично Материя.
Резюме Вопросы Что должно остаться в памяти?. Резюме (фрагменты) Проектирование всё в большей степени будет осуществляться на уровне кристалла, а не на.
СОБОЛЕВ Сергей Сергеевич ЗОЛЬНИКОВ Владимир Константинович КРЮКОВ Валерий Петрович СОБОЛЕВ Сергей Сергеевич ЗОЛЬНИКОВ Владимир Константинович КРЮКОВ Валерий.
ЛЕКЦИЯ Языки описания аппаратуры. Детерминистский и системный подходы к описанию объекта Мы уже знаем (лекция 2), что существуют два подхода.
ЛЕКЦИЯ 3 ( ) Тема 1. Общие вопросы теории моделирования Понятия модели и моделирования Классификация моделей Аксиомы теории моделирования.
1 Диаграммы реализации (implementation diagrams).
ЛЕКЦИЯ 9 ( ) Автоматизированные системы моделирования Отличительные черты современных АСМ Типовой состав АСМ Краткий обзор современных САПР и АСМ.
ЛЕКЦИЯ Языки описания аппаратуры. Детерминистский и системный подходы к описанию объекта Мы уже знаем (лекция 2), что существуют два подхода.
ЛЕКЦИЯ Тема 3. Языки и системы моделирования Языки логического моделирования (ЯЛМ) Отличия ЯЛМ от языков программирования Краткий обзор ЯЛМ.
Тенденції застосування сучасної елементної бази для побудови спеціалізованих обчислювальних систем.
1 Отчет по выполнению работ в рамках проекта «Междисциплинарные задания» (МДЗ) Тема : Сквозной маршрут проектирования средствами САПР Synopsys «Электроника.
Встроенные Системы Часть 7. Технология разработки и производства ИС Кафедра Информатики, мат-мех СПбГУ Copyright © 2004 Victor Vengerov
Систематизация программно-технических средств управляющих систем АЭС Дурнев Владимир Николаевич к.т.н. Черняев Алексей Николаевич Колчев Константин Константинович.
Выполнил: Желнин С.В. Научный руководитель: Фельдман В.М.
ЛЕКЦИЯ 5 ( ) Иерархия вычислительных систем Разновидности способов проектирования Уровни иерархии Уровни моделирования.
Этапы моделирования. Постановка задачи: Описание задачи; Цель моделирования; Анализ объекта Разработка информационной модели Разработка компьютерной модели.
ЛЕКЦИЯ 3 ( ) Иерархия вычислительных систем Уровни иерархии Уровни моделирования Разновидности способов проектирования.
Магистрант ММФ БГУ Колб А. И. Научный руководитель: к. т. н., доцент, доцент кафедры УМФ Степанец Владимир Яковлевич, Научный руководитель: к. т. н., доцент,
ЛЕКЦИЯ 1 ( ) Тема 1. Общие вопросы теории моделирования Понятия модели и моделирования Классификация моделей Аксиомы теории моделирования.
Транксрипт:

Реклама дисциплины Уточним три основополагающих для нашей дисциплины понятия: Уточним три основополагающих для нашей дисциплины понятия: ПРОЕКТИРОВАНИЕ МОДЕЛИРОВАНИЕ ВЕРИФИКАЦИЯ

Проектирование Проектирование – это разработка технической документации, позволяющей изготовить устройство с требуемыми функциями и свойствами. Проектирование Техническое задание (спецификация) Техническая документация

Моделирование Моделирование – это исследование или проектирование объектов на их моделях. Моделирование Внешние воздействия (стимулы) Выходные реакции (отклик) Чтобы проверить проект и убедиться, что он работает так, как задумал разработчик. (Модель) В данной дисциплине мы будем изучать моделирование цифровой аппаратуры. Зачем нам нужно моделирование? Почему на моделях?

Верификация Верификация – это процедура проверки совпадения проекта и требований к нему. Верификация – одна из важнейших задач проектирования, поскольку не бывает бездефектных проектов. До 70% времени работы над проектом тратится именно на его верификацию 70%

А теперь более подробно поговорим о каждом из названных понятий

ПРОЕКТИРОВАНИЕ Ручное Человек Автоматическое Машина Человек + Машина Разновидности методов проектирования Автоматизированное (САПР) САПР – Система Автоматизированного ПРоектирования Что такое САПР?

Ручное проектирование Не правда ли, до боли знакомая «картинка»: истерзанная бокорезами, скальпелем и паяльником печатная плата, хранящая тайны ненайденных, глубоко «зарытых» ошибок. Вокруг нагромождение перепутанных проводами железных ящиков – блоков питания, генераторов и осциллографов. А рядом Ваш верный друг – дымящийся паяльник. Что это? Ностальгия разработчика аппаратуры старой закалки по «давно минувшим дням»?

1 Автоматизированное проектирование Ныне другие времена. Теперь предмет своего творения Вы можете получить, в буквальном смысле «не отходя от компьютера». Да и технология создания аппаратуры выглядит совсем по-другому, напоминая больше стиль работы программиста, чем схемотехника. Чем же должен владеть современный разработчик? По крайней мере, двумя инструментами языком описания аппаратуры (типа Verilog или VHDL) и средой компьютерного проектирования (типа Active-HDL, Xilinx ISE или Quartus II). 2

ПРОЕКТИРОВАНИЕ (очевидные выводы) Ручное проектирование Ручное проектирование Автоматизированное проектирование (САПР) НЕТ ДА САПР – Система Автоматизированного ПРоектирования

Моделирование Рассмотрим типовой маршрут процесса моделирования Пользователь Графический редактор схем Библиотеки УГО Электрический контроль схем Моделятор Симулятор Имитатор Библиотеки программных моделей Постпроцессор моделирования ПользовательВременные диаграммы Редактор внешних воздействий Пользователь

Верификация (симуляционная верификация – моделирование) Модель объекта Системная RTL-модель Gate-модель Ожидаемые результаты Компаратор Идентичны? Testbench Тестбенч Испытательный стенд Образец ТЗ Опорная модель «Мечта» разработчика МОДЕЛИРОВАНИЕ ВЕРИФИКАЦИЯ Модель стимулов Полученные результаты Среда проверки Что значит: проверить все «углы»???

Проектирование – Верификация – Моделирование Проектирование Верификация Моделирование Итак, в основе верификации проекта лежит моделирование его работы Верификация более широкое понятие, чем моделирование (симуляция). Другими словами, моделирование «вложено» в верификацию, а та, в свою очередь, в проектирование. Как же соотносятся между собой рассмотренные понятия? ПОМНИТЕ? На верификацию тратится до ?????времени работы над проектом 70%

спецификацияпроектированиереализациятестирование Внесённые ошибки Устранённые ошибки % ошибок До 70% ошибок возникает на начальных этапах проектирования Распределение вносимых и устранённых ошибок на отдельных этапах проектирования и реализации объекта 70% Какое-то магическое число!

Типовой маршрут процесса проектирования Техническое задание Системное проектирование Структурно- алгоритмическое Функционально- логическое Конструкторско- технологическое Техническая документация Где применяется моделирование ? Системное Эмуляция Функциональное Поведенческое Временное До 30% к задержкам на компонентах добавляют задержки на соединениях – печатных проводниках. Исполняемая спецификация 30% Это описание проекта на высших уровнях абстракции, допускающее моделирование в САПР.

Технологии проектирования Две основные технологии проектирования цифровой аппаратуры Беспаяльные технологии Сквозные САПР МИС, СИС, Память Интегрированные среды БИС, СБИС, СнК Проектирование на уровне корпусов ИМС Проектирование на микросхемах программируемой логики (ПЛИС) OrCADActive-HDL ПЛИС – Интегральные Схемы Программируемой Логики А как расшифровывается ПЛИС?

Проектирование на уровне корпусов ИМС (МИС, СИС, Память) Такое проектирование поддерживают СКВОЗНЫЕ САПР, например DesignLab 8.0 САПРФирма MicroSim PCAD 2006 ALTIUM OrCAD 9.1 OrCAD OrCAD 16.2 Cadence Сквозные САПР поддерживают проектирование «от начала и до конца», то есть насквозь!

Проектирование на корпусных микросхемах (Пример) «цоколёвку» ИМС. «цоколёвку» ИМС. число элементов в корпусе (например, в ИМС 555ТМ2 – два D-триггера, в ИМС 555ЛН1 – шесть инверторов и т.д.). число элементов в корпусе (например, в ИМС 555ТМ2 – два D-триггера, в ИМС 555ЛН1 – шесть инверторов и т.д.). номера контактов питания и земли. номера контактов питания и земли. Footprint – «отпечаток» корпуса ИМС на печатной плате Footprint – «отпечаток» корпуса ИМС на печатной плате Проект реализуется на печатной плате, содержащей много ИМС Входная информация о проекте должна содержать кроме функционального описания и структуры объекта также сведения конструкторского характера: & & & & GND VCC К555ЛИ1 Такая информация называется упаковочной (от слов «упаковывать в корпус») и хранится в специальных библиотеках САПР. Его особенность – ориентация на реальные микросхемы МИС и СИС.

Пример: САПР OrCAD 9.1 (OrCAD 16.0) Состав пакета Графический редактор схем OrCAD Capture Графический редактор внешних воздействий Stimulus Editor Программа моделирования PSpice AD Графический редактор печатных плат OrCAD Layout Познакомимся с одной из популярных сквозных САПР.

Проектирование на корпусных микросхемах Первый этап – создание входного описания проекта (Entry Design). DD1.1 DD1.2 Отечественные обозначения Стимулы Серия 7400 – аналог серии К155 Мультиплексор

Проектирование на корпусных микросхемах Второй этап – задание входных воздействий (Стимулов).

Проектирование на корпусных микросхемах На третьем этапе выполняется логическое моделирование (функциональная и временная верификация) с целью проверки правильности работы. На третьем этапе выполняется логическое моделирование (функциональная и временная верификация) с целью проверки правильности работы.

Проектирование на корпусных микросхемах Разъём На четвёртом этапе верифицированная схема подготавливается для создания печатной платы. В частности, из схемы удаляются генераторы входных сигналов (стимулы) и вместо них устанавливаются разъёмы

Проектирование на корпусных микросхемах На пятом этапе в автоматическом режиме выполняется трассировка печатной платы На пятом этапе в автоматическом режиме выполняется трассировка печатной платы Разъём 3 ИМС три микросхемы – U1, U2, U3 Двухслойная печать

Проектирование на корпусных микросхемах

Типовой маршрут проектирования на ПЛИС Исходное описание проекта Синтез и реализация Implementation Временное моделирование Программирование «прошивка» ПЛИС Отладка на стенде Функциональное моделирование Аппаратная верификация HDE - проект (текст) Active HDL Xilinx ISE Active HDL Без учёта задержек С учётом задержек Автоматическая генерация схемы Xilinx ISE Стенд SDK 7.1 – CPLD SDE - проект (граф) BDE - проект (схема) Размещение и трассировка Стенд Spartan 3 – FPGA

Типовой маршрут проектирования на ПЛИС Теперь он примерно такой. На языке описания аппаратуры (HDL), похожем на язык программирования, Вы описываете поведение или структуру разрабатываемого устройства, На языке описания аппаратуры (HDL), похожем на язык программирования, Вы описываете поведение или структуру разрабатываемого устройства, моделированием избавляетесь от ошибок в нём, моделированием избавляетесь от ошибок в нём, после чего синтезируете и реализуете свой проект. Но не на печатной плате, а на кристалле микросхемы программируемой логики (ПЛИС). после чего синтезируете и реализуете свой проект. Но не на печатной плате, а на кристалле микросхемы программируемой логики (ПЛИС). Остаётся только запрограммировать её, получив физическую реализацию своего проекта. Заметьте, у Вас в руках не виртуальное, а осязаемое, существующее «в железе» устройство. И, что важно, результат порой достигается без всякого паяльника, нужна лишь подходящая отладочная плата.

Проектирование на микросхемах программируемой логики (ПЛИС) Пример. Среда проектирования Active-HDL 7.1 (новое поколение)

САПР Active-HDL 8.1 (новое поколение)

Проектирование на микросхемах программируемой логики 1 этап. Вводим в систему описание проекта. В среде Active-HDL это можно сделать тремя способами. Мы выберем наиболее привлекательный – описание проекта в виде диаграммы состояний цифрового автомата. M=1 – регистр сдвига влево Q0

Проектирование на микросхемах программируемой логики 2 этап. Чтобы избежать возможных ошибок, цифровой автомат следует промоделировать на тестовом наборе входных воздействий. 2 этап. Чтобы избежать возможных ошибок, цифровой автомат следует промоделировать на тестовом наборе входных воздействий. Регистр Счётчик

Проектирование на микросхемах программируемой логики Передаём проект на синтез и реализацию в другую САПР, например в. В этом пакете будет выполнен. 3 этап. Передаём проект на синтез и реализацию в другую САПР, например в Xilinx ISE. В этом пакете будет выполнен автоматический синтез автомата. Результаты такого синтеза, выполненного на RTL – уровне, показаны ниже. Понизить уровень иерархии

Проектирование на микросхемах программируемой логики Понижен уровень иерархии описания одного из блоков синтезированной схемы

Схема уровня Gate Level Понижаем уровень иерархии

Нижний уровень иерархии

Таблица истинности

Карта Карно

Проектирование на микросхемах программируемой логики Задержка 8.5ns 4 Этап. Синтезированная схема будет отображена (mapping) на множество технологических элементов выбранной микросхемы программируемой логики, и в автоматическом режиме решены задачи размещения элементов и трассировки связей на кристалле (place and route). Теперь, имея схему низкоуровневого описания, можно выполнить временное моделирование.

Проектирование на микросхемах программируемой логики 5 этап. Выбираем отладочный модуль Spartan-3 фирмы Xilinx, на котором смонтирована микросхема с программируемой логикой XC3S200 (метка 1) 5 этап. Выбираем отладочный модуль Spartan-3 фирмы Xilinx, на котором смонтирована микросхема с программируемой логикой XC3S200 (метка 1) ПЛИС

Готовим схему для аппаратной верификации Тестируемый узел Отладочные элементы

Проектирование на микросхемах программируемой логики 6 этап. Все отладочные компоненты платы с помощью печатных проводников связаны с выводами ПЛИС. Например, левая кнопка, которую рекомендуется использовать как сигнал сброса, подключена к выводу микросхемы с именем L14 6 этап. Все отладочные компоненты платы с помощью печатных проводников связаны с выводами ПЛИС. Например, левая кнопка, которую рекомендуется использовать как сигнал сброса, подключена к выводу микросхемы с именем L14 Сброс

Проектирование на микросхемах программируемой логики 7 этап. После окончания процедуры назначения контактов ПЛИС создаётся файл конфигурации, который по JTAG – интерфейсу загружается в программируемую микросхему. Эта работа выполняется специальной программой iMPACT, входящей в состав пакета Xilinx ISE. Файл конфигурации

Применение более совершенных инструментов проектирования позволяет выполнять более сложные проекты Время2000-е90-е80-е Объём (сложность) проекта Таблицы истинности Схемы Эффективность описания проекта HDL-описания System Verilog SystemC Что дальше? Схемные описания не эффективны Табличные описания не эффективны HDL-описания не эффективны Инструмент справляется с проектами Скачкообразный рост производительности инструмента описания проекта VHDL Verilog

Сакраментальный вопрос Итак, вернёмся к самому главному для нас вопросу ещё раз: Языками описания аппаратуры HDL компьютерными средствами проектирования - САПР, интегрированными средами проектирования чем же должен владеть современный разработчик? Ответ на него мы уже знаем: Осталось уточнить, что же понимается под термином – языки описания аппаратуры? С компьютерными средами проектирования мы уже познакомились

Языки описания аппаратуры Макроассемблер Автокод Ассемблер, ЯСК – язык символического кодирования Машинный язык Процедурно- ориентированные Проблемно- ориентированные ЯОА, ЯОО, HDL ЯЛМ – языки логического моделирования H – Hardware D – Description L – Language VHDL, Verilog Языки описания аппаратуры Иерархия языков программирования (ABEL, AHDL) Языки проектирования

Пример: VHDL – модель цифрового автомата (начало) M=1 – регистр сдвига влево Q0

Пример: VHDL – модель цифрового автомата (окончание) architecture behave of count_reg_HDL is -- Архитектурное тело signal TEMP_Q : std_logic_vector (3 downto 0); begin process (C, R) begin if R = '1' then TEMP_Q

Результаты имитационного эксперимента Сквозная САПР OrCAD 9.1 Цифровой автомат счётчик – регистр count_reg_HDL

Основные проблемы проектирования - ошибки в проекте Пример При отладке процессора Pentium 4 моделировалось 200 миллиардов циклов. Это всего 2 минуты работы реального процессора. Цена ошибки До 70% всех заказных ASIC – проектов содержали логические ошибки и требовали повторных изготовлений чипов. Стоимость изготовления чипа может достигать миллиона долларов До 70% времени работы над проектом тратится именно на его верификацию. Отладка проекта – это самая трудоёмкая операция. ПОМНИТЕ?

Основные виды ошибок проектирования Логические ошибки Логические ошибки « Иголки « Иголки» - паразитные импульсы малой длительности (glitch) временных Нарушение временных соотношений в схеме Недостаточное быстродействие Ресурсные Ресурсные ограничения: допустимое число элементов в схеме, потребляемая мощность Глупые ошибки: Глупые ошибки: «висячие» входы, короткозамкнутые выходы, превышение числа допустимых нагрузок и т.п. Проект может содержать логические ошибки или не соответствовать временным или ресурсным требованиям. Чем раньше будет обнаружена ошибка, тем меньше времени, сил и денег уйдёт на её устранение.

«Иголки» Нарушение временных соотношений в схеме

Формальная верификация Проверка моделей Спецификация системы Модель системы Компаратор Эквивалентны? Модель системы RTL модель Компаратор Эквивалентны? RTL модель Gate Level модель Компаратор Эквивалентны? RTL – Register Transfer Level – уровень регистровых передач

Временное – моделируется работа с учётом задержек, полученных при реализации проекта (на элементах и проводах!). Это реально достигнутые задержки Виды моделирования Моделирование без задержек Моделирование с учётом задержек t plh = tphl = 13 ns Функциональное моделирование Поведенческое или Временное моделирование Пример Модель инвертора Функциональное – моделируется только функция (работа) Поведенческое – кроме функции моделируются желаемые задержки Д ДД До 30% к задержкам на компонентах д д д добавляют задержки на соединениях – печатных проводниках. Помните? Физическое моделирование – макетирование (макет, прототип, опытный образец).

Монстры САПР ФИРМА САПР (АСМ) Cadence OrCAD 16.0 Altium PCAD 2006 Mentor Graphics ModelSim – Моделятор Leonardo Spectrum - Синтезатор Aldec Active-HDL 8.1 Xilinx Foundation 4.1 Xilinx ISE 7.1 Altera Quartus 2 OrCAD 9.1

Стоимость пакета ModelSim 6.0 Одна сетевая лицензия стоит рублей. ModelSim 6.0 Одна сетевая лицензия стоит рублей. OrCAD 16.0 Пять сетевых лицензий стоят 2400 долларов. OrCAD 16.0 Пять сетевых лицензий стоят 2400 долларов. Active-HDL 8.1 Одна сетевая лицензия стоит рублей. Active-HDL 8.1 Одна сетевая лицензия стоит рублей. Самые популярные АСМ: Active-HDL и ModelSim

БУДЕМ РАБОТАТЬ ВМЕСТЕ

Это всё Советую в качестве дополнения к сказанному прочитать файл «Реклама дисциплины 2010.doc», находящийся в папке «Методические указания 2010»

Как будет организован процесс обучения? Осталось прояснить последний вопрос: Чтобы ответить на него, потребуется новая презентация с не менее интригующим названием «Путеводитель_2010»

Влияние температуры на задержку ТТЛ - вентиля

ТемператураЗадержка -100 C 0C +100 C 3.3 ns 3.5 ns 3.6 ns Разброс небольшой 0.3 ns около 10%