Bài giảng Kiến trúc máy tính (Phần 2)

CHƢƠNG 4 : BỘ NHỚ VÀ CÁC HỆ THỐNG LƢU TRỮ  
4.1. Khái niệm và phân cấp bộ nhớ  
4.1.1 Khái niệm  
Bộ nhớ là một trong các thành phần quan trọng nhất của máy tính điện tử, được  
dùng để lưu trữ các lệnh sẽ được thực hiện cũng như dữ liệu. Bộ nhớ được xây dựng từ  
các phần tử nhớ cơ bản như flip-flop hay các tụ điện.  
4.1.2. Phân cấp bộ nhớ  
Các đặc tính như lượng thông tin lưu trữ, thời gian thâm nhập bộ nhớ, chu kỳ  
bộ nhớ, giá tiền mỗi bit nhớ khiến ta phải phân biệt các cấp bộ nhớ: các bộ nhớ nhanh  
với dung lượng ít đến các bộ nhớ chậm với dung lượng lớn (hình 4.1)  
Hình 4. 1. Các cấp bộ nhớ  
- Tập thanh ghi: Các thanh ghi bên trong CPU có thể coi là một trường hợp đặc  
biệt của bộ nhớ. Mức nhớ này truy nhập nhanh nhất và dễ dàng nhất, do vậy đây có thể  
xem là mức 0 của toàn bộ sự phân cấp bộ nhớ.  
- Bộ nhớ Cache: Cache được dùng để tăng tốc độ trao đổi thông tin giữa CPU  
và bộ nhớ chính, nên được gọi là bộ nhớ đệm truy nhập nhanh.  
- Bộ nhớ chính (Main memory): là hệ thống nhớ được địa chỉ hoá trực tiếp bởi  
CPU, bao gồm bộ nhớ ROM, RAM.  
- Bộ nhớ ngoài (External Memory)  
Là hệ thống nhớ chứa thư viện chương trình và dữ liệu.  
Có dung lượng lớn nhưng tốc độ chậm.  
Dung lượng: Từ vài chục MB đến vài GB.  
Nhận xét  
Ta thấy trên hình 4.1, từ trái sang phải các cấp bộ nhớ có đặc điểm sau:  
- Dung lượng giảm dần.  
- Tộc độ giảm dần.  
- Tần suất CPU truy nhập giảm dần.  
112  
- Giá thành /1 bit giảm dần.  
Các đặc tính chính của các cấp bộ nhớ dẫn đến hai mức chính là: mức cache - bộ  
nhớ trong và mức bộ nhớ ảo (bao gồm bộ nhớ trong và không gian cấp phát trên đĩa  
cứng) (hình 4.2). Cách tổ chức này trong suốt đối với người sử dụng. Người sử dụng  
chỉ thấy duy nhất một không gian định vị ô nhớ, độc lập với vị trí thực tế của các lệnh  
và dữ liệu cần thâm nhập.  
Hình 4. 2. Hai mức bộ nhớ  
Các cấp bộ nhớ giúp ích cho người lập trình muốn có một bộ nhớ thật nhanh  
với chi phí đầu tư giới hạn. Vì các bộ nhớ nhanh đắt tiền nên các bộ nhớ được tổ chức  
thành nhiều cấp, cấp có dung lượng ít thì nhanh nhưng đắt tiền hơn cấp có dung lượng  
cao hơn.  
Mục tiêu của việc thiết lập các cấp bộ nhớ là người dùng có một hệ thống bộ  
nhớ rẻ tiền như cấp bộ nhớ thấp nhất và gần nhanh như cấp bộ nhớ cao nhất. Các cấp  
bộ nhớ thường được lồng vào nhau. Mọi dữ liệu trong một cấp thì được gặp lại trong  
cấp thấp hơn và có thể tiếp tục gặp lại trong cấp thấp nhất.  
Chúng ta có nhận xét rằng, mỗi cấp bộ nhớ có dung lượng lớn hơn cấp trên  
mình, ánh xạ một phần địa chỉ các ô nhớ của mình vào địa chỉ ô nhớ của cấp trên trực  
tiếp có tốc độ nhanh hơn, và các cấp bộ nhớ phải có cơ chế quản lý và kiểm tra các địa  
chỉ ánh xạ.  
4.2. Các đặc điểm của bộ nhớ  
Các đặc trưng chính của hệ thống nhớ máy tính bao gồm: Vị trí, dung lượng,  
đơn vị truyền, phương pháp truy nhập, hiệu suất, kiểu vật lý, đặc tính vật lý, cách tổ chức.  
Vị trí (Location)  
113  
Bộ nhớ máy tính bao gồm cả hai loại bộ nhớ trong và ngoài. Bộ nhớ trong của  
máy tính thường được đề cập đến như bộ nhớ chính. Bộ nhớ ngoài của máy tính gồm  
các thiết bị lưu trữ ngoại vi, như đĩa và băng từ.  
Dung lƣợng (Capacity)  
Với bộ nhớ trong, dung lượng thường được biểu diễn dưới dạng byte hay word.  
Các độ dài word phổ biến là 8, 16 và 32 bit. Bộ nhớ ngoài có dung lượng được biểu thị  
theo byte.  
Đơn vị truyền (Unit of Transfer)  
Với bộ nhớ trong, đơn vị truyền bằng với số đường dữ liệu vào/ ra khỏi mô-đun  
bộ nhớ. Giá trị ngày thường bằng với độ dài của một word, nhưng cũng có thể khác.  
- Truyền theo từ nhớ (bộ nhớ trong).  
- Truyền theo khối nhớ (bộ nhớ ngoài).  
Phƣơng pháp truy nhập (Access Method)  
Đây là một trong những yếu tố rõ nhất giúp phân biệt các kiểu bộ nhớ. Có bốn  
loại phương pháp truy nhập.  
- Truy nhập tuần tự (băng từ): Bộ nhớ được tổ chức thành các đơn vị dữ liệu  
gọi là bản ghi. Việc truy nhập phải được thực hiện theo một dãy tuyến tính cụ thể.  
Thông tin địa chỉ được lưu trữ được dùng để phân tách các bản ghi và hỗ trợ quá trình  
tìm kiếm lấy thông tin. Một bộ phận đọc/ ghi dùng chung được sử dụng. Bộ phận này  
phải được di chuyển từ vị trí hiện thời của nó đến vị trí được yêu cầu, quét qua và từ  
chối các bản ghi trung gian. Do đó, thời gian để truy nhập một bản ghi tùy ý biến đổi  
khá cao. Các đơn vị băng từ là các đơn vị có dạng truy nhập tuần tự  
- Truy nhập trực tiếp (đĩa từ, đĩa quang): Cũng như với truy nhập tuần tự, truy  
nhập trực tiếp bao gồm việc dùng chung một bộ phận đọc/ ghi. Tuy nhiên, các khối  
hay bản ghi riêng lẻ có một địa chỉ duy nhất dựa trên vị trí vật lý. Việc truy nhập được  
thực hiện thông qua truy nhập trực tiếp cộng với tìm kiếm tuần tự, đếm hay chờ để đến  
được vị trí cuối cùng. Một lần nữa, thời gian truy nhập là biến đổi.  
- Truy nhập ngẫu nhiên (bộ nhớ chính): Mỗi trị trí khả định địa chỉ trong bộ  
nhớ có một cơ chế định địa chỉ vật lý duy nhất. Thời gian truy nhập một vị trí cho  
trước độc lập với dãy các truy nhập trước đó và không thay đổi. Do đó, bất kỳ một vị  
trí nào cũng có thể được chọn ngẫu nhiên và được định địa chỉ cũng như truy nhập trực tiếp.  
- Truy nhập liên kết (bộ nhớ Cache): Đây là kiểu truy nhập ngẫu nhiên bộ nhớ  
cho phép thực hiện việc so sánh các ví trí bit có yêu cầu trong một word phục vụ cho  
việc đối chiếu đặc biệt nào đó, và có thể thực hiện thao tác này cùng một lúc cho tất cả  
các word. Do đó, một word được trích ra dựa trên một phần nội dung của nó chứ  
không phải dựa trên địa chỉ. Tương tự với phương thức truy nhập ngẫu nhiên thông  
114  
thường, mỗi vị trí nhớ có cơ chế định địa chỉ riêng, và thời gian lấy thông tin không  
đổi, độc lập với vị trí hoặc khuôn dạng truy nhập trước đó.  
Hiệu suất (Performance)  
Đứng trên quan điểm người sử dụng, hai đặc trưng quan trọng nhất của bộ nhớ  
là dung lượng và hiệu suất vận hành. Có 3 tham số hiệu suất được sử dụng:  
- Thời gian truy nhập:  
+) Đối với bộ nhớ truy nhập ngẫu nhiên thì thời gian truy nhập chính là thời  
gian thực hiện thao tác đọc hoặc ghi.  
+) Đối với bộ nhớ truy nhập không ngẫu nhiên thì thời gian truy nhập chính là  
thời gian để đặt cơ chế ghi hoặc đọc ở một vị trí mong muốn.  
- Chu kỳ truy nhập: Khái niệm này được sử dụng cho bộ nhớ truy nhập ngẫu nhiên.  
Chu kỳ truy nhập bằng thời gian giữa hai lần truy nhập.  
Chu kỳ truy nhập bằng thời gian truy nhập cộng với thời gian trước khi truy  
nhập lần tiếp theo có thể bắt đầu.  
- Tốc độ truyền: Là tộc độ truyền dữ liệu đến hoặc ra khỏi bộ nhớ.  
Đối với bộ nhớ truy nhập ngẫu nhiên thì tốc độ truyền bằng1 chia cho chu kỳ  
truy nhập (1/chu kỳ truy nhập).  
Đối với bộ nhớ truy nhập không ngẫu nhiên thì tốc độ truyền bằng số bit truyền  
được trong 1 giây (s).  
Kiểu vật lý của bộ nhớ (Physical Type)  
- Bộ nhớ bán dẫn.  
- Bộ nhớ từ: Băng từ và đĩa từ.  
- Bộ nhớ quang: Đĩa quang.  
Các đặc trưng vật lý (Physical Characteristics)  
- Bộ nhớ khả biến hoặc không khả biến.  
+ Bộ nhớ khả biến: Mất dữ liệu khi ngắt nguồn: RAM.  
+ Bộ nhớ không khả biến: Không mất dữ liệu khi ngắt nguồn: ROM, băng từ, đĩa từ.  
- Bộ nhớ xoá được hoặc không xoá được.  
Cách tổ chức (Organization)  
Là cách sắp xếp vật lý các hệ thống nhớ để tạo nên các từ nhớ và sắp xếp các từ  
nhớ để tạo nên Mô-đun nhớ. Với từng kiểu vật lý khác nhau sẽ có cách tổ chức khác nhau.  
4.3. Bộ nhớ chính  
ROM và RAM là bộ nhớ chính (bộ nhớ trong) của máy tính thuộc khối bộ nhớ  
và được sản xuất theo công nghệ bán dẫn. ROM là bộ nhớ chỉ đọc, không mất thông  
tin khi mất điện. ROM chứa chương trình BIOS, có trên mainboard và các thiết bị  
ngoại vi. RAM là bộ nhớ truy xuất ngẫu nhiên, lưu trữ dữ liệu tạm thời. Khi mất điện,  
dữ liệu trên RAM sẽ mất. Sau đây chúng ta sẽ xem xét kỹ hai bộ nhớ chính này.  
115  
4.3.1. Bộ nhớ RAM (Random Access Memory)  
4.3.1.1. Công nghệ RAM  
Công nghệ RAM có hai loại chính: RAM tĩnh (Static RAM) và RAM động  
(Dynamic RAM). RAM động (DRAM) được chế tạo với các ô nhớ để chứa dữ liệu là  
điện áp trên các tụ điện. Điện áp có hay không có ở trên tụ điện biểu hiện hai trạng thái  
1 và 0. Vì tụ điện có tính chất phóng điện nên RAM động cần phải được làm tươi  
(refresh) để bảo dưỡng dữ liệu trên đó. Đối với RAM tĩnh (SRAM) các giá trị nhị phân  
được nhớ trên các mạch lật truyền thống. Vì vậy dữ liệu trên đó là ổn định. Do công  
nghệ như vậy nên DRAM có mật độ ô nhớ dày đặc hơn và rẻ tiền hơn SRAM, còn về  
tốc độ thì SRAM nhanh hơn DRAM rất nhiều. DRAM thích hợp cho bộ nhớ có dung  
lượng lớn. Vì vậy, công nghệ SRAM được dùng để chế tạo các bộ nhớ Cache, trong  
khi công nghệ DRAM được dùng để chế tạo các bộ nhớ chính RAM.  
Cấu tạo phần tử nhớ 1 bit của SRAM  
Phần tử nhớ 1 bit  
Thanh ghi chốt (Latch) là dạng đon giản của flip-flop, được xây dựng từ 2 cổng  
NAND hoặc 2 cổng NOR. Sự thay đổi trạng thái của thanh ghi chốt có thể xảy ra trong  
thời gian kéo dài của xung đồng hồ chứ không phải trong thời gian sườn xung đồng  
hồ, người ta gọi đó là sự chuyển mạch theomức.  
Các thanh ghi chốt 1 bit có thể được sử dụng làm các phần tử nhớ cơ bản xây  
dựng nên bộ nhớ của máy tính. Nó có 2 trạng thái cân bằng ổn định được sử dụng để  
biểu diễn 2 giá trị nhị phân 0 và 1. Khi phần tử nhớ đã được thiết lập giá trị thì nó nhớ  
mãi giá trị đó cho đến khi chúng ta thiết lập cho nó 1 giá trị mới. Vì thế người ta gọi  
nó là phần tử nhớ RAM tĩnh (Static Random Access Memory). Bộ nhớ được xây dựng  
từ các phần tử 1 bit như vậy được gọi là bộ nhớ RAM tĩnh.  
Hình 4.3 là sơ đồ mạch điện của 1 phần tử nhớ SRAM 1 bit  
và các mạch  
điện cũng nhu các tín hiệu để điều khiển sự hoạt động của nó.  
Các đường dây truyền tín hiệu trên sơ đồ ý nghĩa như sau:  
- Din: Đầu vào thông tin.  
- Dout: Đầu ra thông tin.  
- Yi,Xj : là các dây địa chỉ. Nếu ta tổ chức 1 mạng nhớ hình chữ nhật, trong đó  
phần tử nằm ở hàng i cột j thì Yi sẽ được nối với hàng i của ma trận, còn Xj sẽ  
được nối với cột j của ma trận.  
- WE (Write Enable) : Tín hiệu cho phép ghi, khi WE=1, cho phép ghi thông  
tin Din vào phần tử nhớ, lúc này đầu ra Dout có trở kháng cao vì nó được nối với đầu  
ra của bộ đệm ba trạng thái đang ở trạng thái có trở kháng cao), có thể coi Dout bị  
cách li khỏi phần tử nhớ. Khi WE=0, cho phép đọc thông tin từ phần tử nhớ, bộ đệm  
116  
ba trạng thái đóng (trở kháng thấp), Dout được nối với điểm H và có giá trị bằng Q là  
nội dung phần tử nhớ, đồng thời E=B=0 làm cho F=G=1 dẫn đến Q không đổi trạng  
thái, tức là Q không bị phụ thuộc vào Din.  
- CS (chip Select) : Tín hiệu chọn chip, đôi khi còn được kí hiệu là CE (chip  
enable). Khi có nhiều chip nhớ RAM cùng nối với đường tín hiệu chung (Din, Dout)  
thì đầu vào CS có nhiệm vụ chọn xem chip RAM nào được truyền thông tin trên bus số liệu.  
Điều kiện ghi : CS=1, Xi=1, Yj=1, WE=1, khi đó Q sẽ được thiết lập bằng Din.  
Điều kiện đọc : CS=1, Xi=1, Yj=1, WE=0, khi đó Dout sẽ nhận giá trị bằng Q.  
Khi có các phần tử nhớ 1 bit có cấu tạo như trên, rất dễ kết hợp chúng lại với  
nhau để tạo nên các bộ nhớ có dung lượng từ (word) và kích thước từ như mong muốn.  
Hình 4. 3. Mạch điện của phần tử SRAM 1 bit  
Cấu tạo phần tử nhớ 1 bit của DRAM  
Như chúng ta đã biết các phần tử nhớ RAM tĩnh (SRAM) được cấu tạo từ các  
flip-flop, 1 phần tử SRAM 1 bit như hình 4.3 được cấu tạo bởi 6 cổng NAND và 1 bộ  
đệm 3 trạng thái. Ngày nay người ta sử dụng các phần tử DRAM đơn giản hơn.  
Hình 4. 4. Mạch điện của phần tử nhớ DRAM 1 bit  
Để bố trí được số phần tử nhớ lớn nhất trong 1 vi mạch, mỗi phần tử nhớ phải  
được chế tạo sao cho đơn giản nhất. Phần tử nhớ RAM động (DRAM) mà chúng ta tìm  
117  
hiểu dưới đây chỉ cần 1 transistor cho 1 bit thông tin, chính vì vậy có thể bố trí với mật  
độ rất cao và có giá thành rẻ. Trong phần tử nhớ này người ta thay flip-flop bằng một  
tụ điện C, giá trị nhớ trong phần tử nhớ này chính là điện tích nạp trên tụ điện. Ta có  
thể sử dụng trạng thái tụ được nạp, tức là trên tụ điện C có một điện áp lớn hơn giá trị  
nhất định nào đó, biểu diễn giá trị 1 của bit, còn trạng thái không được nạp biểu diễn giá  
trị 0.  
Nguyên lý cấu tạo của một phần tử DRAM được minh họa trên hình 4.4. Bộ  
nhớ DRAM được tổ chức thành một ma trận nhớ (thường là ma trận vuông), trong đó  
dây từ (Word Line) là một trong các dây hàng của ma trận, còn dây bit (Bit Line) là  
một trong các dây cột. Phần tử nhớ được đặt ở giao điểm của các dây hàng và cột.  
Transistor T là một transistor trường (Field Efect Transistor) đóng vai trò một chuyển  
mạch điện tử. T có 3 cực là cực cổng G (gate), cực máng D (Drain) và cực nguồn S  
(Source), trong đó G là cực điều khiển, D sẽ được nối với S khi G có mức điện áp cao  
(1) so với S, ngược lại thì điện trở giữa D và S sẽ rất lớn.  
- Ghi dữ liệu (Write)  
Khi dây từ có mức tích cực (1), T ở trạng thái mở, nối tụ điện C với dây bit.  
Nếu thao tác là ghi thì giá trị cần ghi phải đặt trên dây bit. Nếu giá trị đó là 1 thì tụ C  
sẽ được nạp tới điện áp ứng với giá trị 1 trên dây bit, còn nếu giá trị đó là 0 thì tụ C sẽ  
bị phóng hết điện tích, tức là có giá trị 0.  
- Đọc dữ liệu (Read)  
Việc đọc phức tạp hơn ghi một chút do điện tích trên tụ C ứng với giá trị cần  
đọc rất nhỏ. Trước khi đặt dây từ lên mức tích cực, cần phải đặt lên dây bit điện áp  
bằng 1/2 mức chênh lệch giữa điện áp ứng với mức 0 và điện áp ứng với mức 1. Điện  
áp trên tụ sẽ làm cho điện áp dây bit thay đổi một chút theo chiều hướng tăng hoặc  
giảm, tùy thuộc vào việc nó đang nhớ giá trị 1 (high) hay 0 (low). Sự thay đổi nhỏ của  
điện áp trên dây bit sẽ được truyền tới đầu vào của một bộ khuếch đại nhạy, tại đầu ra  
của nó ta nhận được điện áp ứng với giá trị của bit chứa trên tụ C.  
- Làm tƣơi (Refresh)  
Vì mọi tụ điện đều có quá trình rò rỉ điện tích và transistor T mắc nối tiếp với  
nó dù ở trạng thái cấm cũng có một điện trở rò nhất định, cho nên sau khi được nạp,  
điện tích trên tụ C, sau một khoảng thời gian nhất định sẽ làm mất thông tin mà C  
chứa. Chính vì vậy cần phải nạp điện lại cho tụ C trước khi điện áp trên tụ giảm thấp  
hơn một ngưỡng nào đó. Việc này được gọi là làm tươi. Để làm tươi bộ nhớ DRAM,  
cần phải đọc nội dung của nó rồi viết trở lại. Việc làm tươi cần phải được tiến hành  
đều đặn theo một chu kỳ nhất định, gọi là chu kỳ làm tươi. Tên gọi RAM động  
(Dynamic RAM) xuất phát từ hoạt động này.  
118  
Trong các chip DRAM trước đây mạch điện bổ sung để thực hiện làm tươi  
thường ở ngoài chip nhớ. Ngày nay các mạch thực hiện làm tươi thường được chế tạo  
nằm ngay bên trong chip nhớ, nhờ đó chip nhớ loại này vừa có dung lượng cao vừa có  
giao diện đơn giản, chúng được gọi là quasi-static RAM.  
4.3.1.2. Bộ nhớ chính RAM  
Bộ nhớ chính RAM của máy tính được chế tạo theo công nghệ DRAM, vì vậy  
đặc trưng của bộ nhớ RAM là nó có thể đọc dữ liệu từ bộ nhớ và ghi một cách dễ dàng  
và nhanh chóng dữ liệu mới vào bộ nhớ. Quá trình đọc và ghi đều được thực hiện bằng  
tín hiệu điện. RAM cần phải được cung cấp bằng một nguồn không đổi. Nếu nguồn bị  
ngắt thì dữ liệu bị mất. Do vậy RAM là bộ nhớ tạm thời.  
Hiện nay bộ nhớ RAM có 3 loại phổ biến là DDR, DDR2 và DDR3 dựa trên  
thiết kế SDRAM (bộ nhớ truy cập ngẫu nhiên động đồng bộ - Synchronous Dynamic  
Random Access Memory), tức là sử dụng tín hiệu xung nhịp để đồng bộ hóa mọi thứ.  
DDR là viết tắt của Double Data Rate (tốc độ dữ liệu gấp đôi), tức truyền được hai  
khối dữ liệu trong một xung nhịp. Như vậy bộ nhớ DDR có tốc độ truyền dữ liệu cao  
gấp đôi so với những bộ nhớ có cùng tốc độ xung nhịp nhưng không có tính năng này  
(được gọi là bộ nhớ SDRAM, hiện không còn sử dụng cho PC nữa). Nhờ tính năng  
này mà trên nhãn của những thanh nhớ thường ghi tốc độ tốc gấp đôi so với tốc độ  
đồng hồ xung nhịp thực. Ví dụ bộ nhớ DDR2 - 800 làm việc ở tốc độ 400 MHz, DDR2  
- 1066 và DDR3 - 1066 làm việc ở tốc độ 533 MHz, DDR3 - 1333 ở 666.6 MHz ...  
Trên mỗi thanh RAM (mô-đun nhớ) đều có các chip nhớ (có thể là 4, 8, 16 chip  
nhớ), các chip nhớ được nối với nhau thông qua vi mạch. Dung lượng của bộ nhớ  
RAM chính là tổng dung lượng của các chip nhớ này. Trong ví dụ ở hình 4.5 là một bộ  
nhớ RAM của hãng Kingston, thuộc thế hệ DDRAM2, có dung lượng 2GB và có 16  
chip nhớ (mỗi mặt của RAM có 8 chip nhớ, mỗi chip nhớ có dung lượng 128MB).  
Hình 4. 5. Bộ nhớ DDRAM2  
Những thanh nhớ (mô-đun) sử dụng một cái tên khác: PCx-zzzz, trong đó x là  
thế hệ công nghệ, còn zzzz là tốc độ truyền tải tối đa trên lý thuyết (còn gọi là băng  
thông tối đa). Con số này cho biết bao nhiêu byte dữ liệu có thể được truyền từ mạch  
điều khiển bộ nhớ sang mô-đun bộ nhớ trong mỗi xung nhịp đồng hồ .  
119  
Bài toán này rất dễ giải bằng cách nhân xung nhịp DDR tính bằng MHz với 8,  
ta sẽ có tốc độ truyền tải tối đa trên lý thuyết tính bằng MB/giây. Ví dụ, bộ nhớ DDR2-  
800 có tốc độ truyền tải tối đa trên lý thuyết là 6,400 MB/giây (800 x 8) và mô-đun bộ  
nhớ mang tên PC2-6400. Trong một số trường hợp, con số này được làm tròn. Ví dụ  
như bô nhớ DDR3-1333 có tốc độ truyền tải tối đa trên lý thuyết là 10,666 MB/giây  
nhưng mô-đun bộ nhớ của nó lại có tên PC3-10666 hoặc PC3-10600 tùy nhà sản xuất.  
Những con số này chỉ là số tối đa trên lý thuyết, và trên thực tế chúng không  
bao giờ đạt đến, bởi bài toán chúng ta đang tính có giả thiết rằng bộ nhớ sẽ gửi dữ liệu  
đến mạch điều khiển bộ nhớ theo từng xung nhịp một, mà điều này thì không xảy ra.  
Mạch điều khiển bộ nhớ và bộ nhớ cần trao đổi lệnh (ví dụ như lệnh hướng dẫn bộ nhớ  
gửi dữ liệu được chứa tại một vị trí nhất định) và trong suốt thời gian này bộ nhớ sẽ  
không gửi dữ liệu. Trên đây là lý thuyết cơ bản về bộ nhớ DDR. Sau đây chúng ta sẽ  
so sánh 3 loại bộ nhớ RAM này.  
Hình 4. 6. Hình dáng các loại DDRAM  
Tốc độ (Speed)  
Đây là thông số được người dùng quan tâm nhất. Đối với DDR thì có hai cách  
gọi theo tốc độ MHz hoặc theo băng thông.  
Ví dụ, khi nói DDR333 tức là thanh RAM đó mặc định hoạt động ở tốc độ  
333MHz nhưng cách gọi PC2700 thì lại nói về băng thông RAM, tức là khi chạy ở tốc  
độ 333Mz thì nó sẽ đạt băng thông là 2700MB/s (trên lý thuyết). Thường ở Việt Nam  
thông dụng các loại RAM có bus 333 và 400, những loại có bus cao hơn thường xuất  
hiện ở những loại cao cấp như Kingston HyperX, Corsair, Mushkin LV.  
Một trong những khác biệt chính giữa DDR, DDR2 và DDR3 là tốc độ truyền  
dữ liệu lớn nhất của từng thế hệ. Dưới đây là danh sách tốc độ chung nhất cho từng thế  
hệ. Một số nhà sản xuất đã tạo ra được những loại chip lớn hơn cả tốc độ trong bảng.  
120  
Ví dụ như các bộ nhớ đặc biệt hướng tới giới overclock. Những xung nhịp có đuôi 33  
hoặc 66MHz thực ra đã được làm tròn (từ 33.3333 và 66.6666).  
Hình 4. 7. Tốc độ của DDR2, DDR3  
Điện áp  
Bộ nhớ DDR3 hoạt động ở điện áp thấp hơn so với DDR2. DDR2 lại dùng điện  
áp thấp hơn DDR. Như vậy bộ nhớ DDR3 sẽ tiêu thụ ít điện hơn DDR2, và DDR2 tiêu  
thụ ít hơn DDR. Thường thì bộ nhớ DDR sử dụng điện 2.5 V, DDR2 dùng điện 1.8 V  
và DDR3 là 1.5 V (mặc dù các mô-đun cần đến 1.6 V hoặc 1.65 V rất phổ biến và  
những chip chỉ yêu cầu 1.35 V trong tương lai cũng không phải là hiếm). Một số mô-  
đun bộ nhớ có thể yêu cầu điện áp cao hơn trong bảng, nhất là khi bộ nhớ hỗ trợ hoạt  
động ở tốc độ xung nhịp cao hơn tốc độ chính thức (ví dụ như bộ nhớ để overclock).  
121  
Hình 4. 8. Điện áp của DDR2, DDR3  
Thời gian trễ  
CAS Latency là khái niệm mà người dùng thắc mắc nhiều nhất. Trước đây, khi  
chọn RAM, người mua thường chỉ quan tâm tới tốc độ hoạt động như 100MHz hay  
133MHz. Thời gian gần đây, khái niệm CAS đang dần được người dùng để ý bởi nó  
đóng vai trò khá quan trọng vào tốc độ xử lý tổng thể của hệ thống; đặc biệt trong ép  
xung. CAS là viết tắt của “Column Address Strobe” (địa chỉ cột). Một thanh DRAM  
được coi như một ma trận của các ô nhớ và mỗi ô nhớ sẽ có địa chỉ cột CAS và địa chỉ  
hàng RAS (Row Adress Strobe). Nhưng do nguyên lý hoạt động của DRAM là truyền  
dữ liệu xuống chân nên RAS thường không quan trọng bằng CAS.  
Thời gian trễ là khoảng thời gian mà mạch điều khiển bộ nhớ phải đợi từ lúc  
yêu cầu lấy dữ liệu cho đến lúc dữ liệu thực sự được gửi tới đầu ra. Nó còn được gọi là  
CAS Latency hoặc đơn giản là CL. Con số này được viết theo đơn vị chu kỳ xung  
nhịp. Ví dụ một bộ nhớ có CL3 tức là mạch điều khiển bộ nhớ phải đợi 3 chu kỳ xung  
nhịp từ lúc truy vấn cho đến khi dữ liệu được gửi. Với một bộ nhớ CL5, mạch điều  
khiển bộ nhớ phải đợi 5 chu kỳ xung nhịp Vì thế cần sử dụng những mô-đun có CL  
thấp nhất có thể.  
Để hiểu khái niệm này, chúng ta sẽ cùng điểm nhanh qua cách thức bộ nhớ làm  
việc, đầu tiên chipset sẽ truy cập vào hàng ngang (ROW) của ma trận bộ nhớ thông  
qua việc đưa địa chỉ vào chân nhớ (chân RAM) rồi kích hoạt tín hiệu RAS. Chúng ta  
sẽ phải chờ khoảng vài xung nhịp hệ thống (RAS to CAS Delay) trước khi địa chỉ cột  
được đặt vào chân nhớ và tín hiệu CAS phát ra. Sau khi tín hiệu CAS phát đi, chúng ta  
tiếp tục phải chờ một khoảng thời gian nữa (đây chính là CAS Latency) thì dữ liệu sẽ  
được tìm thấy. Điều đó cũng có nghĩa là với CAS 2, chipset phải chờ 2 xung nhịp  
trước khi lấy được dữ liệu và với CAS3, thời gian chờ sẽ là 3 xung nhịp hệ thống.  
Tuy nhiên, CAS2 không có nghĩa nhanh hơn CAS3 tới 33 vì có nhiều yếu tố  
ảnh hưởng đến hiệu năng tổng thể của bộ nhớ.  
122  
Hình 4. 9. Thời gian trễ của DDR2, DDR3  
Cuối cùng ta sẽ đến với sự khác biệt về thiết kế bên ngoài. Mô-đun bộ nhớ cho  
từng thế hệ DDR có sự khác nhau về thông số và không thể cài mô-đun DDR2 lên khe  
cắm DDR3 được. Ta cũng không thể nâng cấp từ DDR2 lên DDR3 mà không thay thế  
bo mạch chủ và sau đó là CPU, hay tương tự với DDR và DDR2. Mô-đun DDR2 và  
DDR3 có cùng số chân, tuy nhiên khe cắm nằm ở vị trí khác nhau.  
Hình 4. 10. Số chân nối của DDR, DDR2, DDR3  
4.3.2. Bộ nhớ ROM  
ROM (Read Only Memory) là bộ nhớ giữ thông tin cố định, không thay đổi nội  
dung ngay cả khi ngắt nguồn điện nuôi. ROM chứa chương trình BIOS, có trên  
mainboard và các thiết bị ngoại vi. Có thể chia ROM thành 3 loại chính sau:  
- ROM mặt nạ (MROM - Maskable ROM), nội dung của nó được cố định trong  
quá trình chế tạo vi mạch và không thể thay đổi được sau đó.  
- ROM có thể nạp chương trình (PROM – Programmable ROM), là loại ROM  
mà người sử dụng có thể sử dụng một thiết bị chuyên dụng để nạp nội dung cho nó,  
việc này thường được gọi là “đốt ROM”. Sau khi đã nạp chương trình, nội dung của  
PROM cũng không thể thay đổi được nữa.  
- ROM có thể xóa (Erasable ROM), là loại ROM mà người sử dụng có thể nạp  
nội dung cho nó bằng thiết bị chuyên dụng, tuy nhiên người sử dụng sau này có thể  
xóa nội dung cũ để ghi nội dung mới. Loại ROM này thường là EPROM, EAROM.  
4.3.2.1. ROM mặt nạ  
Với ROM được lập trình bằng mặt nạ, nhà sản xuất đã ghi (lập trình) các vị trí  
nhớ của nó theo yêu cầu của khách hàng. Một phím âm bản, gọi là mặt nạ được sử  
dụng để kiểm soát các mối nối điện trên chip.  
123  
Vì mặt nạ rắt đắt nên loại ROM này không được mang lại hiệu quả kinh tế.  
Nhược điểm của loại ROM này là nó không cho phép lập trình lại, vì vậy nó là dạng  
ROM đúng nghĩa. Tuy nhiên ROM được lập trình bằng mặt nạ vẫn chỉ là phương pháp  
tiết kiệm nhất khi cần trang bị số lượng lớn ROM cùng loại.  
ROM mặt nạ thường tổ chức dưới dạng ma trận. Trạng thái có hay không có đi-  
ốttại vị trí (i,j) của ma trận được sử dụng để biểu diễn 1 bit dữ liệu là 1 hay 0. Mỗi  
hàng i của ma trận đi-ốt giống như 1 thanh ghi lưu trữ 1 từ (word), các dây địa chỉ Ai  
được sử dụng để chọn lấy 1 từ, đưa nội dung của nó ra ngoài qua các dây dữ liệu ra.  
Hình 4.11b là 1 “ô nhớ” của ma trận đi-ốt.  
Hình 4. 11. Cấu tạo MROM  
Việc ghi chương trình cho ROM được thực hiện bằng cách loại bỏ hoặc để lại  
đi-ốt ở giao điểm của dây hàng và dây cột của ma trận.  
• Nếu đi-ốt tại hàng i, cột j được giữ lại, khi mức điện áp trên dây địa chỉ là 1  
(cao), đi-ốt được phân cực thuận sẽ có điện trở rất nhỏ, vì vậy Dj=Ai=1.  
• Nếu đi-ốt tại hàng i, cột j đã bị loại bỏ, dù mức điện áp trên dây địa chỉ là cao, nó  
cũng không ảnh hưởng tới dây dữ liệu ra Dj lúc này được “nối đất” (low,0) qua một  
điện trở.  
124  
Bảng 4. 1. Bảng chân lý của MROM  
A9 A8  
A7  
0
A6  
0
A5  
0
A4  
0
A3  
0
A2  
0
A1  
0
A0  
1
D3  
0
D2  
1
D1  
0
D0  
1
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
1
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
1
0
0
0
1
0
0
0
0
0
0
0
0
1
0
1
0
0
0
0
0
0
0
1
0
0
1
0
0
0
0
0
0
0
0
0
0
1
0
0
0
0
0
0
0
0
0
1
1
1
0
Các công nghệ MOS và công nghệ lưỡng cực đều được sử dụng để chế tạo  
ROM. Thay cho mỗi đi-ốt người ta có thể dùng 1 transistor lưỡng cực (Bo-polar  
transistor) hay 1 transistor đơn cực (MOSFET), tuy vậy nguyên tắc vẫn không có gì  
thay đổi. Thời gian truy cập giữa 2 loại ROM lưỡng cực và MOS là khác nhau, Rom  
lưỡng cực (Bo-polar ROM) là: 50-90ns, nó có tác động nhanh hơn, khả năng kích  
thích tốt hơn. Đối với ROM theo công nghệ MOS (MOS ROM) thời gian tác động lớn  
gấp 10 lần (chậm hơn), nhưng kích thước nhỏ hơn, tiêu thụ ít năng lượng hơn.  
Hình 4. 12. Bộ nhớ MROM có dung lượng 16x1 sử dụng Transistor MOS  
4.3.2.2. PROM – ROM có thể nạp chƣơng trình  
125  
Có cấu tạo giống MROM nhưng ở mỗi vị trí nhớ đều có linh kiện nối với cầu  
chì. Như vậy khi xuất xưởng các ROM này đều chứa cùng một loại bit (gọi là ROM  
trắng), lúc sử dụng người lập trình thay đổi các bit mong muốn bằng cách phá vỡ cầu  
chì ở các vị trí tương ứng với bit đó. Một khi cầu chì đã bị phá vỡ thì không thể nối lại  
được do đó loại ROM này cho phép lập trình một lần duy nhất để sử dụng, nếu bị lỗi  
không thể sửa chữa được (hình 4.13).  
Người ta có thể dùng 2 đi-ốt mắc ngược chiều nhau, mạch không dẫn điện, để  
tạo bit 0 khi lập trình thì một đi-ốt bị phá hỏng tạo mạch nối tắt, đi-ốt còn lại dẫn điện  
cho bit 1.  
Hình 4. 13. Bộ nhớ PROM  
Thiết bị ghi PROM (PROM Programmer hay PROM Write)  
Việc ghi PROM đòi hỏi những mạch cung cấp dòng điện đủ lớn để đốt cháy  
cầu chì ở những bit mong muốn. Các bộ ghi PROM thường là hệ vi xử lí chuyên dụng.  
Đó là thiết bị tạo ra địa chỉ, số liệu và xung dòng điện ghi cần thết đẻ làm chảy các cầu  
chì. Mỗi bộ ghi PROM có thể ghi 1 hay 1 họ PROM, có những bộ ghi PROM vạn  
năng có thể ghi bất kì loại PROM nào bằng cách sử dụng 1 mô-đun riêng. Mô-đun này  
giúp cho bộ ghi PROM thích hợp ở mức xung ghi, dòng điện và bố trí chân với 1 mạch  
PROM cụ thể.  
Giá thành ghi PROM đắt hơn ghi ROM nên PROM chỉ thuận lợi cho những  
ứng dụng với số lượng nhỏ.  
4.3.2.3. ROM lập trình đƣợc, xóa đƣợc bằng tia U.V.  
(Ultra Violet Erasable Programmable ROM, U.V. EPROM)  
Đây là loại ROM rất tiện cho người sử dụng vì có thể dùng được nhiều lần bằng  
cách xóa và nạp lại. Cấu tạo của tế bào nhớ của U.V. EPROM dựa vào một transistor  
MOS có cấu tạo đặc biệt gọi là FAMOS (Floating Gate Avalanche Injection MOS),  
EPROM – ROM có thể xóa và ghi lại  
126  
Hình 4. 14. Cấu tạo EPROM  
Trên nền chất bán dẫn N pha loãng, tạo 2 vùng P pha đậm (P+) nối ra ngoài cho  
2 cực S (Source) và D (Drain). Trong lớp cách điện SiO2 giữa 2 cực người ta cho vào  
một thỏi Silicon không nối với bên ngoài và được gọi là cổng nổi. Khi nguồn VDD,  
phân cực ngược giữa cực nền và Drain còn nhỏ, transistor không dẫn, nhưng nếu tăng  
VDD đủ lớn, hiện tượng thác đổ (avalanche) xảy ra, electron đủ năng lượng chui qua  
lớp cách điện tới bám vào cổng nổi. Do hiện tượng cảm ứng, một điện lộ P hình thành  
nối hai vùng bán dẫn P+, transistor trở nên dẫn điện. Khi cắt nguồn, transistor tiếp tục  
dẫn điện vì electron không thể trở về để tái hợp với lỗ trống.  
Mỗi tế bào nhớ EPROM gồm một transistor FAMOS nối tiếp với một transistor  
MOS khác mà ta gọi là transistor chọn, như vậy vai trò của FAMOS giống như là một  
cầu chì nhưng có thể phục hồi được.  
Để loại bỏ transistor chọn người ta dùng transistor SAMOS (Stacked Gate  
Avalanche Injection MOS) có cấu tạo tương tự transistor MOS nhưng có đến 2 cổng  
nằm chồng lên nhau, một được nối ra cực Gate và một để nổi. Khi cổng nổi tích điện  
sẽ làm gia tăng điện thế thềm khiến transistor trở nên khó dẫn điện hơn. Như vậy nếu  
ta chọn điện thế Vc ở khoảng giữa VT1 và VT2 là 2 giá trị điện thế thềm tương ứng  
với 2 trạng thái của transistor (VT1<Vc<VT2) thì các transistor không được lập trình  
(không có lớp electron ở cổng nổi) sẽ dẫn còn các transistor được lập trình sẽ không dẫn.  
Để xóa EPROM, người ta chiếu tia U.V. vào các tế bào trong một khoảng thời  
gian xác định để electron trên cổng nổi nhận đủ năng lượng vượt qua lớp cách điện trở  
về vùng nền tái hợp với lỗ trống xóa điện lộ P và transistor trở về trạng thái không dẫn  
ban đầu.  
Hình 4. 15. Xóa EPROM  
127  
Điểm bất tiện của U.V EPROM là cần thiết bị xóa đặc biệt phát tia U.V. và mỗi  
lần xóa tất cả tế bào nhớ trong một IC nhớ đều bị xóa. Như vậy người sử dụng phải  
nạp lại toàn bộ chương trình  
Hình 4. 16. Hình dạng bên ngoài củaEPROM  
4.3.2.3. EAROM  
EAROM (Electrically Alterable Rom) hay còn gọi là EEROM (Electrically  
Erasablr ROM) có cấu tạo tương tự EPROM nhưng có thể xóa được bằng xung điện.  
Đây là loại ROM lập trình được và xóa được nhờ xung điện và đặc biệt là có thể xóa  
để sửa trên từng byte. Các tế bào nhớ EEPROM sử dụng transistor MNOS (Metal  
Nitride Oxide Semiconductor) có cấu tạo như hình sau:  
Hình 4. 17. Cấu tạo EAPROM  
Giữa lớp kim loại nối ra các cực và lớp SiO2 là một lớp mỏng chất Nitrua Silic  
(Si3N4) - từ 40nm đến 650nm - Dữ liệu được nạp bằng cách áp một điện thế dương  
giữa cực G và S (khoảng 20 đến 25V trong 100ms). Do sự khác biệt về độ dẫn điện,  
electron tích trên bề mặt giữa 2 lớp SiO2 và Si3N4, các electron này tồn tại khi đã ngắt  
nguồn và làm thay đổi trạng thái dẫn điện của transistor. Bây giờ nếu áp một điện thế  
âm giữa cực G và S ta sẽ được một lớp điện tích trái dấu với trường hợp trước. Như  
vậy hai trạng thái khác nhau của Transistor có thể thiêt lập được bởi hai điện thế ngược  
chiều nhau và như vậy các tế bào nhớ được ghi và xóa với 2 xung điện trái dấu nhau.  
Loại EAROM ER 3400 của hãng General Instruments có dung lượng 1024*4  
có thể giữ nội dung nhớ đến 10 năm, không cần nguồn nuôi. Thời gian ghi là 1ms, thời  
gian xóa là 10ms và thời gian đọc là 900ns.  
Một nhược điểm của mạch EAROM là cần các mức điện áp nguồn nuôi khác  
nhau trong khi xóa, ghi và đọc. Ví dụ mạch ER3400 cần 3 mức điện áp nuôi là: +12V,  
-5V và -30V.  
128  
Hình 4. 18. Hình dạng và vị trí EEPROM trên bo mạch  
4.3.3. Tổ chức bộ nhớ  
- Trước hết, chúng ta xem xét tổ chức của một ô nhớ.  
§i u khi n  
§i u khi n  
D÷ li u ra  
Ch n  
D÷ li u vµo  
Ch n  
nh  
nh  
a) Ghi  
b) § c  
Hình 4. 19. Tổ chức ô nhớ  
Để đơn giản, ở đây chúng ta coi ô nhớ là phần tử nhớ được 1 bit thông tin. Khi  
muốn truy xuất dữ liệu từ ô nhớ thì bộ nhớ cần gửi các tín hiệu sau đến bộ nhớ:  
+ Tín hiệu chọn (Chip select) được gửi đến để chọn ô nhớ  
+ Tín hiệu điều khiển chỉ thị việc ghi hay đọc (Write enable/ Read enable)  
Sau đó, dữ liệu sẽ được đưa lên đường dữ liệu (Data lines)  
- Tổ chức mạch nhớ  
Hình 4. 20. Tổ chức mạch nhớ  
129  
+ Address lines:  
Các đường địa chỉ nối tới bus A,  
Truyền tín hiệu địa chỉ từ CPU tới mạch nhớ  
Address decoder:  
Bộ giải mã địa chỉ  
Sử dụng địa chỉ để chọn ra và kích hoạt ô nhớ/dòng nhớ cần truy nhập  
+ Data lines:  
Các đường dữ liệu kết nối với bus D  
Truyền dữ liệu từ bộ nhớ về CPU và ngược lại  
Chip select CS:  
Chân tín hiệu chọn chip  
Chip nhớ được kích hoạt khi CS=0. Thông thường CPU chỉ làm việc với một  
chip nhớ tại một thời điểm.  
+ Write enable WE:  
Chân tín hiệu cho phép ghi  
Cho phép ghi vào đường nhớ khi WE =0  
+ Read enable RE:  
Chân tín hiệu cho phép đọc  
Cho phép đọc dữ liệu từ đường nhớ khi RE =0  
Chúng ta sẽ xem xét một mạch nhớ (chip nhớ) có sơ đồ như hình 4.21 sau đây:  
Bộ nhớ có 8 đường dây tín hiệu vào và 3 đường dây tín hiệu ra. Ba đường vào  
cho dữ liệu là , , ; hai đường vào địa chỉ là  
,
và 3 đường tín hiệu điều khiển  
là CS (Chip select) để chọn chip, RD để phân biệt giữa đọc (read) và ghi (write) và OE  
(Output enable) để đưa dữ liệu ra. Ba đường ra cho dữ liệu là  
• Tín hiệu chọn chip CS:  
,
và  
.
Bộ nhớ của máy tính có thể bao gồm nhiều chip như trên, để chọn chip nhớ  
nào, mạch logic bên ngoài phải đặt cho đầu tín hiệu CS của chip đó có mức=1 và  
RD=1 để đọc hoặc RD=0 để ghi.  
• Tín hiệu địa chỉ:  
Hai đường dây địa chỉ phải được thiết lập giá trị để chỉ ra 1 trong 4 từ 3 bit sẽ  
được đọc hoặc ghi. Đối với thao tác đọc, các đường dây dữ liệu vào không được dùng  
đến, từ được chọn được đặt lên các đường dây dữ liệu ra. Đối với thao tác ghi, các bit  
có mặt trên đường dây dữ liệu vào được nạp vào từu bộ nhớ đã chọn, còn các đường  
dây dưc liệu ra không được sử dụng.  
130  
Hình 4. 21. Sơ đồ logic chip nhớ 4x3, mỗi hàng là 1 từ nhớ 3 bit  
Bốn cổng AND cùng với 4 cổng NOT (mà các đầu váo nối với các dây địa chỉ  
) tạo thành 1 bộ giải mã dùng để chọn từ, mỗi đầu ra của 1 cổng AND điều  
,
khiển 1 dây chọn từ (word select line), được đánh số 0…3.  
- Ghi dữ liệu  
Khi chip nhớ được chọn để ghi, đường dây được ghi nhãn CS.  
sẽ có mức  
cao, làm cho đầu ra của 1 trong 4 cổng AND có nhãn Write gate ở mức tích cực, đó là  
cổng AND có 1 đầu vào nối với dây word select có mức cao. Tín hiệu này nối với tất  
cả các đầu vào CK của từ đã được chọn, làm cho dữ liệu trên các dây dữ liệu vào ,  
,
nạp vào các flip-flop của từ đó.  
- Đọc dữ liệu  
Việc đọc cũng tương tự như việc ghi. Việc giải mã địa chỉ để ghi và đọc hoàn  
toàn giống nhau. Điểm khác nhau là tín hiệu CS.  
phải có mức thấp, vì vậy các  
cổng AND có nhãn Write gate đều có lối ra ở mức thấp, làm cho tín hiệu ở các chân  
CK của các flip-flop có mức thấp, do đó các flip-flop không thể thay đổi trạng thái.  
Một trong bốn đường dây chọn từ (word select line) có mức cao, làm cho tại 3 đầu ra  
131  
Tải về để xem bản đầy đủ
pdf 106 trang yennguyen 22800 Free
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Kiến trúc máy tính (Phần 2)", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfbai_giang_kien_truc_may_tinh_phan_2.pdf