Digitalteknik EIT020. Lecture 15: Design av digitala kretsar

Relevanta dokument
Design av digitala kretsar

Grindar och transistorer

Minnet. Minne. Minns Man Minnet? Aktivera Kursens mål: LV3 Fo7. RAM-minnen: ROM PROM FLASH RWM. Primärminnen Sekundärminne Blockminne. Ext 15.

LV6 LV7. Aktivera Kursens mål:

Digitalteknik EIT020. Lecture 15: Design av digitala kretsar

F2: Motorola Arkitektur. Assembler vs. Maskinkod Exekvering av instruktioner i Instruktionsformat MOVE instruktionen

ALU:n ska anslutas hur då?

Laboration 6. A/D- och D/A-omvandling. Lunds universitet / Fakultet / Institution / Enhet / Dokument / Datum

Elektroteknik MF1016 föreläsning 9 MF1017 föreläsning 7 Mikrodatorteknik

Digital IC konstruktion

Föreläsningsanteckningar 2. Mikroprogrammering I

Adderare. Digitalteknik 7.5 hp distans: 4.6 Adderare 4.45

Adderare. Digitalteknik 7.5 hp distans: 4.6 Adderare 4.45

Datormodell. Datorns uppgifter -Utföra program (instruktioner) Göra beräkningar på data Flytta data Interagera med omvärlden

Digital- och datorteknik

Grundläggande datavetenskap, 4p

F5 Introduktion till digitalteknik

Digital IC konstruktion

Datorteknik. Tomas Nordström. Föreläsning 2. För utveckling av verksamhet, produkter och livskvalitet.

Digital- och datorteknik

Tentamen. TSEA22 Digitalteknik 5 juni, 2015, kl

Styrenheten 9/17/2011. Styrenheten - forts Arb s 120. LV4 Fo10. Aktivera Kursens mål: Kap 7 Blå

T1-modulen Lektionerna Radioamatörkurs OH6AG OH6AG. Bearbetning och översättning: Thomas Anderssén, OH6NT Heikki Lahtivirta, OH2LH

Ext-13 (Ver ) Exempel på RTN-beskrivning av FLEX-instruktioner

System S. Datorarkitektur - en inledning. Organisation av datorsystem: olika abstraktionsnivåer. den mest abstrakta synen på systemet

Datorsystemteknik DVGA03 Föreläsning 8

EDA451 - Digital och Datorteknik 2010/2011. EDA Digital och Datorteknik 2010/2011

Hambley avsnitt 12.7 (7.3 för den som vill läsa lite mer om grindar) sann 1 falsk 0

Ext-13 (Ver ) Exempel på RTN-beskrivning av FLEX-instruktioner

Digitala System: Datorteknik ERIK LARSSON

TSEA28 Datorteknik Y (och U)

EDA215 Digital- och datorteknik för Z

Transistorn en omkopplare utan rörliga delar

Läsminne Read Only Memory ROM

Digital elektronik CL0090

Läs igenom hela laboration 5 innan du börjar beskriva instruktionsavkodaren i VHDL!

Digital och Datorteknik EDA /2011. EDA 451 Digital och datorteknik 2010/2011. Uppbyggnad_och_funktion.pdf

Det finns en hemsida. Adressen är

Tenta i Digitalteknik

F5 Introduktion till digitalteknik

Program kan beskrivas på olika abstrak3onsnivåer. Högnivåprogram: läsbart (för människor), hög abstrak3onsnivå, enkelt a> porta (fly>a 3ll en annan ar

F1: Introduktion Digitalkonstruktion II, 4p. Digital IC konstruktion. Integrerad krets. System. Algorithm - Architecture. Arithmetic X 2.

Processor pipelining genom historien (Intel i9-intel i7)

Datorteknik. Föreläsning 6. Processorns uppbyggnad, pipelining. Institutionen för elektro- och informationsteknologi, LTH. Mål

Ett minneselements egenskaper. F10: Minneselement. Latch. SR-latch. Innehåll:

Digital Aritmetik Unsigned Integers Signed Integers"

Digital IC konstruktion

5:2 Digitalteknik Boolesk algebra. Inledning OCH-funktionen

IE1204 Digital Design

SMD033 Digitalteknik. Digitalteknik F1 bild 1

Digital- och datorteknik

Grundläggande Datorteknik Digital- och datorteknik

0.1. INTRODUKTION Instruktionens opcode decodas till en språknivå som är förstålig för ALUn.

Tentamen i Digital Design

Talrepresentation. Heltal, positiva heltal (eng. integers)

Uppgift 1: a) u= a c + a bc+ ab d +b cd

Högskolan i Halmstad Digital- och Mikrodatorteknik 7.5p. Lista på registeruppsättningen i PIC16F877A Datablad TTL-kretsar 74-serien

Moment 2 Digital elektronik. Föreläsning Inbyggda system, introduktion

Digital- och datorteknik

Lösningsförslag till tentamen i Digitalteknik, TSEA22

HF0010. Introduktionskurs i datateknik 1,5 hp

Övning1 Datorteknik, HH vt12 - Talsystem, logik, minne, instruktioner, assembler

En något mer detaljerad bild av en processor. De tre delarna i processorn är: Nere 3ll vänster finns e' antal register som används för a' lagra data.

En något mer detaljerad bild av en processor. De tre delarna i processorn är: Nere 3ll vänster finns e' antal register som används för a' lagra data.

Digital- och datorteknik. Lars-Eric Arebrink. Betyg 4: 36 poäng Betyg 5: 48 poäng

Adressavkodning - busskommunikation

TSEA22 Digitalteknik 2019!

L15 Introduktion modern digital design

Kapitel 7 Systemexempel (forts.)

Laboration D151. Kombinatoriska kretsar, HCMOS. Namn: Datum: Epostadr: Kurs:

Struktur: Elektroteknik A. Digitalteknik 3p, vt 01. F1: Introduktion. Motivation och målsättning för kurserna i digital elektronik

Tenta i Digitalteknik

Digital- och datorteknik

IE1205 Digital Design: F3 : CMOS-kretsen, Implementeringsteknologier. Fredrik Jonsson KTH/ICT/ES

Digital IC konstruktion

Datorteknik. Den digitala automaten. En dator måste kunna räkna! Register och bussanslutning

Tentamen i Grundläggande ellära och digitalteknik ETA 013 för D

Digital- och datorteknik. Lars-Eric Arebrink. Betyg 4: 36 poäng Betyg 5: 48 poäng

Digital- och datorteknik. Lars-Eric Arebrink. Av institutionen utgiven instruktionlista FLEXIBLE INSTRUKTION SET PROCESSOR FLISP

Kombinationskretsar. Föreläsning 4 Digitalteknik Mattias Krysander Institutionen för systemteknik

DIGITAL ELEKTRONIK. Laboration DE3 VHDL 1. Namn... Personnummer... Epost-adress... Datum för inlämning...

Digital Design IE1204

EDA Digital och Datorteknik

Facit till övningsuppgifter Kapitel 13 Anslutning av minnes- och I/O-moduler till buss 13-1

LABORATION DATORTEKNIK Y,C,I DATORTEKNIK D

Digitalteknik och Datorarkitektur

Tenta i Digitalteknik

Övning1 Datorteknik, HH vt12 - Talsystem, logik, minne, instruktioner, assembler

Datorteknik. Den digitala automaten. En dator måste kunna räkna! Register och bussanslutning

Program som ska exekveras ligger i primärminnet. Processorn hämtar instruk7on för instruk7on. Varje instruk7on, som är e= antal 1:or och 0:or, tolkas

SVAR TILL TENTAMEN I DATORSYSTEM, VT2013

Datorhistorik. Föreläsning 3 Datorns hårdvara EDSAC. Eniac. I think there is a world market for maybe five computers. Thomas Watson, IBM, 1943

Övningsuppgifterna i kapitel F avser FLIS-processorn, vars instruktioner och motsvarande koder definieras i INSTRUKTIONSLISTA FÖR FLISP.

Digital- och datorteknik. Lars-Eric Arebrink. vid flera tillfällen. Betyg 4: 36 poäng Betyg 5: 48 poäng

Digital- och datorteknik. Mekatronik-, data- och elektroingenjör Åk 1/ lp 1o2. Lars-Eric Arebrink. Av institutionen utgiven. vid flera tillfällen

En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär:

Datorsystemteknik DAV A14 Föreläsning 1

Digital Design IE1204

Digital IC konstruktion

Digital- och datorteknik

Transkript:

Digitalteknik EIT020 Lecture 15: Design av digitala kretsar November 3, 2014

Digitalteknikens kopplingar mot andra områden Mjukvara Hårdvara Datorteknik Kretskonstruktion Digitalteknik Elektronik Figure:, Digitalteknik L15:2,

DEL 1 - Datorers uppbyggnad Kurser som kommer: Datorteknik, Datorarkitektur,... Beteendet bestäms i mjukvara Byggblock: multiplexer, adressavkodare, ROM, ALU Hur sätter vi samman byggblocken för att få något som liknar en enkel dator?, Digitalteknik L15:3,

