Tìm hiểu kiến trúc vi xử lý AMD a Series Bulldorzer
Trang 1TÌM HIỂU KIẾN TRÚC VI XỬ LÝ AMD A SERIES
(KIẾN TRÚC BULLDORZER)
I Giới thiệu khái quát về VXL
- Vi xử lý (viết tắt là µP hay uP), đôi khi còn được gọi là bộ vi xử lý, là một linh kiện
điện tử máy tính được chế tạo từ các tranzito thu nhỏ tích hợp lên trên một vi mạch tích hợp đơn Khối xử lý trung tâm (CPU) là một bộ vi xử lý được nhiều người biết đến nhưng ngoài ra nhiều thành phần khác trong máy tính cũng có bộ
vi xử lý riêng của nó, ví dụ trên cạc màn hình (video card) chúng ta cũng có một
bộ vi xử lý
- Trước khi xuất hiện các bộ vi xử lý, các CPU được xây dựng từ các mạch tích hợp
cỡ nhỏ riêng biệt, mỗi mạch tích hợp chỉ chứa khoảng vào chục tranzito Do đó, một CPU có thể là một bảng mạch gồm hàng ngàn hay hàng triệu vi mạch tích hợp Ngày nay, công nghệ tích hợp đã phát triển, một CPU có thể tích hợp lên một hoặc vài vi mạch tích hợp cỡ lớn, mỗi vi mạch tích hợp cỡ lớn chứa hàng
Trang 2ngàn hoặc hàng triệu tranzito Nhờ đó công suất tiêu thụ và giá thành của bộ vi
xử lý đã giảm đáng kể
- Sự tiến hóa của các bộ vi xử lý một phần nhờ vào việc chạy theo Định luật Moore
và hiệu suất của nó tăng lên một cách ổn định sau hàng năm Định luật này phát biểu rằng sự phức tạp của một mạch tích hợp sẽ tăng lên gấp đôi sau mỗi chu kỳ
18 tháng Và thực tế, sự phát triển của các bộ vi xử lý đã bám sát định luật này từ
nhữngnăm 1970 Nhờ đó, từ máy tính mẹ (mainframe computer) lớn nhất cho
đến các máy tính xách tay hiện nay đều sử dụng một bộ vi xử lý nhỏ nhắn tại trung tâm của chúng
- AMD hay Advanced Micro Devices (AMD) là nhà sản xuất linh kiện tích hợp bán
dẫn đa quốc gia có trụ sở tại Sunnyvale, Mỹ AMD là nhà sản xuất bộ vi xử lý (CPU) x86 lớn thứ hai thế giới sau Intel và là một trong những nhà sản xuất bộ nhớ flash hàng đầu trên thế giới; ngoài ra AMD còn sản xuất chipset và các linh kiện điện tử bán dẫn khác
- AMD nổi tiếng với dòng sản phẩm Athlon cho thị trường cao cấp và Duron cho thị trường cấp thấp giá rẻ Một số linh kiện của các thế hệ đời trước của máy tính Apple cũng do AMD cung cấp
- AMD đã tiết lộ cấu trúc bộ vi xử lí mới sẽ bắt đầu được dùng trong những chiếc CPU mới của hãng này bắt đầu từ năm 2011 Cấu trúc này được gọi là Bulldozer hoàn toàn khác so với kiến trúc AMD64 hiện tại đang được AMD sử dụng kể từ lần ra mắt trong Athlon 64 hồi năm 2003
- Cấu trúc Bulldozer sẽ thừa hưởng một số tính năng có trong cấu trúc AMD64, chẳng hạn như tích hợp Mạch điều khiển bộ nhớ và sử dụng bus HyperTransport
để kết nối giữa CPU và chipset
- Bulldozer là tên mã được đặt cho kiến trúc này chứ không phải là cho một bộ vi
xử lý cụ thể Như thông lệ, đầu tiên AMD sẽ phát hành bộ vi xử lý nhằm vào thị trường máy chủ dựa trên kiến trúc mới này, sau đó là thị trường máy để bàn cao cấp, rồi đến các sản phẩm chủ đạo cho hệ thống để bàn , và cuối cùng là dành cho một thị trường giá rẻ
- Mặc dù không hề nói chi tiết về những CPU sẽ được phát hành nhưng AMD lại đề cập rằng những CPU đầu tiên cho máy để bàn dựa trên cấu trúc Bulldozer sẽ cần khe cắm mới được gọi là AM3+ mà cũng tương thích với bộ vi xử lý Socket AM3 hiện tại Tuy nhiên, CPU dùng Socket AM3+ sẽ không tương thích với
Motherboard Socket AM3
Trang 3- Cấu trúc Bulldozer sẽ trang bị công nghệ tương tự với công nghệ Intel Turbo Boost, cho phép CPU tự Overclock nếu bạn đang chạy các chương trình chuyên sâu về CPU và nếu sự tản nhiệt vẫn đảm bảo trong thông số kỹ thuật
Sau đây chúng ta sẽ tiếp tục tìm hiểu kĩ hơn về kiến trúc vi xử lý AMD A Series (Bulldozer)
II Kiến trúc vi xử lý.
a Sơ đồ khối của Vi xử lý.
- Sơ đồ khối :
- Tổng quan :
Trang 4 Có nhiều module ( 4 module )
o Fetch/giải mã
o Dispath
o 2 nhân mỗi module ( interger cluster )
o FPU ( Floating Point Unit ) – chia sẻ giữa các nhân
Cache ( L1, L2, L3 )
Công nghệ HyperTransportTM
Hợp nhất bộ điều khiển DRAM
- Sơ đồ khối Module :
- Fetch/giải mã:
Trang 5 Bộ dự đoán rẽ nhánh chạy trước
Chỉ thị giải mã tới :
o FastPath đơn ( 1 Macro-op )
o FastPath đôi ( 2 Macro-ops )
o Microdecode
32 byte Fetch
Bộ giải mã được cung cấp cho 1 nhân mỗi chu kỳ
Dispath:
Renaming
o Chứa trong PRF
Lịch trình
o Macro-ops direct ouf of order scheduling
o Micro-ops được thực hiện trong pipeline
Interger Cluster :
2 Interger Cluster cho mỗi module
2 ALU : Arithmetic Logic Unit
o EXo/ALUo : DIV, POPCNT, LZCOUNT
o EX1/ALU1 : MUL, JMP
LSU : Load/Stored Unit
DTLB : Data Transition Lookaside Buffer
o L1: 32 lối vào hoàn toàn liên kết
o L2 : 1024 lối vào 8 lối liên kết
FPU : Floating Point Unit
1 FPU cho mỗi module
4 pipeline
o Po : MAC Unit – Add, Mul, Div, Convert, Suffle, Shift, chỉ thị XOP
o P1 : MAC Unit – Add, Mul, Div, Suffle, Shift
o P2 : 128 bit Interger SIMD ALU
o P3 : 128 bit Interger SIMD ALU : truyền dữ liệu tới store unit
256 bit AVX Instructions
o Tách ra thành 2 macro-ops
o Since store unit is not double and register-to-register moves will cause a stall penalty, there is no advantage in using AVX
instructions over 128 bit instructions
- Cache :
L1 cache : ( phân chia )
o Data cache : 2 cho mỗi module ( 1 cho mỗi Interger Cluster )
16KB 4-lối liên kết
Trang 6 Write Through
Predictive ( misprediction adds stalls )
4 Clocks best case hit time
o Instruction cache : 1 cho mỗi module
64KB 2-lối liên kết
L2 cache : 8MB ( phân chia )
o 2MB mỗi module
o Bao gồm L1 data cache
o 16-lối liên kết
o 18-20 chu kỳ hit
Write Coalescing Cache
- Tổng quan dòng thực thi :
- Nhận lệnh
Lệnh giải mã macro-ops
Macro-ops float hoặc interger pipeline
Pipeline phân bổ vào hang đợi physical Register file ( renaming ) lên lịch trình micro-ops thực thi ( khi đầu vào cho micro-ops đã sẵn sàng )
Hoàn thành micro-ops Signal core for retirement
- Công nghệ HyperTransportTM
:
AMD chọn lựa công nghệ BUS
o 2 chiều, nối tiếp / song song, liên kết point-to-point
o Độ trễ thấp, bandwidth cao
o Tăng tốc độ dữ liệu gấp đôi
HyperTransport 3.1
o 3.2 GHz
o 1 16-bit liên kết ( 16 nhận / 16 truyền tải )
o 12.8 GB/s ( Tx/Rx )
o Tối đa ( không được cho phép )
4 16-bit liên kết
51.2 GB/s
- Bộ điều khiển DRAM
Trang 7 2.2 GHz clock
Hỗ trợ DDR3 – 1866
o 2 72 bit độ rộng kênh nhớ
Tiết kiệm năng lượng
o Hoạt động điều tiết giảm tiêu thụ điện
o Ở chế độ chờ khi không hoạt động
b Các thành phần chính của VXL Bulldozer:
- Sơ đồ cấu trúc tổng quan các thành phần:
- Các bộ phận Fetch và Decode
Fetch được chia sẻ bởi 2 "lõi" có sẵn trong mỗi module Bulldozer.
Fetch chịu trách nhiệm việc nhận lệnh tiếp theo từ RAM hoặc cache nhớ
để giải mã
Trang 8- Cấu trúc của 1 core:
- Mỗi core ( Interger Engine ) đều có 4 đơn vị Execution đó là:
EX, MUL: có thể thực hiện bất kì một loại lệnh số nguyên nào, bao gồm cả
phép tính nhân, nhưng không làm phép chia
EX, DIV: có thể thực hiện được bất cứ loại lệnh số nguyên nào, bao gồm cả
phép chia, nhưng không làm phép nhân
AGen: hay được gọi là AGU hoặc Address Generation Unit được sử dụng
để tạo ra các địa chỉ mà CPU nhận hoặc lưu trữ dữ liệu
Load/Store ("Ld/ST") chịu trách nhiệm nhận hoặc lưu trữ vào bộ nhớ một
dữ liệu mà một lệnh yêu cầu
Trang 9- Khối Floating-point Unit:
- Floating-point Unit cũng có 4 khối Execution đó là:
Hai khối MMX: có thể thực hiện được tất cả các chỉ lệnh dấu phẩy động
cơ bản (các lệnh x87)
Hai khối 128-bit FMAC: có thể thực hiện được tất cả các lệnh dấu phẩy
động
Trang 10- Bộ nhớ Cache L2
- L2 cache trên Bulldozer không chỉ dùng riêng cho từng nhân số nguyên mà
còn có “trách nhiệm” gánh bớt tải cho L1 DCache
- Ngoài ra còn có:
Bộ đệm dữ liệu L1 Dcache
B ộ nạp ng ầm Data prefetcher
Bộ giải mã 4x86 Decoders
c Tập lệnh của VXL Bulldozer.
- Mô tả vắn tắt tập lệnh vi xử lý:
Ngoài việc tương thích với các tập lệnh x86 chuẩn, Bulldozer còn hỗ trợ những tập lệnh bổ sung dưới đây:
SSE4.1 và SSE4.2
AVX (Advanced Vector Extensions) cùng với 2 lệnh là XOP và FMA4
AES (Advanced Encryption Standard)
Trang 11 LWP (Light Weight Profiling)
Trong đó:
SSE4.1 và SSE4.2: các tập lệnh để điều khiển mutilmedia
AVX: đây là tập lệnh x86 mới gồm các thanh ghi vector có kích thước lên đến 256-bit Dùng để tăng hiệu suất làm việc và tiết kiệm điện năng bởi vì chúng cho phép thực hiện nhiều thuật toán đơn giản và dùng vài lệnh để hoàn thành nhiệm vụ Những lệnh AVX hoàn toàn có lợi với những tính toán nặng tính dấu phảy động như Multimedia , những ứng dụng khoa học
và tài chính
AES : AES là một chuẩn mã hóa của chính phủ Mỹ hiện hành và được sử dụng để thay thế cho chuẩn trước đó, triple DES, chuẩn đã sử dụng một khóa 56-bit AES cũng sử dụng các độ dài khóa khác nhau, đặc trưng bởi AES-128, AES-192 và AES-256 Phụ thuộc vào độ dài của khóa mà có đến
14 vòng biến đổi được yêu cầu để tạo ra một văn bản mã hóa cuối cùng
AES cũng có vài chế độ hoạt động, gồm có trong đó:
+ electronic codebook (ECB) + cipher block chaining (CBC)
+ counter (CTR)
+ cipher feedback (CFB)
+ output feedback (OFB)
Cipher block chaining là chế độ được sử dụng nhiều nhất vì nó cung cấp một mức bảo mật có thể chấp nhận được và không có khả năng bị hổng trước các tấn công thống kê
Các lệnh LWP cho phép các chương trình dễ dàng theo dõi hiệu suất phần mềm, điều này giúp các nhà phát triển điều chỉnh chương trình để đạt được hiệu suất tối đa Tập lệnh bổ sung này có 6 lệnh mới
Trang 12III Các đặc tính và công nghệ mới
a Các đặc tính nổi bật của VXL AMD A Series (Kiến trúc
Bulldozer)
- Vi xử lý AMD series(kiến trúc Bulldozer)có từ 4 đến 8 module
Bulldozer (AMD đưa ra khái niệm module : là nơi mà 2 nhân xử lý số
nguyên sẽ “chia” cùng một căn phòng)
Một số chuyên gia nhận định, mục tiêu thiết kế dựa trên kiến trúc module này AMD không chỉ đưa ra hình thức Hyper Threading siêu phân luồng riêng của họ (theo một cách “cơ bắp” hơn) để giúp cho việc xử lí đa luồng,
đa nhiệm một cách hiệu quả hơn, mà còn tập trung hơn vào việc gia tăng vật lý số lệnh thực hiện được trên chu kỳ đồng hồ (IPC) thông qua việc mở rộng những đơn vị tính toán bên trong (các đơn vị số nguyên integer và các đơn vị dấu chấm động floating point).
Đi sâu vào tìm hiểu module Bulldozer trên, các bạn sẽ nhận ra rằng hai
core trong module trên dùng hai data cache L1 riêng rẽ và hai Interger
Scheduler (định tuyến xử lí số nguyên) riêng Với cách bố trí này thì việc xử
lí số nguyên hai luồng dữ liệu khác nhau sẽ độc lập và không nhiễu lẫn nhau
- Một điểm cộng đầu tiên cho Bulldozer, nếu so với HT hay SMT của Intel
Nếu đã đọc về cơ chế của HT thì bạn có thể biết là việc xử lí hai thread trên một core của HT bị hạn chế khá nhiều, do chỉ là việc phân chia tiến trình làm việc cùng trên một core phần cứng, nên hiệu suất cao nhất chỉ đạt được 40% là cao nhất (theo lý thuyết) với các phép toán số nguyên Với thiết kế mới này trên Bulldozer, hiệu năng có thể tăng lên đến 90% khi xử
lí đa luồng
Cả hai core con của nhân Bulldozer sẽ cùng dùng chung FP Scheduler (định tuyến xử lí dấu chấm động) Và FP Scheduler này có thể định tuyến riêng
cho mỗi core sử dụng một tuyến 128 bit FMAC riêng rẽ (độ dài FP tăng gấp đôi so với các kiến trúc trước đây FP 64 bit), hoặc ưu tiên cho một core
Trang 13chiếm cả hai tuyến FMAC trên (giống Intel Smart cache , chỉ khác là nó ko phải là Cache mà là đơn vị xử lí FP)
- Điểm cộng thứ hai cho Bulldozer khi chắc chắn rằng việc xử lí dấu chấm
động của Bulldozer sẽ rất chi là “khủng bố” và linh hoạt
- Kênh bộ nhớ bộ điều khiển bộ nhớ.Bulldozer sẽ hỗ trợ bộ nhớ bao nhiêu
kênh và độ rộng của bộ điểu khiển bộ nhớ là bao nhiêu bit ? Phần điều khiển bộ nhớ của AMD Bulldozer có thể sẽ là 144 bit- 288 bit hay thậm chí
576 bit giao tiếp nhớ 576 bit trong Bulldozer từ trước giờ Single-channel:
64 bit, Dual-channel: 128 bit, và Tripple Channel trong Nehalem mà thôi MCM của Bulldozer lần này với sự phá cách 576 bit,Về bộ nhớ, , Bulldozer
có chứng nhận JEDEC-certified DDR3-1600, sẽ hỗ trợ RAM DDR3 1600 MHz trở lên, và sẽ có băng thông bộ nhớ từ: 25.6-51.2 GB/s Và vì vậy các CPU Zambezzi hoàn toàn hỗ trợ các chuẩn DDR3-2000 hay DDR3-2133, với băng thông khoảng 32GB/s mà khỏi cần phải chú ý đến việc ép xung bộ vi
xử lí
- Về tập lệnh có tập lệnh mở rộng SSE5
- Bộ đệm tập lệnh L1 trên Bulldozer có dung lượng hơn hẳn người em
Bobcat với 64 KB, cơ chế liên kết 2-hướng, tốc độ nạp cũng 32 KByte
- Cơ chế dự đoán rẽ nhánh trên Bulldozer dù sao đã có thay đổi so với
K10.5 Trên K10.5, quá trình rẽ nhánh và nạp tập lệnh được tiến hành cùng lúc Nếu 1 trong 2 cái bị treo thì cái còn lại cũng treo nốt : nếu quá trình dự đoán ra sai mục tiêu, nó sẽ phải dự đoán lại, trong lúc đó thì quá trình nạp tập lệnh không biết cần nạp thêm gì vào và phải chờ cho đến khi quá trình kia đưa ra được mục tiêu kế
- Bộ giải mã x86 là một thay đổi trên Bulldozer so với K10.5 Trong một thời
gian dài (từ K7 lên K10.5), AMD vẫn duy trì chỉ có 3 bộ giải mã x86 tại vị trí
“tiền tuyến” (front-end)
- Quản lý năng lượng:
AMD đã bổ sung thêm một số tính năng thú vị để quản lý năng lượng trong Bulldozer, và tính năng quan trọng nhất chính là "Power Gating", giúp tiết kiệm năng lượng bằng cách cắt giảm năng lượng từ những khối CPU không hoạt động Đồng thời, CPU cũng sẽ tắt hoàn toàn bất cứ một
"lõi" CPU nào không hoạt động
Trang 14- MỘT SỐ SẢN
PHẨM VÀ ĐẶC TÍNH NỔI BẬT VXL AMD A Series Trong Xử Lý Và Ưng Dụng (Kiến trúc Bulldozer ) (AMD
A4,A6,A8,A10)
Bộ xử lý tăng tốc AMD’s A-Series là sự kết hợp của bộ vi
xử lý đa nhân CPU (2 nhân đến
4 nhân) và đồ họa AMD Radeon™ HD Graphics trong một con chip đơn nhằm đạt được hiệu năng cao nhất và tiếp kiệm điện nhất
Tính năng và lợi ích:
Bộ xử lý tăng tốc AMD A4 cho phép:
Lướt web nhanh, email và các ứng dụng xã hội Trình chiếu video mượt mà giúp bạn trải nghiệm nội dung HD tốt nhất
Khả năng đáp ứng tuyệt vời trên các ứng dụng hàng ngày,
Bộ xử lý tăng tốc AMD A6 cho phép bạn làm tất cả những điều trên, và kèm theo:
Chỉnh sửa hình ảnh nhanh và đẹp
Đa nhiệm tốt và tối ưu chỉnh sửa video HD Dựng phim với tốc độ ấn tượng
Trang 15Bộ xử lý tăng tốc AMD A8 cho phép bạn làm tất cả những điều trên, và kèm theo:
Xem film Blue-ray 3D Chơi game 3D lên đến 4 màn hình
Tính năng :
Làm nhiều việc hơn, mượt mà hơn, tiếp kiệm năng lượng hơn Với AMD APU, sự kết hợp của một CPU đa nhân và card đồ họa mạnh mẽ trong một con chip đơn, bạn sẽ có hiệu năng xử lý hình ảnh, tính toán tuyệt vời cho giải trí và các trò chơi 3D Thậm chí, với khả năng tính toán rất mạnh của mình, hình ảnh được xử lý sẽ trở nên mượt mà, sáng hơn
và giảm thiểu nhiễu và răng cưa Mang đến cho bạn khả năng chia sẽ tuyệt vời
Sức mạnh đáp ứng công việc hàng ngày cùng công nghệ AMD
VISION A4 từ AMD
– Kiến hình ảnh trung thực giống như thật chứ không phải là hình ảnh thuần túy, và mang thế giới hình ảnh sống động cùng màu sắc chân thực trên độ phân giải cao cùng độ tương phản tuyệt vời cùng AMD Perfect Picture HD
– Giảm thiểu thời gian chờ đợi video được tải - giúp bạn xem video trực tuyến nhanh chóng hơn và mượt mà hơn với đồ họa
từ AMD APU và công nghệ AMD Quick Stream
Trang 16 AMD Steady Video Technology 5
– Việc quay những đoạn vdeo quan trọng như đám cưới của người bạn thân có thể khiến bạn không hài lòng vì hình ảnh khi xem lại bi rung rất khó chịu, hãy ổn định hình ảnh cùng công nghệ AMD Steady Video
AMD Radeon™ HD Graphics - Hãy để những thứ bạn muốn hiển thị lên
màn hình theo các mượt mà và trung thực nhất, hình ảnh và trò chơi 3D sẽ mượt mà hơn nhờ tích hợp đồ họa cao cấp AMD Radeon™ HD
AMD Internet Acceleration – Giúp trình duyệt của bạn tải trang web nhân hơn
cùng AMD Internet Acceleration
USB 3.0 - Chuyển hình ảnh và video vào ổ cứng lưu trữ nhanh hơn đến 10 lần với
USB 3.0
AMD App Acceleration 1
– Tăng tốccác ứng dụng hàng ngày với sức mạnh từ các nhân đờ họa với AMD App Acceleration
b Các công nghệ mới được áp dụng trong VXl Bulldozer:
- Hiệu quả năng lượng: Bulldozer kết nối lõi CPU của AMD là tất cả những
đột phá trong thiết kế năng lượng hiệu quả cho phép cả hiệu suất cao va mát mẻ, hoạt động êm ái Mục tiêu của tất cả tính năng và khía cạnh của
bộ VXL đã được thiết kế cho phép máy tính cung cấp và thực hiện linh hoạt tất cả những gì chúng ta mong muốn mà không có sự tham dự của những nhược điểm tiêu thụ điện năng cao Chỉ tầm quan trọng của CPU là hiệu quả năng lượng của máy tính có thể nhìn thấy bằng cách nhìn vào sự phân hủy sức mạnh của một hệ thống máy tính được nạp đầy đủ như của AMD đo dưới đây: