Современные десктопные процессоры архитектуры x86. Архитектура современных процессоров

  • 06.07.2019

Существуют процессоры различной архитектуры.

CISC (Complex Instruction Set Computing). Эта конфигурация для повышения гибкости и расширения возможностей предусматривает:

· увеличение числа различных по формату и длине команд;

· введение большого числа различных режимов адресации;

· сложную кодировку инструкции.

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

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

RISC (Reduced Instruction Set Computing). Процессор с сокращенным набором команд. Система команд имеет упрощенный вид. Все команды одинакового формата с простой кодировкой. Обращение к памяти происходит посредством команд загрузки и записи, остальные команды типа регистр-регистр. Команда, поступающая в CPU, уже разделена по полям и не требует дополнительной дешифрации.

Часть кристалла освобождается для включения дополнительных компонентов. Степень интеграции ниже, чем в предыдущем архитектурном варианте, поэтому при высоком быстродействии допускается более низкая тактовая частота. Команда меньше загромождает ОЗУ, CPU дешевле. Программной совместимостью указанные архитектуры не обладают. Отладка программ на RISC более сложна. Данная технология может быть реализована программно-совместимым с технологией CISC (например, суперскалярная технология).

Поскольку RISC-инструкции просты, для их выполнения нужно меньше логических элементов, что в конечном итоге снижает стоимость процессора. Но большая часть программного обеспечения сегодня написана и откомпилирована специально для CISC-процессоров фирмы Intel. Для использования архитектуры RISC нынешние программы должны быть перекомпилированы, а иногда и переписаны заново.

MISC (Multipurpose lnstruction Set Computer) сочетает преимущества вышерассмотренных архитектур. Элементная база состоит из двух частей, которые либо выполнены в отдельных корпусах, либо объединены. Основная часть – RISC CPU, расширяемый подключением второй части – ПЗУ микропрограммного управления. Система приобретает свойства CISC. Основные команды работают на RISC CPU, а команды расширения преобразуются в адрес микропрограммы. RISC CPU выполняет все команды за один такт, а вторая часть эквивалентна CPU со сложным набором команд. Наличие ПЗУ устраняет недостаток RISC, выраженный в том, что при компиляции с языка высокого уровня микрокод генерируется из библиотеки стандартных функций, занимающей много места в ОЗУ. Поскольку микропрограмма уже дешифрована и открыта для программиста, то времени выборки из ОЗУ на дешифрацию не требуется.

Введение. Компьютерная техника развивается быстрыми темпами. Вычислительные устройства становятся мощнее, компактнее, удобнее, однако в последнее время повышение производительности устройств стало большой проблемой. В 1965 году Гордон Мур (один из основателей Intel) пришёл к выводу, что «количество транзисторов, размещаемых на кристалле интегральной схемы, удваивается каждые 24 месяца».

Первые разработки в области создания многопроцессорных систем начались в 70-х годах. Длительное время производительность привычных одноядерных процессоров повышалась за счёт увеличения тактовой частоты (до 80% производительности определяла только тактовая частота) с одновременным увеличением числа транзисторов на кристалле. Фундаментальные законы физики остановили этот процесс: чипы стали перегреваться, технологический стал приближаться к размерам атомов кремния. Все эти факторы привели к тому, что:

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

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

Hyper-Threading Technology (HTT) или технология сверхпоточной обработки данных, позволяющая процессору на одном ядре выполнять несколько программных потоков. Именно HTT по мнению многих специалистов стала предпосылкой для создания многоядерных процессоров. Выполнение процессором одновременно несколько программных потоков называется параллелизмом на уровне потоков (TLP –thread-level parallelism).

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

1. Общие понятия

Архитектура в широком смысле – это описание сложной системы, состоящей из множества элементов.

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

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

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

Процессоры Intel, используемые в IBM – совместимых ПК, насчитывают более тысячи команд и относятся к процессорам с расширенной системой команд – CISC-процессорам (CISC –Complex Instruction Set Computing).

