Académique Documents
Professionnel Documents
Culture Documents
2. 3. 4. 5. 6. 7. 8. 9.
Microprocessor Contains ALU, general purpose registers, stack pointer, program counter, clock timing circuit, interrupt circuit. Many instructions to move data between memory and CPU. It has one or two bit handling instructions. More access times for memory and I/O devices . Requires more hardware. More flexible in design point of view. Single memory map for data and code. Less number of pins are multifunctioned. It concerned with rapid movement of code & data from external addresses to chip.
Microcontroller Contains the circuitry of mp and in addition built in ROM, RAM, I/O devices, timers, counters.
Many bit handling instructions. Less access times for built in memory and I/O devices. It requires less hardware. Less flexible in design point of view. Separate memory map for data and code. More number of pins are multifunctioned. It concerned with rapid movement of bits within the chip.
RA M
I/O port
Time r
Microcontroller
CPU RA M Timer RO M Seri al COM port
I/O por t
Microcontroller Survey
Microcontroller RAM Other features 4-bit (M34501) 8-bit (8051) 16-bit (68HC16Z3) 32-bit 256 128 bytes 4K bytes 32K bytes 8K 2 4 24 64 Counter array, ADC, WDT Color LCD Controller 3 UART,WDT,DMA, PLL, Real time clock ROM 4K 4K Counters 2 2 14 32 I/O pins ADC, WDT UART
Many instructions Variable format instructions Many addressing modes Single register set Not pipelined or less pipelined Conditional jump is usually
TCY0
TCY1
TCY2
TCY3 Pipelining or parallelism means fetching for next instruction while executing current instruction.
Fetch1 1
CPU
Memor y
Von-Neumann or Princeton
Harvard
Von-nuemann Architecture
1. Programs and data share the same
Harvard Architecture
Uses separate memory for
Data.
2. Program and data fetches are done No need to have TDM for address and data using TDM which affect performance. buses. 3. Code storage may not be optimal & Optimal code storage. Allows instn to be requires multiple fetches to form prefetched & decoded while multiple data instrn. being fetched & operated on. Eg. Motorola 68HC11 mc PIC mc, MCS-51
8051 Architecture
Features: 1. Operating frequency is 12MHz 2. Separate 64K program and data memory 3. Multiply and divide instructions are available. 4. Boolean processor (operates on single bit) 5. 32 I/O lines can be used as four 8-bit ports (P0-P3) or 32 I/O lines. 6. Two 16-bit Timers/Counters. 7. Serial interface : Full duplex serial data receiver/transmitter. 8. 4K bytes ROM 9. 128 bytes RAM 10.Two external interrupts through INTO and INT1 pins
I/O PORTS
Total 4 ports 1. Port 0 may serve as inputs, outputs, or as a low order address and data bus for external memory. 2. Port 1 may be used as input/output port. 3. Port 2 may be used as input/output or high order address byte. 4. Port 3 may be used as an input/output and for some alternate function. Each port consists of a latch, an output driver, and an input buffer.
The bit latch is represented as a TypeD flipflop, which will clock in a value from the internal bus in response to a write to latch signal, Q output of the flipflop is placed on the internal bus in response to a read latch signal, level of the port pin itself is placed on the internal bus in response to a read pin signal from the CPU. The output drivers of PortsO and2 are switchable to an internal ADDR and ADDR/DATA bus by an internal CONTROL signal for use in external memory access. If P3 bit latch contains a 1, then the output level is controlled by the signal alternate output function". The actual P3.X pin level is always available to the pins alternate input function. To be used as an input, the port bit latch must contain a 1, which turns off the output driver FET. Then, for Ports 1, 2, and 3, the pin is pulled high by the internal pullup, but can be pulled low by an external source. Because Ports 1, 2, and 3 have fixed internal pullups they are sometimes called qussi-bidirectionalports as inputs they pull high and will source current when externally pulled low. Port O, is true bidirectional, because when configured as an input it floats. To be used as an output, the port bit latch must contain a 0,which turns on the output driver FET.