Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Понятие архитектуры эвм. Принципы фон Неймана.

Поиск

Понятие архитектуры ЭВМ. Принципы фон Неймана.

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

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

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

Ниже - основной перечень тех наиболее общих принципов построения ЭВМ, которые относятся к архитектуре:

структура памяти ЭВМ;

способы доступа к памяти и внешним устройствам;

возможность изменения конфигурации компьютера;

система команд;

форматы данных;

организация интерфейса.

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

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

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

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

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

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

 

Физические основы ЭВМ: понятие транзистора, электронные логические вентили.

 

Элементы транзисторно-транзисторной логики (ТТЛ) составляют базу микросхем среднего и высокого быстродействия.
Основа — биполярные транзисторы.
Работа его основана на переносе зарядов одновременно двух типов, носителями которых являются электроны и дырки.
Основные функции — выполняет роль ключа в сети или усилителя тока.
Основная особенность: управляется током.
В ТТЛ также нередко используется многоэмиттерный транзистор (МЭТ).
Основные-особенности:
Высокое быстродействие

Высокое энергопотребление

Низкая помехоустойчивость

 

В основе построения компьютеров, а точнее аппаратного обеспечения, лежат так называемые вентили. Они представляют собой достаточно простые элементы, которые можно комбинировать между собой, создавая тем самым различные схемы.
Вентиль — это устройство, которое выдает результат булевой операции от введенных в него данных (сигналов).
Простейший вентиль представляет собой транзисторный инвертор, который преобразует низкое напряжение в высокое или наоборот (высокое в низкое). Это можно представить как преобразование логического нуля в логическую единицу или наоборот. Т.е. получаем вентиль НЕ.
Соединив пару транзисторов различным способом, получают вентили ИЛИ-НЕ и И-НЕ. Эти вентили принимают уже не один, а два и более входных сигнала. Выходной сигнал всегда один и зависит (выдает высокое или низкое напряжение) от входных сигналов. В случае вентиля ИЛИ-НЕ получить высокое напряжение (логическую единицу) можно только при условии низкого напряжении на всех входах. В случае вентиля И-НЕ все наоборот: логическая единица получается, если все входные сигналы будут нулевыми. Как видно, это обратно таким привычным логическим операциям как И и ИЛИ. Однако обычно используются вентили И-НЕ и ИЛИ-НЕ, т.к. их реализация проще: И-НЕ и ИЛИ-НЕ реализуются двумя транзисторами, тогда как логические И и ИЛИ тремя.
Транзистору требуется очень мало времени для переключения из одного состояния в другое (время переключения оценивается в наносекундах). И в этом одно из существенных преимуществ схем, построенных на их основе.

 

 

Функциональная структура компьютера и основные концепции функционирования ЭВМ.

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

Процессор: определение, классификация.

Процессор – это главная микросхема компьютера, его 'мозг'. Он выполняет программный код, находящийся в памяти и руководит работой всех устройств компьютера. Чем выше скорость работы процессора, тем выше быстродействие компьютера. Процессор имеет специальные ячейки, которые называются регистрами. Именно в регистры помещаются команды, которые выполняются процессором, а также данные, которыми оперируют команды. Работа процессора состоит в выборе из памяти в определенной последовательности команд и данных для их последующего выполнения.

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

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

Архитектура Intel IA-32.

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

В процессоре Pentium 4 реализуется архитектура IA-32 (Intel Architеcture-32), общая для всех 32-разрядных микропроцессоров Intel, начиная с i386. В табл. 1 приведены основные модели процессоров, в которых используется эта архитектура, и некоторые их характеристики. Отметим, что модели Pentium II Xeon и Pentium III Xeon ориентированы на работу в высокопроизводительных мультипроцессорных системах (серверах, рабочих станциях). Для этих же приложений планируется выпуск в 2001 году модификации процессора Pentium 4 с поддержкой мультипроцессорного режима работы (название проекта ≈ Foster). История архитектуры IA-32 насчитывает уже более 15 лет, и е╦ основные черты достаточно полно описаны в ряде монографий (например, в [2]). Поэтому ограничимся их кратким обзором.

В процессе развития IA-32 производилось расширение возможностей обработки данных, представленных в различных форматах (рис. 1). Процессоры i386 выполняли обработку только целочисленных операндов. Для обработки чисел с ⌠плавающей точкой■ использовался внешний сопроцессор i387, подключаемый к микропроцессору. В состав процессоров i486 и последующих моделей Pentium введ╦н специальный блок FPU (Floating-Point Unit), выполняющий операции над числами с ⌠плавающей точкой■. В процессорах Pentium MMX была впервые реализована групповая обработка нескольких целочисленных операндов разрядностью 1, 2, 4 или 8 байт с помощью одной команды. Такая обработка обеспечивается введением дополнительного блока MMX (Milti-Media Extension ≈ Мультимедийное Расширение). Название блока отражает его направленность на обработку видео- и аудиоданных, когда одновременное выполнение одной операции над несколькими операндами позволяет существенно повысить скорость обработки изображений и звуковых сигналов. Начиная с модели Pentium III, в процессоры вводится блок SSE (Streaming SIMD Extension ≈ Потоковое SIMD-расширение) для групповой обработки чисел с ⌠плавающей точкой■.

 

18.Система команд микропроцессора на примере Intel IA-32

Программную модель процессора в архитектуре IA-32 (INTEL ARCHITECTURE) процессоров INTEL составляет следующий набор ресурсов (рис. 1.1):

пространство адресуемой памяти до 232 байт (4 Гбайт), для Pentium II и выше — до 236 байт (64 Гбайт);

регистры для хранения данных общего назначения;

сегментные регистры;

регистры состояния и управления;

регистры устройства вычислений с плавающей запятой (сопроцессора);

набор регистров целочисленного MMX-расширения, отображенных на регистры сопроцессора (впервые появились в архитектуре процессора Pentium MMX);

набор регистров MMX-расширения с плавающей точкой (впервые появились в архитектуре процессора Pentium III);

программный стек — специальная информационная структура, для работы с которой предусмотрены специальные машинные команды. Кроме того, к ресурсам, поддерживаемым архитектурой IA-32, необходимо отнести порты ввода-вывода, счетчики мониторинга производительности. Программные модели более ранних процессоров (i486, первые Pentium до Pentium MMX включительно) отличаются меньшим размером адресуемого пространства оперативной памяти (максимально 232 адресов, так как разрядность их шины адреса составляет 32 бита) и отсутствием некоторых групп регистров. Поэтому на рис. 1.1 для каждой группы регистров в скобках показано, начиная с какой модели она появилась в программной модели процессоров INTEL. Если такого обозначения нет, то это означает, что данная группа регистров присутствовала в процессорах i386 и i486. Что касается еще более ранних процессоров i8086/88, то на самом деле они тоже полностью представлены на схеме, но составляют лишь небольшую ее часть. В программную модель этих процессоров входят 8- и 16-разрядные регистры общего назначения, сегментные регистры, регистры FLAGS, IP и адресное пространство памяти размером до 1 Мбайт.

 

 

Виртуальная память

Виртуализация оперативной памяти осуществляется совокупностью программных модулей ОС и аппаратных схем процессора и включает решение следующих задач:

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

выбор образов процессов или их частей для перемещения из оперативной памяти на диск и обратно;

перемещение-по-мере-необходимости-данных-между-памятью-и- диском;

преобразование виртуальных адресов в физические.

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

Виртуализация памяти может быть осуществлена на основе двух различных подходов:

свопинг (swapping) -образы процессов выгружаются на диск и возвращаются в оперативную память целиком;

виртуальная память (virtual memory) -между оперативной памятью и диском перемещаются части (сегменты, страницы и т. п.) образов про-цессов.

 

 

26. Виртуальная память, преобразование адресов.

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

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

Виртуальная память – это возможность адресовать пространство памяти, больше чем первичная память ЭВМ. Два класса схем структуризации – схемы страничной структуризации и схемы сегментной структуризации. Страничная структуризация: в каждую группу должно входить одинаковое число адресов. Группировку проводят последовательно от начала исходного адреса пространства в порядке возрастания адресов, и каждой вновь образованной странице присваивается номер. Второй шаг: производится перенумерация адресов в пределах каждой страницы и её рассматривают как отдельное адресное пространство. Адреса в пределах каждой страницы получают значения от 0 до 2m-1(размер страницы) в порядке возрастания от начала страницы. Адреса внутри страницы – смещение. Адрес задаётся двумя координатами: номер страницы и смещение.

26.1. преобразование адресов.

Страничная организация – это преобразование адресов виртуальной памяти в адреса ОЗУ.

Процесс обращается по виртуальному адресу V=(p,d), где р – номер страницы, d – смещение. Необходимые страницы из ВЗУ переписываются в ОЗУ. Страница в ОЗУ называется кадром. Перемещаемая страница может быть в любом страничном кадре. Формируется таблица страниц, где строка представляет собой тройку- (r, s, p’). r – бит признака присутствия страницы, s – адрес внешней памяти, если страницы в ВЗУ нет, p’ – номер страничного кадра, если страница находится в ВЗУ.

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

Процесс обращается только по виртуальному адресу и преобразование происходит только когда страница находится в ОЗУ, т.к. существует другой механизм загрузки страниц. Механизм отображения страниц ищет номер страницы p в таблице отображения и находит p’. Путем конкатенации к p’ добавляется смещение и формируется физический адрес ОЗУ. Конкатенация – объединение 2-ичных изображений с целью получения третьего.

 

 