1.1 Высокопроизводительные вычисления. Параллелизм

Темпы развития вычислительной техники легко проследить: от ENIAC (первый электронный цифровой компьютер общего назначения) с производительностью в несколько тысяч операций в секунду до суперкомпьютера Tianhe-2 (1000 триллионов операций с плавающей запятой в секунду). Это означает, что скорость вычислений увеличилась в триллион раз за 60 лет. Создание высокопроизводительных вычислительных систем – одна из самых сложных научно-технических задач. При том, что скорость вычислений технических средств выросла всего лишь в несколько миллионов раз, общая скорость вычислений выросла в триллионы раз. Этот эффект достигнут за счёт применения параллелизма на всех стадиях вычислений. Параллельные вычисления требуют поиска рационального распределения памяти, надёжных способов передачи информации и координации вычислительных процессов.

1.2 Симметрическая мультипроцессорность

Symmetric Multiprocessing (сокращённо SMP) или симметрическое мультипроцессирование – это особая архитектура мультипроцессорных систем, в которой несколько процессоров имеют доступ к общей памяти. Это очень распространённая архитектура, достаточно широко используемая в последнее время.

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

В силу перечисленных выше особенностей, SMP-системы применяется исключительно в научной сфере, промышленности, бизнесе, крайне редко в рабочих офисах. Кроме высокой стоимости аппаратной реализации, такие системы нуждаются в очень дорогом и качественном программном обеспечении, обеспечивающем многопоточное выполнение задач. Обычные программы (игры, текстовые редакторы) не будут эффективно работать в SMP-системах, так как в них не предусмотрена такая степень распараллеливания. Если адаптировать какую-либо программу для SMP-системы, то она станет крайне неэффективно работать на однопроцессорных системах, что приводит к необходимости создание нескольких версий одной и той же программы для разных систем. Исключение составляет, например, программа ABLETON LIVE (предназначена для создания музыки и подготовка Dj-сетов), имеющая поддержку мультипроцессорных систем. Если запустить обычную программу на мультипроцессорной системе, она всё же станет работать немного быстрее, чем в однопроцессорной. Это связано с так называемым аппаратным прерыванием (остановка программы для обработки ядром), которое выполняется на другом свободном процессоре.

SMP-система (как и любая другая, основанная на параллельных вычислениях) предъявляет повышенные требования к такому параметру памяти, как полоса пропускания шины памяти. Это зачастую ограничивает количество процессоров в системе (современные SMP- системы эффективно работают вплоть до 16 процессоров).

Так как у процессоров общая память, то возникает необходимость рационального её использования и согласования данных. В мультипроцессорной системе получается так, что несколько кэшей работают для разделяемого ресурса памяти. Сache coherence (когерентность кэша) – свойство кэша, обеспечивающее целостность данных, хранящихся в индивидуальных кэшах для разделяемого ресурса. Данное понятие – частный случай понятия когерентности памяти, где несколько ядер имеют доступ к общей памяти (повсеместно встречается в современных многоядерных системах). Если описать данные понятия в общих чертах, то картина будет следующей: один и тот же блок данных может быть загружен в разные кэши, где данные обрабатываются по-разному.

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

SMP-системы являются подгруппой MIMD (multi in-struction multi data - вычислительная система со множественным потоком команд и множественным потоком данных) классификации вычислительных систем по Флинну (профессор Стэнфордского университета, сооснователь Palyn Associates). Согласно данной классификации, практически все разновидности параллельных систем можно отнести к MIMD.

Разделение многопроцессорных систем на типы происходит на основе разделения по принципу использования памяти. Этот подход позволил различить следующие важные типы

многопроцессорных систем – multiprocessors (мультипроцессорные системы с общей разделяемой памятью) и multicomputers (системы с раздельной памятью). Общие данные, используемы при параллельных вычислениях требуют синхронизации. Задача синхронизация данных – одна из самых важных проблем, и её решение при разработке многопроцессорных и многоядерных и, соответственно, необходимого программного обеспечения является приоритетной задачей инженеров и программистов. Общий доступ к данным может быть произведён при физическом распределении памяти. Этот подход называется неоднородным доступом к памяти (non-uniform memory access или NUMA).

