FPGA experimenty - výměna zkušeností

Kiwi

Re:FPGA experimenty - výměna zkušeností
« Odpověď #15 kdy: 28. 01. 2016, 13:20:39 »
kód psát v Pythonu

To je mimoradne debilni napad. Vzhledem k tomu, ze myHDL pro syntezu zadny vendor FPGA nepodporuje, doporucujete tomu nebohemu cloveku, aby si to cele zkomplikoval pridanim dalsi zbytecny vrstvy.
Navic pro popis HW jsou jazyky Verilog a VHDL navrzene, v Pythonu bude reaktivni paradigma a silny paralelismus vzdycky maximalne nejak hnusne nahackovany.

Ruční navrhovaní obvodů již dnes nemá budoucnost. V PyHDL můžete tvořit evoluční algoritmy, které budou obvody podle zadaných kritérii generovat samy. Testování můžete taky automatizovat. Takže to není zbytečná vrstva. Ona vaše znalost fungování hw je taky jen mentální model.

Jasne, evolucni algoritmus mi navrhne implementaci treba 10gigovyho ethernetu... nevim co beres, ale chci to taky.

To není dobrý nápad. Ale někdo by mohl poskládat všechny perly tohoto přispěvatele na jedno místo. Naposledy mě dostal s výrokem "sw nemá předem danou funkci".


Ivan Nový

Re:FPGA experimenty - výměna zkušeností
« Odpověď #16 kdy: 28. 01. 2016, 13:23:21 »
kód psát v Pythonu

To je mimoradne debilni napad. Vzhledem k tomu, ze myHDL pro syntezu zadny vendor FPGA nepodporuje, doporucujete tomu nebohemu cloveku, aby si to cele zkomplikoval pridanim dalsi zbytecny vrstvy.
Navic pro popis HW jsou jazyky Verilog a VHDL navrzene, v Pythonu bude reaktivni paradigma a silny paralelismus vzdycky maximalne nejak hnusne nahackovany.

Ruční navrhovaní obvodů již dnes nemá budoucnost. V PyHDL můžete tvořit evoluční algoritmy, které budou obvody podle zadaných kritérii generovat samy. Testování můžete taky automatizovat. Takže to není zbytečná vrstva. Ona vaše znalost fungování hw je taky jen mentální model.

Jasne, evolucni algoritmus mi navrhne implementaci treba 10gigovyho ethernetu... nevim co beres, ale chci to taky.

Když byl evoluční algoritmus schopen navrhnout a realizovat lidský mozek, který to dokáže, tak principielně to možné je. Výzva je to udělat tak, aby to šlo s relativně malým počtem kroků. Jinak budoucnost elektroniky je v samoorganizujících se logických automatech postavených na principu "FPGA". Ostatně život není nic jiného. Jen ta FPGA jsou postavena na bázi sloučenin uhlíku a místo ovlivňování transportu elektronů se používájí chemické vazby a transport molekul. Dolovací automat poslaný na nějaký asteroid, si bude muset poradit sám, a jen těžko můžeme předpokládat, že se všemi eventualitami bude počítáno předem.

Karel

Re:FPGA experimenty - výměna zkušeností
« Odpověď #17 kdy: 28. 01. 2016, 13:28:15 »
Tušit nemusí.
Jestli to mělo znamenat "tušit nemusí, musí to vědět", tak v podstatě souhlasím.

Uznávám, měl jsem to rozvést. Správně je obojí: musí vědět, že výsledkem je nějaký obvod. Znát základní konstrukční prvky. Že ať už si do programu napíše co chce, tak výsledkem je nakonfigurovaná síť hradel, paměťových buněk apod. Zjednodušeně řečeno nepoddat se představě, že je to nějaký mikroprocesor interpretující zadaný program.

Co pro "vstup do svěra FPGA" znát nemusí jsou věci jako LUT.

Ivan Nový

Re:FPGA experimenty - výměna zkušeností
« Odpověď #18 kdy: 28. 01. 2016, 13:29:43 »
kód psát v Pythonu

To je mimoradne debilni napad. Vzhledem k tomu, ze myHDL pro syntezu zadny vendor FPGA nepodporuje, doporucujete tomu nebohemu cloveku, aby si to cele zkomplikoval pridanim dalsi zbytecny vrstvy.
Navic pro popis HW jsou jazyky Verilog a VHDL navrzene, v Pythonu bude reaktivni paradigma a silny paralelismus vzdycky maximalne nejak hnusne nahackovany.

Ruční navrhovaní obvodů již dnes nemá budoucnost. V PyHDL můžete tvořit evoluční algoritmy, které budou obvody podle zadaných kritérii generovat samy. Testování můžete taky automatizovat. Takže to není zbytečná vrstva. Ona vaše znalost fungování hw je taky jen mentální model.

Jasne, evolucni algoritmus mi navrhne implementaci treba 10gigovyho ethernetu... nevim co beres, ale chci to taky.

To není dobrý nápad. Ale někdo by mohl poskládat všechny perly tohoto přispěvatele na jedno místo. Naposledy mě dostal s výrokem "sw nemá předem danou funkci".

Už jste se někdy setkal s uživatelem, který by tu funkci objednaného sw uměl detailně popsat a nebo věděl, co bude potřebova za měsíc, rok, nebo pět let ?

Kuba_CZ

Re:FPGA experimenty - výměna zkušeností
« Odpověď #19 kdy: 28. 01. 2016, 15:41:10 »
Jak už bylo řečeno, je nutné si uvědomit, že návrh pro FPGA není programování, ale je to návrh digitálních obvodů. Bez toho to nepůjde! Osobně doporučuji začít jazykem VHDL, který je v Evropě používanější. Něco málo do začátku jde najít například na webu http://vhdl.cz/. Levné vývojové desky s FPGA se dají sehnat za pár korun z Číny.

Důležitý je naučit se překreslovat VHDL do schématu a naopak, člověk pak má lepší představu co vlastně v jazyce VHDL popisuje. Nějaké automatické generování obvodů nikdy nevygeneruje bezvadně optimalizovaný obvod pro konkrétní FPGA, vždy bude lepší provádět ruční návrh ve VHDL nebo Ve Verilogu. ;)


Karel

Re:FPGA experimenty - výměna zkušeností
« Odpověď #20 kdy: 28. 01. 2016, 15:54:28 »
...
Když byl evoluční algoritmus schopen navrhnout a realizovat lidský mozek, který to dokáže, tak principielně to možné je.
...

Tenhle evoluční algoritmus ale dělá docela velké chyby. Viz artróza (ta nás čeká všechny, pokud "včas" neumřeme). Nebo krevní oběh žirafy (sice výborně zvládá změnu tlaku, ale jedna z cév je pořád tažena "jako u všech savců", což u žirafy znamená zbytečnou zajížďku v metrech). Kdykoliv se změní zadání nebo některé z podmínek, tak rázem je výsledek na hranici únosnosti.

I kdyby generace byly rychlé jak verze Chrome, tak si na "opravu" počkáte desítky let. Všichni prostě mají rádi genetické algoritmy, ale už nechtějí slyšet, že je tu více než miliontá verze a každá se několik let testovala.

Mirek

Re:FPGA experimenty - výměna zkušeností
« Odpověď #21 kdy: 28. 01. 2016, 16:02:18 »
V situaci kdy ještě pořádně nefunguje genetické programování v oblastech, kde jde čistě o algoritmy, mně fascinují lidé radící začínajícímu zájemci o FPGA aby nestudoval základy protože HW se bude navrhovat "sám"...

Ivan Nový

Re:FPGA experimenty - výměna zkušeností
« Odpověď #22 kdy: 28. 01. 2016, 16:17:27 »
...
Když byl evoluční algoritmus schopen navrhnout a realizovat lidský mozek, který to dokáže, tak principielně to možné je.
...

Tenhle evoluční algoritmus ale dělá docela velké chyby. Viz artróza (ta nás čeká všechny, pokud "včas" neumřeme). Nebo krevní oběh žirafy (sice výborně zvládá změnu tlaku, ale jedna z cév je pořád tažena "jako u všech savců", což u žirafy znamená zbytečnou zajížďku v metrech). Kdykoliv se změní zadání nebo některé z podmínek, tak rázem je výsledek na hranici únosnosti.

I kdyby generace byly rychlé jak verze Chrome, tak si na "opravu" počkáte desítky let. Všichni prostě mají rádi genetické algoritmy, ale už nechtějí slyšet, že je tu více než miliontá verze a každá se několik let testovala.

Tak ono je to v případě FPGA a logických funkcí dost zjednodušeno, oproti biologickým systémům, pokusy už prováděny byly viz například zde http://www.elektrorevue.cz/clanky/04043/index.html

Ivan Nový

Re:FPGA experimenty - výměna zkušeností
« Odpověď #23 kdy: 28. 01. 2016, 16:49:08 »
V situaci kdy ještě pořádně nefunguje genetické programování v oblastech, kde jde čistě o algoritmy, mně fascinují lidé radící začínajícímu zájemci o FPGA aby nestudoval základy protože HW se bude navrhovat "sám"...

No pokud začne se studováním současného hw, tak do toho investuje tolik energie, že bude ztracen pro nové postupy, které by případně mohl objevit. Těžko totiž bude opouštět to, do čeho investoval tolik času. Nové věci se do jisté míry rodí popření současných postupů, takže i neznalost může, ale nemusí být přínosná. A nalézat dnes něco nového, je stále těžší, protože k tomu potřebujete stále více vlastní originality. Je známo, že i evoluční algoritmy někdy uviznou v lokálním optimu. A žádný vývojář nestojí mimo tento základní evoluční algoritmus, kterým je současná úroveň znalostí, či kultura daného oboru.

Ivan Nový

Re:FPGA experimenty - výměna zkušeností
« Odpověď #24 kdy: 28. 01. 2016, 17:22:56 »
Jinak jeste trochu k tomu navrhovani genetickym algoritmem. Je dobre si uvedomit, ze optimalizace evoluci v prirode nema daleko k brute force, z cehoz lze odvodit, ze je treba spousta iteraci, coz obvykle znamena i spoustu casu. V knize Evolucni hardware se ostatne rika, ze uzitecnost evolucniho designovani je limitovana pomerne nizkou pouzitelnou delkou chromozomu, a to jak pri navrhu nad raw hradly, tak nad nejakymi vetsimi makry (scitacka, citac apod.).

Dalsi legrace je navrh fitness funkce, chtel bych treba videt takovou, ktera povede k uspesne synteze zmineneho 10gigoveho ethernetu nebo treba x86 cpu. V podstate to znamena bokem napsat naprosto detailni model v kvalite jeste vyssi, nez se bezne pouziva pro verifikaci.

Optimalizační funkce je ale jednoduchá, je stejná jako demontážní funkce, kterou zná každý, kdo rozebral nějaké zařízení, když ho dal dohromady, zase zpátky, tak mu zůstaly na stole součástky, které tam zapomněl dát a kupodivu zařízení plní původní funkci stejně dobře.

Technické informační systémy nyní jsou provázány, jsou zapojeny do sítí a spoustu informací sdílí, což optimalizaci může akcelerovat, navíc ta evoluce může probíhat za provozu těchto zařízení.

Vezměte si takový Hubbleoúv teleskop, což byl dokonale vyleštěný kus zrcadla poslaný do vesmíru. Nyní ho můžete nahradit miliony miniaturních snímačů náhodně a částečně symetricky vypuštěných do oblasti kolem nějaké sondy kdesi v kosmu, řekněme v kulovité oblastí o průměru tisíců kilometrů. A díky jejich propojení a synchronizaci, z nich za přepokladu, že každý z nich zná svou polohu, můžete sestavit toto zrcadlo též. Jeho geometrii a třeba natáčení do požadovaného směru nebudete provádět jejich fyzickým pohybem, ale výběrem vhodných jedinců nacházejících se v požadovaném místě. Což by vám umožnilo vidět daleko dále, než kam dohlédl Hubbleův teleskop. Jejich napájení pak můžete řešit například jaderným reaktorem, v dostečné vzdálenosti, který k nim vysílá intenzivní záření, v určitých intervalech, které dobíjí jejich baterie a samotný snímač je od toho záření odstíněn, protože je definované vlnové délky a ve známém čase :-))) Když budete mít rozptýleno těch snímačů více než potřebujete, tak vám ani nevadí, že časem se jich polovina zničí vlivem prostředí a zařízení bude nadále funkční :-)))

No a nejlepší by bylo, že tato konstrukce by mohla reagovat na to co vidí a aktivně se přizpůsobovat snímanému obrazu :-)))



Kiwi

Re:FPGA experimenty - výměna zkušeností
« Odpověď #25 kdy: 29. 01. 2016, 10:18:47 »

 ;D ;D ;D

Věnuj se raději psaní sci-fi. Evidentně tam budeš mít větší naději na úspěch než v reálné technice.  ;)

fpga

Re:FPGA experimenty - výměna zkušeností
« Odpověď #26 kdy: 29. 01. 2016, 11:07:32 »
já to nechápu, je něco nesrozumitelného na "FPGA experimenty - výměna zkušeností" ?
Z těch příspěvků mám dojem, že do nějakého ústavu zavedli internet.
Jediné dva zajímavé tipy jsou vhdl.cz a pyHDL.

Mě už deska přišla, web server demo chodilo, ostatní ne, není snadné se tím prokousat, ale to Vivado (licence je v ceně) vypadá mocně :)

Ivan Nový

Re:FPGA experimenty - výměna zkušeností
« Odpověď #27 kdy: 29. 01. 2016, 11:13:58 »

 ;D ;D ;D

Věnuj se raději psaní sci-fi. Evidentně tam budeš mít větší naději na úspěch než v reálné technice.  ;)

Jaké sci-fi? Obdobný postup se ke studiu černých děr už používá :-) Viz například zde, článek z novin https://news.google.com/newspapers?nid=1350&dat=20051103&id=THhhAAAAIBAJ&sjid=gAQEAAAAIBAJ&pg=4193,418779&hl=en

Stejný postup bude použit i u teleskopu  typu Ritchey-Chrétien v plánované TMT Observatory, kde 30m zrcadlo bude tvořeno 492 menšími 1.4m zrcadly :-)))

Viz zde http://www.tmt.org/about-tmt

Mirek

Re:FPGA experimenty - výměna zkušeností
« Odpověď #28 kdy: 29. 01. 2016, 11:21:14 »
já to nechápu, je něco nesrozumitelného na "FPGA experimenty - výměna zkušeností" ?
Z těch příspěvků mám dojem, že do nějakého ústavu zavedli internet.
Jediné dva zajímavé tipy jsou vhdl.cz a pyHDL.

Mě už deska přišla, web server demo chodilo, ostatní ne, není snadné se tím prokousat, ale to Vivado (licence je v ceně) vypadá mocně :)
Hmm. Neodpověděl jsi na můj dotaz jaký je tvůj background v číslicové elektronice a programovatelných obvodech. To nebylo rejpání a snaha tě odradit. To jsem myslel vážně abych ti případně mohl doporučit něco adekvátního...

mhi_

Re:FPGA experimenty - výměna zkušeností
« Odpověď #29 kdy: 29. 01. 2016, 18:27:11 »
Jediné dva zajímavé tipy jsou vhdl.cz a pyHDL.

Tak zrovna pyHDL mi prijde ... nevim jak to slusne nazvat.

Z me zkusenosti je nejlepsi mit nejaky *realny* problem, ktery pomoci CPLD/FPGA vyresim. Treba generator nejakeho testovaciho obrazu, ktery se mi zobrazi na televizi/monitoru. A tento problem postupne resit, treba s pomoci opencores.org. Na takovou vec staci to uplne nejmensi FPGA a k tomu treba zdarma Xilinx ISE. A nejaka "background" knowledge.

Jak tu nekdo psal naucit se nejprve kreslit schemata - muj prvni design pro CPLD vznikal presne takto, ale diky neohrabanosti Xilinxiho nastroje v te dobe takovy mostup mohu pouze NEDOPORUCIT (nepredpokladam, ze se neco vyznamne zmenilo, kdyz za ty mnohe roky nebyli schopni opravit ani jine jeste podstatnejsi chyby).