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.
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.