Hình II.7 CPU, bộ nhớ, thiết bị vàora và khả năng sử dụng ngắt
4. Vài nét về Kiến trúc CPU Pentium của Intel®
4.3. Kỹ thuật đường ống (Pipeline) và xử lý song song mức lệnh
Kỹ thuật đường ống làm tăng đáng kể tốc độ xử lý của CPU. Chu kỳ thực hiện lệnh sẽ được thực hiện ở từng khối chức năng riêng, do vậy khối nhận lệnh sau khi nhận lệnh sẽ tiếp tục nhận lệnh khác để chuẩn bị chuyển cho khối giải mã, khi lệnh thứ nhất đã bước sang giai đoạn 3 của việc thực thi thì khối nhận lệnh nhận lệnh thứ 3 v.v… CPU hiện đại có 11 tầng, có thể nhận 11 lệnh tại cùng một thời điểm. Thực tế, hầu như tất cả các CPU hiện nay đều theo kiến trúc superscalar, số lệnh đồng thời được nạp vào trong CPU sẽ cao hơn nhiều. Với đường ống của CPU có 11 tầng, một lệnh được thực thi hoàn toàn sẽ phải chuyển qua cả 11 khối. Lệnh đầu tien có thể sẽ mất 11 bước để được thực hiện xong, song lệnh thứ hai đi ngay sau đó sẽ được hoàn thành sớm hơn, chứ không phải là qua đến 11 bước như lệnh đầu…
Pentium là loại đơn vị xử lý trung tâm 32 bit và là loại đơn vị xử lý trung tâm đầu tiên sử dụng kỹ thuật ILP (Instruction Level Pararellism), kỹ thuật xử lý song song mức lệnh.
Nếu coi rằng một lệnh thường được xử lý qua năm giai đoạn:
1. Nhập lệnh (FI Fetch the Instruction)
2. Giải mã lệnh (DI Decode the Instruction)
3. Tạo địa chỉ toán hạng (GOA Generate Operand
Address)
4. Nhập toán hạng (FO Fetch Operands)
5. Thực hiện lệnh (EI Execute Instruction)
Với kỹ thuật xử lý lệnh thông thường, đơn vị xử lý trung tâm phải
tuần tự thực hiện xong tất cả các giai đoạn thực hiện một lệnh, thường là sau 5 chu kỳ máy, rồi mới chuyển sang nhập và thực hiện lệnh tiếp theo. Để tăng tốc độ xử lý lệnh mà không nhất thiết phải tăng tần số nhịp của máy, người ta sử dụng các kỹ thuật khác như kỹ thuật xử lý lệnh kiểu đường ống (Pipeline) và kỹ thuật xử lý lệnh song song (ILP).
Chu kỳ máy 1 2 3 4 5 6 7 8 9 FI DI GOA FO EI FI DI GOA FO EI FI DI GOA FO EI FI DI GOA FO EI FI DI GOA FO EI Time
Kỹ thuật xử lý lệnh kiểu đường ống (Pipeline)
Kỹ thuật xử lý lệnh kiểu đường ống được sử dụng trong các đơn vị xử lý trung tâm từ đời đơn vị xử lý trung tâm Intel 8086.
Đường ống tương tự như dây chuyền sản xuất nhiều công đoạn. ở dây chuyền sản xuất, mỗi công đoạn thực hiện một thao tác sản xuất. Sản phẩm được chuyển và hình thành dần sau mỗi công đoạn sản xuất, cho đến khi được hoàn thành ở công đoạn cuối cùng. Trong kỹ thuật xử lý lệnh theo kiểu đường ống, việc thực hiện lệnh cũng được thực hiện qua 5 thao tác, mỗi thao tác được thực hiện trong một giai đoạn, giai đoạn nọ tiếp sau giai đoạn kia, cho đến khi thực hiện xong lệnh. Với một đường ống 5-giai đoạn, tại mỗi chu kỳ máy có 5 bộ dữ liệu thuộc 5 giai đoạn xử lý được gửi vào đường ống và 5 thao tác được thực hiện đồng thời, nhờ vậy mà sau mỗi chu kỳ máy lại có một lệnh được hoàn thành và một lệnh mới được nhập. Kỹ thuật đường ống với đường ống 5-giai đoạn cho phép tăng tốc độ thực hiện lệnh lên gấp 5 lần.
Kỹ thuật ILP (xử lý song song mức lệnh)
Kỹ thuật ILP là kỹ thuật thiết kế đơn vị xử lý trung tâm và chương trình dịch nhằm làm tăng tốc độ các thao tác máy (như ghi-đọc bộ nhớ) và thực hiện các phép tính. Trong các kỹ thuật ILP có kỹ thuật superscalar,
trong đó tại một chu kỳ máy, nhiều lệnh được nhập và được thực hiện đồng thời trên nhiều đường ống khác nhau.
Cấu trúc đơn vị xử lý trung tâm Pentium (CPU)
Cache lệnh 8kbyte Giải mã lệnh Tạo địa chỉ toán hạng kênh U Tạo địa chỉ toán hạng kênh V Các thanhghi ALU kênh U ALU kênh V Cache dữ liệu 8kbyte Đơn vị xử lý dấu phảy động Các thanhghi Đơn vị BUS Dự báo rẽ nhánh BTB BUS 32bit địa chỉ 64bit dữ liệu
Nguyễn Trung Đồng – Tel 0983 410 866
Pentium là loại đơn vị xử lý trung tâm được thiết kế theo kỹ thuật
superscalar, trong đó hai lệnh được nhập và giải mã đồng thời. Pentium có
hai đường ống thực hiện lệnh song song U và V. Quá trình thực hiện lệnh được mô tả như sau :
Chu kỳ máy 1 2 3 4 5 6 7 GOA FO EI GOA FO EI GOA FO EI GOA FO EI GOA FO EI GOA FO EI