Портал освітньо-інформаційних послуг «Студентська консультація»

  
Телефон +3 8(066) 185-39-18
Телефон +3 8(093) 202-63-01
 (093) 202-63-01
 studscon@gmail.com
 facebook.com/studcons

<script>

  (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){

  (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),

  m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)

  })(window,document,'script','//www.google-analytics.com/analytics.js','ga');

 

  ga('create', 'UA-53007750-1', 'auto');

  ga('send', 'pageview');

 

</script>

Вибір та опис структурної схеми контролера послідовного синхронного приймання даних

Тип роботи: 
Курсова робота
К-сть сторінок: 
50
Мова: 
Українська
Оцінка: 

DXчитання байту з порта A2

TESTAL, 1перевірка нульового стану реєстру А2
JNSMlперехід на мітку ml якщо розряд не нульовий
MOVAL, 64байт, що виводимо помістимо в AL
MOVDX, A1номер порта A1 вводимо в DX
OUTDX, ALвміст реєстра AX передаємо в порт A1
 
Команда у другому рядку призводить до наступних дій. При її виконанні процесор по шині адреси передає в контролер адресу А2, супроводжуючи його сигналом "Введення" (IORD #; тут і далі в дужках вказані сигнали на шині ISA). Логіка управління контролера, реагуючи на ці сигнали, забезпечує передачу в процесор вмісту реєстра стану А2 по шині даних системного інтерфейсу.
Команда в третьому рядку призводить до наступних дій. Процесор перевіряє значення відповідного розряду прийнятих даних. Нуль у цьому розряді вказує на неготовність ЗП до прийому даних і, отже, на необхідність повернення до перевірки вмісту А2, т. е. процесор, виконуючи три перші команди, очікує готовності ЗП до прийому даних. Одиниця в цьому розряді підтверджує готовність ЗП і, отже, можливість передачі байта даних.
У сьомий рядку здійснюється пересилання даних з реєстра AX процесора в реєстр даних контролера А1. Процесор по шині адреси передає в контролер адресу А1, а по шині даних - байт даних, супроводжуючи їх сигналом "Висновок" (IOW #). Логіка управління контролера забезпечує запис даних із шини даних в реєстр даних А1 і встановлює в нуль біт готовності реєстра стану А2, формуючи тим самим керуючий сигнал для ЗП "Вихідні дані готові". ЗП приймає байт даних і керуючим сигналом "Дані прийняті" встановлює в одиницю реєстр стану А2. (Далі контролер ЗП по цьому сигналу може сформувати і передати в процесор сигнал "Готовність ЗП", який в даному випадку сповіщає процесор про прийом даних зовнішнім пристроєм і дозволяє процесору зняти сигнал "Висновок" і тим самим завершити цикл виведення даних в команді пересилання, проте в IBM-сумісних персональних комп'ютерах з шиною ISA сигнал "Готовність ЗП" не формується, а є сигнал IO CH RDY #, що дозволяє продовжити цикл обміну, якщо пристрій недостатньо швидкий. В даному випадку немає необхідності в сигналі "Готовність ЗП", т.к . шина ISA є синхронної і, отже, всі операції виконуються по тактових імпульсах).
Блок-схема простого контролера ЗП, що забезпечує побайтно прийом даних з ЗП, наведена на Рис 1.6. У цьому контролері при взаємодії з зовнішнім пристроєм також використовуються два керуючих сигналу: "Дані від ЗП готові" і "Дані прийняті"
 
Рис 1.6 Простий паралельний контролер вводу
 
Для формування керуючого сигналу "Дані прийняті" та прийому з ЗП керуючого сигналу "Дані від ЗП готові" використовується однорозрядних адресується реєстр стану й керування А2.
Зовнішній пристрій записує в реєстр даних контролера А1 черговий байт даних і керуючим сигналом "Дані від ЗП готові" встановлює в одиницю реєстр стану й керування А2.
При цьому формуються: керуючий сигнал системного інтерфейсу "Готовність ЗП", ознака готовності ЗП до обміну, рухаючись в процесор по одній з ліній шини даних системного інтерфейсу за допомогою операції введення при реалізації програми асинхронного обміну.
Тим самим контролер сповіщає процесор про готовність даних в реєстрі А1. Процесор, виконуючи програму асинхронного обміну, читає байт даних з реєстра даних контролера і обнуляє реєстр стану й керування А2. При цьому формується керуючий сигнал "Дані прийняті" в шині зв'язку із зовнішнім пристроєм.
Логіка управління контролера і приймачі шин системного інтерфейсу виконують ті ж функції, що і в контролері виводу (див. Рис 1.5),
Розглянемо роботу паралельного інтерфейсу вводу при реалізації програми асинхронного обміну. Алгоритм асинхронного введення так само простий, як і асинхронного виведення.
1.Процесор перевіряє наявність даних в реєстрі даних контролера А1.
2.2. Якщо дані готові (логічна 1 в реєстрі А2), то вони передаються з реєстра даних А1 на шину даних системного інтерфейсу і далі в реєстр процесора або елемент пам'яті мікрокомп'ютера. Інакше повторюється п. 1.
3.Приклад 1.2. Фрагмент програми прийому байта даних в асинхронному режимі з використанням паралельного інтерфейсу.
 
MOVDX, A2номер порта A2 вводимо в DX
m1:INAL, DXчитання байту з порта A2
TESTAL, 1перевірка нульового стану реєстру стану A2
JZMlперехід на мітку ml якщо розряд не нульовий
MOVDX, A1номер порта A1 вводимо в DX
INAL, DXвміст реєстра A1 передаємо в реєстр AL
 
У третьому рядку виконується перевірка вмісту реєстра А2, тобто ознаки наявності даних в реєстрі даних А1. Команда виконується точно так само, як і в прикладі 2.1. Одиниця в нульовому розряді (вміст реєстра А2) підтверджує, що дані від ЗП записані в реєстр даних контролера і необхідно переслати їх на шину даних. Нуль в знаковому розряді вказує на неготовність даних від ЗП і, отже, на необхідність повернутися до перевірки готовності.
IN AL, DX - пересилання даних з реєстра даних контролера А1 в реєстр процесора AL. Процесор передає в контролер по шині адреси системного інтерфейсу адресу A1, супроводжуючи його сигналом "Введення". Логіка управління контролера у відповідь на сигнал "Введення" (IORD #) забезпечує передачу байта даних з реєстра даних А1 на шину даних
Фото Капча