16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F2 1 IS1500 Datorteknik och komponenter Föreläsning DC F2 Kretsar med återkoppling Minnen.

Slides:



Advertisements
Liknande presentationer
EDA 480 – Maskinorienterad Programmering
Advertisements

Digitalteknik, fortsättningskurs 2012 Föreläsning 16 Inför tentan
EDA Digital och Datorteknik
Persondatorer Datorns internminne (Kapitel 6)
Minnesteknologier Teknologi Accesstid Kostnad $/GB SRAM 1 ns 1000 DRAM
William Sandqvist Maurice Karnaugh Karnaugh-diagrammet gör det enkelt att minimera Boolska uttryck! William Sandqvist
EDA Digital och Datorteknik
SR-vippa.
IS1500 Datorteknik och komponenter
IS1500 Datorteknik och komponenter
23 August 2014 IS1200 Datorteknik vt09, föreläsning 10, (E och I mfl)1 IS1200 Datorteknik Föreläsning Processorkonstruktion 2. DMA, Direct Memory.
1 2G1518 Datorteknik Föreläsning 5, våren 2007 Bussar In- och utmatning – I/O Pollning Handskakning.
Tumregel z10 procent av minnet används 90 procent av tiden.
Språket för inbyggda system 3
Distribuerade filsystem
Pekare och speciell programstruktur i inbyggda system
Jonny Karlsson PROCESSPROGRAMMERING Föreläsning 8 ( ) Innehåll: Trådprogrammering i Java - Avbrott (”interrupts”) - Metoden join() -
Digitalteknik 7.5 hp distans: 5.1 Generella sekvenskretsar 5.1.1
Föreläsning 2: Grundläggande informationsteori
EDA Digital och Datorteknik
Styrteknik: Programmering med MELSEC IL PLC2A:1
Grundläggande programmering
Multiplexern som kombinatorisk krets
William Sandqvist Kodlåsmall lockmall.vhd William Sandqvist
Styrteknik: Grundläggande logiska funktioner D2:1
Digital och Datorteknik – EDA / Mikroprogrammering EDA Digital och Datorteknik 2009/2010 Mikroprogrammering Arbetsboken, avsnitt 28.
Programmering efter tillståndsdiagram
Styrteknik: MELSEC FX och numeriska värden PLC2C:1
Styrteknik 7.5 hp distans: SFC Introduktion SFC_A:1
Styrteknik 7.5 hp distans: PLC-Program, kaffe-automat PLC7B:1
William Sandqvist Låskretsar och Vippor Låskretsar (latch) och vippor (flip-flop) är kretsar med minnesfunktion. De ingår i datorns minnen.
IE1204 Digital Design F1 F2 Ö1 Booles algebra, Grindar F3 F4
Lågnivåprogrammering Översikt av I/O-mekanismer i hårdvara Olika språkkrav och modeller för komponent- hantering(device driving) Modeller för komponent-hantering.
Styrteknik: Programmering med IEC PLC1A:1
31 March 2015IS1200 Datorteknik, förel 101 IS1200 Datorteknik Föreläsning Processorkonstruktion 2. DMA, Direct Memory Access 3. Byte-code i JAVA.
31 March 2015 IS1500 Datorteknik o k, föreläsning CE - F61 IS1500 Datorteknik och komponenter Föreläsning 6 Bushantering In- och utmatning, I/O Programstyrd.
31 March 2015 IS1200 Datorteknik ht2009 föreläsning 2, (D2)1 IS1200 Datorteknik Föreläsning 2 Vi bygger en processor Kursboken, valda delar av kapitel.
IS1200 Datorteknik Föreläsning CE F2 Vi bygger en processor Kursboken, delar av kapitel 7 31 March IS1200 Datorteknik föreläsning CE – F2.
Pipelining Föreläsning 4. T exe — CPU-exekveringstid I — Antalet exekverade instruktioner CPI — Genomsnittligt antal klockcykler per instruktion T c —
Vad kännetecknar ett sekvensnät?
Cacheminnen: skrivning ● Träff ● Skrivbuffert ● Miss.
Minnesarkitektur Problem: Snabbare och snabbare processorer men minnena hänger inte med. Lösning: Minneshierarkier.
Digitalteknik 7.5 hp distans: 4.6 Adderare 4.45 Adderare Addition av två tal innebär att samma förfarande upprepas för varje position i talet. För varje.
DIGITAL DESIGN INLEDNING Allmänt och kursens hemsidor Analogt och digitalt Booleska variabler Binära tal Positiv och negativ logik (Aktiv hög och låg logik)
William Sandqvist 11.1 ”Glitchar” Om signaler passerar olika många grindsteg på vägen mot utgången kan kortvariga oönskade avvikelser från.
William Sandqvist IS1500 Datorteknik William Sandqvist
2G1518 Datorteknik Föreläsning 5 Bussar In- och utmatning (Input/Output, I/O) Programstyrd pollning hösten 2005 för D3 och CLMDA m fl.
3 April 2015IS1200 Datorteknik, föreläsning 61 IS1200 Datorteknik Föreläsning 6 Bushantering In- och utmatning, I/O Programstyrd pollning.
Jonny Karlsson PROCESSPROGRAMMERING Föreläsning 6 ( ) Innehåll: - Förening av dataströmmar -Blockerande I/O multiplexering -Icke blockerande.
Kronljusströmställaren 0, 1, 2, 3
6/3/2015© Mats Brorsson1 Hur mycket snabbare blir det med PC133 SDRAM jämfört med PC100 SDRAM?... blir det med en 1,4 GHz Athlon- processor jämfört.
William Sandqvist Tillståndsmaskiner  Moore-automat  Mealy-automat William Sandqvist
Kronljusströmställaren 0, 1, 2, 3
14 July 2015 IS1200/2G1518 Datorteknik, föreläsning 2, ht2007 (D2)1 IS1200 Datorteknik Föreläsning 2 Vi bygger en processor Kursboken, valda delar av kapitel.
Shannon dekomposition
4 August 2015 IS1200 Datorteknik föreläsning CE - F91 IS1200 Datorteknik Övning 10.
William Sandqvist Övning 10 Processorkonstruktion med pipe-line.
William Sandqvist Låskretsar och Vippor Låskretsar (latch) och vippor (flip-flop) är kretsar med minnesfunktion. De ingår i datorns minnen.
Grundläggande datavetenskap, 4p
Kombinatoriska byggblock
Digitala tal och Boolesk algebra
Digitalteknik 3p - Kombinatoriska Byggblock
Digitalteknik 3p - Sekvenskretsar
Kombinatoriska byggblock
Kombinatoriska byggblock
Digitalteknik 3p - DA- och AD-omvandling
Introduktion till ASIC
Konstruktion av kombinatorisk och sekventiell logik
Digitalteknik 3p - Kombinatoriska Byggblock
Digitalteknik 3p - Kombinatoriska Byggblock
Presentationens avskrift:

