Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология
Образование Политология Производство Психология Стандартизация Технологии


Архитектура информационных систем и



АРХИТЕКТУРА

ИНФОРМАЦИОННЫХ СИСТЕМ

 

 

Конспект лекций

для студентов, обучающихся по направлению

09.03.02 “Информационные системы и технологии”

очной и заочной форм обучения

 

Севастополь


Чернега В.С. Архитектура информационных систем: Конспект лекций.— Севастополь: СевНТУ, 2015. — 161 с.

 

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

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

 

 

© Чернега Виктор Степанович, 2015 г.


Содержание

 

     
1. Архитектура информационных систем
1.1. Классификация информационных систем
1.2. Обобщенная многоуровневая архитектура ИС
1.3. Двухуровневая файл-серверная архитектура ИС
1.4. Клиент-серверная двухуровневая архитектура ИС
1.5. Переходная архитектура информационных систем
1.6. Трехуровневая клиент-серверная архитектура
1.7. Архитектура распределенных информационных систем и Web-приложений
     
2. Архитектура и функционирование серверных и клиентских компьютеров
2.1. Обобщенная структурная схема компьютера
2.2. Неймановская и гарвардская архитектуры компьютеров.
2.3. Форматы машинных слов и система команд ЭВМ
2.4. CISC- и RISC-процессоры
     
3. Архитектура универсальных процессоров информационных систем
3.1. Архитектура однокристального микропроцессора
3.2. Структурная схема 8-разрядного однокристального МП
3.3. Функционирование и временные диаграммы микропроцессора
3.4. Слово состояния цикла процессора и его использование
3.5. Система команд 8-разрядного микропроцессора
3.6. Программирование арифметических и логических операций
3.7. Программирование операций ввода/вывода данных
     
4. Функциональные узлы информационных систем
4.1. Шинные формирователи и буферные регистры
4.2. Программируемый параллельный интерфейс
4.3. Программируемый последовательный интерфейс
4.4. Программируемый контролер прерываний
4.5. Программируемый контроллер прямого доступа в память
4.6. Программируемый таймер
4.7. Подключение клавиатуры и устройств индикации к микро-ЭВМ
     
5. Запоминающие устройства информационных систем
5.1. Иерархическая организация памяти компьютера
5.2. Основные характеристики полупроводниковых ЗУ
5.3. Статические ОЗУ с произвольным доступом
5.4. ОЗУ динамического типа
5.5. Постоянные и перепрограммируемые постоянные запоминающие устройства
5.6. Кэш-память и ее организация
     
6. Архитектура 16-разрядных процессоров
6.1. Линейная и сегментная адресация ячеек памяти
6.2. Сегментация памяти и вычисление адресов
6.3. Архитектура 16-разрядного процессора первого поколения
6.4. Регистры процессора Intel 8086
6.5. Система команд 16-разрядного процессора 8086
6.6. Способы адресации памяти и устройств ввода/вывода
6.7. Структура и функционирование 16-разрядной микро-ЭВМ
6.8. Защита памяти в процессорах второго и последующих поколений
6.9. Поддержка многозадачности и виртуальной памяти
6.10. Архитектура 16-разрядного процессора второго поколения
6.11. Особенности программирования задач на языке Ассемблера. Директивы ассемблера
6.12. Оформление и размещение в памяти ассемблерных программ
     
7. Параллельные вычислительные системы. Суперкомпьютеры
7.1. Типы параллельных вычислительных систем
7.2. Системы с общей памятью
7.3. Системы с распределённой памятью
7.4. Гибридные системы
7.5. Суперкомпьютеры
     
8. Архитектура 32-разрядных процессоров
8.1. Структурная схема и регистры процессоров
8.2. Страничная организация памяти
8.3. Суперскалярные и мультискалярные микропроцессоры
8.4. Архитектура суперскалярных процессоров типа Pentium
     
9. Архитектура 64-разрядных и многоядерных процессоров
9.1. Общая характеристика 64-разрядных процессоров
9.2. Процессор Athlon 64
9.3. Многоядерные процессоры Athlon 64 и Pentium D9xx
9.4. Многоядерные процессоры SPARC
     
10. Архитектура клиентских и серверных компьютеров
10.1. Обобщенная структурная схема компьютера
10.2. Клавиатура ПЭВМ и ее взаимодействие с процессором
10.3. Видеосистема компьютера
10.4. Последовательный и параллельный интерфейсы компьютера
10.5. Универсальный интерфейс USB
10.6. Мультимедийный интерфейс высокого разрешения
10.7. Аудиосистема компьютера
10.8. Системные платы компьютера
     
  Список рекомендованной литературы
     

Архитектура информационных систем и

Переходная архитектура информационныхьсистем

 

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

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

В отличие от 2-х уровневой архитектуры 2.5-уровневая архитектура обычно не требует наличия высокоскоростных каналов связи между клиентской и серверной частями системы, так как по сети передаются уже готовые результаты вычислений - почти все вычисления производятся на серверной стороне. Существенно улучшается также и защита информации - пользователям даются права на доступ к функциям системы, а не на доступ к ее данным и т.д. Однако архитектура 2.5 имеет недостатки, характерные для первых ИС: ограниченную масштабируемость, зависимость от программной платформы, ограниченное использование сетевых вычислительных ресурсов. Кроме того программы для серверной части системы пишутся на встроенных в СУБД языках описания хранимых процедур, предназначенных для валидации данных и построения несложных отчетов, а вовсе не для написания ИС масштаба предприятия. Все это снижает быстродействие системы, повышает трудоемкость создания с модификации ИС и самым негативным образом сказывается на стоимости аппаратных средств, необходимых для ее функционирования.

 

 

Архитектура и функционирование серверных и клиентских компьютеров

 

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

В настоящее время наибольшее распространение в ЭВМ получили 2 типа архитектуры: Неймановская и Гарвардская. Неймановская архитектура компьютера основывается на следующих принципах.

Принцип однородности памяти.

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

CISC- и RISC-процессоры

 

По системе команд и архитектуре различают 2 вида процессоров (компьютеров):

1) с полным набором инструкций — CISC (Complete Instruction Set Computer);

2) с сокращенной системой команд — RISC (Reduced Instruction Set).

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

Стратегия CISC-архитектуры формировалась в большой степени по желанию программистов иметь в своем распоряжении как можно больший набор команд для упрощения программирования. За первое десятилетие компьютерной эры список команд ЭВМ расширился от нескольких десятков до нескольких сотен.

Для CISC-процессоров характерны следующие признаки:

1) небольшое число регистров общего назначения;

2) большое количество машинных команд;

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

4) большое количество способов адресации,

5) большое количество форматов команд различной разрядности;

6) преобладание двухадресного формата команд;

7) наличие команд обработки типа регистр-память.

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

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

1) любая операция должна выполняться за один такт;

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

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

В дальнейшем эти требования были несколько смягчены. Выполнение команды за один такт стало трактоваться как загрузка конвейера команд в темпе " команда за такт". Набор команд современных RISC-процессоров возрос и содержит до 150 команд и более.

Незыблемым для архитектуры RISC остается только требование: обработка данных ведется только командами в формате регистр-регистр.

Для архитектуры характерны следующие признаки:

1) наличие внутри процессора достаточно большого файла регистров общего назначения (32 и более регистров);

2) использование для обработки информации трехадресных регистровых команд;

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

Использование в программе только простых команд в формате регистр-регистр позволяет увеличить скорость выполнения большинства вычислительных задач в 2-3 раза. В процессе научных исследований было установлено, что в 80% кода программ содержится около 20% простейших команд, а удаление из системы команд сложных операций позволяет уменьшить объём аппаратуры процессора примерно в 10 раз без ощутимого снижения быстродействия. Поэтому в основе современных высокопроизводительных ЭВМ заложена архитектура RISC.

 


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

   
Рисунок 3.1 – Обобщенная структурная схема однокристального микропроцессора  

Аккумулятор – это регистр, в котором содержится операнд, подлежащий обработке в АЛУ. Его можно считать основным рабочим регистром, в котором записываются данные из памяти и результаты операций, заносимых обратно в память или в устройство ввода-вывода. Например, в соответствии с заданной командой в АЛУ подается команда выполнения операции сложения содержимого аккумулятора и другого регистра и записи полученной суммы в Ak.

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

Стек. Стек – это набор регистров или ячеек оперативной памяти, в котором данные или адреса выбираются “сверху” по принципу: “первый – поступивший последним”. При записи в стек очередного слова все ранее записанные слова смещаются на один регистр “вниз”. Например, если идет запись в последовательности A1, A2, A3, A4, то при считывании информация появляется в обратном порядке A4, A3, A2, A1. Т.е. нельзя извлечь раньше A2, чем A3 и т.п. Стек обычно используется в МП для хранения адресов возврата при обращении к подпрограммам, а также для запоминания состояния внутренних регистров при обработке прерываний. Важным параметром является число регистров стека (информационная емкость). При попытке записать в стек большее число слов, чем имеющаяся информационная емкость первое слово будет утеряно. Т.е. происходит переполнение стека. Для указания адреса последнего записанного в стек адреса применяется указатель стека (УС), являющийся специальным регистром.

Регистр команд. Команда, принимаемая МП из памяти, хранится в регистре команд (РК). Длина (формат) команды (т.е. число разрядов) зависит от типа МП. Простые МП имеют 8-разрядный код операции. Таким образом, всего может быть образовано 28=256 различных команд. Для практических целей такое общее число команд более чем достаточно. Несмотря на это, многие МП имеют переменную длину команды, состоящую из одного, двух или трех байтов. С помощью таких команд осуществляется не только идентификация требуемой операции, но и задание кода одного или более адресатов для выбора данных и записи результата.

Дешифратор команд (ДШК) предназначен для определения операции, которую должен выполнить МП. Сигналы, образующиеся на выходах ДШ, управляют передачей информации между отдельными блоками и задают функции, выполняемые этими блоками. Как правило, команды делятся на группы, причем в каждой из групп выполняются аналогичные операции. Эти группы команд, например, “Передача данных”, “Арифметические операции”, “Логические операции” и т.д. различаются по четырем старшим разрядам КОП. Такая группировка значительно упрощает декодирование команд.

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

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

- сложение с переносом;

- вычитание с переносом (заемом);

- сдвиг влево и вправо;

- счет в прямом и обратном направлении;

- логическое умножение и сложение (И, ИЛИ);

- сравнение кодов.

Более сложные АЛУ могут выполнять и другие функции.

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

 

Команды передачи данных.

С помощью таких команд можно осуществить передачу данных от одного из регистров А, В, С, D, E, H и L к одному из регистров А, В, С, D, E, H и L. Кроме того, можно выбрать ячейку памяти М (1байт) микропроцессора, адресуясь к ней, как к одному из регистров. При этом для адресации памяти используется содержимое регистровой пары HL.

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

Формат команд:

 

(Метка: ) MOV r1, r2 ; Комментарий r1 = A, B, C, D, E, H, L, M r2 = A, B, C, D, E, H, L, M.   Move data – передать данные

При этом r1 определяет регистр или ячейку памяти, в которую производится запись, а r2 – регистр или ячейку памяти, из которых извлекается число или непосредственный операнд.

Если r1=r2 то команда является пустой. Вместо этой команды можно использовать команду NOP. Пустая команда ни при каких обстоятельствах не изменяет содержимого регистров, памяти и состояния МП.

 

(Метка: ) MVI r, число; Комментари) r = A, B, C, D, E, H, L, M Move immediate data - Передать непосредственный операнд.

По этой команде число, расположенное в поле операндов, заносится в регистр r.

 

Примеры:

M1: MOV A, B; < B> ®< A>

M2: MOV M, A; < A> ®< M> или < A> ®< < HL> >

MOV B, M; < M> ®< B> или < < HL> > ®< B >.

MVI M, 12Q; 12Q®< M> или 12Q® < < HL> >.

Q – обозначает, что число в восьмеричной системе.

 

Пример: Передать содержимое ячейки 9В 73Н в регистр А; содержимое регистров Н и L не определено.

Выполнение:

MVI Н, 9ВН; < 9B> ® H

MVI L, 73Н; < 73> ®L

MОV А, М; Выборка из памяти < HL>.

 

Команды регистровых операций

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

r = B, C, D, E, H, L.

Данные команды изменяют Z-, P- и S–биты состояния, хотя регистр А не участвует в операциях. Благодаря этому можно использовать названные регистры для организации программных циклов. Формат команд имеет следующий вид:

 

(Метка: ) INR r; Увеличить содержимое регистра на единицу (Increment register)

Пример:

INR C; < C> + 1 ® < C>

DCR r; Уменьшить содержимое регистра на 1 (Decrement register)

Для загрузки аккумулятора А содержимым ячейки памяти используются команды LDAX B и LDAX D.

LDAX B; Загрузить Акк. Содержимым ячейки памяти, адрес

; которой находится в регистровой паре В, С (Load Akkumulator)

 

LDAX D; < < D, E> > ® A. Обе эти команды однобайтные.

Команда LDA адрес загружает в Акк. Содержимое ячейки памяти, адресуемой вторым и третьим байтами команды.

[< B3> < B2> ] ® A.

Команда запоминания STA адрес производит противоположную передачу:

A ® [< B3> < B2> ].

 

Команды работы со стеком.

PUSH rp (rp = B, C; D, E; H, L, PSW) -Запоминание значения регистров в стеке. При выполнении команды содержимое пары регистров запоминается в стеке. Одной из пар регистров является слово состояния процессора PSW, которое состоит из содержимого аккумулятора (старший байт) и регистра состояния (младший байт). Нет такой команды, при выполнении которой запомнится в стеке только один регистр.

Пример:

PUSH B. При выполнении этой команды < B, C>, запоминается в вершине стека, а указатель стека уменьшается на 2. < B> запоминается первым, потом < C> заканчивает стек в его вершине.

POP rp (rp = B, C; D, E; H, L, PSW)- Загрузка регистров из стека. По этой команде пара регистров rp загружается содержимым вершины стека.

Пример: POP D. Эта команда загружает регистры D и E из вершины стека и увеличивает указатель стека на 2. Регистр Е загружается первым.

Стек имеет следующие особенности:

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

§ данные запоминаются в стеке с использованием предуменьшения, то есть команды уменьшают указатель стека на 1 перед запоминанием каждого байта;

§ данные загружаются из стека с использованием послеувеличения, то есть команды увеличивают указатель стека 1 после загрузки каждого байта;

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

SPHL - Загрузка указателя стека (sp) – однобайтная команда.

< H> ® < < SP> +1>; < L> ® < < SP> >.

 

PCHL - Загрузка программного счетчика PC.

< H, L> ® < PC>.

 

 

3.6. Программирование арифметических и логических операций.

 

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

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

Дополнительный код А*=> .

Например, двоичный код числа А=-10: А=0000 1010

А*=1111 0101+0000 0001=1111 0110

ë знаковый бит.

Как при сложении, так и при вычитании операнды в пределах от 0 до 255 интерпретируются как положительные восьмиразрядные числа. При вычитании вычитаемое преобразуется в его дополнительный код и затем суммируется с уменьшаемым. Если суммирование приводит к результату большему 255 (переполнение), то С–бит становится равным единице, в противном случае С=0.

Процессор имеет возможность выполнять операции сложения и вычитания чисел от –127 до +127 т.о., что результат имеет правильный знак. Для представления знака результата арифметической операции используется бит состояния S. Он устанавливается в единицу, если старший бит регистра А[7]=1. В противном случае он сбрасывается.

Примеры арифметических операций 8-разрядных чисел.

 

Сложение: [+] [0] вычитание: [7] [0]

10 0000 1010 -10 0000 1010

8 0000 10008 0000 1000

18 0001 0010 2 0001 0010

< C-бит> =0 < S> =0 < C> =0 < S> =0

 

+10 0000 1010 -10 0000 1010

(-12) 1111 0100 12 1111 0100

-2 0 1111 1110 -2 1111 1110


< C> =0 < S> =1 < C> =1 < S> =1

Команды сдвига.

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

(Метка: ) RLC; Сдвинуть циклически содержимое аккумулятора влево

; Rotate accumulator left

RRC; Сдвинуть циклически содержимое аккумулятора вправо

RAL; Сдвинуть циклически содержимое аккумулятора влево

; через бит переноса

RAR; Сдвинуть циклически содержимое аккумулятора вправо

; через бит переноса

 

Если обозначить разряды в А от A[0] до A[7], то выполняемую операцию можно описать следующим образом:

RLC: A[7] ® < Cб >; A[m] ® A[m+1], m = 0,..., 6; A[7] ® A[0].

RAL: A[7] ® < Cб >; A[m] ® A[m+1], m = 0,..., 6; Cб ® A[0].

 

Схематично четыре операции сдвига можно изобразить следующим образом (рис.3.8).

Рисунок 3.8 – Схема осуществления команд сдвига в аккумуляторе

 

Имеется группа команд условного перехода, выполняемых в зависимости от значения одного из четырех флагов состояния (C, Z, S, P). Если условие перехода выполнено, то осуществляется переход по адресу, указанному в команде. В противном случае выполняется следующая команда. Группу команд условного перехода образуют 8 команд.

 

Метка: JC Адрес ; Перейти, если С бит = 1 Jump if carry
  JNC Адрес ; Перейти, если С бит = 0 Jump if no carry
  JZ Адрес ; Перейти, если Z бит = 1 Jump if zero
  JNZ Адрес ; Перейти, если Z бит = 0 Jump if not zero
  JP Адрес ; Перейти, если S бит = 0 Jump if positive
  JM Адрес ; Перейти, если S бит = 1 Jump if minus
  JPE Адрес ; Перейти, если P бит = 1 Jump if parity even
  JPO Адрес ; Перейти, если P бит = 0 Jump if parity odd

 

Таблица 4.1- Таблица управляющих сигналов БИС КР580ВВ55

 

Сигналы на входах Вид передаваемой информации Направление передачи информации
А0 A1 ЗП ЧТ ВМ
  х   х   х   х     Данные Данные Данные Данные Данные Данные Управляющее слово   А→ ШД[0-7] В→ ШД[0-7] С→ ШД[0-7] ШД[0-7]→ А ШД[0-7]→ В ШД[0-7]→ С ШД[0-7]→ регистр управляющего слова Нет передачи

 

Режимы работы каналов А и В могут быть заданы независимо друг от друга. Канал С делится на две части С [0-3] и С [4-7], режимы работы которых определяются собственно режимами работы каналов А и В, если последние работают в режиме 1 или 2. Если же каналы А и В работают в режиме 0, то каждая половина канала С может работать как отдельный канал в режиме 0. Режим 0 позволяет организовать синхронный обмен информацией между МП и внешними устройствами.

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

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

Фрагмент процедуры программирования БИС КР580ВВ55 на языке ассемблера и в машинных кодах имеет вид:

 

Мнемоника команд Машинный код команд Комментарии
XRA AF ; очистка аккумулятора
MVI A, 80 3E 80 ; запись управляющего слова
OUT 9B D3 9B ; в порт 9В
XRA AF  
LDA 0840 3A 40 08 ; занесение числа из памяти с ; адресом 0840 в аккумулятор
OUT 98 D3 98 ; вывод числа из аккумулятора ; в порт 98

 

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

По переднему фронту этого сигнала осуществляется запись слова данных в канал А. При этом БИС ВВ55 формирует ответный единичный сигнал ППР1 (подтверждение приема). В течение всего времени наличия единицы на выводе ППР1 внешнему устройству запрещается формировать сигнал СТР1 и записывать в канал новое слово данных. По заднему фронту сигнала СТР1 при наличии единицы ППР1 (и единичном состоянии внутреннего триггера ТГТ1) с интерфейса посылается сигнал запроса на прерывание МП – сигнал ГТВ1 (готовность). Получив этот сигнал МП, переходит на соответствующую подпрограмму обслуживания прерываний, в процессе которой осуществляется чтение слова данных из канала А. Для считывания информации с ВВ55 на неё с МП подается импульс ЧТ нулевого уровня. По переднему фронту этого сигнала слово из регистра А передается на шины данных МП. Задним фронтом сигнала ЧТ сбрасывается сигнал ППР1, что свидетельствует об окончании ввода данных в МП и внешнему устройству разрешается формировать новый сигнал СТР1.


Программируемый таймер

 

Программируемый таймер(БИС Intel 8254, отечественный аналогК1810ВИ54)предназначен для формирования импульсных последовательностей определенных частот. Программируемый таймер (ПТ), используемый в ПЭВМ IBM PC, содержит 3 канала и служит для:

§ задания импульсной последовательности для контроллера ПДП для регенерации динамического ОЗУ;

§ формирования импульсной последовательности с частотой 18.2 Гц для часов реального времени;

§ формирования колебаний звуковой частоты для управления динамиком.

Программируемый таймер К1810ВИ54 (рисунок 4.12) содержит 3 независимых канала, каждый из которых может быть запрограммирован на работу в одном из шести режимов для двоичного или десятичного счета. Он работает с задающей частотой до 8 МГц. Он

Каждый канал таймера включает:

1) 16–разрядный счетчик/таймер СЕ, работающий в режиме вычитания. Изменение состояния счетчика происходит по спаду сигнала CLK при GATA = 1;

2) 16–разрядный буферный регистр, служащий для запоминания и хранения мгновенного значения счетчика СЕ, которое в любой момент может быть записано по команде «защелка» или «чтение состояния канала». После выполнения этих команд содержимое буферного регистра может быть прочитано ЦП без остановки дальнейшего счета в регистре СЕ;

3) 16–разрядный регистр констант пересчета CR, служащий для хранения коэффициента пересчета. Содержимое CR копируется в СЕ для счета, в зависимости от запрограммированного режима;

4) 8–разрядный регистр управляющего слова RSW. Содержимое управляющего слова позволяет запрограммировать каждый канал в отдельности (указывается номер канала, вид операции: ЧТ, ЗП младшего или старшего байта, тип режима, вид счета (двоичный или двоично-десятичный)).

5) 8–разрядный регистр состояния канала RS, содержимое которого можно считывать в ЦП с помощью команды «чтение состояния канала» (D7=D6=1 в управляющем слове). Слово состояния (D7, D6) показывает, произошла ли загрузка в регистр констант CR, либо состояние выхода канала OUT.

 

Назначение выводов микросхемы следующее:

A0, A1=00 A0, A1=01 A0, A1=10 A0, A1=11 Адресация канала 0 канал 1 канал 2 управляющее слово или команда  
CLK0 – CLK2 Входы тактовых импульсов. Срез сигнала на входе CLK декрементирует счетчик
GATA0 - GATA2 Входы разрешения счета (вентиль). При GATA=1 разрешается выполнение функции
OUT0 – OUT2 Выходы счетчика/таймера.

 

Счетчики могут работать в пяти режимах:


Поделиться:



Популярное:

  1. I) Получение передаточных функций разомкнутой и замкнутой системы, по возмущению относительно выходной величины, по задающему воздействию относительно рассогласования .
  2. I. Естествознание в системе науки и культуры
  3. I. Логистика как системный инструмент.
  4. I. ПОЧЕМУ СИСТЕМА МАКАРЕНКО НЕ РЕАЛИЗУЕТСЯ
  5. I. РАЗВИТИИ ЛЕКСИЧЕСКОЙ СИСТЕМЫ ЯЗЫКА У ДЕТЕЙ С ОБЩИМ НЕДОРАЗВИТИЕМ РЕЧИ
  6. II. О ФИЛОСОФСКОМ АНАЛИЗЕ СИСТЕМЫ МАКАРЕНКО
  7. II. Система обязательств позднейшего права
  8. II. Соотношение — вначале самопроизвольное, затем систематическое — между положительным мышлением и всеобщим здравым смыслом
  9. V) Построение переходного процесса исходной замкнутой системы и определение ее прямых показателей качества
  10. VI. ОБСЛЕДОВАНИЕ БОЛЬНОГО ПО ОРГАНАМ И СИСТЕМАМ
  11. VIII. Общение и система взаимоотношений
  12. А НЕ О СИСТЕМЕ: КОРОТКАЯ ПОЗИЦИЯ ПО ФУНТУ СТЕРЛИНГОВ, НЕПРЕРЫВНЫЕ ФЬЮЧЕРСЫ


Последнее изменение этой страницы: 2017-03-11; Просмотров: 1007; Нарушение авторского права страницы


lektsia.com 2007 - 2024 год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! (0.126 с.)
Главная | Случайная страница | Обратная связь