русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

многопрограммные; прерывания.


Дата добавления: 2015-09-15; просмотров: 1291; Нарушение авторских прав


 

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

Организация микроЭВМ на базе типовых микро­процессорных комплектов определяется принципами формирования МПК, организацией системы памяти, системы ввода - вывода, системы прерываний, системы команд, архи­тектурными особенностями микропроцессора и неко­торыми характеристиками БИС МПК. Однако основ­ное влияние на организацию микроЭВМ оказывают способы реализации передачи данных и адресов меж­ду микропроцессором и другими компонентами микро­ЭВМ. С этой точки зрения различают два способа ор­ганизации микроЭВМ:

- с раздельными шинами данных и адреса;

- с мультиплексированной шиной данных и ад­реса.

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

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

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

Все элементы МПУ соединены между собой шинами. Шина - совокупность проводников, предназначенных для перемещения данных и сигналов между различными устройствами ВМ.

На рис. 7.1 приведена типовая структу­ра микроЭВМ, реализованной на базе микропроцес­сорного комплекта. В качестве примера здесь показаны шестнадцатиразрядная шина адреса (ША) и 8-разрядная шина данных (ШД) и управления, которые образуют интерфейс между микропро­цессором (МП), с одной стороны, и ПЗУ, ОЗУ и интер­фейсными устройствами ввода - вывода (ИУВВ) - с другой. Выделение отдельных шин для всех управля­ющих сигналов, адресной информации и данных упрощает организацию обмена информацией между отдельными компонентами и уменьшает время вы­полнения команд в микроЭВМ. Генератор тактовых импульсов (ГТИ) формирует сигналы, необходимые для работы МП.



Архитектура, представленная на рис.7.1, различает два типа полупроводниковой памяти, используемой системой. Постоянное запоминающее устройство ПЗУ представляет собой постоянную память, которая содержит программу-монитор системы. Оно содержит адресные входы, а также входы активизации только чтения и выбора кристалла, а также тристабильные выходы, подсоединяемые на шины. ПЗУ имеет также подсоединение питания, кото­рое на схемах обычно не показывается. ОЗУ - устройство временного размещения данных, в которое входят адресные входы, а также входы выбора кристалла и активизации чтения/записи. Это ОЗУ имеет восемь выходов с тремя со­стояниями, подсоединенных к шине данных.

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

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

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

Некоторую специфику имеет организация микро­ЭВМ на базе МПК с микропрограммированием и сек­ционным выполнением микропроцессора (на рис. 7.2 показана одна секция микропроцессорного комплекта). Использование таких микропроцессорных комплектов позволяет наращивать разрядность микро­ЭВМ за счет «параллельного» включения элементов комплекта, обеспечивает широкие возможности мо­дификации структуры микроЭВМ в соответствии с требованиями конкретного применения. Такие микропрограммируемые микроЭВМ, как правило, требуют разработки двухуровневого управления - микропро­граммного и программного. Это позволяет иметь про­извольную систему команд, однако усложняет микро­ЭВМ.

Рис. 7.1 Структура микроЭВМ с раздельными шинами данных и адреса Рис. 7.2 Структура микроЭВМ с мультиплексирован­ной шиной данных и адреса  

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

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

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

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

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

 

Однопрограммные и многопрограммные режимы

 

Вычислительные машины могут выполнять обработку информации в разных ре­жимах (рис. 7.3):

- однопрограммном (монопольном) режиме;

- многопрограммном режиме, который можно подразделить на следующие:

- режим пакетной обработки информации;

- режим разделения машинного времени.

Последний, в свою очередь, имеет разновидности:

- диалоговый режим;

- режим реального времени.

 

Рис.7.3 Классификация режимов работы ЭВМ

 

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

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

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

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

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

Простейшим вариантом многопрограммного режима является режим пакетной обработки. Он в максимальной степени обеспечивает загрузку всех ресурсов ма­шины, но наименее удобен пользователю. В классических системах пакетной об­работки информации все подлежащие решению задачи анализировались и объеди­нялись в различные группы (пакеты) с тем, чтобы в пределах пакета обеспечивалась равномерная загрузка всех устройств машины. Например, задача, связанная с дли­тельным выводом информации на печать, объединялась с задачей, интенсивно ис­пользующей внешнюю память, и с задачей, требующей сложных вычислений в про­цессоре и т.п. После формирования всех пакетов они по очереди запускались на обработку. Пользователь в этом режиме обращался к машине два раза: первый раз для ввода задания, второй раз для получения результатов - по современной тер­минологии такой режим относится к режимам группы «off-line».

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

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

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

Режим реального времени - еще один вариант режима с разделением машинного времени. Этот режим используется в основном в динамических системах управления и диагностики, когда строго регламентируется время ответа системы (выпол­нения задания) на случайно поступающие запросы. Все режимы разделения машинного времени обеспечивают пользователю работу в режиме «on-line».

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

 

Особенности организации системы прерываний программ в ПК

 

Важнейшая роль в реализации сложных режимов работы лежит на системе пре­рывания программ.

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

Видов (номеров) прерывания в ПК может быть всего 256, и, соответственно, векторов прерывания (адресов CS:IP программ обработки прерываний) в ОП может находиться до 256.

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

Модуль обработки прерываний DOS обслуживает в основном планируемые прерывания, в том числе и прерывания системы ввода-вывода. Прерывания DOS час­то называют прерываниями верхнего уровня, так как, с одной стороны, в этих пре­рываниях меньше учитываются технические особенности элементов ПК, с другой стороны, при обработке этих прерываний часто имеют место обращения к про­граммам прерываний системы BIOS. Большинство прерываний BIOS имеют близ­кие аналоги среди прерываний DOS.

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

Для приема внешних прерываний имеются порты двух типов: NMI (None Masked Interrupt) - для приема немаскируемых прерываний и INTR (Interrupt) - для при­ема прочих прерываний (INTR обычно используется для подсоединения контрол­лера прерываний). Если запрос на прерывание поступает по входу NMI, то преры­вание не маскируется (имеет абсолютный приоритет) и сразу выполняется; по входу INTR прерывание разрешается, если в регистре флагов МПП флаг IF = 1.

Всего предусмотрено 256 типов (0-255) прерываний. Из них только первые 5 же­стко закреплены в МП, остальные используются системами BIOS и DOS.

- тип 0 - прерывание возникает при делении на 0 или если частное от деления переполняет разрядную сетку МП;

- тип 1 - в режиме «трассировка» (при TF =1) после выполнения каждой команды программы происходит останов;

- тип 2 - немаскируемое техническое прерывание;

- тип 3 - прерывание по команде INT, включенной в программу: останов и ото­бражение содержимого регистров МПП;

- тип 4 - прерывание по команде INTO, включенной в программу, но только если при выполнении предыдущей команды произошло переполнение разряд­ной сетки;

- типы 8-15 - аппаратные прерывания, инициируемые внешними устройства­ми, поступают на входы IRQ0-IRQ7 контроллера прерываний (вход IRQ0 име­ет высший приоритет, и прерывание, поступившее по этому входу, обрабатыва­ется первым; всего уровней приоритета 8 и вход IRQ7 имеет низший приоритет);

- типы 16-31 - планируемые программные прерывания BIOS;

- типы 32-255 - программные прерывания DOS (жестко задействовано около 10, а вообще в разных версиях DOS их разное количество).

 

Рис. 7.4 Организация приема запросов на прерывания

 

Прерывания с 0 по 31 и прерывание 64 относятся к прерываниям нижнего уровня, обслуживаемым BIOS; прерывания, начиная с 32 - прерывания верхнего уровня (за исключением прерывания 64); причем прерывание 33 (21Н) - это комплекс­ное, чаще всего используемое в программах пользователя прерывание, имеющее около 100 разновидностей (служебных функций DOS).

В некоторых типах прерываний BIOS и DOS имеется много разновидностей, иногда более 10. Так, прерывание 10 (АН) имеет 15 разновидностей, прерывание 33 (21Н) - около 100 разновидностей: в DOS 1.0 - 47, в DOS 2.0 - 88, в DOS 3.0 и выше -99 разновидностей (вид работы в рамках каждого прерывания определяется со­держимым регистра АН).

 

45. Основная функция устройства управления, входящего в микропроцессор?

1. управление выполнением операций и выборка команд программы

2. управление вычислением и выдача результатов

3. управление регистром данных

4. управление счетчиками

5. управление триггерами

 

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

1. 5

2. 3

3. 10

4. 2

5. 4

 

47. Современная микропроцессорная система имеет упорядоченную многоуровневую иерархическую структуру. Что включает в себя второй уровень этой структуры:

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

2. на данном уровне находятся конструктивно неделимые элементы: интегральные схемы, транзисторы, резисторы и т.п.

3. данный уровень образуется объединением нескольких десятков элементов на печатной плате, в результате получается блок элементов

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

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

 

48. Современная микропроцессорная система имеет упорядоченную многоуровневую иерархическую структуру. Что представляет собой третий уровень этой структуры:

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

2. на данном уровне находятся конструктивно неделимые элементы: интегральные схемы, транзисторы, резисторы и т.п.

3. данный уровень образуется объединением нескольких десятков элементов на печатной плате, в результате получается блок элементов

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

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

 


[1] От Stack Pointer (англ.) — указатель стека.



<== предыдущая лекция | следующая лекция ==>
Цифровые автоматы | Кинематический расчет привода.


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.008 сек.