Всем привет! В продолжении серии кратких обзоров наиболее популярных процессоров нашего недавнего прошлого и настоящего встречайте героя этого выпуска - процессор архитектуры MIPS.
Дизайн первого процессора с одновременно простой и эффективной архитектурой под обозначением R2000 появился в первой половине 80-х годов в Стэнфордском университете. Аббревиатура MIPS обозначает микропроцессор без взаимосвязанных этапов конвейера. Философией этого проекта стало крайнее упрощение набора команд, что наилучшим образом сказалось на сложности декодера инструкций и всего процессора целиком, но, пожалуй, главное в этой архитектуре это конвейеризация всех внутренних операций.
Устранение аппаратных блокировок между пятью этапами конвейера означает, что каждый из этапов выполнения инструкции происходят на различных частях процессора. Это позволяет выполнять несколько инструкций одновременно, но при этом каждая из выполняемых инструкций имеет свою стадию выполнения.
Давайте рассмотрим особенности работы конвейера, но без излишних подробностей.
Конвейер
Все пять стадий выполнения инструкции очень хорошо выделяются на схеме и разделены временными регистрами хранения промежуточных данных (вертикально ориентированные блоки зеленого цвета). Такая внешняя элегантность архитектуры сделала этот процессор пожалуй, самым распространенным для изучения в технических вузах.
Первый этап выполнения инструкции это ее выборка из памяти программ (IF). Содержимое регистра указателя очередной исполняемой инструкции увеличивается при помощи сумматора, а также регистр может быть загружен произвольным адресом при операции перехода на произвольную инструкцию.
Второй этап выполнения команды это обращение к регистрам (ID). В некоторых инструкциях содержатся коды регистров, предназначенные для их активации. Содержимое регистров (32-битные слова) переходит далее в следующий этап выполнения.
На третьем этапе происходит арифметическая операция над содержимым регистров (EX). Арифметико-логическое устройство предназначено для выполнения самых различных операций над числами. Результат операции сохраняется во временный регистр для перехода на новую стадию.
В стадии номер четыре происходит доступ к памяти данных либо для чтения либо для записи (MEM). Для этого необходимо, как минимум, выставить адрес ячейки памяти, а также в случае записи данных необходимо эти данные уже иметь во временном регистре.
На пятой стадии происходит запись содержимого ячейки памяти в какой-либо регистр из регистрового файла (WB).
Итак, конвейер обеспечивает ускорение выполнения инструкций за счет параллелизации и упрощения каждой части конвейера.
Почему "MIPS" мелькает в характеристиках сетевого оборудования?
Вопрос в заголовке этого раздела возможно и мало кого волнует, но каким-то способом эта архитектура стала практически стандартом в оборудовании вычислительных сетей. Попробуем разобраться почему так получилось.
В 80-х годах прошлого века наш мир начал опоясываться паутиной компьютерных сетей. В некоторый момент времени под строго определенные интеллектуальные задачи организации взаимодействия всех участников сети перестали выделять компьютеры целиком, а решили начать производство минимально необходимого и достаточного оборудования. Хоть под пластиковым корпусом и скрывается компьютер, но теперь это весьма недорогое изделие, однако выполняющее свои функции на все 100%.
Функции этих устройств совсем не сложные, как правило все вращается вокруг перенаправления пакетов информации с одного входа на другой выход. Для этого процессор коммутатора (маршрутизатора) анализирует содержимое заголовков информационных пакетов.
Мы сейчас не будем разбирать содержимое этих заголовков, однако стоит отметить, что адресные части пакетов состоят из шести байт у самых низкоуровневых пакетов (фреймы Ethernet) и четыре байта у пакетов уровнем повыше.
В современной шестой версии протокола на адресную часть выделено целых 16 байт.
Поскольку адресные части составляют не менее четырех байт, то и процессор для эффективной обработки информации должен иметь регистры и арифметико-логическое устройство разрядностью не менее 32 бит. Разумеется, герой этого выпуска процессор с архитектурой MIPS подходит для таких задач гораздо больше, чем любой восьми и 16-разрядный процессор. Видимо поэтому MIPS неплохо обосновался в большом количестве наименований сетевых устройств.
Более подробно смотрите в видеоролике:
Также не обойдите вниманием канал на YouTube. Подписки и лайки будут приятным ответом от аудитории.