Kỹ thuật vi xử lý - Chương 4 potx

38 952 0
Kỹ thuật vi xử lý - Chương 4 potx

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Trờng đại học kỹ thuật Công Nghiệp Nguyễn Tiến Duy Trung tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính 48 http:// www.ebook.edu.vn Chơng 4 Ghép 8088 với bộ nhớ và tổ chức vào ra dữ liệu 1. Giới thiệu tín hiệu chân của 8088 và các mạch phụ trợ a. Bảy nhóm tín hiệu Hình vẽ: Các tín hiệu của 8088 ở chế độ Min (và Max) S4 S3 Truy nhập đến các đoạn 0 0 Đoạn dữ liệu phụ (ES:) 0 1 Đoạn ngăn xếp (SS:) 1 0 Đoạn mã hoặc không đoạn nào 1 1 Đoạn dữ liệu Bảng Các bit trạng thái và việc truy nhập đến các thanh ghi đoạn (Hình vẽ: Đóng vỏ DIP 40 chân của 8088/86) AD7 - AD0 [I/O]: Các chân dồn kênh cho tín hiệu phần thấp của bus địa chỉ và dữ liệu. Khi xung ALE=0 báo cho mạch ngoài biết trên đờng đó (các chân) có tín hiệu dữ liệu (ALE: Address Latch Enable). Khi xung ALE=1 báo cho mạch ngoài biết trên đờng đó (các chân) có tín hiệu địa chỉ. Các chân này ở trạng thái trở kháng cao khi 8088 chấp nhận treo (Hold). A15-A8 [O]: Là các bit phần cao của bus địa chỉ. Các chân này ở trạng thái trở kháng cao khi 8088 chấp nhạn treo. A16/S3, S17/S4, A18/S5, A19/S6 [O]: Là các chân dồn kênh của địa chỉ phần cao của tín hiệu trạng thái. (A: Address, S: Status). Khi ALE=0: Tại các chân này là tín hiệu trạng thái: S6-S3. Khi ALE=1: Tại các chân này là tín hiệu địa chỉ. Các chân này ở trạng thái trở kháng cao khi 8088 chấp nhận treo. RD [O]: Tín hiệu điều khiển đọc ("Xung cho phép đọc"). Khi RD=0 thì bus dữ liệu sẵn sàng nhận dữ liệu từ bộ nhớ hoặc thiết bị ngoại vi. Chân RD ở trạng thái trở kháng cao khi 8088 chấp nhận treo. IO/M (S1) AD0 DT/R (S2) AD1 RD AD2 WR (LOCK) AD3 DEN (S0) AD4 SS0 AD5 READY AD6 HOLD (RQ, GT0) AD7 HLDA (RQ, GT1) A8 INTA (QS1) A9 ALE (QS0) A10 NMI A11 INTR A12 RESET A13 MN/MX A14 TEST A15 CLK A16/S3 Vcc A17/S4 GND A18/S5 GND A19/S6 8 đờng dồn kênh của bus A/D phần thấp 8 đờng dồn kênh của bus A phần cao 4 đờng dồn kênh của bus A/C phần cao tín hiệu điều khiển hệ thống tín hiệu điều khiển bus tín hiệu điều khiển CPU tín hiệu đồng hồ (clock) và nguồn S6=0 liên tục, S5 phản ánh cờ IF. S3, S4 cùng phối hợp để chỉ ra việc truy nhập các thanh ghi đoạn Trờng đại học kỹ thuật Công Nghiệp Nguyễn Tiến Duy Trung tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính 49 http:// www.ebook.edu.vn READY [I]: Tín hiệu báo cho CPU biết tính trạng (trạng thái) sẵn sàng của thiết bị ngoại vi hoặc của bộ nhớ. Khi READY=1 CPU thực hiện ghi/đọc mà không cần xen thêm các chu kỳ đợi. Ngợc lại khi TBNV hay bộ nhớ có tốc độ chậm chúng có thể đa ra tín hiệu READY=0 để báo cho CPU chờ. Khi này CPU tự kéo dài thời gian thực hiện ghi/đọc bằng cách xen thêm các chu kỳ đợi. INTR [I]: Đây là chân tiếp nhận tín hiệu yêu cầu ngắt che đợc. Khi có yêu cầu ngắt tác động đến chân này mà cờ cho phép ngắt IF=1 thì CPU kết thúc lệnh đang thi hành dở (kết thúc chu kỳ lệnh), sau đó nó đi vào chu kỳ chấp nhận ngắt và đa ra tí hiệu INTA=0 tại chân INTA (24). TEST [I]: Tín hiệu tại chân này đợc kiểm tra bằng lệnh WAIT. Khi CPU thực hiện lệnh WAIT mà khi đó TEST=1 thì CPU sẽ chờ cho đến khi TEST=0 thì mới thực hiện lệnh tiếp theo. NMI [I]: Tín hiệu yêu cầu ngắt không che đợc. Tín hiệu này không bị khống chế bởi cờ IF và nó sẽ đợc CPU nhận biết tại dờn dơng của xung yêu cầu ngắt. Nhận đợc yêu cầu này CPU kết thúc lệnh đang làm dở, sau đó chuyển sang thực hiện chơng trình con phục vụ ngắt INT2 (ISR: Interrupt Service Routine). RESET [I]: Tín hiệu Reset lại 8088 (Trong chừng mực nào đó có thể coi tín hiệu này là tín hiệu yêu cầu ngắt không che đợc). Khi tín hiệu RESET=1 và kéo dài ít nhất 4 chu kỳ đồng hồ (4 xung clock) thì 8088 bị buộc phải khởi động lại, nó xoá các thanh ghi: DS, ES, SS, IP và FR về 0 và bắt đầu thực hiệu chơng trình tại địa chỉ CS:IP =FFFF:0000 (nh khi khởi động, IF0 để cấm các ngắt, TF0 để 8088 không bị đặt trong chế độ chạy từng lệnh chạy suốt). CLK [I]: Tín hiệu xung đồng hồ (xung nhịp). Xung nhịp có độ rỗng 77% và cung cấp nhịp làm việc cho CPU (và các mạch khác của hệ thống). Vcc [I]: Chân nguồn. Nguồn cung cấp cho CPU là +5V10%, 340mA. GND [O]: 2 chân nguồn nối với 0V của nguồn nuôi. MN/MX [I]: Chân điều khiển hoạt động của CPU theo chế độ Min/Max (8088 có thể làm việc ở 2 chế độ khác nhau nên có một số chân tín hiệu phụ thuộc vào chế độ làm việc đó). Chế độ MIN (chân MN/MX cần đợc nối thẳng vào +5V mà không qua điện trở) Khi 8088 ở chế độ Min, tất cả các tín hiệu điều khiển liên quan đến các thiết bị ngoại vi truyền thống và bộ nhớ giống nh trong hệ 8085, đều có sẵn bên trong 8088 cho nên việc phối ghép với các thiết bị ngoại vi và bộ nhớ sẽ rất dễ dàng. Vì vậy có thể tận dụng đợc các phối ghép ngoại vi có sẵn giảm giá thành hệ thống. IO/M [O]: Tín hiệu này phân biệt tại một thời điểm cụ thể nào đó phần tử nào trong các thiết bị vào/ra (I/O) hoặc bộ nhớ (M: Memory) đợc chọn để trao đổi dữ liệu với CPU. Trên Address bus lúc đó sẽ có các địa chỉ tơng ứng thiết bị. Chân này ở trạng thái trở kháng cao khi CPU chấp nhận treo. WR [O]: Xung cho phép (giống nh RD). Khi CPU đa ra tín hiệu WR=0 thì dữ liệu đã ổn định và chúng sẽ đợc ghi vào bộ nhớ hoặc thiết bị vào/ra tại thời điểm chuyển mức WR=1. Chân WR sẽ ở trạng thái trở kháng cao khi 8088 chấp nhận treo. INTA [O]: Tín hiệu điều khiển báo cho mạch bên ngoài biết CPU đã chấp nhận yêu cầu ngắt (INTR). Lúc này CPU đa ra tín hiệu INTA=0 để báo cho TBNV biết nó đang chờ mạch ngoài đa lên Data bus số hiệu ngắt (kiểu ngắt). ALE [O]: Xung cho phép chốt địa chỉ (Address Latch Enable). Khi ALE=1 cso nghĩa trên bus dồn kênh A/D là địa chỉ của thiết bị ngoại vi hay bộ nhớ. ALE Trờng đại học kỹ thuật Công Nghiệp Nguyễn Tiến Duy Trung tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính 50 http:// www.ebook.edu.vn không bao giờ bị thả nổi (trạng thái trở kháng cao), khi CPU chấp nhận treo thì ALE=0. DT/R [O]: Tín hiệu điều khiển các đệm bus 2 chiều của Data bus để chọn chiều vận chuyển dữ liệu trên bus D. Chân này ở trạng thái trở kháng cao khi 8088 chấp nhạn treo. DEN [O]: Tín hiệu báo cho bên ngoài biết khi này trên bus dồn kênh A/D có dữ liệu ổn định. Chân này ở trạng thái trở kháng cao kho 8088 chấp nhận treo. HOLD [I]: Tín hiệu yêu cầu treo CPU để mạch ngoài thực hiện trao đổi dữ liệu với bộ nhớ bằng cách truy nhập trực tiếp bộ nhớ (DMA Direct Memory Access). Khi HOLD=1, 8088 sẽ tự tách khỏi hệ thống bằng cách treo các bus A, D, C của nó (các bus ở trạng thái trở kháng cao) để bộ điều khiển DMA là DMAC (DMA Controler) có thể lấy đợc quyền điều khiển hệ thống để thực hiện công việc trao đổi dữ liệu. HLDA [O]: Tín hiệu báo cho bên ngoài biết yêu cầu treo CPU đã đợc CPU chấp nhận và CPU đã treo các bus A, D và một số tín hiệu điều khiển trên bus C. SS0 [O]: Đây là tín hiệu trạng thái. Tín hiệu này giống nh S0 trong chế độ Max và dùng kết hợp với IO/M, DT/R để giải mã các chu kỳ hoạt động của bus. IO/M DT/R SS0 Chu kỳ điều khiển của bus 0 0 0 Đọc mã lệnh 0 0 1 Đọc bộ nhớ 0 1 0 Ghi bộ nhớ 0 1 1 Bus rỗi (nghỉ) 1 0 0 Chấp nhận yêu cầu ngắt 1 0 1 Đọc thiết bị ngoại vi 1 1 0 Ghi thiết bị ngoại vi 1 1 1 Dừng (Halt) Bảng quan hệ một số tín hiệu điều khiển Chế độ MAX (chân MN/MX cần đợc nối thẳng vào 0V) Khi 8088 làm việc ở chế độ Max, một số tín hiệu điều khiển cần đợc tạo ra trên cơ sở các tín hiệu trạng thái nhờ dùng thêm ở bên ngoài một mạch điều khiển bus 8288. Chế độ Max đợc sử dụng trong hệ thống có mặt bộ đồng xử lý toán học 8087. S2, S1 và S0 [O]: Là các tín hiệu trạng thái dùng trong chế độ Max để ghép nối với mạch điều khiển bus 8288. Các tín hiệu này đợc 8288 dùng để tạo ra các tín hiệu điểu khiển trong các chu kỳ hoạt động của bus. Các tín hiệu điều khiển đó nh trong bảng sau: S2 S1 S0 Chu kỳ điều khiển của bus Tín hiệu 0 0 0 Chấp nhận yêu cầu ngắt INTA 0 0 1 Đọc thiết bị ngoại vi IORC 0 1 0 Ghi thiết bị ngoại vi IOWC,AIOWC 0 1 1 Dừng (Halt) Không 1 0 0 Đọc mã lệnh MRDC 1 0 1 Đọc bộ nhớ MRDC 1 1 0 Ghi bộ nhớ MWTC, AMWC 1 1 1 Bus rỗi (nghỉ) Không Trờng đại học kỹ thuật Công Nghiệp Nguyễn Tiến Duy Trung tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính 51 http:// www.ebook.edu.vn RQ/GT0 và RQ/GT1 [O]: Là các tín hiệu yêu cầu dùng bus của các bộ vi xử lý khác trong hệ thống hoặc thông báo chấp nhận treo của CPU để cho phép các bộ vi xử lý khác trong hệ thống dùng bus. RQ/GT0 có các mức u tiên cao hơn RQ/GT1. LOCK [O]: Tín hiệu do CPU đa ra để cấm các bộ vi xử lý khác trong hệ thống dùng bus trong khi nó đang thi hành lệnh nào đó đặt sau tiếp đầu LOCK. QS0 và QS1 [O]: Tín hiệu thông báo trạng thái khác nhau của đệm lệnh (hàng đợi lệnh). Trong các hệ vi xử lý có mặt bộ đồng xử lý toán học 8087 thì các tín hiệu này dùng để đồng bộ quá trình hoạt động của nó với 8088. QS1 QS0 Trạng thái đệm lệnh 0 0 Không hoạt động 0 1 Đọc byte mã lệnh đầu tiên từ đệm lệnh 1 0 Đệm lệnh rỗng 1 1 Đọc byte tiếp theo từ đệm lệnh b. Phân kênh để tách thông tin và đệm bus Để giảm bớt số chân cho các tín hiệu (khó khăn về công nghệ cũng nh khi sử dụng) của CPU, ngời ta thờng thực hiện bằng cách dồn kệnh nhiều tín hiệu trên một chân của CPU (ví dụ nh 8 đờng dồn kênh của bus A, D phần thấp của 8088). Khi nhận đợc tín hiệu ở bên ngoài, ta phải tiến hành tách thông tin (dữ liệu hoặc địa chỉ). Việc này đợc thực hiện bằng các vi mạch chuyên dung có chức năng thích hợp (thờng thì đó là các mạch chốt latch). Để hỗ trợ cho việc tách thông tin, CPU đa ra tín hiệu ALE sao cho khi ALE=1 (mức cao) báo cho bên ngoài biết tại các chân dồn kênh là thông tin về địa chỉ và khi ALE=0 thì tại các chân đó là tín hiệu dữ liệu. Xung ALE đợc dùng để mở các mạch chốt và tách đợc các thông tin về địa chỉ bị dồn kênh. Để nâng cao khả năng tải của các bus (chống suy giảm tín hiệu do đảm nhận nhiều việc nuôi các mạch bên ngoài) các tín hiệu vào/ra CPU phải đợc khuếch đại thông qua các mạch đệm 1 chiều hoặc 2 chiều với các đầu ra: thờng hoặc 3 trạng thái. Các mạch: 74LS373 chốt, 74LS244 khuếch đại đệm 1 chiều, 74LS245 khuếch đại đệm 2 chiều. c. Mạch tạo xung nhịp 8284 Dù cho 8088 làm việc ở chế độ Max hay chế độ Min thì nó vẫn luôn cần xung nhịp (xung clock) từ mạch tạo xung nhịp 8284. Mạch tạo xung clock ngoài việc cung cấp xung clock cho 8088, nó còn cung cấp xung nhịp có tần số thích hợp cho toàn hệ và nó còn đồng bộ tín hiệu RESET và tín hiệu READY của CPU. Các tín hiệu AEN1,AEN2 (Address ENable) [I]: Tín hiệu cho phép chọn đầu vào tơng ứng RDY1, RDY2 làm tín hiệu báo trạng thái sẵn sàng của bộ nhớ hoặc thiết bị ngoại vi. RDY1, RDy2 (Bus Ready): Các tín hiệu này cùng với AEN1, AEN2 dùng để tạo ra các chu kỳ đợi (Tw) ở CPU. 1 18 2 17 3 16 4 15 Vcc X1 X2 ASYN C EFI FC OSC CSYN PCLK AEN1 RDY1 READ Y RDY2 AEN2 Hình vẽ:Mạch 8284 Trờng đại học kỹ thuật Công Nghiệp Nguyễn Tiến Duy Trung tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính 52 http:// www.ebook.edu.vn Hình vẽ: Lợc đồ máy IBM PC/XT ASYNC (Ready Synchronisation Setect) [I]: Chọn đồng bộ hai tầng hoặc đồng bộ một tầng cho tín hiệu RDY1, RDY2. Trong chế độ đồng bộ một tầng (ASYNC = 1) tín hiệu RDY có ảnh hởng tới các tín hiệu READY tới tận sờn âm của xung đồng hồ tiếp theo. Còn trong chế độ đồng bộ hai tầng (ASYNC = 0), tín hiệu RDY chỉ có ảnh hởng đến tín hiệu READY khi có sờn xuống (sờn âm) của xung đồng hồ tiếp theo. READY [O]: Nối đến đầu vào READY của 8088. Tín hiệu này đợc đồng bộ với các tín hiệu RDY1, RDY2. IO/M RD WR A19/S6 A18/S5 A17/S4 A16/S3 A15 A14 A13 A12 A11 A10 A9 A8 CPU 8088 ALE A/D7 A/D6 A/D5 A/D4 A/D3 LS244 G OC oc1 oc2 LS373 LS373 G 74LS373 OC 74LS244 Control Bus Address Bus Data Bus Trờng đại học kỹ thuật Công Nghiệp Nguyễn Tiến Duy Trung tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính 53 http:// www.ebook.edu.vn X1, X2 (Crystal) [I]: Nối với 2 chân của thạch anh với tần số fx. Thạch anh này là một bộ phận của mạch dao động bên trong 8284 có nhiệm vụ tạo xung chuẩn làm tín hiệu đồng bộ cho toàn bộ hệ thống. F/C (Frequency/Crystal) [I]: Dùng để chọn nguồn tín hiệu chuẩn cho 8284. Khi chân này ở mức cao thì xung đồng hồ bên ngoài sẽ đợc dùng làm xung nhịp cho 8284, ngợc lai thì xung đồng hồ của mạch dao động bên trong sẽ đợc chọn làm xung nhịp. EFI (External Frequency Input) [I]: Lối vào cho xung từ bộ dao động ngoài. CLK [O]: Xung nhịp, fclk = fx/3, với độ rỗng 77% nối đến chân CLK của 8088. PCLK (Peripheral Clock) [O]: Xung nhip fpclk = fx/6, với độ rỗng 50% dành cho thiét bị ngoại vi. OSC (OSC Input) [O]: Xung nhịp có tần số fx đã đợc khuếch đại. RES (Reset Input) [I]: Chân khởi động, nối với mạch RC để 8284 có thể tự khởi động khi bật nguồn. RESET (Reset Output) [O]: Nối vào Reset của 8088, là tín hiệu khởi động lại (Reset) cho toàn hệ thống. CSYNC (Clock Synchronisation) [O]: Lối vào cho xung đồng bộ chung khi trong hệ thống có các 8284 dùng dao động ngoài tai chân EFI. Khi dùng mạch dao động trong thì phải nối đất chân này. d. Mạch điều khiển bus 8288 Vi mạch 8288 là mạch điều khiển bus, nó nhận một số tín hiệu điều khiển từ CPU (8088) và cung cấp tất cả các tín hiệu điều khiển cần thiết cho hệ vi xử lý khi CPU 8088 làm việc ở chế độ MAX. Trong đó có một số tín hiệu mang tên AEN: Address ENable CEN: Command ENable IOB: Input/Output Bus mode MRDC: Memory ReaD Command MWTC: Memory WriTe Command AMWC: Advanced MWTC IORC: Input/Output Read Command AIOWC: Advanced IOWC DT/R: Data transmit/Receive X1 CLK X2 8284 RES RESET F/C CSYNC +5 K 10K 10 à CLK 8088 RESET F/C CSYNC Reset hệ thống Hình vẽ: 8284 nối với 8088 1 20 2 19 3 18 4 17 5 Vcc S0 S2 MCE/PDEN DEN CEN INTA IORC AIOWC IOB CLK S1 DT/R ALE AEN MRDC AMWC MWTC Hình vẽ:Mạ ch tạo xung nhịp 8288 Trờng đại học kỹ thuật Công Nghiệp Nguyễn Tiến Duy Trung tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính 54 http:// www.ebook.edu.vn DEN: Data Enable. MCE/PDEN: Master Cascade Enable/Peripheral Data Enable Các tín hiệu của 8288 gồm: S2, S1, S0 [I] (Status): Là tín hiệu trạng thái lấy trực tiếp từ CPU. Tuỳ theo các tín hiệu này mà 8288 sẽ tạo ra các tín hiệu điều khiển khác nhau tại các chân ra của nó để điều khiển sự hoạt động của các thiết bị nối với CPU (Bảng tín hiệu trạng thái Si của 8088 ở chế độ MAX, bao gồm cả vào và ra của các tín hiệu). CLK [I] (Clock): Nối với xung đồng hồ của hệ thống (từ 8284) và dùng để đồng bộ các xung điều khiển đi ra từ mạch 8284. ANE [I] (Address Enable): Đây là tín hiệu vào, sau khoảng thời gian trễ cỡ 150 ms thì sẽ kích hoạt các tín hiệu điều khiển đầu ra của 8288. CEN [I] (Command Enable): Tín hiệu vào để cho phép đea ra tín hiệu DEN và các tín hiệu điều khiển khác của 8288. IOB [I] (Input/Output bus mode): Tín hiệu để điều khiển mạch 8284 làm việc ở các chế độ bus khác nhau. o Khi IOB = 1 thì 8288 làm việc ở chế độ bus vào/ra. o Khi IOB = 0 thì 8288 làm việc ở chế độ bus hệ thống. (Nh trong các máy IBM PC)) MRDC [O] (Memory Read Command): Là tín hiệu điều khiển đoc bộ nhớ, nó sẽ kích hoạt bộ nhớ đa dữ liệu ra bus. MWTC, AMWC [O] (Memory Write Command Advanced MWTC): Là các tín hiệu ghi bộ nhớ hoặc ghi bộ nhớ kéo dài. Chúng giống nh MEMW, nhng AMWC hoạt động sớm lên một chút để tạo ra khả năng cho các bộ nhớ chậm có thêm thời gian. IORC [O] (I/O Read Command): Là các tín hiệu điều khiển đọc thiết bị ngoại vi. Nó kích hoạt các thiết bị ngoại vi đợc chọn để các thiết bị này đa dữ liệu ra bus. IOWC, AIOWC [O] (I/O Write Command, Advanced IOWC): Là các tín hiệu điều khiển ghi thiết bị ngoại vi hoặc ghi thiết bi ngoại vi kéo dài. Chúng là các tín hiệu giống nh IOW, nhng AIOWC hoạt động sớm lên một chút để cho các thiết bị ngoại vi chậm đợc kéo dài thêm thời gian ghi. INTA [O] (Interrupt Acknowledge): Là đầu ra để thông báo cho thiết bị ngoại vi biết là CPU đã chấp nhận yêu cầu ngắt (yêu cầu của thiết bị ngoại vi). Và khi này thiết bị ngoại vi phải đa số hiệu ngắt ra bus dữ liệu để CPU đọc lấy. DT/R [O] (Data Transmit/Receive): Là tín hiệu để điều khiển chiều của dữ liệu trong hệ thống là vào hay ra so với CPU. o DT/R = 1: CPU đọc dữ liệu. o DT/R = 0: CPU ghi dữ liệu. Trong các máy IBM PC thì tín hiệu này đợc nối đến chân DIR của mạch đệm 2 chiều 74LS245 để điều khiển hớng đi của dữ liệu. DEN [O] (Data Enable): Là tín hiệu để điều khiển dữ liệu trở thành bus cục bộ hay bus hệ thống. Trong các máy IBM PC thì tín hiệu này đợc sử dụng cùng với tín hiệu của mạch điều khiển ngắt PIC 8259 để tạo ra tín hiệu điều khiển cực G của mạch đệm 2 chiều 74LS245. MCE/PDEN [O] (Master Cascade Enable/Peripheral Data ENable): Đây là tín hiệu dùng để đặt chế độ làm việc cho mạch điều khiển ngắt PIC 8259 để nó làm việc ở chế độ chủ (Master). ALE [O] (Address Latch Enable): Là tín hiệu báo cho phép chốt địa chỉ có tại các chân dồn kênh A/D (A/D0 A/D7), tín hiệu này thờng nối với chân G của mạch chốt 74LS373 để điều khiển mạch mày chốt lấy địa chỉ. Trờng đại học kỹ thuật Công Nghiệp Nguyễn Tiến Duy Trung tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính 55 http:// www.ebook.edu.vn e. Biều đồ thời gian của các lệnh đọc/ghi Chu kỳ bus là một chu kỳ vận chuyển dữ liệu hoàn thành, điều này còn phụ thuộc vào số lợng các tín hiệu điều khiển (của CPU điều khiển hay DMAC, ). Một chu kỳ bus thờng tốn khoảng 4 chu kỳ xung clock. Cụ thể những hiện tợng xảy ra trong một chu kỳ bus (đã đợc đơn giản hoá) nh sau: T1: Trong chu kỳ này tín hiệu địa chỉ của bộ nhớ hay thiết bị ngoại vi đợc đa ra các chân địa chỉ, các chân dồn kênh A/D, A/S. Các tín hiệu điều khiển nh ALE, DT/R, IO/M cũng đợc đa ra để giúp cho việc chốt địa chỉ này (20 bit địa chỉ). T2: Trong chu kỳ này, CPU 8088 đa ra các tín hiệu điều khiển RD, hoặc WR, DEN (Data Enable) và các tín hiệu dữ liệu: D7 D0 (nếu là lệnh ghi). Tín hiệu DEN thờng dùng để mở các bộ đệm của bus dữ liệu (nếu các mạch đệm này có mặt trong hệ thống). Tại cuối chu kỳ T2 (và giữa mỗi chu kỳ Ti cả Tw nếu có), CPU lây mẫu tín hiệu READY để xử lý trong các chu kỳ tiếp theo khi nó phải làm việc với bộ nhớ hoặc thiết bị ngoại vi hoạt động chậm. T3: Trong chu kỳ T3, CPU dành thời gian cho bộ nhớ hay thiết bị ngoại vi truy nhập dữ liệu. Nếu là chu kỳ đọc dữ liệu thì tại cuối T3, CPU sẽ lấy mẫu tín hiệu của bus dữ liệu. Nếu tại cuối chu kỳ T2 (hoặc giữa mỗi chu kỳ Ti của Tw) mà Cpu phát hiện ra tín hiệu READY = 0 (do bộ nhớ hoặc thiết bị ngoại vi đa đên) thf CPU tự xen vào sau T3 một vai chu kỳ T để tạo chu kỳ đợik Tw (Tw (wait) = n*T) nhằm kéo dài thời gian thực hiện lệnh, tạo điều kiện cho bộ nhớ hoặc thiết bị ngoại vi chậm có đủ thời gian hoàn thành việc ghi/đọc dữ liệu. T4: Trong chu kỳ này các tín hiệu điều khiển đợc đa về trạng thái không tích cực để chuẩn bị cho chu kỳ bus mới. Tín hiệu điều khiển WR trong khi chuyển trạng thái từ 0 1 sẽ kích hoạt việc ghi dữ liệu vào bộ nhớ hay thiết bị ngoại vi. Hình vẽ: Các tín hiệu của 8088 trong một chu kỳ ghi (đã đợc đơn giản hoá) Chu kỳ bus T3 T2 T1 T4 Twr Address Status Signal Address ổn định Data ghi Address Tw (Chu kỳ đợi Wait) T giữa w Low active Low active CLK ALE A/S A/D A WR DEN Hight active Trờng đại học kỹ thuật Công Nghiệp Nguyễn Tiến Duy Trung tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính 56 http:// www.ebook.edu.vn Hình vẽ: Các tín hiệu của 8088 trong một chu kỳ đọc (đã đợc đơn giản hoá) Ví dụ: Xét với CPU 8088 làm việc ở tần số = 5MHz, mỗi Ti kéo dài 200 ns (nano giây). Theo hình vẽ chu kỳ đọc bộ nhớ: việc truy nhập bộ nhớ kéo dài trong khoảng từ T1 đến T3 mất khoảng 600 ns. Ttrễ địa chỉ = 110 ns, Tgiữ R = 30 ns (thời gian giữ của dữ liệu khi đọc) Ttrễ đệm = 40 ns (trễ khi truyền dữ liệu qua các mạch đệm) ==> thời gian thâm nhập = 3*T - Ttrễ địa chỉ - Tgiữ R - Ttrễ đệm = 420 ns ==> Bộ nhớ nối với 8088/5MHz cần có thời gian thâm nhập 420 ns thì hiệu quả (8088 không phải xen thêm các chu kỳ đợi). Hơn nữa, với CPU 8088 thì TRD (độ rộng xung đọc) = 325 ns, là khoảng thời gian đủ dài để cho bộ nhớ với thời gian thâm nhập 420 ns. Trong hình vẽ chu kỳ ghi dữ liệu: Cần có thời gian giữ dữ liệu tối thiểu Tgiữ W = 88 ns sau khi WR chuyển từ 0 > 1. Thực tế thời gian này xấp xỉ bằng 0 đối với các bộ nhớ thông dụng. Độ dài xung ghi đối với 8088/5 MHz là TWR = 340 ns cũng phù hợp với các bộ nhớ có thời gian thâm nhập cỡ 420 ns. T1 T2 T3 T4 Chu kỳ bus Trd Add ress Status Signal Address ổn định Tw Low active Low active CLK ALE A/S A/D A RD DEN Hight active T trễ địa chỉ Trờng đại học kỹ thuật Công Nghiệp Nguyễn Tiến Duy Trung tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính 57 http:// www.ebook.edu.vn Hình vẽ: Mạch tạo 0 7 trạng thái đợi và biểu đồ thời gian 2. Phối ghép 8088 với bộ nhớ a. Bộ nhớ bán dẫn Các vi mạch nhớ thờng dùng với các hệ vi xử lý gồm: ROM (Read Only Memory Bộ nhớ cố định): Bộ nhớ loại này thờng có nội dung đợc ghi săn từ khi sản xuất và chỉ có thể đọc ra nên chúng đợc gọi là bộ nhớ cố định. Loại này còn đợc gọi là ROM mặt nạ vì thông tin trong ROM đợc ghi thông qua một mặt nạ. Khi mất nguồn nuôi cung cấp cho vi mạch thì thông tin vẫn còn (nội dung trong RM không bị mất đi). PROM (Programmable ROM): Loại này ra ROM trắng (cha ghi thôngo tin) sau khi sản xuất. Ngời sử dụng có thể ghi thông tin vào ROM theo ý mình một lần duy nhất bằng máy nạp ROM (máy ghi ROM chuyên dụng). EPROM (Erasable ROM): Loại ROM này có thể ghi (lập trình) bằng xung điện và xoá bằng tia cực tím (UV Untra Violete), từ một máy nạp ROM. RDY1 AEN1 RDY2 CLK READY QA QB QC QD DE QF QG GH CLK CLR SI 1T 3T 4T 5T 6T 7T 8T READY CLK 8088 RD WR INTA READY CS của mạch nhớ T1 T2 T3 TW T5 CLK QA QB QC QD [...]... 1 Tclkx76 6 4- 7 7 4 1 1 1 1 Tclkx91 6 4- 8 8 4 Hoạt động của TMS 45 00A: Nguyễn Tiến Duy Trung tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính 71 http://www.ebook.edu.vn Trờng đại học kỹ thuật Công Nghiệp A7-A0 RA7-RA0 A15-A8 CA7-CA0 ALE A16 RD WR A7-A0 44 64 RAS CAS ALE REN1 ACR ACW A7-A0 CS 44 64 RDY (82 84) RDY CLK CLK CAS RAS TWST 1K +5V Ví dụ: Ví dụ về một ứng dụng của bộ điều khiển DRAM TMS 45 00A trong... bộ vi xử lý phải xen thêm một số trạng thái chờ (1 Tw) mỗi khi ghi/đọc bộ nhớ DRAM FS1, FS0 [I]: Cùng với TWST để chọn chế độ làm vi c theo nh bảng sau: Bảng: TWST FS1 FS0 Số trạng thái chờ Chu kỳ làm tơi Tần số xung làm tơi (KHz) Số nhịp cho 1 lần làm tơi 0 0 0 0 Ngoài REFREQ 4 0 0 1 0 Tclkx31 6 4- 9 5 3 0 1 0 0 Tclkx46 6 4- 8 5 3 0 1 1 0 Tclkx61 6 4- 8 2 4 1 0 0 1 Tclkx46 6 4- 8 5 3 1 0 1 1 Tclkx61 6 4- 8 0 4 1... vi xử lý cần phải đợc bộ vi xử lý tham chiếu tới một cách chính xác khi thực hiện các thao tác ghi/đọc Có nghĩa là mỗi modul nhớ cần đợc gán cho một vùng không gian riêng biệt cụ thể (trong không gian quản lý chung của bọ vi xử lý) , có địa chỉ xác định Vi c gán địa chỉ cụ thể cho modul nhớ đợc thực hiện nhờ một xung chọn chip từ mạch giải mã địa chỉ Vi c phân chia không gian tổng thể của bộ vi xử lý. .. tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính 69 http://www.ebook.edu.vn Trờng đại học kỹ thuật Công Nghiệp Cung cấp các tín hiệu điều khiển ghi/đọc bộ nhớ Làm tơi mỗi hàng trong thời gian đảm bảo yêu cầu không mất mát thông tin Đảm bảo không có tranh chấp trong hoạt động bình thờng của vi xử lý với công vi c làm tơi Để đơn giản các công vi c khi phối ghép DRAM với vi xử lý, các nhà sản xuất vi mạch... trong các hệ vi xử lý có bộ vi xử lý tiên tiến có không gian địa chỉ rất lớn Ta lấy lại ví dụ trong phần trớc, có nghĩa là xây dựng mạch giải mã dùng PROM cho vùng nhớ 64 KB (8KBx8) Ta sử dụng loại PROM TPB28L42 với dung lợng 512 byte để làm bộ giải mã Ta có bảng mẫu các bit để ghi vào PROM TPB28L42 cho ví dụ cụ thể này nh sau: 64 Nguyễn Tiến Duy Trung tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính... Duy Trung tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính 63 http://www.ebook.edu.vn Ví dụ: Xây dựng mạch giải mã cho một vùng nhớ 64 KB bắt đầu từ địa chỉ B0000h đến BFFFFh (vùng này có chứa vùng RAM màn hình) cho các vi mạch nhớ SRAM 8Kx8 Vậy cần 8 vi mạch đã cho ghép lại Trờng đại học kỹ thuật Công Nghiệp A12-A0 D7-D0 RD SRAM 8Kx8 WR CS0 A13 A y0 A 14 B y1 C y2 A15 y3 A18 y4 B000-B1FFF Các chân... (7ch-7fh) y3 y4 WR G2A y5 A7 OSP (7ch-7fh) G2B y6 Hình vẽ: Mạch giải mã địa chỉ cho 4 Input port và 4 output port 74 Nguyễn Tiến Duy Trung tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính http://www.ebook.edu.vn cổng (WR = 0) Trờng đại học kỹ thuật Công Nghiệp RD = 1 C=1 A1, A0 chọn ra 1 trong 4 cổng cao (y4 y7) c Các mạch cổng đơn giản Trong thực tế có rất nhiều vi mạch tổ hợp cỡ vừa có thể dùng làm... phối ghép với thiết bộ vi xử lý để vào/ra dữ liệu Các mạch này thờng đợc cấu tạo từ các mạch: Chốt 8 bit có đầu ra 3 trạng thái: o 74LS373: kích theo mức o 74LS3 74: kích theo sờn Các mạch khuếch đại đệm 8 bit 1 chiều có đầu ra 3 trạng thái (đầu ra đảo hoặc không đảo): o 74LS 240 : kích theo mức o 74LS 244 : kích theo mức Các mạch khuếch đại đệm 8 bit 2 chiều có đầu ra 3 trạng thái: 74LS 245 Tất thảy, chúng... Nhóm A Nhóm B Port C Q0 Bus hệ thống PB7-PB0 Nhóm B Port B Q7 CS Nguyễn Tiến Duy Trung tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính 74LS 244 OC1 OC7 OSP7ch Hình vẽ: Sơ đồ khối của PPI 8255 75 http://www.ebook.edu.vn Trờng đại học kỹ thuật Công Nghiệp Do khả năng mềm dẻo trong các ứng dụng nên nó là mạch phối ghép đợc dùng rất phổ biến cho các hệ vi xử lý: 8, 16, và cao hơn Các chân tín hiệu của... nhớ Vi c dồn kênh địa chỉ trên các chân địa chỉ cần thêm các tín hiệu báo thời điểm nào là địa chỉ hàng và thời điểm nào là địa chỉ cột trên các chân địa chỉ, các tín hiệu đó là: RAS (Row Access) : Cho phép chốt địa chỉ hàng RAS (Column Access): Cho phép chốt địa chỉ cột bên trong vi mạch RAS A7-A0 CAS WR A7-A0 RD D7-D0 TSM 44 64 OE CE CAS RAS Các mạch nhớ DRAM thờng đợc chế Hình vẽ: DRAM TMS 44 64 (64Kx8) . CAS A7 - A0 WR RD CS A10 - A0 D7 - D0 TSM 40 14 OE CE PGM (Vpp) OE/WE CS RAS RAS Hình vẽ: DRAM TMS 44 64 (64Kx8) WR RD A7 - A0 D7 - D0 TSM 44 64 OE CE. G 74LS373 OC 74LS 244 Control Bus Address Bus Data Bus Trờng đại học kỹ thuật Công Nghiệp Nguyễn Tiến Duy Trung tâm Kỹ thuật máy tính Bộ môn Kỹ thuật máy tính . biệt đối tợng mà bộ vi xử lý chọn làm vi c là bộ nhớ hay thiết bị vào/ra (I/O device). Mạch giải mã là khâu gây ra vi c trễ thời gian từ bộ vi xử lý đên thiết bvị ngoại vi mà trong khi chọn

Ngày đăng: 22/07/2014, 05:21

Từ khóa liên quan

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan