Ontwerpmethodologie van Complexe Systemen Prof dr ir Dirk


































































- Slides: 66
Ontwerpmethodologie van Complexe Systemen Prof. dr. ir. Dirk Stroobandt Academiejaar 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen
Gegevens over cursus Bedoeling van de cursus: – – Methodologie ontwerp ingebedde systemen aanleren Beschrijving van de ontwerpsstappen op topniveau Bovenbouw bij verschillende andere cursussen Achtergrond om hardware-project te kunnen maken Organisatie: – Volledig nieuw vak • Nog geen cursusnota´s, wel transparanten • Copies uit Engelstalige boeken als achtergrondinformatie • Eventueel eens een recent onderzoeksartikel – 24 lessen ex-cathedra (vrijdag 8 u 30 – 11 u 30) – Oefeningensessies en practica (woensdagnamiddag) – Mogelijk bijkomende gastvoordracht 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 2
Gegevens over cursus Quotering: – Permanente evaluatie tijdens oefeningensessies – Schriftelijk examen met oefeningen – Mondeling theorie-examen aan bord Apparatuur en ondersteuning: – CAD-software op ELIS – Begeleiding: • Wim Meeus, Michiel Dhaene en Jan De Ceuster Spreekuur: vrijdag 14 u 00 – 15 u 00 Informatieverspreiding: – – Alles via Minerva (gebruik ook het forum voor vragen) E-mail algemeen: OCS@elis. ugent. be E-mail theorievragen: dstr@elis. ugent. be Telefoon: 09 264 34 01 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 3
Inhoud (deel 1) Inleiding over Ingebedde systemen, System-on-Chip en Platformgebaseerd ontwerp Systeemspecificatietechnieken – Functionele specificaties – Specificatietalen Exploratie van de ontwerpruimte – Prestatiematen – De hardware/software-grens – Prototypes, emulatie en simulatie 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 4
Inhoud (deel 2) Het belang van interconnecties Het belang van ingebed geheugen Het voorspellen van prestaties Architecturen voor complexe systemen – Processorarchitecturen – Herconfigureerbare hardware – Hergebruik van IP-kernen Interfaces en interface-ontwerp 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 5
Inhoud (deel 1) Inleiding over Ingebedde systemen, System-on-Chip en Platformgebaseerd ontwerp – – Ingebedde systemen Systemen-op-Chip en Hergebruik Platformgebaseerd ontwerp Karakteristieken van ingebedde systemen – Toepassingsdomeinen – Ontwerpstappen voor ingebedde systemen Systeemspecificatietechnieken Exploratie van de ontwerpruimte 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 6
Definitie ingebed systeem • Ingebedde systemen zijn informatieverwerkingssystemen die ingebed worden in een groter geheel. • Valt niet meer op: “disappearing computer” • Eigenlijk zal de computer overal zijn: – Ubiquitous computing – Pervasive computing – Ambient intelligence 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 7
Overzicht ingebedde systemen • Computersystemen zijn alomtegenwoordig • We denken meestal aan “desktop” computers – – PC’s Laptops Mainframes Servers • Maar er is een ander type computersysteem – Komt veel meer voor. . . Bron: Frank Vahid, UC Riverside 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 8
Overzicht ingebedde systemen Voorbeelden: Belangrijkste koopreden is niet informatieverwerking Bron: Peter Marwedel, Uni Dortmund 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 9
Jaarlijkse verkoop microprocessoren Computers voor algemeen gebruik (PCs, werkstations, mainframes) 95% 5% Ingebedde systemen (draagbare telefoons, camcorders, wasmach. ) Bron: Henk Corporaal, TU Eindhoven 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 10
Componenten van Ingebedde Systemen -processor DSP Sensor A/D Actuator D/A ASIC 2004 -2005 MEMS Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 11
Vroege geschiedenis • Late 1940’s: MIT Whirlwind computer ontworpen voor ware-tijdsoperaties. – Oorspronkelijk ontworpen voor een vluchtsimulator. • Eerste microprocessor was de Intel 4004 in de vroege 1970’s. • HP-35 rekenmachine gebruikte in 1972 verschillende chips om een microprocessor te implementeren. 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 12
Vroege geschiedenis, vervolg • Autos kregen microprocessor-gebaseerde motorcontrole-eenheden begin de jaren ‘ 70. – Controle van brandstof/lucht-mengsel, motorregeling, enz. – Verschillende toestanden: opwarmen, rijden, klimmen, enz. – Zorgt voor lagere CO 2 -uitstoot, lager brandstofgebruik. 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 13
Tweede trend: System-on-a-Chip (So. C) Gisteren en Vandaag ASIContwerp Fysische Componenten Systeem-Bord. Integratie • Platformgebaseerd ontwerp Vandaag en Morgen Ontwerp van IP-blokken 2004 -2005 Virtuele Componenten • Hergebruik (IP) Systeem-Chip Integratie Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 14
Wat is So. C • Definitie: Een complexe IC die de belangrijkste functionele elementen van een compleet eindproduct integreert in een enkele chip of chipset. • Bevat in het algemeen: – – – Programmeerbare processor On-chip geheugen Hardwareversnellers Interface met omgevingsapparaten en de omgeving Zowel HW als SW Vaak ook analoge componenten en/of MEMS 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 15
Evolutie van So. C-ontwerp • Gestart midden jaren ’ 90 (. 35 en. 25 mm) • Gegroeid met Moore’s Law – Aantal transistoren op een chip verdubbelt elke 18 maanden 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 16
Moore’s law Let op de logaritmische schaal! 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 17
Moore’s law • Waaw – Dergelijke groei is moeilijk voor te stellen; de meeste mensen onderschatten dit – Vergelijk: Hoeveel voorouders van 20 generaties geleden heb je? • d. i. , ongeveer hoeveel mensen uit de jaren 1500 waren er nodig om jou te maken? • 220 = meer dan 1 miljoen mensen – (Deze onderschatting is de basis van de pyramide-spelen!) – Grafisch: 1981 1984 1987 1990 1993 1996 1999 2002 10, 000 transistoren 150, 000 transistoren Toonaangevende chip in 1981 Toonaangevende chip in 2002 2004 -2005 Bron: Frank Vahid, UC Riverside Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 18
Ontwerpskloof • Alhoewel de produktiviteit van ontwerpers gedurende de laatste decenia indrukwekkend gegroeid is, heeft de mate van verbetering de snelle groei van de chipcapaciteit niet kunnen volgen – Complexiteit: 40%/jaar [ 106 T/chip ] – Produktiviteit ontwerp: 15%/jaar 250 200 150 100 50 1995 1998 2001 2004 2007 [ SIA roadmap ] Bron: Frank Vahid, UC Riverside / Francky Catthoor, KU Leuven 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 19
Ontwerpskloof • 1981: toonaangevende chip vereist 100 persoonsmaanden – 10. 000 transistoren / 100 transistoren/maand • 2002: toonaangevende chip vereist 30. 000 persoonsmaanden – 150. 000 / 5000 transistoren/maand SEMATECH Design Investment Roadmap (spec to tapeout): 1995. 35 mm 5. 1 MTr 362 PY 1998. 25 mm 20. 2 MTr 818 PY $51 M $114 M 2001. 18 mm 81. 3 MTr 1846 PY $256 M Bron: Frank Vahid, UC Riverside 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 20
De mythische persoonsmaand • De situatie is zelfs slechter dan de produktiviteitskloof stelt • In theorie: toevoegen ontwerper vermindert afwerkingstijd van project • In realiteit: produktiviteit per ontwerper daalt als gevolg van de complexiteit van team management en communicatie • In de software-wereld bekend als “the mythical man-month” (Brooks 1975) • Vanaf een bepaald punt: contra-produktief 60000 50000 40000 30000 20000 16 15 16 19 0 18 23 24 43 Team Maanden tot afwerking Individueel persoon 10 20 30 Aantal ontwerpers 40 Bron: Frank Vahid, UC Riverside 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 21
Ontwerp op systeemniveau Oplossing • Verhoog het abstractieniveau • Uitvoerbare specificaties • Verfijn tot RT-VHDL/C • Hergebruik van gedrags-IP (SW+HW) Bron: Francky Catthoor, KU Leuven 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 22
DSM veroorzaakt verschuiving 90 % nieuwe ontwerpen Celgebaseerd ontwerp • min(oppervlakte) • max(prestaties) • optimiseer poortniveau 1991 2004 -2005 Virtuele componenten • min(ontwerptijd) • max(IP hergebruik) • optimiseer systeemniveau 1996 90 % hergebruikte ontwerpen 2001 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 23
Kost van hergebruik 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 24
Hergebruik schaalt ook • Ook IP-hergebruik kan met de technologie meeschalen: compactie 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 25
Evolutie van So. C-ontwerp • • Economische motieven (lage kosten) Hergebruik van IP VSIA – Virtual Socket Interface Alliance (’ 96) Reuse Methodology Manual (Mentor Graphics en Synopsys, ’ 98) • Alba-project in Schotland (’ 97 -’ 99): overheid-industrieuniversiteiten (ook in andere landen opgestart) • Verminderde eind jaren ’ 90 door hoge kosten ASIC’s en te snelle groei (geen methodologie en infrastructuur, geen tools) • Commercieel nooit hoge ogen, wel intern in grote bedrijven 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 26
Evolutie van So. C-ontwerp • Opkomst van platform-gebaseerd ontwerp • VSIA-definitie: – Platform = een geïntegreerde set van gemeenschappelijke eigenschappen waarop een set van producten gebouwd kan worden. Een platform is een virtuele component (VC). – Platform-gebaseerd ontwerp = integratiegeoriënteerde ontwerpsmethode met nadruk op systematisch hergebruik voor het ontwikkelen van complexe producten gebaseerd op platformen en compatibele HW en SW VCs, met het doel de ontwikkelrisico’s en –kosten en de time-to-market te verminderen. 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 27
Platformgebaseerd ontwerp • Evolutie naar platformgebaseerd ontwerp Timing-Driven Design (TDD) Block-Based Design (BBD) m. Pcore SRAM ROM Platform-Based Design (PBD) m. Pcore ROM ATM ROM ASIC 2004 -2005 Soft I/F IP Complexe ASIC met enkele IPs Dcache I/F Logica SRAM MPEG RAM Logic Plug-and-Play Systeem-op-Chip Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 28
Evolutie van So. C-ontwerp: toekomst • SW-compilatie naar HW – HP: Program-In, Chip-Out (PICO) project – UC Berkeley: GARP – ARC Cores en Tensilica: instructie-configuratie van ingebedde processor-cores • Xilinx Virtex II Platform en Altera System-on-a. Programmable Chip (SOPC) • Networks-on-Chips • Systeemontwerp evolueert meer en meer naar SW-ontwerp 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 29
Inhoud (deel 1) Inleiding over Ingebedde systemen, System-on-Chip en Platformgebaseerd ontwerp – – Ingebedde systemen Systemen-op-Chip en Hergebruik Platformgebaseerd ontwerp Karakteristieken van ingebedde systemen – Toepassingsdomeinen – Ontwerpstappen voor ingebedde systemen Systeemspecificatietechnieken Exploratie van de ontwerpruimte 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 30
Karakteristieken van ingebedde systemen (1) • Moeten betrouwbaar zijn: • Betrouwbaarheid (Reliability R(t)) = probabiliteit dat een systeem nog correct werkt als het werkte op t=0 • Onderhoudbaarheid (Maintainability M(d)) = probabiliteit dat een systeem correct werkt d tijdseenheden na het optreden van een fout. • Beschikbaarheid (Availability): probabiliteit dat een systeem werkt op tijdstip t • Veiligheid (Safety): er mag geen schade veroorzaakt worden • Beveiliging (Security): confidentieel en authenticatie • Zelfs perfect ontworpen systemen kunnen falen als de veronderstellingen over de werklast en mogelijke fouten foutief blijken te zijn. Bron: Peter Marwedel, Uni Dortmund 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 31
Karakteristieken van ingebedde systemen (2) • Moeten efficiënt zijn in – – – Energie (vermogen) Code-grootte (vooral voor So. C) Verwerkingstijd Gewicht Kost • Zijn toegewijd voor een specifieke toepassing Kennis over het gedrag kan bij de ontwerpfase gebruikt worden om middelen te besparen en de robuustheid te verhogen • Vaste user interface (geen muis, toetsenbord en scherm) Bron: Peter Marwedel, Uni Dortmund 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 32
Karakteristieken van ingebedde systemen (3) • Zeer vaak ware-tijdseisen – Een ware-tijdsysteem moet reageren op stimuli van het controllerende object (of de operator) binnen het tijdsinterval opgelegd door de omgeving. – Voor ware-tijdsystemen zijn juiste oplossingen die te laat komen ook fout. – „Een ware-tijdsbeperking noemt men hard als het niet naleven van de beperking tot een catastrofe kan leiden “ [Kopetz, 1997]. Vb: vliegtuigcontrole – Alle andere ware-tijdseisen worden zacht genoemd. Vb. : video on demand – Een gegarandeerde systeemreactie moet uitgelegd worden zonder statistische argumenten Bron: Peter Marwedel, Uni Dortmund 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 33
Karakteristieken van ingebedde systemen (4) • Vaak voor gesofistikeerde of verschillende algoritmen (GSM, laserprinter). • Vaak verbonden met de fysieke omgeving door sensoren en actuatoren. • Hybriede systemen (analoog + digitaal). • ES zijn typisch reactieve systemen: „Een reactief systeem is er een dat in voortdurende interactie staat met de omgeving en taken uitvoert aan een ritme opgelegd door die omgeving “ [Bergé, 1995] Gedrag hangt af van de input en de huidige toestand. automatenmodel is geschikt, model van berekenbare functies niet. Bron: Peter Marwedel, Uni Dortmund 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 34
Karakteristieken van ingebedde systemen (5) • ES zijn ondergerepresenteerd in onderwijs en publieke discussies: „Embedded chips aren‘t hyped in TV and magazine ads. . . [Mary Ryan, EEDesign, 1995] • Niet elk ES heeft alle karakteristieken van hiervoor. • Def. : Informatieverwerkingssystemen die de meeste van bovenstaande karakteristieken hebben worden ingebedde systemen genoemd. Bron: Peter Marwedel, Uni Dortmund 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 35
Ingebedde systemen en ubiquitous computing • Ingebedde systemen leveren fundamentele technologie voor ubiquitous computing (Informatie gelijk wanneer, gelijk waar). Quality of Service Optische netwerken Netwerkmanagement Gedistribueerde toepassingen Netwerkdiensten UMTS, Hiperlan, ATM Ware tijd Betrouwbaarheid Communicatietechnologie Ingebedde systemen Robots Controlesystemen Kenmerkextractie en –herkenning Sensoren, actuatoren A/D-converteren Pervasive/Ubiquitous computing Gedistribueerde systemen Ingebedde websystemen 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 36
Toepassingsdomeinen (1) • Auto-elektronica • Vliegtuigelektronica • Treinen • Telecommunicatie 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 37
Toepassingsdomeinen (2) • Medische systemen • Militair • Authentificatie 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 38
Toepassingsdomeinen (3) • Verbruikselektronica • Fabricageelektronica • Slimme gebouwen 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 39
Toepassingsdomeinen (4) • Robotica Robot „Johnnie“ (Courtesy and ©: H. Ulbrich, F. Pfeiffer, TU München) „Pipe-climber“ 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 40
Toepassingsdomeinen (5) • Simpele controle: voorpaneel van een microgolfoven, enz. • Canon EOS 3 heeft drie microprocessoren. – 32 -bit RISC CPU zorgt voor autofocus. • Analoge TV: kanaalselectie, enz. • Digitale TV: programmeerbare CPUs + vaste logica. • Huidige auto’s hebben tot 100 microprocessoren: – 4 -bit microcontroller controleert stoelriem; – microcontrollers sturen dashbord-eenheden aan; – 16/32 -bit microprocessor controleert motor. 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 41
Motivatie voor deze cursus (1) • Groeiend economisch belang van ingebedde systemen –. . but embedded chips form the backbone of the electronics driven world in which we live. . . they are part of almost everything that runs on electricity [Mary Ryan, EEDesign, 1995] – 79% van alle nieuwe processoren worden gebruikt in ingebedde systemen – DE groeipool volgens alle voorspellingen 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 42
Motivatie voor deze cursus (2) • Basis voor de “post PC era” • ES nauwelijks bediscussieerd in andere cursussen • ES belangrijk voor de universiteit • ES belangrijk voor Europa • Brede blik: zet de context voor meer gespecializeerde cursussen • Domein in volle ontwikkeling: nog veel onderzoekswerk mogelijk 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 43
Inhoud (deel 1) Inleiding over Ingebedde systemen, System-on-Chip en Platformgebaseerd ontwerp – – Ingebedde systemen Systemen-op-Chip en Hergebruik Platformgebaseerd ontwerp Karakteristieken van ingebedde systemen – Toepassingsdomeinen – Ontwerpstappen voor ingebedde systemen Systeemspecificatietechnieken Exploratie van de ontwerpruimte 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 44
Ontwerpmethodologie • Een procedure om systemen te ontwerpen. • De methodologie begrijpen helpt je om niets over te slaan. • Compilers, software-ontwikkeltools, computergesteund ontwerp (CAD) tools, enz. , kunnen gebruikt worden om – de methodologiestappen te helpen automatiseren; – het overzicht te bewaren op de methodologie zelf. 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 45
Top-down vs. bottom-up • Top-down-ontwerp: – Starten van de meest abstracte beschrijving; – Werken naar het meest gedetailleerde. • Bottom-up-ontwerp: – Werken van kleine componenten naar een groot systeem. • Echte ontwerpen gebruiken beide technieken. 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 46
Stapsgewijze verfijning • Op elk abstractieniveau, moeten we – het ontwerp analyseren om de karakteristieken van de huidige toestand van het ontwerp te bepalen; – het ontwerp verfijnen om detail toe te voegen. 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 47
Ontwerptraject Systeemspecificatie Architectuurexploratie Platformontwerp Hardware/software-partitionering HW Hardware-ontwerp 2004 -2005 SW Softwarecompilatie Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 48
Systeemspecificatie • Beschrijft functionaliteit en prestatie-eisen (snelheid, vermogen, kost, …). • Vaak: ware-tijd-systemen • Zowel HW als SW. Welke taal? – VHDL, C, C++, JAVA? – Formele beschrijvingstaal (UML). – Plethora aan beschrijvingstalen. – System. C wordt standaard. 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 49
Ontwerptraject Systeemspecificatie Architectuurexploratie Platformontwerp Hardware/software-partitionering HW Hardware-ontwerp 2004 -2005 SW Softwarecompilatie Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 50
Architectuurexploratie • Uit de veelheid aan implementatiemogelijkheden deze zoeken die zo goed mogelijk voldoen aan de vereisten. – Laag vermogenverbruik – Zo goedkoop mogelijk Vereist ontwerpsbibliotheken. • Belangrijk: prestatieschattingen in HW en SW - uitvoeringstijd / geheugengebruik - oppervlakte / vermogenverbruik • Snelle schattingen / gradueel verfijnen. �-prom-processor 2 ARM DSP Virtuele HWASIC component 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 51
Ontwerptraject Systeemspecificatie Architectuurexploratie Platformontwerp Hardware/software-partitionering HW Hardware-ontwerp 2004 -2005 SW Softwarecompilatie Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 52
Platformontwerp • Hergebruik van ontwerpstappen voor familie van produkten Definieer platformmethodologie 1 x uitvoeren Produceer het platform Definieer afgeleide ontwerpmethodologie vele x uitvoeren 2004 -2005 Ontwerp afgeleide produkten Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 53
Ontwerptraject Systeemspecificatie Architectuurexploratie Platformontwerp Systeemontwerp Hardware/software-partitionering HW Hardware-ontwerp 2004 -2005 SW Softwarecompilatie Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 54
Ontwerptraject Systeemspecificatie Architectuurexploratie Platformontwerp Hardware/software-partitionering HW Hardware-ontwerp 2004 -2005 SW Softwarecompilatie Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 55
Hardware/software partitionering �-prom-processor 2 ARM DSP Virtuele HWASIC component • Verdelen taken over HW (eventueel verschillende HW-blokken) en SW (over verschillende processoren). • In ware-tijd-systemen: toewijzen van taken tijdens uitvoering. Algoritme { Code 1 Code 2 Code 3 Code 4 } 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 56
Ontwerptraject Systeemspecificatie Architectuurexploratie Platformontwerp Hardware/software-partitionering HW Hardware-ontwerp SW Softwarecompilatie Compilatie naar specifieke processor. Tegenwoordig: ASIP’s 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 57
Ontwerp van ingebedde software • Ontwerpskost voor SW is hoger dan voor HW • Belangrijke elementen: – Ervoor zorgen dat de juiste afwegingen gemaakt worden – Verifiëren van de ingebedde SW-implementatie in complexe systemen – Zorgen voor de porteerbaarheid van ingebedde SW naar toekomstige produktevoluties, keuze van RTOS, processors, middleware, enz. 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 58
Ontwerp van ingebedde software • Ingebedde SW <> PC SW – PC SW is niet ware-tijd en geeft geen gegarandeerde reactie – Betrouwbaarheid was nooit echt belangrijk – PC SW is steeds gegroeid (nieuwe tools, OO, …) 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 59
Ontwerptraject Systeemspecificatie Architectuurexploratie Schattingen vooraleer implementatiedetails bekend zijn! Platformontwerp Hardware/software-partitionering HW Hardware-ontwerp SW Softwarecompilatie Hoogniveausynthese Logisch ontwerp Fysisch ontwerp 2004 -2005 Componentselectie Hergebruik van IP IP management Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 60
Ontwerptraject Systeemspecificatie Architectuurexploratie Platformontwerp Hardware/software-partitionering Analoog ontwerp HW Hardware-ontwerp SW Softwarecompilatie Hoogniveausynthese Logisch ontwerp Componentselectie Fysisch ontwerp 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 61
So. C met analoge blokken • Meestal integratie van analoge blokken in So. C • Belangrijke punten: – Controleren van substraatruis door plaatsing – Controleren van ruis rond de omgeving van een analoog blok – Geen routes over analoog blok – Controleren ruis in vermogenstroken – Plaatsing van analoog blok ver van digitaal blok – Metaalschild compleet rond en over analoog blok – Controleren van overspraakruis op analoge bussen – Controleren van overspraakruis op de I/O-ringen 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 62
Ontwerptraject Systeemspecificatie Architectuurexploratie Platformontwerp Hardware/software-partitionering Analoog ontwerp HW SW Hardware-ontwerp Communicatie Softwarecompilatie Hoogniveausynthese Logisch ontwerp Componentselectie Interfacesynthese Fysisch ontwerp 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 63
Interfacesynthese • Selectie van communicatieprotocols. • Synthese van bussen tussen processoren, geheugens en IPblokken. • Synthese van vertalers voor IP. • Scheiding van berekeningen en communicatie is essentieel voor het ontwerpen van ingebedde systemen. • Ondersteunen van “plug-and-play” voor IP-blokken. 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 64
Ontwerptraject Architectuurexploratie Verificatie Systeemspecificatie Platformontwerp Analoog ontwerp HW en Hardware/software-partitionering SW Hardware-ontwerp Communicatie Softwarecompilatie Logisch ontwerp Componentselectie Simulatie Hoogniveausynthese Interfacesynthese Fysisch ontwerp Testing 2004 -2005 Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 65
Ontwerptraject Architectuurexploratie Hfst 3 Platformontwerp Schattingen vooraleer implementatiedetails bekend zijn! Hardware/software-partitionering Hfst 6 HW SW Hardware-ontwerp Hoogniveausynthese Logisch ontwerp Hfst 7 Communicatie Componentselectie Interfacesynthese Fysisch ontwerp HW/SW co-ontwerp 2004 -2005 Testing Softwarecompilatie Simulatie Analoog ontwerp Verificatie Systeemspecificatie en Hfst 2 Hfst 8 RTOS Dirk Stroobandt: Ontwerpmethodologie van Complexe Systemen 66


































































