Tuy nhiên, hệ điều hành đa nhiệm và một loạt các ứng dụng chạy đồng thời có thể làm quá tải
ngay cả với bộ nhớ đệm L1 được thiết kế tốt nhất. Để giải quyết vấn đề này, cách đây nhiều
năm, các nhà sản xuất đã bổ sung đường truyền tốc độ cao để bộ xử lý có thể giao tiếp với bộ
nhớ đệm thứ cấp (Level2, L2) với tốc độ khoảng 1/2 hay 1/3 tốc độ của bộ xử lý. Hiện nay trong
những bộ xử lý mới nhất như Pentium 4 hay PowerPC 7450 còn tiến xa hơn khi đưa bộ nhớ đệm
L2 vào ngay trong CPU và hỗ trợ giao tiếp tốc độ cao với bộ nhớ đệm ngoài L3. Trong tương lai,
các nhà sản xuất thậm chí còn tích hợp bộ điều khiển bộ nhớ ngay trên CPU để tăng tốc độ lên
cao hơn nữa.
2 trang |
Chia sẻ: tlsuongmuoi | Lượt xem: 2068 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Bên trong bộ xử lý, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
Bộ vi xử lý là trái tim của máy tính hiện đại; đây là một loại chip được tạo thành từ hàng triệu
transistor và những thành phần khác được tổ chức thành những khối chức năng chuyên biệt,
bao gồm đơn vị xử lý số học, khối quản lý bộ nhớ và bộ nhớ đệm, khối luân chuyển dữ liệu và
phép toán luận lý suy đoán.
Bộ vi xử lý của máy tính hiện nay đã phát triển cực mạnh về khả năng, tốc độ và tính phức tạp so
với thập niên trước đây. Tốc độ cao, kích thước nhỏ, số lượng transistor khổng lồ. Nếu bộ xử lý
năm 1983 chỉ có 30.000 transistor thì hiện nay với một số bộ xử lý con số này là trên 40 triệu.
Bất kỳ chương trình máy tính nào cũng bao gồm rất nhiều lệnh để thao tác với dữ liệu. Bộ xử lý
sẽ thực hiện chương trình qua bốn giai đoạn xử lý: nạp, giải mã, thực thi và hoàn tất.
Giai đoạn nạp (lấy lệnh và dữ liệu) đọc các lệnh của chương trình và dữ liệu cần thiết vào bộ xử
lý.
Giai đoạn giải mã xác định mục đích của lệnh và chuyển nó đến phần cứng tương ứng.
Giai đoạn thực thi là lúc có sự tham gia của phần cứng, với lệnh và dữ liệu đã được nạp sẵn, các
lệnh sẽ được thực hiện. Quá trình này có thể gồm các tác vụ như cộng, chuyển bít hay nhân
thập phân động.
Giai đoạn hoàn tất sẽ lấy kết quả của giai đoạn thực thi và đưa vào thanh ghi của bộ xử lý hay bộ
nhớ chính.
Một bộ phận quan trọng của bộ vi xử lý là đồng hồ xung nhịp được thiết kế sẵn, xác định tốc độ
làm việc tối đa của những bộ phận khác và giúp đồng bộ hoá những hoạt động liên quan. Hiện
nay tốc độ nhanh nhất của bộ xử lý có trên thị trường là trên 2 GHz hay hơn hai tỷ xung nhịp mỗi
giây. Một số người thích sử dụng thủ thuật "ép" xung để chạy ở tốc độ cao hơn, nhưng nên nhớ
là khi đó nhiệt độ làm việc của chip sẽ cao hơn và có thể gây trục trặc.
Các bộ phận của CPU
Mạch của bộ xử lý được thiết kế thành những phần luận lý riêng biệt - khoảng hơn một chục bộ
phận - được gọi là những đơn vị thực thi. Chúng có nhiệm vụ thực hiện bốn giai đoạn trên và có
khả năng xử lý gối đầu. Dưới đây là một số đơn vị thực thi phổ biến nhất.
Bộ luận lý số học: Xử lý tất cả những phép toán số học. Đôi lúc đơn vị này được chia thành
những phân hệ, một chuyên xử lý các lệnh cộng và trừ số nguyên, phân hệ khác chuyên tính
toán các phép nhân và chia số phức.
Bộ xử lý dấu chấm động (FPU): Thực hiện tất cả các lệnh liên quan đến dấu chấm động (không
phải là số nguyên). Ban đầu FPU là bộ đồng xử lý gần ngoài nhưng hiện nay nó được tích hợp
ngay trên bộ xử lý để tăng tốc độ xử lý.
Bộ phận nạp/lưu: Quản lý tất cả lệnh đọc hay ghi bộ nhớ.
Bộ phận quản lý bộ nhớ (MMU): Chuyển đổi địa chỉ của ứng dụng thành địa chỉ bộ nhớ vật lý.
Điều này cho phép hệ điều hành ánh xạ mã và dữ liệu của ứng dụng vào những khoảng địa chỉ
ảo để MMU có thể thực hiện các dịch vụ theo chế độ bảo vệ bộ nhớ.
Bộ phận xử lý rẽ nhánh (BPU): Dự đoán hướng đi của lệnh rẽ nhánh nhằm giảm sự ngắt quãng
của dòng chuyển dữ liệu và lệnh vào bộ xử lý khi có một luồng xử lý nhảy đến một địa chỉ bộ nhớ
mới, thường gặp trong các phép toán so sánh hay kết thúc vòng lặp.
Bộ phận xử lý vector (VPU): Xử lý các lệnh đơn, đa dữ liệu (single instruction multiple data-
SIMD) để tăng tốc các tác vụ đồ hoạ. Những lệnh theo kiểu vector này gồm các tập lệnh mở rộng
cho multimedia của Intel, 3DNow của AMD, AltiVec của Motorola. Trong một vài trường hợp
không có bộ phận VPU riêng, chẳng hạn Intel và AMD tích hợp những tính năng này vào trong
FPU của Pentium 4 và Athlon.
Không phải tất cả các bộ phận này đều thực thi lệnh. Người ta đã có những nỗ lực to lớn để bảo
đảm cho bộ xử lý lấy lệnh và dữ liệu ở tốc độ nhanh nhất. Tác vụ nạp truy cập bộ nhớ chính
(không nằm ngay trên CPU) sẽ chiếm nhiều chu kỳ xung nhịp, trong khi đó CPU lại không làm gì
cả. Tuy nhiên, BPU sẽ phải làm việc rất nhiều để lấy sẵn dữ liệu và lệnh.
Một cách giảm thiểu tình trạng không hoạt động của CPU là trữ sẵn mã và dữ liệu thường được
truy cập trong bộ nhớ ngay trên chip, như vậy CPU có thể truy cập mã và dữ liệu trên bộ nhớ
đệm chỉ trong một chu kỳ xung nhịp. Bộ nhớ đệm chính ngay trên CPU (còn gọi là Level1 hay L1)
thường chỉ có dung lượng khoảng 32KB và chỉ có thể lưu được một phần chương trình hay dữ
liệu. Thủ thuật để thiết kế bộ nhớ đệm là tìm giải thuật để lấy thông tin quan trọng vào L1 khi cần
đến. Điều này có ý nghĩa hết sức quan trọng đối với tốc độ nên hơn một nửa số lượng transistor
của bộ xử lý có thể dành cho bộ nhớ đệm.
Tuy nhiên, hệ điều hành đa nhiệm và một loạt các ứng dụng chạy đồng thời có thể làm quá tải
ngay cả với bộ nhớ đệm L1 được thiết kế tốt nhất. Để giải quyết vấn đề này, cách đây nhiều
năm, các nhà sản xuất đã bổ sung đường truyền tốc độ cao để bộ xử lý có thể giao tiếp với bộ
nhớ đệm thứ cấp (Level2, L2) với tốc độ khoảng 1/2 hay 1/3 tốc độ của bộ xử lý. Hiện nay trong
những bộ xử lý mới nhất như Pentium 4 hay PowerPC 7450 còn tiến xa hơn khi đưa bộ nhớ đệm
L2 vào ngay trong CPU và hỗ trợ giao tiếp tốc độ cao với bộ nhớ đệm ngoài L3. Trong tương lai,
các nhà sản xuất thậm chí còn tích hợp bộ điều khiển bộ nhớ ngay trên CPU để tăng tốc độ lên
cao hơn nữa.
Các file đính kèm theo tài liệu này:
- Bên trong bộ xử lý.pdf