Почему процессор выполняет команду из ОЗУ, а не из внешней памяти

Обновлено: 21.11.2024

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

Связанные термины:

Скачать в формате PDF

Об этой странице

Компьютерные системы

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

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

На материнской плате установлен микропроцессор (ЦП), ОЗУ, ПЗУ BIOS, контроллеры шины и интерфейсы ввода-вывода.

ЦП взаимодействует с основными системными микросхемами через общий набор линий адресной шины и шины данных.

Микроконтроллер обеспечивает большинство функций обычной микропроцессорной системы на одном кристалле.

Вычислительные платформы

4.3.3 Конфигурации системной шины

Микропроцессорная система часто имеет более одной шины. Как показано на рис. 4.14, высокоскоростные устройства могут быть подключены к высокопроизводительной шине, а низкоскоростные — к другой шине. Небольшой логический блок, известный как мост, позволяет шинам соединяться друг с другом. Для этого есть три причины:

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

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

Мост может позволить шинам работать независимо, тем самым обеспечивая некоторый параллелизм в операциях ввода-вывода.

Рисунок 4.14. Система с несколькими шинами.

Автобусные мосты

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

Рисунок 4.15. UML-диаграмма состояния работы шинного моста.

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

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

Шина ARM

Поскольку ЦП ARM производится разными поставщиками, шина, предоставляемая вне чипа, может варьироваться от чипа к чипу. ARM создала отдельную спецификацию шины для однокристальных систем. Шина AMBA [ARM99A] поддерживает ЦП, память и периферийные устройства, интегрированные в систему на кремнии. Как показано на рис. 4.16, спецификация AMBA включает две шины. Высокопроизводительная шина AMBA (AHB) оптимизирована для высокоскоростной передачи и напрямую подключена к ЦП. Он поддерживает несколько высокопроизводительных функций: конвейерную обработку, пакетную передачу, разделенные транзакции и несколько мастеров шины.

Рисунок 4.16. Элементы шинной системы ARM AMBA.

Для подключения AHB к шине периферийных устройств AMBA (APB) можно использовать мост. Эта шина спроектирована так, чтобы быть простой и легкой в ​​реализации; он также потребляет относительно мало энергии. APB предполагает, что все периферийные устройства работают как ведомые, что упрощает логику, необходимую как для периферийных устройств, так и для контроллера шины. Он также не выполняет конвейерные операции, что упрощает логику шины.

Микрокомпьютерные шины и ссылки

Простые двухточечные переводы I.B

Все микропроцессорные системы имеют сильную иерархическую зависимость. Процессор (мастер) считывает и записывает информацию с каждым устройством, которое не может общаться напрямую. Для простого цикла записи (рис. 2а) требуется набор линий данных Di для информации (например, 8, 16 или 32 бита) и одна линия для синхронизации (строб записи WRS).Минимальное время установки tс и время хранения tч данных по отношению к WRS, а также время записи tw, зависит от технологии и статического или динамического (запускаемого фронтом) характера элементов хранения.

РИСУНОК 2. Простые циклы.

Для цикла чтения в ответ на запрос (чтение строба RDS) новые данные доступны с временем доступа ta (рис. 2b). Обычно коммуникационная шина находится в нейтральном неактивном состоянии, пока выбор не был выполнен, и можно определить время активации ton и время отключения твыкл.

Процессоры выполняют циклы чтения и записи. Линии данных Di могут быть мультиплексированы, если выходы имеют три состояния, когда они не выбраны. Две отдельные линии WRS и RDS, которые никогда не активируются одновременно, могут управлять передачей (рис. 2c). Этому решению отдают предпочтение несколько производителей, и оно использовалось, например, на ранней шине IBM-PC. Другим решением является наличие одной стробирующей линии ST и линии направления RD ― /WR (рис. 2г). Когда RD ― / WR активен, импульс на линии ST запускает передачу записи от ведущего к ведомому; в противном случае это цикл чтения.

Все эти циклы называются синхронными, поскольку цикл передачи выполняется за заданный промежуток времени, зависящий от продолжительности строба. Если ведомое устройство работает слишком медленно, данные могут быть потеряны; нужен сигнал обратной связи. Первое решение состоит в том, чтобы активировать сигнал только тогда, когда цикл необходимо замедлить (сигнал ОЖИДАНИЕ, рис. 3а). Лучшим решением, используемым на всех 32-битных микропроцессорах, является ожидание положительного подтверждения AK в ответ на строб ST (рис. 3b). Если ведомое устройство не может предоставить информацию, должно быть сгенерировано отрицательное подтверждение NK (часто называемая ошибка шины) либо ведомым устройством, либо специальной схемой. Сигналы на рис. 3 и 4 - активный высокий уровень. Они часто инвертируются (активный низкий уровень) по электрическим причинам.

РИСУНОК 3. Асинхронные (рукопожатные) протоколы.

РИСУНОК 4. Адресные переводы.

Оборудование PIC

1.1.1 Процессор

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

Рисунок 1.2. Выполнение микропроцессорной программы.

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

Декодирование инструкции — это аппаратный процесс, использующий блок логических вентилей для настройки линий управления процессорного блока и получения «операндов» инструкции. Операнды — это данные, с которыми нужно работать (или информация о том, где их найти), которые следуют большинству инструкций. Как правило, над операндами выполняется вычисление или логическая операция, а результат сохраняется в памяти или устанавливается действие ввода-вывода. Каждая полная инструкция может состоять из одного, двух или более байтов, включая сам код операции (инструкции) (код операции) и операнд/ы (один байт = 8 бит).

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

Обработка данных

5.7.1 Аппаратное обеспечение системы памяти

Обычная микропроцессорная система содержит отдельные микросхемы ЦП и памяти. Подобное расположение можно использовать, если нам нужна дополнительная память в системе PIC и нет недостатка в выводах ввода-вывода. Схема системы показана на рисунке 5.5 на основе PIC 16F877A. Для расширения памяти до 64 Кбайт используется пара традиционных чипов ОЗУ по 32 КБ. Часы и соединения для программирования не включены в схему, так как они не нужны для моделирования, но должны быть добавлены в любую аппаратную реализацию.

Рисунок 5.5. Параллельная система памяти.

Каждая микросхема ОЗУ имеет восемь контактов ввода-вывода данных (D0–D7) и пятнадцать адресных контактов (A0–A14), поэтому каждая ячейка содержит 8 бит, и всего 2 15 = 32 768 ячеек. Чтобы выбрать чип для доступа, вывод Chip Enable (!CE) должен иметь низкий уровень. Для записи местоположения предоставляется адресный код, данные представлены в D0–D7, а разрешение записи (!WE) имеет импульсный низкий уровень. Для чтения данных активируется выходной сигнал (!OE) (низкий уровень) в дополнение к разрешению чипа, после чего данные по адресу могут быть считаны обратно.

В демонстрационном проекте VSM (PARMEM2) порт C используется в качестве шины данных, а порт D — в качестве адресной шины. Чтобы уменьшить количество контактов ввода-вывода, необходимых для адресации внешней памяти, адресные защелки (U3 и U5) используются для хранения старшего байта 15-битного адреса (D7 не используется).

Две микросхемы памяти в тестовой системе выбираются поочередно с помощью декодера адреса путем переключения RB2. Это позволяет реализовать в прошивке различные схемы памяти, где микросхемы могут использоваться по одной или вместе для хранения 16-битных данных. Таким образом, память может быть организована как 64k×8 байт или 32k×16-битных слов. В тестовой программе доступ ко всем адресам осуществляется по очереди путем увеличения младшего адреса с 00 до FF для каждого старшего адреса (выбор страницы памяти) и использования одного и того же адреса для одновременной записи и чтения соответствующих адресов в обоих чипах.

Этот тип работы системы шин, когда выходы микросхем памяти подключены к одним и тем же линиям данных (порт C), зависит от наличия буферов с тремя состояниями на выходе микросхем ОЗУ, управляемых разрешающими входами. . Их можно переключить, чтобы разрешить ввод данных (!CE и !WE=низкий уровень), вывод данных (!CE и !OE=низкий уровень) или отключить (!CE и !OE=высокий уровень). В отключенном состоянии выходы ОЗУ фактически отключены от шины данных. Одновременно должен быть включен только один чип RAM, в противном случае на шине возникнет конкуренция, когда разные байты данных будут пытаться использовать шину одновременно.

Микропроцессоры, калькуляторы и компьютеры

Автобусы

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

Определение

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

Для современных компьютеров память не устанавливается отдельными микросхемами. Чипы собраны в блоки, называемые модулями памяти с двойным расположением выводов (DIMM), которые используют стандартное штекерное соединение. Из-за быстрого развития конструкции памяти эти модули DIMM выпускаются во многих версиях, поэтому при выборе памяти требуется большая осторожность, и если вы хотите обновить память в компьютере, вам следует свериться с таблицами, предоставленными дистрибьюторами, такими как Crucial или Kingston. . На момент написания статьи используемый в настоящее время тип модуля DIMM помечен как DDR3, а для платы DIMM требуется 240-контактный держатель.

