Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Архітектура методичка.doc
Скачиваний:
5
Добавлен:
01.03.2025
Размер:
20.71 Mб
Скачать

85. Адресація пристроїв і передача даних

Кожен пристрій SCSI, підключений до шини, повинно мати свою унікальну адресу, що призначається при конфігуруванні. Для 8-бітної шини діапазон значень адреси 0-7, для 16-бітної - 0-15. Адреса задається попередньою установкою перемикачів або джамперів. Для хост-адаптера можливо програмне конфігурування. Адреса визначає номер тієї лінії шини даних, яка здійснює вибірку даного пристрою. Для ІУ значення ідентифікатора визначає пріоритет пристрою при використанні шини, найбільший пріоритет має пристрій з великим значенням адреси.

Типи периферійних пристроїв. Кожне логічний пристрій (ЛУ), що є абонентом шини SCSI, відноситься до одного з стандартизованих зразків ПУ (див. табл. 3.10). Складне ПУ може представлятися декількома ЛУ SCSI. За характером обміну даних Конфіденційність поділяються на 2 класи - блокові з типами 0, 4, 5, 7 і не блокові з типами 1,2,3, 9.

Пристрої прямого доступу (0) зберігають блоки даних. Кожен блок зберігається за унікальним логічного адресою LBA. Типовий приклад пристроїв прямого доступу - накопичувач на магнітних дисках (вінчестер).

Вінчестер з інтерфейсом SCSI не має власної тривимірної логічної геометрії. У відповідності до системи команд SCSI доступ до його секторам виконується тільки за лінійним логічного адресою LB А.

Пристрої прямого доступу можуть не мати рухомих носіїв, а грунтуватися на пам'яті різної природи: SRAM, DRAM, FRAM, EEPROM, флеш-пам'ять.

Пристрої послідовного доступу (1) мають ряд особливостей, пов'язаних з їх принципом дії. Носій представляє собою магнітну стрічку з многодорожечной, серпантином або похило-рядковим типом запису. Носій завжди змінюваний, з деяким конструктивним обрамленням (котушка, картридж), також називається томом. Том має початок носія BOM (beginning-of-medium) і кінець носія ЕОМ (end-of-medium). При запису ІУ повинен заздалегідь знати про наближення кінця носія, для чого визначається позиція раннього попередження EW (Early Warning) з відповідним маркером. Це дозволяє після запису блоку даних з буфера помістити на носій відповідний кінцевий маркер.

Принтери (2), що підключаються через інтерфейс 8С81, не вимагають особливих команд для управління, оскільки функції реалізуються через потік переданих даних.

Процесорними пристроями (3) в термінології 8С81 є джерела і споживачі пакетів інформації. Прикладами процесорних пристроїв є комп'ютери, що обмінюються повідомленнями одностороннім або двостороннім чином.

Пристрої оптичної пам'яті (7) близькі до пристроїв прямого доступу зі змінними носіями, але мають ряд характерних особливостей.

Велика ємність носія викликає необхідність застосування команд з 12-байтним дескриптором.

Пристрої однократного запису (4), зазвичай оптичні, відрізняються неможливістю перезапису раніше записаного блоку.

Накопичувачі CD-ROM (5) призначаються для роботи з CD.

Сканери (6) передають ІУ дані, що описують растрове зображення об'єкту сканування. Команди дозволяють задавати вікна сканування,

визначаючи в них режим і дозвіл.

Пристрої зміни носіїв (8) призначені для автоматичного маніпулювання змінними носіями - дисками і картриджами з магнітними стрічками.

Комунікаційні пристрої (9) призначені для обміну інформацією з пристроями через зовнішню, по відношенню до шини SCSI, середу передачі даних.

Передача даних. У будь-який момент обмін інформацією із шини може відбуватися тільки між парою пристроїв. Операцію починає ініціатор обміну ВП, а цільовий пристрій ЦУ її виконує. ІУ вибирає ЦУ за його ідентифікатором. Найчастіше ролі пристроїв фіксовані: хост-адаптер є ініціатором (ВП), а періферійное.устройство - цільовим (ЦУ).

Інформація по шині даних передається побайтно (послівний) асинхронно, використовуючи механізм запитів (REQ) і підтверджень (АСК). Кожен байт контролюється на непарність (крім фази арбітражу), але контроль може бути вимкнений. Інтерфейс має можливість синхронної передачі даних.

Шина може перебувати в одній з наступних фаз:

- Спокій (Bus Free) - шина знаходиться в стані спокою;

- Арбітраж (Arbitration) - пристрій може отримати право на керування шиною. Дочекавшись спокою шини (Bus Free), пристрій вводить сигнал запиту і свої ідентифікатор. Якщо ідентифікатори виставили кілька пристроїв одночасно, то право на керування шиною отримує пристрій з найбільшим адресою, а інші пристрої відключаються до наступного звільнення шини. Пристрій, що виграло арбітраж, переходить у фазу Selection або Reselection;

