|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция |
Информатика
2,3. Функциональные компьютерный систем 2,3.1, Элемент памяти Основой любого компьютера является ячейка памяти, которая может хранить данные или команды. Основой любой ячейки памяти является функциональное устройство, которое может по команде принять или выдать один двоичный бит, а, главное, сохранять его сколь угодно долго. Такое устройство называется триггер, или защелка. Оно строится на основе базового набора логических схем. На рис. 2.3 показана схема триггера. Он собран на четырех логических элементах: два элемента «логическое НЕ» (схемы 1 и 2) и два элемента «логическое И-НЕ» (схемы 3 и 4). Два последних элемента представляют собой комбинацию логических элементов «логическое И» и «логическое НЕ». Такой элемент на входе выполняет операцию логического умножения, результат которой инвертируется на выходе логическим отрицанием. Триггер имеет два выхода ^ и ^. Сигнал на выходе ^ соответствует значению, хранящемуся в триггере. Вы-
Рис. 2.3. Схема триггера в состоянии хранения бита информации ход <2 используется при необходимости получить инверсное значение сигнала. Входы 5 и К предназначены для записи в триггер одного бита со значением ноль или единица. Рассмотрим состояние триггера во время хранения бита. Пусть в триггер записан ноль (на выходе (? низкий уровень сигнала). Единица на выходе схемы 4 и единица на выходе схемы 1 поддерживают состояние выхода схемы 3 в состоянии нуля (1л1 = 0). В свою очередь, ноль на выходе схемы 3 поддерживает единицу на выходе схемы 4 ( О л 1 = 1). Такое состояние может поддерживаться триггером бесконечно долго. Для записи в триггер единицы подадим на вход 5 единицу (рис. 2.4). На выходе схемы 7 получится ноль, который обеспечит на выходе схемы 3 единицу. С выхода схемы 3 единица поступит на вход
схемы 4, на выходе которой значение изменится на ноль (1 л 1 = 0). Этот ноль на входе схемы 3 будет поддерживать сигнал на ее выходе в состоянии единицы. Теперь можно снять единичный сигнал на входе 5, на выходе схемы 3 все равно будет высокий уровень. Те. триггер сохраняет записанную в него единицу. Единичный сигнал на входе 5 необходимо удерживать некоторое время, пока на выходе схемы 4 не появится нулевой сигнал. Затем вновь на входе 5 устанавливается нулевой сигнал, но триггер поддерживает единичный сиг- нал на выходе (?, т.е. сохраняет записанную в него единицу. Точно так же, подав единичный сигнал на вход К, можно записать в триггер ноль. Условное обозначение триггера показано на рис. 2.5.
К ^ Рис. 2.5. Условное обозначение триггера 2.3,2, Регистры Триггер служит основой для построения функциональных узлов, способных хранить двоичные числа, осуществлять их синхронную параллельную передачу и запись, а также выполнять с ними некоторые специальные операции. Такие функциональные узлы называются регистрами. Регистр представляет собой набор триггеров, число которых определяет разрядность регистра. Разрядность регистра кратна восьми битам: 8-, 16-, 32-, 64-разрядные регистры. Кроме этого в состав регистра входят схемы управления его работой. На рис. 2.6 приведена схема регистра хранения. Регистр содержит п триггеров, образующих п разрядов. Перед записью информации регистр обнуляется подачей единичного сигнала на вход «Сброс». Запись информации в регистр производится синхронно подачей единичного сигнала «Запись». Этот сигнал открывает входные вентили (схемы «логическое И»), и на тех входах хг.. хя, где присутствует единичный сигнал, произойдет запись единицы. Чтение информации из регистра также про- изводится синхронно, подачей сигнала «Чтение» на выходные вентили. Обычно регистры содержат дополнительные схемы, позволяющие организовать такие операции, как сдвиг информации (регистры сдвига) и подсчет поступающих единичных сигналов (регистры счетчики).
& п & п \—Уп ^ п 00 0 «Запись» «Сброс» «Чтение» Рис. 2.6. п-разрядный регистр хранения с синхронной записью и чтением 2.3.3, Устройства обработки инсрормаиии Для обработки информации компьютер должен иметь устройство, выполняющее основные арифметические и логические операции над числовыми данными. Такие устройства называются арифметико-логическими устройствами (АЛУ). В основе АЛУ лежит устройство, реализующее арифметическую операцию сложения двух целых чисел. Остальные арифметические операции реализуются с помощью представления чисел в специальном дополнительном коде. Сумматор АЛУ представляет собой многоразрядное устройство, каждый разряд которого представляет собой схему на логических элементах, выполняющих суммирование двух одноразрядных двоичных чисел с учетом переноса из предыдущего младшего разряда. Результатом является сумма входных величин и перенос в следующий старший разряд. Такое функциональное устройство называется одноразрядным, полным сумматором. Его условное обозначение показано на рис. 2.7.
Рис. 2.7. Условное обозначение полного одноразрядного сумматора Рассмотренные выше функциональные элементы являются основными при построении схем компьютерных систем. 2.4. Приниип автоматической обработки инсрормаиии Вычислительным устройством Основным отличием вычислительной машины от таких счетных устройств, как счеты, арифмометр, калькулятор, заключается в том, что вся последовательность команд на вычисление предварительно записывается в память вычислительной машины и выполняется последовательно автоматически. Впервые принцип вычислительной машины с автоматическим выполнением команд предложил американский ученый фон Нейман. Он описал основные узлы, которые должна содержать такая машина. Этот принцип получил название фон-неймановской вычислительной машины. Большинство современных КС в настоящее время построено именно по этому принципу. Машина фон Неймана состояла из памяти, представлявшей собой набор регистров, АЛУ, устройства ввода-вывода и устройства управления (рис. 2.8). Ввод/вывод АЛУ
Рис. 2.8. Машина фон Неймана Устройство ввода передавало команды и данные в АЛУ, откуда они записывались в память. Все команды, совокупность которых называется программой, записываются в память в соседние ячейки по возрастанию их адресов, а данные, которые требуют обработки,— в ячейки с произвольными адресами. Последняя команда программы — это обязательно команда остановки работы. Каждая команда содержит код операции, которую необходимо выполнить, и адреса ячеек, в которых находятся данные, обрабатываемые этой командой. Устройство управления содержит специальный регистр, который называется «Счетчик команд». После загрузки программы и данных в память в счетчик команд записывается адрес первой команды программы. После чего вычислительная машина переходит в режим автоматического выполнения программы. Устройство управления считывает из памяти содержимое ячейки памяти, адрес которой находится в счетчике команд, и помещает его в специальное устройство — «Регистр команд». Регистр команд хранил команду во время ее исполнения. Устройство управления расшифровывает тип операции команды, считывает из памяти данные, адреса которых указаны в команде, и приступает к ее выполнению. Для каждой команды устройство управления имеет свой алгоритм обработки, который заключается в выработке управляющих сигналов для всех остальных устройств машины. Этот алгоритм мог быть реализован на основе комбинационных логических схем или с помощью специальной внутренней памяти, куда эти алгоритмы были записаны в виде микрокоманд, объединенных в микропрограммы. Выполнение микропрограммы происходит по тому же принципу, что и программы в основной памяти, т.е. по принципу фон Неймана. Каждая микрокоманда содержит набор управляющих сигналов для устройств машины. Отметим, что устройства управления выполнением команд процессоров в современных компьютерных системах также строятся по принципу комбинационных схем или микропрограммных автоматов, в соответствии с чем делятся на К18С и С18С процессоры, о которых будет рассказано ниже. Микропрограмма выполнения любой команды обязательно содержит сигналы, изменяющие содержимого счетчика команд на единицу. Таким образом, после завершения выполнения очередной команды, счетчик команд указывал на следующую ячейку памяти, в которой находилась следующая команда программы. Устройство управления читает команду, адрес которой находится в счетчике команд, помещает ее в регистр команд и т.д. Этот процесс продолжается до тех пор, пока очередная исполняемая команда не оказывается командой останова исполнения программы. Интересно отметить, что и команды, и данные, находящиеся в памяти, представляют собой целочисленные двоичные наборы. Отличить команду от данных устройство управления не может, поэтому, если программист забыл закончить программу командой останова, устройство управления читает следующие ячейки памяти, в которых уже нет команд программы, и пытается интерпретировать их как команды. Особым случаем можно считать команды безусловного или условного перехода, когда требуется выполнить команду, не следующую по порядку за текущей, а отстоящую от данной на какое-то количество адресов. В этом случае команда перехода содержит адрес ячейки, куда требуется передать управление. Этот адрес записывается устройством управления непосредственно в счетчик команд и происходит переход на соответствующую команду программы. 2.5, Поколения иисрроВын устройств обработки инсрормаиии В период развития цифровых технологий были разработаны компьютеры самых разных типов. Многие из них давно забыты, но другие оказали сильное влияние на развитие современных вычислительных систем. Здесь мы дадим краткий обзор некоторых этапов развития вычислительных машин, чтобы показать, как человеческая мысль пришла к современному пониманию компьютерных технологий. Устройства, облегчающие счет или запоминание его результатов, известны давно, но нас будут интересовать только устройства для вычислений, которые автоматически выполняют заложенные в них программы. Поэтому мы не рассматриваем здесь такие устройства, как счеты, механические арифмометры и электронные калькуляторы. Первая счетная машина с хранимой программой была построена французским ученым Блезом Паскалем в 1642 г. Она была механической с ручным приводом и могла выполнять операции сложения и вычитания. Немецкий математик Готфрыд Лейбниц в 1672 г. построил механическую машину, которая могла делать также операции умножения и деления. Впервые машину, работающую по программе, разработал в 1834 г. английский ученый Чарльз Бэббидж. Она содержала запоминающее устройство, вычислительное устройство, устройство ввода с перфокарт и печатающее устройство. Команды считывались с перфокарты и выполняли считывание данных из памяти в вычислительное устройство и запись в память результатов вычислений. Все устройства машины Бэббиджа, включая память, были механическими и содержали тысячи шестеренок, при изготовлении которых требовалась точность, недоступная в XIX в. Машина реализовала любые программы, записанные на перфокарте, поэтому впервые для написания таких программ потребовался программист. Первым программистом была англичанка Ада Ловлейс, в честь которой уже в наше время был назван язык программирования Аёа. В XX в. начала развиваться электроника и ее возможности немедленно взяли на вооружение разработчики вычислительных машин. С построения вычислительных машин, базовая система элементов которых была построена на электронных компонентах, начинается отсчет поколений цифровых вычислительных машин. Отметим, что деление периода развития цифровой техники на этапы связано, в основном, с переводом базовой системы элементов на новые технологии производства электронных компонентов. Первое поколение -электронные лампы (1945-1955 гг.) В основе базовой системы элементов этого поколения компьютеров лежали электронные лампы. Их использование определяло и достоинства и недостатки цифровых устройств. Электронные лампы обеспечивали высокую скорость переключения логических элементов, что увеличивало скорость вычисления по сравнению с попытками создать вычислительную машину, базовый элемент которой был построен на основе электромеханического реле. Электронные лампы были достаточно долговечны и обеспечивали надежную работу компьютера. К сожалению, недостатков у ламповых компьютеров тоже было достаточно. Электронные лампы работали с напряжениями в десятки вольт и расходовали много энергии, кроме того, размер электронных ламп, по современным понятиям микроэлектроники, был огромным — несколько десятков кубических сантиметров. Для построения вычислительной машины нужны были тысячи логических элементов, поэтому размер ламповых вычислительных машин по занимаемой площади составлял десятки квадратных метров, а потребляемая мощность колебалась в пределах от единиц до десятков и даже сотен киловатт. Такая мощность приводила к перегреванию ламп, которые были размешены довольно компактно, и ставила задачу эффективного охлаждения электронных компонентов машины. Скорость обработки информации в ламповых машинах колебалась от нескольких сотен до нескольких тысяч операций в секунду. Второе поколение -транзисторы (1955-1965 гг.) Полупроводниковые приборы — транзисторы были изобретены в 1948 г. Они отличались от электронных ламп малыми размерами, низким напряжением питания и малой потребляемой мощностью. Все эти достоинства полупроводниковых приборов произвели революцию в радиоэлектронной промышленности. Стали появляться миниатюрные приемо-передающие радио- и телеустройства, появилась возможность встраивать управляющие устройства непосредственно в объекты управления и т.д. Новая элементная база для компьютеров на основе транзисторов произвела революцию и в производстве компьютеров. Значительное уменьшение габаритов, снижение потребляемой мощности и стоимости позволило создавать архитектуры компьютера с большими функциональными возможностями, резко повысить быстродействие компьютеров до сотен тысяч и даже миллионов операций в секунду. Увеличение производительности обеспечивалось как за счет более высокой скорости работы транзисторов по сравнению с электронными лампами, так и путем введения в состав вычислительной машины нескольких обрабатывающих устройств, работающих параллельно. Площадь, требуемая для размещения компьютера, снизилась до нескольких квадратных метров, предпринимались попытки изготавливать и настольные варианты. Снижение стоимости увеличило число потенциальных пользователей компьютеров. Появились крупные фирмы по производству компьютеров широкого назначения: 1п1етаиопа1 Визтезз МасШпез (1ВМ), СоШго! ^а^а СогротИоп (СОС), Ъ1%Иа1 ЕдшртеШ СогрогаПоп (ОЕС) и др. Следует отметить компьютер РОР-8 фирмы ОЕС — первого мини-компьютера с общей шиной, оказавшего большое влияние на развитие архитектур персональных компьютеров. Третье поколение -интегральные снемы (1965-1980 гг.) Полупроводниковые элементы и другие электронные компоненты выпускались электронной промышленностью в виде отдельных элементов. Так, полупроводниковый кристалл, на котором размещался транзистор, заключался в специальный металлический или пластмассовый корпус. Требование уменьшения габаритов электронных устройств привело к тому, что сначала полупроводниковые приборы стали производиться в бескорпусном исполнении, а затем в 1958 г. была предпринята попытка разместить в одном полупроводниковом кристалле все компоненты одного функционального узла. Так появились интегральные схемы (ИС), которые позволили резко уменьшить размеры полупроводниковых схем и снизить потребляемую мощность. На основе ИС строились мини-ЭВМ, которые выполнялись в виде одной стойки и периферийных устройств. Мощность, потребляемая компьютером на ИС, уменьшилась до сотен ватт. Увеличение быстродействия узлов, построенных на ИС, позволило довести быстродействие компьютеров до десятков миллионов операций в секунду. Электронная промышленность приступила к массовому производству электронных компонентов на ИС, что позволило снизить их стоимость и резко уменьшить стоимость аппаратной составляющей компьютеров. Уменьшение стоимости привело к разработке и практической реализации мощных вычислительных систем, использующих параллельную обработку: многопроцессорные и конвейерные вычислители. Четвертое поколение -сверхбольшие интегральные скемы (с 1980 гг.) Микроминиатюризация электронных устройств привела к появлению новой отрасли промышленности — микроэлектроники, которая относится к области высоких технологий. Используя последние научно-технические достижения физики, химии, кристаллографии, материаловедения и даже космонавтики (в невесомости можно получить полупроводниковые кристаллы очень высокой чистоты), добились размещения на одном кристалле размером несколько квадратных миллиметров сначала сотен, затем тысяч и, наконец, миллионов транзисторов и других электронных компонентов. Теперь полупроводниковая схема содержала уже не набор нескольких логических элементов, из которых строились затем функциональные узлы компьютера, а целиком функциональные узлы и, в первую очередь процессор, который, учитывая его размеры, получил название микропроцессор, устройства управления внешними устройствами — контроллеры внешних устройств. Такие интегральные схемы получили название сначала больших интегральных схем (БИС), а затем и сверхбольших интегральных схем (СБИС). Итогом такого бурного развития микроэлектроники стало появление одноплатных ЭВМ, где на одной плате, размером несколько десятков квадратных сантиметров, размещались несколько СБИС, содержащих все функциональные блоки компьютера. Одноплатные компьютеры встраивались в различные промышленные, медицинские и бытовые приборы для оперативной обработки информации и управления. Стоимость одноплатных компьютеров так упала, что появилась возможность их приобретения отдельными людьми. Такой возможностью воспользовались английские инженеры Стыв Джобе и Стыв Воз-няк. Используя выпускаемые промышленностью функциональные узлы: плата микро-ЭВМ с процессором и памятью, клавиатура, дисплей, они собрали дешевую настольную вычислительную машину — микрокомпьютер. Его привлекательность для непрофессиональных пользователей заключалась в том, что это было готовое к употреблению устройство, содержащее все необходимое оборудование и программное обеспечение для работы. Этот микрокомпьютер получил название Арр1е и стал первым в мире персональным компьютером. Персональными компьютерами, которые получили большое распространение на компьютерном рынке, заинтересовалась крупная компания, занимавшаяся выпуском мощных вычислительных систем — 1ВМ, и решила наладить выпуск своей модели персонального компьютера. Совместно с фирмой 1п1е1, разработавшей микропроцессорный комплект, и фирмой М'сгагоД которая оснастила компьютер операционной системой М8 ВО8, 1ВМ создала персональный компьютер 1ВМ РС. Значительный потенциал фирмы 1ВМ позволил в короткие сроки произвести огромное количество таких компьютеров. Их привлекательная для покупателей цена и некоторые новшества, например, больший, по сравнению с выпускавшимися в то время персональными компьютерами других фирм, объем оперативной памяти, позволили компьютеру 1ВМ РС стать самой популярной «персоналкой» в мире. Дальнейшая классификация вычислительных систем по их принадлежности к различным поколениям весьма условна. В настоящее время элементная база микропроцессорных систем активно развивается, но в ее основе по-прежнему лежат СБИС. Некоторые специалисты выделяют пятое, шестое и последующие поколения как усовершенствование микроэлектронных технологий. Другие рассматривают последующие поколения как изменение структур обработки команд и данных внутри микропроцессора. 2,6. Пркитектуры Вычислительных систем сосреЭоточенной обработки инсрормоиии Современный компьютер состоит из нескольких функциональных узлов: процессор, память, контроллеры устройств и т.д. Каждый узел представляет собой сложное электронное устройство, в состав которого могут входить миллионы логических элементов. Для лучшего понимания принципа работы каждого узла и компьютера в целом вводится понятие уровней представления компьютера. Цифровой логический уровень — уровень логических схем базовой системы элементов. Микроархитектурный уровень — уровень организации обработки информации внутри функционального узла. Сюда относятся регистры различного назначения, устройство обработки поступающих команд, устройство преобразования данных, устройство управления. Командный уровень — набор функциональных узлов и связи между ними, система команд и данных, передаваемых между устройствами. Набор блоков, связей между ними, типов данных и операций каждого уровня называется архитектурой уровня. Архитектура командного уровня называется обычно компьютерной архитектурой или компьютерной организацией. В этом разделе мы рассмотрим различные компьютерные архитектуры. Архитектуры других уровней будут рассмотрены в следующих разделах. 2,6,1. Йрнитектуры с фиксироВонным нобором устройств Компьютерами с сосредоточенной обработкой называются такие вычислительные системы, у которых одно или несколько обрабатывающих устройств (процессоров) расположены компактно и используют для обмена информацией внутренние шины передачи данных. Компьютеры первого и второго поколения имели архитектуру закрытого типа с ограниченным набором внешнего оборудования. Такая архитектура характерна для компьютеров, базовая система логических элементов которых построена на дискретных электронных компонентах (электронных лампах, транзисторах). Введение любого дополнительного функционального блока в такие архитектуры был сопряжен с увеличением потребляемой мощности, занимаемой площади и резко увеличивал стоимость всей системы. Поэтому компьютер, выполненный по этой архитектуре, не имел возможности подключения дополнительных устройств, не предусмотренных разработчиком. Укрупненная схема такой компьютерной архитектуры приведена на рис. 2.9. Оперативная память хранит команды и данные исполняемых программ, АЛУ обеспечивает не только числовую обработку, но и участвует в процессе ввода-вывода информации, осуществляя ее занесение в оперативную память. Канал ввода/вывода представляет собой специализированное устройство, работающее по командам, подаваемым устройством управления. Канал допускает подключение определенного числа внешних устройств. Устройство управления обеспечивает выполнение команд программы и управляет всеми узлами системы.
Канал ввода/вывода Устройство управления АЛУ и регистры ввода/вывода II Буферные регистры II Оперативная память Рис. 2.9. Архитектура компьютера закрытого типа Компьютеры такой архитектуры эффективны при решении чисто вычислительных задач. Они плохо приспособлены для реализации компьютерных технологий, требующих подключения дополнительных внешних устройств и высокой скорости обмена с ними информацией. 2.6.2. Вычислительные системы с открытой орнитектурой В начале 70-х гг. фирмой О ЕС (В1%На1 Е^тртеп^ СогрогаИоп) был предложен компьютер совершенно иной архитектуры. Эта архитектура позволяла свободно подключать любые периферийные устройства, что сразу же заинтересовало разработчиков систем управления различными техническими системами, так как обеспечивало свободное подключение к компьютеру любого числа датчиков и исполнительных механизмов. Главным нововведением являлось подключение всех устройств, независимо от их назначения, к общей шине передачи информации. Подключение устройств к шине осуществлялось в
Общая шина Рис. 2.10. Архитектура компьютера открытого типа соответствии со стандартом шины. Стандарт шины являлся свободно распространяемым документом, что позволяло фирмам— производителям периферийного оборудования разрабатывать контроллеры для подключения своих устройств к шинам различных стандартов. Архитектура компьютера открытого типа, основанная на использовании общей шины, приведена на рис. 2.10. Общее управление всей системой осуществляет центральный процессор. Он управляет общей шиной, выделяя время другим устройствам для обмена информацией. Запоминающее устройство хранит исполняемые программы и данные и согласовано уровнями своих сигналов с уровнями сигналов самой шины. Внешние устройства, уровни сигналов которых отличаются от уровней сигналов шины, подключаются к ней через специальное устройство — контроллер. Контроллер согласовывает сигналы устройства с сигналами шины и осуществляет управление устройством по командам, поступающим от центрального процессора. Контроллер подключается к шине специальными устройствами — портами ввода-вывода. Каждый порт имеет свой номер, и обращение к нему процессора происходит, также как и к ячейке памяти, по этому номеру. Процессор имеет специальные линии управления, сигнал на которых определяет, обращается ли процессор к ячейке памяти или к порту ввода-вывода контроллера внешнего устройства. Несмотря на преимущества, предоставляемые архитектурой с общей шиной, она имеет и серьезный недостаток, который проявлялся все больше при повышении производительности внешних устройств и возрастании потоков обмена информацией между ними. К общей шине подключены устройства с разными объемами и скоростью обмена, в связи с чем «медленные» устройства задерживали работу «быстрых». Дальнейшее повышение производительности компьютера было найдено во введении дополнительной локальной шины, к которой подключались «быстрые» устройства. Архитектура компьютера с общей и локальной шинами приведена на рис. 2.11.
Центральный процессор
I Запоминающее устройство Клавиатура Другие устройства Контроллер Устройство Рис. 2.11. Архитектура компьютера с общей и локальной шиной Контроллер шины анализирует адреса портов, передаваемые процессором, и передает их контроллеру, подключенному к общей или локальной шине. Конструктивно контроллер каждого устройства размещается на общей плате с центральным процессором и запоминающим устройством или, если устройство не является стандартно входящим в состав компьютера, на специальной плате, вставляемой в специальные разъемы на общей плате — слоты расширения. Дальнейшее развитие микроэлектроники позволило размещать несколько функциональных узлов компьютера и контроллеры стандартных устройств в одной микросхеме СБИС. Это сократило количество микросхем на общей плате и дало возможность ввести две дополнительные локальные шины для подключения запоминающего устройства и устройства отображения, которые имеют наибольший объем обмена с центральным процессором и между собой. Хотя архитектура компьютера осталась прежней, структура современного персонального компьютера имеет вид, представленный на рис. 2.12.
Выходы контроллеров для подключения стандартных внешних устройств Рис. 2.12. Структура персонального компьютера Центральный контроллер играет роль коммутатора, распределяющего потоки информации между процессором, памятью, устройством отображения и остальными узлами компьютера. Кроме этого в состав микросхемы центрального контроллера включены устройства, которые поддерживают работу компьютера. К ним относятся системный таймер', устройство прямого доступа к памяти, которое обеспечивает обмен данными между внешними устройствами и памятью в периоды, когда это не требуется процессору; устройство обработки прерываний, которое обеспечивает быструю реакцию процессора на запросы внешних устройств, имеющих данные для передачи, Функциональный контроллер — это СБИС, которая содержит контроллеры для подключения стандартных внешних устройств, таких как клавиатура, мышь, принтер, модем и т.д. Часто в состав этого контроллера входит такое устройство, как аудиокарта, позволяющая получить на внешних динамиках высококачественный звук при прослушивании музыкальных и речевых файлов. Для подключения специфических устройств часть общей шины, соединяющая центральный и функциональный контроллеры, имеет слоты расширения для установки плат контроллеров. 2.6.3. Орнилпектуры многопроцессорный Вычислительный систем Персональные компьютеры позволяют реализовать многие компьютерные технологии, начиная от работы в Интернете, и кончая построением анимационных трехмерных сцен. Однако существуют задачи, объем вычислений которых превышает возможности персонального компьютера. Для их решений применяются компьютеры с гораздо более высоким быстродействием. Для получения высокого быстродействия на существующей элементной базе используются архитектуры, в которых процесс обработки распараллеливается и выполняется одновременно на нескольких обрабатывающих устройствах Существует три основных подхода к построению архитектур таких компьютеров: многопроцессорные, магистральные и матричные архитектуры. Архитектура простых многопроцессорных систем выполняется по схеме с общей шиной. Два или более процессоров и один или несколько модулей памяти размещены на общей шине. Каждый про- цессор, для обмена с памятью, проверяет, свободна ли шина, и, если она свободна, он занимает ее. Если шина занята, процессор ждет, пока она освободится. При увеличении числа процессоров производительность системы будет ограничена пропускной способностью шины. Чтобы решить эту проблему, каждый процессор снабжается собственной локальной памятью (рис. 2.13), куда помещаются тексты исполняемых программ и локальные переменные, обрабатываемые данным процессором. Общее запоминающее устройство используется для хранения общих переменных и общего системного программного обеспечения. При такой организации нагрузка на общую шину значительно снижается. Локальное запоминающее устройство Локальное запоминающее устройство
Процессор Процессор Общее запоминающее устройство
Периферийный процессор Общая шина
Контроллер I Внешние устройства Контроллер Внешние устройства Рис. 2.13. Архитектура многопроцессорной вычислительной системы с общей шиной Один из процессоров выделяется для управления всей системой. Он распределяет задания на исполнение программ между процессорами и управляет работой общей шины. Периферийный процессор осуществляет обслуживание внешних устройств при вводе и выводе информации из общей памяти. Он может быть того же типа, что и остальные процессоры, но обычно устанавливается специализированный процессор, предназначенный для выполнения операций управления внешними устройствами. Магистральный принцип является самым распространенным при построении высокопроизводительных вычислительных систем. Процессор такой системы имеет несколько функциональных обрабатывающих устройств, выполняющих арифметические и логические операции, и быструю регистровую память для хранения обрабатываемых данных. Данные, считанные из памяти, размещаются в регистрах и из них загружаются в обрабатывающие устройства. Результаты вычислений помещаются в регистры и используются как исходные данные для дальнейших вычислений. Таким образом, получается конвейер преобразования данных: регистры — обрабатывающие устройства — регистры —.... Архитектура магистрального суперкомпьютера приведена на рис. 2.14. Число функциональных устройств здесь равно шести («Сложение», «Умножение» и т.д.), однако в реальных системах их количество может быть иным. Устройство пла- Сложение Регистры для хранения обрабатываемых данных Умножение Деление Логика Индекс I Общее запоминающее устройство Периферийный процессор Сдвиг Устройство планирования последовател ьности выполнения команд
Контроллер Контроллер
Внешние устройства Внешние устройства Рис. 2.14. Архитектура магистрального суперкомпьютера нирования последовательности выполнения команд распределяет данные, хранящиеся в регистрах, на функциональные устройства и производит запись результатов снова в регистры. Конечные результаты вычислений записываются в общее запоминающее устройство. В матричной вычислительной системе процессоры объединяются в матрицу процессорных элементов. В качестве процессорных элементов могут использоваться универсальные процессоры, имеющие собственное устройство управления, или вычислители, содержащие только АЛУ и выполняющие команды внешнего устройства управления. Каждый процессорный элемент снабжен локальной памятью, хранящей обрабатываемые процессором данные, но при необходимости процессорный элемент может производить обмен со своими соседями или с общим запоминающим устройством. В первом случае, программы и данные нескольких задач или независимых частей одной задачи загружаются в локальную память процессоров и выполняются параллельно. Во втором варианте все процессорные элементы одновременно выполняют одну и ту же команду, поступающую от устройства обработки команд на все процессорные элементы, но над разными данными, хранящимися в локальной памяти каждого процессорного элемента. Вариант архитектуры с общим управлением показан на рис. 2.15. Обмен данными с периферийными устройствами выполняется через периферийный процессор, подключенный к общему запоминающему устройству. 2.6.4. Классисрикаиия компьютеров по сферам применения Наиболее часто при выборе компьютера для той или иной сферы применения используется такая характеристика, как производительность, под которой понимается время, затрачиваемое компьютером для решения той или иной задачи. Понятие «производительность» определяет и некоторые другие характеристики компьютера, такие, например, как объем оперативной памяти. Вполне естественно, что компьютер с высокой скоростью обработки должен снабжаться большим объемом оперативной памяти, так как иначе его производительность будет ограничена- необходимостью подкачки информации из более медленной внешней памяти. Можно считать, что производительность является некоторой интегрированной харак- Матрица процессорных элементов А1 А1 *
Общее запоминающее устройство I Периферийный процессор
Устройство обработки команд
Контроллер I Внешние устройства Контроллер Внешние устройства Рис. 2.15. Архитектура матричной вычислительной системы с общим управлением теристикой, определяющей общую вычислительную мощность компьютера, и, соответственно, области его применения. По производительности компьютеры можно условно разбить на три класса: суперкомпьютеры; мэйнфреймы; микрокомпьютеры. Суперкомпьютеры — компьютеры с производительностью свыше 100 млн операций в секунду. Применяются для решения таких задач, как моделирование физических процессов, гидрометеорология, кос- мические исследования и других задач, которые требуют огромных объемов вычислений. Выполняются обычно по многопроцессорной архитектуре, имеют большой набор внешних устройств, и, как правило, выпускаются небольшими партиями для конкретной задачи или конкретного заказчика. Обычно важность решаемой задачи такова, что основным параметром суперкомпьютера является его высокая производительность, а такие параметры, как стоимость, размеры или вес, не являются определяющими. Мэйнфреймы — компьютеры с производительностью от 10 до 100 млн операций в секунду Они используются для решения таких задач, как хранение, поиск и обработка больших массивов данных, построение трехмерной анимационной графики, создание рекламных роликов, выполняют роль узлов глобальной сети, используемой торговыми или компьютерными фирмами с большим потоком запросов. Выполняются по многопроцессорной архитектуре с общей шиной и небольшим числом мощных процессоров. Конструктивно выполняются в виде одной стойки или в настольном варианте. Стоимость мэйнфреймов колеблется от тридцати до трехсот тысяч долларов. Микрокомпьютеры — компактные компьютеры универсального назначения, в том числе и для бытовых целей, имеющие производительность до 10 млн. операций в секунду. Микрокомпьютеры, или персональные компьютеры, можно классифицировать по конструктивным особенностям: стационарные (настольные) и переносные. Переносные компьютеры, в свою очередь, можно разделить на портативные (1ар№р), блокноты (по1еЬооК) и карманные (Ра1т1ор). Портативные компьютеры по размеру близки к обычному портфелю, они, в настоящее время, уступают место более компактным. Блокноты по размеру близки к книге крупного формата и имеют массу около 3 кг. Такие компьютеры имеют встроенные аккумуляторы, позволяющие работать без сетевого напряжения. В настоящее время имеются полноцветные жидкокристаллические мониторы, не уступающие по качеству мониторам стационарных компьютеров. Карманные компьютеры в настоящее время являются самыми маленькими персональными компьютерами. Они не имеют внешней памяти на магнитных дисках, она заменена на энергонезависимую электронную память. Эта память может перезаписываться при помощи линии связи с настольным компьютером. Карманный компьютер можно использовать как словарь-переводчик или записную книгу. 2,7. Функциональная организаииа персонального компьютера 2,7,1. Центральный проиессор Центральный процессор (ЦП) — функционально-законченное программно-управляемое устройство обработки информации, выполненное на одной или нескольких СБИС. В современных персональных компьютерах разных фирм применяются процессоры двух основных архитектур: • полная система команд переменной длины — Сотр1ех 1п5*гис1юп 8е1 • сокращенный набор команд фиксированной длины — КесЗисес! Весь ряд процессоров фирмы 1п1е1, устанавливаемых в персональные компьютеры 1ВМ, имеют архитектуру С18С, а процессоры Мо*ого1а, используемые фирмой Арр1е для своих персональных компьютеров, имеют архитектуру К18С. Обе архитектуры имеют свои преимущества и недостатки. Так С18С-процессоры имеют обширный набор команд (до 400), из которых программист может выбрать команду, наиболее подходящую ему в данном случае. Недостатком этой архитектуры является то, что большой набор команд усложняет внутреннее устройство управления процессором, увеличивает время исполнения команды на микропрограммном уровне. Команды имеют различную длину и время исполнения. К18С-архитектура имеет ограниченный набор команд и каждая команда выполняется за один такт работы процессора. Небольшое число команд упрощает устройство управления процессора. К недостаткам К18С-архитектуры можно отнести то, что если требуемой команды в наборе нет, программист вынужден реализовать ее с помощью нескольких команд из имеющегося набора, увеличивая размер программного кода. Упрощенная схема процессора, отражающая основные особенности архитектуры микроуровня, приведена на рис. 2.16. Наиболее
Управление и синхронизация л V
Счетчик команд Управление выборкой очередной микрокоманды Регистры общего назначения ПЗУ микрокоманд Дешифратор команд / АЛУ \ 4^---- О^ т> Чт Буфер команд \7
Контроллер шины шина шина шина адреса данных управления Рис. 2.16. Архитектура процессора сложным функциональным устройством процессора является устройство управления выполнением команд. Оно содержит: • буфер команд, который хранит одну или несколько очередных • дешифратор команд расшифровывает код операции очередной • управление выборкой очередной микрокоманды представляет собой • постоянное запоминающее устройство (ПЗУ) микрокоманд — это Поступивший от дешифратора команд адрес записывается в счетчик микрокоманд устройства выборки, и начинается процесс обработки последовательности микрокоманд. Каждый разряд микрокоманды связан с одним управляющим входом какого-либо функционального устройства. Так, например, управляющие входы регистра хранения «Сброс», «Запись», «Чтение» соединены с соответствующими разрядами микрокоманды. Общее число разрядов микрокоманды может составлять от нескольких сотен до нескольких тысяч и равно общему числу управляющих входов всех функциональных устройств процессора. Часть разрядов микрокоманды подается на устройство управления выборкой очередной микрокоманды и используется для организации условных переходов и циклов, так как алгоритмы обработки команд могут быть достаточно сложными. Выборка очередной микрокоманды осуществляется через определенный интервал времени, который, в свою очередь, зависит от времени выполнения предыдущей микрокоманды. Частота, с которой осуществляется выборка микрокоманд, называется тактовой частотой процессора. Тактовая частота является важной характеристикой процессора, так как определяет скорость выполнения процессором команд, и, в конечном итоге, быстродействие процессора. Арифметико-логическое устройство (АЛУ) предназначено для выполнения арифметических и логических операций преобразования информации. Функционально АЛУ состоит из нескольких специальных регистров, полноразрядного сумматора и схем местного управления. Регистры общего назначения (РОН) используются для временного хранения операндов исполняемой команды и результатов вычислений, а также хранят адреса ячеек памяти или портов ввода-вывода для команд, обращающихся к памяти и внешним устройствам. Необходимо отметить, что если операнды команды хранятся в РОН, то время выполнения команды значительно сокращается. Одна из причин, почему программисты иногда обращаются к программированию на языке машинных команд, это наиболее полное использование РОН для получения максимального быстродействия при выполнении программ, критичных по времени. Рассмотрим кратко характеристики процессоров, используемых в современных ПК типа 1ВМ РС. Процессоры для этих ПК выпус- кают многие фирмы, но законодателем моды здесь является фирма 1п1е1. Ее последней разработкой является процессор 1п1е1 Соге, выпуск которого начат в начале 2006 г. К основным особенностям архитектуры 1п1е1 Соге можно отнести следующие: —имеется специальный внутренний КЭШ размером 2 Мбайта; —добавлена арбитражная шина, которая уменьшает нагрузку си —внутренняя микроархитектура процессора базируется на двух —введено управление питанием ядра, которое включает в себя блок Фирма 1п1е1 поставляет упрощенные варианты процессоров РепПит 4 под названием Се1егоп, который в два раза дешевле базового варианта процессора. Однако следует отметить, что последние модели процессора Се1егоп ни в чем не уступают «старшему брату» и даже в некоторых случаях превосходят его. Фирма АМО (ААчапсей М1сго ^еV^се5) выпускает процессоры, совместимые по системе команд с 1п1е1 РепПит 4 — АМоп (К7). Этот процессор выполнен по суперскалярной архитектуре с тремя конвейерами команд, работающими параллельно и способными обрабатывать до девяти инструкций за один цикл работы процессора. Тестирование процессора К7 и его сравнение с РепПит 4 показывает, что К7 не уступает ему и даже превосходит его в некоторых случаях. Стоимость процессора АШ1оп на 20—30 % дешевле процессора 1п1е1. Процессор К7 требует для своей работы собственной шины, несовместимой с шиной процессора Реп1шт 4. Поэтому замена одного типа процессора другим требует и замены системной платы, на которой расположен набор микросхем основных функциональных устройств ПК. 2.7.2. Оперативное запоминающее устройство Другим важным функциональным узлом компьютера является запоминающее устройство, или память. Память, в которой хранятся исполняемые программы и данные, называется оперативным запоминающим устройством (ОЗУ), или ВАМ (Капёот Асс姧 Метогу) — памятью со свободным доступом. ОЗУ позволяет записывать и считывать информацию из ячейки, обращаясь к ней по ее номеру или адресу. Ячейка памяти имеет стандартное число двоичных разрядов. В настоящее время стандартный размер ячейки ОЗУ равняется одному байту. Информация в ОЗУ сохраняется все время, пока на схемы памяти подается питание, т.е. она является энергозависимой. Существует два вида ОЗУ, отличающиеся техническими характеристиками: динамическое ОЗУ, или ^РЛМ (Оупапис КАМ), и статическое ОЗУ, или 8КАМ (8Ш1с КАМ). Разряд динамического ОЗУ построен на одном транзисторе и конденсаторе, наличие или отсутствие заряда на котором определяет значение, записанное в данном бите. При записи или чтении информации из такой ячейки требуется время для накопления (стекания) заряда на конденсаторе. Поэтому быстродействие динамического ОЗУ на порядок ниже, чем у статического ОЗУ, разряд которого представляет собой триггер на четырех или шести транзисторах. Однако из-за большего числа элементов на один разряд в одну СБИС статического ОЗУ помещается гораздо меньше элементов, чем у динамического ОЗУ. Например, современные СБИС динамических ОЗУ способны хранить 256—1024 Мбайт информации, а схемы статических ОЗУ только 256—512 Кбайт. Кроме этого статические ОЗУ более энергоемки и значительно дороже. Обычно, в качестве оперативной или видеопамяти используется динамическое ОЗУ. Статическое ОЗУ используется в качестве небольшой буферной сверхбыстродействующей памяти. В кэш-память из динамической памяти заносятся команды и данные, которые процессор будет выполнять в данный момент. Скорость работы ОЗУ ниже, чем быстродействие процессора, поэтому применяются различные методы для повышения ее производительности. Одним из способов увеличения быстродействия динамического ОЗУ является размещение в одном корпусе микросхемы СБИС нескольких модулей памяти с чередованием адресов. Байт с нулевым адресом находится в первом модуле, байт с первым адресом во втором модуле, байт со вторым адресом в первом модуле и т.д. Поскольку обращение к памяти состоит из нескольких этапов: установка адреса, выбор ячейки, чтение, восстановление, то эти этапы можно совместить во времени для разных модулей. Другим способом увеличения быстродействия является чтение из памяти содержимого ячейки с заданным адресом и нескольких ячеек, расположенных рядом. Они сохраняются в специальных регистрах — защелках. Если следующий адрес указывает на одну из уже считанных ячеек, то ее содержимое читается из защелки. Несмотря на разработку новых типов схем динамических ОЗУ, снижающую время обращения к ним, это время все еще остается значительным и сдерживает дальнейшее увеличение производительности процессора. Для уменьшения влияния времени обращения процессора к ОЗУ и увеличения производительности компьютера дополнительно устанавливается сверхбыстродействующая буферная память, выполненная на микросхемах статической памяти. Эта память называется кэш-памятью (от англ. сасНе — запас). Время обращения к данным в кэш-памяти на порядок ниже, чем у ОЗУ, и сравнимо со скоростью работы самого процессора. Запись в кэш-память осуществляется параллельно с запросом процессора к ОЗУ. Данные, выбираемые процессором, одновременно копируются и в кэш-память. Если процессор повторно обратится к тем же данным, то они будут считаны уже из кэш-памяти. Такая же операция происходит и при записи процессором данных в память. Они записываются в кэш-память, а затем в интервалы, когда шина свободна, переписываются в ОЗУ Современные процессоры имеют встроенную кэш-память, которая находится внутри процессора, кроме этого есть кэш-память и на системной плате. Чтобы их различать, кэш-память делится на уровни. На кристалле самого процессора находится кэш-память первого уровня, она имеет объем порядка 16—128 Кбайт и самую высокую скорость обмена данными. В корпусе процессора, но на отдельном кристалле находится кэшпамять второго уровня, которая имеет объем порядка 256 Кбайт — 4 Мбайта. И, наконец, кэш-память третьего уровня расположена на системной плате, ее объем может составлять 2—24 Мбайта. Управление записью и считыванием данных в кэш-память выполняется автоматически. Когда кэш-память полностью заполняет- ся, то для записи последующих данных устройство управления кэшпамяти по специальному алгоритму автоматически удаляет те данные, которые реже всего использовались процессором на текущий момент. Использование процессором кэш-памяти увеличивает производительность процессора, особенно в тех случаях, когда происходит по-следовательное преобразование относительно небольшого числа данных, которые постоянно во время преобразования хранятся в кэш-памяти. В одном адресном пространстве с ОЗУ находится специальная память, предназначенная для постоянного хранения таких профамм, как тестирование и начальная загрузка компьютера, управление внешними устройствами. Она является энергонезависимой, т.е. сохраняет записанную информацию при отсутствии напряжения питания. Такая память называется постоянным запоминающим устройством (ПЗУ) или КОМ (Кеай Оп1у Метогу). Постоянные запоминающие устройства можно разделить по способу записи в них информации на следующие категории: — ПЗУ, программируемые однократно. Программируются при из — Перепрограммируемые ПЗУ (ППЗУ). Позволяют перепрофамми- 2.7.3. Внутренние шины переЭачи инсрормаиии Общая шина, наряду с центральным процессором и запоминающим устройством, во многом определяет производительность работы компьютера, так как обеспечивает обмен информацией между функциональными узлами. Общая шина делится на три отдельные шины по типу передаваемой информации: шина адреса, шина данных, шина управления. Каждая шина характеризуется шириной — числом параллельных проводников для передачи информации. Другим важным параметром шины является тактовая частота шины — это час- тота, на которой работает контроллер шины при формировании циклов передачи информации. Шина адреса предназначена для передачи адреса ячейки памяти или порта ввода-вывода. Ширина шины адреса определяет максимальное количество ячеек, которое она может напрямую адресовать. Если ширина шины адреса равна я, то количество адресуемой памяти равно 2". Шина данных предназначена для передачи команд и данных, и ее ширина во многом определяет информационную пропускную способность общей шины. В современных компьютерах ширина шины данных составляет 32—64. Шина управления включает в себя все линии, которые обеспечивают работу общей шины. Ее ширина зависит от типа шины и определяется алгоритмом ее работы или, как говорят, протоколом работы шины. Протокол работы шины состоит из нескольких циклов и выполняется контроллером шины, расположенным внутри процессора (рис. 2.16), или отдельным контроллером шины (рис. 2.12). Приведем примерный протокол работы системной шины. Первый такт работы шины инициируется процессором, когда ему требуется произвести обмен информации с каким-либо устройством. Процессор выставляет на шину адреса адрес порта внешнего устройства или ячейки памяти и устанавливает управляющие сигналы, показывающие, какой тип обмена и с каким устройством или памятью он собирается произвести. На втором такте работы процессор ожидает от устройства сигнала о его готовности к приему или передаче информации. Второй такт может повторяться бесконечное число раз, пока не будет получен сигнал о готовности устройства. На третьем такте процессор выставляет на шину данных передаваемую информацию при записи или открывает шину данных для приема информации. На четвертом такте происходит обмен информацией, и работа протокола передачи заканчивается. Несмотря на то, что производители компьютеров постоянно предлагают новые варианты протоколов работы общих шин, которые обеспечивают более высокую производительность операций обмена информацией, ее пропускная способность оказывается недостаточной для обеспечения данными таких высокопроизводительных функциональных узлов, как центральный процессор, и некоторых внешних устройств, таких, например, как видеоподсистема с высо- ким качеством отображения. Поэтому разработчики предлагают включать в состав компьютера дополнительные шины, связывающих напрямую центральный процессор и отдельные наиболее быстродействующие устройства. Такие шины получили название локальных шин. На рис. 2.12 локальные шины используются для подключения к процессору запоминающего устройства и видеоконтроллера. Ниже приведены обозначения и основные характеристики общих и локальных шин, применяемых в персональных компьютерах фирмы 1ВМ. Общая шина РС1 (РепрЬега! Сотропеп*1п1егсоппес1) применяется в настольных компьютерах, в настоящее время используются модификации РС1 2.1—3.0, РС1 64/66, РС1-Х. Тактовая частота контроллера этой шины 33,33 МГц или 66,66 МГц. Ширина шины 32 или 64 бита, шина мультиплексированная (адрес и данные передаются по одним и тем же линиям). Пиковая пропускная способность шины 533 Мбайт/С. Общая шина РСМС1А (Регзопа! СотрШег Метогу Саге! 1п1ег-паНопа! А88ос1а1юп) применяется в переносных компьютерах класса ноутбук и имеет параметры, сравнимые с параметрами шины РС1. Локальная шина для подключения видеоконтроллера АОР (Ассе-1ега1ес1 СгарЫсв Рог!) позволяет организовать непосредственную связь видеоконтроллера и оперативного запоминающего устройства. Она ориентирована на массовую передачу видеоданных. Имеет конвейерную организацию выполнения операций чтения/записи, что позволяет избежать задержек при обращении к модулям памяти. За один такт работы может передать два, четыре или восемь блоков данных, в зависимости от установленного режима работы. При установке режима параллельной передачи восьми блоков обеспечивает пиковую скорость передачи 2112 Мбайт/С. В настоящее время для увеличения производительности видеосистемы разработана новая более быстрая и прогрессивная шина РС1 Ехргезз. 2.7.4. Внешние запоминающие устройства Поиск по сайту: |
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.068 сек.) |