Bộ nhớ máy tính bao gồm các hình thức, phương thức để lưu dữ được dữ liệu của máy tính một cách lâu dài khi kết thúc một phiên làm việccủa máy tính thì dữ liệu không bị mất đi, hoặc lưu
Trang 1Trường Đại Học Công Nghiệp Hà Nội
Khoa Công Nghệ Thông Tin
Trang 2Trường Đại Học Công Nghiệp Hà Nội
Khoa Công Nghệ Thông Tin
+ Trần Đức Giang + Sái Vĩnh Hanh + Tạ Thế Dũng
Đề tài thực hiện: Phân tích nguyên lý hoạt động của bộ nhớ Ram chuẩn DDRAM.
Trang 32.1.2.3 Cách nhận biết cách loại RAM
2.2 Nguyên tắc hoạt dộng của RAM
Chương 3 Sơ lược về bộ nhớ RAM
Trang 4Chương 1 TỔNG QUAN VỀ BỘ NHỚ MÁY
TÍNH
1.1 Khái niệm.
Bộ nhớ máy tính bao gồm các hình thức, phương thức để lưu dữ được
dữ liệu của máy tính một cách lâu dài (khi kết thúc một phiên làm việccủa máy tính thì dữ liệu không bị mất đi), hoặc lưu dữ liệu tạm thời trongquá trình làm việc của máy tính (khi kết thúc một phiên làm việc của máytính thì bộ nhớ này bị mất hết dữ liệu)
1.2 Tổng quan về hệ thống nhớ máy tính.
Khi nói tới bộ nhớ máy tính, có rất nhiều người chưa hiểu hết được
hay biết rõ được bộ nhớ máy gồm những gì Trong phần này nhóm 9 sẽ
trình bày sơ lược về bộ nhớ máy tính và sâu hơn một chút về bộ nhớ RAMchuẩn SDRAM
Để định hình hệ thống nhớ của máy tính, chúng ta xem mô hình phân cấp hệ thống nhớ sau:
Trang 6Chương 2: BỘ NHỚ CHÍNH
2.1 Tổng quan về bộ nhớ chính.
Bộ nhớ chính được đặt giữa bộ nhớ Cache và bộ nhớ ngoài, là nơi lưutrữ thông tin cho bộ nhớ Cache và sẽ được đưa vào bộ nhớ Cache ngay saukhi CPU truy nhập thông tin trong bộ nhớ Cache, hoặc cũng có thể là nơicung cấp thông tin trực tiếp CPU khi CPU không tìm thấy thông tin trong bộnhớ Cache Bộ nhớ này còn gọi là bộ nhớ bán dẫn
Bộ nhớ chính được chia làm 2 loại: ROM, RAM.
2.1.1.Bộ nhớ ROM – Read Only Memory.
Là bộ nhớ chỉ đọc (khi mới ra đời), hiện nay loại bộ nhớ này đã có thểđọc/ghi bình thường Đặc trưng lớn nhất của bộ nhớ này là thông tin vẫn cònngay cả khi mất nguồn nuôi và là bộ nhớ truy nhập ngẫu nhiên
ROM chips A4000T v40.70
Trang 7Bộ nhớ EPROM với cửa sổ nhỏ để xóa dữ liệu
Theo lịch sử phát triển, có 5 loại bộ nhớ ROM:
ROM mặt nạ (maskable ROM): là loại bộ nhớ ROM được cài sẵn
thông tin khi sản xuất và mãi mãi thông tin này không thay đổi được
PROM – Programmable ROM: là loại bộ nhớ không có thông tin khi
sản xuất, xong người dùng có thể ghi thông tin được 1 lần bằng thiết
bị chuyên dùng, nếu ghi sai thì bỏ CD có thể gọi là PROM
EPROM – Erasable PROM: một dạng cao hơn của PROM, khi sản
xuất cũng không có thông tin nhưng trong qua trình sử dụng có thểghi bằng thiết bị chuyên dùng và xóa thông tin cũ bằng tia cực tím chonên khá tốn kém và không phải ai cũng có thể trang bị được DạngCD-Erasable là một điển hình
EEPROM – Electrically EPROM: đây là dạng cao hơn của EPROM,
đặc điểm nổi bật của loại này là thông tin có thể ghi/xóa nhiều lầnbằng software thay vì hardware CD-Rewritable tương tự loại ROMnày
Flash Memory (bộ nhớ tia chớp): giống như EEPROM nhưng chỉ
cho phép đọc/ghi cả khối Ngày nay bộ nhớ này tương tự USB
2.1.2 Bộ nhớ RAM – Random Access Memory.
Trang 8Là loại bộ nhớ thay đổi được, dữ liệu có thể ghi vào hoặc đọc ra và cũng
là bộ nhớ truy nhập ngẫu nhiên như ROM Đặc điển đặc trưng nhất của bộnhớ này là mất nguồi điện nuôi thì thông tin cũng mất
Một số thanh RAM
2.1.2.1 Phân loại RAM.
Có 2 loại RAM chính:
SRAM (Static RAM – RAM tĩnh): là loại RAM lưu trữ dữ liệu mà
không cần cập nhật thường xuyên, được xây dựng trên các mạch điện
tử flip-flop SRAM có các đặc điểm sau:
o Thông tin ổn định
o Tốc độ nhanh
o Dung lượng IC nhỏ
Trong máy tính SRAM được dùng làm Cache L1, L2
DRAM (Dynamic RAM – RAM động): là loại RAM lưu trữ dữ liệu
cần cập nhật thường xuyên (làm tươi lại – refresh), được xây dựngtrên cơ sở nhớ là các tụ điện DRAM có các đặc điểm sau:
o Thông tin không ổn định
o Tốc độ chậm
o Dung lượng IC lớn
Trang 9o Giá thành thấp.
DRAM dùng để thiết kế ra bộ nhớ chính
2.1.2.2 Các loại DRAM.
DRAM được chia làm 2 loại: SDRAM và RDRAM.
a SDRAM (Synchronous Dynamic RAM).
SDR SDRAM (Single Data Rate SDRAM) thường được gọi là “SDR”, có
168 chân Được dùng trong các máy vi tính cũ, có bus speed chạy cùng với clock speed của memory chip nay đã nỗi thời
SDR SDRAM với khe cắm 3 múi
DDR SDRAM (Double Data Rate SDRAM) còn được gọi tắt là “DDR”, có
184 chân DDR là cải tiến của SDR, có tốc độ gấp đôi SDR nhờ vào việctruyền tải 2 lần trong một chu kỳ bộ nhớ
DDR SDRAM với khe cắm được chia thành 2 múi
DDR2 SDRAM (Double Data Rate 2 SDRAM) còn gọi tắt là DDR2, có 240
chân Là thế hệ sau của DDR, có tốc dộ truyền tải gấp đôi DDR vì bus speedcao gấp đôi clock speed DDR2 sử dụng mức điện áp 1,8V
Trang 10DDR2 SDRAM cũng thương tự DDR SDRAM
DDR3 SDRAM (Double Data Rate 3 SDRAM) cũng có 240 chân như
DDR2 SDRAM song nó lại có tốc độ bus cao hơn DDR2 nhiều Mức điện
áp quy đinh đối với DDR3 là 1,5V Có tốc độ bus là 800/1066/1333/1600Mhz, số bit dữ liệu là 64bits Chuẩn DDR3 cho phép sử dụng với các chipnhớ có dung lượng từ 512M tới 8G
Một thanh DDR3 SDRAM bọc vỏ tản nhiệt
b.RDRAM (RAMbus Dynamic RAM).
Được gọi tắt là "Rambus" Đây là một loại DRAM được thiết kế kỹ
thuật hoàn toàn mới so với kỹ thuật SDRAM RDRAM hoạt động đồng bộtheo một hệ thống lặp và truyền dữ liệu theo một hướng Một kênh bộ nhớRDRAM có thể hỗ trợ đến 32 chip DRAM Mỗi chip được ghép nối tuần tựtrên một module gọi là RIMM (RAMbus Inline Memory Module) nhưng
Trang 11việc truyền dữ liệu được thực hiện giữa các mạch điều khiển và từng chipriêng biệt chứ không truyền giữa các chip với nhau.
Chip RAM
Bus bộ nhớ RDRAM là đường dẫn liên tục đi qua các chip và module trênbus, mỗi module có các chân vào và ra trên các đầu đối diện Do đó, nếu cáckhe cắm không chứa RIMM sẽ phải gắn một module liên tục để đảm bảođường truyền được nối liền Tốc độ RAMbus đạt từ 400-800MHz RAMbustuy không nhanh hơn SDRAM là bao nhưng lại đắt hơn rất nhiều nên có rất
ít người dùng RDRAM phải cắm thành cặp và ở những khe trống phải cắmnhững thanh RAM giả cho đủ
Một thanh Rambus với 2 rãnh liền trên khe cắm
2.1.2.3 Cách nhận biết các loại RAM chuẩn SDRAM.
SDR SDRAM : thanh RAM loại này có 168 chân với 2 khe cắt ở phần chân
cắm Hiện chỉ còn 2 tốc độ PC100 và PC133
Trang 12RDRAM : thanh RAM loại này có 184 chân với 2 khe cắt ở giữa Do tốc độ
cao, tỏa nhiệt dữ, RDRAM luôn phải cặp kè với một miếng nhôm tản nhiệt.Với cấu hình “kênh đôi” (dual-channel), RDRAM bắt buộc phải chạy cặp 2thanh một và không được bỏ trống hai khe còn lại (nên phải dùng hai thanhRDRAM giả, gọi là CRIMM - Continuity RIMM)
DDR-SDRAM : thanh RAM của DDR có tới 184 chân nhưng chỉ có 1 khe
cắt Nó cũng dùng một kênh đơn như SDRAM nên có thể chạy độc lập, từngthanh một
Các thế hệ sau của DDR SDRAM không khác mấy so với thế hệ đầu của thẻRAM, chúng mang đặc trưng của DDR RAM
Trang 13Một tụ điện giống như một thùng nước nhỏ có thể chứa các điện tử
Để lưu 1 vào tế bào nhớ, thùng nước này sẽ được đổ đầy các điện tử Để lưu
0, thùng nước sẽ được làm rỗng Tuy nhiên, thùng nước có một khuyết điểm
là nó có một lỗ thủng Trong khoảng vài mili giây, một thùng nước đầy sẽ trở nên trống rỗng Do đó, để bộ nhớ động làm việc, hoặc là CPU hoặc là bộ
Trang 14điều khiển bộ nhớ phải nhanh chóng nạp lại tất cả các tụ điện đang chứa 1 trước khi nó phóng điện Để làm được việc này, bộ điều khiển sẽ đọc lại nội dung nhớ rồi ghi nó vào lại Quá trình làm tươi này tự động diễn ra hàng ngàn lần trong một giây Và chính quá trình này tạo nên phần "động" cho RAM Ram động phải được làm tươi một cách liên tục nếu không nó sẽ
"quên" mọi thứ nó đang giữ Mặt hạn chế của quá trình làm tươi là nó sẽ mấtmột khoảng thời gian để thực hiện và điều này có thể làm giảm tốc độ của
bộ nhớ
Các tế bào nhớ được khắc lên một bánh silicon theo một dãy các cột (bitlines) và các hàng (wordlines) Điểm giao của một bitline và một
wordline tạo thành địa chỉ của tế bào nhớ
DRAM hoạt động bằng cách gửi dòng nạp điện qua cột phù hợp (CAS) để kích hoạt bóng dẫn tại mỗi bit trong cột Khi ghi, các hàng sẽ chứa trạng thái
mà tụ điện đã mang Khi đọc, một bộ khuếch đại hướng sẽ xác định mức nạpđiện trong tụ điện Nếu hơn 50%, nó sẽ đọc là 1 Ngược lại, nó sẽ đọc là 0 Một bộ đếm sẽ theo dõi trình tự làm tươi dựa trên hàng nào được truy xuất theo thứ tự nào Quãng thời gian để làm tất cả việc này là rất nhỏ, do đó nó được biểu diễn bằng đơn vị nano giây (hàng tỉ của giây) Một chip nhớ được đánh giá 70ns nghĩa là nó sẽ mất 70 nano giây để hoàn tất quá trình đọc và nạp lại điện cho mỗi tế bào
Các tế bào nhớ đơn độc sẽ là vô dụng nếu không có cách lấy được thông tin vào và ra của chúng Do đó, các tế bào nhớ có một bộ hỗ trợ toàn vẹn trên các mạch chuyên dụng khác Những mạch này làm chức năng:
- Nhận biết hàng và cột (chọn địa chỉ hàng và địa chỉ cột)
- Theo dõi trình tự làm tươi (bộ đếm)
- Đọc và lưu tín hiệu từ tế bào (bộ khuếch đại hướng)
- Đảo tế bào xem có nên nhận dòng nạp hay không (bật ghi)
Trang 15Các chức năng khác của bộ điều khiển bộ nhớ bao gồm các tác vụ xác định loại, tốc độ, dung lượng bộ nhớ và kiểm tra lỗi.
RAM tĩnh (SRAM) sử dụng một công nghệ hoàn toàn khác Các bit của bộ nhớ được giữ dưới dạng các con bật Một con bật cho tế bào nhớ tốn 4 hoặc
6 bóng bán dẫn cùng một vài dây dẫn Và chúng không cần được làm tươi Nhờ vậy, tốc độ của RAM tĩnh nhanh hơn rất nhiều so với RAM động Tuy nhiên, vì nó cần đến nhiều thành phần nên tế bào bộ nhớ tĩnh chiếm nhiều không gian trên chip hơn là tế bào bộ nhớ động Do đó, trên cùng một chip, chúng ta có ít bộ nhớ hơn Dẫn đến việc chế tạo RAM tĩnh tốn nhiều chi phí hơn
Như vậy, RAM tĩnh nhanh và đắt tiền Ram động rẽ nhưng chậm hơn Ram tĩnh thường được dùng để chế tạo các bộ đệm nhạy tốc độ cho CPU Trong khi RAM động thường dùng làm không gian nhớ chính cho hệ thống
b Cơ chế kiểm tra lỗi của bộ nhớ.
Hầu hết các loại bộ nhớ hiện nay đều rất đáng tin cậy Hệ thống chỉ cần nhờ bộ điều khiển bộ nhớ kiểm tra lỗi lúc khởi động và có thể tin vào
nó Các chip nhớ có cơ chế kiểm tra lỗi được xây dựng sẵn thường sử dụng phương pháp chẵn-lẻ (parity) để kiểm tra Các chip chẵn lẻ có một bit phụ cho mỗi 8 bit dữ liệu Cơ chế chẵn lẻ hoạt động rất đơn giản Đầu tiên là cơ chế bậc chẵn (even parity)
Khi 8 bit trong 1 byte nhận dữ liệu, chip nhớ sẽ thêm 1 bit gọi là bit bậc parity vào Bit này là tổng số các bit 1 trong dãy dữ liệu đó Nếu tổng số các bit 1 là lẻ, bit bậc parity sẽ được thiết lập là 1 Nếu tổng số các bit 1 là chẵn, nó được thiết lập là 0 Khi dữ liệu được đọc ra, việc tính toán tổng các bit 1 được thực hiện lại một lần nữa để so sánh với bit bậc parity Nếu tổng
Trang 16là lẻ và bit bậc parity là 1, dữ liệu được xét là đúng và nó sẽ được gửi cho CPU Nhưng nếu tổng là lẻ và bit bậc parity là 0, chip nhớ nhận thấy có một lỗi ở đâu đó trong dãy 8 bit và nó sẽ kết xuất dữ liệu ra Cơ chế bậc lẻ cũng làm giống như vậy, nhưng bit bậc lẻ được thiết lập là 1 khi tổng số các bit 1
là chẵn
Vấn đề với cơ chế chẵn lẻ là nó có khả năng phát hiện lỗi nhưng lại không thể sửa được các lỗi đó Nếu 1 byte dữ liệu không hợp với bit bậc parity của nó, dữ liệu sẽ được loại bỏ và hệ thống thử lại lần nữa Các máy tính có vai trò chủ chốt cần đến một dung sai lỗi (fault tolerance) ở mức cao hơn Các máy tính chủ cao cấp thường sử dụng một dạng kiểm tra lỗi là error-correction code (ECC) Giống với cơ chế chẵn lẻ, ECC sử dụng các bitthêm vào để kiểm tra dữ liệu trong mỗi byte Điểm khác biệt của cơ chế này
là ECC sử dụng nhiều bit để kiểm tra lỗi thay vì một (nhiều bao nhiêu thì phụ thuộc vào độ rộng bus cho phép) Bộ nhớ ECC sử dụng một thuật toán đặc biệt cho phép nó không chỉ phát hiện lỗi mà còn sửa chúng Bộ nhớ ECC cũng phát hiện trường hợp khi có nhiều hơn một bit trong dữ liệu 1 byte bị hỏng Tuy nhiên, những lỗi này hiếm khi xảy ra và chúng cũng
không thể sửa được, ngay cả với ECC
Phần lớn các máy tính được bán ra ngày nay sử dụng các chip nhớ không-chẵn-lẻ (nonparity) Các chip này không cung cấp bất kỳ cơ chế kiểmtra hay sửa lỗi nào, mà chúng hoàn toàn phụ thuộc vào khả năng phát hiện lỗi của bộ điều khiển bộ nhớ
Trang 17PHẦN 3: SƠ LƯỢC VỀ BỘ NHỚ RAM
3.1 Tốc độ.
Đây có lẽ là khái niệm được người dùng quan tâm nhất, tuy nhiên có người thắc mắc về cách gọi tên, đố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 độ 333MHz thì nó sẽ đạt băng thông
“Column Address Strobe” (địa chỉ cột) Một thanh DRAM được coi như một
ma trận của các ô nhớ (bạn có thể hình dung như một bảng tính excel với nhiều ô trống) và dĩ nhiên mỗi ô nhớ sẽ có toạ độ (ngang, dọc) Như vậy bạn
có thể đoán ngay ra khái niệm RAS (Row Adress Strobe)là địa chỉ hàng nhưng do nguyên lý hoạt động của DRAM là truyền dữ liệu xuống chân nên
Trang 18RAS thường không quan trọng bằng CAS.
Khái niệm độ trễ biểu thị quãng thời gian bạn phải chờ trước khi nhậnđược thứ mình cần Theo từ điển Merriam-Webster thì latency có nghĩa là 'khoảng thời gian từ khi ra lệnh đến khi nhận được sự phản hồi' Vậy CAS sẽlàm việc như thế nào? CAS Latency có ý nghĩa gì?
Để 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
Bạn sẽ thắc mắc như vậy phải chăng CAS2 nhanh hơn CAS3 tới 33%, không đến mức như vậy bởi có rất nhiều yếu tố ảnh hưởng đến hiệu năng tổng thể của bộ nhớ điển hình như:
+ Chuỗi xử lý thông tin: kích hoạt RAS, chờ khoảng thời gian trễ CAS Delay và CAS Latency
RAS-to-+ Truy cập bộ nhớ theo chuỗi: đôi khi chipset sẽ đọc dữ liệu trong bộ nhớ RAM theo chuỗi (burst) như vậy rất nhiều dữ liệu sẽ được chuyển đi một lần
và tín hiệu CAS chỉ được kích hoạt một lần ở đầu chuỗi
+ Bộ vi xử lý có bộ đệm khá lớn nên chứa nhiều lệnh truy cập và dữ liệu; do
đó thông tin được tìm kiếm trên bộ đệm trước khi truy cập vào RAM và tần
số dữ liệu cần được tìm thấy trên bộ đệm (hit-rate) khá cao (vào khoảng 95%)
Nói tóm lại việc chuyển từ CAS 3 sang CAS 2 sẽ tăng hiệu năng xử lý
Trang 19cho tất cả các ứng dụng Những chương trình phụ thuộc vào bộ nhớ như game hay ứng dụng đồ họa sẽ chạy nhanh hơn Điều này đồng nghĩa với việc những thanh RAM được đóng dấu CAS2 chắc chắn chạy nhanh hơn những thanh RAM CAS3 Nếu bạn dự định mua đồ chơi cho một cuộc đua
ép xung hay đơn giản chỉ cần hệ thống đạt tốc độ tối ưu, hãy chọn RAM CAS2 nhưng nếu chỉ là công việc văn phòng, CAS 3 hoàn toàn vẫn đáp ứng yêu cầu
3.3 Tần số làm tươi.
Thường thì khi nhắc tới khái niệm tần số làm tươi (RAM Refresh Rate), người ta thường nghĩ ngay đến màn hình máy tính, tuy nhiên bộ nhớ DRAM (Dynamic Random Access Memory) cũng có khái niệm này Như bạn đã biết module DRAM được tạo nên bởi nhiều tế bào điện tử, mỗi tế bàonày phải được nạp lại điện hàng nghìn lần mỗi giây vì nếu không dữ liệu chứa trong chúng sẽ bị mất Một số loại DRAM có khả năng tự làm tươi dữ liệu độc lập với bộ xử lý thường được sử dụng trong những thiết bị di động
để tiết kiệm điện năng
3.4 Chu kỳ chuỗi
Việc cho ra đời cách đọc dữ liệu theo từng chuỗi (Burst Mode) đã giúp khắc phục nhiều nhược điểm và tăng hiệu năng cho RAM, chu kì của chuỗi ngắn hơn rất nhiều chu kì trang của RAM loại cũ Chu kì của chuỗi cũng được coi như là chu kì xung nhịp của SDRAM và chính vì thế nó được coi như thang xác định cho tốc độ của RAM bởi đó là khoảng thời gian cần thiết giữa các lần truy xuất dữ liệu theo chuỗi của RAM Những con số -12, -
10, -8 ghi trên các chip RAM cho biết khoảng thời gian tối thiểu giữa mỗi