Podstawy FPGA - część 2: pierwsze kroki z macierzami FPGA Lattice Semiconductor

Przez: Clive „Max” Maxfield

Przekazane przez: Północnoamerykańscy redaktorzy DigiKey

Uwaga od redakcji: optymalne rozwiązania w zakresie przetwarzania można zaprojektować łącząc RISC, CISC, procesory graficzne i macierze FPGA, same macierze FPGA lub macierze FPGA, które zawierają już procesory z rdzeniami twardymi w ramach swojej struktury. Wielu projektantów nie wie jednak, jakie są możliwości macierzy FPGA, jak się rozwinęły i jak z nich korzystać. W części 1 zawarto solidne wprowadzenie do macierzy FPGA i opisano dlaczego są potrzebne. Teraz w części 2 skupimy się na seriach urządzeń macierzy FPGA i narzędziach projektowych oferowanych przez sprzedawcę macierzy FPGA - Lattice Semiconductor. Części 3, 4 i 5 skupią się na macierzach FPGA firm Altera, Microchip oraz Xilinx.

Jak wspomniano w części 1, bezpośrednio programowalne macierze bramek (FPGA) mają wiele cech, które sprawiają, że są one nieocenionymi zasobami obliczeniowymi, zarówno gdy działają same, jak i gdy są elementami niejednorodnej architektury. Wielu projektantów jednak nie zna macierzy FPGA i nie wie jak włączyć je do swoich projektów.

Jednym ze sposobów na pokonanie tej przeszkody jest głębsze przyjrzenie się architekturze FPGA i związanym z nią narzędziom oferowanym przez głównych producentów, począwszy od asortymentu firmy Lattice Semiconductor.

Przegląd macierzy FPGA wysokiego poziomu

Na rynku istnieje wiele różnych typów macierzy FPGA, a każdy z nich charakteryzuje się inną funkcjonalnością i różnymi możliwościami kombinacji. Sercem każdej macierzy FPGA jest programowalna struktura, która zbudowana jest z szeregu programowalnych bloków logicznych (ilustracja 1a). Kolejnym krokiem w projektowaniu struktury macierzy FPGA jest włączenie do niej elementów takich jak bloki pamięci SRAM, wewnętrzna pamięć blokowa RAM (BRAM), pętle synchronizacji fazy (PLL) oraz zarządzanie zegarem (ilustracja 1b). Można również dodać bloki cyfrowego przetwarzania sygnałów (DSP slice) oraz szybkie bloki SERDES (serializatory/deserializatory) (ilustracja 1c).

Schemat macierzy FPGA zawiera tylko programowalną strukturę i konfigurowalne wejścia-wyjścia ogólnego przeznaczenia(GPIO) Ilustracja 1: najprostsza macierz FPGA zawiera tylko programowalną strukturę i wejścia-wyjścia ogólnego przeznaczenia, które można konfigurować (GPIO) (a), różne rodzaje architektury mogą wzmocnić podstawową strukturę blokami pamięci SRAM, pętlami PLL i zarządzaniem zegarami (b), blokami DSP i interfejsami SERDES (c), a także procesorami z rdzeniami twardymi i urządzeniami peryferyjnymi (d). (Źródło ilustracji: Max Maxfield)

Funkcje interfejsów peryferyjnych takich jak CAN, I2C, SPI, UART i USB można zainstalować w strukturze w formie mikroprocesora z rdzeniem miękkim, ale wiele macierzy FPGA zawiera je już w płytce krzemowej w formie procesorów z rdzeniem twardym. Podobnie same mikroprocesory można zainstalować w strukturze w postaci rdzeni miękkich lub w postaci rdzeni twardych w płytce krzemowej (ilustracja 1d). Różne macierze FPGA oferują różne zestawy funkcji, cech, możliwości i pojemności i są dostosowane do użytku na różnych rynkach i w różnych zastosowaniach.