При каждом из 65 536 возможных адресных номеров 16-битной системы каждая микросхема памяти будет давать доступ к 1 биту, и этот доступ обеспечивается через линии шины данных. Комбинация адресной шины и шины данных обеспечивает адресацию и поток данных, но для определения направления данных требуется еще одна линия.

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

Обзор

Микросхемы памяти подключены к линиям шины, и, поскольку микросхема довольно часто хранит 1-битные блоки, может потребоваться одна микросхема памяти для каждого бита полного байта. В современных компьютерах микросхемы собраны в модули DIMM, которые можно легко подключить к компьютеру. В дополнение к линиям адреса и данных память должна использовать сигналы чтения/записи для определения направления потока данных, а также сигналы включения/выключения, позволяющие изолировать всю память, когда адресная шина используется для других целей.< /p>

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

Рисунок 13.3. Подключение простого микропроцессора к микросхеме ПЗУ 8К

Рисунок 13.4. Подключение 16 КБ ОЗУ и 16 КБ ПЗУ, чтобы каждый блок памяти мог использовать разные номера адресов

Нижние 14 адресных линий, от A0 до A13, подключены к обоим наборам микросхем, представленных здесь отдельными блоками. Линия A14, однако, подключена к контактам включения микросхемы, которые, как следует из названия, включают или отключают микросхемы. В течение первых 16 КБ адресов линия A14 имеет низкий уровень, поэтому ПЗУ включено (представляя, что контакт включения активен при низком уровне), а ОЗУ отключено. Для следующих 16К адресов в строках от A0 до A13 строка A14 имеет высокий уровень, поэтому ПЗУ отключено, а ОЗУ включено. Это позволяет одним и тем же 14 адресным линиям осуществлять адресацию как ПЗУ, так и ОЗУ. Такая простая схема возможна только тогда, когда и ПЗУ, и ОЗУ занимают одинаковый объем памяти и требуют одинакового количества адресных строк.

Обзор

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

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

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

Какие существуют типы внутренней памяти?

В основном существует два вида внутренней памяти: ПЗУ и ОЗУ.

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

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

Какие существуют типы оперативной памяти?

Существует два основных типа ОЗУ: динамическое ОЗУ (DRAM) и статическое ОЗУ (SRAM).

  • DRAM (произносится как DEE-RAM) широко используется в качестве основной памяти компьютера. Каждая ячейка памяти DRAM состоит из транзистора и конденсатора в интегральной схеме, а бит данных хранится в конденсаторе. Поскольку транзисторы всегда имеют небольшую утечку, конденсаторы будут медленно разряжаться, что приведет к утечке хранящейся в них информации; следовательно, DRAM необходимо обновлять (с новым электронным зарядом) каждые несколько миллисекунд, чтобы сохранить данные.
  • SRAM (произносится как ES-RAM) состоит из четырех-шести транзисторов. Он хранит данные в памяти до тех пор, пока в систему подается питание, в отличие от DRAM, которую необходимо периодически обновлять.Таким образом, SRAM быстрее, но и дороже, что делает DRAM более распространенной памятью в компьютерных системах.
Какие распространенные типы DRAM?

Synchronous DRAM (SDRAM) «синхронизирует» скорость памяти с тактовой частотой процессора, чтобы контроллер памяти знал точный такт, когда запрошенные данные будут готовы. Это позволяет ЦП выполнять больше инструкций в данный момент времени. Типичная SDRAM передает данные со скоростью до 133 МГц.

Rambus DRAM (RDRAM) получил свое название от компании Rambus, которая его создала. Он был популярен в начале 2000-х годов и в основном использовался для игровых устройств и видеокарт со скоростью передачи данных до 1 ГГц.

SDRAM с двойной скоростью передачи данных (DDR SDRAM) – это тип синхронной памяти, пропускная способность которого почти вдвое превышает пропускную способность SDRAM с одинарной скоростью передачи данных (SDR), работающей на той же тактовой частоте, за счет использования метода, называемого "двойной накачкой", который позволяет передавать данных о переднем и заднем фронтах тактового сигнала без увеличения тактовой частоты.

