chuong 1 gioi thieu ve vi xu ly

7
Ni dung: Chương 1: Gii thiuvVi xChương 2: Gii thiuvcu trúc caHVi điu khin 8051 Chương 3: Kho sát tplnh và lp trình Vi điu khin 8051 Chương 4: Hot động cabộ định thi Chương 5: Hot động ngt Chương 6: Hot động truyn thông ni tiếp Chương 7: Thiếtkế giao tiếp Chương 1: Gii thiu vvi x1.1. Lch sphát trinca vi xVi xlý? Vi xlý (MicroProcessor) là vi mch tích hpcln VLSI (Very High Scale Intergration) hàng ngàn, hàng triu Transistor, có khnăng: Thc hin các thao tác (lnh). Các lnh đượcct trong bnhLà mt vi mch lp trình được. Đọc và ghi vibnhngoài thông qua các Bus. Thiếtbni tht gia đình Văn phòng ô tô Đồ đin trong nhà Máy đàm thoi Máy đin thoi Các hthng an toàn Các bmca ga-ra xe Máy trli Máy Fax Máy tính gia đình Tivi Truyn hình cáp VCR Máy quy camera Điu khin txa Trò chơi đin tCác nhc cđin tĐiu khin ánh sáng Máy nhn tin Đồ chơi Các dng ctp thhình,… Đin thoi Máy tính Các hthng an toàn Máy Fax Lò vi sóng Máy sao chp Máy in lazer Máy in màu,… Điu khin động cơ Điu khin ôtô Điu khin hp stđộng Điu khin Túi khí Điu khin ABS, ESP, EBD Hthng bo mt Điu khin truyn tin Gii trí Điu hoà nhit độ Điu khin txa Hthng định vGPS,… ng dng ng dng điu khin trên ôtô

Upload: but-chi

Post on 28-Jul-2015

714 views

Category:

Documents


7 download

TRANSCRIPT

Nội dung:

• Chương 1: Giới thiệu về Vi xử lý

• Chương 2: Giới thiệu về cấu trúc của Họ Vi điềukhiển 8051

• Chương 3: Khảo sát tập lệnh và lập trình Vi điềukhiển 8051

• Chương 4: Hoạt động của bộ định thời

• Chương 5: Hoạt động ngắt

• Chương 6: Hoạt động truyền thông nối tiếp

• Chương 7: Thiết kế giao tiếp

Chương 1: Giới thiệu về vi xử lý

1.1. Lịch sử phát triển của vi xử lý

Vi xử lý?

Vi xử lý (MicroProcessor) là vi mạch

tích hợp cỡ lớn VLSI (Very High Scale

Intergration) hàng ngàn, hàng triệuTransistor, có khả năng:

• Thực hiện các thao tác (lệnh). Các lệnh

được cất trong bộ nhớ ⇒⇒⇒⇒ Là một vi

mạch lập trình được.

• Đọc và ghi với bộ nhớ ngoài thông qua

các Bus.

Thiết bị nội thất gia đình Văn phòng ô tô

Đồ điện trong nhà

Máy đàm thoại

Máy điện thoại

Các hệ thống an toàn

Các bộ mở cửa ga-ra xe

Máy trả lời

Máy Fax

Máy tính gia đình

Tivi

Truyền hình cáp

VCR

Máy quy camera

Điều khiển từ xa

Trò chơi điện tử

Các nhạc cụ điện tử

Điều khiển ánh sáng

Máy nhắn tin

Đồ chơi

Các dụng cụ tập thể hình,…

Điện thoại

Máy tính

Các hệ thống an toàn

Máy Fax

Lò vi sóng

Máy sao chụp

Máy in lazer

Máy in màu,…

Điều khiển động cơ

Điều khiển ôtô

Điều khiển hộp số tự động

Điều khiển Túi khí

Điều khiển ABS, ESP, EBD

Hệ thống bảo mật

Điều khiển truyền tin

Giải trí

Điều hoà nhiệt độ

Điều khiển từ xa

Hệ thống định vị GPS,…

Ứng dụng Ứng dụng điều khiển trên ôtô

Chương 1: Giới thiệu về vi xử lý

1.1. Lịch sử phát triển của vi xử lý

1.1.1. Thế hệ 1 (1971 - 1973)

� Năm 1971 Intel đưa ra thị trường Chip Vi xử lý

4004 ⇒⇒⇒⇒ Dùng cho máy tính cầm tay.

• Tần số làm việc: 740 kHz

• Address bus: 12 bit

• Data bus: 4 bit

� Năm 1972 Chip 8008 ra đời nhưng chưa tìm

được nhiều ứng dụng.

Chương 1: Giới thiệu về vi xử lý

1.1.2. Thế hệ 2 (1974 - 1977)

� 1974 Intel công bố Chip Vi xử lý 8080

• Tần số làm việc: 2 MHz

• Address bus: 16 bit

• Data bus:8 bit

� 1974 Motorola cũng đưa ra chip VXL 6800.

� 1975 Intel công bố chip 8085.

� 1976 Zilog đưa ra chip Z80.

⇒⇒⇒⇒ Ứng dụng rộng rãi trong công nghiệp và dùng cho máy

tính cá nhân (Apple II, Commodore 64).

Chương 1: Giới thiệu về vi vi xử lý

1.1.3. Thế hệ 3 (1978 - 1982)

�Intel công bố Chip VXL 16 bit:

• Năm 1978: Chip 8086.

• Năm 1979: Chip 8088. Sau đó, Chip 80186.

• Năm 1982: Chip 80286 ⇒⇒⇒⇒ Dùng cho các loại máy

vi tính AT.

� Trong lúc đó, Motorola cũng công bố VXL 16 bit:

• Năm 1979: Chip MC68000.

• Năm 1983: Chip MC68010.

Chương 1: Giới thiệu về vi vi xử lý1.1.4. Thế hệ 4 (1983 - 1992)

� Intel công bố Chip VXL 32 bit:

• Năm 1985: Chip 80386.

• Năm 1989: Chip 80486DX.

• Năm 1992: Chip 80486DX2.

� Motorola cũng công bố VXL 32 bit:

• Năm 1984: Chip 68020.

• Năm 1987: Chip 68030.

• Năm 1988: Chip MM88000.

• Năm 1989: Chip 68040. Sau đó, công bố 68060 (1994).

� Zilog cũng công bố VXL Z80000 32 bit.

�AMD (Advance Micro Devices) công bố VXL Am29000 32 bit .

Chương 1: Giới thiệu về vi xử lý

1.1.5. Thế hệ 5 (1993 – ?)

�Intel công bố Chip VXL 64 bit:

• Năm 1993: Pentium.

• Năm 1997: Pentium II.

• Năm 1999: Pentium III.

• Năm 2000: Pentium 4.

• Năm 2006: Intel® Core® 2 Duo.

� Motorola cũng công bố VXL 64 bit 68060 và Power

PC.

Các Chip Vi xử lý của Intel qua các thời kỳ

Họ vi xử lý x86 của Intel• Model Năm sản xuất Số lượng Transistor

• 4004 1971 2,300

• 8008 1972 2,500

• 8080 1974 5,000

• 8086 1978 29,000

• 80286 1982 120,000

• 80386™ processor 1985 275,000

• 80486™ DX processor 1989 1,180,000

• Pentium® processor 1993 3,100,000

• Pentium II processor 1997 7,500,000

• Pentium III processor 1999 24,000,000

• Pentium 4 processor 2000 55,000,000

�Năm 2003 AMD công bố Chip 64 bit :

AMD Athlon 64 và AMD Opteron.

�Năm 2004 AMD ra mắt VXL nhân 2:

AMD Turion 64 x2 và ADM Athlon 64 x2.

�Năm 2007 AMD công bố VXL 4 nhân :

Opteron và Phenom

1.2. Các thông số cơ bản của Vi xử lý

� Chiều dài từ dữ liệu (D-Bus, Data Bus )

� Khả năng truy xuất bộ nhớ (A-Bus, Address Bus)

�Các Thanh ghi

�Tốc độ của Vi xử lý

�Tập lệnh

1.2.1. Chiều dài từ dữ liệu (D-Bus, Data Bus)

• Mỗi bộ VXL chỉ có thể xử lý dữ liệu với một độdài cố định. Độ dài của từ càng lớn thì tốc độ xửlý càng nhanh.

• Ví dụ: So sánh VXL 8 bit và VXL 64 bit.

VXL 64 bit: mỗi lần lấy dữ liệu từ bộ nhớ có thểlấy 8 byte. Trong khi đó VXL 8 bit chỉ có thể lấy

1 byte ⇒⇒⇒⇒ VXL 64 bit có tốc độ xử lý nhanh hơn.

1.2.2. Khả năng truy xuất bộ nhớ (A-Bus,

Address Bus)

• Độ rộng của Bus địa chỉ (A-Bus) quyết định

khả năng truy xuất bộ nhớ. A-Bus càng lớn thì

khả năng truy xuất bộ nhớ càng lớn ⇒⇒⇒⇒ có khảnăng xử lý chương trình càng lớn.

• Gọi n là độ rộng của A-Bus ⇒⇒⇒⇒ VXL có khảnăng truy xuất 2n ô nhớ.

Ví dụ: VXL có 32 (A0 – A31) đường địa chỉ

⇒⇒⇒⇒ có khả năng truy xuất 232 = 4 Gbyte ô nhớ.

1.2.3. Tốc độ làm việc

Tần số xung cấp cho VXL quyết định tốc độ làm

việc của VXL. VXL có tốc độ làm việc càng lớn

thì khả năng truy xuất lệnh càng lớn. Tốc độlàm việc (triệu lệnh/giây-MIPS) được xác định:

MIPS = f*N/(M + T)

f: tần số làm việc của VXL.

N: số lượng bộ ALU.

M: số chu kỳ máy.

T: thời gian truy cập bộ nhớ.

1.2.4. Các Thanh ghi của VXL

Các thanh ghi là một phần quan trọng

trong cấu trúc của VXL. Dùng để lưu trữ,

kiểm tra, xử lý dữ liệu khi tính toán.

Số lượng thanh ghi càng lớn thì người lập

trình có thể viết chương trình đơn giản

hơn ⇒⇒⇒⇒ Tốc độ xử lý sẽ nhanh hơn.

1.2.5. Tập lệnh của VXL

Tập lệnh của VXL đóng vai trò rất quang trọng.

Mỗi loại VXL có một tập lệnh riêng. VXL hoạt

động theo sự chỉ dẫn của tập lệnh. Người lập

trình dựa vào tập lệnh để soạn thảo chương

trình điều khiển hoạt động của VXL.

Số lượng tập lệnh càng nhiều thì người lập trình

càng dễ dàng lựa chọ khi lập trình.

Tập lệnh thông thường được chia làm các nhóm

như sau:

• Nhóm lệnh chuyển dữ liệu.

• Nhóm lệnh số học và logic.

• Nhóm lệnh xử lý bit.

• Nhóm lệnh rẽ nhánh.

• Nhóm lệnh điều khiển hệ thống,…

1.2. Cấu trúc bên trong của Vi xử lý

TemporaryRegisters

ALU

Flags

EU

Control

AH AL

BH BL

CH CL

DH DL

SP

BP

DI

BI

CS

DS

SS

ES

IO

Internal

CommunicationsRegisters

SUMMATION

Address Bus 20 bits

Data Bus

BusControl

1 2 3 4

Instruction Queue

8088Bus

EU BIU

Bên trong VXL 8088/8086 gồm 2 khối cơ

bản:

• Khối phối ghép bus (BIU - Bus Interface

Unit)

• Khối thực hiện lệnh (EU - Excution Unit)

BIU

• Khối phối ghép bus (BIU): đưa ra địa chỉ, đọc

mã lệnh từ bộ nhớ. Đọc/ghi dữ liệu vào/ra từcổng giao tiếp hoặc bộ nhớ nhớ.

• Trong BIU còn có bộ nhớ đệm (cache): dùng đểchứ các mã lệnh đọc được nằm sẵn để chờ EU

xử lý.

Bên trong EU gồm có:

• Khối điều khiển (CU - Control Unit), có chức năng:

− Cung cấp thông tin về địa chỉ để BIU đọc lệnh và dữ liệu.

− Giải mã lệnh và thực hiện lệnh.

− Đưa ra các xung điều khiển hoạt động của VXL.

EU

• Khối số học và logic (ALU – Arithmetic and Logic

Unit): dùng để thực hiện các thao tác khác nhau với

các toán hạng của lệnh.

Để tăng tốc độ xử lý thì sử dụng các kỹ thuật:

• Bộ nhớ Cache.

• Tăng tần số làm việc của VXL.

• Tăng độ rộng từ dữ liệu (D-Bus).

• Cơ chế Pipelining.

• Xử lý song song /bộ đồng xử lý.

Cơ chế pipelining

F1 D1 E1 F2 D2 E2 F3 D3 E3

F1 D1

F2

E1

D2

F3

E2

D3 E3

Không có

pipelining

Có pipelining

Giới thiệu về Hệ Vi xử lý