Процессор регистр

Регистр процессора компьютера - это быстро доступное местоположение, доступное для процессора . [ 1 ] Регистры обычно состоят из небольшого количества быстрого хранения , хотя некоторые регистры имеют определенные аппаратные функции и могут быть только для чтения или только для записи. В компьютерной архитектуре регистры обычно рассматриваются с помощью механизмов, отличных от основной памяти , но в некоторых случаях могут быть назначены адресом памяти , например, Dec PDP-10 , ИКТ 1900 . [ 2 ]
Почти все компьютеры, будь то архитектура нагрузки/хранилища или нет, загружают элементы данных из более крупной памяти в регистры, где они используются для арифметических операций , двухсетевых операций и других операций, а также манипулируются или протестируются инструкциями машины . Манипулируемые элементы затем часто сохраняются обратно в основную память, либо по той же инструкции, либо последующей. Современные процессоры используют либо статическую , либо динамическую оперативную память в качестве основной памяти, причем последняя обычно доступна через один или несколько уровней кэша .
Регистры процессора обычно находятся в верхней части иерархии памяти и обеспечивают самый быстрый способ доступа к данным. Термин обычно относится только к группе регистров, которые непосредственно кодируются как часть инструкции, как определено набором инструкций . Тем не менее, современные высокопроизводительные процессоры часто имеют дубликаты этих «архитектурных регистров», чтобы повысить производительность посредством переименования регистра , позволяя параллельно и спекулятивное выполнение . Современный X86 Design приобрел эти методы в 1995 году с выпусками Pentium Pro , Cyrix 6x86 , NX586 и AMD K5 .
Когда компьютерная программа неоднократно обращается к тем же данным, это называется местностью ссылки . Удерживание часто используемых значений в регистрах может иметь решающее значение для эффективности программы. Распределение регистра выполняется либо компилятором на этапе генерации кода , либо вручную программистом языка сборки .
Размер
[ редактировать ]Регистры обычно измеряются по количеству битов , которые они могут держать, например, « 8-битный регистр», 32-разрядный регистр », 64-битный регистр» или даже больше. В некоторых наборах инструкций регистры могут работать в различных режимах, разбивая память хранения на более мелкие детали (например, 32-разрядные на четыре 8-битных), на которые несколько данных (вектор или одномерный массив данных) может быть загружен и эксплуатироваться одновременно. Как правило, он реализуется путем добавления дополнительных регистров, которые отображают их память в больший регистр. Процессоры, которые имеют возможность выполнять отдельные инструкции по нескольким данным, называются векторными процессорами .
Типы
[ редактировать ]Процессор часто содержит несколько видов регистров, которые могут быть классифицированы в соответствии с типами значений, которые они могут хранить, или инструкции, которые работают на них:
- Регистры, доступные для пользователя, могут быть прочитаны или написаны инструкциями машины. Наиболее распространенным разделением регистров, доступных пользователя, является разделение на регистры данных и регистры адресов.
- Регистр данных S может содержать числовые значения данных , такие как целые числа и в некоторых архитектурах, числа с плавающей точкой , а также символы , массивы небольших битов и другие данные. В некоторых старых архитектурах, таких как IBM 704 , IBM 709 и преемники, PDP-1 , PDP-4 / PDP-7 / PDP-9 / PDP-15 , PDP-5 / PDP-8 и HP 2100 , специальный регистр данных, известный как аккумулятор, неявно используется для многих операций.
- Адресные регистры S удерживают адреса и используются инструкциями, которые косвенно получают доступ к первичной памяти .
- Некоторые процессоры содержат регистры, которые могут использоваться только для удержания адреса или только для сохранения числовых значений (в некоторых случаях, используемых в качестве индексного регистра , значение которого добавляется в качестве смещения с некоторого адреса); Другие позволяют регистрам удерживать любое количество. Существует широкий спектр возможных режимов адресации , используемых для указания эффективного адреса операнда.
- Указатель стека используется для управления стеком времени выполнения . Редко другие стеки данных решаются с помощью выделенных регистров адресов (см. Stack Machine ).
- Регистры общего назначения ( GPR S) могут хранить как данные, так и адреса, то есть они представляют собой комбинированные регистры данных/адреса; В некоторых архитектурах файл регистра объединен , чтобы GPRS также могли хранить номера с плавающей запятой.
- Регистры статуса содержат значения истины, часто используемые для определения того, следует ли выполнять или не выполнять некоторые инструкции.
- с плавающей точкой Записывание ( FPR S) хранит плавучие номера во многих архитектурах.
- Постоянные регистры содержат значения только для чтения, такие как ноль, один или PI .
- Векторные регистры содержат данные для векторной обработки, выполненной инструкциями SIMD (отдельная инструкция, несколько данных).
- Специальные регистры ( SPR S) содержат некоторые элементы государства программы ; Они обычно включают в себя счетчик программы , также называемый указателем инструкции, и регистр статуса ; Регистр программного счетчика и регистрации статуса может быть объединен в регистрации статуса программы (PSW). Вышеупомянутый указатель стека иногда также включается в эту группу. Встроенные микропроцессоры также могут иметь регистры, соответствующие специализированным аппаратным элементам.
- Регистры для конкретных моделей (также называемые машинными регистрами ) хранят данные и настройки, связанные с самим процессором. Поскольку их значения привязаны к конструкции конкретного процессора, они не ожидают, что между поколениями процессоров не останутся стандартными.
- Регистры диапазона типа памяти ( MTRR S)
- Внутренние регистры S не доступны по инструкциям и используются внутри операции.
- Регистр инструкций содержит инструкцию, выполненную в настоящее время.
- Регистры, связанные с получением информации из RAM , коллекции регистров хранения, расположенных на отдельных чипах от процессора:
- Регистр буфера памяти ( MBR ), также известный как регистр данных памяти ( MDR )
- Регистр адреса памяти ( март )
- Архитектурные регистры - это регистры, видимые для программного обеспечения и определяются архитектурой. Они могут не соответствовать физическому оборудованию, если реестр переименования выполняется базовым оборудованием.
Аппаратные регистры похожи, но встречаются за пределами процессоров.
В некоторых архитектурах (таких как SPARC и MIPS ) первый или последний регистр в файле Integer Register является псевдо-регистрацией в том смысле, что его можно всегда возвращать ноль при чтении (в основном для упрощения режимов индексации), и это не может быть перезаписано Полем В Альфе это также сделано для файла регистра с плавающей точкой. В результате этого регистрации файлов обычно цитируются как один регистр больше, чем многие из них на самом деле используются; Например, 32 регистра цитируются, когда только 31 из них соответствует вышеуказанному определению регистра.
Примеры
[ редактировать ]В следующей таблице показано количество регистров в нескольких основных архитектурах ЦП. Обратите внимание, что в x86 -совместимых процессорах указатель стека (указатель стека ( ESP
) считается целочисленным регистром, даже если существует ограниченное количество инструкций, которые могут использоваться для работы на его содержании. Подобные предостережения применимы к большинству архитектур.
Хотя все архитектуры ниже списка различны, почти все находятся в базовой аранжировке, известной как архитектура фон Неймана , впервые предложенную венгерским американским математиком Джоном фон Нейманом . Также следует отметить, что количество регистров на графических процессорах намного выше, чем на процессорах.
Архитектура | GPRS/Data+Address Registers | FP регистры | Примечания |
---|---|---|---|
AT & T Хоббит | 0 | стек 7 | Все инструкции по манипуляциям с данными работают исключительно в регистрах, и данные должны быть перемещены в регистр перед обработкой. |
Cray-1 [ 3 ] | 8 Скалярные данные, 8 адрес | 8 скаляр, 8 вектор
(64 элемента) |
Скалярные регистры данных могут быть целочисленными или плавающими точками; Также 64 Скалярные Регистры Сарапеты Т и 64 АДРЕС-ПАД-ПАД-ПАД |
4004 [ 4 ] | 1 аккумулятор, 16 других | 0 | |
8008 [ 5 ] | 1 аккумулятор, 6 других | 0 | Регистр - это аккумулятор, для которого выполняется вся арифметика; Регистры H и L могут использоваться в комбинации в качестве реестра адресов; Все регистры могут использоваться в качестве операндов в инструкциях по загрузке/хранилище/перемещению/увеличению/уменьшению, а также в качестве других операндов в арифметических инструкциях. Нет доступного блока с плавающей точкой (FPU). |
8080 [ 6 ] | 1 аккумулятор, 1 указатель стека, 6 других | 0 | Регистр - это аккумулятор, для которого выполняется вся арифметика; Регистр пары B+C, D+E и H+L могут использоваться в качестве регистров адресов в некоторых инструкциях; Все регистры могут использоваться в качестве операндов в инструкциях по загрузке/хранилище/перемещению/увеличению/уменьшению, а также в качестве других операндов в арифметических инструкциях. Некоторые инструкции используют только H+L; Другая инструкция обменяется H+L и D+E. Процессоры с плавающей запятой, предназначенные для 8080, были Intel 8231 , AMD AM9511 и Intel 8232 . Они также были легко пригодны для использования с помощью Z80 и аналогичных процессоров. |
IAPX432 | 0 | стек 6 | Стек машины |
16-битный x86 [ 7 ] | 8 | стек из 8
(Если FP присутствует) |
Процессоры 8086 / 8088 , 80186 / 80188 и 80286 , если они предоставлены соавтором 8087 , 80187 или 80287 для операций с плавающей точкой, поддерживают 80-битный стек, 8 глубоких регистров с некоторыми инструкциями, способными использовать регистры по сравнению с верхняя часть стека как операнды; Без соавтора не поддерживается никаких регистров с плавающей точкой. |
HE-32 [ 8 ] | 8 | стек 8 (если присутствует FP),
8 (если присутствует SSE/MMX) |
Процессор 80386 требует 80387 для операций с плавающей точкой, более поздние процессоры имели встроенную плавучесть, причем оба имели 80-битный 8-реестр с некоторыми инструкциями, способными использовать регистры относительно верхней части стека в операнды. Pentium III , а затем имели SSE с дополнительными 128-битными регистрами XMM. |
x86-64 [ 8 ] [ 9 ] | 16 | 16 или 32
(Если AVX-512 доступен) |
Регистры FP представляют собой 128-битные регистры XMM, а затем простираются до 256-битных регистров YMM с регистрами AVX/AVX2 и 512-битными регистрами ZMM0-ZMM31 с AVX-512 . [ 10 ] |
Fairchild F8 | 1 Аккумулятор, 64 Регистры с царапиной, 1 непрямой реестр скретч (ISAR) | — | Инструкции могут непосредственно ссылаться на первые 16 регистров с царапиной и могут косвенно добраться до всех регистров с царапиной через ISAR [ 11 ] |
Geode GX | 1 данные, 1 адрес | 8 | Geode GX / Media GX / 4x86 / 5x86 - это эмуляция 486 / Pentium, совместимого с процессором, изготовленным Cyrix / National Semiconductor . Как и Transerta , у процессора был слой перевода, который перевел код x86 на собственный код и выполнил его. [ Цитация необходима ] Он не поддерживает 128-битные регистры SSE, только 80387 стека из восьми 80-битных регистров с плавающей запятой и частично поддерживает 3DNOW! от AMD. Настоящий процессор содержит только 1 данные и 1 реестр адресов для всех целей, и он переведен в 4 пути 32-разрядных регистров именования R1 (база), R2 (DATA), R3 (обратный указатель) и R4 (Указатель стека) внутри) внутри) в Scrackpad SRAM для целочисленных операций. [ Цитация необходима ] |
Sunplus spg | 0 | 6 стека + 4 simd | 16-битный 32-битный автоматический процессор в области Adder Space Stack от Taiwanse Company Technology, его можно найти на линии Vtech V.Smile для образовательных целей и приставки видеоигр, таких как Wireless 60, Mattel Hyperscan и Xavixport. В нем отсутствует какой-либо реестр общего назначения или внутренний реестр для именования/переименования, но его блок с плавающей запятой имеет 80-битный 6-старый стек и четыре 128-битных Vliw SIMD регистров на совместном соавторе Vertex Shader. |
VM Labs Nuon | 0 | 1 | 32-разрядный процессор машины стека, разработанный VM Labs , и специализированный на мультимедиа. Его можно найти на собственной линии консоли DVD -игрока Nuon DVD и системе Family Entertainment Game Wave от Zapit Games. На дизайн сильно повлиял технология Intel MMX; Он содержал 128-байтовый унифицированный кэш стека как для векторных, так и для скалярных инструкций. Единый кэш может быть разделен как восемь 128-битных векторных регистров или тридцать два 32-битных скалярных регистров с помощью банка переименования; В этой архитектуре нет целочисленного регистра. |
NIOS II [ 12 ] [ 13 ] | 31 | 8 | NIOS II основан на наборе инструкций MIPS IV [ Цитация необходима ] и имеет 31 32-битный GPRS, причем регистр 0 приносят в ноль и восемь 64-битных регистров с плавающей запятой [ Цитация необходима ] |
Motorola 6800 [ 14 ] | 2 данные, 1 индекс, 1 стек | 0 | |
Motorola 68k [ 15 ] | 8 data (d0–d7), 8 address (a0–a7) | (Если FP присутствует) |
8
Адрес регистр 8 (A7) - указатель стека. 68000, 68010, 68012, 68020 и 68030 требуют FPU для плавающей точки; 68040 имел встроенный FPU. Регистры FP 80-битные. |
SH 16-bit | 16 | 6 | |
Эмоциональный двигатель | 3 (VU0)+ 32 (VU1) | 32 SIMD (интегрирован в UV1)
+ 2 × 32 вектор (Выделенный векторный соавтор, расположенный рядом с графическим процессором) |
Основным ядром Ement Engine (VU0) является сильно модифицированное общее ядро DSP, предназначенное для общих фоновых задач, и содержит один 64-разрядный аккумулятор, два общих регистра данных и один 32-разрядный счетчик программы. Модифицированное исполняемое ядро MIPS III (VU1) предназначено для игровых данных и управления протоколом и содержит тридцать два 32-разрядных регистра общего назначения для целочисленных вычислений и тридцать два 128-битных регистра SIMD для хранения инструкций SIMD, значение потоковых данных и некоторые целочисленные значения вычисления и один регистр аккумулятора для подключения общих вычислений с плавающей точкой к файлу векторного регистра в соавторе. Копроцессор построен с помощью 128-битного векторного регистра 32-битного векторного файла (может хранить только векторные значения, которые проходят из аккумулятора в процессоре), и никаких целочисленных регистров не встроено. Оба векторного со-процессора (VPU 0/1) и весь основной модуль процессора Ement Engine (VU0 + VU1 + VPU0 + VPU1) созданы на основе модифицированных инструкций MIPS. Аккумулятор в этом случае является не общим назначением, а статусом контроля. |
Различный [ 16 ] | настраивается, до 255 за поток | Более ранние поколения допускаются до 127/63 регистров на поток ( Tesla / Fermi ). Чем больше регистров настроено на поток, тем меньше потоков может работать одновременно. Регистры имеют ширину 32 бита; с плавающей точкой с двумя рецептами Поэтому требуются два регистра и 64-битными указателями. Это дополнительно имеет до 8 регистров предиката на поток. [ 17 ] | |
CDC 6000 Series | 16 | 8 | 8 «А» регистры, A0-A7, держат 18-битные адреса; 8 «B» регистры, B0-B7, имеют 18-битные целочисленные значения (с B0 постоянно установляемым на ноль); 8 'x' Регистры, x0-x7, храните 60 бит целочисленных или плавучих данных. Семь из восьми 18-битных регистров были связаны с их соответствующими регистрами X: установление любого из регистров A1-A5 в значение приводило к нагрузке памяти содержимого этого адреса в соответствующий регистр X. Аналогичным образом, установление адреса в регистрации A6 или A7 вызвало хранилище памяти в этом месте в памяти от X6 или X7. (Регистры A0 и X0 не были связаны так). |
System/360 , System/370 , System/390 , Z/Architecture | 16 | 4 (если присутствует FP);
16 в G5 и более поздние модели S/390 и z/архитектура |
FP был необязательным в системе/360 и всегда присутствовал в S/370 и позже. В процессорах с векторным объектом существует 16 векторных регистров, содержащих машинное число 32-битных элементов. [ 18 ] Некоторым регистрам назначается фиксированная цель, вызывая конвенции ; Например, регистр 14 используется для адресов возврата подпрограммы, и для Elf Abis Regist 15 используется в качестве указателя стека. Процессор S/390 G5 увеличил количество регистров с плавающей точкой до 16. [ 19 ] |
Mmix [ 20 ] | 256 | 256 | Набор инструкций, разработанный Дональдом Кнутом в конце 1990 -х годов для педагогических целей. |
NS320XX [ 21 ] | 8 | (Если FP присутствует) |
8
|
XELERTED X10 | 1 | 32 | 32/40-битный сетевой процессор на основе машины с помощью модифицированного набора инструкций MIPS и 128-битным блоком с плавающей запятой. [ Цитация необходима ] |
Parallax Propeller | 0 | 2 | Восемь ядер 8/16-битный нарезанный контроллер стека с простой логической цепью внутри, он имеет 8 счетчиков COG (ядер), каждый из которых содержит три 8/16-битных специальных регистров управления с 32-битным x 512-стековым оперативным операцией. Однако он не содержит никакого общего регистра для целочисленных целей. В отличие от большинства файлов Shadow Register в современных процессорах и многоядерных системах, все оперативные памяти в Cog можно получить на уровне инструкций, что позволяет всем этим Cog выступать в качестве единого ядра общего назначения, если это необходимо. Блок с плавающей запятой является внешним и содержит два 80-битных векторных регистров. |
Итания | 128 | 128 | И 64 1-битные регистры предиката и 8 регистров филиала. Регистры FP 82-битные. |
Запланированный | 31 | 32 | Глобальный регистр 0 жестко проводятся в 0. Использует Windows Register . |
IBM Power | 32 | 32 | Также включены регистр ссылок, регистр подсчета и регистр коэффициента умножного (MQ). |
PowerPC / Power ISA | 32 | 32 | Также включены регистр ссылок и регистр подсчета. Процессоры, поддерживающие векторный объект, также имеют 32 128-битные векторные регистры. |
Блэкфин | 8 данных, 2 аккумулятора, 6 адреса | 0 | Также включены указатель стека и указатель кадра. Дополнительные регистры используются для реализации петлей с нулевой головкой и круговых буферных DAGS (генераторы адресов данных). |
IBM Cell Spe | 128 | 128 Регистры общего назначения, которые могут содержать целые, адрес или значения с плавающей точкой. [ 22 ] | |
PDP-10 | 16 | Все регистры могут использоваться в целом (целое число, плавание, указатель стека, прыжок, индексация и т. Д.). Каждое 36-битное слово (или регистр) также можно манипулировать как полвор, которым можно считать (18-битным) адресом. Другие интерпретации слов используются определенными инструкциями. В исходных процессорах PDP-10 эти 16 GPR также соответствовали основным (т.е. Core ) местоположениям памяти 0–15; Аппаратный вариант, называемый «Fast Memory», реализовал регистры в качестве отдельных ICS, и ссылки на местоположения памяти 0–15 относились к регистрам IC. Более поздние модели реализовали регистры как «быстрая память» и продолжали создавать местоположения памяти 0–15. Инструкции по движению принимают (зарегистрироваться, память) операнды: MOVE 1,2 регистр-регистр, и MOVE 1,1000 это память-регистрация.
| |
PDP-11 | 7 | (Если присутствует FPP) |
6
R7 - счетчик программы. Любой регистр может быть указателем стека, но R6 используется для аппаратных прерываний и ловушек. |
Вакс | 16 | Регистры общего назначения также используются для значений с плавающей запятой. Три из регистров имеют специальное использование: R12 (Указатель аргумента), R13 (Prame Pointer) и R14 (указатель стека), в то время как R15 относится к счетчику программы. | |
Альфа | 31 | 31 | Регистры R31 (Integer) и F31 (с плавающей точкой) твердо проводятся до нуля. |
6502 | 1 данные, 2 индекс | 0 | Контент 6502 A (аккумулятор) регистр для хранилища данных основной цели и адреса памяти (8-битный/16-битный адрес), X и Y являются косвенными и прямыми регистрами индекса (соответственно), а регистры SP являются только конкретным индексом. |
W65C816S | 1 | 0 | 65C816 является 16-разрядным преемником 6502. X, Y и D (прямой регистр страницы) являются регистрами условий, а SP-регистр-только конкретный индекс. Главный аккумулятор продлен до 16-битного (C) [ 23 ] При сохранении 8-битных (а) для совместимости и основных регистров теперь могут обращаться до 24-битных (16-битная инструкция данных/24-битный адрес памяти). |
Член членов директоров | 4 | 8 | Процессор, встроенный в СМИ, представлял собой 32-битный процессор, разработанный Toshiba с модным набором инструкций 8080. Только регистры A, B, C и D доступны во всех режимах (8/16/32-бит). Это несовместимо с x86; Тем не менее, он содержит 80-битный блок с плавающей запятой, который совместим с x87. |
PIC Microcontroller | 1 | 0 | |
AVR Microcontroller | 32 | 0 | |
ARM 32-бит (ARM/A32, THUMP-2/T32) | 14 | Варьируется
(до 32) |
R15 является счетчиком программы, а не используется в качестве реестра общего назначения; R13 - указатель стека; R8 - R13 может быть выключен для других (Banked) на переключателе режима процессора. Старые версии имели 26-битную адресацию, [ 24 ] и использовали верхние биты счетчика программы (R15) для флагов состояния, что делает этот регистр 32-битным. |
Рука 32-битная (большой палец) | 8 | 16 | Версия 1 Thumber, которая поддерживала только доступ к регистрам R0 через R7 [ 25 ] |
ARM 64-BIT (A64) [ 26 ] | 31 | 32 | Регистрация R31 - это указатель стека или жесткий проводник до 0, в зависимости от контекста. |
MIPS | 31 | 32 | Интеллектуальное регистр 0 приносит проводник до 0. |
RISC-V | 31 | 32 | Integer Register 0 жестко подключен к 0. Вариант RV32E, предназначенный для систем с очень ограниченными ресурсами, имеет 15 целочисленных регистров. |
Прозрение | 64 (за ядро) [ 27 ] | Каждая инструкция контролирует, интерпретируются ли регистры как целые числа или единственная точка с точностью. Архитектура масштабируется до 4096 ядер с 16 и 64 основными реализациями в настоящее время. |
Использование
[ редактировать ]Количество регистров, доступных на процессоре, и операции, которые могут быть выполнены с использованием этих регистров, оказывает значительное влияние на эффективность кода, генерируемого путем оптимизации компиляторов . Номер дерева выражения Strahler дает минимальное количество регистров, необходимых для оценки этого дерева выражения.
Смотрите также
[ редактировать ]Ссылки
[ редактировать ]- ^ "Что такое регистр процессора?" Полем Образование: интерактивные курсы для разработчиков программного обеспечения . Получено 2022-08-12 .
- ^ «Обзор методов разработки и управления файлом регистрации ЦП» .
- ^ «Справочное руководство по компьютерному систему Cray-1» (PDF) . Cray Research . Ноябрь 1977 года. Архивировал (PDF) из оригинала 2021-11-07 . Получено 2022-12-23 .
- ^ «MCS-4 Micro Computer Set User Manual» (PDF) . Intel. Февраль 1973.
- ^ «8008 8 -битный параллельный Руководство пользователей центрального процессора» (PDF) . Intel. Ноябрь 1973 . Получено 23 января 2014 года .
- ^ «Intel 8080 Microcomputer Systems Руководство пользователя» (PDF) . Intel. Сентябрь 1975 . Получено 23 января 2014 года .
- ^ «Справочное руководство по программисту 80286 и 80287» (PDF) . Intel. 1987.
- ^ Jump up to: а беременный «Руководство по разработке программного обеспечения Intel 64 и IA-32 Architectures» . Intel. 4 декабря 2019 года.
- ^ «AMD64 Архитектура программиста Руководство по томе 1: прикладное программирование» (PDF) . Амд . Октябрь 2013.
- ^ «Intel Architecture Trancing Extensions и ссылка на программирование будущих функций» (PDF) . Intel . Январь 2018 года.
- ^ F8 Руководство по программированию (PDF) . Fairchild MOS Microcomputer Division. 1977.
- ^ «Справочное руководство по процессору NIOS II Classic» (PDF) . Альтерна 2 апреля 2015 года.
- ^ «Справочное руководство по процессору NIOS II Gen2» (PDF) . Альтерна 2 апреля 2015 года.
- ^ «Справочное руководство по программированию M6800» (PDF) . Motorola . Ноябрь 1976 . Получено 18 мая 2015 года .
- ^ «Справочное руководство Motorola M68000 Family Progrummer» (PDF) . Motorola. 1992 . Получено 13 июня 2015 года .
- ^ «Руководство по программированию CUDA C» . Нвидия. 2019 . Получено 9 января 2020 года .
- ^ Цзя, Чжэ; Maggioni, Marco; Стайгер, Бенджамин; Скарпацца, Даниэле П. (2018). «Расширение архитектуры GPU NVIDIA Volta с помощью микробурчанга». Arxiv : 1804.06826 [ Cs.dc ].
- ^ «Архитектура IBM Enterprise Systems/370 и System/370 - векторные операции» (PDF) . IBM. SA22-7125-3 . Получено 11 мая 2020 года .
- ^ «IBM S/390 G5 микропроцессор» (PDF) .
- ^ "Mmix Home Page" .
- ^ «Диазиат серии 32000» (PDF) . Национальный полупроводник .
- ^ «Синергетический процессор подразделения набора инструкций архитектура версии 1.2» (PDF) . IBM. 27 января 2007 г.
- ^ «Обучение 65816 Сборка» . Super Famicom Development Wiki . Получено 14 ноября 2019 года .
- ^ «Стандарт вызова процедуры для архитектуры ARM» (PDF) . Рукоопании . 30 ноября 2013 года . Получено 27 мая 2013 года .
- ^ "2.6.2. Установка регистра с фондом" . ARM7TDMI Техническое справочное руководство . Рукоопании .
- ^ «Стандарт вызова процедуры для 64-битной архитектуры ARM» (PDF) . Рукоопании. 22 мая 2013 года . Получено 27 мая 2013 года .
- ^ «Ссылка на архитектуру прозрения» (PDF) .