-FD flip-flop (S,R,D,C,CE,Q)
-multiplexerek
-egyeb, (par kapu)
* vezetékek: különböző hosszúságú vezetékek vannak vízszintesen és függőlegesen, ahol "metszik" egymást programozható,hogy hagyan kapcsolódjanak, termesztésen a fenti elemekhez is kapcsolódnak.
Specilis elemek:
*Szorzó áramkörök 18x18 ->36 bites szorzók kb. 20 db.
*Block ram , dedikált néhány Kb-os ramok dual-port, programozható, hogy hányszor hány bites legyen, 16Kx1 vagy 8Kx2 .. stb.
* DCM digital clock manager , órajelel tud mindenféle jóságot művelni szorozni, oszatani eltlni ..etc.
(Tudom sok mindent kihagytam.. :))
Munkamenet.
* Verilog,VHDL, vagy akármilyen HDL nyelven írsz egy forráskódot. Hasonlít egy kicsit pascal, Ada,C -hez, de attol még kurvára máskép kell gondolkozni.
És meg tesszük tervezési megszorításokat (pl. lábkiosztás)
(Esetleg rajzolsz valami szép áramkört.)
* Összerakunk belőle egy áramkört (Synthesize)
* Ezeket leképezük olyan formára amit map-er meg tud emészteni.
* A maper feladata, hogy FPGA elemeinek megfeleltesse a fentieket.
* Elhelyezzük az elemeket az FPGA -n és összekötjük (Place & route)
* előáll a program file
* feltöltjük
* És keresükk a hibát :)
FPGA programozását elveszti kikapcsoláskor, minden bootkor újra kell programozodnia, (mellé kell egy PROM, vagy JTAG -en keresztül)
Kód megírása után megy minden maga útján, de nagy sebességű áramköröknél kézzel való elhelyezés is szükséges lehet.
Verilog Quick Ref
Verilognak (és a legtöbb HDL (Hardware leíró nyelv)-nek, csak nagyon kis része Synthesizable, vagyis ténylegesen hardware fordítható, főleg modellezési és szimulciós célokat szolgál a nyelv.
Ha már szimulációkon átmegy el lehet kezdeni átkapálni a progit Synthesizable kóddá.
- turul16 blogja
- A hozzászóláshoz be kell jelentkezni
- 3754 megtekintés
Hozzászólások
Hú eszembe jutott az utolsó Digit1 előadás, amikor Spartan E3-at adták le. Biztos rohadt érdekes volt, de annyira másnapos voltam, hogy kb negyed óra után feladtam és inkább hazamentem.:D
- A hozzászóláshoz be kell jelentkezni
Engem érdekelne FPGA-s dolog, valami olyan amivel olcsón tudnék egy gyakorlópanelt csinálni első körben. Ja és azok kilőve amik miatt muszáj lenne elinditani az ablakokat, hogy fejleszthessem :)
Ugyanitt érdekelne fejlesztőkörnyzet a következőkhöz, persze linux alá:
PIC 16-os sorozat ASM & C
PIC 18-as sorozat C
C-k lehetőleg kompatibilisek legyenek Microchippes C-vel
PicKit2-es programozó kezelése (USB)
ICD2 kezelése (USB)
Debug és programozás
Atmel pl. ATmega16 és társai ASM & C
JTAG-ICE kezelése (serial, /dev/tty...)
Debug és programozás
Eddig csak úgy látok kiutat ha a GRUB-ban a windózt választom.
Esetleg rá kellene mennem a virtualizációs technológiára, próbálkoztam már vele de eddig nem jött össze.... akkor is ott lesz a kérdés hogy pl. a PicKit2 USB-s csatolófelülete átmenne e a virtualizáción, lehetőleg transzparensen.
- A hozzászóláshoz be kell jelentkezni
spartan 3e devel kit, chipcadnel ~40-50k.
- A hozzászóláshoz be kell jelentkezni
mondom occcsó...! :)
Inkább szeretem magam megalkotni a tesztkörnyezetet is mint valaki által jópénzért a megkötöttséget érezni.
Amúgy meg inkább a software lenne a fontosabb.
- A hozzászóláshoz be kell jelentkezni
Tipp: http://chitlesh.fedorapeople.org/FEL/
Egyik haveromnak is kellett a PICkit2, amiatt használt csak Windowst a GNU/Linux mellett, de már megy neki vmware-rel.
- A hozzászóláshoz be kell jelentkezni
Pont fedorás vagyok, majd ha leadtam a háziaimat, és a munkáimat, akkor tervezek egy 6-ról 8-ra upgradet.
Akkor ezekszerint átmegy az USB a virtualizáción?
Milyen a programfuttatási lehetóség, halottam valami olyasmit hogy csak a program ablakja jelenik meg, nem az egész "monitor".
Az a verzió tetszene amiben fut a linuxom és csak pl. az mplab és pickit ablaka látszik nem látszik a startmenü, háttér, stb... Nem tudom hogy érthető vagyok e? Melyik ez a progi?
Eddig a fedorába (7) épített virtuális gépet próbáltam, talán QEMU alapú, de kavés sikerrel, még se XP se WIN98 nem ment fel eddig.
- A hozzászóláshoz be kell jelentkezni
Hi!
A PIC feltoltese siman megy Linux alatt. En mindenkepp epitenek sajat programozot, nem szaroznek gyarival. (Nekem pl. Wisp628 van, ami soros, de tervben van az USB-s is. De van masik programozo is, amit lehet hasznalni siman Linux alatt.) ICD-vel ugy tudom, a programozas megy, a debug nem. Igazabol nem is tudom, hogy azt hogy kell hasznalni. En mindig ilyen LED allapotokkal, meg ilyesmivel jelzem a progi allapotat, eddig ki tudtam javitani minden hibat.
AVR-hez a legegyszerubb, 5 ellenallasbol allo programozo is hasznalhato Linux alatt (avrdude-dal szoktam, ha minden igaz), de ott is van profibb, ami uC-s (AVR910).
A Wisp628-hoz es az AVR910-hez van NYAK tervem is. ha esetleg erdekel, irj privatban.
C forditas: Ha nem kell a GUI, akkor ha minden igaz, akkor a CCS-nek szerintem mennie kell parancssorbol wine-nal (a forras megirasara amugy mindig az eleve megszokott texteditorodat celszeru hasznalni).
AVR-hez az AVR-GCC tokeletes, de amugy mindket platformra van SDCC is, amit mondjuk meg nem probaltam (bar ezeket se).
By(t)e
TBS::Antiemes
- A hozzászóláshoz be kell jelentkezni
Van már PicKit2-esem, főként azért mert nem OLD típusokkal szórakozok, most is ethernetes PIC van itt elöttem. Azokat nem viszik még a komolyabb 3rd.p programozók sem.
Tervezem ICD2 vételét is, legfőképp programozás miatt azt is, de néha jol jött volna kiolvasni futás közben egy egy dolgot, vagy megnézni merre megy a program egy egy elágazásban (mondjuk eddig nekem is leddel volt ez).
Lehet akkor tényleg az lesz a vége hogy valami virtualizáció alatt fogom futtatni az XP-t és majd úgy érem el.
Mert elvileg, sokmonitoros rendsszerem lesz 1 géppel, több gépet viszont nem akarok.
Ugynitt én is tudok nyáktervet felajánlani Atmel JTAG-ICE-hez, most készült a házim miatt, mivel valamivel programozni is kellett a kicsikét. Annyi hogy full SMD, esetleg panel is megcsinálom, ha valaki nem tudna fotózni, stb... Beszerezhető dobozba van tevezve (lehetne kisebb is, ilyen doboz volt), USB-seriallal megy a gép felé, FT232BM, szóval liinux is látja. Csak tudnám használni is alatta. Bár szerintem ez az Atmeles "vak vágány" csak a házi miatt volt nálam, de ki tudja egyszer... lehet még kellene.
- A hozzászóláshoz be kell jelentkezni
http://piklab.sourceforge.net/
avr meg mát emlitett dolgok.
avr32-n futatam Linuxot :)
Megjelent pic32 is, uClinux elvileg mehet rajta.
Xilinx -hez elerheto picoblaza(Nyílt) 8 bites és microblaze(Zárt no mmu) 32 bites soft processor .
- A hozzászóláshoz be kell jelentkezni
Hi!
Olcsobb FPGA-khoz valami pelda kapcsolasokat hol lehet leszedni? Annyi eleg, hogy hogy kell rakotni a JTAG-et, hogy feltolsem ra a kodot, hogy kell rakotni az EEPROM-ot, hogy tudom megmondani neki, hogy ott keresse, esetleg ha az orajel eloallitasaban meg a tapokban van valami extra, akkor az is erdekel.
A kovetkezo lepesben az is erdekel, hogy hogy lehet a VHDL vagy Verilog file-bol szintetizalni azt a bizonyos kodot, es hogy lehet feltolteni az FPGA-ba.
Es ha mar a feltoltesnel jarunk, Linux ala milyen -- lehetoleg USB-s, nem gyari -- JTAG adaptert erdemes hasznalni?
By(t)e
TBS::Antiemes
- A hozzászóláshoz be kell jelentkezni
A fejlesztő panelekhez megkapod a kapcsolási rajzot. (Fel programozót "véletlenül" kifelejtették starter kit -nél)
FPGA nagyon érzekenyek a táp -ra (+-0.1V halálos lehet), chipcad -nél találsz táp IC -ket. Legtöbb nagy gyártónak pl. Texas Instruments, Linear saját megoldásuk van a xilinx cuccok táplálásra, példa kapcsolással.
Az adatlapjaban benne van, hogy kell PROM -al összekötni , csak mellé kell tenni és kész :)
http://www.xilinx.com/support/documentation/data_sheets/ds312.pdf
Google ezt dobta:
http://toolbox.xilinx.com/docsan/3_1i/data/common/jtg/dppb/appb.htm
Xilinx ad zárt drivert a cucchoz, de megjelntek nyílt driverek.
http://www.xilinx.com/ise/logic_design_prod/webpack.htm -ezt a cuccot használom. Erről keresel valami tutoriált. A Teljes munka folyamot támogatni igyekeztek. Úgy-ahogy parcssorbol is mennek az eszközök.
iverilog -ot is haszálhatsz, de maping-re routing-ra nincs open source alternativa.
Drivernek ezt: http://rmdir.de/~michael/xilinx/
Ez egy user space library, egy LD_PRELOAD -al jól becsapja a xilinx -es stuffokat és remekül megy :)
(Lattice , Altera is támogatja Linuxot.)
Ha reletive egyszerű dolgra kell, és cél kurva kicsi fogyasztás, valamint nem akarsz külső flash -t akkor CPLD -k is szoba jöhetnek, nekik megmarad a program. (így persze limitált, hogy hányszor programozhatod újra)
- A hozzászóláshoz be kell jelentkezni