Thành viên:Minhhai 2000/Nháp/1
Chu kỳ đồng hồ Thứ tự lệnh
|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
---|---|---|---|---|---|---|---|
1 | IF | ID | EX | MEM | WB | ||
2 | IF | ID | EX | MEM | WB | ||
3 | IF | ID | EX | MEM | WB | ||
4 | IF | ID | EX | MEM | |||
5 | IF | ID | EX | ||||
Chú thích: IF = Instruction Fetch (đọc lệnh), ID = Instruction Decode (giải mã lệnh), EX = Execute (thực hiện lệnh), MEM = Memory access (truy cập bộ nhớ), WB = Register write back (lưu kết quả thực hiện lệnh vào thanh ghi).
Ở chu kỳ đồng hồ thứ tư (cột màu xanh lá cây), lệnh đầu tiên đang ở giai đoạn MEM và lệnh cuối cùng chưa được đưa vào ống lệnh. |
Trong khoa học máy tính, ống lệnh (tiếng Anh: instruction pipelining) là một kỹ thuật song song ở mức lệnh trên các bộ xử lý đơn nhân. Ống lệnh giúp tất cả các thành phần của bộ xử lý luôn có lệnh để thực hiện, bằng cách chia quá trình thực hiện lệnh thành một chuỗi các giai đoạn nối tiếp nhau, và mỗi giai đoạn lại do các đơn vị khác nhau của bộ xử lý đảm nhiệm. Các giai đoạn của các lệnh được thực hiện song song với nhau.
Ý tưởng và động lực phát triển
[sửa | sửa mã nguồn]Trên máy tính sử dụng kỹ thuật ống lệnh, các lệnh được CPU thực hiện qua nhiều giai đoạn. Ví dụ, một lệnh có thể gồm các giai đoạn tương ứng với các bước của chu trình Von Neumann: Đọc lệnh, lấy toán hạng, thực hiện lệnh, lưu kết quả. Máy tính sử dụng ống lệnh thường có những "thanh ghi ống lệnh" sau mỗi bước. Các thanh ghi này lưu trữ thông tin lệnh và kết quả tính toán để phục vụ cho các cổng logic của bước tiếp theo.