Файл: Архитектура современных компьютеров (Зарождение архитектуры ПК и принципы Джона фон Неймана).pdf

ВУЗ: Не указан

Категория: Курсовая работа

Дисциплина: Не указана

Добавлен: 01.04.2023

Просмотров: 148

Скачиваний: 1

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

ВВЕДЕНИЕ

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

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

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

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

В качестве задач для достижения данной цели будут взяты:

Рассмотрение истории происхождения архитектуры современных ПК;

Изучение отдельно взятых блоков ПК и их функций.

Глава 1. История архитектуры персонального компьютера

Зарождение архитектуры ПК и принципы Джона фон Неймана

В целом, если довольно сильно углубиться в тему, можно обнаружить, что первая оформленная архитектура ПК была обнаружена в переписке между Чарльзом Бэббиджем (изобретателем первой аналитической вычислительной машины) и Адой Лавлейс (британским математиком), данная переписка описывала основной механизм анализа.[1]


Но в наше время логические элементы ПК, хоть и прошло колоссальное количество времени, функционируют по принципам составленным венгеро-американским физиком и математиком Джоном фон Нейманом (1903 - 1957), который ко всему прочему внёс непомерный вклад в продвижение и модернизацию ПК. Исключением являются только отдельно взятые типы систем для параллельных вычислений, у которых нет счетчика команд, не осуществлен классический концепт переменной и в наличии иные важные и принципиальные различия от общепринятой модели (как пример могут быть потоковая и редукционная ЭВМ). Его принципы гласили:

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

Данные и команды, находятся в одной и той же памяти и не различимы внешне. Их можно опознать лишь по методу использования; то есть одно конкретно взятое значение в ячейке памяти возможно использовать и как данные, и как команду, и как адрес, это зависит от метода обращения. Это способствует тому, что имеется возможность производить с командами те же операции, что и с числами, и, исходя из этого, открывает некоторые возможности. Так, циклически варьируя адресную часть команды, имеется возможность обеспечить обращение к последовательным элементам массива данных. Данный приём носит название “модификации команд” и с позиции современного программирования не имеет большой значимости и не приветствуется. Наиболее полезным является иное следствие принципа однородности памяти, когда команды одной и той же программы могут быть получены как результат исполнения другой программы. Данная возможность находится в основе трансляции - перевода текстовой части программы с языка высокого уровня на язык определённой вычислительной машины.[2]

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

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

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

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


Также более подробно принципы фон Неймана описаны в его труде «Первый проект».

1.2 Вычислительная машина Джона фон Неймана и её функциональное устройство

Исходя из принципов фон Неймана ПК состоит из:

АЛУ – Арифметико - логическое устройство, осуществляющее арифметические и логические процессы;

УУ - Устройство управления, назначением которого является налаживание выполнения программ;

ЗУ - Запоминающее устройство, в том числе ОЗУ - оперативное запоминающее устройство и ВЗУ - внешнее запоминающее устройство;

Внешние устройства для ввода-вывода данных.

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

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

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

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

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


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

Управляющее устройство состоит из «счетчика команд», который представляет собой специальный регистр (ячейку). После того как загружаются программы и данные в память счетчика команд, сохраняется адрес начальной команды программы. УУ выявляет из памяти то, что содержится в ячейке памяти, той, адрес которой сохранил счётчик команд, и располагает его в специальном устройстве — «Регистре команд». УУ распознаёт операцию команды, «помечает» в памяти данные, у которых адреса помечены в команде, и сопровождает исполнение всей команды. Саму же операцию совершает АЛУ или же аппаратные средства ПК.[4]

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

Рисунок 1 Простое графическое изображение ЭВМ Джона фон Неймана

1.3 Недостатки архитектуры фон Неймана

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

Существует несколько направлений данной критики:

«Семантический разрыв».

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


Данную нестабильность можно успешно регулировать на программном уровне, для этого применяются компиляторы, но в промежутке 60-70 годов XX века существовало очень много прототипов, которые реализовывали решение данной проблемы аппаратно. Как отечественный пример можно выделить вычислительные машины марки “МИР”. Также, в какой-то степени попыткой повысить семантический уровень, можно считать и CISC – архитектуры системы команд, пусть время и показало, что более перспективным оказалось прямо обратное направление максимальной “примитивизации” набора команд, реализованный в RISC – архитектурах.

Разделение операционного устройства и памяти.

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

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

Есть и радикальные предложения, которые в последние годы начали реализоваться в обиход, и содержатся в создании, как принято ее называть «умной памяти», которая бы интегрировала, фиксируя ячейки со схемами обработки данных.

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

Последовательный принцип выполнения.

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