Основы микропроцессорной техники | ||||||||||||||||||||||||||||||||||||||||
Раздел 7. Организация персонального компьютера | ||||||||||||||||||||||||||||||||||||||||
| «Структура курса | Раздел 1 | Раздел 2 | Раздел 3 | Раздел 4 | Раздел 5 | Раздел 6 | Раздел 7 | Глава 8 | Дополнения | ||||||||||||||||||||||||||||||||||||||||
| Раздел 7 - Страницы: «1 | 2 | 3 | 4 | 5 | 6 | 7 | ||||||||||||||||||||||||||||||||||||||||
7.5. Средства интерфейсаДля связи компьютера с пользователем (т.е. организации интерфейса пользователя) применяются видеоадаптер, который руководит видеомонитором, клавиатура и графический манипулятор типа "мышь" (mouse), touch pad или stick pointer. Видеоадаптер это устройство сопряжения компьютера с видеомонитором и чаще всего выполняется в виде специальной платы расширения, которая вставляется в системную шину или локальную шину компьютера. При этом изображение, формируемое на экране монитора, хранится в видеопамяти, которая входит в состав видеоадаптера. Видеопамять это оперативная память, что, хотя и не является, по сути, системной памятью, рассматривается процессором как часть системной памяти с адресами A0000 - BFFFF (всего 128 Кбайт). То есть с этой памятью процессор может взаимодействовать как с системной оперативной памятью: писать информацию в любую ячейку и читать информацию из любой ячейки. Но одновременно эта же память постоянно сканируется (т.е. последовательно опрашивается) самим видеоадаптером для формирования растрового изображения на экране монитора. То есть доступ к этой памяти имеют как процессор, так и видеоадаптер. Скорость обмена с видеопамятью - довольно важный параметр, он влияет на удобство работы с компьютером и часто определяет круг задач, которые может им выполняться. Поэтому для видеопамяти используют самые быстродействующие микросхемы. Кроме того, применяют специальные архитектурные решения, позволяющие облегчить разделение доступа к памяти со стороны процессора и видеоадаптера. Например, в случае двохпортовои памяти VRAM - Video RAM, к каждой ее ячейки одновременно могут получить доступ (с записью или чтением) как процессор, так и сам адаптер. Отметим, что в старых видеоадаптерах для снижения искажений изображения на экране во время перезаписи содержимого памяти использовалось обращения к памяти со стороны центрального процессора только в периоды кадрового и строчного тушащего импульсов (когда электронный луч монитора гасится при переходе к следующей строке экрана или до следующего кадра). Все современные видеоадаптеры могут работать в двух основных режимах: текстовом (символьном, алфавитно-цифровой) и графическом. В текстовом режиме видеопамять имеет начальную адрес B8000, а в графиче ском - А0000. В текстовом режиме на экран можно выводить только отдельные символы, причем только в определенные позиции на экране. При этом в видеопамяти хранятся исключительно коды выводимых символов (8-разрядные) и коды атрибутов символов (8-разрядные). То есть каждой символьной позиции на экране соответствует два байта памяти. К атрибутов символа относятся яркость, цвет, мерцание как символа, так и его фона. Для преобразования содержимого памяти в видеосигнал точечного изображения применяется так называемый знакогенератор. Он может представлять собой ПЗУ, в котором записано порядковое растровое изображение каждого символа. При этом чем больше точек растра выделяется под изображение символа, тем он качественнее, но тем больше места занимает на экране. Преимущества текстового режима - это простота управления экраном и малый объем требуемой памяти. Примером его использования является программа начального запуска BIOS. В графическом режиме в видеопамяти хранится описание каждой точки на экране монитора. Каждой точке соответствует несколько бит памяти (используется ряд: 1, 4, 8, 16, 24 бит на одну точку). При этом, соответственно, каждая точка может иметь 2 n состояний, где n - количество битов, а под состоянием понимается цвет и яркость точки. При одном бите точка может быть белым или черным, при 4 битах она может иметь 16 цветов, при 8 битах - 256, при 16 битах - 65 536, а при 24 битах - 16 777 216 цветов и оттенков. Здесь же отметим, что общее количество точек на экране в современных компьютерах выбирается из ряда 640 (по горизонтали) x 480 (по вертикали), 800х600, 1024х768, 1280х1024, 1600х1200. Отсюда нетрудно рассчитать необходимое для полного экрана объем видеопамяти. Так, например, при разрешении (разрешении) 800х600 точек и при 256 цветах (8 бит или 1 байт) нужно 800х600х1 = 480 000 байт памяти. При разрешении 1024х768 и 65 536 цветов (2 байта) нужно 1024х768х2 = 1 572 864 байта. Однако объем видеопамяти выбирается из следующего ряда: 256 Кбайт, 512 Кбайт, 1 Мбайт, 2 Мбайт, 4 Мбайт, 8 Мбайт, 16 Мбайт. В табл. 7.3 приведены необходимые объемы видеопамяти для различных режимов работы видеоадаптера.
Понятно, что для полного восстановления такого большого объема памяти требуется значительное время даже при быстрой видеопамяти и быстром процессоре. В роли ограничивающего фактора будет выступать темп обмена системной шиной. Поэтому именно видеоадаптеры первыми стали размещать на локальной шине VLB или на шине PCI, а позже - на выделенной шине AGP. Другое направление ускорения формирования изображения - совершенствование принципов обмена с компьютером. Первые видеоадаптеры были рассчитаны на то, чтобы все манипуляции с изображением проводил сам центральный процессор компьютера. Принципиально иной подход - использование графического сопроцессора. При этом центральный процессор только дает команды на формирование изображения, а сопроцессор, расположенный на плате видеоадаптера, сам уже выполняет всю обработку, расчеты и формирование объектов на экране, что дает большое увеличение скорости формирования изображений. Промежуточный вариант - это применение так называемых графических ускорителей, т.е. узлов, которые выполняют наиболее трудоемкие операции относительно изображения, но центральный процессор при этом не освобождается полностью от управления видеопамятью. В настоящее время наиболее распространены следующие стандарты дисплеев:
Для подключения к компьютеру клавиатуры применяется специальный интерфейс с последовательной передачей информации. Это позволяет использовать для подсоединения клавиатуры всего два двунаправленных провода (линия данных и тактовый сигнал). Обмен информацией идет 11-битными посылками, включающих 8 разрядов данных и служебную информацию (то есть стар товый бит, бит четности и стоповый бит). В компьютере IBM PC XT для подключения клавиатуры использовалась микросхема PPI (Programmable Peripheral Interface) i8255, а в PC AT - микросхема UPI (Universal Peripheral Interface) i8042. Принцип работы клавиатуры довольно прост. Он сводится к постоянному сканирования последовательному опросу) всех клавиш (обычно применяется 101-клавишная клавиатура) и к пересылке в компьютер номера нажатой клавиши (8-битного скан-кода), причем как при ее нажатии, так и при отпускании. При отпускании клавиши ее скан-код предваряется посылкой кода F0. Если клавиша удерживается длительное время, то через заданный интервал посылки ее скан-кодов повторяются с заданной частотой. Если одновременно нажимается более одной клавиши, то повторяется посылка кода только последней из нажатых клавиш. При получении скан-кода контроллером 8042 он формирует сигнал запроса аппаратного прерывания IRQ1. Это приводит к вызову программы обработки нажатия клавиши, находящейся в BIOS. Служебные клавиши (Shift, Сtrl, Alt) и переключающие клавиши (Caps Lock, Insert, Num Lock) обрабатываются специальным образом, а в случае нажатия символьных клавиш их скан-коды преобразуются в коды соответствующих символов и помещаются в буфер клавиатуры. Буфер клавиатуры - это 16-байтных область памяти, организованная по принципу FIFO "первым вошел - первым вышел", в которой хранятся коды нажатых клавиш до тех пор, пока их сможет обработать программа. Современные клавиатуры персональных компьютеров имеют 101 или 102 клавиши. Существуют "расширенные" модели с количеством клавиш до 122 и "усеченные" модели с количеством клавиш около 90, применяемые в портативных компьютерах типа ноутбук. Начиная с компьютера PC AT, клавиатура может не только передавать информацию, но и принимать ее. Эта возможность используется для пересылки в клавиатуру команд, устанавливающие режимы ее работы (например, скорость повтора ввода символов при удерживаемой клавише или временная задержка перед повтором). Компьютерная мышь, которая служит для управления курсором, подключается к компьютеру через стандартный последовательный интерфейс RS-232C (о нем подробнее - в отдельной главе). Для передачи компьютеру информации о перемещении мыши используется 3-байтных формат. Два байта при этом содержат информацию о перемещении мыши по вертикали и по горизонтали, а один байт - о состоянии кнопок мыши. Передача ведется только в одном направлении (от мыши к компьютеру) со скоростью 1200 бит / с. Перемещение измеряется в специальных единицах cpi (counts per inch), равных примерно 0,005 дюйма (0,13 мм). Стоит отметить, что мышь, как правило, питается от системного блока компьютера, для чего задействованы неиспользуемые сигнальные линии разъема интерфейса RS-232C, так как собственно напряжения питания на разъемы не выведены. Именно поэтому мышь присоединяется к компьютеру чотирьохпровидним кабелем, хотя для информации хватило бы и двухпроводные. Подробнее о интерфейс RS-232C в следующем разделе. Сейчас используется также подключение мыши через интерфейс PS / 2, похожий на RS-232C, но не совместим с ним ни электрически, ни конструктивно. Альтернатива мыши - это манипуляторы Stick Pointer и Touch Pad, не имеющие механических движущихся частей. Сначала они применялись только в ноутбуках, но затем их стали размещать и на клавиатурах обычных настольных компьютеров. Stick Pointer представляет собой небольшой рычаг, расположенный между клавишами. Давление на него в разные стороны вызывает перемещение курсора на экране. При этом сам рычаг остается неподвижным. Touch Pad представляет собой небольшую площадку, расположенную рядом с клавишами, по которой необходимо двигать пальцем или ручкой, причем движение пальца вызывает такое же перемещения курсора на экране. С точки зрения компьютера эти манипуляторы ничем не отличаются от мыши, они используют тот же интерфейс. Сетевой адаптер джойстик подключается к компьютеру через собственный специальный интерфейс. Для связи с джойстиком не нужно никаких прерываний. Используется только один адрес ввода / вывода. 7.6. Внешняя памятьВнешняя память компьютера это дисковые накопители информации - встроенный накопитель на жестком диске (винчестер) и накопитель на сменных гибких дисках (дискетах). В обоих случаях магнитные диски хранят информацию в виде намагниченных концентрических дорожек (цилиндров) на магнитном покрытии, разбитых на сектора. Диск в накопителе постоянно вращается, а запись и чтение информации происходят перемещаемыми вдоль радиуса диска магнитными головками. Благодаря постоянному прогрессу технологии производства накопителей, развития технологии магнитных покрытий и магнитных головок, емкость винчестеров повысилась до нескольких десятков гигабайт, а емкость дискет - до сотен мегабайт (правда, стандартным пока считается объем дискеты 1,44 Мбайт). Подробное описание работы дисководов и принципов хранения информации на магнитных дисках требует слишком много места, к тому же оно не имеет прямого отношения к описываемой темы, поэтому сейчас приведем только некоторые особенности организации обмена информацией. Важный параметр любого дисковода - это его быстродействие, которое определяется, с одной стороны, достижимой скорости записи / чтения информации, а с другой - время позиционирования (т.е. установки в нужное положение) магнитной головки дисковода. Немаловажным является и быстродействие интерфейса, осуществляет связь компьютера с накопителем, а также применяемые способы организации обмена информацией. В настоящее время наиболее распространены два стандартных интерфейса для винчестеров:
Сравнение этих двух интерфейсов (SCSI и IDE) показывает, что в однопользовательских автономных системах гораздо эффективнее применять IDE, а в многопользовательских и многозадачных системах выгоднее становится SCSI. Стоит также отметить, что установка SCSI сложнее и дороже, чем IDE. Кроме того, при использовании винчестера с интерфейсом SCSI как сетевой диск могут возникнуть проблемы. Преимуществом SCSI является большее количество максимально подключенных дисководов и возможность одновременного выполнения ими подаваемых команд. А что касается скорости обмена, то она, в основном, определяется не пропускной способностью интерфейса, а другим параметрам, в частности скоростью используемой системной шины. Поэтому точно сказать, дисковод с каким интерфей сом будет работать быстрее, в общем случае невозможно. К тому же в случае IDE реальная скорость очень сильно зависит от схемотехнических решений, использованных изготовителем дисководов. Для ускорения обмена с дисками широко применяется кэширование, принцип которого близок к принципу кешцвання оперативной памяти. Точно так же кэширования диска позволяет за счет использования более быстрой электронной памяти, чем дисковая память, увеличить среднюю скорость обмена с диском. Здесь принципиально важны несколько моментов:
Все это приводит к тому, что оказывается гораздо выгоднее содержать в оперативной памяти (дисковой кэш-памяти) копию части диска и обращаться на диск только в том случае, если нужной информации нет в кэш-памяти. Для обмена с кэш-памятью, как и в случае оперативной памяти, используются методы Write Through (WT) и Write Back (WB). Потому что винчестер - это блочно-ориентированное устройство (размер блока равен 512 байт), то данные передаются в кэш блоками. При заполнении кэш-памяти в нее переписываются не только необходимые в данный момент блоки, но и следующие за ними (метод "чтения вперед", Read Ahead), дальнейшее обращение к которым наиболее вероятно. Особенно эффективно кэширования при оптимизации жесткого диска (его дефрагментации), когда каждый файл расположен в группе секторов, которые следуют один за другим. Как и в случае кэширования памяти, при кэшировании диска используется механизм LRU, позволяющая обновлять те блоки, в которые дольше всего не было обращений. Кэш-память диска обычно располагается на плате специального кэш-контроллера дисковода, и ее объем может достигать 16 Мбайт. Для соединения с компьютером дисковода для гибких дисков (флоппи-дисков, дискет) традиционно применяется специальный интерфейс SA-400, разработанный в начале 70-х годов. Контролер присоединяется к дисководу 34-проводным кабелем, причем к одному контроллеру обычно присоединяется до двух дисководов (теоретически их может быть четыре). На каждом накопители, как правило, есть четыре перемычки DS0-DS3 (Drive Select) для выбора номера данного дисковода. Данные интерфейсом передаются в последовательном коде в обоих направлениях (различными проводниками). Скорость передачи данных для дискет емкостью 1,44 Мбайт составляет 500 Кбит / с. Как и контроллер жестких дисков, контроллер гибких дисков в современных компьютерах установлен на системной плате (для старых моделей компьютеров выпускались специальные платы расширения). У нових комп'ютерах став стандартним дисковод на оптичних компакт-дисках (CD-ROM). На цих дисках інформація зберігається у виді зон з різними ступенями відбиття світла від поверхні диска. Замість безлічі концентричних доріжок на поверхні диска (як у магнітного диска, вінчестера), у випадку компакт-диску застосовується всього одна спіральна доріжка. Для читання інформації застосовується мініатюрний лазер. Диски мають діаметр 5 дюймів і стандартний об'єм 780 Мбайт. Швидкість обміну інформацією з компакт-дисками зараз складає від 2,4 Мбайт/з (для дисководів з швидкістю 16х) до 3,6 Мбайт/з (для дисководів з швидкістю 52х). Використовуються інтерфейси IDE і SCSI. На компакт-диск записуються не тільки дані, але і звук, а також зображення. Існують компакт-диски з можливістю однократного запису чи навіть багаторазового перезапису інформації з комп'ютера. Можливо, дисководи, що підтримують такі диски, незабаром увійдуть у стандартну комплектацію персонального комп'ютера. Правда, швидкість запису інформаці ї на компакт-диски звичайно істотно нижче швидкості читання інформації. | ||||||||||||||||||||||||||||||||||||||||
| « Структура курсу Розділ 7 - Сторінки: « 1 | 2 | 3 | 4 | 5 | 6 | 7 | ||||||||||||||||||||||||||||||||||||||||