Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Конспект лекций ЭВМ и периферийные устройства.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
6.37 Mб
Скачать
  • Секция управления.

    Команды выбираются из ОП блоками и заносятся в буфера команд.

    1. Параллельное выполнение программ.

    Все основные операции, выполняемые процессором - обращение в память, обработка команд и выполнение инструкций - являются конвейерными.

    II. Массивно-параллельные компьютеры с распределенной памятью. Объединяется несколько серийных микропроцессоров, каждый со своей локальной памятью, посредством некоторой коммуникационной среды.

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

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

    Но эта архитектура имеет 2 существенных недостатка:

    • требуется быстродействующее коммуникационное оборудование, обеспечивающее среду передачи сообщений;

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

    Последнее обстоятельство и мешает широкому внедрению подобных архитектур.

    К данному классу можно отнести компьютеры Intel Paragon, IBM SP1, Parsytec, IBM SP2 и CRAY T3D.

    Компьютеры Cray T3D и T3E используют единое адресное пространство (общая виртуальная память) (см. рис. 11.1). По аппаратному прерыванию особого случая адресации ОС выполняет пересылку страницы с одного узла на другой. У каждого МП своя локальная память, но единое виртуальное адресное пространство.

    Рис. 11.1.  Структура супер-ЭВМ Cray T3D

    Факторы, снижающие производительность параллельных компьютеров:

    1. Закон Амдала.

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

    Таблица 11.1.

    Число ПЭ

    Доля последовательных вычислений

    50%

    25%

    10%

    5%

    2%

    2

    1,33

    1,60

    1,82

    1,90

    1,96

    8

    1,78

    2,91

    4,71

    5,93

    7,02

    32

    1,94

    3,66

    7,80

    12,55

    19,75

    512

    1,99

    3,97

    9,83

    19,28

    45,63

    2048

    2,00

    3,99

    9,96

    19,82

    48,83

    1. Время инициализации посылки сообщения (латентность) и время передачи сообщения по сети.

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

    1. Возможность асинхронной посылки сообщений и вычислений.

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

    1. Неравномерная загрузка всех процессорных элементов.

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

    1. Время ожидания прихода сообщения.

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

    1. Реальная производительность одного процессора.

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

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

    IV. Кластерная архитектура. По такому принципу построены CRAY SV1, HP Exemplar, Sun StarFire, NEC SX-5, последние модели IBM SP2 и другие. Кластерная архитектура представляет собой комбинации предыдущих трех. Из нескольких процессоров (традиционных или векторно-конвейерных) и общей для них памяти формируется вычислительный узел. Если полученной вычислительной мощности не достаточно, то объединяется несколько узлов высокоскоростными каналами. Часто создаются из общедоступных компьютеров на базе Intel и недорогих Ethernet-сетей под управлением операционной системы Linux.

    11.4 Технологии параллельного программирования

    Средства программирования: параллельные расширения и диалекты языков - Fortran, C/C++, ADA и др. Самым крупным достижением в деле создания программного обеспечения была стандартизация интерфейса передачи сообщений MPI (Message Passing Interface). Набор функций этого интерфейса вобрал в себя лучшие черты своих предшественников. Основные достоинства MPI:

    • поддержка нескольких режимов передачи данных;

    • предусматривает гетерогенные вычисления;

    • передача типизированных сообщений;

    • построение библиотек - MPICH, LAM MPI;

    • наличие вариантов для языков программирования C/C++, Fortran;

    • поддерживает коллективные операции: широковещательную передачу, разборку/сборку, операции редукции;

    • совместимость с многопоточностью.

    11.5 Оценки производительности супер-эвм

    Большинство оценочных характеристик производительности супер-ЭВМ связано с вычислениями над вещественными числами. К ним относится пиковая производительность (ПП), измеряемая в млн. операций с плавающей точкой, которые компьютер теоретически может выполнить за 1 с (MFLOPS). ПП - величина, практически не достижимая. Это связано с проблемами заполнения функциональных конвейерных устройств. Чем больше конвейер, тем больше надо "инициализационного" времени для того, чтобы его заполнить. Такие конвейеры эффективны при работе с длинными векторами. Поэтому для оценки векторных супер-ЭВМ было введено такое понятие, как длина полупроизводительности - длина вектора, при которой достигается половина пиковой производительности. Более реальные оценки производительности базируются на временах выполнения различных тестов. Самыми хорошими тестами являются реальные задачи пользователя. Однако такие оценки, во-первых, весьма специфичны, а во-вторых, часто вообще недоступны или отсутствуют. Поэтому обычно применяются более универсальные тесты. Поскольку большую часть времени выполнения программ обычно занимают циклы, иногда именно они применяются в качестве тестов, например, известные ливерморские циклы.

    Наиболее популярным тестом производительности является Linpack, который представляет собой решение системы N линейных уравнений методом Гаусса. Так как известно, сколько операций с вещественными числами нужно проделать для решения системы, то, зная время расчета, можно вычислить выполняемое в секунду количество операций. Имеется несколько модификаций этих тестов. Обычно фирмы-производители компьютеров приводят результаты при N = 100. Свободно распространяется стандартная программа на Фортране, которую надо выполнить на суперкомпьютере, чтобы получить результат тестирования. Эта программа не может быть изменена, за исключением замены вызовов подпрограмм, дающих доступ к процессорному времени выполнения. Другой стандартный тест относится к случаю N = 1000, предполагающему использование длинных векторов. Эти тесты могут выполняться на компьютерах при разном числе процессоров, давая также оценки качества распараллеливания. Для MPP-систем более интересным является тест Linpack-parallel, в котором производительность измеряется при больших N и большом количестве процессоров. Здесь лидером является 6768-процессорный Intel Paragon (281 GFLOPS при N = 128600). Что касается производительности процессоров, то при N = 100 лидирует Cray T916 (522 MFLOPS), при N = 1000 и по пиковой производительности - Hitachi S3800 (соответственно 6431 и 8000 MFLOPS). Для сравнения, процессор в AlphaServer 8400 имеет 140 MFLOPS при N =100 и 411 MFLOPS при N = 1000. Для высокопараллельных суперкомпьютеров в последнее время все больше используются тесты NAS parallel benchmark, которые особенно хороши для задач вычислительной газо- и гидродинамики. Их недостатком является фиксация алгоритма решения, а не текста программы. Наиболее полную и интересную информацию о параллельных системах можно найти на сайте http://www.parallel.ru.

    Вопросы для самоконтроля

    1. Когда впервые реализована конвейерная обработка данных?

    2. Перечислите способы параллельной обработки данных.

    3. Сформулируйте следствие из закона Амдала.

    4. Назовите классы параллельных систем.

    5. Основные особенности векторно-конвейерных компьютеров.

    6. К какому классу параллельных систем относятся компьютеры Intel Paragon и CRAY T3D?

    7. В каких классах параллельных систем оперативная память разделяется между несколькими процессорами?

    8. Перечислите особенности MPI-интерфейса.

    9. Что представляет собой тест оценки производительности суперЭВМ Linpack?

    10. Какие тесты оценки производительности супер-ЭВМ вы знаете?

    Лекция 12. Особенности архитектуры современных высокопроизводительных вс Введение

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

    Попробуем разобраться, какой из факторов оказывается решающим для достижения рекордной производительности. Обратимся к известным историческим фактам. На одном из первых компьютеров мира - EDSAC, появившемся в 1949 году в Кембридже и имевшем время такта 2 микросекунды (2*10-6 секунды), можно было выполнить 2*n арифметических операций за 18*n миллисекунд, то есть в среднем 100 арифметических операций в секунду. Сравним с одним векторным процессором современного (2006 год) суперкомпьютера SX-6 (NEC): время такта приблизительно 1.8 наносекунды (1.8*10-9 секунд), а пиковая производительность около 10 миллиардов операций в секунду. Что же получается? Более чем за полвека производительность компьютеров выросла почти в 10 миллионов раз. При этом выигрыш в быстродействии, связанный с уменьшением времени такта с 2 микросекунд до 1.8 наносекунд, составляет лишь около 1000 раз. Откуда же взялось остальное? Ответ очевиден - использование новых решений в архитектуре компьютеров.

    Давайте разберемся, от чего зависит производительность (Performance – P) процессора. Общепринято отождествлять производительность со временем выполнения процессором инструкций программного кода, входящих в задание (процесс).

    1 команда 2 команда 3 команда 4 команда

    t T

    n

    N- общее число инструкций

    Тогда, P = N/T, где T – общее время выполнение кода;

    N – общее число инструкций;

    t – период тактовой чистоты F;

    n – количество тактов на одну инструкцию.

    Преобразуем это выражение:

    N n

    P = n x T = N/n x Fтактовая = IPC x Fтактовая

    Где: T= n x t, а IPC (Instructions per Cycle) – среднее число команд выполненных за один такт.

    Повышение производительности за счет повышения частоты предполагает:

    • меньшие проектные нормы (например: 45 нм вместо 90 нм);

    • переход на медь и увеличение слоев металлизации;

    • новые технологии и др.

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

    Несколько лет назад в моде были казавшиеся вполне обоснованными прогнозы, когда именно будет преодолен тот или иной порог по тактовой частоте процессоров. Четыре-пять гигагерц виделись практически свершившимся фактом, десять маячили где-то недалеко впереди. Однако прогнозы эти на долгое время так и остались прогнозами. В некоторый момент оказалось, что тепло, выделяемое процессором, становится настолько большим, что о стабильной работе на частотах выше четырех гигагерц в условиях, характерных для обычных персональных компьютеров, и говорить не приходится2). Энтузиасты, используя дополнительное охлаждение, вплоть до жидкого азота, научились разгонять процессоры производства Intel выше 6 гигагерц, в отдельных случаях до 7 и даже 8, но о стабильной продолжительной работе на таких частотах речь не идет. Как просто было когда-то сравнивать процессоры компании Intel между собой. Все знали, есть Pentium, есть его "урезанный" вариант Celeron, а в остальном, чем выше частота, тем лучше. Эта простота была следствием того факта, что в формуле, определяющей производительность вычислительной системы "тактовая частота процессора * число инструкций, выполняемых за один такт (Instructions Per Cycle, IPC)" переменной величиной была только частота. Необходимо, конечно, отметить, что получаемая по этой формуле величина, дает только так называемую "пиковую производительность", приблизиться к которой на практике можно лишь на отдельных специально подобранных задачах.

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

    Параллельные системы

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

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

      • независимость функционирования отдельных устройств ЭВМ (устройства ввода-вывода, обрабатывающие процессоры и устройства памяти),

      • избыточность элементов вычислительной системы

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

        • дублирование устройств ЭВМ (например, использование нескольких однотипных обрабатывающих процессоров или нескольких устройств оперативной памяти),

      • Дополнительная форма обеспечения параллелизма - конвейерная реализация обрабатывающих устройств.

    Возможные режимы выполнения независимых частей программы:

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

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

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

    Параллельная обработка, воплощая идею одновременного выполнения нескольких действий, имеет несколько разновидностей: суперскалярность, конвейеризация, SIMD – расширения, Hyper Threading, многоядерность. В основном эти виды параллельной обработки интуитивно понятны, поэтому сделаем лишь небольшие пояснения. Если некое устройство выполняет одну операцию за единицу времени, то тысячу операций оно выполнит за тысячу единиц. Если предположить, что есть, пять таких же независимых устройств, способных работать одновременно, то ту же тысячу операций система из пяти устройств может выполнить уже не за тысячу, а за двести единиц времени. Аналогично система из N устройств ту же работу выполнит за 1000/N единиц времени. Подобные аналогии можно найти и в жизни: если один солдат вскопает огород за 10 часов, то рота солдат из пятидесяти человек с такими же способностями, работая одновременно, справятся с той же работой за 12 минут (параллельная обработка данных), да еще и с песнями (параллельная обработка команд).

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

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

    Hyper Threading. Перспективное направление развитие современных микропроцессоров, основанное на многонитевый архитектуре. Основное препятствие на пути повышения производительности за счет увеличения функциональных устройств – это организация эффективной загрузки этих устройств. Если сегодняшние программные коды не в состоянии загрузить работой все функциональные устройства, то можно разрешить процессору выполнять более чем одну задачу (нить), чтобы дополнительные нити загрузили–таки все ФИУ (очень похоже на многозадачность).

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

    Ограничения – закон Амдала

    Классификация архитектур по параллельной обработке данных

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

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

    Известный специалист по архитектуре компьютеров М.Флин (M.Flynn) обратил внимание на то, что существует всего две причины, порождающие вычислительный параллелизм - независимость потоков команд, одновременно существующих в системе, и несвязанность данных, обрабатываемых в одном потоке команд. Если первая основа

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

    A=B+C;

    D=E*F;

    Если строго следовать принципу фон Неймана, то вторая операция может быть запущена на исполнение только после завершения первой операции. Однако очевидно, что порядок выполнения этих команд не имеет никакого значения - операнды A, B и C первой команды никак не связаны с операндами D, E и F второй команды. Другими словами, обе операции являются параллельными именно потому, что операнды этих команд не связаны между собой. Можно привести множество примеров последовательности из трех и более команд с несвязанными данными, которые приведут к однозначному выводу: практически любая программа содержит группы операций над параллельными данными.

    Итак - параллелизм верхнего уровня достигается за счет множества

    независимых командных потоков и реализуется с помощью

    многопроцессорной архитектуры;

    - параллелизм нижнего уровня обязан своим существованием наличием

    несвязанных потоков данных и реализуется за счет конвейерной

    обработки различных фаз операций.

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

    1. SISD (single instruction stream / single data stream) - одиночный поток команд и одиночный поток данных. К этому классу относятся последовательные компьютерные системы, которые имеют один центральный процессор, способный обрабатывать только один поток последовательно исполняемых инструкций. В настоящее время практически все высокопроизводительные системы имеют более одного центрального процессора, однако, каждый из них выполняют несвязанные потоки инструкций, что делает такие системы комплексами SIMD-систем, действующих на разных пространствах данных. Примерами компьютеров с архитектурой SISD являются большинство рабочих станций Compaq, Hewlett-Packard и Sun Microsystems. 

    2. MISD (multiple instruction stream / single data stream) - множественный поток команд и одиночный поток данных. Теоретически в этом типе машин множество инструкций должны выполнятся над единственным потоком данных. До сих пор ни одной реальной машины, попадающей в данный класс, не было создано. В качестве аналога работы такой системы, по-видимому, можно рассматривать работу банка. С любого терминала можно подать команду и что-то сделать с имеющимся банком данных. Поскольку база данных одна, а команд много, то мы имеем дело с множественным потоком команд и одиночным потоком данных. 

    3. SIMD (single instruction stream / multiple data stream) - одиночный поток команд и множественный поток данных. Эти системы обычно имеют большое количество процессоров, в пределах от 1024 до 16384, которые могут выполнять одну и ту же инструкцию относительно разных данных в жесткой конфигурации. Единственная инструкция параллельно выполняется над многими элементами данных. Примерами SIMD машин являются системы CPP DAP, Gamma II и Quadrics Apemille. Другим подклассом SIMD-систем являются векторные компьютеры. Векторные компьютеры манипулируют массивами сходных данных подобно тому, как скалярные машины обрабатывают отдельные элементы таких массивов. Это делается за счет использования специально сконструированных векторных центральных процессоров. При работе в векторном режиме векторные процессоры обрабатывают данные практически параллельно, что делает их в несколько раз более быстрыми, чем при работе в скалярном режиме. Примерами систем подобного типа является, например, компьютеры Hitachi S3600.

    4. MIMD (multiple instruction stream / multiple data stream) - множественный поток команд и множественный поток данных. Эти машины параллельно выполняют несколько потоков инструкций над различными потоками данных. В отличие от многопроцессорных SISD-машин, упомянутых выше, команды и данные связаны, потому что они представляют различные части одной и той же выполняемой задачи. Например, MIMD-системы могут параллельно выполнять множество подзадач, с целью сокращения времени выполнения основной задачи. Наличие большого разнообразия попадающих в данный класс систем, делает классификацию Флинна не полностью адекватной. Действительно и четырех-процессорный SX-5 компании NEC и тысяче-процессорный Cray T3E оба попадают в этот класс. Это заставляет использовать другой подход к классификации, иначе описывающий классы компьютерных систем. Основная идея такого подхода может состоять, например, в следующем. Считаем, что множественный поток команд может быть обработан двумя способами: либо одним конвейерным устройством обработки, работающем в режиме разделения времени для отдельных потоков, либо каждый поток обрабатывается своим собственным устройством. Первая возможность используется в MIMD компьютерах, которые обычно называют конвейерными или векторными, вторая – в параллельных компьютерах. В основе векторных компьютеров лежит концепция конвейеризации, т.е. явного сегментирования арифметического устройства на отдельные части, каждая из которых выполняет свою подзадачу для пары операндов. В основе параллельного компьютера лежит идея использования для решения одной задачи нескольких процессоров, работающих сообща, причем процессоры могут быть как скалярными, так и векторными. На рисунке 12.1 приведен пример такой классификации.

    Вычислительные Системы

    Однопроцессорные

    Многопроцессорные

    Многомашинные

    SISD

    SIMD

    MISD

    MIMD

    CISC

    RISC

    Суперскаляр

    Матричный

    Векторный

    МПВС

    ММВС

    Сильно связанные

    Слабо связанные

    Системы с массовым

    параллелизмом

    MSIMD

    Рис. 12.1 Классификация ВС

    Параллелизм на уровне команд – однопроцессорные архитектуры

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

    Конвейерная обработка

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

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

    • С 1 – выборка команды (по адресу, заданному счетчиком команд, из памяти извлекается команда и помещается в буфер);

    • С 2 – декодирование команды (определение КОП и типа операндов);

    • С 3 – выборка операндов (определение местонахождения операндов и вызов их из регистров);

    • С 4 – выполнение команды;

    • С 5 – запись результата в нужный регистр.

    Работу конвейера можно условно представить в виде временной диаграммы на которой обычно изображаются выполняемые команды, номера тактов и этапы выполнения команд. В качестве примера рассмотрим конвейерную машину с пятью этапами выполнения операций, которые имеют длительность 50, 50, 60, 50 и 50 нс соответственно. Пусть накладные расходы на организацию конвейерной обработки составляют 5 нс. Тогда среднее время выполнения команды в не конвейерной машине будет равно 260 нс. Если же используется конвейерная организация, длительность такта будет равна длительности самого медленного этапа обработки плюс накладные расходы, т.е. 65 нс. Это время соответствует среднему времени выполнения команды в конвейере. Таким образом, ускорение, полученное в результате конвейеризации, будет равно отношению:

    Среднее время выполнения команды в не конвейерном режиме:

    260

    ------- = 4 Среднее время выполнения команды в конвейерном режиме: 65

    Рис. 12.2 Диаграмма работы простейшего конвейера

    Рис. 12.3 Эффект конвейеризации – четырехкратное ускорение

    Мы уже упоминали, что параллелизм нижнего уровня реализуется на однопроцессорных машинах. Название однопроцессорные предполагает, что подобные архитектуры выполняют только один поток команд. Классическим примером однопроцессорной архитектуры является архитектура фон Неймана со строго последовательным выполнением команд. По мере развития вычислительной техники архитектура фон Неймана обогатилась сначала конвейером фаз операций, а затем многофункциональной обработкой и получила обобщенное название SISD. Оба вида средств низкоуровнего параллелизма впервые были введены в компьютерах Control Data 6600 и 7600 в начале 70-х годов и с тех пор применяются во всех компьютерах повышенного быстродействия. Наибольшее развитие идеи SISD-параллелизма получили в RISC-архитектурах.

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

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

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

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

    Конфликты по данным возникают в случаях, когда выполнение одной команды зависит от результата выполнения предыдущей команды. Устранение конфликтов по данным типов WAR и WAW достигается путем отказа от неупорядоченного исполнения команд, но чаще всего путем введения буфера восстановления последовательности команд.

    Недостаточное дублирование некоторых ресурсов

    Одним из типичных примеров служит конфликт из-за доступа к запоминающим устройствам. Борьба с конфликтами такого рода проводится путем увеличения количества однотипных функциональных устройств, которые могут одновременно выполнять одни и те же или схожие функции. Например, в современных микропроцессорах обычно разделяют кэш-память для хранения команд и кэш-память данных, а также используют много портовую схему доступа к регистровой памяти, при которой к регистрам можно одновременно обращаться по одному каналу для записи, а по другому - для считывания информации. Конфликты из-за исполнительных устройств обычно сглаживаются введением в состав микропроцессора дополнительных блоков. Так, в микропроцессоре Pentium-4 предусмотрено 4 АЛУ для обработки целочисленных данных. Процессоры, имеющие в своем составе более одного конвейера, называются суперскалярными.

    Суперскалярные архитектуры

    Смысл суперскалярной обработки - наличие в аппаратуре средств, позволяющих одновременно выполнять две и более скалярных операций, т.е. команд обработки пары чисел. В самом деле, суть этого метода довольно проста: имеется в виду дублирование устройств процессора. Так например, Pentium имеет два конвейера выполнения команд (Рис. 11.4). При этом существуют различные способы реализации суперскалярной обработки. Первый способ чаще всего применяется в RISC-процессорах и заключается в чисто аппаратном механизме выборки из буфера инструкций (или кэша команд) несвязанных команд и параллельном запуске их на исполнение. Обычно процессор выполняет две несвязанные команды одновременно, как например, в процессорах DEC серии Alpha. Этот метод хорош тем, что он "прозрачен" для программиста - составление программ для подобных процессоров не требует никаких специальных усилий, ответственность за параллельное выполнение операций возлагается в основном на аппаратные средства.

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

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

    С1 С2 С3 С4 С5

    Блок

    Выборки

    Команд

    Блок

    декодирования

    Блок

    Выб.

    опер.

    Блок

    Вып.

    команд

    Блок

    возврата

    Блок

    декодирования

    Блок

    Выб.

    опер.

    Блок

    Вып.

    команд

    Блок

    возврата

    Рис. 12.4 Двойной конвейер из пяти стадий

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

    С4

    АЛУ

    АЛУ

    С1 С2 С3 С5

    Блок

    Выборки

    команд

    Блок декодирования

    Блок

    Выб.

    Опер.

    Блок

    Умнож.

    Блок

    возврата

    Блок

    с пл.

    точкой

    Рис 12.5 Суперскалярный процессор с пятью функциональными блоками

    До сих пор мы с вами рассматривали возможности увеличения производительности вычислительной системы на основе параллелизма на уровне команд. При этом к системе предъявлялись следующие требования:

    • все обычные команды непосредственно выполняются аппаратным обеспечением, они не интерпретируются микрокомандами, устранение уровня интерпретации обеспечивает высокую скорость выполнения большинства команд;

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

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

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

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

    Мультипроцессорные системы на кристалле

    Анонсированная в 2002 году компанией Intel технология Hyper-Threading — пример многопоточной обработки команд. Данная технология является чем-то средним между многопоточной обработкой, реализованной в мультипроцессорных системах, и параллелизмом на уровне инструкций, реализованном в однопроцессорных системах. Фактически технология Hyper-Threading позволяет организовать два логических процессора в одном физическом. Таким образом, с точки зрения операционной системы и запущенного приложения в системе существует два процессора, что дает возможность распределять загрузку задач между ними точно так же, как при SMP-мультипроцессорной конфигурации.

    Технология Hyper-Threading

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

    В конструктивном плане процессор с поддержкой технологии Hyper-Threading состоит из двух логических процессоров, каждый из которых имеет свои регистры и контроллер прерываний (Architecture State, AS), а значит, две параллельно исполняемые задачи работают со своими собственными независимыми регистрами и прерываниями, но при этом используют одни и те же ресурсы процессора для выполнения своих задач. После активации каждый из логических процессоров может самостоятельно и независимо от другого процессора выполнять свою задачу, обрабатывать прерывания либо блокироваться. Таким образом, от реальной двухпроцессорной конфигурации новая технология отличается только тем, что оба логических процессора используют одни и те же исполняющие ресурсы, одну и ту же разделяемую между двумя потоками кэш-память и одну и ту же системную шину. Использование двух логических процессоров позволяет усилить процесс параллелизма на уровне потока, реализованный в современных операционных системах и высокоэффективных приложениях. Команды от обоих исполняемых параллельно потоков одновременно посылаются ядру процессора для обработки. Используя технологию out-of-order (исполнение командных инструкций не в порядке их поступления), ядро процессора тоже способно параллельно обрабатывать оба потока за счет использования нескольких исполнительных модулей.

    Идея технологии Hyper-Threading тесно связана с микроархитектурой NetBurst процессора Pentium 4 и является в каком-то смысле ее логическим продолжением. Микроархитектура Intel NetBurst позволяет получить максимальный выигрыш в производительности при выполнении одиночного потока инструкций, то есть при выполнении одной задачи. Однако даже в случае специальной оптимизации программы не все исполнительные модули процессора оказываются задействованными на протяжении каждого тактового цикла. В среднем при выполнении кода, типичного для набора команд IA-32, реально используется только 35% исполнительных ресурсов процессора, а 65% исполнительных ресурсов процессора простаивают, что означает неэффективное использование возможностей процессора. Было бы вполне логично организовать работу процессора таким образом, чтобы в каждом тактовом цикле максимально использовать его возможности. Именно эту идею и реализует технология Hyper-Threading, подключая незадействованные ресурсы процессора к выполнению параллельной задачи.

    Поясним все вышесказанное на примере. Представьте себе гипотетический процессор, в котором имеются четыре исполнительных блока: два блока для работы с целыми числами (арифметико-логическое устройство, ALU), блок для работы с числами с плавающей точкой (FPU) и блок для записи и чтения данных из памяти (Store/Load, S/L). Пусть, кроме того, каждая операция осуществляется за один такт процессора. Далее предположим, что выполняется программа, состоящая из трех инструкций: первые две — арифметические действия с целыми числами, а последняя — сохранение результата. В этом случае вся программа будет выполнена за два такта процессора: в первом такте задействуются два блока ALU процессора (красный квадрат на рис. 12.6), во втором — блок записи и чтения данных из памяти S/L.

    INCLUDEPICTURE "../../../../../../../../../../Поляков%20Дмитрий/Рабочий%20стол/Курсовая%20работа/Мультипроцессорные%20системы/Многоядерость/Тестирование%20двухъядерного%20процессора%20Intel%20Pentium%20Extreme%20Edition%20840%20%20Планета%20Intel%20%20КомпьютерПресс%206'2005.files/viewblob(2).jpg" \* MERGEFORMAT

    Рис. 12.6 Реализация параллелизма на уровне инструкций (Instruction Level Parallelism, ILP)

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

    Рис. 12.7 Выполнение двух потоков на процессоре без реализации и с реализацией технологии Hyper-Threading

    Теперь давайте подумаем над тем, как можно повысить скорость выполнения задачи в рассмотренном примере. Как видно из рис. 12.7, на каждом такте процессора используются далеко не все исполнительные блоки процессора, поэтому имеется возможность частично совместить выполнение инструкций отдельных потоков на каждом такте процессора. В нашем примере выполнение двух арифметических операций с целыми числами первого потока можно совместить с загрузкой данных из памяти второго потока и выполнить все три операции за один такт процессора. Аналогично на втором такте процессора можно совместить операцию сохранения результатов первого потока с двумя операциями второго потока и т.д. Собственно, в таком параллельном выполнении двух потоков и заключается основная идея технологии Hyper-Threading.

    Конечно, описанная ситуация является идеализированной, и на практике выигрыш от использования технологии Hyper-Threading куда более скромен. Дело в том, что возможность одновременного выполнения на одном такте процессора инструкций от разных потоков ограничивается тем, что эти инструкции могут задействовать одни и те же исполнительные блоки процессора.

    Рассмотрим еще один типичный пример работы нашего гипотетического процессора. Пусть имеется два потока команд, каждый из которых по отдельности выполняется за пять тактов процессора. Без использования технологии Hyper-Threading для выполнения обоих потоков потребовалось бы десять тактов процессора. А теперь выясним, что произойдет при использовании технологии Hyper-Threading (рис. 12.8). На первом такте процессора каждый из потоков задействует различные блоки процессора, поэтому выполнение инструкций легко совместить. Аналогичное положение вещей наличествует и на втором такте, а вот на третьем такте инструкции обоих потоков пытаются задействовать один и тот же исполнительный блок процессора, а именно блок S/L. В результате возникает конфликтная ситуация, и один из потоков должен ждать освобождения требуемого ресурса процессора. То же самое происходит и на пятом такте. В итоге оба потока выполняются не за пять тактов (как в идеале), а за семь.

    Рис. 12.8 Возникновение конфликтных ситуаций при использовании технологии Hyper-Threading

    Многоядерность — следующий этап развития

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

    В рассмотренном примере возникновения конфликтных ситуаций при использовании технологии Hyper-Threading применение двух независимых ядер для выполнения двух потоков инструкций позволило бы выполнить весь программный код не за семь (как в случае процессора с технологией Hyper-Threading), а за пять тактов (рис. 12.9).

    Рис. 12.9 Преимущество двухъядерной архитектуры процессора

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

    Выводы

    Основным способом повышения производительности ВС является параллельное выполнение, как большого числа команд, так и многочисленного потока данных

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

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

    Параллелизм на верхнем уровне, уровне процессоров реализуется с помощью многопроцессорных и многомашинных архитектур.

    Вопросы и задания

    1. В некотором задании каждый последующий шаг зависит от предыдущего. Что в этом случае более уместно: векторный процессор или конвейер?

    2 . Что такое суперскалярный процессор? Приведите пример.

    3. Как зависит эффективность конвейерной обработки от степени загруженности конвейера?

    Лекция 13. Организация обмена в вычислительной системе

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

    Цель: познакомить студентов с видами событий в вычислительной системе на основе IA-32, сформировать представление об организации доставки асинхронных сигналов (прерываний) центральному процессору, о способе организации обмена в вычислительной системе на основе прямого доступа периферийного устройства к памяти.

    13.1 Система прерываний и исключений в архитектуре ia-32

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

    Рис. 13.1.  Классификация событий в системе на основе ЦП IA-32

    Прерывания обычно возникают в произвольный момент времени. Прерывания бывают аппаратные (или внешние) и программные. Внешние прерывания генерируются по аппаратному сигналу, поступающему от периферийного оборудования, когда оно требует обслуживания. Процессор определяет необходимость обработки внешнего прерывания по наличию сигнала на одном из контактов INTR# или NMI#. При появлении сигнала на линии INTR# внешний контроллер прерываний (например, 8259A) должен предоставить процессору вектор (номер) прерывания. С линией NMI# всегда связано прерывание #2. В процессорах Pentium, P6 и Pentium 4 эти линии могут быть сконфигурированы на использование встроенным контроллером прерываний - APIC (Advanced Programmable Interrupt Controller), тогда они называются LINT0 и LINT1 и их назначение определяется настройками APIC. Прерывания, которые генерируются при поступлении сигнала на вход INTR#, называют маскируемыми аппаратными прерываниями. Бит IF в регистре флагов позволяет заблокировать (замаскировать) обработку таких прерываний. Прерывания, генерируемые сигналом NMI#, называют немаскируемыми аппаратными прерываниями. Немаскируемые прерывания не блокируются флагом IF. Пока выполняется обработчик немаскируемого прерывания, процессор блокирует получение немаскируемых прерываний до выполнения инструкции IRET, чтобы исключить одновременную обработку нескольких немаскируемых прерываний. Прерывания всегда обрабатываются на границе инструкций, т.е. при появлении сигнала на контакте INTR# или NMI# процессор сначала завершит выполняемую в данный момент инструкцию (или итерацию при наличии префикса повторения), а только потом начнет обрабатывать прерывание. Помещаемый в стек обработчика адрес очередной инструкции позволяет корректно возобновить выполнение прерванной программы. С помощью инструкции INT n (n - номер прерывания) можно сгенерировать прерывание с любым номером 0...255. Такие прерывания называют программными. Состояние бита IF в регистре флагов не влияет на возможность генерации программных прерываний. Программные прерывания могут использоваться для доступа к сервисам операционной системы (например, INT $21 - сервисы DOS, INT $80 - сервисы Linux), функциям драйверов устройств (например, INT $33 - драйвер мыши) или специальным сервисам (INT $10 - видео-сервис BIOS, INT $31 - DPMI-сервис), INT $67 - сервис EMS).

    Хотя номер прерывания в этой инструкции может быть любым, следует отметить, что, например, при использовании вектора #2 для вызова обработчика немаскируемого прерывания внутреннее состояние процессора будет отличаться от того, которое бывает при обработке аппаратного немаскируемого прерывания. Аналогично, попытка вызвать обработчик исключения с помощью этой инструкции может оказаться неудачной, т.к. при возникновении большинства исключений в стек включается код ошибки, а при генерации программного прерывания этого не происходит. Обработчик исключения извлекает из стека код ошибки, а в случае программного прерывания из стека будет ошибочно извлечен адрес возврата, что нарушит целостность стека и, в конечном итоге, скорее всего, приведет к исключению #13 или более тяжелому. Исключения являются для процессора внутренними событиями и сигнализируют о каких-либо ошибочных условиях при выполнении той или иной инструкции. Источниками исключений являются три типа событий:

    • генерируемые программой исключения, позволяющие программе контролировать определенные условия в заданных точках программы (INTO - проверка на переполнение, INT3 - контрольная точка, BOUND - проверка границ массива);

    • исключения машинного контроля (#18), возникающие в процессе контроля операций внутри чипа и транзакций на шине процессора (Pentium, P6 и Pentium 4);

    • обнаруженные процессором ошибки в программе (деление на ноль, нарушение правил защиты, отсутствие страницы и т.п.)

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

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

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

    Авария не позволяет осуществить рестарт программы, и зачастую нельзя точно локализовать команду, вызвавшую это исключение. Исключения типа "авария" генерируются при обнаружении серьезных ошибок, таких как неразрешенные или несовместимые значения в системных таблицах или аппаратные сбои. Типичным случаем аварии является исключение #8 "двойная ошибка". Двойная ошибка происходит, когда процессор пытается обработать исключение, а его обработчик генерирует еще одно исключение. Для некоторых исключений процессор не генерирует двойную ошибку, такие исключения называют "легкими". Только ошибки деления (исключение #0) и сегментные исключения (#10, #11, #12, #13), называемые "тяжелыми", могут вызвать двойную ошибку. Таким образом, получение исключения "неприсутствие сегмента" во время обработки исключения отладки не приведет к двойной ошибке, в то время как ошибка сегмента, происходящая во время обработки ошибки деления на нуль, приведет к исключению #8. Если при попытке вызвать обработчик исключения #8 возникает ошибка, процессор переходит в режим отключения (shutdown mode). Вывести из этого режима процессор могут только аппаратные сигналы: NMI#, SMI#, RESET# или INIT#. Обычно чипсет, обнаружив на шине процессора цикл отключения, инициирует аппаратный сброс. Если на границе инструкции обнаруживается, что требуется обработка более одного прерывания или исключения, процессор обрабатывает прерывание или исключение с наивысшим приоритетом. Исключения с низким приоритетом снимаются, а прерывания с низким приоритетом откладываются. Снятые исключения могут быть потом снова сгенерированы при возврате из обработчика. Архитектура IA-32 предоставляет механизм обработки прерываний и исключений, прозрачный для прикладного и системного программного обеспечения. При возникновении прерывания или исключения текущая выполняемая задача автоматически приостанавливается на время действий обработчика, после чего ее выполнение возобновляется без потери непрерывности, кроме случаев, когда обработка прерывания или исключения вынуждает завершить программу. Все прерывания и исключения имеют номер (иногда именуемый вектором) в диапазоне от 0 до 255. Номера 0...31 зарезервированы фирмой Intel для исключений.

    13.2 Расширенный программируемый контроллер прерываний (apic)

    Микропроцессоры IA-32, начиная с модели Pentium, содержат встроенный расширенный программируемый контроллер прерываний (APIC). Встроенный APIC предназначен для регистрирования прерываний от источников внутри процессора (например, блок температурного контроля у Pentium 4) или от внешнего контроллера прерываний и передачи их ядру процессора на обработку. Особо важная роль возлагается на встроенный APIC в многопроцессорных системах, где APIC принимает и генерирует сообщения о межпроцессорных прерываниях (IPI - InterProcessor Interrupt). Такие сообщения могут использоваться для распределения обработки прерываний между процессорами или для выполнения системных функций (первоначальная загрузка, диспетчеризация задач и т.п.).

    Встроенный APIC различает следующие источники прерываний.

    1. От локальных устройств. Прерывания, генерируемые по фронту или уровню сигнала, который поступает от устройства, непосредственно подключенного к сигналам LINT0 и LINT1 (например, контроллер прерываний типа 8259A).

    2. От внешних устройств. Прерывания, генерируемые по фронту или уровню сигнала, который поступает от устройства, подключенного к внешнему контроллеру прерываний. Такое прерывание передается в виде сообщения по шине APIC (или системной шине в Pentium 4).

    3. Межпроцессорные (IPI). В многопроцессорных системах один из процессоров может прервать другой при помощи сообщения IPI на шине APIC (или системной шине в Pentium 4).

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

    5. От таймера монитора производительности. Процессоры P6 и Pentium 4 содержат блок мониторинга производительности. Этот блок можно запрограммировать таким образом, чтобы связанный с ним таймер при достижении определенного отсчета генерировал прерывание.

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

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

    Источники 1, 4, 5, 6, 7 считаются локальными источниками прерываний и обслуживаются специальным набором регистров APIC, называемым таблицей локальных векторов (LVT - local vector table). Два других источника обрабатываются APIC через механизм сообщений. Эти сообщения в Pentium и P6 передаются по выделенной трехпроводной шине APIC (рис. 13.2). В Pentium 4 для передачи APIC-сообщений используется системная шина, поэтому контроллер прерываний может быть подключен непосредственно к обычному системному интерфейсу (например, PCI).

    Рис. 13.2.  Взаимодействие встроенного APIC и внешнего контроллера прерываний

    Структура встроенного APIC является архитектурным подмножеством микросхемы контроллера прерываний Intel 82489DX. Регистры APIC отображаются на 4-Кбайтный блок оперативной памяти по адресу FEE00000h (может быть изменен через MSR регистры процессора). Наличие встроенного APIC в процессоре обнаруживается при помощи инструкции CPUID(1). После RESET встроенный APIC включен, однако впоследствии он может быть отключен, тогда процессор будет работать с прерываниями как Intel-386/486 (линии LINT0 и LINT1 будут использоваться как NMI# и INTR#, к которым может быть подключен контроллер прерываний типа 8259A). Таблица локальных векторов (LVT) состоит из шести 32-битных регистров (в P6 - 5, в Pentium - 4):

    • регистр вектора прерывания от таймера;

    • регистр вектора прерывания от термодатчика (только в Pentium 4);

    • регистр вектора прерывания от монитора производительности (P6 и Pentium 4);

    • регистр вектора прерывания LINT0;

    • регистр вектора прерывания LINT1;

    • регистр вектора прерывания ошибки.

    Значения в этих регистрах определяют:

    • номер вектора прерывания;

    • тип прерывания (fixed - с указанным вектором, SMI - переход в режим системного управления, NMI - немаскируемое, INIT - сброс, ExtINT - внешнее: процессор генерирует цикл INTA и ожидает номер вектора прерывания от внешнего контроллера);

    • активный уровень сигнала (низкий или высокий) или триггерный режим (прерывание по фронту или по уровню);

    • маску прерывания (прерывание может быть замаскировано).

    Эти регистры также отражают состояние прерывания (доставляется ли это прерывание ядру процессора в данный момент). Кроме того, APIC содержит регистры управления таймером APIC, регистр версии, регистр ошибки, регистры, связанные с обслуживанием прерываний (регистр приоритета, регистр запроса IRR, регистр обслуживания ISR), и регистры, связанные с передачей и приемом IPI.

    13. 3 Обработка прерываний на основе контроллера 8259a

    Контроллер прерываний 8259A представляет собой устройство, реализующее до восьми уровней запросов на прерывания, с возможностью программного маскирования и изменения порядка обслуживания прерываний. Контроллер прерываний (рис. 13.3) состоит из следующих блоков:

    • RGI - регистр запретов прерываний; хранит все уровни, на которые поступают запросы IRQx.

    • PRB - схема принятия решений по приоритетам; схема идентифицирует приоритет запросов и выбирает запрос с наивысшим приоритетом.

    • ISR - регистр обслуживаемых прерываний; сохраняет уровни запросов прерываний, находящиеся на обслуживании контроллера прерываний.

    • RGM - регистр маскирования прерываний; обеспечивает запрещение одной или нескольких линий запросов прерывания.

    • BD - буфер данных; предназначен для сопряжения с системной шиной данных.

    • RWCU - блок управления записью/чтением; принимает управляющие сигналы от микропроцессора и задает режим функционирования контроллера прерываний.

    • CMP - схема каскадного буфера-компаратора; используется для включения в систему нескольких контроллеров.

    • CU - схема управления; вырабатывает сигналы прерывания и формирует трехбайтовую команду CALL для выдачи на шину данных.

    Рис. 13.3.  Структура контроллера прерываний 8259А

    Один контроллер 8259A способен обслуживать прерывания от 8 источников. Для обслуживания большего количества устройств используется каскадное включение контроллеров (рис. 13.4). В системах IBM PC AT каскадное включение позволяет до 15 устройствам сигнализировать о прерывании (табл. 13.1).

    Рис. 13.4.  Каскадное включение контроллеров прерываний

    Таблица 13.1. Источники аппаратных прерываний в IBM PC AT

    Запрос

    Источник

    Приоритет

    Номер вектора

    NMI

    Ошибка памяти или другая неисправимая ошибка в системе

    02h

    IRQ0

    Системный таймер

    1

    08h

    IRQ1

    Клавиатура

    2

    09h

    IRQ8

    Часы реального времени

    3

    70h

    IRQ9

    Устройство на шине ISA

    4

    71h

    IRQ10

    Устройство на шине ISA

    5

    72h

    IRQ11

    Устройство на шине ISA

    6

    73h

    IRQ12

    Устройство на шине ISA

    7

    74h

    IRQ13

    Ошибка сопроцессора

    9

    75h

    IRQ14

    IDE контроллер

    9

    76h

    IRQ15

    Устройство на шине ISA

    10

    77h

    IRQ3

    Последовательный порт (COM2 или COM4)

    11

    0Bh

    IRQ4

    Последовательный порт (COM1 или COM3)

    12

    0Ch

    IRQ5

    Параллельный порт (LPT2) или IDE контроллер (вторичный)

    13

    0Dh

    IRQ6

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

    14

    0Eh

    IRQ7

    Параллельный порт (LPT1)

    15

    0Fh

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

    13.4 Подсистема прямого доступа к памяти

    Прямой доступ к памяти (ПДП) - Direct Memory Access (DMA) - используется для высокоскоростной передачи данных между устройствами ввода-вывода и оперативной памятью без вмешательства ЦП. Типичным примером использования DMA являются контроллеры дисководов и винчестера. В системах IBM PC XT/AT используется контроллер DMA Intel 8237A (рис. 13.5), обеспечивающий четыре 8-битных канала DMA. В IBM PC AT применяется каскадное включение двух контроллеров DMA (рис. 13.6): 8237A, обеспечивающего четыре 8-битных канала, и 8237A-5, обеспечивающего четыре 16-битных канала (см. табл. 13.2).

    Таблица 13.2. Каналы DMA в IBM PC AT

    Канал

    Назначение

    Разрядность

    0

    Устройство на шине ISA

    8

    1

    Контроллер интерфейса SDLC

    8

    2

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

    8

    3

    Контроллер винчестера

    8

    4

    Используется для каскадирования

    16

    5

    Устройство на шине ISA

    16

    6

    Устройство на шине ISA

    16

    7

    Устройство на шине ISA

    16

    Рис. 13.5.  Структура контроллера DMA Intel 8237A

    Рис. 13.6.  Каскадное включение контроллеров в IBM PC AT

    В активном цикле обслуживание подсистемы DMA возможно в одном из четырех режимов:

    • режим одиночной передачи (Single Transfer Mode);

    • режим передачи блока (Block Transfer Mode);

    • режим передачи по требованию (Demand Transfer Mode);

    • каскадный режим (Cascade Mode).

    Для формирования 24-разрядного адреса используется регистр страницы, который определяет старшие биты адреса. Младшие 16 бит задаются регистром базы соответствующего канала контроллера. Такая схема обеспечивает передачу данных в пределах адресного пространства 16 Мбайт. Для 8-битных каналов DMA регистр страницы определяет биты 16-23 физического адреса, а регистр базы - биты 0-15:

    2 16

    3

    8 7 0

    5

    регистр страницы

    регистр базы

    Для 16-битных каналов DMA используется только 7 бит регистра страницы, определяющих биты 17-23 физического адреса. При этом регистр базы канала задает биты 1-16. Бит A0 всегда выставляется в 0, чтобы гарантировать выровненную передачу слова памяти:

    23 17

    16 15 8 7 1

    0

    регистр страницы

    регистр базы

    0

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

    • SI - неактивное состояние;

    • S0 - первое состояние обслуживания подсистемы DMA, возникающее по действительному запросу (DREQ);

    • S1, S2, S3, S4 - рабочие состояния;

    • SW - состояние ожидания.

    Вопросы для самоконтроля

    1. Какие исключительные ситуации могут возникать при работе компьютера?

    2. Чем маскируемые прерывания отличаются от немаскируемых?

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

    4. Нарисуйте схему каскадного включения контроллеров прерываний.

    5. В каких режимах работы контроллера прерываний подтверждаются лишь запросы с более высоким приоритетом?

    6. Нарисуйте схему подсистемы прямого доступа к памяти в архитектуре IBM PC AT.

    7. В каких режимах работает контроллер прямого доступа к памяти?

    8. Как формируется адрес при передаче слова в режиме DMA?

    9. В каких состояниях может находиться подсистема прямого доступа к памяти?

    Лекция 14. Интерфейсы вычислительных систем

    В данной лекции вводится понятие интерфейса, рассматриваются основные интерфейсные функции и технические характеристики интерфейсов ввода/вывода, приводятся системные интерфейсы микроЭВМ и их особенности.

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

    14.1 Типы и характеристики интерфейсов

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

    • выдача и прием информации;

    • управление передачей данных;

    • согласование источника и приемника информации.

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

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

    • пропускная способность или скорость передачи (длительность выполнения операций установления и разъединения связи и степень совмещения процессов передачи данных);

    • максимальная длина линии связи;

    • разрядность;

    • топология соединения.

    14.2 Архитектура системных интерфейсов

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

    • использующие внутренний интерфейс МП (унифицированный канал);

    • использующие внешний по отношению к МП системный интерфейс.

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

    • Unibus фирмы DEC (интерфейс с общей шиной),

    • Multibus фирмы Intel (интерфейс с изолированной шиной).

    Шинная архитектура Unibus была разработана фирмой DEC для мини-ЭВМ серии PDP-11. Общая шина для периферийных устройств, памяти и процессора состоит из 56 двунаправленных линий. Unibus поддерживает пересылку одного 16-разрядного слова за 750 нс. Все пересылки инициируются ведущим устройством и подтверждаются принимающим (запоминающим) устройством, что позволяет работать с модулями различного быстродействия. Выбор устройства на роль ведущего является динамической процедурой, поэтому в ответ на запрос периферийного устройства процессор может передать ему управление шиной. Благодаря этой особенности, на основе Unibus возможна разработка мультипроцессорных систем. Unibus позволяет подключать к магистрали большое число устройств, хотя необходимо учитывать снижение надежности по мере увеличения длины магистрали. Данные регистров внешних устройств могут обрабатываться теми же командами, что и данные в памяти. Следует, однако, отметить сложность технической реализации интерфейсных модулей, связанных с пересылкой адресов и данных по одним и тем же линиям. Свое развитие архитектура Unibus получила в системном интерфейсе NuBus. Интерфейс NuBus (табл. 14.1) был разработан MIT1) совместно с Western Digital в 1979 г. Затем, при участии Texas Instruments, архитектура NuBus была стандартизована IEEE2) (стандарт IEEE 1196-1987) и применялась фирмой Apple в компьютерах Macintosh. В NuBus также используется мультиплексирование адреса и данных. Предусмотрена автоматическая конфигурация. Возможно использование нескольких задатчиков магистрали с децентрализованным арбитражем. Имеется режим блочной передачи данных. К недостаткам NuBus можно отнести слабые возможности режима ПДП, сложный метод обработки прерываний (предусмотрен всего один сигнал запроса прерывания и программный опрос потенциальных источников прерываний).

    Альтернативная шинная архитектура Multibus была разработана фирмой Intel. Шина также обеспечивает системную архитектуру с одним или несколькими ведущими узлами и с квитированием установления связи между устройствами, работающими с разной скоростью. Благодаря разделению шины адреса и шины данных, возможны реализации этой архитектуры для процессоров разной разрядности. Существовали 8-разрядный и 16-разрядный варианты архитектуры Multibus для IBM PC. Шина адреса - 20 бит. Multibus подразумевает достаточно простую аппаратную реализацию, однако число устройств, одновременно использующих ресурсы шины, ограничено 16 абонентами. Следует отметить, что скорость обмена на шине Multibus была ниже, чем на шине Unibus.

    Таблица 14.1. Системные интерфейсы

    Шина

    NuBus

    ISA

    EISA

    MCA

    VLB

    PCI

    Год выпуска

    1979

    1984

    1989

    1987

    1987

    1992

    Разрядность данных

    32

    8/16

    32

    32/64

    32

    32/64

    Разрядность адреса

    32

    20/24

    32

    32

    32

    32

    Тактовая частота, МГц

    10

    4/8

    8

    10

    <33 (Fцп)

    33, 66

    Макс. скорость, Мбайт/с

    37

    8-16

    33

    20/40

    130

    132/264, 520

    Макс. кол-во устройств

    6

    15

    16

    2-3

    10

    Кол-во сигналов

    96

    62/98

    188

    178

    112

    124/188

    14.3 Системные интерфейсы для пк

    Первым стандартным системным интерфейсом для ПК на основе ЦП IA-32 следует считать ISA (Industry Standard Architecture - Архитектура промышленного стандарта). ISA представляет собой шину, используемую в IBM PC-совместимых ПК для обеспечения питания и взаимодействия плат расширения с системной платой, в которую они вставляются. Полное описание шины, включая ее временные характеристики, было издано в виде стандарта IEEE P996-1987. Первый вариант этой архитектуры для ЦП 8086/8088 с тактовой частотой 4,77 МГц представлял собой 62-контактную шину с 8 линиями данных, 20 линиями адреса, сигналами для прерываний и запросов и подтверждения DMA, а также линиями питания и сигналами синхронизации. У процессора 80286, применявшегося в IBM PC AT, была 16-разрядная шина данных, поэтому системная шина была расширена дополнительным 36-контактным соединителем, который обеспечивал еще восемь линий данных, еще четыре линии адреса, дополнительные линии прерываний и каналов DMA. На эту шину был выведен тактовый сигнал с частотой 8 МГц. Таким образом, теоретическая максимальная скорость передачи данных на шине ISA составляет 16 Мбайт/с, хотя чаще утверждается, что она составляет 8 Мбайт/с, поскольку один цикл шины обычно требуется для передачи адреса, а другой - для передачи 16 разрядов данных. На самом деле, типичная скорость передачи данных на этой шине составляет от 1 до 2,5 Мбайт/с. Это значение обусловлено конфликтами на шине с другими устройствами, главным образом, с памятью, а также задержками буферизации из-за асинхронного характера шины (быстродействие процессора и шины различается). Появление 32-битных процессоров Intel-386 и Intel-486 показало, что быстродействие магистрали ISA является сдерживающим фактором на пути повышения производительности компьютеров. В 1989 году группой компаний (Compaq, Hewlett Packard, NEC и др.) было предложено эволюционное развитие архитектуры ISA - шина EISA (Extended ISA). С одной стороны, EISA имела все преимущества высокопроизводительной 32-битной шины, а с другой - была полностью совместима с ISA "сверху вниз" и не требовала перехода на новую элементарную базу. Разработчики магистрали EISA позаботились не только об информационной и электрической, но и о конструктивной совместимости с ISA. Разъем EISA состоит из двух рядов контактов, один из которых (верхний) предназначен для сигналов ISA, а другой (нижний) - для дополнительных сигналов EISA (16 дополнительных разрядов данных, 8 дополнительных разрядов адреса, сигналы управления пакетной передачей данных и сигналы управления арбитражем магистрали). Таким образом, в разъемы EISA можно вставлять также 8- или 16-разрядные платы ISA. Предельная скорость передачи (33 МГц) достигается в пакетном режиме, когда адрес предоставляется только в начале пакета и предполагается, что все последующие данные будут поступать в расположенные по порядку ячейки памяти. На магистрали может находиться несколько задатчиков (ЦП, контроллер DMA, контроллер регенерации динамической памяти и др.). Управление предоставлением магистрали централизованно выполняется специальным арбитром по циклическому принципу. Для арбитража используются особые линии магистрали, индивидуальные для каждого разъема.

    Альтернативная системная архитектура MCA (Micro Channel Architecture - Микроканальная архитектура) была предложена IBM в 1987 году в серии ПК PS/2. Основным достоинством MCA по сравнению с ISA было увеличение разрядности шины данных до 32 бит. При мультиплексированном использовании шины адреса (32 бит) допускается расширение шины данных до 64 бит. Как и в EISA, в MCA предусмотрена возможность включения многих задатчиков, но арбитраж при этом является не централизованным, а распределенным, причем приоритеты могут устанавливаться программным путем. MCA не зависит от типа процессора и является полностью асинхронной. Эта магистраль, кроме ПК IBM PS/2, применялась также в рабочих станциях IBM RS/6000 и в высокопроизводительных компьютерах серии Power Parallel SP2 (например, Deep Blue). Для магистрали MCA предусмотрена автоматическая конфигурация системы. При этом пользователь может изменять и назначать приоритеты различных устройств. Для увеличения скорости передачи в режиме DMA используется специальный блочный режим (burst mode). Однако эта шина не нашла широкого распространения, возможно, потому, что компания IBM (по крайней мере, первоначально) взимала слишком большую лицензионную пошлину за ее применение, а также потому, что существовавшие тогда платы адаптеров ПК невозможно было использовать на этой шине, вследствие чего потребителям приходилось приобретать все новые платы, а производителям -заново их разрабатывать.

    В типичной системе на основе Intel-386/486 (рис. 14.1) использовались раздельные шины для памяти и устройств ввода-вывода, что позволяло максимально задействовать возможности оперативной памяти и обеспечивало максимальную скорость работы с ней. Однако в таком случае устройства, подключенные через описанные системные интерфейсы, не могут достичь скорости обмена, сравнимой с процессором. В основном это требуется для видеоадаптеров и контроллеров накопителей. Для решения проблемы была предложена архитектура на основе локальных шин (рис. 14.2), которые непосредственно связывали процессор с контроллерами периферийных устройств.

    Рис. 14.1.  Типичная система с низкоскоростной шиной устройств ввода-вывода

    Рис. 14.2.  Система с архитектурой локальной шины (VLB)

    Наиболее распространенными локальными шинами считались VLB и PCI. VLB (VESA3) Local Bus) представляет собой расширение шины процессора без промежуточных буферов, что резко ограничивает ее нагрузочную способность (2-3 устройства). VLB имеет 32-разрядную шину данных и 32-разрядную шину адреса. Арбитр магистрали не предусмотрен. Достоинством VLB является простота и низкая стоимость. Позднее была также разработана спецификация VLB2, ориентированная на системы на основе Intel Pentium, (64-разрядная шина данных, тактовая частота до 50 МГц, поддержка Plug&Play), однако широкого применения эта разработка не нашла, т.к. была вытеснена шиной PCI.

    14.5 Интерфейс pci

    Доминирующее положение на рынке ПК занимают системы на основе шины PCI (Peripheral Component Interconnect - Взаимодействие периферийных компонентов). Этот интерфейс был предложен фирмой Intel в 1992 году (стандарт PCI 2.0 - в 1993) в качестве альтернативы локальной шине VLB/VLB2. Следует отметить, что разработчики этого интерфейса позиционируют PCI не как локальную, а как промежуточную шину (mezzanine bus), т.к. она не является шиной процессора. Поскольку шина PCI не ориентирована на определенный процессор, ее можно использовать для других процессоров. Шина PCI была адаптирована к таким процессорам, как Alpha, MIPS, PowerPC и SPARC. Именно PCI сменила NuBus на платформе Apple Macintosh. Шины ISA, EISA или MCA могут управляться шиной PCI с помощью моста сопряжения (рис. 14.3), что позволяет устанавливать в ПК платы устройств ввода-вывода с различными системными интерфейсами. Например, в чипсете Intel Triton использовалась микросхема PIIX4), помимо контроллера IDE предоставляющая мост для шины ISA.

    Рис. 14.3.  Система на основе PCI

    Существуют три варианта плат PCI: с уровнями сигналов 3,3 В, с уровнями сигналов 5 В и универсальные. Ключ в разъеме гарантирует, что платы с одним уровнем сигнала и невзаимозаменяемые не будут по ошибке вставлены в разъем с другим уровнем сигнала. Платы с пониженным напряжением питания в основном используются в мобильных компьютерах. Существует 32-разрядная и 64-разрядная реализация шины PCI. В 64-разрядной реализации используется разъем с дополнительной секцией. 32-разрядные и 64-разрядные платы можно устанавливать в 64-разрядные и 32-разрядные разъемы и наоборот. Платы и шина определяют тип разъема и работают должным образом. При установке 64-разрядной платы в 32-разрядный разъем остальные выводы не задействуются и просто выступают за пределы разъема. На шине PCI сигналы адреса и данных мультиплексированы, поэтому для передачи каждых 32 или 64 разрядов требуется два шинных цикла: один - для пересылки адреса, а второй - для пересылки данных. Однако возможен также пакетный режим, при котором вслед за одним циклом передачи адреса разрешается осуществить до четырех циклов передачи данных (до 16 байт в PCI-32). После этого устройство должно подать новый запрос на обслуживание и снова получить управление над шиной (и выполнить адресный цикл). Поэтому шина PCI-32 с тактовой частотой 33 МГц имеет пиковую скорость обычной передачи около 66 Мбайт/с (два шинных цикла для передачи 4 байт) и пиковую скорость пакетной передачи около 105 Мбайт/с. PCI поддерживает процедуру прямого доступа к памяти ведущего устройства на шине (bus mastering DMA), хотя некоторые реализации PCI могут и не предоставлять такую возможность для всех разъемов PCI. Процессор может функционировать параллельно с периферийными устройствами, являющимися ведущими на шине. Кроме того, платы PCI поддерживают:

    • автоматическую конфигурацию Plug&Play (не требуют назначения адресов расширений BIOS вручную);

    • совместное использование прерываний (когда один и тот же номер прерывания может использоваться разными устройствами);

    • контроль четности сигналов шины данных и адресной шины;

    • конфигурационную память от 64 до 256 байт (код производителя, код устройства, код класса (функции) устройства и др.).

    Персональные компьютеры могут иметь две или больше шин PCI. Каждой шиной управляет свой мост PCI, что позволяет устанавливать в компьютер больше плат PCI (вплоть до 16 - ограничение адресации). Если управление второй шиной PCI осуществляется с первой шины, то это называется каскадной или иерархической схемой. В этом случае первая шина будет также нести нагрузку второй шины. Если управление каждой шиной PCI осуществляется непосредственно с шины процессора, это называется равноправной схемой. Обычно мост PCI выполняет также функции контроллера внешней кэш-памяти, контроллера основной памяти и обеспечивает сопряжение с процессором. В системах на основе Pentium II/III эти функции распределены между двумя мостами: "северным" (North Bridge) и "южным" (South Bridge), что связано с наличием дополнительного высокоскоростного системного интерфейса для подключения видеокарты (AGP). В 1995 году был выпущена улучшенная версия интерфейса - PCI 2.1, которая предоставила следующие возможности:

    • поддержка тактовой частоты шины 66 МГц;

    • таймер обработки множественных запросов MTT (Multi-Transaction Timer) позволяет устройствам, осуществляющим прямой доступ к памяти, удерживать шину для "прерывистой" передачи пакетов, при этом не требуется повторно добиваться права управления шиной, что особенно полезно при передаче видеоданных;

    • пассивное разъединение (Passive Release) позволяет устройствам, осуществляющим прямой доступ к памяти по шине PCI, передавать данные в то время, когда ведется передача данных по шине ISA (обычно это приводило к блокированию передачи по шине PCI, поскольку она использовалась для подключения центрального процессора к шине ISA);

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

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

    C 2005 года в ПК на основе Pentium 4 вместо PCI используют новый системный интерфейс - PCI Express.

    14.6 Порт agp

    С повсеместным внедрением технологий мультимедиа пропускной способности шины PCI стало не хватать для производительной работы видеокарты. Чтобы не менять сложившийся стандарт на шину PCI, но, в то же время, ускорить ввод-вывод данных в видеокарту и увеличить производительность обработки трехмерных изображений, в 1996 году фирмой Intel был предложен выделенный интерфейс для подключения видеокарты - AGP (Accelerated Graphics Port - высокоскоростной графический порт). Впервые порт AGP был представлен в системах на основе Pentium II. В таких системах чипсет был разделен на два моста (рис. 14.3): "северный" (North Bridge) и "южный" (South Bridge). Северный мост связывал ЦП, память и видеокарту - три устройства в системе, между которыми курсируют наибольшие потоки данных. Таким образом, на северный мост возлагаются функции контроллера основной памяти, моста AGP и устройства сопряжения с фасадной шиной процессора FSB (Front-Side Bus). Собственно мост PCI, обслуживающий остальные устройства ввода-вывода в системе, в том числе контроллер IDE (PIIX), реализован на основе южного моста. Одной из целей разработчиков AGP было уменьшение стоимости видеокарты, за счет уменьшения количества встроенной видеопамяти. По замыслу Intel, большие объемы видеопамяти для AGP-карт были бы не нужны, поскольку технология предусматривала высокоскоростной доступ к общей памяти. Интерфейс AGP по топологии не является шиной, т.к. обеспечивает только двухточечное соединение, т.е. один порт AGP поддерживает только одну видеокарту. В то же время, порт AGP построен на основе PCI 2.1 с тактовой частотой 66 МГц, 32-разрядной шиной данных и питанием 3,3 В. Поскольку порт AGP и основная шина PCI независимы и обслуживаются разными мостами, это позволяет существенно разгрузить последнюю, освобождая пропускную способность, например, для потоков данных с каналов IDE. В то же время, поскольку AGP-порт всегда один, в интерфейсе нет возможностей арбитража, что существенно упрощает его и положительно сказывается на быстродействии. Для повышения пропускной способности AGP предусмотрена возможность передавать данные с помощью специальных сигналов, используемых как стробы, вместо сигнала тактовой частоты 66 МГц (табл. 14.2). Например, в режиме AGP 2x данные передаются как по переднему, так и по заднему фронту тактового сигнала, что позволяет достичь пропускной способности 533 Мбайт/с.

    Таблица 14.2. Режимы работы AGP

    Режим

    AGP 1x

    AGP 2x

    AGP 4x

    AGP 8x

    Спецификация

    AGP 1.0-1997

    AGP 1.0-1997

    AGP 2.0-1998

    AGP 3.0-2000

    Уровни напряжений

    3,3 В

    3,3 В

    1,5 В

    0,8 В

    Макс. скорость

    266 Мбайт/с

    533 Мбайт/с

    1066 Мбайт/с

    2133 Мбайт/с

    В AGP существует возможность отмены механизма мультиплексирования шины адреса и данных - режим адресации по боковой полосе SBA (Side-Band Addressing). При использовании SBA задействуются 8 дополнительных линий, по которым передается новый адрес, в то время как по 32-битной шине данных передается пакет от предыдущего запроса. Альтернативный способ повышения эффективности использования пропускной способности AGP - с помощью конвейеризации. На PCI по выставленному адресу после задержки появляются данные. На AGP сначала выставляется пакет адресов, на которые следует ответ пакетом данных (рис. 14.4).

    Рис. 14.4.  Конвейеризация AGP

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

    • DMA (Direct Memory Access) - обычный прямой доступ к памяти. В этом режиме основной памятью считается встроенная видеопамять на карте, текстуры копируются туда из системной памяти компьютера перед использованием их процессором видеокарты;

    • DIME (Direct In Memory Execute) - непосредственное выполнение в памяти. В этом режиме основная и видеопамять находятся как бы в общем адресном пространстве. Общее пространство эмулируется с помощью таблицы отображения адресов GARP (Graphic Address Remapping Table) блоками по 4 Кбайт. Таким образом, процессор видеокарты способен непосредственно работать с текстурами в основной памяти без необходимости их копирования в видеопамять. Этот процесс называется AGP-текстурированием.

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

    • спецификация AGP Pro для видеокарт с большой потребляемой мощностью (до 110 Вт), включающая дополнительные разъемы питания;

    • 64-битный порт AGP, используемый для профессиональных графических адаптеров;

    • интерфейс AGP Express, представляющий собой эмуляцию порта AGP при помощи сдвоенного слота PCI в форм-факторе AGP. Применяется на некоторых материнских платах на основе PCI Express для поддержки AGP-видеокарт.

    В настоящее время порт AGP практически исчерпал свои возможности и активно вытесняется системным интерфейсом PCI Express.

    14.7 PCI Express

    Интерфейс PCI Express (первоначальное название - 3GIO5)) использует концепцию PCI, однако физическая их реализация кардинально отличается. На физическом уровне PCI Express представляет собой не шину, а некое подобие сетевого взаимодействия на основе последовательного протокола. Высокое быстродействие PCI Express позволяет отказаться от других системных интерфейсов (AGP, PCI), что дает возможность также отказаться от деления системного чипсета на северный и южный мосты в пользу единого контроллера PCI Express. Одна из концептуальных особенностей интерфейса PCI Express, позволяющая существенно повысить производительность системы, - использование топологии "звезда". В топологии "шина" (рис. 14.5а) устройствам приходится разделять пропускную способность PCI между собой. При топологии "звезда" (рис. 14.5б) каждое устройство монопольно использует канал, связывающий его с концентратором (switch) PCI Express, не деля ни с кем пропускную способность этого канала.

    Рис. 14.5.  Сравнение топологий PCI и PCI Express

    Канал (link), связывающий устройство с концентратором PCI Express, представляет собой совокупность дуплексных последовательных (однобитных) линий связи, называемых полосами (lane). Дуплексный характер полос также контрастирует с архитектурой PCI, в которой шина данных - полудуплексная (в один момент времени передача выполняется только в определенном направлении). На электрическом уровне каждая полоса соответствует двум парам проводников с дифференциальным кодированием сигналов. Одна пара используется для приема, другая - для передачи. PCI Express первого поколения декларирует скорость передачи одной полосы 2,5 Гбит/с в каждом направлении. В будущем планируется увеличить скорость до 5 и 10 Гбит/с. Канал может состоять из нескольких полос: одной (x1 link), двух (x2 link), четырех (x4 link), восьми (x8 link), шестнадцати (x16 link) или тридцати двух (x32 link). Все устройства должны поддерживать работу с однополосным каналом. Аналогично, различают слоты: x1, x2, x4, x8, x16, x32. Однако слот может быть "шире", чем подведенный к нему канал, т.е. на слот x16 фактически может быть выведен канал x8 link и т.п. Карта PCI Express должна физически подходить и корректно работать в слоте, который по размерам не меньше разъема на карте, т.е. карта x4 будет работать в слотах x4, x8, x16, даже если реально к ним подведен однополосный канал. Процедура согласования канала PCI Express обеспечивает выбор максимального количества полос, поддерживаемого обеими сторонами. При передаче данных по многополосным каналам используется принцип чередования или "разборки данных" (data stripping): каждый последующий байт передается по другой полосе. В случае канала x2 это означает, что все четные байты передаются по одной полосе, а нечетные - по другой. Как и большинство других высокоскоростных последовательных протоколов, PCI Express использует схему кодирования данных, встраивающую тактирующий сигнал в закодированные данные, т.е. обеспечивающую самосинхронизацию. Применяемый в PCI Express алгоритм 8B / 10B (8 бит в 10 бит) обеспечивает разбиение длинных последовательностей нулей или единиц так, чтобы приемная сторона не потеряла границы битов. С учетом кодирования 8B/10B пропускную способность однополосного канала PCI Express можно оценить, как 2500 Мбит/с / 10 бит/байт = 250 мегабайт/с (238 Мбайт/с). PCI Express обеспечивает передачу управляющих сообщений, в том числе прерываний, по тем же линиям данных. Последовательный протокол не предусматривает блокирование, поэтому легко обеспечивается латентность, сопоставимая с PCI, где имеются выделенные линии для прерываний.

    14.8 Интерфейсы накопителей

    Первоначально для подключения накопителей к IBM PC использовались интерфейсы низкого уровня, классифицируемые как интерфейсы на уровне устройства: ST-506 (Shugart Technology), ESDI (Enhanced Small Device Interface). Для таких интерфейсов характерно, что их сигналы являются функцией генерирующего и использующего их устройства. Это позволяет использовать весьма простую электронику в самом устройстве, а основную нагрузку по обработке данных переложить на контроллер или процессор, что, естественно, негативно отражается на скоростных и прочих характеристиках подобных накопителей. Например, для ST-506/412: Direction In (направление), Step (шаг), Head Select (выбор головки) и т.п. Более того, сигнал с носителя, включающий в себя данные и биты синхронизации, передавался через интерфейс в аналоговом виде, поскольку разделение этой информации, выполняемое специальным блоком - сепаратором, происходило в контроллере. Появление новых методов кодирования информации (RLL6) вместо MFM7) ) привело к необходимости создания ориентированных на эти методы контроллеров (RLL-контроллер вместо MFM-контроллера), причем не гарантировалась надежная работа MFM-винчестера с RLL-контроллером. В интерфейсе ESDI эта проблема была решена, поскольку сепаратор был перенесен из контроллера в само устройство. Кроме того, в интерфейсе ESDI была выделена последовательная линия Command Data для передачи 16-битных команд, что перевело взаимодействие контроллера и винчестера ESDI на более высокий уровень и позволило повысить скорость передачи данных до 20 Мбит/с.

    В настоящее время распространены интерфейсы системного уровня, использующие сигналы в логике центрального процессора, что предполагает реализацию функций контроллера накопителя в самом накопителе, а устройство, сопрягающее интерфейс накопителя с системной шиной ПК, выполняет лишь роль адаптера интерфейса (моста). В IBM PC таким интерфейсом является EIDE/ATA. Он представляет собой "приставку" к 16-битной шине ISA, иначе называемой AT Bus, поэтому стандарт именуется AT Attachment (ATA). Другое название интерфейса - Enhanced Integrated Drive Electronics (EIDE). Первая спецификация ATA (IDE) определяла возможность подключения двух устройств к одному интерфейсу. Спецификация ATA-2 (EIDE) описывает совместную работу двух интерфейсов, позволяя, таким образом, подключать до четырех устройств. С внедрением стандарта ATA-4 на поддержку пакетных команд (ATAPI - ATA Packet Interface) стало возможным подключение устройств со сменным накопителем (приводы CD-ROM/DVD-ROM, стримеры, приводы флоппи-дисков большого объема). Последующие спецификации добавляли новые скоростные режимы (табл. 14.3) и решали некоторые проблемы (табл. 14.4). После появления интерфейса SerialATA принято ссылаться на EIDE/ATA как Parallel ATA.

    Таблица 14.3. Режимы работы интерфейса EIDE/ATA

    Режим

    PIO8)

    SW DMA9)

    MW DMA10)

    Ultra DMA

    0

    1

    2

    3

    4

    0

    1

    2

    0

    1

    2

    0

    1

    2

    3

    4

    5

    6

    Скорость, Мбайт/с

    3,3

    5,2

    8,3

    11

    16

    2,1

    4,2

    8,3

    4,2

    13

    16

    16

    25

    33

    44

    66

    100

    133

    Стандарт

    1

    1

    1

    2

    2

    1

    1

    1

    1

    2

    2

    4

    4

    4

    5

    5

    6

    7

    Таблица 14.4. Сводная таблица стандартов EIDE/ATA

    Псевдоним

    ANSI11) /NCITS12)

    Особенности

    1

    ATA, IDE

    X3.221-1994

    Накопители размером <528 мегабайт

    2

    EIDE, FastATA

    X3.279-1996

    Адресация LBA 24 бита (до 8,4 гигабайт)

    3

    EIDE

    X3.298-1997

    Адресация LBA 28 бит (до 134 гигабайт), SMART

    4

    ATAPI

    NCITS 317-1998

    Поддержка пакетных команд (ATAPI) - поддержка CD-ROM

    5

    UltraATA/66

    NCITS 340-2000

    80-контактный кабель

    6

    UltraATA/100

    NCITS 347-2001

    Адресация LBA 48 бит, автоматическое управление акустикой

    7

    UltraATA/133

    NCITS 361-2002

    Потоковое расширение (streaming), "длинные" сектора

    В современной вычислительной технике наблюдается тенденция перехода на высокоскоростные последовательные интерфейсы. Так, для накопителей был предложен последовательный интерфейс SerialATA, по своим характеристикам представляющий собой "приставку" к PCI Express. Стандарт SATA/150 обеспечивает пропускную способность до 1,5 Гбит/с (без учета кодирования 8B / 10B). Стандарт SATA/300 обеспечивает пропускную способность до 3 Гбит/с (без учета кодирования 8B/10B). Каждое устройство работает на отдельном кабеле. Стандарт предусматривает горячую замену устройств и функцию очереди команд. SATA-устройства используют два разъема: 7-контактный - для подключения шины данных и 15-контактный - для подключения питания. Передача данных происходит в дуплексном режиме по двум парам проводником (одна пара - на прием, другая - на передачу) с использованием дифференциального кодирования сигналов. Кроме перечисленных интерфейсов, для подключения накопителей используются универсальные периферийные интерфейсы, речь о которых пойдет в следующей главе - SCSI, USB, FireWire и т.п.

    Вопросы для самоконтроля

    1. Что такое интерфейс? Назовите основные интерфейсные функции.

    2. Перечислите основные технические характеристики интерфейсов ввода/вывода.

    3. Системные интерфейсы микроЭВМ и их особенности.

    4. Назовите интерфейсы на уровне устройств.

    5. Сравните шины расширения ввода/вывода.

    6. Перечислите основные особенности интерфейса AGP.

    1)   MIT (Massachusetts Institute of Technology) - Массачусетский технологический институт.   2)   IEEE (Institute of Electrical and Electronics Engineers) - Институт инженеров по электронике и электротехнике.   3)   VESA (Video Electronics Standards Association) - Ассоциация стандартов видеоэлектроники.   4)   PIIX (PCI IDE / ISA Accelerator) - PCI-Контроллер IDE и акселератор ISA.   5)   Ввод-вывод 3-го поколения.   6)   RLL (Run Length Limited) - Кодирование с ограничением длины поля записи.   7)   MFM (Modified Frequency Modulation) - Модифицированная частотная модуляция.   8)   Программный ввод-вывод.   9)   Прямой доступ к памяти по одиночным словам.   10)   Прмой доступ к памяти по нескольким словам.   11)   ANSI (American National Standards Institute) - Национальный институт стандартизации США.   12)   NCITS (National Committee for Information Technology Standards) –

    Лекция 15. Интерфейсы периферийных устройств

    В данной лекции рассматриваются универсальные периферийные интерфейсы для подключения внешних устройств к персональному компьютеру.

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

    15.1 Интерфейсы scsi

    Интерфейс SCSI был разработан в конце 1970-х годов и предложен организацией Shugart Associates. Первый стандарт на этот интерфейс был принят в 1986 г. SCSI определяет только логический и физический уровень. Устройства, подключенные к шине SCSI, могут играть две роли: Initiator (ведущий) и Target (ведомый), причем одно и то же устройство может быть как ведущим, так и ведомым. К шине может быть подключено до восьми устройств. Каждое устройство на магистрали имеет свой адрес (SCSI ID) в диапазоне от 0 до 7. Одно из этих устройств - хост-адаптер SCSI. Ему обычно назначают SCSI ID = 7. Хост-адаптер предназначен для осуществления обмена с процессором. Хост-адаптер, как правило, имеет разъемы для подключения как встраиваемых, так и внешних SCSI-устройств. Стандарт SCSI определяет два способа передачи сигналов - синфазный и дифференциальный. В первом случае сигналы на линиях имеют ТТЛ-уровни, при этом длина кабеля ограничена 6 м. Версии шины SCSI с дифференциальной передачей сигнала ("токовой петлей") дают возможность увеличить длину шины до 25 м. Чтобы гарантировать качество сигналов на магистрали SCSI, линии шины должны быть с обеих сторон согласованы при помощи набора согласующих резисторов, или терминаторов. Терминаторы должны быть установлены на хост-адаптере и на последнем устройстве магистрали. Обычно используют один из трех методов согласования:

    • пассивное согласование при помощи резисторов;

    • FPT (Force Perfect Termination) - улучшенное согласование с исключением перегрузок при помощи ограничительных диодов;

    • активное согласование при помощи регуляторов напряжения.

    Обмен данными между устройствами на шине SCSI происходит в соответствии с протоколом высокого уровня на основе стандартного списка команд - CCS (Common Command Set). Этот универсальный набор команд обеспечивает доступ к данным с помощью адресации логических, а не физических блоков. С внедрением в спецификацию CSS команд, поддерживающих приводы CD-ROM, коммуникационные устройства, сканеры и др. (стандарт SCSI-2), стала осуществимой работа практически с любыми блочными устройствами. На магистрали SCSI возможны синхронные и асинхронные передачи. В асинхронном режиме передача данных сопровождается сигналом запроса и заканчивается только после получения сигнала подтверждения. При синхронной передаче данных ведущее устройство не дожидается сигналов подтверждения перед выдачей сигнала запроса и приема следующих данных. После выдачи определенной серии импульсов запроса ведущее устройство сравнивает его с числом подтверждений, чтобы удостовериться, что группа данных принята успешно. Т.к. в этом режиме все равно участвуют сигналы квитирования, его еще называют асинхронным с согласованием скорости. В исходном стандарте шина SCSI имеет восемь линий данных. Для повышения производительности в спецификацию SCSI-2 введен так называемый широкий (Wide) вариант шины данных, предусматривающий наличие дополнительных 24 разрядов. Для повышения пропускной способности шины SCSI было предложено увеличить тактовую частоту обмена примерно в два раза, что послужило основой нового стандарта - Fast SCSI-2. Дальнейшее увеличение пропускной способности шины привело к появлению стандарта UltraSCSI (см. табл. 15.1).

    Таблица 15.1. Сравнение различных вариантов интерфейса SCSI-2

    Стандарт

    Максимальная пропускная способность

    Максимальная длина кабеля (синфазный)

    8 бит

    Wide SCSI

    16 бит

    32 бит

    SCSI

    5 Мбайт/с

    10 Мбайт/с

    20 Мбайт/с

    6 м

    Fast SCSI

    10 Мбайт/с

    20 Мбайт/с

    40 Мбайт/с

    3 м

    UltraSCSI

    20 Мбайт/с

    40 Мбайт/с

    80 Мбайт/с

    1,5 м

    Следует отметить, что существует также спецификация на программный интерфейс драйверов хост-адаптера и SCSI-устройств, разработанная фирмой Adaptec, ASPI (Advanced SCSI Programming Interface). Другая спецификация - SCAM (SCSI Configuration Auto Magically) - позволяет упростить настройку SCSI-устройств и скрыть от пользователя некоторые ее детали.

    15.2 Интерфейс rs-232c

    Стандарт на последовательный интерфейс RS-232C был опубликован в 1969 г. Ассоциацией электронной промышленности (EIA). Первоначально этот интерфейс использовался для подключения ЭВМ и терминалов к системе связи через модемы, а также для непосредственного подключения терминалов к машинам. До недавнего времени последовательный интерфейс использовался для широкого спектра периферийных устройств (плоттеры, принтеры, мыши, модемы и др.), но сейчас активно вытесняется интерфейсом USB. Стандарт RS-232C определяет:

    • механические характеристики интерфейса (разд.1) - разъемы и соединители;

    • электрические характеристики сигналов (разд.2) - логические уровни;

    • функциональные описания интерфейсных схем (разд.4) - протоколы передачи;

    • стандартные интерфейсы для выбранных конфигураций систем связи (разд. 5).

    В 1975 г. были приняты стандарты RS-422 (электрические характеристики симметричных цепей цифрового интерфейса) и RS-423 (электрические характеристики несимметричных цепей цифрового интерфейса), позволяющие увеличить скорость передачи данных по последовательному интерфейсу. Обычно ПК имеют в своем составе два интерфейса RS-232C, которые обозначаются COM1 и COM2. Возможна установка дополнительного оборудования, которое обеспечивает функционирование в составе PC четырех, восьми и шестнадцати интерфейсов RS-232C. Для подключения устройств используется 9-контактный (DB9) или 25-контактный (DB25) разъем. Интерфейс RS-232C содержит сигналы квитирования, обеспечивая асинхронный режим функционирования (табл. 15.2). При этом одно из устройств (обычно компьютер) выступает как DTE (Data Terminal Equipment - оконечное устройство), а другое - как DCE (Data Communication Equipment - устройство передачи данных), например, модем. Соответственно, если для DTE какой-то сигнал является входным, то для DCE этот сигнал будет выходным, и наоборот.

    Таблица 15.2. Сигналы интерфейса RS-232C

    Сигнал

    Номер контакта

    Описание

    DB25

    DB9

    FG

    1

    -

    Fore Ground. Защитное заземление

    TxD

    2

    3

    Transmit Data. Данные, передаваемые DTE

    RxD

    3

    2

    Receive Data. Данные, принимаемые DTE

    RTS

    4

    7

    Request To Send. Запрос передачи, выставляется DTE

    CTS

    5

    8

    Clear To Send. Сигнал сброса для передачи, выставляется DCE при готовности к приему

    DSR

    6

    6

    Data Set Ready. Готовность данных, выставляется DCE при готовности к передаче

    SG

    7

    5

    Signal Ground. Сигнальное заземление, "нулевой" провод

    DCD

    8

    1

    Data Carrier Detect. Обнаружение несущей данных, выставляется DCE при детектировании принимаемого сигнала

    DTR

    20

    4

    Data Terminal Ready. Готовность DTE

    RI

    22

    9

    Ring Indicator. Индикатор вызова, выставляется DCE при приеме вызова по телефонной сети

    В то же время, в простейшем случае для обмена могут использоваться лишь три линии: TxD, RxD и SG - без использования сигналов квитирования. Основные принципы обмена информацией по интерфейсу RS-232C заключаются в следующем:

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

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

    3. Передаче каждого пакета данных предшествует передача стартовой посылки, т.е. передача двоичного нуля в течение времени, равного времени передачи одного бита данных.

    4. После передачи стартовой посылки обеспечивается последовательная передача всех разрядов данных, начиная с младшего разряда. Количество битов может быть 5, 6, 7 или 8.

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

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

    Обмен данными по описанным выше принципам требует предварительного согласования приемника и передатчика по скорости (длительности бита) (300-115200 бит/с), количеству используемых разрядов в символе (5, 6, 7 или 8), правилам формирования контрольного разряда (контроль по четности, по нечетности или отсутствие контрольного разряда), длительности передачи стоповой посылки (1 бит, 1,5 бит или 2 бит). Спецификация RS-232C для электрических характеристик сигналов определяет, что высокий уровень напряжения от +3В до +12В (при передаче - до +15В) считается логическим "0", а низкий уровень напряжения от 3В до 12В (при передаче - до 15В) считается логическим "1" (рис. 15.1). Диапазон сигналов 3В:+3В обеспечивает защиту от помех и стабильность передаваемых данных.

    Рис. 15.1.  Логические уровни интерфейса RS-232C

    15.3 Интерфейс ieee 1284

    Стандартный интерфейс параллельного порта получил свое первоначальное название по имени американской фирмы Centronics - производителя принтеров. Первые версии этого стандарта были ориентированы исключительно на принтеры, подразумевали передачу данных лишь в одну сторону (от компьютера к принтеру) и имели невысокую скорость передачи (150-300 Кбайт/с). Такие скорости неприемлемы для современных печатающих устройств. Кроме того, для работы с некоторыми устройствами необходима двусторонняя передача данных. Поэтому некоторые фирмы (Xircom, Intel, Hewlett Packard, Microsoft) предложили несколько модификаций скоростных параллельных интерфейсов: EPP (Enhanced Parallel Port) - до 2 Мбайт/с, ECP (Extended Capabilities Port) - до 4 Мбайт/с и др. На основе этих разработок в 1994 году Институтом инженеров по электронике и электротехнике был принят стандарт IEEE 1284-1994, ныне повсеместно используемый в персональных компьютерах в качестве стандартного параллельного интерфейса.

    Таблица 15.3. Сигналы интерфейса IEEE 1284

    Разъем DB25

    Напряжение

    SPP

    Nibble Mode

    EPP

    ECP

    1

    O

    STROBE#

    WRITE#

    HostClk

    2

    O (I)

    DATA0

    AD0

    D0

    3

    O (I)

    DATA1

    AD1

    D1

    4

    O (I)

    DATA2

    AD2

    D2

    5

    O (I)

    DATA3

    AD3

    D3

    6

    O (I)

    DATA4

    AD4

    D4

    7

    O (I)

    DATA5

    AD5

    D5

    8

    O (I)

    DATA6

    AD6

    D6

    9

    O (I)

    DATA7

    AD7

    D7

    10

    I

    ACK#

    PtrClk

    Intr#

    PeriphClk

    11

    I

    BUSY

    D3/D7

    Wait#

    PeriphAck

    12

    I

    PE

    D2/D6

    AckDataReq

    AckReverse#

    13

    I

    SELECT

    D1/D5

    XFlag

    XFlag

    14

    O

    AUTOFD#

    HostBusy

    DataStb#

    HostAck

    15

    I

    ERROR#

    D0/D4

    DataAvail#

    PeriphReq#

    16

    O

    INIT#

    Reset#

    ReverseReq#

    17

    O

    SLCTIN#

    NibbleMode

    AddrStb#

    1284Active

    18-25

    -

    GND

    GND

    GND

    GND

    Стандарт IEEE 1284 определяет работу параллельного интерфейса в трех режимах: Standard Parallel Port (SPP), Enhanced Parallel Port (EPP) и Extended Capabilities Port (ECP). Каждый из этих режимов предусматривает двустороннюю передачу данных между компьютером и периферийным устройством. Режим SPP (Стандартный параллельный порт) используется для совместимости со старыми принтерами, не поддерживающими IEEE 1284. Режиму SPP соответствуют три программно доступных регистра:

    • порт BASE+0 - SPP Data - регистр данных,

    • порт BASE+1 - SPP Status - регистр состояния,

    • порт BASE+2 - SPP Control - регистр управления.

    Для устройства LPT1 базовым адресом (BASE) в пространстве портов ввода-вывода обычно является 378h. В этом режиме линии DATA[0:7] используются для прямой передачи данных (от компьютера к периферийному устройству). Сигналы STROBE#, ACK# и BUSY используются для квитирования. Сигналом STROBE# компьютер информирует о готовности данных на линиях DATA[0:7]. Если устройство приняло выставленные компьютером данные, то оно выставляет сигнал ACK#. Во время приема данных, во время инициализации, а также при наличии ошибки устройство выставляет сигнал BUSY. О возникновении ошибочной ситуации сигнализирует линия ERROR#, а также PE (кончилась бумага). О том, что принтер включен и готов к работе, сообщается при помощи сигнала SELECT. Для подтверждения выбора принтера компьютер выставляет сигнал SLCTIN#. При необходимости очистить буфер принтера и перевести его в исходное состояние выставляется INIT#. Сигнал AUTOFD# используется при работе с матричными принтерами в текстовом режиме для продвижения бумаги на одну строку.

    Для организации обратного канала (передача данных от принтера в компьютер) в режиме SPP возможны два механизма: механизм двунаправленного порта (впервые представленный в IBM PS/2 в 1987 г.) и механизм передачи полубайтами (Nibble Mode). При использовании механизма двунаправленного порта способ квитирования не декларируется. Особенностью обратного канала в Nibble Mode является то, что за один цикл передается только 4 бита данных. Таким образом, скорость в обратном канале в два раза меньше, чем в прямом канале. Преимуществом использования Nibble Mode является возможность программной реализации этого механизма на любом старом параллельном порту, не поддерживающем IEEE 1284. Сигналом активности этого механизма является высокий уровень на линии Nibble Mode (при прямой передаче на этой линии выставляется низкий уровень). Для квитирования используются линии Host Busy (сигнал устанавливается компьютером в низкий уровень, когда он готов к приему) и PtrClk (низкий уровень сигнала подтверждает действительность данных D[0:4]/D[5:7]).

    В режиме EPP (Улучшенный параллельный порт) используется аппаратная реализация сигналов квитирования, благодаря чему возможно увеличение скорости передачи до 2 Мбайт/с. Этот режим поддерживает адресацию устройств, благодаря чему возможно подключение нескольких (до 64) устройств к одному порту. Генерация цикла чтения или записи на шине IEEE 1284 со всеми необходимыми сигналами квитирования происходит при обращении к регистру EPP Address (BASE+3) или EPP Data (BASE+4). При этом адаптер IEEE 1284 устанавливает сигнал Write# в зависимости от направления передачи (низкий уровень - прямая передача, высокий уровень - обратная передача). Для периферийного устройства информацией о том, являются ли биты на линиях AD[0:7] данными или адресом, является сигналы DataStb# (строб данных) или AddrStb# (строб адреса). Периферийное устройство информирует компьютер о своей готовности принять очередной байт при помощи сигнала Wait#. Сигнал Reset#, так же как и в режиме SPP используется для инициализации устройства. Установка периферийным устройством сигнала Intr# вызывает генерацию прерывания. Сигналы AckDataReq и DataAvail# используются по усмотрению разработчика, например, для квитирования в обратном канале. Режим ECP (Порт расширенных возможностей) также использует аппаратное квитирование и адресацию устройств (до 128). Дополнительно ECP поддерживает распознавание ошибок, согласование скорости и режима передачи, буферизацию данных в очереди FIFO (с использованием DMA) и их компрессию по алгоритму RLE (Run Length Encoding), что позволяет достигать скорость до 4 Мбайт/с. Признаком активности режима ECP является высокий уровень сигнала 1284Active. При прямой передаче для квитирования используются сигналы HostClk и PeriphAck, а сигнал HostAck указывает на тип передаваемых данных: высокий уровень - обычные данные, низкий уровень - команда или адрес. Для запроса обратного канала компьютер выставляет сигнал ReverseReq#, который устройство подтверждает сигналом AckReverse#. В обратном канале для квитирования применяются сигналы PeriphClk и HostAck, а сигнал PeriphAck используется устройством для указания типа передаваемых данных. Устройство может запросить обслуживание при помощи сигнала PeriphReq#. В режиме ECP параллельный порт может эмулировать работу любого другого режима IEEE 1284, что определяется в соответствующих битах расширенного регистра управления (ECR) по адресу BASE+400h:

    Таблица 15.4. Режимы работы порта ECP

    Номер

    Обозначение

    Описание

    0002

    SPP

    Режим стандартного параллельного порта с программным квитированием

    0012

    Bi-directional mode

    Поддержка обратного канала для режима SPP, как в IBM PS/2

    0102

    Fast Centronics

    Режим стандартного параллельного порта с аппаратным квитированием

    0112

    ECP

    Режим ECP с поддержкой FIFO и RLE

    1002

    EPP

    Режим EPP

    1012

    Reserved

    1102

    Test mode

    Режим самотестирования FIFO и прерываний

    1112

    Configuration mode

    Режим конфигурирования

    15.4 Инфракрасный интерфейс

    В 1994 году Ассоциацией инфракрасной передачи данных (Infra-Red Data Assotiation) была принята первая версия стандарта IrDA. Интерфейс IrDA позволяет соединяться с периферийным оборудованием без кабеля при помощи ИК-излучения с длиной волны 850-900 нм (номинально - 880 нм). Порт IrDA дает возможность устанавливать связь на коротком расстоянии до 1 метра в режиме "точка-точка". Ассоциация намеренно не пыталась создавать локальную сеть на основе ИК-излучения, поскольку сетевые интерфейсы очень сложны и требуют большой мощности, а в цели интерфейса входили низкое ресурсопотребление и экономичность. Порт IrDA основан на архитектуре коммуникационного порта и использует универсальный асинхронный приемо-передатчик UART (Universal Asynchronous Receiver Transmitter), позволяющий работать со скоростью передачи данных 2400-115200 бит/с. Данные передаются 10-битными символами: 8 бит данных, один стартовый бит в начале и один стоповый бит в конце посылки. Связь в IrDA полудуплексная, т.к. передаваемый ИК-луч неизбежно засвечивает приемный фотодиод. Воздушный промежуток между устройствами позволяет принять ИК-энергию только от одного источника в данный момент. На физическом уровне стандарт IrDA определяет следующий способ кодирования: логический "0" передается одиночным ИК-импульсом длиной от 1,6 мкс до 3/16 периода передачи битовой ячейки, а логическая "1" передается как отсутствие ИК-импульса. Минимальная мощность потребления гарантируется при фиксированной длине импульса 1,6 мкс (рис. 15.2).

    Рис. 15.2.  Формат пакета IrDA

    Описанный способ кодирования (асинхронный) используется на скоростях до 115200 бит/с. В стандарте IrDA 1.1 этот режим определяется как SIR (Standard Infra-Red). Кроме того, стандарт IrDA 1.1 допускает реализацию высокоскоростного ИК-интерфейса до 4 Мбит/с - FIR (Fast Infra-Red). В этом случае ИК-интерфейс реализуется на основе синхронных протоколов HDLC/SDLC (High-level Data Link Control / Synchronous Data Link Control) с использованием на скоростях выше 1 Мбит/с фазоимпульсной модуляции. В настоящее время существует дополнение к стандарту IrDA - VFIR (Very Fast IR), описывающее обмен данными на скоростях до 16 Мбит/с. Т.к. ИК-интерфейс предусматривает только полудуплексный обмен, стандарт IrDA описывает архитектуру с одним главным (первичным) и множественными подчиненными (вторичными) устройствами. Схема обращения устройств представляет собой обычный протокол обмена данными, где есть фазы запросов (Request) и ответов (Response). Так, первичное устройство отвечает за организацию соединения и за обработку ошибок, посланные им кадры называются управляющими (Command Frames), а пакеты вторичных устройств именуются ответными (Response Frames). Обмен информацией идет только с первичным устройством, которое всегда выступает инициатором соединения, однако его роль может играть любое из устройств, поддерживающих необходимые для этого функции. По желанию может быть включен протокол транспортного уровня, позволяющий осуществлять контроль передачи между приложениями в случае одновременной работы нескольких приложений на одной физической линии. Каждое устройство имеет 32-битный адрес, вырабатываемый случайным образом при установлении соединения. Каждому кадру в пределах соединения ведущее устройство при старте присваивает 7-битный адрес соединения. Для возможных, но нежелательных случаев, когда два устройства имеют одинаковый адрес, предусмотрен такой механизм, когда ведущее устройство дает команду всем подчиненным устройствам изменить их адреса. Кроме протоколов физического уровня, стандарты IrDA определяют стек протоколов программного уровня (табл. 15.5).

    Таблица 15.5. Стек протоколов IrDA

    IrLMP-IAS

    IrCOMM

    OBEX

    TinyTP

    IrLMP-MUX

    IrLAP

    IrPHY: SIR / FIR

    Протокол IrLAP устанавливает правила доступа к ИК-среде, процедуры открытия канала, согласование абонентов сети, обмена информацией (разбиение данных на блоки, контроль ошибок) и т.д. Перед тем, как начать передачу, устройство, не принимающее в данный момент времени участия в обмене, должно прослушивать канал не менее 500 мс, чтобы убедиться в отсутствии трафика. С другой стороны, устройство, участвующее в обмене, должна вести передачу не более 500 мс. Максимальный квант передачи может быть равен 100, 200 или 500 мс. Он представляет собой максимальное время, в течение которого устройство передает данные до того, как перейдет к прослушиванию подтверждения приема, и зависит от скорости передачи и емкости буфера в принимающем устройстве. Доступ к среде передачи регулируется посредством специального бита PF (Poll/Final), который устанавливается в теле кадра и выполняет функции, аналогичные маркеру. IrLAP допускает передачи без установления предварительного соединения. Такая передача является широковещательной и не требует получения подтверждения станции получателя. Процедура открытия канала предусматривает обмен идентификационной информацией (ID). Инициатор широковещательного обмена передает ID предопределенное количество раз и прослушивает канал в интервалах между слотами. Станция-получатель случайным образом выбирает слот и посылает в ответ свой ID. При обнаружении коллизии процедура повторяется и применяется для согласования параметров функционирования станций (скорость обмена, максимальная длина пакета). При установлении соединения обмен данными, объем которых не должен превышать 64 байта, осуществляется со скоростью 9600 бит/с. После того, как соединение установлено, скорость обмена и величина пакета данных могут быть увеличены до максимальных. Кроме пакетов с пользовательскими данными, в обмене участвуют специальные кадры, служащие для управления потоком, коррекции ошибок и передачи маркера. Протокол управления каналом IrLMP (Link Management Protocol) является обязательным, однако его некоторые особенности могут быть опциональны. Протокол IrLMP содержит два компонента: LM-IAS (Link Management Information Access Service) и LM-MUX (Link Management MUltipleXer). Каждое устройство IrDA содержит таблицу сервисов и протоколов, доступных в настоящий момент. Эта информация может запрашиваться у других устройств. LM-IAS управляет информационной базой так, что станции могут запросить, какие службы предоставляются. Эта информация хранится в виде объектов, с каждым из которых связан набор атрибутов. LM-MUX выполняет мультиплексирование каналов поверх одного соединения, устанавливаемого протоколом IrLAP. С этой целью определяется множество точек доступа канала LSAP (Link Service Access Point) каждая с уникальным идентификатором (селектором). Таким образом, каждое из LSAP-соединений определяет логически различные информационные потоки. LM-MUX функционирует в двух режимах: мультиплексирования и эксклюзивном. Первый режим позволяет разделять одно физическое соединение нескольким задачам. В этом случае управление потоком должно быть обеспечено протоколами верхнего уровня (например, TinyTP) или непосредственно приложением. Второй режим отдает все ресурсы одному единственному приложению. Также IrLMP предусматривает три варианта доступа:

    • с установлением предварительного соединения,

    • без установления предварительного соединения (Сonnectionless) и

    • режим сбора информации о возможностях, сервисах и приложениях удаленного устройства (XID_Discovery).

    TinyTP (Tiny Transport Protocol) - транспортный протокол, осуществляющий функции управления потоком для любого LSAP-соединения независимо. Каждая точка доступа этого протокола (TTPSAP TinyTP Service Access Point) идентифицируется с единственной точкой доступа IrLMP и использует единый с ней адрес. TinyTP также управляет сегментацией и сборкой кадров. На базе TinyTP чаще всего используются протоколы верхнего уровня IrCOMM и OBEX. Протокол IrCOMM - это протокол эмуляции последовательного или параллельного портов. IrCOMM предоставляет пять типов сервисов: 3-Wire Raw, IrLPT, 3-Wire, 9-Wire и Centronics. Сервисы 3-Wire Raw и IrLPT работают только через одно эксклюзивное соединение (поверх LM-MUX без использования TinyTP) и применяются, когда необходимо передавать исключительно данные. Сервис 3-Wire эмулирует 3-проводный интерфейс RS-232C (сигналы SG, TxD, RxD), используя возможности TinyTP. Сервис 9-Wire предназначен для более точной эмуляции интерфейса RS-232C и обрабатывает, кроме трех вышеупомянутых, еще шесть сигналов (RTS, CTS, DSR, DTR, CD, RI), что позволяет использовать его для подключения модемов с ИК-интерфейсом. Сервис Centronics - это не что иное, как виртуальный параллельный интерфейс на базе TinyTP. Протокол OBEX (OBject EXchange) обеспечивает обмен объектами произвольного типа между устройствами (например, объекты vCard, vCalendar, vNotes и т.п.) В настоящее время OBEX используется поверх многих беспроводных интерфейсов (например, BlueTooth).

    15.5 Интерфейс usb

    Спецификация периферийной шины USB была разработана лидерами компьютерной и телекоммуникационной промышленности (Compaq, DEC, IBM, Intel, Microsoft, NEC и Northern Telecom) для подключения компьютерной периферии вне корпуса ПК с автоматическим автоконфигурированием (Plug&Play). Первая версия стандарта появилась в 1996 г. Агрессивная политика Intel по внедрению этого интерфейса стимулирует постепенное исчезновение таких низкоскоростных интерфейсов, как RS 232C, Access.bus и т.п. Однако для высокоскоростных устройств с более строгими требованиями к производительности (например, доступ к удаленному накопителю или передача оцифрованного видео) конкурентом USB является интерфейс IEEE 1394. Интерфейс USB представляет собой последовательную, полудуплексную, двунаправленную шину со скоростью обмена:

    • USB 1.1 - 1,5 Мбит/с или 12 Мбит/с;

    • USB 2.0 - 480 Мбит/с.

    Шина позволяет подключить к ПК до 127 физических устройств. Каждое физическое устройство может, в свою очередь, состоять из нескольких логических (например, клавиатура со встроенным манипулятором-трекболом). Кабельная разводка USB начинается с узла (host) (рис. 15.3). Хост обладает интегрированным корневым концентратором (root hub), который предоставляет несколько разъемов USB для подключения внешних устройств. Затем кабели идут к другим устройствам USB, которые также могут быть концентраторами, и функциональным компонентам (например, модем или акустическая система). Концентраторы часто встраиваются в мониторы и клавиатуры (которые являются типичными составными устройствами). Концентраторы могут содержать до семи "исходящих" портов.

    Рис. 15.3.  Топология подключения устройств к USB

    Для передачи сигналов шина USB использует четырехпроводной интерфейс. Одна пара проводников ("+5В" и "общий") предназначена для питания периферийных устройств с нагрузкой до 500 мА. Данные передаются по другой паре ("D+" "D"). Для передачи данных используются дифференциальные напряжения до 3 В (с целью снижения влияния шума) и схема кодирования NRZI1) (что избавляет от необходимости выделять дополнительную пару проводников под тактовый сигнал). Интерфейс USB 1.1 декларирует два режима:

    • низкоскоростной подканал (пропускная способность - 1,5 Мбит/с), предназначенный для таких устройств, как мыши и клавиатуры;

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

    Все концентраторы должны поддерживать на своих исходящих портах устройства обоих типов, не позволяя высокоскоростному трафику достигать низкоскоростных устройств. Высокопроизводительные устройства подключаются с помощью экранированного кабеля, длина которого не должна превышать 3 м. Если же устройство не формулирует особых требований к полосе пропускания, его можно подключить и неэкранированным кабелем (который может быть более тонким и гибким). Максимальная длина кабеля для низкоскоростных устройств - 5 м. Требования устройства к питанию (диаметр проводников, потребляемая мощность) могут обусловить необходимость использования кабеля меньшей длины. Из-за особенностей распространения сигнала по кабелю число последовательно соединенных концентраторов ограничено шестью (и семью пятиметровыми отрезками кабеля). Хост узнает о подключении или отключении устройства из сообщения от концентратора (эта процедура называется опросом шины - bus enumeration). Затем хост присваивает устройству уникальный адрес USB (1:127). После отключения устройства от шины USB его адрес становится доступным для других устройств. Для индивидуального обращения к конкретным функциональным возможностям составного устройства применяется 4-битное поле конечной точки. В низкоскоростных устройствах за каждой функцией закрепляется не более двух адресов конечных точек: нулевая конечная точка используется для конфигурации и определения состояния USB, а также управления функциональным компонентом; а другая точка - в соответствии с функциональными возможностями компонента. Устройства с максимальной производительностью могут поддерживать до 16 конечных точек, резервируя нулевую точку для задач конфигурации и управления USB. Хост опрашивает все устройства и выдает им разрешения на передачу данных (рассылая для этого пакет-маркер - Token Packet). Таким образом, устройства лишены возможности непосредственного обмена данными - все данные проходят через хост. Это условие сильно мешало внедрению интерфейса USB на рынок портативных устройств. В результате в конце 2001 года было принято дополнение к стандарту USB 2.0 - спецификация USB OTG (On-The-Go), предназначенная для соединения периферийных USB-устройств друг с другом без необходимости подключения к хосту (например, цифровая камера и фотопринтер). Устройство, поддерживающее USB OTG, способно частично выполнять функции хоста и распознавать, когда оно подключено к полноценному хосту (на основе ПК), а когда - к другому периферийному устройству. Спецификация описывает также протокол согласования выбора роли хоста при соединении двух USB OTG-устройств. Данные на шине передаются транзакциями, интервал между которыми составляет 1 мс. Предусмотрено четыре типа транзакций. Управляющие передачи используются для конфигурации вновь подключенных устройств (например, присвоения им адреса USB) и их компонентов. Устройства с максимальной производительностью могут быть настроены на работу с конфигурационными сообщениями длиной 8, 16, 32 или 64 байта (по умолчанию - 8 байт). Устройства с низкой производительностью в состоянии распознавать управляющие сообщения длиной не более 8 байт. Групповая передача (bulk) используется для адресной пересылки данных большого объема (до 1023 байт). В качестве примера можно привести передачу данных на принтер или от сканера. Устройства с низкой производительностью не поддерживают этот режим. Передача данных прерывания, например, введенных с клавиатуры данных или сведений о перемещении мыши. Эти данные должны быть переданы достаточно быстро для того чтобы пользователь не заметил никакой задержки. В соответствии со спецификациями время задержки USB составляет несколько миллисекунд. Изохронные передачи (передачи в реальном масштабе времени). Пропускная способность и задержка доставки оговариваются до начала передачи данных. К изохронным данным алгоритмы коррекции ошибок неприменимы (поскольку время на повторную их ретрансляцию превышает допустимый интервал задержки). За один сеанс в таком режиме может быть передано до 1023 байт. Устройства с низкой производительностью не поддерживают этот режим. Следует также отметить, что разными производителями предлагались спецификации, описывающие интерфейс различных аппаратных реализаций контроллера USB. Фирмой Intel была предложена спецификация UHCI (Universal Host Controller Interface), которая предусматривает чрезвычайно простую аппаратную реализацию контроллера USB. В рамках данной спецификации основные функции контроля и арбитража шины возлагаются на программный драйвер. Альтернативная спецификация была предложена компаниями Compaq, Microsoft и National Semiconductor - OHCI (Open Host Controller Interface). Контроллеры по спецификации OHCI обладают унифицированным абстрактным интерфейсом, предусматривающим аппаратную реализацию большинства управляющих функций, что облегчает их программирование.

    15.6 Интерфейс ieee 1394 - FireWire

    Группой компаний при активном участии Apple была разработана технология последовательной высокоскоростной шины, предназначенной для обмена цифровой информацией между компьютером и другими электронными устройствами. В 1995 году эта технология была стандартизована IEEE (стандарт IEEE 1394-1995). Компания Apple продвигает этот стандарт под торговой маркой FireWire, а компания Sony - под торговой маркой i-Link. Интерфейс IEEE 1394 представляет собой дуплексную, последовательную, общую шину для периферийных устройств. Она предназначена для подключения компьютеров к таким бытовым электронным приборам, как записывающая и воспроизводящая видео- и аудиоаппаратура, а также используется в качестве интерфейса дисковых накопителей (таким образом, она соперничает с шиной SCSI). Первоначальный стандарт (1394a) поддерживает скорости передачи данных 100 Мбит/с, 200 Мбит/с и 400 Мбит/с. Последующие усовершенствования стандарта (1394b) обеспечивают поддержку скорости передачи данных 800 и 1600 Мбит/с (FireWire-800, FireWire-1600). Устройства, которые передают данные на разных скоростях, могут быть одновременно подключены к кабелю (поскольку пары обменивающихся данными устройств используют для этого одну и ту же скорость). Рекомендуемая максимальная длина кабеля между устройствами составляет 4,5 м. К кабелю общей длиной до 72 м может быть одновременно подключено до 63 устройств, называемых узлами (nodes). Для увеличения числа шин вплоть до максимального значения (1023) могут быть использованы мосты. Каждое устройство обладает 64-разрядным адресом:

    • 6 бит - идентификационный номер устройства на шине,

    • 10 бит - идентификационный номер шины,

    • 48 бит - используются для адресации памяти (каждое устройство может адресовать до 256 Тбайт памяти).

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

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

    • Изохронная передача предполагает пересылку данных через равные промежутки времени, причем подтверждения приема не используются. Этот режим предназначен для пересылки оцифрованной видео- и аудиоинформации.

    Пакеты данных пересылаются порциям, которые имеют размер, кратный 32 битам, и называются квадлетами (guadlets). При этом пакеты начинаются, по меньшей мере, с двух квадлетов заголовка, после чего следует переменное число квадлетов полезной информации. Для заголовка и полезных данных контрольные суммы (CRC) указываются отдельно. Длина заголовков асинхронных пакетов составляет, как минимум, 4 квадлета. У изохронных пакетов может быть заголовок длиной 2 квадлета, поскольку единственным необходимым при этом адресом является номер канала. IEEE 1394 выделяет следующие функции устройств:

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

    • Диспетчер шины (bus manager) управляет питанием шины и выполняет некоторые функции оптимизации.

    • Диспетчер изохронных ресурсов (isochronous resource manager) распределяет временные интервалы среди узлов, собирающихся стать передатчиками (talkers).

    Все функции диспетчеризации могут выполняться одним и тем же либо различными устройствами. Хозяин цикла посылает синхронизирующее сообщение о начале цикла через каждые 125 мкс (как правило). Теоретически 80% цикла (100 мкс) резервируется для изохронного трафика, а остальная часть становится доступной для асинхронного трафика. Сначала узлы с изохронными данными для пересылки, а также те узлы, которым был назначен номер канала, пытаются получить доступ к шине на время передачи (сразу же после каждого сообщения о начале цикла), и узел, который ближе всего находится к корневому узлу, первым получит разрешение на передачу данных. Каждый последующий узел с назначенным номером канала и изохронным трафиком для пересылки последовательно получает разрешение на передачу данных. Затем пытаются получить доступ к шине и узлы с асинхронным трафиком. Для подключения к данному интерфейсу применяется 6-контактный соединитель. Используемый при этом кабель имеет круглую форму и содержит:

    • экранированную витую пару А (ТРА), в которой используется симметричное, разностное напряжение (для обеспечения требуемой помехоустойчивости), а данные передаются в обоих направлениях с помощью схемы кодирования NRZ2). Фактически напряжение составляет 172-265 мВ;

    • экранированную витую пару В (ТРВ), пересылающую стробирующий сигнал, который изменяет состояние всякий раз, когда два последовательных разряда данных (на другой паре) одинаковы (т.н. кодирование данных со стробированием - data-strobe encoding), и гарантирует изменение состояния в паре для передачи данных либо стробирующих сигналов по фронту каждого разряда;

    • провода, обеспечивающие питание небольших устройств. При этом по проводу VP подается напряжение 8-40 В, обеспечивающее нагрузку до 1,5 А, а провод VG заземлен. Впрочем, существуют варианты соединения, в котором провода питания отсутствуют;

    • а также общий экран, который изолирован от экранов пар и прикреплен к корпусам соединителей.

    В IEEE 1394b допускается применять также простые UTP-кабели 5-й категории, но только на скоростях до 100 Мбит/с. Для достижения максимальных скоростей на максимальных расстояниях предусмотрено использование оптоволокна (пластмассового - для длины до 50 метров, и стеклянного - для длины до 100 метров).

    Вопросы для самоконтроля

    1. Назовите режимы передачи интерфейса SCSI и охарактеризуйте каждый режим.

    2. Назовите особенности стандартного последовательного интерфейса RS-232C.

    3. Как в стандарте RS-232C определены высокий и низкий уровни напряжения?

    4. К чему относится понятие Centronics?

    5. Перечислите последовательные интерфейсы ввода/вывода.

    6. Назовите протоколы, входящие в стек IrDA, и их назначение.

    7. Охарактеризуйте топологию интерфейсов USB и FireWire.

    8. Сравните технические характеристики интерфейсов USB и FireWire.

    Лекция 16. Состав, классификация и характеристики периферийных устройств

    В данной лекции рассматриваются основные типы периферийных устройств для ПК, их принципы работы и основные характеристики.

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

    16.1 Классификация периферийных устройств

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

    1. ПУ, предназначенные для связи с пользователем. К ним относят различные устройства ввода (клавиатуры, сканеры, а также манипуляторы - мыши, трекболы и джойстики), устройства вывода (мониторы, индикаторы, принтеры, графопостроители и т.п.) и интерактивные устройства (терминалы, ЖК-планшеты с сенсорным вводом и др.)

    2. Устройства массовой памяти (винчестеры1), дисководы2), стримеры3) , накопители на оптических дисках, флэш-память4) и др.)

    3. Устройства связи с объектом управления (АЦП, ЦАП, датчики, цифровые регуляторы, реле и т.д.)

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

    16.2 Видеосистема

    ДИСПЛЕЙ С ЭЛЕКТРОННО-ЛУЧЕВОЙ ТРУБКОЙ

    В настоящее время существует большое количество видео-, аудиосистем и мониторов для отображения информации на экране и озвучивания её.

    Для связи пользователя с PC было разработано специальное устройство, которое отображало запросы пользователя и ответы на них PC.

    Таким устройством в РС является монитор. Работа описана в [1].

    С точки зрения принципа действия, все мониторы для РС делят на:

    а) мониторы на основе электронно-лучевой трубки (ЭЛТ);

    б) на основе жидкокристаллических экранов ( плоско-панельные мониторы).

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

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

    Разрешающая способность монитора определяется числом элементов изображения, которые он способен воспроизводить по горизонтали и вертикали. Например, 640 * 480 или 1024 * 768 пикселей. Если этот видеосигнал является непрерывным по времени, то монитор тоже будет аналоговым, но первые мониторы были цифровыми. Управление в цифровых мониторах осуществлялось двумя сигналами: логической единицей («да») и логическим нулём («нет»). Уровень «1» около 5 В, а у «0» – 0,5 В. Такие уровни у микросхем TTL (Transistor Transistor Logic), поэтому такие мониторы называют ещё TTL-мониторами. Первые из них были монохромные, а сейчас все цветные. Сигналы управления в монохромных мониторах формируются графическими картами стандарта MDA, Hercules или EGA.

    У стандарта Hercules одна электронная пушка и анодное напряжение 15 КВ, а потребляемая мощность 30 Вт. Они подключаются к РС 2-рядным и 9-контактным штекером типа «вилка», а аналоговые (VGA и выше) – 3-рядным 15-контактным.

    Кинескоп цветного монитора имеет 3 пушки, различающиеся по цветам: Red (красный), Green (зеленый) и Blue (синий). Он с раздельным управлением. Ещё его называют RGB-монитор. Современные аналоговые мониторы так называют из-за цветов, а аналоговый или цифровой сигнал – значения не имеет. Цифровые RGB-мониторы подключают к видеокартам стандарта CGA и EGA. Размер палитры зависит от количества двоичных сигналов, используемых для управления электронными пушками. На CGA 3 основных и 1 дополнительный (Intensity, I). Последний тип кинескопа изменяет интенсивность всех 3 пушек одновременно. Модуль для этого варианта – IRGB отображает 24 = 16 цветов.

    В EGA 3 основных и 3 дополнительных (r, g, b) двоичных сигнала для индивидуальной регулировки каждого цвета: модель RrGgBb, может отобразить 26 = 64 оттенка цвета, но отображаются из-за малой видеопамяти только 16 цветов. Аналоговые мониторы работают со стандартами VGA и более поздними: разрешение 640*480 пиксел и выше. Для получения изображения в них используют напряжение от 0 до 0,7 В. Аналоговые мониторы есть и монохромные, но с большим количеством серых оттенков (меньше и дешевле, а потому их тоже используют). Видеосигнал на аналоговый монитор подают через 15-контактный 3-рядный D-образный разъём (стандартный разъём VGA), но из-за более широкой полосы частот видеосигнала у аналоговых мониторов провода 1-6, 2-7 и 3-8 используют как витые пары, а бит идентификации говорит о типе монитора (цветной или монохромный).

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

    В соответствии с особенностями человеческого зрения, в ЭЛТ цветного монитора для получения изображения используют три электронные пушки, у которых отдельные схемы управления. На внутреннюю поверхность экрана наносят люминофор трех цветов: красный, синий, зелёный – есть специальная цветоделительная маска.

    В современных мониторах 4 типа ЭЛТ:

    а) с теневой маской (Shadow mask) и дельтообразным расположением электронных пушек (рис. 9а);

    б) ЭЛТ с улучшенной теневой маской (Enhanced Dot Pitch) и планарным расположением электронных пушек (как у фирмы Hitachi) (рис. 9б);

    в) ЭЛТ со щелевой маской (Slot mask) – используется в мониторах фирмы NEC и называется Cromaclear (рис. 9в);

    г) ЭЛТ с апертурной решёткой (Apertnre grill) – ЭЛТ типа Trinitron фирмы Sony Diamond Tron, фирмы Mitsubishi и Sonic Tron фирмы View Sonic (рис. 9г).

    Теневая маска – это металлическая пластина из инвара с системой отверстий, соответствующих точкам люминофора.

    Апертурная решётка образована системой щелей. Чёткость изображения лучше при меньшем размере точки люминофора. Расстояние между этими точками на экране называют зерном (от 0,21 до 0,41мм). Монитор 14'' по диагонали 265 мм, а режим 640 * 480 требует в линии отобразить 640 точек, поэтому расстояние между зерном будет 265/640 ~ 0,41 мм.

    Рассмотрим характеристики, определяющие качество монитора.

    1. Диагональ экрана. Она измеряется в дюймах и указывает на расстояние между левым нижним и правым верхним углом экрана. Есть регулировки H-Size-размера по горизонтали, V-Size-размера по вертикали.

    2. Размер зерна экрана – для теневой маски это шаг точки, а для апертурной решетки – шаг полосы.

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

    Рис. 16.1. Типы ЭЛТ и кинескоп с теневой маской

    1. Разрешение – аналоговые мониторы должны обеспечивать разрешение не ниже 1 024 * 768, а мультичастотные – до 1 280 * 1 024 и выше (пусть пока ваша видеокарта не обеспечивает этот размер, проще карту заменить).

    2. Тип ЭЛТ. Сегодня предпочтительнее Black Trinitron, Black Matrix или Black Planar, но они восприимчивы к свету.

    3. Искажения. Смотреть, чтобы круг был кругом, а прямоугольник не с углами, меньшими 900. Следует обратить внимание на искажения, которые возникают при резких светло-тёмных переходах (тянучки) – искажение должно быть не более 3 мм, а нормальное 1 – 2 мм.

    4. Частота переключения – при переходе из графического режима в текстовый режим не должно появляться вспышек растра.

    5. Потребляемая мощность для 14'' не превышает 60 Вт, но при большей диагонали больше и мощность.

    6. Антибликовое покрытие – это плёнка на экране с голубым оттенком из специального химического вещества, которая не даёт отражаться свету от поверхности.

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

    8. Частота кадров и частота строк 72 МГц (считается самой благоприятной для глаз частотой).

    Мониторы с сеточным покрытием экрана практически не защищают от электромагнитного излучения и статического электричества. Их размещают поверх экрана, что ухудшает контрастность.

    Мониторы с плёночным покрытием не защищают от статического электричества, но повышают контрастность, поглощают ультрафиолетовое и, частично, рентгеновское излучение. Среди них есть модели с поляризацией.

    Существует несколько модификаций стеклянных мониторов.

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

    Мониторы класса Low Radiation сделаны из специального стекла, которое ослабляет все виды излучения – это аналогия защитного экрана. Снижение электростатического потенциала достигается использованием специальных экранирующих материалов, соединённых с заземляющим проводом.

    ЖИДКОКРИСТАЛЛИЧЕСКИЕ МОНИТОРЫ

    Для устранения большой массы мониторов, их размеров и энергопотребления были разработаны малогабаритные дисплеи на основе жидких кристаллов – ЖК-мониторы – они совершенно плоские, а потому эти мониторы ещё называют плоско-панельными. Используются как в Notebook, так и в обычном РС. Работа описана в [1].

    В них экран состоит из двух панелей, между которыми залит слой жидкокристаллического вещества. Экран представляет собой совокупность отдельных ЖК-ячеек, каждая из которые обычно выдаёт 1 пиксел изображения, но здесь ячейка не генерирует, а управляет интенсивностью проходящего света. Для этого в них используют подсветку. ЖК-ячейка – это электронно-управляемый светофильтр. Жидкокристаллическое вещество имеет молекулы вытянутой формы – неметаллические, что позволяет их упорядочивать. Если на подложку нанести мелкие бороздки, то молекулы ЖК-вещества будут ориентироваться вдоль этих бороздок. Другим важнейшим свойством является зависимость ориентации этих молекул от направления внешнего электрического поля.

    В технологии Twisted Nematic ориентирующие канавки развёрнуты относительно друг друга на 900. Если к подложкам приложить напряжение 3 – 10 В, то между ними возникает электрическое поле, и молекулы располагаются параллельно его силовых линий, поворота плоскости поляризации проходящего через них света не происходит, а потому плоскость поляризации света не совпадает с плоскостью поляризации анализатора (нижней подложки), и ЖК-ячейка оказывается непрозрачной.

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

    Усовершенствованная технология – Super Twisted Nematic. Чтобы улучшить контрастность изображения, угол закручивания молекул увеличили до 1200, а затем до 2700. После появилась технология Dual Super – Twisted Nematic, где используются сразу 2 ячейки, последовательно поворачивающих плоскость поляризации в противоположных направлениях, а проблему низкого быстродействия решили использованием двойного сканирования, т.е. весь экран разбивается на чётные и нечётные строки, обновление которых происходит одновременно. Радикально повышено быстродействие ЖК-ячеек и контрастность в технологии активных ЖК-ячеек. От обычной (пассивной) активная ЖК-ячейка отличается наличием собственного электронного ключа, выполненного на транзисторе, который позволяет коммутировать более высокое (десятки вольт) напряжение, используя сигнал низкого уровня (0,7 В) – это снизило засветку соседних пикселов. Электронные ключи сделаны по тонкоплёночной технологии, поэтому ЖК-экраны называли (по аналогии с тонкоплёночными транзисторами) TFT-экраны (Thin Film Transistor – тонкоплёночный транзистор). Они разработаны фирмой Toshiba.

    Здесь каждый элемент матрицы образован тремя тонкоплёночными транзисторами и триадой управляемых ими ЖК-ячеек, которые пропускают через светофильтр только один из основных цветов.

    Характеристики жидкокристаллических мониторов немного отличаются от мониторов с ЭЛТ.

    1. Размер и ориентация экрана от 13 до 16'', практически совпадает с растром, но здесь возможна ориентация как ландшафтная (обычная), так и портретная. Это достигается обычным поворотом экрана на 900, но ориентация изображения не меняется.

    2. Поле обзора характеризуется углами обзора, отсчитываемыми от перпендикуляра к плоскости экрана по горизонтали ±45 – 700 и по вертикали от –15 – 500 (вниз) до +20 – 700 (вверх).

    3. Разрешение 1 024 * 768 определяется размером экрана и размером ячейки. Здесь пиксел и зерно – одно и то же. Полоса пропускания видеотракта составляет 65 – 80 МГц.

    4. Частота строчной развёртки колеблется в диапазоне от 30 до 60 КГц, а частота кадров от 60 Гц до 85 Гц, но чаще 75 – 85 Гц.

    5. Яркость – типовая яркость 150 – 200 кд/м2, уменьшают регулятором.

    6. Контрастность показывает, во сколько раз изменяется яркость монитора при изменении уровня видеосигнала от максимального до минимального (150 : 1 – коэффициент контрастности). Минимальный равен 130 : 1, а максимальный – 1000 : 1.

    7. Инерционность монитора – минимальное время, необходимое для активизации его ячейки. Сейчас 30 – 70 мкс, т. е. как у ЭЛТ-мониторов.

    8. Палитра – так как ЖК-монитор – цифровой монитор, то палитра ограничена 262 144 или 16 777 216 оттенками цветов.

    9. Проблемные пикселы – это «заклинившие» пикселы, яркость которых при смене изображения и даже после выключения монитора неизменна, но это несовершенство технологии производства ЖК-экранов.

    10. Масса и габариты – масса достигает нескольких килограммов, а толщина до 20 см. Монитор можно отсоединить от PC и повесить на стену.

    Потребляемая мощность 35 – 50 Вт в рабочем режиме и 5 – 8 Вт в режиме ожидания.

    Их выпускают различные фирмы. Есть мониторы моделей Samsung, Acer, Sony, Benq. В последнее время появились модели Prestigio южно-корейской компании Prestigio International. У неё разрешение 1280х1024 пикселей, угол обзора (гориз./верт.) 150/ при контрастности 500:1 со временем отклика 13 мс.

    ПЛАЗМЕННЫЕ ДИСПЛЕИ

    В этих дисплеях вместо жидкокристаллического вещества используется ионизированный газ. Работа описана в [1]. Его молекулы излучают свет в процессе рекомбинации (восстановления электрической нейтральности). Для перехода в плазму используют высокое напряжение. Их максимальный размер 42'', но очень дорогие.

    ЭЛЕКТРОЛЮМИНЕСЦЕНТНЫЕ ДИСПЛЕИ

    Электролюминесцентные мониторы (ElectroLuminescent displays) по своей конструкции аналогичны ЖК-мониторам, но принцип действия основан на использовании света при возникновении туннельного эффекта в полупроводниковом p-n переходе. Описание работы дано в [1]. У них высокие частота развёртки и яркость свечения, они надёжны в работе, но уступают ЖК-мониторам в электропотреблении (на ячейки подают 100 В).

    МОНИТОРЫ ЭЛЕКТРОСТАТИЧЕСКОЙ ЭМИССИИ

    Мониторы электростатической эмиссии (Field Emission Displays) – это гибрид технологии ЭЛТ и жидкокристаллической. В качестве пикселов используются зёрна люминофора, но вместо электронного луча они активизируются электронными ключами как в TFT-экранах. Управление этими ключами выполняет специальная схема типа контроллера ЖК-экрана. Необходимое напряжение 5 000 В. Это наилучший среди плоско-параллельных экранов, с самой низкой инерционностью – 5 мкс, размер экрана 14–15''.

    ОРГАНИЧЕСКИЕ СВЕТОДИОДНЫЕ МОНИТОРЫ

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

    16.3 Видеоадаптеры

    Вторым после монитора основным компонентом видеосистемы РС является видеоадаптер. Иногда его называют видеокартой. Работа описана в [1].

    Основная функция видеоадаптера – преобразование цифрового сигнала, циркулирующего внутри РС, в аналоговые электрические сигналы, подаваемые на монитор. Другими словами, видеоадаптер является интерфейсом между компьютером и устройством отображения информации (монитором), но по мере развития РС на него стали возлагаться и другие обязанности: аппаратное ускорение 2D- и 3D-графики, обработка видеосигналов, приём телевизионных сигналов и др., а потому сейчас это мощное универсальное графическое устройство, именуемое Super VGA или SVGA.

    Видеоадаптер определяет следующие характеристики видеосистемы:

    – максимальное разрешение и частоту развёрток;

    – максимальное количество отображаемых оттенков цветов;

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

    Видеоадаптер включает в себя следующие основные элементы:

    – видеопамять для хранения цифрового изображения;

    – набор чипсет для обработки цифрового изображения и преобразования его в видеосигнал, подаваемый на монитор;

    – схемы интерфейса с шиной ввода/вывода РС;

    – ROM Video BIOS для расширения BIOS (команды управления видеосистемой);

    – цифро-аналоговый преобразователь, выполняющий преобразование цифровых данных, хранящихся в видеопамяти, в аналоговый видеосигнал;

    – тактовые генераторы.

    Он же формирует сигналы горизонтальной и вертикальной синхронизации, используемые для формирования растра на экране монитора.

    Кратко работу видеоадаптера можно изложить следующим образом.

    Процессор формирует цифровое изображение, как матрицу NxM (из n-разрядных чисел). Процессор записывает его в видеопамять в кадровый буфер (frame buffer), т.е. там хранится теперь цифровой образ текущего изображения (кадра). Видеоадаптер последовательно считывает содержимое ячеек кадрового буфера и формирует на выходе видеосигнал, уровень которого в каждый момент времени пропорционален значению, хранящемуся в отдельной ячейке. Сканирование осуществляется синхронно с перемещением электронного луча по экрану ЭЛТ, яркость каждого пиксела пропорциональна содержимому соответствующей ячейки памяти видеоадаптера. После просмотра всех ячеек одной строки растра, видеоадаптер формирует импульсы строчной синхронизации, инициирующие обратный ход луча по горизонтали, а после окончания сканирования буфера – сигнал движения луча снизу вверх. А потому частота строчной и кадровой развёртки монитора определяется скоростью сканирования содержимого видеопамяти, т.е. видеоадаптером.

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

    В текстовом режиме все пикселы разбиты на группы, называемые знакоместами или символьными позициями размером P*Q. В каждом из знакомест может быть отображён один из 256-и символов, т.е. на экране помещается M/Q символьных строк по N/P символов в каждой.

    Символ изображается точечной матрицей, которая называется передним планом, а остальные – задним планом или фоном (матрица 9*16 пиксел – зависит от типа видеоадаптера и текущего режима).

    Тёмной клетке соответствует логическая «1», а светлой – логический «0». Они хранятся в специальном ПЗУ на плате видеоадаптера, который называется аппаратным знакогенератором, а совокупность изображений 256 символов – шрифтом, при этом адресом ячейки знакогенератора является порядковый номер символа. Для кодирования изображения символа на экране используется 2 байта – первый задаёт № символа, а второй – атрибуты (цвет символа, фона, подчёркивания, мигания…).

    Область видеопамяти для видеостраницы равна 80*25*2=4 000 байт, а в режиме 40*25 – 2 000 байт. На практике отводят 4 или 2 Кбайт – лишние байты не используются.

    В текстовом режиме произвольное изображение вывести нельзя из-за того, что символы выводятся в отведённых символьных позициях – это недостаток.

    Вторым недостатком является узкая цветовая палитра – не превышает 16 цветов, но у него важное преимущество – незначительные затраты РС на его реализацию. NC работает в текстовом режиме!

    ОБЪЁМ ВИДЕОПАМЯТИ

    Чем больше объём видеопамяти, тем выше разрешение и шире цветовая палитра изображения.

    Для 2 в степени n оттенков цветов и разрешения N*M получаем N*M*n бит видеопамяти.

    В первых видеоадаптерах SVGA это было очень актуально, т.к. было повышенное разрешение и глубина цвета по сравнению с VGA.

    Сейчас видеопамять имеет объём до 256 Мбайт, т.к. при работе с трёхмерной графикой, чем объём больше, тем быстрее работа.

    В первых моделях был объём 256 Кбайт для 16 цветов и разрешения 640*480.

    ОСНОВНЫЕ ТИПЫ ВИДЕОАДАПТЕРОВ

    Были монохромные дисплеи с люминофором зелёного цвета и для них видеоадаптер MDA – Monochrome Display Adapter – работал только в текстовом режиме. Матрица была 9*14 пикселов, разрешение 720*350 пикселов, размер символа – 7*9 пикселов. Видеопамять – 4 Кбайт (для одной видеостраницы).

    В 1981 году фирма IBM выпустила видеосистему CGA (Color Graphic Adapter) в составе IBM PC XT. Он давал цветное изображение – было от 4 до 16 цветов. Использовал несколько графических режимов работы. Разрешение составляло 640*200 пиксел, в текстовом режиме знакоместо 8*8 при экране 80*25 и имел объём видеопамяти 16 Кбайт.

    Видеоадаптер HGC (Hercules Graphic Card) разработан в 1982 году. Разрешение 720*348 и матрица 9*14 пиксел. Но они были монохромные.

    Видеоадаптер EGA (Enhanced Graphic Adapter) имел разрешение 640*350, знакоместо 8*14, размер символа 7*9. В нём большая чёткость изображения, цвет кодировался 6 двоичными сигналами, т.е. палитра была из 64 оттенков, но одновременно отображалось только 16 цветов. Объём видеопамяти 64 Кбайт, затем 128 Кбайт. Он кроме знакогенератора ещё имел загружаемые программно шрифты, разрешение было 800*600 и 16 цветов, но не получил распространения из-за VGA.

    Видеоадаптер VGA (Video GA) использовался в компьютере IBM PS/2, затем стал платой, устанавливаемой в слот ISA. Здесь уже 256 регистров цвета, которые образуют своё ОЗУ – RAM. Было 256 Кбайт видеопамяти, разрешение 640*480 при 16 цветах и 320*200 при 256.

    Результатом совершенствования VGA стал Super VGA с объёмом видеопамяти до 512 Кбайт, затем 1 Мбайт с режимом 800*600, 1 024*768 при отображении 256 оттенков цветов.

    Затем появился видеоадаптер VESA Super VGA с разрешением до 1 600*1 200 с 24-разрядным RAM DAC, режимом 16 бит на пиксел или 65 536 цветов для High Color и 24 бит на пиксел или 16 777 216 цветов для режима True Color. Здесь использовался специальный графический ускоритель или графический сопроцессор, шина VLB, затем PCI и сейчас интерфейс AGP 8х.

    Чипсет для видеоадаптеров выпускают разные фирмы. Фирма S3 выпускает Vision 868, 968, Trio64 V+, Trio64 V2/DX, VIRGE, VIRGE/VX, VIRGE GX/DX, фирма ATI Technologies – MATH64, 3D RANGE II, 3D RANGE PRO, фирма MATROX – MGA-2 064W, MGA-1 064 SG, MGA G100, Tseng Labs – ET 6 000, ET 6 100, Cirrus Logic – CL-GD5 446.

    Используется однопортовая и двухпортовая память. В первом случае чтение и запись осуществляются через один порт. Она динамическая, т.е. типы как у DRAM.

    Но есть и специальная память – SGRAM (Synchronous Graphics RAM) с быстродействием в 4 раза выше, чем у DRAM и MBRAM (Multibank RAM) фирмы MoSys Inc. Она состоит из банков памяти размером 32 Кбайт. Каждый банк – это совокупность микросхем памяти, суммарная разрядность которых равна разрядности шины данных. Используют 2 банка памяти для реализации режимов чередования адресов и циклов регенерации. Она используется в видеоадаптерах фирмы Tseng Lab.

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

    Существуют 2 её разновидности: VRAM (Video RAM) и WRAM (Window RAM).

    У первой стоит на плате специальный контроллер, позволяющий по двум портам одновременно вести операции чтения и записи. Эта память разработана для видеосистемы с высоким разрешением (1280*1024 и выше) и 24-битным представлением цвета. Используется в специальных графических системах, т.к. дорогая.

    WRAM имеет подобную архитектуру, но работает на частоте до 50 МГц, что позволяет повысить быстродействие на 50% по сравнению с VRAM. Имеет 2 кадровых буфера для отображения смежных кадров. Сейчас есть и другие типы памяти: Direct RDRAM фирмы Rambus, 3D RAM – память для трёхмерной графики – фирмы Mitsubishi. Она 2-портовая с конвейерной обработкой данных. В ней стоит встроенный процессор и скоростные буферы.

    Память CDRAM (Cashed DRAM) тоже выпускает фирма Mitsubishi. Это комбинация динамической памяти и небольшого скоростного буфера на элементах статической памяти. У неё 128-разрядная внутренняя шина данных и 16-разрядная внешняя.

    Память DDR SDRAM имеет удвоенную скорость передачи данных. Она разработана фирмой Samsung. Чтение данных в ней как по фронту, так и по спаду тактового сигнала.

    Память ESDRAM (Enhanced SDRAM) фирмы Enhanced Memory System имеет быстродействие выше за счёт совершенной архитектуры и встроенной статической кэш-памяти.

    Она содержит режим «упреждающего чтения» как на жёстких дисках (в регистры SRAM из SDRAM).

    16.4 3D-Акселераторы

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

    В обычном режиме он выступает в роли пассивного элемента, включённого между видеоадаптером и монитором.

    Сегодня 3D-акселератор – это универсальный видеоадаптер, в состав которого входит ускоритель 2-мерной и 3-мерной графики. В них используются свои чипсет, которые выпускают большое количество фирм.

    Фирма 3Dfx Interactive выпустила один удачный 3D-акселератор – Chipset Voodoo Graphics, затем Voodoo , Voodoo Rush, Voodoo Banshee, Voodoo , Voodoo , Voodoo .

    Фирма Intel выпустила графический процессор I 740 с достаточно высоким быстродействием. Он используется во многих видеоадаптерах.

    Фирма NVIDIA выпустила чипсет Riva 128, Riva 128ZX, Riva TNT, Riva TNT2, а также ускорители фотореалистичной графики GeForce 256 (NV10), GeForce GTS (NV15) с геометрическими прцессорами.

    Фирма Matrox выпускает чипсет и платы для 2-мерной графики: MGA G200, MGA G400.

    Есть видеокарты с видеочипами фирмы ATI, выпускаемые фирмой Sapphire Radeon 9 800Pro, 9 700Pro, 9 700, 9 500Pro.

    Фирма Gainward выпускает видеокарты с чипсетами фирмы NVIDIA: GeForce FX 5 900 Ultra, FX 5 800 Ultra, FX 5 800, FX 5 600 Ultra.

    Они имеют поддержку уже вместо Direct 8 Direct 9.

    Появились видеоплаты с шиной PCI Express x16.

    Фирма MSI выпустила модель RX 600XT-TD128 с графическим чипом Radeon X600 XT.

    Тактовая частота чипа 500 МГц, а тактовая частота памяти 365 МГц при разрядности шины памяти 128 бит. В ней 4 конвейера.

    Фирма Gigabyte выпустила модель GV-NX57128D с графическим чипом GeForce PCX 5 750 с тактовой частотой чипа 425 МГц, тактовой частотой памяти 275 МГц и разрядностью шины 128 бит. В ней тоже 4 конвейера.

    Фирма Albatron разработала модель PCX 5 750 с чипом GeForce PCX 5 750. У неё тактовая частота чипа 425 МГц, а памяти – 250 МГц при 4 конвейерах. У всех этих моделей объём видеопамяти 128 Мбайт.

    16.5 Аудиосистема

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

    – записи звука с микрофона или магнитофона – идёт преобразование аналоговых сигналов в цифровые сигналы и запись на винчестер компьютера;

    – микширование (смешивание) при записи или воспроизведении сигналов от нескольких источников;

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

    – обработка звуковых сигналов: редактирования, объединения, разделения фрагментов сигналов и т.п.;

    – управления панорамой стереофонического звукового сигнала и уровнем сигнала в каждом канале при записи и воспроизведении;

    – обработки звукового сигнала в соответствии с алгоритмами объёмного звучания;

    – генерирования с помощью синтезатора звучания музыкальных инструментов и человеческой речи;

    – управление работой внешних музыкальных инструментов через специальный интерфейс MIDI;

    – воспроизведения звуков компакт-дисков;

    – управления компьютером и ввода текста с помощью микрофона.

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

    В классическую звуковую систему входят:

    – модули записи и воспроизведения звука;

    – модули синтезатора;

    – модуль интерфейсов;

    – модуль микшера;

    – акустическая система.

    В зависимости от класса некоторые модули могут отсутствовать.

    Каждый из модулей может выполняться в виде отдельной микросхемы или входить в состав многофункциональной микросхемы. Чипсет может содержать как одну, так и несколько микросхем.

    МОДУЛИ ЗАПИСИ И ВОСПРОИЗВЕДЕНИЯ ЗВУКА

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

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

    Практически все звуковые карты поддерживают запись и воспроизведение стереофонического звукового сигнала с частотой дискретизации 44,1 или 48 КГц. Разрядность АЦП и ЦАП определяет разрядность представления цифрового сигнала (8, 16 или 18 бит), динамический диапазон в децибелах и уровень шумов квантования. 8-разрядные сейчас уже не используются.

    Некоторые современные звуковые карты оснащаются 20- и даже 24-разрядными ЦАП и АЦП, что повышает качество записи и воспроизведения звука. Модуль может одновременно записывать и воспроизводить звуковой сигнал. Существуют три режима передачи данных по какому-либо каналу: симплекс (в одном направлении), полудуплекс (по очереди) и дуплекс (одновременно), но для записи на винчестер и воспроизведения звука нужна специальная звуковая карта, т.к. используется режим «запись с наложением».

    Модуль синтезатора позволяет генерировать любые звуки. Принцип синтезирования заключается в воссоздании структуры музыкального тона (ноты). У сигнала несколько временных фаз – атака, поддержка, затухание. Их совокупность называют амплитудной огибающей. Она зависит от музыкального инструмента. Синтез звука производят одним из трёх методов: частотной модуляцией (FM-синтез), таблицей волн (WT-синтез), физического моделирования.

    СПЕЦИФИКАЦИЯ AUDIO CODEC 97

    В этой спецификации используется аналоговая микросхема ввода/вывода и цифровой контроллер. Между собой они соединяются цифровым интерфейсом.

    Могут быть два кодека – звуковой кодек и кодек модема.

    В корпусе Intel есть спецификация Audio Modem Rizer (AMR), в соответствии с которой звуковая ризер-карта устанавливается в специальный слот AMR Interface Connector на материнской плате с форм-фактором ATX, mATX, NLX. При этом цифровой контроллер располагается на материнской плате, а звуковой кодек и интерфейс с телефонной (телекоммуникационной) линией – на ризер-карта. Взаимодействие осуществляется через интерфейс AC-link.

    Контрольные вопросы

    1. Сколько пушек в мониторах цветного изображения?

    2. Какие типы ЭЛТ Вы знаете?

    3. Какие основные характеристики у монитора с ЭЛТ?

    4. Что такое жидкокристаллический монитор?

    5. Каковы основные характеристики жидкокристаллических мониторов?

    6. Какие ещё дисплеи известны?

    7. Чем отличается жидкокристаллический монитор от монитора с ЭЛТ?

    8. Что расположено на видеокарте?

    9. Какие видеокарты известны?

    10. Что расположено на звуковой карте?

    11. Для каких целей используется звуковая карта?

    Список основной литературы

    1. Бройдо В.Л., Ильина О.П. Архитектура ЭВМ и систем: Учебник для вузов. – СПб.: Питер, 2006. – 718 с.

    2. Гук М. Аппаратные средства IBM PC: Энцикл. – СПб.: Питер, 2001. – 816 с.

    3. Жаров А. Железо IBM 2000. 7-е. изд. – М.: Микроарт, 2000. – 360 с.

    4. Жаров А. Железо IBM 2001. 8-е. изд. – М.: Микроарт, 2001. – 368 с.

    5. Колесниченко О., Шишигин И. Аппаратные средства PC. 4-е изд., перераб. и доп. – СПб.: БХВ – Петербург, 2001. – 847 с.

    6. Новиков Ю., Черепанов А. Персональные компьютеры: аппаратура, системы, Интернет: Учеб. курс. – СПб.: Питер, 2001. – 464 с.

    7. Смирнов А.Д. Архитектура вычислительных систем: Учеб. пособие для вузов. – М.: Наука, Физматлит, 1990. – 320 с.

    8. Унру Н.Э. Основы организации ЭВМ и систем: Учеб. пособие. – Новосибирск: СГГА, 1999. – 113 с.

    9. Фролов А.В., Фролов Г.В. Защищённый режим процессоров Intel 80286/80386/80486. Практическое руководство по использованию защищённого режима. – М.: Диалог-МИФИ, 1993. – 240 с.

    10. Цилькер Б.Я., Орлов С.А. Организация ЭВМ и систем: Учебник для вузов. – СПб.: Питер, 2006. – 668 с.

    Список дополнительной литературы

    1. Ветров С. «Компьютерное железо» – СПб.: Питер, 2001. – 328 с.

    2. Леонтьев В.П. Новейшая энциклопедия персонального компьютера 2001. – М.: Олла-Пресс, 2001. – 847 с.

    3. Нортон П., Гудман Дж. Внутрений мир персональных компьютеров. – 8-е изд. /Пер. с анг/. – Киев: Диа-Софт, 1999. – 584 с.

    4. Нортон П., Гудман Дж. Персональный компьютер. Аппаратно-программная организация. Кн. 1./ Пер. с англ/. – Киев: Диа-Софт, 2001. – 628 с.

    5. Шагурин И.И., Бердышев Е.М. Процессоры семейства Intel P6. Pentium, Pentium II, Pentium III и др. – СПб.: Питер, 2001. – 260 с.

    6. CHIP. Журнал информационных технологий. – Vogel Burda Communications: Мюнхен, Германия, 2004, 2005, 2006

    Приложение Классификация и основные определения пу.

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

    - устройства ввода и вывода символьной, текстовой, графической и видеоинформации;

    - устройства хранения данных (памяти);

    - устройства общения через разные среды (устройства мультимедиа);

    - устройства связи, которые представлены на рис.1.1

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

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

    • Клавиатура – устройство ввода информации, подключаемое к специализированному интерфейсу системной платы или по шине USB.

    • Принтеры и плоттеры – Устройства вывода текстовой и графической информации на бумагу или пленку. Подключаются к портам LPT, COM или USB. Обеспечивают высокую геометрическую точность вывода информации.

    • Сканеры – растровые устройства ввода информации. Сканеры бывают ручные и планшетные. Планшетные сканеры являются высокоточными. Все сканеры различаются по разрешающей способности, которая измеряется в количестве различных точек на дюйм (ед. dpi – dot per inch= точка на дюйм). Сканеры подключаются через порт LPT или USB.

    • Устройство - указатель – мышь относится к устройству ввода информации (команд), которая подключается к специализированному интерфейсу через порты COM или USB.

    Следующая группа состоит из устройств памяти. К ним относятся дисководы с гибкими магнитными дискетами емкостью 1,44 Мбайта СD или DVD диски с соответствующим дисководом, также МОD – диски. Для подключения этих устройств используется шина АТА, если эти устройства внутри системного блока или порты COM и USB, если они используются как внешние устройства.

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

    Неотъемлемой частью мультимедийного компьютера является аудиосистема. Современные звуковые карты имеют аудиокодек – средства цифровой записи и воспроизведения аудиосигналов. Эти средства позволяют:

    - проигрывать звуковые файлы различными форматами данных;

    - записывать (оцифровывать) внешние аудиосигналы с любых носителей информации

    - организовывать цифровую связь по сети;

    - синтезировать и распознавать речь.

    При наличии микшера в звуковой карте, возможно смешивать сигналы от различных источников: от кодека, микрофона, аудиовыхода, линейного входа, синтезатора.

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

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

    Связь компьютера с периферийными устройства, между собой и внешним миром обеспечивают устройства связи. К этим устройствам относятся модемы и адаптеры.

    • Модемы (модуляторы - демодуляторы) обеспечивают обработку и расшифровку информации, передаваемой по телефонным сетям общего назначения или по специально выделенным линиям связи. Модемы могут устанавливаться как внутри системного блока, так и подключаться извне. Внешнее подключение , как правило, обеспечивается через СОМ порт или по шине USB.

    • Адаптеры сетей позволяют проводить обмен информацией с гораздо более высокой скоростью, ног на меньшее расстояние.

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

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

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

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

    • Интерфейс RS-232 – СОМ-порт представляет собой последовательный интерфейс передачи данных в одном направлении, используя одну сигнальную линию. Последовательная передача позволяет сократить количество сигнальных линий связи и добиться хорошего качества связи на больших расстояниях. Этот интерфейс обеспечивает асинхронный способ передачи данных по сети.

    Для подключения периферийных устройств широко используются параллельные шины АТА и SCSI:

    • АТА – (Advanced Technology Attachment – Продвинутая Технология Присоединения) используется для подключения накопителей на жестких дисках. Интерфейс данной технологии появился а результате переноса контроллера жесткого диска ближе к накопителю. При этом удлинилась связь системной шины с устройством.

    • SCSI – (Small Computer System Interface – Системный Интерфейс Малых Компьютеров) представляет собой шину для подключения периферийных устройств компьютера.

    Последовательные шины позволяют объединить так же множество устройств.

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

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

    Наибольшую популярность в настоящее время получили последовательные шины USB и Fire Wire, которые способны передавать трафик аудио- и видеоданных.

    • Шина USB (Universal Serial Bus – универсальная последовательная шина) является промышленным стандартом расширения архитектуры персонального компьютера. Данная шина обеспечивает три скорости передачи данных :

        • FS – (full speed – полная скорость) 12 Мбит /сек

        • LS - (slow speed - низкая скорость) 1,5 Мбит/сек

        • HS - (high speed – высокая скорость) 480 Мбит/сек

    В одной и той же системе могут одновременно работать устройства с тремя скоростями. Шина с скоростями FS и LS соответствует поздней версии USB 1.0, а со скоростью HS новой версии USB 2.0. Эта шина ориентирована на периферийные устройства и позволяет передавать аудио (USB 1.0) и видео (USB 2.0.) сигналы, а также соединять устройства, удаленные от компьютера на расстояние до 25 м с использованием промежуточных Хабов. Кабель USB имеет одну экранированную витую пару для сигнальных цепей и одну не экранированную пару для подачи питания +5В.

    • Шина Fire Wire (огненный провод) отличается от шины USB тем, что вместо одной сигнальной пары проводов она имеет две сигнальные пары проводов или пару оптический волокон. В ней возможны три скорости передачи сигнала: 100, 200, 400 Мбит/сек с обеспечением цифровой связи до 63 устройств без дополнительной аппаратуры (хабов). Шина позволяет передавать одновременно два канала: видео и аудио сигналы. Питание, поступающее от шины ( ток до1,5А) позволяет подключенным устройствам работать с системой даже при отключении их питания.

    1. Схема преобразования цветов через регистры палитр и RAMDAC

    Микросхемы RAMDAC характеризуются разрядностью преобразователей, которая может доходит до 8 бит на цвет, и предельной частотой выборки точек (DotCLK), с которой они способны работать. Естественно, что чем точнее должно быть преобразование, тем труднее его выполнить быстро. Трудности и высокая стоимость достижения высокого разрешения при высокой частоте строчной (прогресивной) развертки (эти факторы требуют высокого быстродействия RAMDAC) с большой глубиной цвета (требующей высокой точности преобразования) связаны и с этой причиной. Современные графические адаптеры, ориентированные на высокое разрешение и высокую частоту развертки, имеют RAMDAC с частотой порядка 350 МГц и даже выше. Номер регистра RAMDAC, из которого берется цвет текущего отображаемого пиксела, в режиме 256 цветов задают 8-битным кодом цвета пиксела в видеопамяти. Для того чтобы отобразить 256 кодов цвета (8 битов на пиксел), в эти 218 цветов ввели программируемые регистры ЦАП, с помощью которых каждому из 256 кодов ставится в соответствие свой набор битов, посылаемый на схемы цветов.

    Общая характеристика клавиатуры.

    Клавиатура РС представляет собой унифицированное устройство со стандартным разъемом и последовательным интерфейсом связи с системной платой.

    Датчики клавиш представляют собой механические контакты (открытые или герметичные в стеклянных колбах магнитоуправляемые – герконы) или кнопки на основе токопроводящей резины, или емкостные датчики или датчики Холла.

    Емкостные датчики и датчики Холла не имеют подвижных контактов и являются наиболее надежными для клавиатуры. Независимо от типа применяемых датчиков, все клавиши объединены в матрицу, рис.2.1.

    Место расположение букв А, В, С на данной матрице может быть описано соответствующим кодом (скан-код):

    А – 23d ; В – 55d; С – 410d

    Скан-коды передаются в компьютер по факту нажатия и отпускания клавиш:

    при нажатии передается ее скан-код, т.е. номер идентифицирующий ее расположение на клавиатуре, после ее отпускания передаются 2 байта:

    1-й байт – содержит признак отпускания – F0;

    2-й байт – не модифицированный скан – код.

    1-й байт (F0) 2-й байт

    Для клавиш, генерирующих пару кодов (префикс и расширенный код) при отпускании сначала передается префикс (Е0 или Е1- верхний или нижний регистр, например) затем признак отпускания F0, а затем передается расширенный код.

    Е0 (Е1) F0 расширенный код

    Типовая клавиатура имеет внутренний контроллер, выполненный на микросхеме из семейства MCS – 48 фирмы Intel, осуществляющий контроль клавиш матрицы и управление индикаторами, внутреннюю диагностику и связь с системной платой последовательным интерфейсом по линиям КВ – Data и КВ – Cloсk.

    В стандартном исполнении существуют 3 типа клавиатур:

    -клавиатура ХТ – 83 клавиши без индикаторов, добавленных на более поздних разработках (Num Lock, Caps Lock);

    - клавиатура АТ – 84 клавиши , отличающаяся появлением дополнительной клавиши SysRec и индикаторов Num Lock, Caps Lock, Scroll Lock, а также двунаправленным интерфейсом с системной платой, обеспечивающий программирование параметров клавиатуры и ее диагностику;

    - расширенная клавиатура – 101/102 клавиши, используемая для моделей АТ и PS/2 и являющаяся современным стандартом. Другие расширенные клавиатуры могут иметь 104, 105 или 122 клавиши.

    Расширенная клавиатура имеет следующие группы клавиш:

    - основной клавиатуры;

    - цифровые клавиши;

    - функциональные клавиши;

    - клавиши управления курсором и экраном;

    - клавиши управления питанием;

    - кнопки быстрого доступа к приложениям.

    По электрическому интерфейсу Клавиатуры ХТ и АТ совпадают, а по логическому они не совместимы(разъем одинаковый, драйверы разные). Клавиатура PS/2 отличается от АТ только разъемом. В остальном - полное совпадение.

    1. Интерфейс клавиатуры и мыши.

    Подключение клавиатуры к системной плате осуществляется последовательным синхронным интерфейсом, состоящим из двух обязательных сигналов: КВ – Data и КВ – Cloсk. Контроллер интерфейса клавиатуры и его разъем расположены на системной плате. Разъем клавиатуры может быть двух типов:

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

    2.1. Контроллер интерфейса клавиатуры и мыши 8042/8242.

    Программируемый микроконтроллер последовательных интерфейсов клавиатуры и мыши расположен в пространстве ввода-вывода CPU по адресам 060 RW и 064 RW через параллельный интерфейс, рис 2.4.

    Режим работы контроллера (разрешение работы клавиатуры и мыши, прерывания от них, трансляция скан-кодов и др.) задается командным байтом, посылаемым в контроллер по специальной команде и регистра команд. Контроллер имеет 2 внешних порта по которым реализует последовательные интерфейсы связи со всеми устройствами.

    Регистр состояния порта 064 R

    Происходит русификация

    1. Скан-коды и системная поддержка.

    Скан – коды

    Скан –коды передаются от клавиатуры в компьютер по факту нажатия и отпускания клавиш.

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

    Набор Set#1. Свойственно первым клавиатурам. При отпускании клавиша клавиатуры передает скан-код с инвертируемым битом 7. При этом префиксы передаются без изменений, а модифицированные расширенные скан-коды передаются в порядке обратном прядку передачи при нажатии. Принятый способ сигнализации отпускания не позволяет использовать скан-коды: 60h, 61h, 5A, 6E и больше 79h и 00.

    Набор Set#2. Соответствует клавиатурам со 101/102 и более клавиш.

    При отпускании передаются два байта:

    Признак отпускания F0

    Не модифицированный скан-код

    1-й байт 2-й байт

    Клавиши, генерирующие пару кодов (префикс и расширенный код) при отпускании передается следующим образом:

    Префикс Е0 (Е1)

    признак F0

    расширенный скан-код

    Если клавиша генерирует пару кодов при нажатии, то при отпускании каждая пара кодов дает тройку кодов с обратным порядком их следования.

    Считыванием из порта и интерпретацией скан-кодов занимается программа центрального процессора, выполняемая обработчиком прерываний IRQ.

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

    Системная поддержка.

    Системная поддержка клавиатуры осуществляется на уровне BIOS. Коды, принятые от клавиатуры, считываются и обрабатываются обработчиком аппаратного прерывания IRQ1. Результат обработки помещается в клавиатурный буфер, из которого по программному прерыванию Int 16h этот результат может быть извлечен позже.

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

    Русификация клавиатуры поддерживается на программном уровне с помощью загружаемого драйвера, который замещает обработчик IRQ1 драйвера BIOS, перехватывая вектор прерывания процессора Int 9h

    Прерывания, вызванные приходом кодов нажатия и отпускания клавиш обрабатывает BIOS Int 9h.

    Манипуляторы-указатели

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

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

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

    3D – мышь . Кроме двух координат перемещения на плоскости позволяет задавать третью координату с дополнительного колесика, вращаемого пальцем.

    Интерфейсы мыши. Различают несколько видов:

    • Bus Mouse – это один из первых вариантов мыши. Эта мышь содержит только датчики и кнопки, а обработка их сигналов производится на специализированной плате адаптера. Для этой мыши используется 9 проводной кабель со специальным разъемом, внешне похожим на разъем мыши PS/2 Главный недостаток заключается в том, что адаптер занимает разъем системной шины, адреса ввода-вывода и прерывания.

    • Serial Mouse – использует интерфейс RS 232C и двух полярный сигнал с уровнями +3В и – 3В. Недостаток Serial Mouse является тол, что она занимает СОМ-порт и требует полного использования его штатной линии прерывания (IRQ4 для СОМ-1 и IRQ3 для СОМ-2).

    • PS/2- Mouse – использует однополярный сигнал с напряжением +5В. Ее интерфейс и разъем аналогичен клавиатурному и реализуется тем же контроллером, что и клавиатуры. Отличие работы интерфейса мыши от клавиатуры заключается в том, что специальные команды каждого байта записываются в порт 64h, но перед записью каждого байта записывается код D4 h.

    • USB Mouse – обычный последовательный интерфейс

    • MS Mouseхарактеризуется 7 битными данными в трехбайтном пакете. Положительное перемещение по координате Х вправо, а по координате У – вниз. Для трехкнопочной мыши добавляется четвертый байт.

    • PC Mouseхарактеризуется 8 битовыми данными при пяти байтовом пакете. Положительное перемещение по координате Х вправо, а по координате У – вверх. 8 бит знаковый

    Мышь работает в трех режимах:

    - токовом – посылает данные по любому изменению состояния;

    - опросе – передает данные только по запросу процессора;

    - диагностики – возврат эхом данных, посылаемым контроллером.

    Общая характеристика методов вывода изображений.

    Существуют два основных метода вывода изображения: векторный метод и растровый метод.

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

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

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

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

    Так как инерционность зрения человека находится на частоте 40-60 Гц, то частота смена кадра не должна быть ниже этого значения, чтобы человек не мог заметить эту смену, т.е. на уровне 50Гц. Для обеспечения качественного изображения на экране луч должен иметь как можно больше количество светящихся точек на экране. Например: 600 строк по 800 точек каждая строка, но при этом луч долен прочертит еще невидимые строки, те же 600. Следовательно частота строк составит:

    50 Гц х (600+600)=60 000 Гц = 60 кГц

    При этом, вывод каждой точки будет происходить с частотой:

    60 кГц х 800= 48 000 кГц = 48 мГц

    А это уже высокая частота для электронных схем.

    Кроме того, соседние точки выводимого сигнала не связаны друг с другом, поэтому частоту управления интенсивностью луча должна быть еще увеличена на 25% и тогда составит около 60 мГц.

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

    - четные строки засвечиваются в одном полукадре;

    - нечетные строки – в другом полукадре.

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

    Таким образом, существуют некоторые оптимальные соотношения работы графического редактора и монитора вывода изображения:

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

    1. Графический режим.

    В графическом режиме имеется возможность индивидуального управления свечением каждой точки экрана независимо от остальных. Обозначение этого режима следущее: GrAPA (Graphics All Points Addressable) - графический, все точки адресуемы.

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

    Количество бит памяти, отводимое на каждый пиксель, определяет возможное состояние цветов пикселя, его яркость, мерцание и др. Например, при 1 бите на пиксель возможно только 2 состояния: светится или не светится пиксель.

    При 2 битах на пиксель – 4 цвета на экране;

    при 4 битах на пиксель – 16 цветов на экране;

    при 8 битах на пиксель – 256 цветов на экране – цветная фотография.

    В настоящее время имеем 15 или 16 бит на пиксель (режим High Color), что соответствует 65 536 цветов, а при 24 битах на пиксель (режим Tru Color) соответствует 16,7 миллиона цветов.

    При 15 или 24 битах на пиксель распределение между базисными цветами К:З:С равномерное, при 16 битах – не равномерное с учетом восприятия цветов ( 5:6:5 или 6:6:4).

    Принципы организации видеопамяти.

    Логически видеопамять может быть организована по-разному, в зависимости от количества бит на пиксель.

    В случае одного или двух бит на пиксель каждый байт памяти соответствует восьми или четырем соседним пикселям строки (рис. 3.3, а,б). При сканировании ячейка считывается в регистр сдвига, из которого информа­ция о соседних точках последовательно поступает на выходные цепи адаптера. Такой способ отображения называется линейным — линейной последовательнос­ти пикселов соответствует линейная последовательность бит (или групп бит) видеопамяти.

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

    Рис. 3.3, а . Линейное отображение групп памяти 1 бит на пиксел.

    Таким образом, объем видеопамяти (в битах) V, требуемый для хранения образа экрана, определяется, как произведение количества пикселов p в строке на количество строк n и на количество бит на пиксел b.

    V= pxnxb

    Так, для режима HGC 720 х 350 с одним битом на точку он составляет 252 000 бит или около 31 Кбайт, а 800 х 600 х 256 цветов — 480 000 бит или около 469 Кбайт.

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

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

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

    • Повышение быстродействия памяти.

    • Расширение разрядности шин графического адаптера, причем как внутренней (шины видеопамяти), так и интерфейсной.

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

    • Принципиальное сокращение объема информации, передаваемой графическому адаптеру за счет наделения адаптера своим «интеллектом», т.е. процессором.

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

    1. Текстовый режим.

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

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

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

    В текстовом режиме экран организуется в виде матрицы знакомест, образованной горизонтальными линиями LIN (Line) и вертикальными колонками COL (Column). Этой матрице соответствует аналогичным образом организованная видеопамять. Адаптер, работающий в текстовом режиме, имеет дополнительный блок — знакогенератор. Во время сканирования экрана выборка данных из очередной ячейки видеопамяти происходит при подходе к соответствующему знакоместу (рис. 3.5), причем одна и та же ячейка видеопамяти будет выбираться при проходе по всем строкам растра, образующим линию знакомест. Считанные данные попадают в знакогенератор, который вырабатывает построчную развертку соответствующего символа — его изображение на экране.

    Знакогенератор представляет собой запоминающее устройство — ОЗУ или ПЗУ. На его старшие адресные входы поступает код текущего символа из "видеопамяти, а на младшие — номер текущей строки в отображаемой линии знакомест. Выходные данные содержат побитную развертку текущей строки разложения символа (в графическом режиме эти данные поступали из видеопамяти). Необходимый объем памяти знакогенератора определяется форматом знакоместа и количеством отображаемых символов. Самый «скромный» знакогенератор имеет формат знакоместа 8х8 точек, причем для алфавитно-цифровых символов туда же входят и межсимвольные зазоры, необходимые для читаемости текста. Лучшую читаемость имеют матрицы 9 х14и9х16 символов. Если знакогенератор выполнен на микросхеме ПЗУ, то набор отображаемых символов оказывается жестко фиксированным (в лучшем случае переключаемым, для чего может использоваться несколько выбираемых банков памяти знакогенератора). Для знакогенераторов на ПЗУ изменение таблицы символов (например, русификация) становится сложным делом.

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

    Трехмерная графика и способы обработки видеоизображений.

    Потребности работы с трехмерными изображениями или ЗD-графикой (3Dimensions — 3 измерения), имеются в широком спектре приложений — от игр до систем автоматического проектирования, используемых в архитектуре, машиностроении и других областях. Конечно же, компьютер оперирует не самими трехмерными объектами, а их математическими описаниями. Трехмерное приложение оперирует объектами, описанными в некоторой системе координат. Большинство устройств визуализации, имеет лишь плоский (двумерный) экран, с помощью которого необходимо создать иллюзию трехмерного изображения.

    Графический конвейер (Graphic Pipeline) — это некоторое программно-аппаратное средство, которое преобразует действительное описание объектов в матрицу ячеек видеопамяти растрового дисплея. Его задача — создать иллюзию этого изображения.

    Взаимное расположение объектов относительно друг друга и их видимость зафиксированным наблюдателем обрабатывается на первой стадии графического конвейера, называемой трансформацией (Transformation). На этой стадии выполняются вращения, перемещения и масштабирование объектов, а затем и преобразование из глобального пространства в пространство наблюдения (world-to-viewspace transform), а из него и преобразование в «окно» наблюдения (viewspace-to-window transform), включая и проецирование с учетом перспективы. При преобразовании из глобального пространства в пространство наблюдения (до него или после) выполняется удаление невидимых поверхностей, что значительно сокращает объем информации, участвующей в дальнейшей обработке.

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

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

    Весь процесс создания растрового изображения трехмерных объектов называется рендерингом (rendering). Рендеринг модели может производиться только поэлементно. Результатом создания объемов является набор многоугольников (обычно четырехугольников или треугольников, с которыми манипулировать проще), аппроксимирующих поверхности объектов. Плоское растровое представление должно формироваться с учетом взаимного расположения элементов (их поверхностей) — те из них, что ближе к наблюдателю, естественно, будут перекрывать изображение более удаленных элементов. Многоугольники, оставшиеся после удаления невидимых поверхностей, сортируются по глубине: реалистичную картину удобнее получать, начиная обработку с наиболее удаленных элементов. Для учета взаимного расположения применяют так называемый Z-буфер, названный по имени координаты третьего измерения. Этот буфер представляет собой матрицу ячеек памяти, каждая из которых соответствует ячейке видеопамяти, хранящей цвет одного пикселя. В процессе рендеринга для очередного элемента формируется его растровое изображение (bitmap) и для каждого пикселя этого фрагмента вычисляется параметр глубины Z (координатой его можно назвать лишь условно). В видеопамять этот фрагмент поступает с учетом результата по пиксельного сравнения информации из Z-буфера, с его собственными значениями. Если глубина Z данного пикселя фрагмента оказывается меньше величины Z той ячейки видеопамяти, куда должен попасть этот фрагмент, это означает, что выводимый элемент оказался ближе к наблюдателю, чем ранее обработанные, отображение которых уже находится в видеопамяти. В этом случае выполняется изменение пикселя видеопамяти, а в ячейку Z-буфера видеопамяти помещается новая величина, взятая от данного фрагмента. Если же результат сравнения иной, то текущий пиксель фрагмента оказывается перекрытым прежде сформированными элементами, и его параметр глубины в Z-буфер не попадет. Z-буфер позволяет определить взаимное расположение текущего и ранее сформированного пикселя, которое учитывается при формировании нового значения пикселя в видеопамяти. От разрядности Z-буфера зависит разрешающая способность графического конвейера по глубине.

    В последнее время стали использовать и трехмерные текстуры (3D textures) — трехмерные массивы пикселей. Они позволяют, например, имитировать объем­ный туман, динамические источники света (языки пламени).

    Реализация рендеринга требует значительного объема вычислений и оперирования с большими объемами информации, причем конечная цель потока обработанных данных — видеопамять графического адаптера. Решением проблемы вывода трехмерной графики, как и раньше, явилось усиление «интеллекта» графической карты — появились ЗD-акселераторы, реализующие значительную часть графического конвейера. На долю центрального процессора обычно выпадает начало конвейера, а его окончание (растеризация) выполняется акселератором графической карты.

    Как ни странно, основным двигателем прогресса ЗD-технологий являются игры — именно любители компьютерных игр являются главными (самыми мас­совыми) потребителями ЗD-акселераторов. Более «серьезные» применения дви­жущейся трехмерной графики — различные тренажеры-имитаторы полетов и езды — по сути тоже являются играми, только для серьезных людей. Трехмерная анимация, применяемая в современном телевидении и кинематографии, пока что реализуется не на массовых персональных компьютерах, а на более мощных ра­бочих станциях, но и там используются практически все вышеописанные эле­менты технологии.

    Технологии построений, выполняемых ЗD-акселераторами, постоянно совершенствуются, и описать все применяемые приемы просто невозможно. Все новшества нацелены на достижение фотореалистических изображе­ний игровых сцен с большой скоростью смены кадров (до 100 кадров/с), на экранах с большим разрешением (до 2048 х 1536) и в полноцветном режиме (True Color, 32 бита на пиксел). Конечно же, эти цели достигаются не ускорением расчетов для каждого элемента модели, а разными приемами вроде текстур.

    1. Принципы передачи цветных телевизионных изображений.

    Растровая система изображений основана на представлении изображения в телевидении. Изображение в телевидении получается с помощью широкополосной обработки сигналов трех цветов: красного, зеленого, синего (КЗС, RGB).

    Однако передавать эти сигналы по радиоканалам в таком виде технически невозможно из-за большой ширины частотной полосы fпКЗС требуемого сигнала. Поэтому в телевидении сигналы трех первичных цветов КЗС проходят через преобразователь координат, на выходе которого получают сигнал Y, несущий информацию о яркости (luminance) точек, и два цветоразностных сигнала U и V, несущих информацию о цвете (chrominance) — о соотношениях яркостей красного и синего цвета относительно зеленого. Зеленый выбран основным, поскольку зрение людей к нему наиболее чувствительно.

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

    • В первой системе цветного телевещания — NTSC принята частота кадров 30Гц, а количество строк — 525, из которых видимых — 480. При частоте канала яркости fy = 4,5 МГц в строке может быть различимо до 640 пикселей. Тогда видео формат получается 640 х 480.

    Видеосигнал, состоящий из яркостной составляющей и поднесущей, модулированной цветоразностными сигналами, называется композитным (Composite Video). Интерфейс S-Video (Separate Video) использует раздельные сигнальные линии для яркостного канала (Y) и модулированного сигнала цветности (С). Стандартный 4-контактный разъем S-Video типа mini-DIN используется как интерфейс высококачественных видеосистем, его синонимами являются и названия S-VHS и Y/C. Наивысшее качество передачи обеспечивает профессиональный (студийный) интерфейс YUV (professional video) на трех сигнальных линиях: здесь цветоразностные сигналы U и V передаются в немодулированном виде, каждый на своей частоте.

    Кроме стандарта NTSC существуют еще два популярных в мире стандарта: PAL и SECAM.

    • В стандарте PAL фаза одного из цветоразностных сигналов (К-Y) меняется от строки к строке, что и дало название этому методу (Phase Alternating Line-строки с переменной фазой). Такое решение позволило повысить стабильность

    декодирования. Для увеличения горизонтального разрешения поднесущая частота цветоразностного сигнала повышена до 4,43 МГц. Частота кадров — 25 Гц, количество строк — 625. Стандарт PAL обеспечивает разрешение 800х600.

    Одна поднесущая частота с изменяемой фазой.

    • SECAM - система французского происхождения. В этой системе применены две поднесущие цветоразностных сигналов с частотной модуляцией. Частота кадров — 25 Гц, количество строк — 625.

    Во всех этих системах для звука используется частотная модуляция дополнительной поднесущей частоты:

    6,5 МГц для SECAM;

    5,5 МГц для PAL (но иногда и 6,5 МГц);

    4,5 МГц для NTSC и PAL-M;

    может встречаться и 6 МГц..

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

    1. Объединение компьютерной графики и телевизионного изображения.

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

    Гораздо чаще используют обратное соединение — вывод видеоизображения на экран компьютерного монитора. Видеоизображение выводится в окно, занимающее весь экран или его часть. Поскольку вывод видео перекрывает часть графического изображения, такой способ вывода называют видеооверлеем (Video Overlay), а платы, обеспечивающие данный режим, называют видеооверлепными (overlay board - ob). Эти платы позволяют изменять размер окна видео так же, как и размер любого окна в Windows. В оверлейной плате для видеоизображения имеется специальный «слой» видеопамяти (cп), независимой от видеобуфера (ВБ) графического адаптера. В этом слое содержится оцифрованное растровое отображение каждого кадра видеосигнала. Поскольку для видеосигнала принято цветовое пространство в координатах Y-U-V, в этом слое памяти пиксели также отображаются в этом пространстве, а не в К-З-С, свойственном графическим адаптерам.

    В такой системе движущееся видеоизображение, видимое на экране монитора, существует лишь в оверлейном буфере (ОБ), но никогда не попадает в видеопамять графического адаптера и не передается ни по каким внутренним цифровым шинам компьютера. В видеопамяти (ВП) графического адаптера «расчищается» окно, через которое «выглядывает» видеоизображение из оверлейного буфера (ВИОБ). Некоторый цвет (комбинация бит КЗС) принимается за прозрачный. Оверлейная логика сравнивает цвет очередного пикселя графического буфера с этим прозрачным, и если он совпадает, вместо данного пикселя выводится соответствующий пиксель видеооверлея. Если цвет не совпадает с прозрачным, то выводится пиксель из графического буфера.

    Рассмотрим особенность передачи видеоизображения в цифровом виде, естественном для графической системы компьютера (Bitmap). Пусть разрешение видеоэкрана составит 640 х 480 — максимально возможное для телевизионного изображения NTSC. Поскольку аналоговый телевизионный сигнал позволяет передавать в принципе неограниченное число цветов, примем глубину цвета True Color — 24 бита на пиксель. Тогда одному кадру изображения будет соответствовать битовый образ объемом:

    640 х 480 х 24 = 7 372 800 бит / кадр= 7 Мбит /кадр

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

    Компрессия делится на:

    1. Стандарты кодеков изображений mpeg.

    • MPEG - ряд кодеков (MPEG-1, MPEG-2, MPEG-4, MPEG-7...) для передачи аудио-видеоинформации, каждый из которых соответствует определенному этапу развития цифровых технологий. Видеосигнал в сжатом формате может быть сохранен на вполне рядовом носителе информации (винчестер, CD) и воспроизведен с него на мониторе компьютера. С этой цифровой записью могут выполняться любые операции нелинейного монтажа (монтажа с произвольным доступом к кадрам). Возможности такого монтажа определяются программным обеспечением и, по сути, безграничны.

    • MPEG-1 — кодек предназначен для записи и воспроизведения движущихся изображений и связанного с ними аудиосопровождения на цифровом носителе с потоком данных до 1,5 Мбит/с. При этом обес­печивается качество изображения на уровне кассетного видеомагнитофона VHS (Video Home System – Система домашнего видео) со стереофоническим звуковым сопровождением. Стандарт состоит из 5 частей, описывающих системы видео, аудио и методику тестирования на соответствие, а так же программы кодера и декодера на языке С. Для получения столь низкой скорости потока из исходного видеопотока берется лишь одно поле (полукадр), а в каждой строке — только половина пикселов, что дает формат кадра 352x240 пикселов с прогрессивной разверткой, 30 кадров в секунду. Поток этих кадров и подлежит сжатию. Увеличение размера декодированного изображения до полного экрана особого смысла не имеет, поскольку может выполняться только масштабированием (размножением пикселов), правда, в более сложных реализациях декодера можно улучшить качество изображения, применяя методы интерполяции. Аудиопоток сжимается примерно в 6 раз (типовая скорость 256 Кбит/с).

    • MPEG-2 (ISO/IEC 13818) — кодек для высококачественной передачи изображений, аудиоинформации и данных при потоке 2-80 Мбит/с, обеспечиваю­щий несколько уровней качества. Основной уровень (разрешение 720 х 480, при скорости 30 кадров/с) обеспечивает качество на уровне телевещания, высокие уровни используются в профессиональной видеозаписи. Стандарт предусматривает одновременную передачу множества TV-каналов с возможностью шифрования для ограничения доступа к информации и защиты прав собственности на содержимое потоков. Первые 5 частей стандарта аналогичны MPEG-1, но с новым наполнением. Аудиокодек MPEG-2 представляет собой многоканальное расширение аудиокодека MPEG-1, что обеспечивает их совместимость по первым двум каналам. В аудиокодеке MPEG-2 имеются 2 стереоканала (фронт и тыл), обес­печивающих объемное звучание (Surround), и один низкочастотный с полосой до 100 Гц.

    • MPEG-4 — стандарт, ориентированный на интерактивное использование мультимедиа и сетевых коммуникаций. По сравнению с предыдущими, MPEG-4 устроен гораздо сложнее — аудио-видеоинформация, представляемая конечному потребителю, собирается из различных аудиовизуальных объектов (AVO - Audio-Visual Objects). Эти объекты отображаются на сцене, представляемой конечному потребителю (наблюдателю-слушателю). Сцена представляется дисплеем и многоканальной аудиосистемой. Исходная композиция (расположение объектов на сцене), заданная создателем воспроизводимого произведения, может в широких пределах изменяться пользователем. Объекты, представляемые на сцене, могут быть как естественными, так и синтетическими. Между объектами устанавливаются определенные связи. Интерактивность позволяет управлять как представлением сцены (например, менять ракурс), так и композицией («сборкой», содержанием и поведением объектов на сцене) и, как и в MPEG-2, взаимодействовать с источником данных через средства доставки.

    1. Основные технические характеристики.

    Дисплей может быть изготовлен с использованием различных физических принципов: электронно-лучевые трубки, газоплазменные панели, жидкокристаллические индикаторы и другие приборы.

    Электронно-лучевая трубка (ЭЛТ) по-английски сокращенно называется CRT (Cathode Ray Tube — катодно-лучевая трубка).

    Монитор содержит только ЭЛТ с видеоусилителями сигналов яркости лучей, генераторы разверток, блок питания и схемы управления этими узлами. Традиционный телевизионный монитор имеет низкочастотный вход композитного видеосигнала (UYV) или (и) раздельные входы модуляции лучей и рассчитан на работу в стандартах PAL, SECAM или NTSC, определяющих способы цветопередачи и фиксирующих частоты синхронизации.

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

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

    Существует ряд технологий ЭЛТ, различающихся способом наведения лучей на свои частицы люминофора. Эти способы наведения лучей определяются типами различных масок.

    К лассической является ЭЛТ с теневой маской (Shadow Mask). Ее экран покрывается не сплошным люминофором, а отдельными зернами-триадами. Каждое зерно состоит из трех крупиц люминофора, которые при попадании на них потока электронов светятся базисными цветами. Крупицы триад имеют строго фиксированное относительное расположение, и сами триады наносятся на поверхность в виде равномерной матрицы (Рис5.1). Крупицы каждого цвета «обстреливаются» из отдельной электронной пушки через теневую маску с отверстиями, соответствующими зернам матрицы.

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

    В ЭЛТ со щелевой маской. (Slot Mask) вместо отверстий в маске имеются вертикальные щели, а форма пятен цветного люминофора иная.

    В ЭЛТ с апертурной решеткой (Apperture Grilles) люминофор нанесен на вертикально расположенные нити (каждая нить своего цвета), выстроенные частоколом. Маска у них щелевая.

    Технические характеристики.

    В настоящее время распространены мониторы классов VGA и SVGA, имеющие аналоговый интерфейс. Мониторы VGA, допускающие работу в режиме 640 х 480, вытеснены мониторами класса SVGA, которые должны поддерживать по крайней мере режим 800 х 600.

    • Главным параметром монитора является размер диагонали экрана (Screen Size), который принято измерять в дюймах. По умолчанию считается, что ширина экрана больше его высоты и соотношение этих размеров составляет 4:3. Такую ориентацию можно назвать «пейзажной» (Landscape). Стандартные графические режимы с высоким разрешением (640 х 480, 800 х 600 и далее) имеют то же соотношение числа точек в строке и числа строк. Этим достигается неискаженное изображение фигур: квадрат на экране.

    • Для цветных мониторов важным параметром является размер зерна экрана. Зерно экрана является мельчайшей частицей изображения. Существуют мониторы с зернистостью 0,42, 0,39, 0,31, 0,28, 0,26 мм и тоньше. Чем больше зерно экрана, тем хуже изображение.

    • Допустимая частота развертки определяется в основном параметрами отклоняющей системы и мощностью генератора строчной развертки. В соответствии с нормами ТСО99 минимальная частота вертикальной развертки (частота кадра) должна составлять 85 Гц в любом режиме, а рекомендуемая — 100 Гц, Для обеспечения прогрессивной (нечередующейся) развертки в режимах с высоким разрешением (большим числом строк) требуется очень высокая частота строчной развертки. Так, для режима 1024 х 768 при частоте кадра 85 Гц строчная частота должна быть порядка 70 кГц, а для режима 1600 х 1200 при частоте кадра 100 Гц строчная развертка составляет 126 кГц.

    • На реальную разрешающую способность существенно влияет полоса пропускания видеотракта (Video Bandwidth). При недостаточно широкой полосе пропускания мелкие детали — точки или вертикальные линии толщиной в один пиксел — могут становиться нечеткими и даже незаметными. В технических данных на монитор обычно указывают предельное разрешение и максимальные частоты разверток. Однако это вовсе не означает, что максимальное разрешение можно использовать на максимальной частоте, да еще и при нечередующейся развертке. Оценить предел возможностей позволяет полоса пропускания. Грубо требуемую полосу пропускания (BW, Гц) можно оценить через число точек в строке (Н), число строк (V) и частоту вертикальной развертки кадра(F, Гц):

    BW=kxHxVxF , (Гц)

    где поправочный коэффициент к = (1,3...1,4) учитывает отключения вывода точек на обратном ходе луча по строке и кадру. Для чересстрочной развертки в формулу подставляется половина частоты развертки.(от 60 до 80МГц)

    • Антибликовое состояние экрана определяется правильной ориентацией экрана относительно источника освещения, а также уровнем плоскости самого экрана, который традиционно изготавливают слегка выпуклым для приближения угла падения электронного луча к прямому углу на краях экрана. Новые мониторы имеют плоский экран, что обеспечивает меньшие искажения и отсутствие бликов. Уменьшить блики позволяет и специальное антибликовое покрытие экрана (Antiglare coating), а также применение стеклянных поляризационных фильтров.

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

    • Большая часть излучения исходит из задней стенки (с тыльной части трубки) и достается не опера­тору, а его соседу при неудачной расстановке техники. Уровень радиации мониторов стремятся уменьшать, и аббревиатура LR (Low Radiation) указывает на заботу производителя о здоровье пользователя, но без конкретных цифр.

    1. Управление монитором.

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

    - настройки цветов;

    - качество сведения лучей;

    - настройка геометрии;

    - синхронизация;

    - цифровое управление;

    - управление энергопотреблением.

    Настройка цветов

    Яркость (Brightness) и контрастность (Contrast) изображения обычно регулируют с помощью органов управления, расположенных на лицевой панели монитора. Иногда даётся возможность регулировки баланса базисных цветов, но для верного воспроизведения цвета (в режимах High Color и True Color) такая регулировка может оказаться и вредной. Цветовую температуру определяют через цвет свечения раскаленного железа. Обычные лампы накаливания дают «белый» цвет с температурой около 3 000о К, и этот свет нам кажется желтоватым. Произвольное значение температуры белого цвета можно задать балансировкой яркости двух цветов (красного и синего) относительно фиксированного уровня зеленого. Существует и такое понятие, как чистота цвета (Colour Purity), которая может ухудшаться при намагничивании элементов кинескопа

    Качество сведения лучей

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

    Настройка геометрии

    Регулировка размеров по вертикали (V.Size) и горизонтали (H.Size) позволяет подогнать параметры генераторов развертки так, чтобы изображение попадало в заданную область. Здесь возможны два вида недостатков изображения:

    а) изображение разворачивается в меньшую область, чем нужно (Underscan);

    б) вылезает за границы экрана (Overscan).

    Кроме регулировки размеров важна и юстировка — подбор смещения по вертикали (V.Shift, V-Position или V.Phase) и горизонтали (H.Shift, H-Position или H.Phase). Наименование этих регулировок смещением (Shift) или позицией (Position) отражает видимое на экране действие и характеризует эксплуатационные свойства монитора. Наименование их же фазой (Phase) отражает фазовый сдвиг генераторов относительно синхроимпульсов и характеризует инженерные свойства монитора.

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

    Синхронизация и цифровое управление

    Мониторы EGA имели два существенно различающихся режима синхронизации. Режим задавался относительной полярностью вертикальных синхроимпульсов. Для каждого режима (Mode 1 и Mode 2) использовались отдельные элементы подстройки. Одними из первых эту проблему решили разработчики фирмы NEC, и под соответствующие мониторы фирма даже зарезервировала торговую марку MultiSync. Потом появились системы MultiScan и MultiFrequency, которые обозначают ту же возможность. Адаптеры VGA и SVGA позволяют использовать различные режимы разрешения без существенного изменения частот, но при этом возникает потребность выбора частот развертки. При изменении параметров синхронизации (например, при переключении задач, работающих в разных графических режимах) приходится подстраивать геометрические параметры изображения, что вручную делать не очень удобно.

    Решить проблему подстройки частотной синхронизации позволило цифровое управление (Digital Control, или DC), которое стало обычным практически для всех современных мониторов. Суть цифрового управления сводится к тому, что в монитор встраивается специализированный микроконтроллер, управляющий практически всеми параметрами монитора. Поскольку микроконтроллер может хранить большое количество параметров (он для этого имеет энергонезависимую память), несложно его заставить запоминать наборы параметров, заданных для каждого используемого видеорежима. Таким образом, после первоначального обучения контроллер быстро устанавливает запомненные настройки для текущего видеорежима. Установленный видеорежим распознается по частотам и полярности сигналов синхронизации.. В режиме самотестирования микроконтроллер при отсутствии сигнала от компьютера сам формирует цветное графическое изображение, по которому можно произвести настройку и оценить качество монитора. Конечно, монитор должен определить причину отсутствия сигнала — это ведь может быть и команда — системы управления энергопотреблением (блок DPMS).

    1. Плоские дисплеи.

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

    Дисплеи на жидкокристаллических (ЖК) панелях (LCD - Liquid Crystal Display — ЖК-дисплей) основаны на изменении оптической поляризации отраженного или проходящего света под действием электрического поля. Слой жидкокристаллического вещества расположен между двумя стеклами с поляризационными решетками. Жидкокристаллическое вещество способно изменять направление поляризации проходящего света в зависимости от состояния молекул. При отсутствии электрического поля направление поляризации меняется на 90°, а в дисплеях, изготовленных по технологии STN (Super Twisted Nomadic - кочующий супер поворот), поворот достигает 270°

    Под действием электрического поля молекулы выпрямляются, и угол поворота уменьшается. Таким образом, в сочетании с поляризационными решетками стекол можно управлять прозрачностью элемента, за счет изменения величины электрического поля Е. В дисплеях DSTN (Double Super Twisted Nomadic) ячейки сдваиваются, что позволяет повысить контрастность изображения. Дисплейная панель представляет собой матрицу ячеек, каждая из которых находится на пересечении вертикальных и горизонтальных координатных проводников.

    В пассивной матрице (Passive Matrix) дисплеев (рис. 5.5.) на жидкие кристаллы воздействуют поля самих координатных проводников. Ячейкам пассивной матрицы свойственна большая инерционность — порядка 300-400 мс (время на перестройку структуры молекул жидкокристаллического вещества), из-за чего на такие дисплеи плохо выводится динамическое изображение. Специально для таких дисплеев применяется особый режим отображения указателя мыши — за ним тянется шлейф, без которого быстро перемещаемый указатель визуально теряется. В активной матрице (Active Matrix) каждая ячейка управляется транзистором, которым, в свою очередь, управляют через координатные шины.

    В любом случае панели требуют подсветки — либо задней (Back Light), либо боковой (Side Light) от дополнительного (чаще люминесцентного) источника освещения. Иногда используют внешнее освещение, при этом за панелью располагается зеркаль­ная поверхность. Активные матрицы обеспечивают более высокую контрастность изображения.

    Матричная организация экрана не позволяет из­менять разрешение экрана с той же легкостью, как у ЭЛТ-монитора: увеличить его просто невозможно, а уменьшить без потерь качества можно только одновре­менно с уменьшением размера изображения. Размер пикселя ЖК-экрана 0,3 – 0,28 мм. Преимущества ЖК-дисплея: высокая яркость изображения, отсутствие геометрических искажений, малое потребление электроэнергии, малая тепловыделение.

    Недостатки: низкая контрастность и зависимость изображения от угла зрения.

    • Газоплазменные панели (Gas Plasma) основаны на свечении газа под действием электрического поля. Эти панели PDP (Plasma Display Panel), часто желто-черные, потребляют больше энергии, чем LCD, что препятствует их применению в системах с автономным питанием.

    • Электролюминесцентные панели EL (Electro-Luminescent) пока не получили широкого распространения из-за технологических трудностей создания долго­вечных элементов.

    • Светодиодные матрицы LED (Light Emmited Diode — светоизлучающий диод), казалось бы, могли стать решением всех проблем плоских дисплеев. Однако светодиоды имеют настолько высокую потребляемую мощность по сравнению с дру­гими типами индикаторов, что их в плоских панелях не применяют.

    • Дисплеи на светящихся полимерных полупроводниках LEP (Light Emission Plastic) основаны на свечении этого материала в электрическом поле. Для работы этого дисплея требуется низкое напряжение — всего 3 В. Эти пока что толь­ко монохромные (черно-желтые) дисплеи еще не нашли широкого применения из-за малого срока службы.

    • Недавно появилась технология FED (Field Emission Display), основанная на свечении люминофора при бомбардировке их потоком электронов (тот же эффект используется и в ЭЛТ). Однако в отличие от ЭЛТ, имеющей три пушки (для каждого цвета), FED-панели имеют матрицу микроскопических триад пушек, расположенную между двумя плоскими пластинами. Каждый пиксел обслуживает группа из нескольких сотен микропушек, управляемых общим тран­зистором (как и в активной LCD-матрице). Вместо отклоняющих систем и генераторов развертки применяется коммутация транзисторов матрицы. Поскольку длина «ствола» пушки существенно сократилась, снизился и уровень необходимого для работы высокого напряжения.

    1. Интерфейсы дисплеев.

    Интерфейс между видеоадаптером и монитором может быть как дискретным (с сигналами ТТЛ), так и аналоговым.

    • CGA (Color Graphic Adapter- цветной графический адаптер)

    • EGA ( Enhanced Graphic Adapter - расширенный графический адаптер)

    • VGA (Video Graphic Array – матрица видеографики), обеспечивающим передачу графики высокого разрешения 640х480 точки, либо 256 цветов с меньшим разрешением.

    • SVGA (Super Video Graphic Array - усовершенствованная матрица видеографики), обеспечивающая разрешение 1280х1024 точки, с возможностью отображения 16,7 млн. цветов.

    • DVI (Digital Video Interactive – стандарт интерактивного цифрового видео, позволяющий проводить сжатие видео- и аудиоряда).

    Дискретный интерфейс RGB TTL

    П ервые мониторы для персональных компьютеров имели дискретный интерфейс с уровнями транзисторно транзисторной логики ТТЛ— RGB TTL. Для монохромного монитора использовали лишь два сигнала — видео (включить/выключить луч) и повышенной яркости. Таким образом, монитор мог отобразить три градации яркости: хотя 22 — 4, «темный пиксел» и «темный с повышенной яркостью» неразличимы.

    В цветных мониторах класса CD (Color Display) имелось по одному сигналу для включения каждого луча и общий сигнал повышенной яркости. Таким образом, можно было задать 42 =16 цветов.

    С ледующий класс — улучшенный цветной дисплей ECD (Enhanced Color Display) имел дискретный интерфейс с двумя сигналами на каждый базовый цвет. Сигналы позволяли задавать одну из четырех градаций интенсивности. При этом общее количество кодируемых цветов достигло

    (22)3=26 = 64,

    где показатель степени 2 – два сигнала на один канал;

    показатель степени 3 – три канала.

    Сигналы RED, GREEN, BLUE и red, green, blue обозначают соответственно старшие и младшие биты базисных цветов. Аналоговый интерфейс RGB

    Из-за ограниченных возможностей цветопередачи дискретного интерфейса пришлось перейти на аналоговый интерфейс, перенеся цифро-аналоговые преобразователи сигналов базовых цветов из монитора на графический адаптер. Такой интерфейс с 8-разрядными ЦАП для каждого цвета в настоящее время позволяет выводить 16,7 миллиона цветов (True Color). Этот интерфейс называется RGBAnalog. В нем базовые цвета передаются аналоговыми сигналами с отдельными обратными линиями по витым парам.

    Черному цвету соответствует нулевой потенциал на линиях всех цветов, полной яркости каждого цвета соответствует уровень +0,7 В. Сигналы управления, состояния и синхронизации передаются сигналами ТТЛ.

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

    Для простейшей идентификации в интерфейс ввели три логических сигнала ID0-ID2, по которым адаптер мог определить тип подключенного монитора IBM. Co стороны монитора эти линии либо подключались к шине GND (общая), либо оставлялись неподключенными. Однако из этой системы идентификации использовали лишь сигнал ID1, по которому определяют подключение монохромного монитора. Монохромный монитор может быть опознан адаптером и иначе — по отсутствию нагрузки на линиях Red и Blue.

    Параллельную идентификацию мониторов заменила последовательная по каналу цифрового интерфейса VESA DDC (Display Data Channel –канал данных дисплея).

    Цифровой интерфейс DVI

    П овсеместный переход на цифровые технологии дошел и до видеомониторов. Интерфейс DVI предназначен для подключения дисплеев любого типа (ЭЛТ и матричных) к компьютеру, причем возможны два варианта разъемов и интерфейса: чисто цифровой и цифровой с традиционными аналоговыми сигналами. Во втором случае к разъему DVI через пассивный переходник может быть подключен монитор с обычным аналоговым VGA-интерфейсом. Основной цифровой интерфейс имеет 6 кана­лов передачи данных (Data[0:5]) и канал синхронизации Clock. Каждый канал данных образован кодером, расположенным на видеокарте, линией связи и декодером, расположенным в дисплее. На вход кодера каждого канала поступают 8 бит кода яркости базисного цвета текущего пикселя. Кроме того, на вход кодера канала 0 поступают сигналы строчной и кадровой синхронизации, а на остальные каналы — дополнительные управляющие сигналы CTL [0:9], по паре на каждый канал. На приемной стороне сигналы декодируются и восстанавливаются в том же виде, в котором они поступали на входы кодеров. Физические линии реализованы экранированными витыми парами.

    1. Функциональная схема адаптеров дисплеев

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

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

    Расширенный круг задач может включать и воспроизведение на экране того же монитора «живого» видео из потока данных, полученного от компьютера или от какого-либо источника телевизионного сигнала.

    Функциональная схема графического адаптера.

    Функциональная схема применима практически ко всем адаптерам, применяемым в PC.

    К онтроллер ЭЛТ обеспечивает согласованное формирование сигналов сканирования видеопамяти (адрес и стробы чтения) и сигналов вертикальной и горизонтальной синхронизации монитора. Должен обеспечивать требуемые частоты развертки и режимы сканирования видеопамяти, которые зависят от режима отображения (графический или текстовый) и организации видеопамяти.

    Видеопамять это специальная область памяти, из которой контроллер ЭЛТ организует циклическое чтение содержимого для регенерации изображения. Определяется необходимым графическим режимом.

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

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

    Графический процессор адаптера, принцип работы тракта записи.

    Алгоритм обработки графического процесса

    Синхронизатор, появившийся с адаптером EGA, позволяет синхронизировать циклы обращения процессора к видеопамяти с процессом регенерации изображения.

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

    Блок внешнего интерфейса связывает адаптер с одной из шин компьютера(от 32 бит и выше).

    Блок интерфейса монитора формирует выходные сигналы соответствующего типа (RGB-TTL, RGB-Analog, композитный видео или S-Video), обеспечивает диалог монитора с ЦП.

    Расширение BIOS функции выполняются через вызов программного прерывания Int 10 h — видеосервис BIOS.

    Чтение видеопамяти со сравнением цветов(используется в декомпрессорах)

    1. Принцип считывания со сравниванием цветов в графическом адаптере.

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

    Всеми функциями графического контроллера управляют через его регистры. Конечно, возможно и прямое обращение к отдельному цветовому слою как по чтению, так и по записи. Но знание возможностей графического контроллера позволяет многие часто используемые функции возложить на его аппаратные средства. Однако, если такой аппаратный графический контроллер еще прием­лем для четырехслойной организации (4 бита на пиксел), то для более глубоких цветов (8 бит на пиксел и более) он будет уже слишком громоздким. В современных адаптерах функции графического контроллера, существенно расширенные по сравнению с EGA и VGA, выполняются встроенным микропроцессором — графическим акселератором.

    1. Параметры видеосистемы.

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

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

    • Тип адаптера (MDA, CGA, EGA, MCGA, PGA, SVGA...) и тип шины (ISA 8/16-бит, MCA, EISA, VLB, PCI, AGP) дают самое общее представление о его возможностях, поскольку все самые разнообразные современные адаптеры относятся к SVGA и подключаются либо к шине PCI, либо к AGP, либо интегрированы в системную плату.

    • Поддерживаемый режим отображения (Mode Type) определяет возможность работы в текстовом (ТХТ или AN) или графическом (Gr или АРА) режиме адресации элементов изображения. Режимы определяются графическим адаптером. Все современные адаптеры поддерживают оба режима.

    • Разрешение (Resolution), или разрешающая способность, в графическом режиме определяется количеством точек в строке по горизонтали и числом строк на экране (например, 800 х 600 — 800 точек, 600 строк). Чем больше разрешение, тем больше информации можно вывести на экран с приемлемым качеством изображения.

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

    • Объем видеопамяти (локального буфера) определяет соотношение разрешения, количества одновременно доступных цветов и видеостраниц. Тип видеопамяти — обычная динамическая (DRAM, EDORAM, SDRAM) или специальная (SGRAM, VRAM, WRAM, MDRAM, RDRAM).

    • Разрядность видеопамяти (8, 16, 32, 64, 128 бит) определяет производительность и предельную частоту построения изображения. Большие разряды не столько для размещения страниц, как для хранения текстуры информации.

    • Частота регенерации является частотой кадровой (вертикальной) развертки. При кадровой частоте развертки ниже 60 Гц изображение мерцает, что особенно заметно на большом белом поле экрана.

    Принципы построения различных типов принтеров.

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

    Плоттер – это устройство для вычерчивания изображения на бумаге.

    Принципы формирования изображений: у принтеров – соответствие растровым дисплеям; у плоттеров - соответствие векторным дисплеям.

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

    1. По способу печати принтеры разделяются на:

    • Буквопечатающие (табличный вывод)

    • знакосинтезирующие (графический режим)

    2. По способу вывода:

    • последовательные (печать строки осуществляется по элементно)

    • параллельные (строка печатается целиком, весь кадр)

    1. По способу нанесения красителя:

    • Матричные

      • Игольчатые(ударные)

      • Струйные

    • Лазерные

    Матричные игольчатые принтеры

    Игольчатые принтеры (Dot Matrix Printer – Принтер матрицы точек) имеют печатающую головку, на которой расположена матрица игольчатых молоточков, управляемых электромагнитами. Иглы ударяют по бумаге через красящую ленту. Бумага лежит на валике, перемещаясь только продольно (перевод строк выполняется поворотом вала) в обоих направлениях. Перемещение по строке выполняет сама печатающая головка — она довольно легкая, поэтому ее движение быстрое. Все управление механикой выполняет встроенный микроконтроллер принтера. В его ведении находятся шаговые двигатели подачи бумаги и перемещения головки по строке, а также электромагниты игл, которых может быть от 8 до 24. На принтере имеются механические или оптоэлектронные датчики крайних положений каретки, а также датчик конца бумаги.

    Термопринтеры

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

    Струйные принтеры

    Струйные принтеры также конструктивно аналогичны матричным игольчатым, но вместо удара по бумаге через красящую ленту они выстреливают по бумаге, капельками специальных чернил. Чернила выстреливаются из микроскопических сопел с использованием пьезоэлектрических механических микронасосов пузырьковой технологии (bubble eject – пузырьковый выброс). Пузырьки пара, выталкивающие чернила из сопла, образуются под воздействием микроскопического нагревательного элемента. Число сопел в головке измеряется десятками, благодаря их малому размеру удается достичь высокого разрешения (вплоть до 720 dpi=точек на дюйм). Цветные струйные принтеры имеют сопла для чернил базисных цветов (набор 4-х цветов по модели CMYK — Cyan=Рыжий, Magenta=Красный, Yellow=Желтый, Black=Черный) и отдельно черного цвета. По конструкции чернильниц принтеры разделяются на два типа: с отдельными сменными чернильницами и с чернильницами, совмещенными с головкой. В совмещенном варианте предусматривается дозаправка чернильниц. Струйные принтеры работают тихо, скорость печати определяется режимом: черновая — быстро, качественная цветная печать — довольно медленно.

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

    Лазерные принтеры

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

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

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

    3. Далее синхронно с вращением барабана по барабану прокатывается лист бумаги, и частички тонера переходят на него.

    4. Затем бумага с тонером прокатывается через горячие валки, и прилипший тонер запекается на бумаге, после чего лист выводится из принтера. Лишний порошок тонера, собирается в контейнере сбора отработанного порошка.

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

    Плоттеры

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

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

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

    Общая характеристика устройств хранения данных.

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

    - магнитный,

    - оптический,

    - электронный

    - в любых их сочетаниях.

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

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

    Прямой доступ подразумевает возможность обращения к блокам по их адресам в произвольном порядке. Традиционными устройствами с пря­мым доступом являются дисковые накопители.

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

    • Главная характеристика устройств — емкость хранения, измеряемая в килобайтах, мегабайтах, гигабайтах и терабайтах (Кбайт, Мбайт, Гбайт, Тбайт).

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

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

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

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

    1. Форматы данных и интерфейсы принтеров

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

    Принтеры, как правило, работают в расширенной (8-битной) таблице ASCII-кодов. Первые 32 кода (О-lFh) используются для управляющих символов, непосредственно не отображаемых принтером. Далее следуют коды специальных символов, цифр, прописных (верхний регистр, uppercase) и строчных (нижний регистр, lowercase) букв латинского алфавита. Коды 80-FFh требуются для знаков национального ( в частности, русского) алфавита и символов псевдографики.

    Файл BINCOD.CHR представляет собой таблицу всех печатных символов (управляющие коды пропущены), расположенных по 16 символов в строке. Практически все команды изменения режимов печати (переключение шрифтов, изменение размера, эффекты печати и т. п.), а также переключения в графический режим, начинаются с кода Escape (Esc, lBh). Далее следует один или более байтов кода команды; формат последовательности определяется первым байтом (командой), следующим за кодом Esc. Вся эта конструкция называется Escape-последовательностью.

    Для графической печати существует множество языков со своими системами команд.

    В матричных принтерах использовались два режима печати — битовый образ и растровый режим.

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

    Битовый образ пригоден только для черно-белой печати; он неудобен тем, что формат блока данных зависит от числа иголок принтера (бывают и 24-, и 48-игольчатые принтеры).

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

    Для лазерных принтеров фирма Hewlett-Packard разработала специальный язык PCL (Printer Control Language), в котором кроме управляющих команд, аналогичных Escape-последовательностям матричных принтеров, имеются и графические, описывающие рисование геометрических примитивов.

    Язык PostScript также предназначен для лазерных принтеров. В этом языке вся страница описывается в векторном виде.

    Для плоттеров, которые получают исключительно векторные команды рисования, существует несколько различных языков. Общепринятым является язык HP-GL, его понимают все плоттеры и практически все прикладные программы, использующие графический вывод на плоттер.

    Драйвер принтера должен соответствовать типу принтера и его языковым возможностям. Так, например, при использовании принтера с PostScript об этом должен «знать» драйвер принтера, иначе графический вывод будет производиться всегда в растровом режиме и никаких преимуществ аппаратного PosScript пользователь не получит.

    Современные принтеры, печатающие графические изображения (в том числе и текст в графическом режиме) с высоким разрешением, требуют высокоскоростной передачи данных по внешнему интерфейсу. У них интерфейс может стать узким местом, и фаза передачи данных будет занимать значительное время, расходуемое на вывод изображения. Напомним, что лазерный принтер не начнет печатать страницу до тех пор, пока она целиком не будет загружена в его буферную память. Параллельный интерфейс для этого уже работает на пределе возможностей, обеспечивая скорость передачи до 2 Мбайт/с. Обычный последовательный интерфейс RS-232C с его пределом около 15 Кбайт/с здесь, конечно же, неприемлем. В качестве внешнего интерфейса в последнее время стали чаще применять шину USB с ее удобным кабелем. В версии 1.0 она обеспечивает скорость до 1,5 Мбайт/с, а версия 2.0 обеспечивает уже скорость в 50 Мбайт/с. В принтерах может применяться и интерфейс SCSI, но широкого распространения он пока не получил. Также пока очень сдержано применяется шина FireWire.

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

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

    • Подключение параллельным (или последовательным) интерфейсом к аппаратному принт-серверу — небольшому устройству (по виду напоминающему малогабаритный хаб), подключенному к сети.

    • Непосредственно подключение к сети, как правило, по интерфейсу Ether net, разъемом BNC (10Base2) к коаксиальному кабелю (шине) или RJ-45 (l0BaseT или 100BaseTX) витой парой к сетевому концентратору. Сетевой интерфейс имеют мощные лазерные принтеры; для них предпочтительнее интерфейс 100BaseTX (Fast Ethernet), обеспечивающий скорость до 10 Мбайт/с. Протокольные функции принт-сервера здесь выполняются встроенным программным обеспечением принтера, и здесь также поддерживаемый протокол (протоколы) должен соответствовать используемым протоколам в сети. Сетевые принтеры (принтер с аппаратным и программным интерфейсом локальной сети) как правило, имеют и альтернативный обычный интерфейс Centronics.

    1. Системная поддержка принтеров.

    Вывод на принтер через порт LPT в стандартном режиме по интерфейсу Centronics имеет поддержку на уровне BIOS. Поддержка всех других режимов работы порта (Fast Centronics, ECP) осуществляется только дополнительными драйверами или средствами операционной системы.

    П ечать содержимого экрана (Print Screen) поддерживается прерыванием BIOS Int 05. Обработчик этого прерывания посимвольно выводит содержимое видео-памяти (в текстовом режиме) на порт LPT1.

    Порт параллельного интерфейса был введен в ПК для подключения принтера -отсюда и пошло его название LPT-порт (Line PrinTer — построчный принтер). Аппаратные средства «классического» стандартного LPT-порта позволяют программным способом реализовать протокол передачи данных Centronics. Адаптер параллельного интерфейса представляет собой набор регистров, расположенных в пространстве ввода-вывода. Регистры порта адресуются относительно базового адреса порта, стандартными значениями которого являются 3BCh, 378h и 278h. Порт может использовать линию запроса аппаратного прерывания, обычно IRQ7 или IRQ5. С внешней стороны порт имеет 8-битную шину данных, 5-битную шину сигналов состояния и 4-битную шину управляющих сигналов, выведенные на разъем-розетку DB-25S. В LPT-пopт используются логические уровни ТТЛ, что ограничивает допустимую длину кабеля из-за невысокой помехозащищенности ТТЛ-интерфейса. Гальваническая развязка отсутствует — схемная земля подключаемого устройства соединяется со схемной землей компьютера.

    Data Register (DR) — регистр данных, aдpec=BASE. Данные, записанные в этот регистр, выводятся на выходные линии интерфейса.

    Status Register (SR) — регистр состояния; представляет собой 5-битный порт ввода сигналов состояния принтера (биты SR.4-SR.7), адрес=ВАSЕ+1.

    Control Register (CR) — регистр управления, адрес=ВАSЕ+2. Как и регистр данных, этот 4-битный порт вывода допускает запись и чтение.

    1. Принципы хранения информации.

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

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

    матрица ферритовых колец.

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

    Оптические устройства памяти

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

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

    УЗ – управление затвором. ПЗ – плавающий затвор

    Принцип полевого транзистора: если приложить напряжение управления(исток – затвор(Иу)), тогда протекает ток исток-сток, если нет напряжения управления 0. Для записи на 1 менее, для записи подать напряжение на управляющий затвор и вытянуть электрон и ПЗ. Информация остается на ПЗ.

    1. Хранение информации на магнитных дисках.

    Весь магнитный диск представляет собой огромное количество концентрических окружностей (треков).

    Носителем информации является диск (один или несколько), на который нанесен слой вещества, способного намагничиваться (чаще всего ферромагнитный). Хранимую информацию представляет состояние намагниченности отдельных участков рабочей поверхности. Диски вращаются с помощью двигателя шпинделя, обеспечивающего требуемую частоту вращения в рабочем режиме. На диске имеется индексный маркер, который, проходя мимо специального датчика, отмечает начало каждого оборота диска. Информация на диске располагается на концентрических треках (дорожках), нумерация которых начинается с внешнего трека (трек 00). Каждый трек разбит на секторы фиксированного размера. Сектор и является минимальным блоком информации, который может быть записан на диск или считан с него. Нумерация секторов начинается с единицы и привязывается к индексному маркеру. Каждый сектор имеет служебную область, содержащую адресную информацию, контрольные коды и некоторую другую информацию, и область данных, размер которой традиционно составляет 512 байт. Если накопитель имеет несколько рабочих поверхностей (на шпинделе может быть размещен пакет дисков, а у каждого диска могут использоваться обе поверхности), то совокупность всех треков с одинаковыми номерами составляет цилиндр. Для каждой рабочей поверхности в накопителе имеется своя головка, обеспечивающая запись и считывание информации. Головки нумеруются, начиная с нуля. Для того чтобы произвести элементарную операцию обмена — запись или чтение сектора, шпиндель должен вращаться с заданной скоростью, блок головок должен быть подведен к требуемому цилиндру, и только когда нужный сектор подойдет к выбранной головке, начнется физическая операция обмена данными между головкой и блоком электроники накопителя. Кроме того, головки считывают служебную информацию (адресную и сервисную), позволяющую определить и установить их текущее местоположение. Запись и считывание происходит по-секторно. Структура сектора (1-идентификатор, 2-заголовок, 3-зазор, 4-информация 512 бит, 5-контрольный код.)

    1. Накопители на гибких магнитных дисках (нгмд).

    Накопители на гибких магнитных дисках (НГМД), или дискетах, применялись с первых моделей персональных компьютеров, у которых они были единственным средством хранения и переноса информации.

    Первые накопители использовали дискеты диаметром 5,25" (133 мм), обозначаемые как 5", упакованные в мягкие конверты и имеющие 40 треков на рабочей поверхности. Для 5" дискет наиболее распространены 40-дорожечные и 80-дорожечные дисководы.

    По плотности записи (Density) различают следующие типы дискет:

    • SD (Single Density) — одинарная плотность (давно устаревший тип для дискет 5");

    • DD (Double Density) — двойная продольная плотность (стандартные дискеты 5" емкостью 360 Кбайт, 48TPI –);

    • QD (Quadrate Density) — двойная продольная плотность с удвоенным количеством треков (дискеты 5" и 3,5" емкостью 720 Кбайт, 96 TPI);

    • HD (High Density) — высокая плотность (стандартные дискеты 5" емкостью 1,2 Мбайт, 96 TPI и 3,5" емкостью 1,44 Мбайт,135 TPI);

    • ЕНD (Extra High Density) — сверхвысокая плотность (дискеты 3,5" емкоcтью 2,88 Мбайт,135 TPI).

    Где TPI (trace per inch – трек на дюйм) - поперечная плотность измеряется количеством треков на дюйм.

    Принцип записи и считывания магнитных дискет на 5” контроль оборотов осуществляется световым индексом, на 3,5’’ магнитным индексом. Намагниченность дискеты определяется положением элементных доменов в каждой зоне своего сектора. Для увеличения емкости дискеты используют перпендикулярную или вертикальную запись, такое расположение доменов требует специальных головок и специальных дискет, такой тип записи не получил распространения.

    Дискеты приводились в движение тактовым двигателем (300 -360 оборотов\мин.). Эта невысокая скорость вращения приводила к нестабильности записи, поэтому сектор делали с запасом, а увеличение скорости записи приводило к увеличению числа секторов, для привода головок считывания и записи использовались шаговые двигатели.

    Если головка пропустила место, то она перемещается на 0 сектор.

    Головки записи-считывания — индуктивные. Головка с нулевым номером располагается снизу диска, первая головка — сверху.

    - Датчик индекса формирует выходной сигнал на каждый оборот диска. У дисководов 5" он оптоэлектронный, работает на просвет индексного отверстия в носителе. У дисководов 3,5" он магнитный, для него имеется отверстие в металлическом «пятачке» дискеты.

    - Датчик защиты от записи - оптоэлектронный или механический, формирует выходной сигнал , когда на дискете 5" окошко заклеено, а на дис­кете 3,5" окошко открыто.

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

    1. Интерфейс и контроллер нгмд.

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

    УД – усилитель двигателя;

    ФИ – формирователь импульсов;

    ШД – шаговый двигатель;

    ИМ – исполнительный механизм;

    ДГ – двигатель головки;

    УФЗ – усилитель-формирователь записи;

    УФСч - усилитель-формирователь считывания.

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

    1. Конструкция накопителя на жестких магнитных дисках (нжмд).

    БУСД – блок управления 3-х фазным синхронным двигателем шпинделя;

    И – инвертор, преобразователь напряжения постоянного тока в напряжение

    переменного тока;

    СД – синхронный двигатель;

    БП - блок питания;

    ВК – внутренний контроллер

    БУП – блок управления позиционированием головки;

    ОЗУ – оперативное запоминающее устройство ВК;

    СМ – сервометка;

    ДПГ – датчик позиционирования головки;

    МГ – магнитная головка;

    ФР – фильтр рецеркуляции;

    БФ – барометрический фильтр.

    Для привода шпинделя системы используются трехфазные синхронные двигатели СД, обеспечивающие высокую точность поддержания скорости: от 3500 об\мин до 7200 об\мин, 10000 и 15000 об\мин. Чем выше скорость вращения , тем больше скорость обмена информацией с диском. Однако большие скорости вращения ограничены следующим:

    - балансировкой диска;

    -гироскопическим эффектом, влияющим на трудность перемещения вращающегося диска;

    - тепловыделением;

    - аэродинамикой диска, связанной с трением его о воздух.

    Пластины жестких дисков обычно изготавливаются из алюминиевых сплавов, а иногда из керамики или стекла, которые покрываются рабочим магнитным слоем, выполненным из окиси железа или окиси хрома. Поверхности пластин должны быть максимально плоскими для снижения аэродинамического эффекта. Количество пластин современных винчестеров достигает от 1 до 4.

    Б УСД - предназначен для пуска, остановки шпинделя поддержание требуемой скорости вращения по сигналам от датчиков сервометок. Кроме того он дает разрешение на выпуск головки при достижении минимальной скорости вращения. БУДС питает от 3-х фазного инвертора(преобраз постоянного в переменный ток). Инвертор, БУДС и БП упр внутренним контролером(ВК). Современные накопители имеют два типа головок: одна – для записи, другая для считывания. Для считывания используют магниторезистивные головки, а для записи используются индуктивные головки.

    БУП - состоит из линейного и поворотного электромагнита, обладает обратной связью о положении головки, такое управление называется сервоприводом, это управление оптимизировано:

    • при большом угле подвода головки на позицию управлять большим током, а при малом угле управления – малым током в обмотке управления,

    • поворот на малый угол осуществляется малым током БУП имеет 2 обратные связи

    От положения головки

    От сервометки диска

    Сервометка располагается в начале каждого сектора на каждом треке, они записывает при производстве НЖМД и в эксплуатации не менее.

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

    Для кодирования данных в современных накопителях широко используется технология PRML (Partial Response Maximum Likelihood – Максимальная правдоподобность при частичном отклике) Эта технология использует аналоговые детекторы сигналов воспроизведения, которые декодируются схемами считывания. Это обеспечивает оцифровку аналогового сигнала и запись последовательности таких выборок в память буфера.

    1. Основные характеристики винчестеров.

    Винчестер потому и называют винчестером, что первый винт был выпущен IBM в далёком 73м году. Тогда был выпущен жёсткий диск модели 3340, который имел 2 модуля по 30 мегабайт. Потому и пошло в народе называть его просто 30-30. По странным стечениям обстоятельств всё в той же Америке в том же 73 году успешно продавалась винтовка Winchester Model 1894 имеющая на борту 30 патронов 0,30 калибра, которую тоже обзывали просто 30-30. Недолго думая, ребята из IBM стали называть своё детище винчестером.

    Стоит заметить, что употребление слова «Винчестер» в отношении жёсткого диска сошло на нет что в Америке, что в Европе ещё в 90е, но т.к. в нашей стране в эти самые 90е люди только познакомились с огнестрельным оружием, то такое крутое слово сохранилось, а ныне имеет чуть ли не официальный статус.

    Первый винт на то и был назван винчестером, потому что он состоял из 40 дорожек и 40 секторов,

    Общие параметры дисков

    Форматированная емкость – объем полезной хранимой информации, что соответствует сумме полей данных всех доступных секторов.

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

    Скорость вращения шпинделя - измеряется в об/мин и имеет стандартные значения 4500, 5400 и 7200. Для дисков повышенной производительности достигает 10000 и 15000 об/мин.

    Интерфейс – определяет способ подключения накопителя. Для встроенного накопителя применяют интерфейсы АТА, IDE, SCSI. Для внешних накопителей – USB, Fire Wire, LPT-порт.

    Параметры внутренней организации.

    Количество физических дисков – современные накопители имеют до 1-2 дисков, большее количество дисков и, соответственно, большая высота накопителя характерна для накопителей большой скорости.

    Количество физических головок чтения-записи – совпадает с числом рабочих поверхностей (числом дисков). Может быть и меньше удвоенного числа дисков.

    Физическое количество цилиндров – от 100 до10000 современных дисков.

    Размер сектора – 512 байт

    Количество зон и секторов на треке – в крайних зонах.

    Расположение сервометок – на выделенной поверхности, на рабочей поверхности, гибридное.

    Метод кодирования - PRML (Partial Response Maximum Likelihood – Максимальная правдоподобность при частичном отклике) наиболее прогрессивный.

    Быстродействии и производительность.

    Время перехода на соседний трек – 0,5 -2 мс, характеризует быстродействие системы.

    Среднее время поиска – 8-10 мс ( 4-5 мс для быстрых систем) определяется по средней величине обращения к случайным цилиндрам.

    Максимальное время поиска – определяется самым дальним переходом между крайними цилиндрами. Равно удвоенному среднему времени поиска.

    Внутренняя скорость передачи данных – Мб/сек, относится к передаче данных между носителем и буферной памятью контроллера. Для накопителей со скоростью вращения 15000 об\мин скорость передачи составляет 5400 бит/сек. При этом учитывается только скорость передачи полезной информации и составляет :

    При скорости 5400 об\мин – 15 Мбайт/сек

    При скорости 7200 об\мин – 15-35 Мбайт/сек.

    Внешняя скорость передачи данных – измеряется в Кбайт/сек (Мбайт /сек) полезной информации и зависит от быстродействия контроллера. Она находится в пределах 3,3 Мбайт/сек, 33,66 Мбайт /сек, 100 – 200 Мбайт/сек, для оптического канала передачи.

    1. Особенности функционирования винчестеров

    1. Магнитооптические диски.

    Запись осуществляется термомагнитным способом. Магнитное поле головки способно перемагнитить только микроскопическую зону, разогретую лазерным лучом до температуры выше точки Кюри (200оС). Зона, вышедшая из под луча, запоминает полученное состояние намагниченности. Мощность лазера при считывании уменьшается в 10 раз. Изменение магнитного состояния слоя приводит к поляризации света(изменении угла отражения светового луча). При перемагничивании луч от лазера падает под одним углом, если «1», и не меняется «0», происходит изменение.

    В магнитооптике используют двухпроходную - трехпроходную запись:

    1 –й проход диска под головкой :

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

    2-й проход под головкой:

    Непосредственное выполнение записи. Для этого при записи 1 направление магнитного поля меняется на противоположное и над этими точками формируется мощный импульс лазера.

    3-й проход под головкой:

    Проверяется считывание записанной информации – верификация.

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

    Магнитоптические диски имеют следующие размеры:

    5,25” (двухсторонние) - 650 Мб; 1,3, 2,6, 4,6 Гб;

    3,5”(односторонние) – 128, 230, 540, 640 Мб; 1,3 Гб.

    Устройства и диски обладают обратной совместимостью: устройства большой емкости могут работать с устройствами малой емкости.

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

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

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

    1. Оптические диски CD, DVD, PD.

    Оптические диски CD, CD-R и CD-RW имеют прозрачную поликарбонатную (пластиковую) основу, над которой расположен слой, хранящий информацию, защищенный сверху лаком. Хранящий слой расположен ближе всего к верхней стороне. CD и DVD диски диаметром 120 мм и толщиной 1,2 мм имеют одну спиральную дорожку, начинающуюся с внутренней стороны диска. Эта спираль имеет 22 188 витков и длину более 5 км.

    Двухслойные диски DVD. Отличие от CD:

    - Ширина трека и продольный размер битовой ячейки уменьшается в 2 раза

    - Убраны коррекции ячеек избыточности кода

    - Информация может храниться на 2-х слоях

    - Используются 2 стороны диска

    - Для считывания измеряется длина волны лазера 650 нм

    - Изменена система начального кодирования, используется 16-битовые коды

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

    Принцип записи информации, информация записывается в сессиях. Каждая сессия имеет 99 треков.

    1. Флэш-память.

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

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

    Основы цифровой обработки сигналов.

    коэффициент нелинейных искажений (к.н.и.), который определяется как отношение мощности гармоник выходного сигнала к мощности основного тона.

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

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

    Для реальных звуковых сигналов кодирование с линейной ИКМ является неэкономичным. Поток данных можно сократить, если использовать несложный алгоритм сжатия, применяемый в системе дельта-ИКМ (ДИКМ). Упрощенно этот алгоритм выглядит так:

    в цифровом потоке передаются не сами мгновенные отсчеты, а масштабированная разность реального отсчета и его значения, сконструиро­ванного кодеком по ранее сгенерированному им потоку данных. Разность пере­дается с меньшим числом разрядов, чем сами отсчеты.

    Более сложные алгоритмы и высокая степень сжатия применяются в аудио- -кодеках MPEG:

    1 слой – маскировка звуков 32 под диапазон обработанного с меньшим разрешением

    2 слой – окно, длительностью 32мкс повышенной точности

    3 слой – нелинейное квантование.

    Наибольшая степень сжатия информации 11:1

    1. Звуковая карта пк.

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

    Собственно цифровые каналы звуковой карты проходят через интерфейсные схемы (например, MIDI- от шины расширения до ЦАП и от АЦП обратно к шине. Для передачи потоков данных используются каналы DMA — один 8-битный и один 16-битный. Преобразования синхронизируются от программируемого генератора (ПГ), который определяет частоту дискретизации. Частоту дискретизации, разрядность (8 или 16 бит) и режим (моно/стерео) выбирают при записи. От этих параметров зависит качество оцифровки и объем информации, занимаемой записью с определенной длительностью. Несмотря на наличие двух каналов DMA, далеко не все карты позволяют работать в дуплексном режиме цифрового канала — одновременно и независимо вводить и выводить цифровой поток. Полный дуплекс нужен, например, для IP-телефонии: аналоговый сигнал от микрофона поступает на АЦП, с которого цифровой поток в сжатом виде укладывается в пакеты IP-транспорта. Одновременно из принятых пакетов данные через ЦАП направляются на аудиовыход. Практически все современные карты поддерживают полный дуплекс. В них имеются два микшера — один для записи, другой для воспроизведения. В сложных картах может быть и пара преобразователей ЦАП (стереофонических), один из которых служит для воспроизведения звукозаписи, а другой обслуживает цифровые синтезаторы.

    1. Интерфейсы звуковых карт.

    Аналоговые интерфейсы используются для подключения стандартной бытовой аппаратуры, микрофона, аналогового выхода CD-ROM. На большинстве карт массового потребления для аналоговых сигналов предназначены малогабаритные разъемы — «мини-джеки» (jack) диаметром 3,5 мм, моно и стерео. Эти разъе­мы универсальны (используются на бытовой аппаратуре), но имеют весьма низ-­ кое качество контактов — являются источником шумов (шорохов и тресков),а также иногда просто теряют контакт.

    S/PDIF (Sony/Philips Digital Interface Format) — цифровой последовательный интерфейс (и форматы данных) для передачи аудиосигналов между блоками бытовой цифровой аудиоаппаратуры Этот интерфейс является упрощенным вариантом студийного интерфейса AES/EBU. Интерфейс AES/EBU использует симметричный двухпроводный экранированный кабель с импедансом 110 Ом, разъемы XLR, уровень сигнала — 3-10 В, длина кабеля — до 12 м.

    Интерфейс S/PDIF использует коаксиальный кабель 75 Ом, разъемы RCА или BNC, уровень сигнала — 0,5-1 В, длина кабеля — до 2 м. В звуковых картах внутренние разъемы S/PDIF проще — это просто пара штырьков на плате с соответствующей ответной частью на кабеле. Такие же упрощенные разъемы применяются и на новых приводах CD-ROM, имеющих выход S/PDIF. Кроме электрической существует и оптическая версия интерфейса S/PDIF — Toslink, стандарт EIAJ СР-1201 — с инфракрасными излучателями (660 нм). При­менение оптики позволяет обеспечить полную гальваническую развязку уст­ройств, что необходимо для снижения уровня наводок. Для пластикового волок­на (POF) длина кабеля — не более 1,5 м, для стеклянного волокна — 3 м. В.

    Цифровой интерфейс музыкальных инструментов MIDI (Musical Instrument Digital Interface) является последовательным асинхронным интерфейсом с частотой передачи 31,25 Кбит/с. В настоящее время интерфейс MIDI имеют и дорогие синтезаторы, и дешевые музыкальные клавиатуры, пригодные в качестве устройств ввода компьютера. Сообщения MIDI широко используются и для передачи музыкальных записей (на дисках и по сети), а также как выходной аудиоинтерфейс для игр и прочих звучащих приложений. Описание музыкальных фрагментов в формате MIDI очень компактно: минута MIDI (файлы с расширением .MID) может занимать менее 10 Кбайт, в то время как минута оцифрованного звука (файлы с расширением .WAV) с качеством аудио-CD занимает около 10 Мбайт. Однако формат MIDI позволяет воспроизводить лишь звуки, на которые способен синтезатор на исполняющей стороне, в то время, как цифровое аудио воспроизводит любые звуки.

    1. Проводные интерфейсы связи.

    СОМ-порт

    Последовательный интерфейс для передачи данных в одном направлении. Использует одну сигнальную линию для передачи бит информации. СОМ порт обеспечивает асинхронную передачу данных по стандарту RS232C. СОМ порт реализуется на синхронипередатчиках UART. Порты вырабатывают прерывания, имеют разъёмы DN25P и DB9P.

    Все внешние сигналы СОМ-портов двухполярны.

    А) Интерфейс RS232C

    Протокол RS232C описывает несимметричные приёмопередатчики. Сигнал 2х полярный относительно земли. Не обеспечивает гальваническую развязку. Логической единице соответствует напряжение от -12 до – 3 В. Логическому нулю – от 3 до 12 В.

    Подключение и отключение ПУ должно выполняться только при выключенном ПК.

    Интерфейс RS-232С является потенциальным, а не токовым, входные или выходные устройства должны включать только при выключенном ПК и выключенном ПУ. Таблица выводов 9 и 25-контактных разъемов.

    Последовательность управления сигналов интерфейса RS-232C

    1. Установкой сигнала DTR компьютер указывает на желание использовать модем.

    2. Установкой сигнала DSR модем сигнализирует о своей готовности к установлению соединения.

    3. Сигналом RTS компьютер запрашивает разрешение на передачу и заявляет о своей готовности принимать данные от модема.

    4. Сигналом CTS модем уведомляет о своей готовности к приему данных от компьютера и передаче их в линию.

    5. Снятием сигнала CTS модем сигнализирует о невозможности дальнейшего приема (например, буфер заполнен) — компьютер должен приостановить передачу данных.

    6. Восстановлением сигнала CTS модем разрешает компьютеру продолжить передачу (в буфере появилось место).

    7. Снятие сигнала RTS может означать как заполнение буфера компьютера (модем должен приостановить передачу данных в компьютер), так и отсутствие данных для передачи в модем. Обычно в этом случае модем прекращает пересылку данных в компьютер.

    8. Модем подтверждает снятие сигнала RTS сбросом сигнала CTS.

    9. Компьютер повторно устанавливает сигнала RTS для возобновления передачи.

    10. Модем подтверждает готовность к этим действиям.

    11. Компьютер указывает на завершение обмена.

    12. Модем отвечает подтверждением.

    13. Компьютер снимает сигнала DTR, что обычно является сигналом на разрыв соединения («повесить трубку»).

    14. Модем сбросом сигнала DSR сообщает о разрыве соединения.

    По интерфейсу RS-232C используется асинхронный способ передачи.

    Для асинхронного режима принят ряд стандартных скоростей обмена: 50, 75, 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600 и 115200 бит/с. Иногда вместо единицы измерения «бит/с» используют «бод» (baud), но при рассмотрении двоичных передаваемых сигналов это некорректно.

    Применение COM- портов:

    - Манипулятор мышь – каждое событие кодируется посылкой байтов по интерфейсу RS-232C

    - Внешний модем – требует 9-ти проводный кабель, возможен переход с 9 на 25

    - Связь с компьютером на небольшие расстояния можно использовать 0-модемный кабель.

    40. Беспроводные интерфейсы связи. Инфракрасный интерфейс.

    Применение излучателей и приёмников инфракрасного диапазона позволяют обеспечивать связь со скоростью передачи от 11кбс до 4мбс

    Низкоскоростная (11кбс) система для обмена файлами между компьютерами.

    Высокоскоростная (4мбс) – обеспечивает связь между принтерами, проекторами и подобными устройствами.

    1) Используют различные типы кодирования.

    • SIA-кодирование. 14кбс

    0бит – инф. кодируется импульсом.

    1бит – отсутствие импульса Исп. асинхронный способ передачи.

    • ASK-IR – асинхронный способ передачи9,6 – 57 кбит\с.

    0бит кодируются импульсом с частотой 500 кГц

    • HDLC – 0,5 – 1 мб\с, точно как в SIA, но с длит. 1\4 бит интервалом.

    • FIR 5 мбитс Кодирование позиционным импульсным кодом.

    Каждая пара смежных световых битов кодируется 4х битным кодом.

    2 Уровень доступа обеспечивает сбор данных в коды. Предотвращает конфликты одновременного подключения 2х и боле устройств. Связь полудуплексная.

    3 Управл. соед. Обеспечивает подключение множества устройств и их мультиплексирование. С помощью этого устройства сообщ приёмнику что оно в связи.

    4Транспортный – обработка, устранение ошибок, сокращение пакетов, передача пакетов на 5й уровень.

    5 Определяет команды обмена данных в пакетах между устройствами.

    1. Беспроводные интерфейсы связи. Радиоинтерфейс Bluetooth.

    Разработкой этого интерфейса занимались почти все фирмы. Имеется радиопередатчик работающий на частоте 2,4 Ггц.

    Принципы передачи:

    А) Принцип кодирования.

    Частотное кодирование. 1Мгц если больше 1мб – след. Частота.

    Передача идёт по канально, за счёт перескока несущих частот.

    Каналы образуются за счёт определённой последовательности перескоков.

    Б) Принцип передачи.

    Формирование сообщения в канале. При передаче сообщения 1600 перескоков.

    Время, в течении которого не меняется частота – 625мсек – Таймслот (TimeSlot)

    Идёт изменение частоты в соответствии с битовым кодированием информации.

    Пакет от 1-5 таймслотов. Он передаётся на 1й несущей частоте, но таймслоты отчитываются циклично. В цикле 227 таймслотов.

    3) Образование сети.

    Каждая сеть имеет мастера, который может вокруг себя обхединять до 7 устройств. Это Пикосеть.

    Scatennet – объединяет пикосети (//лозунг - Scatennet – объединяя пикосети )

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

    Синхронная – при передачи точка в точку. Уст. связь между предварительно выбранными мастерами. Связь симметричная 2сторонняя. Повторной передачи нет! Можно устанавливать до 3х связей и с 2ся различными мастерами.

    Асинхронная – точка – множество точек. Мастер может связаться с любым из ведомых устройств. Мастер посылает запрос и получив ответ определяет адрес связи.

    Модемы. Структурная схема устройства.

    Интерфейс телефонной линии обеспечивает физическое соединение с линией связи.

    Защита от перенапряжения и от помех. Набор номера и фиксация звонков. Гальваническая развязка.

    Дифференциальная схема обеспечивает переход от 2х пров к 4х пров линии.

    Система обратн. сигн. – АЦП. Для высокоскоростного модема 14-16 разр. Низкоскоростной -10.

    Сигнал процессора обеспечивает кодирование сигнала, контроль ошибок и его обработку.

    Контроллер – связь внешних устройств с модемом.

    Устройство сопряжения с ПК через интерфейс RS232.

    1. Основные принципы шинной связи, управление шиной.

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

    Внешние обеспечивают связь процессора с памятью и устройствами ввода-вывода.

    Внутренние же обеспечивают связь с Арифметическо-Логическими Устройствами.

    Функционирование шин связано в функционированием процессора ПК.

    Существуют следующие категории управления:

    • Управление шиной

    • Прерывания

    • Арбитраж шин

    • Разрешение конфликтов в шине

    Управление шиной обеспечивает выполнение требований процессора по определённым правилам. Эти правила называются протоколами. Устройства связи с шинами есть активные (задающие) и пассивные (подчиняющиеся).

    Для устройств, которые могут быть и задающими и подчиняющимися существует приёмопередатчик.

    Шина имеет адресную, информационную и управляющую линии.

    Ширина шины – важная характеристика. Первая шина было 32 битной.

    Синхронный способ управления

    Недостатки:

    Существуют интервалы ожидания из-за которых замедляется обработка.

    Неполные циклы обработки информации недопустимы.

    Он подстраивается под самое медленное устройство. Поэтому всё работает так же медленно.

    Асинхронный способ управления

    При отключении МС отключается и РС и заканчивается передача данных. Затем отключается всё остальное.

    Сигналы обработки информации не хависят от импульса тактового генератора. А все последующие события задаются предыдущими событиями.

    Про асинхронном способе управления последовательно, друг за другом наблюдаются 4 события:

    1 ) Установка МС

    2) Установка РС

    3) Сброс МС

    4) Сброс РС

    1. Арбитраж шин.

    Отправлять запрос на приём и обработку информации может как процессор, так и периферийное устройство. Для предотвращения хаоса существует арбитраж шин.

    Принцип действия:

    Арбитр встроен в процессор или же находится отдельно. Он не считает количество подключённых устройств. Он только проверяет, есть ли запросы от таковых. Если запрос есть – он предоставляет шину.

    Схемы арбитража:

    1)Централизованная.

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

    2)2х уровневая.

    Тут приоритет определяется информационной важностью каждого устройства. При этом арбитр должен работать со всеми устройствами.

    3)Децентрализованная

    Работает то устройство, у которого установлен сигнал 1П и оно же выполняет функцию арбитра.

    1. Передача информации шинами по блочно.

    Шины расширения.

    Шины расширения предназначены для подключения различных устройств к системной плате. Они – системные.

    К шинам расширения относятся шины ISA, PCI, MCA. AGP

    • ISA использовалась в первом ПК ещё в далёком 81м году. Содержала в себе 62 сигнальные линии и обладала скоростью передачи 2,385 мб/с.

    • ESIA расширена до 32х разрядной обработки. Обладает скоростью передачи 33,32 мб/с

    • PCI в древности обладала скоростью 132 мб/с, а в новом исполнении гонит на все 528мб/с

    Алгоритм функционирования шины:

    1. Передача адреса задающим устройством шины

    2. Ответ задающего устройства и освобождение шины

    3. Передача данных

    Соединения шин между собой образуют мосты. Мост образует иерархию шин. Шина наверху имеет «0» номер. Главный мост обеспечивает подключение PCI и системной шины, а одноранговый мост обеспечивает соединение PCI и шин другого типа. Мосты выполняют преобразование интерфейса соединения шин. Мосты допускают различные частоты работы шин.

    1. Параллельные шины.

    Параллельные шины используют для подключения периферийных устройств. Существует 2 параллельные шины:

    ATA:

    Хост-адаптер – средство сопряжения шины АТА с системой

    Ленточный кабель.

    Ведущее устройство - Device 0

    Ведомое устройство - Device 1

    Шина имеет 2 типа адресации – 3х-мерная (CHS) и логическая (LBA) и они связаны.

    Блоки данных по 16 бит, а контроллер 8.

    SCSI:

    Все устройства, подключаемые к такой шине равноправны. Они могут быть инициаторами и могут быть использованы. В качестве инициатора обмена в шине используется хост-адаптер. Каждое целевое устройство может содержать 8 независимых устройств. Стартовая частота 5,10,20 Мгц.

    Передача ведётся по байтно асинхронно с контролем каждого байта на чётность.

    Каждое устройство имеет своё уникальный адрес. Для хост-адаптера возможно программная адресация. Приоритет зависит от величины адреса. Чем выше адрес – тем выше приоритет.

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

    1. Последовательные шины

    Последовательные шины позволяют объединять множество устройств используя 1 или 2 пары проводов.

    К последовательным шинам относятся шины USB, FCAL, FireWire, AcessBus.

    Шина USB является хост центрической. Передача информации осуществляется пакетами.

    Пакеты состоят из кадров. В кадре идёт обращение к устройству.

    SOF - начало кадра

    IN - запрос передачи

    DATA - пакет передачи данных от устройства к ПК

    OUT - пакет передачи данных от ПК к устройству

    DID - указатель типа пакетов

    CRS - циклический избыточный код

    NAC - сигнал ошибки

    ACK - сигнал передачи данных без ошибки

    F ireWire. В 1995 году был принят стандарт IEEE 1394 для высокопроизводительной последовательной шины. Другое наименование этого же интерфейса - iLink. Основные характеристики шины следующие:

    Многофункциональность – шина обеспечивает цифровую связь до 63 устройств без дополнительной аппаратуры.

    Высокая скорость обмена – при двух каналах видео скорость составляет 30 кадров в секунду.

    Легкость установки и подключения. Устройства автоматически распознаются и конфигурируются. Стандартный кабель интерфейса содержит 6 проводов:

    2 витые пары (раздельно для передачи и приема сигналов);

    2 провода питание устройств (напряжением 8-40В, ток до 1,5А).

    А). Протокол стандарта IEEE 1394 трехуровневый.

    220