Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Традиционно машинный уровень




Классификация архитектурных типов процессоров.

1. Простейшие процессы, имеют АЛУ, регистр, может иметь регистр специального назначения. В разных сериях процессора эта серия тоже различна. Применим для любых вычислений, не дает прироста производительности.

2. Блочный процессор, применим для решения задач, где операции чтения и записи занимают намного меньше времени чем вычисления.

 

 


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

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

 
 

 

 


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

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

 

 

 
 

 


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

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

Недостаток магистрального прецессора в том что при выполнении операции условного перехода его производительность падает до процессора базавой архитектуры. Для устранения эффекта в магистральный процессор ввели свойства называемые «спекулятивность».

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

Скалярныйе процессоры – это процессор пвключающий в себя 2 паралельных конвеера.

Супер скалярный процессор – это процессор содержащий в себе больше 2-х конвееров.

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

 
 

 


В общем случае команда машинного уровня должна состоять из следующих составляющих:

1. Код команды.

2. Тип адресации – определяется каким образом процессор должен обращаться к данным.

3. Первый операнд (определяет местоположение данных)

4. Второй операнд (определяет местоположение данных)

5. Место хранения результата.

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

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

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

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

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

Арифметический сдвиг вправо это эквивалент деления вправо, декремент – умножение. В случае переполнения, разряды, сдвинутые за пределы регистра, теряются, новые разряды - всегда 0.

Циклический сдвиг – это такой сдвиг, при котором разряды выходят за пределы регистра, дописываются.

Безадресные операции – это операции, для выполнения которых не требуется указание местоположения операндов. Как правило, это операции, работающие со стеком.

Стек – это область данных с односторонним доступом, с дисциплиной обслуживания Lifo – одностороннее обслуживание.

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

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

Операции ввода-вывода – особый вид операций связанные с перемещением данных и может быть как одно- так и двухместные. Безадресные операции можно считать операциями ввода-вывода, исключение это операции NoB.

Операция полного перехода.

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

Операции условного перехода могут быть:

1. По 0, либо результату последней операции, либо по не нулю.

2. По четности, нечетности.

3. По переполнению, не переполнению регистра в результате последней операции.

4. По положительному или отрицательному результату.

5. По равенству, неравенству.

6. По признакам <=, >=.

7. Безусловный переход.

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

 




Поделиться с друзьями:


Дата добавления: 2013-12-12; Просмотров: 572; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




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