Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...
Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...
Топ:
Основы обеспечения единства измерений: Обеспечение единства измерений - деятельность метрологических служб, направленная на достижение...
История развития методов оптимизации: теорема Куна-Таккера, метод Лагранжа, роль выпуклости в оптимизации...
Процедура выполнения команд. Рабочий цикл процессора: Функционирование процессора в основном состоит из повторяющихся рабочих циклов, каждый из которых соответствует...
Интересное:
Лечение прогрессирующих форм рака: Одним из наиболее важных достижений экспериментальной химиотерапии опухолей, начатой в 60-х и реализованной в 70-х годах, является...
Берегоукрепление оползневых склонов: На прибрежных склонах основной причиной развития оползневых процессов является подмыв водами рек естественных склонов...
Мероприятия для защиты от морозного пучения грунтов: Инженерная защита от морозного (криогенного) пучения грунтов необходима для легких малоэтажных зданий и других сооружений...
Дисциплины:
2017-06-02 | 2220 |
5.00
из
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
Определение архитектуры ЭВМ
Архитектурой ЭВМ принято считать совокупность принципов системной,функциональной, логической и физической организации аппаратных и программных средств ЭВМ.
В этом, достаточно четком определении есть общеупотребительное слово "ЭВМ". Определяя ЭВМ как цифровую вычислительную машину дискретного действия (полное имя ее ЭЦВМ) следует помнить, что буква Э служила для исключения от рассмотрения класса ЦВМ, сконструированных на механических (машина Бэббиджа) и электромеханических (Марк-1) "элементах".Только совокупность электронных триггеров, выполненных на радиолампах и транзисторах, давала право на "Э".
Усложнение периферии ЭВМ и появление многопроцессорных систем породили осторожный термин "вычислительные системы", "платформы", "вычислительные среды" и т.д. Вероятно, в настоящее время, интуитивное понятие ЭВМ наиболее полное - это ЦВМ, выполненная как единый конструктив.
С другой стороны, в понятие ЭВМ можно включить и специализированный микропроцессор управления "рукой" робота, и персональный компьютер, и суперкомпьютер, который, как элемент сети может именоваться также майнфреймом. Общим при этом является функциональное назначение ЭВМ - обеспечение потребностей прикладной системной области. Рассматривается при этом использование ЭВМ, в основном, как универсальные вычислительные системы (платформы).
Классификация ЭВМ по областям применения
По идеологии открытых систем, все вычислительные платформы должны удовлетворять любые запросы пользователей. Но реализация общего ядра для всех приложений, как и всякая универсализация, ведет к большим накладным расходам. Пользователей интересует не только интерфейс с системой, но время ответа и стоимость услуги.
|
Вычислительные платформы, как комплекс программно-аппаратного оборудования, операционного и сетевого окружения можно классифицировать по спектру информационных услуг, предоставляемых пользователям.
Грубая классификация пользователей /Л.Н. Королев/ открытых систем и аппаратного оборудования такова:
1. Самым массовым пользователем открытых систем можно считать владельцев ПК, используемых для бытовых нужд, число таких пользователей приближается к сотне миллионов. Современные платформы - ПК таких пользователей предоставляют им доступ к сетям по телефонным каналам. Оборудование - 90% платформы IBM PC (Intei x86) и программное обеспечение, созданное для этой архитектуры.
2. Пользователи, работающие в сфере бизнеса: банковская сфера,маркетинг, складской учет и т.д. Им требуется доступ к более производительной вычислительной технике, к глобальным сетям, требуются услуги по созданию и изменению СУБД и другие средства для разработки своих приложений. Использует ПК, но переходит на рабочие станции, хост-машины, до многопроцессорных супер-ЭВМ.
3. Пользователи этого инженерного класса занимаются разработкой приложений для промышленного производства. Для них характерен доступ к пакетам прикладных программ. Ориентируется на рабочие станции фирм DEC,HP и другие.
4. Пользователи, проводящие научные расчеты. Для этого класса пользователей необходим доступ высокопроизводительным вычислителям. Мощные платформы: Amdal(IBM), Cray(CDC),SPP(HP).
5. Пользователи - студенты, требующие услуги по освоению новых информационных технологий. Высшая школа и университетская наука, главным образом, ориентируется на рабочии станции SUN.
Основные характеристики, области применения ЭВМ различных классов
Понятие архитектуры ЭВМ
Сложность современных вычислительных машин закономерно привела к понятию архитектуры вычислительной машины, охватывающей комплекс общих вопросов ее построения, существенных в первую очередь для пользователя, интересующегося главным образом возможностями машины, а не деталями ее технического исполнения.
|
Круг вопросов, подлежащих рассмотрению при изучении архитектуры ЭВМ, можно условно разделить на вопросы общей структуры, организации вычислительного процесса и общения пользователя с машиной, вопросы логической организации представления, хранения и преобразования информации и вопросы логической организации совместной работы различных устройств, а также аппаратных и программных средств машины.
Основные характеристики ЭВМ
Важнейшими эксплуатационными характеристиками ЭВМ являются ее производительность Р и общий коэффициент эффективности машины:
Э = Р / (СЭВМ + СЭКС),
представляющий собой отношение ее производительности к сумме стоимости самой машины СЭВМ и затрат на ее эксплуатацию за определенный период времени (например, период окупаемости капитальных затрат) СЭКС.
Так как часто трудно оценить затраты на эксплуатацию данной ЭВМ, а создатели новых машин стремятся приравнять эти затраты к нулю, то оценивают эффективность машины по упрощенной формуле
Э’ = Р / СЭВМ.
К наиболее распространенным характеристикам ЭВМ относятся:
· число разрядов в машинном слове (влияет на точность вычислений и диапазон представляемых в машине чисел);
· скорость выполнения основных видов команд;
· емкость оперативной памяти;
· максимальная скорость передачи информации между ядром ЭВМ (процессор или память) и внешним периферийным оборудованием;
· эксплуатационная надежность машины.
При создании новых ЭВМ обеспечивается значительное возрастание отношений производительность/стоимость и надежность/стоимость.
СуперЭВМ
В настоящее время к сверх производительным машинам (системам) относят машины с производительностью в сотни и более GFLOP/s. Подобные машины используются для решения особенно сложных научно-технических задач, задач обработки больших объемов данных в реальном масштабе времени, поиска оптимальных в задачах экономического планирования и автоматического проектирования сложных объектов.
Самым ярким примером служит деятельность Cray Research. Эта фирма долго лидировала на рынке суперЭВМ. Но с разрушением «железного занавеса» спрос на ее компьютеры упал, что привело к распаду корпорации. В прошлом году в автокатастрофе погиб и ее основатель – Симур Крей.
|
Долгое время лидером в области суперкомпьютеров оставалась Cray Research,. По данным на начало 1997 года она занимала 43% всего рынка. Cray Research, приобретенная корпорацией Silicon Graphics в начале 1996 г, продает широкий спектр систем, начиная со старых моделей семейства J90 до машин новой серии Origin, в которых используется архитектура коммутации, построенная на базе процессора MIPS R10000.
Hewlett-Packard, владеет 7% этого сегмента рынка. Другими американскими производителями мощных компьютеров являются IBM, которая строит свои суперкомпьютеры SP на многокристальной версии PowerPC (14% рынка), а также Digital Equipment, предлагающая кластеры SMP-систем на базе процессора Alpha (13% рынка).
И наконец, японские фирмы Fujitsu и NEC занимают твердые позиции на рынке суперкомпьютеров, имея доли в 8 и 4% соответственно.
Сегодня самые быстрые суперЭВМ принадлежат Intel. В настоящее время Intel выполняет заказ министерства энергетики США.
В архитектуре суперЭВМ обнаруживается ряд принципиальных отличий от классической фоннеймонавской модели ЭВМ. Различные архитектуры суперЭВМ будут рассмотрены в теме «архитектурные особенности организации ЭВМ различных классов»
Малые и микроЭВМ.
Имеется большое число, условно говоря, «малых» применений вычислительных машин, таких, как автоматизация производственного контроля изделий, обработка данных при экспериментах, прием и обработка данных с линии связи, управление технологическими процессами, управление станками и разнообразными цифровыми терминалами, малые расчетные инженерные задачи.
В настоящее время малые и микроЭВМ встраивают в различные «умные» приборы (электросчетчики, микроволновки, стиральные машины, модемы, датчики и т.д.).
Структура машинной команды
Машинная команда представляет собой закодированное по определенным правилам указание микропроцессору на выполнение некоторой операции или действия. Приведенный на рис. 1 формат машинной команды является самым общим. Максимальная длина машинной команды - 15 байт. Реальная команда может содержать гораздо меньшее количество полей, вплоть до одного - только КОП.
|
Рис. 1. Формат машинной команды
Опишем назначения полей машинной команды.
Рис. 2. Механизм формирования физического адреса в реальном режиме
Последующие поля машинной команды определяют местоположение операндов, участвующих в операции, и особенности их использования. Рассмотрение этих полей связано со способами задания операндов в машинной команде и потому будет выполнено позже.
|
Способы задания операндов команды
В ходе предыдущего изложения мы поневоле касались вопроса о том, где располагаются операнды, с которыми работает машинная команда, и как это отражается на содержимом ее полей.
В этой части занятия мы рассмотрим этот вопрос более систематизировано и в полном объеме. Это позволит нам уже со следующего занятия перейти непосредственно к практическим вопросам программирования на языке ассемблера.
Операнд задается неявно на микропрограммном уровне. В этом случае команда явно не содержит операндов. Алгоритм выполнения команды использует некоторые объекты по умолчанию (регистры, флаги в eflags и т. д.).
Например, команды cli и sti неявно работают с флагом прерывания if в регистре eflags, а команда xlat неявно обращается к регистру al и строке в памяти по адресу, определяемому парой регистров ds:bx.
Операнд задается в самой команде (непосредственный операнд). Операнд находится в коде команды, то есть является ее частью. Для хранения такого операнда в команде выделяется поле длиной до 32 бит (см. рис. 1). Непосредственный операнд может быть только вторым операндом (источником). Операнд получатель может находиться либо в памяти, либо в регистре.
Например: mov ax,0ffffh пересылает в регистр ax шестнадцатеричную константу ffff. Команда add sum,2 складывает содержимое поля по адресу sum с целым числом 2 и записывает результат по месту первого операнда, то есть в память.
Операнд находится в одном из регистров. Регистровые операнды указываются именами регистров. В качестве регистров могут использоваться:
Например, команда add ax,bx складывает содержимое регистров ax и bx и записывает результат в bx. Команда dec si уменьшает содержимое si на 1.
Операнд располагается в памяти. Это наиболее сложный и в то жe время наиболее гибкий способ задания операндов. Он позволяет реализовать следующие два основных вида адресации: прямую и косвенную.
В свою очередь, косвенная адресация имеет следующие разновидности:
Операндом является порт ввода/вывода. Как мы уже отмечали, помимо адресного пространства оперативной памяти микропроцессор поддерживает адресное пространство ввода-вывода, которое используется для доступа к устройствам ввода-вывода. Объем адресного пространства ввода-вывода составляет 64 Кбайт. Для любого устройства компьютера в этом пространстве выделяются адреса. Конкретное значение адреса в пределах этого пространства называется портом ввода-вывода. Физически порту ввода-вывода соответствует аппаратный регистр (не путать с регистром микропроцессора), доступ к которому осуществляется с помощью специальных команд ассемблера in и out.
Например,
in al,60h;ввести байт из порта 60h
Регистры, адресуемые с помощью порта ввода-вывода, могут иметь разрядность 8, 16 или 32 бит, но для конкретного порта разрядность регистра фиксирована.
Команды in и out работают с фиксированной номенклатурой объектов. В качестве источника информации или получателя применяются так называемые регистры-аккумуляторы eax, ax, al. Выбор регистра определяется разрядностью порта. Номер порта может задаваться непосредственным операндом в командах in и out или значением в регистре dx. Последний способ позволяет динамически определить номер порта в программе. Например:
mov dx,20h;записать номер порта 20h в регистр dx mov al,20h;записать значение 20h в регистр al
out dx,al;вывести значение 20h в порт 20H
Операнд находится в стеке.
Команды могут совсем не иметь операндов, иметь один или два операнда. Большинство команд требуют двух операндов, один из которых является операндом-источником, а второй - операндом назначения. Важно то, что один операнд может располагаться в регистре или памяти, а второй операнд обязательно должен находиться в регистре или непосредственно в команде. Непосредственный операнд может быть только операндом-источником. В двухоперандной машинной команде возможны следующие сочетания операндов:
У данного правила есть исключения, которые касаются:
Из перечисленных сочетаний операндов наиболее часто употребляются регистр-память и память-регистр.
Ввиду их важности рассмотрим их подробнее. Обсуждение мы будем сопровождать примерами команд ассемблера, которые будут показывать, как изменяется формат команды ассемблера при применении того или иного вида адресации. В связи с этим посмотрите еще раз на рис. 2, на котором показан принцип формирования физического адреса на адресной шине микропроцессора. Видно, что адрес операнда формируется как сумма двух составляющих - сдвинутого на 4 бит содержимого сегментного регистра и 16-битного эффективного адреса, который в общем случае вычисляется как сумма трех компонентов: базы, смещения и индекса.
Перечислим и затем рассмотрим особенности основных видов адресации операндов в памяти:
Прямая адресация
Это простейший вид адресации операнда в памяти, так как эффективный адрес содержится в самой команде и для его формирования не используется никаких дополнительных источников или регистров. Эффективный адрес берется непосредственно из поля смещения машинной команды (см. рис. 1), которое может иметь размер 8, 16, 32 бит. Это значение однозначно определяет байт, слово или двойное слово, расположенные в сегменте данных.
Прямая адресация может быть двух типов:
m1:
;ds:0000 в регистр ax
mov ax,per1;записать слово per1 (его физический адрес ds:0000) в ax
Остальные виды адресации относятся к косвенным. Слово "косвенный" в названии этих видов адресации означает то, что в самой команде может находиться лишь часть эффективного адреса, а остальные его компоненты находятся в регистрах, на которые указывают своим содержимым байт modr/m и, возможно, байт sib.
Способы адресации
Следует различать понятия адресный код в команде АК и исполнительный адрес АИ. Адресный код - это информация об адресе операнда, содержащаяся в команде. Исполнительный адрес - это номер ячейки памяти, к которой производится фактическое обращение. В современных ЭВМ адресный код, как правило, не совпадает с исполнительным адресом.
Выбор способов адресации, формирования исполнительного адреса и преобразования адресов является одним из важнейших вопросов разработки ЭВМ. Рассмотрим способы адресации, используемые в современных ЭВМ.
Подразумеваемый операнд. В команде не содержится явных указаний об адресе операнда; операнд подразумевается и фактически задается кодом операции команды. Данный способ используется не часто, однако имеется несколько важных случаев его применения. В качестве примера можно привести команды подсчета, в которых к некоторому числу, (содержимому счетчика) прибавляется фиксированное приращение, чаще единица младшею разряда. Один из операндов - число в счетчике - обычно адресуется явным методом, второй операнд - приращение - не адресуется, в памяти машины не содержится и является подразумеваемым.
Подразумеваемый адрес. В команде не содержится явных указаний об адресе участвующего в операции операнда или адреса, по которому помещается результат операции, но этот адрес подразумевается. Например, команда может содержать адреса обоих операндов, участвующих в операции, при этом подразумевается, что результат операции помещается по адресу одного из операндов, или команда указывает только адрес одного операнда, а адрес второго, которым является содержимое специального регистра (называемого регистром результата или аккумулятором), подразумевается.
Непосредственная адресации. В команде содержится не адрес операнда, а непосредственно сам операнд. При непосредственной адресации не требуется обращения к памяти для выборки операнда и ячейки для его хранения Это способствует уменьшению времени выполнения программы и занимаемого ею объема памяти. Непосредственная адресация удобна для хранения различного рода констант, однако следует иметь в виду, что при этом способе адресации длина операнда короче кода команды, поскольку часть разрядов команды занята под код операции.
Прямая адресация. Исполнительный адрес совпадает с адресной частью команды. Этот способ адресации был общепринятым в первых вычислительных машинах и продолжает применяться в настоящее время в комбинации с другими способами.
В указанной форме непосредственная адресация реализуется в ЭВМ со сравнительно длинным машинным словом (32 разряда и более).
Относительная адресация или базирование. Исполнительный адрес определяется суммой адресного кода команды А К и некоторого числа A Б, называемого базовым адресом:
АИ = АК + АБ.
Для хранения базовых адресов в машине могут быть предусмотрены регистры или специально выделенные для этой цели ячейки памяти (базовые регистры). В команде выделяется поле В для указания номера базового регистра.
Относительная адресация позволяет при меньшей длине адресного кода команды обеспечить доступ к любой ячейке памяти. Для этого число разрядов в базовом адресе выбирают таким, чтобы можно было адресовать любую ячейку ОП, а адресный код А К, самой команды используют для представления лишь сравнительно короткого «смещения» (обозначают буквой D). Смещение D определяет положение операнда относительно начала массива, задаваемого базовым адресом АБ. Рисунок 3.5 поясняет процесс формирования исполнительного адреса.
Большей частью исполнительный адрес при базировании образуется с помощью сумматора согласно выражению (рис. 3.5)
где В и D - коды (числа), стоящие в соответствующих полях команды: (В) -содержимое регистра с номером В. При В = 0 относительная адресация блокируется.
Более подробно обращение к ОП при относительной адресации можно представить в следующем виде:
если РгК [ В ] = 0
то РгАОП:= РгК [0]
иначе РгАОП:=
РгB + РгК [ D ];
Счит: РгИОП:=
ОП [ РгАОП }:
Суммирование при образовании АИ связано с потерей времени. Поэтому применяют также формирование исполнительного адреса методом совмещения (рис. 3.5, в). В этом случае базовый адрес содержит старшие, а смещение - младшие разряды исполнительного адреса, которые объединяются в РгАОП согласно операции конкатенации слова:
РгАОП:= РгВ | РгК [ D ];
Однако при совмещении базовый адрес может задавать не любую ячейку, а только те ячейки, адреса которых содержат 0 в младших разрядах, соответствующих смещению.
Относительная адресация обеспечивает так называемую перемещаемость программ, т. е. возможность передвижения программ в памяти без изменений внутри самой программы.
Укороченная адресация. Для уменьшения длины кода команды часто применяется так называемая укороченная адресация. Суть ее сводится к тому, что в команде задаются только младшие разряды адресов, старшие разряды при этом подразумеваются нулевыми. Такая адресация позволяет использовать только небольшую группу фиксированных ячеек с начальными (короткими) адресами и поэтому может применяться лишь совместно с другими способами адресации.
Регистровая адресация есть частный случай укороченной, когда в качестве фиксированных ячеек с короткими адресами используются регистры (ячейки сверхоперативной или местной памяти) процессора. Например, если таких регистров 16, то для адреса достаточно четырех двоичных разрядов. Регистровая адресация наряду с сокращением длины адресов операндов позволяет увеличить скорость выполнения операций, так как уменьшается число обращений к ОП.
Косвенная адресация. Адресный код команды указывает адрес ячейки памяти, в которой находится адрес операнда или команды. Таким образом, косвенная адресация может быть иначе определена как «адресация адреса».
На косвенную адресацию указывает код операции команды, а в некоторых ЭВМ в команде отводится специальный разряд (указатель адресации - УА), и цифра 0 или 1 в нем указывает, является адресная часть команды прямым адресом или косвенным. Обращение к ОП за операндом при косвенной адресации представляет собой следующую процедуру:
РгАОП:= РгК [ А ];
Счит: РгИОП:= ОП [ РгАОП ];
если УА =0 то идти к М иначе РгАОП:= РгИОП;
Счит: РгИОП:= ОП [ РгАОП ];
М: РгАЛУ:= РгИОП;
В некоторых ЭВМ используется многоступенчатая косвенная адресация. В этом случае ячейки памяти содержат также разряд-указатель косвенной адресации (УА). Если этот разряд указывает на продолжение косвенной адресации, то машина последовательно выбирает из памяти адреса до тех пор, пока не будет найдена ячейка, в которой разряд-указатель определит прямую адресацию. Адрес из этой последней ячейки и является искомым исполнительным адресом.
Косвенная адресация широко используется в малых и микроЭВМ, имеющих короткое машинное слово, для преодоления ограничений короткого формата команды.
Рассмотрим широко применяемое в микропроцессорах, малых и микроЭВМ совместное использование укороченной (регистровой) и косвенной адресаций (рис.3.6). Пусть необходимо передать число 4527 из Рг5 в ячейку ОП 1765. Длина адресных полей команды достаточна лишь для указания коротких номеров регистров, она не позволяет задать в команде полный адрес ячейки памяти. Поэтому операнд 4527 указывается регистровой косвенной адресацией (УА=0), а для задания адреса 1765 приходится воспользоваться регистровой косвенной адресацией (УА=1), при которой в команде указывается номер регистра (в рассматриваемом примере РгЗ), предварительно загруженного полным адресом ячейки, в которою производится передача.
Автоинкрементная и автодекрементная адресации. Поскольку регистровая косвенная адресация требует предварительной загрузки регистра из ОП косвенным адресом, что связано с потерей времени, такой тип адресации особенно эффективен при обработке массива данных, если имеется механизм автоматического приращения или уменьшения содержимого регистра при каждом обращении к нему, называемый соответственно авто инкрементной и автодекрементной адресацией. В этом случае достаточно 1 раз загрузить в регистр адрес первого обрабатываемого элемента массива, а затем при каждом обращении к регистру в нем в результате инкрементной (декрементной) процедуры формируется адрес следующего элемента массива.
При автоинкрементной адресации по содержимому регистра сначала содержимое регистра используется как адрес операнда, а затем получает приращение, равное числу байт в элементе массива. При автодекрементной адресации сначала содержимое указанного в команде регистра уменьшается на число, равное числу байт в элементе массива, а затем используется как адрес операнда.
Автоинкрементная и автодекрементная адресации могут рассматриваться как упрощенный вариант индексации - весьма важного механизма преобразования адресных частей команд и организации вычислительных циклов, поэтому их часто называют автоиндексацией.
Адресация слов переменной длины. Эффективность вычислительных систем, предназначенных для обработки данных (экономических, плановых и др.), повышается, если имеется возможность выполнять операции со словами переменной длины. В этом случае в машине должна быть предусмотрена адресация слов переменной длины, которая обычно реализуется путем указания в команде местоположения в памяти начала слова и его длины.
Обычно в ЭВМ одновременно используется несколько типов адресации Тип адресации указывается либо неявно кодом операции, либо в явной форме в специальном поле адресной части команды.
Стековая адресация
Стековая память, реализующая безадресное задание операндов, является эффективным элементом современной архитектуры ЭВМ, особенно широко используемым в микропроцессорах, малых и микроЭВМ, а также в некоторых суперЭВМ. Учитывая своеобразие стековой адресации, ее рассмотрение выделено в отдельный параграф.
Стек представляет собой группу последовательно пронумерованных регистров (аппаратурный стек) или ячеек памяти, снабженных указателем стека (обычно регистром) (УС), в котором автоматически при записи и считывании устанавливается номер (адрес) последней занятой ячейки стека (вершины стека}. П
|
|
Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...
История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...
Своеобразие русской архитектуры: Основной материал – дерево – быстрота постройки, но недолговечность и необходимость деления...
Семя – орган полового размножения и расселения растений: наружи у семян имеется плотный покров – кожура...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!