164
4 makii: wprowadzenie do budowy prostego komputera
granicy wyrównywania oraz żc (2) dostęp do niego zaczyna się właśnie na tej granicy. W przypadku słów 32-bitowych jest to osiągane poprzez wprowadzenie wymagania, aby każdy adres był wielokrotnością 4. Niektóre architektury pozwalają na ..niewyrównany dostęp" — wówczas pożądany adres nic musi zaczynać się na naturalnej granicy.
Pamięć zbudowana jest z chipów pamięci o dostępie bezpośrednim (RAM). (O pamięci mówimy szczegółowo w rozdziale 6.). Pamięć jest często opisywana za pomocą skrótu L x W (długość x szerokość). Na przykład 4M x 16 oznacza, żc pamięć ma 4M długości (to znaczy ma 4.M = 2‘x 2* = 2" słowa) i jest szeroka na 16 bitów (każde słowo ma 16 bitów). Szerokość (druga liczba z pary) przedstawia rozmiar słowa. Aby zaadresować tę pamięć (mając na myśli adresowanie słowa), musimy być w stanic niepowtarzalnie zidentyfikować 2" różnych składników, co oznacza, żc potrzebujemy 2" różnych adresów. Ponieważ adresy są liczbami binarnymi bez znaku, należy policzyć yy . ... . .
od 0 do (2‘* - 1) w systemie binarnym. Ilu to wymaga bitów? Cóż. aby policzyć w systemie binarnym
od 0 do 3 ( dla łącznic 4 składników), potrzebujemy 2 bitów. Aby policzyć w systemie binarnym od 0 do 7 (łącznic 8 składników), potrzebujemy 3 bitów. Aby policzyć w systemie binarnym od 0 do 15 (łącznie 16 składników), potrzebujemy 4 bitów. Zauważyłeś już tutaj pewien wzór? Czy potrafisz wypełnić brakujące wartości w tabeli 4.1?
TABELA 4.1. Obliczanie wymaganej liczby bitów adresowych
Suma składników |
2 |
4 |
8 |
16 |
32 |
Suma wyrażona jako potęga liczby 2 |
2* |
2: |
2} |
2J |
2S |
Liczba bitów |
1 |
2 |
3 |
4 |
?? |
Praw idłowa odpowiedź to 5 bitów. W zasadzie, jeśli komputer ma 2N adresowalnych jednostek pamięci, będzie potrzebował N bitów do niepowtarzalnego zaadresowania każdego bajtu.
Pamięć główna jest zazwyczaj większa niż jeden chip RAM. Konsekwentnie, aby otrzymać wymagany rozmiar pamięci, chipy te połączone są w pojedynczy moduł pamięci. Załóżmy na przykład, żc potrzebujesz zbudować pamięć 32K x 16. a masz jedynie chipy RAM o rozmiarach 2K x 8. Mógłbyś połączyć 16 wierszy i 2 kolumny chipów razem, tak jak to zostało pokazane na rysunku 4.5.
W icrsz 0
Wiersz 1
Wiersz 15
2K x 8 |
2K x 8 |
2K x 8 |
2K x 8 |
• •• | |
2K x 8 |
2K x 8 |
RYSUNEK 4.5. Pamięć jako zbiór chipów RAM
Każdy wiersz chipów odnosi się do 2K słów (zakładając ze komputer jest adresowalna przez bajty), ale wymaga to dwóch chipów do pokrycia całej szerokości. Adresy dla tej pamięci muszą mieć 15 bitów (jest 32K = 25 x 2 ° słów do zapisania). Jednakże każda para chipów (czyli każdy