4004 (Nov 1971)
เป็นแบบ 4 bit
ใช้สำหรับเครื่องคิดเลข เก็บข้อมูลใช้ 4 bit เก็บ
instruction 8 bit
ส่วนโปรแกรมแยกจากส่วนเก็บข้อมูล
โดยเก็บข้อมูล 1 K bit และ PC ขนาด 12 bit สำหรับ
โปรแกรมขนาด4 K (ใช้ในรูปแบบ stack 4
ชั้นใช้กับ คำสั่ง CALL และ RET) และ มี register
เอนกประสงค์ขนาด 4 bit 16 register
8080 (1974)
8008 ประกอบด้วยค่า PC และ
ค่า Add ขนาด 14 bit address bus ขนาด 16 bit data bus ขนาด 8 bit
ส่วนประกอบภายใน มี register ขนาด 8 bit จำนวน 7 ตัว
(A,B,C,D,E,H,L) stack poiter ขนาด 16 bit stack ขนาด 8 ชั้น PC ขนาด 16 bit มี I/O
port มากถึง 256 port
Zilog
Z-80
พัฒนาจาก 8080
เก็บข้อมูลแบบ 8 bit และเก็บ address ขนาด 16 bit
สามรถทำทุก opcode ของ 8080 ได้ และเพิ่มอีก 80 ชุด
ชุดคำสั่งที่มีขนาด 1,4,8 และ 16 bit ชุดของ
register มี เป็น 2 เท่า
นอกจากนี้ยังมีระบบปฏิบัติการที่รวดเร็ว
หรือ การ interrupt z80 เพิ่ม register ที่ใช้เป็น index 2 ตัวฃ คือ
IX,IY และ interrupt มีลักษณะเป็นเวกเตอร์ ซึ่งทำการ relocate
ได้ ทำงานที่ อัตรา clock ของ z-80 = 2.5 MHz Z-80-H =
6MHz
Zilog Z-8000
,another direct competitor
z-8000
เผยแพร่หลังจาก 8086 ได้ไม่นาน
แต่มีประสิทธิภาพที่มี processor ขนาด 16 bit
แต่สามารถทำให้ address เพิ่มได้ถึง 23 bit โดยใช้
register ในแบบ segment (ทำให้เพิ่ม 7 bit Z-8000 มี register ขนาด
16 bit จำนวน 16 ตัว แต่ขนาด register ยือหยุ่นได้ register 8
ตัวแรก ของ Z-8000 สามารถใช้เป็น register ขนาด 8 bit จำนวน 16
ตัวได้ (โดยกำหนดเป็น RH0,RL0,RH1,....) หรือ 16 ตัว
สามารถรวมเป็น register ขนาด 32 bit จำนวน 8 ตัว โดยใช้เป็น
register เอนกประสงค์ register 15 ใช้เก็บ stack pointer ,register
14 ใช้เก็บ stack segment (ทั้งสอง register อ้างอิงเป็น 35
bit (RR214)) ชุดคำสั่งเป็นแบบ 32 bit
สามารถเพิ่มเป็นทวีคูณ(เป็น 64 bit) และ
แบ่งลดลงได้ Z-800 เป็นรุ่นแรกในแบบ 2 โหมด
โหมดแรกสำหรับระบบ OS(Operating System)
และอีกโหมดใช้สำหรับ
โปรแกรมของผู้ใช้ในส่วนโหมดสำหรับผู&eacut
e;ใช้จะซ่อนส่วนที่ซับซ้อนเกี่ยวกับการ ;
interrupt และส่วนนที่ไม่จำเป็นต้องทราบ Z-800
มีวงจร Refresh RAM อัตโนมัติ
มีข้อเสียที่บางครั้งก็ทำงานช้า
แต่ก็เป็นผลมาจาก feature ต่างๆที่มี
รุ่นถัดมา ก็คือ Z-8000 เป็นที่รู้จักในปี
1986 พร้อมๆกับ CPU รุ่น 32 bit MC68020 และ Intel 80386 แต่ Z-80000
มีข้อที่ดีกว่าเล็กน้อย Z-80000
ขยายได้เต็มที่ถึง 32 bit สำหรับ addressing mode ของ Z-8000
ทำการเพิ่ม segment addressing มากกว่า 24 bit
และยังมีการเพิ่ม MMU(ใน CPU 68020
ไม่มีแต่เพิ่มลงไปใน 68030) ซึ่งเพิ่ม chip 16
line 256-byte เพื่อประสานงานกับ cache ได้อย่างเต็มที่
Z-80000 เป็นมัลติโปรดซสเซอร์ เพราะมีการกำหนด memory pages
นอกยากนี้ยังใช้ coprocessor ช่วยในการ
ดูการทำงานของ data bus
และบ่งบอกคำสั่งที่ใช้สำหรับ CPU Z-8000
ทำงานเป็น pipeline (6 stage) รุ่นที่ทำการ pipeline
อย่างเต็มที่คือรุ่น 80486 และ 68040 ออกมาในปี
1991
INTEL 8086 , IBM ‘S CHOICE (1978 )
เซ็กเม้นต์รีจีสเตอร์(
คูณด้วย 16 หรือ ชิปซ้าย4บิต )ที่แอดเดรส
เหตุผลของความไม่ประสบความสำเร็จในการขยายเนื้อที่ของแอดเดรสโดยไม่ต้องอาศัยการเพิ่มแอดเดรสบิตซึ่งอาจทำได้โดยการใช้พอยเตอร์
2 ตัวซึ่งชี้ค่าเดียวกันแต่ต่าง memory
location กัน หรือ พอยเตอร์ 2
ตัวซึ่งชี้ค่าต่างกันที่ memory location
เดียวกันและถูกจำกัดให้บรรจุข้อมูลได้แค่
64 กิโลไบต์แต่ผู้ประดิษฐ์กำลังประสบปัญหา
ทางด้านการดีไซน์
ถึงแม้ว่าจะได้รับการยอมรับอย่างแพร่หลายในภาษาแอสเซมบลีซึ่งควบคุมเซกเมนต์ได้อย่างสมบูรณ์
แต่ในภาษาชั้นสูงนั้นจะประสบปัญหาในการใช้
near/far pointerและยังมีผลเสีย
ในด้านการเพิ่มเนื้อที่ address
ซึ่งจะทำได้ยาก ใน 80286
ซึ่งผลิตออกมาในปี 1982
ได้ขยายการดีไซน์ออกเป็น 32 บิต
โดยการเพิ่มโหมดใหม่เข้ามา (
มีการสวิชชิ่งจาก Real ไปยัง Protected โหมด
แต่การสวิชชิ่งกลับนั้นยังต้องอาศัย bug ใน
80286 รุ่นก่อนซึ่งยังคงต้องรักษาไว้ )
ซึ่งต้องเพิ่มจำนวนของเซกเมนต์อย่างมากโดยใช้ตัว
selecter ขนาด 16 บิตสำหรับ “ segment descriptor” ซึ่งบรรจุ location
ในแอดเดรสขนาด 24 บิต , ขนาด( ยังคงน้อยกว่า
64K ) และมีคุณสมบัติ ( Vertual Memory support) ของ
segment
แต่การเข้าถึง memory
ยังคงถูกจำกัดแค่ 64K segments จนกระทั่ง 80386
ได้ผลิตออกมาในปี 1985
ซึ่งรวมถึงการพัฒนา addressing : base reg + index reg * scale
( 1,2,4 หรือ 8 บิต ) + displacement ( 8 หรือ 32 bit constant = 32 bit address (
ในรูปแบบของ paged segme(
โดยใช้เซกเมนต์รีจิสเตอร์ขนาด 16 บิต 6 ตัว ) คล้ายกับตระกูล IBMS /
360 แต่ไม่เหมือนกับตระกูล Motorola 68030 )ซึ่งจะมี Processor
โหมดเฉพาะ( รวมถึงมีการแบ่งแยก paged และ
segmented โหมด ) ซึ่งสอดคล้องกับการออกแบบรุ่นก่อนๆ
ในความเป็นจริงแล้วจะถูกต้องกับแอสเซมเบลอร์
code นั้นถูกเขียนสำหรับ 8008 ซึ่งสามารถ run บน Pentium Pro
ได้ใน 80386 นั้นได้เพิ่ม MNU เข้ามาเพื่อ security modes
( หรือเรียกว่า “ring” ของ system services,application
services,application ) และยังมี opcode
ใหม่ซึ่งมีรูปแบบคล้ายกับ Z-80
80486
ซึ่งผลิตออกมาในปี 1989 ได้มีการเพิ่ม
pipelines อย่างสมบูรณ์ มีแคช 8K บนชิปรวมกับ FPU
(เป็นพื้นฐานของ eight elemant 80-
บิตแสตก-Orientted FPUใน 80387 FPU )และมีการเพิ่ม
clack เป็น 2 เท่า( คล้าย Z-280 )
ในเพนเทียมซึ่งผลิตออกมาในปลายปี 1993
เป็นแบบ Superscalar ( 1 integer unit และ Singel FPU ) กับแบ่งแยก 8K
I/D แคช
เพนเทียม
เป็นชื่อซึ่งใช้แทน 80586 เพราะว่าชื่อ 586
นั้นไม่สามารถป้องกันบริษัทอื่นๆ
ที่พยายามจะลอกเลียนแบบได้
และในความเป็นจริงนั้น Pentium
มีลักษณะคล้ายกับ CPU จาก NexGen รุ่น Nx586
ซึ่งผลิตออกมาในปี 1995 80x86 เป็น cloned processors
มากที่สุด จาก NEC V20/ V30( ซึ่งมี cloned เร็วกว่า 8088/8086
( สามารถ run บน 8085 ได้ AMD และ Cyrix clones ของ 80386 และ 80486 ไปถึง
Pentium
สถาปัตยกรรมรุ่นก่อนๆนั้นจะทำการให้การ
compatible บนCPU ของเพนเทียม( Nx586 / Nx686, AMD K5
)และ “Pentium Pro” ไม่เป็น clone
เพนเทียมแต่มีการเลียนแบบ Hardware Decoder
เป็นพิเศษ ซึ่งจะเปลี่ยนคำสั่งใน
เพนเทียมไปยัง RISC ( คำสั่งที่ Executed บน RISC cores
จะเร็วกว่าบนเพนเทียม ( Cyrix / IBM 6x86
ซึ่งผลิตออกมาในช่วงต้นปี 1996 ยังคง
executed คำสั่งของ 80x86 ใน 2 pipelines
แต่เร็วกว่าเพนเทียม
ซึ่งทำให้ตอนนี้เกิดข่าวลือที่ว่า
IBM
กำลังพัฒนา?าร์ดแวร์ที่แปลงคำสั่งเพนเทียมสำหรับ
Power PC ใน CPU รุ่น Power PC 615
ซึ่งเลิกใช้ไปแล้ว
เพนเทียมโปร
หรืออีกชื่อหนึ่งว่า P6 เป็น 1 หรือ 2 ชิป( CPU plus 256K
หรือ 512K L2 cache - L/d L1 cache( อันละ 8 กิโลไบต์ ) ซึ่งอยู่บน
CPU เป็น Super piplined processor ประกอบด้วย 3 decoder ( complex
instruction 1 ตัว , simpler ones 2ตัว )
ทำหน้าที่แปลงคำสั่งใน 80x86 ไปเป็น Micro-Ops
( one per simpler decoder + Up to four from the complex decoder = three to six
per cycle ) ขึ้นไปเป็น 5 micro ops ซึ่งปกติมีแค่ 3
เท่านั้น สามารถก่อให้เกิดผลในระบบ Parallel
และ order ( 6 unit - FPU , 2 integer , 1 load/store )ใน 80x86 instruction
อาจจะสร้าง micro-ops ใน CPU คล้ายกับ Nx586 และ AMD K5
เพราะฉะนั้นจะได้อัตราคำสั่งต่ำ
ในความเป็นจริงแล้วจะประสบปัญหาในด้าน
Handing instruction ซึ่งเป็นการวางแนวทางใน Pentium Pro
โดยมีการเลียนแบบคำสั่งขนาด 16 บิต ซึ่ง
execute ได้ช้ากว่าบนเพนเทียม
AMD K5 แปลง 80x86 code ไปเป็น
ROPS ( RISC Operation ) ซึ่ง execute บนพื้นฐานของ RISC core บน
Superscalar AMD 29K ขึ้นไปจนถึง 4 ROPs
สามารถส่งไปถึง 6 units ( 2 integer , 1 FPU , 2 load/store , 1
branch unit ) และ 5 สามารถแสดงผลที่เวลานั้นได้
ความซับซ้อนในการใช้สัญญาณนาฬิกาที่มีความเร็วต่ำสำหรับ
K5 นั้นจะเร็วกว่า AMD ที่ซื้อลิขสิทธิ์ NexGen
และรวมการดีไซน์สำหรับ K6
รุ่นต่อไป
NexGen / AMD Nx586
ซึ่งผลิตออกมาในช่วงปลายปี 1994
นั้นสามารถ execute micro-ops ( RISC86 code )
หากมองไปแล้วพบว่าโปรแกรมที่ถูกเขียนด้วย
RISC86 จะเร็วกว่าหรือเท่ากับ x86 program
แต่จะไม่ค่อยนิยมใช้
มีลักษณะเฉพาะคือปรระกอบด้วย 16K I/D L1 cache 2 ตัว , L2
cache bus ( คล้ายกับใน Pentium Pro 2- Chip module )
Nx586
ที่ประสบความสำเร็จนั้น K6 (
ผลิตออกมาในปี 1996 ) ประกอบด้วยแคช 3 ชิ้น
ชิ้นละ 32K สําหรับข้อมูลและคำสั่ง และอีก 16K
สำหรับบรรจุข้อมูลการ decode
คำสั่งและยังได้นำ FPU ไปรวมไว้ใน chip
และขจัด cache bus ของ Nx586
อย่างไรก็ตามก็ยังคงรูปแบบความเป็น
pin ไว้ อีกทั้งยัง compatible กับ P54C model Pentium ส่วน decoder
อื่นๆนั้น จะมีการเพิ่ม 2 complex decoder
ซึ่งแตกต่างจาก Pentium Pro ซึ่งใช้ 1 complex decoder และ 2
simple decoder และเพิ่ม micro -ops จาก 4 เป็น 6 ( ไปยัง 7 unit - load
, store , complex/simple integer , FPU , branch , multimedia )
AMD ได้รับอนุญาตจาก
MMX ( Matrix Math eXtension ) ให้ผลิต CPUs ซึ่งขณะนั้นทาง
Intel ก็กำลังพัฒนา Pentium และ Pentium Pro อยู่ โดย MMX
นั้นมีลักษณะคล้ายคลึงกับ SPARC VIS หรือ HP-PA MAX โดย MMX
instruction นั้นจะแสดงการจัดการ integer เป็นกลุ่ม
ๆ ของ 8 , 16 ,32 , bit word ใช้ 80 bit FPU stack 64 bit register 8 ตัว (
สวิชชิ่งระหว่าง FPU และ MMX โหมดที่ต้องการ
มันยากที่จะใช้ stack และ MMX register
ที่เวลาเดียวกัน Cyrix ตั้งใจจะใช้ clones ของ
instruction นี้ไปสร้าง M2 CPU
Intel ได้ร่วมมือกับ
Hewlett-Packard ที่จะพัฒนา Processor ขนาด 64 บิต รุ่นต่อไป
โดยให้ compatible กับ 80x86
ซึ่งใช้คำสั่งในการแปลงหรือ coprocessor
บนพื้นฐานเทคโนโลยีของ Very Long Instruction Word
ซึ่งอาจจะนำออกมาเปิดเผยในไม่ช้านี้
AMD 29000 , A flexible register set (1987)
AMD 29000 เป็น RISC CPU
อีกรุ่นหนึ่งซึ่งพัฒนามาจาก Berkeley RISC (
และเป็นโปรเจคของ IBM 801) มีความทันสมัยกว่า 29000
รุ่นก่อนซึ่งเป็นแบบ bitslice (
ผลิตออกมาในกลางปี 1981 )
มีความคล้ายคลึงกับ SPARC
ซึ่งออกมาหลังจากนั้นไม่นาน
29000นี้ประกอบด้วยเซตของ register
ซึ่งใหญ่มากรวมอยู่ใน Local และ Grobal set
แต่อย่างไรก็ตาม 29000
นี้ได้นาออกมาจาหน่ายก่อน SPARC
ที่มีการจัดการทางด้าน register
ที่ดีกว่า
29000 นั้นประกอบด้วย 64
grobal register ซึ่งใน SPARC นั้นมีแค่ 8 อีกทั้งการ
allocate ขนาดของตัวแปรยังใช้จาก 128 รีจิสเตอร์ stack
cache สำหรับ Stcak Fram ที่ถูกบ่งบอกโดย stack pointer(
เป็นรุ่นของ ISAR regisler ใน Fairchild F8 CPU ) พอยเตอร์ที่ชี้
caller‘s frameคือ current frame ซึ่งคล้ายกับแสตกธรรมดา
Spill และ Fill จะเกิดขึ้นที่ส่วนท้ายของ
แคชเท่านั้น และรีจีสเตอร์จะเป็นตัว loaded/saved
ค่าของหน่วยความจำแสตกซึ่งค่านี้จะแปรตามขนาดของวินโดว์จาก
1 ถึง 128
รีจิสเตอร์แต่จะยืดหยุ่นตามความใหญ่ของ
โกลบอลรีจิสเตอร์
ทำให้การแบ่งสรรรีจีสเตอร์จะง่ายกว่าใน
SPARC
ไม่มีอะไรพิเศษในการคอนดิชั่นโคดรีจีสเตอร์
ซึ่งรีจีสเตอร์โดยทั่วไปจะอาศัยหลักการแทนที่
อย่างไรก็ตามคอนดิชั่นโคดยังคงถูกเก็บรักษาไว้ถึงแม้ว่าบางครั้งจะต้องทำโหมดที่ซับซ้อนมากขึ้น
คำสั่งหนึ่งอาจจะต้องทำก่อน fetch
บับเฟอร์( ใช้ burth โหมด )
เพราะฉะนั้นสิ่งแรกที่ต้องทำ
ก่อนเริ่มคำสั่งใหม่คือการแคชถัดมาคือการแคช
branch ( ขึ้นไปเป็น 16 ) ส่วน cache supplies instruction
นั้นจะทำช่วงดีเลย์ในการเข้าถึงหน่วยความจำ
รีจีสเตอร์จะไม่ถูก saved
ระหว่างการอินเทอรัพต์
สิ่งสำคัญของการทำอินเทอรัพต์คือต้องคิดว่า
ทำอย่างไรถึงคุ้มค่า
ดังนั้นจึงต้องจัดทำรูปแบบของการควบคุมการเข้าถึงรีจีสเตอร์
โดยรีจีสเตอร์ทั้งหมดสามารถป้องกันได้
ในบลอกของ 4 จากการเข้าถึง สิ่งนี้ทำให้ 29000
สามารถใช้ประโยชน์สำหรับแอบพลิเคชั่นต่างๆได้
ซึ่งสิ่งนี้จะถูกใช้งานโดย Processor
มากที่สุด
อย่างไรก็ตามสิ่งนี้ก็เป็นตัวยืนยันว
่าทำไม RISC Processor ถึงได้รับความนิยมสูงสุด
29000 ได้ทำการเพิ่ม MMU และยังสนับสนุน 29027 FPU ,
Superscalar 29050 ซึ่งผลิตออกมาในปี1990
ได้รวมเอา FPU ซึ่งได้ออกแบบใหม่โดยใช้ 4
instruction ซึ่งสามารถส่งไป execute Out of order และ
Speculatively
ในช่วงปลายปี 1995
บริษัท Advanced Micro Devices ได้เลิกพัฒนา 29K
ซึ่งได้ประโยชน์มากกว่า clones ของ Intel 80x86 processor
ถึงแม้ว่าจะพัฒนา superscalar
ไปมากแล้วเพื่อผลิต AMD 29000 รุ่นใหม่
ซึ่งมีการเพิ่ม FPU ( ออกแบบมาจาก 29050 )
เข้าไปเพื่อจะ shared กับ K5 ( ออกมาในปี 1995 )
เป็น processor ซึ่ง compatible กับเพนเทียม ( K5
สามารถแปลงคำสั่งของ 80x86 ไปเป็น RISC
ได้
Motolola 8800,late but elegant(Mid 1988)
Motolola 88000
ซึ่งออกมาถัดจากรุ่น 78000 นั้นเป็น Processor ขนาด
32 บิต และยังเป็นหนึ่งใน Processor เครื่องแรกๆ ของแบบ
RISC โดยมีพื้นฐาน CPU มาจาก Harvard Architecture ( คล้ายกับ
Fairchild / Intergraph Clipper C100
(1986))แต่ละบัสจะมีแคชแยกกันดังนั้นเว
ลาเข้าถึง ข้อมูลและคำสั่ง จะ
ไม่เกิดขึ้นพร้อมกัน
ถ้าไม่นับส่วนนี้แล้วจะมีความคล้ายคลึงกับ
สถาปัตยกรรมของ Hewlett Packard Precision ( HP / PA )
ซึ่งมีการออกแบบให้มีการเพิ่ม
รีจีสเตอร์สำหรับควบคุมสถานะมากมาย
ซึ่งใช้ในโหมดการควบคุม ถึงแม้ว่า 88000
จะมีการเพิ่มสิ่งต่างๆเข้ามามากกว่า
คือมีชุดคำสั่งที่มีขนาดเล็กและสวยงา
มและมี Segment addressing น้อย คือจำกัด addressing ที่ 32 บิต
แทนที่จะเป็น 64 บิดและยังมี88200 MMU
unit และแคชคู่ ( ได้ทำการเพิ่ม multiprocessor เข้ามา )
และฟังก์ชั่น MMU สำหรับ CPU 88100 ( คล้ายกับ Clipper ) ส่วน 88110
ได้ทำการเพิ่มแคชและ MMU บนชิป
88000
ประกอบด้วย user register ขนาด 32 บิต 32 ตัว , 8 distinct internal - ALU และ
ยูนิทช์จำนวนจริง ( มีการใช้ single register set ร่วมกัน )
ในรุ่น 88100 นั้นได้ทำการเพิ่ม ALU
สำหรับการคูณเข้ามา และ FPU Unit (
ประกอบด้วยรีจีสเตอร์ FPU ขนาด 80 บิต 30 ตัว ) ในรุ่น 88110
ได้มีการเพิ่มกราฟฟิกเข้าไป โดย bit unit
จะถูก pack และ unpack ใน 4 , 8 ,16 บิตจำนวนเต็ม( pixels )
และบรรจุลงใน 32 bit word
แต่ผลิตออกมาช้าและไม่ได้รับความนิ
ยมเท่ากับ MIPS หรือ HP processor
88000 เป็น
processor ที่ทันสมัยและยังมีระบบ pipeline ( กับ
interlocks ) และมีผลทำให้ก้าว ไปข้างหน้า ใน
88110 ALU สามารถนำผลไปยังไซเคิลถัดไปได้ การ
Loaded / Saved ใน 88110 จะกระทำกับบัฟเฟอร์ ดังนั้น processor
จึงไม่ต้องมีการคอย
ยกเว้นเมื่อมีการโหลดค่าไปไว้ที่
หน่วยความจำ
จำเป็นต้องมีการคอยให้มีการบันทึกข้อมูลเสร็จสิ้นก่อน
CPU 860
CPU รุ่น 860
มีหลากหลายโหมดการทำงาน จาก scaler mode
ไปจนถึง superscelar mode
(การทำคำสั่งแบบไม่ต้องรอให้จบทีละคำสั่ง
จะทำคำสั่งไปเรื่อย ๆ
โดยใช้ค่าที่มีอยู่เท่าที่สามารถจะทำได้)
โดยใช้ cach ขนาด 8k ในแบบที่จำกัด เป็น vector register
ขนาดเล็ก (ที่ใช้ใน supercomputers) cache
ที่นอกเหนือจากนี้ใช้เป็น address เสมือน
แทนที่จะเป็นแบบกายภาพ คำสั่งและ data bus แยก
จากกัน โดย 4G สำหรับหน่วยความจำ ใช้แบบ
segmentและใช้หน่วยจัดการหน่วยความจำ
สำหรับที่ เก็บแบบเสมือน 860 มี register ขนาด 32 bit จำนวน 32 ตัว
และ register แบบ floating point 32 bit จำนวน 32 ตัว 860 เป็น microprocessor
ในรุ่นแรก ๆ ที่มี FPU ,integer ALU และ 3-D graphic unit
(ติดอยู่กับ FPU)
ใช้สำหรับการวาดเส้น
Motorola 68000
68000 มี 16
32-bit register โดยแยกเป็น data และ address registers 1 address
registerไว้สำหรับ stack pointer และ data registers
สามารถใช้สำหรับการ operation ต่างๆซึ่งประกอบไปด้วย
การโต้ตอบจาก address register
แต่ไม่เหมือนการใช้ข้อมูลจาก address เอง การ
operation บน address register ถูกจำกัดในการ move , add / subtract
หรือ load จาก address operations เหมือนกับ CPU
โดยทั่วไปในเวลาเดียวกัน 68000สามารถ fetch
คำสั่งถัดไป ในขณะที่ทำการ execution ( 2 stage
pipeline ) 68000มี32bitsunits ภายใน ทำได้รวดเร็ว
สามารถแยกแยะ forced segmentation
ถูกออกแบบสำหรับขยายประกอบไปด้วย
การระบุรายละเอียดสำหรับ floating point
และstring
chip
ตระกูลของ Motolora
1.68000 มี 16
32-bit register โดยแยกเป็น data และ address registers 1 address
register ไว้สำหรับ stack pointer และ data registers
สามารถใช้สำหรับการ operation ต่าง ๆ
ซึ่งประกอบไปด้วย การโต้ตอบจาก address register
แต่ไม่เหมือนการใช้ข้อมูลจาก address เอง การ
operation บน address register ถูกจำกัดในการ move , add / subtract
หรือ load จาก address 68000 มี 32 bits units ภายใน
ทำได้รวดเร็ว สามารถแยกแยะ forced segmentation
ถูกออกแบบสำหรับขยาย ประกอบไปด้วย
การระบุรายละเอียดสำหรับ floating point และ string operations
เหมือนกับ CPU โดยทั่วไปในเวลาเดียวกัน 68000 สามารถ
fetch คำสั่งถัดไป ในขณะที่ทำการ execution ( 2
stage pipeline )
2.68010
รวมเข้าไปใน virtual memory support และ special loop mode ( small
decrement-and-branch loopsสามารถ executed จาก instruction fetch buffer .
)
3.68020 ( 1984
) ขยาย external data และ address bus เป็น 32 bits และ รวม 256 byte cache
ในขณะที่ 68030 นำ MMU ไว้บน chip
ส่วน
4.68040 ( 1991
) รวมเข้าใน fully cache Harvard busses โดยมาจาก data และ
instructions 6 stage pipeline และบน chip FPU
5.68060 (1994)
ขยายการออกแบบเป็น superscalar version เหมือน Intel pentium
และ NS320xx (Swordfish) series ที่เกิดขึ้นก่อนเหมือน NX586
,AMD K5 และ "Intel Pentium PRO" stage ที่ 3 ของ 10-stage ใน 68060 pipeline
แปลงคำสั่ง 680x0 ไป decode RISC และใช้ resource renaming
ในการ reorder คำสั่ง และยังมี Branch cache และ branch
ที่รวม ใน decoded instruction stream เหมือน AT&T Hobbit และอื่น ๆ
มากกว่า การ Processor ที่ผ่านๆมา
นอกจากนี้ใน 68060 ยังประกอบไปด้วย
การเปลี่ยนแปลง Power-saving
มากมายที่แสดงให้เห็น ดังนั้น Power
ที่ใช้มีระดับต่ำกว่า 68040 การเปลี่ยนแปลง
อื่น ๆ คือ simple register-register instruction ซึ่งไม่ได้
เกิดจาก address ใช้ address stage ALU ในการ execute 2 cycle
ก่อน
IBM RS/6000 POWER CHIP ( 1990 )
เมื่อ IBM
ตัดสินใจเข้าร่วมในตลาด work station (
หลังจากไม่ประสบความสำเร็จกับ PC/RT
ซึ่งเป็นพื้นฐานบน ROMP processor ) ได้ออกแบบ CPU
ใหม่ ซึ่งมีพื้นฐานในส่วนของโครงการ 801
ซึ่งเป็นผู้บุกเบิก ทฤษฎี RISC ซึ่ง RISC
เป็นพื้นฐานธรรมดาสำหรับการลดชุดคำสั่ง
( Reduced Instruction Set Computer ) แต่ IBM เรียกว่า Reduced Instruction
Set Cycles
และส่งเสริมกระบวนการที่ซับซ้อนของ
processor กับ high level instruction มากกว่า CISE processor ทั้งหมด
และสิ้นสุดโดยจะได้ CPU ( power 1 )
ที่ในตอนเริ่มต้น ประกอบไปด้วย 5 หรือ 7 ส่วน
คือ
1. branch
unit
2. point
unit
3. floating
point unit
4. จะเป็น
2. หรือ 4. cache chips ( โดยแยกเป็น data และ instruction cache
)
บาง POWER PC
Version ( ได้รับการพัฒนาร่วมกันระหว่าง IBM Apple
และ MOTOROLA ด้วย MOTOROLA 68000 และ Intel 8086 ) มีการรวม cache บน
chip ( 32 k ใน 601 ) version ใหม่ มีการแบ่งแยก I/D caches. POWER
PC Version ยังรวมคำสั่งง่าย ๆ ( simplified instruction set )
รวมกับคำสั่งเก่า ๆ ที่จำเป็น
ส่วนของ
branch unit เป็นหัวใจของ CPU และ enables multiple instruction
ในการ executed 1 ครั้ง ประกอบไปด้วยเงื่อนไขรหัส
register , loop register และ performs branches ใน code condition register มี 8
ส่วน ( โดยใน POWER 1. สงวน 2. ไว้สำหรับ fixed และ floating point
units, และอีก 6 ส่วน สามารถเป็นส่วน (
หรือรวมจากหลาย ๆ คำสั่งไว้ได้ )
และสามารถตรวจสอบหลาย ๆคำสั่ง
และยังเป็นตัวส่ง multiple instructions
(ออกจากการจัดการ ถ้าเป็นไปได้ )
เพื่อความเหมาะสม ในส่วนของ executing
คำสั่งซึ่งซับซ้อน ( complex instruction
)
ในส่วนของ branch unit
สามารถคาดเดาในการแยกส่งคำสั่งและย
กเลิกได้ ถ้าไม่สามารถแยกเป็นส่วน ๆ ได้ branch unit
ยังจัดการกับ procedure โดยการ call และ returns บน program counter
stack ตาม zero-cycles calls
เมื่อมีการซ้อนทับกันกับคำสั่งอื่น
และสุดท้ายยังจัดการกับ interrupt
โดยปราศจากการเข้าแทรกของ
software
The integer
unit เป็นการกำหนดรูปแบบการ operation ของ integer และ
load และ stores ใน POWER1 และ POWER PC 601 ( version ใหม่
ยังรวมส่วนที่เป็น concurrent ในหน่วยการ load/store
) ทุก version ประกอบไปด้วย register 32 bit ในขณะที่ POWER PC
620 และ AS register เป็น 64 bits high end POWER PC-AS
มีจุดมุ่งหมายสำหรับ AS/400 minicomputer series
ยังรวมถึงการมีคำสั่งเลขคณิตฐานส?
;บ และ คำสั่งเกี่ยวกับตัวอักษร
และการเชื่อมต่อกันสำหรับ matrix coprocessor
หน่วยตัวเลขทั้งหมดสามารถส่งผลลัพ&c
edil;์ต่อไปเมื่อ subsequent instructions ต้องการ
ก่อนที่จะมีการเขียนสถานะเกิดขึ้นและบ&Ogra
ve;ง version ยังประกอบไปด้วย register พิเศษ ซึ่งถูก rename
สำหรับการคาดเดาหรือออกจากการจัดคำ&Ecir
c;ั่ง execution ในการขัดขวางการเขียน
และทำให้มันง่ายในการทิ้งคำตอบสำหรับ
หยุดคำสั่งในการ reorder การปะทะ ในหน่วยของ
branch/dispatch มีร่องรอยการ rename register ของ integer และ
floating point
ในหน่วยของ floating point ยังประกอบไปด้วย
thirty two 64 bit register และกำหนดชนิดของ floating point
operations ประกอบไปด้วยคำสั่ง multiply/accumulate และ array
multiply และการบวก register ถูก load และ store
ซึ่งกำหนดจุดทศนิยมใน POWER1 และ POWER PC601
โดยหน่วยของการ load/store อื่น ๆ FPU
ยังประกอบไปด้วย rename register เหมือนบาง CPU อื่น ๆ
floating point trap ยังไม่ชัดเจน แน่นอน เพราะว่า
pipelining-normally. Traps bit เป็น set
ของการยอมรับเลขทศนิยม และ software
สามารถตรวจสอบเงื่อนไขในการกำหนด trap ได้
หรือจะทำการยุติได้ถ้ามี software-operation
สำหรับการ debugging ยังรวม slower precise trap mode
เข้าไปอีก
Data bus
มีระยะจาก 32 bit เป็น 256 bit
ซึ่งสามารถเพิ่มเป็นคำสั่ง 6 คำสั่ง และ 4 การ load
หรือ store ในเวลาเดียวกัน โดย POWER PC 601 ใช้ MOTOROLA 88000
microprocessor bus มากกว่า version ในปัจจุบันซึ่งใช้ POWER
PC โดยกำหนด bus โดยเฉพาะ บางทีก็ใช้กับ 128 bit ‘ back
side ‘ bus ใช้ในการเข้าถึง L2.cache
IBM POWER CPU
ทั้งหมดมีประสิทธิภาพ
ทำให้คิดถึงการออกแบบ mainframe
ซึ่งคุณสมบัติทั้งหมดเหมือนกับ " weird and Innovative "
และยังใช้ RISC ด้วย มีความIซับซ้อนสูง
ทำให้มีประสิทธิภาพ แต่ต้องกำหนด clock rate
ของการออกแบบที่แน่นอน
clock rate สูง
ๆ ได้รับการพัฒนาจาก Exponential Technology
ทำการขยายชนิดของเทคโนโลยี Intel
พบถึงความจำเป็นในการเก็บ Pentium และ Pentium
Pro CPU ไว้ใช้ในการแข่งขัน และ Embedded version
ยังได้รับการแนะนำจาก IBM และ
MOTOROLO
DEC Alpha การออกแบบสำหรับอนาคต
(1992)
สถาปัตยกรรมของ DEC Alpha
ได้รับการออกแบบตาม DEC
สำหรับการดำเนินชีวิตในระยะเวลา 25 ปี
ผู้เปลี่ยนแปลงหลักคือ PAL calls ( หรือ set คำสั่ง
writable ที่แน่นอน )
แต่ยังได้รับการผสมผสานของลักษณะเด่น
ในการรวบรวมที่แน่นอนของ
คุณสมบัติที่ไม่มีข้อกำหนดที่ชัดเจน chip
ของ Alpha ตัวแรกคือ 21064 Alpha คือ สถาปัตยกรรม 64 bit ( มี 32 bit
เป็น instruction ) ไม่สนับสนุน 8- หรือ 16-bit
ของการดำเนินการ
แต่ต้องตามการเปลี่ยนแปลง
ดังนั้นจึงไม่มี function ที่สูญหาย Alpha 32 bit
การดำเนินการแตกต่างจาก 64 bit
เพียงแก่การป้องกัน overflow Alpha
ไม่สามารถทำคำสั่งหารได้
นอกจากนี้ยังมีคุณสมบัติเหมือน MIPS R2000
ซึ่งประกอบไปด้วยการใช้ register ทั่วไป
ในการกำหนดรหัสเงื่อนไข อย่างไรก็ตาม
Alpha ยังมีการ interlocked pipeline
ดังนั้นจึงไม่มี register พิเศษสำหรับการ คูณ / หาร
และ Alpha
ยังหมายถึงการหลีกเลี่ยงสัญลักษณ์การ&
agrave;ติบโตในส่วนที่ซับซ้อน ซึ่งตระกูล R2000
ทดลองและพัฒนาเป็น R8000 และ R10000 กฎของ Alpha
ใช้ในการย้ายสถาปัตยกรรม DEC’s two prior โดย MIPS
เป็นพื้นฐานบนเครื่อง workstation และ VAX minicomputer
ในการทำแบบนั้น chip สามารถจัดเป็นทั้ง IEEE
และ VAX32 และ 64 bit floating point operation และลักษณะเด่นของ
Privileged Architecture Library ( PAL) เรียก set ของ programmable ( ไม่มี
interruptable ) เขียนในชุดคำสั่งใน Alpha
โดยทั่วไปใน programmable มีรหัสขนาดเล็กของ
western Digital MCP-1600 หรือ AMD Am 2910 CPUs
เป็นการเปลี่ยนแปลงง่าย ๆ
จากชุดคำสั่งอื่น ๆ โดยใช้binary translator (
การแปลงแบบไบนารี ) โดยสนับสนุน operating system
ที่หลากหลาย Alpha
ยังได้รับการออกแบบเพื่ออนา&curr
en;ตสำหรับ 1000-fold
เพื่อเพิ่มในคุณสมบัติเพราะว่านี่&
curren;ือ ชุดคำสั่ง superscalar ได้รับการ reorder และ trap
เงื่อนไข ที่เป็นไปได้ให้ชัดเจน
คำสั่งพิเศษที่เหมาะสมในการ syncronise
ที่เกิดขึ้นเมื่อต้องการ และไม่มี branch delay
slot เหมือนใน R2000
ตั้งแต่ทำการผลิตรายการปัญหาต่าง ๆ ใน
superscalar execution และ ปัญหาที่ compatibility กับ extended pipeline
แทนที่จะ speculative executive และ branch cache chip 21064
ได้รับการแนะนำร่วมกับ 1. integer 2. Floating point และ
1 load / store unit 21164 ( ก่อนปี 1995 ) รวม 1. integer / load / store
unit กับ คำสั่ง byte vector และ 1. Floating point unit และ เพิ่ม clock
speed จาก 200 MHz เป็น 300 MHz
และได้รับการแนะนำความคิดที่เป็น 1.
level 2. Cache บน chip 21264 ขยายเป็น 4 integer unit , 2 different floating
point unit กับความสามารถในการ load 4 ,dispatch 6 และ retire eight
instruction ต่อ cycle สามารถเพิ่มได้ถึง 500 MHz ,Multimedia ขยาย
คำแนะนำด้วย 21264 เป็น simple แต่ประกอบไปด้วย
VIS-type motion estimation ( MPEG )
ไม่มีความคิดเห็น:
แสดงความคิดเห็น