Altifigence Academy

43 / 63 · Проверка знаний

Проверка проекта: задержка, выравнивание и сохранение входов

Проверьте не только направление сдвига, но и число действительных перемещений и начало отсчёта наблюдения.

Зафиксируйте начало отсчёта задержки

3-битный регистрРегистр хранит многобитное состояние. Синхронные регистры в этом курсе записывают определённый вход на фронте тактового сигнала. Подробнее выполняет q <= {q[1:0], din} только при действительном входе; при valid=0 хранит q. После сбросаСброс возвращает состояние к заданному начальному значению. Нужно определить, синхронен он или асинхронен и имеет ли приоритет над другими управляющими сигналами. Подробнее начните с 0 и на последовательных положительных фронтахПоложительный фронт — момент перехода такта из 0 в 1. Его следует отличать от уровня, означающего весь интервал CLK=1. Подробнее подайте (valid,din) = (1,1), (0,0), (1,0), (1,1).

Фронтов четыре, а реальных сдвигов три. Проверьте согласованность трассировки состояния с утверждением о задержке в циклах.

Каждый столбец — запись наблюдения одного положительного фронтаПоложительный фронт — момент перехода такта из 0 в 1. Его следует отличать от уровня, означающего весь интервал CLK=1. Подробнее. Входы показаны непосредственно перед фронтом, состояния со словом «после» в имени — сразу после обновления. Выравнивание столбцов обозначает порядок выборок, а не физическую задержку распространенияЗадержка распространения — время от изменения входа до установления правильного выхода. Логическая эквивалентность выражений и их временные характеристики — разные вопросы. Подробнее.
Показана последовательность из задачи. Во втором столбце valid=0 и состояние хранится. Не путайте число изменений q с числом тактовых столбцов.

Четыре фронта и три приёма
Показать данные диаграммы
Данные диаграммы: каждый символ — один интервал; точка сохраняет предыдущее состояние; p — один тактовый цикл.
СигналДиаграммаЗначения шины
фронт2345E0 → E1 → E2 → E3
valid101.
din10.1
число принятых2.341 → 2 → 3
q после2.34001 → 010 → 101

Дополнительная задача проектирования

При расширении до конвейераКонвейер делит вычисление на разделённые регистрами стадии и перекрывает обработку нескольких входов. Данные, valid и управляющие сигналы необходимо согласовать по стадиям. Подробнее с 8-битными данными на входе нельзя сделать три ступени данных, а valid задержать лишь на одну. Применяйте одинаковые правила перемещения к данным и valid либо совместно проектируйте правила приёма и передачи останавливаемого буфера.

Попробуйте сами

Если изменить схему, чтобы она сдвигалась на каждом фронте независимо от valid, каким станет конечное q для указанной последовательности?

Прочитать объяснение

Сохранится и din=0 недействительного цикла, поэтому будет 001 → 010 → 100 → 001. Итог 001 отличается от 101 исходной схемы, сдвигающей только действительные входы. Реализация должна соблюдать контракт игнорирования invalid-данных.

Каковы последнее q и фактическое число сдвигов для последовательности с valid из текста?

Выберите ответ

Выбор действует в этом браузере. Его можно изменить внизу страницы.