Istnieje szereg sprzedawców macierzy FPGA, w tym Altera (zakupiony przez Intel), Atmel (zakupiony przez Microchip Technology), Lattice Semiconductor, Microsemi (również zakupiony przez Microchip Technology) oraz Xilinx.

Wszystkie te firmy oferują różne grupy macierzy FPGA - niektóre sprzedają macierze FPGA w systemie SoC (zawierające rdzenie twarde procesorów), a niektóre urządzenia odporne na promieniowanie, które są zaprojektowane z myślą o środowiskach o wysokim poziomie promieniowania, takich jak przestrzeń kosmiczna. Wybór najlepszego urządzenia do danego zadania może być trudny, ponieważ istnieje wiele grup produktów, a każda umożliwia korzystanie z innych zasobów. W artykule omówiono grupy urządzeń i narzędzia projektowe oferowane przez firmę Lattice Semiconductor.

Macierze FPGA firmy Lattice Semiconductor

Macierze FPGA firmy Lattice Semiconductor oferowane są w zakresie od niskiego do średniego, z naciskiem na stosowanie w urządzeniach niskiej mocy, które rozwiązują problemy użytkowników z siecią od brzegu Internetu aż do chmury w ramach szybko rozwijających się rynków komunikacyjnych, komputerowych, przemysłowych, motoryzacyjnych i konsumenckich.

Lattice oferuje cztery główne grupy macierzy FPGA:

  • iCE (które nazywa najmniejszymi na świecie matrycami FPGA o ultraniskiej mocy)
  • CrossLink oraz CrossLinkPlus (zoptymalizowane pod kątem zastosowań z szybkimi sygnałami wizyjnymi i czujnikami)
  • MachXO (zoptymalizowane dla zastosowań z mostkowaniem i rozszerzeniami, a także do zarządzania platformami oraz zastosowań z zakresu bezpieczeństwa)
  • ECP (urządzenia ogólnego przeznaczenia do zastosowań związanych z łącznością i przyspieszaniem)

Firma Lattice oferuje również szereg pakietów narzędzi do projektowania i weryfikacji, w tym Lattice Diamond Software (dla urządzeń CrossLink/CrossLinkPlus, MachXO i ECP) oraz Lattice Radiant Software (dla macierzy FPGA iCE i przyszłych rodzajów architektury), a także LatticeMico (narzędzie graficzne do tworzenia projektów opartych na mikroprocesorach miękkich) oraz zestaw Lattice sensAI i kompilator sieci neuronowych (dla projektów obejmujących sztuczną inteligencję (AI) oraz uczenie maszynowe (ML)).

Tradycyjne macierze FPGA z serii ECP

Urządzenia z serii ECP firmy Lattice są tym, co wielu projektantów określiłoby mianem „tradycyjnych” macierzy FPGA. Mogą one zawierać do 85000 (k) czterowejściowych tablic LUT w obudowie o wymiarach 10 x 10 milimetrów (mm) i wysokości 0,5mm. Charakteryzują się one niskim statycznym i dynamicznym poborem mocy - jeden kanał SERDES dla protokołów diagnostycznych pracuje poniżej 0,25 wata a cztery kanały SERDES poniżej 0,5 wata.

Poza blokami SRAM, blokami cyfrowego przetwarzania sygnałów (DSP), pętlami synchronizacji fazy (PLL) i zarządzaniem zegarami, macierze FPGA z serii ECP obsługują programowalne wejścia-wyjścia dla interfejsów LVCMOS 33/25/18/15/12, XGMII, LVTTL, LVDS, Bus-LVDS, 7:1 LVDS, LVPECL oraz MIPI D-PHY.

Komórki konfiguracyjne w macierzach FPGA z serii ECP są oparte na pamięci SRAM, co oznacza, że podobnie jak w przypadku wszystkich innych macierzy bazujących na pamięci SRAM, ich konfiguracja musi być zasilana z zewnętrznego źródła (np. urządzenia pamięci flash, mikroprocesora, mikrokontrolera) po podłączeniu zasilania do systemu.

