34
CẤU HÌNH NHẬP XUẤT (tt)
• Hình trên là một cấu hình nhập xuất.
• Giao tiếp truyền nhận dãy thông tin từ bàn phím và truyền cho INPR.
• Giao tiếp nhận thông tin từ OUTR và lần lượt gởi cho máy in.
• Cờ nhập 1bit FGL là mạch lật điều khiển.
- Bằng 1 khi thông tin sẵn sàng trong thiết bị nhập.
CẤU HÌNH NHẬP XUẤT (tt)
• Cờ dùng để đồng bộ sự khác nhau về tốc độ giữa thiết bị nhập và máy.
• Qui trình chuyển thông tin như sau: - Khởi đầu FGI bị xóa.
- Khi nhấn phím, mã ký tự 8 bit được dịch vào INPR và FGI lên 1.
- Khi nào cờ còn là 1, INPR không thể thay đổi bằng cách nhấn phím.
36
CẤU HÌNH NHẬP XUẤT (tt)
• Máy kiểm cờ FGI, nếu là 1, INPR được chuyển song song vào AC và xóa cờ.
• Khi đã xóa cờ, thông tin mới có thể dịch vào INPR bằng cách nhấn phím khác.
• Thanh ghi xuất OUTR hoạt động tương tự nhưng ngược lại.
CẤU HÌNH NHẬP XUẤT (tt)
- Khởi đầu FGO lên 1.
- Máy kiểm bit cờ, nếu là 1, thông tin được chuyển song song từ AC vào OUTR và FGO bị xóa 0.
- Thiết bị xuất nhận thông tin mã hóa, in ký tự tương ứng, khi thực hiện xong, đặt cờ lên 1.
- Máy không nạp ký tự mới vào OUTR khi
38
LỆNH NHẬP XUẤT
• Lệnh nhập xuất dùng chuyển thông tin vào ra AC, kiểm các bit cờ và điều khiển ngắt.
• Lệnh nhập xuất có mã tác vụ là 1111 và được nhận diện khi D7 = 1 và I = 1.
NGẮT
• Qui trình truyền thông vừa nói ở trên được điều khiển qua chương trình.
• Máy tính duy trì việc kiểm tra bit cờ, khi có trị đặt
thì khởi phát việc truyền thông.
• Sự khác biệt về tốc độ luồng thông tin giữa máy tính và thiết bị nhập-xuất làm cho cách truyền thông này không hiệu quả.
40
NGẮT (tt)
• Ví dụ máy có thể qua một chu kỳ lệnh trong 1µs
và thiết bị xuất có thể truyền tối đa 10 ký tự trong 1s tức 1 ký tự trong 100.000 µs.
• Hai lệnh được thực hiện khi máy kiểm tra bit cờ và quyết định không truyền.
• Như vậy máy sẽ kiểm cờ 50.000 lần giữa mỗi cuộc truyền.
• Như vậy sẽ lãng phí vì có thể làm nhiều việc khác trong khoảng thời gian đó.
NGẮT (tt)
• Một cách giải quyết là để thiết bị báo cho máy khi sẵn sàng truyền.
• Trong lúc đó máy có thể đang bận việc khác.
• Loại này sử dụng tính năng ngắt.
• Khi máy đang chạy chương trình sẽ không kiểm cờ.
• Khi cờ bật, máy tạm thời bị ngắt và được báo là cờ bật.
• Máy tạm thời ngừng việc đang làm và đi giúp việc nhập xuất.
• Sau đó trở về tiếp tục chương trình đang thực hiện.
42
NGẮT (tt)
• Mạch lật ngắt IEN có thể đặt hoặc xóa bằng 2 lệnh.
• Khi IEN xóa (bằng lệnh IOF), các cờ không thể ngắt máy.
• Khi IEN bật (bằng lệnh ION), máy có thể ngắt.
• Hai lệnh này có thể cho phép người dùng quyết định có dùng tính năng ngắt hay không.
NGẮT (tt)
• R là một mạch lật ngắt trong máy. • Khi R = 0, máy qua chu kỳ lệnh.
• Trong pha thực hiện của chu kỳ lệnh, điều khiển kiểm IEN, nếu là 0 tức người dùng không dùng ngắt, điều khiển tiếp tục chu kỳ lệnh kế.
• Nếu IEN =1, điều khiển kiểm các cờ, nếu cả 2 là 0 tức cả hai thanh ghi nhập/xuất chưa sẵn sàng chuyển thông tin.
44
NGẮT (tt)
• Nếu một trong hai là 1, R bật lên 1.
• Tại cuối pha thực hiện, điều khiển kiểm R, nếu là 1 nó qua chu kỳ ngắt thay vì chu kỳ lệnh.
• Chu kỳ ngắt là một cài đặt cứng tác vụ rẽ nhánh và lưu địa chỉ quay về.
• Địa chỉ quay về có trong PC được lưu trong một vị trí đặc biệt giúp chương trình quay về lệnh bị ngắt.
NGẮT (tt)
• Vị trí này có thể là thanh ghi xử lý, ngăn xếp hoặc 1 vị trí nhớ đặc biệt.
• Ở đây ta chọn địa chỉ 0 để lưu địa chỉ quay về.
• Sau đó điều khiển đưa địa chỉ 1 vào PC và xóa IEN và R để không có ngắt khác xảy ra khi đang xử lý ngắt.