Меню

Чем принято измерять мощность микропроцессора

Мощность микропроцессора

Почти все микропроцессоры изготовляются на кремниевых кристаллах. Длина стороны куба-кристалла равна 0,64 см. Такой кремниевый кристалл с содержащимися в нем электрическими схемами микропроцессора упаковывается в корпус так называемой интегральной схемы, имеющей от 16 до 64 выводов. Вот почему кристалл увидеть нельзя. Да в этом и нет необходимости, ибо его внешний вид мало что может сообщить нам о «мощности» заключенной в нем схемы микропроцессора.

Под «мощностью» микропроцессора понимают его способность обрабатывать данные. Ее принято оценивать тремя основными характеристиками: длиной слова данных, количеством адресуемых слов памяти и скоростью выполнения команд. Наиболее часто микропроцессоры сравнивают по
длине слов данных. Каждый микропроцессор оперирует данными, представляемыми словами фиксированной длины, ибо в этом
случае существенно упрощается построение процессора. В настоящее время типичными являются слова длиной 4,8,12 и 16 бит (разрядов). В ближайшее время широко доступными должны стать и микропроцессоры, оперирующие 32-битовыми словами. Рис. 1.5 иллюстрирует слова различной длины. Восьмибитовое слово используется столь широко, что даже получило специальное название байт. Благодаря распространенности байта даже 16-разрядные микропроцессоры часто имеют команды, обрабатывающие 16-битовые слова данных как пары байтов. На рис. 1.6 показано 16-битовое слово данных, составленное из двух 8-битовых слов: старшего байта (биты
с 8-го по 15-й) и младшего байта (биты с 0-го по 7-й). Часто байт используется для оценки некоторого объёма (пространства) в микро-ЭВМ. Например, иногда говорят, что программа микропроцессора занимает объем 4000 байт. В общем случае байт используют как некий «общий знаменатель» для измерения объема микропроцессора. Байт предпочитают слову данных, потому что размер
последнего меняется в зависимости от типа процессоров, байт же всегда равен 8 бит. При одном и том же числе байтов 8-разрядный процессор содержит в два раза меньше слов, чем 4-разрядный, и в два раза больше, чем 16-разрядный. Например, 4000 байт 8-разрядного микропроцессора равно его 4000 словам; это же количество байтов 4-разрядного микропроцессора равно его 8000 словам; а для 16-разрядного микропроцессора-2000 словам.

Первыми были разработаны 4-разрядные микропроцессоры, которые и сейчас еще находят применение. Четыре бита-это длина двоично-кодированного десятичного числа, т.е. числа в коде BCD (Binary-Coded Decimal). В калькуляторах, промышленных системах управления и некоторых других устройствах микропроцессору приходится иметь дело только с числами в коде BCD. В таких случаях использование 4-раэрядного микропроцессора — это идеальное решение. Другой причиной продолжающегося производства и применения 4-разрядных микропроцессоров является их чрезвычайно низкая стоимость.

Восьмиразрядные микропроцессоры также широко распространены и недороги. Они появились вслед за 4-разрядными микропроцессорами, во-первых, потому, что слово длиной 8 бит — это два 4-битовых слова, во-вторых, поскольку 8-битовое слово позволяет «упаковать» в нем два числа в коде
BCD, в-третьих, 8 бит позволяют представить символ (букву, цифру, знак) в коде
ASCII (American Standard Code for Information Interchange — Стандартный американский код для обмена информацией), широко используемом при обработке информации.

Большинство первых 16-разрядных микропроцессоров выпускались как стандартные 16-разрядные мини-ЭВМ в виде БИС. Примером могут служить микропроцессоры LSI-11 фирмы Digital Equipment, являющиеся копией мини-ЭВМ PDP-11, микропроцессоры DGMN фирмы Data General Micro Nova, родственные мини-ЭВМ Nova, микропроцессоры 9900 фирмы Texas Instruments, аналогичные мини-ЭВМ 990. Позже стали появляться 16-разрядные микропроцессоры, имеющие присущую только им архитектуру, которая не является копией архитектуры какой-либо мини-ЭВМ.

С каждым удваиванием длины слова микропроцессора последний становится более мощным. Увеличение длины слов вызвало совершенствование технологии БИС. Результатом этого явилось улучшение и других характеристик 16-разрядных микропроцессоров.

Другой «мерой» мощности микропроцессора является количество слов или байтов памяти, к которым он может адресоваться. И в этом случае длина слова данных играет важную роль. Длина слова данных в памяти — это, по существу, тот же параметр, что и длина слова данных, которыми оперирует микропроцессор. Так, 4-разрядный микропроцессор оперирует 4-битовыми словами данных, хранимыми в памяти.

Каждому слову в памяти присваивается номер его местоположения — так называемый адрес. Для извлечения слова из памяти ЭВМ обращается по соответствующему адресу. Адреса памяти начинаются с нуля и представляются в двоичной форме. ЭВМ разного типа имеют различные значения максимального адреса памяти. Чем больше значение максимального адреса памяти, тем больше вычислительная мощность микропроцессора. Табл. 1.1 демонстрирует способность адресации к памяти одного 4-битового слова: 4 бит позволяют
получить доступ к 16 различным словам памяти.

Таким образом, диапазон адресации 4-битового слова равен 16 словам. Диапазон адресации 8-битового слова равен 256 словам памяти, а 16-битового слова — 65536 словам. Конечно, возможность адресации к данным, находящимся в памяти, большинства процессоров не ограничена единственным словом, поэтому и диапазон адресации не ограничен длиной слова данных. Адреса памяти могут иметь длину 22 бит и более. Некоторые микропроцессоры обращаются к миллионам слов памяти.

В табл. 1.2 показаны диапазоны адресации для некоторых широко распространенных микропроцессоров, оперирующих словами длиной 4, 8 и 16 бит. Для 4-разрядных микропроцессоров обычными являются диапазоны адресации, равные 4096 и 8192 словам памяти. Для 8-разрядных микропроцессоров зачастую этот диапазон составляет 65536 слов Что же касается 16-разрядных микропроцессоров, то значения диапазона могут простираться от 32.768 до 4.194.304 слов. При работе с микропроцессорами часто
приходится ссылаться на подобные большие числа. Поскольку эти числа не круглые, их нелегко запомнить, а их произношение затруднительно. Поэтому предложены сокращенные обозначения этих чисел, упрощающие манипулирование ими. В табл. 1.2 эти сокращения указаны в круглых скобках.
Так, диапазон адресации, равный 4096 словам, есть диапазон 4К. Буква К происходит от приставки «кило», заимствованной из греческого языка и означающей «тысяча».

Читайте также:  Как узнать ампераж если известна мощность

Источник



Чем принято измерять мощность микропроцессора

– Методы оценки производительности

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

Обработка данных – одна из главных функций микропроцессора, включающая как вычисления, так и манипулирование данными. Схемы, выполняющие вычисления, образуют так называемое арифметико-логическое устройство (АЛУ), в результате работы которого данные изменяют свои значения. К функциям, выполняемым АЛУ, относятся сложение ( Add ), вычитание ( Subtract ), И ( And ), ИЛИ ( Or ), сравнение ( Compare ), положительное приращение ( Increment ) и отрицательное приращение ( Decrement ). Для выполнения этих операций АЛУ необходимы данные. Так, для выполнения сложения двух чисел, эти числа должны быть заблаговременно размещены в нужном месте. Но АЛУ не осуществляет перемещение данных ни до, ни после выполнения операции. Оно лишь выполняет операции над данными, обнаружив их в определенном месте. Но как АЛУ получает данные, подлежащие обработке?

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

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

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

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

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

Мощность микропроцессора

Под мощностью микропроцессора понимают его способность обрабатывать данные. Ее принято оценивать тремя основными характеристиками: длина слова данных, количество адресуемых слов памяти и скорость выполнения команд. Наиболее часто микропроцессоры сравнивают по длине слов данных. Каждый микропроцессор оперирует данными, представленными словами фиксированной длины, ибо в этом случае существенно упрощается построение процессора. Типичными являются слова длиной 4, 8, 12, 16, 32 бит (разрядов). 8-битовое слово используется столь широко, что получило специальное название «байт». Благодаря распространенности байта, например, 16-разрядные микропроцессоры имеют команды, обрабатывающие 16-битовые слова данных как пары байтов. Байт предпочитают слову данных потому, что размер последнего меняется в зависимости от типа процессора, байт же всегда равен 8 бит. При одном и том же числе байтов 8-разрядный процессор содержит в два раза меньше слов, чем 4-разрядный и в два раза больше, чем 16-разрядный.

