Что такое матрица процессора
Аннотация: В данной лекции рассматриваются математические основы, способы организации и особенности проектирования ассоциативных, конвейерных и матричных процессоров.
Существующие в настоящее время алгоритмы прикладных задач, системное программное обеспечение и аппаратные средства преимущественно ориентированы на традиционную адресную обработку данных . Данные должны быть представлены в виде ограниченного количества форматов (например, массивы, списки, записи), должна быть явно создана структура связей между элементами данных посредством указателей на адреса элементов памяти, при обработке этих данных должна быть выполнена совокупность операций, обеспечивающих доступ к данным по указателям. Такой подход обуславливает громоздкость операционных систем и систем программирования, а также служит препятствием к созданию вычислительных средств с архитектурой, ориентированной на более эффективное использование параллелизма обработки данных.
Ассоциативные процессоры
Ассоциативный способ обработки данных позволяет преодолеть многие ограничения, присущие адресному доступу к памяти, за счет задания некоторого критерия отбора и проведения необходимых преобразований, только над теми данными, которые удовлетворяют этому критерию . Критерием отбора может быть совпадение с любым элементом данных, достаточным для выделения искомых данных из всех имеющихся. Поиск данных может происходить по фрагменту, имеющему большую или меньшую корреляцию с заданным элементом данных.
Исследованы и в разной степени применяются несколько подходов, различающихся полнотой реализации модели ассоциативной обработки . Если реализуется только ассоциативная выборка данных с последующим поочередным использованием найденных данных, то говорят об ассоциативной памяти или памяти, адресуемой по содержимому. При достаточно полной реализации всех свойств ассоциативной обработки используется термин "ассоциативный процессор ".
Ассоциативные системы относятся к классу: один поток команд – множество потоков данных ( SIMD = Single Instruction Multiple Data ). Эти системы включают большое число операционных устройств, способных одновременно по командам управляющего устройства вести обработку нескольких потоков данных. В ассоциативных вычислительных системах информация на обработку поступает от ассоциативных запоминающих устройств (АЗУ), характеризующихся тем, что информация в них выбирается не по определенному адресу, а по ее содержанию.
Конвейерные процессоры
Процессоры современных компьютеров используют особенную технологию – конвейеры , которые позволяют обрабатывать более одной команды одновременно.
Обработка команды может быть разделена на несколько основных этапов, назовем их микрокомандами . Выделим основные пять микрокоманд :
- выборка команды;
- расшифровка команды;
- выборка необходимых операндов;
- выполнение команды;
- сохранение результатов.
Все этапы команды задействуются только один раз и всегда в одном и том же порядке: одна за другой. Это, в частности, означает, что если первая микрокоманда выполнила свою работу и передала результаты второй, то для выполнения текущей команды она больше не понадобится, и, следовательно, может приступить к выполнению следующей команды. Выделим каждую команду в отдельную часть устройства и расположим их в порядке выполнения. В первый момент времени выполняется первая микрокоманда . Она завершает свою работу и начинает выполняться вторая микрокоманда , в то время как первая готова для выполнения следующей инструкции. Первая инструкция может считаться выполненной, когда завершат работу все пять микрокоманд .
Такая технология обработки команд носит название конвейерной обработки. Каждая часть устройства называется ступенью конвейера , а общее число ступеней – длиной конвейера .
Во многих вычислительных системах наряду с конвейером команд используются и конвейеры данных .
Сочетание этих двух конвейеров позволяет достичь очень высокой производительности на определенных классах задач, особенно если используется несколько различных конвейерных процессоров, способных работать одновременно и независимо друг от друга.
Одной из наиболее высокопроизводительных вычислительных конвейерных систем считается СRАY. В этой системе конвейерный принцип обработки используется в максимальной степени. Имеется и конвейер команд, и конвейер арифметических и логических операций. В системе широко применяется совмещенная обработка информации несколькими устройствами. Максимальная пиковая производительность процессора может составлять 12 GFLOPS .
В настоящее время созданы однокристальные векторно-конвейерные процессоры, основными компонентами которых являются скалярный процессор и 8 идентичных векторных устройств, суммарная производительность которых составляет 64 GFLOPS . На их основе построена система SX-6 компании NEC.
Матричные процессоры
Наиболее распространенными из систем класса один поток команд – множество потоков данных ( SIMD ) являются матричные системы, которые лучше всего приспособлены для решения задач, характеризующихся параллелизмом независимых объектов или данных . Организация систем подобного типа, на первый взгляд, достаточно проста. Они имеют общее управляющее устройство , генерирующее поток команд и большое число процессорных элементов , работающих параллельно и обрабатывающих каждая свой поток данных. Таким образом, производительность системы оказывается равной сумме производительностей всех процессорных элементов . Однако на практике чтобы обеспечить достаточную эффективность системы при решении широкого круга задач, необходимо организовать связи между процессорными элементами с тем, чтобы наиболее полно загрузить их работой. Именно характер связей между процессорными элементами и определяет разные свойства системы.
Одним из первых матричных процессоров был SОLОМОN (60-е годы).
Система SOLOMON содержит 1024 процессорных элемента , которые соединены в виде матрицы: 32х32. Каждый процессорный элемент матрицы включает в себя процессор , обеспечивающий выполнение последовательных поразрядных арифметических и логических операций, а также оперативное ЗУ емкостью 16 Кбайт. Длина слова – переменная от 1 до 128 разрядов. Разрядность слов устанавливается программно. По каналам связи от устройства управления передаются команды и общие константы . В процессорном элементе используется так называемая многомодальная логика, которая позволяет каждому процессорному элементу выполнять или не выполнять общую операцию в зависимости от значений обрабатываемых данных. В каждый момент все активные процессорные элементы выполняют одну и ту же операцию над данными, хранящимися в собственной памяти и имеющими один и тот же адрес .
Идея многомодальности заключается в том, что в каждом процессорном элементе имеется специальный регистр на 4 состояния – регистр моды . Мода (модальность) заносится в этот регистр от устройства управления. При выполнении последовательности команд модальность передается в коде операции и сравнивается с содержимым регистра моды . Если есть совпадения, то операция выполняется. В других случаях процессорный элемент не выполняет операцию, но может, в зависимости от кода, пересылать свои операнды соседнему процессорному элементу . Такой механизм позволяет выделить строку или столбец процессорных элементов , что очень полезно при операциях над матрицами. Взаимодействуют процессорные элементы с периферийным оборудованием через внешний процессор .
Дальнейшим развитием матричных процессоров стала система ILLIАC-4, разработанная фирмой BURROUGHS. Первоначально система должна была включать в себя 256 процессорных элементов , разбитых на группы, каждый из которых должен управляться специальным процессором. Однако по различным причинам была создана система, содержащая одну группу процессорных элементов и управляющий процессор . Если в начале предполагалось достичь быстродействия 1 млрд. операций в секунду, то реальная система работала с быстродействием 200 млн. операций в секунду. Эта система в течение ряда лет считалась одной из самых высокопроизводительных в мире.
В начале 80-х годов в СССР была создана система ПС-2000, которая также является матричной. Основой этой системы является мультипроцессор ПС-2000, состоящий из решающего поля и устройства управления мультипроцессором. Решающее поле строится из одного, двух, четырех или восьми устройств обработки, в каждом из которых 8 процессорных элементов . Мультипроцессор из 64 процессорных элементов обеспечивает быстродействие 200 млн. операций в секунду на коротких операциях.
Как создаются современные процессоры? Насколько это сложный и интересный процесс и почему так важна некая Экстремальная УФ-литография? В этот раз мы копнули действительно глубоко и готовы рассказать вам об этой магии технологий. Располагайтесь поудобнее, будет интересно.
Вот вам затравочка — 30-килоВаттный лазер в вакууме стреляет по капле олова и превращает ее в плазму — скажете фантастика?
А мы разберемся как это работает и расскажем об одной компании из Европы, которая стоит тенью за всеми гигантами Apple, AMD, Intel, Qualcomm, Samsung и другими и без нее никаких новых процессоров бы и не было. И нет это, к сожалению, не Чебоксарский завод электроники.
Чтобы понять процесс экстремальной ультрафиолетовой литографии — нам надо для начала понять, что вообще такое фотолитография. Сам процесс по своей сути очень похож на то как печатаются фотографии с пленочных негативов на фотобумагу! Не верите — сейчас все объясним.
Фотолитография
Начнем с простого примера — возьмем прозрачное стекло и нанесем на него какой-то геометрический рисунок, оставив при этом какие-то участки без краски. По сути, сделаем трафарет. Приложим этот кусок стекла к фонарику и включим его. Мы получим ровно тот же рисунок в виде тени, который мы нанесли на кусок стекла.
В производстве процессоров этот кусок стекла с рисунком называется маска. Маска позволяет получить на поверхности любого материала “засвеченные и незасвеченные” участки любой плоской формы.
Хорошо — рисунок на поверхности мы получили, но это всего лишь тень. Теперь надо как-то его там сохранить. Для этого на поверхность кремниевой пластины наносится специальный светочувствительный слой, который называют Фоторезистом. Для простоты мы не будем тут говорить о позитивных и негативных фоторезистах, почему они так реагируют, все-таки мы не на уроке Физической химии. Просто скажем, что это такое вещество, которое меняет свои свойства, когда на него попадает свет на определенной частоте, то есть на определенной длине волны.
Опять же как и на фотопленке или фотобумаге — специальные слои материалов реагируют на свет!
После того как нужные нам участки на кремнии мы засветили, именно их мы можем убрать, оставив при этом на месте остальные, то есть незасвеченные участки. В итоге мы получили тот рисунок, который и хотели. Это и есть фотолитография!
Конечно, кроме фотолитографии в производстве процессоров участвуют и другие процессы, такие как травление и осаждение, фактически комбинацией этих процессов вместе с фотолитографией транзисторы как-бы печатаются слой за слоем на кремнии.
Технология не новая, почти все процессоры начиная с 1960-х производятся при помощи фотолитографии. Именно эта технология открыла мир полевых транзисторов и путь ко всей современной микроэлектронике.
Но по-настоящему большой скачок в этой области произошел только недавно! С переходом на EUV. И всё из-за длины волны в 13.5 нм. Не переживайте, сейчас объясню!
Длина волны на которой светит наш “фонарик” — это невероятно важный параметр. Именно она и определяет насколько маленьким вы можете получить элементы на кристалле.
Правило максимально простое: Меньше длина волны — больше разрешение, и меньше техпроцесс!
Обратите внимание на картинку. Абсолютно все процессоры начиная с начала 90-х до 2019 года производились с использованием процесса Глубокой УФ-литографии, или DUV литографии. Это то, что было до Экстремальной.
Он основывался на использовании фторид-аргонового лазера, который испускает свет с длиной волны в 193 нанометра. Этот свет лежит в области глубокого ультрафиолета — отсюда и название.
Он проходит через систему линз, маску и попадает на наш кристалл покрытый фоторезистом, создавая необходимый рисунок.
Но у этой технологии тоже были свои ограничения, завязанные на фундаментальных законах физики.
Какой же минимальный техпроцесс возможен? Смотрим на формулу (только не пугайтесь):
Здесь Лямбда — это и есть наша длина волны, а CD — это critical dimension, то есть минимальный размер получаемой структуры. То есть с использованием “старой” DUV литографии можно получить структуры не меньше примерно 50 нм. Но как же это так спросите вы? Ведь производители отлично делали и 14 и 10 нм, а кто-то даже и 7 нм с использованием DUV литографии.
Они пошли на хитрости. Вместо одного засвета через одну единую маску, они стали использовать несколько масок, с разными рисунками, которые дополняют друг-друга. Это процесс получил название множественное экспонирование. Назовем это принципом слоеного пирога!
Да — производители обошли прямые физические ограничения, но физику не обманули!
Появилась серьезная проблема: эти дополнительные шаги сделали производство каждого чипа гораздо дороже, из-за них увеличивается количества брака, есть и другие проблемы.
То есть в теории можно продолжить работать со старой технологией и путем игры с масками и экспонированием (двойная, тройная, четверная экспозиция) уменьшать размеры и дальше, но это сделает процы золотыми. Ведь с каждым слоем процент брака возрастает все выше, а ошибка накапливается!
То есть можно сказать, что DUV — это тупик! Что делать дальше, как уменьшать?
И тут на помощь приходит великая и ужасная технология Экстремальной УФ-литографии, или EUV-литографии!
Посмотрите на фото — оно прекрасно демонстрирует различие двух технологий. Обе получены с использованием 7-нанометрового техпроцесса, но та что слева получена с использованием DUV-литографии и с теми самыми хитростями о которых мы говорили — тройное экспонирование, то есть с поэтапным использованием 3 разных масок. Справа же — технология EUV литографии на 13.5 нанометрах, с использованием одной единственной маски — разница очевидна — границы гораздо четче, лучший контроль геометрии, ну и сам процесс намного быстрее, меньше процент брака, то есть в конце концов дешевле. Вот она дорога в светлое будущее, почему бы сразу так не делать, в чем проблема?
Как работает EUV-литография
Все дело в том, что хоть EUV это та же литография, внутри в деталях все гораздо сложнее и тут ученые и инженеры столкнулись с новыми проблемами!
Сама технология экстремальной УФ-литографии начала разрабатываться в самом начале 2000 годов. В ней используется источник, который излучает свет с длинной волны в 13.5 нанометров — то есть на нижней границе УФ-спектра, близко к рентгену!
В теории этим способом можно создавать структуры уже критических размеров — настолько маленьких, что еще чуть-чуть и на них перестанут действовать законы обычной физики. То есть после 5 нм мы попадаем в квантовый мир!
Но даже эта проблема на данный момент решена. Есть источник — возьми, да и делай себе сколь угодно маленькие процессоры.
Все совсем не так просто!
Проблема таких коротких длин волн в том, что они поглощаются почти всеми материалами, поэтому обычные линзы что были раньше уже не подходят. Что делать?
Для управления таким светом было принято решение создать специальные отражающие зеркальные линзы. И эти линзы должны быть гладкими! Очень гладкими. Практически идеально гладкими!
Вот вам аналогия — растянем линзу до размеров, скажем, Германии, так вот ее поверхность должна быть такой гладкой, что ничего не должно выпирать больше чем на 1 миллиметр. Этот параметр называется шероховатостью линзы и у нужной нам он должен быть меньше 0.5 нанометра. Это уже близко к размерам АТОМА! Кто же сможет подковать блоху?
Конечно, Zeiss — только они на это способны! Да — та самая компания Zeiss, чьи линзы стоят на моем фотике, были в Nokia или во флагманах Sony Xperia.
Одна проблема решена — линзы есть!
Есть и вторая — этот свет рассеивается даже в простом воздухе. Поэтому для того чтобы процесс прошел нормально его надо проводить в вакууме!
Про частички пыли и грязи я вообще молчу — понятно что их там вообще не должно быть. Чистые комнаты на таком производстве на порядки чище, чем операционные в больницах! Люди буквально ходят в скафандрах. Любая, даже самая маленькая частичка грязи, кожи или воздуха может испортить и маску и зеркала!
А что же с источником? Просто поставили специальный лазер на более короткую длину волны и все? Проблема в том, что ни лампочек, ни лазеров, ни каких-либо других нормальных источников света, которые излучают на такой длине волны просто не существует в природе.
И как же тогда получают нужное излучение? Элементарно, Ватсон — нам нужна плазма.
Надо нагреть оловянный пар до температур в 100 раз больших, чем температура поверхности солнца! Всего-то! И за этим стоит почти 2 десятилетия разработок.
В установке для производства процессоров по EUV-литографии, о которой мы поговорим отдельно установлен специальный углекислотный лазер, который опять же может производиться в тандеме всего двух компаний в мире — немецкой фирмой Trumpf и американской Cymer. Этот монстр мощностью в 30 киловатт стреляет по 2 импульса с частотой 50 килогерц.
Лазер попадает в капли олова, первый выстрел фактически плющит и превращает каплю в блин, которая становится легкой мишенью для второго залпа, который ее поджигает. И происходит это 50 тысяч раз в секунду! А образовавшаяся плазма и излучает этот свет в экстремальном УФ спектре.
И естественно, это только самая база, но мы попробовали нарисовать вам картину того насколько это сложный и крутой процесс.
Компания, стоящая за производством всех процессоров
О технологии рассказали, значит ее кто-то придумал и реализовал, но ее разработка оказалась настолько дорогой, что даже крупные гиганты и воротилы не способны потянуть такие бюджеты!
В итоге, чтобы это стало реальностью всем пришлось скинуться — Intel в 2012 году, а TSMC и Samsung где-то в 2015 году приняли участие в общем проекте. Суммарные инвестиции составили, по разным оценкам от 14 до 21 млрд долларов! Из которых почти 10 млрд были вложены в одну единственную нидерландскую компанию ASML. Именно она и стоит за всем производством процессоров в мире по методу EUV-литографии! Вау! Что за ASML и почему мы о ней ничего не слышали? Компания из Нидерландов — что за темная лошадка?
Все дело в том, что ASML создали тот самый инструмент без которого Apple, Самсунг и Intel с AMD фактически как без рук! Речь идет об установке стоимостью более 120 миллионов долларов. Она огромная, 180-тонная, потребляет почти 1 мегаватт электроэнергии, и ей нужно почти 1.5 тонны воды в минуту для охлаждения! Но даже при такой цене очереди на них стоят годами ведь в год этих машин производится несколько десятков штук.
Тут же стоит упомянуть немалый вклад российских умов. Например, один из создателей этой технологии — Банин Вадим Евгеньевич, сейчас директор по разработке в ASML. Также в компании работают и другие наши соотечественники!
Мы выяснили, что эта компания делает одни из самых технологичных девайсов, в котором собраны все знания человечества и на них производят процессоры все IT-гиганты сразу!
Но не только ASML стоит за спиной нам известных IT-гигантов. Их установки состоят из более чем 100 тысяч деталей, которые производятся более чем тысячью компаний по всему миру. Все эти компании связаны друг с другом!
Будущее
Но что же будет дальше! Вы что — думали, что мы оставим вас оставим в дне сегодняшнем? Нет — мы подглядели в будущее! Мы раздобыли информацию что будет после пяти или даже двух нм!
Во-первых, прямо сейчас, пока вы смотрите это видео, TSMC уже штампует новые процессоры для HUAWEI, Apple и Samsung с использованием EUV-литографии, но не на 7 нм, как было с Apple A13 и Kirin 990, а на 5 нм техпроцессе! И этому есть множества подтверждений! И о них мы услышим уже этой осенью. Как вам такое — A14 Bionic будет 5нм! Так же ждем новые Exynos на 5 нм и процессоры Google, о которых мы рассказывали отдельно! Qualcomm наверняка тоже подтянется за ними, но тут мы не располагаем данными!
А во-вторых, и это вообще взрывает мозг, ASML уже заканчивает разработку установок, которые позволят производить процессоры на 2 нанометровом техпроцессе и даже меньше всего через 4-5 лет!
Для этого ребята из нидерландской компании совместно с немецкой Zeiss разработали новые зеркальные линзы, с высокими значениями апертуры. Это анаморфная оптика — она и многое другое позволит увеличить разрешающую способность.
Сам процесс по сути тот же EUV, но с приставкой High-NA EUV. А сами агрегаты будут занимать еще больше места, посмотрите вот так для них делают оптику!
Этот год тяжелый для всех, но в тоже время — посмотрите какими шагами начинают развиваться технологии, все шире и шире. Нас ждут новые процессоры с мощностями, которые нам и не снились.
Кроме этого развиваются совершенно новые типы процессоров такие как NPU — для нейровычислений.
Процессоры современных компьютеров используют особенную технологию – конвейеры, которые позволяют обрабатывать более одной команды одновременно.
Обработка команды может быть разделена на несколько основных этапов, называемых микрокомандами. Выделим основные пять микрокоманд:
а) выборка команды;
б) расшифровка команды;
в) выборка необходимых операндов;
г) выполнение команды;
д) сохранение результатов.
Все этапы команды задействуются только один раз и всегда в одном и том же порядке: одна за другой. Это, в частности, означает, что если первая микрокоманда выполнила свою работу и передала результаты второй, то для выполнения текущей команды она больше не понадобится, и, следовательно, может приступить к выполнению следующей команды. Выделим каждую команду в отдельную часть устройства и расположим их в порядке выполнения. В первый момент времени выполняется первая микрокоманда. Она завершает свою работу и начинает выполняться вторая микрокоманда, в то время как первая готова для выполнения следующей инструкции. Первая инструкция может считаться выполненной, когда завершат работу все пять микрокоманд.
Такая технология обработки команд носит название конвейерной обработки. Каждая часть устройства называется ступенью конвейера, а общее число ступеней – длиной конвейера.
Во многих КС наряду с конвейером команд используются и конвейеры данных.
Сочетание этих двух конвейеров позволяет достичь очень высокой производительности на определенных классах задач, особенно если используется несколько различных конвейерных процессоров, способных работать одновременно и независимо друг от друга.
Одной из наиболее высокопроизводительных конвейерных КС считается СRАY. В этой системе конвейерный принцип обработки используется в максимальной степени. Имеется и конвейер команд, и конвейер арифметических и логических операций. В системе широко применяется совмещенная обработка информации несколькими устройствами. Максимальная пиковая производительность процессора может составлять 12 GFLOPS.
В настоящее время созданы однокристальные векторно-конвейерные процессоры, основными компонентами которых являются скалярный процессор и 8 идентичных векторных устройств, суммарная производительность которых составляет 64 GFLOPS. На их основе построена система SX-6 компании NEC.
Наиболее распространенными из систем класса один поток команд – множество потоков данных (SIMD) являются матричные системы, которые лучше всего приспособлены для решения задач, характеризующихся параллелизмом независимых объектов или данных. Организация систем подобного типа, на первый взгляд, достаточно проста. Они имеют общее управляющее устройство, генерирующее поток команд и большое число процессорных элементов, работающих параллельно и обрабатывающих каждая свой поток данных. Таким образом, производительность системы оказывается равной сумме производительностей всех процессорных элементов. Однако на практике чтобы обеспечить достаточную эффективность системы при решении широкого круга задач, необходимо организовать связи между процессорными элементами с тем, чтобы наиболее полно загрузить их работой. Именно характер связей между процессорными элементами и определяет разные свойства системы.
Одним из первых матричных процессоров был SОLОМОN (60-е годы ХХ века) (рис.3.2). Система SOLOMON содержит 1024 процессорных элемента, которые соединены в виде матрицы: 32х32. Каждый процессорный элемент матрицы включает в себя процессор, обеспечивающий выполнение последовательных поразрядных арифметических и логических операций, а также оперативное ЗУ емкостью 16 Кбайт. Длина слова – переменная от 1 до 128 разрядов. Разрядность слов устанавливается программно. По каналам связи от устройства управления передаются команды и общие константы. В процессорном элементе используется так называемая многомодальная логика, которая позволяет каждому процессорному элементу выполнять или не выполнять общую операцию в зависимости от значений обрабатываемых данных. В каждый момент все активные процессорные элементы выполняют одну и ту же операцию над данными, хранящимися в собственной памяти и имеющими один и тот же адрес.
Рисунок 3.2-Структура матричной КС SOLOMON
Идея многомодальности заключается в том, что в каждом процессорном элементе имеется специальный регистр на 4 состояния – регистр моды. Мода (модальность) заносится в этот регистр от устройства управления. При выполнении последовательности команд модальность передается в коде операции и сравнивается с содержимым регистра моды. Если есть совпадения, то операция выполняется. В других случаях процессорный элемент не выполняет операцию, но может, в зависимости от кода, пересылать свои операнды соседнему процессорному элементу. Такой механизм позволяет выделить строку или столбец процессорных элементов, что очень полезно при операциях над матрицами. Взаимодействуют процессорные элементы с периферийным оборудованием через внешний процессор.
Дальнейшим развитием матричных процессоров стала система ILLIАC-4, разработанная фирмой BURROUGHS. Первоначально система должна была включать в себя 256 процессорных элементов, разбитых на группы, каждый из которых должен управляться специальным процессором. Однако по различным причинам была создана система, содержащая одну группу процессорных элементов и управляющий процессор. Если в начале предполагалось достичь быстродействия 1 млрд. операций в секунду, то реальная система работала с быстродействием 200 млн. операций в секунду. Эта система в течение ряда лет считалась одной из самых высокопроизводительных в мире.
В начале 80-х годов в СССР была создана система ПС-2000, которая также является матричной. Основой этой системы является мультипроцессор ПС-2000, состоящий из решающего поля и устройства управления мультипроцессором. Решающее поле строится из одного, двух, четырех или восьми устройств обработки, в каждом из которых 8 процессорных элементов. Мультипроцессор из 64 процессорных элементов обеспечивает быстродействие 200 млн. операций в секунду на коротких операциях.
Матричный процессор (array processor). Набор связанных между собой идентичных процессоров, работающих одновременно под управлением общего устройства управления. Обычно в качестве управляющего устройства выступает центральный процессор. На рисунке 2.2.3 показана структурная организация матричного процессора, где управляющий процессор связан со всеми процессорными элементами (ПЭ), а пунктирными стрелками показаны межпроцессорные шины. Как правило, эти шины имеют низкую разрядность и не предназначены для передачи больших массивов данных.
Реализация матричных процессоров подразумевает использование их для параллельных выполнений однотипных SIMD операций над элементами массива (например, матричных вычислений). Однако в виде исключения бывают реализации такого рода процессоров для выполнения несвязанных параллельных вычислительных процессов. Матричные процессоры используются для быстрого решения задач, связанных с проведением большого объема математических вычислений или для ускорения обработки видеоинформации. Такие процессоры являются мощным средством решения задач, обладающих параллельным алгоритмом. Под матричными системами или матричными процессорами обычно понимается многопроцессорная система, в которой процессоры с помощью той или иной сети связи объединены в матрицу. Задача устройства управления матричным процессором совместно с операционной системой - эффективная загрузка матрицы процессоров и эффективная (быстрая) передача промежуточных результатов. В качестве объектов параллелизма могут выступать этапы решения задачи, машинные команды или даже битовые операции, реализующие машинную команду.
Управляющий процессор |
ПЭ00 |
ПЭ01 |
ПЭ02 |
ПЭ03 |
ПЭ10 |
ПЭ11 |
ПЭ12 |
ПЭ13 |
ПЭ20 |
ПЭ21 |
ПЭ22 |
ПЭ23 |
ПЭ30 |
ПЭ31 |
ПЭ32 |
ПЭ33 |
Рисунок 2.2.3 – Структурная организация матричного процессора.
Организация ЭВМ (6часов)
2.3.1. Иерархическая структура памяти. Основная память машины. Сверхоперативное запоминающее устройство. Внешняя память, расслоение памяти.
Ассоциативная память. Организация КЭШ памяти. Структура. Алгоритмы замены.
Аннотация: В данной лекции рассматриваются математические основы, способы организации и особенности проектирования ассоциативных, конвейерных и матричных процессоров.
Существующие в настоящее время алгоритмы прикладных задач, системное программное обеспечение и аппаратные средства преимущественно ориентированы на традиционную адресную обработку данных . Данные должны быть представлены в виде ограниченного количества форматов (например, массивы, списки, записи), должна быть явно создана структура связей между элементами данных посредством указателей на адреса элементов памяти, при обработке этих данных должна быть выполнена совокупность операций, обеспечивающих доступ к данным по указателям. Такой подход обуславливает громоздкость операционных систем и систем программирования, а также служит препятствием к созданию вычислительных средств с архитектурой, ориентированной на более эффективное использование параллелизма обработки данных.
Ассоциативные процессоры
Ассоциативный способ обработки данных позволяет преодолеть многие ограничения, присущие адресному доступу к памяти, за счет задания некоторого критерия отбора и проведения необходимых преобразований, только над теми данными, которые удовлетворяют этому критерию . Критерием отбора может быть совпадение с любым элементом данных, достаточным для выделения искомых данных из всех имеющихся. Поиск данных может происходить по фрагменту, имеющему большую или меньшую корреляцию с заданным элементом данных.
Исследованы и в разной степени применяются несколько подходов, различающихся полнотой реализации модели ассоциативной обработки . Если реализуется только ассоциативная выборка данных с последующим поочередным использованием найденных данных, то говорят об ассоциативной памяти или памяти, адресуемой по содержимому. При достаточно полной реализации всех свойств ассоциативной обработки используется термин "ассоциативный процессор ".
Ассоциативные системы относятся к классу: один поток команд – множество потоков данных ( SIMD = Single Instruction Multiple Data ). Эти системы включают большое число операционных устройств, способных одновременно по командам управляющего устройства вести обработку нескольких потоков данных. В ассоциативных вычислительных системах информация на обработку поступает от ассоциативных запоминающих устройств (АЗУ), характеризующихся тем, что информация в них выбирается не по определенному адресу, а по ее содержанию.
Конвейерные процессоры
Процессоры современных компьютеров используют особенную технологию – конвейеры , которые позволяют обрабатывать более одной команды одновременно.
Обработка команды может быть разделена на несколько основных этапов, назовем их микрокомандами . Выделим основные пять микрокоманд :
- выборка команды;
- расшифровка команды;
- выборка необходимых операндов;
- выполнение команды;
- сохранение результатов.
Все этапы команды задействуются только один раз и всегда в одном и том же порядке: одна за другой. Это, в частности, означает, что если первая микрокоманда выполнила свою работу и передала результаты второй, то для выполнения текущей команды она больше не понадобится, и, следовательно, может приступить к выполнению следующей команды. Выделим каждую команду в отдельную часть устройства и расположим их в порядке выполнения. В первый момент времени выполняется первая микрокоманда . Она завершает свою работу и начинает выполняться вторая микрокоманда , в то время как первая готова для выполнения следующей инструкции. Первая инструкция может считаться выполненной, когда завершат работу все пять микрокоманд .
Такая технология обработки команд носит название конвейерной обработки. Каждая часть устройства называется ступенью конвейера , а общее число ступеней – длиной конвейера .
Во многих вычислительных системах наряду с конвейером команд используются и конвейеры данных .
Сочетание этих двух конвейеров позволяет достичь очень высокой производительности на определенных классах задач, особенно если используется несколько различных конвейерных процессоров, способных работать одновременно и независимо друг от друга.
Одной из наиболее высокопроизводительных вычислительных конвейерных систем считается СRАY. В этой системе конвейерный принцип обработки используется в максимальной степени. Имеется и конвейер команд, и конвейер арифметических и логических операций. В системе широко применяется совмещенная обработка информации несколькими устройствами. Максимальная пиковая производительность процессора может составлять 12 GFLOPS .
В настоящее время созданы однокристальные векторно-конвейерные процессоры, основными компонентами которых являются скалярный процессор и 8 идентичных векторных устройств, суммарная производительность которых составляет 64 GFLOPS . На их основе построена система SX-6 компании NEC.
Матричные процессоры
Наиболее распространенными из систем класса один поток команд – множество потоков данных ( SIMD ) являются матричные системы, которые лучше всего приспособлены для решения задач, характеризующихся параллелизмом независимых объектов или данных . Организация систем подобного типа, на первый взгляд, достаточно проста. Они имеют общее управляющее устройство , генерирующее поток команд и большое число процессорных элементов , работающих параллельно и обрабатывающих каждая свой поток данных. Таким образом, производительность системы оказывается равной сумме производительностей всех процессорных элементов . Однако на практике чтобы обеспечить достаточную эффективность системы при решении широкого круга задач, необходимо организовать связи между процессорными элементами с тем, чтобы наиболее полно загрузить их работой. Именно характер связей между процессорными элементами и определяет разные свойства системы.
Одним из первых матричных процессоров был SОLОМОN (60-е годы).
Система SOLOMON содержит 1024 процессорных элемента , которые соединены в виде матрицы: 32х32. Каждый процессорный элемент матрицы включает в себя процессор , обеспечивающий выполнение последовательных поразрядных арифметических и логических операций, а также оперативное ЗУ емкостью 16 Кбайт. Длина слова – переменная от 1 до 128 разрядов. Разрядность слов устанавливается программно. По каналам связи от устройства управления передаются команды и общие константы . В процессорном элементе используется так называемая многомодальная логика, которая позволяет каждому процессорному элементу выполнять или не выполнять общую операцию в зависимости от значений обрабатываемых данных. В каждый момент все активные процессорные элементы выполняют одну и ту же операцию над данными, хранящимися в собственной памяти и имеющими один и тот же адрес .
Идея многомодальности заключается в том, что в каждом процессорном элементе имеется специальный регистр на 4 состояния – регистр моды . Мода (модальность) заносится в этот регистр от устройства управления. При выполнении последовательности команд модальность передается в коде операции и сравнивается с содержимым регистра моды . Если есть совпадения, то операция выполняется. В других случаях процессорный элемент не выполняет операцию, но может, в зависимости от кода, пересылать свои операнды соседнему процессорному элементу . Такой механизм позволяет выделить строку или столбец процессорных элементов , что очень полезно при операциях над матрицами. Взаимодействуют процессорные элементы с периферийным оборудованием через внешний процессор .
Дальнейшим развитием матричных процессоров стала система ILLIАC-4, разработанная фирмой BURROUGHS. Первоначально система должна была включать в себя 256 процессорных элементов , разбитых на группы, каждый из которых должен управляться специальным процессором. Однако по различным причинам была создана система, содержащая одну группу процессорных элементов и управляющий процессор . Если в начале предполагалось достичь быстродействия 1 млрд. операций в секунду, то реальная система работала с быстродействием 200 млн. операций в секунду. Эта система в течение ряда лет считалась одной из самых высокопроизводительных в мире.
В начале 80-х годов в СССР была создана система ПС-2000, которая также является матричной. Основой этой системы является мультипроцессор ПС-2000, состоящий из решающего поля и устройства управления мультипроцессором. Решающее поле строится из одного, двух, четырех или восьми устройств обработки, в каждом из которых 8 процессорных элементов . Мультипроцессор из 64 процессорных элементов обеспечивает быстродействие 200 млн. операций в секунду на коротких операциях.
Читайте также: