Vì lợi ích của tác giả, chúng ta hãy giả định bằng thời gian. Sử dụng giả định này, con số 12,10 cho thấy rằng một đường ống sáu giai đoạn có thể làm giảm thời gian thực hiện để biết hướng dẫn 9 từ đơn vị thời gian 54 để 14 đơn vị thời gian. Một số ý kiến nằm trong trật tự: Sơ đồ giả định rằng mỗi hướng dẫn đi qua mọi sáu giai đoạn của đường ống.Điều này sẽ không luôn luôn là các trường hợp. Ví dụ, một hướng dẫn tải không cần giai đoạn WO. Tuy nhiên, để đơn giản hóa phần cứng đường ống, thời gian thiết lập giả định rằng mỗi hướng dẫn yêu cầu tất cả các giai đoạn sáu.Ngoài ra, sơ đồ giả định rằng tất cả các giai đoạn có thể được thực hiện song song. Đặc biệt, nó giả định rằng không có không có xung đột bộ nhớ.Ví dụ, các giai đoạn FI, FO, và WO liên quan đến một truy cập vào bộ nhớ.Sơ đồ ngụ ý rằng tất cả các đường dẫn truy cập có thể xảy ra cùng một lúc.Hầu hết bộ nhớ hệ thống sẽ không cho phép đó.Tuy nhiên, giá trị mong muốn có thể trong bộ nhớ cache, hoặc giai đoạn FO hoặc WO có thể được null. Vì vậy, nhiều thời gian, bộ nhớ cuộc xung đột sẽ không chậm lại các đường ống dẫn. Một số các yếu tố khác nhằm mục đích giới hạn nâng cao hiệu suất. Nếu giai đoạn sáu không bình đẳng thời gian, sẽ có một số chờ đợi tham gia ở các đường ống dẫn giai đoạn, như được thảo luận trước khi cho các đường ống dẫn hai giai đoạn.Một khó khăn là các chỉ dẫn chi nhánh có điều kiện, có thể làm mất hiệu lực một số hướng dẫn tải. Một sự kiện không thể đoán trước tương tự như là ngắt. 12.11 hình minh hoạ những ảnh hưởng của các chi nhánh có điều kiện, bằng cách sử dụng chương trình tương tự như hình 12,10. Giả sử rằng hướng dẫn 3 là một chi nhánh có điều kiện để giảng dạy 15. cho đến khi các hướng dẫn được thực thi, có là không có cách nào của biết hướng dẫn mà sẽ đến tiếp theo.Các đường ống dẫn, trong ví dụ này, chỉ đơn giản là tải các hướng dẫn tiếp theo trong chuỗi (hướng dẫn 4) và tiền. Trong con số 12,10, các chi nhánh không được thực hiện, và chúng tôi nhận được lợi ích đầy đủ hiệu suất của việc tăng cường. Trong con số 12.11, các chi nhánh được lấy.Điều này không xác định cho đến cuối thời gian đơn vị 7. tại thời điểm này, các đường ống dẫn phải được xóa các hướng dẫn mà không phải là hữu ích.Trong thời gian đơn vị 8, hướng dẫn 15 vào các đường ống dẫn.Không có hướng dẫn hoàn thành trong thời gian 9 đơn vị thông qua 12; đây là hình phạt hiệu suất phát sinh bởi vì chúng tôi không thể dự đoán các chi nhánh.Con số 12.12 biểu thị logic cần thiết cho pipelining để tài khoản cho các chi nhánh và ngắt. Các vấn đề phát sinh mà đã không xuất hiện trong chúng tôi tổ chức hai tầng đơn giản. Giai đoạn CO có thể phụ thuộc vào nội dung của một đăng ký có thể được thay đổi bằng một chỉ dẫn trước đó là vẫn còn trong các đường ống.Những xung đột khác đăng ký và bộ nhớ có thể xảy ra.Hệ thống phải có logic để tài khoản cho các loại xung đột. Để làm rõ các đường ống dẫn hoạt động, nó có thể là hữu ích để nhìn vào một mô tả thay thế. Con số 12,10 và 12.11 cho thấy sự tiến triển của thời gian theo chiều ngang trên những con số, với mỗi hàng Hiển thị sự tiến bộ của một hướng dẫn cá nhân.Con số 12,13 Hiển thị cùng một chuỗi các sự kiện, với thời gian tiến triển theo chiều dọc xuống các con số, và mỗi hàng Hiển thị trạng thái của các đường ống dẫn tại một thời điểm nhất định trong thời gian. Trong hình 12.13a (mà tương ứng với hình 12,10), các đường ống dẫn là đầy đủ lúc 6, với 6 hướng dẫn khác nhau trong các giai đoạn thực hiện, và vẫn còn đầy đủ thông qua thời gian 9; chúng tôi giả định rằng hướng dẫn I9 là hướng dẫn cuối cùng được thực hiện.Trong con số 12.13b, (mà tương ứng với con số 12.11), các đường ống dẫn là đầy đủ vào các thời điểm 6 và 7. lúc 7, giảng dạy 3 trong giai đoạn thực hiện và thực hiện một chi nhánh để hướng dẫn 15. tại thời điểm này, hướng dẫn I4 thông qua I7 được xóa từ các đường ống, do đó, rằng tại thời điểm 8, chỉ có hai hướng dẫn có trong các đường ống dẫn, I3 và I15.
đang được dịch, vui lòng đợi..
