PDA

View Full Version : Bên trong kiến trúc AMD K10


bossnabito
08-03-2008, 02:03 AM
http://3c.com.vn/Uploaded/minhpb/2008-03/Kienthucmaytinh/04.03/BentrongADMK10/AMD6.jpgK10 là tên của một kiến trúc mới mà các bộ vi xử lư mới của AMD sử dụng như Phenom và Opteron được xây dựng trên lơi “Barcelona”.

Trong thực tế, rất nhiều người nhiều nhầm kiến trúc K10 với “Barcelona”, trong khi đó Barcelona chỉ là một trong những CPU sẽ sử dụng kiến trúc mới này. Trong hướng dẫn này, chúng tôi sẽ giới thiệu tất cả các sản phẩm sẽ được xây dựng trên kiến trúc K10 này với dự định lâu dài.
Kiến trúc K10 mới được dựa trên kiến trúc K8 (AMD64) với một số nâng cao. Chính v́ vậy nếu bạn đă hiểu về kiến trúc AMD64 th́ đó là một lợi thế để các bạn hiểu dễ dàng hơn kiến trúc mới này. Tuy với tên K8 và K10 nhưng AMD chưa từng phát hành kiến trúc nào có tên gọi K9, mà chỉ từ K8 nhảy lên K10.

Thể hiện trong h́nh 1 là những nâng cao chính của kiến trúc K10 so với K8 trước đây.
http://3c.com.vn/Uploaded/minhpb/2008-03/Kienthucmaytinh/04.03/BentrongADMK10/AMD1.jpg H́nh 1: Những nâng cao của kiến trúc K10 so với K8
Những điểm chính được nâng cao ở đây là:

• Khối t́m nạp nạp 32byte dữ liệu trên mỗi một chu kỳ clock từ L1 instruction cache – đây là CPU kép được xây dựng dựa trên kiến trúc K8 có thể t́m nạp trên mỗi chu kỳ. Trong các CPU của Intel được xây dựng trên kiến trúc lơi (Core), như Core 2 Duo, cũng có thao tác nạp 32byte trên mỗi chu kỳ clock.

• Sử dụng đường dữ liệu bên trong 128bit. Trên các CPU trước được xây dựng trên kiến trúc K8 th́ các đường dữ liệu bên trong chỉ là 64bit. Điều này là một vấn đề đối với các chỉ lệnh SSE, v́ các thanh ghi SSE, được gọi là XMM có chiều dài 128bit. Chính v́ vậy, khi thực thi một chỉ lệnh nào đó đă được xử lư dữ liệu 128bit th́ hoạt động này phải được chia ra thành hai hoạt động 64bit. Đường dữ liệu mới 128bit đă khắc phục được điểm yếu này, làm cho việc xử lư các chỉ lệnh SSE nhanh hơn với xử lư dữ liệu 128bit so với K8. Các bộ vi xử lư của Intel được xây dựng trên kiến trúc Core (ví dụ như Core 2 Duo) cũng có các đường dữ liệu bên trong 128bit, c̣n các bộ vi xử lư của Intel được xây dựng trên kiến trúc Netburst (Pentium 4 và Pentium D) lại chỉ có các đường dữ liệu bên trong 64bit. AMD gọi tính năng mới này là “AMD Wide Floating Point Accelerator”.

Trên h́nh 2 bạn có thể xem một danh sách các tính năng mới được giới thiệu trong kiến trúc K10. Chúng tôi sẽ giải thích về những tính năng này trong phần dưới h́nh vẽ.
http://3c.com.vn/Uploaded/minhpb/2008-03/Kienthucmaytinh/04.03/BentrongADMK10/AMD2.jpg
H́nh 2: Các tính năng mới được giới thiệu trong kiến trúc K10.
L3 Memory Cache

Hăy lưu ư rằng, cache nhớ là một bộ nhớ tốc độ cao (RAM tĩnh hay c̣n được viết là SRAM) đă được nhúng bên trong CPU, được sử dụng để lưu dữ liệu mà CPU cần thiết. Nếu dữ liệu được yêu cầu bởi CPU không được đặt trong cache th́ nó phải vào bộ nhớ RAM chính, điều này sẽ làm giảm tốc độ của nó v́ bộ nhớ RAM được truy cập bằng cách sử dụng tốc độ clock ngoài của CPU. Ví dụ, trên AMD 3 GHz CPU, cache nhớ được truy cập với tốc độ 3GHz nhưng RAM nhớ chỉ được truy cập ở tốc độ 800MHz (nếu bạn đang sử dụng các bộ nhớ DDR2-800) hoặc thấp hơn.

Trên các CPU AMD dual-core và Pentium D được xây dựng trên kiến trúc K8, mỗi lơi CPU có một L2 memory cache của chính nó. Trên các CPU Intel dual-core được xây dựng trên kiến trúc Core và Pentium M th́ chỉ có L2 memory cache, cache được chia sẻ giữa hai lơi.

Intel nói rằng, kiến trúc chia sẻ này là tốt hơn v́ với phương pháp cache tách biệt tại một thời điểm nào đó, một lơi có thể sử dụng hết cache trong khi đó cache kia lại không được sử dụng. Khi xảy ra điều này, lơi thứ nhất phải lấy dữ liệu từ bộ nhớ RAM trong khi đó L2 memory cache của lơi thứ hai là hoàn toàn trổng rỗng mà có thể được sử dụng để lưu dữ liệu và tránh cho trường hợp lơi kia phải truy cập trực tiếp vào RAM nhớ làm giảm tốc độ của hệ thống. Cũng như vậy, bộ vi xử lư Core 2 Duo với 4 MB L2 memory cache, một lơi có thể sử dụng đến 3,5MB trong khi đó lơi c̣n lại sử dụng 512KB, hoàn toàn trái ngược với phân chia cố định 50%-50% như đă được sử dụng trong các CPU dual-core khác.

Nói cách khác, các CPU quad-core của Intel hiện nay như Core 2 Extreme QX và Core 2 Quad sử dụng hai chip lơi kép (dual-core), điều đó có nghĩa rằng việc chia sẻ này chỉ xuất hiện giữa các lơi 1 & 2 và 3 & 4. Trong tương lai, Intel cũng đă lên kế hoạch khởi chạy CPU quad-core bằng sử dụng chip đơn. Khi điều này được thực hiện th́ L2 cache sẽ được chia sẻ giữa bốn lơi.

bossnabito
08-03-2008, 02:04 AM
Trên h́nh 3, bạn có thể thấy được một sự so sánh giữa 3 giải pháp L2 memory cache.
http://3c.com.vn/Uploaded/minhpb/2008-03/Kienthucmaytinh/04.03/BentrongADMK10/AND3.jpg
H́nh 3: So sánh giữa các giải pháp L2 memory cache hiện hành đối với các CPU đa lơi hiện nay.
Kiến trúc K10 có bổ sung thêm L3 memory cache chia sẻ trong CPU. Điều này được thể hiện trong h́nh 4. Kích thước của cache này phụ thuộc vào model của CPU, giống như những ǵ xảy ra với kích thước của L2 cache.
http://3c.com.vn/Uploaded/minhpb/2008-03/Kienthucmaytinh/04.03/BentrongADMK10/AMD4.jpg
H́nh 4: Kiến trúc K10 cache
AMD gọi phương pháp này là “Balanced Smart Cache”.

Theo cách đó, L1 memory cache tiếp tục không được thay đổi: 64 KB cho các chỉ lệnh và 64 KB cho dữ liệu trên lơi (trên h́nh 1 AMD đă thể hiện 512KB, nhưng đây là con số tổng thể cho CPU quad-core).

Memory Controller độc lập

Dữ liệu mà CPU nạp từ bộ nhớ RAM trên mỗi chu kỳ clock càng cao nhiều th́ tốc độ của hệ thống càng nhanh. Như chúng tôi đă giải thích ở phần trên, CPU sẽ nhanh hơn nhiều so với bộ nhớ RAM, chính v́ vậy càng ít lần nó cần t́m nạp dữ từ bộ nhớ RAM th́ càng tốt hơn cho hệ thống. Việc tải nhiều dữ liệu một lần có thể ngăn chặn điều này xảy ra.

Các modul nhớ là các thiết bị 64bit. Thay v́ khởi chạy modul nhớ 128bit, các nhà sản xuất CPU và chipset lại giới thiệu ư tưởng bộ nhớ kênh đôi, đây chính là cách truy cập vào hai modul nhớ một cách đồng thời, dù là 2 modul nhớ 64bit này nằm trong modul 128bit đơn. Điều này cho phép gấp đôi tốc độ truy cập bộ nhớ v́ lúc này thay v́ một dữ liệu 64bit, hai dữ liệu 64bit có thể được nạp trên một chu kỳ.

Vấn đề với công nghệ dual-channel là dữ liệu 64bit thứ hai được nạp cùng với dữ liệu đă được yêu cầu ban đầu cần phải được lưu ở địa chỉ kế sau đó. Ví dụ, nếu CPU đă yêu cầu dữ liệu A được lưu trong địa chỉ 1 th́ bộ điều khiển nhớ sẽ tự động nạp dữ liệu A và sau đó nạp dữ liệu B được lưu ở địa chỉ 2.

Nếu CPU không sử dụng dữ liệu B này th́ lần nạp thứ hai này sẽ hoàn toàn bị lăng phí, v́ bộ điều khiển nhớ không thể sử dụng việc nạp song song này để đọc dữ liệu đă được lưu trong địa chỉ không theo sau địa chỉ trước đó.

Bộ điều khiển nhớ đă sử dụng trong kiến trúc K10 cho phép CPU có thể nạp dữ liệu được lưu trên một địa chỉ khác với địa chỉ trước đó. Sự độc lập này sẽ làm tăng hiệu suất của CPU bằng việc không làm lăng phí những lần nạp bộ nhớ. H́nh 5 minh chứng cho tính năng này, nơi CPU muốn nạp dữ liệu A và F. Kiến trúc K8, đă minh chứng bên ở phía bên trái, hai lần nạp dữ liệu đều cần thiết (nhưng chúng hoàn toàn vô dụng), trong khi đó kiến trúc K10 chỉ có một lần nạp dữ liệu được yêu cầu.
http://3c.com.vn/Uploaded/minhpb/2008-03/Kienthucmaytinh/04.03/BentrongADMK10/AMD5.jpg
H́nh 5: Bộ điều khiển nhớ độc lập
AMD gọi tính năng này là “AMD Memory Optimizer Technology”.

Các tính năng tiết kiệm năng lượng

Đa số các tính năng mới có trong kiến trúc K10 đều nhằm cho mục đích tiết kiệm năng lượng – và như vậy làm cho CPU giảm được nhiều nhiệt lượng.

Đây là một số tính năng mới đó:

• Independent Dynamic Core Technology cho phép mỗi một lơi CPU có thể chạy với tốc độ clock khác nhau. Mặc dù vậy điện áp của các lơi được chia sẻ và nó sẽ là điện áp được yêu cầu bởi lơi đang chạy ở tốc độ clock cao hơn.

• CoolCore Technology cho phép CPU tự động tắt một phần của nó khi không được sử dụng. Các bộ vi xử lư được xây dựng trên kiến trúc Core cũng có tính năng tương tự này (“Advanced Power Gating”).
http://3c.com.vn/Uploaded/minhpb/2008-03/Kienthucmaytinh/04.03/BentrongADMK10/AMD7.jpg
H́nh 6: Công nghệ CoolCore
Dual Dynamic Power Management (DDPM), có thể được biết đến với cái tên thân thiện “split-plane”, công nghệ này cho phép CPU và bộ điều khiển nhớ (được nhúng bên trong CPU) có thể sử dụng các nguồn điện cấp khác – nghĩa là các điện áp khác nhau. Điều này cho phép bộ điều khiển nhớ làm việc ở tốc độ cao – điển h́nh là 200MHz cao hơn so với clock chuẩn. Công nghệ này cũng cho phép CPU giảm điện áp của nó và giữ cho bộ điều khiển nhớ làm việc ở tốc độ chính thức, khi CPU vào một trong những chế độ tiết kiệm năng lượng. Khi đă cài đặt trên các bo mạch chủ cũ hơn, các bo mạch chủ này không có nguồn công suất cung cấp riêng cho CPU và cho bộ điều khiển nhớ th́ CPU sẽ làm việc giống bộ vi xử lư K8, có nghĩa là sẽ sử dụng một loại điện áp được cung cấp cho cả CPU và bộ điều khiển nhớ.
http://3c.com.vn/Uploaded/minhpb/2008-03/Kienthucmaytinh/04.03/BentrongADMK10/AMD6.jpg
H́nh 7: Dual Dynamic Power Management (DDPM).
http://3c.com.vn/Uploaded/minhpb/2008-03/Kienthucmaytinh/04.03/BentrongADMK10/AMD8.jpg
H́nh 8: Dual Dynamic Power Management (DDPM).

bossnabito
08-03-2008, 02:05 AM
• Các CPU của máy tính desktop sẽ sử dụng HyperTransport 3.0 thay cho HyperTransport 1.x (các CPU máy chủ sẽ chỉ chấp nhận HT3 trong tương lai). Có hai mục đích chính ở đây. Hiển nhiên hơn là khi tốc độ truyền tải cao hơn trong việc truy cập ngoại vi, khi sử dụng các CPU được xây dựng trên HT3 K10 sẽ có thể truy cập vào thế giới bên ngoài lên đến 10.400 MB/s (Các CPU - K8 chỉ có khả năng truyền tải dữ liệu lên đến 4.000 MB/s) – điều này cho thấy đă tăng được 2,6 lần (2,6x) khả năng cung cấp của băng thông. Tuy nhiên một thuận lợi không thể thấy rơ đó là việc tiết kiệm năng lượng, HT3 cho phép CPU có thể thay đổi tốc độ clock HyperTransport và độ rộng (nghĩa là số lượng bít được truyền tải trên mỗi chu kỳ clock) một cách hoàn toàn động. Ví dụ, nếu CPU nhận thấy rằng 10.400 MB/s là quá nhiều so với những ǵ nó đang thực hiện lúc đó th́ nó có thể giảm tốc độ clock của HyperTransport (độ rộng) xuống tới giá trị thích hợp hơn với những ǵ đang diễn ra. Tốc độ clock và số lượng bít được truyền tải càng thấp trên mỗi một chu kỳ clock th́ năng lượng điện tiêu tốn sẽ càng được giảm. Do HT3 giữ khả năng tương thích với HT1, nên CPU K10 có thể được cài đặt trên các bo mạch chủ trước đó, nhưng HyperTransport bus của chúng sẽ làm việc với tốc độ clock thấp hơn.

Chúng ta hăy nói về các CPU sử dụng kiến trúc K10 mới này.

Các CPU máy chủ sử dụng K10

Bạn có thể thấy các CPU máy chủ sử dụng K10 được thể hiện rất rơ cả lộ tŕnh của nó trên h́nh 9 và 10.
http://3c.com.vn/Uploaded/minhpb/2008-03/Kienthucmaytinh/04.03/BentrongADMK10/AMD9.jpg
H́nh 9: CPU máy chủ sử dụng K10
http://3c.com.vn/Uploaded/minhpb/2008-03/Kienthucmaytinh/04.03/BentrongADMK10/AMD10.jpg
H́nh 10: CPU máy chủ sử dụng K10
Khi CPU mong đợi đầu tiên được khởi chạy sử dụng kiến trúc K10 sẽ là quad-core Opteron được thiết kế dựa trên lơi “Barcelona”. Trên h́nh 11 bạn có thể thấy được các model của Opteron "Barcelona" mà AMD đă lên kế hoạch khởi chạy và bên dưới nó là bảng các model đă được phát hành.
http://3c.com.vn/Uploaded/minhpb/2008-03/Kienthucmaytinh/04.03/BentrongADMK10/AMD11.jpg
H́nh 11: Tốc độ clock và TDP sẽ được cung cấp cho các CPU quad-core Opteron “Barcelona”.
Series AMD Opteron 2300
Model Tần số lơi TDP 2350 2.0 GHz 95W 2347 1.9 GHz 95W 2347 HE 1.9 GHz 68W 2346 HE 1.8 GHz 68W 2344 HE 1.7 GHz 68W
Series AMD Opteron 8300 Model Tần số lơi TDP 8350 2.0 GHz 95W 8347 1.9 GHz 95W 8347 HE 1.9 GHz 68W 8346 HE 1.8 GHz 68W
Đây là một bảng vắn tắt các lơi sẽ được phát hành cho thị trường máy chủ với kiến trúc K10.

