Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Аверянов Современная информатика 2011

.pdf
Скачиваний:
113
Добавлен:
16.08.2013
Размер:
6.43 Mб
Скачать

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

Микросхемы памяти выпускаются в виде ЗУПВ (RAM → → DRAM, SRAM) – запоминающего устройства с произвольной выборкой. RAM – random access memory, этот вид памяти реализуется в виде двух типов микросхем: DRAM* – динамическая память, обладающая высокой степенью интеграции, низкой стоимостью и потребляемой мощностью, но сравнительно малым быстродействием. Эта разновидность микросхем используется в качестве основной (Main Memory) или оперативной памяти компьютера. Их название связано с тем, что конденсаторы, входящие в состав микросхем нуждаются в постоянной подзарядке (примерно 15 раз в секунду), чем и объясняется их низкое быстродействие. Большое количество разновидностей динамической памяти связано со стремлением соблюсти баланс между увеличением производительности, надежности и стоимости оперативной памяти. При этом могут применяться дополнительные технологии, например технология ЕСС, позволяющая диагностировать и исправлять ошибки, возникающие при работе с оперативной памятью под действием солнечной радиации и других неблагоприятных факторов окружающей среды. Выбор типа микросхем зависит от многих факторов, включая производительность шин, к которым они подключаются. SRAM** – статическая память, наиболее быстрая, но более дорогая и с большим потреблением энергии, применяется в качестве внутренней памяти ЦП, а также в кэш-памяти. Основным недостатком оперативной памяти является то, что при пропадании напряжения данные в ней также пропадают. Поэтому для долговременного хранения применяются микросхемы постоянных запоминающих устройств (ПЗУ). Для того, чтобы в ПЗУ можно было повторно записать произвольные данные, предназначена процедура стирания памяти, в результате которой запрограммированные биты становятся снова незапрограммированными. Как правило, стирание памяти происходит электрически, либо при помощи ультрафиолетовой

*DRAM – Dynamic RAM.

**SRAM – Static RAM.

41

лампы. Память, которую можно стереть, называется перепрограм-

мируемым ППЗУ.

В англоязычной литературе приняты следующие обозначения видов ПЗУ:

PROM – однократно программируемая память (programmable read only memory). Как правило, программирование битов производится воздействием повышенного напряжения, в результате которого пережигаются соответствующие «перемычки» внутри микросхемы памяти. Стирание памяти данного типа невозможно. Так же очень часто применяется аббревиатура ОТР – one time programming, т.е. память, которую можно запрограммировать только один раз;

EPROM – стираемая программируемая память (erasable programmable read only memory). Память, которую можно стереть при помощи ультрафиолетовой лампы. Существенным недостатком такого вида памяти является то, что некоторые ячейки памяти могут самопроизвольно стереться под действием солнечной радиации;

EEPROM – электрически стираемая программируемая память

(electrically erasable programmable read only memory). Память, сти-

рание которой происходит электрическим путем. Одной из разновидностью EEPROM является флэш-память (Flash memory), повсеместно применяемая в данный момент в качестве так называемых USB-флэшек и карт памяти для цифровых фотоаппаратов и мобильных телефонов. Принципиальное отличие флэш-памяти от других микросхем EEPROM заключается в том, что программирование и стирание в них производится не побайтно, а большими блоками, называемыми страницами памяти (от 256 байт до нескольких десятков килобайт). Такой механизм несколько усложняет логику работы с микросхемой памяти, однако позволяет существенно увеличить ее объем и скорость записи.

Основные характеристики памяти – быстродействие и производительность.

Быстродействие памяти определяется временем выполнения операций записи или считывания данных. Основным параметром любых элементов памяти является минимальное время доступа и длительность цикла обращения. Время доступа (access time) определяется как задержка появления действительных данных на выхо-

42

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

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

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

