Hlavní navigace

Názory k článku Architektura VLIW a rodina DSP čipů TI TMS320C6×

  • Článek je starý, nové názory již nelze přidávat.
  • 5. 1. 2017 20:32

    VLIW dnes (neregistrovaný)

    Jaký má VLIW význam dneska? Vím o tom, že TI dává svoje DSP do OMAP čipů, kde hlavní činnost provádí nějakej ARM (nebo alternativně možná i něco dalšího). Ale dělá VLIW ještě někdo další? Intel to IMHO zabalil.

  • 6. 1. 2017 10:45

    Pavel Tišnovský

    Ještě je tady minimálně EPIC, což je trošku modifikovaný VLIW. Ale trh, co má TI s DSP a OMAPy je hodně velkej, takže asi na počtu výrobců tak nezáleží (AFAIK).

  • 5. 1. 2017 23:24

    Josef Pavlik

    Libi se mi myslenka, ze o vsechno se ma starat prekladac. Je to logicke. Program se preklada jednou (kdyz pomineme ladeni), ale bezi milionkrat. Proc by mel drahy hardware znovu a znovu detekovat kolizi, kdyz to mohl jednou pro vzdy zaridit prekladac?
    Ovsem platime za to malou hustotou binarniho kodu, radove polovina pameti bude pravdepodobne vyplnena nopama. Program s firmwarem bude pravdepodobne v pameti primo na chipu, protoze mit 256 nozicek jenom pro databus by bylo silene.
    Ale myslenka je to zajimava.
    V polovine osmdesatych letech jsem si hral se zarizenim, ktere z meho tehdejsiho pohledu bylo VLIW - byl to 16bitovy "Inteligentni terminal" od Metry Blansko (jestli si dobre vzpominam). Processor mel delany z rezu rady AM3000 (MHB3000). Struktura instrukci ovsem trochu pripominala VLIW - nektere instrukce mely rezervovane bity pro barrel shifter.
    Melo to 16KiB ferritove pameti, ale interpretr basicu se do ni nevesel, posledni kilo se muselo dotahnout z magneticke karty a ulozit do ramky :-)
    To byly casy :-). Programoval jsem to v assembleru. Nic jineho na tom spolehlive nefungovalo.
    A display to melo CRT, ale nebyl radkovany klasicky. Pprsek vykresloval jeden znak po druhem v matici radove 5x7 stylem cik-cak, pak presel na dalsi znak a zase cik-cak vykreslil tech jeho 7 radku. Kdyz se zvysil jas na max, bylo to krasne videt. Logika rizeni paprsku musela byt srovnatelna s celym rezovym processorem :-)

  • 6. 1. 2017 1:26

    robotron (neregistrovaný)

    Ten terminal musel bejt uzasnej! Original od MHB3000 je Intel, ne AMD (to bylo Am29000 tusim). Ty brouky me zajimaly, ale nikdy jsem z nich nic nepostavil pro prilisne diletantstvi. Tesil jsem se, ze si udelam nejak silene moc-bitovej procak a budu s tim ohromovat, dokonce jsem si kvuli tomu poridil i zdroj ZPA 5V/50A.

    Program s firmwarem bude pravdepodobne v pameti primo na chipu, protoze mit 256 nozicek jenom pro databus by bylo silene.

    Pokud jde o situaci dnes, digitalni I/O na jednom paru by melo umet 6Gb/s, tj. 3Gb/s na jednu nohu. Pokud by ALU jely taky na dabelskejch 3GHz, pak je to vskutku 1:1 bit:noha. Otazkou je, jaky jsou realny meze, ale pokud by ALU pracovaly plne v kolone ;-) a I/O bylo digitalni (tj. bez A/D D/A prevodu), pak by asi opravdu vychazelo, ze se rychlejsi I/O nemuze podarit.

    Nicmene spise se obavam nutnosti cachi kodu a jejich plejtvani tema VLIW-nopama. Na druhou stranu, pro ulohy, kde je kod malej a jde o masivni mnozstvi dat (a takovejch uloh je dost a jsou dulezity), by to nemuselo tolik vadit.

    Dale pak, v duchu modernich trendu optimalizaci asmu v CPU, by asi nebyl problem ten VLIW behem nacitani z dynamicke pameti po kouskach "ungzipovat" do nejaky "jeste tesnejsi cache". (Mam dojem, ze jsem o dekompresi instrukci na cipu nekde slysel, ale nemuzu si vzpomenout, co to bylo za architekturu.)

  • 6. 1. 2017 9:12

    atarist (neregistrovaný)

    "Libi se mi myslenka, ze o vsechno se ma starat prekladac. Je to logicke"

    ano je to logicke, ale jeste pred nastupem ARMu a tak byla situace jina - program se kdysi prelozil nejakym velmi primitivnim prekladacem (pamatuje nekdo jednopruchodovy Pascal?) a potom to klidne 20 let bezelo na CPU, ktere s tim puvodnim melo spolecnou jen instrukcni sadu. Navic asi nikdo neresil, jak moc je ten program napsan prenositelne, sam mam zkusenosti s tim, ze u par zdrojaku (v praci) bylo jasne napsano "pouzij presne tento prekladac, hlavne nemen ZADNE konfiguracni volby a uz vubec ne volby pro optimalizace, nepojede to". Dnes jsme - podle me diky ARMu jakozto alternative k x86 - uz o dost dal, doufam.

  • 6. 1. 2017 10:36

    Pavel Tišnovský

    "Ovsem platime za to malou hustotou binarniho kodu, radove polovina pameti bude pravdepodobne vyplnena nopama."

    obecně je to skutečně problém (na desktopové aplikace a tak), ale pro klasické DSP algoritmy (FFT, DFT, konvoluce, korelace) existovaly ručně optimalizované knihovny a i ten překladač od TI nebyl úplně marnej.

    Já se o tom zmíním podrobněji příště (v tomto článku to byla jen jedna věta), ale tyto DSP měly pro každou instrukci ve VLIW p-bit, kterým se říkalo, jestli se má spustit paralelně nebo jestli se má počkat (pořád se ale ušetří minimálně fáze instruction fetch+instruction decode), takže instrukce bylo možné ukládat do VLIW i ve chvíli, kdy se serializovaly, aspoň do určité míry. Navíc například naše DSP algoritmy (image processing, psané v C, ne v asm) se v pohodě vlezly do pár kB, takže ROM pro instrukce nebyl zásadní problém.