Muqobil ko'rsatmalar to'plami - Alternate Instruction Set

The Muqobil ko'rsatmalar to'plami (AIS) ikkinchi 32-bit ko'rsatmalar to'plami arxitekturasi tomonidan ishlab chiqarilgan ba'zi x86 protsessorlarida topilgan VIA Technologies. Bular haqida V3 C3 protsessorlar, ikkinchi yashirin protsessor holatiga x86 buyrug'ini bajarish orqali kirish mumkin ALTINST (0F 3F). Agar AIS rejimi yoqilgan bo'lsa, protsessor a bajaradi JMP EAX[1] va AIS ko'rsatmalarini manzilida bajarishni boshlang EAX registri. AIS dan foydalanish mahalliy kirish imkoniyatini beradi Centaur Technology - ishlab chiqilgan RISC protsessor ichidagi yadro.[2]

Ko'rsatma formati

AIS va x86 o'rtasida xaritalashni ro'yxatdan o'tkazing
AIS raqamix86 nomi
R0EAX
R1ECX
R2EDX
R3EBX
R4ESP
R5EBP
R6ESI
R7EDI
R8 ‒ R15

Manufakter muqobil ko'rsatmalar to'plamini "kengaytirilgan butun son, MMX, suzuvchi nuqta va 3DNow! qo'shimcha registrlar va ba'zi bir kuchli ko'rsatmalar shakllari bilan birga ko'rsatmalar ".[1]Har bir AIS ko'rsatmasiga 3 baytli ketma-ketlik qo'shiladi 0x8D8400 keyin 32-bitli ko'rsatma; AIS ko'rsatmalari uchun ushbu prefiks shakli ularni x86 ko'rinishiga olib keladi Samarali manzil (Leako'rsatmalar 2018 yilda tadqiqotchi Kristoper Domas prefiks haqida xabar berdi 0x620405 (x86 BOG'LANGAN) ham ishlagan.

2002 yilda AIS-ni qo'llab-quvvatlashni qo'shish bo'yicha taklif Netwide Assembler (NASM) qisman 2005 yilda rad qilingan, chunki NASM x86 yig'uvchisi bo'lgan va AIS alohida ko'rsatmalar to'plamidir.[3] Domasning 2018 yildagi tadqiqotlari natijasida montajchi mavjud.[4]

2007 yilda patent ba'zi mikrokodlar ko'rsatmalarini shunday nomladi yuk va do'kon asosiy RAMdan / ga va loadPRAM va do'kon PRAM protsessor ichidagi xususiy RAMga / dan.[5]Centaur Technologies-ni tekshirish guruhi, 2014 yilgi maqolasida VIA Nano, shu jumladan mikro ko'rsatmalarning ba'zi qisqa ro'yxatlari kiritilgan QO'ShIMChA, JLINK, JMP_ALL, MVIG, NLOOPE, STORE_PRAM, ortiqcha mikro operatsiyalar XADD va XSUB. Mikro-operatsiyalar maydonlarni o'z ichiga olgan formatga ega ekanligi ko'rsatildi opkod, exec birligi, src kengligi, src1, src2, dest kengligi, dest, bayroqlar yozishmi? va oxirgi tartibmi?.[6]

Mavjudligi

X86 rejimidan alternativ ko'rsatmalar to'plamining mavjudligini a ni bajarish orqali aniqlash mumkin CPUID EAX registri o'rnatilgan 0xc0000001 va keyin EDX registrini tekshirish. Agar EDX bo'lsa bit 0 1 ga o'rnatiladi, keyin AIS qo'llab-quvvatlanadi. Agar EDX bo'lsa bit 1 shuningdek, 1 ga o'rnatiladi, keyin AIS yoqiladi.[7] Agar AIS protsessor tomonidan qo'llab-quvvatlansa, uning holatini tekshirish orqali o'zgartirish mumkin Modelga xos registrlar, Xususiyatlarni boshqarish registrini (FCR, registr 0x1107) tekshirish va sozlash orqali. Agar bit 0 ("ALTINST") 1 ga o'rnatiladi, keyin AIS yoqiladi.[7]

Microsoft Windows NT yadrosi KiGetFeatureBits () ishga tushirish funktsiyasi yuklashda muqobil ko'rsatma rejimini faol ravishda o'chiradi.[8]Agar x86 bo'lsa ALTINST o'tish buyrug'i AIS rejimi o'chirilganda bajariladi, u holda protsessor noto'g'ri ko'rsatmalarni bajarilishini hosil qiladi.[9]AIS-ni qo'llab-quvvatlaydigan bitni o'rnatish imtiyozli kirishni talab qiladi va a yordamida o'rnatilishi kerak o'qish-o'zgartirish-yozish ketma-ketlik.[9]

Imtiyozning ko'tarilishi

2018 yilda Kristofer Domas ba'zi Samuel 2 protsessorlari muqobil ko'rsatmalar to'plami sukut bo'yicha yoqilganligini va AIS ko'rsatmalarini bajarish orqali kelganligini aniqladi. foydalanuvchi maydoni, daromad olish mumkin edi imtiyozlarning kuchayishi 3-uzukdan 0-ringgacha.[4] Domas AIS yo'riqnomasini avtomatlashtirilgan yordamida qisman teskari tuzgan edi xiralashgan etti kishilik klasterga qarshi nozik mijozlar.[10] Domas RISC buyruqlar to'plami uchun "chuqur o'rnatilgan yadro" (DEC) va "chuqur o'rnatilgan buyruqlar to'plami" (DEIS) atamalarini ishlatgan, "ishga tushirish ko'rsatmasi" ALTINST, x86 prefiksi o'rami uchun "ko'prik ko'rsatmasi", xususiyatlarni boshqarish registri (FCR) uchun "global konfiguratsiya registri" va imtiyozning ko'tarilishini "nomi bilan hujjatlashtirgan"Rozenbridj ".[4]

Adabiyotlar

  1. ^ a b Muqobil ko'rsatmalar to'plami (PDF). Eden VIA (Hisobot). O'rnatilgan tizim platformasi protsessorining ma'lumotlar sahifasi. Noyabr 2002. p. 70‒71. Olingan 10 avgust 2018.
  2. ^ Stiller, Andreas (2003 yil 22-yanvar). "VIAs Prozessor der siebten Generation" [VIA ning ettinchi avlod protsessori]. Heise Online (nemis tilida). Heinz Heise. Olingan 12 avgust 2018. Hamma narsa ... Nehemiya RISC-artigen Core auch native programmier (AIS: Alternative Instruction Set). Auch hier wird sich zeigen, ob findige Programmierer das für den einen oder anderen Treiber nutzen können, um hier mehr Performance herauszukitzeln.
  3. ^ "# 21 Centaur's AIS-ni qo'llab-quvvatlaydi". Butun dunyo bo'ylab yig'uvchi. 2002 yil 18-dekabr. Olingan 12 avgust 2018 - Sourceforge orqali.
  4. ^ a b v Domas, Kristofer. "Rosenbridge: x86 protsessorlarda uskuna orqa eshiklari". Olingan 10 avgust 2018.
  5. ^ AQSh patenti 20080256336A1, Genri, G. Glenn; Kolin Eddi va Rodni E. Xuker va boshq., "Maxsus mikrokod qo'chqorli mikroprotsessor", 2008-10-16 yillarda nashr etilgan, 2010-11-02 
  6. ^ Devis, Jared; Slobodova, Anna; Qilichlar, Chap (2016 yil 20-aprel). "Mikrokodni tekshirish - mikroprotsessorni tekshirish jumbog'ining yana bir qismi" (PDF). Olingan 14 avgust 2018. Iqtibos jurnali talab qiladi | jurnal = (Yordam bering)
  7. ^ a b Centaur kengaytirilgan CPUID ko'rsatmalarining funktsiyalari (PDF). VIA Eden-N o'rnatilgan tizim platformasi protsessorining ma'lumotlar sahifasi (Hisobot). 2004 yil 22 oktyabr. P. 20, 74. Olingan 10 avgust 2018.
  8. ^ Microsoft. "kernlini.c". Microsoft Windows NT yadrosi manbai. Olingan 14 avgust 2018. KiGetFeatureBits ()… // Cyrix ALTINST xususiyatini boshqaruvchi 0 bitni o'chirib qo'ying.
  9. ^ a b Muqobil ko'rsatmalarni bajarish (PDF). VIA C3 Samuel 2 protsessor ma'lumotlar sahifasi (Hisobot). 2004 yil oktyabr. P. 60.
  10. ^ Vagenseil, Pol (9 avgust 2018). "Xaker eski x86 protsessorlarda yashiringan" Xudo rejimi "ni topadi". Tomning uskuna. Olingan 10 avgust 2018.

Qo'shimcha o'qish