Разблокировка Oysters T72M 3G
Разблокировка Oysters T72M 3G


Разблокировка Quanta 1K6E
Разблокировка Quanta 1K6E


iTunes Gift Card (Russia) 1000 рублей
iTunes Gift Card (Russia) 1000 рублей


В начало

 

КУРСОРАЯ РАБОТА

на тему:

«Классификация микропроцессоров»

 

Введение

 

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

микроконтроллеры

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

сигнальные микропроцессоры

По внутренней структуре существует два основных принципа построения микропроцессоров:

Гарвардская архитектура

Архитектура Фон-Неймана

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

Аккумуляторные микропроцессоры

Микропроцессоры с регистрами общего назначения

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

одноадресной

двухадресной

трёхадресной.

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

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

В Гарвардской архитектуре принципиально различаются два вида памяти:

Память программ

Память данных

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

Отличие архитектуры Фон Неймана заключается в принципиальной возможности работы над управляющими программами точно так же как над данными. Это позволяет производит загрузку и выгрузку управляющих программ в произвольное место памяти процессора, которая в этой структуре не разделяется на память программ и память данных. Любой участок памяти может служить как памятью программ, так и памятью данных. Причём в разные моменты времени одна и та же область памяти может использоваться и как память программ и как память данных. Для того, чтобы программа могла работать в произвольной области памяти, её необходимо модернизировать перед загрузкой, то есть работать с нею как с обычными данными. Эта особенность архитектуры позволяет наиболее гибко управлять работой микропроцессорной системы, но создаёт принципиальную возможность искажения управляющей программы, что понижает надёжность работы аппаратуры. Эта архитектура используется в универсальных компьютерах и в некоторых видах микроконтроллеров.

 


1. Классификация процессоров (CISC и RISC)

 

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

Двумя основными архитектурами набора команд, используемыми компьютерной промышленностью на современном этапе развития вычислительной техники являются архитектуры CISC и RISC. Основоположником CISC-архитектуры можно считать компанию IBM с ее базовой архитектурой /360, ядро которой используется с1964 года и дошло до наших дней, например, в таких современных мейнфреймах как IBM ES/9000.

Лидером в разработке микропроцессоров c полным набором команд (CISC - Complete Instruction Set Computer) считается компания Intel со своей серией x86 и Pentium. Эта архитектура является практическим стандартом для рынка микрокомпьютеров. Для CISC-процессоров характерно:

сравнительно небольшое число регистров общего назначения;

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

большое количество методов адресации;

большое количество форматов команд различной разрядности;

преобладание двухадресного формата команд; наличие команд обработки типа регистр-память.

Основой архитектуры современных микропроцессоров обычно является архитектура компьютера с сокращенным набором команд (RISC - Reduced Instruction Set Computer). Зачатки этой архитектуры уходят своими корнями к компьютерам CDC6600, разработчики которых (Торнтон, Крэй и др.) осознали важность упрощения набора команд для построения быстрых вычислительных машин. Эту традицию упрощения архитектуры С. Крэй с успехом применил при создании широко известной серии суперкомпьютеров компании Cray Research. Однако окончательно понятие RISC в современном его понимании сформировалось на базе трех исследовательских проектов компьютеров: процессора 801 компании IBM, процессора RISC университета Беркли и процессора MIPS Стенфордского университета.

Разработка экспериментального проекта компании IBM началась еще в конце 70-х годов, но его результаты никогда не публиковались и компьютер на его основе в промышленных масштабах не изготавливался. В 1980 году Д. Паттерсон со своими коллегами из Беркли начали свой проект и изготовили две машины, которые получили названия RISC-I и RISC-II. Главными идеями этих машин было отделение медленной памяти от высокоскоростных регистров и использование регистровых окон. В 1981году Дж. Хеннесси со своими коллегами опубликовал описание стенфордской машины MIPS, основным аспектом разработки которой была эффективная реализация конвейерной обработки посредством тщательного планирования компилятором его загрузки.

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

Среди других особенностей RISC-архитектур следует отметить наличие достаточно большого регистрового файла (в типовых RISC-процессорах реализуются от 32 до 128 или большее число регистров по сравнению с 8 - 16 регистрами в CISC-архитектурах), что позволяет большему объему данных храниться в регистрах на процессорном кристалле большее время и упрощает работу компилятора по распределению регистров под переменные. Для обработки, как правило, используются трехадресные команды, что помимо упрощения дешифрации дает возможность сохранять большее число переменных в регистрах без их последующей перезагрузки.

Ко времени завершения университетских проектов (1983-1984 гг.) обозначился также прорыв в технологии изготовления сверхбольших интегральных схем. Простота архитектуры и ее эффективность, подтвержденная этими проектами, вызвали большой интерес в компьютерной индустрии и с 1986 года началась активная промышленная реализация архитектуры RISC. К настоящему времени эта архитектура прочно занимает лидирующие позиции на мировом компьютерном рынке рабочих станций и серверов.

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

Хотя в настоящее время большинство процессоров, имеющих архитектуру CISC или RISC являются суперскалярными, традиционно архитектуры называются их старыми названиями, хотя грань между ними практически стёрта.

