Title: ECE3120: Computer Systems
1ECE3120 Computer Systems
- Dr. Xubin He
- http//iweb.tntech.edu/hexb
- Email hexb_at_tntech.edu
- Tel 931-3723462, Brown Hall 319
2- Today
- Basic Concepts
- Software
3Computer Concepts
- Computer
- Hardware
- Processor brain, CPU
- Datapath registers and ALU
- Control unit hardware instrucion logic.
- Memory place to store software programs and data
- I/O devices enter data/programs into the
computer/display outputs - Software programs
- A program is a set of instructions that the
computer hardware can execute.
4Computer Organization
5Processor (Central Processing Unit)
- Datapath
- Register file a register is a storage location
within the CPU. - Arithmetic Logic Unit (ALU)perform all the
arithmetic computations and logic evaluations. - Control Unit
- Decodes and monitors the execution of
instructions and coordinate the operations. The
system clock synchronizes the activities of the
CPU, which are measured by clock cycles. (GHz) - Maintain 2 registers
- PC keeps track of the address of the next
instruction to be executed - Status Register flags the instruction execution
result
6Microprocessor
- A processor implemented on a single integrated
circuit (IC). Peripheral chips are needed to
construct a product. A microcomputer is a
computer that uses a microprocessor as its CPU
(such as todays desktop). - Classifications word length (number of bits that
a microprocessor can manipulate in one
operation). - 4-bit (intel 4004,1971), 8-bit, 16-bit, 32-bit,
64-bit. - Limitations
- Requires external memory to execute programs
- Peripheral chips are needed to interface with I/O
devices - Glue logic (decoders, buffers) is needed to
interconnect external memory and peripheral
interface chips with the microprocessor.
7Microcontroller
- A computer implemented on a single VLSI chip. It
contains everything a microprocessor contains
plus some more components, such as - Memory
- Timer
- ADC, DAC
- DMA controller
- parallel I/O interface (parallel ports)
- asynchronous serial I/O interface, synchronous
serial I/O interface - DSP features.
8Features of 68HCS12 microcontroller
- 16-bit CPU
- 64 KB memory space (also supports expanded memory
up to 1 MB through a 16-KB window) - 0 KB to 4KB of EEPROM
- 2 KB to 14 KB of on-chip SRAM
- 32 KB to 512 KB flash memory
- Sophisticated timer functions that include input
capture, output compare, pulse accumulators,
real-time interrupt, and COP timer - Serial communication interfaces SCI, SPI, CAN,
BDLC - Background debug mode (BDM)
- 10-bit A/D converter
- Instructions for supporting fuzzy logic function
9Embedded Systems
- A product that uses one or more microcontrollers
as controller (s). Also called embedded
products. - End users are interested in the functionality
of the product, not the microcontroller itself. - Cell phones, home security systems, and
modern automobiles are examples of embedded
products.
10Memory
- Semiconductor memory, magnetic, optical memory.
- Semiconductor memory
- Random access memory (RAM)volatile
- Dynamic RAM (DRAM) periodic refresh operations
to maintain the stored information. Every a few
milliseconds to over a hundred ms. - Static RAM (SRAM)no need to refresh. More
transistors are used to hold one bit information. - Read-only memory (ROM) nonvolatile.
- MROM mask-programed ROM, programmed when being
manufactured. - PROM programmable ROM, one-time programmable ROM
using PROM programmer/burner by end users. - EPROM erasable PROM, strong ultraviolate
light.erasable in bulk. - EEPROM electrically EPROM, erased by elctrical
signals and reprogrammed. Individual location. - Flash memory take advantages of EPROM and EEPROM
11I/O devices
- Input device
- Allow users to enter data/programs into the
computer so that computation can be performed. - Examples
- Output device
- Display results of computation so that users can
read them and equipment can be controlled. - Examples
12Software
- Programs. A program is a set of instructions that
can be executed by the computer hardware. - Machine instructions
- A sequence of binary digits that can be executed
by the processor - e.g 0001100000000110 (Accumulator Alt--
Accumulator AB) - Hard to understand, program, and debug for human
being - Assembly language
Defined by assembly instructions An assembly
instruction is a mnemonic representation of a
machine instruction (e.g ABA) Assembly programs
must be translated before it can be executed
(assembler) Programmers need to work on the
program logic at a very low level and can achieve
high productivity.
13Assembly Language examples
line
addr.
machine code
source code
1 2 3 4 6
org 1000 ldaa 800 adda 801 adda 802 staa 900
end
1000 1003 1006 1009
00001000 B6 0800 BB 0801 BB 0802 7A 0900
- The programmer must be very familiar with the
hardware organization of the microcontroller. - Its difficult to understand for anyone other
than the author - Hard for large projects Work on a very low level.
14High-level languages
- - Syntax of a high-level language is similar to
English, (C/C,Java,Fortran,PASCAL) - - A translator is required to translate the
program written in a - high-level language -- done by a compiler
- - High-level languages allow the user to work on
the program logic - at higher level.
Source Code A program written in assembly or
high-level language Object Code The output of
an assembler or compiler