Устройство управления процессор память
Инструмент проще, чем машина. Зачастую инструментом работают руками, а машину приводит в действие паровая сила или животное.
Компьютер тоже можно назвать машиной, только вместо паровой силы здесь электричество. Но программирование сделало компьютер таким же простым, как любой инструмент.
Процессор — это сердце/мозг любого компьютера. Его основное назначение — арифметические и логические операции, и прежде чем погрузиться в дебри процессора, нужно разобраться в его основных компонентах и принципах их работы.
Поток инструкций
Современные процессоры могут параллельно обрабатывать несколько команд. Пока одна инструкция находится в стадии декодирования, процессор может успеть получить другую инструкцию.
Однако такое решение подходит только для тех инструкций, которые не зависят друг от друга.
Если процессор многоядерный, это означает, что фактически в нём находятся несколько отдельных процессоров с некоторыми общими ресурсами, например кэшем.
Не так давно на рынке появились процессоры семейства AMD64, в основе которых лежит новое ядро ревизии E. Это ядро, изготавливаемое с использованием технологического процесса с нормами производства 90 нм, а также с применением технологий SOI (Silicon on Insulator) и DSL (Dual Stress Liner) нашло применение сразу в нескольких линейках процессоров от AMD. Сферы применения ядра ревизии E весьма различны. Его можно встретить как в процессорах Athlon 64 и Athlon 64 FX, где оно обозначается кодовыми именами Venice и San Diego; в двухъядерных CPU семейства Athlon 64 X2, где его называют Toledo или Manchester; а также в процессорах Sempron, где это ядро именуется Palermo.
Разрабатывая и доводя до стадии массового производства новые ядра, компания AMD стремится не только к повышению предельных тактовых частот своих процессоров, но и к улучшению их характеристик. Ядро ревизии E стало очередным этапом на этом пути: с его внедрением процессоры Athlon 64 и их производные приобрели новые свойства. Наиболее заметным усовершенствованием стало появление в процессорах AMD поддержки инструкций SSE3, которые имелись в продуктах конкурента со времени начала выпуска CPU с 90 нм ядром Prescott. Кроме этого, традиционной доводке подвергся и интегрированный контроллер памяти.
Тесты показали, что поддержка SSE3 команд даёт очень немного. Приложений, эффективно использующих эти инструкции, на сегодняшний день крайне мало, да и сам набор SSE3 вряд ли может претендовать на звание полноценного подмножества команд.
Поэтому, на этот раз мы решили уделить большее внимание изменениям, внесённым в интегрированный контроллер памяти процессоров с ядром ревизии E. Следует заметить, что в более ранних ядрах своих CPU AMD не только увеличивала производительность контроллера памяти, но и расширяла его совместимость с различными комбинациями различных модулей памяти. Ядро ревизии D, известное в первую очередь благодаря процессорам Athlon 64 с кодовым именем Winchester, в этом плане явилось своеобразным рубежом. Во-первых, в процессорах Winchester по сравнению с предшественниками несколько увеличилась производительность контроллера памяти. Во-вторых, процессоры с ядром Winchester стали способны работать с модулями DDR400 SDRAM, установленными сразу во все четыре слота DIMM на материнской плате. Казалось бы, оптимум достигнут, однако, инженеры AMD посчитали иначе. Процессоры AMD с ядром ревизии E располагают ещё более совершенным контроллером памяти.
Куда же были направлены усилия инженеров на этот раз? Естественно, определенные оптимизации были вновь сделаны для увеличения производительности котроллера памяти. Так, тесты процессоров с ядром Venice продемонстрировали их небольшое превосходство над аналогами с ядром Winchester. Кроме того, снова улучшилась совместимость. Процессоры AMD с ядром ревизии E стали способны нормально функционировать при установке в систему нескольких модулей памяти различной организации и объёма, что, несомненно, значительно упрощает выбор комплектующих для дальнейшего апгрейда. Также, процессоры, в основе которых лежит новое ядро, теперь могут без проблем работать и с четырьмя двухсторонними модулями DDR400 SDRAM. Ещё одним интересным свойством процессоров с ядром ревизии E стало появление новых делителей, задающих частоту памяти. Благодаря этому новые CPU от AMD теперь безо всяких оговорок поддерживают DDR SDRAM, работающую на частотах, превышающих 400 МГц.
реклама
В этом материале мы рассмотрим некоторые из перечисленных выше особенностей интегрированного контроллера памяти ядра ревизии E, ибо, как нам кажется, они того явно заслуживают.
Интегрированный контроллер памяти процессоров Athlon 64 – достаточно капризный узел. Различные неприятные моменты, связанные с его функционированием стали выясняться с момента появления процессоров с поддержкой двух каналов памяти. Выяснилось, что из-за достаточно высокой электрической нагрузки, которую накладывают модули памяти на контроллер, Athlon 64 имеет определённые проблемы при работе с четырьмя модулями DIMM. Так, при установке в систему на базе Athlon 64 четырёх модулей памяти, CPU может сбрасывать их частоту, увеличивать тайминги или не работать вообще.
Впрочем, справедливости ради следует отметить, что серверный аналог Athlon 64, Opteron, подобных проблем лишён благодаря использованию более дорогих регистровых модулей. Однако, применение таких модулей в настольных системах неоправданно, и поэтому пользователям необходимо мириться с некоторыми ограничениями, возникающими при установке в систему более двух модулей DIMM.
Впрочем, постепенно описанные проблемы всё же решаются. В то время как старые процессоры Athlon 64, основанные на ядрах, производимых по 130 нм технологии, не могли работать с четырьмя двухсторонними модулями DDR400 SDRAM на частоте 400 МГц вообще и снижали их частоту до 333 МГц, современные процессоры с 90 нм ядрами предлагают пользователям несколько лучшие варианты. Уже в ядре ревизии D, известном нам по кодовому имени Winchester, стала возможна работа с четырьмя двухсторонними модулями DDR400 SDRAM, при условии установки тайминга Command Rate в 2T.
Во многих процессорах, особенно некоторых поколений назад от Intel, мы могли видеть аббревиатуру IMC, выгравированную на IHS. В настоящее время они больше не делают, но это не значит, что они перестали использовать его, и на самом деле, сегодня это является одним из компонентов процессоров, который имеет большее значение , В связи с этим, вы знаете, что такое ИМТ процессора? В этой статье мы расскажем вам, и мы объясним, как это работает и какие типы есть.
IMC на самом деле является одной из тех частей процессора, которые обычно не принимаются во внимание, и это то, что мы склонны смотреть только на ядра, скорость и, самое большее, на кеш-память, которую они имеют. Но это внутренний компонент процессоров, который чрезвычайно важен, и тогда вы поймете, почему.
Память (ОЗУ)
ОЗУ (оперативное запоминающее устройство, англ. RAM) — это большая группа этих самых регистров, соединённых вместе. Память у такого хранилища непостоянная и данные оттуда пропадают при отключении питания. ОЗУ принимает адрес ячейки памяти, в которую нужно поместить данные, сами данные и флаг записи/чтения, который приводит в действие триггеры.
Прим. перев. Оперативная память бывает статической и динамической — SRAM и DRAM соответственно. В статической памяти ячейками являются триггеры, а в динамической — конденсаторы. SRAM быстрее, а DRAM дешевле.
Что такое ИМТ процессора
IMC означает «интегрированный контроллер памяти» или встроенный контроллер памяти. Контроллер памяти может быть отделен или интегрирован в другую микросхему, так что интегрированные - это те, которые, как вы предположите, интегрированы в кристалл процессора. Раньше контроллер памяти находился на материнская плата, но уже довольно давно используется только IMC, поскольку он позволяет процессору управлять памятью более быстрым и прямым образом.
Таким образом, IMC - это цифровая схема, которая контролирует поток данных, которые приходят и уходят между самим процессором и Оперативная память. То, что он интегрирован в процессор, позволяет управлять ОЗУ напрямую и быстрее, чем когда контроллеры памяти были на материнской плате.
Перед AMD K8s (выпущен в 2003 году), процессоры AMD имели контроллер памяти в своем северном мосту, но в следующих поколениях AMD впервые интегрировала его в сам процессор . Intel впервые сделала то же самое для процессоров Nehalem в 2008 году, и после этого оба производителя используют только IMC. Кстати, ARM Процессоры с архитектурой также во всех случаях используют контроллер памяти, встроенный в процессор.
Двоичный декодер и его роль в связи с RAM
В оперативной памяти адресация передается в двух циклах: сначала отправляется строка, к которой необходимо получить доступ, а затем столбец, а не одновременно.
По этой причине обращение к оперативной памяти происходит в два этапа.
Контакты для связи с RAM
- адресация штифты : Обычно обозначается от A0 до AN, где N - количество контактов и равно количеству бит адресации, которое всегда равно 2 ^ N.
- Контакты данных : Здесь данные передаются в оперативную память и из нее.
- Запись разрешена: Если вывод активен, передача данных осуществляется в память, запись, с другой стороны, если она не активна, то в сторону процессора, чтение.
Если наша система имеет несколько микросхем памяти RAM, то первые биты адресации используются для выбора, к какой из микросхем памяти мы хотим получить доступ в модуле памяти DIMM. Также были случаи, когда адрес и контакты данных совпадали. Это связано с тем, что адресация и доступ к данным не выполняются одновременно.
Но чтобы понять, как работает адресация, мы должны рассмотреть основную часть электроники - двоичный декодер.
Тактирование процессора
Быстродействие компьютера определяется тактовой частотой его процессора. Тактовая частота — количество тактов (соответственно и исполняемых команд) за секунду.
Частота нынешних процессоров измеряется в ГГц (Гигагерцы). 1 ГГц = 10⁹ Гц — миллиард операций в секунду.
Чтобы уменьшить время выполнения программы, нужно либо оптимизировать (уменьшить) её, либо увеличить тактовую частоту. У части процессоров есть возможность увеличить частоту (разогнать процессор), однако такие действия физически влияют на процессор и нередко вызывают перегрев и выход из строя.
Устройство управления
Устройство управления (УУ) помогает процессору контролировать и выполнять инструкции. УУ сообщает компонентам, что именно нужно делать. В соответствии с инструкциями он координирует работу с другими частями компьютера, включая второй основной компонент — арифметико-логическое устройство (АЛУ). Все инструкции вначале поступают именно на устройство управления.
Существует два типа реализации УУ:
- УУ на жёсткой логике (англ. hardwired control units). Характер работы определяется внутренним электрическим строением — устройством печатной платы или кристалла. Соответственно, модификация такого УУ без физического вмешательства невозможна.
- УУ с микропрограммным управлением (англ. microprogrammable control units). Может быть запрограммирован для тех или иных целей. Программная часть сохраняется в памяти УУ.
УУ на жёсткой логике быстрее, но УУ с микропрограммным управлением обладает более гибкой функциональностью.
Выполнение инструкций
Инструкции хранятся в ОЗУ в последовательном порядке. Для гипотетического процессора инструкция состоит из кода операции и адреса памяти/регистра. Внутри управляющего устройства есть два регистра инструкций, в которые загружается код команды и адрес текущей исполняемой команды. Ещё в процессоре есть дополнительные регистры, которые хранят в себе последние 4 бита выполненных инструкций.
Ниже рассмотрен пример набора команд, который суммирует два числа:
- LOAD_A 8 . Это команда сохраняет в ОЗУ данные, скажем, . Первые 4 бита — код операции. Именно он определяет инструкцию. Эти данные помещаются в регистры инструкций УУ. Команда декодируется в инструкцию load_A — поместить данные 1000 (последние 4 бита команды) в регистр A .
- LOAD_B 2 . Ситуация, аналогичная прошлой. Здесь помещается число 2 ( 0010 ) в регистр B .
- ADD B A . Команда суммирует два числа (точнее прибавляет значение регистра B в регистр A ). УУ сообщает АЛУ, что нужно выполнить операцию суммирования и поместить результат обратно в регистр A .
- STORE_A 23 . Сохраняем значение регистра A в ячейку памяти с адресом 23 .
Вот такие операции нужны, чтобы сложить два числа.
Все данные между процессором, регистрами, памятью и I/O-устройствами (устройствами ввода-вывода) передаются по шинам. Чтобы загрузить в память только что обработанные данные, процессор помещает адрес в шину адреса и данные в шину данных. Потом нужно дать разрешение на запись на шине управления.
У процессора есть механизм сохранения инструкций в кэш. Как мы выяснили ранее, за секунду процессор может выполнить миллиарды инструкций. Поэтому если бы каждая инструкция хранилась в ОЗУ, то её изъятие оттуда занимало бы больше времени, чем её обработка. Поэтому для ускорения работы процессор хранит часть инструкций и данных в кэше.
Если данные в кэше и памяти не совпадают, то они помечаются грязными битами (англ. dirty bit).
Что такое память DRAM?
тип памяти, используемой для RAM как системное ОЗУ, так и видеопамять или видеопамять. Память DRAM или 1T-DRAM . В этом типе памяти каждый бит хранится в комбинация конденсатора и транзистора , а не в нескольких транзисторах, таких как SRAM, отсюда и название 1T-DRAM.
Вся память RAM, используемая в настоящее время в ПК: DDR4, GDDR6, HBM2e, LPDDR4 и т. Д., Является памятью типа DRAM, в то время как внутренняя память процессоров, кеши регистров и блокноты относятся к типу SRAM.
Указанная комбинация конденсатора и транзистора называется Bitcell , когда конденсатор битовой ячейки заряжен, интерпретируется, что информация, содержащаяся в этой битовой ячейке, равна 1, когда она не заряжена, она интерпретируется как 0.
Битовые ячейки организованы в матрицу, в которой контакты адресации используются для доступа к ним следующим образом:
- Первая половина битов выбирает строку, к которой мы хотим получить доступ
- Вторая половина битов адресации содержит столбец, к которому мы хотим получить доступ,
Для этого между матрицей битовых ячеек и шиной адресации существует двоичный декодер, который позволяет выбрать соответствующую битовую ячейку.
Зачем процессору связь с ОЗУ?
Стадия, на которой ЦП берет следующую инструкцию для выполнения из ОЗУ, называется «выборкой» и является одним из трех этапов, составляющих цикл команд: Fetch-Decode-Execute, о котором мы поговорим только в этой статье о первой, а о второй два будут оставлены на другой раз, так как оперативная память не вмешивается в них, кроме как для записи результата обратно.
- Счетчик команд: ПК указывает на следующую строку памяти, где находится следующая инструкция процессора. Его значение увеличивается на 1 каждый раз, когда завершается полный цикл команд или когда команда перехода изменяет значение программного счетчика.
- Регистр адреса памяти: MAR копирует содержимое ПК и отправляет его в RAM через адресные контакты ЦП, которые соединены с адресными контактами RAM.
- Регистр данных памяти : Если инструкция прочитана, то ОЗУ будет передавать через свою шину данных содержимое адреса памяти, на который указывал MAR.
- Реестр инструкций: Инструкция копируется в регистр инструкций, откуда блок управления расшифровывает ее, чтобы знать, как выполнить инструкцию.
Инструкции по декодированию
Каждый процессор имеет набор регистров и инструкций или ISA что мы можем понимать как язык процессора, поэтому в зависимости от каждого процессора двоичный код может означать одно или другое . Но во всех них инструкция всегда разделен на две части: код операции и данные . Код операции - это код инструкции , каждая инструкция всегда соответствует одному и тому же коду операции в ISA
Предположим, у нас есть компьютер с 3-битным кодом операции, поэтому он дает 2 ^ 3 инструкции, через декодер из n бит мы можем сгенерировать вывод из 2 ^ n бит, в этом случае 3 бита генерируют 8 разных путей в соответствии с типом инструкции, которая должна быть выполнена, так или иначе будет использоваться для ее решения на этапе выполнения инструкции.
Не все инструкции будут проходить через одни и те же блоки и одни и те же процессы, не все из них имеют конвейер одинаковой длины, и, следовательно, они не все будут обрабатываться одинаково, потому что не одно и то же выполнять сумму, чем выполнять переместить данные.
Варианты существующего ИМТ
Конечно, вы заметили, что спецификации процессоров почти всегда включают определение типа и скорости ОЗУ, с которым они совместимы, точно в зависимости от ИМТ, который они включают. Поэтому существуют разные варианты контроллера памяти, и некоторые из них вы обязательно узнаете сразу.
С одной стороны, есть Контроллеры DDR что может быть (обычно) двойной канал и четырехъядерный канал , Разница заключается в том, что в них память RAM разделена на 2 или 4 отдельных канала, каждый с прямой шиной к контроллеру памяти. Это наиболее используемые на ПК, и те, которые мы все знаем.
С другой стороны, у нас есть контроллеры с именем FBM ( Полностью буферизованная память ) поведение которого отличается от предыдущего тем, что в каждом модуле памяти находится буферное устройство (называемое FB-DIMM ), который использует последовательный канал передачи данных к контроллеру (вместо параллельного), уменьшая количество рельсов, необходимых для связи, за счет увеличения задержки.
Наконец, мы имеем Флэш-память контроллеры, используемые такими устройствами, как флеш-накопители или твердотельные накопители. Флэш-память по своей природе медленнее, чем DRAM, и, как правило, становится непригодной для использования после ряда циклов записи, но ей все равно нужен собственный контроллер памяти для связи с остальной системой.
Если бы нам нужно было определить, из каких частей состоит процессор, то самым безопасным было бы, чтобы в 99% случаев мы проводили разделительную линию между двумя частями, с одной стороны, исполнительными модулями и всеми элементами, необходимыми для его работы. и для С другой стороны, блок управления, который отвечает за захват, но особенно за декодирование каждой инструкции, для этого мы должны понимать цикл команд.
Чтобы понять, как блок управления работает , мы должны сначала понять как работает цикл каждой инструкции , Где инструкция сначала записывается из памяти и помещается в регистр команд, следующий шаг - расшифровка инструкции блоком управления , который после завершения своей работы отправляет инструкцию в исполнительный блок, соответствующий этой инструкции.
Банки памяти
Данные в ОЗУ не хранятся последовательно , но в разных банках на одном чипе, каждый из банков содержит массив битовых ячеек , но если мы хотим передать, например, n битов данных, нам понадобится n массивов битовых ячеек, каждый из которых подключен к выводу шины данных.
Использование несколько банков , в той же микросхеме памяти, позволяет выбрать несколько бит одновременно с одним доступом к памяти , поскольку все банки разделяют адресацию . Таким образом, если у нас есть 8 банков памяти, выбор конкретной битовой ячейки приведет к одновременной передаче данных в 8 банков памяти и из них.
Стандартный размер банков в памяти RAM составляет 8 бит, поэтому максимальный объем памяти при адресации всегда считается как 2 ^ n байтов. Фактически, это 16-, 32-, 64-битные шины и т. Д. Они передают данные нескольких последовательных адресов памяти, начиная с первого.
Типы блоков управления
- Проводные блоки управления используются в очень простых процессорах , так как в них нельзя изменить таблицу регистров и инструкций так как все пути данных, ранее подключенные фиксированным образом, найдены , в проводном блоке управления инструкции всегда будут иметь одинаковую производительность, и они не смогут добавлять новые или оптимизировать свою работу.
- В случае микропрограммные блоки управления, используется процессор, отвечающий за выполнение всех функций блока управления , это позволяет оптимизировать способ выполнения инструкций и даже добавлять новые инструкции.
Из-за сложности микропрограммного блока управления они выполняют декодирование инструкций намного медленнее, поэтому в зависимости от типа инструкции, когда дело доходит до опробования каждой инструкции, используется тот или иной тип блока управления.
Если вы когда-нибудь задумывались, что это за процесс, за которым следует процессор и Оперативная память что он назначил для получения данных и инструкций, которые он должен выполнить, то вам повезло, потому что в этой статье мы собираемся объяснить, что это за процесс связи между двумя наиболее важными элементами ПК, с которыми общаются разное.
В этой статье мы не будем объяснять, какой тип оперативной памяти лучше or спецификации каждого , но процессор связывается с ним, чтобы иметь возможность выполнять программы.
Причина почему мы используем внешнюю память потому, что количество транзисторов, необходимых для хранения информации, не поместится в пространстве процессора , поэтому необходимо использовать память RAM, внешнюю по отношению к процессору, для хранения инструкций и данных, которые они будут выполнять.
Каковы задачи блока управления?
Блок управления - незаменимая часть, которая непрерывно и прозрачно выполняет следующий перечень работ:
- Он координирует перемещение и порядок данных, которые перемещаются внутри и вне процессора, а также между различными его частями.
- Интерпретируйте инструкции.
- Он управляет различными ALU и исполнительными модулями процессора.
- Он не только отвечает за захват и декодирование инструкций, но и за запись результатов в регистры, кеши или в соответствующий адрес RAM.
Таким образом, блок управления является настоящим теневым мозгом внутри ЦП, который отвечает за то, чтобы все части ЦП получали правильные данные и всегда выполняли правильные инструкции.
Хранение информации — регистры и память
Как говорилось ранее, процессор выполняет поступающие на него команды. Команды в большинстве случаев работают с данными, которые могут быть промежуточными, входными или выходными. Все эти данные вместе с инструкциями сохраняются в регистрах и памяти.
Связь между RAM и CPU
- Выберите столбец (Адресация)
- Выберите строку (Адресация)
- Передача данных.
Для этого используется ряд специальных контактов, один из которых мы уже видели, и это запись Enable, а два других следующие:
- Строб доступа к колонке: Этот вывод активируется, когда мы указываем оперативной памяти, что указываем столбец, к которому хотим получить доступ.
- Строб доступа к строке :: Этот вывод активируется, когда мы указываем оперативной памяти, что указываем строку, к которой хотим получить доступ.
Обе операции можно резюмировать следующим образом:
- Операция чтения очень проста, для этого у вас должен быть неактивен вывод WE, чтобы указать, что данные идут из ОЗУ в процессор, указать строку, а затем столбец, чтобы информация поступала к процессору из ОЗУ памяти. .
- Операция записи несколько отличается, для этого вывод WE должен быть активен, но данные передаются не после выбора столбца данных, а после выбора строки и одновременно с выбором столбца, в котором находятся данные.
Благодаря этому вы уже можете получить приблизительное представление о том, как работает связь между процессором и его оперативной памятью.
Как работает контроллер памяти?
Контроллеры памяти содержат логику, необходимую для чтения и записи в ОЗУ и «обновления» DRAM. Без этих постоянных «обновлений» DRAM потерял бы содержащиеся в нем данные, так как содержащиеся в них конденсаторы теряют заряд за доли секунды (не более 64 миллисекунды в соответствии со спецификацией JEDEC ).
Чтение и запись в ОЗУ осуществляется путем выбора адресов данных строки и столбца DRAM в качестве входов для схемы мультиплексора, где демультиплексор в DRAM использует преобразованные входы для выбора правильного расположения в памяти и возврата данных, которые возвращаются обратно через мультиплексор для консолидации с целью уменьшения ширины шины, необходимой для работы.
Некоторые контроллеры памяти также имеют свою собственную систему исправления ошибок, которая может быть дополнена той, которая включает в себя множество модулей памяти ОЗУ (что хорошо, потому что в некоторых случаях она освобождает их, а в других удваивает коррекцию ошибок размера).
Регистры
Регистр — минимальная ячейка памяти данных. Регистры состоят из триггеров (англ. latches/flip-flops). Триггеры, в свою очередь, состоят из логических элементов и могут хранить в себе 1 бит информации.
Прим. перев. Триггеры могут быть синхронные и асинхронные. Асинхронные могут менять своё состояние в любой момент, а синхронные только во время положительного/отрицательного перепада на входе синхронизации.
По функциональному назначению триггеры делятся на несколько групп:
- RS-триггер: сохраняет своё состояние при нулевых уровнях на обоих входах и изменяет его при установке единице на одном из входов (Reset/Set — Сброс/Установка).
- JK-триггер: идентичен RS-триггеру за исключением того, что при подаче единиц сразу на два входа триггер меняет своё состояние на противоположное (счётный режим).
- T-триггер: меняет своё состояние на противоположное при каждом такте на его единственном входе.
- D-триггер: запоминает состояние на входе в момент синхронизации. Асинхронные D-триггеры смысла не имеют.
Для хранения промежуточных данных ОЗУ не подходит, т. к. это замедлит работу процессора. Промежуточные данные отсылаются в регистры по шине. В них могут храниться команды, выходные данные и даже адреса ячеек памяти.
Принцип действия RS-триггера
Команды (инструкции)
Команды — это фактические действия, которые компьютер должен выполнять. Они бывают нескольких типов:
- Арифметические: сложение, вычитание, умножение и т. д.
- Логические: И (логическое умножение/конъюнкция), ИЛИ (логическое суммирование/дизъюнкция), отрицание и т. д.
- Информационные: move , input , outptut , load и store .
- Команды перехода: goto , if . goto , call и return .
- Команда останова: halt .
Прим. перев. На самом деле все арифметические операции в АЛУ могут быть созданы на основе всего двух: сложение и сдвиг. Однако чем больше базовых операций поддерживает АЛУ, тем оно быстрее.
Инструкции предоставляются компьютеру на языке ассемблера или генерируются компилятором высокоуровневых языков.
В процессоре инструкции реализуются на аппаратном уровне. За один такт одноядерный процессор может выполнить одну элементарную (базовую) инструкцию.
Группу инструкций принято называть набором команд (англ. instruction set).
Два основных компонента процессора
Арифметико-логическое устройство
Это устройство, как ни странно, выполняет все арифметические и логические операции, например сложение, вычитание, логическое ИЛИ и т. п. АЛУ состоит из логических элементов, которые и выполняют эти операции.
Большинство логических элементов имеют два входа и один выход.
Ниже приведена схема полусумматора, у которой два входа и два выхода. A и B здесь являются входами, S — выходом, C — переносом (в старший разряд).
Схема арифметического полусумматора
Читайте также: