Создание (синтез) УУ – устройства, выполняющего команды V0-V7.
КУРСОВАЯ РАБОТА
по дисциплине
«Вычислительная техника и информационные технологии»
Выполнил: студент 3 курса специальность сс студ. билет № 5сс10004 Слугин Роман Андреевич _____________________ | Проверил: Туляков Юрий Михайлович ________________________ |
Нижний Новгород
2013г.
I. Задание на курсовую работу:
Курсовая работа предусматривает:
-изучение принципа действия упрощенной модели автоматического вычислителя типа программируемого микрокалькулятора, структурная схема которого изображена на рис. 1;
-программирование в двоичных кодах алгоритма вычислений, предписываемых функцией F = fк (a, b, c, d) из таблицы 10 методических указаний, где индекс k задает номер варианта и определяется предпоследней i=0 и последней j=4, цифрами моего варианта:
1) N=10i+j=04;
2)
3) a=N+15=19; b=N+13=17; c=N+5=9; d=N=4.
При этом программу следует разместить в память команд (ПК), начиная с ячейки № i=0, а операнды a, b, c и d – в память данных (ПД), начиная с ячейки № j=4;
-синтез конечного автомата (КА), реализующего функции устройства управления (УУ) на рис.1;
-выполнение вручную всех расчетов согласно в двоичной системе счисления с выдачей всех промежуточных и окончательного результатов.
Рисунок 1 – Структурная схема вычислителя.
II. Теоретическая часть
1.Состав вычислителя.
В состав вычислителя входят: арифметико-логическое устройство АЛУ (ALU), регистр RgQ, память команд ПК, память данных ПД, устройство управления УУ (конечный автомат КА), мультиплексор MS, элементы управляющей логики И1, И2.
2.Принцип работы вычислителя.
В ПК записываются команды, в ПД – операнды (данные).
Управление ПК и ПД осуществляется с помощью УУ сигналами V1-V7, которые подаются в виде 0 и 1 на указанные устройства.
Сначала выполняется первая (верхняя) команда (она записана в регистрах (строчках) ПК) и по указанным в ней адресам выбирает из ПД нужные данные (числа) для операндов X и Y (аргументов, над которыми выполняются заданные операции).
Для выполнения необходимой операции над X и Y в АЛУ подается КОП (код операции). Полученный результат из АЛУ выдается в регистр результата RgQ. Если этот результат промежуточный, то он записывается в ПД в ячейку (РОН) с адресом, который указан в команде. Если результат конечный, то он из RgQ подается на выход (например, на дисплей).
Устройство управления (УУ) главным образом определяет очередность выбора команд. В данном случае это последовательный переход по счету от одной команды к другой (от одного адреса к другому). Поэтому УУ представляет собой счетчик, на выходе Q которого появляется двоичная комбинация, определяющая число сосчитанных входных импульсов. Управление заключается в подаче импульса запуска и выключении УУ после выполнения всех операций по заданной функции.
III. Практическая часть
1.Присваиваю данным операндам определенные РОН для:
«а» помещаю в ячейку РОНj=РОН4;
«b»→РОНj+1=РОН5;
«с»→ РОНj+2=РОН6;
«d»→ РОНj+3=РОН7
Ввожу вспомогательные переменные:
e =
f =
g =
h =
i =
Для дополнительно введенных переменных и их временного хранения выделяю дополнительные РОН:
e – РОН8, f – РОН9, g –РОН10, h – РОН11
АЛУ выполняет следующие операции:
, код операции – 010;
, код операции – 011;
, код операции – 100;
, код операции – 101;
2. Составляю блок-схему алгоритма вычисления.
Алгоритм вычислений реализуется последовательным выполнением команд K1,…,K9, каждая из которых обеспечивает выполнение следующих операций:
K1 – вычисление e = и размещение результата в RgQ
K2 – перезапись e из RgQ в РОН8.
К3 – вычисление f = и размещение результата в RgQ
K4 – перезапись f из RgQ в РОН9.
K5 – вычисление и размещение результата в RgQ
K6 – перезапись g из RgQ в РОН10.
K7 – вычисление h = и размещение результата в RgQ
K8 – перезапись h из RgQ в РОН11.
K9 – вычисление i = и размещение результата в RgQ
Таблица 1 – блок-схема работы вычислителя.
K1 | e = | ||
K2 | перезапись e из RgQ в РОН8 | ||
K3 | f = | ||
K4 | перезапись f из RgQ в РОН9 | ||
K5 | |||
K6 | перезапись g из RgQ в РОН10 | ||
К7 | h = | ||
К8 | перезапись h из RgQ в РОН11 | ||
К9 | i = |
3. Программирование сводится к записи кодов всех перечисленных команд в той же последовательности.
Заполняю таблицу команд программы (хранящейся в памяти команд).
Таблица 2
Команда | Адрес в ПК | Тип перехода от одной команды к другой | КОП ALU | Адрес (в ПД) (РОН) | Адрес (в ПД) (РОН) | Доп. уровни в УУ | |||||||||||||||||
V5 | V4 | V3 | V2 | V1 | P2 | P1 | P0 | K2 | K1 | K0 | Ax | Ay | V6 | V7 | |||||||||
К1 | х | х | х | х | х | ||||||||||||||||||
К2 | х | x | x | x | x | х | x | х | |||||||||||||||
К3 | |||||||||||||||||||||||
К4 | х | x | x | х | х | х | х | х | |||||||||||||||
К5 | x | x | х | x | x | ||||||||||||||||||
К6 | x | x | x | х | х | х | х | x | |||||||||||||||
К7 | |||||||||||||||||||||||
К8 | х | x | x | x | x | x | x | х | |||||||||||||||
К9 | Стоп |
Литература
14.04.2013
КУРСОВАЯ РАБОТА
по дисциплине
«Вычислительная техника и информационные технологии»
Выполнил: студент 3 курса специальность сс студ. билет № 5сс10004 Слугин Роман Андреевич _____________________ | Проверил: Туляков Юрий Михайлович ________________________ |
Нижний Новгород
2013г.
I. Задание на курсовую работу:
Курсовая работа предусматривает:
-изучение принципа действия упрощенной модели автоматического вычислителя типа программируемого микрокалькулятора, структурная схема которого изображена на рис. 1;
-программирование в двоичных кодах алгоритма вычислений, предписываемых функцией F = fк (a, b, c, d) из таблицы 10 методических указаний, где индекс k задает номер варианта и определяется предпоследней i=0 и последней j=4, цифрами моего варианта:
1) N=10i+j=04;
2)
3) a=N+15=19; b=N+13=17; c=N+5=9; d=N=4.
При этом программу следует разместить в память команд (ПК), начиная с ячейки № i=0, а операнды a, b, c и d – в память данных (ПД), начиная с ячейки № j=4;
-синтез конечного автомата (КА), реализующего функции устройства управления (УУ) на рис.1;
-выполнение вручную всех расчетов согласно в двоичной системе счисления с выдачей всех промежуточных и окончательного результатов.
Рисунок 1 – Структурная схема вычислителя.
II. Теоретическая часть
1.Состав вычислителя.
В состав вычислителя входят: арифметико-логическое устройство АЛУ (ALU), регистр RgQ, память команд ПК, память данных ПД, устройство управления УУ (конечный автомат КА), мультиплексор MS, элементы управляющей логики И1, И2.
2.Принцип работы вычислителя.
В ПК записываются команды, в ПД – операнды (данные).
Управление ПК и ПД осуществляется с помощью УУ сигналами V1-V7, которые подаются в виде 0 и 1 на указанные устройства.
Сначала выполняется первая (верхняя) команда (она записана в регистрах (строчках) ПК) и по указанным в ней адресам выбирает из ПД нужные данные (числа) для операндов X и Y (аргументов, над которыми выполняются заданные операции).
Для выполнения необходимой операции над X и Y в АЛУ подается КОП (код операции). Полученный результат из АЛУ выдается в регистр результата RgQ. Если этот результат промежуточный, то он записывается в ПД в ячейку (РОН) с адресом, который указан в команде. Если результат конечный, то он из RgQ подается на выход (например, на дисплей).
Устройство управления (УУ) главным образом определяет очередность выбора команд. В данном случае это последовательный переход по счету от одной команды к другой (от одного адреса к другому). Поэтому УУ представляет собой счетчик, на выходе Q которого появляется двоичная комбинация, определяющая число сосчитанных входных импульсов. Управление заключается в подаче импульса запуска и выключении УУ после выполнения всех операций по заданной функции.
III. Практическая часть
1.Присваиваю данным операндам определенные РОН для:
«а» помещаю в ячейку РОНj=РОН4;
«b»→РОНj+1=РОН5;
«с»→ РОНj+2=РОН6;
«d»→ РОНj+3=РОН7
Ввожу вспомогательные переменные:
e =
f =
g =
h =
i =
Для дополнительно введенных переменных и их временного хранения выделяю дополнительные РОН:
e – РОН8, f – РОН9, g –РОН10, h – РОН11
АЛУ выполняет следующие операции:
, код операции – 010;
, код операции – 011;
, код операции – 100;
, код операции – 101;
2. Составляю блок-схему алгоритма вычисления.
Алгоритм вычислений реализуется последовательным выполнением команд K1,…,K9, каждая из которых обеспечивает выполнение следующих операций:
K1 – вычисление e = и размещение результата в RgQ
K2 – перезапись e из RgQ в РОН8.
К3 – вычисление f = и размещение результата в RgQ
K4 – перезапись f из RgQ в РОН9.
K5 – вычисление и размещение результата в RgQ
K6 – перезапись g из RgQ в РОН10.
K7 – вычисление h = и размещение результата в RgQ
K8 – перезапись h из RgQ в РОН11.
K9 – вычисление i = и размещение результата в RgQ
Таблица 1 – блок-схема работы вычислителя.
K1 | e = | ||
K2 | перезапись e из RgQ в РОН8 | ||
K3 | f = | ||
K4 | перезапись f из RgQ в РОН9 | ||
K5 | |||
K6 | перезапись g из RgQ в РОН10 | ||
К7 | h = | ||
К8 | перезапись h из RgQ в РОН11 | ||
К9 | i = |
3. Программирование сводится к записи кодов всех перечисленных команд в той же последовательности.
Заполняю таблицу команд программы (хранящейся в памяти команд).
Таблица 2
Команда | Адрес в ПК | Тип перехода от одной команды к другой | КОП ALU | Адрес (в ПД) (РОН) | Адрес (в ПД) (РОН) | Доп. уровни в УУ | |||||||||||||||||
V5 | V4 | V3 | V2 | V1 | P2 | P1 | P0 | K2 | K1 | K0 | Ax | Ay | V6 | V7 | |||||||||
К1 | х | х | х | х | х | ||||||||||||||||||
К2 | х | x | x | x | x | х | x | х | |||||||||||||||
К3 | |||||||||||||||||||||||
К4 | х | x | x | х | х | х | х | х | |||||||||||||||
К5 | x | x | х | x | x | ||||||||||||||||||
К6 | x | x | x | х | х | х | х | x | |||||||||||||||
К7 | |||||||||||||||||||||||
К8 | х | x | x | x | x | x | x | х | |||||||||||||||
К9 | Стоп |
Создание (синтез) УУ – устройства, выполняющего команды V0-V7.
a) Структурная схема УУ.
Управляющее устройство содержит комбинационные устройства КУ1 и КУ2, память и схему запуска.
Комбинационное устройство КУ1 формирует сигналы q1, q2, q3, q4 управляющие триггерами T1, T2, T3, Т4 памяти УУ, что обеспечивает переход УУ из состояния a0 в состояние a1, из a1 в a2 и т.д.
схема запуска и сброса |
КУ1 |
Автоматическое устройство переключения от такта к такту |
КУ2 |
счетчик |
qn Qn Vm
ОС W
Рисунок 2 – Структурная схема УУ.
б) Считаем, что переключающее устройство строится на триггерах с выходами Q. Определю необходимое количество триггеров для выполнения всех команд:
,
где М – количество рабочих состояний (тактов).
Также учитывается 1 состояние покоя.
,т.е. m=4.
После подачи импульса запуска КА должен отработать полный рабочий цикл, выдавая на каждом из тактов требуемые уровни выходных сигналов V1 – V7. В конце 9 такта КА должен сформировать сигнал W=1 сброса, которым он будет переведен в состояние покоя.
в) Составляю таблицу функционирования УУ.
Таблица 3.
Такт (состояние) | Текущее состояние КА | Выходные сигналы | ||||||||||
Q4 | Q3 | Q2 | Q1 | V5 | V4 | V3 | V2 | V1 | V6 | V7 | W | |
X | X | X | X | X | X | X | Х | |||||
Остальные комбинации | ||||||||||||
Х | ||||||||||||
Х | ||||||||||||
Х | ||||||||||||
Х | ||||||||||||
Х | ||||||||||||
Х |
г)Строю комбинационное устройство КУ, которое вырабатывает сигналы V1-V7 и W, имея на входах сигналы Q1-Q4. Т.е. синтезирую счетчик на основе JK-триггеров.
Таблица 4
Такт J | Предшествующие состояния триггеров (входные сигналы КУ1) на j-такте | Последующие состояния триггеров на (j+1)-такте | Выходные сигналы КУ1 (управляющие триггерами) на j-такте | |||||||||
Q4(jj) | Q3(jj) | Q2(jj) | Q1(jj) | Q4(jj+1) | Q3(jj+1) | Q2(jj+1) | Q1(jj+1) | q4 | q3 | q2 | q1 | |
X | X | X | X | X | X | X | X | |||||
Остальные комбинации | ||||||||||||
д) По таблице 4 составляю комбинационную схему в СДНФ. Видно, что q1=1. Выпишу СДНФ для q2,q3,q4 и минимизирую их с помощью карт Карно-Вейча.
Для минимизации выражений также использую безразличные состояния Х.
Для формирования сигналов q1, q2 ,q3, q4 использую встроенную логику ЗИ JK- триггеров. В результате память КА, вместе с КУ1 превратится в счетчик с параллельным переносом. Комбинационное устройство КУ2, имея на своих входах сигналы Q1, Q2, Q3, Q4 должно формировать выходные сигналы V1, V2,…V7, W согласно таблице 3. Формулы для МДНФ выходных переменных V1, V2,…V7, W позволяют построить принципиальную схему КУ2, чем и завершается синтез УУ.
Рисунок 3 – Схема синтезированного устройства КУ1 – счетчика с параллельным переносом.
е) Аналогично составляю функции для V1-W в СДНФ и синтезирую КУ2, используя таблицу 3.
Минимизирую выражения с помощью карт Карно-Вейча:
Рисунок 4 - Схема КУ2.
ж) Строю схему запуска и сброса.
Рисунок 5 - Схема запуска.
КА работает в том случае, если на его вход подаются тактовые импульсы ТИ, которые считаются счетчиком и заставляют его срабатывать. Таким образом, должна присутствовать схема запуска, которая подает ТИ от генератора на УУ. Еe выключение прекращает подачу ТИ.
Схема запуска и сброса может быть организована на ЛЭ «И» и RS–триггере (рис.6). Если на вход S триггера подать запускающий импульс, то на выходе Q появляется 1 и открывает схему «И». Когда вырабатывается команда СТОП, на вход R триггера подается сигнал W=1, на выходе Q появляется 0, и схема «И» перестает пропускать ТИ. Одновременно сигнал W подается на R-асинхронные входы триггеров, осуществляя их сброс (обнуление).