Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Multipleksery, Rejestry, Pamięci Ernest Jamro Kat. Elektroniki AGH.

Podobne prezentacje


Prezentacja na temat: "Multipleksery, Rejestry, Pamięci Ernest Jamro Kat. Elektroniki AGH."— Zapis prezentacji:

1 Multipleksery, Rejestry, Pamięci Ernest Jamro Kat. Elektroniki AGH

2 Literatura Józef Kalisz – Podstawy Elektroniki Cyfrowej Baranowski J. et.al. Układy Elektroniczne cz.3 – Układy i systemy cyfrowe (ang.)www.wikipedia.org

3 Multiplekser Mux 2:1 Mux 4:1

4 Multiplekser 2:1 na bramkach Sel\In1, In Out= Sel In0 + Sel In1

5 Multiplekser na bramkach – postać ogólna Mux 4:1

6 Multiplekser na buforach trójstanowych Aby uniknąć krótkotrwałego zwierania buforów stosuje się krótki czas martwy w którym wszystkie bufory są w stanie wysokiej impedancji. Wymaga to użycia automatu zamiast prostego dekodera kodu binarnego na 1 z n.

7 Multiplekser na bramkach OC

8 Demultiplekser

9 Wybieranie 2 wymiarowe Sposób wybierania np. klawiszy, komórek pamięci, itd

10 Multipleksowanie w czasie W układach scalonych z reguły bardziej kosztowne jest dodanie dodatkowego wyprowadzenia niż dodatkowej logiki Wyświetlacz 7-segmentowy Tylko jeden wyświetlacz jest aktywny w danej krótkiej chwili czasowej

11 SIPO (Serial-In Parallel-Out)

12 SIPO (Clock Enable) – błędne użycie Przykład taktowania co drugi takt zegara modułu SIPO i złego użycia bramki AND na sygnale zegarowym – powstaje wyścig!!!

13 SIPO (Clock Enable) – poprawne użycie Przykład taktowania co drugi takt zegara SIPO – sygnał zegarowy jest wyjściem Q przerzutnika (Uwaga wyścig może powstać pomiędzy sygnałem D in a Clk2).

14 SIPO (CE - Clock Enable)

15 PIPO (Parallel-In Parallel-Out)

16 SISO (Serial-In Serial-Out)

17 Parallel-In Serial-Out (PISO)

18 Przesyłanie danych szeregowo PISO Clk SIPO D clk takt Sposób 1 Sposób 2

19 Dwukierunkowa transmisja danych po jednym przewodzie

20 Szeregowe liczenie parzystości

21 Szeregowe sumowanie Takt Składnik A n-bitowy rejestr przesuwający C Składnik B n-bitowy rejestr przesuwający C C i-1 A Σ S B C i DQCDQC Suma n-bitowy rejestr przesuwający C

22 Sumator bitów niezerowych Sekwencyjny Równoległy

23 Dodaj,Odejmij, Przepełnienie, Przykłady Subtract: 9-1= = = = 8 Add: 9+1= = = = 10 Subtract: 9-8= = = = 1 Add: 9+8= = = = -15 Overflow Subtract: -9-8= = = = 15 Overflow Add: -9+8= = = = -1 Overflow= CarryOut N xor CarryOut N

24 Counter mod 2 N Q n+1 = Q n +1

25 Counter mod N

26 Up/Down Counter mod 2 N

27 Up/Down Counter mod N

28 Rotacja, Przesunięcie logiczne i Arytmetyczne Wejście: a 3 a 2 a 1 a 0 Lewo Rot: a 2 a 1 a 0 a 3 Log: a 2 a 1 a 0 0 Aryt: a 2 a 1 a 0 0 Prawo Rot: a 0 a 3 a 2 a 1 Log: 0a 3 a 2 a 1 Aryt: a 3 a 3 a 2 a 1 Logiczne –mnożenie/dzielenie przez 2 dla nieujemnych liczb Arytmetyczne: mnożenie/dzielenie przez 2 dla uzupełnień do dwóch Przykład: –1= 1111; -1/2= 1111= -1

29 Rejestr przesuwny w prawo lub lewo S LEFT =0 – przesuń w prawo S LEFT =1 – przesuń w lewo

30 Rejestr przesuwny w prawo i w lewo z wpisem równoległym S= 0- przesuń w prawo S=1- przesuń w lewo S=2- wpis równoległy S=3- wpis równoległy

31 Rejestr przesuwny: rotujący, logiczny, arytmetyczny Mnożenie/dzielenie przez 2 Kopiowanie bity znaku przy dzieleniu w kodzie U2

32 Barrel Shifer (szybkie przesunięcie o dowolną liczbę bitów) Mnożenie Dzielenie (kod U2 - uzupełnień do dwóch)

33 Barrel Shifter - wielopoziomowy Każdy z n poziomów przesuwa o 0 lub 2 i -bitów (i=0..(n-1)) bitów w ten sposób można przesunąć o dowolną liczbę bitów w zakresie od (0..2 n -1)-bitów używając prostych multiplekserów 2:1.

34 Pamięci - klasyfikacja ROM (Read Only Memory) - nieulotne (non-volatile) –ROM (programowany podczas produkcji układu scalonego) –PROM (programowane jednorazowo u użytkownika) –EPROM (Erasable PROM – możliwa ale uciążliwa wielokrotna programowalność –EEPROM (Electrically Erasable and Programmable ROM) –Flash (błysk-awiczne EEPROM) RAM (Random Access Memory), Ulotne Pamięci specjalizowane

35 Pamięci ROM Pamięci ROM powstają bezpośrednio w procesie produkcji układu scalonego dlatego mają następujące cechy: Stan pamięci określony na poziomie produkcji układu scalonego Brak możliwości zmiany zawartości pamięci Tanie w produkcji ale wymagają dużych nakładów (wykonania w milionach sztuk – drogie przy małej liczbie sztuk) Długi okres produkcji – kilkanaście tygodni. Pamięci coraz rzadziej stosowane

36 Schemat pojedynczej komórki ROM

37 Dwuwymiarowe wybieranie komórki pamięci

38 Pamięci PROM Programmable Read Only Memory: Programowanie pamięci wykonywane jest przez użytkownika w specjalnym urządzeniu programującym. Programowanie następuje poprzez przepalenie tzw. bezpieczników (ang. fuse) i jest nieodwracalne. Pamięci te są dzisiaj rzadko stosowane

39 Pamięci EPROM Erasable Programmable ROM Kasowanie pamięci wymaga użycie promieni UV i specjalnego okienka kwarcowego – co zdecydowanie podraża koszt produkcji. Czas kasowania to około 30min. Pamięci dzisiaj raczej nie stosowane

40 Tranzystor w EPROM (technologia FAMOS) Swobodna bramka (floating gate)

41 Pamięci EEPROM Electrically Erasable Programmable Read-Only Możliwość elektrycznego wielokrotnego kasowania pamięci. Łatwość kasowania, nie potrzeba użycia promieni UV Kasowanie całej pamięci lub pojedynczego sektora Liczba kasowań około razy

42 Programowanie i kasowanie EEPROM

43 Pamięć EEPROM Flash Struktura działania podobna do EEPROM. Bardzo szybki proces kasowania (rzędu 1ms) w porównaniu z pamięcią EEPROM (rzędu 15min.). Szybkość pracy pamięci Flash polega głównie na kasowaniu całego bloku na raz a nie jak to ma miejsce w pamięci EEPROM pojedynczych bajtów. Potrzebny tylko 1 tranzystor na 1 bit pamięci

44 Flash – kasowanie i programowanie

45 Struktura NOR i NAND pamięci Flash a)Struktura NOR b) NAND

46 Flash: NOR i NAND W strukturze NAND napięcia wszystkich (oprócz jednej) bramek WL 0 -WL 15 są na tyle wysokie że tranzystory szeregowe zawsze przewodzą. Natomiast napięcie jednej bramki jest takie, że stan pracy tranzystora zależy od zaprogramowania. Cechy struktury NOR: Swobodny odczyt, ale wolny zapis i kasowanie Preferowane jako pamięci o dostępie swobodnym (BIOS, ROM procesora) Cechy struktury NAND Preferowany odczyt całego bloku danych Tańsze w produkcji od NOR (zajmują mniej powierzchni krzemu) Szybszy zapis i kasowanie Liczba kasowań około 10 razy większa niż w przypadku NOR Preferowany dla pamięci masowych (pendrive, karty CF/SD, SSD- Solid State Drive)

