Для студентов РТУ МИРЭА по предмету Организация ЭВМОрг ЭВМ учебное пособиеОрг ЭВМ учебное пособие 2018-01-12СтудИзба

Книга: Орг ЭВМ учебное пособие

Описание

Описание файла отсутствует

Характеристики книги

Учебное заведение
Семестр
Просмотров
146
Скачиваний
5
Размер
20,74 Mb

Список файлов

6semNID-Evm-Part1-02

Распознанный текст из изображения:

ЧАСТЬ1

УЧЕБНОЕ ПОСОБИ!'.

и

кб ГЯ У~) б,)

МО!'КВА 2006

КОНТРОЛЬНЫЙ Я~С~~~

' ЖОК1ШНЯЗВРАТА

КНИГА ДОЛЖНА БЫТЬ

ВОЗНРАШЕНА НЕЯОЗжБ

УКАЗАННОГО СРОКА

ФЕДЕРАЛЬНОЕ АГЕНТСТВО ПО ОБРАЗОВАНИК)

ГОСУДАРСТВЕННОЕ ОБРАЗОВАТЕЛЬНОЕ УЧРЕЖДЕНИЕ

ВЫСШЕГО ПРОФЕССИОНАЛЬНОГО ОБРАЗОВАНИЯ

"МОСКОВСКИЙ ГОСУДАРСТВЕННЫЙ ИНСТИТУТ

РАДИОТЕХНИКИ, ВЛЕКТРО!!ИКИ И АВТОМАТИКИ

(ТЕХ11ИЧЕСКИЙ УНИВЕРСИТГТП

Е.Л. ИВАНОВ Е.В ЬРАЖНИКОВА

ОРГАНИЗАЦИЯ ЭВМ И СИСТЕМ

Рекомендовано учебно-методическим объединением вузов но универсиз ез скому политехническому образованию в качес гве учебного пособии для сзудентоа, обучающихся но специальное ги 230101 «Вьюичлитсльныс ыашины. комгпсксы, системы и сепоз

6semNID-Evm-Part1-03

Распознанный текст из изображения:

Предисловие

ББК 32.973

О 64

УДК 004З

тД' '

м' '

!ИВ!4 5-7339-0546-8

Табл 3 Ил 60. Библиогрс 6 назв.

60 Е.Л. Иванов, Е В Бражникова 2006

Рецензенты: Т.И Лимонова, К.С. Хомяков

О 64 Иванов Е.Л., Браягникова Е.В. Организация ЭВМ'и систем, часзь 1: Учебное пособие 1 Государственное обрадовя5 зеяьное учреждение высшего профессионального образшщн1ш **Московский государственный институт радиотехники, злекйзгй ники и автоматики !технический университщ 1'* — М., 2006. - 72 е

В данном учебном пособии рассмотрены вопросы классификации ЭВМ н систем, представление процессора как композиции операционных и управляющего автоматов, структурный ба-: . зис для их построения, язык описание алгоритмов функцноиирсеания. Основная часть учебного пособия посвящена принци!им ..:. организации процессов, способам алрссации и алгоритмам выполнения основных групп команд процессоров С!БС и К1БС ар- Т ' хитектуры.

Печатается па решению редакционно-излатеяьского говею'

университета.

Данное учебное пособие предназначено для студентов, обучающихся по направлению «Информатика и вычислительная техника» по специальности «Электронные вычислительные мапгины, системы и сети». В разделе ! дана классификация ЭВМ и систем, рассмотрен маистрально-модульный способ организадии средств вычислительной техники. Изложен общий подход пониманию работы процессора на основе его представления как опсрапионного устройства, представляющего композицию операционного н управляющего автоматов, язык описание алгоритмов и структурный базис операционных устройств.

В разделе 2 изложены мшериалы па классификации процессов, по архитектуре команд и детально рассмотрены алгоритмы вьшошюния команд основных групп с различными способами адреСации. Для лучшего понимания все алгоритмы сопровождаются соответствующими струкгурными схемами и дна~Таммани.

Используя многолетний опыт преподавания таких дисциплин, как «Теория и проектирование ЭВМ», «Организация ЭВМ н систем», авторы постарались изложить материалы предельно кратко, сопровожпая каждый раздел соответствующим иллюстрированным материалом.

6semNID-Evm-Part1-04

Распознанный текст из изображения:

1. ЭВМ И СИСТЕМЫ; ОСНОВНЫЕ ПОНЯТИЯ И

ОПРЕДЕЛЕНИЯ

1.1. Классификация ЭВМ и сисз ем

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

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

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

Проблеьгно ориензированные ЭВМ занилгают промежугоч. нос место между универсальными и сггециализированными.

н,„„н„„р По архитектурной Г ';,~ * организации все

ЭВМ и системы "о"'оня

можно разделить на коман»

1 4 группы (класси-

|

фикацня по Флин-

ну). Эта классифилду канна определяет, в какой последовательности обрабатываются потоки Рис 1

команп н данных

а) ОКОД вЂ” одиночный поток команд, одиночный поток данных (рис. 1).

На рис. 1: УУ - устройство управления, АЛУ вЂ” арифметикологическое устройство, ОЗУ - оперативное запоминающее устройства.

Процессор представляет собой композицию АЛУ н УУ.

Процессор по каждой команде обрабатывает один или лва операнда. Команда читается из ОЗУ. По этой команде из ОЗУ в АЛУ считываются операнды и над ними производятся определенные действия.

б) ОКМД вЂ” одиночный поток команд множественный поток ланных (рнс.2).

Системы типа ОКМД позволяют по каждой команде обрабатывать данные из разных ис1очников. В системе под управлением одного УУ должно работать к~ного вычислителей:

=-' ч" р)

нонннл

Рис. 2

Эта многопроцессорная система (по числу вычислителей)

имеет единсгненное устройства управления. По каждой команде

обрабатываются разные пары данных. в) МКОД вЂ” множественный поток команд одиночный поток

данных (рис.З). Данная система предполагает обработку одвого массива

6semNID-Evm-Part1-05

Распознанный текст из изображения:

данных командами различных программ. Данная структура пока не реализована.

УУ

яаяаых

- мулынпрограммные,

- ЭВМ, работающие в режиме реального времени.

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

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

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

1бй Магистрально-модульный способ организавив ЭВМ

Рис. 3

г) МКМД вЂ” множественный поток «оманл, множественный поток данных 1рис 4).

-Чл

Рис. 4 Многопроцессорная система По режиму работы ЭВМ можно классифицировать как - однопрограммные,

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

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

Использование принципа модульности н магистральности позволшог существенно ускорить процесс разработки нового изделия.

1.3. Понятие быстродействия п

производительности ЭВМ и систем

Быстродействием называется количество операций иян команд, выполняемой ЭВМ за единицу времени.

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

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

МН.ОРБ - чиэшион операций в секунду при обработке чисел с плавающей точкой;

МОРБ -миллион операций а секунлу при обработке чисел с

6semNID-Evm-Part1-06

Распознанный текст из изображения:

фиксированной точкой;

М1Р8 †милли команд в секунду при обработке текстовой информации.

Для персональных ЭВМ быстродействие определяют по частоте генератора.

1.4. Декомпозиция процессора на

операционный и управляющий автоматы

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

(у), по которым выполняются со- Ь) 1*! ответетВующие микрооперации. и получает из ОА освеломигельные сигналы (х), используемые УА для вепшения в алгоритме управРис. 5 ленив.

Работа любого операциоано1 о ус~ройс~на, в зом числе и процессора може~ быть описана формально. как на маШинно-ориентированном языке, так и иа немашннно-ориентированном языке. Для уяснения работы достаточно воспользоваться языками функционального (Ф-язык) или сзруктурно-функционального (СФ-язык)мнкропрозраммироваиия.

1.4.1. Основные элементы СФ-языкв

1) Слово вводится своим идентификатором и указываются номера первого и последнего разрядоа. С (п): п2) — слово; п! — номер первого разряда, п2 — номер последнего разряла. Например„слово АПР- адрес: АПР(0 7).

Слово можно разбить на поля, если допустима работа с частяь~и слова самостоятельно. Например, слово КОМАНДА:

КОМАНДА (О: 15); КОП (О: 7).К! (8: 11).82(12: 15), гпе поп код операции отводится 8 разрядов, под адреса К1 и 82 по 4 разряда.

2) Описание массивов.

Массив также вводится своим идентификатором.

М(~п!; ш2) (п1: п2)!

зп! — номер первого элемента массива;

ш2 — номер последнего элемента массива;

п), п2 — соответственно номер первого и последнего разряда (слова).

Например, ОЗУ (О; 64 М] (О 31), где в квадратных скобках указывается емкость памяти, а в круглых- разрядность слои.

3) Знаки двоих аыт макроотраяий:

!

и

Л . ""'""""- """

4) Ябзкроормраяии. Вводятся оператором присваивания (:=)

Слову присваивается значение константы А (1: 4):=0000.

Если слово уже описано, т.е. известна сто разрядность, то

допустима упрощенная запись.

Пример:

А:ЧЮОО- слову А присвоить значение нулей во всех разрядах;

То~да в сокращенном виде эта запись будет выглядеть так-

А:-4).

6semNID-Evm-Part1-07

Распознанный текст из изображения:

10

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

разные значения, необходима полнаи запись - В (1:3)=101; ее

можно выполнить и в такой форме - СЧ (1: 4):=15 м

Слову присваивается его инверсное значение или инверсное

значение другого слова.

Например, А (1. п): — — 'А (1: п)

Если слово разбивается на поли, то можно инвертировать

часть поля.

Например, слово В имеет 1б разрядов, из которьш под знак

отводится 0-й разряд, а остальные под числовую часть. Тогда

имеем следующую запись:

В (О: 15):= - Зн В [0). Ч В(1: ! 5).

Используются для присваиванти одному слову значения

другого слова: А (1: и):=- В (1: п) - полная запись,

А:=-В - сокращенная запись.

Передачу можно совмещать с инверсией всего слава или его

части.

Микрооперации инкремента («1) или декрсмента (-1).

Например: СЧ (1: и):= СЧ (1: п) з: 1 или А:=-В«1.

Слову присваивается сумма (разность) двух других слов.

Слова должны иметь одинаковую разрядность. Например:

А (1: и):=В (1: п) Я С (1: п) или А (1: п):=А (1: п) - В (1: и)

А:=А«В - сокращенная запись.

Слова сдвигаются влево или вправо на заданное количество

разрядов.

С (1' п):=Ь)С.Π— сдвиг слова С влево на 1 разряд, с вводом

нулей справа.

С (1: и) г —.Ь4С.ОООО - сдвиг с юва С влсяо на 4разряла.

В (1: и): — О.К !  — сдвиг слова В вправо иа 1 один разряд с

вводом нулей.

А (1; и):=Ь)(А).А (1) циклический сдвиг влево па 1 разряд.

Ми ропе а ии ко и овация и еко и ования,

Осуществляются с помощью шифратора и дешифратора.

А =Соб В

В:=-Ресод А

Выполняются поразрядно над одноименными разрядами

слов Слова должны быть олинаковой разрядности.

Например: А (! п): — В (1: п) С (! и) логическое ИЛИ, А(1 и):=-А(1:и) В(1:и)- логическоеИ, С: — -А е В . поразрядное сложение.

5) Лежне««ие унио«ил.

Это булева функция Ч' =(0,1',, которая принимает значения «О» или «1», Вычисзщются логические условия па значению какого-либо разряда слова Например, при ЗнА(0)=1, Ч'=1, а при ЗнА(0)=0, Ч'--О;

Или логические усдавия вычисляются при анализе нескольких разрялов, например, СЧ (1.3)= ! 11, тогда Ч' —.1, иначе Ч' — О.

)!огически условия могут в«гни«пять«я по значению функции если Зн А ы Зн В = !, то Ч'=1, иначе Ч' †.0

1.4.2. Графическце зпементы СФ-языка

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

Вершина «начало» (рис.б) означает начало функциональной схемы алгоритма (ФСА), имеет только выход. Завершение ФС'Л обозначается вершиной «конец» (рис. 7), которая может иметь много входов, но не имеет выхода. Для обозначения микроопераций используются операторные верппщы, в которых записываются логически совместимые и одновременно выполняемые микрооперации. Эти вершины могут имегь много входов и только

один выход (рнс. 8).

6semNID-Evm-Part1-08

Распознанный текст из изображения:

12

!3

Рис. 7

Рис. 6

1

т

микроопсрацни

В(!)

А (!)

Рис. 8

Рис. 9

В (2)

А (2)

А(1:и) у В(1:п)

В (и)

А (и)

Рис. ! 3

Рис. !2

Рис .10

Рис. 11

Г:== 1

)(овец

Условная вершива (рис .9) предназначена для обозначения

ветвлений в алгоритмах и имею много входов и два выхода.

Ждущая вершина (рис. !О) может изображать известные

части микропрограмм ияи когда нег необходимости раскрывать

длительные процессы, например. обращение к ОЗУ.

Переключательная вершина (рис.11) предназначена для

ветвления алгоритма по многим направлениам.

1.5. Структурный базис операционяых устройств

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

1) Шин» используются для передачи информации.

Шины подразделяю вся на:

- неуправляемые

- управляемые

Если шина управляемая, то передача по ней производится по сигналу У (рис.!2).

Этому соответствует микрооперация у: В (1: и):=А (1: и).

Управляемая цзина представляет собой совокупность схем «И», каждая из которых обсвуживаст свой разрял (рис.13). Все схемы открываются по сигналу «У».

2) Решгтры служат для хранения и для преобразования слов.

Микрооперадня установки, выполняемая на регистре, показана на рис. 14.

6semNID-Evm-Part1-09

Распознанный текст из изображения:

15

!4

А(1: ь)

,7

~~1 1,:

В(! о)

г

4.....+- -1'

в1.о)

(1 в)

Рис.15

Рис. 14

Рис. 17

у1: В (1: п):=О,

обнуление регистра,

у2: В (1: и): — А (!.и),

передача.

'Ы~Д.

Передача счов в системе регистров

у1: Я (1: п):=А (1: и) прием слона иа регистр,

у2: В (1: п): — Я (1: п) выдача слова с регистра.

Микрооперация установки может выполняться с полями

слов (рис. 15 ). Прием полей на регистр:

у1: Я(1:й):=А(1!к) )уЗ: Я(8+1:п):=А((с 1:п).

Выдача полей с регистра'.

уЗ: В(1;ю):=Я(1:)с); у4: В(ю+1:и): — Я(1с 1:и).

Выдача полного слова с регистра:

у5: В(1:п):=Я(!!')с) Я()сь1:и).

Микрооперация передачи выполняют функцию передачи

слова с одного регистра на другой (рис.16).

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

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

Способ индивидуальных связей (рис.17).

уд й„, (1: п):=К, (1: л)

ур Р.,(1: ):=В.(1: ),

сде п — разрядносп, с.юв на регищрах

Передача слова с регистра на регис~р осуществляется за 2 такта. Магистральный спсюоб (рис.! 8).

Рис.18

$

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

6semNID-Evm-Part1-10

Распознанный текст из изображения:

!6

17

Ъ, Рис 22

Е

я

Рис.20

Рис.! 9

тп

Рис.21

С (1; п):=А (1: п) ь В (1: и)

тшгг (Кз (1: и):=К1 (1; п)).

При этом подается два управляющих сигнала одновременнш уп М:=К, (1: и), уз . К2 (1: п):=М.

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

ур А (1: и):=О.К! А

Уз. А (1: и) =.1.1А.О

ух. 'А (1: и):=1.1А.А(1)

3) Счетчики

Выполняют функции инкремеата (СЧ:= СЧ+1) и декремента (СЧ: —. СЧ-1) (рис.21).

4) Суииаторы служат для выполнения микрооперации сложения (рис.22);

Любой алгоритм вводится описанием входных, внутренник

и выхолных двоичных переменных.

Рассмотрим пример построения функциональной схемы алгоритма (ФСА) с использованием элементов Ф-языка в графиче-

ском изображении для

1Г 1~ А ~ ! В ~ перемножения лвух 32- ) разрядных двоичных чисел с фиксированной точкой (рис. 23).

Зададимся правилом умножения: умножение с анализом младших разрядов С множителя со сдвиг ом полученной суммы частичных произведений вправо, с округлением и получением 32- разрядного произведснпя.

Входнью

МНМ (1 32)1 ЗнМНМ (1).ЧМНМ (2. 32)

МНТ (1: 32),' ЗнМНТ (1).ЧМНТ (2: 32),

гле МНМ - ьшожимое, ЗиМНМ - знак мнажимого, ЧМНМ чис-

ло множимого, МНТ - множите.гь, ЗнМНТ вЂ” знак множителя.

ЧМНТ - число множителя.

Внутренние;

МНМ; МНТ; СЧТ (1: 5)

СЧП (1: 33); ЗпСЧП (1).ЧСЧП (2: 32).др (33),

тле СЧП . сумма частичных произведений, ЗнСЧП - знак суммы

частичных произведений, ЧСЧП вЂ” число суммы часгичиык про-

изведений, др — дополнительный разряд, СЧТ - счетчик тактов

умножения.

Выходные: СЧП (1: 32).

Исходными данными для описания ОА явзшегся микропрограмма и таблицы микрооперапий и ло~ ических условий. В таблицу микроопераций необходимо выписать все микрокоманды, а в таблицу логических условий — осведомительные сигнгшы из соответствующей микропрограммы.

6semNID-Evm-Part1-11

Распознанный текст из изображения:

19

Табгсица микпоопераций. Микрооперации

Начыю

1

Управляюсцие сигналы

начальные

усшноакн

анализ значсвия ачс

СЧП:=О СЧТ'=3

рспного млалшего разряяа множтсшля

формирование суммы частичных вронзвеясПч ЧМНП ннй

Таблица логических условий

Логическое условие

ЧМНТ (31)

СЧТ вЂ”.О

Освеломитсльныо сигналы

х,

л. р.

ЗнМНМ:=ЗнМНТ

1(ля описания работы УА блока управления в качество исходных явяяются так же лвс вышсприиеленные таблицы (их правые столбцы) и граф-схема алгоритма Граф-схема алгоритма (ГСА) строится на базе ФСА: микрооперации заменяются управляющими сигналами «у», а логические условия - осведомительными сигналами ах». В результате получаем ГСА слслуюшсго вида (рис.24).

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

формнроынне знака резувь- гаса

ГНСЧН"-1

ЗнСЧП О

Рис. 23

сдвиги миожнтелян КЦЧСЧГО суммы частичных про- КЦЧМНТ) изволений '1-1

учет колнчесгва

тактов умножения Т' " анализ СЧТ на заверслеиие

) умвожения

1

СЧП:=.О

СЧТ:=ЗЛО

ЧСЧП:=ЧСЧП+ЧМНМ

ЧСЧП:=О.КЦЧСЧП)