Dobrym przykładem urządzenia z serii ECP jest LFE5UM5G-25F-8BG381C - macierz FPGA ECP5 5G z możliwością podłączenia SERDES w obudowie o wymiarach 10 x 10mm. Aby umożliwić projektantom lepsze badanie funkcji macierzy FPGA z grupy ECP5 i eksperymentowanie z nimi, firma Lattice udostępnia również pasującą do urządzeń serii ECP5-5G płytkę rozwojową LFE5UM5G-45F-VERSA-EVN (ilustracja 2).

Wygląd płytki ewaluacyjnej ECP5 firmy Lattice SemiconductorIlustracja 2: płytka ewaluacyjna ECP5 jest płytką do prototypowania z dużą ilością układów logicznych, wejściami-wyjściami, SERDES 5G i listwami rozszerzeń. (Źródło ilustracji: Lattice Semiconductor)

Małe, ale potężne: macierze FPGA iCE firmy Lattice

Urządzenia iCE to najmniejsze dostępne macierze FPGA, a najmniejsza z nich zawiera 18 wejść-wyjść w obudowie o wymiarach 1,4 x 1,4mm. Macierze FPGA iCE oferują elastyczną architekturę logiczną z 5k czterowejściowymi tablicami LUT, do 128kb wbudowaną pamięć SysMEM BRAM firmy Lattice i 1-megabitową jednoportową pamięć RAM (SRAM), wydajne bloki DSP i konfigurowalne wejścia-wyjścia.

Chociaż są one małe i mają niską moc - prąd w trybie uśpienia to zaledwie 75 mikroamperów (µA), a prąd w trybie aktywnym wynosi od 1 do 10 miliamperów (mA) dla większości zastosowań - to są jednocześnie potężnymi urządzeniami. Na przykład, są one w stanie zaimplementować sztuczne sieci neuronowe (ANN), by dopasować wzorzec niezbędny do inteligentnego działania rozwiązań w technologii „always-on” w urządzeniach brzegowych.

Dane konfiguracyjne w macierzy FPGA iCE są przechowywane w pamięci nieulotnej (NVM), co oznacza, że urządzenia podlegają jednokrotnemu programowaniu (OTP). Mimo to zawierają również komórki konfiguracyjne oparte na pamięci SRAM. Podczas opracowywania projektu można go przetestować poprzez bezpośrednie obciążenie komórek konfiguracyjnych opartych na pamięci SRAM ze świata zewnętrznego. Po zakończeniu projektu można go wczytać do pamięci NVM. Po włączeniu zasilania urządzenia konfiguracja zapisana w pamięci NVM jest automatycznie kopiowana do komórek konfiguracyjnych opartych na pamięci SRAM w masowo równoległy sposób.

Przykładem urządzenia iCE jest ICE40UL1K-SWG16ITR1K iCE40 UltraLite, które jest najmniejszą na świecie macierzą FPGA (w momencie zamieszczania tego artykułu) dostarczającą 42 mikrowaty (µW) mocy statycznej w obudowie o rozmiarach 1,4 x 1,4mm. Pasującą płytką rozwojową jest HM01B0-UPD-EVN Himax HM01B0 UPduino shield oraz modułowa płytka demonstracyjna sensAI (ilustracja 3).

Wygląd płytki Himax HM01B0 UPduino shield firmy Lattice SemiconductorIlustracja 3: płytka Himax HM01B0 UPduino shield jest kompletnym zestawem rozwojowym do wdrażania sztucznej inteligencji (AI), który wykorzystuje dane wejściowe z czujników wizyjnych i dźwiękowych. (Źródło ilustracji: Lattice Semiconductor)

Zestaw oparty jest na płytce UPduino 2.0, płytce rozwojowej do szybkiego prototypowania w formacie Arduino o wydajności i możliwościach wejść-wyjść odpowiadających macierzy FPGA iCE40 UltraPlus. Zawiera on również moduł sensora obrazu niskiej mocy Himax HM01B0 i dwa mikrofony I2S.

Dla specjalistów: macierze FPGA CrossLink i CrossLinkPlus

Serie CrossLink i CrossLinkPlus to wyspecjalizowane macierze FPGA, które oprócz programowalnej logiki i znacznych możliwości wejścia-wyjścia cechują się także podwyższonymi specyfikacjami do użytku w zastosowaniach przemysłowych i samochodowych. Należą do nich interfejsy MIPI (Mobile Industry Processor Interface) D-PHY w standardzie szybkiej komunikacji danych w warstwie fizycznej, CSI2 (Camera Serial Interface 2) oraz DSI2 (Display Serial Interface 2), znajdujące się w obudowach mierzących 6 x 6 mm (CrossLink) oraz 3,5 x 3,5mm (CrossLinkPlus).

Podobnie jak macierze FPGA iCE, dane konfiguracyjne w urządzeniach CrossLink są przechowywane w pamięci OTP NVM, urządzenia te zawierają komórki konfiguracyjne oparte na pamięci SRAM, które mogą być bezpośrednio ładowane w trakcie programowania do testów. Po wykonaniu projektu jest on ładowany do pamięci NVM i automatycznie kopiowany do komórek konfiguracyjnych opartych na pamięci SRAM w masowo równoległy sposób przy włączaniu zasilania. Dla porównania, komórki konfiguracyjne w urządzeniach CrossLinkPlus są oparte na pamięci flash, co oznacza, że urządzenia te można przeprogramować w zależności od potrzeb, a także zapewniają one możliwość natychmiastowego włączenia w mniej niż 10 milisekund (ms).

Przykładem urządzenia z serii CrossLink jest LIF-MD6000-6JMG80I z 5936 elementami/komórkami logicznymi, 184320-bitową pamięcią RAM i 37 modułami wejścia-wyjścia. Zestaw rozwojowy do wbudowanych systemów wizyjnych LF-EVDK1-EVN ułatwia rozpoczęcie pracy nad wbudowanymi systemami wizyjnymi. Umożliwia on połączenie wejść MIPI opartych na CrossLink z przetwarzaniem macierzy FPGA ECP5 w celu tworzenia prototypów takich systemów (ilustracja 4).

Wygląd zestawu do wbudowanych systemów wizyjnych LF-EVDK1-EVN firmy LatticeIlustracja 4: zestaw rozwojowy do wbudowanych systemów wizyjnych LF-EVDK1-EVN firmy Lattice umożliwia projektantom systemów pracę ze środowiskiem prototypowania oprogramowania i sprzętu, które pozwala na łączenie i dopasowywanie kart wejścia i wyjścia do interfejsu z wieloma czujnikami obrazu i wyświetlaczami. (Źródło ilustracji: Lattice Semiconductor)

Gdy liczą się wejścia-wyjścia i zarządzanie energią: macierze FPGA MachXO

Dzięki setkom wejść-wyjść, macierze FPGA MachXO są idealnym rozwiązaniem dla wielu zastosowań które wymagają rozszerzeń GPIO, mostkowania interfejsów i zarządzania zasilaniem. Najnowsze produkty z tej grupy zostały stworzone z myślą o zgodności z wymogami NIST i posiadają dodatkowe zabezpieczenia sprzętu i oprogramowania układowego.

Macierze FPGA MachXO posiadają spory zestaw wejść-wyjść GPIO, który posiada funkcję zwaną „hot socketing”, co oznacza że napięcie można przykładać na wejścia-wyjścia niezależnie od stanu szyn zasilania. Ponadto, o ile większość wejść macierzy FPGA domyślnie jest w stanie wysokim, wejścia do MachXO zawsze są ustawione na stan niski, dzięki czemu sprawdzą się w zastosowaniach sterowania. Macierz FPGA MachXO włącza się w czasie krótszym od 10ms, dzięki czemu jest idealnym rozwiązaniem w urządzeniach sterujących, które muszą włączyć się jako pierwsze i wyłączają się jako ostatnie oraz które zarządzają innymi elementami podczas włączania i wyłączania systemu oraz sekwencjonują je.

Dane konfiguracyjne w urządzeniach MachXO są przechowywane w pamięci flash. Urządzenia MachXO zawierają również komórki konfiguracyjne oparte na pamięci SRAM. Po włączeniu zasilania urządzenia konfiguracja danych zapisana w pamięci flash jest automatycznie kopiowana do komórek konfiguracyjnych opartych na pamięci SRAM w masowo równoległy sposób. Ponadto, podczas pracy urządzenia możliwe jest załadowanie nowej konfiguracji do pamięci flash, a następnie przeprowadzenie jej kopiowania do komórek SRAM w odpowiednim momencie.

Przykładem urządzenia MachXO jest LCMXO3LF-9400C-6BG256C z 9400 elementami/komórkami logicznymi, 442368-bitową pamięcią RAM i 206 wejściami-wyjściami. Pasującą płytką rozwojową jest zestaw startowy MachXO3 LCMXO3LF-6900C-S-EVN (wersja MachX03L).

Wygląd zestawu startowego MachXO3L firmy Lattice SemiconductorIlustracja 5: zestaw startowy MachXO3L to podstawowa płytka rozdzielcza umożliwiająca prostą ewaluację i rozwój projektów opartych na MachXO3L. (Źródło ilustracji: Lattice Semiconductor)

Zestaw z płytką zawiera SPI flash do ewaluacji możliwości zewnętrznego lub podwójnego rozruchu. Płytka rozdzielcza LCMXO3L-DSI-EVN MachXO3L DSI zalecana jest do ewaluacji wejść-wyjść MIPI DSI oraz CSI2, a LCMXO3L-SMA-EVN MachXO3L SMA do ewaluacji szybkich wejść-wyjść różnicowych.

Projektowanie i rozwój z wykorzystaniem macierzy FPGA firmy Lattice Semiconductor

Jedną z najczęstszych technik wykorzystywanych w pracach rozwojowych z wykorzystaniem macierzy FPGA jest programowanie w systemie LDD (language-driven design). Polega to na uchwyceniu zamysłu projektu na poziomie abstrakcji znanym jako RTL (register transfer level) wykorzystując języki opisu sprzętu (HDL) takie jak Verilog lub VHDL. Po weryfikacji poprzez symulację logiczną, zamysł ten wprowadza się do silnika syntezy wraz z dodatkowymi informacjami, takimi jak docelowy typ macierzy FPGA, przyporządkowanie wtyków i ograniczenia czasowe (np. maksymalne opóźnienie wejścia do wyjścia). Z silnika syntezy otrzymuje się plik konfiguracyjny, który albo ładowany jest bezpośrednio do macierzy FPGA albo do zewnętrznej pamięci w przypadku macierzy FPGA opartych na pamięci SRAM (ilustracja 6).

Schemat opisu projektu w RTL wprowadzony do silnika syntezyIlustracja 6: po weryfikacji poprzez symulację logiczną, opis projektu w RTL jest przekazywany do silnika syntezy wraz z dodatkowymi informacjami na temat projektu, takimi jak rodzaj macierzy FPGA, przyporządkowanie wtyków i ograniczenia czasowe. Z silnika syntezy otrzymuje się plik konfiguracyjny, który ładowany jest bezpośrednio do macierzy FPGA (w przypadku urządzań opartych na pamięci NVM lub flash) albo do zewnętrznej pamięci urządzenia (w przypadku macierzy FPGA opartych na pamięci SRAM). (Źródło ilustracji: Max Maxfield).

Lattice Diamond należą do wysokiej klasy narzędzi i umożliwiają pracę na kompletnym, opartym na GUI środowisku projektowania i weryfikacji macierzy FPGA dla urządzeń CrossLink, MachXO i ECP.

Podobnie jak Lattice Diamond, Lattice Radiant również umożliwia pracę na kompletnym, opartym na GUI środowisku projektowania i weryfikacji macierzy FPGA, ale Lattice Radiant jest odpowiedni do pracy z macierzami FPGA iCE i przyszłymi rodzajami architektury.

Lattice Radiant oferuje wiele różnych funkcji:

  • Przemysłowe standardy szyfrowania własności intelektualnej (IP) IEEE 1735 oraz standard Synopsys Design Constraints (SDC) dla maksymalnej interoperacyjności
  • Prostota nawigacji w projekcie i możliwe debugowanie dzięki zintegrowanemu środowisku zestawów narzędzi
  • Proste wdrożenie projektu „jednym kliknięciem” w nowym pasku narzędzi procesowych
  • Natychmiastowe przenoszenie zmian między warstwą fizyczną a logiczną w układzie zamkniętym
  • Możliwość pakowania własności intelektualnej (IP), która pozwala programistom i zewnętrznym dostawcom IP na pakowanie zaszyfrowanej własności intelektualnej w formę odpowiednią do dystrybucji

Narzędzia rozwojowe systemu LatticeMico

Lattice oferuje dwa procesory z rdzeniem miękkim - LatticeMico8 oraz LatticeMico32 - z których oba można włączyć do programowalnej struktury macierzy FPGA.

LatticeMico8 jest 8-bitowym mikrokontrolerem, który zoptymalizowano i w pełni przetestowano pod kątem serii układów elektronicznych o programowalnej strukturze (PLD) MachXO2. Można go również wykorzystywać jako projekt referencyjny przy pracy z innymi seriami macierzy FPGA. Rdzeń mikrokontrolera łączy pełny 18-bitowy zestaw instrukcji z 32 rejestrami ogólnego przeznaczenia i zużywa minimalne zasoby urządzenia - mniej niż 200 tablic LUT w najmniejszej konfiguracji - zachowując przy tym swoje szerokie możliwości.

LatticeMico32 to 32-bitowy harwardzki mikroprocesor w architekturze RISC. Dzięki połączeniu 32-bitowego zestawu instrukcji z 32 rejestrami ogólnego przeznaczenia, LatticeMico32 zapewnia wydajność i elastyczność wymaganą w wielu różnych dziedzinach. Dzięki zastosowaniu architektury RISC, rdzeń zużywa minimalne zasoby urządzenia, zachowując jednocześnie wydajność potrzebną w szerokim spektrum zastosowań. Aby przyspieszyć rozwój systemów mikroprocesorowych, pracując na LatticeMico32 można zintegrować kilka opcjonalnych elementów obwodowych zgodnych z kontrolerem WISHBONE.

Narzędzia rozwojowe systemu LatticeMico umożliwiają pracę na graficznym interfejsie użytkownika, który pozwala na przenoszenie rdzeni i urządzeń peryferyjnych procesora LatticeMico, podłączanie ich do magistrali oraz definiowanie różnych parametrów dla każdego elementu takich jak jego lokalizacja w przestrzeni adresowej procesora. Po zdefiniowaniu systemu, narzędzia mogą automatycznie generować odpowiednie RTL do symulacji i syntezy. System zawiera również narzędzia, które pozwalają użytkownikom na generowanie oprogramowania, które będzie uruchamiane na rdzeniach procesora.

Narzędzia do uczenia maszynowego: zestaw Lattice sensAI oraz kompilator sieci neuronowych

Obecnie wdraża się zastosowania w zakresie uczenia maszynowego (ML) i sztucznej inteligencji (AI) w wielu wbudowanych systemach i w całym Internecie rzeczy (IoT) włącznie z przemysłowym IoT (IIoT).

Zestaw Lattice sensAI oferuje wszystko, co jest potrzebne do ewaluacji, rozwoju i wdrażania rozwiązań ML/AI opartych na macierzach FPGA - w tym modułowe platformy sprzętowe, przykładowe demo, projekty referencyjne, IP-Core sieci neuronowych, narzędzia programowania i usługi projektowania niestandardowego. Zestaw ten został zaprojektowany, by przyspieszyć czas wprowadzenia na rynek rozwiązań wykorzystujących wnioskowanie w uczeniu maszynowym w ramach konsumpcyjnych i przemysłowych zastosowań IoT.

Rdzeń własności intelektualnej akceleratora splotowej sieci neuronowej (CNN) firmy Lattice stanowi silnik obliczeniowy dla głębokich sieci neuronowych (DNN). Silnik jest zoptymalizowany pod kątem splotowych sieci neuronowych dzięki czemu może być wykorzystywany do zastosowań z systemami wizyjnymi, takich jak klasyfikacja lub wykrywanie i śledzenie obiektów. Rdzeń własności intelektualnej CNN nie wymaga dodatkowego procesora, ponieważ może sam wykonywać wymagane obliczenia.

Tymczasem kompilator sieci neuronowych Lattice umożliwia projektantom wykorzystanie sieci neuronowych utworzonych na wspólnych szkieletach - takich jak TensorFlow, Caffe i Keras - oraz ich kompilację do wdrożenia w CNN Lattice i kompaktowych akceleratorach rdzeni własności intelektualnej CNN.

Podsumowanie

Optymalne rozwiązania w zakresie projektowania można stworzyć łącząc procesory i macierze FPGA, same macierze FPGA lub macierze FPGA, które zawierają już procesory z rdzeniem twardym w swojej strukturze. Jako technologia, macierze FPGA rozwijały się szybko na przestrzeni lat i dzięki elastyczności, szybkości przetwarzania i mocy są w stanie sprostać wielu dzisiejszym wymaganiom projektowym, co sprawia, że są idealnym wyborem w wielu zastosowaniach - od inteligentnych interfejsów po systemy wizyjne i sztuczną inteligencję.

Jak pokazano na ilustracji, macierze FPGA firmy Lattice Semiconductor dostępne są w zakresie od niskiego do średniego, z naciskiem na stosowanie w urządzeniach niskiej mocy, które rozwiązują problemy z siecią od brzegu Internetu aż do chmury w ramach szybko rozwijających się rynków komunikacyjnych, komputerowych, przemysłowych, motoryzacyjnych i konsumenckich. Firma Lattice oferuje również kilka zestawów narzędzi projektowych i weryfikacyjnych, które sprawdzą się w wielu warunkach - od projektowania w oparciu o język programowania, poprzez projektowanie w oparciu o procesory graficzne, aż po projekty koncentrujące się na uczeniu maszynowym i zastosowaniach sztucznej inteligencji.

DigiKey logo

Disclaimer: The opinions, beliefs, and viewpoints expressed by the various authors and/or forum participants on this website do not necessarily reflect the opinions, beliefs, and viewpoints of DigiKey or official policies of DigiKey.

Informacje o autorze

Image of Max Maxfield

Clive „Max” Maxfield

Clive „Max” Maxfield otrzymał tytuł licencjacki w dziedzinie inżynierii sterowania w 1980 na uniwersytecie Sheffield Hallam w Anglii i rozpoczął pracę jako projektant procesorów centralnych (CPU) dla komputerów typu mainframe. Z biegiem lat Max projektował wszystko - od mikroukładów krzemowych do płytek drukowanych, od wzmacniaczy fal mózgowych do steampunkowych aparatów prognostycznych (nie pytajcie co to). Od ponad 30 lat ma swoje miejsce w awangardzie automatyzacji projektowania elektroniki (EDA).

Max jest autorem i współautorem wielu książek, takich jak np. „Designus Maximus Unleashed (banned in Alabama)”, „Bebop to the Boolean Boogie (An Unconventional Guide to Electronics)”, „EDA: Where Electronics Begins”, „FPGAs: Instant Access, and How Computers Do Math”. Zajrzyj na jego bloga: „Max’s Cool Beans”.

Informacje o wydawcy

Północnoamerykańscy redaktorzy DigiKey