Размер (объем, емкость) памяти, минимальной единицей памяти является бит (bit binary digit), – один двоичный разряд; в качестве единицы емкости памяти в настоящее время принят байт (byte – слог), который равен восьми двоичным разрядам (1 byte = 8 bit), 1024 байт = 1 Кбайт (килобайт), 1024 Кбайт = 1 Мбайт(мегабайт), 1024 Мбайт= 1 Гбайт (гигабайт), 1024 Гбайт = 1 Тбайт (терабайт), 1024 Тбайт = 1 Пбайт (петабайт).

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

43

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

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

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

Наиболее распространены запоминающие устройства двух типов:

стековая память (или магазинная) – одномерная память, представляющая набор ячеек, где могут быть записаны фрагменты программ, считывание которых осуществляется по указателю в порядке, обратном записи;

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

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

Центральный процессор (CPU – central processing unit) – ос-

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

К основным функциям ЦП могут быть отнесены следующие: обращение к ОП, декодирование и выполнение команд про-

граммы в указанном порядке; передача данных из оперативной памяти во внешние устройства

ииз внешних устройств в оперативную память;

44

ответы на запросы внешних устройств; синхронизация работы всех элементов вычислительной маши-

ны.

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

1.Традиционный машинный уровень. Он доступен пользователю

иопределяется набором из нескольких десятков или сотен сравнительно простых команд. По функциональному назначению можно выделить следующие категории команд: арифметические, логические, запись в память и загрузка регистров процессора из памяти, команды ввода-вывода и др. Любая пользовательская программа, подлежащая выполнению, находится в памяти и содержит вышеперечисленные команды. Структура машинного слова памяти, в которой размещается команда, состоит из двух частей (рис. 2.3): код операции (команда) и адресная часть, указывающая адреса ячеек (слов), необходимых для выполнения данной команды. В зависимости от количества адресов, располагающихся в адресной части, компьютеры могут быть трех-, двух-, одно- и безадресными.

Код операции

Поле адреса

 

 

Формат команд

±Целое число

Формат данных (INTEGER)

±

Порядок

Мантисса

 

 

 

Формат данных с плавающей точкой (REAL)

Символ

Символ

 

 

 

Формат символьных данных

Рис. 2.3. Структура машинного слова

45

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

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

2. Микропрограммный уровень. Принцип микропрограммиро-

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

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

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

46

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

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

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

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

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

Это вынужденное время ожидания (а внешние устройства работают намного медленнее ЦП) может быть использовано для вы-

полнения другой задачи (рис. 2.4). Задача А в момент t1 обращает-

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

47

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

A

 

ЦП

 

 

 

 

 

ЦП

t

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

В

 

 

ЦП

 

 

 

 

 

 

 

 

 

 

 

 

t

 

 

 

 

 

 

 

 

 

С

 

 

 

 

 

 

 

 

 

 

 

 

ЦП

 

 

 

 

 

 

 

 

 

 

 

 

t0

t1

t2

t3

 

t

Рис. 2.4. Мультизадачный режим работы ЦП

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

программный счетчик PC – регистр, содержащий адрес той ячейки ОП, из которой будет выбираться следующая команда;

регистр команды IR – регистр, принимающий команду из основной памяти и хранящий ее во время дешифрования и выполнения;

48

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

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

Генератор синхронизации

Устройство управления

Программный счетчик – PC

Регистр команд – IR

Cлово состояния процессора –

PSW

Указатель стека – SP

Внутренняя

 

Рабочие

память или

 

 

регистры

стек

 

 

 

 

 

 

памятьУправляющая

АЛУ

Рис. 2.5. Блок-схема ЦП

2.Управляющая память. Хранит набор микрокодов (микрокоманд), реализующих систему команд компьютера.

3.Рабочие регистры. Во всех компьютерах имеется несколько регистров двух видов:

49

аккумуляторы (или арифметические регистры), служащие «блокнотом» при арифметических и логических операциях;

регистры адреса, используемые для адресации данных и команд

восновной памяти.

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

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

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

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

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

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

50