В разработках Pentium компании Intel (имеется в виду Pentium 1,2,3,4 и процессор следующего поколения P6), а также ее последователей-конкурентов (AMD, Cyrix, и др.) широко используются идеи, реализованные в RISC-микропроцессорах. Сложность архитектуры и системы команд x86 уже не является главным фактором, ограничивающим производительность процессоров на ее основе.


2. Общие сведения о микропроцессорных системах управления. Основные сигналы и внутренняя структура обобщенной 8-разрядной МП системы

2.1 Принципы Неймана-Лебедева

 

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

Как известно, первый электронный компьютер ЭНИАК был изготовлен в США в 1945 г. Блестящий анализ сильных и слабых сторон проекта ЭНИАК был дан в отчете Принстонского института перспективных исследований "Предварительное обсуждение логического конструирования электронного вычислительного устройства" (июнь 1946 г.). Этот отчет, составленный выдающимся американским математиком Джоном фон Нейманом и его коллегами по Принстонскому институту Г. Голдстайном и А. Берксом, представлял проект нового электронного компьютера. Идеи, высказанные в этом отчете, известные под названием "Неймановских Принципов", оказали серьезное влияние на развитие компьютерной техники.

Сущность "Неймановских Принципов" состояла в следующем:

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

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

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

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

Арифметическое устройство компьютера конструируется на основе схем, выполняющих операцию сложения.

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

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

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

Алгебра логики была разработана в середине 19-го века английским математиком Джорджем Булем и рассматривалась им в качестве метода математизации формальной логики. Разработка электронных компьютеров на двухпозиционных электронных элементах создала возможным широкое использование "булевой логики" для проектирования компьютерных схем. В первой половине 30-х годов 20-го столетия появились математические работы, в которых была доказана принципиальная возможность решения с помощью автоматов любой проблемы, поддающейся алгоритмической обработке. Данное доказательство содержалось в опубликованных в 1936 г. работах английского математика А. Тьюринга и американского математика Э. Поста.

Весьма интересной является информация о том, что числа Фибоначчи и золотое сечение были "хобби" Алана Тьюринга. Существенно подчеркнуть, что центральное место среди "принципов Неймана-Лебедева" занимает предложение об использовании двоичной системы счисления, что было обусловлено рядом обстоятельств. Во-первых, несомненными арифметическими достоинствами двоичной системы счисления, ее "оптимальным" согласованием с "булевой" логикой и простотой технической реализации двоичного элемента памяти (триггера).

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

Второй недостаток двоичной системы счисления - ее "нулевая избыточность". Дело в том, что если в процессе передачи, хранения или обработки двоичной кодовой комбинации, например 10011010, под влиянием "помех", действующих в "канале", произойдет искажение данной кодовой комбинации и она перейдет в кодовую комбинацию 11010010, то, поскольку комбинация 11010010 (как и любая другая двоичная кодовая комбинация) является "разрешенной" в классической двоичной системы счисления, то не существует способа обнаружить данную ошибку без дополнительных "ухищрений", то есть без использования специальных методов избыточного кодирования. Попытка преодолеть эти и другие недостатки и стимулировала использование в компьютерах новых систем счисления и развитие теории систем счисления.

 

2.2 Структура МПС

 

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

 

Рис. 1. Структура типичной МПС


3. Тактовые диаграммы микропроцессоров

 

3.1. Тактовая диаграмма МП в режиме чтения

 

Рис. 2. Тактовая диаграмма МП в режиме чтения

 

При чтении данных из внешнего устройства на МП подает адрес читаемой ячейки (AN) на шину адреса (t1). Параллельно он отпускает шину данных и та переходит в Z-состояние (теперь ей может управлять внешняя микросхема памяти).

Далее МП подает сигнал MRD (Memory Read) (t2). Внешняя микросхема памяти, получив этот сигнал, захватывает управление шиной данных и через некоторое время, необходимое для чтения данных, выдает результат чтения (DN) на шину данных (t3).

МП считывает данные с шины и возвращает сигнал MRD в неактивное состояние (лог.1) и микросхема памяти отпускает управление шиной данных (t4). К следующему такту микропроцессора он может снова взять на себя управление шиной данных, либо подать на шину адреса след. значение (AN+1) и повторить операцию чтения.


3.2. Тактовая диаграмма МП в режиме чтения с медленным внешним устройством. Формирование сигнала ожидания

 

Рис. 3. Тактовая диаграмма МП в режиме чтения с медленным внешним
устройством

 

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

После поданного адреса и сигнала MRD (аналогично пред. случаю, t1,t2), внешняя память вместо результата чтения выдает сигнал READY=0 (результат чтения не готов) (t3). Процессор подтверждает получение сигнала сигналом WAIT=0 (t4), и приостанавливается.

Когда внешняя микросхема закончит чтения, она возвращает сигнал READY в 1 (результат чтения готов) (t5). Процессор подтверждает получение сигнала сигналом WAIT=1 (t6), после чего считывает данные, возвращает MRD в 1 (t7) и т.д., то есть далее ведет себя как при стандартном чтении.


3.3. Тактовая диаграмма МП в режиме записи. Формирование сигнала захвата шины

Рис. 4. Тактовая диаграмма МП в режиме записи

Рис. 5. Формирование сигнала захвата шины