การวางท่อคอมพิวเตอร์
การวางท่อคอมพิวเตอร์ถูกนำมาใช้ครั้งแรกโดย Intel ในชิป 486 วิธีการทำงานของไปป์ไลน์นั้นคล้ายคลึงกับสายการประกอบทางอุตสาหกรรม ภายใน CPU ชุดของหน่วยวงจรที่มีฟังก์ชันที่แตกต่างกันจะสร้างไปป์ไลน์การประมวลผลคำสั่ง คำสั่ง x86 แบ่งออกเป็นห้าหรือหกขั้นตอน ซึ่งจะดำเนินการตามลำดับโดยหน่วยเหล่านี้ ซึ่งช่วยให้สามารถดำเนินการคำสั่งให้เสร็จสิ้นได้ภายในรอบสัญญาณนาฬิกาของ CPU เดียว ซึ่งจะเป็นการเพิ่มความเร็วในการประมวลผลของ CPU ในโปรเซสเซอร์ Pentium แบบคลาสสิก แต่ละไปป์ไลน์จำนวนเต็มแต่ละขั้นตอนประกอบด้วยสี่ขั้นตอน-คำสั่งการดึงข้อมูลล่วงหน้า ถอดรหัส ดำเนินการ และเขียน-ย้อนกลับ- ในขณะที่ไปป์ไลน์จุดลอยตัว-ประกอบด้วยแปดขั้นตอน
Pipelining เป็นเทคโนโลยีหลักที่ใช้กันอย่างแพร่หลายในไมโครโปรเซสเซอร์ (CPU) อธิบายวิธีการดำเนินการคำสั่งภายใน CPU เพื่อทำความเข้าใจการวางท่อ เราต้องเข้าใจคำแนะนำและกระบวนการดำเนินการก่อน
คำแนะนำคอมพิวเตอร์
คำสั่งคอมพิวเตอร์คือชุดข้อมูลไบนารี่เฉพาะที่บอก CPU ว่าต้องทำอย่างไร หาก CPU ถูกเปรียบเสมือนโรงงานผลิต คำสั่งจะคล้ายกับคำสั่งซื้อของลูกค้า โดยจะทริกเกอร์ชุดของการดำเนินการภายใน "โรงงาน" ของ CPU ซึ่งท้ายที่สุดแล้วจะให้ผลลัพธ์ทางการคำนวณ-ผลิตภัณฑ์สำเร็จรูป สิ่งนี้ใช้งานได้จริงอย่างไร? ขั้นแรก จะต้องมีแผนกที่จะรับคำสั่ง-หน่วยดึงคำสั่งของ CPU ประการที่สอง จะต้องมีเวิร์กช็อปเพื่อปฏิบัติตามคำสั่ง-หน่วยการดำเนินการคำสั่งของ CPU ในโรงงาน การผลิตสินค้าจะแบ่งออกเป็นขั้นตอนการผลิตหลายขั้นตอน ในทำนองเดียวกัน คำสั่งจะถูกแปลงเป็นชุดของการดำเนินการระดับไมโคร-ที่สอดคล้องกันภายใน CPU การดำเนินการย่อย-เหล่านี้ให้เสร็จสิ้นตามลำดับจะถือเป็นการดำเนินการตามคำสั่งทั้งหมด
การดำเนินการตามคำสั่ง
ใน CPU ระดับล่าง- การดำเนินการคำสั่งจะเป็นแบบอนุกรม พูดง่ายๆ ก็คือ คำสั่งหนึ่งคำสั่งจะเสร็จสิ้นก่อนที่จะเริ่มคำสั่งถัดไป เปรียบเสมือนโรงงานดังที่กล่าวมาในสมัยแรกๆ มีเพียงโรงงานเล็กๆ และมีเจ้าของคนเดียวทำงานคนเดียว เมื่อได้รับคำสั่งแล้ว เขาก็จะเต็มอิ่มกับการดำเนินการตามคำสั่งแรกนั้นจนไม่สามารถรับคำสั่งที่สองได้ วงจรการรับและดำเนินการตามคำสั่งซื้อให้เสร็จสิ้น-หรือการดึงข้อมูลและดำเนินการตามคำแนะนำ-จึงเป็นกระบวนการที่ต่อเนื่องกัน ต่อมาเจ้านายพบว่าการรับออเดอร์ใช้เวลาไม่นาน ด้วยความช่วยเหลือจากผู้ช่วย ทั้งสองสามารถทำงานได้อย่างอิสระ สิ่งนี้ทำให้เจ้านายสามารถรับคำสั่งซื้อใหม่ในขณะเดียวกันก็จัดการผลิตภัณฑ์สำหรับคำสั่งซื้อก่อนหน้าให้เสร็จไปพร้อมๆ กัน ในแง่ของสถาปัตยกรรม CPU สิ่งนี้สอดคล้องกับการแยกหน่วยคำสั่ง-การดึงข้อมูลออกจากหน่วยการดำเนินการคำสั่ง- ดังนั้น CPU จึงสามารถดึงคำสั่งถัดไปแบบขนานในขณะที่ดำเนินการคำสั่งปัจจุบัน สิ่งนี้แสดงถึงการก้าวกระโดดเชิงคุณภาพในเทคโนโลยี CPU โดยเปลี่ยนการดำเนินการจากการประมวลผลแบบอนุกรมไปเป็นการประมวลผลแบบขนาน และสร้างต้นแบบของไปป์ไลน์คำสั่ง
เมื่อ CPU เสร็จสิ้นขั้นตอนข้างต้นแล้ว ความท้าทายที่เหลืออยู่ก็คือการเพิ่มขีดความสามารถในการประมวลผลแบบขนาน ด้วยแรงบันดาลใจจากสายการประกอบของโรงงาน ผู้ออกแบบ CPU ได้แบ่งการดำเนินการของคำสั่งเดียวออกเป็นหลายขั้นตอนที่แตกต่างกัน-หรือ "คำสั่งย่อย"- ซึ่งช่วยลดความซับซ้อนของคำสั่งได้อย่างมาก ทำให้การออกแบบลอจิกง่ายขึ้น และเพิ่มความเร็ว ใน CPU ที่ใช้เทคโนโลยีไปป์ไลน์ ทันทีที่คำสั่งหนึ่งเสร็จสิ้น "ระยะ" แรก คำสั่งถัดไปจะเข้าสู่ไปป์ไลน์ทันทีเพื่อเริ่มดำเนินการ เห็นได้ชัดว่าแนวทางการวางท่อนี้ต้องใช้หน่วยดำเนินการหลายหน่วย-ซึ่งมีการใช้งานคุณลักษณะในชิป x86
