kategória: Mikrovezérlő áramkörök
Megtekintések száma: 21445
Megjegyzések a cikkhez: 0

Mi az FPGA egy egyszerű nyelv kezdőknek

 

Melyek a digitális elektronika? Először is logikai elemekkel, ÉS VAGY NEM. Ezenkívül a műszak regiszterek, dekóderek, multiplexerek stb. Kerülnek a memóriába. Mivel azonban az elektronikus eszközök bonyolultsága és a miniatürizálódás tendenciája növekedett, a fenti komponensekből az integrált áramkörökön alapuló eszközök létrehozása nehezebbé vált, a szükséges topológia és áramköri egyéni IC-k csak akkor voltak érdemesek, ha az eszközt nagy számban replikálták, más esetekben indokolatlanul drágák.

A kijárat ebből a helyzetből a programozható integrált logikai áramkörök (rövidítve FPGA, idegen rövidítés mint programozható logikai eszköz, PLD) kifejlesztése volt. Mi ez és hol használják, ezt a cikket fogjuk megmondani.

Mi az FPGA egy egyszerű nyelv kezdőknek

Különbségek a mikrovezérlőktől

A "programozható" szóval a legtöbb kezdő társul mikrovezérlőkkel. Annak ellenére, hogy programozva vannak, az FPGA egy teljesen más eszköz.

A mikrokontrollerek fejlesztõi számára rendelkezésre áll egy rögzített megoldás és eszköz, amely egy adott chipekhez tartozik, ez nem fog mûködni az építészetrõl való visszavonulással. Parancsok sorozatát kapjuk, amelyekkel a környezettel való interakciókat hajthatják végre, digitális adatok és analóg bemenetek adatainak leolvasásával és kimenetek segítségével jelek küldésével a hajtóművekre.

Ezen felül számításokat végezhet, adatokat menthet nyilvántartásokba vagy ROM-okba, valamint működhet a mikrovezérlő memóriájába felvillantott adatokkal. Ennek lényegében a mikrovezérlőkkel való együttműködés célja és jellemzői.

Programozható 769; log 769; egész szám 769; len 769; ma (FPGA, angol programozható logikai eszköz, PLD)

A programozható logikai integrált áramkörök (FPGA) abban különböznek egymástól, hogy amikor egy eszközt programoznak, akkor maguk is létrehoznak egy architektúrát az alapvető logikai elemekből. Így nagy sebességet és rugalmasságot kap a chip. Ez lehetővé teszi egy csip megváltoztatása nélkül számos projekt készítését.

Általában a belső FPGA eszközt három fő csoportra lehet osztani:

1. Logikai elemek tömbje (makrocellák, logikai blokkok).

2. Bemeneti / kimeneti blokkok (IO).

3. Kommunikációs vonalak közöttük az ilyen kapcsolatokat irányító készülékkel.

Az ilyen felépítés azonban nagyon általános, ezt a kérdést az alábbiakban részletesebben megvizsgáljuk.

A programozással az elemeket ugyanúgy csatlakoztatja, mintha elvégezné, az egyes elemeket összeszerelve, és bemeneteiket és kimeneteiket összekötve vezetőkkel.

Megjegyzés:

Az FPGA és a mikrovezérlők közötti fő különbség az, hogy egy mikrovezérlőben nem változtathatja meg a belső kapcsolatokat a legegyszerűbb elemek között, és a programozás és az velük történő munka a kapcsolatok regisztrálásán alapul.

A mikrovezérlők kiválasztása számos kritériumon alapul, mint például:

  • Sebesség és az óra sebessége;

  • A ROM és a RAM mennyisége;

  • A bemenetek és a kimenetek száma.

Egyéb funkcionális szolgáltatások és perifériák, például a kommunikációs vonalak és a protokollok támogatása (I2C, egyvezetékes, PWM jel stb.).

Az FPGA kiválasztásakor a fő kritérium a programozható blokkok száma - ezeknek elegendőnek kell lenniük a feladat végrehajtásához.

Az adott FPGA-tól függően a blokkok száma nagyban változhat, és a költség is változik.

A mikrovezérlő sorrendben hajtja végre a programjában előírt összes műveletet, míg az FPGA blokkok egymástól párhuzamosan és egymástól függetlenül végzik el a feladatot, ezért ezeket az eszközöket órajellel gyakorisággal összehasonlítani nem praktikus. Működési elvük túlságosan eltérő.

FPGA típusok

típusok

Jelenleg az FPGA két fő típusa releváns:


1. CPLD (Komplex programozható logikai eszköz - Programozható logikai integrált áramkör, valójában klasszikus értelemben FPGA). Ez általában beépített nem felejtõ memóriával rendelkezik, amelybe a firmware betöltõdik.

A belső struktúra a makrocellák vagy logikai blokkok mátrixára épül, és az elemek száma százazonos és ezredes darab tartományban van. Relatív egyszerűségük miatt olcsóbbak, mint a következő típusú programozható logika. Mindez azt eredményezi, hogy a CPLD-t főként olyan áramkörökben használják, ahol nagy sebességre és nagyszámú kimenetre van szükség, miközben egyszerű feladatokat hajtanak végre.


2. FPGA (terepen programozható kapu tömb - terepen programozható kapu tömb, de gyakran nevezik FPGA-nak) - a CPLD-hez képest fejlettebb és összetettebb eszközök, rugalmas kapcsolással rendelkező logikai blokkokra épülnek, és nagyobb számú elemet tartalmaznak (tízezrek vagy százezrek darabok).

A firmware-t általában a külső nem felejtő memóriában tárolják. Az FPGA-k a legegyszerűbb logikai elemek mellett kész blokkokat is tartalmazhatnak bármilyen művelet végrehajtásához, például DSP-jelfeldolgozó blokkok. Mindez lehetővé teszi egy processzor, jelfeldolgozó eszközök és más összetett eszközök megvalósítását.


Vajon:

Bár valójában a nem felejtő memória jelenléte nem teszi lehetővé a programozható logikai CPLD-t. Ez részben félrevezető. A fő különbség a CPLD és az FPGA között a belső szerkezet.

A CPLD és az FPGA közötti különbség a belső szerkezet

A belső CPLD készüléket részletesebben az alábbi ábra mutatja.

CPLD belső eszköz

És a makrocellájának hozzávetőleges vázlata így néz ki:

Minta CPLD makrocellás elrendezés

A makrocella programozható multiplexerekből, triggerekből (egy vagy több) áll, és több verzióban képezi a kimeneti FB jelek csoportját.

Az alábbiakban bemutatunk egy másik példát - a CPLD chipcsaládhoz tartozó MAX II cég Altera blokkdiagramját.

Altera MAX II CPLD folyamatábra

És ugyanazon család chipek szerkezeti terve.

Altera MAX II CPLD blokkdiagram

A közbenső gumiabroncsokat egy olyan csomópont, például angol elosztó segítségével osztják meg a makrocellákkal. úgy hangzik, mint egy logikai allokátor, amelyet az alábbi ábra szemléltet, a kapcsolás mátrixát is mutatja (globális útválasztási készlet), és a kimenetnél a makrocelláknak (makrocelláknak) két visszajelzése van.

Elosztó és kapcsoló mátrix

A mikroáramkör külső kimenetei egy másik blokk (mátrix) - ORP (Output Routing Pool) - kimeneteivel vannak összekapcsolva a makrocellák kimenetével, vegye figyelembe, hogy rajta keresztül az INPUT logika a GRP-hez kapcsolódik, amint az az alábbi ábrán látható.

Megjegyzés:

Néhány CPLD-nek van ún közvetlen bemenetek (Direct Input) - közvetlenül kapcsolódnak a cellák bemenetéhez, ami csökkenti a késéseket.

Az FPGA struktúrájának formája a következő:

FPGA szerkezet
  • L - logikailag konfigurálható blokk;

  • S (helyettesítő blokk) - helyettesítő blokk, mozgatásonként egy bizonyos számú bitet fogad, egy bizonyos algoritmus szerint konvertál, és más számú bitet ad ki a kimeneten. Más szavakkal, dekóder, titkosító és kapcsoló.

  • C (csatlakozási blokk) - csatlakozási blokk.

S-blokkdiagram:

 

S-blokkdiagram



programozás


HDL (Hardverleírás nyelv) - ezen a nyelven programozzák az FPGA-kat. Népszerű és sokoldalú a Verilog HDL és a VHDL. Más nyelvek is léteznek, például a gyártókra jellemző nyelvek, például az AHDL az ALTERA termékekhez.

A grafikus programozás az FPGA-kkal dolgozó fejlesztők számára elérhető. Vagyis egyszerűen rajzolhat logikai áramköröket, vagy kombinálhatja a kódot a grafikával. Az utóbbit moduláris fejlesztési módszernek nevezik, amikor specifikus modulokat írnak elő, és a felső modult, amelyben minden egyesül, grafikusan programozzuk.


Példák népszerű gyártókra és sorozatokra

Az írás idején a leghíresebb két gyártó terméke.

  • Altera (1983-ban alapították);

  • Xilinx (1984-ben alapított).

Altera

Az Altera számos fő programozható logikai sorozattal rendelkezik:

  • MAX, MAX II, MAX IIZ;

  • 7000S;

  • 3000A;

  • MAX V;

  • Cyclone;

  • Arria;

  • Stratix.

Nézzük meg mindegyiket részletesebben. Az alábbi táblázatokban általános információkat talál a család zsetonjairól.

A programozható logika fő sorozatának jellemzői
A programozható logika fő sorozatának jellemzői

Altera 3 CPLD CPLD:

  • A MAX egy CPLD, amely mobil eszközökben használható, a jellemzők viszonylag alacsony energiafogyasztás és hőelvezetés. A kiadás bonyolultságától és éveitől függően a következő módosításokat kell megkülönböztetni:

  • A 7000S elavult a mai napig, 1995-ben jelent meg.

  • 3000A - 2002-ben jelent meg, 300 nm technológiával gyártják. Kis számú makrocellából áll (32-512)

  • A 2004-ben kiadott MAX II 100nm technológiával készül, nagyobb számú egységből (240–210) áll, amelyek 304 MHz frekvencián működnek. A terméket TQFP 0.5 típusú, 100 vagy annál nagyobb lábakkal ellátott malom esetében készítik.

  • A MAX IIZ - 2007 fő jellemzője az alacsonyabb fogyasztás - ez pozitív pont, azonban a frekvenciákat 152 MHz-re csökkentik. Ezeknek a mikroáramköröknek 1,8 V feszültsége van.

  • MAX V - 2010 év. 180 nm-es technológiával állítják elő, 40 - 2210 blokkot tartalmazhat, és legfeljebb 152MHz vagy 304MHz frekvencián működhet - ez a blokkok számától függ.

Altera 3 CPLD CPLD

FPGA:

  • A ciklon egy költségvetéses FPGA típusú chip. Öt generációt jelölnek görög számokkal (I-től V-ig). Az első generációt 2002-ben adták ki, 180 nm technológiával állították elő, az ötödik generáció pedig 2011-ben jelent meg, és 28 nm technológiával készült. Érdemes megjegyezni, hogy minden generáció továbbra is releváns.

  • Arria - a középkategóriás FPGA-ra is hivatkozni kell.

  • Stratix - Erőteljes FPGA-k.

Az alábbiakban az Altera FPGA programozható logikai pivot táblázatok találhatók.

FPGA szolgáltatások
FPGA szolgáltatások
FPGA szolgáltatások

És a teljes asztal a linken:https://huv.electricianexp.com/tablitsa.docx

A gyártó Xilinx CPLD sorozatban került bemutatásra:

  • XC9500XL 36-288 makrocellákból. 178 MHz-ig terjedő frekvencián működnek, és 288 makrocellán 208 MHz-en működnek. A kis esetekben úgy végezzük, hogy 44 csap (vezeték) egymástól 0,8 mm távolságra van - ezeket az eseteket könnyen forraszthatónak tekintik. Rendelkezésre áll 64 és 100 lábakkal, 0,5 mm-es lépésekkel, valamint PLCC típusú házakban is.

  • A CoolRunner-II sorozat energiahatékony, mégis eredményes CPLD. Egy funkciót 1,8 V feszültség táplál, a bemeneteket és kimeneteket 1,5-3,3 V tartományban kell működtetni. 32-512 makrocellából állnak, és 180 nm technológiával készülnek. A cellák számától függően a 179-323 MHz frekvenciatartományban működnek, és minél kisebb a cellák, annál több frekvenciát tudnak dolgozni ebben az esetben. Különböző esetekben találhatók meg, köztük könnyen forraszthatók is, mint a fentebb tárgyalt sorozat mikroáramkörei között.

A Xilinx cég nem ment el, és az FPGA:

  • Spartan-6 - 6 bemenetű logikai blokkokból áll, számuk a 3840-147443 darab tartományba esik. Érdekes, hogy tartalmazhatnak adatcserére szolgáló vezérlőket, például DDR2, DDR3, PCI-EXPRESS, Ethernet 1Gbit, SerialATA stb.

  • A Vitrex-7 sorozat összetett, a mikroáramkörök akár 2 000 000 logikai blokkot és 1200 érintkezőt tartalmazhatnak.

Az alábbiakban megtalálja az összefoglaló táblázatokat a Xilinx 6 és 7 sorozat, valamint a Zynq-7000 CPLD és FPGA specifikációival.

Xilinx 6 és 7 sorozatú FPGA szolgáltatások
A Virtex-6 FPGA jellemzői
Az FPGA Spartan-6 család jellemzői
Az FPGA Spartan-6 család jellemzői
FPGA szolgáltatások
FPGA szolgáltatások

következtetés

Az FPGA-kat és a PCVM-eket más társaságok, például Lattice Semiconductor (2002-ben elkezdték az FPGA-k gyártását), az Actel és webhelyünk ismert olvasói is gyártják. mikrovezérlők ATMEL és még sokan mások. A programozható logikán keresztül számos eszköz megvalósítható, egymástól független párhuzamos számítások végrehajthatók egy eszközben, azonban otthoni projektek esetében vásárlásuk gyakran pénzügyi szempontból indokolatlan, de gyártási szempontból meglehetősen ésszerű, az egyedi integrált áramkörök alternatívájaként.

UiNézze meg a videót, benne egy példát láthat a Nintendo játékkonzol FPGA megvalósításáról:

Lásd még az bgv.electricianexp.com oldalon:

  • A funkcionális blokkdiagram nyelv (FBD) és alkalmazása
  • A modern integrált áramkörök típusai - logika típusai, esetek
  • Logikai chipek. 1. rész
  • PIC mikrovezérlők kezdőknek
  • Programozható logikai vezérlők otthoni automatizáláshoz

  •