Term Paper On Intel 80486 Microprocessor R DARPAN DEKIVADIYA JEMIS JIVANI 09BCE008 09BCE017 Department of Computer Science & Engineering Department of Computer Science & Engineering Institute of Technology Institute of Technology Nirma University Nirma University Ahmedabad 382 481 Ahmedabad 382 481 Gujarat, India. Gujarat, India. Email: 09BCE008@nirmauni.ac.in Email: 09BCE017@nirmauni.ac.in I. I NTRODUCTION1) The 32-bit 80486 is the next evolutionary step up from the 80386.2) One of the most obvious feature included in 80486 is a built in math co processor. This coprocessor is essentially the same as the 80386 but being integrated on the chip allows it to execute math instruction about three times as fast as a 80386/387 combination.3) 80486 is an 8kbyte code and cache4) To make room for the additional signal, the 80486 is packed in 168 pin, pin grid array package instead of 132 pin PGA used for the 80386.5) The 32-bit CPU 80486 from Intel is the ﬁrst processor with an inbuilt ﬂoating point unit.
II. A RCHITECTURE 14) FLUSH: The cache ﬂush input forces the microprocessor to erase the contents of its 8K byte internal cache. 1) A 31- A2: Address outputs A31-A2 provide the memory and I/O with the address during normal operation. Dur- 15) EADS: The external address strobe input is used with ing a cache line invalidation A31-A4 are used to drive AHOLD to signal that an external address is used to the microprocessor.// perform a cache invalidation cycle. 2) A20M3: The address bit 20 mask causes the 80486 to wrap its address around from location 000FFFFFH to 16) FERR: The ﬂoating point error output indicates that 00000000H as in 8086. This provides a memory system the ﬂoating point coprocessor has detected an error that functions like the 1M byte real memory system in condition. It is used to maintain compatibility with the 8086 processors. DOS software. 3) ADS: The address data strobe becomes logic zero to 17) 8 BS: The bus size 8, input causes the 80486 to structure indicate that the address bus contains a valid memory itself with an 8-bit data bus to access byte-wide memory address. and I/O components. 4) AHOLD: The address hold input causes the 18) 16 BS: The bus size 16, input causes the 80486 microprocessor to place its address bus connections at to structure itself with a 16-bit data bus to access their high-impedance state, with the remainder of the word-wide memory and I/O components. buses staying active. It is often used by another bus master to gain access for a cache invalidation cycle. 19) PCHK: The parity check output indicates that a parity error was detected during a read operation on the DP3 5) BREQ: This bus request output indicates that the 486 - DP0 pin. has generated an internal bus request. 20) PLOCK: The pseudo-lock output indicates that current 6) 3 0 BE-BE: Byte enable outputs select a bank of operation requires more than one bus cycle to perform. the memory system when information is transferred This signal becomes a logic 0 for arithmetic coprocessor between the microprocessor and its memory and I/O. operations that access 64 or 80 bit memory data. The BE3 signal enables D31 - D24, BE2 enables D23-D16, BE1 enables D15 - D8 and BE0 enables 21) PWT: The page write through output indicates the state D7-D0. of the PWT attribute bit in the page table entry or the page directory entry. 7) BOFF: The Back-off input causes the microprocessor to place its buses at their high impedance state during 22) RDY: The ready input indicates that a non-burst bus the next cycle. The microprocessor remains in the bus cycle is complete. The RDY signal must be returned hold state until the BOFF pin is placed at logic 1 level. or the microprocessor places wait states into its timing until RDY is asserted. 8) NMI: The non-mask able interrupt input requests a type 2 interrupt. 9) BRDY: The burst ready input is used to signal the microprocessor that a burst cycle is complete.10) KEN: The cache enable input causes the current bus to be stored in the internal.11) LOCK: The lock output becomes a logic 0 for any instruction that is preﬁxed with the lock preﬁx.12) W / R: current bus cycle is either a read or a write.13) IGNNE: The ignore numeric error input causes the coprocessor to ignore ﬂoating point error and to continue processing data. The signal does not affect the state of the FERR pin.
Flag Registers1) The extended ﬂag register EFLAG is illustrated in the ﬁgure. The only new ﬂag bit is the AC alignment check, used to Indicate that the microprocessor has accessed a word at an odd address or a double word boundary.2) Efﬁcient software and execution require that data be stored at Word or double word boundaries.3) Other common ﬂags between 80486-80386 like carry ﬂag(CF),parity ﬂag(PF),auxiliary ﬂag(AF),zero ﬂag(ZF), Sign ﬂag(SF),trap ﬂag(TF),interrupt ﬂag(IF), direction ﬂag(DF),overﬂow ﬂag(OF) are set or reset according to 80486 instruction set and same as 80386.4) In the common ﬂags six are control ﬂag and three ﬂags are conditional ﬂags.5) The 80486 has four control ﬂag register which is same as in 80386 microprocessor. Five extra bits are added to the 80486 is :Alignment mask (AM), numeric error (NE), write protect (WP),cache disable (CD), not-write through (NW).6) AM ﬂag is set to 1 when data alignment is check alignment mask in or set to 0 when alignment mask out. A double word of the data that is not stored at an address that is a multiple of four is said to be unaligned. If an unaligned double word storage location accessed, two memory bus cycles must be performed. The extra bus cycle introduce because the data is unaligned reduce overall system performance so, alignment check ﬂag are used to identify alignment.7) CD and NW ﬂags are used to enable and control the operation of on the on chip cache memory. To enable the cache memory for the operation, CD must be cleared to 0.the NW ﬂag enables write through and cache validation cycles to take place when it is set to 0. Fig. 3. ﬂag register of 80486
General Purpose Reg. Fig. 4. general purpose register of 80486
Features Memory System• Addressing modes 1) The memory system for the 486 is identical to 386 microprocessor. The 486 contains 4G bytes of memory 1. Scaled indexed mode beginning at location 00000000H and ending at -Content of an index register are multiply by scale factor FFFFFFFFH. that may be added further to get the operand offset. 2. Based scaled indexed mode 2) The major change to the memory system is internal -Content of an index register are multiply by scale to 486 in the form of 8K byte cache memory, which factor that may be then added to base register to get the speeds the execution of instructions and the acquisition operand offset. of data. 3.Based scaled indexed mode with displacement -Content of an index register are multiply by scale 3) Another addition is the parity checker/ generator built factor and the result is added to a base register and a into the 80486 microprocessor. displacement to get operand offeset. Parity Checker / Generator:• Interrupts • Parity is often used to determine if data are correctly read from a memory location. INTEL has incorporated -80486 can handle 256(00 to FFh) hardware interrupts an internal parity generator / decoder. on its INTR pin. The structure of the interrupt vector table(IVT) is same as the 8086 and it is handled by • Parity is generated by the 80486 during each write cycle. interrupt descriptor table which contain 256 possible Parity is generated as even parity and a parity bit is interrupt vectors. Out of 256, 32 are used by Intel and provided for each byte of memory. The parity check bits remaining are free for user. appear on pins DP0-DP3, which are also parity inputs as well as parity outputs.• Data types • These are typically stored in memory during each write 1.Signed/unsigned data type cycle and read from memory during each read cycle. -8-bit, 16-bit 32-bit signed/unsigned integer are supported. • On a read, the microprocessor checks parity and generates 2.Floating point data type a parity check error, if it occurs on the PCHK pin. A -Single precision, double precision extended precision parity error causes no change in processing unless the real data are supported user applies the PCHK signal to an interrupt input. 3.BCD data type • Interrupts are often used to signal a parity error in -It supports 8-bit packed and unpacked data DS-based computer systems. This is same as 80386, 4.String data type except the parity bit storage. -String of bit, bytes, words and double words are supported by CPU, each may contain up to 4GHz. • If parity is not used, Intel recommends that the DP0 - 5.ASCII data type DP3 pins be pulled up to +5v. -It is used for representation of characters. 6.Pointer data type Cache Memory -48-bit pointers containing 32-bit offset at the LSB and 16-bit selector at MSB are supported by CPU. • The cache memory system stores data used by a program and also the instructions of the program. The cache is organized as a 4 way set associative cache with each location containing 16 bytes or 4 double words of data. • Control register CR0 is used to control the cache with two new control bits not present in the 80386 microprocessor.
Summary Reference1) Thus in sort 80486 is updated version of 80386. • The architecture of 80386-80486 microprocessor By Wal- ter A. Treble and Avtar Singh.2) It has 8Byte code and cache. • www.microprocessor-assembly.com / 80486 • www.ebooks.com/80486-processor3) It is the processor with inbuilt ﬂoating point unit4) It has tightly coupled pipelining which allows 80486 to complete an instruction like a simple ALU.5) It has more no of ﬂag registers then 8086 like AC, I/Opl, NT, RF VM.6) It has the same memory system as 80386 have. Which contains the memory addresses from 00000000H to FFFFFFFFH.7) It also has in built parity checker and parity generator circuit which is used to check that a data read from memory is correct or not.