Типы вычислительных систем

Курсовой проект - Компьютеры, программирование

Другие курсовые по предмету Компьютеры, программирование

простых операций. Это позволяет значительно упростить внутреннюю структуру процессора, уменьшить фазы дробления конвейерной обработки и увеличить частоту работы конвейера. Но здесь необходимо отметить, что за эффект приходится расплачиваться усложнением процедур обмена данными между регистрами сверхоперативной памяти и кэш-памяти с оперативной памятью. Микропроцессоры фирмы Intel изначально относились к CISC-процессорам (Complete Instruction Set Computing - вычисления с полной системой команд). В компьютерах этой группы большую долю команд составляют команды типа память-память, в которых операнды и результаты операций находятся в оперативной памяти. Время обращения к памяти и время вычислений соотносится примерно 5:1. В RISC-машинах с большой сверхоперативной памятью большой удельный вес составляют операции регистр-регистр, и отношение времени обращения к памяти к времени вычислений составляет 2 к 1.

Эволюция микропроцессоров показывает, что постепенно оба направления начинают сближаться, что и в схемах Pentiumов последних выпусков отчетливо формируется RISC-ядро и расширяется сверхоперативная память. Однако испытания самых мощных микропроцессоров фирм Intel и AMD показали, что ядро Athlon примерно в два раза быстрее, чем у Pentium, но более медленная (примерно вдвое) кэш-память. Суперскалярность затрагивает и организацию конвейера последовательно выполняемых команд: формирование адреса команды, выбор команды, формирование адресов и выбор операндов, выполнение команды, запись результата. Однако примитивная организация памяти компьютеров (память линейна и одномерна) не позволяет организовывать длинные и эффективные конвейеры. Линейные участки современных программ редко превышают 10-15 последовательно выполняемых команд. Поэтому конвейер часто перезапускается, что сильно снижает производительность компьютера в целом.

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

Другой модификацией классической структуры ЭВМ являются VLIW-компьютеры (Very Large Instruction Word - очень длинное командное слово). Компьютеры этого типа выбирают из памяти суперкоманды, включающие несколько команд программы. Здесь возможны варианты. В самом простом случае это приводит к появлению буфера команд (кэш-команд) с целью ускорения конвейера операций. По этому принципу работает кэш-память 1-го уровня, часть которой используется для ускоренной выборки команд, а другая - для данных. В более сложных случаях в состав суперкоманд стараются включать параллельные команды, несвязанные общими данными. Если процессор ЭВМ при этом построен из функционально независимых устройств (устройства алгебраического сложения, умножения, сопроцессоры), то в этом случае обеспечивается максимальный эффект работы ЭВМ. Но это направление связано с кардинальной перестройкой процессов трансляции и исполнения программ. Здесь значительно усложняются средства автоматизации программирования. VLIW-компьютеры могут выполнять суперскалярную обработку, то есть одновременно выполнять две или более команды. В целом ряде структур суперЭВМ использовалась эта идея. Отметим, что и в Pentium последних выпусков имеется возможность выполнения до десятка команд одновременно. Эта реализация имеет две цели:

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

одновременное выполнение нескольких команд (независимых по данным и регистрам их хранения), например, команд пересылки и арифметических операций.

Векторная или матричная обработка предполагает обработку одной командой нескольких комплектов операндов. Внутри одной архитектуры начинают просматриваться черты другой. Подобные команды относятся к архитектуре SIMD (Single Instruction - Multiple Data, одиночный поток команд - множественный поток данных). Истоки этой технологии можно обнаружить в операциях работы со строковыми (символьными) данными. Векторные процессоры имелись у всех суперЭВМ. В современных компьютерах, построенных на микропроцессорах, этот вид обработки реализован своеобразно.

Он получил название MMX- и SSE-технологий. Их введение связано с ориентацией на работу с видео-, аудио- и графической информацией. В приложениях с этими типами данных очень велика доля циклов, участков программ, повторяемых многократно. Занимая примерно 10% от объема всего приложения, на их выполнение может уйти до 90% общего времени выполнения. Включение операций, относящихся к SIMD, позволяет значительно ускорить вычисления.

Технология MMX появилась в 1997 году в микропроцессорах Pentium II. В зависимости от контекста она расшифровывается как multi-media extensions (мультимедийные расширения) или как matrix math extensions (матричные математические расширения), что не особенно противоречит друг другу, если учесть, что операции этой группы работают с целыми числами. MMX включает 57 различных команд, позволяющих выполнять следующие операции над несколькими операндами с изменяемыми форматами данных:

арифметические опе?/p>