ALU exempel Xn 1,..., X1, X0 Yn 1,..., Y1, Y0 Flaggor O, C o Aritmetisk enhet AU Logisk enhet LU Styrsignaler S 2, S 1, S 0 C i MUX Flaggor Z, P, S U n 1,... U 1, U 0, Digitalteknik L15:4,

ALU input/output In: X n 1,... X 1, X 0 samt Y n 1,... Y 1, Y 0. Ut: U = U n 1,... U 1, U 0. In: Styrsignaler S 2, S 1, S 0 som tre styrsignaler. In: C i som svarar mot carry in. ALU:n ger även utsignaler i form av aggor som indikerar speciella händelser vid uträknandet av den valda funktionen. O sätts när AU genererar en overow; C o är en carry bit; Z sätts om U = 0; P ger pariteten av U samt S som sätts om U är negativt., Digitalteknik L15:5,

ALU - funktion S 2, S 1 S 0 C i Operation Funktion 000 0 U = X överför X 000 1 U = X + 1 öka X med 1 001 0 U = X + Y addera X och Y 001 1 U = X + Y + 1 addera X och Y + 1 010 0 U = X Y subtrahera X med Y (2-komplement). 100 - U = X Y bitvis AND mellan X och Y 101 - U = X Y bitvis XOR mellan X och Y 110 - U = X Y bitvis OR mellan X och Y 111 - U = X bitvis invertering av X, Digitalteknik L15:6,

En enkel CPU BUSS Register X Register Y Instruktionsregister IR X Y ALU S2, S1, S0, Ci Instruktions avkodare Z, P, S, O, U Co Flaggregister Ackumulator U Programräknare PC BUSS, Digitalteknik L15:7,

Register och buss Ett n-bitars register är n minneselement (D-vippor) som håller n bitar i minnet. Registret har n insignaler och n utsignaler samt minst en ytterligare insignal som kan användas för att ladda in insignalvärdet i minnet. Bussen är logiskt en multiplexer. Implementering: three-state utgång till en grind. Med en three-state utgång kan utsignalen vara 0, 1 eller "högohmig". Det sistnämnda innebär i digitaltekniskt sammanhang att vi har ett avbrott på utsignalen. Det nns då en insignal som styr huruvida utsignalen är högohmig eller inte. Detta innebär att vi kan koppla samman era utsignaler från olika enheter på en gemensam buss så länge alla utom en av dessa utsignaler är högohmiga., Digitalteknik L15:8,

CPU - funktion CPU:n kommunicerar med ett yttre minne och hämtar in instruktioner i form av instruktionens operationskod (ett bitmönster). När operationskoden för en instruktion kommer in till CPU:n via bussen läggs den i instruktionsregistret, IR. För att veta var i det yttre minnet som CPU:n ska hämta nästa instruktion, nns ett register som innehåller adressen till nuvarande instruktion. Det kallas för Programräknare, PC. När CPU:n är färdig med den nuvarande instruktionen kommer den att räkna upp programräknaren och sedan begära att få läsa minnet på den nya minnesadressen som programräknaren nu pekar på., Digitalteknik L15:9,

CPU - Instruktionsavkodaren Instruktionsavkodare genererar styrsignalerna till alla enheter i CPU:n, och även till enheter utanför CPU:n. Den läser först in nästa instruktion i instruktionsregistret. Beroende på vilken instruktion det är så genererar den styrsignaler för läs/skriv till register och minne samt eventuella styrsignaler till ALU:n. När den är klar ska programräknaren uppdateras och därefter läser instruktionsavkodaren in nästa instruktion och så fortsätter det., Digitalteknik L15:10,

En enkel dator CPU Central Processing Unit Minne ROM, RWM I/O In/Ut-enheter BUSS (Databuss, Adressbuss, Styrbuss) Bussen är uppdelad: adressbuss, där vi då lägger adressen till minnet; databuss som innehåller de dataord som läses in eller ut. styrbussen styr vilka enheter som ska vara aktiva på bussen. I/O modulen har register och/eller minne som CPU:n kan läsa eller skriva till och dessa register (minne) står i direkt anslutning till en fysisk I/O del., Digitalteknik L15:11,

Datorns arbetssätt Sekvensen av instruktioner som ska utföras kallar vi för program och detta ligger i minnet. Exempelvis kan programmet börja i minnesadress 00 00 och programpekaren börjar i detta värde när "datorn" slås på. Den första instruktionen läggs i instruktionsregistret. Instruktionen beskriver vilken operation som ska utföras och på vilken/vilka operander. Eftersom en viss instruktion svarar mot ett visst bitmönster i IR är det klokt att använda mnemonics, dvs vi använder symboliska namn istället för bitmönster när vi skriver program. En sekvens av instruktioner i formen av mnemonics brukar kallas för assemblerkod, Den binära formen som ligger i minnet kallas för maskinkod. Assemblerkoden måste översättas till maskinkod för att programmet ska kunna exekveras., Digitalteknik L15:12,

Instruktioner - exempel bitmönster Instruktion Funktion 0000dddd LDX ladda register X med värde dddd. 0001dddd LDY ladda register Y med värde dddd. 0010dddd ADD addera X med Y, resultat i U. 0011dddd ADDC addera X, Y och bit C från statusreg, resultat i 0100dddd DEC minska X med 1, resultat i U. 0101dddd JZ hoppa till adress dddd om aggan Z = 1. 0110dddd LXU ladda X med värdet av U. 0111dddd LYU ladda Y med värdet av U. 1000dddd AND bitvis AND med X och Y, resultat i U. 1001dddd XOR bitvis XOR med X och Y, resultat i U. 1010dddd OR bitvis OR med X och Y, resultat i U. 1011dddd INV bitvis invertering av X, resultat i U. 1100dddd MW skriv U i dataminnet på adress dddd. 1101dddd MRX ladda register X med värdet i dataminnet på adress 1110dddd MRY ladda register Y med värdet i dataminnet på adress 1111dddd JMP hoppa till adress dddd., Digitalteknik L15:13,

DEL 2 - Implementering av grindar Hur byggs grindar och andra större logiska block? Kurser: Elektronik, Halvledarfysik,..., Digitalteknik L15:14,

Grindar och transistorer Historiskt - olika logikfamiljer, där kretsar inom samma familj har liknande egenskaper vad gäller snabbhet och energiförbrukning. En föregångare: DTL (diod-transistor logik). En mycket populär logikfamilj som kom fram på 60-talet var TTL (Transistor Transistor Logic). Den har haft stor betydelse för utvecklingen av digitaltekniken och innehöll ett antal standardkretsar, grindar, multiplexrar, räknare, register, och adderare. Välkänd var till exempel Texas Instruments 74-serie Under 80-talet kom sedan de programmerbara kretsarna, och en sådan krets kunde ersätta ett stort antal TTL-kretsar., Digitalteknik L15:15,

MOS (MOSFET) transistorn MOS-transistorn (Metal Oxide Semiconductor) ck sitt startskott när Intel grundades på slutet av 60-talet. många attraktiva egenskaper, såsom låg eektförbrukning och hög packningstäthet, dvs vi kan få in miljontals transistorer på ett chip., Digitalteknik L15:16,

nmos transistor Två typer, dels nmos (n-kanals MOS), dels pmos (p-kanals MOS)., Digitalteknik L15:17,

MOS transistorn Vid tillverkning av integrerade kretsar används en fotograskt teknik med fotomasker, där man bygger upp lager efter lager. minsta möjliga linjebredd; exempelvis "55nm CMOS Technology"., Digitalteknik L15:18,

MOS transistorn MOS-transistorns funktion är som en mekanisk switch. SLUTEN eller ÖPPEN. En transistor kan vara av anrikningstyp eller utarmningstyp. Omslagstider beror på kapacitansen i kretsen., Digitalteknik L15:19,

Symbolerna för de olika transistortyperna Figure: MOS transistor symboler, Digitalteknik L15:20,

Grindar från transistorer Två vanliga sätt att konstruera logiska grindar med hjälp av MOS-transistorer. CMOS, complementary MOS innebär att vi hela tiden använder en pmos-transistor och en nmos-transistor tillsammans. Här använder vi enbart anrikningstyp. nmos-teknik (med pull-up), Digitalteknik L15:21,

, Digitalteknik L15:22, CMOS-inverteraren

Implementation av CMOS inverterare ett n-dopat område nedsänkt i p-substratet, en så kallad n-brunn., Digitalteknik L15:23,

nmos med pull-up komponent Figure: nmos inverterare använd en transistor som aktiv pull-up, i detta fall en nmos av utarmningstyp., Digitalteknik L15:24,

Andra grindar i CMOS och nmos NAND Figure: CMOS NAND samt nmos NAND, Digitalteknik L15:25,

NOR, Digitalteknik L15:26, Figure: CMOS NOR samt nmos NOR

Andra grindar AND-grind eller en OR-grind: sätt en inverterare på utgången Det är bättre att implementera en Boolesk funktion med Nand-Nand struktur än att använda And-Or. XOR-grind. Figure: CMOS XOR, Digitalteknik L15:27,