Bài giảng Microcontroller - Chương 5: Giao tiếp ánh xạ bộ nhớ

8051 – Address Generation

z Bộ phát sinh địa chỉ là

1 phần của phần cứng

mà tạo ra địa chỉ duy

nhất cho mỗi thiết bị

giao tiếp

z Ví dụ

– F1 = 0x1000

– F2 = 0x4000

– F3 = 0xFFFF

051- Address Map

z Ánh xạ địa chỉ

– Danh sách địa chỉ của tất cả

các thiết bị giao tiếp

– Danh sách các kích thước

của mỗi thiết bị

z Ví dụ

– 4K of Code Rom at 0x0000

– 4K of Code RAM at 0x4000

– 32K of Data RAM at 0x0000

– 16 bytes of Data RAM (LCD)

at 0x 8000

– 2bytes of Data RAM (7 seg

LEDs) at 0xF000

Ví dụ 1 : 2K Memory at 0x0000

z Các chân: địa chỉ - A10 đến A0, dữ liệu – D7 đến

D0,_RD, _WR, _CE

z Địa chỉ cơ sở = 0x0000

z Kích thước = 2k (2 *1024 = 2048 bytes = 0x0800)

z Để ánh xạ địa chỉ trong khoảng 0x0000 đến 0x07FF,

tính theo hệ nhị phân: 0000 - 0000 - 0000 - 0000 đến

0000 - 0111 - 1111 – 1111. Thì 11 bit địa chỉ thấp nhất,

từ A0 đến A0 phải được nối đến các chân địa chỉ trên

bộ nhớ

pdf25 trang | Chia sẻ: trungkhoi17 | Lượt xem: 490 | Lượt tải: 0download
Bạn đang xem trước 20 trang tài liệu Bài giảng Microcontroller - Chương 5: Giao tiếp ánh xạ bộ nhớ, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
DCE GIAO TIẾP ÁNH XẠ BỘ NHỚ Microcontroller Chapter 5 Ngo Nhu Khoa Department of Computer Engineering ThaiNguyen University of Technology 10/1/2005 2 DCE Giao tiếp của 8051 – Vấn đề chính z Nhắc lại về các chân ra của 8051 và cơ chế dồn kênh Bus AD z Cơ bản về sự giao tiếp bộ nhớ được ánh xạ z Ánh xạ địa chỉ z Phát sinh địa chỉ z Case Study 10/1/2005 3 DCE 1. Chân ra của 8051 z Power - Vcc, Vss z Reset - RST z Crystal - XTAL[1,2] z External device interfacing – EA, ALE, PSEN, WR, RD z I/O Port – P0[7;0], P1[7:0], P2[7:0], P3 z P3 được chia sẻ làm các đường điều khiển – Vào/ra nối tiếp RxD, TxD, – Các ngắt ngoài INT0, INT1 – Điều khiển bộ đếm T0, T1 z P0 và P2 được dồn kênh tạo thành bus địa chỉ và bus dữ liệu 10/1/2005 4 DCE 2. Bus địa chỉ đa hợp trong 8051 z ALE – Cho phép chốt địa chỉ z 8051 điều khiển nó lên mức cao khi địa chỉ đã hữu hiệu trên AD[7,0] z ALE được sử dụng như là tín hiệu cho phép “Enable” chốt đối với vi mạch chốt ngoài (74LS573 hay 373) z P0 và P2 không được sử dụng như các cổng I/O 10/1/2005 5 DCE 3. Giao tiếp với vi điều khiển - Cơ bản z CPU 8051 có: – Address bus A[15:0] – Data bus D[7:0] – Control lines : PSEN, RD, WR z Một hệ thống dựa trên đơn chíp có: z 1 CPU và nhiều thiết bị được giao tiếp với nó z Chỉ 1 bus địa chỉ và 1 bus dữliệu trong 1 hệ đơn vi xử lý – ABUS và DBUS chung cho tất cả các thiết bị giao tiếp và CPU 10/1/2005 6 DCE 3. Giao tiếp với vi điều khiển ... z Tất cả các thiết bị tương thích vi xử lý đều có các đường cho phép (CE - Chip Enable or CS – Chip Select) – Một hàm của bus địa chỉ f(A[15:0]) được nối đến chân CE của mỗi thiết bị được giao tiếp – Hàm này là duy nhất cho mỗi thiết bị được giao tiếp z CPU truy xuất đến mỗi thiết bị được giao tiếp bằng cách thiết lập hàm duy nhất này – Hàm này thường được tham chiếu đến như là địa chỉ của thiết bị 10/1/2005 7 DCE 3. Giao tiếp với vi điều khiển ... z Các thiết bị giao tiếp có thể hoặc READ hoặc WRITE hay cả hai thao tác trên DBUS. – Chỉ 1 thiết bị có khả năng “độc quyền truy xuất - exclusive access” – Đạt được yêu cầu trên nhờ sử dụng các bus 3 trạng thái z Các thiết bị , mà viết lên DBUS chỉ có đường CE và RD/OE z Các thiết bị mà đọc và ghi lên DBUS, có các đường CE, RD/OE và WR – Chu kỳ viết: Xác lập CE và sa đó lập WR – Chu kỳ đọc: Xác lập CE, sau đó lập RD/OE 10/1/2005 8 DCE 4. 8051 Ext. Code Mem Read Cycle 10/1/2005 9 DCE 5. 8051 Ext. Data Mem Read Cycle 10/1/2005 10 DCE 6. 8051 Data Memory Write Cycle 10/1/2005 11 DCE 7. 8051 – Address Generation z Bộ phát sinh địa chỉ là 1 phần của phần cứng mà tạo ra địa chỉ duy nhất cho mỗi thiết bị giao tiếp z Ví dụ – F1 = 0x1000 – F2 = 0x4000 – F3 = 0xFFFF 10/1/2005 12 DCE 8. 8051- Address Map z Ánh xạ địa chỉ – Danh sách địa chỉ của tất cả các thiết bị giao tiếp – Danh sách các kích thước của mỗi thiết bị z Ví dụ – 4K of Code Rom at 0x0000 – 4K of Code RAM at 0x4000 – 32K of Data RAM at 0x0000 – 16 bytes of Data RAM (LCD) at 0x 8000 – 2bytes of Data RAM (7 seg LEDs) at 0xF000 Code RAM 4K Code ROM 4K 0x500 0x4000 0x1000 0x0000 Code memory RAM 32K Led 2b Led 8b 0xF000 0x8000 0x0000 Data memory 10/1/2005 13 DCE 9. Ví dụ 1 : 2K Memory at 0x0000 z Các chân: địa chỉ - A10 đến A0, dữ liệu – D7 đến D0,_RD, _WR, _CE z Địa chỉ cơ sở = 0x0000 z Kích thước = 2k (2 *1024 = 2048 bytes = 0x0800) z Để ánh xạ địa chỉ trong khoảng 0x0000 đến 0x07FF, tính theo hệ nhị phân: 0000 - 0000 - 0000 - 0000 đến 0000 - 0111 - 1111 – 1111. Thì 11 bit địa chỉ thấp nhất, từ A0 đến A0 phải được nối đến các chân địa chỉ trên bộ nhớ. 10/1/2005 14 DCE 9.Ví dụ 1 ... z Các bit địa chỉ không sử dụng là – A15 đến A11 z Địa chỉ cơ sở là 0x0000 z CE phải được phát sinh nếu tất cả các bit địa chỉ không sử dụng đang ở mức logic 0. (CE kích hoạt ở mức thấp): _CE = A15 + A14 + A13 + A12 + A11 z Tiếp sau đó, nối các chân điều khiển đọc/viết: _RD và _WR 0 1 1 1 1 1 0 1 X X X X 0 X 1 X X X 0 X X 1 X X 0 X X X 1 X 0 X X X X 1 _CEA11A12A13A14A15 Bảng sự thật cho CE 10/1/2005 15 DCE 10. Vd-2: Same Memory at 0x4000 z Địa chỉ cơ sở là 0x4000 – 0100 0000 0000 0000 z Kích thước 2K z Các bit địa chỉ không sử dụng – A15 đến A11 z CE phải được phát sinh như mô tả trong bảng chân lý như hình bên z Biểu thức 1 0 1 1 1 1 1 1 1 X 0 0 1 0 1 X 0 X X 1 1 X 0 X X X X on 0 1 1 1 1 1 so X 0 X X X X and _CEA11A12A13A14A15 Bảng chân lý cho CE 10/1/2005 16 DCE Định địa chỉ đầy đủ và không đầy đủ z Định địa chỉ đầy đủ: – Sử dụng tất cả các bít không dùng để tạo ra tín hiệu CE z Định địa chỉ không hoàn chỉnh – Sử dụng 1 tập con của các bit địa chỉ không được dùng – Thường làm giảm mức độ phức tạp cho bộ phát sinh địa chỉ – Tạo ra các địa chỉ bí danh (1 thiết bị có nhiều địa chỉ) z Ví dụ – 2K bộ nhớ ở 0x0000, ta được sử dụng các bit từ A15 đến A11 – Thay vào đó, ta chỉ nối A11 đến _CE – Cùng kích thước 2K thiết bị nhớ sẽ được định tên cho tất cả các giá trị địa chỉ khi các bit từ A15 đến A12 tích cực z 0x0000, 0x1000, 0x2000, 0x3000, . , 0xF000 – Bộ tạo địa chỉ trở nên rất đơn giản, nhưng chúng ta bị lãng phí một không gian địa chỉ lớn 10/1/2005 17 DCE Bộ giải mã và phát sinh địa chỉ 74138 z Bộ giải mã 3 to 8, được đóng gói trong 1 đơn chip. z Phát sinh tín hiệu địa chỉ đầy đủ theo 3 đường địa chỉ đầu vào. z Ví dụ – Các đầu vào của bộ giải mã được nối với các chân A15, A14, A13 – Đầu ra của bộ giải mã nhận được các địa chỉ cơ sở: 0x0000, 0x2000, 0x4000, 0x6000, 0x8000, 0xA000, 0xC000, 0xE000 z Đối với những bộ giải mã phức tạp hơn thì có thể dùng các thiết bị khả lập trình như PALs, PLDs hay FPGAs 10/1/2005 18 DCE Bộ nhớ mã lệnh ngoài z Có thể dùng RAM hoặc ROM z Sự phát sinh địa chỉ bởi 1 thủ tục chuẩn z Nối _PSEN đến _OE của thiết bị nhớ _RD và _WR không cần quan tâm – Không nối các chân này của 8051 đến thiết bị nhớ z Nối các bit dữ liệu D7-D0 của bộ nhớ và 8051 10/1/2005 19 DCE Bộ nhớ dữ liệu ngoài z Có thể dùng RAM hoặc ROM z Sự phát sinh địa chỉ bởi 1 thủ tục chuẩn z Nối _RD từ 8051 đến OE của bộ nhớ z Nối _WR từ 8051 đến WR của bộ nhớ z Bỏ qua _PSEN z Nối các bit dữ liệu D7-D0 của bộ nhớ và 8051 10/1/2005 20 DCE Bộ nhớ mã lệnh + dữ liệu z Có thể dùng RAM hoặc ROM z Sự phát sinh địa chỉ bởi 1 thủ tục chuẩn z AND logic giữa _PSEN và _RD, sau đó nối với chân OE của bộ nhớ z Nối _WR từ 8051 đến WR của bộ nhớ z Nối các bit dữ liệu D7-D0 của bộ nhớ và 8051 10/1/2005 21 DCE Các thiết bị ngoài không có nhớ z Thủ tục kết nối giống như trong giao tiếp với bộ nhớ z Chỉ có sự khác biệt là các thiết bị đó chiếm 1 không gian địa chỉ rất nhỏ. z Ví dụ: – 8 LEDS được nối đến 1 bộ đệm chốt 8bit. Bộ đệm chốt được ánh xạ địa chỉ ở 0xF000, kích thước 1byte – Thiết bị I/O 8255 được ánh xạ bộ nhớ ở địa chỉ 0xD000, kích thước 4 bytes 2210/1/2005 Case Study - Sample 8051 System 10/1/2005 23 DCE Case study – Sample 8051 System z 8031 based – No on-chip ROM, 128 bytes on-chip RAM, 18.432MHz oscillator, 74HC373 based ADBUS demuxer – 8Kx8 external code memory in 28C64 EEPROM – Code memory at 0x0000 – 32Kx8 external code+data overlapped in 62256 SRAM. – SRAM mapped at 0x8000 z SRAM and EEPROM share code memory space. So decoding needed. – A15 line is used for the purpose – A15 = 0 EEPROM is selected (hence 0x0000) – A15 = 1 SRAM is selected (hence 0x8000) 10/1/2005 24 DCE Kỹ thuật dò ngược z Nhận được 1 hệ thống với tình trạng thiếu hoặc không có tài liệu đi kèm, cần phải xác định chức năng, sơ đồ , của hệ thống z Nhà cung cấp không hỗ trợ đáng kể về tài liệu. z Kỹ thuật dò ngược là rất có giá trị! z Thường là không có sơ đồ nguyên lý z Phần mềm cũng không được công bố! z Mã lệnh trong On-chip có thể được bảo vệ chống copy!! 10/1/2005 25 DCE Thanks z Next Class – IO Interfacing – 8255 IO device – IO mapped Interfacing of ADC, LCD – Timing considerations for interfacing

Các file đính kèm theo tài liệu này:

  • pdfbai_giang_microcontroller_chuong_5_giao_tiep_anh_xa_bo_nho.pdf