На смену DDR1 SDRAM пришли DDR2 , DDR3 и, совсем недавно, DDR4 SDRAM. Хотя модули работают по одним и тем же принципам, они не имеют обратной совместимости. Каждое поколение обеспечивает более высокую скорость передачи и более высокую производительность. Например, новейшие модули DDR4 обеспечивают высокую скорость передачи данных 2133/2400/2666 и даже 3200 МТ/с.


Рисунок 1. Типы компьютерной памяти.

Какие существуют типы пакетов DRAM?

Однорядный модуль памяти (SIMM)
Модули SIMM широко использовались с конца 1980-х по 1990-е годы и в настоящее время устарели. Обычно они имели 32-разрядную шину данных и были доступны в двух физических типах — 30- и 72-контактном.

Какие распространенные типы модулей DIMM?

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

Тип модуля DIMM

Описание

Небуферизованные модули DIMM
(UDIMM)

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

Полностью буферизованные модули DIMM
(FB-DIMM)

Обычно используемые в качестве основной памяти в системах, требующих большой емкости, таких как серверы и рабочие станции, FB-DIMM используют чипы расширенного буфера памяти (AMB) для повышения надежности, поддержания целостности сигнала и улучшения методов обнаружения ошибок для уменьшения программных ошибок. Шина AMB разделена на 14-битную шину чтения и 10-битную шину записи. Благодаря выделенной шине чтения/записи операции чтения и записи могут выполняться одновременно, что повышает производительность. Меньшее количество контактов (69 контактов на последовательный канал по сравнению с 240 контактами на параллельных каналах) приводит к меньшей сложности разводки и позволяет создавать платы меньшего размера для компактных систем с малым форм-фактором.

Зарегистрированные модули DIMM
(RDIMM)

Также известная как "буферизованная" память, часто используется в серверах и других приложениях, требующих стабильности и надежности. RDIMM имеют встроенные регистры памяти (отсюда и название «зарегистрированные»), расположенные между памятью и контроллером памяти. Контроллер памяти буферизует команды, адресацию и тактовый цикл, направляя инструкции в выделенные регистры памяти вместо прямого доступа к DRAM. В результате инструкции могут выполняться примерно на один такт ЦП дольше, но буферизация снижает нагрузку на контроллер памяти ЦП.

Загрузка модулей DIMM с уменьшенным объемом
(LR-DIMM)

Используйте технологию Isolation Memory Buffer (iMB), которая снижает нагрузку на контроллер памяти за счет буферизации каналов данных и адресов. В отличие от регистра модулей RDIMM, которые буферизуют только команды, адресацию и тактовый цикл, микросхема iMB также буферизует сигналы данных. Чип iMB изолирует всю электрическую нагрузку, включая сигналы данных чипов DRAM на модулях DIMM, от контроллера памяти, поэтому контроллер памяти видит только iMB, а не чипы DRAM. Затем буфер памяти обрабатывает все операции чтения и записи в чипы DRAM, повышая как емкость, так и скорость. (Источник: изолирующий буфер памяти)

Таблица 1. Распространенные типы модулей DIMM.

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

Малогабаритные модули DIMM (SO-DIMM) представляют собой альтернативу модулям DIMM меньшего размера. В то время как стандартные модули DIMM DDR4 имеют длину около 133,35 мм, модули SO-DIMM почти вдвое меньше обычных модулей DIMM и имеют длину 69,6 мм, что делает их идеальными для ультрапортативных устройств. Оба обычно имеют высоту 30 мм, но могут быть доступны в формате очень низкого профиля (VLP) с высотой 20,3 мм или сверхнизкого профиля (ULP) с высотой от 17,8 до 18,2 мм.Другим типом модулей DIMM малого форм-фактора является Mini-RDIMM, длина которого составляет всего 82 мм по сравнению со 133 мм обычных модулей RDIMM.

Продукты ATP DRAM

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

Стремясь обеспечить долговечность продуктов, ATP также продолжает предлагать устаревшие модули DRAM в определенных форм-факторах в соответствии с лицензионным соглашением с Micron Technology, Inc. Для получения информации об устаревших продуктах SDRAM ATP посетите сайт Legacy SDRAM .

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

В таблице ниже представлены продукты DDR4 DRAM компании ATP.

Тип модуля DIMM

Размер (Д x В мм) / Изображение

DDR4
RDIMM ECC

Стандартный: 133,35 x 31,25

Очень низкий профиль (VLP): 133,35 x 18,75

DDR4
UDIMM ECC

133,35 x 31,25

DDR4
SO-DIMM ECC

69,6 x 30

