Parts of a GP Computer Microcomputer Contains separate










- Slides: 10
Parts of a GP Computer (Microcomputer) Contains separate • Microprocessor chip • Memory/Memory controller • MB control chips • Peripheral (I/O) devices (one chip for each function) • serial comm • • • CS-280 Dr. Mark L. Hornick parallel comm USB Bluetooth IR AGP graphics Wi. Fi CD/DVD interface PCI expansion slots … 1
How does a Microcomputer differ from a Microcontroller? CS-280 Dr. Mark L. Hornick 2
How does a Microcomputer differ from a Microcontroller? Microcontroller: l l “ 1 -chip” solution (monolithic) Built-in components (depending on variant) l l l Microprocessor Memory: RAM/SRAM, EEPROM/PROM/ROM Peripheral devices l l serial/parallel ports digital I/O ports Analog/Digital converter Timer/Counter CS-280 Dr. Mark L. Hornick 3
Inside an IC package CS-280 Dr. Mark L. Hornick 4
Inside an IC package CS-280 Dr. Mark L. Hornick 5
Atmel Atmega 32 l Central Processing Unit l l CS-280 Dr. Mark L. Hornick Arithmetic Logic Unit (ALU) performs the actual arithmetic, logical, and bit-functions Memory – SRAM, EEPROM, Flash, etc. Clock circuit – internal/external I/O – Input/Output; video, serial, parallel, USB, SCSI, etc. 6
CS-280 Dr. Mark L. Hornick 7
Atmel Atmega 32 highlights An 8 -bit microcontroller featuring: l 3 separate on-chip memories (Harvard architecture) l l l 2 KB SRAM (for data – volatile; data lost on power off) 1 KB EEPROM (for persistent data storage – holds data after power off) 32 KB Flash (organized as 16 K of 16 -bit words for persistent program code) l Native data size is 1 byte (SRAM and EEPROM) l 16 -bit data addressing l l Up to 64 KB (216 bytes) of data memory can be accessed 8 -pin I/O ports named A, B, C, and D, configurable as: l l l Digital input (for reading discrete external signals on each pin (0 v or 5 v) as data values 0 or 1) Digital output (for writing binary data values as discrete output signals (0 v or 5 v) Analog input (for reading continuous external signals (0 v-5 v) as data values) Serial/Parallel (for reading or writing streams of bytes) Pulse accumulator (for counting #changes of external signals) CS-280 Dr. Mark L. Hornick 8
The Atmega 32 design is based on a Harvard Architecture: l Assigns data and program instructions to different memory spaces. l l Each memory space has a separate bus, allowing: 1. 2. 3. l Program data occupies a different and separate memory from the program itself. Different timing, size, and structure for program instructions and data Concurrent access to data and instructions (increases speed) Clear partitioning of data and instructions (better security) Drawback: Harder to program Microcontroller Components 9
Most general-purpose microprocessors (like in your PC) use a von Neumann Architecture 1. Data and instructions are both stored in the same main memory 2. The content of any part of memory is addressable by location without regard to what is stored in that location – program or data 3. Instructions are executed sequentially. In case of accidental or intentional programming errors, data can be executed – a common attack used by viruses Data CPU + Program Microcontroller Components Main Memory 10