Co to jest jednostka zmiennoprzecinkowa?
Jednostka zmiennoprzecinkowa jest funkcjonalnym blokiem procesora komputerowego, który wykonuje operacje arytmetyczne o zmiennym punkcie. Znana również akronimem FPU, jednostka zmiennoprzecinkowa może być również fizycznie oddzielnym przetwarzaniem. FPU zwykle uzyskuje dostęp do danych za pomocą tych samych trybów adresowania, co reszta procesora i ogólnie obejmuje własne rejestry. Procesor wykorzystuje FPU do obliczania trygonometrycznych, logarytmicznych i podstawowych funkcji arytmetycznych o zmiennym punkcie. Używa również FPU do ładowania, przechowywania i porównywania liczb w kilku typach danych liczb całkowitych i zmiennoprzecinkowych.
Wiele procesorów nie zawiera jednostki zmiennoprzecinkowej. Większość mikroprocesorów wyprodukowanych przez Intel Corporation i Motorola zarejestrowane na przykład nie zawiera na przykład jednego. Wiele procesorów obliczeniowych ustawionych instrukcji (RISC) i wbudowanych kontrolerów też ich nie ma. Te układy zawierają arytmetyczną jednostkę logiczną (ALU) do wykonywania podstawowych funkcji logicznych arytmetycznych i bitowych. FMatematyka z punktu lakierowania jest jednak obsługiwana przez zewnętrznego przetwarzającego lub biblioteki oprogramowania.
Większość procesorów i systemów oprogramowania wdraża standard Institute of Electrical and Electronics Engineers (IEEE) dla operacji zmiennoprzecinkowych. Standard IEEE-754 został wydany po raz pierwszy w 1985 r. I rozszerzony w 2008 r., O obejmuje dodatkowe typy danych. Definiuje kilka typów danych liczb całkowitych i zmiennoprzecinkowych, każdy z własną precyzją, reprezentacją i zakresem liczbowym. Definiuje także wiele operacji arytmetycznych, metody zaokrąglania i obsługi wyjątków, takich jak podział zero. Niezależnie od tego, czy matematyka jest wykonywana przez jednostkę zmiennoprzecinkową, czy nie, standard zmiennoprzecinkowy IEEE gwarantuje identyczne wyniki.
Oprócz dodania, odejmowania, mnożenia i podziału, jednostka zmiennoprzecinkowa może wykonywać wiele innych operacji. Często obejmują one skalowanie, kwadratowe i logarytmiczne obliczenia. Sine, cZazwyczaj również dostarczane są również funkcje trygonometryczne systemonometryczne i częściowe. Liczby liczb całkowitych i pływających można porównać z FPU i przekonwertować z jednej precyzji na drugą. Można je również zaokrąglić w dowolnym kierunku i przechowywać bezpośrednio do pamięci głównej procesora.
FPU procesora graficznego może zawierać często powtarzane funkcje wspólne dla trójwymiarowej obrotu obiektów lub animacji. Wiele wbudowanych kontrolerów zostało zaprojektowanych z procesorami zoptymalizowanymi pod kątem cyfrowego przetwarzania sygnałów (DSP). Mogą być one używane w aplikacjach audio i komunikacyjnych i mogą na przykład zawierać FPU, które są dobre w szybkich transformacjach Fouriera (FFTS). Procesory kryptografii często obejmują FPU do szybkiego obliczenia algorytmów szyfrowania matematyki. Ogólne wielordzeniowe procesory mogą również obejmować jedną jednostkę zmiennoprzecinkową dla każdego regularnego rdzenia procesora.