П Р О ЕК ТИ Р О В

Скачать презентацию П Р О ЕК ТИ Р О В Скачать презентацию П Р О ЕК ТИ Р О В

ddca_ch3.pptx

  • Размер: 3.5 Мб
  • Автор: Владимир Алексеев
  • Количество слайдов: 104

Описание презентации П Р О ЕК ТИ Р О В по слайдам

П Р О ЕК ТИ Р О В А Н И Е П ОП Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИГлава 3 Цифровая схемотехника и архитектура компьютера, второе издание Глава 3 Дэвид М. Харрис и Сара Л. Харрис

Глава 3  2  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИЦифровая схемотехника и архитектура компьютера Эти слайды предназначены для преподавателей, которые читают лекции на основе учебника «Цифровая схемотехника и архитектура компьютера» авторов Дэвида Харриса и Сары Харрис. Бесплатный русский перевод второго издания этого учебника можно загрузить с сайта компании Imagination Technologies: https: //community. imgtec. com/downloads/digital-design-and-computer-a rchitecture-russian-edition-second-edition Процедура регистрации на сайте компании Imagination Technologies описана на станице: http: //www. silicon-russia. com/2016/08/04/harris-and-harris-2/

Глава 3  3  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИБлагодарности Перевод данных слайдов на русский язык был выполнен командой сотрудников университетов и компаний из России, Украины, США в составе: • Александр Барабанов — доцент кафедры компьютерной инженерии факультета радиофизики, электроники и компьютерных систем Киевского национального университета имени Тараса Шевченко, кандидат физ. -мат. наук, Киев, Украина; • Антон Брюзгин — начальник отдела АО «Вибро-прибор» , Санкт-Петербург, Россия. • Евгений Короткий — доцент кафедры конструирования электронно-вычислительной аппаратуры факультета электроники Национального технического университета Украины «Киевский Политехнический Институт» , руководитель открытой лаборатории электроники Lampa, кандидат технических наук, Киев, Украина; • Евгения Литвинова – заместитель декана факультета компьютерной инженерии и управления, доктор технических наук, профессор кафедры автоматизации проектирования вычислительной техники Харьковского национального университета радиоэлектроники, Харьков, Украина; • Юрий Панчул — старший инженер по разработке и верификации блоков микропроцессорного ядра в команде MIPS I 6400, Imagination Technologies, отделение в Санта-Кларе, Калифорния, США; • Дмитрий Рожко — инженер-программист АО «Вибро-прибор» , магистр Санкт-Петербургского государственного автономного университета аэрокосмического приборостроения (ГУАП), Санкт-Петербург, Россия; • Владимир Хаханов – декан факультета компьютерной инженерии и управления, проректор по научной работе, доктор технических наук, профессор кафедры автоматизации проектирования вычислительной техники Харьковского национального университета радиоэлектроники, Харьков, Украина; • Светлана Чумаченко – заведующая кафедрой автоматизации проектирования вычислительной техники Харьковского национального университета радиоэлектроники, доктор технических наук, профессор, Харьков, Украина.

Глава 3  4  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИГлава 3 : : Темы • Введение • Защелки и Триггеры • Проектирование синхронных логических схем • Конечные автоматы • Синхронизация последовательностных схем • Параллелизм

Глава 3  5  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Выходы последовательностной схемы зависят как от текущих, так и от прошлых значений на входах — схема имеет память. • Некоторые определения: – Состояние: Вся информация о схеме, необходимая для определения ее будущего поведения – Защелки и Триггеры: Элементы, хранящие один бит состояния – Синхронные последовательностные схемы: За комбинационной схемой следует набор триггеров. Введение

Глава 3  6  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Выдают последовательность событий • Имеют (краткосрочную) память • Для сохранения информации используют обратную связь с выходов на входы. Последовательностные схемы

Глава 3  7  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Состояние схемы влияет на ее будущее поведение • Элементы хранят состояние схемы – Бистабильная схема – RS-триггер – D-защелка – D-триггер. Элементы, хранящие состояние

Глава 3  8  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Основной блок для построения других элементы, хранящих состояние • Два выхода: Q , Q • Входов нет. Бистабильная схема QQ Q Q I 1 I 2 I

Глава 3  9  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Рассмотрим два возможных случая: – Q = 0: Тогда Q = 1, Q = 0 (нет противоречия) – Q = 1: Тогда Q = 0, Q = 1 (нет противоречия) • Хранит 1 бит переменной состояния Q (или Q) • Входы управления состоянием отсутствуют. Анализ бистабильной схемы Q Q I 1 I 2 0 1 1 0 Q Q I 1 I

Глава 3  10  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • RS-триггер • Рассмотрим четыре возможные случая: – S = 1, R = 0 – S = 0, R = 1 – S = 0, R = 0 – S = 1, R = 1 RS (Reset/Set, Сброс/Установка) триггер R S Q Q N 1 N

Глава 3  11  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И– S = 1, R = 0: Тогда Q = 1 и Q = 0 – S = 0, R = 1: Тогда Q = 1 и Q = 0 Анализ RS-триггера R S Q Q N 1 N 2 0 1 1 0 0 0 R S Q Q N 1 N

Глава 3  12  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И– S = 0, R = 0: Тогда Q = Q prev – S = 1, R = 1: Тогда Q = 0, Q = 0 Анализ RS-триггера R S Q Q N 1 N 2 0 0 0 Q prev = 0 Q prev = 1 1 R S Q Q N 1 N

Глава 3  13  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И– S = 0, R = 0: Тогда Q = Q prev – Память! – S = 1, R = 1: Тогда Q = 0, Q = 0 – Запрещенное состояние Q ≠ NOT QАнализ RS-триггера R S Q Q N 1 N 2 0 0 0 Q prev = 0 Q prev = 1 R S Q Q N 1 N

Глава 3  14  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • RS обозначает триггер со входами Reset/Set, Сброс/Установка – Хранит один бит состояния ( Q ) • Хранимое значение определяется входами S , R – Set (Установка): Устанавливает выход в 1 ( S = 1, R = 0, Q = 1 ) – Reset (Сброс): Устанавливает выход в 0 ( S = 0, R = 1, Q = 0 ) • Нужно предпринять специальные меры для исключения появления запрещенного состояния ( S = R = 1)Обозначение RS-триггера SR Q QSR Latch Symbol

Глава 3  15  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Два входа CLK , D – CLK : определяет когда выход изменяется – D (вход данных): определяет новое значение выхода • Работа – Когда CLK = 1 , D проходит на выход Q (защелка прозрачна ) – Когда CLK = 0 , Q хранит предыдущее значение (защелка непрозрачна ) • Запрещенное состояние не возникает, когда Q ≠ NOT QD-защелка D Latch Symbol CLK DQ Q

Глава 3  16  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИВнутренняя структура D защелки S RQ Q D CLK D R S CLK DQ Q SRQQCLKD 0 X

Глава 3  17  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИВнутренняя структура D защелки S RQ Q D CLK D R S CLK DQ Q SRQ 00 Qprev 010 101 Q 1 0 CLKD 0 X 10 11 D X 1 0 Qprev

Глава 3  18  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Входы: CLK, D • Работа – Фиксирует значение D по переднему фронту CLK • Когда CLK изменяется от 0 к 1, D проходит на выход Q • В противном случае Q хранит предыдущее значение – Q изменяется только по переднему фронту CLK • Такой триггер управляется фронтом • Активируется фронтом тактового сигнала D-триггер D Flip-Flop Symbols DQ Q

Глава 3  19  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Две последовательно соединенные защелки (L 1 и L 2), которые управляются комплементарными тактовыми сигналами • Когда CLK = 0 – L 1 прозрачна – L 2 непрозрачна – D проходит до N 1 • Когда CLK = 1 – L 2 прозрачна – L 1 непрозрачна – N 1 проходит до Q • Следовательно, по фронту тактового сигнала ( когда CLK меняется от 0 к 1 ) – D проходит до QВнутренняя структура D триггера CLK D Q Q Q QD N 1 CLK L 1 L

Глава 3  20  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИСравнение D-защелки и D-триггера CLK DQ Q CLK D Q (latch) Q (flop)

Глава 3  21  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИСравнение D-защелки и D-триггера CLK D Q (latch) Q (flop) CLK DQ Q

Глава 3  22  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИРегистры CLK DQ DQ D 0 D 1 D 2 D 3 Q 0 Q 1 Q 2 Q 3 D 3: 0 44 CLK Q 3:

Глава 3  23  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Входы: CLK , D , EN – Вход разрешения ( EN ) контролирует, будут ли сохраняться новые данные ( D ) • Работа – EN = 1: D проходит на Q по фронту тактового сигнала – EN = 0: триггер сохраняет предыдущее состояние. D-триггер с функцией разрешения Internal Circuit DQ CLKEN D Q 0 1 DQ EN Symbol

Глава 3  24  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Входы: CLK , D , Reset • Работа – Reset = 1: Q устанавливается в 0 – Reset = 0: Триггер ведет себя как обычный D триггер. D-триггер с функцией сброса Symbols DQ Reset r

Глава 3  25  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Два типа: – Синхронный: Сброс происходит только по фронту тактового сигнала – Асинхронный: сброс происходит сразу после установки Reset в 1 • Асинхронно сбрасываемые триггеры требуют отличаются от обычных внутренней структурой • Триггер с функцией синхронного сброса? D-триггер с функцией сброса

Глава 3  26  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Два типа: – Синхронный: Сброс происходит только по фронту тактового сигнала – Асинхронный: сброс происходит сразу после установки Reset в 1 • Асинхронно сбрасываемые триггеры требуют отличаются от обычных внутренней структурой • Триггер с функцией синхронного сброса? Триггеры с функцией сброса Internal Circuit DQ CLK DQReset

Глава 3  27  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Входы: CLK , D , Set • Работа: – Set = 1: Q устанавливается в 1 – Set = 0: Триггер ведет себя как обычный D триггер. Триггеры с функцией установки Symbols DQ Set s

Глава 3  28  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Последовательностные схемы — все схемы, которые не являются комбинационными • Проблемная схема: Последовательностные цифровые схемы X Y Z time (ns)0 1 2 3 4 5 6 7 8 XYZ

Глава 3  29  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Последовательностные схемы — все схемы, которые не являются комбинационными • Проблемная схема: • Входов нет, выходов 3 • Нестабильная схема, осциллятор • Период зависит от задержек инверторов • Схема имеет циклический путь, выход поступает на вход. Последовательностные цифровые схемы XYZ X Y Z time (ns)

Глава 3  30  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Разрушение циклических путей с путем добавления регистров • Регистры сохраняет состояние схемы • Состояние изменяется по фронтам тактового сигнала, система синхронизируется этим сигналом • Правила построения синхронных последовательностных схем: – Каждый элемент схемы является либо регистром, либо комбинационной схемой – Как минимум один элемент схемы является регистром – Все регистры тактируются единственным тактовым сигналом – В каждом циклическом пути присутствует как минимум один регистр • Два основные типа синхронных последовательностных схем – Конечные автоматы (FSM) – Конвейеры. Проектирование синхронных логических схем

Глава 3  31  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Состоят из: – Регистра состояний • Хранит текущее состояние • По фронту тактового импульса загружает следующее состояние – Комбинационной логической схемы • Определяет следующее состояние • Определяет выходные сигналы. Конечные автоматы Next State Current State S’S CLK C LNext State Logic Next State C L Output Logic Outputs

Глава 3  32  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Следующее состояние определяется входами и текущим состоянием • Два класса конечных автоматов отличаются логикой определения выходных сигналов: – Конечные автоматы Мура: Выход определяется только текущим состоянием – Конечный автомат Мили: Выход определяется текущим состоянием и входами. Конечные автоматы CLK MNkknext state logic output logic Moore FSM CLK MNkknext state logic output logic inputs outputsstate next state Mealy FSM

Глава 3  33  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Система управления светофором – Датчики движения: T A , T B (ИСТИНА, когда на улице есть студенты) – Светофоры: L A , L BПример конечного автомата T AL A T AL B T B L A L BAcademic Ave. B ra va d o B lv d. Dorms Fields. Dining Hall Labs

Глава 3  34  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Входы: CLK , Reset , T A , T B • Выходы: L A , L BЧерный ящик конечного автомата T A T B L A L BCLK Reset. Traffic Light Controller

Глава 3  35  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Конечный автомат Мура: Значения выходов указаны для каждого состояния • Состояния: Кружки • Переходы: Дуги. Диаграмма переходов конечного автомата S 0 LA: green LB: red Reset

Глава 3  36  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Конечный автомат Мура: Значения выходов указаны для каждого состояния • Состояния: Кружки • Переходы: Дуги. Диаграмма переходов конечного автомата S 0 L A: green L B: red S 1 L A: yellow L B: red S 3 L A: red L B: yellow S 2 L A: red L B: green TA T B TB Reset

Глава 3  37  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИТекущее состояние Входы Следующее состояние S T A T B S’ S 0 0 X S 0 1 X S 1 X X S 2 X 0 S 2 X 1 S 3 X XТаблица переходов конечного автомата

Глава 3  38  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИТекущее состояние Входы Следующее состояние S T A T B S’ S 0 0 X S 1 S 0 1 X S 0 S 1 X X S 2 X 0 S 3 S 2 X 1 S 2 S 3 X X S 0 Таблица переходов конечного автомата

Глава 3  39  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИТекущее состояние Входы Следующее состояние S 1 S 0 T A T B S 1 S 0 0 X 0 0 1 X X 1 0 X 0 1 0 X 1 1 1 X X Состо- яние Коди-рова ние S 0 00 S 1 01 S 2 10 S 3 11 Таблица переходов конечного автомата с указанием кодирования

Глава 3  40  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИТекущее состояние Входы Следующее состояние S 1 S 0 T A T B S 1 S’ 0 0 X 0 1 0 0 1 X 0 0 0 1 X X 1 0 X 0 1 1 1 0 X 1 1 0 1 1 X X 0 0 S’ 1 = S 1 S 0 S’ 0 = S 1 S 0 T A + S 1 S 0 T BТаблица переходов конечного автомата с указанием кодирования Состо- яние Коди-рова ние S 0 00 S 1 01 S 2 10 S

Глава 3  41  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИТекущее состояние Выходы S 1 S 0 L A 1 L A 0 L B 1 L B 0 0 1 1 Выходы Коди-рова ние зеленый 00 желтый 01 красный 10 Таблица выходов конечного автомата

Глава 3  42  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИТекущее состояние Выходы S 1 S 0 L A 1 L A 0 L B 1 L B 0 0 0 1 0 1 0 0 0 1 1 1 0 0 1 Выходы Коди-рова ние зеленый 00 желтый 01 красный 10 L A 1 = S 1 L A 0 = S 1 S 0 L B 1 = S 1 L B 0 = S 1 S 0 Таблица выходов конечного автомата

Глава 3  43  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИСхема конечного автомата: Регистр состояний S 1 S 0 S’1 S’ 0 CLK state register Reset r

Глава 3  44  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИСхема конечного автомата: Логика следующего состояния S 1 S 0 S’ 1 S’ 0 CLK next state logicstate register Reset. T A T B inputs S 1 S 0 r

Глава 3  45  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИСхема конечного автомата: Выходная логика S 1 S 0 S’ 1 S’ 0 CLK next state logic output logicstate register Reset L A 1 L B 0 L A 0 T A T B inputs outputs. S 1 S 0 r

Глава 3  46  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИВременная диаграмма конечного автомата CLK Reset TA TB S’1: 0 S 1: 0 LA 1: 0 LB 1: 0 Cycle 1 Cycle 2 Cycle 3 Cycle 4 Cycle 5 Cycle 6 Cycle 7 Cycle 8 Cycle 9 Cycle 10 S 1 (01)S 2 (10)S 3 (11)S 0 (00) t (sec) ? ? S 0 (00)S 1 (01)S 2 (10)S 3 (11)S 1 (01) ? ? 051015202530354045 Green (00) Red (10) S 0 (00) Yellow (01)Red (10)Green (00)Red (10)Yellow (01) S 0 L A : green L B : red S 1 L A : yellow L B : red S 3 L A : red L B : yellow S 2 L A : red L B : green. T A T BT BReset

Глава 3  47  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Двоичное кодирование: – Для четырех состояний: 00, 01, 10, 11 • Прямое ( One-hot ) кодирование – На каждое состояние один бит – Только один бит имеет значение ИСТИНА – Для четырех состояний: 0001, 0010, 0100, 1000 – Используется больше триггеров – Часто логика следующего состояния и выходная логика проще. Кодирование состояний конечного автомата

Глава 3  48  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • У Алисы есть улитка, которая ползает по перфоленте, содержащей последовательность нулей и единиц. Улитка улыбается, если последовательность из двух последних бит, через которые она переползла, равна 01. Спроектируйте конечные автоматы Мура и Мили, определяющие, когда улитке нужно улыбнуться. Сравнение конечных автоматов Мура и Мили

Глава 3  49  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИКонечный автомат Мили: около дуг указаны значения входов/выходов Диаграмма переходов Reset S 0 S 1 1/10/0 1/0 0/0 Mealy FSM Moore FSM Reset S 0 0 S 1 0 S

Глава 3  50  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИТекущее состояние Вход ы Следующее состояние S 1 S 0 A S’ 1 S’ 0 0 0 1 1 1 0 0 1 Состо- яние Кодирование S 0 00 S 1 01 S 2 10 Таблица переходов конечного автомата Мура

Глава 3  51  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИТекущее состояние Вход ы Следующее состояние S 1 S 0 A S’ 1 S’ 0 0 0 1 0 1 1 1 0 0 0 1 1 0 0 Состо- яние Кодирование S 0 00 S 1 01 S 2 10 Таблица переходов конечного автомата Мура S 1 ’ = S 0 A S 0 ’ =

Глава 3  52  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИТекущее состояние Выходы S 1 S 0 Y 0 0 0 1 1 0 Y = S 1 Таблица выходов конечного автомата Мура

Глава 3  53  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИТекущее состояние Выходы S 1 S 0 Y 0 0 1 0 1 Y = S 1 Таблица выходов конечного автомата Мура

Глава 3  54  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИТекущее состояние Вход Следующее состояние Выход S 0 A S’ 0 Y 0 0 0 1 1 Состо яние Кодирование S 0 00 S 1 01 Таблица переходов и выходов конечного автомата Мили

Глава 3  55  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИТекущее состояние Вход Следующее состояние Выход S 0 A S’ 0 Y 0 0 1 0 1 1 0 1 Состо- яние Кодирование S 0 00 S 1 01 Таблица переходов и выходов конечного автомата Мили

Глава 3  56  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИСхема конечного автомата Мура YCLK Reset. A r. S’ 0 S 0 S’ 1 S

Глава 3  57  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИСхема конечного автомата Мили S’ 0 YCLK Reset. A r S

Глава 3  58  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИВременные диаграммы конечных автоматов Мура и Мили Mealy Machine Moore Machine CLK Reset A S Y Cycle 1 Cycle 2 Cycle 3 Cycle 4 Cycle 5 Cycle 6 Cycle 7 Cycle 8 Cycle 9 Cycle 10 S 0 S 2? ? S 2 S 2 S 0 S 1 101101110 S 1 S 0 S 0? ? S 0 S 1 S 1 S 0 S 1 Cycle

Глава 3  59  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Разделение сложного конечного автомата на более простые взаимодействующие конечный автоматы • Пример: Модифицируйте контроллер светофора так, чтобы в нем появился режим «парада» – Два дополнительные входа P , R – Когда P = 1 , автомат входит в режим парада и светофор на Беговой улице остается зеленым – Когда R = 1 , автомат выходит из режима парада. Декомпозиция конечных автоматов

Глава 3  60  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИНемодульный конечный автомат Модифицированный конечный автомат Controller FSMTA TB LA LB P R Mode FSM Lights FSMP M Controller FSMT A T B L A L BR

Глава 3  61  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИНемодульный конечный автомат S 0 L A : green L B : red S 1 L A : yellow L B : red S 3 L A : red L B : yellow S 2 L A : red L B : green. T A T BReset S 4 L A : green L B : red S 5 L A : yellow L B : red S 7 L A : red L B : yellow S 6 L A : red L B : green. T AP P PP R RRP RP T AP P T AR R T BR

Глава 3  62  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИМодульный конечный автомат S 0 L A : green L B : red S 1 L A : yellow L B : red S 3 L A : red L B : yellow S 2 L A : red L B : green. T A M + T BMT BReset Lights FSM S 0 M: 0 S 1 M: 1 PReset P Mode FSM R R

Глава 3  63  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Определите входы и выходы • Нарисуйте диаграмму переходов • Запишите таблицу переходов • Выберите способ кодирования состояний • Для конечного автомата Мура: – Перепишите таблицу переходов с учетом кодирования состояний – Запишите таблицу выходов • Для конечного автомата Мили: – Перепишите объединенную таблицу переходов и выходов с учетом кодирования состояний • Запишите булевы выражения логики следующего состояния и выходов • Нарисуйте принципиальную схему. Проектирование конечного автомата

Глава 3  64  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Триггер фиксирует сигнал D по фронту тактового сигнала • Сигнал D должен быть стабильным в процессе фиксации • Как при фотографировании, D должен быть стабильным в окрестности фронта тактового сигнала • Если это не так, может возникнуть метастабильность. Синхронизация

Глава 3  65  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Время предустановки: t setup = период времени перед фронтом тактового сигнала, в течении которого данные должны быть стабильными (т. е. не изменяться) • Время удержания: t hold = период времени после фронта тактового сигнала, в течении которого данные должны быть стабильными • Апертурное время: t a = общее время в окрестности фронта тактового сигнала, в течении которого данные должны быть стабильными ( t a = t setup + t hold )Ограничение времени изменения входов CLK t setup. D t hold t a

Глава 3  66  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Задержка распространения t pcq = период времени после фронта тактового сигнала, после окончания которого выход Q будет гарантированно стабильным (т. е, прекратит изменяться) • Задержка реакции t ccq = период времени после фронта тактового сигнала, после окончания которого Q может быть нестабильным (т. е. , начать изменяться)Ограничение времени изменения выходов CLK t ccq t pcq. Q

Глава 3  67  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Входы синхронной последовательностной схемы должны быть стабильны в течение апертурного времени в окрестности фронта тактового сигнала • Более точно, входы должны быть стабильны – по крайней мере в течении времени t setup до фронта тактового импульса – и по крайней мере в течении времени t hold после фронта тактового импульса. Динамическая дисциплина

Глава 3  68  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • В зависимости от задержек элементов, общая задержка между регистрами лежит между максимальным и минимальным значениями. Динамическая дисциплина C L CLKCLK R 1 R 2 Q 1 D 2 (a) CLK Q 1 D 2 (b) T c

Глава 3  69  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Зависит от максимальной задержки комбинационный логики между регистрами R 1 и R 2 • Вход регистра R 2 должен быть стабильным в течении времени t setup перед фронтом тактового сигнала T c ≥Ограничение времени предустановки CLK Q 1 D 2 Tc tpcqtpdtsetup CL CLKCLK Q 1 D 2 R 1 R

Глава 3  70  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Зависит от максимальной задержки комбинационный логики между регистрами R 1 и R 2 • Вход регистра R 2 должен быть стабильным в течении времени t setup перед фронтом тактового сигнала T c ≥ t pcq + t pd + t setup t pd ≤Ограничение времени предустановки CLK Q 1 D 2 Tc tpcqtpdtsetup CL CLKCLK Q 1 D 2 R 1 R

Глава 3  71  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Зависит от максимальной задержки комбинационный логики между регистрами R 1 и R 2 • Вход регистра R 2 должен быть стабильным в течении времени t setup перед фронтом тактового сигнала T c ≥ t pcq + t pd + t setup t pd ≤ T c – ( t pcq + t setup )Ограничение времени предустановки CLK Q 1 D 2 Tc tpcqtpdtsetup CL CLKCLK Q 1 D 2 R 1 R

Глава 3  72  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Зависит от минимальной задержки комбинационный логики между регистрами R 1 и R 2 • Вход регистра R 2 должен быть стабильным в течении времени t hold после фронта тактового сигнала t hold <Ограничение времени удержания CLK Q 1 D 2 t ccq tcd t hold C L CLKCLK Q 1 D 2 R 1 R

Глава 3  73  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Зависит от минимальной задержки комбинационный логики между регистрами R 1 и R 2 • Вход регистра R 2 должен быть стабильным в течении времени t hold после фронта тактового сигнала t hold Ограничение времени удержания CLK Q 1 D 2 t ccq tcd t hold C L CLKCLK Q 1 D 2 R 1 R

Глава 3  74  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Зависит от минимальной задержки комбинационный логики между регистрами R 1 и R 2 • Вход регистра R 2 должен быть стабильным в течении времени t hold после фронта тактового сигнала t hold t hold — t ccq Ограничение времени удержания CLK Q 1 D 2 t ccq tcd t hold C L CLKCLK Q 1 D 2 R 1 R

Глава 3  75  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИВременные характеристики t ccq = 30 пс t pcq = 50 пс t setup = 60 пс t hold = 70 пс t pd = 35 пс t cd = 25 псt pd = t cd = Ограничение времени предустановки: T c ≥ f c = Ограничение времени удержания: t ccq + t cd > t hold ? Временной анализ CLK A B C D X’ Y’ X Y per gate

Глава 3  76  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИВременные характеристики t ccq = 30 пс t pcq = 50 пс t setup = 60 пс t hold = 70 пс t pd = 35 пс t cd = 25 псt pd = 3 x 35 пс = 105 пс t cd = 25 пс Ограничение времени предустановки: T c ≥ (50 + 105 + 60) пс = 215 пс f c = 1/ T c = 4. 65 ГГц Ограничение времени удержания: t ccq + t cd > t hold ? (30 + 25) ps > 70 ps ? Нет!Временной анализ CLK A B C D X’ Y’ X Y per gate

Глава 3  77  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИВременные характеристики t ccq = 30 пс t pcq = 50 пс t setup = 60 пс t hold = 70 пс t pd = 35 пс t cd = 25 псt pd = t cd = Ограничение времени предустановки: T c ≥ f c = Ограничение времени удержания: t ccq + t cd > t hold ? Временной анализ Добавим буфер в кратчайший путь: per gate CLKCLK A B C D X’ Y’ X Y

Глава 3  78  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИВременные характеристики t ccq = 30 пс t pcq = 50 пс t setup = 60 пс t hold = 70 пс t pd = 35 пс t cd = 25 псt pd = 3 x 35 пс = 105 пс t cd = 2 x 25 пс = 50 пс Ограничение времени предустановки: T c ≥ (50 + 105 + 60) пс = 215 пс f c = 1/ T c = 4. 65 ГГц Ограничение времени удержания: t ccq + t cd > t hold ? (30 + 50) пс > 70 пс ? Да!Временной анализ Добавим буфер в кратчайший путь: per gate CLKCLK A B C D X’ Y’ X Y

Глава 3  79  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Тактовые импульсы поступают на разные регистры схемы не одновременно • Расфазировка : различие во времени между фронтами тактовых сигналов разных элементов • Следует выполнить анализ худшего случая , чтобы гарантировать выполнение динамической дисциплины для всех регистров схемы!Расфазировка тактовых сигналов t skew CLK 1 CLK 2 C L CLK 2 CLK 1 R 2 Q 1 D 2 CLKdelay CLK

Глава 3  80  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • В худшем случае CLK 2 опережает во времени CLK 1 T c ≥Время предустановки с учетом расфазировки тактовых импульсов CLK 1 Q 1 D 2 Tc tpcqtpdtsetuptskew CL CLK 2 CLK 1 R 1 R 2 Q 1 D 2 CLK

Глава 3  81  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • В худшем случае CLK 2 опережает во времени CLK 1 T c ≥ t pcq + t pd + t setup + t skew t pd ≤Ограничение времени предустановки с учетом расфазировки тактовых импульсов CLK 1 Q 1 D 2 Tc tpcqtpdtsetuptskew CL CLK 2 CLK 1 R 1 R 2 Q 1 D 2 CLK

Глава 3  82  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • В худшем случае CLK 2 опережает во времени CLK 1 T c ≥ t pcq + t pd + t setup + t skew t pd ≤ T c – ( t pcq + t setup + t skew )Ограничение времени предустановки с учетом расфазировки тактовых импульсов CLK 1 Q 1 D 2 Tc tpcqtpdtsetuptskew CL CLK 2 CLK 1 R 1 R 2 Q 1 D 2 CLK

Глава 3  83  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • В худшем случае CLK 2 отстает во времени от CLK 1 t ccq + t cd >Ограничение времени удержания с учетом расфазировки тактовых импульсов tccqtcd thold Q 1 D 2 tskew CL CLK 2 CLK 1 R 1 R 2 Q 1 D 2 CLK

Глава 3  84  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • В худшем случае CLK 2 отстает во времени от CLK 1 t ccq + t cd > t hold + t skew t cd >Ограничение времени удержания с учетом расфазировки тактовых импульсов tccqtcd thold Q 1 D 2 tskew CL CLK 2 CLK 1 R 1 R 2 Q 1 D 2 CLK

Глава 3  85  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • В худшем случае CLK 2 отстает во времени от CLK 1 t ccq + t cd > t hold + t skew – t ccq Ограничение времени удержания с учетом расфазировки тактовых импульсов tccqtcd thold Q 1 D 2 tskew CL CLK 2 CLK 1 R 1 R 2 Q 1 D 2 CLK

Глава 3  86  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Асинхронные (например пользовательские) входы могут приводить к нарушению динамической дисциплины Нарушение динамической дисциплины CLK t setup thold t aperture D Q D Q ? ? ? C ase III D Q CLK b u tto n

Глава 3  87  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Бистабильные приборы: два стабильные состояния и метастабильное состояние между ними • Триггер два стабильные состояния (0 и 1) и одно метастабильное состояние • Если триггер попадает в метастабильное состояние, он может находится в нем неограниченно долго. Метастабильность metastable

Глава 3  88  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Триггер имеет обратную связь : если Q находится где-то между 1 и 0, то перекрестно соединенные элементы устанавливают выход в одно из двух состояний (1 или 0) • Метастабильный сигнал: если он не принял корректное значение 0 или 1 • Если вход триггера изменяется в случайный момент, вероятность того, что его выход Q будет в метастабильном состоянии спустя время t : P( t res > t ) = ( T 0 / T c ) e — t /τ t res : время разрешения в 1 или 0 T 0 , τ : характеристики схемы. Внутренняя структура триггера R S Q Q N 1 N

Глава 3  89  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Интуитивно: – T 0 / T c : вероятность изменения входа в плохое (апертурное) время P( t res > t ) = ( T 0 / T c ) e — t /τ – τ : константа, определяющая как быстро триггер уходит из метастабильного состояния P( t res > t ) = ( T 0 / T c ) e — t /τ • Коротко, если триггер фиксирует метастабильный вход, то после достаточно продолжительного ожидания ( t ) он, с высокой вероятностью, перейдет в стабильное состояние 0 или 1 Метастабильность

Глава 3  90  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Наличие асинхронных входов неизбежно (интерфейс пользователя, системы с разными тактовыми сигналами и т. д. ) • Функция синхронизатора: сделать вероятность сбоя (выход Q находится в метастабильном состоянии) достаточно малой • Синхронизатор не может довести вероятность сбоя до 0 Синхронизаторы DQ CLK S Y N

Глава 3  91  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Синхронизатор: строится из двух последовательно соединенных триггеров • Предположим, что D изменяется во время фиксации F 1 • У внутреннего сигнала D 2 есть время ( T c — t setup ) для разрешения в 1 или 0 Внутренняя структура синхронизатора D Q D 2 T c t setup t pcq. CLK CLK t res metastable.

Глава 3  92  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИВероятность сбоя для одиночного изменения входа: P(failure) = ( T 0 / T c ) e — (T c — t setup ) /τВероятность сбоя синхронизатора D Q D 2 T c t setup t pcq. CLK CLK t res metastable.

Глава 3  93  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Если асинхронный вход изменяется один раз за секунду, то вероятность сбоя за одну секунду будет равна P(failure) • Если вход изменяется N раз за секунду, то вероятность отказа за секунду будет: P (failure)/с= ( NT 0 / T c ) e — (T c — t setup ) /τ • Сбой синхронизатора происходит в среднем 1/[ P (failure)/с] • Эта величина называется средним временем наработки на отказ ( mean time between failures , MTBF): MTBF = 1/[ P (failure)/с] = ( T c / NT 0 ) e (T c — t setup ) /τСреднее время между сбоями синхронизатора

Глава 3  94  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Предположим: T c = 1/500 МГц = 2 нс τ = 200 пс T 0 = 150 пс t setup = 100 пс N = 1 событий за секунду • Чему равна вероятность отказа? MTBF? Пример синхронизатора DD 2 Q CLKCLK

Глава 3  95  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Предположим: T c = 1/500 МГц = 2 нс τ = 200 пс T 0 = 150 пс t setup = 100 пс N = 1 событий за секунду • Чему равна вероятность отказа? MTBF? P (failure) = (150 пс/2 нс) e — ( 1. 9 нс ) /200 пс = 5. 6 × 10 -6 P (failure)/с= 10 × (5. 6 × 10 -6 ) = 5. 6 × 10 -5 / с MTBF = 1/[P(failure)/с] ≈ 5 часов. Пример синхронизатора DD 2 Q CLKCLK

Глава 3  96  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Два типа параллелизма: – Пространственный параллелизм: • несколько копий аппаратных блоков в одно и то же время выполняют несколько задач – Временной параллелизм: • разбиение задачи на несколько ступеней • также называется конвейеризацией • например, сборочная линия. Параллелизм

Глава 3  97  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Токен (Token): Набор входной информации, который обрабатывается для того, чтобы получить выходную информацию • Латентность (latency): Время прохождения одного токена через всю систему с ее входа на выход • Пропускная способность (throughput): Количество токенов, которое обрабатывается системой в единицу времени Параллелизм увеличивает пропускную способность Определения параллелизма

Глава 3  98  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Бен готовит печенье для вечеринки, посвященной введению в эксплуатацию его контроллера светофора • 5 минут уходит на сворачивание печенья на один противень • В течение 15 минут печенье выпекается • Чему равна пропускная способность и задержка без параллелизма? Пример параллелизма

Глава 3  99  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Бен готовит печенье для вечеринки, посвященной введению в эксплуатацию его контроллера светофора • 5 минут уходит на сворачивание печенья на один противень • В течение 15 минут печенье выпекается • Чему равна пропускная способность и задержка без параллелизма? Латентность = 5 + 15 = 20 минут = 1/3 час Пропускная способность = 1 противень/ 1/3 час= 3 противня/час. Пример параллелизма

Глава 3  100  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К И • Чему равна пропускная способность и задержка если Бен использует параллелизма? – Пространственный параллелизм: Бен просит Алису помочь, используя ее печь – Временной параллелизм: • Две ступени: сворачивание и выпекание • Он использует два противня • Когда первая партия выпекается, он сворачивает следующую партию и т. д. Пример параллелизма

Глава 3  101  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИЛатентность = ? Пропускная способность = ? Пространственный параллелизм: Spatial Parallelism Roll Bake. Ben 1 Alyssa 1 Ben 2 Alyssa 2 Time 0 5 10 15 20 25 30 35 40 45 50 Tray 1 Tray 2 Tray 3 Tray 4 Latency: time to first tray Legend

Глава 3  102  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИЛатентность = 5 + 15 = 20 минут = 1/3 час Пропускная способность = 2 противня/ 1/3 час= 6 противней/час Пространственный параллелизм: Spatial Parallelism Roll Bake. Ben 1 Alyssa 1 Ben 2 Alyssa 2 Time 0 5 10 15 20 25 30 35 40 45 50 Tray 1 Tray 2 Tray 3 Tray 4 Latency: time to first tray Legend

Глава 3  103  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИЛатентность = ? Пропускная способность = ? Временной параллелизм Tem poral Parallelism. Ben 1 Ben 2 Ben 3 Time 05101520253035404550 Latency: time to first tray Tray 1 Tray 2 Tray

Глава 3  104  П Р О ЕК ТИ Р О В АГлава 3 П Р О ЕК ТИ Р О В А Н И Е П О С Л ЕД О В А ТЕЛ Ь Н О С ТН О Й Л О ГИ К ИЛатентность = 5 + 15 = 20 минут = 1/3 час Пропускная способность = 1 противень/ 1/4 час= 4 противней/час С использованием обеих технологий можно достигнуть пропускной способности 8 противней/час. Временной параллелизм Tem poral Parallelism. Ben 1 Ben 2 Ben 3 Time 05101520253035404550 Latency: time to first tray Tray 1 Tray 2 Tray