Fundamentals of Single-chip Microcomputer
The single-chip microcomputer is the culmination of both the development of the digital computer and the integrated circuit arguably the tow most significant inventions of the 20th century [1].
These tow types of architecture are found in single-chip microcomputer. Some employ the split program/data memory of the Harvard architecture, shown in Fig.3-5A-1, others follow the philosophy, widely adapted for general-purpose computers and
microprocessors, of making no logical distinction between program and data memory as in the Princeton architecture, shown in Fig.3-5A-2.
In general terms a single-chip microcomputer is
characterized by the incorporation of all the units of a computer into a single device, as shown in Fig3-5A-3.
Program memory Input& Output CPU unit Data memory Fig.3-5A-1 A Harvard type
Input& memory Output CPU unit
Fig.3-5A-2. A conventional Princeton computer
External Timer/ System Timing Counter clock components Serial I/O Reset ROM Prarallel I/O Interrupts RAM CPU Power Fig3-5A-3. Principal features of a microcomputer
Read only memory (ROM).ROM is usually for the permanent, non-volatile storage of an applications program .Many
microcomputers and microcontrollers are intended for high-volume applications and hence the economical manufacture of the devices requires that the contents of the program memory be committed permanently during the manufacture of chips . Clearly, this implies a rigorous approach to ROM code development since changes cannot be made after manufacture .This development process may involve emulation using a sophisticated development system with a hardware emulation capability as well as the use of powerful software tools.
Some manufacturers provide additional ROM options by
including in their range devices with (or intended for use with) user programmable memory. The simplest of these is usually device which can operate in a microprocessor mode by using some of the input/output lines as an address and data bus for accessing external memory. This type of device can behave functionally as the single chip microcomputer from which it is derived albeit with restricted I/O and a modified external circuit. The use of these ROMless devices is common even in production circuits where the volume does not justify the development costs of custom on-chip ROM[2];there can still be a significant saving in I/O and other chips compared to a conventional microprocessor based circuit. More exact
replacement for ROM devices can be obtained in the form of variants
with 'piggy-back' EPROM(Erasable programmable ROM )sockets or devices with EPROM instead of ROM 。These devices are naturally more expensive than equivalent ROM device, but do provide complete circuit equivalents. EPROM based devices are also extremely attractive for low-volume applications where they provide the advantages of a single-chip device, in terms of on-chip I/O, etc. ,with the convenience of flexible user programmability.
Random access memory (RAM).RAM is for the storage of working
variables and data used during program execution. The size of this memory varies with device type but it has the same characteristic width (4,8,16 bits etc.) as the processor ,Special function registers, such as stack pointer or timer register are often logically incorporated into the RAM area. It is also common in Harard type microcomputers to treat the RAM area as a collection of register; it is unnecessary to make distinction between RAM and processor register as is done in the case of a microprocessor system since RAM and registers are not usually physically separated in a microcomputer .
Central processing unit (CPU).The CPU is much like that of
any microprocessor. Many applications of microcomputers and
microcontrollers involve the handling of binary-coded decimal (BCD) data (for numerical displays, for example) ,hence it is common to find that the CPU is well adapted to handling this type of data .It is also common to find good facilities for testing, setting and resetting individual bits of memory or I/O since many controller applications involve the turning on and off of single output lines or the reading the single line. These lines are readily interfaced to two-state devices such as switches, thermostats, solid-state relays, valves, motor, etc.
Parallel input/output. Parallel input and output schemes vary
somewhat in different microcomputer; in most a mechanism is
provided to at least allow some flexibility of choosing which pins are outputs and which are inputs. This may apply to all or some of the ports. Some I/O lines are suitable for direct interfacing to, for example, fluorescent displays, or can provide sufficient
current to make interfacing other components straightforward. Some devices allow an I/O port to be configured as a system bus to allow off-chip memory and I/O expansion. This facility is potentially useful as a product range develops, since successive enhancements may become too big for on-chip memory and it is undesirable not to build on the existing software base.