DDR4
Mini-DIMM
Небуферизованный ECC

Очень низкий профиль (VLP): 80 x 18,75

Таблица 2. Продукты ATP DDR4 DRAM. (Также доступны версии без ECC.)

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

Тип модуля DIMM

Размер (Д x В мм)

DDR4

VLP (очень низкий профиль)

DDR3

133,35 x 18,28–18,79

ULP (сверхнизкий профиль)

133,35 x 17,78–18,28

DDR2

133,35 x 18,28–18,79

ГДР

133,35 x 18,28–18,79

SDRAM

133,35 x 25,4–43,18

Таблица 3. Сравнение размеров DDR4/DDR3/DDR2/DDR.

Для получения подробного списка, спецификаций и описаний продуктов DRAM компании ATP посетите веб-сайт ATP или обратитесь к дистрибьютору/представителю ATP в вашем регионе.

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

Почему так важна компьютерная память (ОЗУ)?

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

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

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

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

Что такое скорость и задержка ОЗУ?

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

Что делает ОЗУ (память)?

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

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

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

Что использует оперативную память?

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

Нужно ли вам обновить оперативную память?

Являетесь ли вы геймером, дизайнером или просто хотите ускорить свой персональный компьютер, увеличение объема оперативной памяти — это простой и легкий способ повысить производительность вашей системы. Чтобы определить правильный тип памяти для вашего компьютера, используйте Crucial® Advisor™ или System Scanner. Эти инструменты помогут вам определить, какие модули памяти совместимы с вашим компьютером, а также выбрать параметры, соответствующие вашим требованиям к скорости и бюджету.

© Micron Technology, Inc., 2017. Все права защищены. Информация, продукты и/или технические характеристики могут быть изменены без предварительного уведомления. Ни Crucial, ни Micron Technology, Inc. не несут ответственности за упущения или ошибки в типографике или фотографии. Micron, логотип Micron, Crucial и логотип Crucial являются товарными знаками или зарегистрированными товарными знаками Micron Technology, Inc. Все другие товарные знаки и знаки обслуживания являются собственностью соответствующих владельцев.

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

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

Центральный процессор (ЦП)

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

Ранние компьютеры имели только один ЦП и могли выполнять только одну задачу за раз.

Сегодня мы сохраняем термин ЦП, но теперь он относится к процессорному пакету на типичной материнской плате. На рис. 1 показан стандартный пакет процессоров Intel.

Рис. 1. Процессор Intel Core i5 (Джуд МакКрени, Wikimedia Commons, CC BY-SA 4.0).

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

Как работает процессор

Давайте рассмотрим ЦП более подробно. На рис. 2 представлена ​​концептуальная схема гипотетического ЦП, позволяющая упростить визуализацию компонентов. ОЗУ и системные часы заштрихованы, поскольку они не являются частью ЦП и показаны только для ясности. Кроме того, никакие связи между тактовым генератором ЦП и блоком управления и компонентами ЦП не используются. Достаточно сказать, что сигналы от тактового генератора и блока управления являются неотъемлемой частью любого другого компонента.

Рисунок 2. Упрощенная концептуальная схема типичного процессора.

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

Арифметико-логическое устройство

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

Например, при добавлении двух чисел одно число помещается в регистр A, а другое — в регистр B. АЛУ выполняет сложение и помещает результат в аккумулятор. Если операция логическая, сравниваемые данные помещаются в регистры ввода. Результат сравнения, 1 или 0, помещается в аккумулятор. Независимо от того, является ли это логической или арифметической операцией, содержимое накопителя затем помещается в ячейку кэша, зарезервированную программой для результата.

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

Регистр инструкций и указатель

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

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

Кэш

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

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

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

Наш простой ЦП имеет три уровня кэша. Уровни 2 и 3 предназначены для прогнозирования того, какие данные и программные инструкции потребуются в следующий раз, для перемещения этих данных из ОЗУ и перемещения их как можно ближе к ЦП, чтобы они были готовы, когда это необходимо. Эти размеры кэша обычно варьируются от 1 МБ до 32 МБ в зависимости от скорости и предполагаемого использования процессора.

Кэш уровня 1 расположен ближе всего к центральному процессору. В нашем процессоре есть два типа кеша L1. L1i — это кэш инструкций, а L1d — кэш данных. Размер кэша уровня 1 обычно составляет от 64 КБ до 512 КБ.

Блок управления памятью

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

Часы процессора и блок управления

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

Оперативная память (ОЗУ)

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

Как это работает

ЦП работают по циклу, который управляется блоком управления и синхронизируется с часами ЦП. Этот цикл называется циклом инструкций ЦП и состоит из ряда компонентов выборки/декодирования/выполнения. Инструкция, которая может содержать статические данные или указатели на переменные данные, извлекается и помещается в регистр инструкций. Команда декодируется, и любые данные помещаются в регистры данных A и B. Инструкция выполняется с использованием регистров A и B, а результат помещается в аккумулятор. Затем ЦП увеличивает значение указателя инструкции на длину предыдущего и начинает заново.

Базовый цикл инструкций ЦП выглядит следующим образом.

Рисунок 3. Базовый цикл инструкций ЦП.

Потребность в скорости

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

Ускорение цикла инструкций

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

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

Рисунок 4. Цикл инструкций ЦП с перекрытием.

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

Тем не менее, это мощная стратегия повышения производительности ЦП.

Гиперпоточность

Еще одна стратегия повышения производительности ЦП — гиперпоточность. Гиперпоточность заставляет одно ядро ​​процессора работать как два процессора, предоставляя два потока данных и инструкций. Добавление второго указателя инструкций и регистра инструкций к нашему гипотетическому ЦП, как показано на рис. 5, заставляет его функционировать как два ЦП, выполняя два отдельных потока инструкций в течение каждого командного цикла. Кроме того, когда один поток выполнения останавливается в ожидании данных (опять же, инструкции также являются данными), второй поток выполнения продолжает обработку. Каждое ядро, реализующее гиперпоточность, эквивалентно двум ЦП по способности обрабатывать инструкции.

Рис. 5. Концептуальная схема ЦП с технологией Hyper-Threading.

Помните, что это очень упрощенная схема и объяснение нашего гипотетического процессора. Реальность гораздо сложнее.

Дополнительная терминология

Я столкнулся с множеством различных терминов ЦП. Чтобы более точно определить терминологию, давайте рассмотрим сам ЦП с помощью команды lscpu.

Процессор Intel, показанный выше, представляет собой корпус, который подключается к одному разъему на материнской плате. Пакет процессора содержит шесть ядер. Каждое ядро ​​поддерживает гиперпоточность, поэтому каждое из них может одновременно запускать два потока, что в сумме дает 12 ЦП.

  • Ядро. Ядро — это наименьшая единица физического оборудования, способная выполнять задачу обработки. Он содержит одно АЛУ и один или два набора вспомогательных регистров. Второй набор регистров и поддерживающих схем обеспечивает гиперпоточность. Одно или несколько ядер можно объединить в один физический пакет.
  • ЦП. Логический аппаратный блок, способный обрабатывать один поток выполнения. Современное использование термина центральный процессор относится к общему количеству потоков, которые процессорный пакет может выполнять одновременно. Одноядерный процессор, не поддерживающий гиперпоточность, эквивалентен одному процессору. В этом случае ЦП и ядро ​​являются синонимами. Процессор Hyper-Threading с одним ядром является функциональным эквивалентом двух процессоров. Процессор с поддержкой технологии Hyper-Threading с восемью ядрами функционально эквивалентен 16 процессорам.
  • Пакет – физический компонент, содержащий одно или несколько ядер, как показано на рис. 1 выше.
  • Процессор. 1) Устройство, которое обрабатывает инструкции программы для обработки данных. 2) Часто используется как синоним пакета.
  • Сокет. Иногда используется как синоним пакета, но более точно относится к физическому сокету на материнской плате, в который вставляется корпус процессора.

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

Обратите внимание, что указанный выше процессор имеет два кэша уровня 1 по 512 КиБ каждый: один для инструкций (L1i) и один для данных (L1d). Кэш уровня 1 находится ближе всего к ЦП, и он ускоряет работу, разделяя инструкции и данные на этом этапе. Кэши уровня 2 и уровня 3 больше, но инструкции и данные сосуществуют в каждом из них.

Что все это значит?

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

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

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

Все современные компьютеры, от смарт-часов и планшетов до суперкомпьютеров, поддерживают настоящую многозадачность с несколькими процессорами. Наличие нескольких процессоров позволяет компьютерам выполнять множество задач одновременно. Каждый ЦП выполняет свои функции одновременно со всеми остальными ЦП. Восьмиъядерный процессор с технологией Hyper-Threading (т. е. 16 ЦП) может одновременно выполнять 16 задач.

Заключительные мысли

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

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

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

Читайте также: