31
Базовая аппаратная конфигурация: системный блок, монитор, клавиатура, мышь. Состав вычислительной системы называется конфигурацией. Отдельно рассматривают аппаратную и программную конфигурации компьютера. Как правило, современные компьютеры имеют блочно-модульную конструкцию. Согласование между отдельными узлами и блоками выполняют с помощью переходных аппаратно-логических устройств, называемых аппаратными интерфейсами. Стандарты на аппаратные интерфейсы в вычислительной технике называют протоколами. Протокол – это совокупность технических условий, которые должны быть обеспечены разработчиками устройств для успешного согласования их работы с другими устройствами. Многочисленные интерфейсы, присутствующие в архитектуре любой вычислительной системы, можно условно разделить на две большие группы: последовательные и параллельные. Через последовательный интерфейс данные передаются последовательно, бит за битом, а через параллельный – одновременно группами битов. Количество битов, участвующих в одной передаче, определяется разрядностью интерфейса, например, восьмиразрядный параллельный интерфейс предает один байт (8 битов) за один цикл. Параллельный интерфейс имеет более сложное устройство, чем последовательный, и более высокую производительность. У параллельного интерфейса производительность измеряется байтами в секунду (байт/с, Кбайт/сек, Мбайт/сек). Производительность последовательного интерфейса измеряется битами в секунду (бит/сек, Кбит/сек, Мбит/сек). Конфигурацию компьютера можно гибко изменять по мере необходимости. Однако, существует понятие базовой конфигурации, которую считают типовой. В таком комплекте компьютер обычно поставляется потребителю. В настоящее время в базовой конфигурации рассматривают четыре устройства: системный блок, монитор, клавиатура, мышь. Системный блок. Системный блок представляет собой основной узел, внутри которого установлены важнейшие компоненты. Устройства, находящиеся внутри системного блока, называют внутренними, подключаемые снаружи – внешними. Внешние дополнительные устройства, предназначенные для ввода, вывода и длительного хранения данных, также называют периферийными. По внешнему виду системные блоки различаются формой корпуса. Их выпускают в горизонтальном (desktop) и вертикальном (tower) исполнении. Вертикальные корпуса различают по габаритам: полноразмерный (bigtower), среднеразмерный (miditower) и малоразмерный (minitower). Среди горизонтальных корпусов выделяют плоские и особо плоские (slim).

Ответы на вопросы по архитектуре

Embed Size (px)

DESCRIPTION

Ответы по архитектуре

Citation preview

Page 1: Ответы на вопросы по архитектуре

Базовая аппаратная конфигурация: системный блок, монитор, клавиатура, мышь.Состав вычислительной системы называется конфигурацией.Отдельно рассматривают аппаратную и программную конфигурации компьютера.Как правило, современные компьютеры имеют блочно-модульную конструкцию.Согласование между отдельными узлами и блоками выполняют с помощью переходных аппаратно-логических устройств, называемых аппаратными интерфейсами. Стандарты на аппаратные интерфейсы в вычислительной технике называют протоколами. Протокол – это совокупность технических условий, которые должны быть обеспечены разработчиками устройств для успешного согласования их работы с другими устройствами.Многочисленные интерфейсы, присутствующие в архитектуре любой вычислительной системы, можно условно разделить на две большие группы: последовательные и параллельные.Через последовательный интерфейс данные передаются последовательно, бит за битом, а через параллельный – одновременно группами битов.Количество битов, участвующих в одной передаче, определяется разрядностью интерфейса, например, восьмиразрядный параллельный интерфейс предает один байт (8 битов) за один цикл.Параллельный интерфейс имеет более сложное устройство, чем последовательный, и более высокую производительность. У параллельного интерфейса производительность измеряется байтами в секунду (байт/с, Кбайт/сек, Мбайт/сек).Производительность последовательного интерфейса измеряется битами в секунду (бит/сек, Кбит/сек, Мбит/сек).Конфигурацию компьютера можно гибко изменять по мере необходимости. Однако, существует понятие базовой конфигурации, которую считают типовой. В таком комплекте компьютер обычно поставляется потребителю. В настоящее время в базовой конфигурации рассматривают четыре устройства: системный блок, монитор, клавиатура, мышь.Системный блок.Системный блок представляет собой основной узел, внутри которого установлены важнейшие компоненты. Устройства, находящиеся внутри системного блока, называют внутренними, подключаемые снаружи – внешними. Внешние дополнительные устройства, предназначенные для ввода, вывода и длительного хранения данных, также называют периферийными.По внешнему виду системные блоки различаются формой корпуса. Их выпускают в горизонтальном (desktop) и вертикальном (tower) исполнении. Вертикальные корпуса различают по габаритам: полноразмерный (bigtower), среднеразмерный (miditower) и малоразмерный (minitower). Среди горизонтальных корпусов выделяют плоские и особо плоские (slim). Кроме формы для корпуса важен параметр, называемый форм-фактор. От него зависят требования к размещаемым устройствам. В настоящее время в основном используются корпуса двух форм-факторов: AT и ATX.Форм-фактор корпуса должен быть обязательно согласован с форм фактором материнской платы. Корпуса персональных компьютеров поставляются вместе с блоком питания, поэтому мощность блока питания также является одним из параметров корпуса. Для массовых моделей достаточной является мощность блока 220-250 Вт.Монитор

Page 2: Ответы на вопросы по архитектуре

Монитор — устройство визуального представления данных. Это не единственно возможное, но главное устройство вывода. Его основными потребительскими параметрами являются: размер и шаг маски экрана, максимальная частота регенерации изображения, класс защиты.Мониторы подразделяются на ЭЛТ и жидкокристаллические, меньшее распространение имеют газо-плазменные.Размер монитора измеряется между противоположными углами трубки кинескопа по диагонали. Единица измерения — дюймы. Стандартные размеры: 15"; 17"; 19"; 20"; 21". В настоящее время наиболее универсальными являются мониторы размером 15 и 17 дюймов, а для операций с графикой желательны мониторы размером 19-21 дюйм.Изображение на экране ЭЛТ монитора получается в результате облучения люминофорного покрытия остронаправленньм пучком электронов, разогнанных в вакуумной колбе. Для получения цветного изображения люминофорное покрытие имеет точки или полоски трех типов, светящиеся красным, зеленым и синим цветом. Чтобы на экране все три луча сходились строго в одну точку и изображение было четким, перед люминофором ставят маску — панель с регулярно расположенными отверстиями или щелями. Часть мониторов оснащена маской из вертикальных проволочек, что усиливает яркость и насыщенность изображения. Чем меньше шаг между отверстиями или щелями (шаг маски), тем четче и точнее полученное изображение. Шаг маски измеряют в долях миллиметра. В настоящее время наиболее распространены мониторы с шагом маски 0,25-0,27 мм. Частота регенерации (обновления) изображения показывает, сколько раз в течение секунды монитор может полностью сменить изображение (поэтому ее также называют частотой кадров). Этот параметр зависит не только от монитора, но и от свойств и настроек видеоадаптера, хотя предельные возможности определяет монитор.Частоту регенерации изображения измеряют в герцах (Гц). Чем она выше, тем четче и устойчивее изображение, тем меньше утомление глаз, тем больше времени можно работать с компьютером непрерывно. При частоте регенерации порядка 60 Гц мелкое мерцание изображения заметно невооруженным глазом. Сегодня такое значение считается недопустимым. Минимальным считают значение 75 Гц, нормативным — 85 Гц и.комфортным — 100 Гц и более.Класс защиты монитора определяется стандартом, которому соответствует монитор с точки зрения требований техники безопасности. В настоящее время общепризнанными считаются следующие международные стандарты: MPR-II, ТСО-92, ТСО-95, ТСО-99 (приведены в хронологическом порядке). Стандарт MPR-II ограничил уровни электромагнитного излучения пределами, безопасными для человека. В стандарте ТСО-92 эти нормы были сохранены, а в стандартах ТСО-95 и ТСО-99 ужесточены. Эргономические и экологические нормы впервые появились в стандарте ТСО-95. а стандарт ТСО-99 установил самые жесткие нормы по параметрам, определяющим качество изображения (яркость, контрастность, мерцание, антибликовые свойства покрытия).Большинством параметров изображения, полученного на экране монитора, можно управлять программно. Программные средства, предназначенные для этой цели, обычно входят в системный комплект программного обеспеченияКлавиатураКлавиатура — клавишное устройство управления персональным компьютером. Служит для ввода алфавитно-цифровых (знаковых) данных, а также команд управления. Комбинация монитора и клавиатуры обеспечивает

Page 3: Ответы на вопросы по архитектуре

простейший интерфейс пользователя. С помощью клавиатуры управляют компьютерной системой, а с помощью монитора получают от нее отклик.Принцип действия. Клавиатура относится к стандартным средствам персонального компьютера. Ее основные функции не нуждаются в поддержке специальными системными программами (драйверами). Необходимое программное обеспечение для начала работы с компьютером уже имеется в микросхеме ПЗУ в составе базовой системы ввода-вывода (BIOS), и потому компьютер реагирует на нажатия клавиш сразу после включения.Принцип действия клавиатуры заключается в следующем.1. При нажатии на клавишу (или комбинацию клавиш) специальная микросхема, встроенная в клавиатуру, выдает так называемый скан-код.2. Скан-код поступает в микросхему, выполняющую функции порта клавиатуры. (Порты — специальные аппаратно-логические устройства, отвечающие за связь процессора с другими устройствами.) Данная микросхема находится на основной плате компьютера внутри системного блока.3. Порт клавиатуры выдает процессору прерывание с фиксированным номером. Для клавиатуры номер прерывания -— 9 (Interrupt 9, Inl .9).4. Получив прерывание, процессор откладывает текущую работу и по номеру прерывания обращается в специальную область оперативной памяти, в которой находится так называемый вектор прерывании. Вектор прерываний — это список адресных данных с фиксированной длиной записи. Каждая запись содержит адрес программы, которая должна обслужить прерывание с номером, совпадающим с номером записи.5. Определив адрес начала программы, обрабатывающей возникшее прерывание, процессор переходит к ее исполнению. Простейшая программа обработки клавиатурного прерывания «зашита» в микросхему ПЗУ, но программисты могут «подставить» вместо нее свою программу, если изменят данные в векторе прерываний.6. Программа-обработчик прерывания направляет процессор к порту клавиатуры, где он находит скан-код, загружает его в свои регистры, потом под управлением обработчика определяет, какой код символа соответствует данному скан-коду.7.Далее обработчик прерываний отправляет полученный код символа в небольшую область памяти, известную как буфер клавиатуры, и прекращает свою работу, известив об этом процессор.8. Процессор прекращает обработку прерывания и возвращается к отложенной задаче.8. Введенный символ хранится в буфере клавиатуры до тех пор, пока его не заберет оттуда та программа, для которой он и предназначался, например текстовый редактор или текстовый процессор. Если символы поступают в буфер чаще, чем забираются оттуда, наступает эффект переполнения буфера. В этом случае ввод новых символов на некоторое время прекращается. На практике в этот момент при нажатии на клавишу мы слышим предупреждающий звуковой сигнал и не наблюдаем ввода данных.МышьМышь — устройство управления манипуляторного типа. Перемещение мыши по плоской поверхности синхронизировано с перемещением графического объекта (указателя мыши) на экране монитора.В отличие от рассмотренной ранее клавиатуры, мышь не является стандартным органом управления, и персональный компьютер не имеет для нее выделенного порта. Для мыши нет и постоянного выделенного прерывания, а базовые средства ввода и вывода (BIOS) компьютера,

Page 4: Ответы на вопросы по архитектуре

размещенные в постоянном запоминающем устройстве (ПЗУ), не содержат программных средств для обработки прерываний мыши.В связи с этим в первый момент после включения компьютера мышь не работает. Она нуждается в поддержке специальной системной программы — драйвера мыши. Драйвер устанавливается либо при первом подключении мыши, либо при установке операционной системы компьютера. Хотя мышь и не имеет выделенного порта на материнской плате, для работы с ней используют один из стандартных портов, средства для работы с которыми имеются в составе BIOS. Драйвер мыши предназначен для интерпретации сигналов, поступающих через порт. Кроме того, он обеспечивает механизм передачи информации о положении и состоянии мыши операционной системе и работающим программам.В отличие от клавиатуры мышь не может напрямую использоваться для ввода знаковой информации — ее принцип управления является событийным. Перемещения мыши и щелчки ее кнопок являются событиями с точки зрения ее программы-драйвера. Анализируя эти события, драйвер устанавливает, когда произошло событие и в каком месте экрана в этот момент находился указатель. Эти данные передаются в прикладную программу, с которой работает пользователь в данный момент. По ним программа может определить команду, которую имел в виду пользователь, и приступить к ее исполнению.Комбинация монитора и мыши обеспечивает наиболее современный тип интерфейса пользователя, который называется графическим.

Внутренние устройства системного блока (материнская плата, НЖМД, НГМД, CD-ROM/RW, видеоадаптер, звуковой адаптер)Материнская платаМатеринская плата — основная плата персонального компьютера. На ней размещаются:•процессор — основная микросхема, выполняющая большинство математических и логических операций;•микропроцессорный комплект (чипсет) - набор микросхем, управляющих работой внутренних устройств компьютера и определяющих основные функциональные возможности материнской платы;•шины — наборы проводников, по которым происходит обмен сигналами между внутренними устройствами компьютера;•оперативная память (оперативное запоминающее устройство, ОЗУ) — набор микросхем, предназначенных для временного хранения данных, когда компьютер включен;• ПЗУ (постоянное запоминающее устройство) — микросхема, предназначенная для длительного хранения данных, в том числе и когда компьютер выключен;• разъемы для подключения дополнительных устройств (слоты).Жесткий дискЖесткий диск — основное устройство для долговременного хранения больших объемов данных и программ. На самом деле это не один диск, а группа соосных дисков, имеющих магнитное покрытие и вращающихся с высокой скоростью. Таким образом, этот «диск» имеет не две поверхности, как должно быть у обычного плоского диска, а 2n поверхностей, где n— число отдельных дисков в группе.Над каждой поверхностью располагается головка, предназначенная для чтения-записи данных. При высоких скоростях вращения дисков (90 об/с) в зазоре между головкой и поверхностью образуется аэродинамическая подушка, и головка парит над магнитной поверхностью на высоте, составляющей несколько тысячных долей

Page 5: Ответы на вопросы по архитектуре

миллиметра. При изменении силы тока, протекающего через головку, происходит изменение напряженности динамического магнитного поля в зазоре, что вызывает изменения в стационарном магнитном поле ферромагнитных частиц, образующих покрытие диска. Так осуществляется запись данных на магнитный диск.Операция считывания происходит в обратном порядке. Управление работой жесткого диска выполняет специальное аппаратно-логическое устройство — контроллер жесткого диска. В настоящее время функции контроллеров дисков выполняют микросхемы, входящие в микропроцессорный комплект (чипсет). К основным параметрам жестких дисков относятся емкость и производительность. Емкость дисков зависит от технологии их изготовления. В настоящее время большинство производителей жестких дисков используют изобретенную компанией IBM технологию с использованием гигантского магниторезистивного эффекта (GMR — Giant Magnetic Resistance). Теоретический предел емкости одной пластины, исполненной по этой технологии, составляет порядка 20 Гбайт- В настоящее время достигнут технологический уровень 6,4 Гбайт на пластину, но развитие продолжается.Сегодня все жесткие диски имеют очень высокий показатель скорости внутренней передачи данных (до 30-60 Мбайт/с), и потому их производительность в первую очередь зависит от характеристик интерфейса, с помощью которого они связаны с материнской платой. В зависимости от типа интерфейса разброс значений может быть очень большим: от нескольких Мбайт/с до 13-16 Мбайт/с для интерфейсов типа EIDE: до 80 Мбайт/с для интерфейсов типа SCSI от 50 Мбайт/с и более для наиболее современных интерфейсов типа IEEE 1394.Кроме скорости передачи данных с производительностью диска напрямую связан параметр среднего времени доступа. Он определяет интервал времени, необходимый для поиска нужных данных, и зависит от скорости вращения диска. Для дисков, вращающихся с частотой 5400 об/мин, среднее время доступа составляет 9-10 мкс, для дисков с частотой 7200 об/мин — 7-8 мкс. Изделия более высокого уровня обеспечивают среднее время доступа к данным 5-6 мкс.Дисковод гибких дисковДля оперативного переноса небольших объемов информации используют так называемые гибкие магнитные диски (дискеты), которые вставляют в специальный накопитель — дисковод. Приемное отверстие накопителя находится на лицевой панели системного блока. Правильное направление подачи гибкого диска отмечено стрелкой на его пластиковом кожухе.Основными параметрами гибких дисков являются: технологический размер (измеряется в дюймах), плотность записи (измеряется в кратных единицах) и полная емкость.Гибкие диски размером 3,5 дюйма выпускают с 1990 года. Односторонний диск обычной плотности имел емкость 180 Кбайт, двусторонний — 360 Кбайт, а двусторонний двойной плотности — 720 Кбайт. Ныне стандартными считают диски размером 3,5 дюйма высокой плотности. Они имеют емкость 1440 Кбайт (1,4 Мбайт) и маркируются буквами HD (high density высокая плотность).С нижней стороны гибкий диск имеет центральную втулку, которая захватывается шпинделем дисковода и приводится во вращение. Магнитная поверхность прикрыта сдвигающейся шторкой для защиты от влаги, грязи и пыли. Если на гибком диске записаны ценные данные, его можно защитить от стирания и перезаписи, сдвинув защитную задвижку так, чтобы образовалось открытое отверстие. Для разрешения записи

Page 6: Ответы на вопросы по архитектуре

задвижку перемещают в обратную сторону и перекрывают отверстие. В некоторых случаях для безусловной защиты информации на диске задвижку выламывают физически, но и в этом случае разрешить запись на диск можно, если, например, заклеить образовавшееся отверстие тонкой полоской липкой ленты. Гибкие диски считаются малонадежными носителями информации. Пыль, грязь, влага, температурные перепады и внешние электромагнитные поля очень часто становятся причиной частичной или полной утраты данных, хранившихся на гибком диске. Поэтому использовать гибкие диски в качестве основного средства хранения информации недопустимо. Их используют только для транспортировки информации или в качестве дополнительного (резервного) средства хранения.Дисковод компакт-дисков CD-ROMВ период 1994-1995 года в базовую конфигурацию персональных компьютеров перестали включать дисководы гибких дисков диаметром 5,25 дюйма, но вместо них стандартной стала считаться установка дисковода CD-ROM, имеющего такие же внешние размеры.Аббревиатура CD-ROM (Compact Disc Read-Only Memory) переводится на русский язык как постоянное запоминающее устройство на основе компакт-диска. Принцип действия этого устройства состоит в считывании числовых данных с помощью лазерного луча, отражающегося от поверхности диска. Цифровая запись на компакт-диске отличается от записи на магнитных дисках очень высокой плотностью, и стандартный компакт-диск может хранить примерно 650 Мбайт данных.Большие объемы данных характерны для мультимедийной информации (графика, музыка, видео), поэтому дисководы CD-ROM относят к аппаратным средствам мультимедиа. Программные продукты, распространяемые на лазерных дисках, называют мультимедийными изданиями. Основным недостатком стандартных дисководов CD-ROM является невозможность записи данных, но параллельно с ними существуют и устройства однократной записи CD-R (Compact Disk Recorder), и устройства многократной записи CD-RW.Основным параметром дисководов CD-ROM является скорость чтения данных. Она измеряется в кратных долях. За единицу измерения принята скорость чтения в первых серийных образцах, составлявшая 150 Кбайт/с. Таким образом, дисковод с удвоенной скоростью чтения обеспечивает производительность 300 Кбайт/с, с учетверенной скоростью — 600 Кбайт/с и т. д. В настоящее время наибольшее распространение имеют устройства чтения CD-ROM с производительностью 32х-52х. Современные образцы устройств однократной записи имеют производительность 4х-8х. а устройств многократной записи — до 4х.Видеокарта (видеоадаптер)Совместно с монитором видеокарта образует видеоподсистему персонального компьютера. Видеокарта не всегда была компонентом ПК. На заре развития персональной вычислительной техники в общей области оперативной памяти существовала небольшая выделенная экранная область памяти, в которую процессор заносил данные об изображении. Специальный контроллер экрана считывал данные об яркости отдельных точек экрана из ячеек памяти этой области и в соответствии с ними управлял разверткой горизонтального луча электронной пушки монитора.С переходом от черно-белых мониторов к цветным и с увеличением разрешения экрана (количества точек по вертикали и горизонтали) области видеопамяти стало недостаточно для хранения графических

Page 7: Ответы на вопросы по архитектуре

данных, а процессор перестал справляться с построением и обновлением изображения. Тогда и произошло выделение всех операций, связанных с управлением экраном, в отдельный блок, получивший название видеоадаптер. Физически видеоадаптер выполнен в виде отдельной дочерней платы, которая вставляется в один из слотов материнской платы и называется видеокартой. Видеоадаптер взял на себя функции видеоконтроллера, видеопроцессора и видеопамяти.За время существования персональных компьютеров сменилось несколько стандартов видеоадаптеров: MDA (монохромный); CGA (4 цвета); EGA (16 цветов); VGA (256 цветов). В настоящее время применяются видеоадаптеры SVGA, обеспечивающие по выбору воспроизведение до 16,7 миллионов цветов с возможностью произвольного выбора разрешения экрана из стандартного ряда значений (640x480, 800x600, 1024x768, 1152x864; 1280x1024 точек и далее).Разрешение экрана является одним из важнейших параметров видеоподсистемы. Чем оно выше, тем больше информации можно отобразить на экране, но тем меньше размер каждой отдельной точки и, тем самым, тем меньше видимый размер элементов изображения. Для каждого размера монитора существует свое оптимальное разрешение экрана, которое должен обеспечивать видеоадаптерРазрешение экрана монитораРазмер монитора Оптимальное разрешение экрана

14 дюймов 640x4801 5 дюймов 800x60017 дюймов 1024x76819 дюймов 1280x1024Большинство современных прикладных и развлекательных программ рассчитаны на работу с разрешением экрана 800x600 и более. Цветовое разрешение (глубина цвета) определяет количество различных оттенков, которые может принимать отдельная точка экрана. Максимально возможное цветовое разрешение зависит от свойств видеоадаптера и, в первую очередь, от количества установленной на нем видеопамяти. Кроме того, оно зависит и от установленного разрешения экрана. При высоком разрешении экрана на каждую точку изображения приходится отводить меньше места в видеопамяти, так что информация о цветах вынужденно оказывается более ограниченной.Минимальное требование по глубине цвета на сегодняшний день — 256 цветов, хотя большинство программ требуют не менее 65 тыс. цветов (режим High Color). Наиболее комфортная работа достигается при глубине цвета 16,7 млн. цветов (режим True Color).Работа в полноцветном режиме True Color с высоким экранным разрешением требует значительных размеров видеопамяти. Современные видеоадаптеры способны также выполнять функции обработки изображения, снижая нагрузку на центральный процессор ценой дополнительных затрат видеопамяти. Еще недавно типовыми считались видеоадаптеры с объемом памяти 16 Мбайт, но уже сегодня обычным считается объем 128-256 Мбайт.Видеоускорение - одно из свойств видеоадаптера, которое заключается в том, что часть операций по построению изображений может происходить без выполнения математических вычислений в основном процессоре компьютера, а чисто аппаратным путем — преобразованием данных в микросхемах видеоускорителя. Видеоускорители могут входить в состав видеоадаптера (в таких случаях говорят о том, что видеокарта обладает функциями аппаратного ускорения), но могут поставляться в виде отдельной платы, устанавливаемой на материнской плате и подключаемой к видеоадаптеру.

Page 8: Ответы на вопросы по архитектуре

Различают два типа видеоускорителей — ускорители плоской (2D) и трехмерной (3D) графики. Первые наиболее эффективны для работы с прикладными программами (обычно офисного применения) и оптимизированы для операционной системы Windows, а вторые ориентированы на работу мультимедийных развлекательных программ, в первую очередь компьютерных игр и профессиональных программ обработки трехмерной графики. Обычно в этих случаях используют разные математические принципы автоматизации графических операций, но существуют ускорители, обладающие функциями и двумерного, и трехмерного ускорения.Звуковая картаЗвуковая карта явилась одним из наиболее поздних усовершенствований персонального компьютера. Она подключается к одному из слотов материнской платы в виде дочерней карты и выполняет вычислительные операции, связанные с обработкой звука, речи, музыки. Звук воспроизводится через внешние звуковые колонки, подключаемые к выходу звуковой карты. Специальный разъем позволяет отправить звуковой сигнал на внешний усилитель. Имеется также разъем для подключения микрофона, что позволяет записывать речь или музыку и сохранять их на жестком диске для последующей обработки и использования.Основным параметром звуковой карты является разрядность, определяющая количество битов, используемых при преобразовании сигналов из аналоговой в цифровую форму и наоборот. Чем выше разрядность, тем меньше погрешность, связанная с оцифровкой, тем выше качество звучания. Минимальным требованием сегодняшнего дня являются 16 разрядов, а наибольшее распространение имеют 32-разрядные и 64-разрядные устройства.

Понятие архитектуры ЭВМ. Принципы фон Неймана. Многоуровневая организация ЭВМ.Огромный вклад в теорию и практику создания электронной вычислительной техники на начальном этапе ее развития внес один из крупнейших американских математиков Джон фон Нейман. Он был одним из участников проекта ENIAC, позднее занялся конструированием своей собственной машины IAS.Фон Нейман знал много языков, был специалистом в физике и математике и обладал феноменальной памятью: он помнил все, что когда-либо слышал, видел или читал. Он мог дословно процитировать по памяти тексты книг, которые читал несколько лет назад. Когда фон Нейман стал интересоваться вычислительными машинами, он уже был знаменитым математиком в мире.Фон Нейман осознал, что создание компьютеров с большим количеством переключателей и кабелей требует длительного времени и очень утомительно. И пришел к мысли, что программа должна быть представлена в памяти компьютера в цифровой форме, вместе с данными. Он также отметил, что десятичная арифметика, используемая в машине ENIAC, где каждый разряд представлялся 10 электронными лампами (1 включена и 9 выключены), должна быть заменена бинарной арифметикой.Основной проект, который он описал вначале, известен сейчас как фон-неймановская вычислительная машина. Он был использован в EDSAC, первой машине с программой в памяти, и даже сейчас, более чем полвека спустя, является основой большинства современных цифровых компьютеров. Этот замысел и машина IAS оказали очень большое влияние на дальнейшее развитие компьютерной техники, поэтому стоит кратко описать его. Схема архитектуры этой машины выглядит следующим образом:

Page 9: Ответы на вопросы по архитектуре

Машина фон Неймана состояла из пяти основных частей: памяти, арифметико-логического устройства, устройства управления, а также устройств ввода-вывода. Память включала 4096 слов, каждое слово содержало 40 битов, бит — это 0 или 1. Каждое слово содержало или 2 команды по 20 битов, или целое число со знаком на 40 битов. 8 битов указывали на тип команды, а остальные 12 битов определяли одно из 4096 слов.Внутри арифметико-логического устройства находился особый внутренний регистр в 40 битов, так называемый аккумулятор. Типичная команда добавляла слово из памяти к аккумулятору или сохраняла содержимое аккумулятора в памяти. Эта машина не выполняла арифметические операции с плавающей точкой, так как фон Нейман понимал, что любой сведущий математик был способен держать плавающую запятую в голове.Фон-неймановская вычислительная машина породила принципы фон-неймана, совокупность этих принципов есть классическая архитектура ЭВМ. Она заключается в следующем:

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

2. Принцип однородности памяти – программы и данные хранятся в одной и той же памяти, над командами можно выполнять такие же действия, как и над данными.

3. Принцип адресности – основная память структурно состоит из нумерованных ячеек.

Архитектура ЭВМ – это абстрактное представление ЭВМ, которое отражает ее структурную, схемотехническую и логические организацию. Понятие архитектуры ЭВМ включает в себя:1. структурную схему ЭВМ;2. средства и способы доступа к элементам структурной схемы ЭВМ;3. организацию и разрядность интерфейсов ЭВМ;4. набор и доступность регистров;5. организацию и способы адресации памяти;6. способы представления и форматы данных ЭВМ;7. набор машинных команд ЭВМ;8. форматы машинных команд ЭВМ;9. обработку нештатных ситуаций – прерываний.Цифровой компьютер – машина, которая может решать задачи, выполняя данные ей команды. Последовательность команд, описывающих решение определенной задачи, называется программой. Электронные схемы компьютера могут распознавать и выполнять ограниченный набор простых команд. Все программы перед выполнением должны быть превращены в последовательность этих команд. Команды обычно не сложнее чем: сложить два числа, проверить, не является ли число нулем, скопировать кусок данных из одной части памяти в другую.

Page 10: Ответы на вопросы по архитектуре

Примитивные команды в совокупности составляют язык, на котором люди могут общаться с компьютером – машинный язык. Какие команды включить в машинный язык решают разработчики на этапе проектирования компьютера. Обычно это зависит от назначения компьютера, от задач, которые он будет выполнять. В принципе машинные команды должны быть как можно проще, чтобы избежать сложностей на этапе конструирования и снизить затраты на электронику. Большинство машинных языков очень примитивны и использовать их очень сложно.Таким образом, компьютер понимает машинные команды, человеку удобнее писать команды на своем языке. Из-за этого возникают проблема, которую можно решить двумя способами. Эти способы включают в себя разработку новых команд, которые более удобны для человека, чем встроенные машинные языки. Новые команды в совокупности формируют язык, который можно назвать – Я1. Встроенные машинные команды также формируют язык, который назовем Я0. Компьютер выполняет программы написанные только на Я0. Два решения, обозначенной выше проблемы, различаются тем, как компьютер будет выполнять программы, написанные на Я1.Первый способ – замена каждой команды языка Я1 на эквивалентный набор команд языка Я0. Компьютер выполняет новую программу, написанную на Я0, вместо старой, написанной на Я1. Эта технология называется трансляцией. Второй способ – программа написанная на языке Я1, берется в качестве входных данных. Каждая команда рассматривается по очереди, причем сразу выполняется эквивалентный ей набор команд на языке Я0. Эта технология не требует составления новой программы на языке Я0. Она называется интерпретацией, программа, осуществляющая этот процесс, называется интерпретатором. Трансляция и интерпретация сходны. И тут, и там компьютер в конечном итоге выполняет набор команд на языке Я0. Оба метода, а также их комбинация широко используется.Чтобы трансляция и интерпретация были целесообразны, языки Я0 и Я1 не должны сильно различаться. Это значит, что язык Я1 хотя и лучше, чем Я0, но все же далек от идеала. Решение этой проблемы – создание еще одного набора команд, который в большей степени ориентирован на человека и в меньшей степени на компьютер, чем Я1. Этот набор команд также формирует язык, который можно назвать Я2.Изобретение целого ряда языков , каждый из которых более удобен для человека, чем предыдущий, может продолжаться до тех пор, пока мы не дойдем до подходящего нам языка. Каждый такой язык использует своего предшественника как основу, поэтому можно рассматривать компьютер в виде ряда уровней, причем язык, находящийся в самом низу иерархической структуры – самый примитивный, а находящийся в самом верху – самый сложный.Большинство современных компьютеров состоит из двух или более уровней. Например, существуют машины с шестью уровней.

Уровень 5 Язык высокого уровняТрансляция (компилятор)

Уровень 4 Уровень языка ассемблера

Трансляция (ассемблер)Уровень 3 Уровень операционной

системы

Page 11: Ответы на вопросы по архитектуре

Трансляция (ассемблер)Уровень 2 Уровень архитектуры

командИнтерпретация (микропрограмма) или непосредственное выполнение

Уровень 1 Микроархитектурный уровень

Аппаратное обеспечениеУровень 0 Цифровой логический

уровеньУровень 0 – аппаратное обеспечение компьютера. Электронные схемы выполняют программы, написанные на языке уровня 1. Объекты этого уровня называются вентилями (логические элементы). Вентили состоят из аналоговых компонентов, таких как транзисторы, но они могут быть точно смоделированы как цифровые средства. У каждого вентиля есть одно или несколько цифровых входных данных (сигналов, представляющих 0 или 1). Вентиль вычисляет простые функции этих сигналов, такие как И или ИЛИ. Каждый вентиль формируется из нескольких транзисторов. Несколько вентилей формируют 1 бит памяти, который может содержать 0 или 1. Биты памяти, объединенные в группы, например, по 16, 32 или 64, формируют регистры. Каждый регистр может содержать одно двоичное число до определенного предела. Уровень 1 – микроархитектурный уровень. На этом уровне можно видеть совокупности 8 или 32 регистров, которые формируют локальную память и схему, называемую АЛУ. АЛУ выполняет простые арифметические операции. Регистры вместе с АЛУ формируют тракт данных, по которому поступают данные. Основная операция тракта данных: выбирается один или два регистра, АЛУ производит над ними какую-либо операцию, а результат помещается в один из этих регистров.На некоторых машинах работа тракта данных контролируется специальной программой – микропрограммой. На других машинах тракт данных контролируется аппаратными средствами.На машинах, где тракт данных контролируется ПО, микропрограмма – это интерпретатор для команд на уровне 2. Микропрограмма вызывает команды из памяти и выполняет их одну за другой, используя при этом тракт данных. (Например, чтобы выполнить операцию сложения, эта команда вызывается из памяти, ее операнды помещаются в регистры, АЛУ вычисляет сумму, а затем результат переправляется обратно.) На компьютере с аппаратным контролем происходит такая же процедура, но при этом нет программы, которая контролирует интерпретацию команд уровня 2.Уровень 2 – уровень архитектуры систем команд. (Каждый производитель публикует руководство для компьютеров, которые он продает. Такие руководства содержат информацию именно об этом уровне.) Уровень команд – это то, каким представляется компьютер программисту машинного языка, или программа уровня архитектуры команд – это то, что выдает компилятор. Составитель компилятора должен знать, какая модель памяти используется в машине, какие регистры, типы данных и команды имеются в наличии и т.д. Вся эта информация в совокупности и определяет уровень архитектуры команд.Третий уровень обычно гибридный. Большинство команд в его языке есть также и на уровне архитектуры систем команд. Но у этого уровня есть

