Tổng quan về hệ vi xử lý (microprocessor)

1 Electrical Engineering

Định nghĩa

• Mạch vi xử lý là vi mạch cỡ cực lớn

(VLSI), trên đó có thể xử lý được dữ liệu theo một thuật toán xác định

• Cấu tạo

– Phần cứng (phần vi mạch điện tử) – Phần mềm (phần tập lệnh gắn chặt với phần

cứng)

• Vi xử lý 8 bit, 16 bit, 32 bit, 64 bit

1

2 Electrical Engineering

Phân biệt các loại máy tính

• Mainframe: dùng sử lý khối lượng thông tin

phức tạp, tốc độ cao, IBM 4381, Honeywell DSP8, Crây, kết hợp nhiều hệ VXL lại

• Máy tính con (minicomputer), xử lý dữ liệu ít hơn và dung lượng nhỏ hơn(VAX 6360 DEC)

• Máy vi tính xử dụng các hệ vi xử lý

3 Electrical Engineering

Lịch sử phát triển

• Thế hệ 1 (1971 – 1973)

– 4004, vi xử lý 4 bit -> 4040 – 8008 (1972), vi xử lý 8 bit • Tần số : 0.1 – 0.8 Mhz • Thêm các mạch phụ trợ • Thế hệ 2 (1974 – 1977)

– Vi mạch 8 bit, 6800, 6809 Motorola – 8080, 8085, Intel – Z 80 của hãng Zilog

2

4 Electrical Engineering

Lịch sử phát triển (tiếp)

• Máy tính Apple 2 (6800) • Công nghệ CMOS, xung clock 1-5Mhz Thế hệ 3 (1978 –1982) • Vi xử lý 16 bit, 8086/186/286 Intel • 68000, 68010 Motorola • Xử lý 1M địa chỉ • Ra đời IBM PC • Máy tính Việt nam ra đời (VT81)

5 Electrical Engineering

Lịch sử phát triển (tiếp)

• Thế hệ vi xử lý phục vụ PC, Pentium (32

bit), cơ chế đa nhiệm, MMU, cache

• Hệ vi điều khiển

– 8048, 8031, 8051, ... 8bit – 68HC05, 68HC11 – Microchip, 16P.., 17P.., 18P...

• Hệ DSP (Digital Signal Processing) – Texax Instruments (TMS 320...)

3

6 Electrical Engineering

Đặc tính chung

• Số bít: 4 bit, 8 bit, 16 bit, 32 bit • Số chân tín hiệu:

– 12, 16, 28, 40 chân cho VXL 8 bit – 68 chân VXL 32 bit – 168 chân VXL 64 bit – Tương ứng với các chân là khả năng kiểm soát

bộ nhớ 2^n

7 Electrical Engineering

Đặc tính chung

• Tần số xung nhịp (1MH – 3.2 GHZ) • Tính năng ứng dụng:

– Loại độc lập (one chip) – Mạch VXL đa năng

4

8 Electrical Engineering

Cấu trúc chung của hệ thống vi xử lý

Bµn phÝm

Address Bus

RAM

ROM

Khèi hiÓn thÞ LED

VXL 8051

M¹ch giao tiÕp 8255

Data Bus

Control Bus

9 Electrical Engineering

Các phần cơ bản hệ VXL

• Bộ nhớ (memory) • Ghép nối (I/O, interface) • Bộ vi xử lý (processor)

5

10 Electrical Engineering

Memory

• Tập hợp nhiều thanh ghi để lưu trữ dữ liệu

dưới dạng nhị phân

• ROM, RAM • Mỗi thanh ghi nhớ có địa chỉ duy nhất

11 Electrical Engineering

Interface (I/0)

• Thanh ghi để ghép nối với thiết bị bên ngoài • Có thể là thanh ghi nhớ nằm ở các vị trí đặc

biệt trong RAM

• Ví dụ, 8051, SFR 91, serial • Ví dụ như vi mạch ghép nôí 8255

6

12 Electrical Engineering

Processor

• Thực hiện chương trình lưu trong bộ nhớ

theo thứ tự

• Tập hợp lệnh gồm

– Chuyển dữ liệu (MOV) – Phép toán và logic – Lệnh điều kiện và rẽ nhánh

13 Electrical Engineering

Bus

• Chuyển dữ liệu giữa hệ thống này sang hệ

thống khác