Например, 4000 байт 8-разрядного микропроцессора равно его 4000 словам; это же количество байтов 4-разрядного микропроцессора равно его 8000 словам, а для 16-разрядного микропроцессора – 2000 словам.

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

Другой «мерой» мощности микропроцессора является количество слов или байтов памяти, к которым он может адресоваться. И в этом случае длина слова данных играет важную роль. Длина слова данных в памяти – это, по существу, тот же параметр, что и длина слова данных, которыми оперирует микропроцессор. Так, 16-разрядный микропроцессор оперирует 16-битовыми словами данных, хранимыми в памяти.

Каждому слову в памяти присваивается номер его местоположения – так называемый адрес. Для извлечения слова из памяти ЭВМ обращается по соответствующему адресу. Адреса памяти начинаются с нуля и представляются в двоичной форме. ЭВМ разного типа имеют различные значения максимального адреса памяти. Чем больше значение максимального адреса памяти, тем больше вычислительная мощность микропроцессора.

Читайте также:  Как определить мощность электровелосипеда

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

Методы оценки производительности

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

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

Однако в зависимости от того, что мы считаем, время может быть определено различными способами. Наиболее простой способ определения времени называется астрономическим временем, временем ответа (response time), временем выполнения (execution time) или прошедшим временем (elapsed time). Это задержка выполнения задания, включающая буквально все: работу процессора, обращения к диску, обращения к памяти, ввод/вывод и накладные расходы операционной системы. Однако при работе в мультипрограммном режиме во время ожидания ввода/вывода для одной программы, процессор может выполнять другую программу, и система не обязательно будет минимизировать время выполнения данной конкретной программы.

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

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

В большинстве современных процессоров скорость протекания процессов взаимодействия внутренних функциональных устройств определяется не естественными задержками в этих устройствах, а задается единой системой синхросигналов, вырабатываемых некоторым генератором тактовых импульсов, как правило, работающим с постоянной скоростью. Дискретные временные события называются тактами синхронизации (clock ticks), просто тактами (ticks), периодами синхронизации (clock periods), циклами (cycles) или циклами синхронизации (clock cycles). Разработчики компьютеров обычно говорят о периоде синхронизации, который определяется либо своей длительностью (например, 10 наносекунд), либо частотой (например, 100 МГц). Длительность периода синхронизации есть величина, обратная к частоте синхронизации.

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

Важной характеристикой, часто публикуемой в отчетах по процессорам, является среднее количество тактов синхронизации на одну команду — CPI (clock cycles per instruction). При известном количестве выполняемых команд в программе этот параметр позволяет быстро оценить время ЦП для данной программы.

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

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

Читайте также:  Содержание тепловой мощности что это

Одной из альтернативных единиц измерения производительности процессора (по отношению к времени выполнения) является MIPS — (миллион команд в секунду). Имеется несколько различных вариантов интерпретации определения MIPS.

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

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

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

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

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

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

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

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

Решение обеих проблем заключается в том, чтобы взять «каноническое» или «нормализованное» число операций с плавающей точкой из исходного текста программы и затем поделить его на время выполнения. На рисунке 1 показано, каким образом авторы тестового пакета «Ливерморские циклы», о котором речь пойдет ниже, вычисляют для программы количество нормализованных операций с плавающей точкой в соответствии с операциями, действительно находящимися в ее исходном тексте. Таким образом, рейтинг реальных MFLOPS отличается от рейтинга нормализованных MFLOPS, который часто приводится в литературе по суперкомпьютерам.

Таблица 1. Соотношение между реальными и нормализованными операциями с плавающей точкой, которым пользуются авторы «ливерморских циклов» для вычисления рейтинга MFLOPS

Источник