Professional Documents
Culture Documents
Lecture 2
Integrated circuit (IC) packages are classified according to the way they are mounted on printed circuit boards
(PCBs) as either through-hole mounted or surface mounted. The through-hole type packages have pins (leads)
that are inserted through holes in the PCB and can be soldered to conductors on the opposite side. The most
common type of through-hole package is the dual in-line package (DIP).
A microprocessor forms the CPU of a computer system. A microprocessor is a single integrated circuit that consists of several units, each
designed for a specific job. The specific units, their design and organization, are called the architecture.
When a program is being run, the processor goes through a repetitive cycle consisting of two fundamental phases. One phase is called fetch
and the other is called execute. During the fetch phase, an instruction is read from the memory and decoded by the instruction decoder.
During the execute phase, the processor carries out the sequence of operations called for by the instruction. As soon as one instruction has
been executed, the processor returns to the fetch phase to get the next instruction from the memory.
ALU
This part of the processor contains the logic to perform arithmetic and logic operations.
Memory Hierarchy
Memory is a place in which the programs that are executing currently are stored temporarily. A program consists of instructions and data.
The CPU reads instructions from memory and calculates on the data. As we have mentioned before, the speed of the memory is much
smaller than that of the CPU. Therefore, high-speed caches are inserted in between the CPU and memory. There are three levels of caches
(L1, L2, and L3). An on-chip cache is one that is fabricated in the CPU chip; an off-chip cache is one that is implemented with the
dedicated SRAM chip(s) outside the CPU. Commonly, the L1 on-chip cache consists of separated instruction cache and data cache, but
the L2 on-chip cache is shared by instructions and data.
Input/Output Interfaces and Buses
In a computer system, CPU communicates with I/O devices via I/O interfaces. There are multiple I/O devices in a computer system,
and the multiple I/O interfaces are connected by a common bus.
The Processor and the Memory
The processor is connected to a memory with the address bus and data bus. Also, there are certain control signals that must be sent between the
processor and the memory, such as the read and write controls. The address bus is unidirectional so the address bits go only one way, from
the processor to the memory. The data bus is bidirectional, so data bits are transferred between the processor and memory in either direction.
The Read Operation The Write Operation
Instruction Set Architecture
Also called architecture. An abstract interface between the hardware and the lowest-level software that encompasses all the
information necessary to write a machine language program that will run correctly, including instructions, registers, memory access,
I/O, and so on.
C code
Assembly code
Von-Neumann architecture shares a single common bus for fetching both instructions and data. Microprocessors/controllers based on
the Harvard architecture will have separate data bus and instruction bus. This allows the data transfer and program fetching to occur
simultaneously on both buses.
Embedded Systems
An embedded system is an electronic/electro-mechanical system designed to perform a specific function and is a combination of both
hardware and firmware (software). Every embedded system is unique, and the hardware as well as the firmware is highly specialized
to the application domain. Embedded systems are becoming an inevitable part of any product or equipment in all fields including
household appliances, telecommunications, medical equipment, industrial control, consumer products, etc.
Hardware Components
The hardware components of an embedded system include all the electronics necessary for the system to perform the function it was
designed for. Therefore, the specific structure of a particular system could substantially differ from another, based on the application itself.
Despite these dissimilarities, three core hardware components are essential in an embedded system: The Central Processing Unit (CPU),
the system memory, and a set of input-output ports.
A number of other supporting and I/O devices needed for system functionality might be present, depending on the application. These
include:
❑ Communication ports for serial and/or parallel information exchanges with other devices or systems.
❑ User interfaces to interact with humans.
❑ Sensors and electromechanical actuators to interact with the environment external to the system.
❑ Data converters (Analog-to-digital (ADC) and/or Digital-to-Analog (DAC)) to allow interaction with analog sensors and
actuators.
❑ Diagnostics and redundant components to verify and provide robust, reliable system operation.
❑ System support components to provide essential services that allow the system to operate.
❑ Other sub-systems to enable functionality, that might include Application Specific Integrated Circuits (ASIC), Field
Programmable Gate Arrays (FPGA), and other dedicated units, according to the complexity of the application.
Software Components
The software components of an embedded system include all the programs necessary to give functionality to the system hardware.
These programs, frequently referred to as the system firmware, are stored in some sort of non-volatile memory.