скачать рефераты
  RSS    

Меню

Быстрый поиск

скачать рефераты

скачать рефератыКонтрольная работа: Микропрограммирование операций ЭВМ

Контрольная работа: Микропрограммирование операций ЭВМ

Министерство образования Российской Федерации

Томский политехнический университет

Факультет автоматики и вычислительной техники

Кафедра ВТ

РЕФЕРАТ

по дисциплине "Теория автоматов"на тему:

" Микропрограммирование операций ЭВМ "

Выполнила студентка           Погребная М.В.

Руководитель                   Триханов А.В.

Томск 2008


Оглавление

ВВЕДЕНИЕ.. 3

1. Язык микропрограммирования (Ф-язык) 4

1.1. Общие сведения о языке. 4

1.2. Элементарные конструкции языка. 5

1.3. Конструкции средней сложности. 6

1.3.1. Микрооперации. 6

1.3.2. Двоичные выражения. 11

1.3.2.1. Двоичные простые выражения. 12

1.3.2.2. Двоичные условные выражения. 13

1.3.3. Сложные конструкции. 15

1.3.3.1. Графические схемы алгоритма. 15

1.3.3.2. Матричные схемы алгоритма. 17

1.3.3.3. Системы формул переходов. 19

1.3.3.4. Функциональные микропрограммы.. 19

1.4. Язык описания цифровой аппаратуры VHDL.. 20

1.4.1. Общие сведения об языке. 20

1.4.2. Конструкции языка. 24

1.4.2.1. Константы.. 29

1.4.2.2. Переменные. 29

1.4.2.3. Сигналы.. 30

1.4.2.4. Операторы.. 30

1.4.2.5. Пакеты.. 30

ЗАКЛЮЧЕНИЕ.. 31

ЛИТЕРАТУРА.. 32


ВВЕДЕНИЕ

Современные персональные компьютеры работают по принципу микропрограммного управления и к настоящему времени большинство операций над дискретными объектами уже алгоритмизированы (с использованием языка микропрограммирования).

Данный реферат посвящен основам языка микропрограммирования (Ф-языка) и языка описания цифровой аппаратуры VHDL, средства которых используются при алгоритмизации и микропрограммировании операций над дискретными объектами. Приведенные средства описания цифровых автоматов (ГСА, матричные схемы алгоритмов (МСА), системы формул переходов (СФП)), к средствам Ф-языка не относятся, однако рассмотрение микропрограммирования сопровождается использованием указанных способов описания алгоритмов.

В соответствие с принципом микропрограммного управления каждая операция (действие) разбивается на элементарные действия (микрооперации). К таким микрооперациям относятся инверсия, конъюнкция, дизъюнкция, передачи и др.

Для преобразования информации в компьютере предназначено устройство обработки цифровой информации, в настоящее время его принято называть процессором.

В.М.Глушков [1] предложил его изображать так, как показано на рис.1. Как видно, процессор включает в себя операционный (ОА) и управляющий (УА) автоматы.

D      R


Y          Х


F

Рис.1. Структурная схема процессора по В.М.Глушкову

ОА предназначен для преобразования операндов D в результат R. Этот автомат работает под действием управляющих сигналов, множество которых обозначено через Y.

УА предназначен для формирования подмножеств управляющих сигналов для операций Fi, множество которых обозначено через F. Указанные подмножества управляющих сигналов формируются на основе кодов операций Fi и осведомительных сигналов, множество которых обозначено через X.

Осведомительные сигналы характеризуют получаемые результаты с качественной стороны. Любое действие в компьютере выполняется на основе функциональной микропрограммы, которая представляет собой программу, составленную в терминах микроопераций и осведомительных сигналов.

Таким образом, принцип микропрограммного управления можно сформулировать следующим образом:

1)         любое действие делится на совокупность элементарных действий (микроопераций);

2)         ни одно действие не является элементарным;

3)         для изменения порядка следования микроопераций вводятся осведомительные сигналы;

4)         для каждого действия составляется микропрограмма в терминах микроопераций (МО) и осведомительных сигналов.

Микропрограммы всех операций хранятся в специальном (управляющем) запоминающем устройстве.


1. Язык микропрограммирования (Ф-язык)

1.1. Общие сведения о языке

Для составления микропрограмм используется какой-либо язык микропрограммирования, в учебном процессе вузов нашел наибольшее применение язык микропрограммирования, предложенный Г.И.Новиковым [2]. Этот язык называется Ф-языком в соответствие с тем, что он предназначен для описания работы функционирования схем, выполняющих операции по преобразованию дискретных объектов. Для составления программ решения математических, физических, экономических и других задач его применять нецелесообразно из-за элементарности его действий.

Особенностями Ф-языка являются двоичный характер операндов, результатов и наличие средств описания работы типовых узлов (регистров, счетчиков, сумматоров и др.) и памяти.

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

К элементарным конструкциям относятся константы, слова, массивы и поля.

Как в любом современном языке, в Ф-языке имеется возможность работы со словами переменной длины. Микрооперации и двоичные выражения составляют группу конструкций средней сложности. Наконец, сложными конструкциями являются функциональные микропрограммы (ФМП).

1.2. Элементарные конструкции языка

Выше было указано, что к элементарным конструкциям относятся константы, слова, массивы и поля.

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

Константы задаются в двоичной системе как положительные числа; допускается задавать константу в десятичной и восьмеричной системах счисления. В этих случаях правее значения константы приписывается строчная буква Д или В.

Пусть, например, требуется константа со значением 1010, в восьмеричной системе счисления это будет соответствовать записи 12В, в десятичной – 10Д.

Слово является основной информационной единицей языка, оно представляет собой упорядоченное сочетание двоичных разрядов. Слово вводится в употребление своим описанием, которое начинается с имени. После имени в круглых скобках указываются номера разрядов. Левый (старший) разряд обычно имеет номер 1. Между номерами разрядов ставится разделитель типа «:». Имя должно начинаться с прописной буквы латинского или русского алфавитов.

Например, записи А(1:32), В1(1:16) вводят в употребление 32-разрядное слово А и 16-разрядное слово В1.

Если в скобках будет стоять только один номер, то это будет соответствовать разряду с используемым номером. Например, записи А(1), В1(16) вводят в употребление 1-ый разряд слова А и 16-ый разряд слова В1.

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

Массив вводится в употребление своим описанием, которое начинается также с имени, далее следуют квадратные скобки с номерами крайних слов и круглые скобки с номерами разрядов слов.

 Например, запись ЗУ[1:1024](1:37) вводит в употребление массив из 1024 37-разрядных слов. Очевидно, что речь идет о запоминающем устройстве.

Поле является каким - либо “срезом” массива. Например, полем кодов операций команд, хранящихся в памяти компьютера будет, видимо, “срез” ЗУ[1:1024](1:7).

1.3. Конструкции средней сложности

Как замечено выше, микрооперации и двоичные выражения составляют группу конструкций средней сложности.

1.3.1. Микрооперации

В Ф-языке используется десять типов микроопераций. К первому типу

относится микрооперация установки, она предназначена для задания начального значения слову, части слова, отдельному разряду.

Структура этой и всех других операций включает в себя три части: левую (ЛЧ), среднюю и правую (ПЧ) части. Структуру можно показать следующим образом:

ЛЧ : = ПЧ.

Средняя часть является знаком присваивания, левая часть есть та информационная единица (слово, фрагмент слова, отдельный разряд), которой и надлежит присвоить первоначальное значение.

Естественно, что правая часть должна представлять собой какую-либо константу.

Особенностью рассматриваемой операции является то, что правая часть есть константа.

Например, записи

 А(1: 3):=000,

В1(1:32):=10101010101010101010101010101010,

В(5):=1

являются выражениями микроопераций установки в 1, 2 и 3 разрядах слова А нулевых значений, во всех разрядах слова В1 значения 1010…1010, в 5-м разряде слова В единичного значения.

Если установка касается какого-либо типового узла с памятью, то нулевая константа в правой части означает обнуление или "сброс" содержимого узла.

Не следует путать запись микрооперации с записью того, что слово, часть слова, разряд слова имеют конкретное значение.

Например, запись А (1:3) = 101 не является микрооперацией, она означает, что у первых трех разрядов слова А имеется значение 101.

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

до: А (1:3) = 101, после: А (1:3) = 000.

Ко второму типу относится микрооперация передачи, особенностью этой микрооперации является то, что и правая часть есть слово. Данная микрооперация обеспечивает замену значения левого слова на значение правого слова.

Левое и правое слова могут иметь разные длины (nl ,np), через nl ,np обозначены количества разрядов в левом и правом словах соответственно.

Возможны три случая отношения между nl, np :

nl = np,

nl < np,

3) nl > np.

В первом случае проблем по согласованию длин нет, значение правого слова оказывается в левом слове.

Во втором случае у правого слова имеются лишние разряды, требуется

отбрасывание определенных разрядов правого слова, в Ф-языке установлено, что отбрасывать нужно с левой стороны.

Пусть, например, имеются микрооперация А(1:3):= В(1:6), а также А(1:3) = 110, В(1:6) = 101001, тогда после выполнения данной микрооперации будет А(1:3) = 001. Значение 101 в старших разрядах слова В отброшено.

В третьем случае у левого слова имеются лишние разряды, требуется доопределить лишние разряды указанного слова. Доопределяются левые лишние разряды нулями.

Пусть, например, имеются микрооперация В(1:6):= А(1:3), а также А(1:3) = 110, В(1:6) = 101001, тогда после выполнения данной микрооперации будет В(1:6) = 000110. Видно, что левые три разряда левого слова имеют значение 0.

Микрооперация передачи описывает работу цепей связи между узлами компьютера.

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

При рассматриваемой микрооперации проблем по согласованию длин нет.

Пусть, например, имеются микрооперация В (1:6):= ù В (1:6), кстати, при записи микрооперации инверсии необязательно указывать разряды слова. Также пусть В (1:6) = 101001, тогда после выполнения данной микрооперации будет В (1:6) = 010110. Видно, что все первоначальные значения разрядов слова В приняли инверсные значения.

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

К четвертому типу микроопераций относится группа микроопераций, включающая в себя конъюнкцию и дизъюнкцию. Данные микрооперации требуют одинаковой длины всех слов, задействованных в микрооперациях.

Пусть, например, имеются микрооперации

 С(1:6):= А(1:6) /\ В (1:6),

D(1:6):= А(1:6) \/ В(1:6)

и А = 100110, В = 000111, С = 010101, D = 101010, тогда после выполнения данных микроопераций будет C(1:6) = 000110, D = 100111.

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

Микрооперация пятого типа – микрооперация составления, она предназначена для формирования так называемого составного слова на основе других слов, их фрагментов и констант.

Например, результирующее слово, соответствующее результату любой операции с "плавающей" точкой, как раз и получается на основе составления слова из слов, представляющих мантиссу и порядок.

Знаком микрооперации составления является знак ".".

Очевидно, что при составлении возникает проблема согласования длин левой и правой частей микрооперации. Разрешается она точно также, как и при передачах.

Пусть, например, имеются микрооперации

С(1:6):= А(1:3) . В (1:3),

D(1:6):= А(1:3) . Е(1:4),

F(1:8):= B(1:3) . A(1:3),

G(1:5):= А(1:3) . 010,

и А = 100, В = 011, E = 1101, С = 010101, D = 101010, F =00110011, G = 10001, тогда после выполнения данных микроопераций будет C(1:6) = 100011, D = 001101, F = 00011100 и G = 00010.

К шестому типу относятся группа микроопераций счета, они описывают работу счетчиков прямого и обратного счета. При прямом счете содержимое счетчика увеличивается на единицу, а при обратном – уменьшается на единицу.

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

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

Пусть, например, имеются микрооперации

 СТА(1 : 6):= СТА(1 : 6) + 1,

 СТВ(1 : 6):= СТВ(1 : 6) - 1

и СТА = 100100, СТВ = 011011, тогда после выполнения данных микроопераций будет CТА(1 : 6) = 100101, СТВ = 011010.

Особой необходимости при микрооперации счета указывать длину слова нет.

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

Сдвиги делятся на логические и арифметические.

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

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

Страницы: 1, 2, 3, 4, 5


Новости

Быстрый поиск

Группа вКонтакте: новости

Пока нет

Новости в Twitter и Facebook

  скачать рефераты              скачать рефераты

Новости

скачать рефераты

© 2010.