• Barcelona: quad- hoặc dual-core Opteron trên các series 2000 và 8000, 512 KB L2 memory cache trên mỗi lơi, 2 MB L3 memory cache, được đăng kư DDR2 memory, socket 1207 (socket F), HyperTransport 1.x và công nghệ sản suất 65 nm.

• Budapest: dual-core Opteron trên các series 1000, 512 KB L2 memory cache trên mỗi lơi, 2 MB L3 memory cache, DDR2 memory cũ, socket 1207 (socket F), HyperTransport 1.x hay 3.0 và công nghệ sản xuất 65 nm.

• Shanghai: quad- hoặc dual-core Opteron trên các series 2000 và 8000 , 512 KB L2 memory cache trên mỗi lơi, 6 MB L3 memory cache, được đăng kư DDR2 memory, socket 1207 (socket F), HyperTransport 1.x và công nghệ sản xuất 45 nm.

• Montreal: octal- hoặc quad-core Opteron trên các series 2000 và 8000 , 1 MB L2 memory cache trên mỗi lơi, 6 MB hay 12 MB L3 memory cache, được đăng kư DDR2 memory, socket G3, HyperTransport 1.x và công nghệ sản xuất 45 nm.

• Suzuka: quad- hoặc dual-core Opteron trên các series 1000 , 512KB L2 memory cache trên mỗi lơi, 6 MB L3 memory cache, DDR2 memory cũ, socket AM3, HyperTransport 3.0 và công nghệ sản xuất 45 nm.

Với các CPU K10 dành cho máy desktop

Bạn có thể thấy được các CPU K10 được thiết kế cho máy tính đặt bàn trong h́nh 12 dưới đây.
http://3c.com.vn/Uploaded/minhpb/2008-03/Kienthucmaytinh/04.03/BentrongADMK10/AMD12.jpg
H́nh 12: Các CPU K10 dành cho máy desktop
AMD không tiết lộ số các model sẽ được phát hành

Đây là tóm tắt ngắn về các lơi sẽ được giới thiệu cho thị trường các máy tính desktop được xây dựng trên kiến trúc K10.

• Spica: single-core Sempron LE CPU, 512 KB L2 memory cache, DDR2 memory thường, HyperTransport 3.0 và socket AM2+.

• Rana: Dual-core Athlon X2 LS CPU, 512 KB L2 memory cache trên mỗi lơi, L3 memory cache (giá trị không được tuyên bố), DDR2 memory thường, HyperTransport 3.0 và socket AM2+.

• Kuma: Dual-core Phenom X2 CPU, 512 KB L2 memory cache trên mỗi lơi, 2 MB L3 memory cache, DDR2 memory thường, HyperTransport 3.0 và socket AM2+.

• Agena: Quad-core Phenom X4 CPU, 512 KB L2 memory cache trên mỗi lơi, 2 MB L3 memory cache, DDR2 memory thường, HyperTransport 3.0 và socket AM2+.

• Agena FX: Quad-core Phenom FX CPU, 512 KB L2 memory cache trên mỗi lơi, 2 MB L3 memory cache, DDR2 memory thường, HyperTransport 3.0 và socket AM2+ hay socket 1207+.

Socket AM2+ và socket 1207+ là các socket AM2 và 1207 (socket F) đang được hỗ trợ các công nghệ HyperTransport 3.0 và Dual Dynamic Power Management (DDPM). Giống như những ǵ chúng tôi đă nói lúc trước, bạn có thể cài đặt các bộ vi xử lư K10 trên các bo mạch chủ socket AM2 hay socket F cũ, tuy nhiên CPU sẽ không thể có được tốc độ truyền tải mới và các tính năng mới được cung cấp bởi HyperTransport 3.0 và cũng không có điện áp được phân tách cho bộ điều khiển nhớ - cả CPU và bộ điều khiển nhớ sẽ cấp cùng một mức điện áp.
:024::055: