IE4 Digital Design, 7.5hp Kursansvarig Johnny Öberg Skolan för Informations och Kommunikationsteknik (ICT) Institutionen för Elektroniksystem (ES) johnnyob@kth.se http://www.ict.kth.se/~johnnyob Examinator: Ingo Sander p. - Digital Design - F - Johnny Öberg, ICT/ES
Vem är Johnny Öberg? Docent på ICT-skolan i Kista, avdelningen elektroniksystem Forskningsområden: Inbyggda system, elektroniksystemkonstruktion Undervisar i följande KTH-kurser: IE4 Digital Design IL33 VHDL Design IL3 Embedded Hardware IL ASIC Design ( gästföreläsningar) IL3 Design Project p. 3 - Digital Design - F - Johnny Öberg, ICT/ES Lärarens roll i undervisningen Glöm inte att det är studentens uppgift att lära sig nya kunskaper Lärarens uppgift är att stödja inlärningen p. 4 - Digital Design - F - Johnny Öberg, ICT/ES
Det finns en kursbok Brown/Vranesic, Fundamentals of Digital Logic with VHDL Design (3rd edition), Mc-Graw-Hill, 9 (Kårbokhandeln) Läs den! p. 5 - Digital Design - F - Johnny Öberg, ICT/ES Att studera på universitet är väldigt annorlunda än på gymnasiet! innebär att DU ta ansvar för dina studier! En civilingenjörsexamen ger excellenta möjligheter för ett välbetalt, roligt och stimulerande jobb, men först måste du nå dit! p. 6 - Digital Design - F - Johnny Öberg, ICT/ES
Om studieteknik... En bra metod är att studera tillsammans i grupper om 5- personer Om det är något problem som är svårt att lösa och/eller förstå Diskutera problemet i gruppen Den som först kommer på lösningen förklarar för de andra p. 7 - Digital Design - F - Johnny Öberg, ICT/ES Glöm inte att tempot är mycket högre på KTH än på gymnasiet! En civilingenjör har ett stort ansvar för samhället och måste därför ha en gedigen utbildning! p. 8 - Digital Design - F - Johnny Öberg, ICT/ES
Denna kurs... Kursens mål Att lära ut de teoretiska grunderna för analys och konstruktion av kombinatoriska och sekvensiella kretsar. Att genom praktisk problemlösning ge en förståelse för de olika design-/konstruktionsfaserna i syfte att kursdeltagarna skall behärska konstruktion av enkla kombinatoriska och sekvensiella digitala system p. - Digital Design - F - Johnny Öberg, ICT/ES
Kursens mål (forts) Att lära kursdeltagarna en designmetodik Specification (function and other characteristics) Analysis Design Implementation (network of modules) Att mha denna metodik kunna konstruera enkla digitala system p. - Digital Design - F - Johnny Öberg, ICT/ES Kursens mål (forts) Introducera studenterna till Engelska och engelsk kursliteratur All bra literatur inom ämnet är på engelska Engelska är arbetsspråk i alla större svenska internationella bolag Att tala engelska (någorlunda) flytande är en förutsättning för en framgångsrik karriär som civilingenjör Därför har vi valt en engelskspråkig kursbok! p. - Digital Design - F - Johnny Öberg, ICT/ES
Kurslitteratur Kursbok Brown/Vranesic, Fundamentals of Digital Logic with VHDL Design (3rd edition), Mc-Graw-Hill, 9 (Kårbokhandeln) Mer material finns på websida http://www.ict.kth.se/courses/ie4/ Föreläsningsbilder läggs ut på websidan strax före eller strax efter lektionen! p. 3 - Digital Design - F - Johnny Öberg, ICT/ES Översikt Kursinnehåll Specifikation av digitala funktioner och system Digitala byggelement Digital Aritmetik Synkrona system och statemaskiner Asynkrona system och statemasking Lite större digitala system om processorn och datorer Vi kommer inte att gå igenom VHDL i någon större utsträckning det är en hel kurs i sig. p. 4 - Digital Design - F - Johnny Öberg, ICT/ES
Examination och upplägg Examination LABA, 3. hp Betyg: G/U TENA, 4.5 hp Betyg A-E/F Föreläsningar - 8 h (4xh) Övningar - 6 h (8xh) Laborationer - h (3x4h) p. 5 - Digital Design - F - Johnny Öberg, ICT/ES Personal Föreläsare Johnny Öberg Övningar William Sandqvist Fredrik Lundevall Mattias Hellmansson Jan Andersson Laborationer William Sandqvist Jan Andersson Owe Thessen Mattias Hellmansson Gunnar Johansson p. 6 - Digital Design - F - Johnny Öberg, ICT/ES
Tentamen Tentamen äger rum i Kista Aktuell information på KTH:s websidor Tis 9 okt, 4:-8:, (53, 53, 53, 533, 54, 438, 439) Anmälan krävs Senast två veckor innan tentamen! Rutinerna för anmälan kommer att fastställas senare p. 7 - Digital Design - F - Johnny Öberg, ICT/ES Laborationer Laborationer utförs i Kista KTH-Kista, Forum-Huset Isafjordsgatan 39. Hiss A. Våning 8. Lokal Ka-L83A och Ka-L84A Anmälan krävs och görs via Daisy-systemet https://daisy.ict.kth.se/ Kom i god tid till första laborationen eftersom era Kista-konton måste aktiveras Laborationer kan ge bonuspoäng på tentamen p. 8 - Digital Design - F - Johnny Öberg, ICT/ES
Kontrollskrivningar Det finns två kontrollskrivningar i kursen som ger bonuspoäng på tentamen KS och KS ersätter varsin uppgift av totalt tolv uppgifter på del A i tentamen Information om anmälan och upplägget kommer senare under kursen p. 9 - Digital Design - F - Johnny Öberg, ICT/ES Bonuspoäng Man kan få bonuspoäng för följande moment i kursen: godkänd kontrollskrivning (ersätter en av uppgifter på del A) godkänd kontrollskrivning (ersätter en av uppgifter på del A) Laboration : Högre-nivå uppgift (ger en extrapoäng på del B) Laboration 3: Högre-nivå uppgift (ger två extrapoäng på del B) alla laborationer avklarade i tid: ger en extrapoäng p. - Digital Design - F - Johnny Öberg, ICT/ES
Kontakt med KTH-Personal Föreläsaren försöker att vara tillgänglig under rasten och en stund efter lektionen Utnyttja den tiden Mail KTH-personal dränks i mailfloden, så det kan ta en stund tills vi hinna svara på ett e-mail Om det behövs skicka tydliga och klara mail till rätt person Om du skickar mail till KTH-personalen, använd din KTHmailadress! Kalla ditt meddelande IE4 :, så att vi lätt kan hitta kursrelaterade brev p. - Digital Design - F - Johnny Öberg, ICT/ES Mer information finns på webben! Det är inte möjligt att gå igenom all information under lektionen Besök hemsidan ofta http://www.ict.kth.se/courses/ie4//kista /index.htm p. - Digital Design - F - Johnny Öberg, ICT/ES
Varför är digitalteknik så viktigt? Vårt dagliga liv präglas av digitaltekniken Datorer finns överallt och i alla möjliga produkter Visste du tex att det finns ca 4- mikroprocessorer i en ny bil? p. 4 - Digital Design - F - Johnny Öberg, ICT/ES
Industrins behov av inbyggda system Source: Direct Development of SW and services for direct sales to external customers Direct SW Companies Total Turnover SEK 3 billion (5). Redeye Advisory Services [5]. Reuters [8] Indirect SW is a critical part of the competitiveness of products, processes and services Ericsson AB SEK 88 billion (7) Volvo AB SEK 85 billion (7) Scania AB SEK 84 billion (7) Competitiveness, volumes and value creation of indirect SW companies exceed that of direct SW companies p. 5 - Digital Design - F - Johnny Öberg, ICT/ES Utvecklingen inom elektroniken Teknologiska framsteg möjliggör att mer och mer funktionalitet kan integreras på ett enda chip iphone 4 () ENIAC (946) Apple II (977) Trenden fortsätter! p. 6 - Digital Design - F - Johnny Öberg, ICT/ES
Teknologiframsteg Utvecklingen går rasande fort p. 7 - Digital Design - F - Johnny Öberg, ICT/ES Exempel på Digitala System (år ) VLSI Chip (Alpha 64) Funktionsblock i en Pentium (Intel) Ericsson T8 Nokia 6 p. 8 - Digital Design - F - Johnny Öberg, ICT/ES
Exempel på Digitala System (år ) 3D Integration Tilera TilePRO64 (8x8 MPSoC) Intel TeraFlop (8x MPSoC) p. 9 - Digital Design - F - Johnny Öberg, ICT/ES Exempel på Digitala System (år ) Robotic Brain xx Chips containing a total of ~635 Brain Processing Units (BPUs) & ~ TB DRAM memory p. 3 - Digital Design - F - Johnny Öberg, ICT/ES
Utvecklingen inom elektroniken Intel 44 (97) Intel Xeon 54 (8) 3. GHz 8 millioner transistorer 8 KHz,3 transistorer Om man hade haft motsvarande utveckling för bilar så skulle man nu kunna köra från San Francisco till New York på ca 3 sekunder (Intel). p. 3 - Digital Design - F - Johnny Öberg, ICT/ES Digitaltekniken skapade grunden till denna utveckling Enkel matematisk modell Bara :or och :or som värden Boolesk algebra Störningsokänslig, effektiv implementering av den matematiska modellen Transistor Integrerade kretsar Framsteg i halvledarteknologin Effektiva designmetoder och verktyg p. 3 - Digital Design - F - Johnny Öberg, ICT/ES
Varför binärt? Analoga & Digitala Signaler Om det är möjligt så görs idag all signalbehandling digitalt Mikrofon Analog-Digital Omvandlare Digital-analog Omvandlare Bärfrekvens Antenn ADC Signal Processing & Storage DAC Analog signal Digitala signaler Modulerad signal p. 34 - Digital Design - F - Johnny Öberg, ICT/ES
Egentligen borde digitaltekniken vara sämre I stället för en analog signal som kan anta kontinuerliga värden, så kan en digital signal bara anta diskreta värden p. 35 - Digital Design - F - Johnny Öberg, ICT/ES Digitaltekniken är mycket okänslig för störningar! Voltage V DD V,min V,max V SS (Gnd) Logic value Undefined Logic value Det är inte bara ett spänningsvärde som interpreteras som eller utan ett helt spänningsområde En avvikelse om några mv kan vara mycket störande inom analogtekniken, men gör ingen skillnad inom digitaltekniken p. 36 - Digital Design - F - Johnny Öberg, ICT/ES
Fler bitar och högre sampling höjer signalkvalitén Har man tillräckligt många bitar och tillräckligt hög samplingfrekvens efterliknar den digitala signalen den analoga signalen Analog signal Digital signal (3 bit) Digital signal (4 bit, dubbla samplingsfrekvensen) p. 37 - Digital Design - F - Johnny Öberg, ICT/ES Kvantisering och Digitalisering Kvantiseringsnivåer Digital signalsekvens p. 38 - Digital Design - F - Johnny Öberg, ICT/ES
Separation av digitala nivåer = separationsmarginaler p. 39 - Digital Design - F - Johnny Öberg, ICT/ES Typiska signalnivåer för TTL-logik (mer om det i F3) V OHmin V OLmax V Hmax Matningsspänning 3.3V 5.V V HMAX 3.3 5. V IHmin V ILmax V Lmin V OHMIN.4 3.3 V IHMIN..4 V LMAX.8.8 V OLMAX.4.4 V LMIN.. Brusmarginaler p. 4 - Digital Design - F - Johnny Öberg, ICT/ES
Varför binärt? CMOS-Transistorer är enkla att tillverka CMOS-Transistorer är gjorda av vanlig sand => billigt råmaterial En transistor är lätt att få att fungera som en switch (omkopplare) p. 4 - Digital Design - F - Johnny Öberg, ICT/ES Transistorn - en omkopplare utan rörliga delar Gate Source Drain Principskiss för SiGe transistor (KTH) p. 4 - Digital Design - F - Johnny Öberg, ICT/ES
Hur konstruerar man ett digitalt (inbyggt) system? En processor innehåller många grindar Mycket ineffektiv att rita ett grindnät Det behövs andra metoder att beskriva ett system! p. 44 - Digital Design - F - Johnny Öberg, ICT/ES
Designmetodik Specification (function and other characteristics) Analysis Design Implementation (network of modules) p. 45 - Digital Design - F - Johnny Öberg, ICT/ES Hierarki och abstraktionsnivåer Hierarki: att se på saker som sammansatta av olika mindre och (förhoppningsvis) enklare saker Abstraktion: när man tittar på en nivå, så behöver man inte veta alla detaljer av lägre nivåer p. 46 - Digital Design - F - Johnny Öberg, ICT/ES
Hierarkier i ett digitalt system VDD In Out VSS p. 47 - Digital Design - F - Johnny Öberg, ICT/ES Digital hårdvara i en dator p. 48 - Digital Design - F - Johnny Öberg, ICT/ES
Tre typiska designmetodiker Top-Down Bottom-Up Meet-in-the-Middle System Moduler Grindar och vippor Transistorer p. 49 - Digital Design - F - Johnny Öberg, ICT/ES Meet-in-the-middle metodik Analysera specifikationen (top-down) ta reda på flaskhalsar och dela upp problemet på lämplig hierarkisk nivå (studera begränsningar i målteknologin) Iterera designcykeln vid behov tills dess designen fungerar tillfredställande. Bygg (syntetiserbar) simuleringsmodell av specifikationen bygg hierarkier (bottom up), testa varje nivå grundligt innan den byggs ihop med nästa nivå. Bygg prototyp debugga kopplingarna och/eller programvaran pss som simuleringsmodellen byggdes (hierarkiskt bottom up). Färdig prototyp/design p. 5 - Digital Design - F - Johnny Öberg, ICT/ES
Förenklad Design Process p. 5 - Digital Design - F - Johnny Öberg, ICT/ES Har kan vi hantera miljontals (miljardtals) transistorer i en design?
CAD-verktyg CAD-verktyg klarar av att hantera komplexiteten (antal transistorer) och hjälper oss att konstruera (designa) hög-effektiva integrerade kretsar till ett vitt spektrum av tillämpningar Datorer Telekommunikationer (switchar, routrar, mobiltelefoni) Transport-industrin (rymd, flyg, bil) Nöjesindustrin... p. 53 - Digital Design - F - Johnny Öberg, ICT/ES Vad är ett CAD-verktyg? Ett CAD-verktyg är ett program som hjälper ingenjören att konstruera (tex en integrerad krets) CAD-verktyg kan vara helt automatiserade eller interaktiva CAD-verktyg är baserade på algoritmer som definierar ordningen på en sekvens av metoder som skall appliceras p. 54 - Digital Design - F - Johnny Öberg, ICT/ES
Andra typer av CAD-verktyg CAD-verktyg används inte enbart för syntes (konstruktion av kretsar), utan också vid analys av kretsar tex. för att simulera en kretsbeskrivning för att kunna analysera tidsfördröjningar, hur mycket effekt den drar osv. p. 55 - Digital Design - F - Johnny Öberg, ICT/ES Hårdvarubeskrivande språk (HDL) Hardware Description Languages (HDLs) är programmeringsspråk som gör det möjligt att beskriva hårdvarufunktioner på ett naturligt sätt I motsats till normala programmerings-språk som C, där koden exekveras sekventiellt, exekveras koden i HDLspråk parallellt. HDL -beskrivningar kan användas som indata till en synthesizer, en sorts kompilator som producerar hårdvara istf exekverbar kod. p. 56 - Digital Design - F - Johnny Öberg, ICT/ES
Men nu tar vi det hela från början... Digitaltekniken använder bara två siffersymboler: och Enkelt att implementera varje värde motsvarar en spänningsnivå,t ex Volt motsvarar 5 Volt motsvarar Binära tal Hur kan man då representera vanliga tal? p. 58 - Digital Design - F - Johnny Öberg, ICT/ES
Decimala talsystemet I det decimala talsystemet har man olika siffersymboler: till 9 Ett decimaltal representeras med en sekvens av siffersymboler Positionen i sekvensen ger siffrans vikt och multipliceras med en potens av (basen i decimalsystemet är ) ( 653) = 6 + 5 + 3 p. 59 - Digital Design - F - Johnny Öberg, ICT/ES Decimala talsystemet Representation av ett heltal N m m = xm + xm L + x + x ( 653) = 6 + 5 + 3 Representation av ett kommatal m m N = xm + xm L + x + x + x + x +L (6.53) = 6 + 5 + 3 p. 6 - Digital Design - F - Johnny Öberg, ICT/ES
p. 6 - Digital Design - F - Johnny Öberg, ICT/ES Binärsystemet fungerar på samma sätt som decimalsystemet, men man använder basen i stället för! Binära talsystemet L +L + + + + + = x x x x x x N m m m m ) (6 ) ( = + + = ) (3.5.) ( = + + + = p. 6 - Digital Design - F - Johnny Öberg, ICT/ES I det oktala talsystemet är basen 8 och därmed används siffersymbolerna till 7 Oktala talsystemet 6 L +L + + + + + = 8 8 8 8 8 8 8 x x x x x x N m m m m ) (53.375 8 3 8 5 8 6 65.3) ( = + + =
Hexadecimala talsystemet I det oktala talsystemet är basen 6 och därmed används siffersymbolerna till 9 och bokstäverna A till F m m N6 = xm 6 + xm 6 L + x 6 + x 6 + x 6 + x 6 +L ( AE.8) = 6 = 6 + 4 6 + 8 6 (74.5) p. 63 - Digital Design - F - Johnny Öberg, ICT/ES Talsystem med basen b En allmän formulering kan erhållas för basen b N b = x m m m b + xm b L + x b + x b + x b + x b +L p. 64 - Digital Design - F - Johnny Öberg, ICT/ES
Heltalen för de olika talsystemen 8 6 3 3 3 4 4 4 5 5 5 6 6 6 7 7 7 8 6 8 8 9 9 A 3 B 4 C 5 3 D 6 4 E 7 5 F 6 p. 65 - Digital Design - F - Johnny Öberg, ICT/ES Omvandling mellan decimala och binära tal Omvandling från binär till decimal är trivial Omvandlingen från decimaltal till binärtal görs genom upprepade delning med Resten ger siffervärdet Siffrorna kommer i omvänd ordning Least Significant Bit (LSB) kommer först 53 = 6R x = (LSB) 6 3 6 3 = = = = = 3R 6R 3R R R = = = = (MSB) p. 66 - Digital Design - F - Johnny Öberg, ICT/ES x 5 x = x x x 3 4
Sammanfattning Det finns olika talsystem Digitaltekniken använder det binära talsystemet Man kan omvandlar tal mellan olika talsystem p. 67 - Digital Design - F - Johnny Öberg, ICT/ES Designmetodik Meet-in-the-middle Sammanfattning Analysera specifikation och målteknologi top-down. Bygg hierarkier och testa bottom-up. CAD-verktyg Nödvändiga för att kunna hantera komplexiteten Hårdvarubeskrivande språk (HDL) Tar för lång tid att konstruera med grindar Beskriva grindar på högre nivå ökar prestationsgraden (grindar/timme) hos en designer. p. 68 - Digital Design - F - Johnny Öberg, ICT/ES
Påbyggnadskurser (BSc-level) Digitalteknik IS Datorteknik, gk IS4 IT-projekt, Autonoma Inbyggda System IL33 VHDL Design Breddningskurser IL3V Tillämpad digitalteknik med PIC-processor EI Elkretsanalys IE Analog Elektronik, ak p. 69 - Digital Design - F - Johnny Öberg, ICT/ES Relevanta Masterprogram System-on-Chip Design Embedded Systems (start ) Systems, Control and Robotics p. 7 - Digital Design - F - Johnny Öberg, ICT/ES