Bài giảng Thiết kế hệ thống vi xử lý - Chương 3: Giới thiệu hệ Vi xử lý, vi điều khiển, cầu trúc phần cứng - Nguyễn Hồng Quang
Bạn đang xem tài liệu "Bài giảng Thiết kế hệ thống vi xử lý - Chương 3: Giới thiệu hệ Vi xử lý, vi điều khiển, cầu trúc phần cứng - Nguyễn Hồng Quang", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
Tài liệu đính kèm:
- bai_giang_thiet_ke_he_thong_vi_xu_ly_chuong_3_tong_quan_ve_h.pdf
Nội dung text: Bài giảng Thiết kế hệ thống vi xử lý - Chương 3: Giới thiệu hệ Vi xử lý, vi điều khiển, cầu trúc phần cứng - Nguyễn Hồng Quang
- 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 2 Electrical Engineering 1
- 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 4 Electrical Engineering 2
- 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 ) 6 Electrical Engineering 3
- Đặ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 8 Electrical Engineering 4
- Cấu trúc chung của hệ thống vi xử lý Bµn phÝm Address Bus VXL Khèi hiÓn 8051 M¹ch ROM RAM thÞ giao LED 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) 10 Electrical Engineering 5
- 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 12 Electrical Engineering 6
- 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 14 Electrical Engineering 7
- 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. 16 Electrical Engineering 8
- 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 18 Electrical Engineering 9
- 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 20 Electrical Engineering 10
- PARAMETER min max units ns Cycle time 400 Tcyc ns /CE pulse width 250 TCE ns /CE access time 250 Tacc ns Toff Output turn-off delay 75 ns TAH Address & CS hold time to /CE 100 ns TAS Address & CS setup time to /CE 0 Tp ns /CE precharge time 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) 22 Electrical Engineering 11
- 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 24 Electrical Engineering 12
- 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 26 Electrical Engineering 13
- Ví dụ 64 Kbit RAM 27 Electrical Engineering Cấu trúc mạch vi xử lý 89c51 28 Electrical Engineering 14
- 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) 30 Electrical Engineering 15
- 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 32 Electrical Engineering 16