Saturday 3 September 2011

Enhancing the capability of a microprocessor ?

The computing capability of a microprocessor can be enhanced in many different
ways: 
By increasing the clock frequency
By increasing the word-width
By having a more effective caching algorithm and the right cache size
By adding more functional units (e.g. ALU’s, FPU’s, Vector/SIMD units, etc.)
Improving the architecture.

kHz, MHz, GHz (Clock Frequency)

4004 worked at a clock frequency of 108kHz
The latest processors have clock freqs. in GHz
Out of 2 microprocessors  having similar designs, one with higher clock frequency will
be more powerful   
Same is not true for 2 microprocessors  of dissimilar designs.  Example:  Out of
PowerPC & Pentium 4 microprocessors working at the same freq, the former performs
better due to superior design.  Same for the Athlon microprocessor when compared with
a Pentium.

4-, 8-, 16-, 32-, 64-bit (Word Length)

The 4004 dealt with data in chunks of 4-bits at a time
Pentium 4 deals with data in chunks (words) of 32-bit length
The new Itanium processor deals with 64-bit chunks (words) at a time

Moore’s Law

Moore's law(1965) is an empirical observation stating in effect that at our rate of
technological development and advances in the semiconductor industry the complexity
of integrated circuits doubles every 18 months. His original empirical observation was
that the number of components on semiconductor chips with lowest per-component
cost doubles roughly every 12 months, and he conjectured that the trend will stay for at
least 10 years. In 1975, Moore revised his estimate for the expected doubling time,
arguing that it was slowing down to about two years

Why Intel came up with the idea?

A Japanese calculator manufacturer, Busicom wanted Intel to develop 16 separate IC’s
for a line of new calculators. Intel, at that point in time known only as a memory
manufacturer, was quite small and did not have the resources to do all 16 chips. Then
Ted Hoff came up with the idea of doing all 16 on a single chip. Later, Intel realized that
the 4004 could have other uses as well.  
Currently Intel came with – Intel Pentium 4 (2.2GHz).
It was introduced in December 2001. It got 55 million transistors. 32-bit word size.
Within the processor it has 2 ALU’s each working at 4.4GHz. It costs around $600.

The 1 st microprocessor : Intel 4004

The first microprocessor was the Intel 4004,  introduced in 1971. The 4004 was not very
powerful all it could do was add and subtract, and it could only do that 4 bits at a time. But it
was amazing that everything was on one chip. Prior to the 4004, engineers built computers
either from collections of chips or from discrete components (transistors wired one at a
time). The 4004 powered one of the first portable electronic calculators. It was as powerful
as ENIAC which had 18000 tubes and occupied a large room. It cost less then $100. Its
targeted use was of calculation. It consisted of 2250 transistors and 16pins. Speed was 108
kHz, 60,000 ops/sec.


Instruction Set

The set of machine instructions that a microprocessor recognizes and can execute – the
only language microprocessor knows
An instruction set includes low-level, a single step-at-a-time instructions, such as add,
subtract, multiply, and divide
 Each microprocessor family has its unique instruction set
Bigger instruction-sets mean more complex chips (higher costs, reduced efficiency), but
shorter programs
An  instruction set, or instruction set architecture (ISA), is a specification detailing the
commands that a computer's CPU should be able to understand and execute, or the set
of all commands implemented by a particular CPU design. The term describes the
aspects of a computer or microprocessor typically visible to a programmer, including the
native datatypes, instructions, registers, memory architecture, interrupt and fault system,
and external I/O (if any). "Instruction set architecture" is sometimes used to distinguish
this set of characteristics from the Micro-Architecture, which are the elements and
techniques used to implement the ISA, e.g. microcode, pipelining, cache systems, etc.
Bigger instruction-sets mean more complex chips (higher costs, reduced efficiency), but
shorter programs. Each microprocessor family has its unique instruction set. Following
are the few ISA;
MIPS  
Motorola 6800  
ARM  
PowerPC  
x86 (Pentium)  
ALGOL Object Code  
SPARC 

Control Unit

A  control unit is the part of a CPU or other device that directs its operation. The
outputs of the unit control the activity of the rest of the device. A control unit can be
thought of as a finite state machine. It is called the brain of computer microprcessor. It
manages whole process of the microprocessor. For it identifes which data is sent to the
ALU or memory etc.
At one time control units for CPUs were ad-hoc logic, and they were difficult to design.
Now they are often implemented as a microprogram that is stored in a control store. 

Registers

A  register is a device for storing data. It is a small amount of very fast computer
memory used to speed the execution of computer programs by providing quick access to
commonly used values. These registers are the top of the memory hierarchy, and are the
fastest way for the system to manipulate data. It is common to measure registers by the
number of bits it can hold, for example, an "8-bit register" or "32-bit register". Registers
are now usually implemented as an array of SRAMs, but they have also been
implemented using individual flip flops, high speed core memory, thin film memory, and
other ways in various machines.
There are several other classes of registers:
Data registers are used to store integer numbers. 
Address registers hold memory addresses and are used to access memory. 
General Purpose registers can store both data and addresses. 
Floating Point registers are used to store floating point numbers. 
Constant registers hold read-only values (e.g zero or one). 
Vector registers hold data for Single Instruction Multiple Data (SIMD) instructions. 
Special Purpose registers which store internal CPU data like the stack pointer or
processor status words. 
The ALU & FPU store intermediate and final results from their calculations in these
registers. Then the processed data goes back to the data cache and then to main memory
from these registers.

Floating-Point Unit (FPU)

A  floating point unit (FPU) is a part of a CPU specially designed to carry out
operations on floating point numbers. Typical operations are floating point arithmetic
(such as addition and multiplication), but some systems may be capable of performing
exponential or trigonometric calculations as well (such as square roots or cosines).
Not all CPUs have a dedicated FPU. In the absence of an FPU, the CPU may use a
microcode program to emulate an FPUs function using an arithmetic and logical unit
(ALU), which saves the added hardware cost of an FPU but is significantly slower.
In some computer architectures, floating point operations are handled completely
separate from integer operations, with dedicated floating point registers and independent
clocking schemes. Floating point addition and multiplication operations are typically
pipelined, but more complicated operations, like division, may not be, and some systems
may even have a dedicated floating point divider circuit.

Arithmetic & Logic Unit (ALU)

An arithmetic and logical unit (ALU) also known as “Integer Unit” is one of the core
components of all central processing units. It is capable of calculating the results of a
wide variety of common computations. The most common available operations are the
integer arithmetic operations of addition, subtraction, and multiplication, the bitwise
logic operations of AND, NOT, OR, and XOR, and various shift operations. 
The ALU takes as inputs the data to be operated on and a code from the control unit
indicating which operation to perform, and for output provides the result of the
computation. In some designs it may also take as input and output a set of condition
codes, which can be used to indicate cases such as carry-in or carry-out, overflow, or
other statuses.
The new breed of popular microprocessors have not one but two almost identical ALU’s
that can do calculations simultaneously, doubling the capability.

Instruction Decoder

The instruction decoder of a processor is a combinatorial circuit sometimes in the form of a
read-only memory, sometimes in the form of an ordinary combinatorial circuit. Its
purpose is to translate an instruction code into the address in the micro memory where
the micro code for the instruction starts. 
A decoder is a device which is the reverse, undoing the encoding so that the original
information can be retrieved. The same method used to encode is usually just reversed in
order to decode.This unit receives the programming instructions and decodes them into
a form that is understandable by the processing units, i.e. The ALU or FPU Then, it
passes on the decoded instruction to the ALU or FPUs as desired.

Bus Interface Unit

The bus interface unit is the part of the processor that interfaces with the rest of the PC.
Its name comes from the fact that it deals with moving information over the processor
data bus, the primary conduit for the transfer of information to and from the CPU. The
bus interface unit is responsible for responding to all signals that go to the processor,
and generating all signals that go from the processor to other parts of the system.
It receives instructions & data from main memory to be processed and operations. After
the operations are processed it then sends back the information (processed data) to the
cache. It also receives the processed data to send it to the main memory.

On-Chip Cache Memory (2)

L2, cache memory, which is on a separate chip from the microprocessor but faster to
access than regular RAM.
It is the small size and proximity to the microprocessor makes access times short,
resulting in a boost in performance. Microprocessors predict what data will be required
for future calculations and it pre-fetches that data and places it in the cache so that it is
available immediately when the need arises.

On-Chip Cache Memory (1)

That small amount of memory located on the same chip as the microprocessor is called
On-Chip Cache Memory.
The microprocessor stores a copy of frequently used data and instructions in its cache
memory. When the microprocessor desires to look at a piece of data, it checks in the
cache first.  If it is not there, only then the microprocessor asks for the same from the
main memory.

Cache

A cache is a collection of duplicate data, where the original data is expensive to fetch or
compute (usually in terms of access time) relative to the cache. Future accesses to the
data can be made by accessing the cached copy rather than refetching or recomputing
the original data, so that the perceived average access time is lower. Caches may mark the
cached data as 'stale' when the original data is changed, but this is not always the case.

Solution to the Bottleneck Problem

In order to eliminate the solution it was suggested to make the main memory faster. But
that evolved a problem that the 1-ns memory is extremely expensive as compared the
currently popular 100-ns memory.
Finally it was decided that in addition to the relatively slow main memory, put a small
amount of ultra-fast RAM right next to the microprocessor on the same chip and make
sure that frequently used data and instructions resides in that ultra-fast memory
It increases the performance. It supports better over performance due to fast access to
frequently  used data and instructions.

The Main Memory Bottleneck

Modern super-fast microprocessors can process a huge amount of data in a short
duration. They need data to be processed at the same speed. Other wise they have to sit
idle and wait for the input/data, because speed of input is rather small then processing
of data. They require quick access to data to maximize their performance. If they don’t
receive the data that they require, they literally stop and wait, this results in reduced
performance and wasted power.
Current microprocessors can process an instruction in about ns (nanosecond).  Time
required for fetching data from main memory (RAM) is of the order of 100 ns

Micro-controllers

A microcontroller is a microprocessor optimised to be used to control electronic
equipment. Microcontrollers represent the vast majority of all computer chips sold, over
50% are "simple" controllers, and another 20% are more specialized decipline
processors. While you may have one or two  general-purpose microprocessors in your
house (you're using one to read this), you likely have somewhere between one and two
dozen microcontrollers. They can be found in almost any electrical device, washing
machines, microwave ovens, telephones etc.
A microcontroller includes CPU, memory for the program (ROM), memory for data
(RAM), I/O lines to communicate with peripherals and complementary resources, all
this in a closed chip. A microcontroller differs from a standalone CPU, because the first
one generally is quite easy to make into a working computer, with a minimum of external
support chips. The idea is that the microcontroller will be placed in the device to control,
hooked up to power and any information it needs, and that's that.

Microprocessor system

Microprocessors are powerful pieces of hardware, but not much useful on their own.  
They do not have the sense of their own.  Like the human sample it needs some
instructions inputs and outputs to process some task. As per instruction given to the
microprocessor.
A microprocessor system is microprocessor plus all the components it requires to do a
certain task.
Shortly, a microprocessor needs help of some components to make up the task to fulfill.
These components are input, output, storage, and memory. All these components and
microprocessor make up a microprocessor system.
Personal Computer is an example of microprocessor System. Another example is the
microcontroller.

And are made of the following materials

Silicon - semiconductor
Copper - conductor
Silicon Dioxide - insulator

Capacitors

A capacitor (historically known as a "condenser") is a device that stores energy in an
electric field, by accumulating an internal imbalance of electric charge. An ideal capacitor
can store electronic energy when disconnected from its charging circuit, so it can be used
like a fast battery. In AC or signal circuits  it induces a phase difference of 90 degrees,
current leading potential.
They are connected in parallel with the power circuits of most electronic devices and
larger systems (such as factories) to shunt  away and conceal current fluctuations from
the primary power source to provide a "clean" power supply for signal or control
circuits. The effect of such capacitors can be thought of in two different ways. One way
of thinking about it is that the capacitors act as a local reserve for the DC power source,
to smooth out fluctuations by charging and discharging each cycle. The other way to
think about it is that the capacitor and resistance of the power supply circuitry acts as a
filter and removes high frequencies, leaving only DC.
Wires

Resistors

A resistor is an electrical component designed to have an electrical resistance that is
independent of the current flowing through it. The common type of resistor is also
designed to be independent of temperature and other factors. Resistors may be fixed or
variable. Variable resistors are also called potentiometers or rheostats  
A few resistor types
Some resistors are long and thin, with the actual resisting material in the centre, and a
conducting metal leg on each end. This is called an axial package.
Resistors used in computers and other devices are typically much smaller, often in surface-
mount (Surface-mount technology) packages without leads.
Larger power resistors come in more sturdy packages designed to dissipate heat
efficiently, but they are all basically the same structure. Resistors are used as part of
electrical networks and incorporated into microelectronic semiconductor devices. The
critical measurement of a resistor is its  resistance, which serves as a ratio of voltage to
current and is measured in ohms, an SI unit. Any physical object is a kind of resistor.
Most metals are conductors, and have low resistance to the flow of electricity. The
human body, a piece of plastic, or even a vacuum has a resistance that can be measured.
Materials that have very high resistance are called insulators.

Diodes

A  diode functions as the electronic version of a one-way valve. By restricting the
direction of movement of charge carriers, it  allows an electric current to flow in one
direction, but blocks it in the opposite direction.
A diode's current-voltage, or I-V, characteristic can be approximated by two regions of
operation. Below a certain difference in potential between the two leads, the diode can
be thought of as an open (non-conductive) circuit. As the potential difference is
increased, at some stage the diode will become conductive and allow current to flow, at
which point it can be thought of as a connection with zero (or at least very low)
resistance. In a typical semiconductor p-n diode, conventional current can flow from the
p-doped side to the n-doped side, but not in the opposite direction. When the diode is
reverse-biased, the charge carriers are pulled away from the center of the device, creating
a depletion region. More specifically, the transfer function is logarithmic, but so sharp
that it looks like a corner.

Devices

Transistors
The  transistor is a solid state semiconductor device used for amplification and
switching, and has three terminals. A small  current or voltage applied to one terminal
controls the current through the other two, hence the term  transistor; a voltage- or
current-controlled resistor. It is the key component in all modern electronics. In digital
circuits, transistors are used as very fast electrical switches, and arrangements of
transistors can function as logic gates, RAM-type memory and other devices. In analog
circuits, transistors are essentially used as amplifiers.

Integrated Circuits

A  chip is also called an  (integrated circuit (IC) (aka  microchip or just  chip). It is a
microelectronic semiconductor device consisting of many interconnected transistors and
other components.Generally it is a small, thin piece of silicon onto which the transistors
making up the microprocessor have been etched.
A chip might be as large as an inch on a side and can contain tens of millions of
transistors. Simpler processors might consist of a few thousand transistors etched onto a
chip just a few millimeters square. Integrated circuits can be classified into analog, digital
and mixed signal (both analog and digital on  the same chip). Digital integrated circuits
can contain anything from one to millions of logic gates, flip-flops, multiplexers, etc. in a
few square millimeters. The small size of these circuits allows high speed, low power
dissipation, and reduced manufacturing cost compared with board-level integration.
The growth of complexity of integrated circuits follows a trend called "Moore's Law", it
states that the number of transistors in an integrated circuit doubles every two years.
Integrated circuits can be classified into analog, digital and mixed signal (both analog
and digital on the same chip). Digital integrated circuits can contain anything from one
to millions of logic gates, flip-flops, multiplexers, etc. in a few square millimeters. The
small size of these circuits allows high speed, low power dissipation, and reduced
manufacturing cost compared with board-level integration.

Microprocessor

A microprocessor (abbreviated as µP or uP) is a computer processor on a microchip. It's
sometimes called a  logic chip. A microprocessor is designed to perform arithmetic and
logic operations that make use of  small number-holding areas called  registers. Typical
microprocessor operations include adding,  subtracting, comparing two numbers, and
fetching numbers from one area to another. These operations are the result of a set of
instructions that are part of the microprocessor design. When the computer is turned on,
the microprocessor is designed to get the first instruction from the basic input/output
system (BIOS) that comes with the computer as part of its memory. After that, either the
BIOS, or the operating system that BIOS loads into computer memory, or an
application program is "driving" the microprocessor, giving it instructions to perform.  
The number of transistors available has a huge effect on the performance of a processor.
As seen earlier, a typical instruction in a processor like an 8088 took 15 clock cycles to
execute. Because of the design of the multiplier, it took approximately 80 cycles just to
do one 16-bit multiplication on the 8088. With more transistors, much more powerful
multipliers capable of single-cycle speeds become possible.  
A microprocessor is made from miniaturized transistors and other circuit elements on a
single semiconductor integrated circuit (IC) . These are made up oof semiconductor and  
silicon.

The Processor Module

The slot on the motherboard
The housing
Fan
Heat sink
Pins (256?), Transistors (10 million?)

Inside of the CPU

Power supply/fan & connectors
Motherboard
Bus
Edge connectors
Ports
Video card
Modem
Network card
Sound card
ROM
RAM
Slots
DIMM’s

PC Parts

Monitor 
Keyboard
Mouse 
Speaker/headphone
Microphone
CPU
Front buttons
Backside ports, fan, slots, cables
 

Modem

Modem is output as well as input device at the same time. It receives the data (analog
signal) coming through telephone line, converts them to digital signals and sends them to
computer to which it is attached. It also receives the data from computer and changes it
to analog signals.

Output Devices

Printer
Plotter 
Speakers
Monitor

Classifying Memory/Storage

Electronic (RAM, ROM), magnetic (HD, FD, Tape), optical (CD, DVD)
Volatile (RAM),   non-volatile (HD)
Direct access (RAM, HD), serial access (Tape)
Read/write (HD, RAM),   read-only (CD)

Memory/Storage

RAM  
RAM (random access memory) is the place in a computer where the operating system,
application programs, and data in current use are kept so that they can be quickly
reached by the computer's processor. RAM is much faster to read from and write to than
the other kinds of storage in a computer, the hard disk, floppy disk, and CD-ROM.
However, the data in RAM stays there only as long as your computer is running. When
you turn the computer off, RAM loses its data. When you turn your computer on again,
your operating system and other files are once again loaded into RAM, usually from your
hard disk.
Punch cards
A card on which data can be recorded in the form of punched holes.
 ROM
ROM is "built-in" computer memory containing data that normally can only be read, not
written to. ROM contains the programming that allows your computer to be "booted
up" or regenerated each time you turn it on. Unlike a computer's random access memory
(RAM), the data in ROM is not lost when the computer power is turned off.  
The ROM is sustained by a small long-life battery in your computer.
Hard disk
 Hard disk is a computer storage device which saves and retrieves the data when
required. Its capacity is much greater than the computer memory (RAM, ROM). Data on
hard disk is stored and retrieved from electromagnetically charged surface. Today we can save huge amount of data on a single hard disk. Now hard disks can
contain several billion bytes.  
Floppy disk
 A diskette is a random access, removable data storage medium that can be used with
personal computers. The term usually refers to the magnetic medium housed in a rigid
plastic cartridge measuring 3.5 inches square and about 2 millimeters thick. Also called a
"3.5-inch diskette," it can store up to 1.44 megabytes (MB) of data.
Tape
In computers, tape is an external storage medium, usually both readable and writable,
can store data in the form of electromagnetic charges that can be read and also erased. A
tape drive is the device that positions, writes from, and reads to the tape.
 CD
A compact disc [sometimes spelled  disk] (CD) is a small, portable, round medium for
electronically recording, storing, and playing back audio, video, text, and other
information in digital form.  
DVD
DVD (digital versatile disc) is an optical disc technology that is expected to rapidly
replace the CD-ROM disc (as well as the audio compact disc) over the next few years.
The digital versatile disc (DVD) holds 4.7 gigabyte of information on one of its two
sides, or enough for a 133-minute movie

Processor

Pentium
Celeron
Athlon
PowerPC
StrongARM (PDA)
Crusoe (Laptops)
SPARC (Workstations

Many Types of Ports

Parallel
An interface on a computer that supports transmission of multiple bits at the same time;
almost exclusively used for connecting a printer. On IBM or compatible computers, the
parallel port uses a 25-pin connector.
Serial
It is a general-purpose personal computer communications port in which 1 bit of
information is transferred at a time. In the past, most digital cameras were connected to
a computer's serial port in order to transfer images to the computer. Recently, however,
the serial port is being replaced by the much faster USB port on digital cameras as well as
computers.
SCSI
A port that's faster than the serial and parallel ports but slower and harder to configure
than the newer USB port. Also know as the Small Computer System Interface.
A high-speed connection that enables devices, such as hard-disk drives and network
adapters, to be attached to a computer.
USB
USB (Universal Serial Bus) is a plug-and-play hardware interface for peripherals such as
the keyboard, mouse, joystick, scanner, printer and modem. USB has a maximum
bandwidth of 12 Mbits/sec and up to 127 devices can be attached. With USB, a new
device can be added to your computer without having to add an adapter card. It typically
is located at the back of the PC
Firewire
FireWire is simply a really fast port that lets you connect computer peripherals and
consumer electronics to your computer without the need to restart. It is a simple
common plug-in serial connector on the back of your computer.
It has the ability to chain devices together in a number of different ways without
terminators for example, simply join 2 computers with a FireWire cable for instant high-
speed networking.

What is Port?

On computer and telecommunication devices, a port (noun) is generally a specific place
for being physically connected to some other device, usually with a socket and plug of
some kind. Typically, a personal computer is provided with one or more serial ports and
usually one parallel port.

Input Devices

Mouse
A mouse is a small device that a computer user pushes across a desk surface in order to
point to a place on a display screen and to select one or more actions to take from that
position. The mouse first became a widely-used computer tool when Apple Computer
made it a standard part of the Apple Macintosh. Today, the mouse is an integral part of
the graphical user interface (GUI) of any personal computer. The mouse apparently got
its name by being about the same size and color as a toy mouse.
Keyboard
On most computers, a keyboard is the primary text input device. A keyboard on a
computer is almost identical to a keyboard  on a typewriter. Computer keyboards will
typically have extra keys, however. Some of these keys (common examples include
Control, Alt, and Meta) are meant to be used in conjunction with other keys just like
shift on a regular typewriter. Other keys (common examples include Insert, Delete,
Home, End, Help, function keys, etc.) are meant to be used independently and often
perform editing tasks.
Joystick
In computers, a joystick is a cursor control device used in computer games. The joystick,
which got its name from the control stick used by a pilot to control the ailerons and
elevators of an airplane, is a hand-held lever that pivots on one end and transmits its
coordinates to a computer. It often has one or more push-buttons, called switches,
whose position can also be read by the computer.
Digital Camera
A digital camera records and stores photographic images in digital form that can be fed
to a computer as the impressions are recorded or stored in the camera for later loading
into a computer or printer. Currently, Kodak, Canon, and several other companies make
digital cameras.
Microphone
A device that converts sound waves into audio signals. These could be used for sound
recording as well as voice chatting through internet.
Scanner
A scanner is a device that captures images from photographic prints, posters, magazine
pages, and similar sources for computer editing and display. Scanners come in hand-held,
feed-in, and flatbed types and for scanning black-and-white only, or color. Very high
resolution scanners are used for scanning for high-resolution printing, but lower
resolution scanners are adequate for capturing images for computer display. Scanners
usually come with software, such as Adobe's Photoshop product, that lets you resize and
otherwise modify a captured image 

All computers have the following essential hardware components

Input
The devices used to give the computer data or commands are called Input devices.
Includes keyboard, mouse, scanner, etc
Processor
A processor is the logic circuitry that responds to and processes the basic instructions
that drive a computer. 
The term processor has generally replaced the term central processing unit (CPU). The
processor in a personal computer or embedded in small devices is often called a
microprocessor. 
Short for microprocessor, the central processing unit in a computer. The processor is the
logic of a computer and functions comparably to a human central nervous system,
directing signals from one component to another and enabling everything to happen
Memory 
Memory is the electronic holding place for instructions and data that your computer's
microprocessor can reach quickly. When your computer is in normal operation, its
memory usually contains the main parts of the operating system and some or all of the
application programs and related data that  are being used. Memory is often used as a
shorter synonym for random access memory (RAM). This kind of memory is located on
one or more microchips that are physically close to the microprocessor in your
computer. Most desktop and notebook computers sold today include at least 16
megabytes of RAM, and are upgradeable to include more. The more RAM you have, the
less frequently the computer has to access instructions and data from the more slowly
accessed hard disk form of storage.
Memory is also called primary or main memory.
Storage
Computer storage is the holding of data in an electromagnetic form for access by a
computer processor. It is also called secondary storage. In secondary storage data resides
on hard disks, tapes, and other external devices.
Primary storage is much faster to access than secondary storage because of the proximity
of the storage to the processor or because of the nature of the storage devices. On the
other hand, secondary storage can hold much more data than primary storage.
Output
The devices to which the computer writes data are called Output devices. Often converts
the data into a human readable form. Monitor and printer are output devices.

At the highest level, two things are required for computing

 Hardware
 Computer equipment such as a CPU, disk drives, CRT, or printer
 Software
A computer program, which provides the  instructions which enable the computer
hardware to work

Ranking w.r.t. installed number

PC’s
PDA’s
Workstations
Servers
Wearable (picture is provided)
Mainframes
Supercomputers

Portables

Portable computer is a personal computer that is designed to be easily transported and
relocated, but is larger and less convenient to transport than a notebook computer. The
earliest PCs designed for easy transport were called portables. As the size and weight of
most portables decreased, they became known as laptop computer and later as notebook
computer. Today, larger transportable computers continue to be called portable computers.
Most of these are special-purpose computers - for example, those for use in industrial
environments where they need to be moved about frequently.
 PDA (personal digital assistant) is a term for any small mobile hand-held device that
provides computing and information storage and retrieval capabilities for personal or
business use, often for keeping schedule calendars and address book information handy.
The term handheld is a synonym. Many people use the name of one of the popular PDA
products as a generic term. These include Hewlett-Packard's Palmtop and 3Com's
PalmPilot.
Most PDAs have a small keyboard. Some PDAs have an electronically sensitive pad on
which handwriting can be received. Apple's Newton, which has been withdrawn from
the market, was the first widely-sold PDA that accepted handwriting. Typical uses
include schedule and address book storage  and retrieval and note-entering. However,
many applications have been written for PDAs. Increasingly, PDAs are combined with
telephones and paging systems.
Some PDAs offer a variation of the Microsoft Windows operating system called
Windows CE. Other products have their own or another operating system.  

Desktops

These are also called microcomputers. Low-end desktops are called PC’s and high-end
ones “Workstations”. These are generally consisting of a single processor only, some
times 2, along with MB’s of memory, and GB’s of storage. PC’s are used for running
productivity applications, Web surfing, messaging. Workstations are used for more
demanding tasks like low-end 3-D simulations and other engineering & scientific apps.
These are not as reliable and fault-tolerant as servers. Workstations cost a few thousand
dollars; PC around a $1000. 

Servers / Minicomputers

A midsized computer. In size and power, minicomputers lie between  workstations and
mainframes. In the past decade, the distinction  between large minicomputers and small
mainframes has blurred, however, as has the distinction between small minicomputers
and workstations. But in general, a minicomputer is a multiprocessing system capable of
supporting from 4 to about 200 users simultaneously.

Mainframe Computers

 A very large and expensive computer capable of supporting hundreds, or even
thousands, of users simultaneously. In the hierarchy that starts with a simple
microprocessor (in watches, for example) at the bottom and moves to supercomputers at
the top, mainframes are just below supercomputers. In some ways, mainframes are more
powerful than supercomputers because they support more simultaneous programs. But
supercomputers can execute a single program faster than a mainframe. The distinction
between small mainframes and minicomputers is vague (not clearly expressed),
depending really on how the manufacturer wants to market its machines.

Computer Types

Supercomputers 
A supercomputer is a computer that performs at or near the currently highest
operational rate for computers. A supercomputer is typically used for scientific and
engineering applications that must handle very large databases or do a great amount of
computation (or both). At any given time,  there are usually a few well-publicized
supercomputers that operate at the very latest and always incredible speeds.
Perhaps the best-known builder of supercomputers has been Cray Research, now a part
of Silicon Graphics. Some supercomputers are at "supercomputer center," usually
university research centers, some of which, in the United States, are interconnected on
an Internet backbone (A backbone is a larger transmission line that carries data gathered
from smaller lines that interconnect with it) known as vBNS or NSFNet.
At the high end of supercomputing are computers like IBM's "Blue Pacific," announced
on October 29, 1998. Built in partnership with Lawrence Livermore National Laboratory
in California, Blue Pacific is reported to operated at 3.9 teraflop (trillion floating point
operations per second), 15,000 times faster than the average personal computer. It
consists of 5,800 processors containing a total of 2.6 trillion bytes of memory and
interconnected with five miles of cable. 



Course developed and delivered

Course developed and delivered by: Dr. Altaf Hamid Khan

 Education:

PhD in Engineering - 1997

University of Warwick, Coventry, England
Thesis: Feedforward neural networks with constrained weights

    Commonwealth Scholarship - 1993-96

MS in Electrical Engineering - 1987

Moore School of Electrical Engineering,
University of Pennsylvania, Philadelphia, Pennsylvania
Thesis: MOCVD reactor for growing epitaxial germanium films

    Research Assistantship - 1985-87

BS in Electrical Engineering (Honors), Magna Cum Laude - 1985

Wilkes College, Wilkes-Barre, Pennsylvania
Project: Liquid crystal optical switch for use in fiber-optics

    Senior project published in IEEE 1985 Student Papers, IEEE Press, New York, NY
    Sigma Xi Research Recognition Award - 1985
    Nada Vujica Memorial International Student Award - 1985
    Electrical Engineering Achievement Award - 1985
    Walter S. Carpenter Merit Scholarship - 1982-85

 Professor’s Work Experience:

Professor - College of Computer Science & Engineering, Taibah University, Madinah, Saudi Arabia
February 2007 - Present

Professor of Computer Science, University of Management and Technology, Lahore
April 2003 - September 2005

Offices of Admissions, Alumni/Placements, Media/Advertisement/Promotion
May 2005 - August 2005
Developed a new positioning strategy and implemented it through a Web/print-media campaign that established UMT as a provider of high-quality education and resulted in significant improvements in the quality as well as the quantity of the student intake for Fall 2005 as compared with that for Fall 2004.

Founding Dean - School of Science and Technology
May 2003 - January 2005
played a key role in reorienting the university that resulted in a move away from a teaching-only model to a more conventional research/teaching one; a new school-based structure; a shift from a trimester-based academic calendar to a semester-based one. Managed all areas of the new school, including four academic departments, computer center, academic support unit, and alumni and placement affairs, following are the key events/activities that took place during the 1 3/4 year tenure:

    A new, unified undergraduate program offering majors in five areas was launched
    Graduate degrees that required both coursework and research were started
    New laboratories in Computer Networking, Chemistry, Garments, and Knitting/Weaving were developed
    A Garment Productivity Center came into operation
    Groundwork for a Center for Software Usability was completed for a February 2005 launch
    Collaborative research proposals with peer universities were submitted to funding agencies
    Cross-registration of graduate courses with NU-FAST starting in Spring 2005
    Four senior and six junior faculty members joined the school, one of which has since become the Pro-Rector of the University and the other the successor Dean of the School of Science and Technology.

All this resulted in an appreciable increase in the stature of the school as indicated by the significant increase in the quality of the incoming students at the undergraduate as well as graduate level.

Consultant - Virtual University, Lahore
December 2001 - June 2002

Developed the very first course that was offered by the Virtual University - a unique institution that offers four-year degrees throughout Pakistan and the Middle East through television and the Web, that course - rated the best by a wide margin during its first offering - is currently in its tenth run.

Visiting Lecturer in Computer Science - Lahore University of Management Sciences, Lahore
August 2001 - November 2001

Taught an introductory course in computing, the video recordings of that course were later used in an on-line version of the course - probably the first offering of its kind in Pakistan. Led the effort that reviewed, renewed and streamlined the undergraduate curriculum for Computer Science majors

 CTO - KASB & Company Limited, Lahore
June 2000 - June 2001

KASB - one of the largest corporate finance and equity players in Pakistan - is currently assisting over 500 institutional and individual clients from outside of Pakistan in making investments in the local markets. They have had almost a decade-long relationship with Merrill Lynch and have worked on many joint-ventures with them. I played a multifaceted role there that consisted mainly of launching and monitoring new IT-related businesses.

I was the founding CEO of KASB TechVentures (Private) Limited - an independent company that assisted entrepreneurs in transforming their innovative Internet ideas into world-class businesses by accelerating growth, reducing risk, and enhancing value. I also founded SenSync Media (Private) Limited - a multimedia development studio - to support the operations of TechVentures portfolio companies. Both companies folded in June 2001 due to adverse industry conditions.

 Founder - Innofy
May 2000

Conceived the idea and implementation strategy for a new offshore software development company-Innofy, wrote a compelling business plan and presented it to two of the most successful business groups in Pakistan and gained promises of US$4 million investment from both. Later, abandoned the Innofy project (immediately after receiving the second offer of investment!) for a more challenging opportunity - an IT business incubator

Senior Manager - Techlogix, Lahore
April 1999 - April 2000

Techlogix - then a 55-person software company with offices in Boston, San Jose, and Lahore - was focused on the rapid development of innovative eBiz solutions for American clients. I played a multifaceted role there:

Technical & Managerial Process Development
Restructured the roles and responsibilities for technical team members. Developed a corporate methodology for rapidly developing Internet applications, institutionalized various processes to improve the software development process and the management of the organization

Quality Function Development
Initiated, assembled, and managed the corporate quality function. Trained the team in developing and maintaining software quality assurance processes

Quality Management System
devised a long term plan, based on ISO9001, CMM, and People-CMM, for continuously improving the quality of products developed at Techlogix. Initiated the development of an Intranet application for developing and maintaining processes and collecting the data generated by those processes

Human Resource Development & Knowledge Management
managed the human resource development function. Instituted a performance management system and a process for supervisor evaluations established the corporate Intranet and organized a series of internal seminars to institutionalize the sharing of knowledge. Established a library

Relationship and Project Management
managed the development of eCommerce and other projects Whiteflash.com, a diamond and jewelry eBoutique; UniPakStocks.com, an online stock trading site; Techlogix.com, the corporate marketing site; QuikCash Plus, a web-based commerce application.

Technical Consulting for an Expert System
Acted as the technical consultant for a team building a vehicle occupancy detection system, this system initially used neural networks, but now uses automatically generated decision trees.

Operations Management
managed the computing services team. Reorganized the work environment to improve productivity, performed the day to day administrative and managerial tasks

Assistant Professor - University of Engineering and Technology, Lahore
March 1990 - April 1999

Taught courses in circuit analysis, computing, control systems, electronics, and engineering mathematics, coordinated the modernization of the decade-old undergraduate curriculum in electrical engineering (1997-98), prepared the first draft of the curriculum for the new computer engineering option (1998), in addition, provided consulting services to the local software industry in designing expert systems and in establishing quality improvement programs Details of consulting assignments are as follows:

Improvement of the Software Development Operation. Systems, Lahore
November 1998 - February 1999
proposed a long-term strategy and outlined a staged-plan for improving the software development operation of the organization. Following were the main contributions:

    Initiated stage-1 by first helping in the selection of a scaled-down version of the Personal Software Process, and then piloting it in a small team.
    Guided a team in developing a proposal for an organizational improvement initiative based on the CMM and the People-CMM models.

Quality Management System Plan CresSoft - Corporate Office, Lahore
July - August 1997
created a 5-year plan for the company-wide installation of TickIT (ISO 9001), the CMM, and the People-CMM models. Following were the main contributions:

    Identified the roles and skill profiles for the personnel required for the standards installation teams, assisted in their recruitment, and organized a program for their training, both as a team and as individuals.
    Created a company-wide information resource on quality standards, and initiated the development of a web-based data-collection mechanism for the use of the standards effort.

Preference Card Predictor CresSoft - Business Systems, Lahore
November 1996 - April 1998
developed an expert system for predicting the future preferences of the pilots of a major American airline. This system is to be used by the airline for forecasting its staffing and training requirements. Following were the main contributions:

    Defined achievable goals, selected the appropriate prediction technology, and outlined an evolutionary procedure for empirically synthesizing the system.
    Defined the component-based architecture and designed the components.
    Proposed the high level design and provided guidance in the prototyping of two new products based on the Preference Card Predictor technology:
        Training Resource Forecaster for forecasting the training resources required at any point in time over a 9-18 month future horizon.
        Preference Card Assistant for assisting the pilots in filling preference cards in such a fashion that their career growth is optimized.
    Proposed the high level design of a related product, the Long Term Forecaster, for forecasting the hiring schedule for pilots over a 10 year period.

Assistant Engineer - Descon Electro Systems, Lahore
May 1989 - March 1990

Designed and commissioned instrument systems for chemical plants. Specialized in the installation of Programmable Logic Controllers and also developed microcomputer based annunciators, data loggers, and PID controllers.

Project Engineer - IC Sensors, Milpitas, California
May 1988 - February 1989

Developed acceleration and pressure sensing systems for automotive and general-purpose usage, responsibilities ranged from requirements analysis to design and prototyping to planning of testing strategy and training of production personnel.

Research Fellow - Center for Sensor Technologies, University of Pennsylvania
September 1985 - February 1988

Designed and constructed an MOCVD (Metal Organic Chemical Vapor Deposition) reactor for the growth of epitaxial germanium films for use in photo-detectors. Did extensive characterization of these germanium films with X-ray diffraction

Research Associate - Wilkes College
May 1985 - August 1985

Developed logic gates based on liquid crystal devices. Also explored phased array optical antennas, optical amplifiers and modulators - all employing LCD technology

Engineering Assistant - RCA New Products Division, Lancaster, Pennsylvania
May 1984 - August 1984

Evaluated SPICE simulation software and related CAD/CAE tools. Also developed specifications and testing procedures for components used in CCD cameras.

Teaching Assistant - Wilkes College & Universities of Pennsylvania & Warwick
September 1983 - May 1986, January 1995 - May 1996  (part-time throughout)

Provided laboratory instruction, developed computer programs, and graded assignments etc. for various engineering courses.

Live-in Counselor - Project Upward Bound, Wilkes College
May 1983 - July 1983

Counseled disadvantaged high school students in personal and academic matters, and organized various activities for them.

 Professor’s Email address:
altaf@altafkhan.com
Course Instructor’s email address: cs101@vu.edu.pk
http://www.altafkhan.com/resume.htm

   
Name:
Email Address:

Put a website form like this on your site.