Смекни!
smekni.com

Концепция 8 1 Описание алгоритма в виде «триад» 8 2 Принципы построения процессора 11 (стр. 5 из 7)

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

Опираясь на эти понятия можно дать следующие определения архитектуры процессора и вычислительной системы.

Архитектура процессора – это абстрактная структура, отражающая организацию процессора и представленная в виде ориентированного графа, состоящего из множества вершин, содержащего не менее одного УУ и не менее одного ИУ, а также множества дуг, образованных потоками команд, исходящими из УУ, и потоками данных, исходящими из ИУ, и при этом:

· соответствующий ему неориентированный граф – связный;

· каждый исходящий поток команд является входящим хотя бы для одного ИУ;

· каждое ИУ имеет хотя бы один входящий поток команд.

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

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

Рассмотрим классический фон-неймановский процессор. Графически архитектура данного процессора представлена на рис.1. Она состоит всего из двух вершин (УУ и ИУ), соединенных потоком команд.

Рис. 1. Графическое изображение архитектуры классического фон-неймановского процессора: а) графическое изображение; б) условные обозначения.

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

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

2.3. Классификация процессорных архитектур

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

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

· архитектуры с хранимой программой (контекстно-свободной программой), представленные в таблице 1;

· архитектуры с хранимым алгоритмом (контекстно-зависимой программой), приведенные в таблице 2.

Таблица 1. Базовые (гомогенные) модели архитектур процессоров с хранимой программой

Фон-неймановские архитектуры

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

SISD

SISD(si)

SISD(si,sd)

SI(sd)SD(si)

SI(sd)SD(si,sd)

SIMD

SIMD(si)

SIMD(si,sd)

SIMD(si,md)

SI(md)MD(si)

SI(md)MD(si,sd)

SI(md)MD(si,md)

MISD

MISD(mi)

MISD(mi,sd)

MI(sd)SD(mi)

MI(sd)SD(mi,sd)

MIMD

MIMD(si,md)

MI(sd)MD(si,md)

MI(md)MD(si)

MI(md)MD(si,sd)

MI(md)MD(si,md)

MIMD(mi)

MIMD(mi,sd)

MIMD(mi,md)

MI(sd)MD(mi)

MI(sd)MD(mi,sd)

MI(sd)MD(mi,md)

MI(md)MD(mi)

MI(md)MD(mi,sd)

MI(md)MD(mi,md)

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

Таблица 2. Базовые (гомогенные) модели архитектур процессоров с хранимым алгоритмом

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

SISD

SI(si)SD(si)

SI(si)SD(si,sd)

SI(si,sd)SD(si)

SI(si,sd)SD(si,sd)

SIMD

SI(si)MD(si)

SI(si)MD(si,sd)

SI(si)MD(si,md)

SI(si,md)MD(si)

SI(si,md)MD(si,sd)

SI(si,md)MD(si,md)

MISD

MI(si)SD(mi)

MI(si)SD(mi,sd)

MI(si,sd)SD(mi)

MI(si,sd)SD(mi,sd)

MI(mi)SD(mi)

MI(mi)SD(mi,sd)

MI(mi,sd)SD(mi)

MI(mi,sd)MD(mi,sd)

MIMD

MI(si)MD(si,md)

MI(si,sd)MD(si,md)

MI(si,md)MD(si)

MI(si,md)MD(si,sd)

MI(si,md)MD(si,md)

MI(si)MD(mi)

MI(si)MD(mi,sd)

MI(si)MD(mi,md)

MI(si,sd)MD(mi)

MI(si,sd)MD(mi,sd)

MI(si,sd)MD(mi,md)

MI(si,md)MD(mi)

MI(si,md)MD(mi,sd)

MI(si,md)MD(mi,md)

MI(mi)MD(si)

MI(mi)MD(si,sd)

MI(mi)MD(si,md)

MI(mi,sd)MD(si)

MI(mi,sd)MD(si,sd)

MI(mi,sd)MD(si,md)

MI(mi,md)MD(si)

MI(mi,md)MD(si,sd)

MI(mi,md)MD(si,md)

MI(mi)MD(mi)

MI(mi)MD(mi,sd)

MI(mi)MD(mi,md)

MI(mi,sd)MD(mi)

MI(mi,sd)MD(mi,sd)

MI(mi,sd)MD(mi,md)

MI(mi,md)MD(mi)

MI(mi,md)MD(mi,sd)

MI(mi,md)MD(mi,md)

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