Đường ống máy tính
Đường ống máy tính được Intel giới thiệu lần đầu tiên trong chip 486. Cách thức hoạt động của đường ống tương tự như dây chuyền lắp ráp công nghiệp. Trong CPU, một loạt các đơn vị mạch với các chức năng riêng biệt tạo thành một đường dẫn xử lý lệnh; một lệnh x86 được chia thành năm hoặc sáu bước, sau đó được các đơn vị này thực hiện tuần tự. Điều này cho phép hoàn thành một lệnh trong một chu kỳ xung nhịp CPU, do đó tăng tốc độ xử lý của CPU. Trong bộ xử lý Pentium cổ điển, mỗi đường dẫn số nguyên bao gồm bốn giai đoạn-tìm nạp trước lệnh, giải mã, thực thi và ghi-ngược lại-trong khi đường dẫn dấu phẩy động-bao gồm tám giai đoạn.
Pipeline là một công nghệ chủ chốt được sử dụng rộng rãi trong các bộ vi xử lý (CPU). Nó mô tả phương pháp thực hiện các lệnh trong CPU; để hiểu về đường ống, trước tiên người ta phải hiểu các hướng dẫn và quá trình thực hiện chúng.
Hướng dẫn máy tính
Lệnh máy tính là một tập hợp dữ liệu nhị phân cụ thể cho CPU biết phải làm gì. Nếu CPU được ví như một nhà máy sản xuất thì một lệnh cũng giống như một đơn đặt hàng của khách hàng; nó kích hoạt một loạt hành động trong "nhà máy" CPU, cuối cùng mang lại kết quả tính toán-thành phẩm. Điều này thực sự hoạt động như thế nào? Đầu tiên, phải có bộ phận nhận lệnh-đơn vị tìm nạp lệnh của CPU; thứ hai, phải có một xưởng để thực hiện các đơn đặt hàng-bộ phận thực thi lệnh của CPU. Trong một nhà máy, việc sản xuất một mặt hàng được chia thành nhiều bước sản xuất; tương tự, một lệnh được chuyển đổi thành một chuỗi các thao tác vi mô-tương ứng trong CPU. Việc hoàn thành các thao tác vi mô-này theo trình tự sẽ cấu thành việc thực thi toàn bộ lệnh.
Thực thi lệnh
Trong các CPU cấp thấp, việc thực thi lệnh diễn ra nối tiếp; nói một cách đơn giản, một lệnh được hoàn thành trước khi lệnh tiếp theo bắt đầu. Điều này giống như nhà máy nói trên trong những ngày đầu thành lập, chỉ gồm một xưởng nhỏ và một chủ sở hữu duy nhất làm việc một mình: khi nhận được đơn đặt hàng, anh ta sẽ hoàn toàn bận rộn với việc thực hiện đơn hàng đầu tiên đó và không thể nhận đơn hàng thứ hai. Do đó, chu trình nhận và hoàn thành đơn đặt hàng-hoặc tìm nạp và thực hiện hướng dẫn-là một quy trình nối tiếp. Sau này, ông chủ phát hiện ra rằng việc nhận đơn đặt hàng không cần nhiều thời gian. Với sự giúp đỡ của một trợ lý, cả hai có thể làm việc độc lập; điều này cho phép ông chủ chấp nhận đơn đặt hàng mới đồng thời hoàn thiện sản phẩm cho đơn hàng trước đó. Về mặt kiến trúc CPU, điều này tương ứng với việc tách đơn vị-tìm nạp lệnh khỏi đơn vị thực thi lệnh-. Do đó, CPU có thể lấy lệnh tiếp theo song song trong khi thực hiện lệnh hiện tại. Điều này thể hiện một bước nhảy vọt về chất trong công nghệ CPU, chuyển các hoạt động từ xử lý nối tiếp sang xử lý song song và thiết lập nguyên mẫu của quy trình hướng dẫn.
Khi CPU đã hoàn thành bước nói trên, thách thức còn lại nằm ở việc tăng cường khả năng xử lý song song. Lấy cảm hứng từ các dây chuyền lắp ráp tại nhà máy, các nhà thiết kế CPU đã chia việc thực thi một lệnh thành nhiều giai đoạn riêng biệt-hoặc "các lệnh-vi mô"-từ đó giảm đáng kể độ phức tạp của lệnh, đơn giản hóa thiết kế logic và tăng tốc độ. Trong các CPU sử dụng công nghệ đường ống, ngay khi một lệnh kết thúc "giai đoạn" đầu tiên của nó, lệnh tiếp theo sẽ ngay lập tức đi vào đường ống để bắt đầu thực thi. Rõ ràng, cách tiếp cận đường ống này yêu cầu nhiều đơn vị thực thi-một tính năng được triển khai trong x86 chip.
