กลับไปหน้าบทความ

อ่าน 8 นาที

x87

x87 เป็น ชุด คำสั่ง ย่อย ที่เกี่ยวข้องกับ เลขทศนิยม ของ สถาปัตยกรรม x86 โดยมีต้นกำเนิดมาจากการขยาย ชุดคำสั่ง 8086 ในรูปแบบของ ตัวประมวล ผลร่วมเลขทศนิยม ( FPU )...

x87

x87เป็น ชุด คำสั่ง ย่อย ที่เกี่ยวข้องกับเลขทศนิยม ของ สถาปัตยกรรม x86 โดยมีต้นกำเนิดมาจากการขยาย ชุดคำสั่ง 8086ในรูปแบบของตัวประมวล ผลร่วมเลขทศนิยม ( FPU ) ที่ทำงานร่วมกับซีพียู x86 ที่เกี่ยวข้อง ไมโครชิปเหล่านี้มีชื่อลงท้ายด้วย "87" ซึ่งเรียกอีกอย่างว่า NPX (numeric processor extension) เช่นเดียวกับส่วนขยายอื่นๆ ของชุดคำสั่งพื้นฐาน คำสั่ง x87 ไม่จำเป็นต้องใช้ในการสร้างโปรแกรมที่ใช้งานได้ แต่ให้การใช้งานฮาร์ดแวร์และไมโครโค้ดสำหรับงานคำนวณตัวเลขทั่วไป ทำให้สามารถทำงานเหล่านี้ได้เร็วกว่า รูทีน โค้ดเครื่อง ที่เกี่ยวข้องมาก ชุดคำสั่ง x87 ประกอบด้วยคำสั่งสำหรับการดำเนินการเลขทศนิยมพื้นฐาน เช่น การบวก การลบ และการเปรียบเทียบ แต่ยังรวมถึงการดำเนินการตัวเลขที่ซับซ้อนกว่า เช่น การคำนวณ ฟังก์ชัน แทนเจนต์และฟังก์ชันผกผัน เป็นต้น

โปรเซสเซอร์ x86 ส่วนใหญ่ตั้งแต่Intel 80486 เป็นต้นมา มีการใช้งานคำสั่ง x87 เหล่านี้ใน CPU หลักแล้ว แต่บางครั้งคำนี้ก็ยังคงใช้เพื่ออ้างถึงส่วนนั้นของชุดคำสั่งอยู่ ก่อนที่คำสั่ง x87 จะเป็นมาตรฐานในพีซีคอมไพเลอร์ หรือโปรแกรมเมอร์ต้องใช้การเรียกใช้ไลบรารีที่ค่อนข้างช้าเพื่อทำการคำนวณเลขทศนิยม ซึ่งเป็นวิธีการที่ยังคงใช้กันทั่วไปใน ระบบฝังตัว (ราคาประหยัด)

คำอธิบาย

รีจิสเตอร์ x87 สร้างโครงสร้าง สแต็กแบบไม่เข้มงวดที่มีความลึกแปดระดับตั้งแต่ ST(0) ถึง ST(7) โดยมีรีจิสเตอร์ที่สามารถเข้าถึงได้โดยตรงด้วยตัวดำเนินการใดก็ได้ โดยใช้ค่าออฟเซ็ตที่สัมพันธ์กับด้านบนสุด รวมทั้งสามารถพุชและป๊อปได้ (รูปแบบนี้อาจเปรียบเทียบได้กับวิธีที่เฟรมสแต็กสามารถทั้งพุช/ป๊อปและจัดทำดัชนีได้)

มีคำสั่งให้ผลัก คำนวณ และดึงค่าออกจากสแต็กด้านบนสุดการดำเนินการแบบเอกภาค (FSQRT, FPTAN เป็นต้น) จะอ้างอิงถึง ST(0) บนสุดโดยปริยาย ในขณะที่การดำเนินการแบบทวิภาค (FADD, FMUL, FCOM เป็นต้น) จะอ้างอิงถึง ST(0) และ ST(1) โดยปริยาย โมเดลสแต็กแบบไม่เข้มงวดยังอนุญาตให้การดำเนินการแบบทวิภาคใช้ ST(0) ร่วมกับตัวถูกดำเนินการในหน่วยความจำ โดยตรง หรือกับ รีจิสเตอร์สแต็กที่ระบุไว้ อย่างชัดเจน ST( x ) ในบทบาทที่คล้ายกับตัวสะสม แบบดั้งเดิม (ปลายทางและตัวถูกดำเนินการด้านซ้ายรวมกัน) นอกจากนี้ยังสามารถย้อนกลับได้ในแต่ละคำสั่ง โดยใช้ ST(0) เป็นตัวถูกดำเนินการที่ไม่เปลี่ยนแปลงและ ST( x ) เป็นปลายทางยิ่งไปกว่านั้น เนื้อหาใน ST(0) สามารถแลกเปลี่ยนกับรีจิสเตอร์สแต็กอื่นได้โดยใช้คำสั่งที่เรียกว่า FXCH ST( x )

คุณสมบัติเหล่านี้ทำให้สแต็ก x87 สามารถใช้งานได้เป็นรีจิสเตอร์ที่เข้าถึงได้อย่างอิสระเจ็ดตัวบวกกับตัวสะสมเฉพาะ (หรือเป็นตัวสะสมอิสระเจ็ดตัว) โดยเฉพาะอย่างยิ่งใน โปรเซสเซอร์ x86 แบบ ซูเปอร์สเกลาร์ (เช่นPentiumในปี 1993 และรุ่นต่อมา) ซึ่งคำสั่งแลกเปลี่ยนเหล่านี้ (รหัส D9C8..D9CF h ) ได้รับการปรับให้เหมาะสมจนไม่มีค่าปรับนาฬิกาโดยใช้เส้นทางจำนวนเต็มเส้นใดเส้นหนึ่งสำหรับ FXCH ST( x ) ขนานกับคำสั่ง FPU แม้ว่าจะเป็นธรรมชาติและสะดวกสำหรับ โปรแกรมเมอร์ ภาษาแอสเซมบ ลี แต่ผู้เขียนคอมไพเลอร์บางคนพบว่าการสร้างตัวสร้างโค้ด อัตโนมัติ ที่จัดกำหนดการโค้ด x87 ได้อย่างมีประสิทธิภาพนั้นซับซ้อน อินเทอร์เฟซแบบใช้สแต็กดังกล่าวอาจช่วยลดความจำเป็นในการบันทึกตัวแปรชั่วคราวในการเรียกฟังก์ชันเมื่อเทียบกับอินเทอร์เฟซแบบใช้รีจิสเตอร์[ 1 ] (แม้ว่าในอดีต ปัญหาการออกแบบในการใช้งาน 8087 จะจำกัดศักยภาพนั้น[ 2 ] [ 3 ] )

x87 ให้การคำนวณเลขทศลอยแบบไบนารีความแม่นยำเดี่ยว ความแม่นยำคู่ และความแม่นยำคู่ขยาย 80 บิต ตาม มาตรฐาน IEEE 754-1985โดยค่าเริ่มต้น โปรเซสเซอร์ x87 ทั้งหมดจะใช้ความแม่นยำคู่ขยาย 80 บิตภายใน (เพื่อให้สามารถรักษาความแม่นยำได้ตลอดการคำนวณจำนวนมาก ดูหลักการออกแบบของ IEEE 754 ) ดังนั้นลำดับการดำเนินการทางคณิตศาสตร์ที่กำหนดอาจมีพฤติกรรมที่แตกต่างกันเล็กน้อยเมื่อเทียบกับ FPU IEEE 754 ความแม่นยำเดี่ยวหรือความแม่นยำคู่ที่เข้มงวด[ 4 ]เนื่องจากบางครั้งอาจเป็นปัญหาสำหรับการคำนวณกึ่งตัวเลขบางอย่างที่เขียนขึ้นเพื่อสมมติว่ามีความแม่นยำคู่สำหรับการทำงานที่ถูกต้อง เพื่อหลีกเลี่ยงปัญหาดังกล่าว x87 สามารถกำหนดค่าได้โดยใช้รีจิสเตอร์การกำหนดค่า/สถานะพิเศษเพื่อปัดเศษเป็นความแม่นยำเดี่ยวหรือความแม่นยำคู่โดยอัตโนมัติหลังจากการดำเนินการทางคณิตศาสตร์พื้นฐาน เช่น การบวก การลบ การคูณ และการหาร รวมถึงรากที่สองลอการิทึม การยกกำลัง ตรีโกณมิติ ฯลฯ จะให้ความแม่นยำแบบขยายสองเท่า (80 บิต) เสมอนับตั้งแต่มีการนำSSE2 มาใช้ คำสั่ง x87 จึงไม่สำคัญเท่าที่เคยเป็นมา แต่ยังคงมีความสำคัญในฐานะหน่วยสเกลาร์ความแม่นยำสูงสำหรับการคำนวณเชิงตัวเลขที่ไวต่อข้อผิดพลาดจากการปัดเศษและต้องการความแม่นยำของแมนทิสซา64 บิต และช่วงที่ขยายได้ซึ่งมีอยู่ในรูปแบบ 80 บิต

ผลงาน

จำนวนรอบสัญญาณนาฬิกาสำหรับตัวอย่างคำสั่ง FPU x87 ทั่วไป (แสดงเฉพาะเวอร์ชันรีจิสเตอร์-รีจิสเตอร์ที่นี่) [ 5 ]

สัญลักษณ์A ... B (จากค่าต่ำสุดถึงค่าสูงสุด) ครอบคลุมความแปรผันของเวลาที่ขึ้นอยู่กับสถานะของไปป์ไลน์ชั่วคราวและความแม่นยำทางคณิตศาสตร์ที่เลือก (32, 64 หรือ 80 บิต) นอกจากนี้ยังรวมถึงความแปรผันเนื่องจากกรณีตัวเลข (เช่น จำนวนบิตที่ตั้งค่า ศูนย์ เป็นต้น) สัญลักษณ์ L → H แสดงค่าที่สอดคล้องกับความถี่สัญญาณนาฬิกาสูงสุดต่ำสุด (L) และสูงสุด (H) ที่มีอยู่

การใช้งาน x87 FADD FMUL เอฟดีวี เอฟเอ็กซ์เอช เอฟคอม FSQRT เอฟพีแทน เอฟปาตัน ความเร็วสูงสุดของนาฬิกา(MHz) ปริมาณการใช้เชื้อเพลิงสูงสุด(ล้าน/ วินาที ) FMUL § rel. 5 MHz 8087
808770…10090…145193…20310…1540…50180…18630…540250…800 5 → 100.034…0.055 → 0.100…0.111 1 → เร็วขึ้น 2 เท่า
80287 (ต้นฉบับ) 6 → 120.041…0.066 → 0.083…0.133 1.2 → 2.4×
80387 (และรุ่น 287 ในภายหลัง)23…3429…5788…911824122…129191…497314…487 16 → 330.280…0.552 → 0.580…1.1 ~10 → 20×
80486 (หรือ 80487)8…2016734483…87200…273218…303 16 → 50 1.0 → 3.1 ~18 → 56×
Cyrix 6x86 , Cyrix MII4…74…624…342459…60117…12997…161 66 → 300 11…16 → 50…75 ~320 → 1400×
AMD K6 (รวมถึง K6 II/III)2221…412321…41?? 166 → 550 83 → 275 ~1500 → 5000×
เพนเทียม / เพนเทียม MMX1…31…3391 (0*) 1…47017…17319…134 60 → 300 20…60 → 100…300 ~1100 → 5400×
เพนเทียมโปร1…32…516…56128…68?? 150 → 200 30…75 → 40…100 ~1400 → 1800×
เพนเทียม II / III1…32…517…38127…50?? 233 → 1400 47…116 → 280…700 ~2100 → 13000×
แอธลอน (K7)1…41…413…241…216…35?? 500 → 2330 125…500 → 580…2330 ~9000 → 42000×
แอธลอน 64 (K8)1000 → 3200 250…1000 → 800…3200~18000 → 58000×
เพนเทียม 41…52…720…43หลายรอบ120…43??1300 → 3800 186…650 → 543…1900~11000 → 34000×
* การลดความล่าช้าของสัญญาณนาฬิกาให้เป็นศูนย์อย่างมีประสิทธิภาพนั้น มักทำได้โดยใช้การประมวลผลแบบซูเปอร์สเกลาร์
§โปรเซสเซอร์ 8087 ความเร็ว 5 เมกะเฮิร์ตซ์ เป็นโปรเซสเซอร์ x87 รุ่นแรก เมื่อเทียบกับรูทีนการคำนวณเลขทศนิยมแบบทั่วไปที่เขียนด้วยซอฟต์แวร์บนโปรเซสเซอร์ 8086 (หากไม่มี 8087) ปัจจัยต่างๆ จะยิ่งมากขึ้นไปอีก อาจมากถึง 10 เท่า (เช่น การบวกเลขทศนิยมที่ถูกต้องในภาษาแอสเซมบลีอาจใช้เวลามากกว่า 1000 รอบการทำงาน)

ผู้ผลิต

บริษัทต่างๆ ที่ออกแบบหรือผลิตหน่วย ประมวลผลทศ ลอย( floating-point units) ที่ใช้งานร่วมกับ Intel 8087 หรือรุ่นที่ใหม่กว่า ได้แก่AMD ( 287 , 387 , 486DX , 5x86 , K5 , K6 , K7 , K8 ), Chips and Technologies ( หน่วยประมวลผลร่วม Super MATH ), Cyrix ( FasMath , Cx87SLC , Cx87DLC , 6x86 , Cyrix MII ), Fujitsu ( Pentium Mobileรุ่นแรกๆ), Harris Semiconductor (ผลิตโปรเซสเซอร์80387และ486DX ), IBM ( การออกแบบ387และ486 ต่างๆ ) , IDT ( WinChip , C3 , C7 , Nano , Nano, Nano, Nano, Nano, Nano, Nano, Nano, Nano, Nano , Nano , IIT ( 2C87 , 3C87 , Nano ... GX1 , Geode GXmเป็นต้น), NexGen ( Nx587 ), Rise Technology ( mP6 ), ST Microelectronics (ผลิต486DX , 5x86เป็นต้น), Texas Instruments (ผลิต โปรเซสเซอร์ 486DXเป็นต้น), Transmeta ( TM5600และTM5800 ), ULSI ( โคโปรเซสเซอร์ Math·Co ), VIA ( C3 , C7และNanoเป็นต้น), Weitek ( 1067 , 1167 , 3167และ4167 ) และ Xtend ( 83S87SX-25และโคโปรเซสเซอร์อื่นๆ)

รุ่นต่อรุ่นทางสถาปัตยกรรม

8087

8087 เป็น โคโปรเซสเซอร์ทางคณิตศาสตร์ตัวแรกสำหรับโปรเซสเซอร์ 16 บิตที่ออกแบบโดยIntelเปิดตัวในปี 1980 เพื่อจับคู่กับไมโคร โปรเซสเซอร์ Intel 8088หรือ8086 (โปรเซสเซอร์จุดลอยตัว 8231 และ 8232รุ่นก่อนหน้าของ Intel ซึ่งวางจำหน่ายเพื่อใช้กับ CPU i8080 นั้น แท้จริงแล้วเป็นเวอร์ชันที่ได้รับอนุญาตของ FPU Am9511 และ Am9512 ของ AMD จากปี 1977 และ 1979 [ 6 ] )

80C187

โปรเซสเซอร์ Intel 80C187 รุ่น 16 MHz

แม้ว่าเอกสารข้อมูลดั้งเดิมปี 1982 สำหรับ80188 และ 80186 (ที่ใช้NMOS ) ดูเหมือนจะกล่าวถึงตัวประมวลผลร่วมทางคณิตศาสตร์เฉพาะ [ 7 ] แต่ ชิปทั้งสองตัวนั้นจับคู่กับ 8087 จริงๆ

อย่างไรก็ตาม ในปี พ.ศ. 2530 เพื่อให้สามารถทำงานร่วมกับ ซีพียู Intel 80C186ที่ใช้CMOS รุ่นใหม่ Intel จึงได้แนะนำ โคโปรเซสเซอร์คณิตศาสตร์ 80C187 [ 8 ]อินเทอร์เฟซของ 80C187 กับโปรเซสเซอร์หลักนั้นเหมือนกับของ 8087 แต่แกนหลักของมันคือ 80387SX และเป็นไป ตามมาตรฐาน IEEE 754 อย่างสมบูรณ์ และสามารถดำเนินการคำสั่งพิเศษทั้งหมดของ 80387 ได้[ 9 ]

80287

80287 ( i287 )ซึ่งวางจำหน่ายในปี 1982 เป็นโคโปรเซสเซอร์ ทางคณิตศาสตร์ สำหรับไมโครโปรเซสเซอร์ Intel ซีรีส์80286รุ่นของ Intel มีหลายแบบโดยระบุขีดจำกัดความถี่สูงสุดตั้งแต่ 6 ถึง 12 MHz รุ่น NMOS มีให้เลือกที่ 6, 8 และ 10 MHz [ 10 ]รุ่น Intel 80287-10 Numerics Coprocessor ที่ความเร็ว 10 MHz มีราคา250 ดอลลาร์สหรัฐต่อ 100 เครื่อง[ 11 ]รุ่นบรรจุกล่องของ 80287, 80287-8 และ 80287-10 มีราคา 212, 326 และ 374 ดอลลาร์สหรัฐ ตามลำดับ นอกจากนี้ยังมีรุ่นบรรจุกล่องของ 80C287A ราคา 457 ดอลลาร์สหรัฐ[ 12 ]

หน่วยประมวลผล 287 รุ่นอื่นๆ ที่มีประสิทธิภาพใกล้เคียงกับ 387 ได้แก่ Intel 80C287 ซึ่งสร้างขึ้นโดยใช้CHMOS III และ AMD 80EC287 ที่ผลิตด้วย กระบวนการ CMOS ของ AMD โดยใช้เกตแบบคงที่ทั้งหมดเท่านั้น

ต่อมาได้มีการพัฒนา i80287XL ที่ใช้สถาปัตยกรรมไมโคร 387SX พร้อมพินเอาต์ 287 [ 13 ] i80287XLT ซึ่งเป็นรุ่นพิเศษสำหรับแล็ปท็อป รวมถึงรุ่นอื่นๆ อีกด้วย โดยมีตัวคูณ 3/2 ภายใน ทำให้เมนบอร์ดที่รันโคโปรเซสเซอร์ที่ความเร็ว 2/3 ของ CPU สามารถรัน FPU ที่ความเร็วเดียวกับ CPU ได้ ทั้ง 80287XL และ 80287XLT ให้ประสิทธิภาพที่ดีขึ้น 50% ใช้พลังงานน้อยลง 83% และมีคำสั่งเพิ่มเติม[ 14 ]

ไมโครโปรเซสเซอร์ 80287 ทำงานร่วมกับ ไมโครโปรเซสเซอร์ 80386และในตอนแรกเป็นโคโปรเซสเซอร์เพียงตัวเดียวที่มีให้ใช้งานสำหรับ 80386 จนกระทั่งมีการเปิดตัว80387ในปี 1987 80387 ได้รับความนิยมมากกว่าเนื่องจากมีประสิทธิภาพสูงกว่าและมีชุดคำสั่งที่มีความสามารถมากกว่า

80387

ภาพชิป CPU Intel 80387

80387 ( 387หรือi387 ) เป็นโคโปรเซสเซอร์ ของ Intel ตัวแรกที่สอดคล้องกับ มาตรฐาน IEEE 754-1985 อย่างสมบูรณ์ เปิดตัวในปี 1987 [ 15 ]สองปีหลังจากชิป 386 i387 มีความเร็วที่ได้รับการปรับปรุงอย่างมากเมื่อเทียบกับโคโปรเซสเซอร์ 8087/80287 รุ่นก่อนหน้าของ Intel และมีคุณลักษณะที่ดีขึ้นของฟังก์ชันตรีโกณมิติ วางจำหน่ายในราคา 500 ดอลลาร์สหรัฐต่อ 100 ชิ้น[ 16 ]ไม่นานหลังจากนั้น ก็ได้วางจำหน่ายผ่าน Intel's Personal Computer Enhancement Operation ในราคาขายปลีก 795 ดอลลาร์สหรัฐ[ 17 ]รุ่น 25 MHz วางจำหน่ายในช่องทางค้าปลีกในราคา 1395 ดอลลาร์สหรัฐ[ 18 ]โคโปรเซสเซอร์คณิตศาสตร์ Intel M387 ตรงตามมาตรฐาน MIL-STD-883 Rev. C อุปกรณ์นี้ได้รับการทดสอบซึ่งรวมถึงการเปลี่ยนแปลงอุณหภูมิระหว่าง -55 ถึง 125 °C การปิดผนึกแบบสุญญากาศ และการเผาไหม้ที่ยาวนาน รุ่นทางทหารนี้ทำงานที่ 16 MHz รุ่นทางทหารนี้มีจำหน่ายในรูปแบบ PGA 68 ขาและแบบแพ็คแบนสี่ขา รุ่นทางทหารนี้มีจำหน่ายในราคา 1155 ดอลลาร์สหรัฐ ในปริมาณ 100 หน่วยสำหรับรุ่น PGA [ 19 ] รุ่น 33 MHz ของ 387DX มีจำหน่ายและมีประสิทธิภาพ 3.4 เมกะส โตนต่อวินาที[ 20 ]รุ่นบรรจุกล่องต่อไปนี้ของตัวประมวลผลร่วมทางคณิตศาสตร์ 387DX 16, 20, 25 และ 33 MHz มีจำหน่ายในราคา 570, 647, 814 และ 994 ดอลลาร์สหรัฐ ตามลำดับ[ 21 ]คำสั่ง FPTAN และ FPATAN ของ 8087 และ 80287 ถูกจำกัดไว้ที่อาร์กิวเมนต์ในช่วง ±π/4 (±45°) และ 8087 และ 80287 ไม่มี คำสั่ง โดยตรงสำหรับฟังก์ชัน SIN และ COS [ 22 ]

โดยปกติแล้ว หากไม่มีตัวประมวลผลร่วม (coprocessor) โปรเซสเซอร์ 386 จะทำการคำนวณเลขทศนิยมผ่านรูทีนซอฟต์แวร์ (ซึ่งค่อนข้างช้า) ที่ถูกใช้งานในขณะรันไทม์ผ่านตัวจัดการข้อยกเว้น ซอฟต์แวร์ แต่เมื่อมีการใช้งานตัวประมวลผลร่วมทางคณิตศาสตร์ร่วมกับโปรเซสเซอร์ 386 ตัวประมวลผลร่วมจะทำการคำนวณเลขทศนิยมในฮาร์ดแวร์ ทำให้ได้ผลลัพธ์เร็วกว่าการเรียกใช้ไลบรารีซอฟต์แวร์ (ที่จำลองการทำงาน) มาก

i387 เข้ากันได้กับชิป i386 มาตรฐานเท่านั้น ซึ่งมีบัสประมวลผล 32 บิต i386SX รุ่นลดต้นทุนในภายหลัง ซึ่งมีบัสข้อมูล 16 บิตที่แคบกว่า ไม่สามารถเชื่อมต่อกับบัส 32 บิตของ i387 ได้ i386SX ต้องใช้โคโปรเซสเซอร์เฉพาะของตัวเอง คือ80387SXซึ่งเข้ากันได้กับบัสข้อมูล 16 บิตที่แคบกว่าของ SX โคโปรเซสเซอร์ 387SX ยังมีเวอร์ชันพลังงานต่ำอีกด้วย[ 20 ]

นอกจากนี้ เพื่อจับคู่กับi386SLที่ใช้ในแล็ปท็อป Intel ได้ออกi387SL (N80387SL) [ 23 ]วางจำหน่ายในชื่อ "Intel387 SL Mobile Math CoProcessor" ซึ่งมีคุณสมบัติการจัดการพลังงานที่ช่วยให้สามารถทำงานได้โดยไม่ลดอายุการใช้งานแบตเตอรี่อย่างมีนัยสำคัญ มีคุณสมบัติการประหยัดพลังงานแบตเตอรี่สองอย่าง อย่างแรกคือการหยุดนาฬิกาของโคโปรเซสเซอร์เมื่อ CPU เข้าสู่โหมด "หยุดนาฬิกา" โดย 387SL จะใช้กระแสไฟประมาณ 25 ไมโครแอมแปร์เมื่อนาฬิกาหยุดทำงาน อย่างที่สองจะทำงานโดยอัตโนมัติเมื่อ CPU กำลังทำงาน โดยจะทำให้ 387SL เข้าสู่ "โหมดไม่ได้ใช้งาน" เมื่อไม่ได้ประมวลผลคำสั่งใดๆ เมื่อทำงานอยู่ 387SL จะใช้พลังงานแบตเตอรี่น้อยกว่า 387SX ประมาณ 30 เปอร์เซ็นต์ (ประมาณ 100 mA) ในโหมดไม่ได้ใช้งาน จะใช้กระแสไฟเพียง 4 mA ซึ่งลดการใช้พลังงานลง 96 เปอร์เซ็นต์เมื่อเทียบกับโหมดทำงาน ทำงานในช่วงความถี่ 16 ถึง 25 MHz และไม่จำเป็นต้องใช้ BIOS หรือการกำหนดค่าฮาร์ดแวร์ใหม่[ 24 ]ในตอนแรกมีจำหน่ายในราคา 189 ดอลลาร์สหรัฐ[ 25 ]

80487

i487SX

i487SX (P23N) เปิดตัวในปี 1991 โดยวางจำหน่ายในฐานะหน่วยประมวลผลร่วม สำหรับการคำนวณจุดลอยตัว สำหรับเครื่อง Intel i486SX จริงๆ แล้วมันประกอบด้วยการใช้งาน i486DX อย่างเต็มรูปแบบ เมื่อติดตั้งลงในระบบ i486SX แล้ว i487 จะปิดใช้งาน CPU หลักและเข้าควบคุมการทำงานของ CPU ทั้งหมด คู่มือของ i487 ระบุว่าหน่วยนี้จะไม่ทำงานหากไม่มี i486SX อยู่ แต่การทดสอบอิสระ (และการยอมรับในภายหลังของ Intel) ได้เปิดเผยเป็นอย่างอื่น[ 26 ] [ 27 ] [ 28 ]

i487 ใช้ซ็อกเก็ตพิเศษ 169 พินที่มีพินที่ไม่ได้เชื่อมต่อ (การกำหนดตำแหน่งทางกายภาพ) เพื่อป้องกันการเสียบเข้ากับซ็อกเก็ต 486 168 พินทั่วไป แหล่งข้อมูลอย่างน้อยสองแหล่งอ้างว่าซ็อกเก็ตนี้เหมือนกับซ็อกเก็ต 1ซึ่งเป็นซ็อกเก็ตอัปเกรดสำหรับi486 OverDriveซึ่งเป็นโปรเซสเซอร์ทดแทนในลักษณะเดียวกัน[ 29 ] [ 28 ]

ชุดคำสั่ง FPU ของ i486DX/i487SX ไม่แตกต่างจาก 387 แต่การรวมเข้าด้วยกันทำให้ใช้ประโยชน์จากบัสได้ดีขึ้น นอกจากนี้อัลกอริธึมบนชิปก็ได้รับการปรับปรุงเช่นกัน

RapidCAD ซึ่งเป็นชุดอัปเกรดจาก 386 เป็น 486 ที่วางจำหน่ายสำหรับ การใช้งาน ด้านการออกแบบโดยใช้คอมพิวเตอร์ช่วย (CAD )ยังรวมถึงหน่วยประมวลผลทศนิยมจำลอง (RapidCAD-2) ที่ติดตั้งบนซ็อกเก็ต 80387 เพื่อความเข้ากันได้ เนื่องจากโปรเซสเซอร์หลัก (RapidCAD-1, 486DX) มีหน่วยประมวลผลทศนิยมในตัวอยู่แล้วโดยค่าเริ่มต้น

เอ็นเอ็กซ์587

หน่วยประมวลผลทศนิยม (FPU) Nx587ของNexGenสำหรับ โปรเซสเซอร์ Nx586ซึ่งวางจำหน่ายในปี 1995 เป็นโคโปรเซสเซอร์ x87 รุ่นสุดท้ายที่ผลิตแยกต่างหากจากซีพียู

ดูเพิ่มเติม

หมายเหตุ

  1. บริษัทที่ ไม่มี โรงงาน ผลิต (Fabless companies) ออกแบบชิปและพึ่งพาบริษัทที่มีโรงงานผลิต (Fabbed company) ในการผลิต ในขณะที่บริษัทที่มีโรงงานผลิต (Fabbed company) สามารถออกแบบและผลิตชิปได้ด้วยตนเอง
  • ทุกสิ่งที่คุณอยากรู้เกี่ยวกับตัวประมวลผลร่วมทางคณิตศาสตร์

ดึงข้อมูลมาจาก " https://en.wikipedia.org/w/index.php?title=X87&oldid=1359865555#80387 "

สรุปเนื้อหา

ข้อมูลสำคัญจากบทความ

ข้อมูลสำคัญเกี่ยวกับ x87

x87 เป็น ชุด คำสั่ง ย่อย ที่เกี่ยวข้องกับ เลขทศนิยม ของ สถาปัตยกรรม x86 โดยมีต้นกำเนิดมาจากการขยาย ชุดคำสั่ง 8086 ในรูปแบบของ ตัวประมวล ผลร่วมเลขทศนิยม ( FPU )...

คำอธิบาย

รีจิสเตอร์ x87 สร้างโครงสร้าง สแต็กแบบ ไม่เข้มงวดที่มีความลึกแปดระดับตั้งแต่ ST(0) ถึง ST(7) โดยมีรีจิสเตอร์ที่สามารถเข้าถึงได้โดยตรงด้วยตัวดำเนินการใดก็ได้ โดยใช้ค่าออฟเซ็ตที่สัมพันธ์กับด้านบนสุด รวมทั้งสามารถพุชและป๊อปได้...

ผลงาน

จำนวนรอบสัญญาณนาฬิกาสำหรับตัวอย่างคำสั่ง FPU x87 ทั่วไป (แสดงเฉพาะเวอร์ชันรีจิสเตอร์-รีจิสเตอร์ที่นี่) [ 5 ]

ผู้ผลิต

บริษัทต่างๆ ที่ออกแบบหรือผลิต หน่วย ประมวลผลทศ ลอย ( floating-point units) ที่ใช้งานร่วมกับ Intel 8087 หรือรุ่นที่ใหม่กว่า ได้แก่ AMD ( 287 , 387 , 486DX , 5x86 , K5 , K6 , K7 , K8 ), Chips and Technologies ( หน่วยประมวลผลร่วม Super MATH ), Cyrix ( FasMath ,...