ЧМНТ вЂ” -О. К((ЧМНТ)

СЧТ;-СЧТ-1

ЧСЧП:=ЧСЧП+1

ЗнСЧПшо

ЗнСЧП:=-1

Ус Ус Уз Ус Ус Уь Ут Уз У'с

6semNID-Evm-Part1-12

Распознанный текст из изображения:

20

2. ПРОЦВССОРЫ; ПРИНЦИПЫ ОРГАНИЗАЦИИ И ФУНКЦИОНИРОВАНИЯ

2Н. Обобгненнан структурнан схема центральной части ЭВМ

Начало

В состав центральной части ЭВМ (ядра ЭВМ) входят следующие устройства (рис.25);

Рис.25

Конец

Рнс. 24

1. Центральный процессор, включаюцзий арифметнко-логическое устронсгао (АЛУ), внутреннюю намять процессора, в ка.фц) чсстве которой чмцс всего используется регистровая память (или

РОН б )

6semNID-Evm-Part1-13

Распознанный текст из изображения:

(УУ);

2. Оперативное запоминающее устройство (ОЗУ).

Для простоты понимания работы ядра ЭВМ будем полагать, что в блоке УУ сосредоточены все функции по формированию сигншюв управления (у), а основныс управляющие регистры, такие как регистр команд (РК) и программный счетчик (будем его именовать счетчиком адреса команды — СЧАК), вынесены на схеме как самоса ох ге~юные структурные элементы.

АДУ является основныл~ вычислителем, обеспечивающим выполнение арифметических и логических опораций. Вне зависимости оз того, с какими форматами данных работает АДУ, в его состав всегда входят входные (Р1алу, Р2алу) ре~ истры и выходной регистр резулыатов (Рралу), через которые ЛЛУ осуществляет обмен информацией но шине данных (ШД) с ОЗУ, РОН и с другими элементами ядра ЭВМ При выполнении арифметических и логических аперадий н регистре РРачу записывается результат операции, а па регистре флагов (РФ) фиксируготся результат анализа числа на РРалу (положигеяьный, отрицательный, с переполнением и тд.). При выполнении программы значения григгсров РФ могут анализироваться командами управления шгя организации переходов в !гро~раьгме. В различных процессорах количество триперов в РФ может быль разным и зависит от с груктуры самого процессора.

ОЗУ (или оперативная память) предназначено для хранения программ пользовашлей и данных, служебных преп рамм. В сгруктурном отношении ОЗУ можно представить, как совокупность накопительного блока с обрамляющей электроникой и двух буферных регистров: регистра адреса (РАозу) и регистра слова (РСозу). Для РОН так же булем полагать наличие буферных регистров РАрон и РСрон.

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

Все устройства связаны тремя типами шин: П!А — н~ина адреса; )ПД вЂ” шина данных; ШУ шина унравяения По шинам ад-

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

Счетчик адреса команды указывает алрес исполняемой команды программы. В технической литературе можно встретить и другие наименования этого структурного элемента: счетчик команл (СК) или ггро~раммный счетчик (ПС).

Регистр команд фиксирует команду на период ое исполнения.

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

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

Дркляии шаинолейг*тяия гстдойстя ядра ЭВИ

ло Чикяс ксиолнснкя шгжанды.

На СЧЛК сформирован в предыдущем цикле адрес следующей команды. В начале следующего никла этот адрес по ША псредаезся на буферный регистр РАозу. После этого УУ вырабатывает сигнал обращения к ОЗУ - Ч)'озу, производится обращение к памяти по адресу, который был передан с программного счетчика, читается команла и по 1ВД передается на РК КОП принягой команды расшифровывается лсшифратором кола операций (ДС КОП), который извещает УУ о том, какая команды должна быль вьшолнена процессором Чтобы понять сам принцип, достая очно рассмотреть выполнение какой-либо команды арифметической операции, допустим. Умножения, для трехадресного формата команды, как наиболее понятного. В этом формате первый (Л1) н второй (Л2) адреса указывают ячейки памяти, из которых необ-

6semNID-Evm-Part1-14

Распознанный текст из изображения:

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

Адрес А1 по ША передастся на РАозу. После обращения к памяти на РСозу будет зафиксирован первый операнд. Далее УУ должно обеспечить передачу этого слова по П!Д на входной регистр АЛУ - Р1алу. Аналогичным образом выполняется выборка и передача второго операнда. После загрузки операндов в АЛУ УУ формирует весь набор управляющих сигналов для реализадии микропрограммы умножения. Результат операции записывается на выходном регистре Ррату, и по полученному значению результата взводятся в единицу соответствующие триггеры флагов. Для размел!ения результата в ОЗУ процессор выставляет АЗ на адресном входе памяти, а слово с РРалу по ЩД передает на РСозу. Формируется режимный сигнал ЗАПозу. по которому результат умножения записывается в ОЗУ. Цикл исполнения команды завершается инкрементом ОЧАК для вычисления адреса слепуюпзей команды (продвинутого адреса).

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

!

чения, и им свойсгвенно следующее

- болыпинство команд имеют

- длительность ззию~а исполне

2.2.1. Уровни управления процессором

обращение к ОЗУ,

ния каждой команды индивидуальна,

- имеет места ограниченный объем регистровой памяти.

К1ЯС - процессоры (Кеснссб !пыгосбоп йег Сошршег) характеризуются не только ограничением кояичества команд, но и использованием самых простых способов адресации. Все команды разделены на две группы. к первой группе ознссены команды обработки данных, гщичсм их состав таков. что все они короткие. Ка второй группе относятся все остальные команды, в том числе, команды обращения к памяти. Команды первой группы работают только с регистровой памятью, просты по своим функциям и имеют одинаконую длительность цнююв. Выполнение длинных операций вынесено на программвый уровень.

Кроме тога, регистровая памить в ИЯС - процессорах имеет существенно болыпую емкость. Последнее необходимо для уменьшения в теле программы количества команд обмена с целью экономии процессорного вреьюни на обмен межлу ОЗУ и РОН

программы

' чу

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

По архитектуре команд процессоры можно подразделить на

процессоры с расширенной системой команд (С)ЯС- процессоры),

процессоры с ограниченной системой команд (й!БС- цроцессоры)

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

Вылеляются три следующих уровня:

- программный,

- командный,

— микрокоманэгный.

На программном уровне процессор реализусг

пользователя, как последовательность команд процессора

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

Микрокомацлныи уровень уровень управления процессором, на котором в каждом такте процессорного времени формируются те или иные сигналы управления Каждый сигнал управления инициирует определегшую процедуру (микрокомаяду) ца цикле выполнения команды.

6semNID-Evm-Part1-15

Распознанный текст из изображения:

27

!Тают ислолисиих команд — зто интервал времени, начиная с выборки команль! из памяти, до ее завершения. Этот цикл можно представить в ниде следующей дишраммы (рис 26): г

тп

Рис.26 Так — время выборки команды и дешифрации кода операции т'Тл, — суммарное время выборки операндов, Топ- время выполнения операции, Тгю — время размещения результата, Т,гк — время вычисления адреса следующей команды, Тц- время цикла исполнения команды.

2сй Классификации команд процессора

