Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (180.82 KB, 8 trang )
<span class='text_page_counter'>(1)</span><div class='page_container' data-page=1>
<b>I/Định Nghĩa</b>
<b>1, Định nghĩa Ram</b>
Ram (Random Access Memory ) là bộ nhớ truy cập ngẫu nhiên. Khác với truy cập tuần tự. Có thể lấy ví dụ có 100
ơ nhớ được đánh địa chỉ từ 1 đến 100. Với cách truy cập tuần tự muốn lấy dữ liệu từ ô nhớ thứ 99, cần phải truy
cập tuần tự từ ô nhớ thứ 1,2,3…….cho đến ô nhớ thứ 99. Nhưng với phương thức truy cập ngẫu nhiên, có thể truy
cập ngay đến ơ nhớ thứ 99 mà không cần phải qua các ô nhớ trước đó.
Có 2 loại Ram cơ bản là SRAM ( Static Ram ) hay còn gọi là Ram tĩnh và DRAM ( Dynamic RAM) hay còn gọi là
RAM động .
SRAM là loại Ram ko cần phải refesh mà dữ liệu vẫn khơng bị mất. Do đó dung lượng lớn hơn và cũng đắt tiền
hơn.
Trong đó DRAM cần phải được refresh thường xuyên (Hàng triệu lần mỗi giây ) để đảm bảo dữ liệu lưu trữ không
bị mất đi.
Cả SRAM và DRAM đều sẽ bị mất dữ liệu sau khi tắt máy.
Để hiểu rõ hơn về quá trình refresh ta có thể nhìn vào hình sau :
<b>2,Nhiệm vụ của RAM :</b>
Ram là nơi hệ điều hành,ứng dụng lưu trữ data để CPU có thể nhanh chóng truy xuất. Tăng dung lượng Ram đồng
nghĩa với việc giảm số lần CPU phải lấy dữ liệu từ Hard Disk, một quá trình mất nhiều thời gian hơn đọc dữ liệu
trực tiếp từ RAM.
(Thời gian truy xuật RAM được tính = ns trong khi đó thời gian truy xuất HD được tính = mili s )
Máy tính cá nhân cần 1 lượng RAM nhất định cho mỗi ứng dụng,càng nhiều ứng dụng bạn mở, luonwjg RAM cần
dung càng nhiều. Vậy điều gì sẽ xảu ra khi RAM đầy. Rất may là hệ điều hành của chúng ta được thiết kể để xử lí
trường hơpnj này. Khi Ram gần đầy hệ điều hành sẽ lấy bớt 1 phần dữ liệu từ RAM và ghi vào ổ cứng, thường là
<b>3,Các định nghĩa khác :</b>
<b>SIMM : Single Inline Memory Module loại bộ nhớ dung trong các máy tính cổ, gồm loại 30 pin và 72 pin. Nhiều </b>
người cho rằng SIMM là loại Module RAM chỉ có 1 mặt ( Single Side) nhưng khơng hẳn vì vần có loại SIMM
double sides. Bus width của loại RAM này là 32 bit.
<b>DIMM : Double Inline Memory Module là loại bộ nhớ trong các máy tính ngày nay. Được biết đến với DIMM 168</b>
pin (SDR-SDRAM hay còn gọi là SDRAM) 184pin (DDR-SDRAM chính là DDR1) và loại 240pin
(DDR2-SDRAM hay cịn biết đến là DDR2 ) ngồi ra cịn có các loại khác 72 và 144 pin 200 pin (SODIMM cho
laptop).Bus width của DIMM là 64 bit đây là khác biệt cơ bản nhất giữa DIMM và SIMM chứ không phải là
SIMM thì single side và DIMM thì double sides như nhiều người nghĩ.
<b>SDR-SDRAM : Single Data Rate Synchronous Dynamic RAM là loại chip RAM chỉ chuyển được 1 bit dữ liệu </b>
trong 1 xung nhịp.Được sử dụng rộng rãi từ những năm 1990. Chi tiết về SDRAM sẽ được đề cập trong những bài
viết sau.
<b>DDR-SDRAM: Double Data Rate Synchronous Dynamic RAM là loại chip RAM truyển được dữ liệu trong cả 2 </b>
mặt lên và xuống của xung nhịp. Hay nói cách khác 1 xung nhịp DDR-SDRAM truyển được 2 bit dữ liệu. Đây
được gọi là Double Pump.
<b>DDR2-SDRAM : Thế hệ sau của DDR với tốc độ từ 400MHZ trở lên và module có 240 pin.</b>
<b>RAMBUS: Là loại RAM tốc độ cao tử 400 – 800MHZ nhưng bus width lại chỉ là 16 bit.Hay còn gọi là RDRAM </b>
( Rambus Dynamic Ram )
<b>ECC : Error Correction Code là Code tuân theo một luật nhất định có khả năng phát hiện và sửa lỗi trong từng </b>
<b>Memory Cell : Cịn gọi là ơ nhớ bao gồm 1 transistor và 1 Capacitors thể hiện trạng thái 0 và 1. Transistor ở đây </b>
đóng vai trị như một cơng tắc để chuyển đổi giữa 2 trạng thái này.Có các cổng Data in Data out và Write Enable
( Mặc định là tắt khi mở thì sẽ chuyển từ chế độ Read sang Write lúc này dữ liệu sẽ được nạp vào ).
<b>Memory Chip: Là tập hợp rất nhiều Row (Hàng) và Column(Cột) . Tưởng tượng Memory Chip như một bảng tính</b>
Excel và mội một ơ chính là location. Các Row và Column này có địa chỉ riêng.Trong mỗi một Location gồm rất
nhiều Memory Cell
<b>Memory Bank: Tập hợp các Memory Chip để đồng thởi có thể cung cấp đủ bit dữ liệu tương xứng với bus dữ liệu </b>
của CPU.
3 khái niệm này sẽ được làm rõ hơn ở phần tiếp theo của bài viết.
<b>I/Cách thức truy cập RAM</b>
<b>_RAS ( Row Address Strobe ) Là tín hiệu để xác định địa chỉ nhớ theo hàng.</b>
<b>_CAS ( Column Address Strobe) là tín hiệu để xác định địa chỉ nhớ theo cột.</b>
<b>_Address Bus là đường truyền tín hiệu RAS và Cas.</b>
<b>_Data Bus là đường truyền dữ liệu giữa Memory Controler và chip nhớ.</b>
_Khi cần truy xuất đến 1 địa chỉ nhớ bất kì Memory Controler sẽ gửi các tín hiệu RAS và CAS tương xứng đến
Chip nhớ tương ứng với dữ liệu cần lấy.
2.Cách thức truy cập chip nhớ.
_Tín hiệu RAS sẽ được Mem Control truyền theo Address bus.
_Khi RoW Addr Latch nhận được tín hiệu RAS. Nó sẽ chuyển tín hiệu này sang Row Address Decoder ( Bộ phận
giải mã địa chỉ nhớ theo hàng) để giải mã địa chỉ Row cần được truy xuất .
_Row này sẽ được kích hoạt.
_Sau đó tín hiệu CAS sẽ được gửi đến Column Address Latch và tương tự Column cần được truy xuất được kích
hoạt.
_Mặc định là Write Enable Deactived ( Ko có trong hình vẽ ) dữ liệu sẽ được đọc theo Data Bus đi về Memory
Controler.
_Nếu Write Enable được Active thì dữ liệu sẽ được ghi.
sau.
3, Dung lượng RAM tối đa và Memory Bank
đánh dấu địa chỉ nhớ trong 32bit. Tức là sẽ có 2^32 địa chỉ nhớ được đánh dấu và quản lí. 2^32 = 4294967296 ~
4Gb địa chỉ nhớ. Tương ứng với mỗi địa chỉ nhớ là 8bit (x8). Như vậy lượng Ram tối đa mà 1 hệ thống 32 bit có
thể có là 4Gb * 8 = 4GB. Đối với các hệ điều hành 64 bit kết hợp với hệ thống 64 bit có khả năng đánh dấu và quản
lí địa chỉ nhớ trong 64bit. Tức là lượng Ram tối đa là có 4GB*2^32 (do 2^64 gấp 2^32 là 2^32 lần ). Một con số
thật khủng khiếp phải không. Chuẩn mỗi location ( địa chỉ nhớ) ứng với 8bit là do IBM đưa ra. Nhưng sau này thì
đã có các chip x16 nên lượng RAM tối đa với hệ thống 32bit trên lý thuyết sẽ cao hơn 4GB nhiều nhưng trên thực
tế với 4GB cũng là đã khó kiếm dc BIOS hỗ trợ.
Với 1 Chip RAM có kí hiệu 32M x 8 thì có thể hiểu 32M là có 32 triệu location (32M) mỗi location là 8 bit (x8)
nên chip RAM này có dung lượng 32Mbyte. Tương tự với các kĩ hiệu khác như 16Mx16 64M x 4
Có thể chúng ta sẽ thắc mắc, Data Bus width của Ram là 64 bit. Tương xứng với mỗi địa chỉ nhớ là 8 bit. Vậy làm
thế nào mà CPU tận dụng được 64 bit bus width này.1 Module RAM gồm nhiều chip Trong đó 8 chip hợp lại tạo
thành 1 Bank ( đối với loại chip x8) và cả 16 chip hợp thành 1 Bank (đối với loại chip x4) hoặc 4 chip hợp thành 1
BANK đối với loại x16. Đây là hình minh họa cho 1 BANK đối với chip x8
Khi cần nạp dữ liệu CPU sẽ nạp toàn bộ dữ liệu vào 1 Bank. Như vậy cả 64 bit dữ liệu sẽ được phân đều trên 8 chip
x8. Trên chỉ là 1 VD để làm rõ chức năng của Bank. Trên thực tế 1 SDRAM(ko phải SDR-SDRAM đâu nha) chip
có khoảng 60 pin. Ngoài các pin cho địa chỉ, điều phối và điện tiêu thụ thì sẽ cịn 16 pin để truyền dữ liệu. Như vậy
4 Chip này đã đủ hợp thành 1 BANK để lấp đầy 64 bit dữ liệu cho CPU.
4.Single Channel và Dual Channel
Ở chế độ Single Channel sẽ chỉ có 1 Bank duy nhất được truy cập vào cùng 1 thời điểm. Nhưng ở chế độ Dual
Channel sẽ có tới 2 Bank ở 2 DIMM khác nhau được truy cập cùng 1 lúc. Điều này đã làm cải thiện băng thơng của
tồn bộ hệ thống.Có thể tham khảo thêm về Dual Channel ở bài viết của Enrique
<b>Cách tính băng thông của RAM :</b>
<b>_Ở chế độ Single Channel : Sẽ chỉ có 1 BANK được truy xuất trong cùng 1 thời điểm. Data Bus Width sẽ là 64</b>
bit. Như vậy
BandWidth = Bus Speed * Bus Width/8 = Bus Speed * 64/8 = Bus Speed *8 (Sở dĩ chia 8 là do Bus width tính theo
đơn vị Bit cịn BandWidth lại tính theo đơn vị là MB/s 1byte = 8 bit)
VD: Với 1 thanh DDR-SDRAM 400 MHZ thì BandWidth = 400 * 64/8 = 3200MB/s vì thế mà người ta cịn kí hiệu
PC3200
<b>_Ở thế độ Dual Channel : Sẽ có 2 BANK ở 2 DIMM khác nhau được truy xuất cùng 1 lúc. Lúc này mỗi Bank sẽ</b>
mở 1 kênh về Mem Controler. Mỗi kênh có BandWidth là 64 bit như vậy tổng BandWidth của toàn bộ hệ thống là
Lúc này BandWidth = Bus Speed * 128/8 = Bus Speed * 8.
<b>Phần tiếp theo : Memory Timming.</b>
<b>III/ Memory Timing</b>
Chúng ta thường nghe mọi người nhắc đến RAM Timings kiểu 2-2-2-5-1T hay 3-3-3-8-2T và là một trong những
tiêu chí để chọn RAM đối với dân OverClocker. Vậy thực chất những con số này có ý nghĩa gì.
<b>Cas Latency (TCL) (Số thứ 1) : Là khoảng thời gian ( tính theo cycle) từ khi CAS được Active cho đến khi dữ</b>
liệu bắt đầu được truyền trong Data Bus. Chính vì thế mà đây được coi là 1 chỉ số hết sức quan trọng. Để hiểu rõ
hơn về Cas Latency có thể nhìn hình sau :
NOP là No Operation ( khơng hoạt động) . Vì sao xen kẽ giữa các lệnh READ lại kèm theo các NOP. Lý do rất đơn
giản là tốc độ của CPU thường cao hơn so với tốc độ xử lí của RAM. Chính vì thế mà giữa các lệnh READ CPU
phải chèn theo các lệnh No Operation để RAM có thời gian xử lí và cung cấp đủ dữ liệu trước khi tiếp nhận 1 lệnh
mới.
<b>Ras precharge time (TRP) (Số thứ 3): Trước đây trong các chip RAM đời cũ thì cứ sau mỗi lần Row active nó sẽ</b>
bị deactived ngay lập tức và phải sau 1 khoảng vài cycle để precharge nó mới được active trở lại hoặc Row khác
được active. Nhưng đối với các chip RAM bây giờ có thêm chế độ FAST PAGE MODE. Với FPM thì Row sẽ
được active cho đến khi dữ liệu cần nằm ở Row khác. Lúc này RoW này sẽ được deactive. Và Row chứa dữ liệu
cần sẽ phải mất 1 khoảng thời gian precharge trước khi được actived. Đay chính là TRP.
Đây là các latency quan trọng nhất ngồi ra cịn có nhiều timing RAM khác khơng được đề cập ở đây.
Mỗi thanh RAM đều có các chỉ số mặc định do nhà sản xuất đưa ra nhằm đảo bảo RAM hoạt động ổn định nhất và
được ghi vào SPD EEPROM và BIOS được mặc định nhận chỉ số này tự động. Dĩ nhiên là có thể thay đổi các
timing này nếu BIOS hỗ trợ nhưng việc thay đổi khơng có kinh nghiệm sẽ dẫn đến hỏng RAM hoặc hệ thống hoạt
động không ổn định.