• Hệ thống 8 bit, xử lý mọi dữ liệu dưới dạng

8 bit

• Bus địa chỉ (Address bus), 16 bit • Bus dữ liệu (data bus), 8 bit

7

14 Electrical Engineering

BUSES • Bus là tập các dây dẫn nối song song với nhau (bên trong VXL hoặc bên ngoài) đề truyền thông tin

• Trong VXL, các thanh ghi, ALU, thiết bị ngoại vi ghép nối với nhau thông qua đường BUS

• Mạch thời gian và điều khiển đảm bảo rằng mỗi loại tín hiệu sử dụng đường BUS tại một thời điểm xác định (RD/WD)

15 Electrical Engineering

Buses

• Trong mạch vi xử lý 8 bit, 8bit BUS chứa

dữ liệu và 16 bít BUS chứa địa chỉ • Ghép nối để mở rộng dung lượng nhớ

(ROM, RAM), mở rộng số cổng vào ra

• Tối đa 16 bít địa chỉ, 65536 byte.

8

16 Electrical Engineering

Thiết bị nhớ

• Đối với Vi xử lý, 2 loại bộ nhớ chính :

– ROM (Read only memory) – RAM (Random access memory), (read and

write memory)

17 Electrical Engineering

ROM

• Thiết kế bởi công nghệ

NMOS, CMOS

• Dung lượng thường 2Kbyte

– 64Kbyte

• Dữ liệu lưu trữ dạng ma trận • Không bị ảnh hưởng bởi việc • mất điện • 2716, 2732, .., 27256

9

18 Electrical Engineering

2716

19 Electrical Engineering

Đọc bộ nhớ

• Ví trí đọc đưa vào bus địa chỉ • Lệnh READ gửi tới bộ nhớ • Dữ liệu truyền từ bộ nhớ lên Bus dữ liệu

10

20 Electrical Engineering

PARAMETER

min max units

400 250

250 75

Tcyc TCE Tacc Toff TAH TAS Tp

ns ns ns ns ns ns ns

Cycle time /CE pulse width /CE access time Output turn-off delay Address & CS hold time to /CE Address & CS setup time to /CE /CE precharge time

100 0 150

21 Electrical Engineering

Các loại ROM khác

• Mạch xóa và mạch nạp riêng • Serial Rom (2014 – 2kbit) • EEROM (Electrical erasable ROM)

11

22 Electrical Engineering

RAM

• Static RAM • Dynamic RAM

23 Electrical Engineering

Static RAM

• Mỗi bít dữ liệu được lưu trữ

bởi cặp flip-flop • Cấu trúc đơn giản • Ghi và xóa tín hiệu bằng

điện

• Dữ liệu mất đi khi mất điện • Tiêu thụ năng lượng lớn khi

có điện

• Kích thước lớn khi dung

lượng lớn

• 6216, 6232, ..62256

12

24 Electrical Engineering

RAM 62256

25 Electrical Engineering

Dynamic Ram

• Dữ liệu ghi bằng tụ • Dữ liệu phải refresh từng 2ms -> phải có bộ điều khiển refresh

• Dung lượng lớn • Cấu trúc ma trận • ít tổn hao điện

13

26 Electrical Engineering

Ví dụ 64 Kbit RAM

27 Electrical Engineering

Cấu trúc mạch vi xử lý 89c51

14

28 Electrical Engineering

Các khối cơ bản • Khối ALU (the Arithmetic and Logic Unit

(ALU),

• Khối ALU thực hiện các phép toán ADD,

SUBTRACT, AND, OR, SHIFT.

29 Electrical Engineering

Thanh ghi (resister)

Thanh ghi là nơi tạm thời lưu kết quả tính toán (thường 8 bit hoặc 16 bit)

15

30 Electrical Engineering

Ví dụ tính toán dùng thanh ghi

• Nạp dữ liệu vào thanh ghi A • Đưa dữ liệu nhập vào B • Thực hiện phép cộng và lưu lại kết quả

vào thanh ghi (Accumulator)

31 Electrical Engineering

Định nghĩa VXL 8 bit

• Vi xử lý 8 bít là vi xử lý được thiết kế để

làm việc với các toán tử 8 bit. Khi làm việc với dữ liệu nhiều hơn 16 bit, 32 bít, chương trình sẽ chia thành nhiều khối 8 bít riêng biệt

16

32 Electrical Engineering