Bài giảng Vi xử lý - Chương 1: Giới thiệu hệ VXL tổng quát - Hồ Trung Mỹ
Phân loại CPU
Người ta có thể chia CPU làm 3 loại :
• Multi-chip CPU (CPU đa chip): Cần 2 hay nhiều chip
LSI để cài đặt ALU và phần điều khiển của máy tính.
• Microprocessor (Vi xử lý): ta sẽ hạn chế từ
microprocessor (mP/UP) cho một chip LSI/VLSI chứa
ALU và phần điều khiển của một máy tính.
• Single chip microprocessor (Vi xử lý đơn chip): (còn
gọi là microcomputer/microcontroller) là 1 chip
LSI/VLSI chứa toàn bộ một máy tính như ở hình 1.1, và
thường được gọi tắt là MCU (Micro-Controller Unit)
Người ta có thể chia CPU làm 3 loại :
• Multi-chip CPU (CPU đa chip): Cần 2 hay nhiều chip
LSI để cài đặt ALU và phần điều khiển của máy tính.
• Microprocessor (Vi xử lý): ta sẽ hạn chế từ
microprocessor (mP/UP) cho một chip LSI/VLSI chứa
ALU và phần điều khiển của một máy tính.
• Single chip microprocessor (Vi xử lý đơn chip): (còn
gọi là microcomputer/microcontroller) là 1 chip
LSI/VLSI chứa toàn bộ một máy tính như ở hình 1.1, và
thường được gọi tắt là MCU (Micro-Controller Unit)
Bạn đang xem 20 trang mẫu của tài liệu "Bài giảng Vi xử lý - Chương 1: Giới thiệu hệ VXL tổng quát - Hồ Trung Mỹ", để tải tài liệu gốc về máy hãy click vào nút Download ở trên.
File đính kèm:
- bai_giang_vi_xu_ly_chuong_1_gioi_thieu_he_vxl_tong_quat_ho_t.pdf
Nội dung text: Bài giảng Vi xử lý - Chương 1: Giới thiệu hệ VXL tổng quát - Hồ Trung Mỹ
- 13-Feb-11 ĐHBK Tp HCM-Khoa Đ-ĐT BM ĐT GVPT: H ồ Trung M ỹ Môn h ọc: Vi X ử Lý Ch ư ng 1 Vi X Lý Gi i thi u h VXL t ng quát H vi m ch s và công ngh • Integrated Circuits – Integrated Circuits →→→ IC 1.1 GI I THI U S PHÁT TRI N – Families of Integrated Circuits : C A CÁC H VI X LÝ • TTL Transistor-Transistor Logic • ECL Emitter-Coupled Logic • MOS Metal-Oxide Semiconductor • CMOS Complementary Metal-Oxide Semiconductor – Integrated Circuits classification : – Various series of the TTL logic family : Classification Transistor Typical IC TTL Series Prefix Example SSI 10 or less 54/74 logic gate Standard TTL 74 7486 MSI 10 to 100 counter, adders High-speed TTL 74H 74H86 LSI 100 to 1000 small memory ICs, Low-power TTL 74L 74L86 gate array Schottky TTL 74S 74S86 VLSI 1000 to 10 6 large memory ICs, Low-power Schottky TTL 74LS 74LS86 microprocessor Advanced Schottky TTL 74AS 74AS86 ULSI 10 6 and up Multifunction ICs Advanced Low-power Schottky TTL 74ALS74ALS86 1
- 13-Feb-11 T ch c bên trong c a vi x lý Thí d cài t ng n x p trong b nh . Thanh ghi tích l y (Accumulator) Thanh ghi tr ng thái (Status Register) • Các k t qu c a các phép toán c a ALU • Trong khi th c hi n m t s phép toán s h c th ng c c t trong thanh ghi tích l y (c ng ho c logic, m t s i u ki n nh t nh phát sinh c g i là ACC). Thí d ALU th c thi l nh mà nh h ng n trình t th c thi ch ơ ng trình. ADD (c ng) nh sau: • Ng i ta c n ph i l u tr các i u ki n nh v y trong m t nhóm các flipflop (ho c thanh ghi) c g i là thanh ghi tr ng thái (status register) (c ng c g i là thanh ghi mã i u ki n) [code condition register] ) trong m t kho ng th i gian xác nh trình t th c thi ch ơ ng trình. M t s c trong thanh ghi tr ng thái Lịch s ử phát tri ển vi x ử lý Th ời k ỳ đầ u •C Z (Zero) • 1969 - 70 Intel 4004 , vi x lý u tiên, 4-bit Intel 4040 , •C S (Sign) nhanh h n 4004 • 1971 Intel 8008 , phiên b n 8 bit c a 4004 •C C (Carry) • 1973 Intel 8080 , 10 l n nhanh h n 8008 •C HC (Half Carry) (Các s n ph m t ư ng t : Motorola MC6800, Zilog Z80) •C OV (Overflow) • 1974 MITS Altair 8800 , máy vi tính u tiên ư c l p trình b ng BASIC ư c phát tri n b i Bill Gates và Paul Allen. • . . . • 1977 Apple II , máy tính gia ình ph c p u tiên Intel 8085 , vi x lý 8 bit sau cùng • 1978 Intel 8086 , vi x lý 16 bit , nhanh h n nhi u • 1979 Intel 8088 3
- 13-Feb-11 Chu k nh n (Fetch)–gi i mã (Decode)– th c thi (Excecution) c a CPU Các đườ ng tín hi ệu k ết n ối v ới một vi x ử lý tiêu bi ểu Hai tín hi u i u khi n c b n là READ &WRITE 1.3 CPU th ư ng ư c g i là read strobe (l ấy m ẫu đọ c) & write strobe (l ấy m ẫu ghi) . 5
- 13-Feb-11 Các cách đị nh đị a ch ỉ Cách nh a ch hi u ng m (Implied addressing mode) hay (Addressing modes) hàm ý • a ch c a các toán h ng c hi u ng m trong l nh, nh v y Cách nh a ch (còn g i là cách nh v a ch ) không c n a ch cho toán h ng ó trong l nh. •N u g i t t a ch th t là EA (Effective Address) thì v i các • Cách nh a ch cho bi t các quy t c di n d ch hay l nh ó th ng s a i vùng a ch c a l nh (tr c khi toán h ng c EA = AC hay EA = Stack[SP] (ngh a là nh ng n x p) tham chi u th t s ). Cách nh a ch t c th i (Immediate addressing mode) • Có nhi u cách nh a ch : • Thay vì ch ra a ch c a toán h ng, v i cách này thì toán – cho ng i s d ng l p trình linh ho t. h ng có s n trong l nh. Do ó: – Không c n có a ch c a toán h ng ó trong l nh. – s d ng các bit trong vùng a ch m t cách h u hi u. – Tuy nhiên ph i ch rõ giá tr toán h ng trong l nh. • Sau ây chúng ta s kh o sát các cách nh a ch thông – ôi khi c n nhi u bit h ơn s bit dành cho a ch . d ng trong các CPU. – Nhanh chóng có c giá tr toán h ng. Cách nh a ch thanh ghi Cách nh a ch gián ti p qua thanh ghi (Register addressing mode) (Register Indirect addressing mode) Vùng a ch trong l nh ch a a ch c a thanh ghi Trong l nh ch ra thanh ghi ch a a ch b nh c a toán h ng. c a CPU. - Ti t ki m s bit trong l nh vì a ch thanh ghi ng n h ơn a ch - Toán h ng c n l y ph i là thanh ghi. b nh . - Nh n toán h ng ch m h ơn nh a ch thanh ghi hay nh a - a ch ng n h ơn a ch b nh . ch b nh . - Ti t ki m vùng a ch trong l nh. - a ch th t EA = [IR(R)] (v i [x] là n i dung c a x). - Nh n c toán h ng nhanh h ơn nh a ch b nh . Thanh ghi c s d ng trong cách này có th có thêm c tính t ng t ng (thêm 1) ho c t ng gi m (b t 1), c tính này - a ch th t EA = IR(R) (IR=thanh ghi l nh; c bi t có l i khi dùng thanh ghi truy c p b nh , giá tr IR(R): vùng thanh ghi c a IR) trong thanh ghi c t ng (thêm 1) ho c gi m (b t 1) m t cách t ng. 7
- 13-Feb-11 Các lo ại b ộ nh ớ Các lo ại b ộ nh ớ • RAM= Random Access Memory (b nh truy c p ng u nhiên) • SRAM (S=Static), DRAM (D=Dynamic) • ROM= Read Only Memory • M= Mask Programmed ( c l p trình b ng che m t n ) • P = Programmable (l p trình c, kh l p trình) • EP = Erasable and Programmable • EEP = Electrically Erasable and Programmable (xóa và l p trình b ng i n) (E 2ROM) • PLD = Programmable Logic Device • PLA = Programmable Logic Array (m ng logic l p trình c) • PAL = Programmable Array Logic (logic m ng l p trình c) • LCA = Logic Cell Array (M ng t bào logic) Dung l ượ ng b ộ nh ớ Các IC ROM thông d ng •M t b nh có r ng d li u m bit v i N ư ng a ch thì s có dung l ư ng (tính theo bit) là 2 N x m. • Dung l ư ng nh c ng ư c tính theo kilobyte (KB), megabyte (MB) và gigabyte (GB) (v i m=8) 1K=2 10 =1024 1M=2 20 =1024K 1G=2 30 =1024M=2 20 K M t s IC DRAM M t s IC SRAM 9
- 13-Feb-11 Thí d : th t byte trong little One Annoying Thing: Byte Order endian và big endian • Hosts differ in how they store data – E.g., four-byte number (byte3, byte2, byte1, byte0) • Little endian (“little end comes first”) Intel PCs!!! – Low-order byte stored at the lowest memory location – Byte0, byte1, byte2, byte3 • Big endian (“big end comes first”) – High-order byte stored at lowest memory location – Byte3, byte2, byte1, byte 0 • Makes it more difficult to write portable code – Client may be big or little endian machine – Server may be big or little endian machine Endian Example: Where is the Byte? 31 24 23 16 15 8 7 0 1 2 3 4 5 6 7 8 8 bits memory 16 bits Memory 32 bits Memory +1 +0 +3 +2 +1 +0 1000 78 1000 78 1000 78 Little- 1001 1002 1004 Endian 1002 1004 1008 1.5 NGO ẠI VI 1003 1006 100C +0 +1 +0 +1 +2 +3 1000 78 1000 78 1000 78 Big- 1001 1002 1004 Endian 1002 1004 1008 1003 1006 100C Phân lo ại ngo ại vi Bus I/O và các module giao ti ếp 11
- 13-Feb-11 Giao ti p I/O l p trình ư c Các v n chuy n d li u Ho t ng ng b và b t ng b – ng b (synchronous) : T t c các thi t b có c thông tin nh thì t ng xung nh p chung. – b t ng b (asynchronous) : Không có xung nh p chung. Chuy n d li u b t ng b Chuy n d li u b t ng b v i xung strobe • Chuy n d li u b t ng b gi a 2 ơ n v c l p c n có các tín hi u i u khi n truy n gi a các ơ n v truy n thông ch th i i m mà d li u s c truy n. • Có hai ph ơ ng pháp chuy n d li u b t ng b : – Xung strobe : Xung strobe c cung c p b i m t ơ n v này báo cho ơ n v kia khi vi c chuy n d li u x y ra. – Th c hi n b t tay (Handshaking) : M t tín hi u i u khi n c i kèm v i m i d li u s c truy n ch s hi n di n c a d li u. ơ n v nh n tr l i v i tín hi u i u khi n khác báo nh n c d li u r i. Chuy n d li u kh i ng b i ơ n v ngu n Chuy n d li u kh i ng b i ơ n v ích v i v i ph ươ ng pháp b t tay ph ươ ng pháp b t tay 13
- 13-Feb-11 I/O b ng ng t (Interrupt) DMA (Direct Memory Access) Ph n c ng DMAC (Direct Memory Access Controller= B i u khi n truy c p b nh tr c ti p) c thi t k th c hi n chuy n d li u t c cao gi a b nh và thi t b . Do ó, DMAC s c n s d ng c hai bus d li u và bus a ch . Bus 1.6 BUS H TH NG • Bus có th hai chi ều (bidirectional) hay một chi ều (unidirectional) •N u c hai d li u và a ch ư c truy n trên cùng m t bus thì ng ư i ta g i bus có dồn kênh (multiplexed). •N u hai thi t b g i thông tin ng th i trên cùng bus thì x y ra tranh ch ấp bus (bus contention) và có thi t b h ư. Cài đặ t bus chung v ới Cài t bus chung v i Bus d n kênh (Multiplexer Bus) Các b m bus 3 tr ng thái 15
- 13-Feb-11 Thí d : Thi t k m ch ánh x 8 chip b nh EPROM 2764 khác nhau (m i EPROM c t ch c nh 8K x 8 bits) thành kh i b nh 64K byte v i a ch v t lý trong dãi F0000H n FFFFFH. Bài gi i. M i EPROM 2764 có th c ánh x tr c ti p vào kh i 8 KB nh sau Kh i th 1: F0000 - F1FFFh Kh i th 2: F2000 - F3FFFH Kh i th 3: F4000 - F5FFFH Kh i th 4: F6000 - F7FFFH Kh i th 5: F8000 - F9FFFH Kh i th 6: FA000 - FBFFFH Kh i th 7: FC000 - FDFFFH Kh i th 8: FE000 - FFFFFH B ng b nh (memory map) và b ng I/O • B ng b nh B ng b nh minh h a nh ng o n nào s c s d ng v i RAM, ROM và m t s tr ng h p là các thi t b I/O. Thí d : 1.8 NH THÌ (Timing) • B ng I/O hay Vùng I/O c t ch c và nh a ch nh vùng nh . M i a ch t ơ ng ng v i m t c ng I/O (thông th ng r ng 8 bit). Các quy ướ c trong gi ản đồ đị nh thì 17
- 13-Feb-11 nh thì c v i DRAM nh thì ghi v i DRAM Ch ư ng trình • Ch ơ ng trình (program) là danh sách các l nh (instruction=l nh, ch th ) hay các phát bi u (statement) i u khi n máy tính hay CPU th c hi n công vi c x lý d li u mong mu n. • Có nhi u lo i ngôn ng l p trình: 1.9 CH NG TRÌNH – Ngôn ng máy (machine language) + Mã nh phân + Mã bát phân hay th p l c phân –H p ng (Assembly Language) (c n có Assembler [Trìnhd ch h p ng ]) Mã ký hi u – Ngôn ng c p cao (c n có Compiler [Trình biên d ch]) Ngôn ng máy •M t chu i các mã nh phân bi u di n các công vi c mà vi x lý s th c thi. D ng dài các bit có th c ơ n gi n hóa b ng d ng s Hex hay Octal. Ngôn ng này khó l p trình. Các vi x lý khác nhau s có nh ng ngôn ng máy khác nhau. • Thí d : 19
- 13-Feb-11 Microprocessor and Microcontroller Sơ kh i c a m t MCU 21