FPGA/CPLD, bolo: Pulzny generator

Jan Waclawek konfera na efton.sk
Čtvrtek Srpen 15 01:02:02 CEST 2019


Toto su dva takmer nesuvisiace svety. Dost sa to podoba na debatu, ked
jeden hovori o aj ou ti, klaude a edz kompjutingu, o ej aj, o tom ze
artioues je dnes absolutna nevyhnutnost a to ze sa univerzalne nepouziva
siplasplas je cista hroza; druhy programuje casovania v jednotkach
hodinoveho cyklu a snazi sa ustetrit mikrowatty zo spotreby a milicenty z
nakladov.

To druhe vo svete FPGA nie je mozne, lebo sa tomu vyrobcovia brania (dovody
teraz ponechajme bokom, z ich pohladu mozu byt urcitym sposobom
opodstatnene); postupy z toho prveho sa vnucuju aj pre ten druhy pripad.
Potreboval by si strukturu nie na urovni tranzistorov ale na urovni
zakladnych blokov a ich prepojov, precizny popis ich vlastnosti a
predovsetkym nastroj na ich priame ovladanie. Zhodou okolnosti by v tomto
pripade bol asi lepsi graficky nastroj, textovy je pokladany za
samozrejmost. "Klikaci tool" je pejorativum skor vo svete mcu nez tu.

Na VHDL nie je nic obycajneho, co sa tyka vztahu medzi "napisanym" a
"uskutocnenym"; prave naopak.

Tie bloky - aj ten na co si dal odkaz, aj to co si potom spomenul - su pre
tuto debatu irelevantne, tykaju sa viacmenej len toho prveho pripadu. Da
sa debatovat o tom, ako az priamociaro ich vies pouzit, ale podla toho co
si napisal, maju zrejme dostatocne obmedzeny pocet sposobov pouzitia aby
prekladac uhadol aj z toho relativne nepriameho VHDL popisu, co si z nich
chcel pouzit a ako. K vysledku to vedie, ale z pohladu prveho pripadu to
principialne nie je spravne.

Nejaky naznak toho, co je pre druhy pripad relevantne, je pre tento mamut
napriklad v
https://www.xilinx.com/support/documentation/user_guides/ug474_7Series_CLB.pdf
(samozrejme chyba postup ako si tie cely konfigurovat a tiez som nenasiel
detailny popis prepojov, nevenoval som tomu nejaky vyznamny cas ale
pochybujem ze verejne existuje). Takmer kazda kapitola v tom dokumente
zacina poznamkou typu:
-- CLB resources are inferred for generic design logic and do not require
instantiation. Good HDL design is sufficient. 
-- The best approach is to let the tools choose the I/O locations based on
the FPGA requirements. 
-- CLB resources are used automatically and efficiently by FPGA synthesis
tools without any special FPGA-specific coding required.
apod., cize "nepovieme ti, ako to presne funguje, lebo to za teba spravia
nase uzasne nastroje, len to naznacime, aby si nefrflal, no a mozes pouzit
nejake nie prilis ucinne prostriedky na popostrkovanie nasich uzasnych
nastrojov nejakym smerom, ale samozrejme vysledok aj tak zavisi od nasich
uzasnych nastrojov. Najlepsie, ak sa strafis do typickych prikladov, pre
ktore sme nase uzasne nastroje vytunili.".


> Actel/Microsemi robi dobre veci, ale pre velmi specificke aplikacie. 

Ale houby. Ako som bol pisal, robia (aj) obycajne nonvolatile FPGA a robia
ich dlhsie ako konkurencia. A co sa tyka ceny, to, co Jaromir pouziva je
zhruba toto:
https://eu.mouser.com/Semiconductors/Programmable-Logic-ICs/CPLD-Complex-Programmable-Logic-Devices/_/N-3ohc6?Keyword=EPM240&No=25&FS=True
to, co spomenul, ze by chcel pouzit, je, ak sa nemylim, toto
https://eu.mouser.com/Semiconductors/Programmable-Logic-ICs/FPGA-Field-Programmable-Gate-Array/_/N-3oh9p?P=1yxywkpZ1z0y2q6&Keyword=xo2&FS=True
no a to co si myslim ze by mohol byt zhruba ekvivalent od Actelu je toto
https://www.mouser.com/Search/Refine?Keyword=A3PN060

Ja tam nejaky dramaticky rozdiel v cenach nevidim. Samozrejme viem, kde je
diabol.

wek





----- Original Message ---------------

Subject: Re: FPGA/CPLD, bolo: Pulzny generator
   From: balu <balu at k-net.fr>
   Date: Wed, 14 Aug 2019 19:34:53 +0200
     To: hw-list at list.hw.cz

tato debata je skor take plkanie a opluvanie Patronskeho typu :-) To 
mame radi :-)

Co rozumies pod vnutorna struktura? Schemu na urovni jednotlivych 
tranzistorov, alebo rozsiahlo popisane vlastnosti a strukturu bloku?

Uvedme ako priklad cip, s ktorym uz niekolko rokov pracujem, Artix7 od 
xilinx, a jeden z blokov, napriklad DSP48, co je dedikovany blok pre 
matematicke operacie. Vnutorna struktura je podrobne popisana v 
dokumentacii, vid. napriklad 
https://www.xilinx.com/support/documentation/user_guides/ug479_7Series_DSP48E1.pdf

Do tych FPGA stale piseme praobycajny VHDL kod. Nic klikacie. Normalne 
ultra-old schoolovy textovy editor. Kedze podrobne poznam vnutornu 
strukturu toho bloku z dostupnej dokumentacie, viem ako mam ten kod 
napisat tak, aby sa presne namapoval do DSP bloku. Viem, ze mam k 
dispozicii flipflop na vstupe, potom nasleduje nasobicka, potom mam k 
dispozicii dalsi flipflop, potom scitanie, potom dalsi flipflop. Kod 
napisem tak, aby som vyuzil to co z toho bloku potrebujem. Z 
dokumentacie viem, ako je tento blok pripojitelny ku susednym blokom, 
napr. ako siroke zbernice viem spracovat s maximalnym vykonom. Mas tam 
popis kazdeho jednotliveho konfiguracneho bitu.

Moderne, ultra vykonne cipy maju priamo na kremiku implementovane este 
specializovanejsie bloky, napriklad pre komunikacie, alebo pre 
spracovanie signalov. Tam si ten FIR filter bud napises a namapuje sa do 
vseobecnej logiky, alebo pouzijes system generator a naklikas si (sic!) 
a vytvori ti to konfiguracny kod pre ultraoptimalizovanu implementaciu 
FIR filtra. Naco potrebujem vediet aky tranzistor je vo vnutri, ked 
poznam interface a strukturu toho bloku? Na nic.

Ak pises genericky kod, skompilujes to na hocico. Ak potrebujes 
ultra-optimalizovany, toto dosiahnes len na konkretnom kremiku, takze aj 
tak nemozes ist ku konkurencii bez toho aby si musel upravit kod pre ich 
cipy.

Mozes pouzit lubovolny textovy editor. Ak nemas rad ten s 11 fixnymi 
medzerami, pouzi hociaky iny. VHDL je len cisty text.

Actel/Microsemi robi dobre veci, ale pre velmi specificke aplikacie. Su 
drahi, ale do radiacneho prostredia a na heavy duty aplikacie je to 
viacmenej jediny pouzitelny hardware. A tam sa nepredavaju miliony 
kusov, takze to aj stoji.



On 14/08/2019 11:54, Jaromir Sukuba wrote:
> No hej, skutocna interna struktura celeho PLD sveta je nieco co je
> scasti nejasne a scasti vyslovene obchodne tajomstvo. Nevies presne co
> mas a ako to funguje, ale tu dostanes giganticke IDE a nepytaj sa,
> lebo IDE poskytuje vsetky odpovede. A to nie je len zalezitost
> ostatnych rokov s modnymi farebnymi instantnymi klikacimi rieseniami*,
> ale ide to hlboko do historie. Na druhu stranu, zakaznici sa s tym
> naucili zit, takze vyrobcov nic netlaci k zmene.
> 
> Ten Actel som pozeral, ale pripadalo mi, ze je to pomerne drahe na to co to vie.
> Okrem toho, z cisto praktickych dovodov je nevyhodne pustat sa do
> amaterskeho projektu s takymto vyrobcom, ale je lepsie drzat sa
> niektoreho velkeho hraca (xilinx/altera a mozno este ten lattice).
> Market share v tejto oblasti je ukrutne nevyvazeny.
> 
> * V tychto ohladoch su IDE pre programovatelnu logiku pomerne strohe.
> Ide to az tak daleko, ze trebars minuly rok vydane vyvojove prostredie
> od Lattice ma textovy editor na urovni notepadu, tab urobi odskok so
> sirkou 11 (!?) medzier a este som nezistil ako sa to da zmenit.
> 
_______________________________________________
HW-list mailing list  -  sponsored by www.HW.cz
Hw-list at list.hw.cz
http://list.hw.cz/mailman/listinfo/hw-list



Další informace o konferenci Hw-list