Архитектура микропроцессора: понятие, виды, достоинства и недостатки
Микропроцессор состоит из нескольких блоков, соединенных между собой, каждый из них выполняет определенную функцию. Проект и взаимосвязь этих блоков называется архитектурой. Скорость, с которой компьютер может читать инструкции и выполнять соответствующие вычисления, определяется рабочей частотой микропроцессора. Производители добились больших успехов в разработке архитектуры, что позволяет компьютерам все меньше зависеть от частоты, то есть микро с низкими частотами и скоростями могут выполнять больше вычислений и задач. В процессе эволюции архитектуры микропроцессора она превратилась из одноядерной в многоядерную, способную обрабатывать несколько частей информации одновременно.
История поколений микропроцессора
Компания Fairchild Semiconductor (Ярмарка детских полупроводников), основанная в 1957 году изобрела свою первую интегральную схему в 1959 году, которая ознаменовала начало истории микропроцессоров. В 1968 году Гордан Мур, Роберт Нойс и Эндрю Гроув ушли с Ярмарки детских полупроводников и основали собственную компанию: Integrated Electronics (Intel). В 1971 году компания изобрела первый Intel 4004.
Сегодня существует несколько поколений архитектур микропроцессоров:
- 1-е поколение с 1971 по 1973 годы. В 1971 году INTEL 4004 с тактовой частотой 108 кГц. В течение этого периода использовались другие модели на рынке, включая Rockwell International PPS-4, INTEL-8008 и National semiconductors IMP-16, они были не TTL-совместимыми устройствами.
- 2-е поколение с 1973 по 1978 год, реализованы очень эффективные 8-разрядные микропроцессоры, такие как Motorola 6800 и 6801, INTEL-8085 и Zilogs-Z80. Вследствие их сверхбыстрой скорости они были дорогостоящими, поскольку основывались на изготовлении технологии NMOS, тем не менее, несмотря на цену, были очень популярные.
- 3-е поколение архитектуры микропроцессора использовалось с 1979 по 1980 год.В этом периоде были разработаны INTEL 8086/80186/80286 и Motorola 68000 и 68010. Скорости этих процессоров были в четыре раза лучше, чем у предшественников.
- 4-е поколение с 1981 по 1995 годы - были разработаны 32-битные микропроцессоры с использованием HCMOS. INTEL-80386 и Motorola 68020/68030 были популярными процессорами.
- 5-е поколение стартовало в 1995 году и по настоящее время. В этом периоде на рынок выпустили 64-разрядную архитектуру современного микропроцессора, к которым относятся Pentium, Celeron, Dual и Quad Core.
Вехи создания Intel Celeron и Pentium
Intel Celeron был представлен в апреле 1998 года и относится к ряду процессоров Intel X86 для персональных ПК. Он основан на Pentium 2 и может работать на всех компьютерных программах IA-32.
История Intel Celeron:
- 4 /01/2000 - Intel Celeron 533.0 МГц;
- 14/02/2000 - мобильный Intel Celeron 450/500 МГц;
- 19/06/2000 - мобильный Intel Celeron низкого напряжения, 500.0 МГц;
- 3/01/2001 - Intel Celeron, 800 МГц;
- 2001 - Intel Celeron (1,2 ГГц);
- 2002 - архитектура микропроцессора Intel Celeron (1.3, 2.10, 2.20 ГГц);
- 2003 - мобильный процессор Intel Celeron 2/ 2.55 ГГц.
- 2004- Intel Celeron M 320 и 310 (1,3, 1,2 ГГц);
- 2008 - Celeron Core 2 DUO (Аллендейл).
Pentium был представлен 2 марта 1993 года. Он сменил архитектуру микропроцессора Intel 486, цифра 4 указывает на микроархитектуру четвертого поколения в истории микропроцессоров. Pentium относится к одноядерному Intel x 86, который основан на архитектуре пятого поколения. Название этого процессора произошло от греческого слова penta, что означает "пять".
Первоначальный процессор Pentium был заменен на Pentium MMX в 1996 году и имеет шину данных 64 бит. Стандартный одиночный цикл передачи может считывать или записывать до 64 бит одновременно. Циклы чтения и записи Burst поддерживаются процессорами Pentium. Они используются для операций кэширования и передачи 32 байтов (размер строки кэша Pentium) за 4 такта. Все операции с кэшем являются пакетными циклами для него.
Конструкция центрального процессора
Архитектура микропроцессора имеет множество периферийных устройств, изготавливаемых на одном кристалле. Он имеет ALU (арифметико-логический блок), блок управления, регистры, шинные системы и часы для выполнения вычислительных задач.
Микропроцессор представляет собой единый пакет микросхем, в котором ряд полезных функций интегрирован и изготовлен на одном кремниевом полупроводниковом чипе. Его архитектура состоит из центрального процессора, модулей памяти, системной шины и блока ввода/вывода. Системная шина соединяет различные блоки для облегчения обмена информацией. Кроме того, он состоит из шин данных, адресов и управления для надлежащего обмена данными, с чем связано глубинное понятие архитектуры микропроцессора.
Центральный процессор состоит из одного или нескольких арифметико-логических блоков (АЛУ), регистров и блока управления. На основании регистров также можно классифицировать номер поколения. АЛУ вычисляет все арифметические, а также логические операции над данными и определяет размер микропроцессора, например, 16-битный или 32-битный.
Блок памяти содержит программу, а также данные, и разделен на процессор, первичную и вторичную память. Блок ввода и вывода соединяет аналогичные периферийные устройства связи с микропроцессором для приема и отправки информации.
Типы micro в системах
Существует несколько типов архитектур микропроцессоров, доступных для использования в различных системах:
- Совместные процессоры. Это дополнительный микропроцессор, работающий рядом с основным. Он спроектирован и оптимизирован для использования в конкретной задаче и повышает скорость обработки за счет одновременной работы с основным. Примером этого может быть математический сопроцессор или ускоритель с плавающей запятой.
- Скалярный процессор выполняет вычисления для одного числа или набора данных за один раз, он установлен в большинстве современных компьютеров и известен как однопотоковый с одним потоком команд или, для краткости, SISD.
- Массив ЦП архитектуры современного микропроцессора, также известный как векторный, позволяет одной инструкции одновременно работать в нескольких точках данных. Он известен как SIMD-процессор с одной командой множественных данных, широко используется при прогнозировании погоды и моделировании воздушного потока.
- Параллельный процессор использует независимые микро для работы над одной и той же программой. Рассматриваемый процесс разбит на задачи, каждая из которых может быть обработана любым из них. Все они координируются сложной операционной системой. Программы должны быть специально написаны для параллельной обработки, в противном случае некоторые не смогут быть завершены, пока не закроются другие, зависящие от результата текущего процесса.
Микропроцессоры подразделяются на пять типов: CISC-Complex Instruction Set, микропроцессор RISC сокращенного набора команд, специализированная интегральная схема ASIC, суперскалярные процессоры и цифровые сигнальные микропроцессоры DSP.
Эти процессоры используются для кодирования и декодирования видео или для преобразования ЦАП (цифро-аналоговый) и А/Ц (аналого-цифровой). Им нужен микропроцессор, который превосходен в математических вычислениях. Микросхемы этого процессора используются в RADAR, домашних кинотеатрах, SONAR, аудиосистемах, телевизионных приставках и мобильных телефонах.
Эволюция Intel x86
Архитектура Intel x86 развивалась годами. От 29 000 транзисторных микропроцессоров 8086 четырехъядерный процессор Intel Core 2 содержит 820 миллионов транзисторов, в связи с чем организация и технология производства кардинально изменились.
Некоторые из основных моментов развития архитектуры x86:
- 8080 - первый в мире микропроцессор общего назначения. Имеет архитектуру памяти микропроцессора с 8-битным путем передачи данных в память. Он использовался в первом персональном компьютере.
- 8086 - 16-битная машина, намного мощнее, чем предыдущая, имела реальный режим и адресную память 1 МБ. У нее был более широкий путь данных: 16-битные и более крупные регистры, а также кэш или очередь команд, которые выбирались перед выполнением.
- 80286 - имеет адресуемую память 16 МБ и содержит два режима: реальный и 16-разрядный режим первого поколения. Он имеет ширину передачи данных 16 бит и программную модель тоже 16 бит.
80286: 16-битный microprose
В основном это microprose, является расширенной версией 8086. Поэтому перед тем, как понять 80286, нужно иметь минимальные представления о 8086. Intel 8086 - это 16-битный микропроцессор, предназначенный для использования в качестве ЦП в микрокомпьютерах. Термин 16 бит означает, что его арифметическая логическая единица, внутренние регистры, инструкции предназначены для работы с 16-битными двоичными кодами. Имеет 20-битную адресную шину и 16-битная шину данных. Таким образом, это означает, что он может обращаться к любому из 1048576 ячеек памяти и может считывать данные или записывать данные в память и порты по 16 или 8 бит за раз.
Архитектура микропроцессора 80286 специально разработана для многопользовательской и многозадачной системы. Она имеет четыре уровня защиты памяти и поддерживает операционную систему. Производительность его более чем в два раза выше за такт, чем у предшественников Intel 8086/8088. Сложные математические операции занимают меньше тактов по сравнению с 8086. Он устраняет мультиплексирование шин и имеет линейную адресную шину с 24 адресными строками, которая может напрямую передавать 16 Мбайт памяти. Это поддерживается модулем управления памяти, и через него он может отдавать 1 Гбайт памяти, также известную как виртуальная. Процессор включает в себя различные встроенные механизмы, которые могут защитить системное ПО от пользовательских программ и ограничить доступ к некоторым областям памяти.
Есть два режима работы для 80286. Режим реального адреса и режим защищенного виртуального адреса. В основном в этом режиме один пользователь не мешает другому. Также они не могут вмешиваться в операционную систему. Эти функции называются защитой. 80286 содержит четыре блока обработки:
- Блок шины.
- Блок инструкции.
- Блок исполнения.
- Блок адреса.
Пока выполняется текущая инструкция, BU предварительно выбирает команду s и сохраняет ее в очередь из шести байтов. Функция U является расшифровать отточенные инструкции и сохранить очередь из трех декодированных инструкций. Блок адреса вычисляет адрес памяти или устройств ввода/вывода, который должен быть отправлен для чтения и операции записи. Все четыре блока работают параллельно внутри процессора. Эта реализация предсказания переходов в архитектуре микропроцессоров называется конвейерной.
Следующий направления эволюции это микропроцессор 80386 - первая 32-разрядная машина Intel. Благодаря своей архитектуре она смогла конкурировать со сложностью и мощью микрокомпьютеров и мэйнфреймов, представленных несколькими годами ранее. Это был первый процессор, который поддерживал многозадачность и содержал 32-битный защищенный режим. В ней реализована концепция подкачки. Она имеет адресуемую физическую память объемом 4 ГБ и ширину передачи данных 32 бита.
80486: технология кеширования
Позже в 1989 году на рынок вышел микро 80486 и представил концепцию технологии кеширования и конвейерную обработку команд. Он содержал функцию защиты от записи и предлагал встроенный математический сопроцессор, который выполняет сложные операции из основного процессора.
Разновидности микро 4 поколения:
- Pentium -использование суперскалярных техник было введено, когда несколько команд начали выполняться параллельно. Функция расширения размера страницы (PSE) была добавлена в качестве незначительного улучшения в подкачке страниц.
- Pentium Pro - используется переименование регистров, предсказание ветвлений, анализ потоков данных, спекулятивное выполнение и другие этапы конвейера. Также были добавлены передовые методы оптимизации в микрокоде и кэш 2-го уровня. В нем реализована трансляция адресов второго поколения, в которой 32-битный виртуальный адрес транслируется в 36-битный адрес физической памяти.
- Pentium II. Он смог эффективно обрабатывать видео, аудио и графические данные, используя технологию архитектуры микропроцессора семейства Intel MMX (набор мультимедийных данных).
- Pentium III - содержит инструкции SMD (потоковые расширения) и поддерживает программное обеспечение для 3D-графики. Он имеет максимальную тактовую частоту процессора 1,4 ГГц и содержит 70 новых инструкций.
- Pentium IV -реализует изменения адресов третьего поколения, которое преобразует 48-разрядный адрес виртуальной памяти в 48-разрядный адрес физической памяти. Он содержит другие улучшения с плавающей запятой для мультимедиа.
- Core - первый микропроцессор архитектуры семейства Intel с двухъядерным процессором, представляющий собой реализацию двух процессоров на одном чипе и имеет дополнительную технологию визуализации.
- Core 2 -расширяет архитектуру до 64-разрядных, а ядро 2 Quad обеспечивает четыре процессора на одном кристалле. Набор регистров, а также режимы адресации являются 64-битными. Он содержит электронную схему из 1,2 миллион транзисторов. Его рабочая частота для его разные версии 25, 33, 66 и 100 МГц. Это в 3-5 раз быстрее, чем 80386. В основном чип доступен в двух версиях: DX и SX. Версия типа DX является 32-битовым процессором размещенный в 168-контактном сеточном массиве и может работать с тактовыми частотами от 25 до 66 МГц.
Базис 486-го устройства
Понятие архитектур, на какие делятся микропроцессоры, является комплексным и включает в себя такие элементы, как структурная схема, средства доступа, разрядность интерфейсов, формат данных и прерываний.
Важные дополнительные особенности 486 процессора по сравнению с 386 заключаются в следующем:
- Встроенный математический сопроцессор. В системе 386 математика реализована на внешнем устройстве, следовательно, такие инструкции в 486 выполняются в три раза быстрее.
- 8 Кбайт кода и кэш-память данных на чипе.
- Высококонвейерное исполнение.
- Исполнительный блок.
- Устройство управления.
- Блок интерфейса шины.
- Блок предварительной выборки кода.
- Блок декодирования команд.
- Сегментация n-единиц измерения.
- Пейджинговый блок.
- Блок кэша.
- Блок с плавающей точкой.
- Блок предварительной выборки кода содержит 32-байтовую очередь для хранения извлеченных кодов команд.
- Блок управления также содержит ПЗУ управления для хранения микрокодов. Адрес, указанный в программе, называется логическим адресом. Он также обеспечивает 4 уровня защиты для изоляции и защиты задач и операционной системы друг от друга.
- Масштабируемая архитектура микропроцессора — понятие подразумевает работу в окнах.
- Модуль поискового вызова обеспечивает вызов объекта в пределах сегмента.
- Физический адрес. Фактические емкости RAM и ROM, существующие в компьютере, известны как физическая память.
- Сегментация и пейджинговый блок представляет собой блок управления памятью.
Блоки RISC
RISC расшифровывается как компьютер с сокращенным набором инструкций и представляет собой тип стратегии проектирования архитектурного процессора. Архитектура микропроцессора RISC относится к способу планирования и сборки процессора и может иметь отношение либо к аппаратному обеспечению, либо к программному, наиболее близкому к кремнию, на котором он работает. Архитектура набора инструкций (ISA) определяет базовое программное обеспечение.
Аппаратная архитектура компьютера требует код, который разбивает инструкции на 0 и 1 и который ПК может понять, также известный как машинный код. Архитектура процессора может быть совершенно другой, и программное обеспечение ISA будет отражать это. Разницу между ними можно найти в том, как выполняются задачи, например, по обработке регистров, прерыванию, адресации памяти, внешних входов и выходов.
Другими словами, машинный код для одной не будет работать на другой. Например, настольная версия Windows не будет работать на смартфоне, поскольку архитектура отличается. Хотя Microsoft поощряет возможное объединение в одну ОС для настольных компьютеров, ноутбуков и планшетов, начиная с введения Windows 8.
Существует несколько типов процессорных архитектур и соответствующих ISA. Некоторые примеры RISC - это ARM, MIPS, SPARC и PowerPC. Современные процессоры сильно интегрированы и работают быстрее, поэтому наборы команд RISC становятся все более сложными, чтобы использовать преимущества усовершенствованной технологии.
CISC архитектура
Для того чтобы ответить на вопрос, что понимают под архитектурой микропроцессора CISC, нужно рассмотреть подход CISC к количеству выполняемых инструкций. Ее главная задача в этом вопросе — минимизация объема на программу, жертвуя при этом количеством циклов. Компьютеры на основе архитектуры CISC предназначены для снижения стоимости памяти. Крупные программы нуждаются в большем объеме памяти, что увеличивает стоимость. Чтобы решить эти проблемы, количество команд на программу может быть уменьшено путем вложения множества операций в одну инструкцию, тем самым делая ее более сложной.
MUL загружает два значения из памяти в отдельные регистры в CISC. Микропроцессор использует минимально возможные инструкции при реализации аппаратного обеспечения и выполняет операции.
Основные ключевые слова, использованные в приведенной архитектуре:
- Набор инструкций — группа инструкций для выполнения программы, которая направляет компьютер, манипулируя данными. Форма: код операции (операционный код) и операнд. Операции — это инструкция, применяемая для загрузки и хранения данных. Операнд — это регистр памяти.
- Режимы адресации — это способ доступа к данным. В зависимости от типа применяемой команды режимы адресации бывают разных типов, такие как прямой режим, когда осуществляется доступ к прямым данным, или косвенный режим, где осуществляется доступ к расположению данных.
- Производительность процессора задается основным законом и зависит от количества команд, CPI (циклов на команду) и времени тактового цикла.
Преимущества и недостатки
По форматам используемых команд (инструкций) можно выделить основные виды из классификации архитектур микропроцессоров: RISC и CISC. Преимущества архитектуры RISC в том, что она имеет набор инструкций, поэтому высокоуровневые языковые компиляторы могут создавать более эффективный код. Это позволяет свободу использования пространства на микропроцессорах из-за простоты. Многие процессоры RISC используют регистры для передачи аргументов и хранения локальных переменных. Функции используют только несколько параметров, и процессоры не могут использовать инструкции вызова и, следовательно, используют метод фиксированной длины, которую легко транслировать.
Скорость операции может быть максимизирована, а время выполнения может быть минимизировано. Требуется меньшее количество форматов обучения, несколько номеров инструкций, несколько режимов адресации и хорошая масштабируемость. Понятие масштабируемая архитектура микропроцессора подразумевает использование регистровых окон, обеспечивающий удобный механизм передачи параметров между программами и возврата результатов. Подобный механизм реализован в SPARC.
Недостатки архитектуры RISC вызваны тем, что в основном производительность процессоров RISC зависит от программиста или компилятора, поэтому знание компилятора играет жизненно важную роль при изменении кода CISC на код RISC. При перестановке CISC в код RISC, называемый расширением кода, будет увеличиваться размер. И качество этого расширения будет снова зависеть от компилятора, а также от набора команд машины. Кэш первого уровня процессоров RISC также является недостатком. Эти процессоры имеют большую кэш память на самом чипе. Для подачи инструкций им требуются очень быстрые системы памяти.
Преимущества архитектуры CISC - простота микрокодирования новых инструкций - позволила разработчикам сделать машины CISC более совместимыми. По мере того как каждая становилась совершеннее, для реализации задач можно было использовать меньше количество инструкций.
Недостатки архитектуры CISC:
- Производительность машины замедляется из-за того, что время, затрачиваемое различными инструкциями, будет разным.
- Только 20 % существующих инструкций используется в типичном событии программирования, хотя в действительности существуют различные специализированные инструкции, которые часто не используются.
- Коды условий устанавливаются инструкциями CISC как побочный эффект каждой команды, которая требует времени для этой установки, и поскольку последующая команда изменяет биты кода состояния, компилятор должен проверить биты кода условия, прежде чем это произойдет.
Таким образом, можно подвести черту, что архитектура набора команд — это среда, обеспечивающая связь между программистом и оборудованием. Часть исполнения и копирование данных, удаление или редактирование — это пользовательские команды для конкретного вида архитектур микропроцессоров.