Bài giảng môn học Vi xử lý và lập trình hợp ngữ

1.1 Sự ra đời và phát triển của các bộ vi xử lý • Bộ vi xử lý là 1 thành phần không thể thiếu đ-ợc trong các hệ thống tính toán máy vi tính. • Sự phát triển: - Thế hệ 1 (1971 - 1973): Bộ vi xử lý đầu tiên ra đời 1971 là 4004 sản phẩm của hãng Intel 4 bit số liệu, 12 bit địa chỉ. Tiếp theo là 4040, 8008. Đặc điểm chung: + Sử dụng công nghệ PMOS ( lỗ trống) + Tốc độ thực hiện lệnh 10-60às. Tốc độ xung đồng hồ 0.1 đến 0.8 MHz + Tập lệnh đơn giản - Thế hệ 2 (1974-1977): Thế hệ các vi xử lý 8 bit nh- 6800, 8080, 8085.có thể quản lý 64KB bộ nhớ. Đặc điểm: + Sử dụng công nghệ NMOS (Có mật độ phần tử trên một đơn vị diện tích lớn hơn PMOS) + Tốc độ thực hiện lệnh 1-8às. Tốc độ xung đồng hồ 1-5MHz - Thế hệ 3(1978-1982): Thời kỳ các vi xử lý 16 bit 8086/80186/80286 hoặc 68000. + Có tập lệnh đa dạng hơn + Khả năng phân biệt bộ nhớ cao hơn: 1-16MB bộ nhớ 64KB thiết bị ngoại vi + Sản xuất bằng công nghệ HMOS (HMOS, XMOS, VMOS: cải tiến của NMOS) + Tốc độ 0.1 - 1às. Xung đồng hồ 5-10MHz - Thế hệ 4(1983 - nay): Thời kỳ các bộ vi xử lý 32 bit nh- 80386/486/PI,PII,PIII, PIV với các kỹ thuật tiên tiến pipeline, cache, vitual memory, HT.Tất cả đều có bộ đồng xử lý toán học, bộ quản lý bộ nhớ MMU.

