русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Алгоритмы выполнения операций. Микропрограммы


Дата добавления: 2014-02-04; просмотров: 2000; Нарушение авторских прав


Структурная схема процессора

Процессор. Структурная схема процессора. Понятие о микропрограммном управлении

Структуры вычислительных систем

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

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

 

меет порядок 100 000.транзисторов на одном кристалле в на кристаллемы большой и.

.

Рис.1.5. Структура вычислительной системы с общей памятью

 

Альтернативный вариант организации – распределенная система, где общая память вообще отсутствует, а каждый процессор обладает собственной локальной памятью (рис.1.6). Часто такие системы объединяют отдельные ВМ. Обмен информацией между составляющими системы обеспечивается с помощью коммуникационной сети посредством обмена сообщениями.

 

 

Рис.1.6Структура распределенной вычислительной системы

 

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

 

 

 

Процессором называется устройство, непосредственно осуществляющее процесс обработки данных и программное управление этим процессом. Процессор дешифрует и выполняет команды программы, организует обращение к оперативной памяти(ОЗУ), в нужных случаях инициирует работу периферийного устройства(ПУ), воспринимает и обрабатывает запросы прерывания. Процессор занимает центральное место в структуре ЭВМ, так как он осуществляет управление взаимодействием всех устройств, входящих в состав ЭВМ.



Упрощенная структурная схема процессора состоит из: арифметико-логического устройства(АЛУ), блока регистровой памяти, блока связи с ОЗУ, устройства управления (УУ) и блока управляющих регистров(БУР).

 

 

 

АЛУ выполняет все логические и арифметические операции над операндами.

Блок регистровой памяти используется для хранения операндов, а также для хранения индексов и адресов при обращении к стековой или оперативной памяти. Этот блок регистров имеет более высокое, чем ОЗУ быстродействие и предназначен для повышения производительности процессора.

Блок связи с ОЗУ (интерфейс процессора) организует обмен информацией процессора с ОЗУ и защиту ОЗУ от несанкционированного доступа.

УУ выполняет последовательность управляющих сигналов, инициирующих выполнение отдельных команд.

Блок управляющих регистров предназначен для хранения управляющей информации. Он содержит регистры и счетчики, участвующие в управлении вычислительным процессом, в частности в этот блок входят регистры, хранящие информацию о состоянии процессора, регистры запросов прерывания, счетчики тактов, счетчики команд и т д. Например, счетчик команд служит для определения адреса команды, которую в данный момент времени процессор читает из ОЗУ. Для линейных участков программы этот адрес вычисляется в счетчике команд путем сложения адреса предыдущей команды, который находится в счетчике с числом, равным количеству байт предыдущей команды.

 
 
 
Программа  

Процессор, как любое цифровое устройство, можно рассматривать состоящим из двух блоков: операционного и управляющего. На структурной схеме управляющий блок выделен обводкой, состоящей из пунктирных линий, а остальные невыделенные блоки входят в состав операционного устройства. Процессор работает под управлением программы, находящейся в ОЗУ, которая, в свою очередь, состоит из команд. Процессор читает из ОЗУ одну команду за другой и последовательно их выполняет. В свою очередь любая команда, выполняемая в операционном блоке процессора, описывается некоторой микропрограммой и реализуется за несколько тактов, в каждом из которых выполняется одна или несколько микроопераций. Интервал времени, отводимый на выполнение микрооперации, называется рабочим тактом процессора. Для реализации команды необходимо на соответствующие управляющие входы операционного блока подать определенным образом распределенную во времени последовательность управляющих сигналов. Каждая микрооперация в АЛУ выполняется под действием своего управляющего сигнала , который поступает в операционный блок в начале соответствующего такта. Управляющий блок как раз и предназначен для выработки этих управляющих сигналов, под действием которых в АЛУ выполняются микрооперации.

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

Существуют два основных типа управляющих автоматов(УА):

1. УА с жесткой логикой. В таком автомате для каждой операции строится набор комбинационных схем, которые вырабатывают нужную последовательность управляющих сигналов .

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

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

 

 

Основное назначение процессора – выполнение различных арифметических и логических операций. В качестве примера рассмотрим алгоритм выполнения операции сложения и вычитания чисел с фиксированной точкой в прямых кодах :

1. Сравнить знаки слагаемых А и В. Если знаки различны, то вместо сложения выполнить операцию вычитания, а вместо вычитания – сложение. Если знаки одинаковые, то сложение остается сложением, а вычитание – вычитанием.

2. Если по результатам пункта 1 должно выполняться вычитание, то обратить код второго слагаемого В (т е получить обратный код от В)

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

4. Если идет вычитание, и в пункте 3 не был получен перенос из самого старшего разряда сумматора, то обратить код и знак результата (0 поменять на 1, а 1 – на 0)

5. Если выполнялся пункт 4, то вслед за этим пунктом добавить к полученному результату единицу младшего разряда.

Рассмотрим пример на выполнении операции вычитания (S=A-B):

А=0.111011

В=0.001101

S=A-B=A+(-B)

В соответствии с алгоритмом необходимо обратить код второго слагаемого В

[B]обр=0.110010

 

+
А =0.111011 A=0.111011

[B]обр=0.110010-B=0.001101

P1=1 0.101101 0.101110

+ 1

S=0.101110

Здесь Р1 – перенос из старшего разряда сумматора.

В соответствии с алгоритмом построим схему АЛУ и управляющего блока, а также микропрограмму для выполнения операции сложения-вычитания чисел в прямых кодах.

 

Список микроопераций:

 

(слагаемое А, поступающее по шине Х)

 

(суммирование без учета знака)

(в регистр А записывается сумма, а перенос Р1 – в 1й разряд)

сигнал переполнения разрядной сетки

 

В состав схемы входят:

1. восьмиразрядный комбинационный сумматор SM(1:8)

2. десятиразрядный регистр сумматора RGA(0:9)

3. девятиразрядный регистр второго слагаемого RGB(0:8)

4. Устройство управления (УУ), построенное в виде микропрограммного автомата Мили.

Комбинационный сумматор SM формирует восьмиразрядную сумму S, которая по сигналу Y5 поступает в регистр RGA. В дополнительном первом разряде регистра RGA(1) по тому же сигналу Y5 фиксируется значение сигнала переноса Р1. Нулевые разряды обоих регистров используются в качестве знаковых разрядов: при RGA(0)=0 число в регистре положительное, при RGA(0)=1 – отрицательное. Слагаемые А и В загружаются в соответствующие регистры со входной шиной Х(0:8) по сигналам Y2 и Y3 соответственно. Значение суммы S записывается в регистр RGA и представляется на выходной шине Z(0:8) по сигналу Y10. Входы сумматора SM связаны с шинами передачи числа из регистра RGА в прямом коде, а из регистра RGB по сигналу Y4 модуль слагаемого В поступает в сумматор SM в прямом коде, а по сигналу Y6 – в обратном. По сигналу Y1 оба регистра обнуляются, а по сигналу Y7 на вход переноса младшего разряда сумматора SM поступает единица, т е . По сигналу Y8 все разряды регистра RGA инвертируются. Если в сумматоре происходит переполнение, то УУ формирует сигнал переполнения разрядной сетки Y9.

В процессе выполнения операций сложения-вычитания чисел в схеме формируются следующие сигналы состояний:

- знаковый разряд первого регистра RGA, т е знак слагаемого А.

- знаковый разряд второго регистра RGВ, т е знак слагаемого В.

- сигнал переноса Р1 с выхода старшего разряда сумматора, который записывается в 1м разряде регистра RGA.

- сумма по модулю два знаковых разрядов. Сигнал f=1, если знаки слагаемых А и В различны, f=0, если знаки слагаемых А и В одинаковы.

Сигналы Х3 и f поступают на входы УУ. УУ вырабатывает на своих выходах управляющие сигналы 10 микроопераций с Y1 по Y10. На входы УУ поступают также синхросигналы С и внешний сигнал α, который определяет вид выполняемой операции: если α=1, то выполняется операция сложения, если α=0, то выполняется операция вычитания. С учетом приведенных обозначений построим микропрограмму сложения-вычитания чисел в прямых кодах.

 

 

 

Выполнение микропрограммы начинается с подготовки регистров к приему слагаемых А и В, для чего они обнуляются по сигналу У1. Сами слагаемые поочередно записываются в соответствующие регистры по сигналам Y2 и Y3. После этого по сигналу f анализируются знаки слагаемых, а по сигналу α определяется вид операции.

Если , то в четвертом такте выполняется сложение абсолютных значений слагаемых |A| и |B| с помощью сигналов Y4 и Y5. При этом по сигналу Y4 на входы сумматора SM подаются значения разрядов модуля В, и в сумматоре образуется сумма |A|+ |B|=S, которая по сигналу Y5 записывается в регистр RGA. Значение сигнала Р1 – переноса из старшего разряда сумматора запоминается в первом разряде регистра RGA(1), а значение знака слагаемого А сохраняется в нулевом разряде регистра А – RGA(0) и в дальнейшем используется в качестве знака суммы. Анализируется значение сигнала Х3:

-Если Х3=0, т е перенос Р1=0, то значения знакового и основных разрядов суммы выдаются на выходную шину Z по сигналу У10 и операция сложения на этом завершается.

-Если Х3=1 (был перенос Р1 из старшего разряда сумматора), то устройство управления формирует сигнал У9, извещающий о переполнении разрядной сетки. Это значит, что полученный результат не верен, и по сигналу У9 происходит прерывание программы процессора.

Если , то, начиная с четвертого такта, нужно выполнить следующую операцию над операндами А и В: из большей абсолютной величины вычесть меньшую и полученному результату приписать знак большего по абсолютной величине операнда. Для этого в четвертом такте выполняется суммирование модуля А с дополнением модуля В до единицы с помощью сигналов У5, У6, У7. При этом по сигналу У6 на входы сумматора подаются разряды модуля В в обратном коде, по сигналу У7 на вход переноса младшего разряда сумматора поступает единичный сигнал , а по сигналу У5 полученный результат |A|+1-|B| записывается в регистр RGA. Анализируется значение сигнала Х3:

Если Х3=1, т е был перенос Р1 из старшего разряда сумматора, то это значит, что полученный результат |A|+1-|B| 1 или |A| |В|, тогда в разрядах регистра RGA находится искомый результат |A|-|B|, поскольку произошло вычитание из большей абсолютной величины меньшей. При этом знак результата совпадает со знаком слагаемого А. В этом случае устройство управления в пятом такте сразу формирует сигнал выдачи результата У10 на шину Z и операция вычитания завершается.

Если Х3=0 (переноса Р1 не было), то |A|<|B| и в регистре RGA находится не сам искомый результат, а его дополнение до единицы, т е 1-(|B|-|A|) – дополнительный код разности. В этом случае производится коррекция результата, т е перевод результата из дополнительного кода в прямой. Для этого в пятом такте по сигналу У8 знаковый и основные разряды регистра RGA инвертируются, а в шестом такте по сигналам У7 и У5 к младшему разряду числа в RGA прибавляется единица. В седьмом такте полученный результат выставляется по сигналу У10 на шину Z и операция вычитания завершается.

 



<== предыдущая лекция | следующая лекция ==>
Структуры вычислительных машин | Синтез микропрограммного автомата. Синтез устройства управления


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.047 сек.