![]() |
Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Архитектура информационных систем иСтр 1 из 35Следующая ⇒
АРХИТЕКТУРА ИНФОРМАЦИОННЫХ СИСТЕМ
Конспект лекций для студентов, обучающихся по направлению 09.03.02 “Информационные системы и технологии” очной и заочной форм обучения
Севастополь Чернега В.С. Архитектура информационных систем: Конспект лекций.— Севастополь: СевНТУ, 2015. — 161 с.
В конспекте лекций излагаются особенности архитектуры информационных систем, а также основные элементы архитектуры компьютерных систем, форматы машинных слов и команд, архитектура универсальных процессоров и функциональных узлов компьютеров, способы организации и построения памяти ЭВМ. Рассматриваются особенности работы процессоров в защищенном режиме, способы управления памятью и мультипрограммный режим. Освещаются особенности архитектуры 32-х и 64-разрядных и многоядерных процессоры. В последующих разделах излагаются принципы и особенности построения персональных ЭВМ, характеристика системного блока и функциональных модулей, видео- и аудиосистемы компьютеров, интерфейсы и функционирование ЭВМ.
© Чернега Виктор Степанович, 2015 г. Содержание
Архитектура информационных систем и Переходная архитектура информационныхьсистем
Использование хранимых процедур и вычисление данных на стороне сервера сокращают трафик и увеличивают безопасность, однако на клиентском компьютере все равно реализуется часть бизнес-логики. Такая организация информационной системы похожа на организацию первых информационных систем с той лишь разницей, что на пользовательском месте стоит не терминал, а персональный компьютер, обеспечивающий графический интерфейс пользователя, например, в последнее время в качестве клиентских программ часто применяют стандартные 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. В ее состав входят следующие функциональные узлы.
Аккумулятор – это регистр, в котором содержится операнд, подлежащий обработке в АЛУ. Его можно считать основным рабочим регистром, в котором записываются данные из памяти и результаты операций, заносимых обратно в память или в устройство ввода-вывода. Например, в соответствии с заданной командой в АЛУ подается команда выполнения операции сложения содержимого аккумулятора и другого регистра и записи полученной суммы в Ak. Счетчик команд (СК). Команды, образующие программу, хранятся в памяти программы в определенной последовательности. В счетчике команды содержится адрес выполняемой в текущий момент команды. Обычно в процессе выполнения команд содержимое СК увеличивается на единицу. Однако в зависимости от вводимых данных либо от результатов выполнения операций может возникнуть необходимость изменения последовательности порядка выполнения команд. Для этого необходим переход к новому адресу команды. С этой целью в СК непосредственно записывается адрес команды, к которой необходим переход. Для того чтобы затем была возможность обратного перехода в последовательности прежде выполнявшихся команд, необходимо запомнить адрес, предшествовавший переходу на новую последовательность команд. Этот адрес сохраняется в регистре стека. Стек. Стек – это набор регистров или ячеек оперативной памяти, в котором данные или адреса выбираются “сверху” по принципу: “первый – поступивший последним”. При записи в стек очередного слова все ранее записанные слова смещаются на один регистр “вниз”. Например, если идет запись в последовательности A1, A2, A3, A4, то при считывании информация появляется в обратном порядке A4, A3, A2, A1. Т.е. нельзя извлечь раньше A2, чем A3 и т.п. Стек обычно используется в МП для хранения адресов возврата при обращении к подпрограммам, а также для запоминания состояния внутренних регистров при обработке прерываний. Важным параметром является число регистров стека (информационная емкость). При попытке записать в стек большее число слов, чем имеющаяся информационная емкость первое слово будет утеряно. Т.е. происходит переполнение стека. Для указания адреса последнего записанного в стек адреса применяется указатель стека (УС), являющийся специальным регистром. Регистр команд. Команда, принимаемая МП из памяти, хранится в регистре команд (РК). Длина (формат) команды (т.е. число разрядов) зависит от типа МП. Простые МП имеют 8-разрядный код операции. Таким образом, всего может быть образовано 28=256 различных команд. Для практических целей такое общее число команд более чем достаточно. Несмотря на это, многие МП имеют переменную длину команды, состоящую из одного, двух или трех байтов. С помощью таких команд осуществляется не только идентификация требуемой операции, но и задание кода одного или более адресатов для выбора данных и записи результата. Дешифратор команд (ДШК) предназначен для определения операции, которую должен выполнить МП. Сигналы, образующиеся на выходах ДШ, управляют передачей информации между отдельными блоками и задают функции, выполняемые этими блоками. Как правило, команды делятся на группы, причем в каждой из групп выполняются аналогичные операции. Эти группы команд, например, “Передача данных”, “Арифметические операции”, “Логические операции” и т.д. различаются по четырем старшим разрядам КОП. Такая группировка значительно упрощает декодирование команд. Регистры общего назначения (РОН) – сверхоперативная память. Эти регистры применяются в качестве временного запоминающего устройства для различной информации (адресов и данных), которую можно извлечь просто и с большей скоростью, чем из ОЗУ. Поэтому блок памяти РОН называют сверхоперативной памятью. Обращение к РОН – адресное. Эти регистры допускают считывание и запись информации, в связи с чем содержат входную и выходную шины, адресную шину и управляющие входы, информация на которых задает режим работы регистра: запись, чтение или хранение. Арифметико-логическое устройство – (АЛУ) входит в состав всех процессоров, хотя его принципиальная схема, функции, быстродействие и т.д. могут быть существенно различными. АЛУ, как составная часть МП, должно выполнять по крайней мере следующие операции: - сложение с переносом; - вычитание с переносом (заемом); - сдвиг влево и вправо; - счет в прямом и обратном направлении; - логическое умножение и сложение (И, ИЛИ); - сравнение кодов. Более сложные АЛУ могут выполнять и другие функции. Схемы синхронизации и управления – (ССУ) совместно с ДШК называют устройством управления. Устройство управления расшифровывает поступающую команду и в соответствии с ней вырабатывает необходимую последовательность сигналов, управляющих работой всех остальных блоков МП. Следует заметить, что последовательность управляющих сигналов зависит также от характеристик промежуточных состояний (вычислений) и наличия дополнительных сигналов (прерывание, запрос и т.д). В состав микропроцессора входиттакже регистр состояния, не показанный на схеме. Он состоит из одного или нескольких триггеров, называемых “флажками”. Эти триггеры предназначены для хранения информации о состоянии МП и индикации этого состояния. Например, индикация нулевого содержимого аккумулятора, признак наличия единицы переноса при выполнении арифметических операций, знака содержимого аккумулятора и т.д. Данный регистр состояния обеспечивает возможность интерпретации результатов, полученных при вычислениях, и часто используется для реализации условных переходов.
Команды передачи данных. С помощью таких команд можно осуществить передачу данных от одного из регистров А, В, С, D, E, H и L к одному из регистров А, В, С, D, E, H и L. Кроме того, можно выбрать ячейку памяти М (1байт) микропроцессора, адресуясь к ней, как к одному из регистров. При этом для адресации памяти используется содержимое регистровой пары HL. Есть еще одна возможность задать содержимое регистров: загрузить непосредственный операнд в выбранный регистр. Эти команды, однако, не позволяют выполнять запоминание в обратном направлении (не существует команд, по которым содержимое регистра могло бы быть помещено в поле операндов команды). Формат команд:
При этом r1 определяет регистр или ячейку памяти, в которую производится запись, а r2 – регистр или ячейку памяти, из которых извлекается число или непосредственный операнд. Если r1=r2 то команда является пустой. Вместо этой команды можно использовать команду NOP. Пустая команда ни при каких обстоятельствах не изменяет содержимого регистров, памяти и состояния МП.
По этой команде число, расположенное в поле операндов, заносится в регистр 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
ë знаковый бит. Как при сложении, так и при вычитании операнды в пределах от 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
< 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 команд.
Таблица 4.1- Таблица управляющих сигналов БИС КР580ВВ55
Режим 1 обеспечивает возможность организации однонаправленной асинхронной передачи информации между МП и внешними устройствами, при этом каналы А и В используются как регистры данных, а канал С – для приема и формирования сигналов, сопровождающих асинхронный обмен (в качестве устройства, осуществляющего анализ готовности внешних устройств и МП к обмену и стробирование данных в регистры каналов А и В). Для этого в состав канала С входят два триггера разрешения готовности, допускающие установку и сброс программным способом, а также ряд логических схем для асинхронной записи информации в регистры А и В. Особенностью канала С является то, что каждый из разрядов этого канала может быть независимо от остальных установлен в 1 или в 0. Это позволяет использовать канал С для хранения управляющего слова (состояния внешнего устройства) при организации программно-управляемого обмена. Фрагмент процедуры программирования БИС КР580ВВ55 на языке ассемблера и в машинных кодах имеет вид:
Рассмотрим реализацию процедуры асинхронного обмена между МП и внешним устройством с помощью БИС 580ВВ55, работающей в режиме 1 (стробируемый однонаправленный). Пусть производится ввод информации через канал А. В момент готовности внешнего устройства к вводу информации в МП оно формирует сигнал СТР1 (стробирование) низкого уровня. Временная диаграмма этой процедуры изображена на рисунке 4.7.
Программируемый таймер
Программируемый таймер(БИС Intel 8254, отечественный аналогК1810ВИ54)предназначен для формирования импульсных последовательностей определенных частот. Программируемый таймер (ПТ), используемый в ПЭВМ IBM PC, содержит 3 канала и служит для: § задания импульсной последовательности для контроллера ПДП для регенерации динамического ОЗУ; § формирования импульсной последовательности с частотой 18.2 Гц для часов реального времени; § формирования колебаний звуковой частоты для управления динамиком. Программируемый таймер К1810ВИ54 (рисунок 4.12) содержит 3 независимых канала, каждый из которых может быть запрограммирован на работу в одном из шести режимов для двоичного или десятичного счета. Он работает с задающей частотой до 8 МГц. Он Каждый канал таймера включает: 1) 16–разрядный счетчик/таймер СЕ, работающий в режиме вычитания. Изменение состояния счетчика происходит по спаду сигнала CLK при GATA = 1; 2) 16–разрядный буферный регистр, служащий для запоминания и хранения мгновенного значения счетчика СЕ, которое в любой момент может быть записано по команде «защелка» или «чтение состояния канала». После выполнения этих команд содержимое буферного регистра может быть прочитано ЦП без остановки дальнейшего счета в регистре СЕ; 3) 4) 8–разрядный регистр управляющего слова RSW. Содержимое управляющего слова позволяет запрограммировать каждый канал в отдельности (указывается номер канала, вид операции: ЧТ, ЗП младшего или старшего байта, тип режима, вид счета (двоичный или двоично-десятичный)). 5) 8–разрядный регистр состояния канала RS, содержимое которого можно считывать в ЦП с помощью команды «чтение состояния канала» (D7=D6=1 в управляющем слове). Слово состояния (D7, D6) показывает, произошла ли загрузка в регистр констант CR, либо состояние выхода канала OUT.
Назначение выводов микросхемы следующее:
Счетчики могут работать в пяти режимах: Популярное:
|
Последнее изменение этой страницы: 2017-03-11; Просмотров: 1081; Нарушение авторского права страницы