F16C - F16C

Sada instrukcí F16C (dříve / neformálně známá jako CVT16 ) je rozšíření architektury sady instrukčních sad x86, které poskytuje podporu pro převod mezi formáty s plovoucí desetinnou čárkou s poloviční přesností a standardními IEEE s jednou přesností .

Dějiny

Sada instrukcí CVT16, oznámená společností AMD 1. května 2009, je rozšířením 128bitových základních instrukcí SSE v instrukční sadě x86 a AMD64 .

CVT16 je revize části návrhu sady instrukčních sad SSE5 oznámené 30. srpna 2007, která je doplněna sadami instrukcí XOP a FMA4 . Tato revize činí binárního kódování z navrhovaných nových instrukcí více kompatibilní s Intel ‚s AVX rozšíření instrukční, zatímco funkčnost návodu se nemění.

V posledních dokumentech je název F16C formálně používán ve specifikacích architektury Intel i AMD x86-64 .

Technické informace

Existují varianty, které převádějí čtyři hodnoty s plovoucí desetinnou čárkou v registru XMM nebo 8 hodnot s plovoucí desetinnou čárkou v registru YMM .

Pokyny jsou zkratky pro „vektorový převod zabalený na polovinu na zabalený jeden“ a naopak:

  • VCVTPH2PS xmmreg,xmmrm64  - převést čtyři hodnoty s plovoucí desetinnou čárkou s poloviční přesností v paměti nebo dolní polovině registru XMM na čtyři hodnoty s plovoucí desetinnou čárkou s jednou přesností v registru XMM.
  • VCVTPH2PS ymmreg,xmmrm128  - převést osm hodnot s plovoucí desetinnou čárkou s poloviční přesností v paměti nebo registru XMM (spodní polovina registru YMM) na osm hodnot s plovoucí desetinnou čárkou s přesnou přesností v registru YMM.
  • VCVTPS2PH xmmrm64,xmmreg,imm8  - převést čtyři hodnoty s plovoucí desetinnou čárkou s jednoduchou přesností v registru XMM na hodnoty s plovoucí desetinnou čárkou s poloviční přesností v paměti nebo dolní polovinu registru XMM.
  • VCVTPS2PH xmmrm128,ymmreg,imm8  - převést osm hodnot s plovoucí desetinnou čárkou s jednou přesností v registru YMM na hodnoty s plovoucí desetinnou čárkou s poloviční přesností v paměti nebo registru XMM.

8bitový okamžitý argument pro VCVTPS2PH výběr režimu zaokrouhlování . Hodnoty 0–4 vybírají nejbližší, dolní, horní, zkrácené a nastavený režim MXCSR.RC .

Podpora těchto pokynů je označena bitem 29 ECX po CPUID s EAX = 1 .

CPU s F16C

Reference

externí odkazy

  • Nové pokyny pro buldozer a piledriver [1]
  • Matematika DirectX F16C a FMA [2]
  • AMD64 Architecture Programmer's Manual Volume 1 [3]
  • AMD64 Architecture Programmer's Manual Volume 2 [4]
  • AMD64 Architecture Programmer's Manual Volume 3 [5]
  • AMD64 Architecture Programmer's Manual Volume 4 [6]
  • AMD64 Architecture Programmer's Manual Volume 5 [7]
  • Příručka pro vývojáře softwaru IA32 Architectures [8]