16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F2 1 IS1500 Datorteknik och komponenter Föreläsning DC F2 Kretsar med återkoppling Minnen

IS1500 Datorteknik o k Digitala komponenter Assemblerprogram C In- och utmatning Avbrott och "trap" Cacheminnen Trådar, synkronisering DC F1 DC F2 CE F1 CE F3 CE F4 CE F5 CE F6 CE F7 CE F8 CE F9 CE F10 CE F2 DC Ö1 DC Ö2 CE Ö4 CE Ö1 CE Ö2 CE Ö3 CE Ö10 CE Ö1 CE Ö2 CE Ö3 CE Ö5CE Ö6 lab dicom lab nios2time hemlab C lab nios2io lab nios2int hemlab cache hemlab trådar tentamen 16 July IS1500 Datorteknik och komponeneter, föreläsning DC-F2

Från föreläsning DC-F1 zMånga olika grindar: AND, OR, INV NAND, NOR, XOR, XNOR,... zAvkodare zMultiplexer zHeladderare, zNegativa heltal med 2-komplementrepr. zAdderarkrets, även för subtraktion zKomparator 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F23

Exempel på grindar 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F24

Exempel på avkodare 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F25 m insignaler n utsignaler m till n avkodare ( n är oftast 2 m ) 2-4 avkodare, 3-8 avkodare,... 0 n-1 Insignaler anger binärt index för den utsignal som ska vara aktiv......

Exempel på multiplexer (väljare) 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F26 en utsignal m till 1 multiplexer ( m är oftast jämn 2-potens, 2 n ) 2-1 mux, 4-1 mux, 8-1 mux,..... m st insignaler n styrsignaler/adress Styrsignaler anger binärt index för den insignal som ska finnas på utsignalen......

Heladderare Full Adder 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F27 ab c in s C ut FA Adderar binärt en position inklusive carryin

Adderar-krets (för heltal i 2komplement) 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F28 FA Adderar 2 n-bitars heltal i 2 komplementrepresentation Det kan bli overflow/ spill !!!

Adderar-krets subtraktion 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F29 FA SUB/ADD Subtraktion utförs som addition av 2-komplement A – B = A + ( -B )

Komparator 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F210 U=1 om A = B (för varje par av de n bitpositionerna) U=0 för alla andra fall (A är inte = B) AB n n Komparator

Föreläsning DC-F2 nya komponenter zlatch, flip-flop, vippa zD-vippa, T-vippa,... zRegister (flera vippor) zRegister File (flera register) zMinneskrets (lagrar många bitar) zMinnesmodul (byggs av många minneskretsar) zSekvensnät July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F211

Kombinatoriskt nät 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F212 X0X0 X1X1 X2X2 U1U1 U0U0... med NAND-nät kan varje Boolesk funktion byggas Utsignalernas värde beror på nuvarande värde på insignaler (inte på tidigare värden) En viss insignalkombination ger alltid samma utsignal

Kombinatoriskt nät ett exempel 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F213 b a x Analysera detta NAND-nät x =......

Nät med återkoppling 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F214 R S Q Rita om detta nät så får man figur som på nästa sida Q’

SR-latch med NOR-grindar 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F215 R S Q Q’ R är en Reset-signal, S är en Set-signal Båda är aktivt höga

SR-latch med NOR-grindar 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F216 R S Q Q’ Exempel på ”stabilt” läge Vad händer om man ändrar S från 0 till 1 och tillbaks till 0

SR-latch med NOR-grindar 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F217 R S Q Q’ Exempel på ”stabilt” läge Vad händer om man ändrar S från 0 till 1 och tillbaks till 0 Latchen slår om från 0 till 1 (S = Set)

SR-latch med NOR-grindar 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F218 R S Q Q’ Exempel på ”stabilt” läge Vad händer om man ändrar R från 0 till 1 och tillbaks till 0

SR-latch med NOR-grindar 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F219 R S Q Q’ Exempel på ”stabilt” läge Vad händer om man ändrar R från 0 till 1 och tillbaks till 0 Latchen slår om från 1 till 0 (R = Reset)

Klockad SR-latch med NOR-grindar 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F220 R S Q Q’ clock D Utsignalen Q följer insignal D då clock är aktiv (hög) Utsignalen Q ”låses” då clock blir passiv (”går låg”)

SR-latch med NAND-grindar 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F221 S’ R’ Q Q’ R’ är en Reset-signal, S’ är en Set-signal Båda är aktivt låga

Klockad SR-latch med NAND-grindar 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F222 C S’ R’ Q Q’ D Utsignalen Q ”följer” insignal D då C är aktiv (hög) Utsignalen Q ”låses” då C blir passiv (”går låg”)

D flip-flop omslag i Q på negativ flank 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F223 C Q D C Q D C DQ

Flanktriggad D-vippa ”standard-vippa” 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F224 Synkront omslag (till D) sker på positiv flank på C Asynkront (direkt) omslag vid låg signal på clear eller preset C D preset Q Q’ clear preset Q Q’

Flanktriggad D-vippa ”standard-vippa” D Clock P4 P3 P1 P Q' Q 4 D Q Clock Utan preset och clear blir det 6 NAND-grindar. Även med Preset och Clear blir det 6 NAND-grindar S R 16 July IS1500 Datorteknik och komponeneter, föreläsning DC-F2

Synkron D-vippa 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F226 clock D preset Q Q’ clear WR D in clock 0 1 D ut Synkront omslag (till D) sker på positiv flank på clock om WR=1 Om WR=0 har skrivs gamla värdet in i vippan (inget omslag)

Synkron T-vippa 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F227 clock D preset Q Q’ clear T clock 0 1 D ut Synkront omslag (växling) sker på positiv flank på clock om T=1 Om T=0 har skrivs gamla värdet in i vippan (inget omslag)

Synkront register, 32 bitar 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F228 clock D in D ut 32 bitars register 32 D-vippor Skrivning sker på varje positiv flank på clock Utsignal alltid tillgänglig

Synkront register, 32 bitar med villkorlig skrivning 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F229 clockWR D in D ut 32 bitars register 32 D-vippor Skrivning sker på positiv flank på clock endast om WR=1 Utsignal alltid tillgänglig

Synkront register, 32 bitar med tree-state busdrivkrets 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F bitars register clockWR D in D ut 32 bitars busdrivkrets OE Utsignal endast om OE = 1 (annars tree-state = ”bortkopplat”)

Symbol för komponent 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F231 WR OE WR clock

Register File Read from any register 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F232 OE WR clock Adress- Avkodare Data in Data ut Register Read Address OE WR clock OE WR clock... Bus

Register File Write to any register 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F233 OE WR clock Data in Data ut Register Write Address OE WR clock OE WR clock... clock Adress- Avkodare Bus

Register File symbol om 1 Read 1 Write 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F234 D ut 32 bitar D in 32 bitar 32 x 32 Read address 5 bitar Write address 5 bitar clock

Register File Multi-ported: 2 Read 1 Write 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F235 D ut 32 bitar D ut 32 bitar D in 32 bitar 32 x 32 Read address 5 bitar Read address 5 bitar Write address 5 bitar clock

Register File Multi-ported: 2 Read 1 Write 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F236 D ut 32 bitar D in 32 bitar 32 x 32 Read address 5 bitar Write address 5 bitar D ut 32 bitar 32 x 32 Read address 5 bitar Bus

Minneskrets lagringsplats för bitar 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F237 RWM 2 m x n RWM = Read Write Memory t.ex x 8 (1K x 8) 1024 x 8 bitar/celler

Minneskrets vilka signaler behövs 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F238 D ut n bitar Read Address m bitar 2 m x n För läsning behövs

Minneskrets vilka signaler behövs 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F239 D ut n bitar Read Address m bitar 2 m x n För skrivning behövs dessutom D in n bitar Write

Minneskrets vilka signaler behövs 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F240 D ut n bitar Read Address m bitar 2 m x n För att spara energi behövs dessutom D in n bitar Write CS – Chip Select

Minneskrets vilka signaler behövs 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F241 D ut n bitar Read Address m bitar 2 m x n För att bygga större minnen behövs dessutom D in n bitar Write CS – Chip Select OE

Minneskrets vilka signaler brukar finnas 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F242 D in och D ut n bitar Address m bitar 2 m x n Write/Read CS – Chip Select OE

Stort minne av flera små kretsar läs från en ”rad” ut på busen med OE 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F Data-ut Read address 1K x kretsar ger här 8K x 64 (8 rader 8 kolumner)

Stort minne av flera små kretsar skriv till en ”rad” 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F Data-in Write address

Skiftregister ”Minns förra invärdet” 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F245 clock D preset Q Q’ clear clock D preset Q Q’ clear clock D preset Q Q’ clear in

Sekvensnät Starta med värde July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F246 clock D preset Q Q’ clear clock D preset Q Q’ clear clock D preset Q Q’ clear

Sekvensnät Starta med värde July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F247 clock D preset Q Q’ clear clock D preset Q Q’ clear clock D preset Q Q’ clear

Sekvensnät Starta med värde July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F248 clock D preset Q Q’ clear clock D preset Q Q’ clear clock D preset Q Q’ clear

Kombinatoriskt nät 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F249 X0X0 X1X1 X2X2 U1U1 U0U0... med NAND-nät kan varje Boolesk funktion byggas Utsignalernas värde beror på nuvarande värde på insignaler (inte på tidigare värden) En viss insignalkombination ger alltid samma utsignal

Sekvens nät 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F250 X0X0 X1X1 X2X2 U1U1 U0U0 Utsignalerns värde beror på nuvarande värde på insignaler och på tidigare värden Utsignalenas värde beror på en sekvens av värden på insignalerna En viss insignalkombination kan ge olika utsignal (beroende på tidigare värden) ? ? ?

Sekvens nät 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F251 X0X0 X1X1 X2X2 U1U1 U0U0 Utsignalerns värde beror på nuvarande värde på insignaler och på tidigare värden Utsignalenas värde beror på en sekvens av värden på insignalerna Värden kan växla direkt då insignaler växlar Asynkrona nät Återkoppling i grindnät

Sekvens nät 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F252 X0X0 X1X1 X2X2 U1U1 U0U0 Utsignalerns värde beror på nuvarande värde på insignaler och på tidigare värden Utsignalenas värde beror på en sekvens av värden på insignalerna Värden kan växla direkt då insignaler växlar. Vippor växlar på clock-flank Synkrona nät Återkoppling klockade vippor och grindnät clock

Sekvens nät 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F253 X0X0 X1X1 X2X2 U1U1 U0U0 Utsignalerns värde beror på nuvarande värde på insignaler och på tidigare värden Utsignalernas värde beror på en sekvens av värden på insignalerna Vippor i kretsen lagrar kretsens nuvarande ”tillstånd” (state) Vid varje klockflank kan kretsen byta tillstånd (vipporna ändrar värden) clock delta lambda

16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F start u1u0 ska räkna 00  gå till  uppåt 10  nedåt 11  gå till u1u0 m1m Syntes av sekvensnät – räknare Exempel på tillståndsgraf

Föreläsning DC-F2 nya komponenter zlatch, flip-flop, vippa zD-vippa, T-vippa,... zRegister (flera vippor) zRegister File (flera register) zMinneskrets (lagrar många bitar) zMinnesmodul (byggs av många minneskretsar) zSekvensnät July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F255

FPGA Field Programmable Gate Array zInnehåller många LE – Logic Elements z LE i kretsen på DE2-brädan zI första labben används ett LE zNios2 processorn använder cirka ¼ zNästa blad visar schema för ett LE zBladet efter ger vägledning för ananlys 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F256

16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F257

Vad finns i ett Logic Element zEn flanktriggad D-vippa med lite finesser zEn Look-Up Table för 4 variabler / insignaler varav en insignal kan väljas från vippan zProgrammerbara 2-1 muxar som styr inkoppling av insignal data3 och om vippan ska användas eller ej zVal vilken utsignal som ska kunna routas vidare zEn hel del mera finesser / klurigheter 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F258

Prova en krets på FPGA Steg som ingår i labben zCreate a new project zCreate a new Block Diagram/Schematic File zDraw a schematic diagram. zCompile the project zCreate a Vector Waveform File. zDraw input waveforms. zSimulate the project zAssign Pins. zCreate a Block Symbol File. zDownload your design into the DE2 board. zTest your design. 16 July 2015 IS1500 Datorteknik och komponeneter, föreläsning DC-F259