Через какие устройства взаимодействуют устройства внешней памяти и ввода вывода с процессором
Процессор – основной рабочий элемент КС. Выполняет операции над данными, хранящимися в памяти; подает команды на ввод-вывод информации с устройств ввода-вывода и др.
В состав процессора входят:
а) устройство управления;
б) арифметико-логическое устройство;
Устройство управления управляет вычислительным процессом, посылая устройствам (например, АЛУ) сигналы, предписывающие определенные действия.
Арифметико-логическое устройство производит арифметические и логические операции над поступившими данными.
Регистры осуществляют временное хранение данных и состояний процессора.
Внутренняя память предназначена для хранения данных, непосредственно не используемых в вычислительном процессе.
Состоит из следующих основных частей:
а) оперативная память;
в) буферная память;
г) постоянная память.
Оперативная память (оперативное запоминающее устройство) – предназначена для хранения данных, непосредственно участвующих в вычислительном процессе. По сравнению с внешней памятью, отличается небольшой емкостью и большим быстродействием. Реализуется в виде микросхем.
Кэш-память (сверхоперативная память) – используется в качестве буфера между более медленной оперативной памятью и более быстрым процессором для согласования их по скорости. Реализуется в виде микросхем.
Буферная память (буферное запоминающее устройство) – предназначена для промежуточного хранения информации при обмене ею между устройствами КС, работающими с разными скоростями, для согласования их по скорости. Может реализовываться как часть устройства.
Постоянная память (постоянное запоминающее устройство) – ее содержимое устанавливают на заводе-изготовителе и в дальнейшем оно не меняется. Реализуется в виде микросхем. В постоянную память записываются программы, которые имеет смысл раз и навсегда встроить в нее. По назначению эти программы делятся на: программы запуска машины; базовую систему ввода-вывода, интерпретатор языка Бейсик; программы для работы с внешними (периферийными) устройствами.
В настоящее время вместо постоянного запоминающего устройства используется программируемое постоянное запоминающее устройство, содержимое которого может меняться. Его разновидностью является стираемое постоянное запоминающее устройство, которое допускает многократное перепрограммирование.
Устройства ввода обеспечивают считывание данных и программ и перенос их в память (например, клавиатура, мышь, устройство для чтения компакт-дисков и др.).
Устройства вывода представляет результаты обработки информации в форме, удобной для человеческого восприятия (например, принтер, монитор), а также обеспечивает запоминание результатов в памяти.
Внешняя память (внешнее запоминающее устройство) предназначена для хранения больших массивов данных, непосредственно не используемых в вычислительном процессе. При необходимости использования информации, хранящейся во внешней памяти, она предварительно перемещается в оперативную. Реализуется чаще всего на магнитных дисках.
Внешняя память — часть памяти компьютера, которая используется для долговременного хранения программ и данных.
Этот вид памяти позволяет повторно использовать программы и данные. Благодаря этому текст достаточно набрать один раз, а цифровые фотографии можно рассматривать в течение многих лет.
Устройства внешней памяти часто называют накопителями. К ним относятся, например, накопители на магнитных и оптических дисках, а также современные внешние запоминающие устройства на основе полупроводниковой флэш-памяти.
Внешняя память любого типа состоит из некоторого носителя информации (например, диска или полупроводникового кристалла) и электронной схемы управления (контроллера).
Компьютерный носитель информации — это средство длительного хранения данных в компьютерном формате. Носитель может быть съёмным (как в накопителях на оптических дисках), а может быть помещён внутрь неразборного устройства (жёсткий магнитный диск — «винчестер»).
Магнитные и оптические диски для обеспечения доступа к любому блоку данных быстро вращаются, а читающая головка перемещается вдоль радиуса диска. В более современных видах внешней памяти, где носителем информации является полупроводниковый кристалл, никаких движущихся частей нет, а для чтения и записи данных используются только электрические импульсы (аналогично ОЗУ).
В переносных устройствах внешней памяти, например во внешних жёстких дисках и флэш-накопителях, носитель и схема управления объединены в единый блок. Такие устройства подключаются к компьютеру снаружи через разъём.
Центральный процессор не может непосредственно обращаться к данным на носителе, он работает с ними через контроллер внешней памяти. На рисунке 5.16 схематично показано, как читаются данные с внешнего носителя информации и записываются в ОЗУ 1 .
1 В действительности процесс обмена более сложен, в нём участвует ещё и контроллер ПДП.
Рис. 5.16
Для связи с контроллером процессор использует порты — регистры контроллера, к которым процессор может обратиться по номеру. Процессор передаёт контроллеру «задание» на передачу данных, и контроллер берёт руководство процессом на себя. В это время центральный процессор может параллельно выполнять программу дальше или решать другую задачу. Таким образом, выполнить чтение (и запись) данных из внешней памяти гораздо сложнее, чем из внутренней памяти.
Для внешней памяти характерны следующие черты:
• обменом данными управляют контроллеры;
• прежде чем процессор сможет непосредственно использовать программу или данные, хранящиеся во внешней памяти, их нужно предварительно загрузить в ОЗУ;
• данные располагаются блоками (на дисках их принято называть секторами); блок данных читается и пишется как единое целое, что существенно ускоряет процедуру обмена; работать с частью блока невозможно.
В качестве внешней памяти используются самые разные носители. Первоначально программы и данные сохранялись на бумажных перфокартах (рис. 5.17) и перфолентах. Подписанные обычной ручкой или карандашом, они сортировались программистами вручную. Затем произошёл переход к магнитным носителям: магнитным лентам, барабанам и дискам.
Рис. 5.17. Перфокарта
На магнитных дисках биты данных хранятся в виде небольших намагниченных (или ненамагниченных) областей. Секторы размещаются на концентрических окружностях (имеющих общий центр), которые называются дорожками. Поскольку длина дорожки зависит от положения на диске, количество секторов на дорожках может быть разным. Доступ к секторам диска — произвольный, максимальная скорость достигается тогда, когда читаемые или записываемые секторы располагаются подряд.
Управление такой сложной системой очень трудоёмко — поэтому, как нам уже известно из истории вычислительной техники, появление магнитных дисков вызвало создание специального ПО для работы с ними — операционных систем (ОС). ОС берёт на себя все технические детали, предоставляя пользователю работу с некоторыми наборами данных — файлами. Таким образом, начиная с дисковых накопителей, наличие файловой системы — это характерная черта внешней памяти, которая существенно отличает её от внутренней.
Следующей технологией хранения данных стали оптические компакт-диски, CD (англ. Compact Disk). При записи данных (одним из способов) луч лазера «выжигает» на поверхности диска дорожку, в которой чередуются впадины и возвышения. При считывании также применяется луч лазера, только меньшей интенсивности, чтобы не разрушить данные. Для распознавания нулей и единиц используется различное отражение от перепадов глубины и ровной поверхности диска. В отличие от магнитных дисков, где информация хранится на отдельных замкнутых дорожках, данные на оптическом диске записываются вдоль непрерывной спирали, как на старых грампластинках .
Сейчас широко используются оптические диски следующих поколений: DVD (англ. Digital Versatile Disk — цифровой многоцелевой диск, ёмкость до 17 Гбайт) и Blu-ray-диски (ёмкостью до 500 Гбайт). Они имеют тот же диаметр, что и CD-диски, но для повышения плотности записи используют лазер с меньшей длиной волны. Были разработаны также комбинированные магнитооптические диски. Носителем информации в них служит магнитное вещество. При нагреве лазером оно плавится, частицы среды ориентируются в магнитном поле, и меняются оптические
свойства поверхности диска. После восстановления нормальной температуры такие диски необычайно устойчивы к внешним воздействиям. Тем не менее они не получили распространения из-за высокой стоимости и малой скорости записи.
Отметим, что на всех видах дисков есть разметка на секторы, благодаря которой контроллер может быстро находить нужную информацию. Сами данные помещаются между «заголовком» сектора и его завершающей записью.
Наконец, последнее достижение в области устройств внешней памяти — запоминающие устройства на базе флэш-памяти. В них нет движущихся частей, а носителем информации служит полупроводниковый кристалл. Данные во флэш-памяти обновляются только блоками, но для устройств внешней памяти это вполне естественно. Максимальное количество перезаписей данных для каждого блока хотя и велико, но всё же ограничено. Поэтому встроенный контроллер при записи использует специальный алгоритм для выбора свободных блоков, стараясь загружать секторы диска как можно более равномерно.
Кроме широко распространённых флэш-дисков (сленговое название — «флэшки») этот вид памяти используется в картах памяти (рис. 5.18) для фотоаппаратов, плееров и мобильных телефонов, а также в твёрдотельных винчестерах SSD (англ. Solid, State Disk).
Напомним, что ПЗУ также может изготовляться на базе флэш-памяти.
Рис. 5.18. Флэш-карта
Следующая страница Взаимодействие разных видов памяти
Cкачать материалы урока
- какова структурная схема компьютера;
- что такое принцип программного управления;
- в чем состоит назначение системной шины;
- что означает принцип открытой архитектуры, используемый при построении компьютера.
Структурная схема компьютера
В предыдущих темах вы познакомились с назначением и характеристиками основных устройств компьютера. Очевидно, что все эти устройства не могут работать по отдельности, а только в составе всего компьютера. Поэтому для понимания того, как компьютер обрабатывает информацию, нёобходимо рассмотреть структуру компьютера и основные принципы взаимодействия его устройств.
В соответствии с назначением компьютера как инструмента обработки информации взаимодействие входящих в него устройств должно быть организовано таким образом, чтобы обеспечить основные этапы обработки данных.
Для пояснения сказанного рассмотрим приведенную на рисунке 21.1 структурную схему обработки информации компьютером, на которой в верхнем ряду указаны уже знакомые вам по разделу 1 основные этапы этого процесса. Выполнение каждого из этих этапов определяется наличием в структуре компьютера соответствующих устройств. Очевидно, что ввод и вывод информации осуществляется с помощью устройств ввода (клавиатура, мышь и др.) и вывода (монитор, принтер и др.). Для хранения информации используются внутренняя и внешняя память на различных носителях (магнитные или оптические диски, магнитные ленты и пр.).
Рис. 21.1. Структурная схема компьютера
Темные стрелки обозначают обмен информацией между различными устройствами компьютера. Пунктирные линии со стрелками символизцруют управляющие сигналы, которые поступают от процессора. Светлые пустые стрелки отображают потоки входной и выходной информации соответственно.
Компьютер представляет собой систему взаимосвязанных компонентов. Конструктивно все основные компоненты компьютера объединены в системном блоке, который является важнейшей частью персонального компьютера.
Системный блок и системная плата
Внутри системного блока располагаются следующие устройства:
♦ микропроцессор;
♦ внутренняя память компьютера;
♦ дисководы — устройства внешней памяти;
♦ системная шина;
♦ электронные схемы, обеспечивающие связь различных компонентов компьютера;
♦ электромеханическая часть компьютера, включающая блок питания, системы вентиляции, индикации и защиты.
Компоновка компьютера IBM 286
Компоновка современного ПК
Все перечисленные устройства, входящие в состав системного блока, помещены в корпус, причем существуют различные типы корпусов. Тип корпуса системного блока зависит от вида персонального компьютера и определяет размер, размещение и количество устанавливаемых компонентов системного блока. Для стационарных персональных компьютеров наиболее распространенными корпусами являются горизонтальные или настольные (desktop) либо в виде башни (tower). В портативных компьютерах системный блок объединен с монитором и выполнен в стандарте booksize, то есть размером с книгу.
Технической (аппаратной) основой персонального компьютера является системная, или материнская, плата.
Системная плата является главной платой в системном блоке компьютера. На ней расположены важнейшие микросхемы — процессор и память. Системная плата связывает в единое целое различные устройства, обеспечивает условия работы и связь основных компонентов персонального компьютера. Процессор обеспечивает не только преобразование информации, но и управление работой всех остальных устройств компьютера.
В основе работы компьютера лежит так называемый принцип программного управления. В соответствии с ним команды программы и данные хранятся в закодированном виде в оперативной памяти. При работе компьютера команды, которые необходимо выполнить, и данные, которые им требуются, вчитываются по очереди из памяти и поступают в процессор, где они расшифровываются, а затем выполняются. Результаты выполнения различных команд, в свою очередь, могут быть записаны в память или переданы на различные устройства вывода. Скорость выполнения процессором операций по обработке информации является решающим фактором, определяющим его производительность. Дело в том, что любая информация (числа, текст, рисунки, музыка и т. д.) хранится и обрабатывается на компьютере только в цифровой форме. Поэтому ее обработка сводится к выполнению процессором различных арифметических и логических операций, предусмотренных его системой команд.
Системная шина
Для обеспечения информационного обмена между различными устройствами компьютера в нем должна быть предусмотрена ка- кая-то магистраль для перемещения потоков информации. Поясним эту мысль небольшим примером.
Вы знаете, что жизнь большого города — это постоянные потоки людей и транспортных средств, двигающихся в различных направлениях. Часто скорость транспортного или людского потока зависит не от скорости машины, велосипеда или пешехода, а от пропускной способности транспортной сети города, от его подземных и наземных магистралей.
В компьютере происходит движение не транспортных, а информационных потоков по соответствующей информационной магистрали. Роль такой информационной магистрали, связывающей друг с другом все устройства компьютера, выполняет системная шина, расположенная внутри системного блока. Упрощенно системную шину можно представить как группу кабелей и электрических (токопроводящих) линий на системной плате.
Все основные блоки персонального компьютера подсоединены к системной шине (рисунок 21.2). Основной ее функцией является обеспечение взаимодействия между процессором и остальными электронными компонентами компьютера. По этой шине осуществляется передача данных, адресов памяти и управляющей информации.
Рис. 21.2. Назначение системной шины
От типа системной шины, так же как и от типа процессора, зависит скорость обработки информации персональным компьютером. К основным характеристикам системной шины относятся разрядность и производительность канала связи.
Разрядность шины определяет количество бит информации, передаваемых одновременно от одного устройства к другому.
Системные шины первых персональных компьютеров могли передавать только 8 бит информации, используя для этого 8 линий данных в виде 8 параллельных проводников. Дальнейшее развитие компьютеров привело к созданию 16-битной системной шины, а затем ее разрядность увеличилась до 32 и далее до 64 бит. Увеличение разрядности шины данных привело к повышению скорости обмена информацией, а увеличение разрядности адресной шины обеспечило больший объем оперативной памяти.
Производительность шины определяется объемом информации, который можно передать по ней за одну секунду.
Подобно транспортным магистралям, пропускная способность которых зависит от количества полос движения на дороге, производительность системной шины во многом определяется ее разрядностью. Чем выше разрядность шины, тем больше бит информации одновременно может передаваться по ней, например из процессора в память. Это приводит к более быстрому обмену данными и освобождению процессора для решения других задач.
Однако системная шина как основная информационная магистраль не может обеспечить достаточную производительность для внешних устройств. Для решения этой проблемы в компьютере стали использовать локальные шины, которые связывают микропроцессор с различными устройствами памяти, ввода и вывода. Назначение локальных шин сходно с назначением окружных или кольцевых дорог вокруг большого города, которые разгружают основные магистрали.
Порты
Связь компьютера с различными устройствами ввода и вывода осуществляется через порты. Для некоторых устройств предусмотрено внешнее подключение к портам через разъемы, которые обычно тоже называют портами. Эти разъемы расположены на тыльной стороне системного блока. Дисководы гибких, жестких и лазерных дисков устанавливаются и подключаются внутри системного блока. Различают проводные (последовательные и параллельные, USB, Fire Wire) и беспроводные (инфракрасные, Bluetooth) порты.
Параллельные порты
Этот тип портов используется для подсоединения внешних устройств, которым необходимо передавать большой объем информации на близкое расстояние. Через параллельный порт обычно передается одновременно 8 бит данных по 8 параллельным проводникам. К параллельному порту подключаются принтер, сканер. Число параллельных портов у компьютера не превышает трех, и они имеют соответственно логические имена LPT1, LPT2, LPT3 (от англ. Line PrinTer — линия принтера).
Последовательные порты
Данный тип портов используется для подключения к системному блоку мыши, модемов и многих других устройств. Через такой порт идет последовательный поток данных по 1 биту. Это можно сопоставить с тем, как происходит движение транспорта по дороге с одной полосой. Последовательная передача данных используется на больших расстояниях. Поэтому последовательные порты часто называют коммуникационными. Количество коммуникационных портов не превышает четырех, и им присвоены имена от СОМ1 до COM4 (англ. COMmunication port — коммуникационный порт).
USB-порт (англ. Universal Serial Bus) в настоящее время является наиболее распространенным средством подключения к компьютеру среднескоростных и низкоскоростных периферийных устройств. USB-порт использует последовательный способ обмена данными. Наибольшее распространение получил высокоскоростной порт типа USB 2.0. Если в компьютере не хватает USB-портов, то этот недостаток можно устранить приобретением USB-концентратора, имеющего несколько таких портов.
Благодаря встроенным линиям питания USB часто позволяет применять устройства без собственного блока питания.
FireWire-порт
FireWire (IEEE 1394) - долсловно - огненный провод (произносится "файр вайр") - это последовательный порт, поддерживающий скорость передачи данных в 400 Мбит/сек. Этот порт служит для подключения к компьютеру видео устройств, таких как, например, видеомагнитофон, а также других устройств, требующих быстрой передачи большого объема информации, например, внешних жестких дисков.
Порты FireWire поддерживают технологию Plug and Play и "горячего подключения".
Порты FireWire бывают двух типов. В большинстве настольных компьютерах используются 6-контактные порты, а в ноутбуках - 4-контактные.
Инфракрасный порт беспроводного подключения
Передача данных осуществляется по оптическому каналу в инфракрасном диапазоне. Аналогично работают пульты дистанционного управления бытовой техникой — телевизорами, видеомагнитофонами и пр. Радиус действия инфракрасного порта составляет несколько метров, при этом необходимо обеспечить прямую видимость между приемником и передатчиком.
Инфракрасный порт обычно используется для соединения с мобильным телефоном, обладающим таким же портом. Это позволяет реализовать доступ в Интернет с использованием мобильного телефона, что наиболее важно для портативных ноутбуков в нестационарных условиях.
Модуль Bluetooth беспроводного подключения
Один адаптер Bluetooth позволяет осуществить беспроводное подключение порядка 100 устройств, находящихся на расстоянии до 10 м. При этом к компьютеру, оснащенному таким адаптером, можно подключать разнотипные беспроводные устройства: мобильные телефоны, принтеры, мыши, клавиатуры и пр. Передача данных осуществляется по радиоканалу в частотном диапазоне 2,2-2,4 ГГц. Главное достоинство — устойчивая связь независимо от взаиморасположения приемника и передатчика. Если в компьютере нет встроенного модуля Bluetooth, то его можно приобрести отдельно и подключить по USB-порту.
Прочие компоненты системной платы
Системная плата, кроме перечисленных выше важнейших компонентов компьютера, содержит дополнительные микросхемы, переключатели и перемычки. Все эти устройства необходимы для обеспечения взаимодействия различных устройств компьютера, установки режимов их работы. Например, на системной плате могут быть установлены микросхемы, которые требуют различного напряжения питания. Параметры работы устройств задаются переключателями на системной плате.
В любом системном блоке находятся обязательные узлы, обеспечивающие работу компьютера, — блок питания, системные часы, аккумулятор, сигнальные индикаторы передней стороны системного блока.
Системные часы определяют скорость выполнения компьютером операций, которая связана с тактовой частотой, измеряемой в мегагерцах (1 МГц равен 1 млн тактов в секунду).
Системные часы определяют ритм работы всего компьютера, синхронизируют работу большинства компонентов его системной платы.
Платы и слоты расширения обеспечивают реализацию так называемого принципа открытой архитектуры построения современного персонального компьютера. Слотом называется разъем, куда вставляется плата. Наличие слотов расширения на системной плате позволяет рассматривать персональный компьютер как устройство, которое можно модифицировать. Расширение возможностей компьютера осуществляется путем установки в слоте платы расширения. К разъему этой платы с помощью кабеля присоединяется некоторое устройство, расположенное вне системного блока.
Вместо термина «плата расширения» часто используют названия «карта», «адаптер». К наиболее распространенным платам расширения относятся видеокарты, звуковые карты и внутренние модемы.
Представление об открытой архитектуре компьютера
Технология производства компьютеров быстро развивается, что обеспечивает непрерывный рост их производительности, объема памяти и как результат — возможностей решать все более сложные задачи. Стремительно совершенствуются одни устройства, создаются другие, принципиально новые. При столь бурном развитии технологии необходимо предусмотреть такой принцип построения компьютера, который позволял бы использовать уже имеющиеся в нем устройства (блоки), а также без изменения конструкции заменять их на новые, более совершенные. Как города строятся по законам архитектуры, так и устройство компьютера должно развиваться по определенным законам. Главный принцип построения современного персонального компьютера — это принцип открытой архитектуры: каждый новый блок должен быть программно и аппаратно совместим с ранее созданными. Это означает, что современный персональный компьютер упрощенно можно представить как знакомый всем детский конструктор из кубиков. В компьютере столь же легко можно заменять старые кубики (блоки) на новые, где бы они ни располагались, в результате чего работа компьютера не только не нарушается, но становится более производительной. Именно принцип открытой архитектуры позволяет не выбрасывать, а модернизировать ранее купленный компьютер, легко заменяя в нем устаревшие блоки на более совершенные и удобные, а также приобретать и устанавливать новые блоки и узлы. При этом места для их установки (разъемы) во всех компьютерах являются стандартными и не требуют никаких изменений в самой конструкции компьютера.
Принцип открытой архитектуры — правила построения компьютера, в соответствии с которыми каждый новый узел (блок) должен быть совместим со старым и легко устанавливаться в том же месте в компьютере.
Контрольные вопросы
1. Какие основные блоки образуют структуру компьютера и как они связаны с этапами обработки информации?
2. Какова роль процессора персонального компьютера в обработке информации?
3. Что такое принцип программного управления?
4. Каковы назначение и основные компоненты системного блока?
5. Какие виды корпусов системного блока вам известны?
6. Для чего нужна системная плата?
7. Каково назначение системной шины в персональном компьютере?
8. В чем состоит аналогия между системной шиной и транспортными магистралями?
9. Какие вы знаете характеристики системной шины?
10. Что такое порт компьютера? Какие виды портов бывают и в чем их различие?
11. Зачем нужны платы расширения?
12. Для чего необходимо иметь слоты расширения?
13. В чем состоит принцип открытой архитектуры?
14. Что вам известно из художественной литературы, научно-популярных изданий, из телевизионных передач и кинофильмов о возможностях и использовании компьютеров будущего?
Синхронная передача данных характерна для периферийных устройств, для которых известны временные соотношения. При этом типе передачи устройство ввода-вывода должно быть готово к приему или передаче данных за время, равное времени выполнения определенной команды процессора. Синхронная передача реализуется при минимальных затратах технических и программных средств.
Асинхронная передача данных, иногда называемая обменом посредством “рукопожатия”, широко используется. При такой передаче данных микропроцессор перед выполнением операции ввода-вывода проверяет состояние периферийного устройства. Обычно при обмене необходимо:
· Проверить состояние внешнего устройства;
· Активизировать устройство, если последнее готово к обмену;
· Передать данные (ввести или вывести);
Асинхронная передача является идеальной в смысле согласования временных различий между периферией и микропроцессором. Недостаток ее в том, что микропроцессор вынужден ожидать, пока периферийное устройство не будет готово к обмену. Методом, позволяющим устранить этот недостаток, является передача данных с прерыванием программы.
Передача данных с прерыванием программы – это такой тип обмена данными , при котором для выполнения операций ввода-вывода производится прерывание программы микропроцессора. Такой тип обмена особенно удобен при работе с периферийными устройствами с низким быстродействием, а также в случаях, когда момент передачи данных в микропроцессоре непредсказуем, например при работе с каналами связи. Основная черта такой передачи в том, что обмен инициируется самими внешними устройствами. Для реализации данного обмена в микропроцессоре предусматриваются специальные схемы, которые в конце выполнения каждой машинной операции проверяют наличие сигнала прерывания. Если сигнал прерывания обнаружен, то выполняется следующая последовательность действий:
· После выполнения текущей команды микропроцессор выдает сигнал подтверждения прерывания;
· Микропроцессор запоминает содержимое счетчика команд (обычно в стеке) для того, чтобы после выполнения подпрограммы обслуживания прерывания вернуться к выполнению прерванной программы;
· Запоминается содержимое внутренних регистров и выполняется передача данных под управлением специальной программы (подпрограмма обслуживания прерывания);
· Осуществляется возврат к продолжению выполнения основной программы.
Начало подпрограммы обслуживания прерывания обычно имеет фиксированный адрес в памяти, который называется вектором. В системе могут быть реализованы больше, чем одно прерывание. В этом случае каждое прерывание имеет свой вектор и свою подпрограмму обслуживания. Каждое прерывание в системе может быть программно запрещено или разрешено, это действие называется маскированием и демаскированием соответственно. Если система прерываний одноуровневая, то ни одно из прерываний не может быть обслужено, пока не закончено обслуживание какого-то другого. В многоуровневой системе прерываний каждое прерывание имеет свой приоритет (значимость). Если в какой-то момент времени выполяется прерывание с более низким приоритетом, чем пришедшее, то обслуживание этого прерывание откладывается, а начинается выполнение вновь поступившего прерывания.
Рассмотренные методы предназначены для обмена данными между микропроцессором и внешними устройствами. Для обмена данными между внешними устройствами и памятью нет необходимости пересылать данные через микропроцессор, так как это займет ресурсы микропроцессора и время. Можно ввести в систему контроллер прямого доступа в память, который выполняет указанные функции обмена. Проблема использования контроллера прямого доступа в память заключается в том, то внешнее устройство должно обмениваться данными с памятью, используя уже имеющиеся информационные шины (шина адреса, данных, управления). Задача разделения единого информационного канала между микропроцессором и каналом прямого доступа в память решается путем использования свойств трехуровневого состояния информационных магтстралей. На рисунке показано подключение микропроцессора, памяти и внешнего устройства к шинам при обычном режиме.
В этом режиме состояние информационных магистралей может иметь два уровня: нулевое и единичное. В режиме прямого доступа в память внешнее устройство берет на себя функции по управлению обменом информацией с памятью, а выводы микропроцессора, подключенные к шинам должны быть переведены в третье состояние. Третье состояние – это состояние высокого сопротивления (высокоимпедансное состояние), что означает отключение от шины. Для реализации этого внешнее устройство посылает сигнал захват шин на специальный вывод микропроцессора, в ответ на этот сигнал микропроцессор посылает сигнал подтвержление захвата и переводит свои выводы в третье состояние. Режим захвата шин для микропроцессора продолжается до тех пор пока внешнее устройство работает с памятью и пока им не будет снят сигнал захвата шин. В этом режиме состояние микропроцессора “замораживается” без каких-либо изменений. Режим иллюстрируется рисунком.
В таком варианте контроллер прямого доступа в память не используется, так как функции управления шинами выполняет частично сам микропроцессор, частично внешнее устройство. Контроллер используется тогда, когда простои микропроцессора в режиме захвата шин недопустимы. Тогда контроллер берет на себя функции анализа свободности шин и выполнения операций обмена тогда, когда шины свободны. В таком режиме микропроцессор даже не замечает, что какие-то устройства занимают шины.
Работа периферийных устройств (ПУ) не синхронизирована с работой процессора. Запросы со стороны ПУ на установление связи и обмен данными могут поступать в произвольные моменты времени. Для организации обмена требуются специальные электронные средства согласования форматов и синхронизации процессов. В вычислительных машинах используется три способа обмена данными между ПУ и процессором и памятью /1,17/:
1) программно-управляемая передача, инициируемая процессором;
2) передача информации с прерыванием программы, активизируемая по запросу прерывания от ПУ;
3) передача информации в режиме прямого доступа к памяти.
При программно-управляемой передаче данных обмен осуществляется под управлением процессора, который реализует операции ввода-вывода с помощью соответствующих команд. Программно-управляемый обмен бывает синхронным и асинхронным.
Синхронная передача применяется при взаимодействии с быстродействующими ПУ, для обмена с которыми не требуется дополнительной синхронизации, поскольку они всегда готовы к обмену информацией. Этот способ передачи реализуется при минимальных затратах аппаратных и программных средств.
Асинхронный обмен используется при работе с ПУ, быстродействие которых ниже быстродействия процессора. В некоторые моменты времени такие ПУ могут оказаться неготовыми к обмену. Поэтому в этом случае необходимо использовать специальные средства, синхронизирующие процесс приёма-передачи, которые содержатся в адаптере (контроллере) ПУ. Адаптер подключается к шине ВМ и является посредником между ПУ и процессором и памятью (вычислительным ядром). В режиме ввода данные из ПУ поступают в порт (регистр данных, содержащийся в адаптере) и хранятся в нём до момента пересылки по шине в вычислительное ядро. В режиме вывода данные записываются процессором в порт и хранятся там до передачи в устройство вывода.
Для управления процессом обмена в составе адаптеров имеются специальные регистры управления и состояния, доступные процессору для чтения и записи. Перед выполнением любой операции обмена процессор проверяет состояние готовности и по результатам проверки или осуществляет внешний обмен, или переходит в состояние ожидания, пока ПУ не будет готово к обмену.
Программно-управляемая передача является самым быстрым способом обмена данными между процессором и ПУ. Однако ему присущи следующие недостатки:
1) вынужденные непроизводительные затраты времени процессора на ожидание готовности ПУ к обмену;
2) блокирование работы процессора в результате бесконечного ожидания готовности ПУ (когда сигнал готовности не может быть сформирован, например, из-за неисправности ПУ).
Предотвратить потери времени в циклах ожидания и существенно улучшить программное взаимодействие процессора с ПУ позволяет использование прерываний.
Важным отличием обмена данными с прерыванием программы от программно-управляемого обмена является то, что в нём инициатором всегда является внешнее устройство, запросившее обмен. Такое архитектурное решение позволяет повысить производительность процессора при наличии нескольких параллельных процессов, требующих в произвольные моменты времени обслуживания со стороны процессора.
Реализация такого обмена по сравнению с рассмотренным выше требует более сложной аппаратной и программной поддержки. При готовности к обмену ПУ формирует запрос прерывания и посылает его процессору. Последний, обнаружив сигнал запроса, завершает выполнение операций, которые нельзя прервать, и выполняет определённую последовательность действий. По её завершении процессор восстанавливает состояние на момент прерывания и возвращает управление прерванной программе. Более подробно организация работы ВМ при обработке прерываний рассматривалась в разделе 5.3 настоящего конспекта.
Эффективность обменов с прерыванием программы определяется типом участвующих в обмене ПУ. При работе с относительно медленными УВВ потери времени на переключение процессора при прерываниях невелики, поэтому организация ввода-вывода с использованием механизма прерываний достаточно эффективна.
Прямой доступ к памяти (ПДП) (DMA- Direct Access Memory) представляет собой высокоскоростной способ обмена между ПУ и ОЗУ, например, при загрузке данных в оперативную память с внешнего носителя. В режиме ПДП обмен данными осуществляется автономно от центрального процессора. При этом скорость передачи данных определяется только внешними устройствами, что позволяет ВМ выполнять ввод-вывод с максимальной скоростью самих внешних устройств. Переход в режим ПДП выполняется по запросу внешнего устройства подобно тому, как обрабатывается запрос прерываний, только управление при этом передаётся внешнему устройству. Для эффективного управления вводом-выводом в режиме ПДП в современных ВМ используются либо специализированные сопроцессоры ввода-вывода, либо контроллеры ПДП (DMA).
Сопроцессор ввода-вывода– это вспомогательный процессор, работающий в паре с центральным процессором и имеющий собственную систему команд, ориентированную на операции ввода-вывода. В этом случае все действия по организации передач ввода-вывода реализуются без участия центрального процессора. Сопроцессор ввода-вывода может также выполнять арифметические и логические операции, поиск и преобразования данных. Он программируется с помощью центрального процессора, выполняет его задания и возвращает в него результаты выполнения. Когда в программе встречается команда ввода-вывода, центральный процессор передаёт управление сопроцессору ввода-вывода, и далее сопроцессор работает независимо от центрального процессора. Сопроцессор ввода-вывода является достаточно сложным устройством. При его использовании для организации ПДП часто применяют раздельные шины доступа к ОЗУ со стороны центрального процессора и ПУ.
Сопроцессоры ввода-вывода ещё называют каналами ввода-вывода. Они бывают мультиплексными и селекторными. Мультиплексный канал одновременно обслуживает параллельно работающие медленные ПУ, попеременно организуя с ними кратковременные сеансы связи. Средства мультиплексного канала для обслуживания одной операции ввода-вывода, называются подканалом. Мультиплексные каналы могут иметь до 256 подканалов, что позволяет подключать до 256 ПУ. Селекторный канал всегда обслуживает одно ПУ, доводя с ним до полного завершения обмен информацией. Селекторный канал обслуживает быстродействующие ПУ.
Контроллер ПДП по сравнению с сопроцессором ввода-вывода является более простым устройством. Предварительно запрограммированный контроллер в режиме ПДП управляет обменом данными между ОЗУ и внешним устройством. При программировании контроллера ПДП обеспечивается его настройка на определённый тип передачи, задаются адреса памяти и размер передаваемого массива данных. Запрограммированная передача в режиме ПДП инициируется по запросу контроллера ПДП и реализуется параллельно с выполнением процессором своих программ. При использовании контроллера ПДП раздельные шины доступа к ОЗУ обычно не применяются. В случае отсутствия запроса от контроллера ПДП системной шиной управляет процессор, осуществляющий обмен данными обычным образом. При поступлении запроса управление шиной передаётся контроллеру ПДП, который формирует все необходимые для передачи данных сигналы управления и обеспечивает требуемый обмен. При этом центральный процессор отключается от системной шины.
В большинстве архитектур современных ВМ предусмотрен очень похожий на ПДП режим, который называется захватом шины или прямым управлением шиной. Переход в такой режим начинается по запросу от ПУ, и управление шиной получает контроллер этого ПУ, который берёт на себя полную ответственность за обмен. Обмен может осуществляться не только между ПУ и памятью, но и между двумя ПУ.
Система шин вычислительной машины позволяет любому (даже новому) компоненту взаимодействовать с любым другим устройством (компонентом). Рассмотрим способы подключения внешних ПУ к ВМ.
Читайте также: