MỤC LỤC
1. BỘ NHỚ RAM
2. DUAL CHANNEL LÀ GÌ?
3. ĐIỀU KIỆN ĐỂ CHẠYDUAL CHANNEL
4. KÍCH HOẠT DUAL CHANNEL
5. CÁC BOMẠCH CHỦ DÙNG CHO CPU CỦA INTEL
6. CÁC BOMẠCH CHỦ DÙNG CHO CPU CUA AMD
7. KIỂM TRA XEM DUAL CHANNELĐÃ ĐƯỢC KÍCH
HOẠTHAY CHƯA
26 trang |
Chia sẻ: netpro | Lượt xem: 2029 | Lượt tải: 4
Bạn đang xem trước 20 trang tài liệu Đồ án Dual Channel, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
TRƯỜNG CAO ĐẲNG CNTT
ISPACE
BÁO CÁO ĐỒ ÁN
DUAL CHANNEL
LỚP: PC035B2SL
NHÓM 1: HUỲNH TẤN AN
NGUYỄN KIM HẢI
NGUYỄN CHÍ TÂM
NGUYỄN NHẬT THÀNH
MỤC LỤC
1. BỘ NHỚ RAM
2. DUAL CHANNEL LÀ GÌ?
3. ĐIỀU KIỆN ĐỂ CHẠY DUAL CHANNEL
4. KÍCH HOẠT DUAL CHANNEL
5. CÁC BO MẠCH CHỦ DÙNG CHO CPU CỦA INTEL
6. CÁC BO MẠCH CHỦ DÙNG CHO CPU CUA AMD
7. KIỂM TRA XEM DUAL CHANNEL ĐÃ ĐƯỢC KÍCH
HOẠT HAY CHƯA
BỘ NHỚ RAM
• Bộ nhớ hệ thống RAM thường gây cản trở cho máy tính trong việc thực hiện hiệu suất tối đa của
nó. Sở dĩ như vậy là do các bộ vi xử lý (CPU) thường nhanh hơn bộ nhớ RAM và thường phải chờ
RAM phân phối dữ liệu. Trong suốt thời gian chờ đợi này CPU hoàn toàn nhàn rỗi và không thực
hiện một nhiệm vụ nào (điều đó không tuyệt đối đúng nhưng nó khớp với những giải thích của
chúng tôi).
Trong một máy tính hoàn hảo, bộ nhớ RAM sẽ nhanh tương đương với CPU. Dual channel chính là
công nghệ được sử dụng để nhân đôi tốc độ truyền thông giữa bộ điều khiển nhớ và bộ nhớ RAM
để cải thiện được hiệu suất hệ thống. Hướng dẫn này chúng tôi sẽ giới thiệu cho các bạn về một số
vấn đề của công nghệ Dual channel như: cách làm việc ra sao, thiết lập nó như thế nào và các tính
toán tốc độ truyền tải,…
Trước khi giới thiệu về dual channel, chúng ta hãy đi tìm hiểu về bộ nhớ RAM được kết nối với hệ
thống như thế nào.
Bộ nhớ được điều khiển bởi một mạch có tên gọi là memory controller. Mạch này nằm bên trong
chipset (chip cầu bắc – hoặc MCH, Memory Controller Hub) đối với các CPU của Intel, và bên trong
CPU đối với các CPU của AMD (CPU được thiết kế trên kiến trúc AMD64; CPU của AMD cũ như
Athlon XP sử dụng cùng lược đồ như các CPU của Intel).
RAM được kết nối với memory controller thông qua một số dây. Các dây này được chia thành ba
nhóm: nhóm dữ liệu, nhóm địa chỉ và nhóm điều khiển. Các dây làm chức năng bus dữ liệu sẽ
mang dữ liệu được đọc (nghĩa là được truyền tải từ bộ nhớ sang memory controller, sau đó đến
CPU) hoặc được ghi (nghĩa là được truyền tải từ memory controller đến bộ nhớ, từ CPU). Các dây
đóng vai trò bus địa chỉ có nhiệm vụ chỉ dẫn cho các mođun nhớ vị trí chính xác (địa chỉ nào) dữ liệu
sẽ được trích rút hoặc được lưu. Còn các dây điều khiển gửi các lệnh đến các mođun nhớ, chỉ dẫn
cho chúng kiểu hoạt động nào đang được thực hiện - cho ví dụ, nếu nó là một hoạt động ghi (lưu)
hoặc hoạt động đọc
. Dây quan trọng khác có trong bus điều khiển là tín hiệu clock nhớ. Chúng ta hãy
xem lại tóm tắt trong hình 1. Hình vẽ của chúng tôi được dựa trên hệ thống của
Intel. Các CPU của AMD có memory controller bên trong CPU, vì vậy bus nhớ
đến trực tiếp từ CPU mà không cần trung gian.
• Hình 1: Cách thức truy cập bộ nhớ
•
Tốc độ bộ nhớ (tốc độ clock), dung lượng cực đại và các kiểu RAM (DDR, DDR2, DDR3,…) đối với
một hệ thống được định nghĩa bởi chipset (Intel) hoặc bởi CPU (AMD). Cho ví dụ, các kiểu bộ nhớ
DDR3 trên hệ thống Intel phụ thuộc vào chipset (và bo mạch chủ hỗ trợ các kiểu bộ nhớ đó) chứ
không phải do CPU. Các hệ thống AMD hiện không thể làm việc với các bộ nhớ DDR3 vì memory
controller được nhúng bên trong chúng không thể nhận diện được công nghệ này.
Với tốc độ clock, nếu memory controller chỉ có thể tạo một tốc độ clock , 667 MHz (333 MHz x 2),
thì các bộ nhớ DDR2-800 của bạn sẽ làm việc ở tần số 667 MHz trên hệ thống này. Đây là một hạn
chế vật lý đối với memory controller. Thông thường bạn sẽ chỉ thấy kiểu hạn chế này trên các hệ
thống của Intel, vì các CPU của AMD có thể nhận ra các bộ nhớ DDR2 lên đến 800 MHz (socket
AM2 CPU) hoặc 1.066 MHz (socket AM2+ Phenom CPU).
Một điều thú vị khác có liên quan đến số lượng tối đa của bộ nhớ mà hệ thống có thể nhận diện đó
là, hầu hết các CPU của Intel đều có bus địa chỉ cho bộ nhớ 32 hoặc 36-bit (ở đây chúng tôi đang
nói đến bus địa chỉ có sẵn trên bus ngoài của CPU, nghĩa là trên front side bus của CPU). Điều này
cho phép CPU có thể nhận ra các bộ nhớ lên đến 4 GB (2^32) hoặc 64 GB (2^36).
Tuy nhiên với memory controller, thành phần có thể truy cập bô nhớ (không phải CPU truy cập trực
tiếp), đây là thành phần trung gian có thể hạn chế số lượng tối đa của RAM mà hệ thống của bạn
có. Cho ví dụ, các chipset của Intel P35 và G33 chỉ có thể truy cập lên đến 8 GB RAM (2 GB trên
mỗi một socket nhớ). Cộng với một vấn đề nữa ở đây là nhà sản xuất bo mạch chủ không tạo sẵn
số lượng đủ các socket bộ nhớ trên bo mạch chủ để đáp ứng số lượng tối đa của RAM mà CPU có
thể truy cập về mặt lý thuyết. Cho ví dụ, nếu một nhà sản xuất tạo một bo mạch chủ dựa trên
chipset Intel G33 chỉ có hai socket nhớ thì số lượng tối đa bộ nhớ mà bạn có thể có là 4 GB (2 GB
trên mỗi socket), mặc dù chipset này có khả năng cho phép truy cập đến 8 GB.
Do tất cả các kiểu modul nhớ hiện có ngày nay đều là các thiết bị 64-bit nên bus dữ liệu của bộ nhớ
là 64-bit. Tuy nhiên công nghệ dual channel đã thực hiện mở rộng bus dữ liệu của bộ nhớ từ 64 lên
đến 128 bit.
DUAL CHANNEL LÀ GÌ
• Dual channel là công nghệ cho phép memory controller có thể mở rộng độ rộng của
bus dữ liệu từ 64 đến 128 bit. Hãy coi mọi thứ vẫn được duy trì tương tự (ví dụ về tốc
độ clock chẳng hạn), khi đó tốc độ truyền tải lý thuyết lớn nhất của bộ nhớ sẽ được
gấp đôi khi sử dụng công nghệ này.
. Tốc độ truyền tải theo lý thuyết lớn nhất (MTTR) được tính theo công thức:
MTTR = tốc độ clock thực x dữ liệu được truyền tải trên mỗi chu kỳ x số bit
được truyền tải trên mỗi chu kỳ / 8
hoặc
MTTR = tốc độ clock của DDR x số bit được truyền tải trên mỗi chu kỳ /8
• Các bộ nhớ dựa trên công nghệ DDR (Double Data Rate) như DDR-SDRAM,
DDR2-SDRAM và DDR3-SDRAM đều truyền tải hai dữ liệu trên một chu kỳ. Do đó
chúng có tốc độ truyền tải gấp đôi so với các bộ nhớ truyền thống (như SDRAM thời
điểm ban đầu) ở cùng một tốc độ clock. Cũng chính do đó nên các bộ nhớ DDR
thường được gán nhãn gấp đôi tốc độ clock thực của chúng. Cho ví dụ các bộ nhớ
DDR2-800 thực sự làm việc ở tốc độ clock 400 MHz và truyền tải hai dữ liệu trên một
chu kỳ clock, nên nhãn được gán là “800 MHz” mặc dù tín hiệu clock thực sự của nó
không phải là 800 MHz.
• Trong các công thức đã cho ở trên, bạn cần nhân tốc độ clock thự lên hai lần, nghĩa là sử dụng tốc độ clock của
DDR.
Một mođun nhớ DDR2-800 – một thiết bị 64-bit, như đã đề cập trước – có tốc độ truyền tải lý thuyết lớn nhất là 6400
MB/s (800 MHz x 64 / 8). Đây chính là lý do tại sao các mođun nhớ sử dụng các chip nhớ DDR2-800 cũng được gọi
là PC2-6400. Con số này nhằm mục đích nói lên tốc độ truyền tải lớn nhất theo lý thuyết của bộ nhớ theo MB/s.
Nếu chúng ta sử dụng công nghệ dual channel với các mođun DDR2-800 thì tốc độ truyền tải lớn nhất theo lý thuyết
của bộ nhớ sẽ được gấp đôi, nhảy từ 6.400 MB/s lên 12.800 MB/s (800 MHz x 128 / 8), tại sao như vậy là vì, khi đó
chúng ta sẽ truyền tải gấp đôi lượng dữ liệu (128 bits so với 64 bits) trên mỗi chu kỳ clock.
Các bạn cần lưu ý rằng, tốc độ truyền tải ở đây chỉ là “lý thuyết”. Khi tính toán, chúng ta cần thừa nhận, sự truyền tải
dữ liệu nào đó sẽ xuất hiện tại mỗi chu kỳ clock (nghĩa là trên bộ nhớ DDR2-800 sẽ có 800.000.000 lượt truyền tải
dữ liệu xuất hiện mỗi giây), thực tế không bao giờ xảy ra vì không có memory controller và CPU nào truyền tải 100%
dữ liệu theo thời gian. Đó là lý do tại sao khi bạn đo sự truyền tải thực từ hệ thống bằng một chương trình nào đó
chẳng hạn như Sandra, thì bạn sẽ nhận được giá trị thấp hơn so với tốc độ truyền tải cực đại theo lý thuyết.
Một vấn đề nữa mà các bạn cần lưu ý ở đây là hiệu suất tăng chỉ được thực hiện trên hệ thống nhớ phụ; hiệu suất
tăng theo lý thuyết 100% không tương đồng với việc tăng 100% hiệu suất trong toàn bộ máy tính của bạn mà chỉ
một số lượng phần trăm nhỏ trong việc tăng hiệu suất nhớ này sẽ tác động vào toàn bộ hiệu suất của hệ thống.
Chúng tôi sẽ giải thích một cách chi tiết cho các bạn về những gì xảy ra về mặt vật lý với bus dữ liệu của bộ nhớ vì
có rất nhiều thông tin sai được post lên các forum về cách làm việc của công nghệ dual channel như thế nào.
Trước tiên chúng ta hãy lấy một hệ thống không hỗ trợ tính năng dual channel (nghĩa là hệ thống single channel).
Khi nói rằng bus dữ liệu của bộ nhớ là 64-bit thì điều đó có nghĩa rằng 64 dây đó (dây vật lý trên bo mạch chủ) sẽ kết
nối memory controller và các socket của bộ nhớ. Các dây này được gán nhãn từ D0 đến D63. Bus dữ liệu của bộ
nhớ được chia sẻ cho tất cả các socket nhớ. Các bus địa chỉ và bus điều khiển sẽ kích hoạt đúng socket nhớ dựa
vào địa chỉ nơi dữ liệu phải được lưu hay được đọc. Chúng tôi sẽ minh chứng điều này trong hình 2 bên dưới.
•
SINGLE CHANNEL
SINGLE CHANNEL LÀM VIỆC NHƯ THẾ NÀO?
Trên các hệ thống hỗ trợ công nghệ dual-channel, bus dữ liệu của bộ
nhớ được mở rộng thành 128 bit. Điều này có nghĩa rằng trên các
hệ thống như vậy sẽ có 128 dây kết nối giữa memory controller và
các socket của bộ nhớ. Các dây này được gán nhãn từ D0 đến
D127. Vì mỗi mođun nhớ chỉ có thể chấp nhận 64 bit trên mỗi chu
kỳ nên sẽ có hai môđun nhớ được sử dụng để lấp đầy bus dữ liệu
128 bit. Chính vì vậy để công nghệ dual-channel làm việc bạn cần
phải có một số lượng chẵn các mođun nhớ trên hệ thống (thừa
nhận rằng CPU của AMD và chipset của Intel hỗ trợ công nghệ
này). Nếu bạn chỉ cài đặt một muđun nhớ thì công nghệ này sẽ
không làm việc vì bộ nhớ sẽ vẫn được truy cập 64 bit trên mỗi chu
kỳ. Hay nói theo cách khác, dual channel làm việc bằng cách truy
nhập vào cả hai mođun một cách song song cùng thời điểm.
hình vẽ
DUAL CHANNEL
DUAL CHANNEL LÀM VIỆC NHƯ THẾ NÀO?
Vì hai mođul đều được truy cập tại cùng một thời điểm nên chúng phải
giống hệt nhau (cùng dung lượng, cùng định thời và cùng tốc độ clock).
ĐIỀU KIỆN ĐỂ CHẠY
DUAL CHANNEL
• Đây là vấn đề mà nhiều bạn quan tâm nhưng cũng có nhiều người chưa
thực sự hiểu rõ về nó. Đầu tiên để chạy dc chế độ này Main của bạn phải
hỗ trợ Dual Chanel
•
- RAM phải dc gắn trên cả 2 kênh.
- Cùng loại RAM trên mỗi kênh (cùng DDR/DDR2 hay DDR3).
- Cùng dung lượng bộ nhớ trên mỗi kênh (cùng là 512MB, cùng 1GB
hay cùng 2GB).
- 2 thanh giống nhau phải cắm ở khe giống nhau ( cùng khe 0 hoặc 1 ).
Như vậy để chạy dc Dual Chanel, ko bắt buộc RAM phải cùng độ trễ,
cùng tốc độ hay cùng thương hiệu.
•
Dual Chanel là chế độ chạy mang lại băng thông lớn nhất cho ứng
dụng.
Chúng ta có thể chạy Dual Chanel với 2, 3 hay 4 thanh RAM dc gắn trên
Main
HÌNH VẼ
Chạy Dual Chanel với 2 RAM:
Chạy Dual Chanel với 3 thanh RAM
Chạy Dual Chanel với 4 thanh RAM:
Chú ý: Khi chạy Dual, tốc độ của các thanh RAM sẽ nhận theo tốc độ của thanh RAM thấp nhất. Ví
dụ bạn có 1 thanh RAM 512MB bus 667 gắn với 1 thanh 512MB bus 800, cùng là DDR2, như vậy hệ
thống sẽ chạy Dual Chanel ở bus 667.
KÍCH HOẠT DUAL CHANNEL
• Để kích hoạt công nghệ dual channel, bạn cần phải có:
• Chipset và bo mạch chủ (Intel CPU) có khả năng tương thích hoặc CPU (AMD)có khả năng tương thích.
• Hai hoặc bốn mođun nhớ giống nhau, có khả năng tương thích với công nghệ được hỗ trợ bởi bo mạch chủ
(DDR-SDRAM, DDR2-SDRAM hoặc DDR3-SDRAM).
• Các CPU AMD được thiết kế trên các socket 939, 940, AM2, AM2+ và F (1207) đều có khả năng tương thích với
công nghệ dual channel (các bo mạch chủ socket 462 với chipset nForce 2 cũng có khả năng tương thích). Với
Intel, bạn sẽ phải kiểm tra hướng dẫn của bo mạch chủ hoặc trang các thông số kỹ thuật trên website của nhà
sản xuất để xem xem bo mạch chủ có tương thích với công nghệ dual channel hay không.
Nếu bạn chỉ có một muđun nhớ thì dual channel sẽ không hiện hữu ở đây. Chính vì vậy nếu bạn muốn có một
máy tính với 2 GB RAM thì cách tốt nhất để đạt được điều này là sử dụng 2 mođun nhớ 1GB thay cho một
mođun nhớ 2GB, vì trường hợp đầu tiên bạn có thể kích hoạt chế độ dual channel (cải thiện được hiệu suất của
hệ thống), trường hợp thứ hai thì không thể.
Trong trường hợp nếu bo mạch chủ của bạn chỉ có hai socket nhớ, để kích hoạt dual channel bạn chỉ đơn giản
phải cài đặt hai mođun nhớ.
Trên các bo mạch chủ có đến 4 socket nhớ, thường thấy trong các bo mạch chủ ngày nay, thì cách kích họat
đúng dual channel có đôi chút khác biệt.
Nếu bạn có 4 mođun nhớ, thì bạn chỉ cần đơn giản cài đặt tất cả 4 mođun này và khi đó dual channel sẽ được
kích hoạt.
Nếu chỉ có hai mođun nhớ - trong các trường hợp hay xảy ra như vậy – bạn phải quan tâm đến một số vấn đề.
(Để thuận tiện cho việc giải thích, chúng ta hãy đánh số các socket của bo mạch chủ là 1, 2, 3 và 4).
CÁC BO MẠCH CHỦ CỦA
CPU INTEL
• Trên các bo mạch chủ dành cho các bộ vi xử lý của Intel, thông
thường dual channel được kích hoạt bằng cách bỏ qua một socket
nhớ. Chính vì vậy bạn phải cài đặt mođul nhớ đầu tiên ở socket 1
và môđun nhớ thứ hai ở socket 3, bỏ qua socket 2. Trong trường
hợp khác bạn có thể cài đặt trên các socket 2 và 4, kết quả cũng
tương tự như vậy.
Để làm cho việc cài đặt dual channel dễ dàng, hầu hết các nhà sản
xuất đều sử dụng cùng một màu cho các socket 1và 3, màu khác
cho các socket 2 và 4, hãy xem trong hình 4. Chính vì vậy để kích
hoạt dual channel bạn chỉ cần quan sát một cách đơn giản vào màu
sắc của các socket.
Chú ý: chỉ có một nhà sản xuất không tuân theo cơ chế này đó là
MSI; trên hầu hết các bo mạch chủ được sản xuất từ nhà sản xuất
này, các socket 1 và 2 sử dụng màu giống nhau, còn các socket 3
và 4 lại sử dụng màu khác, xem trong hình 6. Vì vậy các bo mạch
của MSI không tuân theo bất cứ một mã màu nào.
Hình 4: Sắp xếp các socket của bộ nhớ trên một bo mạch chủ socket 775 (Intel
Hình 5: Chế độ dual channel (cómột socket bị bỏ trống ở giữa hai socket kia)
Hình 6: MSI sử dụng một lược đồ màu khác cho các socket
• Đây là một số giải thích chi tiết hơn về kỹ thuật: socket 1 và 2 đều
được kết nối vật lý với kệnh “A” còn các socket 3 và 4 được kết nối
vật lý với kệnh “B”. Khi bạn cài đặt các mođun nhớ trên các socket 1
và 3 hoặc 2 và 4 thì có nghĩa bạn đang cài đặt các mođun nhớ trên
mỗi kênh khác nhau, vì vậy đã kích hoạt được chế độ truy cập 128
bit. Nếu bạn cài đặt các mođun nhớ trên cùng một kênh (bằng cách
cài đặt chúng trên các socket 1 và 2 hoặc 3 và 4) thì memory
controller sẽ chỉ nhận ra thiết bị 64 bit và vì vậy chế độ dual channel
sẽ không được kích hoạt.
Việc kích hoạt chế độ dual channel trên các hệ thống được xây
dựng trên các CPU của AMD có một chút khác biệt. Chúng ta hãy
xem xét đến sự khác biệt ở đây như thế nào.
CÁC BO MẠCH CHỦ CỦA
CPU ADM
•
Bạn có thể thấy các bo mạch chủ dành cho các bộ vi xử
lý của AMD sử dụng cùng một phương pháp đã được
mô tả trước hoặc việc kích hoạt dual channel bằng cách
cài đặt các mođun nhớ một cách liên tiếp, không cách
quãng bằng cách bỏ qua một socket.
Trên hình 7, chúng tôi giới thiệu một bo mạch chủ cho
các bộ vi xử lý AMD, nơi các socket 1 và 2 được đánh
dấu bằng màu vàng và các socket 3 và 4 có màu tím. Để
kích hoạt dual channel trên bo mạch chủ này, chúng ta
cần phải cài đặt các môđun nhớ của mình trên các
socket cùng màu, xem trong hình 8.
Hình 7: Sắp đặt các socket nhớ trên bo mạch chủ socket 939 (AMD)
Hình 8: Các mođun nhớ đã được cài đặt đúng trong chế độ dual channel.
KIỂM TRA XEM DUAL CHANNEL
ĐÃ KÍCH HOẠT CHƯA
• Sau khi cài đặt các môđun nhớ của bạn, bước cuối cùng là kiểm tra xem chúng đã
thực sự hoạt động trong chế độ dual channel hay chưa.
Hầu hết các bo mạch chủ hiện nay đều hiển thị thông tin này trên POST, màn hình
xuất hiện bên phải khi bạn bật máy tính, thể hiện một số thông tin về hệ thống của
bạn. Hãy quan sát cụm từ như “Dual Channel” và “Single Channel” trong hình 9.
Hình 9: Máy tính đã đựợc kích hoạt chế độ dual channel (bạn có thể nhìn
thấy cụm từ “at Dual Channel” trong hình trên).
• Có một cách khác để kiểm tra vấn đề này là chạy một tiện ích nhận diện phần cứng. Chúng tôi
giới thiệu cho các bạn tiện ích CPU-Z và kiểm tra các thông tin bộ nhớ được hiển thị trong tab
Memory của nó, xem trong hình 10. Bạn có thể thấy được liệu chế độ dual channel đã được kích
hoạt trong “Channels #”, thường báo cáo là “Dual” hay không. Cũng trên cùng màn hình này, bạn
có thể kiểm tra tốc độ clock của bộ nhớ thực và định thời. Nên lưu ý rằng tốc độ clock thực chỉ
bằng một nửa tốc độ clock đã được tuyên bố. Trong ví dụ của chúng ta (hình 10), các bộ nhớ
đều được truy cập ở tần số clock 333 MHz, nghĩa là “667 MHz”. Đây chính là cách thức hữu hiệu
để kiểm tra xem các bộ nhớ của bạn có được truy cập với tốc độ tối đa của chúng hay không.
Nếu không, bạn cần kiểm tra để xem có vấn đề gì sai (thường là một lỗi về cấu hình trong cài đặt
bo mạch chủ hoặc sự hạn chế từ CPU hoặc chipset – ví dụ, nếu bạn có một máy tính Intel và
chipset chỉ hỗ trợ đến DDR2-677 thì bạn không thể mong đợi để có được các môđun nhớ DDR2-
800).
Hình 10: Máy tính dual channel đã đựợc kích hoạt đúng (bạn sẽ thấy chữ “Dual”).
Các file đính kèm theo tài liệu này:
- Dual Channel Ram.pdf