De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

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

Verwante presentaties


Presentatie over: "Exploratie van de ontwerpruimte 1. Prestatiematen Prof. dr. ir. Dirk Stroobandt Academiejaar 2004-2005."— Transcript van de presentatie:

1 Exploratie van de ontwerpruimte 1. Prestatiematen Prof. dr. ir. Dirk Stroobandt Academiejaar

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

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

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

5 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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

6 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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

7 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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…

8 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen Prestatiematen in competitie 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 SizePerformance Power NRE cost Microcontroller CCD preprocessorPixel coprocessor A2D D2A JPEG codec DMA controller Memory controllerISA bus interfaceUARTLCD ctrl Display ctrl Multiplier/Accum Digital camera chip lens CCD Hardware Software

9 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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

10 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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)

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

12 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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

13 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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

14 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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

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

16 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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, Wh/kg = 6 – 10 kg Batterijtechnologie verbetert slechts langzaam Energie-afname van de batterij moet steeds verminderd worden

17 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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

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

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

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

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

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

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

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

25 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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”

26 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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.)

27 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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)

28 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen Conclusie: laag vermogen belangrijk Many mission- critical systems must run on battery- backup Lower power dissipation avoids the cost of heat sinks and fans Lower power systems allow you to meet more power standards Less complex systems are easier to develop and faster to take to market A processor that consumes less power enables longer battery life Longer Battery Life Low-power processors maximize board density Lower System Cost Higher Performance System Larger Target Market Faster Product Release Reliable Uninterruptible Operation

29 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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

30 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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

31 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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  m per “cubic foot” (ca. 28 liter) (open lucht: 10 9 tot deeltjes) Conventionele klasse 1: 1 deeltje > 0,5  m (nu klasse 100)

32 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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: D 0 = foutendensiteit A = chip oppervlakte M = technologie-afhankelijke parameter die verhoogt naarmate de technologie volwassener wordt

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

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

35 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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

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

37 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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.

38 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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.

39 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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.

40 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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.

41 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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.

42 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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.

43 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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.

44 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen Faling Faling is 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.

45 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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.

46 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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.

47 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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.

48 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen Ruis Kleinere afmetingen en kleinere signaalamplitudes: –Verminderde poortcapaciteiten Kleinere vertragingen Grotere gevoeligheid voor externe ruis –Ruismarges verkleinen Ruis probleem in verpakkingen en IC-ontwerp. V in V uit V IL V OL V OH V IH RHRH RLRL

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

50 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 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

51 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen Time-to-market: een veeleisende prestatiemaat Tijd nodig om een produkt te ontwikkelen tot het punt waarop het kan verkocht worden aan de klanten Marktvenster –Periode gedurende dewelke het produkt de hoogste verkoopscijfers kan halen Gemiddelde time-to- market is ca. 8 maanden Vertragingen zijn duur Revenues ($) Time (months)

52 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen Verlies door een vertraagde marktintroductie Vereenvoudigd omzetmodel –Produktlevenslijn 2W, piek op W –Tijd van marktintroductie definieert een driehoek die de marktpenetratie voorstelt –Oppervlakte van de driehoek is maat voor omzet Verlies –Het verschil tussen de oppervlakte van een tijdige en vertraagde introductiedriehoek On-time Delayed entry Peak revenue Peak revenue from delayed entry Market rise Market fall W2W Time D On-time Delayed Revenues ($)

53 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen Verlies door een vertraagde marktintroductie (vervolg) Oppervlakte = 1/2 * basis * hoogte –Tijdig = 1/2 * 2W * H –Vertraagd = 1/2 * (2W-D)*H* (W-D)/W Percentage omzetverlies = (D(3W-D)/2W 2 )*100% Sommige voorbeelden On-time Delayed entry Peak revenue Peak revenue from delayed entry Market rise Market fall W2W Time D On-time Delayed Revenues ($) –2W=52 wkn, vertraging D=4 wkn (4*(3*26 –4)/2*26^2)*100% = 22% –2W=52 wkn, vertraging D=10 wkn (10*(3*26 –10)/2*26^2)*100% = 50% –Vertragingen zijn duur!

54 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen NRE- en eenheidskostmaten Kosten: –Eenheidskost: de geldelijke kost om elke kopie van het systeem te produceren, zonder de NRE-kost –NRE-kost (Non-Recurring Engineering cost): De eenmalige geldelijke kost om het systeem te ontwerpen –totale kost = NRE-kost + eenheidskost * # eenheden –Kost per produkt = totale kost / # eenheden = (NRE-kost / # eenheden) + eenheidskost Voorbeeld –NRE=$2000, eenheidskost=$100 –Voor 10 eenheden –totale kost = $ *$100 = $3000 –Kost per produkt = $2000/10 + $100 = $300 Rekening houden met de NRE-kost voor de eenheden resulteert in een bijkomende kost van $200 per eenheid

55 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen NRE- en eenheidskostmaten Vergelijk technologieën op basis van kosten – de beste technologie hangt af van de hoeveelheden –Technologie A: NRE=$2,000, eenheidskost=$100 –Technologie B: NRE=$30,000, eenheidskost =$30 –Technologie C: NRE=$100,000, eenheidskost =$2 Maar men moet ook met time-to-market rekening houden!


Download ppt "Exploratie van de ontwerpruimte 1. Prestatiematen Prof. dr. ir. Dirk Stroobandt Academiejaar 2004-2005."

Verwante presentaties


Ads door Google