Jump to content

Регистр испытаний

Тестовый регистр в процессорах Intel 80386 и Intel 80486 — это регистр, используемый процессором обычно для выполнения самотестирования. Большинство этих регистров были недокументированы и использовались специализированным программным обеспечением. Тестовые регистры получили названия от TR3 до TR7 . Обычные программы обычно не требуют этих регистров для работы. В Pentium тестовые регистры были заменены различными регистрами для конкретной модели (MSR). [1]

В 80386 были предусмотрены два тестовых регистра, TR6 и TR7 для тестирования TLB . TR6 был регистром тестовых команд, а TR7 — регистром тестовых данных. 80486 предоставил три дополнительных регистра, TR3 , TR4 и TR5 , для тестирования кэша L1. TR3 был регистром данных, TR4 — адресным регистром, а TR5 — командным регистром. Доступ к этим регистрам осуществлялся вариантами инструкции MOV . Тестовый регистр может быть операндом-источником или операндом-приемником. Инструкции MOV определены как в режиме реального адреса , так и в защищенном режиме . Тестовые регистры являются привилегированными ресурсами. В защищенном режиме инструкции MOV, имеющие к ним доступ, могут выполняться только с уровнем привилегий 0. Попытка прочитать или записать тестовые регистры при выполнении на любом другом уровне привилегий вызывает общее исключение защиты. Кроме того, эти инструкции генерируют исключение недопустимого кода операции на большинстве процессоров новее 80486.

Инструкция кодируется двумя способами, в зависимости от потока данных. Перемещение данных из регистра общего назначения в тестовый регистр кодируется как 0F 26 /rr/m будучи георадаром, и reg является тестовым регистром). Перемещение данных в обратном направлении (т.е. из тестового регистра в регистр общего назначения) кодируется как 0F 24 /rr/m будучи георадаром, и reg является тестовым регистром). [2] Разрешены только перемещения регистр-регистр; формы памяти байта ModR/M не определены. Другими словами, mod поле (два старших бита ) должно быть установлено в значение 1.

Тестовые регистры и/или связанные с ними коды операций поддерживались следующими процессорами x86 :

Процессоры Регистры проверки кэша Тестовые регистры TLB
ТР0 ТР1 ТР2 ТР3 ТР4 ТР5 ТР6 ТР7
Intel 386 (все модели) Нет Нет отменить документацию [а] Да
Intel 486 (все модели) Нет Да Да
386 драм (все модели)
AMD Лось SC3xx
Нет Нет ? Да [4]
486 драм (все модели)
АМД 5х86
AMD Элан SC4xx, SC5xx
Нет Да [5] Да
К&Т Супер386 Нет Нет Да [6]
НексГен Nx586 Нет Нет Да [7]
Сайрикс [б] 486 (все модели [с] )
Сайрикс 5x86
Нет Да [9] Да
Сайрикс 6x86 Нет отменить документацию [д] Да Да (ВСПМ) [и]
Сайрикс 6x86MX, 1000
Через Сайрикс III [ф]
Нет Да (блокнот) [г] Да
Сайрикс МедиаGX
NatSemi Geode GX
Нет Да [15] Да
NatSemi Geode GX2
AMD Geode GX, LX
Регистры TR0-TR7 представлены как 32-битные регистры данных для чтения/записи.
без каких-либо функций тестирования кэша/TLB. [16]
IDT WinChip (все модели) Регистры отсутствуют. Коды операций MOV TRx могут быть включены.
с FCR.EMOVTR WinChip [17] бит, но будет действовать как NOP.
Интел Кварк X1000 Нет Да [18] Да
  1. ^ Сообщается, что в Intel 386 регистры TR4 и TR5 действуют как недокументированные регистры только для чтения, возвращающие элемент данных, связанный с предварительной выборкой инструкций. [3]
  2. ^ Модели процессоров партнеров-производителей Cyrix от IBM , TI и ST также поддерживают те же тестовые регистры, что и соответствующие модели процессоров Cyrix под маркой Cyrix.
  3. ^ SoC, основанные на ядре ЦП ST486, производном от Cyrix, также поддерживают тот же набор тестовых регистров, что и Cyrix 486 - такие SoC включают, например, STPC Atlas и ZFMicro ZFx86. [8]
  4. ^ В Cyrix 6x86 регистры TR1 и TR2 можно включить, установив бит 6 регистра конфигурации Cyrix 30h. Эти регистры не документированы, но Cyrix опубликовал пример кода, использующего их. [10]
  5. ^ В Cyrix 6x86 регистры TR6 и TR7 можно было использовать не только для тестирования TLB, но и для настройки VSPM процессора (механизма подкачки переменного размера). [11] VSPM был 4-х входным. [12] программный TLB с маской для каждой записи для поддержки всех размеров страниц степени 2 от к байты. Он присутствовал только в Cyrix 6x86 и был удален в процессорах 6x86MX и более поздних версиях.
  6. ^ Только ядро ​​«Джошуа». Базовые варианты Cyrix III «Samuel» не поддерживали тестовые регистры TRx.
  7. ^ На процессорах 6x86MX, MII и «Joshua» Cyrix III регистры TR3-TR5 можно было использовать не только для тестирования кэша L1, но и для привязки отдельных строк кэша L1 к определенным адресам для использования оперативной памяти . [13] [14]

См. также

[ редактировать ]
  1. ^ Intel, Руководство разработчика семейства процессоров Pentium® , номер заказа. 241428-005, 1997, раздел 16.1.2, стр. 442 — приведен список процессоров Pentium MSR, которые обеспечивают ту же функциональность, что и регистры 386/486 TRx.
  2. ^ Знакомство с 80386, включая технический паспорт 80386 . Интел . Апрель 1986 г. с. 122.
  3. ^ Роберт Коллинз, Переместить специальные регистры , архивировано 5 июня 1997 года.
  4. ^ AMD, Книга данных по микропроцессорам Am386 , 1992 г., страницы 21 и 151.
  5. ^ AMD, Руководство пользователя программного обеспечения микропроцессора Am486® , ред. 1, 1994 г., раздел 1.59, стр. 82
  6. ^ Чипы и технологии, Справочное руководство программиста Super386 DX , pub.no. UG85, ред. 1.0, 1992 г., стр. 201.
  7. ^ NexGen, Справочник процессоров Nx586™ и числовых процессоров Nx587™ , 8 июля 1993 г., стр. 116.
  8. ^ ZFMicro, Книга данных ZFx86 1.0 Rev D , 5 июня 2006 г., стр. 101
  9. ^ Cyrix, Лист данных микропроцессора Cx486DLC , номер заказа. 94706-01, май 1992 г., раздел 2.3.2.6, стр.37
  10. ^ Cyrix, Руководство для разработчиков BIOS 6x86 , версия 4.1, 29 июля 1996 г., стр. 43.
  11. ^ Cyrix, Справочник процессоров 6x86 , номер заказа. 94175-01, март 1996 г., раздел 2.6.5, стр. 2. 74
  12. Архив ядра Linux, Re: Cyrix 6x86 Patch.. , 4 ноября 1996 г.
  13. ^ Cyrix, Справочник данных процессора 6x86MX , номер заказа. 94329-00, 15 июля 1997 г., раздел 2.13.1.1, стр. 87
  14. ^ VIA-Cyrix Corp., Книга данных процессора Cyrix III , v1.0, 25 января 2000 г., раздел 2.9.1.1, стр. 86
  15. ^ Cyrix, Книга данных процессора MediaGX , версия 2.0, 29 октября 1998 г., раздел 3.3.2.4, стр.59
  16. ^ AMD, Справочник процессоров Geode™ LX , идентификатор публикации: 33234H, февраль 2009 г., раздел 8.3.4.3, стр.648
  17. ^ IDT, Лист данных процессора WinChip C6 , раздел A.2, стр.79
  18. ^ Intel, Руководство разработчика Quark SOC X1000 Core , номер заказа. 329679-001, октябрь 2013 г., приложение Б, стр. 296


Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: ab9f98dcf31cf00eddfb746d9fb82d75__1722958620
URL1:https://arc.ask3.ru/arc/aa/ab/75/ab9f98dcf31cf00eddfb746d9fb82d75.html
Заголовок, (Title) документа по адресу, URL1:
Test register - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)