Procesory z rdzeniem miękkim VS Procesory z rdzeniem twardym

19

Robię badania nad interfejsem FPGA z mikroprocesorem, takim jak ARM9.

W moim badaniu spotkałem się z koncepcją procesorów miękkiego i twardego rdzenia. Czy mogę wiedzieć, jakie jest porównanie między tymi dwoma typami; podobieństwo czy różnice we wdrożeniu?

Jak Xing Quan
źródło

Odpowiedzi:

19

Miękki rdzeń jest zaimplementowany w tkaninie FPGA, natomiast Hard jest implementowany tak samo jak każdy układ scalony, gdy jest nadal podłączony do tkaniny FPGA. Porównanie ogólnie sprowadza się do:

Procesory Hard Core - 100 MHz do 1GHz + prędkości

  • Można osiągnąć znacznie szybsze prędkości przetwarzania, ponieważ są one zoptymalizowane i nie są ograniczone przez prędkość materiału
  • Naprawiono i nie można go modyfikować (chociaż może wykorzystywać niestandardową logikę w strukturze FPGA do przetwarzania

Procesory z miękkim rdzeniem - 250 MHz i mniej (zwykle mniej niż 200 MHz)

  • Można go łatwo modyfikować i dostosowywać do konkretnych wymagań, dodatkowych funkcji, niestandardowych instrukcji itp.
  • Można użyć wielu rdzeni (kosztem zasobów)
  • Ograniczona prędkością materiału.

W ostatnich latach nastąpił duży ruch w kierunku twardego procesora, głównie z powodu potrzeby szybszego przetwarzania, którego nie mogą zapewnić miękkie rdzenie. Po zainstalowaniu procesora z rdzeniem twardym z układem FPGA zwykle można na przykład włączyć przetwarzanie dużej ilości danych, co jest potrzebne w aplikacjach infrastruktury komunikacyjnej (wiele GB danych).

Gustavo Litovsky
źródło
11

Procesor typu soft-core to procesor wykorzystujący strukturę FPGA.

Procesor hard-core to procesor, który jest fizycznie zaimplementowany jako struktura w krzemie.

Zasadniczo możesz dodać procesor z miękkim rdzeniem do systemu opartego na FPGA po jego zaprojektowaniu. Jednak dodanie twardego procesora wymaga albo innego układu FPGA, albo dodatkowego układu na płycie.


W miarę możliwości preferowane są procesory hard-core, ponieważ stosunek ceny do mocy obliczeniowej sprzętowego procesora jest znacznie lepszy. Wdrożenie procesora w strukturze FPGA wymaga dużych zasobów, szczególnie jeśli potrzebujesz dużej mocy obliczeniowej. Równoważny sprzętowy procesor jest prawdopodobnie znacznie tańszy.


Sprzętowy procesor jest nie tylko znacznie tańszy, ale może też być znacznie bardziej energooszczędny. Na platformach zasilanych bateryjnie efektywność ma zasadnicze znaczenie dla długiej żywotności baterii. Nieużywane bramki w FPGA można czasem wyłączyć, ale zwykle w procesorze z miękkim rdzeniem jest znacznie więcej aktywnych obwodów niż w specjalnie zaprojektowanym procesorze sprzętowym. Cały ten potencjalny krzem FPGA zużywa energię.

Connor Wolf
źródło
„Twardy” i „miękki” może również odnosić się do zastosowanego opisu sprzętu, a nie tylko do tego, czy rdzeń jest zaimplementowany w tkaninie (patrz „Twarde makroprocesory ARM ). Ta strona Western Design Center, Inc., stanowi przykład tego użyj: „ASIC (Manuallly Optimized GDSII Hard Core and Verilog RTL Soft Core) oraz FPGA (Verilog RTL Soft Core)”. Kontekst FPGA może wykluczać takie użycie terminów (chociaż wartości binarne / wartości inicjalizacji LUT vs. RTL wydają się analogiczne).
Paul A. Clayton,
Więc w zasadzie soft-core = FPGA, hard-core = ASIC?
nalzok
@nalzok - Tak. Widziałem argument za nazwaniem emulacji jednego procesora na innym procesorze „miękkim” rdzeniem, ale ludzie po prostu nazywają tę emulację moim doświadczeniem.
Connor Wolf,