47 Wielopoziomowe pamięci Flash Multiple Level Cell (MLC) Alternatywa: Single Level Cell (SLC)

48 Pamięci Flash a Interface szeregowy: I 2 C (Inter Integrated Circuit) – 2 przewody (100, 400kHz, 3.4MHz) (Philips) SPI (Serial Peripherial Interface) – 3 przewody (1-50MHz) (Motorola) Microwire – 3 przewody (1-3MHz) (National Semiconductor)

49 Przykład pamięci Flash: AT49BV322A Single Voltage Read/Write Operation: 2.65V to 3.6V Access Time – 70 ns Sector Erase Architecture – Sixty-three 32K Word (64K Bytes) Sectors with Individual Write Lockout – Eight 4K Word (8K Bytes) Sectors with Individual Write Lockout Fast Word Program Time – 12 µs Fast Sector Erase Time – 300 ms Suspend/Resume Feature for Erase and Program – Supports Reading and Programming from Any Sector by Suspending Erase of a Different Sector – Supports Reading Any Byte/Word in the Non-suspending Sectors by SuspendingProgramming of Any Other Byte/Word Low-power Operation – 12 mA Active – 13 µA Standby Data Polling, Toggle Bit, Ready/Busy for End of Program Detection VPP Pin for Write Protection RESET Input for Device Initialization Sector Lockdown Support 128-bit Protection Register Minimum 100,000 Erase Cycles Common Flash Interface (CFI)

50 Przykład odczytu danych

51 Przykład c.d.

52 Przykład c.d. -komendy

53 Pamięci ROM (Read Only Memory) RAM (Random Access Memory) Statyczne (SRAM) -Asynchroniczne -Synchroniczne Dynamiczne (DRAM) -Asynchroniczne (historia) - Synchroniczne SDRAM, DDR, DDR2, DDR3, RAM-BUS (RDRAM), XDR-DRAM Specjalizowane FIFO (First-In First-Out) LIFO (Last-In First-Out – stos) CAM (Content-Addressable Memory) LUT (Look-Up Table) (pamięć ROM/RAM)

54 Podstawowa komórka pamięci SRAM Przerzutnik bistabilny – dwa inwertery Przerzutnik RS – przejście w inny stan poprzez zwarcie Linia wiersza Linia kolumny (bit B) Linia kolumny (bit B) U DD T1T1 T5T5 T3T3 T2T2 T6T6 T4T4 Przerzutnik RS

55 Alternatywna (już nie stosowana) postać komórki SRAM Linia wiersza Linia kolumny (bit B) Linia kolumny (bit B) U DD T1T1 RDRD T3T3 T2T2 RDRD T4T4

56 Synchroniczny zapis, asynchroniczny odczyt

57 Schemat Blokowy układ: AS7C k×8bit

58 Tablica prawdy

59 Przykładowe przebiegi

60 Parametry czasowe pamięci

61 Przykładowe przebiegi (zapis)

62 Zerowanie pamięci 0 Licznik n –bitowy Clk DIN RAM 2 n x1 WE O A[n:0] wejście taktujące Brak resetu umożliwiającego zerowanie całej pamięci – konieczne jest zerowanie wszystkich komórek po kolei

63 Łączenie Pamięci, pamięć duża 128x1 z 4 pamięci 32x1 Użycie multipleksera A[6:0] A[4:0] A[6:5] dekoder 2-na-4 A0:A4 D WE D D D D Bloki pamięci RAM32x1 O O O O Multiplekser O D0 D1 D2 D3 S[1:0] E WE

64 Łączenie pamięci Zwiększenie szerokości magistrali danych (preferowane) Zwiększenie szerokości magistrali adresowej

65 Pamięci synchroniczne SRAM - odczyt t CHWEX t OEVCH t OHCEX t CEVCH t CHCEX Adres n Adres n + 1Adres n + 2 t CHCH t CH t CL t CHAX t AVCH t WEVCH Hi - Z t CHQX1 t CHQX2 t CHQV Dane z komórki o adresie n+1 CLK A 0 – A 16 t CHQZ CE OE WE Dane wyjściowe Dane z komórki o adresie n

66 Synchroniczny zapis, asynchroniczny odczyt

67 Pamięci synchroniczne SRAM - zapis t CHWEX t CEVCH t CHCEX Adres n Adres n + 1Adres n + 2 t CHCH t CH t CL t CHAX t AVCH t WEVCH CLK A 0 – A 16 CE WE t CHDX DnDn D n + 1 t DVCH Dane