Команды процессора можно классифицировать по ряду признаков (см. табл на стр.28). Рассмотрим крап!о команды по порядку классификационных признаков, 7!о г((гттюгтготтгг:тенг!му назло !еиию Команды, по которым осущесгштясгся выполнение арифметических операций (сложение, вычитание, умножение, делание), объединяются в две группы; первая труппа обрабатывает числа с фиксированной точкой, вторая — числа с гшавающей точкой. Н зависимости от назначения процессора в состав его системы команд могут входить либо обе группы. либо только первая нлн вторая. Кроме тото, ряд процессоров имеют в списке команд команды десятичной арифметики.

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

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

между оперативной памятью н внутренней быстрой памятью продессора, чаще всего РОН.

Команды управления выполняют функции изменения порядка выполнения команд программы.

Класснфгткагтионнал глаблииа команд

1

да олсраиия

ОП «др Чав

1

Пс длине ьи

мамд ирсисс

сора

С постоянной

!линой

С нотлсянвой ,ь!нлаг! КОП

Прямой

Оаво-

слрссныс

ских опсрааий с числа

мн плавающей точкой Команды дс- ~

!"

Укорочганмн Огноснтсль.

! иый нза адресация со смсшснаси

Нсясамй

Сгсковый

С!Рсннчный ~

ровааныс ко маням про-

нсссора

Пс фуикиио- Лс идрссисиатьному иа- сти «смаитиачеиим ~ дм.

Ко малы

арифметических авера- Нуль адресцчй с числа- ныс (бсмпмн фнкснро-: рссаыс) ванной ючкой

Комаалы

арнфмсгнчс-

Двухгятнчао !

адресные

«рнфмстнкн

Коианлы ло

трстггт тсских снсадрсскыс

радий

Комыщы обмова али лс- ~

посылок

Команды Многсаарес(,

Р Ращения ~ ныс кочанд , Команды аволатвывола

Прнвнлсгн-

С переменной С лсрсмсииой

Рсгастровый

ллниой данной КОП

6semNID-Evm-Part1-16

Распознанный текст из изображения:

елст

нй

икре-

й,ая

нею

Команды ввода/вываля предназначены для обращения к периферийным устройствам.

Привилегированные команды процессора связаны с рабаюй ОС По адресности колгаиды

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

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

В олноадресных указывается адрес только одного операнда, адрес второго операнда задаегсн неявно.

Двухадресные комаапы интерпретируются двояко;

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

- первый и второй апреса — адреса операндов, а для записи результата используется один из адресов.

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

(7а длине команды

В процессорах с постоянной ллиной команд вес команды имеют одинаковую разрядность. Э|о харакгерно для ЭВМ, обрабатывающих данные с фиксироиаинои ючкой, и для ЭВМ с В)ЯС процессорами. В мощных системах, в которых ведется обработка данных переменной длины и различной символьной информации, команды могут иметь различную разрядность в зависимости от назначения

29

По длине поля кода операапд (КОП)

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

По спогобаи адрегаиин

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

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

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

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

Огносительныс способы адресации или адресация со смеШением.

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

При неянной адресапии в пале команды отсутствует адрес, указывающий месгополалевие операнда. Он задасгся самим кш горитмам выполнения команды.

Сгековый отнгюится к безадресным и связан с механизмом ПРО (1.азз 1прпз Г(гзз Огпрпз-"Последний вопзел первый вышел" )

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

6semNID-Evm-Part1-17

Распознанный текст из изображения:

ЗО

уменьшить разрядность адресных полей команды.

Непосредственнвл адресация — когда в адресном поле команды записан сам операнд В этом случае он может быть передав в регистр-приемник процессора непосредственно иэ регистра команд; экономится время, затрачинаемое процессором на обращение за операндом в ОЗУ.

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

2.4. Команлы и функциональные схемы

алгоритмов вх выполнеивн

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

2.4.1. Комвнлы арифметических операций

При записи функциональных схем алгоритмов по умолчанию будем считать, что ЭВМ имеет шинную организацию (рис.25).

Одноидреснме команды имеют слслующий формат.

КОП ~ А1

где А( - адрес первого операнда, второй операнд находится в регистре процессора, нюываемом аккумулятором - АК.

Правила вьпюлнения команд арифметических операций можно сформулировать следующим образом: обратиться к ОЗУ цо адресу, записанному на СЧАК, считать команду и переслать ес на рш истр команд; рас~нифровать код операции; выбрать из ОЗУ операнд по адресу А! и передать его по шинам данных (ШД) на

буферный регистр АЛУ - Р(аву, выполнить арифметическую операцию (допустим - умножение) и разместить результат на АК. В дальнейшем будем пользоваться сокращенной записью в следующей форме: АК .= АК'ОЗУ[А!)

Функциональная схема алгоритма прелставлена на рис.27.

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

Далее приведена вся последовательность микроопораций цо выборке и выполнению команды. Процедуры, выполняемые в АЛУ, в алгоритме заменены ждущей вершиной. Процедура передачи слава через шину записывается как две опноиременно выполняемые микроолерации, например,ШД:--РС и 1'К:=ШД.

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

Первый операнд принимается иэ ОЗУ. Второй — из регистра АК, куда он передается, как результат нрелыдущей операции, или засылается по команде обмена. Резулыат фиксируется на выходноьг регистре АЛУ вЂ” Рршту, а затем псресыдаотсл на АК. Цию~ команды завершается формированием на программном счетчике адреса следующей команды программы Как правило, нл процедура вылолняшсл в середине цикла и совмещается с лрисмом команды на РК В,!шгннейшем при написании функпиональных схем алгоритмов булем иметь это в виду.

Функциональная схема алгоритма позволяет построшь структурную электрическую схелгу центральной части ЭВМ для реализации данной команды (рнс 28)

В дальнейшем с целью сокрашения записи алгоритмов процслуры передачи слова чсрсэ шлну будем записывать как один оператор (!'Аозу"-СЧАК) вместо двух операторов (ША: -СЧАК н Рдозу:=-ША). Аналогичные правила будем распрос~ранять и на передачи через шину данных.

Днутидреслые команды имеют следующий формат:

КОП [ А( А2

6semNID-Evm-Part1-18

Распознанный текст из изображения:

32

33

ОЗУ

[ч с онй

ША

СИАК 1 ез

!У1

Л1

передача коменпы на регистр «оменвы !РК!

.=з с

Вкм

дешифрапвя кода опсркпин нзмсиды

выбор первого

операнда

Рис.28

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

Ниже привелеиа [рис.30) структурная схема ядра ЭВМ, построенная по ФСА цикла исполнения 2-х адресной команды.

ТрекагЗресныг команды имеют следугощий формат:

ПЗД ывосг

Рт,.„мШД

) формвгюванве пьюдвинугого ащмс*

Рис. 27

где КОП вЂ” код операции, А1 - адрес первого операнда и адрес результата, А2 — адрес второго операнда. Правило выполнения команды можно записать:

ОЗУ[А1]:=ОЗУ[А1[*ОЗУ[А2[

передача ив вкод Озу

>

«врссс команд

обращение к ОЗУ

прием первого операнда

>

выпоснеи е

оперышл в АЛУ фвьседия результата нв регистре еккумувягоре

КОП ~ А! > А2, АЗ

где А!- адрес первого операнда, А2- адрес иторого

алрос результата.

1

операнда, АЗ-

6semNID-Evm-Part1-19

Распознанный текст из изображения:

35

34

шд

,.-Т~::

РАазу

Г Р в юОЗЗ'

у фврнпрвввпнв првявнпу

ША

> хаю «арсен

яеюнфрвп в када раппе хвьюп;зы

СНАК

ЗУЗ

УУ Зцу

выапр в рв юп р А Р ЕЗ АЛУ

2

Рнс. 30

Фугзхззпоню~ьззах схема юпарнзыа зрехвлрсснап комвнпы агяпчваю» аг фуакапаяыьной схемы ввгарпзыв Авуххдреааай панько соааржвннеы першины, в которой прансяуры разнеженна рсзулыазв заонсываюзсп спвлуюзппм образом Рбазуюрр; РАазужАЗ; ЗАИазу Цп рнс ЗО пуакгпраы укампы напавнпзеньные элементы и связи, соотвнгсзвуюцЗне алгоритму выполнения 3-х адресной команды.

Ав п пеппе»в Ы АЛУ

вынвзпвпвс впврв

пнп в АЛУ

2.4.2.Команды логических операний

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

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

ОЗУ

ОЗУ

1

Канон

Рнс 29

6semNID-Evm-Part1-20

Распознанный текст из изображения:

Зб

37

операции осуществлясзся только установка флагов в АЛУ.

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

2.4нй Козчандьз сдвига

> лешнфрвпн»

КОЦ

нвчзльнвв установив

счегзюа сленге

ШД

Д~

Р!

озз

ОЗУ

резмещенне резуль

гвгз в ОЗУ

1'ис 32

Рис 31

Нвчвно

Оскол с

ОЗУ ~' 1

1

РСоп: — — Рз

Рлоз =А1

Звпозз

ОЗУ

Конел

ПРИЕМ ОПЕРЕизм сдвиг операнде в

рег Р!

!

щюверкз нв окончание сленге

Цель команды осуществить сдвиг слова вправо или влево на заланное количество разрядов. Как правило, направление сдвига указывается в коде операции команды, а для указания количества разрядов, на которое происходит сдвиг, и слов, которое должно сдвигаться, выделяиугся 2 адресных кода. Формат команды сдвига можно представить:

КОП ~ А1 п

где А1- адрес сдвигаемого операнда;

л - количество разрядов, на которое должно быть сдвинуто

слово

Функциональная схема алгоритма команды сдвига вправо иа

и разрялов представлена на рис.31 !процедуры выборки команд

здесь и далее опускаются).

АЛУ - Е.

л Д)т-,:Е-. " Ь Е~ ЛТ~ ~1'и*" ~ — Г"

)у) """ БП БП ШУ

)х)

6semNID-Evm-Part1-21

Распознанный текст из изображения:

38

39

Операнд засылается на Р) арифметика-логнческого устройства, где производится сдпиг. Количество тактов сдвига фиксируется на СЧслв. При квждпм сленге комбинационная схема КС (рис.32) анализирует сто значение на равенство нулю. При СЧсдв--0 сдвиг слова на Р! завершается и полученный результат записывается в ОЗУ по адресу Л1.

выборка опсранзза пз ОЗУ

2.4.4. Команды обмена нли пересылок

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

за~гузка

операнда в

рсгастр АК

лк. Рс„,„[ )

Канек

Рассмотрим список основных типов команд.

Рис. 33

КОП ' А! [ Р.2 ~ КЗ! :Применение

!

Зюр! ) Л)

Зап! ~ А!

Загр2 А!

К2

ОЗУ[А1):=РОН[К2)

Зап2 ! Л1 ~ К2 Заг3 Т А1 К2

Загр. массива из

ОЗУв РОН

Запись массива из

РОН в ОЗУ

р ) КЗ

ОЗУ

РОН

адРеса

от! пт2 е'3

к

кг!

аз 2

к 3

Направление передачи слов условно обозначим следующим образом: код операции Загр. означае~ передачу слова из ОЗУ в РОН или в выделенный регистр процессора; а кад операции Зап.- обратную передачу в ОЗУ из РОН или вылеленного регистра процессора.

Индексами 1, 2 и 3 обозначим типы команд индекс 1 соозве!ствуег командам обмена с выделенными регис!рами процессора: индекс 2 - командам обмена между ОЗУ и РОН цо алному

Рис. 34

ЗапЗ ~ А! ~ К2 КЗ

ЛК:=ОЗУ[Л1)

1

ОЗУ[А1) =.АК

, РОН[К2]:=ОЗУ[Л1)

слову; а индекс 3 — обмену массивами данных

Нв рис.33 даны ФСА команд Загр.! и Зап.). В качестве выделенного регистра используется регистр аккумулятор ЛК. В системе команл процессора может быль несколько полобнь!х команд па количеству выделенных неааресуемых регистров процессора.

При рассмо!ренин работы команд Загр.2 и Зап.2 будем также пола! ать, что форматы ячеек ОЗУ и РОН одинаковые (рис.34); их разрядность равна разрядности шины данных.

6semNID-Evm-Part1-22

Распознанный текст из изображения:

40

[ АК~

Рс „

— — — ЧТсо

ОЗУ

Запои

РА '*

Запзси

ЧТгси

Зап2

Загр2

РК

— — — — — з1 чзсиис

РОН

'1"зси епсраиаа

Начале

Рис. 37

выбор

сисраизза

из ОЗУ

запись

спераида

в ОЗУ

запись спс-

раида в

1'ОН [К23

Ксисц

Ксисп

Рис. 35

Рис. 36

При этих условиях цо команде Затр.2 слово из ОЗУ1и! будет зазружеяо в РОН1Ц. Соответственно при выполнении команды Зал.2 процессор осуществит обратную передачу из РОН в ОЗУ в соответствии с томи адресами, которьк указаны в команде. Для этих команд обмена иа рис35, 36 даны йзСА их выполнения. По команде Загр.2 сначала процессор обращается в ОЗУ и выбирает из него сзюво. Затем нерелает его ио П1Д на буферный регистр РОН и записывает по соответствующему адресу По команде Заи.2 процедуры передачи осуществляются в обратном порядке, а именно, процессор выставляет адрес на входе РОН, читает слово, передаст сто но ШД на вход ОЗУ, нсредаег ио ША адрес на РАозу и записывает слово в ОЗУ.

Схема центральной части, соответствующая командам

Зап 1. Загр.1, Зап.2, Загр.2 црсдставясиа иа рис. 37.

Ка.иаззды Заср 3 и эап.3

Эти команлы предназначены двя пересылок между ОЗУ и РОН массивов данных.

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

а3 Загр3: Л1 К2, АЗ

Загрз ' А1 К2 КЗ в3 1 'Загрз Л1 Р2

и гле Л1- адрес перва!о элемента массива в ОЗУ; К2 — щзрес

первого элсмезца массива в РОН; АЗ адрес последнего элемен та массива в ОЗУ; КЗ- влрес иослслнего элемента массива в РОН и зщина массива

6semNID-Evm-Part1-24

Распознанный текст из изображения:

45

44

2.4.5. Команды уараагенил

я

Начало

занесение адреса

)

переходе на

счлк

Конел

счлк =л~; счлк -счлкгк

1

( конец

Рис. 41

Рис. 42

Рис 40

Команды управления предназначены для организапни ветвления в программах. Можно вьщслить 3 типа команд. безусловного перехода (БП), условного перехода (УП) и команды обращения к подпрограммам (БПВ).

Команды безусловного перехода

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

Форма~ команды имеет следующий вид:

:"".1: .- 1

где А) — адрес перехода к следующей команле программах Правило выполнения: после выборки команды и дешифрации кода операции на программный счетчик заносится адрес перехода А1; на этом цикл выпслнення команды заканчнваеюя.

Функциональная схема алгоритма реализации безусловного перехода представлена на рис 41.

6semNID-Evm-Part1-25

Распознанный текст из изображения:

47

Команды ушоеного перехода имеют такой же формат как и команды БП, но выполняются в зависимости от условий, вырабатываемых в процессоре, т.е. значений флагов. Например, результат операции, полученный в АЛУ по предыдущей команде ранен нулю (нли больше нуля и т.д.) Вне зависимости от тога, какой флаг обрабатывасшя, команды данного типа выполняются по следующему правилу: если значение флага Ф=1, то переход осуществляется по адресу А1; в противном случае — по продвинутому адресу (рис 42).

Ко ванды обращения я лодпрогрпнман

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

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

Адрес возврата может запоминаться в РОН или в СТЕКс. Поскольку РОН представляет собой алрссусмую память, а СТЕК является безадресным запоминающим устройством. формат команды БПВ будет опрелеляться типом памяти для сохранения адреса возврата.

Таким образом, имеем два формата команд БПВ;

т)

глс й ! - адрес ячейки РОН лля сохранения адреса возярата, А2- адрес перехода к подпрограмлге.

БПВ2 А!

гле А1- адрес перехода к подпрограмме.

Адрес возврата запоминается в стеке. Поскольку стек является безалресной памя вью, он адресуется неявно, и в команде БПВ2 указан толыго один адрес перехода. Рассмотрим по порядку работу этих команд. Кон андп БПБ! . Прежде, чем переходить к функциональной схеме аягорнтма, рассмотрим процедуры перехода к подпрограмме (илн вложенной ггро~ралгме). В реш|ьных программах может иметь место не одно вложение, а несколько, т.е. цепочка жзожений. Схема перехода к вложенным программам. персхал к

1иа ! Основная

прошамма ~ Подпрограмма 1 Подпрограмма 2 о (й"

Рис. 43

Пусть процессор обрабатывает основную программу и гри вложенные по следующей схеме (рис.43). Адреса начала разме-

6semNID-Evm-Part1-26

Распознанный текст из изображения:

48

Осасаяаа

Подпрограмма ! Подпрограмма 2

программа

Г

РОю» =ОЧАК

Завам

Г ""'" )

запись в РОН

адреса возврата

пересылка на СЧАК адреса перехода к п 'и

Конец

Рис. 45

Рнс. 44

щения подпрограмм !п1п) указаны в адресном поле А2 каждой команды БПВ1. Основная программа, п1п 1 н и/и 2 имеюг вложения, а п1гг 3 вложений не имеет. Алреса возврата основной программы и п/и 1, и п!п 2 запоминаются в регистрах РОН по адресам 1; 4; и 2 соответственно. Цифры в кружочках означают номер процедуры при выполнении переходов. На рис.43 показано содержание РОН посяе перехода к последней вложенной программе.

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

Команда возврата БП1.

Формат команды возврата:

По своей сути эта команда выполняет безусловный переход, т.к. всегда заносит на СЧЛК адрес перехода. Поэтому будем обозначать ее как БП1.

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

На рис. 45 н 46 показаны функциональные схелгы алгоритмов выполнения команд БПВ! и БП! соответственно.

Г"-- 1

!""::: '"!а

апреса возврата

6semNID-Evm-Part1-27

Распознанный текст из изображения:

50

чтение из РОН адреса возврата залиа варева возаоата а СЧАК [ Конел

Рис. 46 Команда БПВ2. Прежде, чем перейти к рассмотрению работы комагщы БПВ2, необходимо уяснить механизм работы стена.

ПЕРБВБРНУТЫЙ СТГК ПРЯМОЙ СТБК

шина

51

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

Различают два вида стека:

- прямой стек,

— перевернутый стек.

В прямом стеке вершина стека соответствует младшим адресам, а дно стека — старшим адресам. В перевернутом сшке вершина и дно стека менякнся местами. Чаще всего в ЭВМ применяется перевернутый стек, который размещается в области старших адресов адресного пространства ОЗУ. Вершина и дно стека определяют границы памяти.

Алгоритмы работы СТНКА (для прямого стека) в режилгах

записи и чтения представлены иа рис.49 и 50 соответственно.

УС

дио сгека

ина

с гека Рис. 47

Рис. 48

Стек - такой вид памяти, который работает в соответствии с шггоритмом 1.1РΠ— Еазг 1прш Рпи Оцфцг (последний вошел, первый вышел). Стек может быть реализован, как область ОЗУ или построен на регистровых струю урах. Для указания адреса ячейки попользуется счетчик, называемый указателем сгска (УС). Если

Начало

сз ск»

Начщо

Г.".,-,Л

СТ

о

'( УС=УС 1

Конец

запись

слова О

в стек

внкремеит

указателя

стека

Конец

Рис. 50

Рис. 49

При записи слово П принимается на вхолной буферный регистр СТЕКА (РСст), адрес для записи слова уже сформирован на УС После записи слова адрес на УС увеличивается на 1.

6semNID-Evm-Part1-28

Распознанный текст из изображения:

53

При чтении информации выполняется процедура: УС:=УС-

1, при этом производится алресация последней занятой ячейки

Затем щмдуег обращение к СТЕКУ.

Для перевернутого СТЕКА алгоритмы режимов записи и

чтения представлены соответственно на рис.51 и 52.

Начм о

Начщо Е ..... ннкремевт Конец

запись

слова О

в стек

декремеяг

указателя

сз яка

Конец ]

Рнс. 51

Рис. 52

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

Предположим, что для прямого стека адрес вершины стека— и, адрес дна стека — В.

Режим записи невозможен, сели указатель стека равен б— сток полон,

Режим чтения невозможен, если указатель стека больше а стек нусг.

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

Команды БПВ2 и БП2.

Формагы команд БПВ2 и Б!!2

БПВ2 ) А)~

БП 2

Основная

неаеход к

Подорограчма 1

1

программа

2

~1

О

Рис. 53

После перехода ко 2-й подпрограмме УС стека будег указывать на последнюю незаюпую ячейку. В посяелней занятой ячейке стека записан адрес возврата пгп 1 у+1, в следующей - адрес возврата основной программы аэ1. Г опроса этих ячеек стека (рис. 54) команда БП2 будет производить возврат к прелыдугпей программе.

В команде БПВ2 только один адрес А!, который определяет переход к п)п. Адрес возврата записывается в сщк по адресу УС.

Команда возврата имеет аббревиатуру БП, как и в предыдущем случае Причем эта команла безшгресная, т.к в ее функции входит чтение слова из стека.

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

6semNID-Evm-Part1-29

Распознанный текст из изображения:

Основная пеопзамма

Па

амма 1

Подпрограмма 2

ат 2

а а-'

иикремеит

указателя

стека

стек

переяернузми

восо.гановяеиие

программного

счетчика

Конец

Рис.54

Рис. 5б

2.5. Способы адресации

Рис. 55

Г::"." Л !СЧАКшСь!ЛКт! , ') формирование адреса

возврата РС,г.-СЧЛК ~

запись алрсса возврата 5. декремеит указапмя стека

!- перелача на СЧЛК адреса Г::::Л

перехода к подпрограмме

Конец

В ланном примере адреса возврата заносятся в перевернутый

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

БПВ2 и БП2 показаны на рис.55 и рис.56.

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

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

6semNID-Evm-Part1-30

Распознанный текст из изображения:

56

в

. Ж1::З

Дяя примой адресация

КОП 1 К!

Дгя косвенной адресации

Двухадресная команда:

КО)!

К! КЗ

Рис. 57

Трехадресная команда.

и вр

° ! Ря

тб

м2

Ри

Р и

ядт

аозт

озу

УО)З~ ПД 1 А!К 1

Рис 58

даже без КОП, общая длина комавды будет 84 разряла. Эта повлечет увеяич ение разрядное ги шин адреса, а так же разряднОсти шии лаиных (или увеличения количества обращений за командой, сели ШД имеет ширину меньшую, чем разриднасть команды).

Регистровая адресация зак же относится к прямому способу адресации.

Форматы команд:

Олноадресная команда:

КОП , 'К! ~ Кг ! КЗ

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

Косвенные способы идресицил

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

Формат команлы:

зя

коп пя я

~1

6semNID-Evm-Part1-32

Распознанный текст из изображения:

61

60

Аи, д.=РОВ!Х] з. РОВ[В) ' А.

ь =в

хя:=гон!в

В+в

Ь =Ь Рон!

аярееуеллав

ячеака Ч

Ь =вл РОН1

г

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

Относительлгьле силле облы ид)тесании (адрегиция се смещением) Относлггельные способы адресации исполиуются„с одном' стороны, для организации размещения программ пользователя в любом месте щгресного пространства ОЗУ, с другой стороньг, шлв орл анизации работы с массивами данных При этом в общем случае адрес обрапления к ОЗУ )Аисп.) вычисляется путем сложения прямого адреса А с модификаторами, которые выбираются из РОН по адресам, записанным в полях К! и К2 адресного поня команды

КОП ', К! ( К2 А

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

КОП ~ Х ) В ) Л 1

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

,'"-Л.."1~ .~.ме,ценно ~ ~"=-~" 4

~висл 1

Рис. 61

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

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

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

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

Рис. 62

1!рямой адрес «А» булет указывать ячейку ОЗУ относительно базоного жзреса, задаваемол о консгалцой Ьс, ~ е будет смеп1е-

6semNID-Evm-Part1-33

Распознанный текст из изображения:

62

схеме(рис. 64).

КОИ О

-т-

базовый

регистр

передача , Авгп пв

вход ОЗУ

Аисп.

вычисление впрвсв Авсп ') псрелвчв Авсс

ав вход ОЗУ

Рис. 63

исп

Рис. 65

пиен относительно начааа размещения программы С.

Иногда прямой адрес обозначают О и называют смещением. Формирование адреса обращения за операндом выполняется согласно следующему алгоризму (рис. 63).

В ряде процессоров перед обращением к РОН за базовой константой производится анализ значения поля В. Если программа находится в начале адресного пространства ОЗУ, базовая константа равна нулю, и обращения к РОН не требуется.

чтение ба=.~) "'"*!."

сьзв~згепив

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

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

В ряде процессоров выделяетсв специальный неявно адресуемый базовый регистр, на который при зирузкс в ОЗУ про-

63

граммы операционная система записывает базовую константу.

Тогда формирование Анси. будет реализовано по следующей

Псрсмещаемости программ по алресному пространству ОЗУ

можно достигнуть и другим способом — с помопгью адресации

относительно программного счетчика.

6semNID-Evm-Part1-34

Распознанный текст из изображения:

64

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

Х О е ч

-7 и'3 4

Рис. 66 дюбом месте ОЗУ адреса операндов всегда буду! жестко привязаны к алресам команд, по которым эти операзщы обрабатываются. Адрес Аисп в этом случае вычисляется следующим образом Анси.—. СЧАКт О по схеме !рис.65). Оювосительиая аг)ротация г инг)екгировагьиеьг Индекс предназначен лля указюзия или вычислении элементов массива. В шзрссном поью команды записаны адрес вндокса Х и прямой адрес О

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

и косвенной регмсзровой адресации Для перебора элементов массива данных прн его обработке могут быть применены следующие способы адресации; косвенная рогисзрова» совместно с авюинкрементной (авзодокрементной) и относительная с индексированием. Испавьзование того или иного способа зависит от форматов ланных, обрабатываемых процессором,шгресацией данных в ОЗУ. Наиболее просто зга залача решается первым способом. Автоинкрсмснтнан адресация самостоятельного значения ие имеет, но эффективно применяется совместно с регистровой, обеспечивая автоувеличение содержимого РОН, указанного в адресном поле команды, на елиницу. Авзолекрементный способ вьшолняег те же задачи, но уменьшаю содержимое РОН на единицу. Из выше сказанного вьжекает, что адреса элементов массива должны отличаться на «1». ОЗУ РОН (в) прямой адрес )-ге

вгечены мьынвз

КОН,' Х П

Исполнительный адрес вычисляется следующим образом; Аз!он=РОН[Х) т О

На рис 66 иех ь ьан пример нсиоььюам|ня индекса Пусь ь массне данных аь а, ах размещен а ячейках ОЗУ начиная с алроса а Прсдволожвч. что нньекс размещается в 5-н ячейке РОН. Тогда лля указания первого элемента массива в поле О команды необхолимо записать прямой адрес этого элемента, а в ячейке индекса код пуля.

Процессор после вычисления адреса элемента массива — а„ для указания следующего элемента должен изменить значение индекса в регистре 5 на единицу. И так индекс должен увсличи-

С22 а т2 аз 3

Рис. 67

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

Процессор должен выполнить слсдуюгцую процедуру РОН)й) —.РОН)й)т!. В слелуюпгем цикле рабоьы проьраммы

6semNID-Evm-Part1-35

Распознанный текст из изображения:

66

67

Озу

!б тб

2ЫЯ

бб язя

а+1 ! а, ач-2

4бяяг

Рис. 68

! Тек еезначе- ' Сле

1

)'Щ дующее значе-

Лнгц

иис индекса РОЫ[Х)+ Л

Ото а

О Л=б

!и. О

6

+ Л.—.12, 6+ а

'1

Зц

124- Л вЂ” -18

124. и

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

ражено в ниже приведенной таблице.

РОН[К1 ' Дан- Следующий Т

ные адрес

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

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

Предположим, что процессор работал с ланнымн разрядностью в 2, 4 и 6 байтов; в ОЗУ адресуется кажлый байт. Тогда при обработке массива, состоящего из 2-х байтных слов, адреса элементов булут различаться на 2; для 4-х багпных сяов — на 4; для 6-тн байтных слов — на 6. То есть приращение адреса в мнх случаях оглнчасгся от единицы. Относительная адресация с индексированном позволяет решить эту задачу.

На рис. 68 показано размещение в ОЗУ слов размером в 2, 4 н 6 байт. Если массив данных имеет разрядное гь слов по 6 байт, то значение индекса в каждом дикле должно увеличиваться на 6. В исходном состоянии в РОН[Х) записывается код нуля, а в поле О адрес первого байта первого элемента массива [и). ![клее в каждом следующем цикле [смотри таблицу) индекс будет приобретать значения 6, 12. 18 и т.д.

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

6semNID-Evm-Part1-36

Распознанный текст из изображения:

69

] а ю

Начала

установкалачавь-

2.7. Пример организации процессора,

реализующего заланную систему команд

Ух'

А теперь рассмотрим работу процессора, в систему команд

которого входят команды арифметических операций, команды

обмена н команды управления.

Для простоты выбираем однаадресную систему команд с

прямой адресацией первого операнда. Второй операнд находится

на аккумуляторе.

Система команд процессора;

нп ~

КОП А! Правила выполнения

ве лра-

алрсса

СЛ А1 АК:-"ОЗУ[А1]чАк

АК:=ОЗУ[А1]чАк

ВЫЧ

УМУ! АКюОЗУ[А1]чАк

ДЕЛ ~ Л! АК:=ОЗУ[А1]*Ах

АК: — -ОЗУ[А1]

Загр ! А!

ОЗУ[А!]:=АК

Зап1 А1

БП А1 ~ СЧАК:=А1

Если Ф= 1, та

УП ' А1, СЧАК:=СЧАК !

Если Ф=чз то СЧАК; — -А !

ОСт

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

Функциональная схема алгоритма рабозы процессора представлена на рис. б9, После вьгборки команды и формирования продвинутого адреса происходит дешифрация кода операции.

Алгоритм разветвляется в соответствии с !О возможными КОГ1,

6semNID-Evm-Part1-37

Распознанный текст из изображения:

70

71

Рис. 69

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

Структурная схема центральной части ЭВМ, соответствующая предо швленному алгоритму, приведена на рис. 70.

Рис 70

БИБЛИОГРАФИЧЕСКИЙ СПИСОК

! . Водяхо А,И., Гориец Н.Н., Пузанков Д.В. Высокопроизводительные системы обработки данных. — Мс Высшая школа, 1997. - 246 с.

2. Цилькер Б.Я., Орлов С.А. Организация ЭВМ и систем.- Питер, 2004. - 667 с.

3. Хамахер К., Вранешич 3., Заки С. Организапия ЭВМ. 5-е излание.- Питер, 2003. - 845 с.

4. Таненбаум Э. Архитектура компьютера. 4-е издание. - Питер, 2003. - 698 с.

5. Ларионов А.М., Майоров С А., Новиков Г.И. Вычислительные комшгексы, системы и сеп!. — Лс Эиергоатомизлат, 1987. -286 с.

б. Майоров С.А., Новиков Г.И. Структура электронных вычислитсвьных машин. - Лс Энергоиздат, 1979. - 298 с.

6semNID-Evm-Part1-38

Распознанный текст из изображения:

72

Содержанзге

Предислоиис............................. 3 1 'ЗВМ и системы: осионные пооязия и определения....... 5 1 1. Классификация 313М и систем ............... 4 1 2 Маг нсзрально-модульный способ органиыции ВВМ.... 7 1 3 Понягия быстродействия и прои зводительиосзи ВВМ и сис гам ........................... 7 1 4. Декомпозиция процессора иа оиера~зиоззззый и управляюпзий авзоматы .......................... К 1.4 1 Основиыс моменты СФ-языка................. й 1 4.2. Графические злементгя СФ-языка........... 11 1 5. Струкзурный базис операционных устройств...... 13 2 Процессоры. принципы ор~апизации и функционировании......................,.......... 21

2 1 Обобзцсппая сзруктурнал схема псинзальной части 'ЗВМ 21 2 2 Классификация процессоров по архигектурс команд.. 24 2 2 1 Урони и у правления процессором ............. 25 2 3 Классификация команд процессоров............. 26 24 Команды и функциоиальиыс схемы а.поритмон их выло.шснпя, ...,,......,.,, ..,.,.., ..,, 30 2 41. Команды арифмезических операции.......... 30 2 4 2 Команды зюгичсских операций. . .... . .. . 35 2 4.3 Команды сдвиза................. 36 2 4.4 Команлы обмена ........................ 38 245 Коззандзя упранлепия.............. 45 2 5. Способы адресации...................... 55 ".6 Обрабозка массиаоа ~ангзых с иаюльюваиисм а~ззосззгсльпой адресации с ин,зексироиаиием и косвенной регистровой адресации....................... 65 2 7 Пример оргаивмпии процессора, реализующего заданную систему комацд.. 68 Ьиблиозрафический список.. ... .. . .. ... . . 71

Ф.

Бвтсннй Леонидович Гйнаиов

Влснв Владимировнв Брыкникова

'!':::::::;:;:: 'о~тлнизлцИя ЭвМ И СйетаМ

ЧАС77а 3

, УЧЕБНОЕ ПОСОБИЕ

Редактор С.М.Коваленко

Литературный редактор ДХ.Куликов

фзхО

Подписано а печать-16ЛО.2606. Формат 60яй4 1!16.

Бумага офсетная. Печать офсетная.

,. Усл. печ. л:4,1$. Уел. крлозт.,16,72. Уч.-ияд, л. 4,5.

з осударствеии1Ю обрвтоивзсльнос учреждение

вцсвмго пРофесснонызьного образования

"Москйвскнй'государственнмй институт радиотехники,

элекгроинкн и автоматики (технический университет)"

11Р454, Москва, нр. Вериадскопз, 78

6semNID-Evm-Part2-03

Распознанный текст из изображения:

рецензенты: Т,И. Лимонова, Н.Н. Гарнец.

О 64 Иванов Е.Л., Бражникова Е.В. Организация ЭВМ н систем, часть 2: Учебное пособие 7 Государственное образовательное учреждение высгпего профессионального образования "Московский государственный институт радиотехники, электроники и автоматики (технический университет)"- М., 2008. — 64 с.

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

Табл.4. Ил.52. Библиогрл 9 назв.

Печатается по разрешению резгакгпзонно-издательского со

вета университета.

1ЯВ7» 978-5-7339-0688-1

ББК 32.973

О 64

УДК 004.3

Ю ЕЛ Иванов,

Е.В. Бражникова, 2008

Ю МИРЭА,2008

ПРЕДИСЛОВИЕ

Данное учебное пособие предназначена для студентов, обучаюшихся по направлению «Информатика и вычислительная техника» по специальности «.'Электронные вычислительные машины, системы и дети».

Мвириааы, касаюздиеся классификации ЭВМ и систем, принципов организации процессоров с С1БС и К1БС архитектурой комаЮ, а также алгоритмов исполнения команд, бьши рассмотрены в учебном пособии «Оргвнювция ЭВМ и систелг. Часть 1».

Преддагаелюе учебное пособие является продолжением.

В нем рассмотрены вопросы, связанные с организацией конвейеров и построением устройств управления.

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

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

Используя многолетний опыт преподавания таких дисциплин квк «Теория и проектирование ЭВМ», «Организация ЭВМ и систем», авторы постарюгись изложить материалы предельно кратко, сопровожлая каждый раздел необхолимым иллюсзраггионным мюсрналом.

6semNID-Evm-Part2-04

Распознанный текст из изображения:

КОП

Рис. !

РАБОТКА ИНФОРМАЦИИ

йети ЭВМ при последовательной

боткв команл

Анализ рабаты основных устройств и блоков ЭВМ при последовательной обработке команд и данных показывает, что в каждый интервал времени работает толька адно из устройств. Остальные находятся а режиме ожидания. Предположим, что процессор выполняет команду арифметической операции, которая имеет следующий формат;

Т .Л

В поле КОП укщан кад операции, допустим, «сложениев;

К! и К2 — прямые адреса операндов в РОН;

АЗ вЂ” прямой адрес результата в ОЗУ.

На цикле выполнения командь! можно видеть (рис. !) ваня

з ость того или иного устройства или блока.

Программный счет щк )ОЧАК) за цикл исполнения команды !Тц ком.) опрмиивается только овин раз прн выборке команды, обращения к ОЗУ процессор осущестюмет при выборке команды и юзя записи результата; к РОН обращение производится за исходными операндами, а основное устройспзо по обработке данных (АДУ) выпекается в работу только в конце цикла исполнения команды. Таем образам, ресурсы ЭВМ используются слабо из-за тпз, чта устройства работают последовательно друг за другом.

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

Практически во всех современных ЭВМ име|ог место конвейеры команд. Конвейерная обработка данных щироко применяется в вычислительных система класса ОКМД при обработке векторов.

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

1.2. Общие вопросы организации конвейеров

Конвейер ц)мдстаеляет собой совокупность ступеней, за каж-

дой из которых закреплены определенные процедуры.

1.2.!. Клвсгификицил кпнвейероп

По своей внутренней организации конвейеры можно палразделвть на сиилрпвиьы и исиикрпииые.

По выполняемым функшмм — на арнофуикциаиальнме и мггпгафуикципивлыгые. В свою очередь многофункционюгьные конвейеры могут быль стимическави и динами«се«кки

К синхронным конвейерам относятся конвейеры такого типа, в которых кажлая ступень конвейера требует одинакового времени. Такие конвейеры характерны дззя К!ЗС архитектуры на уровне конвейера команд.

В асинхронных конвейерах каждая ступень требует своего

6semNID-Evm-Part2-05

Распознанный текст из изображения:

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

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

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

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

Наиболее простыми являются синхронные однофункциональные конвейеры. Предположим, что вычисление функции Ф можно разбил, на 3 зила, за кажаьш из которых закрепляется своя ступень. Тогда будем иметь слсдуклиую временную диаграмму работы конвейера. На временной диаграмме Т вЂ” такт работы конвейера; ступ — ступени конвейера; Ф вЂ” вычиашемые в конвейере функции; Ья. — время загрузки канеейера; 1сз — время стационарной работы конвейера; Ьи — время выгрузки конвейера; Тк - время работы конвейера. Работа любого конвейера включает 3 эз апа. ° загрузка, определяемая временем гзяз когда в работу включается последняя ступень;

° время стационарной работы гм, в течение которого все ступени параллельно работают:

° и, наконец, этап выгрузки конвейера 1ми — время, в течениее которого конвейер завершает рабспу.

Тк

Рис. 2

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

Г »г,„ьс„

Произволигельность Р конвейера харакюризуется соотношением:

Р =. где: гс — количество функций, загруженных иа вход конвейера. Тогда: 7' =г ' г +г,. где г .=(7с-1)Т, г — (à — 1)Т;

~У (А 1))7з где К вЂ” количество ступеней конвейера

Т = 2(А — 1)Т-~) Дà †(7с-1))Т = ~(7г — 1)тут' ) В результате получим.

6semNID-Evm-Part2-06

Распознанный текст из изображения:

М 1 У

ТГ[И-1')ь)Т~ Т 14,11-1')

~ступень 1гщ1) сгупен!

1- время работы гони ики»

т - время работы фиксатора

Рис 4

1'ис. 3

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

Поскольку количество ступеней ограничено, то при уведиЛг 1

чении Х выражение стремится к 1, а Р -+, т.е. произйч(Л-1) Т

аолительность конвейера будет определяться тактовой частотой работы конвейера.

На рис.З показана зависимость производительности конвейера от количества ступеней для различного количества обрабатываемых функций. При мюнсе значениях Х производительность падает за счет того, что много времени тратится на загрузку и выгрузку конвейера. Если Х много больше количества ступеней. производительность стремится к 11Т.

1.2.2. Сюирукщуро сшог)зонного конвейера

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

г

Т

1

Т - такт работьз конвейера

В реальных синхронных когвейсрах нс всегда удается получить указанные времена Они зависят от количества процедур, выпошщемых логикой данной ступени. Если представить лкзбую функцию как совокупность подфункций, за кажпой из которых закреплена своя ступень. то в общем случае время работы ступеней может быть неодинаковым. В то же время синхронный конвейер требует отводить на каждую ступень время Т. Позюму возникает задача по выравниванию времени работы ступеней конвейера. Для зюга определяется максимальное время работы ступени конвейера Т, которое должно опрелслщь ирена работы всех ступеней конвейера. В те ступени, где логика работает быстрее, для получения того же времени Т добавляощя соответствующее количесгво фиксато-

6semNID-Evm-Part2-07

Распознанный текст из изображения:

Например, пусш функциа Ф разбиваеюя на 3 подфункпии: 1ТФ1, ПФ2, ПФ3 (рнс. 5). Время рабозы логики при вычислении ПФ2 являшся наибольшим (рис. 6, а) н составляет 31. С учетом времени рабошг фиксатора тахт работы конвейера составит Т вЂ” (1, Тогла дла приведения остальных ступеней ко времени Т, в первую ступень требуема добавить 2 фиксатора, а в третью — 1 фиксатор. В результате подучим слелуюшую структуру конвейера (рис. 6, 6).

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

62.3. Сигрукзнура асинхронного конвейера

Рнс. 5

Кюкдаз ступень имеет 2 фиксатора: Ф,„— входной фиксатор, н

Ф вЂ” выходной фиксатор (рис. 7)

т,„

Гт,

т .зт

Рис. 6

1 ступе|и 2 ступсаь 3 ступень

Ф, Ф Ф Лог.( Ф, Лог.2 Ф, Ф Лог.3

(3 Г

Лоавз (Ш$.1)изин

— ( — — Ц к (н з) ~евам~

6semNID-Evm-Part2-08

Распознанный текст из изображения:

12

Поскольку ступени требует своего времени шш вычисления падфупкций, то могут сложиться следующие сгпуации. 1 — ступень сваю работу закончила, а Н-1 ступень еще продолжает вычисления. Или зе1 ступень вычисления закончила, 1 — ступеяь еше продолжает работал . В первом случае 1-ступень сбрасывает результат иа Ф,„„, освобождая входной фиксатор, и моягет прншпь информацию с предыдущей ступени. Во втором случае !Ч ступонь фиксирует результат на выходном фиксаторе н переходит в режим ожидания завершения работы 1-ступени. Для организации связи между сзупенями должны фОрмироваться осведомительные сигналы готовности по приему и передаче данных, совпадение которых обеспечит огкрьпие управляемой шины для передачи результатов с Ф,„„!-й ступени на Ф,„(сь() ступени.

Т, — триггер флага готовности ступени к передаче информации. Тгн — триггер флага готовности ступени к приему информации.

1.2об Миагаб)уззкдивикаьиые конвейеры

Осгюеяые лолятия

Патеиизнасть — икюрвал времени между соседними инициализациями конвейера. Если в каждом аледующем такте осуществлнется загрузка кониейера очерещзой функцией, то латегггность такого конвейера равна ! . При этом для однофункциональных конвейюров достигается наивысшая производительность. Для многофункционавьных конвейеров латентность меняется от 0 н выше. В реальных конвейерах, когда обрабатывается множества функций, могут возникать конфликты между различными функциями, которые в одном и том же такте могут потребовать одной н той:ке ступени конвейера [Л 1]. Для устранения конфликта необходимо изменить латентность конвейера путем ее увеличения. Увеличеиие происходит до тех цор, пока не будут ликвидированы конфликты,при этом пронзводижльность конвейера, естественно, будет падать.

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

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

Функции Ф1 соответствует таблица занятости, изображенная на рис.б, а функции Ф2 — таблица занятости на рис. 9.

1 2 3 ' 4 з."уп 1; Фт

Фз ], б ( ]Фз;

Рнс. 9

Рис. 8

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

Кенняявзьз

6semNID-Evm-Part2-09

Распознанный текст из изображения:

!4

В результате имеем: в 4 и 5 таких обе функции требуют аппаратные ресуроы соответственно 4 и 5 ступеней конвейера. Возникает конфликт по разделению ресурсов стунеией между вычисляемыми функциями. Ликвидировать конфликт можно увеличив латентность (рнс. 11).

Рис. 11

При данной латентности, равной 2, конфликт ликвидирован, но при этом в коннейере появяяегся кпузырь» на входе (в такте 2 1-я ступень простаивает), и производительность конвейера уменьшается.

1.3. Конвейер команд

1.3.1. Общие ното»кения

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

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

При рабате конвейера команд могут возникнуть три типа конфликтов [Л 2, Л 3, Л 4)

1. структурный,

2. конфликг по данным,

3, конфликт по управлению.

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

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

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

При появлении любого типа конфликта в конвейере появляется «пузырь», козорый связан с неиспользованием очередного такта рабаты конвейера. Этот кпузырь» проходит по всому конвейеру. В зависимости от типа конфликта ол пожег занимать от 1 и более тактов, что приводит к общей питере производительности конвейера. Рассмотрим их по порядку.

!

1.3.2 Структурные конфлкклгы

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

6semNID-Evm-Part2-10

Распознанный текст из изображения:

щ

17

Выборке еачеа,

н гсатфрывы КГ

Выбг

Выла юенне оперении

Рис. 13

2 1 3 ~ 4 К2 )гз Кз

Обращение

к ОЗУ

Обращение

к ОЗУ

К,

к к,

Кг

б

Рис. 12

'Мш;нбаск )Вийе)45!Г)г бег 3ый

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

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

Т пне т

Способы бор~бы с ноггфлинтпии по обрищтгию и наилти

Известны два классических способа уменьшения конфликтов при одновременном обрапгении различных ступеней к памяпс

1. расслоение памяти по информации;

2. расслоение памяти по адресам.

Россггоение н тяти (в данном случае име тся в ниду ОЗУЗ ла илфорзищии заключаетса в том, что для команд и данных в состав ядра ЭВМ вводятся два ОЗУ: ОЗУ команд и ОЗУ данных (рис. 13). Конфликта между 1-й и 2-й ступенями не возникает г.к. они одновременно обращзются к различным ОЗУ. Однако, при увеличении аареснасти команды данного типа конфликг может возникнуть при обращении к ОЗУ данных.

ОЗУ ОЗУ

ноченд ~ данных

1 гулень ~ , ) ~ 2 сзупсиь

Каавейараан е-

Выбарке каменны Выборка операнде

час гь

3 сгуаень

Предположим, что процессор работает с грехадрссными командами, Цикл исполнения команды можно разделить на 5 следующих этапов (рис. 14);

— — — г внега

7 Г"Г 75 -,-.-"

Выборке еа, 3. и гы н 7

гютгфамлаК013 ( (Взгтгнеггеггггс~зегстыета

Выборке 2-го аньренле г Выборке 2-~а анеревле

6semNID-Evm-Part2-11

Распознанный текст из изображения:

Обращение к ОЗУ команд Обращение к ОЗУ ланных Обращение к ОЗУ данных

2. Выбор 1-го

операнда

3. Выбор 2-го

операнда

К

1. выборка команды и дешифрация КОП,

2. выборка 1-го операнда,

3. выборка 2ч а операнда,

4, вычисление результата (ШЫ команд арифметических и логических операций),

5. запись результата в память.

Закрепив данные этапы за ступенями конвейера, получим

следующую временную диаграмму работы конвейера (рис. 15).

!9

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

Пряники расслоения ОЗУ

Предположим, что ОЗУ состоит из 4-х модулей: Ме,М!. Мз, и Мз (рис. 16). Адресованы начальные ячейки модулей (лдреса показаны в 16-ричной оисщме счисления); О-й алрес соответствует О-й ячейке медузы Мс. 1-й адрес О-й ячейке модуля М~ и т.д. В этом случае, если адреса комвидм и данных принадлежат разным модузшм, то со 2-го по 5-ын такты конфликты разрешаются.

и, и р, !7~в~ та[ ! ь(Д В[ э[ [а3 с[ л ~ г [с[В Ге[о !

Рис. 16

Обращение к ОЗУ данных

К,

Все равна остается конфликт по обращению к ОЗУ

Рис. 15

11ри использовании схемы (рнс. 13) расслоения ОЗУ по информации канфлиюы будуг иметь места при обращении 2-й, 3-й и 5-й ступеней к ОЗУ данных при выборке оггермздав и запиои результата.

Для ликвидации конфяикта обран!ения к памяти различных ступеней кона«йера наиболее общей является расслоение памяти но иг!регин Этот тип расслоения базируется на связности информации. Под этим термином понимается следующее: все команды программы и элементы массива даинмх размещаются в памяти по нарастанию Кдресов.

Для реализации этого способа ОЗУ должно иметь многомо-

Чеьг больше молулей в составе ОЗУ, тем меньше вероятноать конфликта. Конфликгы могут возникнуть, когда в одном и том же такте различные ступени обращаются за команлай или данными к одному модулю. В этом случае конвейер приостанавливает свою рабату, и появляезс» «пузырьи.

Аналогичные конфликты возникшот при одновременном обращении различных ступеней конвейера к регистровой памяти. 'Зто имеет чеспз в К)ЗС- ггроцессорах при выполнении команд обработки данных. Прежде всего, напомним основные особенности процессоров с ограниченным набором команд [Л 5ф

1. Все команды имеют одинаковую длину.

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

3. Команвы первой группы выполняют талька коргпкие операции; команды длинных операций выносятся на программный

Картинка-подпись
Хочешь зарабатывать на СтудИзбе больше 10к рублей в месяц? Научу бесплатно!
Начать зарабатывать

Комментарии

Поделитесь ссылкой:
Рейтинг-
0
0
0
0
0
Поделитесь ссылкой:
Сопутствующие материалы
Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Нашёл ошибку?
Или хочешь предложить что-то улучшить на этой странице? Напиши об этом и получи бонус!
Бонус рассчитывается индивидуально в каждом случае и может быть в виде баллов или бесплатной услуги от студизбы.
Предложить исправление
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5076
Авторов
на СтудИзбе
455
Средний доход
с одного платного файла
Обучение Подробнее