- Вибір ІУ (Selection) - ІУ, яке виграло арбітраж, вводить на шину даних результат логічної функції АБО від пари ідентифікаторів - свого і ЦУ, супроводжуючи його бітом паритету. Адресований ЦУ відповідає, якщо запит коректний. Якщо за заданий час ЦУ не відповіло, спрацьовує тайм-аут, ІУ звільняє шину;

- Повторний вибір (Reselection) - аналогічна попередньої, але її вводить ЦУ в тому випадку, коли ЦУ на час виконання команди відключалося від шини. По завершенні внутрішньої операції це пристрій, вигравши арбітраж, викликатиме програму, з якою раніше розпочато

операція. Умови відповіді і тайм-аут аналогічні попередній фазі;

- В фазах передачі даних (Data OUT, Data IN), команд (Command), стану (Status) та повідомлень (Message OUT, Message IN) по шині даних передається інформація, фази ідентифікуються відповідними сигналами, якими управляє ІУ.

В асинхронному обміні передача кожного байта супроводжується взаємозалежної парою сигналів REQ # / ACK #. При передачі від ВП до ЦУ (Data OUT), ІУ супроводжує кожен байт даних стробом REQ #, а ЦУ фіксує прийняті дані по негативному перепаду сигналу REQ # і

підтверджує правильність прийому сигналом АСК #. ІУ вважає передані дані дійсними по негативному перепаду прийнятого сигналу АСК #, і починає новий цикл обміну. При передачі від ЦУ до ІУ (Data IN), призначення сигналів змінюється (ACK # - строб, REQ # - підтвердження). Асинхронний обмін підтримується усіма пристроями для всіх фаз передачі інформації.

Фази передачі даних Data OUT і Data IN можуть виконуватися і в синхронному режимі обміну. При узгодженні синхронного режиму визначаються мінімальні тривалості і періоди керуючих імпульсів ACK # і REQ #, а також дозволене відставання підтверджень від запитів. ІУ передає серію даних, супроводжуваних стробами REQ #, в темпі, обмеженому встановленими часовими параметрами. ЦУ фіксує прийняті дані по негативному перепаду сигналу REQ #, але відповідати на них сигналом ACK # може з деяким запізненням. Як тільки відставання числа прийнятих сигналів ACK # від числа посланих REQ # досягне обумовленого граничного значення, ВП призупинить обмін до приходу чергового підтвердження АСК #. Операція буде вважатися завершеною, коли число прийнятих підтверджень співпаде з числом посланих запитів.

Кожен процес введення / виводу складається з наступної послідовності фаз шини: зі стану Bus Free через фазу Arbitration перехід до фази Selection або Reselection. Далі йдуть фази передачі інформації (Command, Data, Status, Message). Завершальною фазою є Message In, в якій передається повідомлення Disconnect або Command Complete (див. нижче), після чого шина переходить у стан спокою Bus Free.

Для каадого процесу введення / виводу ІУ формує поточний набір з трьох покажчиків, які вказують на черговий байт передається між ІУ і ЦУ інформації (для команди, даних і стану). За повідомленням від ЦУ Save Data Pointer поточні покажчики зберігаються в ІУ.

Система повідомлень (Message System) служить для управління ішерфейсом. Обмін повідомленнями між ІУ і ЦУ відбувається в фазах Message IN / OUT, в одній фазі може передаватися кілька повідомлень. Формати повідомлень стандартизовані; кожне повідомлення починається з коду. Існують однобайтні (коди OOh, 02h - lFh, 30h - FFh), двухбайтного (коди 20h - 2Fh) і

розширені повідомлення (код Olh). У двухбайтного повідомленні другий байт є аргументом повідомлення. У розширених повідомленнях другий байт

задає довжину, а наступні байти несуть код та аргументи повідомлення. Коди повідомлень наведено в табл. 3.11.

Для встановлення зв'язку з конкретним логічним пристроєм або з конкретною цільовою програмою, а також для надання права розриву з'єднання служать повідомлення Identify. У байті їх кодів біти 2-0, залежно від біта 5 (LUNTAR), задають номер логічного пристрою (LUNTAR = 0) або програми (LUNTAR == 1). Одиничним значенням біта 6 (DiscPriv) при передачі повідомлення ІУ наділяє ЦУ правом розриву з'єднання. Розрив з'єднання виконується повідомленням Disconnect.

За допомогою повідомлень узгоджуються параметри синхронного режиму (повідомлення Synchronous Data Transfer Request із зазначенням допустимого періоду циклу і відставання REQ / ACK) і розрядність даних (повідомлення Wide Data Transfer Request). Узгоджені режими будуть діяти до скидання пристроїв за повідомленням Bus Device Reset або "жорсткого" скидання.