68 SSRAM - Zapis i odczyt jedna magistrala danych

69 Niezależne magistrale danych do zapisu i odczytu Read before Write lub Write Before Read SSRAM, opóźnienie - 1 clk

70 Synchroniczny zapis, asynchroniczny odczyt

71

72 Pamięci wieloportowe Dwa takie same niezależne interfacey do pamięci – ale ta sama pamięć!

73 Pamięć quasi dwuportowa? Jeden port do zapisu synchronicznego, dwa porty do odczytu asynchronicznego

74 Konflikty w pamięci dwuportowej Zapis na dwóch portach pod ten sam adres – konflikt (stan nieokreślony) – Adr= A2

75 Komórka pamięci wieloportowej Pamięć jednoportowadwuportowa czteroportowa

76 Optymalizacja komórki pamięci dwuportowej Literatura: Area-Efficient Dual-Port Memory Architecture for Multi-Core Processors - Hassan Bajwa and Xinghao Chen

77 Dynamic RAM Pierwsze tranzystory- kondensatory Dzisiejsze kondensatory są budowane w 3 wymiarach aby zmniejszyć rozmiar powierzchni i zwiększyć pojemność C

78 Pamięci dynamiczne DRAM Linia kolumny (bitu) Linia wiersza CBCB CSCS W T B Ф1Ф1 Ф3Ф3 T2T2 T1T1 I1I1 I2I2 Ф1Ф1 Ф2Ф2 Ф3Ф3 Odczyt 1 Odczyt 0 U S1 U S0 U B1 U B0 UMUM UBUB USUS UMUM 1 0

79 Odczyt pamięci DRAM C Stan nieistotny RAS CAS Adres t RCD t RC WE H Hi - Z Q R t RAC RAS – Raw Address Strobe CAS – Column Address Strobe

80 Zapis pamięci DRAM RC RAS CAS Adres WE D

81 Odświeżanie RAS Adres CAS R Odświeża się cały wiersz podczas pojedynczego odczytu CAS before RAS Jeśli /CAS jest ustawiany w stan niski (aktywny) prezzd sygnałem /RAS to pamięć DRAM ignoruje adres podany na magistrali adresowej i używa swojego wewnętrznego licznika odświeżeń aby odświeżyć kolejny wiersz

82 Fast Page Mode RC RAS CAS Adres Hi - Z Q CC

83 Pamięć SDRAM Synchronouse DRAM (Single Data Rate) t CAS

84 Parametry czasowe tCAS-tRCD-tRP-tRAS przykład: CL = CAS Latency time: The time it takes between a command having been sent to the memory and when it begins to reply to it. It is the time it takes between the processor asking for some data from the memory and it returning it. TRCD = DRAM RAS# to CAS# Delay: The number of clock cycles performed between activating the Row Access Strobe and the Column Access Strobe. This parameter relates to the time it takes to access stored data. TRP = DRAM RAS# Precharge: The amount of time between the 'precharge' command and the 'active' command. The precharge command closes memory that was accessed and the active command signifies that a new read/write cycle can begin. TRAS = Active to Precharge delay: The total time that will elapse between an active state and precharge state. This is the sum of the previous timings: CL + TRCD + TRP

85 Komendy SDRAM Precharge – zakończenie dostępu do danego wiersza oraz ustawienie wzmacniaczy na napięcie progowe

86 SDRAM –c.d.

87 SDRAM – różne banki

88 DDR SDRAM- Double Date Rate Transfer danych następuje 2 razy na takt zegara – na narastające i opadające zbocze Komendy akceptowane są co takt zegara (w pierwszym przybliżeniu) i są podobne jak dla sdram Obniżono napięcie zasilania z 3.3V (sdr sdram) na 2.5V (DDR) Szybkość transmisji: 2(ddr) * 8 (bajtów) *f

89 DDR2 Transfer danych na narastającym i opadającym zboczu (błędem jest twierdzenie że 4 razy na takt zegara) Częstotliwość wewnętrzna pamięci 2 razy mniejsza od częstotliwości magistrali zewnętrznej – dlatego podczas jednego odczytu z pamięci wewnętrznej odczytywane są 4 bity, które są kolejno transferowane pojedynczo Obniżone napięci zasilania na 1.8V Aby osiągnąć wyższą wydajność od pamięci DDR pamięci DDR2 są taktowane wyższą częstotliwością Pamięci te mają większe opóźnienie (latency), np. Dla DDR typowe to 2 do 3, dla DDR2 typowe to 4 do 6 taktów zegara – opóźnienie to jest częściowo rekompensowane większą częstotliwością taktowania

90 DDR3 Częstotliwość wewnętrzna pamięci 4 razy mniejsza od częstotliwości zewnętrznej – dlatego podczas jednego odczytu wewnętrznego czytanych jest 8 bitów, które z kolei są transmitowane pojedynczo w 4 taktach zegara Zwiększono częstotliwość taktowania Zwiększono opóźnienie (latency) Zmniejszono napięcie zasilania do 1.5V

91 Dual-Channel Memory Zwiększona szerokość magistrali danych z 64-bitów do 128-bitów

92 First-In First-Out (FIFO) Wejście: A, B, -,C, -, D, E Wyjście: -, A, -, B, -, -, C, -, D, E empty full

93 Last-In First-Out (LIFO) (stos) Wejście: A, B, -,C, -, D, E Wyjście: -, B, -, C, -, -, E, -, D, A ZapisOdczytLicznik (Q n+1 ) 00Q n 10Q n +1 01Q n -1 11Q n

94 Bufor opóźniający na rejestrze przesuwnym

95 Bufor opóźniający na pamięci

96 Content-addressable memory (CAM) Podajemy wartość danej a pamięć CAM zwraca adres (lub adresy) pod którymi znajduje się podane dana W konsekwencji należy przeszukać całą pamięć aby otrzymać adres pod którym znajduje się podana dana Przykład pamięci: Adres: Dana: Dana: 4, wynik: 1; Dana 3, wynik: 2, (6, 7)

97 Look-Up Table (LUT) Kwadrat: Adres: 0, 1, 2, 3, 4... Dana: 0, 1, 4, 9, 16...

98 Obliczanie histogramu

99 Zadania lab na Zaprojektowa ć układ zapełniaj ą cy po kolei wszystkie komórki pami ę ci kolejnymi warto ś ciami u ż ywaj ą c a) pami ę ci RAM16x?S, b) RAMB16_?S 2. Z pami ę ci o szeroko ś ci danych N-bitowej skonstruowa ć pami ęć o wi ę kszej szeroko ś ci magistrali danych 2N-bitowej, 4N-bitowej (u Ŝ ywaj ą c pami ę ci a) RAM16x?S, b) RAMB16_S?). 3. Z pami ę ci o mniejszej pojemno ś ci zaprojektuj pami ę ci o a) 2, b) 4 razy wi ę kszej pojemno ś ci, przy tej samej szeroko ś ci magistrali danych (u ż ywaj ą c pami ę ci a) RAM16x?S, b) RAMB16_S?). 4. Zaprojektuj układ zapisuj ą cy (i pó ź niej odczytuj ą cy) konkretn ą warto ść pod konkretn ą lokacj ę adresow ą (u ż ywaj ą c pami ę ci a) RAM16x?S, b) RAMB16_S?). 5. U ż ywaj ą c pami ę ci dwuportowej RAMB16_S?_S? zaprojektuj układ zapisuj ą cy (i pó ź niej odczytuj ą cy) konkretn ą warto ść pod konkretn ą lokacj ę adresow ą na dwóch portach. Zaobserwuj co si ę stanie w przypadku zapisu i odczytu spod tego samego adresu równocze ś nie na dwóch portach.

100 Interface DDR

101 Ważne okno czasowe

102 Literatura: Qimonda GDDR5 – White Paper,

103 Szybkość transferu

104 GDDR5

105 GDDR5 – inwersja bitów

106 GDDR – I/O GDDR5 SGRAMs offer several features that let the controller perfectly adapt the devices input and output characteristics to the actual system impedance and thus improve the data eye for a reliable data transmission. Auto calibration for process, voltage and temperature drift compensation Software controlled adjustable drive strengths Software controlled adjustable data, address and command termination impedances Software controlled adjustable data input reference voltage


Pobierz ppt "Multipleksery, Rejestry, Pamięci Ernest Jamro Kat. Elektroniki AGH."

Podobne prezentacje


Reklamy Google