Amerikaans leger ontwikkelt polymorfe chip

Het bedrijf Raytheon heeft voor het Amerikaanse leger ‘s werelds eerste polymorfe chip ontwikkeld. De architectuur van deze chip kan on-the-fly aangepast worden aan de taak die uitgevoerd moet worden.

De chip is ontworpen voor het gebruik in militaire gps-systemen, videoverwerkingssystemen en radarsystemen die in de lucht of in de ruimte gebruikt worden. Een dergelijke chip moet niet al te groot zijn, mag niet veel energie verbruiken en moet in sommige gevallen zelfs bestand zijn tegen radioactieve straling. Al deze systemen kenmerken zich door de grote hoeveelheid data die ze moeten verwerken, waarbij er zowel aan digitale-signaalbewerking als aan het verwerken van de data moet worden gedacht. Een ideale chip voor dergelijke situaties zou dan ook bestaan uit een snelle dsp, gekoppeld aan een snelle cpu. Dit betekent echter dat de chip te groot wordt en daarmee niet meer geschikt is voor dit soort applicaties. Daarnaast zal afhankelijk van de omstandigheden een van beide voor een groot deel van de tijd niks hoeven te doen. Een chip die zonder problemen kan omschakelen tussen beide kwaliteiten zou dan ook welkom zijn. Gezien de militaire toepassingen die een dergelijke chip mogelijk maakt, kreeg het bedrijf Raytheon in mei 2005 daarom opdracht van de Defense Advanced Research Projects Agency (Darpa) om een oplossing te vinden. Hierbij werd het geholpen door de Univerisity of Southern California.

Monarch - radar

Inmiddels heeft Raytheon een eerste versie van hun chip gereed, Monarch genaamd. Monarch staat voor MOrphable Networked micro-ARCHitecture. Het prototype bestaat uit zes herconfigureerbare risc-processors en wordt in de fabrieken van IBM op een 90nm-proces gebakken. De maximale snelheid waarop de chip kan werken bedraagt 333MHz. Elke processor kan gebruikmaken van een selectie uit 96 optellers, 96 vermenigvuldigers, 124 dualport geheugenblokken van 128KB en 248 adresgenerators. Verder heeft de chip de beschikking over 12MB geïntegreerd dram, en 72 dma-blokken. De communicatie met de buitenwereld gaat via 2 RapidIO-interfaces en 17 difl-poorten die elk een bandbreedte van 2,6GBps hebben. Dit alles zou goed moeten zijn voor een snelheid van 64 gigaflops per seconde, waarbij de chip slechts tussen de 11W en 21W verbruikt. De Monarch zou volgens de makers dan ook tot tien keer efficiënter met energie omspringen dan een Intel quadcore Xeon. Hoewel het ontwerp veel weg heeft van een fpga, is dit hiermee niet vergelijkbaar. De bouwstenen van een fpga hebben namelijk niet dezelfde complexiteit. Daarnaast kunnen de verbindingen tussen deze niet niet on-the-fly veranderd worden.

Monarch - ontwerp

Door Ralph Smeets

Nieuwsposter

24-03-2007 • 11:27

24

Bron: Raytheon

Reacties (24)

24
24
19
7
0
0
Wijzig sortering
Anoniem: 19076 24 maart 2007 14:10
Dit is volgens mij niet veel anders dan het MOLEN project op de TUD (http://ce.et.tudelft.nl/MOLEN/) dat al jaaaaren loopt. En inderdaad, MOLEN gebruikt FPGAs.
Nee, dit zijn gewoon 8 standaard RISC cores, die doormiddel van loadbalancing software over verschillende taken worden verdeeld.

Zie het als een geavanceerde vorm van multi-threading van single-threaded applicaties.
Ik dacht het niet... je kunt hier de blokken on the fly ombouwen naar dsp-achtige structuren of naar risc processoren. Loadbalancing is maar een stukje van het verhaal.
Kan iemand mij vertellen waarmee je de uiteindelijke snelheid kan vergelijken met een Intel processor? (in mhz/ghz taal)
Er staat wel in dat ie 10x efficiënter omgaat dan een Intel quad-core Xeon, maar als dat ding maar op 333 mhz draait dan is dat niet zo verwonderlijk.
de Pentium 2 processoren zijn ook veel zuiniger in gebruik dan de quad-core.
Het gaat niet om mhz'en maar om het werk wat de chip kan verzetten. Uit benchmark blijkt dan een quad core xeon er ongeveer 63gflops uit perst (http://www.verari.com/news/archive/PR111406.asp). Deze chip doet 62glops met toch een veel kleiner verbruik en een lagere kloksnelheid.
Monarch: (17*2,6) = 44.2GB/s || 20W
Clovertown 34,6GB/s || 80.0W
Barcelona 42,4GB/s || 95W/120W

(gegevens overal een beetje vandaan gescharreld)
10x efficienter? neu maar toch wel nette prestatie
(GFLOP/s kon ik niet vinden van alle processors, wel de GB/s wat bij servers toch wel de toon aangeeft wat betreft prestaties)

maargoed, dit zijn rauwe prestaties, ze kunnen volgens mij voor niets anders dan flop-berekeningen in worden gezet.
net als een Cell processor..
Een eerste ontwerp is niet altijd het beste, dus mogelijk in de toekomst zullen ze veel sneller worden... maar ik zie iets staan van "6 RISC processors" en "16.2 GB/s IO"
Het gaat dan natuurlijk om performance / Watt.
Oftewel hoeveel GigaFlops zo'n plak zand genereert per verstookte Joule.
Volgens mij is dit gewoon een FPGA chip design. :S
Die kwam ik 3 jaar geleden al tegen. Is heel veel research naar gedaan, vooral door een Duitse uni waarvan de naam me nu even ontschiet...
* Dreams runs off to check...
Volgens mij zijn fpga's onderverdeeld in nog kleinere blokken, dwz gates. Uit gates kan je dan weer logische operatoren maken, en vervolgens kun je er zelf je eigen optellers, vermenigvuldigers etc uit maken.

De chip uit het artiekel begint al met dit soort elementen en dus zal het herprogrammeren sneller gaan.
Dit is iets heel anders.
Deze chip bestaat feitelijk uit 8 dezelfde cores, die op iedere willekeurig moment aan een andere taak toegewezen kunnen worden. (Zoals dus in het plaatje staat). De cores zelf veranderen niet qua indeling of werking, de opdrachten die er heen gestuurd worden veranderen alleen. Zo kun je een taak door 6 cores laten doen en een andere taak door 2.

Een FPGA (die overigens al meer als 10 jaar bestaat, ik heb er zelf ook veel mee gewerkt) is een blok met allemaal open verbindingen (om het even visualiseren). Door deze te programmeren sluit je bepaalde verbindingen en leg je feitelijk een circuitje aan die bijvoorbeeld bestaat uit AND / OR / NOT en XOR poorten. Hiermee kun je praktisch ieder chipontwerk in het zelfde blokje draaien. Nadeel is natuurlijk dat een FPGA nooit zo snel zijn werk kan doen als een chip die specifiek voor dat werk is ontworpen (i.v.m. lengte van de verbindingen en natuurlijk de lagere kloksnelheid).
als je het laatste stukje tekst goed leest dan zie je wat het verschil is met een FPGA. Complexer en vooral configureerbar on the fly, iets wat niet kan met een fpga
Alsof er geen FPGA's zijn die on-the-fly geherprogrameeerd kunnen worden. Er zijn veel FPGA's die hun configuratie bij het starten uit een geheugen halen. Meestal is dit een flash geheugen omdat het systeem in feite nog aan het starten is. Wat houd je tegen om als tussenstap een DRAM of SRAM geheugen te gebruiken? Als het systeem dan draait kun je de inhoud van dit geheugen aanpassen, dan stuur je een reset signaal naar de FPGA en die laad mooi de nieuwe config binnen. Natuurlijk moet je alle operaties stoppen op de FPGA terwijl hij aan het herprogrammeren is.

Ik heb dit een paar jaar geleden gebouwd met een Atmel microcontroller en een XilinX FPGA. In die schakeling deed de FPGA niet meer dan gewoon wat I/O pinnen van de microcontroller verschuiven maar wat op kleine schaal werkt, kan ook op grote schaal.

Als je die FPGA nu uitbreid met reset signalen per "blok" kan je gedeelten van de FPGA resetten terwijl de rest verder werkt. Van wat ik hier lees is dit ding van Raytheon gebaseerd op hetzelfde principe. Alleen zitten nu de FPGA, processors, bussen en geheugen in 1 chip.
Ook is de fabric van de FPGA fijner uitgewerkt zodat je niet eens hoeft te resetten maar dingen kunt veranderen terwijl de schakeling loopt. Dit kan in een FPGA ook gedaan worden hoor. Gewoon continu het configuratie-geheugen in het oog houden en veranderingen meteen toepassen ipv resetten en de hele chip of blok herstarten.
Atmel maakt zelfs chips waarin een uC en een FPGA gecombineerd zijn. (http://www.atmel.com/products/FPSLIC/)
Het is met deze chips mogelijk om vanaf de uC de FPGA te herconfigureren (http://www.atmel.com/dyn/...rod_documents/DOC3013.PDF).
Deze application note stamt overigens al uit 2002, de chip uit 2001...
Eigenlijk een opgefokte FPGA dus, of zie ik dit verkeerd?
Meer info FPGA:
http://en.wikipedia.org/wiki/FPGA

En nee, vind het wel 2 compleet verschillende dingen.
het heeft meer overeenkomsten met bijvoorbeeld een cell. Waarbij je dan runtime blokken aan en uit kan zetten. Anyone?
Anoniem: 212214 26 maart 2007 21:35
dit is niets meer / minder dan een combinatie van een aantal dingen:
- 6 onafhankelijke processor cores
- een coarse-grained reconfigurable-logic-achtig iets dat vanuit alle processoren aan te sturen is
- een forse data-bus met veel dma engines om data rond te schuiven

zeker interessant maar geen rocket science. daarnaast interpreteer ik getallen als "10x beter dan processor X" als marketing - als ze nu met benchmarks zouden komen, dat zou al geloofwaardiger zijn. er zijn nogal makkelijk applicaties te bedenken die het op een architectuur als deze veel beter doen dan op een "gewone" CPU zoals de Intels en AMDs.

en misschien wel het belangrijkste punt voor dit soort processor architecturen is compiler-technologie. om dit soort kracht te benutten wil je compiler-ondersteuning hebben. daar liggen de echte uitdagingen de komende jaren, en dat geldt voor alle multi-core oplossingen. voor dit systeem ligt de lat nog hoger vanwege de reconfigurable logic. dit ding zal stukken lastiger te programmeren zijn dan de Cell processor, en die staat toch al niet bekend als makkelijk...
Anoniem: 182744 24 maart 2007 12:48
(off-topic) even over die titel. Raytheon is een onafhankelijke defensie-contracteur die ook wel is wat voor de private sector maakt. De titel slaat de plank dus een beetje mis... (off-topic)
Een beetje? Ik vind het nogal grof de plank mis slaan.
Weer zo'n typische T-net interpretatie.
In plaats van goed de bron lezen zelf maar wat neer pennen....
Weer zo'n typische T-net interpretatie.
In plaats van goed de bron lezen zelf maar wat neer pennen....
Amen. Zorgelijke ontwikkeling.
Anoniem: 140741 @regmaster24 maart 2007 14:47
Je moet ook vooral positief zijn over dit soort stukjes, want anders wordt je zo weggemod. (hrm, tweakers zijn net managers... :D )
Anoniem: 138336 24 maart 2007 19:48
"Amerikaanse leger ontwikkelt polymorfe chip"

Was dit soms op een basis in Silicon Valley? :+
Anoniem: 127714 26 maart 2007 06:30
@ alle FPGA's projecten:
Verbruik? :Z

Op dit item kan niet meer gereageerd worden.