Среди данных систем можно выделить:

  • Системы, где только индивидуальная кэш-память процессоров используется для представления данных (cache-only memory architecture).
  • Системы с обеспечением когерентности локальных кэшей для различных процессоров (cache-coherent NUMA).
  • Системы с обеспечением общего доступа к индивидуальной памяти процессоров без реализации на аппаратном уровне когерентности кэша (non-cache coherent NUMA).

Упрощение проблемы создания мультипроцессорных систем достигается использованием распределённой общей памяти (distributed shared memory), однако этот способ приводит к ощутимому повышению сложности параллельного программирования.

1.3 Одновременная многопоточность

Исходя из всех вышеперечисленных недостатков симметрической мультипроцессорности, имеет смысл разработка и развитие других способов повышения производительности. Если проанализировать работу каждого отдельного транзистора в процессоре, можно обратить внимание на очень интересный факт – при выполнении большинства вычислительных операций задействуются далеко не все компоненты процессора (согласно последним исследованиям – около 30% всех транзисторов). Таким образом, если процессор выполняет, скажем, несложную арифметическую операцию, то большая часть процессора простаивает, следовательно, её можно использовать для других вычислений. Так, если в данный момент процессор выполняет вещественные операции, то в свободную часть можно загрузить целочисленную арифметическую операцию. Чтобы увеличить нагрузку на процессор, можно создать спекулятивное (или опережающее) выполнение операций, что требует большого усложнения аппаратной логики процессора. Если в программе заранее определить потоки (последовательности команд), которые могут выполняться независимо друг от друга, то это заметно упростит задачу (данный способ легко реализуется на аппаратном уровне). Эта идея, принадлежащая Дину Тулсену (разработана им в 1955 г в университете Вашингтона), получила название одновременной многопоточности (simul-taneous multithreading). Позднее она была развита компанией Intel под названием гиперпоточности (hyper threading). Так, один процессор, выполняющий множество потоков, воспринимается операционной системой Windows как несколько процессоров. Использование данной технологии опять-таки требует соответствующего уровня программного обеспечения. Максимальный эффект от применения технологии многопоточности составляет около 30%.

1.4 Многоядерность

Технология многопоточности – реализация многоядерности на программном уровне. Дальнейшее увеличение производительности, как всегда, требует изменений в аппаратной части процессора. Усложнение систем и архитектур не всегда оказывается действенным. Существует обратное мнение: «всё гениальное – просто!». Действительно, чтобы повысить производительность процессора вовсе необязательно повышать его тактовую частоту, усложнять логическую и аппаратную составляющие, так как достаточно лишь провести рационализацию и доработку существующей технологии. Такой способ весьма выгоден – не нужно решать проблему повышения тепловыделения процессора, разработку нового дорогостоящего оборудования для производства микросхем. Данный подход и был реализован в рамках технологии многоядерности – реализация на одном кристалле нескольких вычислительных ядер. Если взять исходный процессор и сравнить прирост производительности при реализации нескольких способов повышения производительности, то очевидно, что применение технологии многоядерности является оптимальным вариантом.

Если сравнивать архитектуры симметричного мультипроцессора и многоядерного, то они окажутся практически идентичными. Кэш-память ядер может быть многоуровневой (локальной и общей, причём данные из оперативной памяти могут загружаться в кэш-память второго уровня напрямую). Исходя из рассмотренных достоинств многоядерной архитектуры процессоров, производители делают акцент именно на ней. Данная технология оказалась достаточно дешёвой в реализации и универсальной, что позволило вывести её на широкий рынок. Кроме того, данная архитектура внесла свои коррективы в закон Мура: «количество вычислительных ядер в процессоре будет удваиваться каждые 18 месяцев».

Если посмотреть на современный рынок компьютерной техники, то можно увидеть, что доминируют устройства с четырёх- и восьми- ядерными процессорами. Кроме того, производители процессоров заявляют, что в скором времени на рынке можно будет увидеть процессоры с сотнями вычислительных ядер. Как уже неоднократно говорилось ранее, весь потенциал многоядерной архитектуры раскрывается только при наличии качественного программного обеспечения. Таким образом, сфера производства компьютерного «железа» и программного обеспечения очень тесно связаны между собой.

В процессе работы процессор обрабатывает данные, которые находятся в его регистрах, в оперативной памяти и внешних буферных устройствах процессора. Всего существует 3 информационных потока, обрабатываемых процессором:

  1. Данные подлежащие обработки

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

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

    Используя вызовы функций операционной системы(прерывания DOS,APIWindowsи т.д.);

    Используя вызовы функций базовой системы ввода-вывода (BIOS);

    Непосредственно взаимодействуя с известным им «железом» - портами и памятью устройств или контроллеров интерфейсов.

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

Облик PC-совместимого компьютера в значительной степени определяется разработчиками из фирмMicrosoftиIntel. Для этих фирм стало уже традицией выпускать объемистый документ, диктующий разработчикам аппаратуры требования для получения желаемого логотипа “DesignedforMicrosoftWindows”.

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

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

    RISC – возможность выполнения меньшего количества команд, но с большой скоростью Команды состоящие из более простых команд, выполняются более производительно и с большой скоростью. Недостатки: сложные алгоритмы не всегда можно разбить на последовательность простых команд.

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

    MISC – промежуточный тип архитектуры. Имеет внутреннее ядро микропроцессора, выполненное поRISC-архитектуре и внешнее выполненное по структуреCISC.

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

Шины расширения является средствами подключения системного уровня: они позволяют адаптерам и контроллерам непосредственно использовать системные ресурсы PC– пространства памяти и ввода-вывода, прерывания, каналы прямого доступа к памяти. Как следствие, изготовителям модулей расширения приходится точно следовать протоколам шины, включая жесткие частотные и нагрузочные параметры, а также временные диаграммы. Отклонения приводят к несовместимости с некоторыми системными платами. Если при подключении к внешним интерфейсам это ведет к неработоспособности только самого устройства, то некорректное подключение к системной шине может блокировать работу всего компьютера. Следует также учитывать ограниченность ресурсовPC. Самые дефицитные из них – линии запросов прерываний, проблема прерываний, известная по шинеISA, так и не была радикально решена с переходом наPCI. Другой дефицит – каналы прямого доступа шиныISA, используемые и для прямого управления шиной, - в шинеPCIисчез. Доступное адресное пространство памяти и портов ввода-вывода, в котором было тесновато абонентам шиныISA, вPCIсущественно расширено. Проблемы распределения ресурсов на шинах решаются по-разному, но чаще всего применяется технологияPnP.

В современных настольных компьютерах основной шиной расширения является PCI, портAGPприсутствует практически повсеместно, шинаISA, несмотря на рекомендации отойти от нее, сохраняется как средство подключения старых карт расширений.

Выделяют 3 вида шин:

    Шина данных

    Адресная шина

    Шина команд

Шина данных – происходит копирование данных из оперативной памяти, в регистре процессора и наоборот. 64 разрядная.

Адресная шина – данные, которые передаются, трактуются как адреса ячеек оперативной памяти. С помощью этой шины процессор считывает адреса команд, которые надо выполнить, а также данные, которыми оперируют команды. 32-разрядная.

Шина команд (управления)– поставляет команды, которые выполняет процессором. Простые команды укладываются в один байт, более сложные в 2,3 байта. 32-разрядная.

