(Nowy i oryginalny) W magazynie 3S200A-4FTG256C Układ scalony XC3S200A-4FTG256C
Cechy produktu
TYP | OPIS | WYBIERAĆ |
Kategoria | Układy scalone (IC) |
|
Mfr | AMD Xilinx |
|
Seria | Spartan®-3A |
|
Pakiet | Taca |
|
Stan produktu | Aktywny |
|
Liczba LAB/CLB | 448 |
|
Liczba elementów/komórek logicznych | 4032 |
|
Całkowita liczba bitów RAM | 294912 |
|
Liczba wejść/wyjść | 195 |
|
Liczba bramek | 200 000 |
|
Napięcie zasilające | 1,14 V ~ 1,26 V |
|
Typ mocowania | Montaż powierzchniowy |
|
temperatura robocza | 0°C ~ 85°C (TJ) |
|
Opakowanie/etui | 256-LBGA |
|
Pakiet urządzeń dostawcy | 256-FTBGA (17×17) |
|
Podstawowy numer produktu | XC3S200 |
Programowalny układ bramek
Aprogramowalny przez użytkownika układ bramek(FPGA) jestukład scalonyzaprojektowany do konfiguracji przez klienta lub projektanta po wyprodukowaniu – stąd to określenieprogramowalny w terenie.Konfiguracja FPGA jest ogólnie określana przy użyciu ajęzyk opisu sprzętu(HDL), podobny do tego stosowanego w przypadku anukład scalony dostosowany do konkretnego zastosowania(ASIC).Schematy obwodówbyły wcześniej używane do określenia konfiguracji, ale jest to coraz rzadsze ze względu na pojawienie sięautomatyzacja projektowania elektronikinarzędzia.
Układy FPGA zawierają tablicęprogramowalny bloki logiczneoraz hierarchię rekonfigurowalnych połączeń wzajemnych, umożliwiającą łączenie bloków ze sobą.Bloki logiczne można skonfigurować tak, aby wykonywały złożone operacjefunkcje kombinacyjnelub postępuj tak prostobramki logicznetak jakIIXOR.W większości układów FPGA bloki logiczne obejmują równieżelementy pamięci, co może być prosteklapkilub bardziej kompletne bloki pamięci.[1]Wiele układów FPGA można przeprogramować w celu wdrożenia różnychfunkcje logiczne, pozwalając na elastycznośćrekonfigurowalne przetwarzanie danychjak wykonano wOprogramowanie komputerowe.
Układy FPGA odgrywają niezwykłą rolę wWbudowany systemrozwoju oprogramowania ze względu na możliwość rozpoczęcia tworzenia oprogramowania systemowego jednocześnie ze sprzętem, umożliwienia symulacji wydajności systemu na bardzo wczesnej fazie rozwoju oraz umożliwienia różnych prób systemu i iteracji projektowych przed sfinalizowaniem architektury systemu.[2]
Historia[edytować]
Z tego wywodzi się przemysł FPGAprogramowalna pamięć tylko do odczytu(PROM) iprogramowalne urządzenia logiczne(PLD).Zarówno PROM, jak i PLD miały możliwość programowania partiami w fabryce lub w terenie (programowanie w terenie).[3]
Alterazostała założona w 1983 r. i dostarczyła w 1984 r. pierwsze w branży przeprogramowalne urządzenie logiczne – EP300 – które zawierało kwarcowe okienko w opakowaniu, które umożliwiało użytkownikom świecenie lampą ultrafioletową na matrycę w celu usunięciaEPROMkomórki przechowujące konfigurację urządzenia.[4]
Xilinxwyprodukował pierwszy komercyjnie opłacalny programowalny w terenieukład bramkowyw 1985 r[3]– XC2064.[5]XC2064 miał programowalne bramki i programowalne interkonekty pomiędzy bramkami, co było początkiem nowej technologii i rynku.[6]XC2064 miał 64 konfigurowalne bloki logiczne (CLB), z dwoma trzema wejściamiTabele wyszukiwania(LUT).[7]
W 1987 rCentrum Wojny Nawodnej Marynarki Wojennejsfinansował eksperyment zaproponowany przez Steve'a Casselmana mający na celu opracowanie komputera, który implementowałby 600 000 reprogramowalnych bramek.Casselman odniósł sukces i w 1992 roku wydano patent na system.[3]
Altera i Xilinx działały niekwestionowane i szybko się rozwijały od 1985 r. do połowy lat 90. XX w., kiedy to pojawili się konkurenci, zmniejszając znaczną część ich udziału w rynku.Do 1993 roku Actel (obecnieMikrosemi) obsługiwał około 18 procent rynku.[6]
Lata 90. były okresem szybkiego rozwoju układów FPGA, zarówno pod względem stopnia zaawansowania obwodów, jak i wielkości produkcji.Na początku lat 90-tych układy FPGA były stosowane głównie wtelekomunikacjaIsieciowanie.Pod koniec dekady układy FPGA znalazły zastosowanie w zastosowaniach konsumenckich, motoryzacyjnych i przemysłowych.[8]
Do 2013 roku Altera (31 procent), Actel (10 procent) i Xilinx (36 procent) reprezentowały łącznie około 77 procent rynku FPGA.[9]
Firmy takie jak Microsoft zaczęły używać układów FPGA do przyspieszania wysokowydajnych systemów wymagających intensywnych obliczeń (takich jakcentra danychktóre obsługują ichWyszukiwarka Bing), z powoduwydajność na watzalety, jakie zapewniają układy FPGA.[10]Microsoft zaczął używać układów FPGA doprzyśpieszyćBing w 2014 r. i w 2018 r. rozpoczęli wdrażanie układów FPGA w innych obciążeniach centrów danych na potrzeby swoichLazur Chmura obliczeniowaplatforma.[11]
Poniższe ramy czasowe wskazują postęp w różnych aspektach projektowania FPGA:
Bramy
- 1987: 9 000 bram, Xilinx[6]
- 1992: 600 000, Departament Wojny Nawodnej Marynarki Wojennej[3]
- Początek XXI wieku: miliony[8]
- 2013: 50 milionów, Xilinx[12]
Wielkość rynku
- 1985: Pierwszy komercyjny układ FPGA: Xilinx XC2064[5][6]
- 1987: 14 milionów dolarów[6]
- C.1993: >385 milionów dolarów[6][nieudana weryfikacja]
- 2005: 1,9 miliarda dolarów[13]
- Szacunki za rok 2010: 2,75 miliarda dolarów[13]
- 2013: 5,4 miliarda dolarów[14]
- Szacunki na rok 2020: 9,8 miliarda dolarów[14]
Rozpoczyna się projektowanie
Arozpoczęcie projektowaniato nowy, niestandardowy projekt do wdrożenia na FPGA.
Projekt[edytować]
Współczesne układy FPGA dysponują dużymi zasobamibramki logicznei bloki RAM do realizacji złożonych obliczeń cyfrowych.Ponieważ konstrukcje FPGA wykorzystują bardzo duże szybkości we/wy i dane dwukierunkoweautobusywyzwaniem staje się zweryfikowanie prawidłowego taktowania ważnych danych w czasie konfiguracji i czasie przetrzymywania.
Planowanie pięterumożliwia alokację zasobów w układach FPGA w celu spełnienia tych ograniczeń czasowych.Układy FPGA można wykorzystać do implementacji dowolnej funkcji logicznej, jaką może zapewnić npASICmoże wykonywać.Możliwość aktualizacji funkcjonalności po wysyłce,częściowa rekonfiguracjaczęści projektu[17]oraz niskie, jednorazowe koszty inżynieryjne w porównaniu z konstrukcją ASIC (pomimo ogólnie wyższego kosztu jednostkowego), oferują korzyści w wielu zastosowaniach.[1]
Niektóre układy FPGA oprócz funkcji cyfrowych mają funkcje analogowe.Najbardziej powszechną funkcją analogową jest funkcja programowalnaszybkość narastaniana każdym pinie wyjściowym, umożliwiając inżynierowi ustawienie niskich szybkości na lekko obciążonych pinach, co w przeciwnym razie byłoby możliwepierścieńLubparaniedopuszczalnie oraz do ustawiania wyższych szybkości na mocno obciążonych pinach w szybkich kanałach, które w przeciwnym razie działałyby zbyt wolno.[18][19]Powszechne są również kwarceoscylatory kryształowe, wbudowane oscylatory rezystancji i pojemności orazpętle synchronizacji fazowejz wbudowanymOscylatory sterowane napięciemużywany do generowania zegara i zarządzania nim, a także do szybkiego serializatora-deserializatora (SERDES) taktowania transmisji i odzyskiwania zegara odbiornika.Dość powszechne są mechanizmy różnicowekomparatoryna pinach wejściowych przeznaczonych do podłączeniasygnalizacja różnicowakanały.Kilka "sygnał mieszanyUkłady FPGA” mają zintegrowane urządzenia peryferyjneprzetworniki analogowo-cyfrowe(ADC) iprzetworniki cyfrowo-analogowe(DAC) z blokami kondycjonowania sygnału analogowego, pozwalającymi na pracę jako przetworniki Asystem na chipie(SoC).[20]Takie urządzenia zacierają granicę pomiędzy układem FPGA, który przenosi cyfrowe jedynki i zera w swojej wewnętrznej programowalnej strukturze połączeń, aprogramowalny przez użytkownika układ analogowy(FPAA), który przenosi wartości analogowe w swojej wewnętrznej programowalnej strukturze połączeń.
Bloki logiczneedytować]
Główny artykuł:Blok logiczny
Uproszczona przykładowa ilustracja komórki logicznej (LUT –Tabela przeglądowa, FA –Pełny dodatek, DFF –Przerzutnik typu D)
Najbardziej popularna architektura FPGA składa się z tablicybloki logiczne(nazywane konfigurowalnymi blokami logicznymi, CLB lub blokami tablic logicznych, LAB, w zależności od dostawcy),Podkładki we/wyi kanały routingu.[1]Ogólnie rzecz biorąc, wszystkie kanały trasujące mają tę samą szerokość (liczbę przewodów).Wiele pól we/wy może zmieścić się na wysokości jednego wiersza lub szerokości jednej kolumny w tablicy.
„Obwód aplikacji musi zostać zmapowany w układzie FPGA z odpowiednimi zasobami.Chociaż liczbę wymaganych modułów CLB/LAB i wejść/wyjść można łatwo określić na podstawie projektu, liczba potrzebnych ścieżek routingu może się znacznie różnić nawet w przypadku projektów o tej samej logice.(Na przykład Aprzełącznik poprzecznywymaga znacznie więcej routingu niż aukład skurczowyz tą samą liczbą bramek.Ponieważ nieużywane ścieżki routingu zwiększają koszt (i zmniejszają wydajność) części, nie przynosząc żadnych korzyści, producenci układów FPGA starają się zapewnić wystarczającą liczbę ścieżek, aby większość projektów pasowała pod względemTabele wyszukiwania(LUT) i wejścia/wyjścia mogą byćkierowane.Jest to ustalane na podstawie szacunków, takich jak te pochodzące zZasada rentylub poprzez eksperymenty z istniejącymi projektami.”[21]Od 2018 r.sieć na chipieopracowywane są architektury routingu i połączeń wzajemnych.[wymagany cytat]
Ogólnie rzecz biorąc, blok logiczny składa się z kilku komórek logicznych (zwanych ALM, LE, plasterkiem itp.).Typowa komórka składa się z 4-wejściowej tablicy LUT, apełny dodatek(FA) i APrzerzutnik typu D.Można je podzielić na dwie 3-wejściowe tablice LUT.WTryb normalnysą one łączone w 4-wejściową tablicę LUT poprzez pierwsząmultiplekser(muks).Warytmetykatrybie, ich dane wyjściowe są podawane do sumatora.Wybór trybu jest zaprogramowany w drugim multiplekserze.Dane wyjściowe mogą być dowolnesynchronicznyLubasynchroniczny, w zależności od zaprogramowania trzeciego multipleksera.W praktyce stosuje się całość lub części sumatoraprzechowywane jako funkcjedo LUT, aby zapisaćprzestrzeń.[22][23][24]
Twarde blokiedytować]
Nowoczesne rodziny układów FPGA rozszerzają powyższe możliwości, włączając funkcjonalność wyższego poziomu osadzoną w krzemie.Posiadanie tych wspólnych funkcji wbudowanych w obwód zmniejsza wymagany obszar i zapewnia tym funkcjom większą prędkość w porównaniu do budowania ich z logicznych prymitywów.Przykładami są m.inmnożniki, ogólnyBloki DSP,wbudowane procesory, szybka logika we/wy i wbudowanawspomnienia.
Układy FPGA wyższej klasy mogą zapewniać dużą prędkośćtransceivery wielogigabitoweItwarde rdzenie IPJak na przykładrdzenie procesorów,Ethernetu średnie jednostki kontroli dostępu,PCI/PCI Expresskontrolery i kontrolery pamięci zewnętrznej.Rdzenie te istnieją obok programowalnej struktury, ale są zbudowane z nichtranzystoryzamiast LUT, aby miały poziom ASICwydajnośćIpobór energiibez zużywania znacznej ilości zasobów sieci szkieletowej, pozostawiając większą część sieci wolną dla logiki specyficznej dla aplikacji.Wielogigabitowe transceivery zawierają również wysokiej jakości analogowe obwody wejściowe i wyjściowe, a także szybkie serializatory i deserializatory, czyli komponenty, których nie można zbudować z tablic LUT.Funkcje warstwy fizycznej wyższego poziomu (PHY), takie jakkodowanie liniimogą, ale nie muszą, być zaimplementowane wraz z serializatorami i deserializatorami w twardej logice, w zależności od FPGA.