Co nejaky FPGA kde se naprogramuje digitalni obvod a ten pak dela potrebne prace s daty?
Napr. implementovat funkci Ronji Twistera by v mikroradici udelat neslo, protoze jsou extremni pozadavky na ryzhlost reakce na prochazejici data. Behem par set nanosekund se musi rozpoznavat zacatky a konce paketu spravne sestrihavat ruzne digitalni dignaly atd. Zvladne to ale mnohem jednodussi obvod architektury "vrabci hnizdo", slozeny z jednotlivych primitivnich jednotek, ktere jsou zapojeny do "grafu".
Kdyby se programaticky daly ty dratky prepojovat (coz se presne deje ve FPGA), dalo by se to zobecnit na libovolnou ulohu a vznikl by turingovsky ekvivalentni stroj ktery je koncepcne jednoduchy a ma dobry vykon.
Názory k článku
Techniky zvýšení výkonu mikroprocesorů 2
BLEK. (neregistrovaný)
22. 5. 2008 2:52
Nový
Re: A co architektura vrabci hnizdo?
celé vlákno
Tak můžeš udělat FPGA, co má ochranu paměti a stránkování a pak se na to může napsat kompilátor a pouštět nad tím obyčejné operační systémy a programy :)
JS (neregistrovaný)
22. 5. 2008 7:28
Nový
Re: A co architektura vrabci hnizdo?
celé vlákno
No, to bude az druha faze myslim. Ono je totiz tezke uz jenom udelat prostou alokaci toho FPGA, mala zmena v tom software muze zpusobit, ze se to tam nevejde nebo se nevejde s necim jinym. Jasne, muzete to vzdycky cele to FPGA naalokovat a nahrat znova, ale to je jako pred kazdou alokaci pameti pamet defragmentovat. Takze FPGA by melo obrovsky overhead pri prepinani uloh.
Nicmene, vubec nejsem proti te myslence, spis naopak.
Nicmene, vubec nejsem proti te myslence, spis naopak.
Ray (neregistrovaný)
22. 5. 2008 13:23
Nový
Re: A co architektura vrabci hnizdo?
celé vlákno
FGPA jsou drahé, v porovnaní s tím, co umí třeba mikrořadič (a to výrazně). Pokud člověk zrovna nechce dělat něco ala hardcopy a vyrobit si svých pár miliónů čipů teda. To co píšeš, je běžná praxe a high end DSP maji celé bloky, už od výrobce, kde jsou mikrořadiče (typicky nějaké PPC). Ono z hlediska plochy, výkonu, spotřeby, ... je FPGA plýtvání, proto tak už jsou ty PPC bloky od výrobce. A to pomíjím, že se dělají bloky, ktere obsahují třeba celou MAC jednotku (ETH). Nebo řadiče pro PCIex, DDR, ... A to jen proto, aby se ušetřila ta plocha a zvedl výkon.... Ale ty ceny. A ceny dobrých syntetizátorů, to je taky kapitolka sama pro sebe. Nemám FPGA rád, ikdyž faktem je to, že se jim člověk často nevyhne....
Jinak tady párkrát padlo DSP. Krásné "hybridy" mezi DSP a klasickým CPU dělá třeba analog, Blackfin procesory. Krásné, levné stroje. 400-600MHz core, až 3 instrukce za takt, spotřeba menší cca 1W, na čipu 100K RAM na plné frekvency jádra, integrovaná SDRAM/DDR. A je to za pár dolarů. Dá se to na řadě míst použít místo kombinace DSP+CPU. Navíc na tom pěkně běží ucLinux.
R.
Jinak tady párkrát padlo DSP. Krásné "hybridy" mezi DSP a klasickým CPU dělá třeba analog, Blackfin procesory. Krásné, levné stroje. 400-600MHz core, až 3 instrukce za takt, spotřeba menší cca 1W, na čipu 100K RAM na plné frekvency jádra, integrovaná SDRAM/DDR. A je to za pár dolarů. Dá se to na řadě míst použít místo kombinace DSP+CPU. Navíc na tom pěkně běží ucLinux.
R.
Ray (neregistrovaný)
22. 5. 2008 13:25
Nový
Re: A co architektura vrabci hnizdo?
celé vlákno
Jsem se uklik, mělo to být jako reakce na post od Pavla :)
R.
R.
22. 5. 2008 13:40
Nový
Re: A co architektura vrabci hnizdo?
celé vlákno
Je fakt, ze mluvim z pozice cloveka, ktery delal na systemech vyrabenych v malych seriich (desitky kusu), kde nejvic stal vyvoj SW, takze nejaka cena FPGAcka nehrala tak vysokou roli (bylo tam FPGA, DSP a SRAM, tady je videt, ze se ani neresila nahrada SRAM za levnejsi DRAM). Ale je jasne, ze kdyz nekdo treba vyrabi HW kodek pro digital TV apod. (to se prodava v milionech kusu), tak si muze dovolit si nechat v tovarne vyrobit masku a pouzit vlastni cip.
Vim, ze se delal i nejaky European Logarithmic Processor nebo nejak podobne znejici CPU, na kterem participovali lidi z Akademie ved a ti si to opravdu nechali napalit do cipu. Ale to je samozrejme vyvoj podporovany granty, na coz Clock s Ronjou asi nedosahne :-(
Vim, ze se delal i nejaky European Logarithmic Processor nebo nejak podobne znejici CPU, na kterem participovali lidi z Akademie ved a ti si to opravdu nechali napalit do cipu. Ale to je samozrejme vyvoj podporovany granty, na coz Clock s Ronjou asi nedosahne :-(
MartinX (neregistrovaný)
22. 5. 2008 18:40
Nový
Re: A co architektura vrabci hnizdo?
celé vlákno
Ta vyroba cipov nebude az taka draha. Ked som v 1995 dokoncil diplomovku ( jednalo sa o programovatelny digitalny filter), tak fakulta mikroelektroniky kde som studoval ( FEI STU v Bratislave) mala nejaku zmluvu so zdruzenim EuroChip a oni mi ten moj integrovany obvod vyrobili v mnozstve asi 5 kusov. Nejednalo sa o FPGA, vystupom mojho navrhu boli masky v 3um technologii (v tej dobe dost zastaralej) ktore sa posielali do EuroChipu.
pc2005 (neregistrovaný)
23. 5. 2008 13:22
Nový
Re: A co architektura vrabci hnizdo?
celé vlákno
Mohu se zeptat, kolik to stálo?
MartinX (neregistrovaný)
25. 5. 2008 12:58
Nový
Re: A co architektura vrabci hnizdo?
celé vlákno
To netusim, ja som neplatil nic.
atarist (neregistrovaný)
22. 5. 2008 15:16
Nový
Re: A co architektura vrabci hnizdo?
celé vlákno
Nekdy staci i malickost, napriklad se pokusit implementovat na FPGA treba FP nasobicku, delicku, scitacku se saturaci atd. Samozrejme to jde, ale zabere to strasne velkou cast plochy cipu a pritom to stejne (cele FPU) maji mnoha DSPcka, ktere se daji sehnat za par dolaru.
22. 5. 2008 9:00
Nový
Re: A co architektura vrabci hnizdo?
celé vlákno
Jako idealni se pro tyto pripady ukazuje kombinace FPGA+mikroprocesor (treba nejake DSP). FPGAcko na rychle reakce (+se daji napriklad vyuzit jeho nasobicky) a DSPcko na zbytek. Nejsem si ted jistej, co pouzivaji treba ridici obvdody harddisku (to je dost podobny obvod, jako Ronja), ale tipnu si prave na tuto kombinaci, tj. programovatelne pole+rychle DSPcko.
Ale samozrejme je to projekt od projektu ruzne, nekdy se treba zjisti, ze to DSPcko utahne samo a potom je vyvoj levnejsi.
Ale samozrejme je to projekt od projektu ruzne, nekdy se treba zjisti, ze to DSPcko utahne samo a potom je vyvoj levnejsi.
Rejpal (neregistrovaný)
22. 5. 2008 15:39
Nový
Re: A co architektura vrabci hnizdo?
celé vlákno
No myslím, že zrovna tohle by byla skoro ideální aplikace pro Mooreův zázrak jménem x25. ;-) Pár set nanosekund? Za tu dobu stihneš pár desítek tisíc operací. :-)
uživatel si přál zůstat v anonymitě
22. 5. 2008 7:50
Nový
Zajimavy prehled
celé vlákno
Vyvoji pocitacu SIMD se u nas (Ceskoslovensko) venoval Ustav technickej kybernetiky SAV v Bratislave. Dokonce doslo k vyrobe mensi serie. Pocitac byl osazen procesory Z80 (16 ks, ale mam pocit, ze existoval i se 64 ks), pro jeho rizeni slouzilo externi PC.
potwor (neregistrovaný)
22. 5. 2008 8:49
Nový
Re: Zajimavy prehled
celé vlákno
neni nekde vice informaci ? Zni to zajimavje a navic to obsahuje muj "rodny" CPU O:-)
22. 5. 2008 9:02
Nový
Re: Zajimavy prehled
celé vlákno
Taky by me to zajimalo. Jestli napriklad mel kazdy Z80 u sebe nejakou pamet nebo ne, popr. jak byly jednotlive uzly propojeny. Je pravda, ze 16 nebo 64 ks jeste neni uplne ta kriticka hranice, ale opravdu to mohlo byt zajimave.
Clock (neregistrovaný)
22. 5. 2008 10:20
Nový
Re: Zajimavy prehled
celé vlákno
To musel bejt frmol, jak na tom behal Jet Set Willy? A byla kazeta s Manic Minerem v zakladni vybave?
22. 5. 2008 13:40
Nový
Re: Zajimavy prehled
celé vlákno
trosku to rozsirili, takze se dalo z jedne klavesnice ovladat 16 panacku :-)
LukasT (neregistrovaný)
22. 5. 2008 10:19
Nový
SIMD a dvojbitova predikcia - automat
celé vlákno
Fajny clanok :) Akurat som si myslel, ze SIMD neexistuje :) a ze to je len teoreticky dosiahnutelna architektura..
U dvojbitovej predikcie Vam tam chyba obrazok automatu, nie?
U dvojbitovej predikcie Vam tam chyba obrazok automatu, nie?
LukasT (neregistrovaný)
22. 5. 2008 10:20
Nový
Re: SIMD a dvojbitova predikcia - automat
celé vlákno
Sorry MISD som myslel... :)
22. 5. 2008 10:32
Nový
Re: SIMD a dvojbitova predikcia - automat
celé vlákno
V podstate je MISD i graficka pipeline. A nektere zasobnikove procesory taky, napriklad ty, ktere maji vertikalni format instrukci.
22. 5. 2008 10:33
Nový
Re: SIMD a dvojbitova predikcia - automat
celé vlákno
Omlouvam se, obrazek jsem tam opravdu ve spechu zapomel pridat. Necham to opravit.
22. 5. 2008 10:35
Nový
Branch prediktory
celé vlákno
Jeste dodam jeden zajimavy odkaz: http://camino.rutgers.edu/cbp2/
mikro (neregistrovaný)
22. 5. 2008 10:36
Nový
RE: Techniky zvýšení výkonu mikroprocesorů 2
celé vlákno
genialny serial.
skoda, ze nebol spomenuty (a porovnany s Pentiom) aj dost dobry rival na poli superskalarnych CPU -- MC 68060.
skoda, ze nebol spomenuty (a porovnany s Pentiom) aj dost dobry rival na poli superskalarnych CPU -- MC 68060.
Ondrej 'SanTiago' Zajicek (neregistrovaný)
22. 5. 2008 12:20
Nový
RE: Techniky zvýšení výkonu mikroprocesorů 2
celé vlákno
> Například první Pentia s dvojicí pipeline dokázaly zpracovat maximálně dvě instrukce v jednom taktu
Proc tedy M. Brandejs v "Mikroprocesory INTEL Pentium a spol." uvadi u nekterych instrukci dobu zpracovani 1/3 taktu?
Proc tedy M. Brandejs v "Mikroprocesory INTEL Pentium a spol." uvadi u nekterych instrukci dobu zpracovani 1/3 taktu?
22. 5. 2008 12:36
Nový
RE: Techniky zvýšení výkonu mikroprocesorů 2
celé vlákno
To je podivne, protoze do obou pipelin jde nacist v taktu maximalne jedna instrukce, nekdy je to vsak mene.
http://www.goof.com/pcg/doc/opt-pairing.html
Jedna se o nejakou konkretni instrukci?, docela me to zajima.
http://www.goof.com/pcg/doc/opt-pairing.html
Jedna se o nejakou konkretni instrukci?, docela me to zajima.
Ondrej \'SanTiago\' Zajicek (neregistrovaný)
22. 5. 2008 12:51
Nový
RE: Techniky zvýšení výkonu mikroprocesorů 2
celé vlákno
Vetsina pouziti ADC, ADD, AND, OR, INC, DEC, NEG, NOT a dalsi. U toho NOT a NEG to jsou vsechna uvadena uziti.
22. 5. 2008 13:05
Nový
RE: Techniky zvýšení výkonu mikroprocesorů 2
celé vlákno
Diky! Dival jsem se do orig. dokumentace k Pentiim a tam jsou jenom doby behu celych instrukci, tj. od jejich nacteni do vykonani. Takze to nam asi v tomto pripade moc nepomuze: http://www.singlix.org/trdos/pentium.txt
22. 5. 2008 13:11
Nový
RE: Techniky zvýšení výkonu mikroprocesorů 2
celé vlákno
Jeste me napadlo, je to opravdu 1/3 (jedna tretina) a ne 1-3 (nekdy jeden takt, jindy az tri takty)?
Ondrej \\\'SanTiago\\\' Zajicek (neregistrovaný)
22. 5. 2008 13:34
Nový
RE: Techniky zvýšení výkonu mikroprocesorů 2
celé vlákno
Je tam 1/3 a myslim, ze to ma znamenat 3 dokoncene instrukce na takt.
Ondrej 'SanTiago' Zajicek (neregistrovaný)
22. 5. 2008 13:39
Nový
RE: Techniky zvýšení výkonu mikroprocesorů 2
celé vlákno
Aha, tak tim asi opravdu mysli 1 takt nebo 3 takty, podle toho, jak se to naparuje s ostatnimi instrukcemi.
BLEK. (neregistrovaný)
22. 5. 2008 15:54
Nový
RE: Techniky zvýšení výkonu mikroprocesorů 2
celé vlákno
Na to je známý dokument od Agnera: http://www.agner.org/optimize/instruction_tables.pdf
22. 5. 2008 16:27
Nový
RE: Techniky zvýšení výkonu mikroprocesorů 2
celé vlákno
Diky za odkaz. Tady se asi vysvetluje ta zahadna hodnota 1/3. Je to u instrukci, ktere bud pracuji s registry nebo s pameti (x86 evidentne neni RISC :-). U "registrovych" variant vychazi 1 cyklus + parovani, u "pametove" jsou to tri cykly, aspon tak si tu tabulku vysvetluji. Jestli je to v ceske literature uvedeno bez dalsich poznamek, tak to je IMHO dost zavadejici.
BLEK. (neregistrovaný)
22. 5. 2008 21:15
Nový
RE: Techniky zvýšení výkonu mikroprocesorů 2
celé vlákno
Jo, to je možný, že to někdo opsal. Jediný procesor, který uměl vykonat instrukci za polovinu tiku bylo Pentium 4 před Prescottem. To mělo ALU na dvojnásobné frekcenci, takže vykonalo dvě závislé instrukce za tik.
Uživatelka si přála zůstat v limbu (neregistrovaný)
26. 5. 2008 22:57
Nový
RE: Techniky zvýšení výkonu mikroprocesorů 2
celé vlákno
Prescott to ale musel dělat taky.
BLEK. (neregistrovaný)
26. 5. 2008 23:43
Nový
RE: Techniky zvyseni vykonu mikroprocesoru 2
celé vlákno
Prescott vykona uz jen jednu instrukci za tik.
Pentium 4 pred prescottem vykonalo
add eax, eax
add eax, eax
add eax, eax
add eax, eax
add eax, eax
add eax, eax
za 3 tiky. Prescott to vykona za 6 tiku.
Pentium 4 pred prescottem vykonalo
add eax, eax
add eax, eax
add eax, eax
add eax, eax
add eax, eax
add eax, eax
za 3 tiky. Prescott to vykona za 6 tiku.
Mrtvá tramvaj (neregistrovaný)
27. 5. 2008 10:30
Nový
RE: Techniky zvyseni vykonu mikroprocesoru 2
celé vlákno
Má tedy Prescott či jeho autoři poruchu osobnosti?
Lael Ophir (neregistrovaný)
27. 5. 2008 15:51
Nový
moc pěkné
celé vlákno
Pěkně napsané. Sice to přináší nové informace jen sporadicky, ale je to pěkný přehled daného tématu. A taková slova ode mne, to je dost neobvyklá věc :)
Jeremy (neregistrovaný)
21. 6. 2008 10:47
Nový
SISD SIMD MISD MIMD
celé vlákno
Odstavce popisujici SISD SIMD MISD MIMD jsou o nicem, nevim jaky procesor nebo program si mam za tim predstavit.
Nebylo by vubec na skodu uvest nejaky priklad, misto vysvetlovani zkratky na nekolika radcich. Byl by nekdo ze ctenaru schopen a ochoten nejake priklady tak 2-3 ke kazdemu typu uvest? Urcite by zvysilo iformacni hodnotu jinak celkem dobre napsaneho clanku.
Dekuji moc
Nebylo by vubec na skodu uvest nejaky priklad, misto vysvetlovani zkratky na nekolika radcich. Byl by nekdo ze ctenaru schopen a ochoten nejake priklady tak 2-3 ke kazdemu typu uvest? Urcite by zvysilo iformacni hodnotu jinak celkem dobre napsaneho clanku.
Dekuji moc
22. 6. 2008 23:24
Nový
Re: SISD SIMD MISD MIMD
celé vlákno
Zdravim, sice presne nevim, jake programy by bylo mozne predstavovat, ale zde je muj pokus o nejake tipy z rad mikroprocesoru (je to jen z tech veci, ktere me ted napadaji, prikladu lze najit vice):
SISD - prakticky libovolny osmibitovy mikroprocesor puvodni generace - 8080, Z80, 6502, 6809, architektura x86 az do verze 486, nektere dnesni mikroradice atd. atd.
SIMD - Pentium MMX a vsechny dalsi procesory x86 s instrukcni sadou rozsirenou o MMX, 3D Now! atd. Programy - vsechny, ktere jsou prelozene s MMX instrukcemi :-), typicky video kodeky
MISD - F21 Chucka Moora, P21
MIMD - CM5, v clanku je i fotka
SISD - prakticky libovolny osmibitovy mikroprocesor puvodni generace - 8080, Z80, 6502, 6809, architektura x86 az do verze 486, nektere dnesni mikroradice atd. atd.
SIMD - Pentium MMX a vsechny dalsi procesory x86 s instrukcni sadou rozsirenou o MMX, 3D Now! atd. Programy - vsechny, ktere jsou prelozene s MMX instrukcemi :-), typicky video kodeky
MISD - F21 Chucka Moora, P21
MIMD - CM5, v clanku je i fotka
uživatel si přál zůstat v anonymitě
26. 6. 2008 17:41
Nový
Re: SISD SIMD MISD MIMD
celé vlákno
Tohle presne jsem nemel na mysli. Ocekaval jsem nejaky popis jako, ze pri SIMD zpracovni se soubor, ktery je nutno zpracovat, treba video, ktere potrebujeme zkomprimovat, rozdeli na dve casti a kazda se bude zpracovavat na jednom CPU. Stejne sady instrukci tak zpracovavaji rozdilna obrazova a audio data. Jedna se tak o data parallelism a middle grained paralelizaci. Rekl bych, ze to co popisujete vy, je fine grained parallelism, tedy paralelizace instrukcni, ktera se odehrava na urovni jednoho CPU. Jedna vec je, ze to umi CPU a druha zda toho umi nejaka znama komercni aplikace vyuzit. Treba, ze Photoshop si rozdeli obrazek na 2 casti, kazdou posle na jiny CPU a stejnymi instrukcemi (aplikuje na ne stejny filtr) je zpracuje a ma hotovo za 1/2 casu. Pro MISD a MIMD me ted nenapada nejaky prakticky priklad. Pomuzete?
27. 6. 2008 18:09
Nový
Re: SISD SIMD MISD MIMD
celé vlákno
Ano, to je dalsi uroven SIMD. Ta (dnes bych rekl klasicka) SIMD neni zalozena na vice procesorech, ale na jednom procesoru zpracovavajicim data paralelne (zase se vratim k MMX). Vetsi mnozstvi CPU by v tomto pripade zpracovavalo stejny program, taky je to mozne (kdysi davno jsme na to psali simulator), ale prakticke moc ne - problemy s pristupem do hlavni pameti - proto take quad core apod. predstavuji jeste rozumnou hranici, dal uz jde spis o zbytecne vyhazovani penez a energie. Ale za SIMD lze povazovat i relativne samostatne pocitace (CPU+pamet+connect.net), napriklad renderovaci farmy.
Architekture MIMD se dnes muzou asi nejvice podobat site beznych PCcek, treba neco, co pouziva Google - vice vstupu (kazdy dotaz jeden vstup), x-tisic PCcek, ktere v pripade vytizeni mohou zpracovavat vice dotazu a v pripade, ze je vetsi klid naopak paralelne jeden dotaz - asi tam bude pouzity dost ucinny "prelevaci" algoritmus. Podobne, akorat v jedne bedne, pracuje Connection Machine.
MISD - mozna data-flow architektury jsou jim nejblizsi.
Architekture MIMD se dnes muzou asi nejvice podobat site beznych PCcek, treba neco, co pouziva Google - vice vstupu (kazdy dotaz jeden vstup), x-tisic PCcek, ktere v pripade vytizeni mohou zpracovavat vice dotazu a v pripade, ze je vetsi klid naopak paralelne jeden dotaz - asi tam bude pouzity dost ucinny "prelevaci" algoritmus. Podobne, akorat v jedne bedne, pracuje Connection Machine.
MISD - mozna data-flow architektury jsou jim nejblizsi.