Магистрально-модульный принцип построения компьютера

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

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

    EISA - 32-битная шина средней производительности, применяемая в основном для подключения контроллеров дисков и адаптеров локальных сетей в серверах. В настоящее время вытеснена шинойPCI. Раньше применялась в серверных платформах, где необходимо устанавливать множество дополнительных плат расширения. В слотEISAможно устанавливать картыISA(но не наоборот). Пропускная способность до 32-Мб-в секунду.

    VLB – локальная шина, которая представляет собой соединение процессора с оперативной памятью в обход основной магистральной шины. Эта шина работает на более высокой частоте и позволяет увеличить скорость передачи данных. Эта шина имеет интерфейс для подключения видео адаптера необходимого для подключения монитора в состав вычислительного комплекса. Пропускная способность до 130 Мб в секунду. Рабочая тактовая частота – 50 МГц. Зависит от типа устройств подключаемых к этой шине.

    PCI – стандарт подключения внешних устройств который введен дляPentium. По своей сути это интерфейс - локальные шины с разъемами для подключения внешних компонентов вычислительных систем. Тактовая частота - до 166 МГц и обеспечивает передачу информации со скоростью 264 Мб в секунду независимо от количества подключенных устройств. С введением этого стандарта появилась возможность для подключения технологии “Plug&Play”: после физического подключения устройства обеспечивается автоматическая конфигурация в составе вычислительной системы.

    FSB – шина, которая используется для связи процессора с оперативной памятью компьютера, эта шина работает на частоте 133-МГц и выше. Пропускная способность до 800 Мб/сек. Частота работы шиныFSBявляется основным параметром, который указывается в спецификации материнской платы.

    AGP – специальный шинный интерфейс, который предназначен для подключения видео адаптера. Этот интерфейс необходим в современных вычислительных устройствах, потому что параметры шиныPCIне отвечают требованиям видеоадаптера по быстродействию. Пропускная способность 1066 Мб/сек. В отличие от шиныPCIдля портаAGPвозникают проблемы совместимости карт акселераторов с типом системной платы (чипсета) и процессора даже при формальном соответствии их параметров.

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

Конфигурирование шин расширения предполагает в основном настройку их временных параметров:

    Для шины PCIзадается частота синхронизации, кроме того, сCMOSSetupдля этой шины могут определяться некоторые её возможные режимы – конкурентные обращения, слежение за палитрами.

    Для порта AGPзадается частота, поддерживаемые режимы, а также апертурыAGP.

    Для шин ISAиPCIиногда настройкамиCMOSSetupприходится распределять системные ресурсы (главным образом, линии запросов прерываний).

    Для шины ISAкроме частоты (которая должна быть порядка 8 МГц) задают время восстановления для 8- и 16-битных обращений к памяти и вводу-выводу. Неустойчивая работа адаптеров может потребовать замедления шиныISA, но в настоящее время понижение её производительности не сильно отражается на производительности компьютера в целом.

Типы архитектур процессоров

В процессе работы процессор обрабатывает данные, которые находятся в его регистрах, в оперативной памяти и внешних буферных устройствах процессора. Всего существует 3 информационных потока, обрабатываемых процессором:

  1. Команды
  2. Адреса
  3. Данные подлежащие обработки

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

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

  • Используя вызовы функций операционной системы(прерывания DOS, API Windows и т.д.);
  • Используя вызовы функций базовой системы ввода-вывода (BIOS);
  • Непосредственно взаимодействуя с известным им «железом» - портами и памятью устройств или контроллеров интерфейсов.

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

Облик PC-совместимого компьютера в значительной степени определяется разработчиками из фирм Microsoft и Intel. Для этих фирм стало уже традицией выпускать объемистый документ, диктующий разработчикам аппаратуры требования для получения желаемого логотипа “Designed for Microsoft Windows”.

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

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

  • RISC – возможность выполнения меньшего количества команд, но с большой скоростью Команды состоящие из более простых команд, выполняются более производительно и с большой скоростью. Недостатки: сложные алгоритмы не всегда можно разбить на последовательность простых команд.
  • CISC – процессоры универсальны и могут использоваться в любых компьютерных системах.
  • MISC – промежуточный тип архитектуры. Имеет внутреннее ядро микропроцессора, выполненное по RISC-архитектуре и внешнее выполненное по структуре CISC.

Шины.

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

Шины расширения является средствами подключения системного уровня: они позволяют адаптерам и контроллерам непосредственно использовать системные ресурсы PC – пространства памяти и ввода-вывода, прерывания, каналы прямого доступа к памяти. Как следствие, изготовителям модулей расширения приходится точно следовать протоколам шины, включая жесткие частотные и нагрузочные параметры, а также временные диаграммы. Отклонения приводят к несовместимости с некоторыми системными платами. Если при подключении к внешним интерфейсам это ведет к неработоспособности только самого устройства, то некорректное подключение к системной шине может блокировать работу всего компьютера. Следует также учитывать ограниченность ресурсов PC. Самые дефицитные из них – линии запросов прерываний, проблема прерываний, известная по шине ISA, так и не была радикально решена с переходом на PCI. Другой дефицит – каналы прямого доступа шины ISA, используемые и для прямого управления шиной, - в шине PCI исчез. Доступное адресное пространство памяти и портов ввода-вывода, в котором было тесновато абонентам шины ISA, в PCI существенно расширено. Проблемы распределения ресурсов на шинах решаются по-разному, но чаще всего применяется технология PnP.

В современных настольных компьютерах основной шиной расширения является PCI, порт AGP присутствует практически повсеместно, шина ISA, несмотря на рекомендации отойти от нее, сохраняется как средство подключения старых карт расширений.

Выделяют 3 вида шин:

  1. Шина данных
  2. Адресная шина
  3. Шина команд

Шина данных – происходит копирование данных из оперативной памяти, в регистре процессора и наоборот. 64 разрядная.

Адресная шина – данные, которые передаются, трактуются как адреса ячеек оперативной памяти. С помощью этой шины процессор считывает адреса команд, которые надо выполнить, а также данные, которыми оперируют команды. 32-разрядная.

Шина команд (управления)– поставляет команды, которые выполняет процессором. Простые команды укладываются в один байт, более сложные в 2,3 байта. 32-разрядная.

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

  • ISA – позволяет связать между собой все устройства в системном блоке, а так же обеспечить подключение новых устройств через стандартные слоты. Пропускная способность составляет 5,5 Мб в секунду. Сейчас используют только для подключения внешних устройств, которые не требуют большой пропускной способности (звук, модемы).
  • EISA - 32-битная шина средней производительности, применяемая в основном для подключения контроллеров дисков и адаптеров локальных сетей в серверах. В настоящее время вытеснена шиной PCI. Раньше применялась в серверных платформах, где необходимо устанавливать множество дополнительных плат расширения. В слот EISA можно устанавливать карты ISA(но не наоборот). Пропускная способность до 32-Мб-в секунду.
  • VLB – локальная шина, которая представляет собой соединение процессора с оперативной памятью в обход основной магистральной шины. Эта шина работает на более высокой частоте и позволяет увеличить скорость передачи данных. Эта шина имеет интерфейс для подключения видео адаптера необходимого для подключения монитора в состав вычислительного комплекса. Пропускная способность до 130 Мб в секунду. Рабочая тактовая частота – 50 МГц. Зависит от типа устройств подключаемых к этой шине.
  • PCI – стандарт подключения внешних устройств который введен для Pentium. По своей сути это интерфейс - локальные шины с разъемами для подключения внешних компонентов вычислительных систем. Тактовая частота - до 166 МГц и обеспечивает передачу информации со скоростью 264 Мб в секунду независимо от количества подключенных устройств. С введением этого стандарта появилась возможность для подключения технологии “Plug & Play”: после физического подключения устройства обеспечивается автоматическая конфигурация в составе вычислительной системы.
  • FSB – шина, которая используется для связи процессора с оперативной памятью компьютера, эта шина работает на частоте 133-МГц и выше. Пропускная способность до 800 Мб/сек. Частота работы шины FSB является основным параметром, который указывается в спецификации материнской платы.
  • AGP – специальный шинный интерфейс, который предназначен для подключения видео адаптера. Этот интерфейс необходим в современных вычислительных устройствах, потому что параметры шины PCI не отвечают требованиям видеоадаптера по быстродействию. Пропускная способность 1066 Мб/сек. В отличие от шины PCI для порта AGP возникают проблемы совместимости карт акселераторов с типом системной платы (чипсета) и процессора даже при формальном соответствии их параметров.
  • USB – стандарт универсальной последовательной шины, который определяет способ взаимодействия компьютера с современным периферийном оборудованием. Этот порт разрешает подключать 256 различных устройств с последовательным интерфейсом, причем устройства могут подключаться последовательно (цепочкой). Преимущество этого стандарта в том, что периферийное устройство можно подключать. Во время текущего сеанса работы без перезагрузки. Этот порт позволяет соединять компьютеры в сеть без использования специальной аппаратуры и программного обеспечения.

Конфигурирование шин расширения предполагает в основном настройку их временных параметров:

  • Для шины PCI задается частота синхронизации, кроме того, с CMOS Setup для этой шины могут определяться некоторые её возможные режимы – конкурентные обращения, слежение за палитрами.
  • Для порта AGP задается частота, поддерживаемые режимы, а также апертуры AGP.
  • Для шин ISA и PCI иногда настройками CMOS Setup приходится распределять системные ресурсы (главным образом, линии запросов прерываний).
  • Для шины ISA кроме частоты (которая должна быть порядка 8 МГц) задают время восстановления для 8- и 16-битных обращений к памяти и вводу-выводу. Неустойчивая работа адаптеров может потребовать замедления шины ISA, но в настоящее время понижение её производительности не сильно отражается на производительности компьютера в целом.

Статьи и Лайфхаки

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

А для тех, кому интересны подробности, мы расскажем, что же такое понятие «архитектура процессора» и какая она бывает в смартфоне или планшете.

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

Формальное определение

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

Как правило, именно по набору команд, точнее, по их количеству и сложности, и осуществляется классификация архитектур.

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

Первая из них, ARM, относится к так называемому типу RISC (reduced instruction set computer), для которого характерно повышение производительности за счет упрощения команд.

Кроме того, это весьма благотворно сказывается на энергоэффективности .

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


Вторая, x86 относится к другому типу – CISC (complex instruction set computer). В нем используются сложные команды, которые перед выполнением разбиваются на более простые.

Эта архитектура была больше известна по процессорам для ПК и ноутбуков, однако их более современные модели являются CISC совместимыми с RISC ядром. В чистом же виде x86 сохранилась в мобильных SoC Intel Atom.

Кто создает процессоры на основе ARM архитектуры

Если с x86 всё более-менее понятно, то с ARM у неискушенного пользователя возникает вопрос: а кто же ее разрабатывает? Этим занимается компания ARM Limited.

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

Вот только некоторые компании, которые пользуются лицензиями на ее разработки :

  • Qualcomm;
  • MediaTek;
  • Nvidia;
  • Intel;
  • Nintendo;
Знакомые всё лица, не правда ли?

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

Однако ARM Limited не ограничивается только процессорами для смартфонов, поэтому ядра ее разработки на основе архитектуры ARM можно встретить, например, в роутерах или принтерах. Там они имеют другую маркировку – Mx или Rx.

Ядра постоянно обновляются, появляются новые, а использование старых в новых моделях чипсетов прекращается. На момент написания статьи актуальными являлись :

  • Cortex-A15.
  • Cortex-A17.
  • Cortex-A53.
  • Cortex - A57.
  • Cortex-A72.
Следует сказать, что ядра Cortex отличаются между собой не только производительностью, но и энергопотреблением.

А потому, чтобы снизить «прожорливость» чипсета в целом, ARM Limited предложила новую технологию big.LITTLE, сущность которой закодирована в ее названии.


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

А как же x86?


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

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

Тем не менее, смартфоны на основе этого семейства SoC периодически появляются, и даже используют Android, например, ряд моделей ASUS ZenFone 5, появившихся в 2014 году.