Page 12: Ответы на вопросы по архитектуре

некоторые дополнительные особенности: имеется набор новых команд, другая организация памяти, способность выполнять две и более программ одновременно и т.д. При построении третьего уровня возможно больше вариантов, чем при построении первого и второго. Новые средства, появившиеся на третьем уровне, выполняются интерпретатором, который работает на втором уровне. Этот интерпретатор был когда-то назван операционной системой. Команды третьего уровня, идентичные командам второго уровня, выполняются микропрограммой или аппаратным обеспечением. Т.е. одна часть команд третьего уровня интерпретируется операционной системой, другая часть – микропрограммой. Поэтому этот уровень считается гибридным. Он называется уровнем операционной системы.Между третьим и четвертым уровнями есть существенная разница. Нижние три уровня конструируются не для того, чтобы с ними работал обычный программист. Они изначально предназначены для работы интерпретаторов и трансляторов, поддерживающих более высокие уровни. Эти трансляторы и интерпретаторы составляются системными программистами. Уровни с четвертого и выше предназначены для прикладных программистов, решающих конкретные задачи. Уровни 2 и 3 обычно интерпретируются, а уровни 4, 5 и выше обычно, хотя и не всегда, поддерживаются транслятором. Машинные языки уровней 1, 2 и 3 – цифровые. Программы, написанные на этих языках, состоят из длинных рядов цифр, начиная с четвертого уровня, языки содержат слова и сокращения, понятные человеку.Четвертый уровень представляет собой символическую форму одного из языков более низкого уровня. На этом уровне можно писать программы в приемлемой для человека форме. Эти программы сначала транслируются на язык уровня 1, 2 или 3, а затем интерпретируются. Программа, которая выполняет трансляцию, называется ассемблером.Пятый уровень обычно состоит из языков, разработанных для прикладных программистов. Эти языки называются языками высокого уровня. Программы, написанные на этих языках, обычно транслируются на уровень 3 или 4. Трансляторы, которые обрабатывают эти программы, называются компиляторами. Иногда также используется метод интерпретации (например, программы на языке Java обычно интерпретируются). Таким образом, компьютер проектируется как иерархическая структура уровней, каждый из которых надстраивается над предыдущим. Каждый уровень представляет собой определенную абстракцию с различными объектами и операциями. Рассматривая компьютер подобным образом можно не принимать во внимание ненужные детали и свести сложный предмет к более простому для понимания.

Общая характеристика цифрового логического уровня вычислительной машины. Базовые вентили, реализация булевых функций. Схема полусумматора, сумматора. Краткая характеристика АЛУ.

Page 13: Ответы на вопросы по архитектуре

Процессор – назначение, основные характеристики, программная модель процессора. Суперскалярная архитектура процессора.Персональная ЭВМ типа IBM PC (рис. 1) включает в себя микропроцессор (МП), оперативную память и устройства ввода-вывода (УВВ), объединенные между собой системной шиной.

Рис. 1.  Структура персональной ЭВММикропроцессор предназначен для выполнения собственно арифметических и логических операций и управления взаимодействием блоков компьютера. Оперативная память хранит операнды и программу во время ее выполнения. Устройства ввода-вывода обеспечивают обмен информацией между ядром компьютера (МП и ОП) и средствами ввода и отображения данных. Сюда относятся мониторы, печатающие устройства, графопостроители, жесткие и гибкие магнитные диски и так далее. Компьютер строится по магистрально-модульному принципу, при котором все блоки компьютера связываются между собой системной шиной, предназначенной для обмена данными, адресной и управляющей информацией между составными частями ЭВМ. Как правило, при такой организации в любой момент может быть установлена связь только между двумя модулями ЭВМ. Системная шина определяет общий порядок обмена между любыми блоками компьютера, а также максимальное количество используемых устройств ввода-вывода. Она включает в себя шину адреса (ША), шину данных (ШД) и шину управления (ШУ), содержащую набор линий, по которым передаются управляющие сигналы между блоками компьютера. Специфика каждого конкретного блока учитывается особыми управляющими устройствами – контроллерами, входящими в состав этих блоков, например, работой жесткого диска управляет контроллер жесткого диска, используя информацию, поступающую к нему от микропроцессора по системной магистрали.Структура 16-разрядного микропроцессораI8086 представлена на рис. 2.

Page 14: Ответы на вопросы по архитектуре

Рис. 2.  Структура 16-разрядного микропроцессораВ состав микропроцессора входят: 1. арифметико-логическое устройство (АЛУ), предназначенное для выполнения арифметических и логических операций; 2. внутренняя регистровая память, состоящая из восьми 16-разрядных регистров; четыре из них допускают раздельное использование своих младших и старших байтов, обеспечивая тем самым возможность обработки как 16-разрядных слов, так и байтов информации; 3. устройство управления, включающее в себя

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

4. указатель команд (IP – instruction pointer), определяющий адрес выполняемой команды в сегменте команд оперативной памяти; 5. регистр флагов (FLAGS), содержащий признаки результата выполненных команд и некоторую управляющую информацию. Среди признаков результата отметим следующие: ZF – флаг нуля: равен 1 при получении нулевого результата,SF – флаг знака: устанавливается равным старшему биту результата,CF – флаг переноса: фиксирует факт переноса из старшего бита в арифметических операциях,OF – флаг переполнения: устанавливается в 1 при получении результата вне допустимого диапазона чисел,PF – флаг паритета: устанавливается в 1, если младшие 8 бит результата операции содержат четное число единиц;к флагам управления относятсяIF – флаг разрешения прерывания: когда флаг установлен в 1, процессор распознает маскируемые прерывания, что позволяет микропроцессору реагировать на особые ситуации, возникающие в работе внешних устройств; если значение флага равно нулю, то эти прерывания игнорируются,DF – флаг направления, применяется в командах обработки последовательности байт в памяти: если флаг равен 0, последовательность обрабатывается с элемента, имеющего наименьший адрес; если флаг установлен в 1, последовательность обрабатывается от старшего адреса к младшему,

Page 15: Ответы на вопросы по архитектуре

TF – флаг трассировки: если значение флага равно 1, то в микропроцессоре после выполнения каждой команды генерируется внутреннее прерывание, позволяющее перейти к соответствующей подпрограмме (используется при отладке программ);6. блок сегментных регистров, состоящий из четырех 16-разрядных регистров, каждый из которых содержит старшие разряды базового (начального) адреса сегмента оперативной памяти, выделяемого программе при ее выполнении: кодового сегмента CS, в котором содержится код программы; сегмента данных DS; сегмента стека SS и дополнительного сегмента данных ES; 7. шинный интерфейс, который содержит схемы, обеспечивающие связь внутренней магистрали микропроцессора с системной шиной.Программная модель МП представляется набором его регистров. Регистр является устройством временного хранения данных и используется с целью облегчения арифметических, логических и пересылочных операций.Центральный процессор 8086 имеет четыре 16-битных регистра общего назначения AX, BX, CX, DX, четыре регистра-указателя SI, DI, BP и SP, четыре регистра сегментов CS, DS, ES, SS, один 16-битовый регистр флагов FLAGS и указатель программ IP (см. рис.2.1)

Рис. 2.1.  Программная модель ЦП 8086

Регистры общего назначения используются в программах для хранения:-операндов логических и арифметических операций;-компонентов адреса;-указателей на ячейки памяти.Использовать для самостоятельной адресации можно только младшие 16 и 8 битные части этих регистров. Старшие 16 битов этих регистров как самостоятельные объекты недоступны. Так как эти регистры физически находятся в микропроцессоре внутри арифметико-логического устройства (АЛУ), то их еще называют регистрами АЛУ.В программной модели микропроцессора имеется шесть сегментных регистров. Их наличие обусловлено спецификой организации и использования оперативной памяти микропроцессора Intel. Микропроцессор аппаратно поддерживает структурную организацию программы в виде трех частей, называемых сегментами. Для того чтобы указать на сегменты, к которым программа имеет доступ в данный конкретный момент времени, и предназначены сегментные регистры. Фактически в этих регистрах

Page 16: Ответы на вопросы по архитектуре

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

1. Сегмент кода. Содержит команды программы. Для доступа к этому сегменту служит регистр CS – сегментный регистр кода. Он содержит адрес сегмента с машинными командами, к которому имеет доступ микропроцессор (то есть эти команды загружаются в конвейер микропроцессора)

2. Сегмент данных. Содержит обрабатываемые программой данные. Для доступа к этому сегменту служит регистр DS – сегментный регистр данных, который хранит адрес сегмента данных текущей программы.

3. Сегмент стека. Этот сегмент представляет собой область памяти называемую стеком. Работу со стеком микропроцессор организует по следующему принципу: последний записанный в эту область элемент выбирается первым. Для доступа к этому сегменту служит регистр SS – сегментный регистр стека, содержащий адрес сегмента стека.

4. Дополнительный сегмент данных. Неявно алгоритмы выполнения большинства машинных команд предполагают, что обрабатываемые ими данные расположены в сегменте данных, адрес которого находится в сегментном регистре DS. Если программе недостаточно одного сегмента данных, то она имеет возможность использовать еще три дополнительных сегмента данных. Но в отличие от основного сегмента данных, при использовании дополнительных сегментов данных их адреса требуется указывать явно с помощью специальных префиксов переопределения сегментов в команде. Адреса дополнительных сегментов данных должны содержаться в регистрах ES, GS,FS.

Все современные процессоры помещаются на одной микросхеме. Помимо процессора на этой же микросхеме размещается часть памяти.Каждая микросхема содержит набор выводов, через которые происходит обмен информацией с другими устройствами. Выводы можно поделить на три типа: адресные, информационные, управляющие. Они связаны с соответствующими выводами на микросхемах памяти и микросхемах устройств ввода-вывода через набор параллельных проводов.Чтобы вызвать команду, центральный процессор сначала посылает в память адрес этой команды по адресным выводам. Затем он запускает одну или несколько линий управления, чтобы сообщить памяти, что ему надо прочитать, например, слово. Память выдает ответ, помещая требуемое слово на информационные выводы процессора и посылая сигнал о том, что это сделано. Когда центральный процессор получает данный сигнал, он принимает слово и выполняет вызванную команду. Таким образом, ЦП подает сигналы на выводы и принимает сигналы на входы. Другого способа обмена информацией не существует. Число адресных выводов и число информационных выводов – два ключевых параметра, которые определяют производительность процессора.Микросхема, содержащая m – адресных выводов, может обращаться к 2m

ячейкам памяти (m=16, 20, 32, 64).Микросхема, содержащая n информационных выводов, может считывать или записывать n – битное слово за одну операцию. Обычно n=8, 16, 32, 64.Выводы управления регулируют и синхронизируют поток данных к процессору и обратно, а также выполняют ряд других операций.Выводы управления можно поделить на 5 категорий: управление шиной, прерывание, арбитраж шины, состояние, разное.

Page 17: Ответы на вопросы по архитектуре

Выводы управления шиной по большей части представляют собой выходы из центрального процессора в шину. Они сообщают, что процессор хочет считать информацию из памяти или записать информацию в память.Выводы прерывания – это входы из устройств ввода-вывода в процессор. В большинстве систем процессор может дать сигнал устройству ввода-вывода начать операцию, а затем приступить к какому-нибудь другому действию, пока устройство ввода-вывода выполняет свою работу. Когда устройство ввода-вывода заканчивает свою работу, контроллер ввода-вывода посылает сигнал на один из выводов прерывания, чтобы прервать работу процессора и заставить его обслужить устройство ввода-вывода.Выводы разрешения конфликтов в шине (арбитраж шины) нужны для того, чтобы регулировать поток информации в шине, т.е. не допускать таких ситуаций, когда несколько устройств пытаются воспользоваться шиной одновременно.Некоторые центральные процессоры могут работать с различными сопроцессорам (графический процессор, процессор с плавающей точкой). Чтобы обеспечить обмен информацией между процессором и сопроцессором, нужны специальные выводы для передачи сигналов. Кроме этих выводов у некоторых процессоров есть дополнительные выводы, которые выдают или принимают информацию о состоянии, или нужны для обеспечения совместимости со старыми микросхемами устройств ввода-вывода.В прошлом, процессор, выполняя программу, по очереди выбирал из памяти и активировал команды. Однако, процесс обработки команды может быть разбит, например, на следующие стадии:F – выборка (fetch) – чтение команды из памяти;D – декодирование (decode) – декодирование команды;A – формирование адресов (address generate) и выборка операндов;E – выполнение (execute) – выполнение заданной в команде операции;W – запись (write) – сохранение результата по целевому адресу.При рассмотрении пятистадийного командного цикла одновременно на разных стадиях может выполняться до пяти команд. Когда очередная команда завершает действия на одной стадии, например F, и переходит на следующую – D, то оборудование стадии F простаивает и может быть использовано для чтения следующей команды. Таким образом, очередная команда может начинать выполнение, не дожидаясь выполнения предыдущей команды.Но, очередная команда может перейти с одной стадии на другую при выполнении двух условий:- действия команды на текущей стадии завершены;- предыдущая команда освободила оборудование следующей стадии.При условии, что каждая стадия выполняется в любой команде одинаковое количество времени, конвейер работает идеально, и одновременно всегда выполняются пять команд.Для процессоров CISC – архитектуры (компьютер с полным набором команд) (процессоры семейства х86) такая идеальная ситуация складывается не всегда.Например, команда, извлекаемая из памяти на стадии F, может иметь разную длину и, следовательно, извлекаться из памяти за разное число машинных циклов. Или, на стадии E время выполнения операции зависит не только от типа операции (к числу коротких можно отнести сложение, логические операции, к длинным – умножение и деление), но даже иногда и от значений операндов.

Page 18: Ответы на вопросы по архитектуре

Таким образом, можно сказать, что конвейеры процессоров с классической CISC – архитектурой редко работают на полную мощность, находясь значительную часть времени в ожидании завершения «длинных» операций.Желание увеличить производительность конвейеров привело к появлению процессоров т.н. RISC – архитектуры (компьютер с сокращенным набором команд),.из систем команд которых были удалены все факторы тормозящие работу конвейера.К особенностям RISC – архитектуры можно отнести:1. форматы всех команд имеют одинаковую длину;2. все операции выполняются за одинаковый промежуток времени;3. операнды всех арифметических и логических операций располагаются только в регистрах, к оперативной памяти обращаются только команды загрузки и сохранения.Реализация этих особенностей позволила приблизить работу конвейера к идеальной, но при этом ограничила возможности систем команд процессора, что привела к значительному увеличению длины программ, увеличению времени выборки команд из памяти и т.д.В настоящее время понятия RISC – и CISC – архитектура являются обозначением некоторых принципов проектирования, но не характеристиками конкретных процессоров. Современные процессоры, как правило, реализованы по гибридному принципу: содержат ядро RISC, которое выполняет простые и самые распространенные команды за один такт на стадию конвейера. При этом пользователь имеет дело с системой команд привычной CISC – архитектуры и внутренние вопросы реализации командного цикла его, как правило, не интересуют.Если один конвейер существенно ускоряет процесс выполнения команд, то вероятно можно построить два конвейера и ставить на них одновременно пару команд программы. В процессоре Pentium так и сделали - он имел два 5-уровневых конвейера, которые могли работать одновременно и выполнять две команды за один машинный такт. Однако в этом случае имеются и ограничивающие условия. Например, нельзя ставить на разные конвейеры две последовательные команды, если вторая использует в качестве операнда результат работы первой.Производительность 2-ух конвейерного процессора превышает производительность одноконвейерного, но далеко не в два раза.Следующим шагом на пути увеличения производительности процессора было решение, которое называется динамический параллелелизм. Процессоры, реализующие этот принцип, называются суперскалярными.Пусть имеется следующий фрагмент программы: MOV R1, R4ADD R1, @R0 MOV R5, R6SUB R5, R7CLR R6Здесь вторая команда использует в качестве операнда содержимое ячейки памяти, следовательно, попав на конвейер, она будет тормозить его на стадии A. Три следующие команды никак не связаны с результатом работы второй команды и могли бы выполниться еще до завершения предыдущей команды, однако тогда пришлось бы изменить порядок выполнения команд, определенных программой, чего конвейер не предусматривает.Суперскалярная архитектура предполагает, что команды могут выполняться не только в порядке размещения их в программе. Возможность выполнения определяется, во-первых, отсутствием зависимостей от ранее расположенных, но еще не завершенных команд, во-вторых, наличием свободных ресурсов процессора, необходимых для выполнения команды.

Page 19: Ответы на вопросы по архитектуре

Одним из первых процессоров, реализующих механизм динамического параллелелизма, был процессор Pentium Pro (Pentium II).

Виды памяти, основные характеристики, принципы работы памяти.Память ЭВМ предназначена для хранения программ и данных, причем эффективность работы ЭВМ во многом определяется характеристиками ее памяти. Во все времена к памяти предъявлялись три основных требования: большой объем, высокое быстродействие и низкая (умеренная) стоимость.Все перечисленные требования к памяти являются взаимно-противоречивыми, поэтому пока невозможно реализовать один тип ЗУ, отвечающий всем названным требованиям. В современных ЭВМ организуют комплекс разнотипных ЗУ, взаимодействующих между собой и обеспечивающих приемлемые характеристики памяти ЭВМ для каждого конкретного применения.В основе большинства ЭВМ лежит трехуровневая организация памяти: сверхоперативная (СОЗУ)– оперативная (ОЗУ) – внешняя (ВЗУ). СОЗУ и ОЗУ могут непосредственно взаимодействовать с процессором, ВЗУ взаимодействует только с ОЗУ.СОЗУ обладает максимальным быстродействием (равным процессорному), небольшим объемом (101 – 105 байтов) и располагается, как правило, на кристалле процессорной БИС. Для обращения к СОЗУ не требуются магистральные (машинные) циклы. (Действия МПС по передаче в (из) МП одного слова команды (данных) называются машинным циклом. Командный цикл состоит из одного или нескольких машинных циклов.) В СОЗУ располагаются наиболее часто используемые на данном участке программные данные, а иногда и фрагменты программы. Быстродействие ОЗУ может быть ниже процессорного (не более чем на порядок), а объем составляет 106 – 1010 байтов. В ОЗУ располагаются подлежащие выполнению программы и обрабатываемые данные. Связь между процессором и ОЗУ осуществляется по системному или специализированному интерфейсу и требует для своего осуществления машинных циклов.Информация, находящаяся в ВЗУ, не может быть непосредственно использована процессором. Для использования программ и данных, расположенных в ВЗУ, их необходимо предварительно переписать в ОЗУ. Процесс обмена информацией между ВЗУ и ОЗУ осуществляется средствами специального канала или (реже) – непосредственно под управлением процессора. Объем ВЗУ практически неограничен, а быстродействие на 3-6 порядков ниже процессорного. Схематически взаимодействие между процессором и уровнями памяти представлено на рисунке:

Управление Процессор

СОЗУ

ОЗУ

Канал

ВЗУДанные

Данные

Page 20: Ответы на вопросы по архитектуре

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

Сверхоперативная память.Применение СОЗУ в иерархической памяти ЭВМ может обеспечить повышение производительности ЭВМ за счет снижения среднего времени обращения к памяти Т при условии, что время цикла СОЗУ Тс будет значительно меньше времени цикла ОЗУ То.В литературе для обозначения СОЗУ используется термин кэш-память (cash – тайник).Одной из самых эффективных технологий одновременного увеличения пропускной способности и уменьшения времени ожидания является применение нескольких блоков кэш-памяти. Основная технология – введение отдельной кэш-памяти для команд и отдельной для данных. Такая структура также называется Гарвардской, поскольку идея использования отдельной памяти для команд и отдельной памяти для данных впервые воплотилась в компьютере Marc III, который был создан Говардом Айкеном в Гарварде.Между разделенной кэш-памятью и основной памятью часто помещается кэш-память второго уровня. Вообще говоря, может быть три и более уровней кэш-памяти, поскольку требуются более продвинутые системы.

Прямо на микросхеме центрального процессора находится небольшая кэш-память для команд и небольшая кэш-память для данных, обычно от 16 до 64 Кбайт. Есть еще кэш-память второго уровня, которая расположена не на самой микросхеме процессора, а рядом с ним в том же блоке. Кэш память второго уровня соединяется с процессором через высокоскоростной тракт данных. Эта кэш-память обычно не является разделенной и содержит смесь данных и команд. Ее размер – от 512 Кбайт до 1 Мбайта. Кэш-память третьего уровня находится на той же плате что и процессор, и

Микросхемапроцессора

Кэш-память первого уровня для команд

Кэш-память первого уровня для данных

Объединенная кэш-память второго уровня

Объединенная кэш-память третьего уровня

Основная память (динамическое ОЗУ)

Контроллер клавиатуры

Графический контроллер

Контроллер диска

Корпус процессора

Плата процессора

Разделенная кэш-память первого уровня Кэш-память в плате процессора (статическое ОЗУ)

Page 21: Ответы на вопросы по архитектуре

обычно состоит из статического ОЗУ в несколько мегабайтов, которое функционирует гораздо быстрее, чем динамическое ОЗУ основной памяти. Обычно все содержимое кэш-памяти первого уровня находится в кэш-памяти второго уровня, а все содержимое кэш-памяти второго уровня находится в кэш-памяти третьего уровня.Существует два типа локализации адресов. Работа кэш-памяти зависит от этих типов локализации. Пространственная локализация основана на вероятности, что в скором времени появится потребность обратиться к ячейкам памяти, которые расположены рядом с недавно вызванными ячейками. Исходя из этого наблюдения, в кэш-память переносится больше данных, чем требуется в данный момент. Временная локализация имеет место, когда недавно запрашиваемые ячейки запрашиваются снова. Это может происходить, например, с ячейками памяти, находящимися рядом с командами внутри цикла. Принцип временной локализации используется при выборе того, какие элементы выкинуть из кэш-памяти в случае промаха кэш-памяти. Обычно отбрасываются те элементы, к которым давно не было обращений.Во всех типах кэш-памяти используется следующая модель. Основная память разделяется на блоки фиксированного размера, которые называются строками кэш-памяти. Строка кэш-памяти состоит из нескольких последовательных байтов (обычно от 4 до 64). Строки нумеруются, начиная с 0, то есть если размер строки составляет 32 байта, то строка 0 – это байты с 0 по 31, строка 1 – байты с 32 по 63 и т.д. В любой момент времени несколько строк находится в кэш-памяти. Когда происходит обращение к памяти, контроллер кэш-памяти проверяет, есть ли нужное слово в данный момент в кэш-памяти. Если есть, то можно сэкономить время, требуемое на доступ к основной памяти. Если данного слова в кэше нет, то какая-либо строка из нее удаляется, а вместо нее помещается нужная строка из основной памяти или из кэш-памяти более низкого уровня. Существует множество вариаций данной схемы, но в их основе всегда лежит идея держать в кэш-памяти как можно больше часто используемых строк, чтобы число успешных обращений к кэш-памяти было максимальным.Принято различать СОЗУ по способу доступа к хранимой в нем информации. Известны два основных класса СОЗУ по этому признаку.- с прямым доступом- с ассоциативным доступом.СОЗУ с прямым доступом (РОН – регистры общего назначения) получило широкое распространение в большинстве современных ЭВМ. Фактически РОН – это небольшая регистровая память, доступ к которой осуществляется специальными командами. Стратегия размещения данных в РОН целиком определяется программистом (компилятором). Обычно в РОН размещают многократно используемые адреса, счетчики циклов, данные активного фрагмента задачи, что повышает вероятность обращения в ячейки РОН по сравнению с ячейками ОЗУ.Применение СОЗУ с ассоциативным доступом позволяет автоматизировать процесс размещения данных в СОЗУ, обеспечивая подмену активных в данный момент ячеек ОЗУ ячейками СОЗУ.Наличие АСОЗУ в ЭВМ позволяет (при достаточном его объеме и правильно выбранной стратегии загрузки) значительно увеличить производительность системы. Причем наличие или отсутствие АСОЗУ никак не отражается на построении программы. АСОЗУ не является программно-доступным объектом, оно скрыто от пользователя. В литературе для обозначения АСОЗУ используется термин кэш-память (cache – тайник).

Page 22: Ответы на вопросы по архитектуре

Исходя из всего вышесказанного, систему памяти компьютера можно представить в виде иерархии:

Общая характеристика команд ПК, выполнение команд, формат команды, режимы адресации.Для выполнения команды программы необходимо произвести две операции с памятью: Load, т.е. загрузка (чтение, выборка) и Store (Write), т.е. сохранение (запись).Операция загрузки пересылает в процессор копию содержимого памяти по заданному адресу. При этом содержимое памяти остается неизменным. Для того чтобы начать операцию загрузки, процессор отсылает в память адрес и запрашивает содержимое памяти по этому адресу. Память считывает соответствующие данные и пересылает их в процессор.Операция сохранения пересылает элемент информации из процессора в память по заданному адресу, уничтожая предыдущие данные, хранившиеся по этому адресу. Для выполнения такой операции процессор отсылает в память данные и адрес, по которому они должны быть записаны.Задачи, выполняемые компьютерной программой, состоят из последовательности небольших шагов, таких как сложение двух чисел, проверка определенного условия, чтения символа с клавиатуры или вывод такового на экран. Следовательно, компьютер должен поддерживать команды для выполнения следующих типов операций:- пересылка данных между памятью и регистрами процессора.- арифметические и логические операции с данными.- управление последовательностью выполнения программ и их команд.- операции ввода-вывода.Для операции пересылки информации необходим способ описания. Приемниками и источниками информации могут быть память, регистры процессора и регистры подсистемы ввода-вывода. Будем идентифицировать место хранения символическим именем, представляющим его аппаратный двоичный адрес. Например, именами для адресов памяти могут быть LOG, PLACE, A, VAR2; регистры процессора могут иметь имена АХ, ВХ, а регистры ввода-вывода - имена DATAIN, OUTSTATUS и т.д. Данные, хранящиеся по указанному адресу, обозначаются именем этого адреса, заключенным в квадратные скобки. Запись типа: АХ ← [LOC] обозначает, что содержимое памяти по адресу LOC пересылается в регистр процессора АХ; или СХ ← [АХ] + [ВХ] – содержимое двух регистров складывается и результат пересылается в регистр СХ. Данный тип записи называется RTN - нотация регистровых передач.

Регистры

Кэш-память

Основная память

Внешняя память на магнитных дисках

Магнитная память Оптические диски

Увеличение быстродействия

Увеличение стоимости хранения одного бита

Увеличение объема

Page 23: Ответы на вопросы по архитектуре

Выполнение команд.Предположим, что компьютер поддерживает только одноадресные команды и что его процессор содержит много регистров (RO, R1, R2...), длина слова составляет 32 разряда, а память адресуется по-байтово. Рассмотрим операцию С ← [А] + [В] и фрагмент программы которая ее выполняет, в том виде, в каком он представлен в памяти компьютера. Три команды программы расположены в следующих друг за другом словах, начиная с адреса i. Так как каждая команда занимает 4 байта, вторая и третья команды начинаются по адресам i+4 и i+8. Процессор содержит регистр, называемый счетчиком команд IP, в котором хранится адрес следующей команды. Чтобы программа начала выполняться, адрес ее первой команды (i) должен быть помещен в регистр IP. Затем управляющие схемы процессора будут использовать информацию из этого регистра для выполнения последовательно расположенных в памяти команд, по одной за раз, в порядке увеличения их адресов. (Процесс называется

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

Page 24: Ответы на вопросы по архитектуре

Предположим, что количество складываемых чисел, n хранится в памяти по адресу N. Регистр R1 используется в качестве счетчика, определяющего количество повторений цикла. Поэтому в начале программы в регистр R1 загружается содержимое памяти, находящееся по адресу N. В теле цикла команда Decrement R1 уменьшает значение R1 на единицу. Тело цикла выполняется раз за разом до тех пор, пока результат операции Decrement остается большим нуля. Введем понятие команда перехода. Указанная команда загружает в счетчик команд заданное значение. Процессор выбирает из памяти и выполняет команду, хранящуюся по адресу и определяемую командой перехода, а не следующей командой в порядке увеличения адресов, как в случае линейной программы. Вызов команды условного перехода приводит к переходу в другую точку программы только в случае выполнения заданного условия. Если это условие не выполняется, значение в регистре IP увеличивается обычным образом. Команда Branch>0 LOOP (переход, если больше 0) является командой условного перехода, выполняющей перемещение по адресу LOOP в том случае, если результат предыдущей инструкции, увеличившей значение в регистре R1, больше 0. Это означает, что цикл повторяется до тех пор, пока в списке чисел остаются необработанные элементы, которые следует добавить к содержимому регистра R0. В конце n-го прохода по циклу команда Decrement возвращает значение 0, поэтому переход на начало цикла не осуществляется, а выполняется следующая по порядку команда - Move. Команда Move перемещает окончательный результат суммирования из регистра R0 в память по адресу SUM.Задачей блока команд, составляющих цикл LOOP, является прибавление очередного числа из списка к значению регистра R0 на каждом шаге цикла. Для этого в команде Add, находящейся внутри блока, каждый раз должен указываться новый адрес слагаемого. Как же задается этот адрес? Очевидно, что задавать его непосредственно невозможно - для этого пришлось бы на каждом шаге изменять команду Add. Возможный вариант решения - это использование для хранения адреса операнда

Page 25: Ответы на вопросы по архитектуре

регистр процессора Ri. Перед началом цикла в указанный регистр загружается адрес NUM1, и затем на каждом шаге цикла это значение увеличивается на 4.С подобными ситуациями приходится сталкиваться достаточно часто, следовательно, необходимы гибкие способы адресации операндов. Обычно система компьютера поддерживает множество таких способов, называемых режимами адресации. В архитектуре компьютера определен большой и гибкий набор режимов адресации, используемых для доступа к отдельным элементам и областям памяти. Приведем полное описание этих режимов и способов их записи на языке ассемблера. Набор режимов адресации процессора таков. 1.Непосредственная адресация. Операнд содержится прямо в команде. Это 8-разрядное или 32-разрядное число, длина которого определяется соответствующим битом в поле кода операции. Для короткого операнда указанный бит равен 0, для длинного — 1.2. Прямая адресация. Адрес операнда в памяти определяется заданным в команде 32-разрядным значением.3. Регистровая адресация. Операнд содержится в одном из восьми регистров общего назначения, заданном в команде.4. Косвенная регистровая адресация. Адрес операнда в памяти содержится в одном из восьми регистров общего назначения, заданном в команде.5. Базовая со смещением. В команде определяются 8- или 32-разрядное смещение со знаком и один из восьми регистров общего назначения, используемый в качестве базового. Исполнительный адрес операнда равен сумме содержимого базового регистра и смещения.6. Индексная со смещением. В команде задаются 32-разрядное смещение со знаком, один из восьми регистров общего назначения, который должен использоваться в качестве индексного, и коэффициент масштабирования — 1, 2, 4 или 8. Для получения исполнительного адреса операнда содержимое индексного регистра умножается на коэффициент масштабирования, а к результату прибавляется смещение.7. Базовая индексная. В команде задаются два из восьми регистров общего назначения и коэффициент масштабирования — 1, 2, 4 или 8. Регистры используются как базовый и индексный, а исполнительный адрес операнда вычисляется следующим образом: содержимое индексного регистра умножается на коэффициент масштабирования, а к результату прибавляется содержимое базового регистра.8. Базовая индексная со смещением. В команде задаются 8- или 32-разрядное смещение со знаком, два из восьми регистров общего назначения и коэффициент масштабирования — 1, 2, 4 или 8. Регистры используются как базовый и индексный, а исполнительный адрес операнда вычисляется следующим образом: содержимое индексного регистра умножается на коэффициент масштабирования, а результат складывается с содержимым базового регистра и смещением.В командах с двумя операндами исходный (src) и результирующий (dst) операнды задаются на языке ассемблера в таком порядке: КодОперации dst,srcДля иллюстрации режимов адресации удобно задействовать команду Move. Например, в команде MOV ЕАХ,25для пересылки десятичного значения 25 в регистр ЕАХ применяется непосредственная адресация. В команде MOV EAX, LOCATION

Page 26: Ответы на вопросы по архитектуре

используется прямая адресация. Данная команда пересылает в регистр ЕАХ двойное слово из памяти по адресу, определяемому меткой LOCATION. При этом предполагается, что указанная метка определена как метка для адреса памяти в разделе объявлений программы на языке ассемблера. Если метка LOCATION представляет адрес 1000, то данная команда пересылает в ЕАХ двойное слово, расположенное по адресу 1000.Следующая команда пересылает в регистр EAX содержимое регистра EBX MOV EAX, [EBX].Команда состоит из кода операции и некоторой дополнительной информации, например, откуда поступают операнды и куда должны отправляться результаты. В одних машинах все команды имеют одинаковую длину, в др. команды могут быть разной длины. Например, форматы команд процессора Pentium очень сложны и нерегулярны. Они содержат до 6 полей разной длины, пять из которых не обязательны. Эта ситуация сложилась из-за того, что архитектура машины развивалась на протяжении нескольких поколений и ранее в нее были включены не очень удачно выбранные характеристики.Важной особенностью является то, что команды не могут манипулировать одновременно двумя операндами, находящимися в оперативной памяти. По этой причине возможны только следующие сочетания операндов в команде: регистр-регистр, регистр- память, память – регистр, непосредственный операнд – регистр, непосредственный операнд – память.В общем виде формат команд выглядит следующим образом:

Байты 0-5 1-2 0-1 0-1 0-4 0-4Префикс Код операции Состояние SIB Смещение Непосредственный операнд

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