Партнерка на США и Канаду по недвижимости, выплаты в крипто
- 30% recurring commission
- Выплаты в USDT
- Вывод каждую неделю
- Комиссия до 5 лет за каждого referral
В зависимости от кодов, используемых для представления операндов, АЛУ делятся на:
1)Последовательные
2)Параллельные.
В последовательных АЛУ операнды представляются в последовательном коде, а операции производятся последовательно во времени над их отдельными разрядами.
В параллельных АЛУ операнды представлены параллельными кодами и операции совершаются одновременно над всеми разрядами операндов.
АЛУ последовательного действия в настоящее время практически не применяются из-за их низкого быстродействия.
По способу представления чисел различают АЛУ:
• для чисел с фиксированной точкой;
• для чисел с плавающей точкой;
• для десятичных чисел.
По характеру использования элементов и узлов АЛУ делятся на:
- блочные;
- многофункциональные.
В блочном АЛУ операции над числами с фиксированной и плавающей запятой, десятичными числами и алфавитно-цифровыми полями выполняются в отдельных блоках, при этом повышается скорость работы, так как блоки могут параллельно выполнять соответствующие операции, но значительно возрастают затраты оборудования. В многофункциональных АЛУ операции над всеми формами представления чисел выполняются одними и теме же схемами, которые коммутируются нужным образом в зависимости от требуемого режима работы.
Система обработки данных (СОД) – совокупность технических средств ПО, предназначенных для обработки данных.
По способу построения СОД выделяют:
1.Одномашинные СОД. Исторически первыми и до сих пор широко распространенными являются одномашинные СОД, построенные на базе единственной ЭВМ с традиционной однопроцессорной структурой. К настоящему времени накоплен значительный опыт проектирования к эксплуатации таких СОД, и поэтому создание, их, включая разработку программного обеспечения, не вызывает принципиальных трудностей. Однако производительность и надежность существующего парка ЭВМ оказывается удовлетворительной лишь для ограниченного применения, когда требуется относительно невысокая (до нескольких миллионов операций в секунду) производительность и допускается простой системы в течение нескольких часов из-за отказов оборудования. Повышение производительности и надежности ЭВМ обеспечивается в основном за счет совершенствования элементно-технологической базы. Достигнутое к настоящему времени быстродействие электронных схем приближается к физическому пределу, и производительность ЭВМ на уровне десяти миллионов операций в секунду можно рассматривать как максимальную возможную. При любом уровне технологии нельзя обеспечить абсолютную надежность элементной базы, и поэтому нельзя для одномашинных СОД исключить возможность потери работоспособности. Таким образом, одномашинные СОД лишь частично удовлетворяют потребность в автоматизации обработки данных.
2.Вычислительные комплексы. Начиная с 60-х годов для повышения надежности и производительности СОД, несколько ЭВМ связывались между собой, образуя многомашинный вычислительный комплекс.
В ранних многомашинных комплексах связь между ЭВМ обеспечивалась через общие внешние запоминающие устройства – накопители на магнитных дисках (НМД) или магнитных лентах (НМЛ) (рис, а), т. е. за счет доступа к общим наборам данных. Такая связь называется косвенной и оказывается эффективной только в том случае, когда ЭВМ взаимодействуют достаточно редко, например, при отказе одной из ЭВМ или в моменты начала и окончания обработки данных. Более оперативное взаимодействие ЭВМ достигается за счет прямой связи через адаптер, обеспечивающий обмен данными между каналами ввода – вывода ЧКВВ) двух ЭВМ (рис. 1.1, б) и передачу сигналов прерывания. За счет этого создаются хорошие условия для координации процессов обработки данных и повышается оперативность обмена данными, что позволяет вести параллельно процессы обработки и существенно увеличивать производительность СОД. В настоящее время многомашинные вычислительные комплексы широко используются для повышения надежности и производительности СОД.

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

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

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

Рис - Вычислительная сеть
В конце 60-х годов был предложен способ построения вычислительных сетей, объединяющих ЭВМ (вычислительные комплексы) с помощью базовой сети передачи данных. Структура вычислительной сети в общих чертах представлена на рис. 1.4. Ядром является базовая сеть передачи данных (СПД), которая состоит из каналов и узлов связи (УС). Узлы связи принимают данные и передают их в направлении, обеспечивающем доставку данных абоненту. ЭВМ подключаются к узлам базовой сети передачи данных, чем обеспечивается возможность обмена данными между любыми парами ЭВМ. Совокупность ЭВМ, объединенных сетью передачи данных, образует сеть ЭВМ. К ЭВМ непосредственно или с помощью каналов связи подключаются терминалы, через которые пользователи взаимодействуют с сетью. Совокупность терминалов и средств связи, используемых для подключения терминалов к ЭВМ, образует терминальную сеть. Таким образом, вычислительная сеть представляет собой композицию базовой сети передачи данных, сети ЭВМ и терминальной сети. Такая вычислительная сеть называется глобальной или распределенной (в дальнейшем – «вычислительная сеть», в отличие от локальной). Вычислительные сети используются для объединения ЭВМ, находящихся на значительном расстоянии друг от друга в пределах региона, страны или континента.
В вычислительной сети все ЭВМ оснащаются специальными программными средствами для сетевой обработки данных. На сетевое программное обеспечение возлагается широкий комплекс функций: управление аппаратурой сопряжения и каналами связи: установление соединений между взаимодействующими процессами и ЭВМ; управление процессами передачи данных; ввод и выполнение заданий от удаленных терминалов; доступ программ к наборам данных, размещенных в удаленных ЭВМ, и др. К сетевому программному обеспечению предъявляются следующие требования: сохранение работоспособности сети при изменении ее структуры вследствие выхода из строя отдельных ЭВМ, каналов и узлов связи, а также возможность работы ЭВМ с терминалами различных типов и взаимодействия разнотипных ЭВМ. Функции, возлагаемые на сетевое программное обеспечение, отличаются высоким уровнем сложности и реализуются с использованием специально разработанных методов управления процессами пере дачи и обработки данных.
Вычислительные сети – наиболее эффективный способ построения крупномасштабных СОД. Использование вычислительных сетей позволяет автоматизировать управление отраслями производства, транспортом и материально-техническим снабжением в масштабе крупных регионов и страны в целом. За счет концентрации в сети больших объемов данных и общедоступности средств обработки значительно улучшается информационное обслуживание научных исследований, повышается производительность труда инженерно-технических работников и качество административно-управленческой деятельности. Кроме того, объединение ЭВМ в вычислительные сети позволяет существенно повысить эффективность их использования. Как показывает практика, стоимость обработки данных в вычислительных сетях, по крайней мере, в полтора раза меньше, чем при использовании автономных ЭВМ.
Локальные вычислительные сети. К концу 70-х годов в сфере обработки данных широкое распространение наряду с ЭВМ общего назначения получили мини и микро-ЭВМ и начали применяться персональные ЭВМ. При этом для обработки данных в рамках одного предприятия или его подразделения использовалось большое число ЭВМ, каждая из которых обслуживала небольшую группу пользователей, а микро-ЭВМ и персональные ЭВМ – отдельных пользователей. В то же время коллективный характер труда требовал оперативного обмена данными между пользователями, т. е. объединения ЭВМ в единыйкомплекс. В конце 70-х годов разработан эффективный способ объединения ЭВМ, расположенных на незначительном расстоянии друг от друга – в пределах одного здания или группы соседних зданий, с помощью моноканала, (последовательного интерфейса) – локальные вычислительные сети.
Локальная вычислительная сеть (ЛВС) – совокупность близкорасположенных ЭВМ, которые связаны последовательными интерфейсами и оснащены программными средствами, обеспечивающими информационное взаимодействие между процессами в разных ЭВМ.

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

Управляющий блок выдает последовательность сигналов, которые обеспечивают выполнение данной команды. Информационные сигналы зависят не только от исходных значений обрабатываемых данных, но и от результатов получаемых в процессе обработки. Порядок функционирования устройства базируется на следующих положениях:
1) Любая машинная команда рассматривается, как некоторое сложное действие, которое состоит из последовательности элементарных действий над словами информации – микроопераций.
2) Порядок следования микроопераций зависит не только от значений преобразуемых слов, но также от их информационных сигналов, вырабатываемых операционным автоматом. Примерами таких сигналов могут быть признаки результата операции, значения отдельных битов данных и т. п.
3) Процесс выполнения машиной команды описывается в виде некоторого алгоритма в терминах микроопераций и логических условий. Описание информационных сигналов – микропрограмма.
4) Микропрограмма служит не только для обработки данных, но и обеспечивает управление работой всего устройства в целом – принцип микропрограммного управления. Операционный блок обеспечивает выполнение определенного набора микроопераций и вычисление необходимых логических условий. Управляющий автомат, согласно заданной машинной команде, генерирует необходимую последовательность сигналов, инициирующих соответствующие микрооперации, согласно микропрограмме и значениями логических условий, формируемых операционным в ходе обработки по микропрограмме. Таким образом, микропрограммы выступают, с одной стороны, в роли закона по которому выполняется обработка, с другой стороны, закон, по которому работает управляющий блок.
Операционный блок процессора представляет собой некоторую композицию так называемых композиционных элементов. Операционный элемент имеет аппаратную реализацию в виде «отдельной» части. Обеспечивает хранение слов, выполнение микроопераций над словами и их полями, а также вычисление логических условий. Все элементы в операционном автомате (ОП) соединяются между собой с помощью шин, которые обеспечивают передачу слов с выхода одного операционного элемента на вход другого. Все микрооперации разделяются на семь групп:

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

Ширина шины – количество одновременно передаваемых данных.
2Регистры. Регистр – совокупность запоминающих элементов, которые предназначены для приема, хранения и выдачи информации.

С помощью регистра выполняются МО установки, инвертирования, сдвига на заданное число разрядов. Любой регистр может подразделяться на подрегистры, которые соответствуют определенным полям слова. Над подрегистрами могут выполняться автономные операции. Выдача информации из регистра производится без потери в источнике.
3Счетчики.
![]()
Обеспечивает МО счета (прямого или обратного) Сч:=Сч±const const = 2k – степень двойки. Суммирующие счетчики (прямое) Вычитающие счетчики (обратное)
Реверсирующие счетчики (то и другое направление)
Счетчики строятся с использованием запоминающих элементов (регистров). Кроме МО
счета счетчика можно реализовать все МО, которые характерны для регистров, то есть
прием, выдачу, сдвиг кода, хранение.

4Сумматоры.
Операционный элемент, который реализует МО:
1) С:=А+В
2) С:=С+В – рекуррентная схема.
Различают комбинационные и накапливающие сумматоры, которые реализуют соответственно (1) и (2).
Комбинационный сумматор.

На самом деле сумматор обрабатывает три операнда: А, В – слова одной разрядности, а третий операнд однобитовый. CY. C(n:0) = A(n:0) + B(n:0)+C0
Обычно используют комбинационный сумматор, т. к. написание упрощенное.
Комбинационный сумматор – техническое устройство (схема), в которой результат
присутствует на выходе до тех пор, пока на входе присутствуют входные сигналы.
Накапливающие сумматоры строятся на основе регистров, поэтому результат
суммирования может быть считан из соответствующего выхода регистра в любой момент
времени до новой МО.

Также может быть реализован с помощью комбинационного сумматора.

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

Если m = 2n+1 –1, то такой дешифратор называется полным.
В противном случае – неполным. Эти операционные элементы используются для
организации связи между устройствами, в том числе, с памятью ЭВМ. Обратное
преобразование (из унитарного кода в позиционный код) реализуется с помощью
шифратора.

Более сложные преобразования (из бинарного кода в десятичный) требуют более сложных преобразователей.
6Вычисление значений логических условий.
Эти функции операционным элементом в виде булевой функции.
φ1(s1,s2,…,sn) si – некоторые слова, поля слов или отдельные биты слов.
Функция вычисления комбинационной схемой:

Наиболее распространенными схемами для вычисления логических условий являются схемы, которые вычисляют отношение 2-х слов А и В: φ1(А, В)
7Комбинированные операционные элементы.
Комбинированные операционные элементы обеспечивают реализацию нескольких разнотипных МО. Комбинированные операционные элементы строятся на основе регистров, имеющих входную и выходную логику.
CISC и RISC архитектуры
Термин "архитектура системы" часто употребляется как в узком, так и в широком смысле этого слова. В узком смысле под архитектурой понимается архитектура набора команд. Архитектура набора команд служит границей между аппаратурой и программным обеспечением и представляет ту часть системы, которая видна программисту или разработчику компиляторов. Следует отметить, что это наиболее частое употребление этого термина. В широком смысле архитектура охватывает понятие организации системы, включающее такие высокоуровневые аспекты разработки компьютера как систему памяти, структуру системной шины, организацию ввода/вывода и т. п.
Архитектура набора команд служит границей между аппаратурой и программным обеспечением и представляет ту часть системы, которая видна программисту или разработчику компиляторов.
Двумя основными архитектурами набора команд, используемыми компьютерной промышленностью на современном этапе развития вычислительной техники являются архитектуры CISC и RISC.
Лидером в разработке микропроцессоров c полным набором команд (CISC - Complete Instruction Set Computer) считается компания Intel со своей серией x86 и Pentium. Эта архитектура является практическим стандартом для рынка микрокомпьютеров.
Для CISC-процессоров характерно:
· сравнительно небольшое число регистров общего назначения;
· большое количество машинных команд, некоторые из которых нагружены семантически аналогично операторам высокоуровневых языков программирования и выполняются за много тактов;
· большое количество методов адресации;
· большое количество форматов команд различной разрядности;
· преобладание двухадресного формата команд;
· наличие команд обработки типа регистр-память.
Основой архитектуры современных рабочих станций и серверов является архитектура компьютера с сокращенным набором команд (RISC - Reduced Instruction Set Computer). Зачатки этой архитектуры уходят своими корнями к компьютерам CDC6600, разработчики которых (Торнтон, Крэй и др.) осознали важность упрощения набора команд для построения быстрых вычислительных машин.
Разработка экспериментального проекта компании IBM началась еще в конце 70-х годов, но его результаты никогда не публиковались и компьютер на его основе в промышленных масштабах не изготавливался. В 1980 году Д. Паттерсон со своими коллегами из Беркли начали свой проект и изготовили две машины, которые получили названия RISC-I и RISC-II. Главными идеями этих машин было отделение медленной памяти от высокоскоростных регистров и использование регистровых окон. В 1981году Дж. Хеннесси со своими коллегами опубликовал описание стенфордской машины MIPS, основным аспектом разработки которой была эффективная реализация конвейерной обработки посредством тщательного планирования компилятором его загрузки.
Эти три машины имели много общего. Все они придерживались архитектуры, отделяющей команды обработки от команд работы с памятью, и делали упор на эффективную конвейерную обработку. Система команд разрабатывалась таким образом, чтобы выполнение любой команды занимало небольшое количество машинных тактов (предпочтительно один машинный такт). Сама логика выполнения команд с целью повышения производительности ориентировалась на аппаратную, а не на микропрограммную реализацию. Чтобы упростить логику декодирования команд использовались команды фиксированной длины и фиксированного формата.
Среди других особенностей RISC-архитектур следует отметить наличие достаточно большого регистрового файла (в типовых RISC-процессорах реализуются 32 или большее число регистров по сравнению с регистрами в CISC-архитектурах), что позволяет большему объему данных храниться в регистрах на процессорном кристалле большее время и упрощает работу компилятора по распределению регистров под переменные. Для обработки, как правило, используются трехадресные команды, что помимо упрощения дешифрации дает возможность сохранять большее число переменных в регистрах без их последующей перезагрузки.
Развитие архитектуры RISC в значительной степени определялось прогрессом в области создания оптимизирующих компиляторов. Именно современная техника компиляции позволяет эффективно использовать преимущества большего регистрового файла, конвейерной организации и большей скорости выполнения команд. Современные компиляторы используют также преимущества другой оптимизационной техники для повышения производительности, обычно применяемой в процессорах RISC: реализацию задержанных переходов и суперскалярной обработки, позволяющей в один и тот же момент времени выдавать на выполнение несколько команд.
Следует отметить, что в последних разработках компании Intel (имеется в виду Pentium P54C и процессор следующего поколения P6), а также ее последователей-конкурентов (AMD R5, Cyrix M1, NexGen Nx586 и др.) широко используются идеи, реализованные в RISC-микропроцессорах, так что многие различия между CISC и RISC стираются. Однако сложность архитектуры и системы команд x86 остается и является главным фактором, ограничивающим производительность процессоров на ее основе.
Микропроцессоры типа CISC
Микропроцессор CISC использует набор машинных инструкций, полностью соответствующий набору команд языка ассемблера. Вычисления разного типа в нем могут выполняться различными командами, даже если они приводят к одному результату (например, умножение на два и сдвиг на один разряд влево). Такая архитектура обеспечивает разнообразные и мощные способы выполнения вычислительных операций на уровне машинных команд, но для выполнения каждой команды обычно требуется большое число тактов процессора.
Для CISC-процессоров характерно:
сравнительно небольшое число регистров общего назначения;
большое количество машинных команд, некоторые из которых нагружены семантически аналогично операторам высокоуровневых языков программирования и выполняются за много тактов;
большое количество методов адресации;
большое количество форматов команд различной разрядности;
преобладание двухадресного формата команд; наличие команд обработки типа регистр-память.
Организация первых моделей процессоров - i8086/8088 - была направлена, в частности, на сокращение объёма программ, критичного для систем того времени, отличавшихся малой оперативной памятью. Расширение спектра операций, реализуемых системой команд, позволило уменьшить размер программ, а также трудоёмкость их написания и отладки. Однако увеличение числа команд повысило трудоёмкость разработки их топологических и микропрограммных реализаций. Последнее проявилось в удлинении сроков разработки CISC-процессоров, а также в проявлении различных ошибок в их работе. Кроме того, нерегулярность потока команд ограничила развитие топологии временным параллелизмом обработки инструкций на конвейере “выборка команды - дешифрация команды - выборка данных- вычисление - запись результата”.
Эти недостатки обусловили необходимость разработки альтернативной архитектуры, нацеленной, прежде всего, на снижение нерегулярности потока команд уменьшением их общего количества. Это было реализовано в RISC-процессорах, название которых означает “чипы с сокращённой системой команд” (Reduced Instruction Set Computer).
Микропроцессоры типа RISC
Микропроцессоры с архитектурой RISC ( Reduced Instruction Set Computers ) используют сравнительно небольшой (сокращённый ) набор наиболее употребимых команд, определённый в результате статистического анализа большого числа программ для основных областей применения CISC (Complex Instruction Set Computer )- процессоров исходной архитектуры. Все команды работают с операндами и имеют одинаковый формат. Обращение к памяти выполняется с помощью специальных команд загрузки регистра и записи. Простота структуры и небольшой набор команд позволяет реализовать полностью их аппаратное выполнение и эффективный конвейер при небольшом объеме оборудования. Арифметику RISC - процессоров отличает высокая степень дробления конвейера. Этот прием позволяет увеличить тактовую частоту ( значит, и производительность ) компьютера; чем более элементарные действия выполняются в каждой фазе работы конвейера, тем выше частота его работы. RISC - процессоры с самого начала ориентированны на реализацию всех возможностей ускорения арифметических операций, поэтому их конвейеры обладают значительно более высоким быстродействием, чем в CISC - процессорах. Поэтому RISC - процессоры в 2 - 4 раза быстрее имеющих ту же тактовую частоту CISC - процессоров с обычной системой команд и высокопроизводительней, несмотря на больший объем программ, на ( 30 % ). Дейв Паттерсон и Карло Секуин сформулировали 4 основных принципа RISC :
1. Любая операция должна выполняться за один такт, вне зависимости от ее типа.
2. Система команд должна содержать минимальное количество наиболее часто используемых простейших инструкций одинаковой длины.
3. Операции обработки данных реализуются только в формате “регистр - регистр“ (операнды выбираются из оперативных регистров процессора, и результат операции записывается также в регистр; а обмен между оперативными регистрами и памятью выполняется только с помощью команд загрузки\записи ).
4. Состав системы команд должен быть “ удобен “ для компиляции операторов языков высокого уровня
Скалярные и векторные процессоры
SISD – Single Instruction, Single Data – скалярный процессор обрабатывающий один элемент данных за одну инструкцию. Типичными элементами данных могут быть целые числа и числа с плавающей запятой.
SIMD – single instruction, multiple data – векторный процессор выполнения команды, в котором операндами могут быть упорядоченные массивы данных (векторы).
Векторные процессоры делятся на:
Векторные расширения SSE (Streaming SIMD Extensions, потоковое SIMD-расширение процессора). Этот набор инструкций был разработан фирмой Intel и применён в Pentium 3. В этой архитектуре процессоры имеют восемь 120-битовых регистров. Набор инструкций позволяет работать со скалярными и упакованными типами данных. Их преимущество достигается когда необходимо произвести одну и ту же последовательность действий над разными данными. Тогда блок SSE осуществляет распараллеливание вычислительного процесса между данными.
Конвейер
Главным препятствием высокой скорости выполнения команд является необходимость их вызова из памяти. Для разрешения этой проблемы можно вызывать команды из памяти заранее и хранить в специальном наборе регистров. Эта идея использовалась еще в 1959 году при разработке компьютера Stretch компании IBM, а набор регистров был назван буфером выборки с упреждением. Таким образом, когда требовалась определенная команда, она вызывалась прямо из буфера, а обращения к памяти не происходило.
В действительности при выборке с упреждением команда обрабатывается за два шага: сначала происходит вызов команды, а затем — ее выполнение. Еще больше продвинула эту стратегию идея конвейера. При использовании конвейера команда обрабатывается уже не за два, а за большее количество шагов, каждый из которых реализуется определенным аппаратным компонентом, причем все эти компоненты могут работать параллельно.
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 |


