МИЭТ:ИЭМС. Консультационный центр.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » МИЭТ:ИЭМС. Консультационный центр. » Логическое проектирование » 2015 год. Курсовые проекты "Моделирование схем".


2015 год. Курсовые проекты "Моделирование схем".

Сообщений 1 страница 8 из 8

1

04.03.2015

Вот наконец собрался понаписать разъяснения к вариантам заданий на курсовое проектирование.

То что я ленился сделать это раньше давайте спишем на Запланированную Фору для тех людей, кто не поленился приходить на семинары и слышал последующие посты "из первых уст".

Тут будет только логика.

Собственно триггеры, их словари и схемные реализации разобраны в соседних разделах этого форума. Также на форуме можно найти описания методов синтеза неполных счетчиков, и пр. и пр.

Объем работ по схемотехнической части уже несколько лет не изменялся и в этом году тоже ничего не добавилось и не убавилось. Только обратите внимание, что по сравнению с ОПЭКБ, в этом курсовике надо провести несколько более полный схемотехнический анализ устройства - добавился анализ по нагрузочной емкости и напряжению питания. Еще нужно промоделировать среднюю потребляемую мощность и сравнить ее с аналиической оценкой по приведенной в методичке формуле (см. раздел литературы).

Топология? В базовом формате Microwind.
С Layouteditor все сложнее. Кто в прошлом году его немного освоил могут продолжать, им помогать/подсказывать буду.
Новых покорителей Layouteditor не жду, или осваивайте самостоятельно. Какие то хелпы я написал и тут выложил.
Если в курсовике увижу Layouteditor, а я не уверен или не помню, что вы ко мне обращались за вылеченным EXE, то будьте готовы отвечать на вопросы и по топологии тоже.

Отредактировано gummi (2015-03-05 00:23:20)

0

2

Вариант устройства № 1 - Формирователь вторичных синхросигналов (ФВС).

В задании задано значение скважности выходного сигнала. Она одинакова у всех выходных вторичных синхросигналов.

По заданию устройство должно быть двух(трех)-режимным. Режимы отличаются друг от друга задержкой следования импульсов очередных выходных сигналов относительно предыдущих. Задержка указана в количестве тактов входного синхросигнала CLK.

Например, для варианта ФВС с тремя выходами, скважностью 7 и задержками TD={1; 2} :
  - первый режим TD=1
_CLK 01 01 01 01 01 01 01 | 01 01 01 01 01 01 01 | 01 01 01 01 01 01 01 | ...
OUT1 11 00 00 00 00 00 00 | 11 00 00 00 00 00 00 | 11 00 00 00 00 00 00 | ...
OUT2 00 11 00 00 00 00 00 | 00 11 00 00 00 00 00 | 00 11 00 00 00 00 00 | ...
OUT3 00 00 11 00 00 00 00 | 00 00 11 00 00 00 00 | 00 00 11 00 00 00 00 | ...
  - второй режим TD=2
_CLK 01 01 01 01 01 01 01 | 01 01 01 01 01 01 01 | 01 01 01 01 01 01 01 | ...
OUT1 11 00 00 00 00 00 00 | 11 00 00 00 00 00 00 | 11 00 00 00 00 00 00 | ...
OUT2 00 00 11 00 00 00 00 | 00 00 11 00 00 00 00 | 00 00 11 00 00 00 00 | ...
OUT3 00 00 00 00 11 00 00 | 00 00 00 00 11 00 00 | 00 00 00 00 11 00 00 | ...

Важно! Выходы ФВС являются синхросигналами для каких-либо последующих цифровых устройств. Поэтому, на выходных сигналах не допускаются короткие помехоподобные импульсы, вызванные возможными гонками сигналов в выходных комбинационных блоках устройства. Простейший способ отфильтровать такие помехи - использовать статические D-триггеры (защелки / D-latch) перед передачей сигналов на выход устройства.

ИТОГО:
Входы CLK и Clear (асинхронный сброс).
Входов управления режимом один или два, для двух- или трех-режимого устройства соответственно (см. лист с заданием).
Количество выходов задано в задании.
На выходных сигналах не должно быть помех от  "гонок".

Def: Скважность сигнала - отношение длительности периода к длительности импульса. Иными словами отношение суммы длительностей "нуля" и "единицы" к длительности "единицы".

0

3

Вариант устройства №2 - Автомат PISO (SIPO).

PISO - Parralel In Serial Out = Параллельная загрузка, последовательная выгрузка.
SIPO - Serial In Parralel Out = Последовательная загрузка, параллельная выгрузка.

В задании задана последовательность, соответствующая длительности нахождения устройства в том или ином режиме. По словом "автомат" подразумевается, что переключение устройства из одного режима в следующий происходит автоматически по замкнутому циклу.
В одном из решений основой устройства является усеченный по возможностям универсальный регистр, в котором задействуются только режимы параллельной загрузки, сдвига в одну сторону (выбрать самостоятельно) и режим хранения. А переключением между режимами управляет блок на базе счетчика.

Например 7-разрядный автомат SIPO с заданной последовательностью переключения режимов 7-1-2.
Число 7 в последовательности однозначно соответствует семи тактам последовательной загрузки входного числа. А вот режимы остальным интервалам можно задать самостоятельно. Пусть 1 - хранение, 2 - параллельная выгрузка.
т.е. рабочий цикл автомата получается такой: семь тактов принимаем со входа очередное число, затем один такт храним его в регистре не отправляя на выход устройства, а затем в течение двух тактов дважды передаем сохраненное число на выход. Затем цикл повторяется.
Модуль счета управляющего режимами счетчика равен сумме чисел последовательности (7+1+2=10).

Пример работы SIPO 7-1-2

Далее:
D=A,В,С[6:0] - первое, второе и третье значения входного числа (любые числа от 0 до 63);
Q[6:0] - выходы внутренних триггеров хранения информации;
Y[6:0] - выходное число устройства;
DataIN - вход последовательной загрузки данных, однобитный;
X - неопределенность, произвольное значение.

СLK
- 01 01 01 01 01 01 01 01 01 01 - 01 01 01 01 01 01 01 01 01 01 - 01 01 01 01 01 01 01 01 01 01 - ...
Режим
-      ЗАГРУЗКА            -ХР-ВЫГР. -      ЗАГРУЗКА            -ХР-ВЫГР. -      ЗАГРУЗКА            -ХР-ВЫГР. - ...
DataIN

Q6
- A0 A1 A2 A3 A4 A5 A6 A6 A6 A6 - B0 B1 B2 B3 B4 B5 B6 B6 B6 B6 - C0 C1 C2 C3 C4 C5 C6 C6 C6 C6 - ...
Q5
- XX A0 A1 A2 A3 A4 A5 A5 A5 A5 - A6 B0 B1 B2 B3 B4 B5 B5 B5 B5 - B6 C0 C1 C2 C3 C4 C5 C5 C5 C5 - ...
Q4
- XX XX A0 A1 A2 A3 A4 A4 A4 A4 - A5 A6 B0 B1 B2 B3 B4 B4 B4 B4 - B5 B6 C0 C1 C2 C3 C4 C4 C4 C4 - ...
Q3
- XX XX XX A0 A1 A2 A3 A3 A3 A3 - A4 A5 A6 B0 B1 B2 B3 B3 B3 B3 - B4 B5 B6 C0 C1 C2 C3 C3 C3 C3 - ...
Q2
- XX XX XX XX A0 A1 A2 A2 A2 A2 - A3 A4 A5 A6 B0 B1 B2 B2 B2 B2 - B3 B4 B5 B6 C0 C1 C2 C2 C2 C2 - ...
Q1
- XX XX XX XX XX A0 A1 A1 A1 A1 - A2 A3 A4 A5 A6 B0 B1 B1 B1 B1 - B2 B3 B4 B5 B6 C0 C1 C1 C1 C1 - ...
Q0
- XX XX XX XX XX XX A0 A0 A0 A0 - A1 A2 A3 A4 A5 A6 B0 B0 B0 B0 - B1 B2 B3 B4 B5 B6 C0 C0 C0 C0 - ...

Yi
- XX XX XX XX XX XX XX XX Ai Ai - Ai Ai Ai Ai Ai Ai Ai Ai Bi Bi - Bi Bi Bi Bi Bi Bi Bi Bi Ci Ci - ...

Если читать потактово сверху вниз, то видно как в интервале загрузки очредное число продвигается через цепочку внутренних сигналов Qi, и к моменту перехода в режим хранения Qi=Di. Значение выходного числа устройства Y обновляется только при переходе устройства в режим хранения, при этом устанавливается Yi=Qi.

В начале приведенных диаграмм считается что первоначальное число в регистре не известно. При моделировании в Schematics желательно в начале подать короткий импульс общего асинхронного сброса, тогда ХХ заменятся нулями.

* У кого последовательность вида N-1-1 может самостоятельно решить какой режим из последних будет сначала - хранение или выгрузка. Если последним назначить "хранение", то допускается заменить его обнулением содержимого внутреннего регистра.
Т.е. получится загрузка-выгрузка-обнуление... Тогда в интервале загрузки биты предыдущего входного числа будут заменены нулями.

** Блокирование передачи содержимого регистра в интервале загрузки на выход можно решить как минимум тремя способами на выбор:
1. Д-защелки, открывающиеся в момент переключения в режим выгрузки и закрывающиеся в момент переключения в режим загрузки;
2. Логические вентили NOR(NAND), тогда в интервалах загрузки и хранения на выходах будут нули(единицы);
3. КМОП элементы с Z-состоянием, тогда в интервалах загрузки и хранения на выходах будут Z (в логической части вместо них поставить  NOR(NAND), а в схемотехнической части Z-состояние добавить в выходные инверторы буферов).

ИТОГО:
Для данных у устройства SIPO один вход и N выходов, у устройства PISO N входов и один выход.
Еще есть входы CLK и Clear (асинхронный сброс).
Внешних входов управления режимом НЕТ.
(дополнительно) разрешается добавить вход Enable общего разрешения/паузы работы.

(Да, мне лень рисовать картинки диаграмм и не лень копипастить буковки)

0

4

Вариант устройства №3 - Делитель частоты, двухрежимный.

В задании указаны две пары чисел M и S для двух режимов работы устройства, где М - это коэффициент деления частоты (модуль счета), а S - скважность выходного сигнала.

Например для (M, S)={(9, 3),(10, 5)} работа в разных режимах будет идти так:

- первый режим M=9, S=3:

CLK
| 01 01 01 01 01 01 01 01 01 | 01 01 01 01 01 01 01 01 01 | 01 01 01 01 01 01 01 01 01 | ...
OUT
| 11 11 11 00 00 00 00 00 00 | 11 11 11 00 00 00 00 00 00 | 11 11 11 00 00 00 00 00 00 | ...

- второй режим M=10, S=5:

CLK
| 01 01 01 01 01 01 01 01 01 01 | 01 01 01 01 01 01 01 01 01 01 | 01 01 01 01 01 01 01 01 01 01 | ...
OUT
| 11 11 00 00 00 00 00 00 00 00 | 11 11 00 00 00 00 00 00 00 00 | 11 11 00 00 00 00 00 00 00 00 | ...

* В этом устройстве, возможно, понадобится детектор изменения режима. Т.к. возможно переключение устройства, в первый режим в ходе десятого такта второго режима, а как на это будет реагировать внутренний счетчик зависит от способа его реализации.

ИТОГО:
у устройства три входа - CLK, Mode и Clear (асинхронный сброс).
у устройства один выход - OUT.
(дополнительно) разрешается добавить вход Enable разрешения/паузы работы.
** На выходных сигналах не должно быть помех от  "гонок". (см. замечание к варианту устройства №1, делители частоты тоже можно назвать ФВС)

0

5

Вариант устройства №4 - Двухрежимный кольцевой счетчик.

В обоих режимах счетчик можно назвать кольцевым. Отличие в формате выходного кода.
В первом режиме счетчик должен считать в унитарном коде с заданным модулем счета ModU, когда среди всех выходных разрядов есть одна И ТОЛЬКО ОДНА единица.
Во втором режиме счетчик долже считать в последовательности Джонсона с заданным модулем счета ModD, когда выходное число сначала потактово заполняется единицами, а потом нулями.

* Обратите внимание, что в режиме с унитарным кодом не должно быть ситуации, когда все выходы одновременно равны нулю.

Пример для ModU=5 и ModD=6

Пример для ModU=5 и ModD=6:

- первый режим (унитарный код, пять выходов)

CLK
| 01 01 01 01 01 | 01 01 01 01 01 | 01 01 01 01 01 | ...
Q0
| 11 00 00 00 00 | 11 00 00 00 00 | 11 00 00 00 00 | ...
Q1
| 00 11 00 00 00 | 00 11 00 00 00 | 00 11 00 00 00 | ...
Q2
| 00 00 11 00 00 | 00 00 11 00 00 | 00 00 11 00 00 | ...
Q3
| 00 00 00 11 00 | 00 00 00 11 00 | 00 00 00 11 00 | ...
Q4
| 00 00 00 00 11 | 00 00 00 00 11 | 00 00 00 00 11 | ...

- второй режим (счетчик Джонсона, пять выходов - два лишних)

CLK
| 01 01 01 01 01 01 | 01 01 01 01 01 01 | 01 01 01 01 01 01 | ...
Q0
| 11 11 11 00 00 00 | 11 11 11 00 00 00 | 11 11 11 00 00 00 | ...
Q1
| 00 11 11 11 00 00 | 00 11 11 11 00 00 | 00 11 11 11 00 00 | ...
Q2
| 00 00 11 11 11 00 | 00 00 11 11 11 00 | 00 00 11 11 11 00 | ...
Q3
| 00 00 00 00 00 00 | 00 00 00 00 00 00 | 00 00 00 00 00 00 | ...
Q4
| 00 00 00 00 00 00 | 00 00 00 00 00 00 | 00 00 00 00 00 00 | ...

ИТОГО:
У устройства три входа - CLK, Mode и Clear (асинхронный сброс).
Число выходов устройства определяется по максимальному числу выходов для двух режимов. "Лишние" в одном из режимов выходы должны равняться нулю.
(дополнительно) разрешается добавить вход Enable разрешения/паузы работы.

0

6

Вариант устройства №5 - Таймер с последовательной загрузкой начального значения.

В задании задана разрядность таймера N.

Из слова "таймер" ясно что основной режим работы устройства - обратный отсчет тактов входного синхросигнала. Отличие от вычитающего счетчика в том, что по достижении нуля на выходе счет должен остановиться.
Последовательная загрузка начального значения означает, что у устройства должен быть режим работы в котором во внутреннюю "память" последовательно загружается некоторое число от 0 до 2N-1.

Приводить пример диаграмм не буду, по моему и так все ясно:
1. У устройства два основных режима - загрузки и обратного отсчета.
2. В режиме счета выходное число на каждом такте уменьшается на единицу. По достижении на выходе нуля счет останавливается.
3. Как и у всех ранее далее рассмотренных вариантах, здесь тоже толжен быть вход асинхронного сброса Clear, сбрасывающий значение выхода в ноль.

* Дополнительно можно добавить режим паузы загрузки/счета, который позволит "растянуть" загрузку данных и приостановить счет.

0

7

Остальные варианты устройств.

Остальные варианты устройств, такие как распределители импульсов, двоично-десятичные счетчики и пр. даны по аналогии с прошлым курсовиком по ОП ЭКБ, как вриант на "три".

Отличия от стандартных решений из книг если и есть, то минимальны.
Смотреть в книгах Угрюмова, Титце и Шенка, Новосельцевой. Все эти книги есть тут на форуме в разделе литературы.

Недавно еще выложил Справочник по цифровой схемотехнике, своего рода альбом готовых решений. Правда многие из них ориентированы на стандартные серии микросхем, а большинство схем счетчиков - асинхронные.

Больше тут про эти варинаты говорить не буду. Ходите на семинары/лабы.

0

8

Устранение GLITCH и "серых" отрезков временных диаграмм.

Для начала приведу наглядную картинку.

Веселая картинка

2015 год. Курсовые проекты "Моделирование схем".

На ней простейший RS-триггер, собранный на элементах библиотеки 74НС.
Рядом нарисованы результаты моделирования в OrCAD 10.0 и 16.5. Видно, что в 16.5 моделирование первой версии триггера проходит неудачно из-за гонок цифровых сигналов.

Тут же на картинке приведено окошечко настроек цифрового моделирования Digital Setup.

Дальнейшие танцы с бубном показали, что в OrCAD 16.5 первая версия триггера перестает работать при настройках Timing Mode = "Maximum" (появляется серость) и "Worst Case" (появляется желтизна).

Вывод. Если при моделировании возникают симптомы, перечисленные далее, то надо попробовать переключить Timing Mode. Если не помогает, то попробовать изменить схему по аналогии с картинкой. Заменить двухвходовые элементы трехвходовыми.
Симптомы:
- сообщения о GLITCH;
- серые линии, переходящие в красные;
- желтые линии, переходящие в красные.

Если замена элементов помогла оживить цифровое моделирование, то в схемотехнической схеме все равно надо ставить правильные вентили - двухвходовые.

0


Вы здесь » МИЭТ:ИЭМС. Консультационный центр. » Логическое проектирование » 2015 год. Курсовые проекты "Моделирование схем".