What are Digital Computers?
The digital computer is a digital system that performs various computational tasks. The word digital implies that the information in the computer is represented by variables that take a limited number of discrete values. These values are processed internally by components that can maintain a limited number of discrete states.
The decimal digits 0, 1, 2, ..., 9, for example, provide 10 discrete values. The first electronic digital computer, developed in the late 1940s, was used primarily for numerical computations and the discrete elements were the digits. From this application the term digital computer emerged.
In practice, digital computers function more reliably if only two states are used. Because of the physical restriction of components, and because human logic tends to be binary (i.e. true or false, yes or no statements), digital components that are constrained to take discrete values are further constrained to take only two values and are said to be binary.
Digital computers use the binary number system, which has two digits:
1. A binary digit is called a bit. Information is represented in digital computers in groups of bits. By using various coding techniques, groups of bits can be made to represent not only binary numbers but also other discrete symbols, such as decimal digits or letters of the alphabet.
Digital Computers: Computer Organization
Computer Organization is concerned with the way the hardware components operate and the way they are connected together to form the computer system.
The various components are assumed to be in place and the task is to investigate the organizational structure to verify that the computer parts operate as intended.
Digital Computers: Computer Design
Computer Design is concerned with the hardware design of the computer. Once the computer specifications are formulated, it is the task of the designer to develop hardware for the system.
Computer design is concerned with the determination of what hardware should be used and how the parts should be connected. This aspect of computer hardware is sometimes referred to as computer implementation.
Digital Computers: Computer Architecture
Computer Architecture is concerned with the structure and behaviour of the computer as seen by the user.
It includes the information, formats, the instruction set, and techniques for addressing memory. The architectural design of a computer system is concerned with the specifications of the various functional modules, such as processors and memories, and structuring them together into a computer system.
Two basic types of computer architecture are:
- von Neumann architecture
- Harvard architecture
1. von Neumann architecture
The von Neumann architecture describes a general framework, or structure, that a computer's hardware, programming, and data should follow. Although other structures for computing have been devised and implemented, the vast majority of computers in use today operate according to the von Neumann architecture.
von Neumann envisioned the structure of a computer system as being composed of the following components:
- ALU: The Arithmetic-Logic unit that performs the computer's computational and logical functions.
- RAM: Memory; more specifically, the computer's main, or fast, memory, also known as Random Access Memory(RAM).
- Control Unit: This is a component that directs other components of the computer to perform certain actions, such as directing the fetching of data or instructions from memory to be processed by the ALU; and
- Man-machine interfaces; i.e. input and output devices, such as keyboard for input and display monitor for output.
Block diagram of a Digital Computer
An example of computer architecture base on the von Neumann architecture is the desktop personal computer.
2. Harvard architecture
The Harvard architecture uses physically separate storage and signal pathways for their instructions and data. The term originated from the Harvard Mark I and the data in relay latches (23- digits wide).
In a computer with Harvard architecture, the CPU can read both an instruction and data from memory at the same time, leading to double the memory bandwidth.
Microcontroller(single-chip microcomputer)-based computer systems and DSP(Digital Signal Processor)-based computer systems are examples of Harvard architecture.