1 / 55

Exploratie van de ontwerpruimte 1. Prestatiematen

Exploratie van de ontwerpruimte 1. Prestatiematen. Prof. dr. ir. Dirk Stroobandt Academiejaar 2004-2005. Ontwerptraject. Simulatie en Verificatie. Systeemspecificatie. Architectuurexploratie. Platformontwerp. Hardware/software-partitionering. HW. SW. Analoog

bella
Télécharger la présentation

Exploratie van de ontwerpruimte 1. Prestatiematen

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Exploratie van de ontwerpruimte1. Prestatiematen Prof. dr. ir. Dirk Stroobandt Academiejaar 2004-2005

  2. Ontwerptraject Simulatie en Verificatie Systeemspecificatie Architectuurexploratie Platformontwerp Hardware/software-partitionering HW SW Analoog ontwerp Software- compilatie Hardware-ontwerp Communicatie Hoogniveausynthese Interface- synthese Component- selectie Logisch ontwerp Fysisch ontwerp Testing Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  3. Gelaagd ontwerp van ingebedde systemen Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  4. Exploratie van de ontwerpruimte • Nodig: • Niveautransformaties: DP(n-1)  DP(n) • Ontwerptransformaties: DP(n)  DP’(n) • Analyse-tools • Exploratie-omgeving Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  5. Inhoud (deel 1) Inleiding over Ingebedde systemen, System-on-Chip en Platform-gebaseerd ontwerp Systeemspecificatietechnieken Exploratie van de ontwerpruimte • Prestatiematen • De hardware/software-grens • Prototypes, emulatie en simulatie Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  6. Uitdaging: optimaliseren van prestatiematen in het ontwerp • Gebruikelijke prestatiematen • Eenheidskost: de geldelijke kost om elke kopie van het system te produceren, met uitzondering van de ontwerpkost (NRE-kost) • NRE-kost (Non-Recurring Engineering): De eenmalige geldelijke kost om een systeem te ontwerpen • Grootte: de fysieke ruimte nodig voor het systeem • Prestatie: de uitvoeringstijd of gegevensdoorvoer (throughput) van het systeem • Vermogen: de energie verbruikt door het systeem per tijdseenheid • Flexibiliteit: de mogelijkheid om de functionaliteit van het systeem te wijzigen zonder belangrijke NRE-kost Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  7. Uitdaging: optimaliseren van prestatiematen in het ontwerp • Gebruikelijke prestatiematen (vervolg) • Time-to-prototype: de tijd nodig om een eerste werkende versie van het systeem te bouwen • Time-to-market: de tijd nodig om het systeem te ontwikkelen tot het punt waarbij het vrijgegeven en verkocht kan worden aan klanten • Onderhoudbaarheid: de mogelijkheid het systeem te wijzigen na de initiële release • Correctheid, veiligheid, en zoveel meer… Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  8. Expertise nodig in zowel software als hardware om prestatiematen te optimaliseren Een ontwerper moet verschillende technologiën beheersen om in staat te zijn de beste te kiezen voor bepaalde applicaties en beperkingen Prestatiematen in competitie Power Digital camera chip CCD Performance Size CCD preprocessor Pixel coprocessor D2A A2D lens NRE cost JPEG codec Microcontroller Multiplier/Accum DMA controller Display ctrl Memory controller ISA bus interface UART LCD ctrl Hardware Software Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  9. Inhoud (deel 1) Inleiding over Ingebedde systemen, System-on-Chip en Platform-gebaseerd ontwerp Systeemspecificatietechnieken Exploratie van de ontwerpruimte • Prestatiematen • Oppervlakte • Snelheid • Vermogen • Fabriceerbaarheid • Betrouwbaarheid • Time-to-Market, kost • De hardware/software-grens • Prototypes, emulatie en simulatie Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  10. Oppervlakte • Op architectuurniveau: efficiënt gebruik van berekenelementen en andere blokken • 1 of verschillende processoren nodig • Geheugenbanken • Dedicated hardware (klein en snel maar duur) of general-purpose-architectuur (groot, trager maar goedkoop) • Op implementatieniveau: afweging ruimte-tijd • 100 opeenvolgende bewerkingen in serie of parallel? • Ingewikkelder berekenblok te hergebruiken of voor elke afzonderlijke bewerking ander blok (vb.: optellen en aftrekken) Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  11. Oppervlakte: interconnecties Nu: standaardcelontwerp met interconnectielagen • Vroeger: standaardcel- • ontwerp met kanalen Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  12. Inhoud (deel 1) Inleiding over Ingebedde systemen, System-on-Chip en Platform-gebaseerd ontwerp Systeemspecificatietechnieken Exploratie van de ontwerpruimte • Prestatiematen • Oppervlakte • Snelheid • Vermogen • Fabriceerbaarheid • Betrouwbaarheid • Time-to-Market, kost • De hardware/software-grens • Prototypes, emulatie en simulatie Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  13. De snelheid als prestatiemaat • Vaak gebruikte en misbruikte prestatiematen • Klokfrequentie, instructies per seconde – geen goede maten • Voorbeeld digitale camera: een gebruiker is veel meer geïnteresseerd in hoe snel de beelden verwerkt worden • Latentie (of antwoordtijd) • Tijd tussen het begin en einde van een taak • vb.: Camera’s A en B verwerken beelden in 0,25 seconden • Throughput • Taken per seconde. Vb.: Camera A verwerkt 4 beelden per seconde • De throughput kan groter zijn dan de latentie laat vermoeden door gelijktijdigheid van bewerkingen. Vb.: Camera B verwerkt 8 beelden per seconde (door een nieuw beeld te nemen terwijl het vorige beeld opgeslagen wordt). • Versnelling (Speedup) van B over A = B’s prestatie / A’s prestatie • Throughput speedup = 8/4 = 2 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  14. Inhoud (deel 1) Inleiding over Ingebedde systemen, System-on-Chip en Platform-gebaseerd ontwerp Systeemspecificatietechnieken Exploratie van de ontwerpruimte • Prestatiematen • Oppervlakte • Snelheid • Vermogen • Fabriceerbaarheid • Betrouwbaarheid • Time-to-Market, kost • De hardware/software-grens • Prototypes, emulatie en simulatie Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  15. Het belang van vermogen • Draagbare systemen: batterijen • Warmte-ontwikkeling • Betrouwbaarheidseisen • Milieu Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  16. Draagbare systemen • Belangrijkste drijfveer voor laagvermogenontwerp: draagbare systemen • Notebooks, palm-tops, PDA, GSM, enz. • Batterijgevoed: • lange levensduur van de batterij cruciaal • Systeemkost en gewicht worden beïnvloed door de batterijen • 40 W, 10 uur @ 40-70 Wh/kg = 6 – 10 kg • Batterijtechnologie verbetert slechts langzaam • Energie-afname van de batterij moet steeds verminderd worden Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  17. Vermogen = warmte-ontwikkeling • Meeste energie gedissipeerd als warmte • 10°C toename gebruikstemperatuur = dubbele faalkans voor componenten • Verpakking: keramisch i.p.v. plastiek • Koeling wordt belangrijker • Toenemende intergatiedichtheid en kloksnelheid verergeren het probleem • 10 cm², 500 MHz => 315 W Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  18. Totale vermogen neemt toe Bron: Intel Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  19. Aandeel van lekstromen in vermogen Bron: Intel Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  20. Vermogendensiteit Bron: Intel Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  21. Vermogen en verpakking Bron: Intel Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  22. Vermogen en oppervlakte Bron: Intel Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  23. Vermogen en oppervlakte Bron: Intel Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  24. Vermogen = betrouwbaarheidsproblemen • Betrouwbaarheidsproblemen • Electromigratie • Resistive spanningsdalingen op voedingslijnen (IR drops) • Inductieve effecten • Hangen samen met piek- en gemiddeld vermogenverbruik Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  25. Vermogen = druk op milieu • Rekening houden met het milieu • Schatting door EPA (USA): 80% van de elektriciteit voor kantoortoestellen gebruikt door computers • “Energy Star”-programma voor vermogenefficiënte PCs • Vermogenbeheer wordt nu standaard gebruikt in desktops en laptops • Er is een trend richting “Groene PC” Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  26. Bronnen van vermogenverbruik • Vier termen Dynamische dissipatie door schakelen transistoren C = totale capaciteit V = spanningszwaai f = schakelfrequentie • = activiteitsfactor Statische dissipatie door DC-stroom (tijdelijk/perm.) Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  27. Bronnen van vermogenverbruik • Vier termen Kortsluitdissipatie door kortsluitingen tussen grond en voedingsspanning bij overschakelen van transistoren Lekdissipatie door stromen in het substraat en sub-drempelstromen (afhankelijk van de technologie) Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  28. Conclusie: laag vermogen belangrijk FasterProductRelease A processorthat consumesless power enables longerbattery life Less complex systems are easier to develop and faster to take to market Many mission- critical systems must run on battery-backup LongerBatteryLife ReliableUninterruptibleOperation Lower powerdissipation avoids the cost of heat sinks and fans Lower power systems allow you to meet more power standards Low-power processors maximize board density LowerSystemCost LargerTargetMarket HigherPerformanceSystem Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  29. Inhoud (deel 1) Inleiding over Ingebedde systemen, System-on-Chip en Platform-gebaseerd ontwerp Systeemspecificatietechnieken Exploratie van de ontwerpruimte • Prestatiematen • Oppervlakte • Snelheid • Vermogen • Fabriceerbaarheid • Betrouwbaarheid • Time-to-Market, kost • De hardware/software-grens • Prototypes, emulatie en simulatie Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  30. Fabriceerbaarheid (yield) • Verschillende chips op één wafel (wafer) • Van 200 naar 300 mm diameter (o.a. IMEC): meer dan dubbel zoveel chips in één processtap • Meeste IC’s tussen 25 en 200 mm² • Enkele 100en tot een paar 1000 IC’s per wafel • Prijs per IC bepaald door FGDW (Functionally Good Dies per Wafer) • Yield = aantal IC’s is niet goed • Voldoen niet aan specificaties bij test • Bijkomend verlies bij verpakken Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  31. Fabriceerbaarheid (yield) • Oorzaken van yieldproblemen: • Temperatuurfluctuaties beïnvloeden beeldvorming lithografiestap • Vochtigheid laat photoresist minder hechten • Vibraties zorgen voor onnauwkeurige patronen • Fotolithografisch proces gevoelig voor UV-licht (daarom gele kamer) • Stofdeeltjes zijn belangrijke oorzaak van fouten • Clean-roomklasses • Klasse 1: minder dan 1 stofdeeltje groter dan 0,1 mm per “cubic foot” (ca. 28 liter) (open lucht: 109 tot 1010 deeltjes) • Conventionele klasse 1: 1 deeltje > 0,5 mm (nu klasse 100) Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  32. Fabriceerbaarheid (yield) • Oorzaken van yieldproblemen (vervolg): • Elektrostatische lading trekt stofdeeltjes aan • Elektrostatische ontladingen (ESD) als gevolg van ladingsopstapeling • De zuiverheid van chemicaliën • Yield vooraleer testen: D0 = foutendensiteit A = chip oppervlakte M = technologie-afhankelijke parameter die verhoogt naarmate de technologie volwassener wordt Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  33. Yield verbetert met de tijd Bron: Intel Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  34. Controlepunten voor yield Bron: Intel Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  35. Inhoud (deel 1) Inleiding over Ingebedde systemen, System-on-Chip en Platform-gebaseerd ontwerp Systeemspecificatietechnieken Exploratie van de ontwerpruimte • Prestatiematen • Oppervlakte • Snelheid • Vermogen • Fabriceerbaarheid • Betrouwbaarheid • Time-to-Market, kost • De hardware/software-grens • Prototypes, emulatie en simulatie Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  36. Betrouwbaarheid • Op architectuurniveau: • Fouten vermijden • Fouten herstellen • Fouten tolereren • Fouten voorspellen • Op implementatieniveau: • Ruis • Overspraak Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  37. Fouten vermijden • Er bestaan verschillende ontwerps-tools en –technieken om ontwerpsfouten te vermijden. • Elke vermeden fout moet later niet meer behandeld worden. • Technieken: ontwerpsmethodologieën, verificatie- en validatiemethodologieën, modellering en code-inspecties. Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  38. Fouten herstellen • Gebruikt verificatie- en testtechnieken om fouten te lokaliseren en de nodige veranderingen aan het systeem aan te brengen. • Technieken: enkelvoudige testen en geïntegreerde testen. • Het is over het algemeen veel duurder een fout te herstellen dan ze te vermijden. Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  39. Fouttolerantie • Een systeem met fouttolerantie zal blijven werken, eventueel op verminderde kracht, wanneer fouten optreden. • Fouttolerantie wordt informeel gedefiniëerd als de mogelijkheid van een systeem om de verwachte diensten te kunnen leveren, zelfs als er fouten optreden. • Om fouttolerant te zijn, moet een systeem in staat zijn fouten te detecteren, een foutdiagnose te stellen, de fouten te lokaliseren, te maskeren en te compenseren en zichzelf te herpakken na het optreden van fouten. Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  40. Foutvoorspelling • Het is mogelijk het gedrag van een systeem te observeren en die informatie te gebruiken om actie te ondernemen om fouten te compenseren vooraleer ze optreden. • Als een systeem afwijkt van zijn normale gedrag, ook al voldoet het nog steeds aan de specificaties, kan het aangewezen zijn het systeem te herconfigureren om de druk op een onderdeel met hoge foutkans te verminderen. Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  41. Betrouwbaarheid bereiken - Conclusie • Fouten vermijden en fouttolerantie kunnen gezien worden als het nastreven van betrouwbaarheid: hoe zorg ik ervoor dat het systeem de gespecificeerde taken zeker kan uitvoeren. • Fouten herstellen en foutvoorspelling kunnen gezien worden als het valideren van betrouwbaarheid: hoe overtuigd geraken van de mogelijkheid van het systeem om de gespecificeerde taken uit te voeren. Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  42. Fouttypes – gebaseerd op de duur • Permanente fouten worden veroorzaakt door onomkeerbare fouten binnenin een component door schade, vermoeidheid of slechte productie. Eens een permanente fout opgetreden is, moet de foutief werkende component vervangen of hersteld worden. • Overgangsfouten worden veroorzaakt door omgevingsstoringen zoals spanningsfluctuaties, elektromagnetische interferentie of straling. Deze gebeurtenissen zijn typisch van korte duur en de getroffen componenten kunnen naar hun normale toestand terugkeren zonder blijvende schade. Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  43. Fouttypes – gebaseerd op de duur (verolg) • Herhaalde fouten (intermittent) veroorzaken een oscillatie tussen periodes van foutieve werking en van correcte werking. Ze zijn vaak het gevolg van ontwerpsfouten en resulteren in ondergeschikte of onstabiele hardware. • Voorbeeld: fout door een losse draad. Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  44. Faling • Falingis de onkunde van een systeem om de toegewezen functie uit te voeren. • Indeling in klassen volgens twee gezichtspunten: • Falingsmodaliteiten: • Falingsgecontroleerd: de manier van falen werd gespecifiëerd en het systeem beantwoordt aan die specificatie. • Falingsongecontroleerd: de manier van falen voldoet niet aan de specificatie of werd niet gespecifiëerd. • Ernst van falen: • goedaardige faling: wanneer de gevolgen van de faling van dezelfde grootte-orde zijn als de voordelen van een normale werking. • Katastrofale faling: wanneer de gevolgen niet te vergelijken zijn met de voordelen van een normale werking. Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  45. Graceful Degradation • Als een gespecifieerd foutscenario optreedt, moet het systeem nog steeds een gespecifieerd dienstenniveau hebben. Als meer fouten optreden dan in de fouthypothese werd gespecifieerd dan moet het systeem, soms, in schoonheid eindigen. Dit betekent dat het systeem niet ineens mag falen als het aantal fouten toeneemt. Het zou eerder een deel van het werk nog moeten uitvoeren. Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  46. Kwalitatieve betrouwbaarheidsmaten • Falingsveilig: Ontwerp het systeem zo dat er een of meer veilige toestanden bestaan waarin het systeem terechtkomt wanneer het in faling gaat.Voorbeeld: Een signaalsysteem voor spoorwegen waarbij alle treinen kunnen gestopt worden wanneer het systeem faalt.. • Falingsoperationeel: Ontwerp het systeem zo dat, wanneer het een bepaalde hoeveelheid fouten te verwerken krijgt, het toch een deel van de gespecifieerde service biedt. In dergelijk systeem kunnen geen veilige staten geïdentificeerd worden. Voorbeeld: Een vluchtcontrolesysteem waarbij het systeem een minimale dienst moet leveren, zelfs in geval van faling. Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  47. Kwalitatieve betrouwbaarheidsmaten (vervolg) • Geen enkelvoudig falingspunt • Ontwerp het systeem zo dat een faling van eender welke component op zijn eentje geen faling van het systeem kan veroorzaken. • Consistentie • Ontwerp het systeem zo dat alle informatie die door het systeem naar buiten gebracht wordt equivalent is aan de informatie die een correct werkend systeem naar buiten zou brengen. Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  48. Ruis Vuit VOH RH RL VOL VIL VIH Vin • Kleinere afmetingen en kleinere signaalamplitudes: • Verminderde poortcapaciteiten • Kleinere vertragingen • Grotere gevoeligheid voor externe ruis • Ruismarges verkleinen • Ruis probleem in verpakkingen en IC-ontwerp. Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  49. Overspraak • Koppeling tussen nabijgelegen circuits of verbindingen: • Resultaat van mutuele capaciteiten en inductanties tussen buurverbindingen Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

  50. Inhoud (deel 1) Inleiding over Ingebedde systemen, System-on-Chip en Platform-gebaseerd ontwerp Systeemspecificatietechnieken Exploratie van de ontwerpruimte • Prestatiematen • Oppervlakte • Snelheid • Vermogen • Fabriceerbaarheid • Betrouwbaarheid • Time-to-Market, kost • De hardware/software-grens • Prototypes, emulatie en simulatie Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen

More Related