pamięci - rkpomoce
Transkrypt
pamięci - rkpomoce
PAMIĘCI Część 1 Przygotował: Ryszard Kijanka WSTĘP Pamięci półprzewodnikowe są jednym z kluczowych elementów systemów cyfrowych. Służą do przechowywania informacji w postaci cyfrowej. Liczba informacji, które mogą przechowywać pojedyncze układy scalone pamięci, zawiera się w zakresie od kilobajtów do gigabajtów. PODSTAWOWE DEFINICJE DOTYCZĄCE PAMIĘCI DEFINICJA 1. Pamięciami półprzewodnikowymi nazywamy cyfrowe układy scalone przeznaczone do przechowywania większych ilości informacji w postaci binarnej. Podstawowymi parametrami pamięci są pojemność, czas dostępu i transfer danych. PODSTAWOWE DEFINICJE DOTYCZĄCE PAMIĘCI DEFINICJA 2 Pojemnością pamięci nazywamy maksymalną liczbę informacji, jaką możemy przechować w danej pamięci. Pojemność pamięci podajemy w bitach (b) lub bajtach (B). Podkreślamy, co zresztą zostanie dokładnie wyjaśnione przy okazji omawiania organizacji pamięci, że pojemność pamięci nie jest liczbą słów, które możemy w niej przechowywać. PODSTAWOWE DEFINICJE DOTYCZĄCE PAMIĘCI DEFINICJA 3. Czasem dostępu do pamięci nazywamy czas, jaki musi upłynąć od momentu podania poprawnego adresu słowa w pamięci do czasu ustalenia się poprawnej wartości tego słowa na wyjściu pamięci w przypadku operacji odczytu lub w przypadku operacji zapisu - czas, jaki upłynie do momentu zapisania wartości do tego słowa z wejścia pamięci. W technice komputerowej używane są głównie pamięci półprzewodnikowe o dostępie swobodnym (w odróżnieniu od dostępu sekwencyjnego). PODSTAWOWE DEFINICJE DOTYCZĄCE PAMIĘCI DEFINICJA 4 Pamięcią o dostępie swobodnym nazywamy pamięć, dla której czas dostępu praktycznie nie zależy od adresu słowa w pamięci, czyli od miejsca, w którym jest przechowywana informacja. Kolejnym ważnym parametrem pamięci (szczególnie w postaci modułów) jest jej transfer danych (ang. data transfer rate), zwany czasami przepustowością ( ang , throuthput). Transferem danych pamięci nazywamy maksymalną liczbę danych, jaką możemy odczytywać z pamięci lub zapisywać do pamięci w jednostce czasu. Transfer danych pamięci może być podawany w jednostkach informacji na sekundę (na przykład w MB/s), jednak znacznie częściej dla modułów pamięci stosowanych w PC podaje się częstotliwość zegara taktującego transfer lub liczbę transferów na sekundę (np. MT/s). W dwóch ostatnich przypadkach, chcąc obliczyć transfer danych, czyli przepustowość, musimy znać liczbę bitów przesyłanych w jednym transferze (obecnie zwykle 64 bity). PODZIAŁ PAMIĘCI Ze względu na własności użytkowe pamięci półprzewodnikowe możemy podzielić na pamięci RAM i ROM. Definicja 1 Pamięcią RAM nazywamy pamięć półprzewodnikową o dostępie swobodnym przeznaczaną do zapisu i odczytu. RAM jest pamięcią ulotną, co oznacza, że po wyłączeniu jej zasilania informacja w niej przechowywana jest tracona. Definicja 2 Pamięcią ROM nazywamy pamięć półprzewodnikową o dostępie swobodnym przeznaczaną tylko do odczytu. ROM jest pamięcią nieulotną. Z podanych własności pamięci wynikają ich zastosowania w technice komputerowej. Z pamięci RAM buduje się pamięć operacyjną komputera przeznaczoną do przechowywania, w trakcie pracy systemu, danych oraz programów (gdyż RAM jest pamięcią do zapisu i odczytu). W pamięci ROM przechowuje się programy inicjalizujące pracę komputera, gdyż muszą być one przechowywane w pamięci nieulotnej. PODZIAŁ RAM Ze względu na technologię wykonania pamięci RAM dzielimy na dwie podstawowe grupy: pamięci dynamiczne - DRAM, pamięci statyczne - SRAM. Pomiędzy tymi dwoma grupami pamięci występują istotne różnice w ich parametrach i własnościach użytkowych. ORGANIZACJA PAMIĘCI n DB AB Podstawowe wprowadzenie układu scalonego pamięci m Pamięć p-p R/W# CS# DB- Szyna wejścia/wyjścia danych <DQ> - informacji AB- Wejście adresowe służy do dokonania wyboru, na którym z wielu słów w pamięci zastanie w y k o n a n a operacja (zapisu bądź odczytu). R/W# - Wejście sterujące informuje układ pamięci ,jakiego rodzaju operacja będzie wykonywana: odczyt czy zapis C S # - Wejście służy d o uaktywnienia układu pamięci. Wejście to jest używane przy budowie zespołów pamięci DEFINICJE Definicja 1 Adresem nazywamy niepowtarzalną liczbę (numer) przypisaną danemu miejscu (słowu) w pamięci w celu jego identyfikacji. Definicja 2 Słowem w pamięci nazywamy zestaw pojedynczych komórek (pojedynczych bitów) pamięci, do którego odwołujemy się pojedynczym adresem. Liczbę bitów w pojedynczym słowie pamięci będziemy nazywać długością słowa pamięci. Z UNIKALNOŚCI ADRESU (czyli niepowtarzania się tego samego adresu) - wynika z kolei minimalna liczba linii szyny adresowej, i tak przy m- bitowej szynie adresowej mamy: 2m adresów mamy warunek : przy N - ilości słów w pamięci N<= 2m aby poprawnie zaadresować N słów, potrzebujemy m - log2 N - bitów adresu Jeżeli oznaczymy przez: M -pojemność pamięci , n- długość słowa m- liczbę linii adresowych przez M = nx2m DEFINICJA ORGANIZACJĄ PAMIĘCI NAZYWAMY SPOSÓB PODZIAŁU OBSZARU PAMIĘCI NA SŁOWA. PRZYKŁAD – 32b – różna organizacja CS# R/W# D – Dane A - Adres Komórka pamięci jednobitowa 32 x 1b = 32b DO A4 A3 A2 A1 A0 słowo pamięci CS# Org. Bajtowa R/W# 4x1B = 4x8b=32b D7 D6 D5 D4 D3 D2 D1 D0 A1 A0 ŁĄCZENIE UKŁADÓW PAMIĘCI Budowa bloków (banków) pamięci polega na łączeniu układów scalonych pamięci o określonej pojemności i organizacji w ten sposób, aby uzyskać zespoły pamięci o większej pojemności i/lub o zmienionej długości słowa. Dlatego problem rozbudowy pamięci możemy podzielić na dwa podstawowe przypadki: zwiększanie (rozszerzanie) długości słowa przy niezmienionej liczbie słów, zwiększanie liczby słów przy niezmienionej długości słowa Najczęściej występują oba te przypadki ZWIĘKSZANIE DŁUGOŚCI SŁOWA W celu zwiększenia długości słowa pamięci szerszą magistralę danych budujemy z bitów linii danych kolejnych układów scalonych pamięci, natomiast magistralę adresową i sygnały sterujące łączymy równolegle. Następuje tu równolegle połączenie sygnałów CS# , tworząc słowa leżące w takim samym miejscu o zwiększonej długości w blokach. Na wszystkich słowach składowych wykonujemy tą samą operację –stąd, równoległe połączenia sygnałów R/W#. PRZYKŁAD Schemat połączenia układów – rozszerzenie długości slowa Mamy tu: 1Mx4b pojemność 4MB +1Mx1b pojemność 1MB Budujemy 1Mx 9b /czyli budowa bajtowa z bitem kontroli parzystości/ Jak widać liczba linii adresowych nie uległa zmianie/ liczba słów ta sama/ Zmianie uległa liczba linii danych MODUŁ PAMIĘCI – NP. MA POSTAĆ SIMM 1M x 4b 1M x 4b 1M x 1b 1M x 1B Pamięć w organizacji bajtowej Bit kontroli parzystości ZWIĘKSZANIE LICZBY SŁÓW W PAMIĘCI Zwiększenie liczby słów pamięci oznacza zwiększenie liczby potrzebnych adresów, a co za tym idzie - rozbudowę szyny adresowej o dodatkowe bity potrzebne do uzyskania tych adresów. Przy niezmienionej długości słowa szyna danych pozostaje bez zmian. Dodatkowe bity adresu służą, przy wykorzystaniu dekodera, do wyboru jednego z łączonych układów pamięci, z którego odczytamy lub do którego zapiszemy informację. Wyboru dokonujemy przy użyciu wejścia CS# uaktywniającego układy scalone pamięci. Magistrale adresowe, danych i sygnały sterujące układów, z których budujemy nowy blok pamięci, łączymy równolegle. ZWIĘKSZANIE LICZBY SŁÓW PAMIĘCI Mamy: 256k x 4b Budujemy; 1M x 4b Do jego budowy używamy 4 układów scalonych i dekodera Bity Al9 i Al8 adresu, podawane na dekoder, uaktywniają dokładnie jedno z jego czterech wyjść. Powoduje to z kolei uaktywnienie dokładnie jednego układu scalonego pamięci. W ramach tego układu za pomocą pozostałych bitów adresu wybieramy słowo, na którym zostanie wykonana operacja zapisu bądź odczytu. Jeżeli moduł pamięci potraktujemy jako pojedynczy układ scalony pamięci, możemy traktować budowę banku pamięci przez łączenie kilku modułów pamięci jako przypadek zwiększania liczby słów w pamięci PAMIĘCI CZĘŚĆ 2 Pamięci dynamiczne RAM