pdf152 trang | Chia sẻ: hoang10 | Lượt xem: 584 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng môn học Vi xử lý và lập trình hợp ngữ, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
Phạm Đức Long Bộ mụn CNĐKTĐ Khoa CNTT - ĐHTN BÀI GIẢNG MễN HỌC VI XỬ Lí VÀ LẬP TRèNH HỢP NGỮ MỤC LỤC Trang Ch−ơng 1. Giới thiệu chung 1.1 Sự ra đời và phát triển của các bộ vi xử lý 4 1.2 Sơ đồ khối cấu trúc và hoạt động của hệ vi xử lý 4 Ch−ơng 2. Bộ nhớ bán dẫn 2.1 Phân loại bộ nhớ 6 2.1.1 Bộ nhớ cố định (ROM, PROM) 7 2.1.2 Bộ nhớ bán cố định (EPROM, EEPROM, FLASH) 8 2.1.3 Bộ nhớ đọc ghi (SRAM, DRAM) 10 2.1.4 Bộ nhớ ngoài 10 2.2 Phân cấp bộ nhớ 10 2.3 Cấu trúc của mạch nhớ tĩnh SRAM 2.3.1 Giới thiệu công nghệ 12 2.3.2 Cấu trúc mạch nhớ SRAM 12 2.3.2.1 Bit nhớ 12 2.3.2.2 Thanh ghi 14 2.3.2.3 Bộ giải mã 15 2.3.2.4 Mạch nhớ SRAM (Các thành phần, quy trình đọc ghi, biểu đồ thời gian) 18 2.3.3 Thiết kế thẻ nhớ SRAM 19 2.4 Cấu trúc của mạch nhớ DRAM 19 Ch−ơng 3. Các bộ vi xử lý và vi điều khiển 3.1 Giới thiệu bộ vi xử lý 8 bit tổng quát 23 3.2 Bộ vi xử lý 8 bit (8086/8088) 3.2.1 Sơ đồ khối bộ vi xử lý 8 bit 23 3.2.2 Các thanh ghi của 8086/88 24 3.2.3 Biểu đồ thời gian của chu kỳ đọc ghi số liệu 27 3.2.5 Ghép nối các chân tín hiệu 8088 30 3.2.6 Hệ lệnh của bộ vi xử lý 8 bit 31 3.3 Giới thiệu các bộ vi xử lý tiên tiến dũng 80x86 Thỏi Nguyờn 8-2008 1 Phạm Đức Long Bộ mụn CNĐKTĐ Khoa CNTT - ĐHTN BÀI GIẢNG MễN HỌC VI XỬ Lí VÀ LẬP TRèNH HỢP NGỮ 3.4 Vi điều khiển 8x51/52 80 3.5 Vi điều khiển thế hệ mới AVR 3.5.1. Giới thiệu chung về AVR 96 3.5.2. Bus I2C và SPI 103 3.5.3. AVR 90S8535 105 3.6 Các hệ thống trên một chip có khả năng tái cấu hình (SoC) 3.6.1. SoC là gì? 105 3.6.2. Giới thiệu PSoC 108 3.6.3. PSoC CY8C29446 108 Ch−ơng 4. Các bộ điều khiển và ghép nối dữ liệu 4.1. Vào/ ra số liệu điều khiển bằng ngắt 4.1.1 Nguyên lý vào/ra điều khiển bằng ngắt 117 4.1.2 Bộ điều khiển ngắt PIC (8259) 119 4.1.3 Ngắt trong máy tính IBM/PC 126 4.2. Vào/ra số liệu điều khiển bằng thâm nhập bộ nhớ trực tiếp DMA 4.2.1 Nguyên lý vào/ ra bằng DMA 127 4.2.2 Bộ thâm nhập bộ nhớ trực tiếp DMAC (8237) 129 4.2.3 Sử dụng bộ điều khiển DMAC trong hệ vi xử lý 132 4.3. Bộ đếm lập trình đ−ợc 4.3.1 Sơ đồ khối bộ đếm lập trình đ−ợc (8254) 132 4.3.2 Các chế độ làm việc của bộ đếm lập trình 133 4.3.3 Sử dụng bộ đếm trong hệ vi xử lý 135 4.4. Phối ghép vào ra nối tiếp 4.4.1 Nguyên lý vào/ ra nối tiếp 136 4.4.2 Mạch thu phát thông tin nối tiếp UART 139 4.5. Phối ghép với thiết bị vào/ra qua cổng song song 4.5.1 Ghép nối song song đơn giản 147 4.5.2 Mạch phối ghép vào/ra song song lập trình đ−ợc PPI 8255A 4.5.2.1 Các khối của PPI 148 4.5.2.2 Các tín hiệu của PPI 148 4.5.2.3 Các chế độ làm việc của PPI 149 4.5.2.5 Ghép nối PPI trong hệ vi xử lý 149 Thỏi Nguyờn 8-2008 2 Phạm Đức Long Bộ mụn CNĐKTĐ Khoa CNTT - ĐHTN BÀI GIẢNG MễN HỌC VI XỬ Lí VÀ LẬP TRèNH HỢP NGỮ Ch−ơng 5 Thiết kế hệ thống vi xử lý 5.1 Thiết kế phần cứng 150 5.2 Thiết kế phần mềm 150 5.2.1 ROM Mapping 5.2.2 RAM Mapping 5.2.3 Thiết kế các ch−ơng trình hệ thống 5.2.4 Thiết kế các ch−ơng trình ứng dụng Thỏi Nguyờn 8-2008 3 Phạm Đức Long Bộ mụn CNĐKTĐ Khoa CNTT - ĐHTN BÀI GIẢNG MễN HỌC VI XỬ Lí VÀ LẬP TRèNH HỢP NGỮ Ch−ơng 1. GIỚI THIỆU CHUNG 1.1 Sự ra đời và phát triển của các bộ vi xử lý • Bộ vi xử lý là 1 thành phần không thể thiếu đ−ợc trong các hệ thống tính toán máy vi tính. • Sự phát triển: − Thế hệ 1 (1971 - 1973): Bộ vi xử lý đầu tiên ra đời 1971 là 4004 sản phẩm của hãng Intel 4 bit số liệu, 12 bit địa chỉ. Tiếp theo là 4040, 8008... Đặc điểm chung: + Sử dụng công nghệ PMOS ( lỗ trống) + Tốc độ thực hiện lệnh 10-60às. Tốc độ xung đồng hồ 0.1 đến 0.8 MHz + Tập lệnh đơn giản − Thế hệ 2 (1974-1977): Thế hệ các vi xử lý 8 bit nh− 6800, 8080, 8085...có thể quản lý 64KB bộ nhớ. Đặc điểm: + Sử dụng công nghệ NMOS (Có mật độ phần tử trên một đơn vị diện tích lớn hơn PMOS) + Tốc độ thực hiện lệnh 1-8às. Tốc độ xung đồng hồ 1-5MHz − Thế hệ 3(1978-1982): Thời kỳ các vi xử lý 16 bit 8086/80186/80286 hoặc 68000. + Có tập lệnh đa dạng hơn + Khả năng phân biệt bộ nhớ cao hơn: 1-16MB bộ nhớ 64KB thiết bị ngoại vi + Sản xuất bằng công nghệ HMOS (HMOS, XMOS, VMOS: cải tiến của NMOS) + Tốc độ 0.1 - 1às. Xung đồng hồ 5-10MHz − Thế hệ 4(1983 - nay): Thời kỳ các bộ vi xử lý 32 bit nh− 80386/486/PI,PII,PIII, PIV với các kỹ thuật tiên tiến pipeline, cache, vitual memory, HT...Tất cả đều có bộ đồng xử lý toán học, bộ quản lý bộ nhớ MMU. 1.2 Sơ đồ khối cấu trúc và hoạt động của hệ vi xử lý − Bộ vi xử lý là 1 thành phần không thể thiếu đ−ợc để xây dựng các hệ thống tính toán, máy vi tính. Nh−ng bộ vi xử lý còn phải kết hợp với các thành phần khác để tạo nên hệ vi xử lý − Sơ đồ d−ới đây là sơ đồ tổng quát của các hệ vi xử lý kinh điển áp dụng cho các hệ nhỏ và các máy tính đời đầu. Các máy tính hiện nay có cấu trúc khác hơn. Thỏi Nguyờn 8-2008 4 Phạm Đức Long Bộ mụn CNĐKTĐ Khoa CNTT - ĐHTN BÀI GIẢNG MễN HỌC VI XỬ Lí VÀ LẬP TRèNH HỢP NGỮ In Abus Dbus I/O M CPU Out Cbus • CPU (Central Processing Unit): Bộ não của máy tính gồm các mạch vi điện tử có độ tích hợp rất cao (hàng triệu tranzito trong 1 chip). Nó gồm có các phần: + CU (Control Unit): Khối điều khiển có chức năng: đọc mã lệnh d−ới dạng tập hợp các bit 0/1 từ các ô nhớ trong bộ nhớ. Giải mã các lệnh thành dãy các xung điều khiển để điều khiển các khối khác thực hiện nh− điều khiển ALU, điều khiển ra ngoài àPC + ALU (Arithmetic Logic Unit): Khối tính toán số học và logic: Tổ hợp các mạch logic điện tử phức tạp cho phép thực hiện các thao tác trên các thanh ghi nh− +, -, *, /, AND, OR, NOT... + Registers: Các thanh ghi − Một CPU có thể có nhiều thanh ghi: + Thanh ghi con trỏ lệnh IP (bộ đếm ch−ơng trình) chứa địa chỉ của lệnh sắp thực hiện: Các ch−ơng trình máy tính là tập hợp của các lệnh. CPU sẽ lấy từng lệnh ra để chạy. Để điều khiển chính xác việc thực hiện này cần có một bộ đếm ch−ơng trình. + Các thanh ghi khác: Các thanh ghi đoạn, thanh ghi lệch, thanh ghi con trỏ và chỉ số, thanh ghi cờ... là các thanh ghi đảm nhiệm các chức năng nhất định trong hoạt động của bộ vi xử lý (Sẽ nghiên cứu kỹ qua VXL 8086/8088) • Bộ nhớ (Memory): Có hai loại chính − ROM: Chứa các ch−ơng trình và số liệu cố định, chúng không bị mất khi ngắt điện cung cấp cho vi mạch nhớ ROM. Ch−ơng trình khởi động máy tính, các ch−ơng trình vào ra cơ sở th−ờng đ−ợc chứa trong ROM. − RAM: Khi ngắt điện nguồn nuôi vi mạch RAM nội dung l−u trữ trong nó sẽ bị mất. RAM l−u giữ một phần ch−ơng trình hệ thống, một số số liệu của hệ thống, các ch−ơng trình ứng dụng, các kết quả trung gian của quá trình tính toán, xử lý. Thỏi Nguyờn 8-2008 5 Phạm Đức Long Bộ mụn CNĐKTĐ Khoa CNTT - ĐHTN BÀI GIẢNG MễN HỌC VI XỬ Lí VÀ LẬP TRèNH HỢP NGỮ • Thiết bị vào/ra(I/O): Đây là khối tạo khả năng giao tiếp giữa hệ vi xử lý và bên ngoài. Do đặc điểm của các thiết bị ngoài và hệ trung tâm (Gồm CPU+Bộ nhớ) hoạt động có sự khác nhau về tốc độ làm việc, mức vật lý điện, ph−ơng thức nên cần có bộ phối ghép đệm, đảm bảo cho các khối thiết bị ngoài giao tiếp đ−ợc với hệ trung tâm. Bộ ghép giữa bus hệ thống và thiết bị ngoài gọi là cổng. Mỗi cổng có một địa chỉ xác định. • Hệ thống bus: Là tập hợp các đ−ờng dây dẫn ghép nối các chân địa chỉ, dữ liệu, các chân tín hiệu điều khiển của 3 khối đã nêu trên. − Abus: Nối các đ−ờng dây địa chỉ của CPU với 2 khối M và I/O. Khả năng phân biệt địa chỉ của CPU phụ thuộc số chân địa chỉ của nó. Số này có thể là 16, 20, 24, 36 chân. Chỉ có CPU mới có khả năng phát ra tín hiệu địa chỉ - Có một thiết bị nữa có thể phát ra tín hiệu địa chỉ là DMAC (DMA Controller). − Dbus: Dùng để vận chuyển dữ liệu. Độ rộng của nó 8, 16, 32, 64 bit. Dbus có tính 2 chiều. Các phần tử có đầu ra nối thẳng với bus dữ liệu đều phải đ−ợc trang bị đầu ra 3 trạng thái để có thể làm việc bình th−ờng với bus này. − Cbus: Gồm nhiều đ−ờng dây tín hiệu khác nhau. Mỗi tín hiệu có 1 chiều xác định. Các tín hiệu trên Cbus bao gồm các tín hiệu điều khiển từ CPU nh− đ/k đọc viết, tín hiệu trạng thái từ bộ nhớ, thiết bị ngoại vi báo cho CPU nh− INTR, HOLD... • Hoạt động của hệ: Ch−ơng trình và dữ liệu đ−ợc chứa trong bộ nhớ ngoài đ−ợc đ−a vào bộ nhớ trong (RAM). Sau đó đ−ợc CPU lấy dần ra để xử lý. CPU thực hiện: + Lấy lệnh + Giải mã lệnh + điều khiển thực hiện lệnh Đó là một vòng lặp, trong quá trình thực hiện vòng lặp đó nếu có tác động ngắt hoặc yêu cầu DMA CPU sẽ đáp ứng các yêu cầu này sau đó lại quay trở laị chu trình hoạt động chính. Ch−ơng 2. BỘ NHỚ BÁN DẪN 2.1 Phân loại bộ nhớ − Bộ nhớ dùng để l−u trữ lệnh và dữ liệu − Bộ nhớ đ−ợc xây dựng từ các phần tử nhớ cơ bản, mỗi phần tử là một bit thông tin. Thỏi Nguyờn 8-2008 6 Phạm Đức Long Bộ mụn CNĐKTĐ Khoa CNTT - ĐHTN BÀI GIẢNG MễN HỌC VI XỬ Lí VÀ LẬP TRèNH HỢP NGỮ Bộ nhớ bán dẫn Ngoài Cố định Bán cố định Đọc/Ghi ROM DRAMSRAMFLASHEEPROMEPROM PROM Bộ nhớ 2.1.1 Bộ nhớ cố định (ROM, PROM) D1 D0 Đầu ra D3 D2 D1 Các ô nhớ địa chỉ 0 0 0 1 1 0 1 1 Nếu có diot: Đầu ra =1. Nếu không có diot: Đầu ra = 0 Thỏi Nguyờn 8-2008 7 Phạm Đức Long Bộ mụn CNĐKTĐ Khoa CNTT - ĐHTN BÀI GIẢNG MễN HỌC VI XỬ Lí VÀ LẬP TRèNH HỢP NGỮ CS=1. Đầu ra khi địa chỉ đúng bằng 1, đảo đi bằng 0. Đầu tiên các cầu chì còn nguyên. Nếu vẫn còn cầu chì: điot thông đầu ra di = 0 Nếu cắt cầu chì, không bị sụt áp đầu ra di = 1 2.1.2 Bộ nhớ bán cố định (EPROM, EEPROM, FLASH) • EPROM (Erasable Programmable ROM): Có cấu tạo đặc biệt dựa trên nguyên tắc làm việc của tranzito tr−ờng có cực điều khiển và thờm cửa nổi. Việc nạp ch−ơng trình cho EPROM đ−ợc thực hiện bằng điện. Xoá ch−ơng trình bằng tia cực tím, do tia cực tím ảnh h−ởng đến cực nguồn và cực máng. Bộ nhớ EPROM cú thể ghi lại được. Ký hiệu 27xxx Trong ô nhớ dùng tranzito này, cực cửa đ−ợc nối với đ−ờng từ, cực máng nối với đ−ờng bit và cực nguồn nối với nguồn chuẩn đ−ợc coi là nguồn cho mức logic 1. Khác với tranzito MOS bình th−ờng, ở đây có thêm 1 cửa gọi là cửa nổi; Đó là một vùng vật liệu đ−ợc thêm vào giữa lớp cách điện cao nh− hình trên. Nếu cửa nổi không có điện tích thì không có ảnh h−ởng gì tới cực cửa điều khiển và tranzito hoạt động bình th−ờng. Tức là khi dây từ đ−ợc kích hoạt (cực cửa có điện tích d−ơng) thì hv File oxide File oxide n-Sounce n-Drain Sounce DrainGate Floating Gate Control Gate Hình : Cấu trúc của 1 EPROM Thỏi Nguyờn 8-2008 8 Phạm Đức Long Bộ mụn CNĐKTĐ Khoa CNTT - ĐHTN BÀI GIẢNG MễN HỌC VI XỬ Lí VÀ LẬP TRèNH HỢP NGỮ tranzito thông, cực máng và cực nguồn đ−ợc nối với nhau qua kênh dẫn và dây bit có mức logic 1. Nếu cửa nổi có các điện tử trong đó với các điện tích âm, chúng sẽ ngăn từ tr−ờng điện điều khiển của cực điều khiển và dù dây từ có đ−ợc kích hoạt thì cũng không thể phát ra tr−ờng đủ mạnh với cực cửa điều khiển để làm thông tranzito. Lúc này đ−ờng dây bit không đ−ợc nối với nguồn chuẩn và ô nhớ đ−ợc coi nh− giữ giá trị logic 0. Việc nạp các điện tử vào cửa nổi , tức là tạo ra các ô nhớ có giá trị logic 0, đ−ợc thực hiện bởi các xung điện có độ dài cỡ 50 ms và độ lớn +20V khi đặt vào cực cửa và cực máng. Lúc đó các điện tích mang có năng l−ợng lớn sẽ đi qua lớp cách điện giữa đế và cửa nổi. Chúng tích tụ trong vùng cửa nổi và đ−ợc giữ ở đây sau khi xung ch−ơng trình tắt. Đó là do cửa nổi đ−ợc cách điện cao với xung quanh và các điện tử không có đủ năng l−ợng sau khi lạnh đi, để có thể v−ợt ra ngoài lớp cách điện đó nữa. Chúng sẽ đ−ợc giữ lại ở đây trong một thời gian dài (khoảng 10 năm). Để xóa thông tin, phải chiếu tia tử ngoại vào chip nhớ. Những điện tử ở đây đ−ợc hấp thụ năng l−ơng nhảy lên mức năng l−ợng cao, chúng sẽ rời cửa nổi nh− cách thâm nhập vào đó. Trong chip EPROM có một cửa sổ bằng thạch anh chỉ để cho ánh sáng tử ngoại đi qua khi cần xóa số liệu trong bộ nhớ. • EEPROM (Electric Erasable PROM): Có cấu tạo t−ơng tự EPROM nh−ng nạp xoá bằng điện. Ký hiệu 28xxx (vớ dụ vi mạch EEPROM 2864, 28128). im khỏc ca EEPROM là một lớp kênh màng mỏng ôxit giữa vùng cửa nổi trải xuống d−ới đế và cực máng giữ vai trò quan trọng. Các lớp cách điện không thể lý t−ởng đ−ợc, các lớp điện tích mang có thể thấm qua lớp phân cách với một xác suất thấp. Xác suất này tăng lên khi bề dày của lớp giảm đi và điện thế giữa hai cực ở hai mặt của lớp cách điện tăng lên. Muốn phóng các điện tích trong vùng cửa nổi, một điện thế (- 20V) đ−ợc đặt vào cực cửa điều khiển và cực máng. Lúc này các điện tử âm trong cửa nổi đ−ợc chảy về cực máng qua kênh màng mỏng ôxit và số liệu l−u giữ đ−ợc xóa đi. Điều chú ý là phải l−u ý làm sao cho dòng điện tích này chảy không quá lâu, vì nếu không vùng cửa nổi này lại trở nên điện tích d−ơng làm cho hoạt động của trazito không đ−ợc ở trạng thái bình th−ờng(1). Các chíp ROM hiện nay có thời gian thâm nhập cỡ từ 120-150 ns dài hơn nhiều thời gian đó trong các chip nhớ RAM. • Flash ROM: Cấu tạo t−ơng tự EEPROM sử dụng với điện áp thấp hơn. Ký hiệu 29xxx, 39xxx Thỏi Nguyờn 8-2008 9 Phạm Đức Long Bộ mụn CNĐKTĐ Khoa CNTT - ĐHTN BÀI GIẢNG MễN HỌC VI XỬ Lí VÀ LẬP TRèNH HỢP NGỮ 2.1.3 Bộ nhớ đọc ghi (SRAM, DRAM) + Bộ nhớ RAM tĩnh là SRAM (Static RAM) th−ờng đ−ợc xây dựng trên các mạch điện tử flip – flop. + Bộ nhớ RAM động là DRAM (Dynamic RAM) đ−ợc xây dựng trên cơ sở các điện tích ở tụ điện. Bộ nhớ này phải đ−ợc hồi phục nội dung đều đặn, nếu không nội dung sẽ mất theo sự rò điện tích trên tụ. EDORAM, VRAM, SDRAM, SGRAM đều RAM động. Các bộ nhớ DRAM th−ờng thoả mãn các yêu cầu khi cần bộ nhớ có dung l−ợng lớn. Khi cần có tốc độ truy xuất lớn thì lại phải dùng các bộ nhớ SRAM với giá thành đắt hơn; cả hai loại này đều bị mất thụng tin khi nguồn điện nuôi bị mất, Vì lý do này, các ch−ơng trình dùng cho việc khởi động PC nh− BIOS th−ờng phải nạp trong các bộ nhớ ROM. 2.1.4 Bộ nhớ ngoài Bộ nhớ chính bằng vật liệu bán dẫn trên bản mạch chính không thể l−u trữ một khối l−ợng rất lớn các thông tin, do vậy cần phải có thêm các thiết bị nhớ bên ngoài nh− băng giấy đục lỗ băng cassette, trống từ, đĩa từ, đĩa quang laser. Những thiết bị l−u trữ dữ liệu ở ngoài nh− vậy đ−ợc gọi là bộ nhớ khối (mass storage) hay gọi là nhớ ngoài. Thiết bị nhớ khối thông dụng nhất là đĩa từ. Đĩa từ là một tấm đĩa tròn mỏng làm bằng chất dẻo mylar, hoặc bằng thủy tinh cứng hoặc bằng kim loại cứng, trên có phủ một lớp bột từ tính ôxit sắt từ. Đĩa từ sử dụng kỹ thuật ghi từ để l−u trữ giữ liệu, đó là việc định h−ớng các domain từ để tạo ra các bit thông tin 0 và 1. Khi đã ghi lên đĩa, dữ liệu có thể tồn tại cả khi cắt điện PC. Tuy nhiên giống nh− băng từ, dữ liệu cũ cũng có thể xóa đi thay thế bởi dữ liệu mới nhiều lần. Kỹ thuật điện tử tương lai sẽ cho phộp cú cỏc khối nhớ dung lượng lớn hoàn toàn bằng vi mạch thay thế đĩa từ- hiện nay đó cú cỏc mạch nhớ bỏn dẫn với dung lượng tới vài GB. 2.2 Phân cấp bộ nhớ CPU Registers Cache Bộ nhớ chính Bộ nhớ ngoài Bộ nhớ ảo: Trong các hệ VXL hiện đại đ−ợc tạo nên bởi Cache, M và Bộ nhớ ngoài. Thỏi Nguyờn 8-2008 10 Phạm Đức Long Bộ mụn CNĐKTĐ Khoa CNTT - ĐHTN 11 BÀI GIẢNG MễN HỌC VI XỬ Lí VÀ LẬP TRèNH HỢP NGỮ Bộ nhớ th−ờng đ−ợc tổ chức gồm nhiều vi mạch nhớ đ−ợc ghép lại với nhau để có độ dài từ và tổng số từ cần thiết. Những chip nhớ đ−ợc thiết kế sao cho có đầy đủ chức năng của một bộ nhớ: • Một ma trận nhớ gồm các ô nhớ, mỗi ô nhớ ứng với một bit nhớ. • Mạch logic giải mã địa chỉ ô nhớ. • Mạch logic cho phép đọc nội dung ô nhớ. • Mạch logic cho phép viết nội dung ô nhớ. • Các bộ đệm vào, bộ đệm ra và bộ nhớ mở rộng. Cách tổ chức đơn giản nhất là tổ chức theo từ với sự chọn tuyến tính. Một ma trận nhớ nh− vậy có độ dài của cột bằng số l−ợng từ W và độ dài của hàng bằng số l−ợng bit B trong một từ. Bộ chọn từ giải mã một từ W, nghĩa là giải mã để có một đầu ra duy nhất cho mỗi từ trong bộ nhớ. Rõ ràng ph−ơng pháp chọn tuyến tính có thời gian thâm nhập ngắn nh−ng cần một bộ giải mã lớn khi tổng số từ lớn, làm tăng giá thành sản phẩm. Kích th−ớc của phần giải mã địa chỉ sẽ giảm đi khi tổ chức ma trận nhớ và phần logic chọn từ W cho phép giải mã hai b−ớc. Ma trận nhớ sử dụng giải mã hai b−ớc ứng với từ vật lí và từ logic. Từ vật lí bao gồm số l−ợng bit trong một hàng của ma trận. Từ logic bao gồm số l−ợng bit t−ơng ứng với một từ logic nhận biết đ−ợc và gửi ra cùng một bộ giải mã. Cần hai bộ giải mã: Một bộ giải mã hàng để chọn một từ vật lý và một bộ giải mã cột gồm 1 vài mạch dồn kênh chọn một từ logic từ một từ vật lý đã chọn. Một từ vật lý chia S từ logic. Bộ giải mã hàng là bộ giải mã chọn 1 từ W, mà B=W/S và bộ chọn cột chứa B bộ dồn một đ−ờng từ S. Đệm vào Giải mã hàng 1 từ 128 Ma trận rom 128 X 128 Đệm ra 8 Bộ giải mã cột 1 từ 16 Giải mã hai b−ớc cho ma trận ROM 128x128 8 8 12 127 7 CS A7-A10 4 A0-A6 0701 Thỏi Nguyờn 8-2008 Phạm Đức Long Bộ mụn CNĐKTĐ Khoa CNTT - ĐHTN BÀI GIẢNG MễN HỌC VI XỬ Lí VÀ LẬP TRèNH HỢP NGỮ Ở trên là vớ dụ về sơ đồ ROM dung l−ợng 2048x8 bit, tổ chức theo giải mã hai b−ớc. Ma trận nhớ là 128x128 bit, nh− vậy có 128 = 27 từ vật lí. Một từ vật lí nh− vậy đ−ợc chọn bởi 7 đ−ờng dây địa chỉ từ A0-A6. Bộ giải địa chỉ hàng chọn 1 hàng từ 128 hàng. Một từ vật lí đ−ợc chia thành 128/8=16 nhóm 8 bit. Nh− vậy, những bộ giải mã cột gồm 8 bộ dồn kênh một đ−ờng từ 16 đ−ờng để cung cấp một từ logic 8 bit. Những bit địa chỉ từ A7-A10 điều khiển những bộ giải mã cột. Tr−ờng hợp đặc biệt khi số phần tử trong một từ vật lí bằng số bit trong 1 từ vật lí thi đó là bộ nhớ tổ chức theo bit nghĩa là mỗi từ logic có độ dài 1 bit. Các bộ đệm ra đảm bảo không những mức logic mong muốn và cung cấp đủ dòng điện mà còn có đầu ra collector hở hoặc 3 trạng thái cho phép nối chung đầu ra của một vài chip với nhau. Bộ đệm ra đ−ợc điều khiển bởi 1 hay nhiều đầu vào nh− chọn mạch CS, cho phép CE hay cho phép mở đầu ra 3 trạng thái OE. 2.3 Cấu trúc của mạch nhớ tĩnh SRAM 2.3.1 Giới thiệu công nghệ Cấu trúc mạch điện của RAM phụ thuộc vào công nghệ chế tạo. Có một số công nghệ chế tạo thông dụng: − Mức điện ỏp chuẩn TTL: + Qui định 2 mức 0/1.("0"...., "1"....) + Điện áp sử dụng 5V − MOS: Công nghệ đơn cực (Metal Oxit Semi Conductor) − ECL(Mạch logic ghép cực phát - Emitor Coupler Logic), I2L, SOS − Cỏc khối nhớ NOR Flash 2.3.2 Cấu trúc mạch nhớ SRAM 2.3.2.1 Bit nhớ • Bit nhớ Mỗi phần tử nhớ cơ bản 1 bit là 1 mạch F-F (Flip-Flop) có hai trạng thái cân bằng ổn định để biểu diễn hai giá trị nhị phân 0 và 1. Khi phần tử nhớ đã đ−ợc thiết lập giá trị thì nó nhớ mãi gía trị đó cho đến khi thiết lập trạng thái mới. Thỏi Nguyờn 8-2008 12 Phạm Đức Long Bộ mụn CNĐKTĐ Khoa CNTT - ĐHTN BÀI GIẢNG MễN HỌC VI XỬ Lí VÀ LẬP TRèNH HỢP NGỮ Địa chỉ hàng cột Xi, Yi CS WE Mạch F-F Đầu vào dữ liệu Din Đầu ra dữ liệu Dout Dữ liệu đ−ợc đ−a vào Din, lấy ra Dout Xác định địa chỉ Xi, Yi WE: điều khiển đọc viết; tuỳ theo tín hiệu đ−a đến là 0 hay 1 mà cho phép viết vào hay đọc ra CS (Chipselect): Tín hiệu chọn chip. Một bộ nhớ có thể do nhiều chip nhớ tạo nên. Khi CPU làm việc với chip nhớ nào thì nó sẽ kích hoạt tín hiệu chọn chip của chip nhớ đó. Tín hiệu này th−ờng tác động ở mức thấp. Rn Sn Qn+1 Q/n+1 0 0 Qn Q/n 0 1 1 0 1 0 0 1 1 1 x x Một bit nhớ F-F RS sử dụng tranzixtor phõn cực Một bit nhớ F-F RS sử dụng tranzixtor trường Thỏi Nguyờn 8-2008 13 Phạm Đức Long Bộ mụn CNĐKTĐ Khoa CNTT - ĐHTN BÀI GIẢNG MễN HỌC VI XỬ Lí VÀ LẬP TRèNH HỢP NGỮ Ghi: + Dõy từ = 0 + Đưa dữ liệu vào dõy bit. Giả sử là "1" + Dõy từ =1 → TI/O 1 thụng → D1 của T1 =1 → T2 thụng D2 = 0 → G của T1 = 0 → T1 khụng thụng và duy trỡ ngay cả khi dữ liệu khụng đặt trờn dõy bit + Dõy từ =0. Dữ liệu được ghi trong bit nhớ Đọc: + Trước khi đọc đõy từ = 0 + Dõy từ = 1. T1, T2 thụng đưa dữ liệu ra dõy bit. 2.3.2.2 Thanh ghi • Thanh ghi: Là nhóm các phần tử nhớ có liên hệ với nhau cùng hoạt động