Векторы прерываний

Для того чтобы связать адрес обработчика прерывания с номером прерывания, используется таблица векторов прерываний, занимающая первый килобайт оперативной памяти. Эта таблица находится в диапазоне адресов от 0000:0000 до 0000:03FFh и состоит из 256 элементов – дальних адресов обработчиков прерываний.

Элементы таблицы векторов прерываний называются векторами прерываний. В первом слове элемента таблицы записана компонента смещения, а во втором – сегментная компонента адреса обработчика прерывания.

Вектор прерывания с номером 0 находится по адресу 0000:0000, с номером 1 - по адресу 0000:0004 и т. д. В общем случае адрес вектора прерывания находится путем умножения номера прерывания на 4.

Инициализация таблицы выполняется частично системой базового ввода/вывода BIOS после тестирования аппаратуры и перед началом загрузки операционной системой, частично при загрузке MS-DOS. Операционная система MS-DOS может изменить некоторые вектора прерываний, установленные BIOS.

Таблица векторов прерываний

Номер Описание
0h Ошибка деления. Вызывается автоматически после выполнения команд DIV или IDIV, если в результате деления происходит переполнение (например, при делении на 0). Обычно при обработке этого прерывания MS-DOS выводит сообщение об ошибке и останавливает выполнение программы. При этом для процессора i8086 адрес возврата указывает на команду, следующую после команды деления, а для процессора i80286 и более поздних моделей - на первый байт команды, вызвавшей прерывание
1h Прерывание пошагового режима. Вырабатывается после выполнения каждой машинной команды, если в слове флагов установлен бит пошаговой трассировки TF. Используется для отладки программ. Это прерывание не вырабатывается после пересылки данных в сегментные регистры командами MOV и POP
2h Аппаратное немаскируемое прерывание. Это прерывание может использоваться по-разному в разных машинах. Обычно оно вырабатывается при ошибке четности в оперативной памяти и при запросе прерывания от сопроцессора
3h Прерывание для трассировки. Генерируется при выполнении однобайтовой машинной команды с кодом CCh и обычно используется отладчиками для установки точки прерывания
4h Переполнение. Генерируется машинной командой INTO, если установлен флаг переполнения OF. Если флаг не установлен, команда INTO выполняется как NOP. Это прерывание используется для обработки ошибок при выполнении арифметических операций
5h Печать копии экрана. Генерируется, если пользователь нажал клавишу <PrtSc>. В программах MS-DOS обычно используется для печати образа экрана. Для процессора i80286 и более старших моделей генерируется при выполнении машинной команды BOUND, если проверяемое значение вышло за пределы заданного диапазона
6h Неопределенный код операции или длина команды больше 10 байт
7h Особый случай отсутствия арифметического сопроцессора
8h IRQ0 – прерывание интервального таймера, возникает 18,2 раза в секунду
9h IRQ1 – прерывание от клавиатуры. Генерируется, когда пользователь нажимает и отжимает клавиши. Используется для чтения данных из клавиатуры
Ah IRQ2 – используется для каскадирования аппаратных прерываний
Bh IRQ3 – прерывание асинхронного порта COM2
Ch IRQ4 – прерывание асинхронного порта COM1
Dh IRQ5 – прерывание от контроллера жесткого диска (только для компьютеров IBM PC/XT)
Eh IRQ6 – прерывание генерируется контроллером НГМД после завершения операции ввода/вывода
Fh IRQ7 – прерывание от параллельного адаптера. Генерируется, когда подключенный к адаптеру принтер готов к выполнению очередной операции. Обычно не используется
10h Обслуживание видеоадаптера
11h Определение конфигурации устройств в системе
12h Определение размера оперативной памяти
13h Обслуживание дисковой системы
14h Работа с асинхронным последовательным адаптером
15h Расширенный сервис
16h Обслуживание клавиатуры
17h Обслуживание принтера
18h Запуск BASIC в ПЗУ, если он есть
19h Перезагрузка операционной системы
1Ah Обслуживание часов
1Bh Обработчик прерывания, возникающего, если пользователь нажал комбинацию клавиш <Ctrl+Break>
1Ch Программное прерывание, вызывается 18,2 раза в секунду обработчиком аппаратного прерывания таймера
1Dh Адрес видеотаблицы для контроллера видеоадаптера 6845
1Eh Указатель на таблицу параметров дискеты
1Fh Указатель на графическую таблицу для символов с кодами ASCII 128-255
20h-5Fh Используется MS-DOS или зарезервировано для MS-DOS
60h-67h Прерывания, зарезервированные для программ пользователя
68h-6Fh Не используются
70h IRQ8 – прерывание от часов реального времени
71h IRQ9 – прерывание от контроллера EGA
72h IRQ10 – зарезервировано
73h IRQ11 – зарезервировано
74h IRQ12 – зарезервировано
75h IRQ13 – прерывание от арифметического сопроцессора
76h IRQ14 – прерывание от контроллера жесткого диска
77h IRQ15 – зарезервировано
78h - 7Fh Не используются
80h-85h Зарезервировано для BASIC
86h-F0h Используются интерпретатором BASIC
F1h-FFh Не используются

Приоритеты прерываний

Помимо простой установки приоритета прерываний, NVIC реализует возможность группировки приоритетов.
Прерывания в группе с более высоким приоритетом могут прерывать обработчики прерываний группы с более низким приоритетом. прерывания из одной группы, но с разным приоритетом внутри группы не могут прерывать друг друга. Приоритет внутри группы определяет только порядок вызова обработчика, когда были активизированы оба события.

Значение приоритета прерывания задается в регистрах Interrupt Priority Registers (см. Cortex-M4 Generic User Guide). При этом, часть бит отвечает за приоритет группы, в которой находится прерывание, а часть — за приоритет внутри группы.
Настройка распределение бит на приоритет группы или приоритет внутри группы осуществляется с помощью регистра Application Interrupt and Reset Control Register (ВНИМАТЕЛЬНО!!! см. Cortex-M4 Generic User Guide).

Как вы, наверно, заметили, в Cortex-M4 Generic User Guide сказано, что настройка приоритетов и группировки приоритетов зависят от конкретной реализации implementation defined.
А вот дальше не очень приятная вещь. В Reference manual к МК STM32F407 про NVIC почти нет информации. Но есть ссылка на отдельный документ. Для того, чтобы разобраться с реализацией NVIC в STM32 придется прочитать еще один документ — STM32F3xxx and STM32F4xxx Cortex-M4 programming manual. Вообще говоря, я советую внимательно изучить данный документ и по всем другим вопросам, в нем работа ядра расписана более подробно, чем в документации от ARM.

Маскирование прерываний.

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

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

Прямой доступ к памяти

 

Прямой доступ к памяти (англ. Direct Memory Access, DMA) —режим обмена данными между устройствами или же между устройством и основной памятью (RAM) безучастия Центрального Процессора (ЦП). В результате скорость передачи увеличивается, так как данные непересылаются в ЦП и обратно.


Кроме того, данные пересылаются сразу для многих слов, расположенных по подряд идущим адресам, чтопозволяет использование т. н. «пакетного» (burst) режима работы шины — 1 цикл адреса и следующие заним многочисленные циклы данных. Аналогичная оптимизация работы ЦП с памятью крайне затруднена.

В оригинальной архитектуре IBM PC (шина ISA) был возможен лишь при наличии аппаратного DMA-контроллера (микросхема с индексом Intel 8237).

DMA-контроллер может получать доступ к системной шине независимо от центрального процессора.Контроллер содержит несколько регистров, доступных центральному процессору для чтения и записи.Регистры контроллера задают порт (который должен быть использован), направление переноса данных(чтение/запись), единицу переноса (побайтно/пословно), число байтов, которое следует перенести.

ЦП программирует контроллер DMA, устанавливая его регистры. Затем процессор даёт команду устройству(например, диску) прочитать данные во внутренний буфер. DMA-контроллер начинает работу, посылаяустройству запрос чтения (при этом устройство даже не знает, пришёл ли запрос от процессора или отконтроллера DMA). Адрес памяти уже находится на адресной шине, так что устройство знает, куда следуетпереслать следующее слово из своего внутреннего буфера. Когда запись закончена, устройство посылаетсигнал подтверждения контроллеру DMA. Затем контроллер увеличивает используемый адрес памяти иуменьшает значение своего счётчика байтов. После чего запрос чтения повторяется, пока значение счётчикане станет равно нулю. По завершении цикла копирования устройство инициирует прерывание процессора,означающее завершение переноса данных. Контроллер может быть многоканальным, способнымпараллельно выполнять несколько операций.

 

Понятие архитектуры ЭВМ. Принципы фон Неймана.

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

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

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

Ниже - основной перечень тех наиболее общих принципов построения ЭВМ, которые относятся к архитектуре:

структура памяти ЭВМ;

способы доступа к памяти и внешним устройствам;

возможность изменения конфигурации компьютера;

система команд;

форматы данных;

организация интерфейса.

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

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

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

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

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

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

 



Поделиться:


Последнее изменение этой страницы: 2016-08-15; просмотров: 1037; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 13.59.114.228 (0.012 с.)