Принципы построения компьютеров джона фон неймана. Принципы фон Неймана построения электронно-вычислительной машины

Машина тюринга

Маши́наТью́ринга (МТ) - абстрактный исполнитель (абстрактная вычислительная машина). Была предложена Аланом Тьюрингом в 1936 году для формализации понятия алгоритма.

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

Устройство машины Тьюринга[

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

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

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

Машина Тьюринга называется детерминированной , если каждой комбинации состояния и ленточного символа в таблице соответствует не более одного правила. Если существует пара «ленточный символ - состояние», для которой существует 2 и более команд, такая машина Тьюринга называется недетерминированной .

Описание машины Тьюринга[

Конкретная машина Тьюринга задаётся перечислением элементов множества букв алфавита A, множества состояний Q и набором правил, по которым работает машина. Они имеют вид: q i a j →q i1 a j1 d k (если головка находится в состоянии q i , а в обозреваемой ячейке записана буква a j , то головка переходит в состояние q i1 , в ячейку вместо a j записывается a j1 , головка делает движение d k , которое имеет три варианта: на ячейку влево (L), на ячейку вправо (R), остаться на месте (N)). Для каждой возможной конфигурации имеется ровно одно правило (для недетерминированной машины Тьюринга может быть большее количество правил). Правил нет только для заключительного состояния, попав в которое машина останавливается. Кроме того, необходимо указать конечное и начальное состояния, начальную конфигурацию на ленте и расположение головки машины.

Пример машины Тьюринга[

Приведём пример МТ для умножения чисел в унарной системе счисления. Запись правила «q i a j →q i1 a j1 R/L/N» следует понимать так: q i - состояние при котором выполняется это правило, a j - данные в ячейке, в которой находится головка, q i1 - состояние в которое нужно перейти, a j1 - что нужно записать в ячейку, R/L/N - команда на перемещение.

Архитектура ЭВМ джона фон неймана

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

Принципы фон неймана

Принципы фон Неймана[

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

Команды и данные хранятся в одной и той же памяти и внешне в памяти неразличимы. Распознать их можно только по способу использования; то есть одно и то же значение в ячейке памяти может использоваться и как данные, и как команда, и как адрес в зависимости лишь от способа обращения к нему. Это позволяет производить над командами те же операции, что и над числами, и, соответственно, открывает ряд возможностей. Так, циклически изменяя адресную часть команды, можно обеспечить обращение к последовательным элементам массива данных. Такой прием носит название модификации команд и с позиций современного программирования не приветствуется. Более полезным является другое следствие принципа однородности, когда команды одной программы могут быть получены как результат исполнения другой программы. Эта возможность лежит в основе трансляции - перевода текста программы с языка высокого уровня на язык конкретной вычислительной машины.

Принцип адресности

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

Принцип программного управления

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

Типы процессоров

Микропроцессор - это устройство, представляющее собой одну или несколько больших интегральных схем(БИС), выполняющих функции процессора ЭВМ.Классическое вычислительное устройство состоит из арифметического устройства (АУ), устройства управления (УУ), запоминающего устройства (ЗУ) и устройства ввода-вывода (УВВ).

IntelCeleron 400 Socket 370 в пластиковом корпусе PPGA, вид сверху.

Существуют процессоры различной архитектуры.

CISC (англ. ComplexInstructionSetComputing) - концепция проектирования процессоров, которая характеризуется следующим набором свойств:

· большим числом различных по формату и длине команд;

· введением большого числа различных режимов адресации;

· обладает сложной кодировкой инструкции.

Процессору с архитектурой CISC приходится иметь дело с более сложными инструкциями неодинаковой длины. Выполнение одиночной CISC-инструкции может происходить быстрее, однако обрабатывать несколько таких инструкций параллельно сложнее.

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

Достоинства архитектуры CISC [показать]

Недостатки архитектуры CISC [показать]

RISC (Reduced Instruction Set Computing). Процессор с сокращенным набором команд. Система команд имеет упрощенный вид. Все команды одинакового формата с простой кодировкой. Обращение к памяти происходит посредством команд загрузки и записи, остальные команды типа регистр-регистр. Команда, поступающая в CPU, уже разделена по полям и не требует дополнительной дешифрации.

Часть кристалла освобождается для включения дополнительных компонентов. Степень интеграции ниже, чем в предыдущем архитектурном варианте, поэтому при высоком быстродействии допускается более низкая тактовая частота. Команда меньше загромождает ОЗУ, CPU дешевле. Программной совместимостью указанные архитектуры не обладают. Отладка программ на RISC более сложна. Данная технология может быть реализована программно-совместимым с технологией CISC (например, суперскалярная технология).

Поскольку RISC-инструкции просты, для их выполнения нужно меньше логических элементов, что в конечном итоге снижает стоимость процессора. Но большая часть программного обеспечения сегодня написана и откомпилирована специально для CISC-процессоров фирмы Intel. Для использования архитектуры RISC нынешние программы должны быть перекомпилированы, а иногда и переписаны заново.

Тактовая частота

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

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

Тактовая частота процессора пропорциональна частоте системной шины (см. ниже ).

Разрядность

Разрядность процессора - величина, которая определяет количество информации, которое центральный процессор способен обработать за один такт.

Например, если разрядность процессора равна 16, это значит, что он способен обработать 16 бит информации за один такт.

Думаю, всем понятно, что чем выше разрядность процессора, тем большие объемы информации он может обрабатывать.

Обычно, чем больше разрядность процессора, тем его производительность выше.

В настоящее время используются 32- и 64-разрядные процессоры. Разрядность процессора не означает, что он обязан выполнять команды с такой же самой разрядностью.

Кэш-память

Первым делом ответим на вопрос, что такое кэш-память?

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

Какие данные хранятся в кэш-памяти?

Наиболее часто используемые.

Какое предназначение кэш-памяти?

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

Кэш-память, как и обычная память, имеет разрядность. Чем выше разрядность кэш-памяти тем с большими объемами данных может она работать.

Различают кэш-память трех уровней: кэш-память первого (L1), второго (L2) и третьего (L3). Наиболее часто в современных компьютерах применяют первые два уровня.

Рассмотрим подробнее все три уровня кэш-памяти.

Кэш-память первого уровня является самой быстрой и самой дорогой памятью.

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

Емкость кэш-памяти первого уровня невелика (в силу дороговизны) и исчисляется килобайтами (обычно не более 128 Кбайт).

Кэш-память второго уровня - это высокоскоростная память, выполняющая те функции, что и кэш L1. Разница между L1 и L2 в том, что последняя имеет более низкую скорость, но больший объем (от 128 Кбайт до 12 Мбайт), что очень полезно для выполнения ресурсоемких задач.

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

Количество ядер

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

Многоядерность процессора, прежде всего, позволяет реализовать функцию многозадачности: распределять работу приложений между ядрами процессора. Это означает, что каждое отдельное ядро работает со “своим” приложением.

Структура материнской платы

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

Первое, на что стоит обратить внимание – это сокет процессора. Это небольшое квадратное углубление с креплением.

Для тех, кто знаком с таким термином как «оверлокинг» (разгон компьютера) стоит обратить внимание на наличие двойного радиатора. Зачастую в материнских платах отсутствует двойной радиатор. Поэтому для тех, кто в будущем намерен разгонять свой компьютер, желательно проследить, чтобы этот элемент на плате присутствовал.

Продолговатые слоты PCI-Express предназначены для видеокарт, ТВ-тюнеров, аудио и сетевых карт. Для видеокарт нужна большая пропускная способность и для них используют разъемы PCI-Express X16. Для остальных адаптеров используются разъемы PCI-Express X1.

Совет эксперта! PCI-разъемы с различной пропускной способность выглядят почти одинаково. Стоит особенно внимательно рассмотреть разъемы и прочитать надписи под ними, чтобы избежать внезапных разочарований дома при установке видеокарт.

Разъемы меньшего размера предназначены для планок оперативной памяти. Обычно они окрашены в черный или синий цвет.

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

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

Производитель

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

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

Форм-фактор

В случае материнских плат размер имеет значение. Стандартный форм-фактор ATX встречается в большинстве домашних компьютеров. Большой размер, а, следовательно, наличие широкого набора гнезд позволяют улучшать основные характеристики компьютера.

Уменьшенная версия mATX встречается реже. Возможности улучшения ограничены.

Также существует mITX. Этот форм-фактор встречается в бюджетных офисных компьютерах. Улучшение характеристик или невозможно или не имеет смысла.

Зачастую процессоры и платы продаются в комплекте. Однако если процессор был куплен раньше, важно проследить, чтобы он был совместим с платой. Посмотрев на сокет, совместимость процессора и материнской платы можно определить моментально.

Чипсет

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

Стандартные чипсеты состоят из северного и южного мостов. Самые новые модели Intelсостоят только из северного. Сделано это не с целью экономии. Этот фактор никак не уменьшает производительность чипсета.

Наиболее современные чипсеты Intel состоят из одного моста, так как большая часть контроллеров теперь находится в процессоре, среди которых контроллер оперативной памяти DD3, PCI-Express 3.0 и некоторые другие.

Аналоги от AMD построены на традиционной схеме двух мостов. Например, 900-я серия комплектуется южным мостом SB950 и северным 990FX (990X, 970).

При выборе чипсета стоит отталкиваться от возможностей северного моста. Северный мост 990FX может поддерживать одновременно работу 4-х видеокарт в режиме CrossFire. В большинстве случае такая мощность – избыточна. Но для любителей тяжеловесных игры или тех, кто работают с требовательным графическими редакторами, этот такой чипсет будет наиболее подходящим.

Немного урезанная версия 990Х все еще может поддерживать работу двух видеокарт одновременно, а вот 970-я модель работает исключительно с одной видеокартой.

Компоновка Материнских плат

· подсистема обработки данных;

· подсистема электропитания;

· вспомогательные (сервисные) блоки и узлы.

Основные компоненты подсистемы обработки данных материнской платы приведены на рис. 1.3.14.

1 – гнездо процессора; 2 – фронтальная шина; 3 – северный мост; 4 – тактовый генератор; 5 – шина памяти; 6 – разъемы оперативной памяти; 7 – разъемы IDE (ATA); 8 – разъемы SATA; 9 – южный мост; 10 – разъемы IEEE 1394; 11 – разъемы USB; 12 – разъем сети Ethernet; 13 – аудиоразъемы; 14 – шина LPC; 15 – контроллер Super I/O; 16 – порт PS/2;

17 – параллельный порт; 18 – последовательные порты; 19 – разъем Floppy Disk;

20 – BIOS; 21 – шина PCI; 22 – разъемы PCI; 23 – разъемы AGP или PCI Express;

24 – внутренняя шина; 25 – Шина AGP/PCI Express; 26 – разъем VGA

FPM (Fast Page Mode) - вид динамической памяти.
Его название соответствует принципу работы, так как модуль позволяет быстрее получать доступ к данным которые находятся на той же странице, что и данные, переданные во время предыдущего цикла.
Эти модули использовались на большинстве компьютеров с процессорами 486 и в ранних системах с процессорами Pentium, ориентировочно в 1995 году.

Модули EDO (Extended Data Out) появились в 1995 году как новый тип памяти для компьютеров с процессорами Pentium.
Это модифицированный вариант FPM.
В отличие от своих предшественников, EDO начинает выборку следующего блока памяти в то же время, когда отправляет предыдущий блок центральному процессору.

SDRAM (Synchronous DRAM) - вид памяти со случайным доступом, работающий на столько быстро, чтобы его можно было синхронизировать с частотой работы процессора, исключая режимы ожидания.
Микросхемы разделены на два блока ячеек так, чтобы во время обращения к биту в одном блоке шла подготовка к обращению к биту в другом блоке.
Если время обращения к первой порции информации составляло 60 нс, все последующие интервалы удалось сократить до 10 нс.
Начиная с 1996 года большинство чипсетов Intel стали поддерживать этот вид модулей памяти, сделав его очень популярным вплоть до 2001 года.

SDRAM может работать на частоте 133 МГц, что почти в три раза быстрее, чем FPM и в два раза быстрее EDO.
Большинство компьютеров с процессорами Pentium и Celeron, выпущенных в 1999 году использовали именно этот вид памяти.

DDR (Double Data Rate) стал развитием SDRAM.
Этот вид модулей памяти впервые появился на рынке в 2001 году.
Основное отличие между DDR и SDRAM заключается в том, что вместо удвоения тактовой частоты для ускорения работы, эти модули передают данные дважды за один такт.
Сейчас это основной стандарт памяти, но он уже начинает уступать свои позиции DDR2.

DDR2 (Double Data Rate 2) - более новый вариант DDR, который теоретически должен быть в два раза более быстрым.
Впервые память DDR2 появилась в 2003 году, а чипсеты, поддерживающие ее - в середине 2004.
Эта память, также как DDR, передает два набора данных за такт.
Основное отличие DDR2 от DDR - способность работать на значительно большей тактовой частоте, благодаря усовершенствованиям в конструкции.
Но измененная схема работы, позволяющая добиться высоких тактовых частот, в то же время увеличивает задержки при работе с памятью.

DDR3 SDRAM (синхронная динамическая память с произвольным доступом и удвоенной скоростью передачи данных, третье поколение) - это тип оперативной памяти, используемой в вычислительной технике в качестве оперативной и видео- памяти.
Пришла на смену памяти типа DDR2 SDRAM.

У DDR3 уменьшено на 40 % потребление энергии по сравнению с модулями DDR2, что обусловлено пониженным (1,5 В, по сравнению с 1,8 В для DDR2 и 2,5 В для DDR) напряжением питания ячеек памяти.
Снижение напряжения питания достигается за счёт использования 90-нм (вначале, в дальнейшем 65-, 50-, 40-нм) техпроцесса при производстве микросхем и применения транзисторов с двойным затвором Dual-gate (что способствует снижению токов утечки).

Модули DIMM с памятью DDR3 механически не совместимы с такими же модулями памяти DDR2 (ключ расположен в другом месте), поэтому DDR2 не могут быть установлены в слоты под DDR3 (это сделано с целью предотвращения ошибочной установки одних модулей вместо других - эти типы памяти не совпадают по электрическим параметрам).

RAMBUS (RIMM)

RAMBUS (RIMM) - это вид памяти, который появился на рынке в 1999 году.
Он основан на традиционной DRAM но с кардинально измененной архитектурой.
Дизайн RAMBUS делает обращение к памяти более «разумным», позволяя получать предварительный доступ к данным, немного разгружая центральный процессор.
Основная идея, использованная в этих модулях памяти, заключается в получении данных небольшими пакетами но на очень высокой тактовой частоте.
Например, SDRAM может передавать 64 бит информации при частоте 100 МГц, а RAMBUS - 16 бит при частоте 800 МГц.
Эти модули не стали успешными, так как у Intel было много проблем с их внедрением.
Модули RDRAM появились в игровых консолях Sony Playstation 2 и Nintendo 64.

RAM означает Random Access Memory - Память Произвольного Доступа - память, доступ к которой осуществляется по адресу. Адреса при последовательном доступе могут принимать любые значения, поэтому можно получить независимый доступ к любому адресу (или "ячейке").

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

Динамическая память (DRAM) зародилась в начале 70х. Она основана на емкостных элементах. Мы можем думать о DRAM как о наборе конденсаторов, управляемых переключающимися транзисторами. Только один "конденсаторный транзистор" необходим для хранения одного бита, поэтому DRAM обладает большей емкостью чем SRAM (и она дешевле).
DRAM организована в виде прямоугольного массива ячеек. Чтобы обратиться к ячейке, нам нужно выбрать ряд и колонку, в которой находится эта ячейка. Обычно это реализуется таким образом, что старшая часть адреса указывает на ряд, а младшая часть адреса указывает на ячейку в ряду ("колонку"). Исторически сложилось так (из-за медленной скорости и маленьких IC пакетов в начале 70"х), что адрес подается на DRAM чип в две фазы - адрес ряда с адресом колонки по одинаковым линиям. Сперва чип принимает адрес ряда и затем через несколько наносекунд по той же линии передается адрес колонки. Чип считывает данные и передает их на вывод. При цикле записи данные принимаются чипом вместе с адресом колонки. Для управления чипом используется несколько управляющих линий. RAS (Row Address Strobe) сигналы которыми передается адрес ряда и также активируется весь чип. CAS (Column Address Strobe) сигналы которыми передается адрес колонки. WE (Write Enable) указывающий, что произведенный доступ - это доступ записи. OE (Output Enable) открывает буфера используемые для передачи данных с чипа памяти на "хост" (процессор).
FP DRAM

Так как каждый доступ к классической DRAM требует передачи двух адресов, он был слишком медленным для 25 МГц машин. FP (Fast Page) DRAM это вариант классической DRAM, в котором нет необходимости передавать адрес ряда в каждом цикле доступа. До тех пор пока RAS линия активна, ряд остается выбранным и индивидуальные ячейки из этого ряда можно выбрать передачей только адреса колонки. Итак, в то время как ячейка памяти остается той же самой, время доступа меньше, потому что только одна фаза передачи адреса необходима в большинстве случаев.

EDO (Extended Data Out) DRAM это вариант FP DRAM. В FP DRAM адрес колонки должен оставаться верным во время всего периода передачи данных. Буфера данных активизируются только во время цикла передачи адреса колонки, по сигналу уровня активности CAS сигнала. Данные должны быть считаны с шины данных памяти до того как в чип поступит новый адрес колонки. EDO память сохраняет данные в буферах вывода после того как CAS сигнал возвращается в неактивное состояние и адрес колонки убирается. Адрес следующей колонки может передаваться параллельно с чтением данных. Это предоставляет возможность использовать частичное совпадение при чтении. В то время как ячейки памяти EDO RAM одинаковы по скорости с FP DRAM, последовательный доступ может осуществляться быстрее. Итак EDO должны быть чем-то более быстрым, чем FP, особенно для массивного доступа (как например в графических приложениях).

Video RAM может основываться на любой из перечисленных выше DRAM архитектур. Помимо "обычного" механизма доступа, описанного ниже, у VRAM есть один или два специальных серийных порта. VRAM часто упоминается как двупортовая или трехпортовая память. Серийные порты содержат регистры которые могут хранить содержимое целого ряда. Возможно передать данные с целого ряда массива памяти в регистр (или наоборот) за один цикл доступа. Затем данные могут быть считаны или записаны в регистр серийного доступа порциями любой длины. Поскольку регистр состоит из быстрых, статических ячеек, доступ к нему очень быстр, обычно в несколько раз быстрее чем к массиву памяти. В большинстве типичных приложений VRAM используется в качестве буфера экранной памяти. Параллельный порт (стандартный интерфейс) используется процессором, а серийный порт используется для передачи данных о точках на дисплее (или считывании данных с видео источника).

WRAM это патентованная архитектура памяти разработанная Matrox и (кто же еще, дайте вспомнить...- Samsung?, MoSys?...). Она похожа на VRAM, но позволяет хосту производить более быстрый доступ. WRAM использовалась на графических платах Millenium и Millenium II производимых Matrox (но не на современных Millenium G200).

SDRAM это полная переделка DRAM, представленная в 90"х. "S" означает Synchronous (Синхронная), так как в SDRAM реализован полностью синхронный (и следовательно очень быстрый) интерфейс. Внутри SDRAM содержит (обычно два) DRAM массива. У каждого массива свой собственный Page Register (Регистр Страницы), который (немного) напоминает регистр серийного доступа на VRAM. SDRAM работает гораздо умнее чем обычная DRAM. Весь контур синхронизируется с сигналом внешних часов. На каждом такте часов чип принимает и выполняет команду, переданную по командным линиям. Названия командных линий остались теми же, что и в классических DRAM чипах, но их функции только похожи на оригинал. Есть команды для передачи данных между массивом памяти и регистрами страницы, и для доступа к данным в регистрах страницы. Доступ к регистру страницы очень быстр - современные SDRAMы могут передавать новое слово данных каждые 6..10 нс.

Synchronous Graphics RAM это вариант SDRAM, рассчитанный на графические приложения. Аппаратная структура почти идентична, поэтому в большинстве случаев мы можем менять SDRAM и SGRAM (смотрите Matrox G200-карты - некоторые из них используют SD, другие SG). Разница в функциях осуществляемых регистром страницы. SG может записать несколько расположений в одиночный цикл (это позволяет очень быстро производить заполнения цветом и очистку экрана), и может записать только несколько бит в слове (биты выбираются битовой маской хранимой интерфейсным контуром). Поэтому SG быстрее в графических приложениях, хотя физически не быстрее чем SD при "нормальном" использовании. Добавочные возможности SG используются графическими акселераторами. Я думаю что, в частности, очень полезны возможности очистки экрана и Z-буфера.

RAMBUS (RDRAM)

RAMBUS (торговая марка RAMBUS, Inc.) начал разрабатываться с 80"х, так что он не нов. Современные RAMBUS технологии сочетают в себе старые но очень хорошие идеи и сегодняшнии технологии производства памяти. В основе RAMBUS лежит простая идея: мы берем любой хороший DRAM, встраиваем в чип статический буфер (как в VRAM и SGRAM), и предоставляем специальный, электронно настраивающийся интерфейс работающий на 250..400 МГц. Интерфейс как минимум вдвое быстрее чем применяющийся в SDRAM, и в то время как время случайного доступа обычно медленнее, последовательный доступ производится очень, очень, очень быстро. Помните что когда были представлены 250 МГц RDRAMы, большинство DRAMов работали на частотах 12..25 МГц. RDRAM требует специального интерфейса и очень осторожного физического размещения на PCB. Большинство RDRAM чипов воглядят совсем иначе чем другие DRAMы: у всех у них все сигнальные линии находятся на одной стороне корпуса (чтобы они были одинаковой длины), и только 4 линии питания на другой стороне. RDRAMы используются в графических картах на чипах Cirrus 546x. Вскоре мы увидим RDRAMы используемые в качестве главной памяти на ПК.

Устройство жёстких дисков.

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

Сами диски (толщина примерно 2мм.) изготавливаются из алюминия, латуни, керамики или стекла. (см. Рис)

Для записи используются обе поверхности дисков. Используется 4-9 пластин. Вал вращается с высокой постоянной скоростью (3600-7200 оборотов/мин.)

Вращение дисков и радикальное перемещение головок осуществляется с помощью 2-х электродвигателей.

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

Запись информации на диск ведется по строго определенным местам - концентрическим дорожкам (трекам). Дорожки делятся на сектора. В одном секторе 512 байт информации.

Обмен данными между ОЗУ и НМД осуществляется последовательно целым числом (кластером). Кластер - цепочки последовательных секторов (1,2,3,4,…)

Специальный двигатель с помощью кронштейна позиционирует головку чтения/записи над заданной дорожкой (перемещает ее в радиальном направлении).

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

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

Головки чтения записи перемещаются в вдоль поверхности платтера. Чем ближе к поверхности диска находится головка при этом не касаясь ее, тем выше допустимая плотность записи.

Интерфейсы жестких дисков.

IDE (АТА – Advanced Technology Attachment) - параллельный интерфейс подключения накопителей, именно поэтому был изменен (с выходом SATA) на PATA (Parallel ATA). Раньше использовался для подключения винчестеров, но был вытеснен интерфейсом SATA. В настоящее время используется для подключения оптических накопителей.

SATA (Serial ATA) – последовательный интерфейс обмена данными с накопителями. Для подключения используется 8-pin разъем. Как и в случае с PATA – является устаревшим, и используется только для работы с оптическими накопителями. Стандарт SATA (SATA150) обеспечивал пропускную способность равную 150 МБ/с (1,2 Гбит/с).

SATA 2 (SATA300). Стандарт SATA 2 увеличивал пропускную способность в двое, до 300 МБ/с (2,4 Гбит/с), и позволяет работать на частоте 3 ГГц. Стандартны SATA и SATA 2 совместимы между собой, однако для некоторых моделей необходимо вручную устанавливать режимы, переставляя джамперы.

SATA 3, хотя про требованию спецификаций правильно называть SATA 6Gb/s. Этот стандарт в двое увеличил скорость передачи данных до 6 Гбит/с (600 МБ/с). Также к положительным нововведениям относится функция программного управления NCQ и команды для непрерывной передачи данных для процесса с высоким приоритетом. Хоть интерфейс и был представлен в 2009 году, особой популярностью у производителей он пока не пользуется и в магазинах встречает не так часто. Кроме жестких дисков этот стандарт используется в SSD (твердотельные диски). Стоит заметить, что на практике пропускная способность интерфейсов SATA не отличаются скоростью передачи данных. Практически скорость записи и чтения дисков не превышает 100 Мб/с. Увеличение показателей влияет только пропускную способность между контроллером и кеш-памятью накопителя.

SCSI(Small Computer System Interface) – стандарт применяется в серверах, где необходима повышеная скорость передачи данных.

SAS (Serial Attached SCSI) – поколение пришедшее на смену стандарта SCSI, использующее последовательную передачу данных. Как и SCSI используется в рабочих станциях. Полностью совместив с интерефейсом SATA.

CF (Compact Flash) – Интерфейс для подключения карт памяти, а также для 1,0 дюймовых винчестеров. Различают 2 стандарта: Compact Flash Type I и Compact Flash Type II, отличие в толщине.

FireWire – альтернативный интерфейс более медленному USB 2.0. Используется для подключения портативных жестких дисков. Поддерживает скорость до 400 Мб/с, однако физическая скорость ниже, чем у обычных. При чтении и записи максимальный порг 40 Мб/с.

Типы видеокарт

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

В настоящее время используется 3 типа адаптеров, которые могут совмещаться.

Рассмотрим подробнее типы видеокарт:

  • интегрированная;
  • дискретная;
  • гибридная;
  • две дискретные;
  • Hybrid SLI.

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

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

· Принцип двоичного кодирования

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

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

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

· Принцип адресуемости памяти

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

· Принцип последовательного программного управления

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

· Принцип жесткости архитектуры

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

· Компьютеры, построенные на этих принципах, относят к типу фон-неймановских.

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

· Для сравнения, программа компьютера ENIAC (где не было хранимой в памяти программы) определялась специальными перемычками на панели. Чтобы перепрограммировать машину (установить перемычки по-другому) мог потребоваться далеко не один день. И хотя программы для современных компьютеров могут писаться годы, однако они работают на миллионах компьютеров после несколько минутной установки на жесткий диск.

·

· Машина фон Неймана состоит из запоминающего устройства (памяти) - ЗУ, арифметико-логического устройства - АЛУ, устройства управления – УУ, а также устройств ввода и вывода.

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

· Команда состоит из указания, какую операцию следует выполнить (из возможных операций на данном «железе») и адресов ячеек памяти, где хранятся данные, над которыми следует выполнить указанную операцию, а также адреса ячейки, куда следует записать результат (если его требуется сохранить в ЗУ).


· Арифметико-логическое устройство выполняет указанные командами операции над указанными данными.

· Из арифметико-логического устройства результаты выводятся в память или устройство вывода. Принципиальное различие между ЗУ и устройством вывода заключается в том, что в ЗУ данные хранятся в виде, удобном для обработки компьютером, а на устройства вывода (принтер, монитор и др.) поступают так, как удобно человеку.

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

· Управляющее устройство содержит специальный регистр (ячейку), который называется «счетчик команд». После загрузки программы и данных в память в счетчик команд записывается адрес первой команды программы. УУ считывает из памяти содержимое ячейки памяти, адрес которой находится в счетчике команд, и помещает его в специальное устройство - «Регистр команд». УУ определяет операцию команды, «отмечает» в памяти данные, адреса которых указаны в команде, и контролирует выполнение команды. Операцию выполняет АЛУ или аппаратные средства компьютера.

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

16)Структура и архитектура вычислительной системы

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

По режиму работы ВС различают системы, работающие в
оперативном
неоперативном временных режимах.
Кроме этого, ВС могут быть структурно
одноуровневыми (имеется лишь один общий уровень обработки данных);
Многоуровневыми (иерархическими) структурами. В иерархических ВС машины или процессоры распределены по разным уровням обработки информации, некоторые машины (процессоры) могут специализироваться на выполнении определенных функций.
Структура вычислительной системы.
Структура ВС - это совокупность комплексируемых элементов и их связей. В качестве элементов ВС выступают отдельные ЭВМ и процессоры.
В описанной многоуровневой структуре реализуется классическая фон- неймановская организация ВС и предполагает последовательную обработку информации по заранее составленной программе.
Архитектура вычислительных систем. Классификация архитектур вычислительных систем.
Архитектура системы – совокупность свойств системы, существенных для пользования.
Архитектурой компьютера называется его описание на некотором общем уровне, включающее описание пользовательских возможностей программирования, системы команд, системы адресации, организации памяти и т.д.
Классическая архитектура (архитектура фон Неймана) - одно арифметико-логическое устройство (АЛУ), через которое проходит поток данных, и одно устройство управления (УУ), через которое проходит поток команд - программа. Это однопроцессорный компьютер.
Многомашинная вычислительная система. Здесь несколько процессоров, входящих в вычислительную систему, не имеют общей оперативной памяти, а имеют каждый свою (локальную). Каждый компьютер в многомашинной системе имеет классическую архитектуру, и такая система применяется достаточно широко.
Самой ранней и наиболее известной является классификация архитектур вычислительных систем, предложенная в 1966 году М.Флинном.

· Классификация базируется на понятии потока, под которым понимается последовательность элементов, команд или данных, обрабатываемая процессором. На основе числа потоков команд и потоков данных Флинн выделяет четыре класса архитектур: SISD,MISD,SIMD,MIMD.
SISD (single instruction stream / single data stream) - одиночный поток команд и одиночный поток данных. К этому классу относятся, прежде всего, классические последовательные машины, или иначе, машины фон-неймановского типа, например, PDP-11 или VAX 11/780. В таких машинах есть только один поток команд, все команды обрабатываются последовательно друг за другом и каждая команда инициирует одну операцию с одним потоком данных. Не имеет значения тот факт, что для увеличения скорости обработки команд и скорости выполнения арифметических операций может применяться конвейерная обработка - как машина CDC 6600 со скалярными функциональными устройствами, так и CDC 7600 с конвейерными попадают в этот класс.
SIMD (single instruction stream / multiple data stream) - одиночный поток команд и множественный поток данных. В архитектурах подобного рода сохраняется один поток команд, включающий, в отличие от предыдущего класса, векторные команды. Это позволяет выполнять одну арифметическую операцию сразу над многими данными - элементами вектора. Способ выполнения векторных операций не оговаривается, поэтому обработка элементов вектора может производится либо процессорной матрицей, как в ILLIAC IV, либо с помощью конвейера, как, например, в машине CRAY-1.
MISD (multiple instruction stream / single data stream) - множественный поток команд и одиночный поток данных. Определение подразумевает наличие в архитектуре многих процессоров, обрабатывающих один и тот же поток данных. Однако ни Флинн, ни другие специалисты в области архитектуры компьютеров до сих пор не смогли представить убедительный пример реально существующей вычислительной системы, построенной на данном принципе. Ряд исследователей относят конвейерные машины к данному

В 1946 году трое учёных - Артур Бёркс (англ. Arthur Burks), Герман Голдстайн и Джон фон Нейман - опубликовали статью «Предварительное рассмотрение логического конструирования электронного вычислительного устройства». В статье обосновывалось использование двоичной системы для представления данных в ЭВМ (преимущественно для технической реализации, простота выполнения арифметических и логических операций - до этого машины хранили данные в десятичном виде), выдвигалась идея использования общей памяти для программы и данных. Имя фон Неймана было достаточно широко известно в науке того времени, что отодвинуло на второй план его соавторов, и данные идеи получили название «принципы фон Неймана».

Принцип двоичного кодирования

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

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

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

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

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

Принцип последовательного программного управления

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

Принцип жесткости архитектуры

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

Компьютеры, построенные на этих принципах, относят к типу фон-неймановских.

Компьютер должен иметь :


  • арифметическо-логическое устройство , выполняющее арифметические и логические операции. В наше время это устройство называется центральный процессор. Центральный процессор (central processing unit) – микропроцессор компьютера, представляющий собой микросхему, которая управляет всеми процессами, происходящими в компьютере;
  • устройство управления , которое организует процесс выполнения программ. В современных компьютерах арифметическо-логическое устройство и устройство управления объединены в центральный процессор;
  • запоминающее устройство (память) для хранения программ и данных;
  • внешние устройства для ввода-вывода информации.
  • Память компьютера представляет собой некоторое количество пронумерованных ячеек, в каждой из которых могут находиться или обрабатываемые данные, или инструкции программ. Все ячейки памяти должны быть одинаково легко доступны для других устройств компьютера.

    Принцип работы :

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

    Один из принципов "Архитектуры фон Неймана " гласит: в компьютере не придется изменять подключения проводов, если все инструкции будут храниться в его памяти . И как только эту идею в рамках “архитектуры фон Неймана» воплотили на практике, родился современный компьютер .

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

    Благодаря фирме IBM идеи фон Неймана реализовались в виде широко распространенного в наше время принципа открытой архитектуры системных блоков компьютеров. Согласно этого принципа компьютер не является единым неразъемным устройством, а состоящим из независимо изготовленных частей, причем методы сопряжения устройств с компьютером не являются секретом фирмы-производителя, а доступны всем желающим. Таким образом, системные блоки можно собирать по принципу детского конструктора, то есть менять детали на другие, более мощные и современные, модернизируя свой компьютер (апгрейд, upgrade - "повышать уровень"). Новые детали полностью взаимозаменяемы со старыми. «Открыто архитектурными» персональные компьютеры делает также системная шина, это некая виртуальная общая дорога или жила, или канал, в который выходят все выводы ото всех узлов и деталей системного блока. Надо сказать, что большие компьютеры (не персональные) не обладают свойством открытости, в них нельзя просто так что-то заменить другим, более совершенным, например, в самых современных компьютерах могут отсутствовать даже соединительные провода между элементами компьютерной системы: мышью, клавиатурой ("keyboard"– "клавишная доска") и системным блоком. Они могут общаться между собой при помощи инфракрасного излучения, для этого в системном блоке есть специальное окошко приема инфракрасных сигналов (по типу пульта дистанционного управления телевизора).

    В настоящее время обычный персональный компьютер представляет собой комплекс, состоящий из:

    • основной электронной платы (системной, материнской), на которой размещены те блоки, которые осуществляют обработку информации вычисления;
    • схем, управляющих другими устройствами компьютера, вставляемых в стандартные разъемы на системной плате – слоты ;
    • дисков хранения информации;
    • блока питания, от которого подводится электропитание ко всем электронным схемам;
    • корпуса (системный блок), в котором все внутренние устройства компьютера устанавливаются на общей раме;
    • клавиатуры;
    • монитора;
    • других внешних устройств.

      Компьютеры, построенные на принципах фон Неймана

      В середине 1940-х проект компьютера, хранящего свои программы в общей памяти был разработан в Школе электрических разработок Мура (англ. Moore School of Electrical Engineering ) в Университете штата Пенсильвания . Подход, описанный в этом документе, стал известен как архитектура фон Неймана, по имени единственного из названных авторов проекта Джона фон Неймана, хотя на самом деле авторство проекта было коллективным. Архитектура фон Неймана решала проблемы, свойственные компьютеру ENIAC , который создавался в то время, за счёт хранения программы компьютера в его собственной памяти. Информация о проекте стала доступна другим исследователям вскоре после того, как в

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

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

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

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

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

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

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

Структура отдельной команды имеет вид:

<код операции> <операнды>,

где <код операции> определяет, какая операция должна выполняться;

<операнды> - список (возможно, одноэлементный) тех констант, адресов или имен переменных, над которыми выполняется данная операция.

В зависимости от числа операндов различают одно-, двух- и трехадресные машинные команды. Каждая команда имеет определенный объем, измеряемый байтами.

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



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

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

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

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

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

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

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

Машина фон Неймана состояла из памяти, представлявшей собой набор регистров, АЛУ, устройства ввода-вывода и устройства управления (рис. 3.7).

Устройство ввода передавало команды и данные в АЛУ, откуда они записывались в память. Все команды , совокупность которых называется программой , записываются в память в соседние ячейки по возрастанию их адресов, а данные, которые требуют обработки, - в ячейки с произвольными адресами. Последняя команда программы - это обязательно команда остановки работы. Каждая команда содержит код операции, которую необходимо выполнить, и адреса ячеек, в которых находятся данные, обрабатываемые этой командой. Устройство управления содержит специальный регистр, который называется «Счетчик команд ». После загрузки программы и данных в память в счетчик команд записывается адрес первой команды программы. После чего вычислительная машина переходит в режим автоматического выполнения программы.

Рис. 3.7. Машина фон Неймана

Устройство управления считывает из памяти содержимое ячейки памяти, адрес которой находится в счетчике команд, и помещает его в специальное устройство - «Регистр команд ». Регистр команд хранит команду во время ее исполнения. Устройство управления расшифровывает тип операции команды, считывает из памяти данные, адреса которых указаны в команде, и приступает к ее выполнению. Для каждой команды устройство управления имеет свой алгоритм обработки, который заключается в выработке управляющих сигналов для всех остальных устройств машины. Этот алгоритм мог быть реализован на основе комбинационных логических схем или с помощью специальной внутренней памяти, куда эти алгоритмы были записаны в виде микрокоманд, объединенных в микропрограммы. Выполнение микропрограммы происходит по тому же принципу, что и программы в основной памяти, т.е. по принципу фон Неймана. Каждая микрокоманда содержит набор управляющих сигналов для устройств машины. Отметим, что устройства управления выполнением команд процессоров в современных компьютерных системах также строятся по принципу комбинационных схем или микропрограммных автоматов, в соответствии с чем делятся на RISC и CISC процессоры, о которых будет рассказано ниже.

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

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

Джон фон Нейман уже в восьмилетнем возрасте владел основами высшей математики и несколькими иностранными и классическими языками. Закончив в 1926 году Будапештский университет, фон Нейман преподавал в Германии, а в 1930 году эмигрировал в США и стал сотрудником Принстонского института перспективных исследований.

В 1944 году фон Нейман и экономист О. Моргенштерн написали книгу «Теория игр и экономическое поведение». Эта книга содержит не только математическую теорию игр, но ее применения к экономическим, военным и другим наукам. Джон фон Нейман был направлен в группу разработчиков ENIAC консультантом по математическим вопросам, с которыми встретилась эта группа.

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

1. Принцип программного управления

Этот принцип обеспечивает автоматизацию процессов вычислений на ЭВМ.

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


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

Отсутствие принципиальной разницы между программой и данными дало возможность ЭВМ самой формировать для себя программу в соответствии с результатом вычислений.

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

3. Принцип адресности

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

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

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

Компьютеры, построенные на этих принципах, относят к типу фон-неймановских.

На сегодняшний день это подавляющие большинство компьютеров, в том числе и IBM PC – совместимые. Но есть и компьютерные системы с иной архитектурой – например системы для параллельных вычислений.

Магистрально-модульный принцип построения ЭВМ

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

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

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

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


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

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

Выбор абонента по обмену данными производит процессор, который формирует код адреса данного устройства, а для ОЗУ - код адреса ячейки памяти. Код адреса передается по адресной шине, причем сигналы передаются в одном направлении, от процессора к устройствам, т. е. эта шина является однонаправленной.

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

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

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

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

Разработка нового в области ПК всегда базируется на старых стандартах и принципах. Поэтому знание их является основополагающим фактором для (или против) выбора новой системы.

В состав ЭВМ входят следующие компоненты :

    центральный процессор (CPU); оперативная память (memory);
    устройства хранения информации (storage devices);
    устройства ввода (input devices);
    устройства вывода (output devices);
    устройства связи (communication devices).

 

Возможно, будет полезно почитать: