Chương 1. TỔNG QUAN VỀ BỘ VXL VÀ HỆ VXL 1. Bộ vi xử lý 1. Khái niệm và quá trình phát triển VXL 1.
Phân loại bộ VXL 1. Cấu trúc chung của bộ VXL 1. Hệ vi xử lý 1. Cấu trúc phần cứng 1.
Hoạt động chung 1. BỘ VI XỬ LÝ 1. Khái niệm và quá trình phát triển. ❖ Khái niệm – Là một vi mạch logic chế tạo theo công nghệ LSI (Large scale integrated) cho đến VLSI (very large scale integrated) – Hoạt động dưới sự điều khiển của chương trình đặt trong bộ nhớ.
– Bộ VXL là hạt nhân của hệ VXL, nắm quyền kiểm soát toàn bộ các thành phần có trong hệ thống. – Thực hiện các phép toán số học, logic, đưa ra các quyết định và thông tin với thế giới bên ngoài qua các cổng vào/ra dưới sự điều khiển của chương trình cài đặt trong bộ nhớ. ❖ Lịch sử và quá trình phát triển 1. BỘ VI XỬ LÝ 1.
Phân loại bộ vi xử lý – VXLđanăng: bao gồm tất cả các phần tử tính toán trên một chip (trừ bộ nhớ và các cổng vào ra – 8086/8088, 6800) – Vi điều khiển: bao gồm cả bộ nhớ và các cổng vào ra 1. BỘ VI XỬ LÝ 1. Cấu trúc chung của bộ vi xử lý Giaỉ mã lệnh Khối điều khiển Mạch phối với Bus 1. HỆ VI XỬ LÝ 1.
Cấu trúc phần cứng 1. HỆ VI XỬ LÝ 1. Phần mềm ❖ Phần mềm là chương trình do người lập trình tạo ra để giải quyết nhiệm vụ bài toán đặt ra khi thiết kế hệ thống. Các chương trình này được đặt trong bộ nhớ ROM và RAM khi hệ thống hoạt động.
❖ Trong máy tính, phần mềm được phân lớp. ▪ Các lớp trong là các chương trình quản lý, điều khiển, các dữ liệu cố định. làm nhiệm vụ trung gian giữ người và máy được gọi là hệ điều hành (HĐH). Các chương trình của HĐH thường khá lớn và được nạp một phần trong ROM, phần còn lại được chứa trong bộ nhớ ngoài và được nạp vào RAM mỗi khi khởi động máy.
▪ Các chương trình do người lập trình viết ở lớp ngoài để giải quyết một bài toán nào đó, khi thực hiện sẽ được HĐH nạp vào trong RAM ở vị trí theo sự phân bố của HĐH. Khi phần cứng thực hiện xong chương trình đó thì bài toán được giải. HỆ VI XỬ LÝ 1. Hoạt động của hệ vi xử lý ❖ Quá trình nhận lệnh: CPU nhận lệnh từ bộ nhớ trung tâm.
Để nhận 1 byte lệnh, từ giá trị của thanh ghi địa chỉ lệnh, CPU tạo ra các bit địa chỉ đưa ra Bus địa chỉ xác định byte lệnh cần lấy vào. Sau đó CPU đưa các tín hiệu điều khiển đọc byte lệnh về CPU. Khi đó nội dung của các thanh ghi địa chỉ lệnh tự động tăng 1 đơn vị để chuẩn bị cho việc nhận byte lệnh tiếp theo. ❖ Quá trình giải mã lệnh: Byte đầu tiên của lệnh là byte mã lệnh.
CPU giải mã byte mã lệnh này để xác định chức năng của lệnh. Nếu lệnh không cần toán hạng chuyển sang chu kỳ thực hiện lệnh. Nếu lệnh cần toán hạng, CPU xác định toán hạng cho lệnh. ❖ Quá trình thực hiện lệnh.
– Nếu là lệnh dừng, thì CPU dừng quá trình làm việc cho tới khi Reset – Nếu không phải thì CPU thực hiện lệnh và gửi kết quả. Trong quá trình thực hiện lệnh, nếu là lệnh thao tác ngay trong bộ VXL thì CPU sẽ thực hiện lệnh, còn nếu là lệnh cần thao tác với bên ngoài thì CPU gửi tín hiệu địa chỉ và điều khiển để thực hiện. – Sau đó quá trình lại quay lại lệnh tiếp theo. Các quá trình nhận lệnh, giải mã lệnh và thực hiện lệnh có thể tiến hành tuần tự hay song song tuỳ theo cấu trúc từng bộ VXL 1.
HỆ VI XỬ LÝ 1. Các bước thiết kế một hệ vi xử lý • Phân tích chức năng nhiệm vụ của hệ vi xử lý cần thiết kế. • Tổ chức phần cứng cho hệ vi xử lý cần thiết kế. • Xây dựng phần mềm cho hệ vi xử lý cần thiết kế.
• Nạp chương trình cho hệ vi xử lý là hiệu chỉnh hệ thống. Tổng quan về 8051 2. Sơ đồ chân tín hiệu của 8051 2. Tập lệnh của 8051 2.
Khung chương trình hợp ngữ cho 8051 2. Tổng quan về 8051 ▪ Đóng trong hộp 40 chân ▪ 4KB ROM ▪ 128 byte RAM ▪ 4 cổng xuất nhập dữ liệu 8 bit ▪ 1 cổng nối tiếp ▪ 2 bộ Timer 16 bit ▪ 6 nguồn ngắt (2 ngắt ngoài) ▪ Không gian nhớ chương trình ngoài 64KB ▪ Không gian nhớ dữ liệu ngoài 64KB ▪ 210 vị trí được định địa chỉ bit ▪ Tần số xung nhịp (11.0592 MHz, 12 MHz, 24 MHz) 2. Sơ đồ, chức năng chân tín hiệu 8051 Hình 2. Sơ đồ, chức năng chân tín hiệu 8051 • Port 0 (từ chân 32 đến 39), có 02 chức năng: – Trong các thiết kế tối thiểu, các chân này có chức năng xuất/nhập dữ liệu; – Là byte địa chỉ thấp cho các thiết kế có bộ nhớ ngoài.
Các chân của cổng P0 có dạng cực máng hở, nên phải được nối với một điện trở kéo 10KΩ bên ngoài, Hình 2. Mắc điện trở kéo cổng P0 2. Sơ đồ, chức năng chân tín hiệu 8051 • Port 1 (từ chân 1 đến 8), có 01 chức năng duy nhất là trao đổi dữ liệu với thiết bị bên ngoài khi có yêu cầu • Port 2 (từ chân 21 đến 28), có 02 chức năng: – Trao đổi dữ liệu với thiết bị bên ngoài – Là byte cao địa chỉ cho các thiết kế có bộ nhớ ngoài • Port 3 (từ chân 10 đến 17), có 02 chức năng: – Trao đổi dữ liệu với thiết bị bên ngoài – Khi không hoạt động trao đổi dữ liệu, mỗi chân của Port 3 thực hiện chức năng riêng (Bảng 2. Sơ đồ, chức năng chân tín hiệu 8051 • Bảng 2.1 Chức năng của các chân Port 3 Bit Tên Địa chỉ bit Chức năng P3.0 RxD B0H Chân nhận dl nối tiếp P3.1 TxD B1H Chân phát dl nối tiếp P3.2 INT0 B2H Ngõ vào ngắt ngoài 0 P3.3 INT1 B3H Ngõ vào ngắt ngoài 1 P3.4 T0 B4H Ngõ vào của bộ định thời/đếm 0 P3.5 T1 B5H Ngõ vào của bộ định thời/đếm 1 RD P3.6 WR B6H Điều khiển ghi bộ nhớ dl ngoài P3.7 B7H Điều khiển đọc bộ nhớ dữ liệu ngoài 2.
Sơ đồ, chức năng chân tín hiệu 8051 • PSEN (program store enable)- chân 29: tín hiệu điềuOEkhiển cho phép truy xuất bộ nhớ chương trình ngoài. Thường nối với chân của ROM để cho phép đọc các byte lệnh. Trong suốt thời gian tìm – nạp lệnh chân này ở mức logic 0. Khi thực thi chương trình trong ROM nội, chân này không tích cực (logic 1) • EA-chân 31: nếu ở mức logic 1, 8051 thực thi chương trình trong ROM • ALE (address latch enable): khi Port 0 được sử dụng làm bus địa chỉ.
Nếu ở mức logic 0, thực thi chương trình từ bộ nhớ ngoài. • RST (Reset): bình thương ở mức logic thấp. Khi có mức logic cao vi điều khiển khởi động lại, khi đó mọi giá trị trên các thanh ghi bị xóa, bộ đếm chương trình PC=0 (tức là CPU nhận lệnh đầu tiên tại địa chỉ 0000h – địa chỉ khởi động của 8051) • Chân XTAL1, XTAL2: mạch tạo dao động ngoài cho 8051. Sơ đồ, chức năng chân tín hiệu 8051 Hình 2.
Mạch tạo dao đông, Reset cho 8051 2. Tổ chức bộ nhớ 8051 2. Tổ chức bộ nhớ trong Hình 2. trình bày vùng nhớ RAM trong có 128 byte được gán địa chỉ từ 00H đến 7FH.
-Từ 00H đến 1FH (32 byte) là các băng thanh ghi và ngăn xếp. -Từ 20H đến 2FH (16 byte) được định địa chỉ bit. Vùng nhớ này có thể truy nhập theo byte, hoặt bit tùy theo lệnh. Ví dụ: MOV A, 2Ch ; đọccả byte ORLA, #10000000B; set bit cao nhất MOV 2CH, A; ghi lại cả byte Ba lệnh trên tương đương lệnh “SETB 67H” -Từ 30H đến 7FH (80 byte) được sử dụng để lưu thông tin khi đọc và ghi, hay được gọi là bảng nháp.
80 byte này thường được sử dụng để lưu và tham dữ liệu số. Tổ chức bộ nhớ RAM trong 2. Tổ chức bộ nhớ 8051 • Băng thanh ghi - Băng 0 được mặc định khi sử dụng, để chuyển sang các băng thanh ghi khác bằng cách sử dụng bit D3, D4 (PSW.4) của thanh ghi PSW, Bảng 2. Các bit này có thể được lập, xóa theo lệnh SETB, CLR.
Ví dụ, “SETB PSW.3” - Lưu ý: mặc định các bit này = 0. Chọnbăng thanh ghi PSW.1: Băng 0 0 0 SETB PSW.3=1 Băng 1 0 1 ;SETB PSW.4=1 Băng 2 1 0 MOV R0, #99 ; nạp giá trị 99H vào R0 Băng 3 1 1 2. Tổ chức bộ nhớ 8051 • Ngăn xếp (stack) Ngăng xếp là một vùng nhớ RAM được sử dụng để lưu thông tin (có thể là dữ liệu hoặc địa chỉ) tạm thời. SP (stack pointer) độ dài 8 bit, được sử dụng để trỏ tới đỉnh ngăn xếp.
Khi cất dữ liệu vào stack SP được tăng thêm 1. ➢ Khi bật nguồn, hoặc reset SP=07H, nghĩa là ngăn nhớ có địa chỉ 07H là ngăn nhớ đầu tiên được dụng làm ngăn xếp. Khi đó dung lượng tối đa của ngăng xếp là 24 byte (từ 08H đến 1FH). Nếu chương trình cần nhiều hơn 24 byte cho vùng ngăn xếp thì có thể đổi SP trỏ tới vùng từ 30H đến 7Fh bằng lệnh “MOV SP, #XX”.
➢ Cần lưu ý rằng các vùng nhớ được định địa chỉ bit không được sử dụng cho vùng ngăn xếp. Tổ chức bộ nhớ ngoài 8051 có không gian bộ nhớ riêng cho chương trình và dữ liệu. Bộ nhớ chương trình và dữ liệu đặt bên trong chip, tuy nhiên có thể mở rộng bộ nhớ chương trình và dữ liệu bằng các chip nhớ bên ngoài với dung lượng tối đa 64K cho mỗi bộ nhớ. • Không gian bộ nhớ ROM, Hình 2.
Không gian bộ nhớ ROM 2. Tổ chức bộ nhớ 8051 • Truy xuất bộ nhớ ROM ngoài, Hình 2. Truy xuất bộ nhớ ROM ngoài 2. Tổ chức bộ nhớ 8051 • Không gian bộ nhớ RAM, Hình 2.
Không gian bộ nhớ RAM 2. Tổ chức bộ nhớ 8051 • Truy xuất bộ nhớ RAM ngoài, Hình 2. Truy xuất bộ nhớ RAM ngoài 2. Tổchứcbộnhớ 8051 • Cấu trúc chung của IC nhớ Address Hình 2.
Cấu trúc chung của 1 IC nhớ 2. Tổchứcbộnhớ 8051 • Một số IC nhớ ROM Bảng 2. Họ EPROM 27x Số hiệu Chip Dung lượng 2708 1K*8 2716 2K*8 2732 4K*8 2764 8K*8 27128 16K*8 27256 32K*8 27512 64K*8 Hình 2.