
- •Статичні та динамічні параметри інтегральних схем.
- •Принципи організації оперативної та кеш-пам’яті. Асоціативна пам'ять.
- •Основні поняття моделі взаємодії відкритих систем (osi).
- •Кодування від’ємних чисел, прямий, обернений та доповняльний коди.
- •Визначити поняття роздільної здатності сканера. Вибір сканера. Пояснити принцип роботи сканера.
- •Методи комутації, що використовуються в комп’ютерних мережах. Порівняльна характеристика.
- •Архітектура мікропроцесорної системи. Структура та функціонування мікропроцесорної системи.
- •Сторінкова організація оперативної пам’яті. Віртуальна пам'ять.
- •2. Синхронізація паралельних процесів за допомогою семафорів.
- •3. Поняття архітектури еом. Архітектура фон – Неймана, гарвардська архітектура.
- •Порівняльна характеристика risc та сisc архітектури.
- •Сучасні моделі опису комп’ютерних мереж (моделі osi та tcp/ip), їх порівняльний аналіз.
- •Постійні запам’ятовуючі пристрої. Flash – пам'ять.
- •Режими роботи мікропроцесорної системи.
- •Надати характеристику можливих форм – факторів шин agp, pci Express.
- •Емітерно - зв’язана логіка.
- •Відбивачі струму: призначення та види.
- •Матрична архітектура комп’ютерів.
- •Структура кадру технології Ethernet.
- •Загальна структура мікропроцесорної системи
- •Система команд мікропроцесорів
- •Диференційний підсилювач: види, основні принципові схеми.
- •Принцип роботи[ред.]
- •Застосування[ред.]
- •Принцип роботи[ред.]
- •Методи частотного та часового ущільнення даних для передавання через моноканал.
- •Програмуання операцій з файлами різними мовами Visual Basic та Visual c#
- •C#. Работа с файлами.
- •Функция InputBox (Visual Basic)
- •Відмінності реальних оп від ідеального
- •1.3.3.2. Проектування мереж wlan/WiMax на сучасному рівні
- •1.3.3.4. Використання процедур проектування бездротових мереж та ефекти, які моделюються
- •Базові понятття[ред.]
- •Призначення комунікаційних мереж[ред.]
- •Класифікація комунікаційних мереж[ред.] Класифікація за областю дії[ред.]
- •Класифікація за топологією[ред.]
- •Класифікація згідно з використаними протоколами[ред.]
- •Принципи комунікації[ред.]
- •Мережеві технології локальних мереж[ред.]
- •Технології[ред.]
- •Див. Також
- •Найпростіші підсилювачі на польових транзисторах
- •Лінійні стабілізатори напруги на транзисторах.
Програмуання операцій з файлами різними мовами Visual Basic та Visual c#
Ну, учимся работать с текстовыми файлами. Это даст нам возможность прочитать существующий файл, изменить его, или создать свой, не прибегая к текстовым редакторам. Кроме того, в текстовом файле удобно хранить служебные данные собственной программы, например установки пользователя, результаты обработки данных и т.п. Текстовой файл, собственно по названию, содержит в себе текстовые символы, ну и символы типа возврат каретки или перевод строки. Традиционно они имеют расширение .txt для текста, .dat для данных, .bat для исполняемых (командных) файлов, ну Windows еще использует .ini, .log, .inf. Читать и записывать их надо последовательно, символ за символом, начиная с первого.
Итак, чтобы что-нибудь сделать с файлом, прежде всего, его надо открыть. При открытии файла для последовательного доступа нельзя считать какой-то один, к примеру, знак из середины файла, для этого есть другие способы доступа, но об этом не сегодня.
Для открытия файла используется оператор Open. Синтаксис его такой:
Open путь For режим As #номер файла Примечание: для открытия файлов прямого доступа, или двоичных файлов оператор Open содержит еще кое-какие аргументы, но сейчас мы их не используем и опускаем.
Все указанные аргументы должны обязательно присутствовать: путь - это полный путь к открываемому файлу - (строковое выражение) пишется в кавычках, может состоять из нескольких строк, соединенных знаком конкатенации &. (Например "c:\MyText\referat.txt" или "c:\Mytext\" & "referat.txt") режим - способ открытия файла и представляет собой ключевые слова. В этой главе му будем использовать Input для считывания данных из файла, Output - для записи данных в файл, и Append - для добавления данных в файл. В режиме Input можно еще раз открыть уже открытый файл под другим номером, не закрывая его, в режимах Output и Append надо сначала закрыть файл, а потом открыть его снова. #номер файла - это всего лишь номер, по которому VB индентефицирает открытый файл. Он может быть любой от #1 до #255. Однако, лучше всего использовать функцию FreeFile (см. в примере), которая сразу возвратит свободный номер в переменную, и тебе нет нужды искать по своему коду, открыт ли у тебя файл под номером, например #3.
Кстати сказать, после того, как передача или прием данных в (из) файл(а) будут закончены, его надо закрыть, делается это оператором Close. Если этот оператор написать без всяких аргументов, он закроет все открытые файлы. Если же нам надо закрыть файл, скажем номер 2, то пишем Close #2. Попробуем работать с файлами на примерах:
C#. Работа с файлами.
В этом посте будут рассмотрены основные операции над файлами. Примечание. Все необходимые классы находятся в пространстве имен System.IO.
Создание файла.
Для этого воспользуемся классом FileInfo из пространства имен System.IO. В конструктор передаем имя будущего файла. Создание файла производится вызовом метода Create().
FileInfo fi = new FileInfo("new.txt"); fi.Create(); |
Удаление файла.
Все аналогично предыдущему примеру. Для удаления файла используем метод Delete().
FileInfo fi = new FileInfo("new.txt"); fi.Delete(); |
Запись в файл.
Для записи (а в последующем и для чтения) в файл мы будем использовать символьные потоки позволяющие оперировать непосредственно с символами Unicode.
StreamWriter sw = new StreamWriter("name.txt"); sw.WriteLine("блаблабла"); sw.Close(); |
После всех действий над файлом не забываем закрывать его используя метод Close(), в противном случае изменения в файле не только не будут сохранены. Приведеный выше пример записи файла полностью перезаписывает его, если же надо дописать в конец файла:
StreamWriter sw; FileInfo fi = new FileInfo("name.txt"); sw = fi.AppendText(); sw.WriteLine("blablabla"); sw.Close(); |
Чтение из файла.
Для того чтобы файл был корректно считан (без всяких непонятных символов), он должен быть сохранен в юникоде.
StreamReader streamReader = new StreamReader("name.txt"); string str = "";
while (!streamReader.EndOfStream) { str += streamReader.ReadLine(); } |
Ещё один вариант, для разнообразия
StreamReader streamReader = new StreamReader("name.txt"); string str = "", str_temp="";
while ((str_temp = streamReader.ReadLine()) != null) { str += str_temp; } |
Примечание.
Для корректной работы с потоками ввода/вывода рекомендуется использовать конструкцию using:
using(StreamWriter streamWriter = new StreamWriter("name.txt")) { // ... } |
По выходу из блока using, поток, с которым вы работали, автоматически закроется.
БІЛЕТ № 10
№1
№2
МНОЖЕННЯ ЧИСЕЛ З ПЛАВАЮЧОЮ КОМОЮ
Для чисел
і
,
що представлені в формі з плаваючою
комою, добуток обчислюється за формулою:
,
де
,
.
Звідси випливає, що процес множення складається з чотирьох етапів:
множення мантис;
додавання порядків;
нормалізація й округлення мантиси добутку;
корегування порядку добутку.
Перші два етапи можуть виконуватись одночасно, оскільки вони незалежні один від одного. При цьому множення мантис може бути здійснене будь-яким з розглянутих методів множення.
У загальному випадку результат множення мантис може бути одержаний в ненормалізованій формі. Причому порушення нормалізації можливо тільки зліва. Воно усувається шляхом зсуву коду мантиси на один розряд вліво і, відповідно, корегується порядок добутку шляхом віднімання одиниці від суми порядків. Округлення мантиси здійснюється додаванням одиниці до (п+1)-го розряду.
Під час виконання операції множення чисел з плаваючою комою можуть мати місце такі особливі випадки.
Якщо порядок результату є найбільшим від'ємним числом, то необхідно формувати машинний нуль.
Коли виникає переповнення додатного порядку і воно не усувається після нормалізації і корегування порядку, то необхідно формувати ознаку переповнення порядку.
Ці особливі випадки можна передбачити в алгоритмі операції множення введенням корегування добутку на підставі ознак результату.
Особливості ділення чисел з плаваючою комою
Для чисел і , що представлені в формі з плаваючою комою, частка визначається за формулою:
де
,
.
Звідси випливає, що процес ділення складається з чотирьох етапів:
ділення мантис;
віднімання порядків;
нормалізація мантиси частки;
корегування порядку частки.
Перші два етапи
можуть виконуватись одночасно, оскільки
вони незалежні один від одного. При
цьому ділення мантис повністю співпадає
з діленням чисел, що представлені в
формі з фіксованою комою. Відміна полягає
лише в тому, що мантиси операндів можуть
співвідноситись одна з одною довільно.
Оскільки мантиси діленого і дільника
- нормалізовані числа, то можливі такі
випадки:
;
.
Коли мантиса діленого більше або дорівнює мантисі дільника, то на початку ділення одержується цифра частки, що дорівнює 1 і яка записується в цілу частину частки. Решта дій над мантисами аналогічні діям над числами, що представлені в формі з фіксованою комою. Одержана при цьому мантиса частки буде мати порушення нормалізації праворуч. Воно усувається шляхом зсуву коду мантиси на один розряд управо і, відповідно, корегується порядок частки шляхом додавання одиниці до різниці порядків.
Коли мантиса діленого менше мантиси дільника, то на початку ділення одержується цифра частки, що дорівнює 0 і яка записується в цілу частину частки. Далі ділення мантис продовжується за правилами ділення чисел, що представлені в формі з фіксованою комою. Одержана при цьому мантиса частки буде мати нормалізовану форму.
Під час виконання операції ділення чисел з плаваючою комою можуть мати місце такі особливі випадки.
Якщо дільник дорівнює нулю, то формується сигнал "Зупинка машини".
Оскільки в процесі ділення порядки віднімаються, то можливе переповнення розрядної сітки порядків. Коли виникає переповнення в бік від'ємних значень порядку і воно не усувається після нормалізації і корегування порядку, то мантисі результату приписується машинний нуль, а порядку - найбільше від'ємне число.
У разі переповнення додатного порядку необхідно формувати ознаку переповнення порядку.
Ці особливі випадки можна передбачити в алгоритмі операції ділення введенням аналізатора дільника на нуль і корегування частки на підставі ознак результату.
№3
Інтерфейс RS-232C
Інтерфейс RS-232C призначений для підключення до комп'ютера стандартних зовнішніх пристроїв (принтера, сканера, модему, миші й ін.), а також для зв'язку комп'ютерів між собою. Основними перевагами використання RS-232C у порівнянні з Centronics є можливість передачі на великі відстані (за стандартом довжина кабелю може доходити до 15 метрів) і набагато більш простий кабель (з меншою кількістю проводів). У той же час працювати з RS-232C трохи складніше. Дані в інтерфейсі RS-232C передаються в послідовному коді (біт за бітом) побайтно. Кожен байт обрамляється стартовим і стоповими бітами. Дані можуть передаватися як в одну, так і в іншу сторону по різними проводами (дуплексний режим). Швидкість передачі - до 14,4 Кбайт/з (115,2 Кбит/с).
Комп'ютер має 25-контактний роз'єм (типу DB25P) чи 9-контактний роз'єм (типу DB9P) для підключення кабелю інтерфейсу RS-232C. Призначення контактів роз'єму наведене в табл. 8.8 (у таблиці застосовані позначення: I - вхідний сигнал комп'ютера, O - вихідний сигнал комп'ютера).
Табл. 8.8. Призначення контактів роз'ємів інтерфейсу RS-232C. |
|||
Сигнал |
Контакт DB25P |
Контакт DB9P |
I/O |
FG |
1 |
– |
– |
-T x D |
2 |
3 |
O |
-R x D |
3 |
2 |
I |
RTS |
4 |
7 |
O |
CTS |
5 |
8 |
I |
DSR |
6 |
6 |
I |
SG |
7 |
5 |
– |
DCD |
8 |
1 |
I |
DTR |
20 |
4 |
O |
RI |
22 |
9 |
I |
Призначення сигналів інтерфейсу RS-232C наступне:
FG - захисне заземлення (екран).
-Tx - дані, передані комп'ютером у послідовному коді (логіка негативна).
-Rx - дані, прийняті комп'ютером у послідовному коді (логіка негативна).
RTS - сигнал запиту передачі. Активний на протязі всього часу передачі.
CTS - сигнал скидання (очищення) для передачі. Активний на протязі всього часу передачі. Говорить про готовність приймача.
DSR - готовність даних. Використовується для задавання режиму модему.
SG - сигнальне заземлення, нульовий провід.
DCD - виявлення несучої даних (детектування прийнятого сигналу).
DTR - готовність вихідних даних.
RI - індикатор виклику. Говорить про прийом модемом сигналу виклику з телефонної мережі.
Найчастіше використовується трьох- чи чотирьохпровідний зв'язок (для двонапрямленої передачі). Схема з'єднання двох пристроїв при чотирьохпровідній лінії зв'язку показана на Рис. 8.8.
Рис.
8.8. Схема чотирьохпровідної лінії зв'язку
для RS-232C.
Для двохпровідної лінії зв'язку у випадку передачі з комп'ютера в зовнішній пристрій використовуються сигнали SG і Tx. Усі 10 сигналів інтерфейсу задіюються тільки при з'єднанні комп'ютера з модемом.
Формат переданих даних показаний на рис. 8.9. Власне дані (містять 5, 6, 7 чи 8 біт) супроводжуються стартовим бітом, бітом парності й одним чи двома стоповими бітами. Одержавши стартовий біт, приймач вибирає з лінії біти даних через визначені інтервали часу. Дуже важливо, щоб тактові частоти приймача і передавача були однаковими (допустима розбіжність - не більше 10%). Швидкість передачі по RS-232C може вибиратися з ряду: 110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200 біт/с.
Усі сигнали RS-232C передаються спеціально обраними рівнями, що забезпечують високу завадостійкість зв'язку (Рис. 8.10). Відзначимо, що дані передаються в інверсному коді (логічній одиниці відповідає низький рівень, логічному нулю - високий рівень).
Обмін по RS-232C здійснюється комп'ютером за допомогою звертань за спеціально виділеними для цього портах COM1 (адреси 3F8...3FF, переривання IRQ4), COM2 (адреси 2F8...2FF, переривання IRQ3), COM3 (адреси 3E8...3EF, переривання IRQ10), COM4 (адреси 2E8...2EF, переривання IRQ11).
Рис.
8.9. Формат даних RS-232C.
Рис.
8.10. Рівні сигналів RS-232C на передаваючому
і приймаючому кінцях лінії зв'язку.
Для реалізації інтерфейсу застосовуються мікросхеми універсальних асинхронних прийомопередавачів (УАПП, UART - Universal Asynchronous Receiver/Transmitter) типу i8250, 16550А чи їх аналоги. Комп'ютер за допомогою посилки керуючих кодів може вибрати швидкість обміну, формат переданих посилок (кількість бітів даних, перевірка парності, використання стопових бітів), дозволити чи заборонити переривання, а також встановити чи скинути керуючі сигнали. Є також можливість прочитати слово стану UART для визначення джерела переривання чи станів прапорів.
USB (англ. Universal Serial Bus, абревіатура читається ю-ес-бі) — укр. універсальна послідовна шина, призначена для з'єднання периферійних пристроїв. Символом USB є чотири геометричні фігури: квадрат, трикутник, велике коло та мале коло.
Шина USB представляє собою послідовний інтерфейспередавання даних для середньо швидкісних та низько швидкісних периферійних пристроїв. Для високошвидкісних пристроїв на сьогодні кращим вважається FireWire.
USB-кабель представляє собою дві звиті пари: по одній парі відбувається передавання даних в кожному напрямку (диференціальне включення), а інша пара використовується для живлення периферійного пристрою (+5 В). Завдяки вбудованим лініям живлення, що забезпечують струм до 500 мА, USB часто дозволяє використовувати пристрої без власного блоку живлення (якщо ці пристрої споживають струм потужністю не більше 500 мА).
Поєднання USB-кабелями формує інтерфейс між USB-пристроями та USB-хостом. В якості хоста використовується керований з операційної системи USB-контролер, до складу якого входить USB-концентратор, або ж хаб. Цей хаб є відправною точкою у створенні ланцюжка пристроїв, що відповідають вимогами топології «зірка». Він має спеціальну назву — кореневий концентратор. До його портів під'єднується інше USB-приладдя та зовнішні хаби. Загальні їх кількість не може перевищувать 127 пристроїв, увімкнених не більш ніж у п'ять каскадів, не рахуючи рівень кореневого хаба.
Зміст [сховати] 1 Історія 2 USB пререлізи 3 USB 1.0 3.1 USB 1.1 4 USB 2.0 4.1 USB OTG 4.2 Бездротовий USB 5 USB 3.0 6 Посилання |
[ред.] Історія
Стандарт розробили сім компаній: «Compaq», «Digital Equipment», IBM, Intel, «Microsoft», NEC и «Northern Telecom». Влітку 1996 року на ринку з'явилися перші комп'ютери з портами USB.
[ред.] USB пререлізи
Починаючи з листопада 1994 до листопада 1995 року було анонсовано кілька версій протоколу (USB 0.7, 0.8, 0.9, 0.99, 1.0 Release Candidate).
[ред.] USB 1.0
Версія представлена в січні 1995 року.
Технічні характеристики:
високошвидкісне з'єднання — 12 Мбіт/с
максимальна довжина кабелю для високошвидкісного з'єднання — 3 м
низькошвидкісне з'єднання — 1,5 Мбіт/с
максимальна довжина кабелю для низькошвидкісного з'єднання — 5 м
максимальна кількість пристроїв підключення (враховуючи концентратори) — 127
можливість підключення пристроїв з різними швидкостями обміну інформацією
напруга живлення для периферійних пристроїв — 5 В
максимальний струм споживання на один пристрій — 500 мА
[ред.] USB 1.1
Випущено в вересні 1998. Виправлені проблеми виявлені у версії 1.0, в основному пов'язані з концентраторами.
[ред.] USB 2.0
Версія випущена в квітні 2000 року. USB 2.0 відрізняється від USB 1.1 лише швидкістю передачі, яка зросла та незначними змінами в протоколі передачі даних для режиму Hi-speed (480 Мбіт/сек). Існує три швидкості роботи пристроїв USB 2.0:
Low-speed 10—1500 Кбіт/c (використовується для інтерактивних пристроїв: клавіатури, мишки, джойстики)
Full-speed 0,5—12 Мбіт/с (аудіо/відео пристрої)
Hi-speed 25—480 Мбіт/с (відео пристрої, пристрої зберігання інформації)
В дійсності ж хоча швидкість USB 2.0 і може досягати 480Мбіт/с, пристрої типу жорстких дисків чи взагалі будь-які інші носії інформації ніколи не досягають її по шині USB, хоча і могли б. Це можна пояснити доволі просто, шина USB має доволі велику затримку між запитом на передачу інформацію і самою передачею даних («довгий ping»). Наприклад шина FireWire забезпечує максимальну швидкість у 400 Мбіт/с, тобто на 80Мбіт/с менше чим у USB, дозволяє досягнути більшої швидкості обміну даними з носіями інформації.
USB 3.0
В листопаді 2008 року робоча група USB 3.0 Promoter Group заявила про завершення робіт над специфікацією нового високошвидкісного інтерфейсу USB 3.0, названого SuperSpeed USB. USB 3.0 є наступним етапом еволюції добре відомою нам всім технології USB. Новий інтерфейс забезпечує максимальну швидкість передачі даних в 10 разів більшу, ніж USB 2.0 (тобто 10 × 480 Мбіт/с = 4,8 Гбіт/с). Друга важлива властивість — покращені показники енергоефективності. Крім того, розробниками заявлена зворотна сумісність USB 3.0 з ранішими версіями USB. Докладніші відомості можна черпнути з опублікованих специфікацій (редакція 1.0).
SATA (англ. Serial ATA) — послідовний інтерфейс обміну даними з накопичувачами інформації (як правило, з жорсткими дисками). SATA є розвитком інтерфейсу ATA (IDE), який після появи SATA був перейменований в PATA (Parallel ATA).
За даними аналітиків IDC, в 2008 році диски S-ATA склали 98% від всіх продажів дисків в світі[1].
Зміст [сховати] 1 SATA/150 2 SATA/300 3 SATA 3.0 4 Опис SATA 5 Роз'єми SATA 6 eSATA 7 SAS 8 Виcновки 9 Посилання |
[ред.] SATA/150
На початку стандарт SATA передбачав роботу шини на частоті 1,5 ГГц, що забезпечує пропускну здатність приблизно в 1,2 Гбіт/с (150 МБ/с). (20%-а втрата продуктивності пояснюється використанням системи кодування 8B/10B, при якій на кожні 8 біт корисної інформації припадає 2 службових біта). Пропускна здатність SATA/150 незначно вище пропускної здатності шини Ultra ATA (UDMA/133). Головною перевагою SATA перед PATA є використання послідовної шини замість паралельної. Попри те, що послідовний спосіб обміну принципово повільніше паралельного, у цьому випадку це компенсується можливістю роботи на більш високих частотах за рахунок більшої перешкодостійкості кабелю. Це досягається 1) меншим числом провідників й 2) об'єднанням інформаційних провідників в 2-і виті пари, екрановані заземленими провідниками.
[ред.] SATA/300
Стандарт SATA/300 працює на частоті 3 ГГЦ, забезпечує пропускну здатність до 2,4 Гбіт/c (300 МБ/с). Уперше був реалізований у контролері чипсетуnForce 4 фірми NVIDIA. Досить часто стандарт SATA/300 називають SATA ІІ. [2] Теоретично SATA/150 й SATA/300 пристрої повинні бути сумісні (як SATA/300 контролер і SATA/150 пристрій, так і SATA/150 контролер й SATA/300 пристрій) за рахунок підтримки узгодження швидкостей (у меншу сторону), однак для деяких пристроїв і контролерів потрібне ручне виставляння режиму роботи (наприклад, на жорсткому диску фірми Seagate, що підтримують SATA/300, для примусового включення режиму SATA/150 передбачений спеціальний джампер).
Стандарт SATA передбачає можливість збільшення швидкості роботи до 600МБ/с (6 ГГц).
[ред.] SATA 3.0
Serial ATA International Organization (SATA-IO), відповідальна за розвиток послідовного інтерфейсу, в травні 2009 опублікувала специфікації стандарту SATA 3.0[3], здатного передавати дані на швидкості до 6 Гбіт/с, удвічі вище в порівнянні з SATA 2. Специфікація була обнародувана в серпні 2008 і допрацьовувалася до травня 2009. Після публікації специфікації виробники дістали можливість використовувати SATA-3 в комерційних продуктах. Новий стандарт сумісний назад з існуючими версіями SATA, але разом з цим пропонує зручніший роз'єм для підключення компактних 1,8-дюймових дисків і SSD. Покращена передача мультимедійних файлів. Істотних змін в інтерфейсі нема — максимальна довжина кабелю складає 1 метр, причому роз'єми будуть сумісні з ранніми версіями SATA. Проте крім збільшення швидкісних показників також реалізована підтримка додаткового набору команд, які призначені для підвищення ефективності при передачі відео потоку. Підвищення швидкісних показників інтерфейсу передачі даних приведе до підвищення споживаної потужності, але з іншого боку, це приведе до прискореного переходу на нові технології виготовлення управляючих мікросхем.
[ред.] Опис SATA
SATA використовує 7-контактний роз'єм замість 40-контактного роз'єму в PATA. SATA-кабель має меншу ширину, за рахунок чого зменшується опір повітрю, що обдуває компоненти комп'ютера; поліпшується охолодження системи.
SATA-кабель за рахунок своєї форми більш стійкий до багаторазового підключення. Шнур живлення SATA так само розроблений з урахуванням багаторазових підключень. Роз'єм живлення SATA подає 3 напруги: +12 В, +5 У и +3,3 В; однак сучасні пристрої можуть працювати без напруги +3,3 В, що дає можливість використати пасивний перехідник зі стандартного роз'єму IDE на SATA. Ряд SATA пристроїв поставляється із двома роз'ємами живлення: SATA й Molex.
Стандарт SATA відмовився від традиційного для PATA підключення двох пристроїв на шлейф; кожному пристрою надається окремий кабель, що знімає проблему неможливості одночасної роботи пристроїв, що перебувають на одному кабелі (і затримок, що виникали звідси), зменшує можливі проблеми при збиранні (проблема конфлікту Slave/Master пристроїв для SATA відсутній), усуває можливість помилок при використанні нетермінованих PATA-шлейфів.
Стандарт SATA передбачає гарячу заміну пристроїв і функцію черги команд (NCQ).
БІЛЕТ № 11
№1
CDMA (англ. Code Division Multiple Access, Множинний доступ із кодовим розподілом каналів) — одна з можливих технологій мультиплексування, тобто одночасної передачі даних у спільному діапазоні (так званому каналі) радіочастот.
Для забезпечення доступу до каналу багатьом користувачам — множинний доступ — дані кодуються спеціальним кодом, асоційованим із кожним каналом, і використовуються властивості конструктивної інтерференції спеціальних кодів, щоб здійснювати мультиплексування. Це є головною відміною методу CDMA від інших методів мультиплексування:
TDMA, де канал ділиться між користувачами за часом, чи
FDMA де розподіляються частоти.
[ред.] Використання
CDMA використовується у багатьох комунікаційних системах, наприклад:
Глобальна Система Позиціонування (GPS)
система позиціонування Galileo
супутникова система OmniTRACS для транспортної логістики.
[ред.] Подальший розвиток
На базі CDMA розроблено новий стандарт передачі даних W-CDMA для цифрових систем мобільної телефонії т.зв. 3-го покоління (3G) UMTS (подекуди вживається позначення 3GSM).
Лідером на ринку цієї технології вважається фірма Qualcomm (США), котрій належать основні патенти на технологію CDMA. Нею також розроблено стандарт CDMA2000.
Фірми Alcatel Shanghai Bell та Datang Mobile спільно розробили (з листопада 2001 по серпень 2005) третій стандарт — TD-SCDMA, котрий планують використовувати на китайському ринку.
[ред.] Технічні деталі
В основі CDMA лежить технологія передачі SST (DH-SS Direct Sequence Spread Spectrum), коли інформація ніби «розмазується» по широкому спектру частот. Послідовність інформаційних бітів множать на псевдовипадкову послідовність коротких імпульсів. Одержують сигнал у ширшому частотному діапазоні значно меншої інтенсивності. Для декодування такої послідовності потрібно знати псевдовипадкову послідовність, яку використовували під час передачі. Цей механізм кодування забезпечує:
захист сигналу від підслуховування. Треба знати псевдовипадкову послідовність-ключ. Цим пояснюють широке використання цього підходу військовими та стільниковими мережами;
захист сигналу від перешкод. Широкосмуговість сигналу дає змогу просто поновлювати сигнал, особливо якщо перешкоди вузькосмугові. Так само сигнал захищений і від тимчасового зникнення на окремих частотах (фейдинг (fading));
широкосмугове передавання та ліпший захист від завад дають змогу зменшити потужність передавачів, збільшити час дії акумуляторів та дещо зменшити шкідливий вплив цієї технології на здоров'я людини;
дві абонентські станції, які працюють у межах одної стільникової комірки на однаковій частоті з використанням різних кодових послідовностей, практично не створюють перешкод одна одній.
Тому для станцій, які працюють у межах однієї комірки, відведено спільний частотний діапазон завширшки 1,25 МГц, а також фрагменти спільної псевдовипадкової кодової послідовності (зі своїм зсувом від початку).
У мережі CDMA параметри розміру комірки, якості передавання та кількості каналів взаємозалежні. Наприклад, чим більше каналів у комірці, тим більше взаємних перешкод через неповну незалежність кодових послідовностей і тим гірша якість передачі. Чим більший розмір комірки, тим слабший корисний сигнал і тим меншим повинен бути рівень перешкод. Емпіричним шляхом визначено, що в одному частотному діапазоні 1,25 МГц можна розмістити до 18 каналів для мобільних та 30 каналів для стаціонарних користувачів. Це майже у дев'ять разів більше, ніж у мережах AMPS.
Ще однією перевагою CDMA є можливість використання у сусідніх комірках одного й того ж частотного діапазону, що полегшує планування мережі та збільшує кількість каналів. Особливістю, яка поліпшує якість передавання у CDMA-мережах, є механізм обробки переходу абонента з однієї комірки до іншої. В інших технологіях під час такого переходу спочатку розривається зв'язок з однією базовою станцією, а потім налагоджується з іншою (hard handoff, break before make). Це знижує якість передачі. У технології CDMA завдяки збереженню однієї частоти-носія у сусідніх комірках можна спочатку налагодити сполучення з новою станцією, а вже потім розірвати з попередньою. Це поліпшує якість переходу і дає змогу опрацювати передачу у «прикордонній зоні», коли передавач може багато разів переходити зі сфери діяльності однієї базової станції до іншої та назад.
Мережі технології CDMA сьогодні активно впроваджують не лише у традиційній сфері стільникового зв'язку, а й у частотному діапазоні PCS, виділеному для роботи як телефонів, так і іншого обладнання персонального зв'язку. Вони перевершують інші технології за якістю передавання та кількістю каналів. Наприклад, для CDMA потрібно на 30-40% менше базових станцій, ніж для аналогічних мереж GSM та у два-три рази менше станцій, ніж для мереж AMPS. Водночас вартість обладнання CDMA внаслідок його складності сьогодні вища, ніж аналогічного обладнання інших мереж. На вищих рівнях протоколу мережі передачі даних використовують спеціальні протоколи, орієнтовані на стільникову мережу.
№2
Архітектура мікропроцесорної системи
Поняття архітектури мікропроцесора визначає його складові частини, а
також зв'язки та взаємодію між ними. Архітектура містить: 1) структурну
схему самого МП; 2) програмну модель МП (опис функцій регістрів); 3)
інформацію про організацію пам'яті (ємність пам'яті та способи її адресації);
4) опис організації процедур введення-виведення.
Існують два основних типи архітектури мікропроцесорної системи –
фоннейманівська та гарвардська. Структурні схеми обох архітектур містять:
процесорний елемент, пам'ять, інтерфейси введення-виведення (ІВВ) і
пристрої введення-виведення (ПВВ). Пам'ять і ІВВ для різних типів МП
можуть бути як внутрішніми (розміщуватися на тому ж кристалі, що і
процесорний елемент), так і зовнішніми. Процесорний елемент містить
регістри, арифметико-логічний пристрій (АЛП), пристрій керування і
виконує функції обробки даних та керування процесами обміну інформацією.
Пам'ять забезпечує зберігання кодів команд програми і даних. Інтерфейси
призначені для зв'язку з ПВВ (наприклад, з клавіатурою, дисплеєм,
принтерами, датчиками інформації). Усі елементи структурної схеми з'єднані
за допомогою шин.
Рисунок 1 – Структурна схема з процесором фоннейманівської архітектури
Розширену структурну схему МПС з процесором фоннейманівської
архітектури наведено на рисунку 1.
Схема процесора містить пристрій керування, АЛП, регістри: адреси, да-
них, команд, стану, акумулятор, лічильник команд та вказівник стека.
Пристрій керування відповідно до кодів команд та зовнішніх сигналів
керування і сигналів синхронізації виробляє сигнали керування для всіх
блоків структурної схеми МП, а також керує обміном інформацією між МП,
пам'яттю і ПВВ. Пристрій керування реалізує такі функції:
1. Функція початкового встановлення МП. Зовнішній сигнал початко-
вого встановлення процесора RESET формується при ввімкненні джерела
живлення МП або при натисканні кнопки RESET. У разі появи цього сигналу
пристрій керування забезпечує завантаження нульового значення у
програмний лічильник, що ініціює вибірку з пам'яті байта команди з
нульовою адресою. Наприкінці вибірки вміст лічильника команд збіль-
шується на одиницю і вибирається байт команди з наступною адресою.
Таким чином виконується вся записана у пам'яті програма.
2. Функція синхронізації. Згідно із зовнішніми сигналами керування і
сигналами синхронізації пристрій керування синхронізує роботу всіх блоків
МП.
3. Функція переривань. Із надходженням сигналу переривання пристрій
керування ініціює роботу підпрограми обробки відповідного переривання.
Потреба у реалізації функцій переривань виникає тоді, коли під час
виконання основної програми треба перевести МП на розв'язання іншої
задачі, наприклад, обробки аварійної ситуації або роботи з ПВВ.
4. Функція узгодження швидкодії модулів мікропроцесорної системи.
Під час обслуговування пам'яті та ПВВ із значно меншою швидкодією, ніж
МП, узгодження швидкодії вирішується генерацією тактів очікування МП, а
під час обслуговування пристроїв з більшою швидкодією, ніж МП,
використовується режим безпосереднього доступу до пам'яті.
Арифметико-логічний пристрій являє собою комбінаційну схему на
основі суматора, який сигналами з виходів пристрою керування налагод-
жується на виконання певної арифметичної або логічної операції: додавання,
віднімання, І, АБО, НЕ, виключне АБО, зсув, порівняння, десяткова корекція.
Отже, АЛП виконує арифметичні або логічні операції над операндами, які
пересилаються з пам'яті і/або регістрів МП. Одержаний після виконання
команди в АЛП результат пересилається в регістр або комірку пам'яті.
Регістри призначені для зберігання n-розрядного двійкового числа.
Вони являють собою п тригерів зі схемами керування читанням/записом та
вибірки. Регістри створюють внутрішню пам'ять МП і використовуються для
зберігання проміжних результатів обчислень.
Акумулятор – це регістр, у якому зберігається один з операндів. Після
виконання команди в акумуляторі замість операнда розміщується результат
операції.
Вказівник команду або програмний лічильник, призначений для збері-
гання адреси комірки пам'яті, яка містить код наступної команди. Програму
дій МП записано в пам'яті у вигляді послідовності кодів команд. Для
переходу до наступної команди вміст лічильника збільшується на одиницю у
момент вибирання команди з пам'яті. Наприкінці виконання команди в
лічильнику команд зберігається адреса наступної команди.
Вказівник стека – це регістр, який зберігає адресу останньої зайнятої ко-
мірки стека. Стеком або стековою пам'яттю називається область пам'яті,
організованої за принципом «останній прийшов – перший пішов».
Регістр команд зберігає код команди протягом усього часу виконання
команди.
Регістр адреси і регістри даних призначені для зберігання адрес і даних,
які використовуються під час виконання поточної команди у МП.
Регістр стану або регістр прапорців (ознак) призначений для зберігання
інформації про результат операції в АЛП і являє собою декілька тригерів, які
набувають одиничних або нульових значень.
№3
Транзисторно-транзисторная логика (ТТЛ, TTL) — разновидность цифровых логических микросхем, построенных на основе биполярных транзисторов и резисторов. Название транзисторно-транзисторный возникло из-за того, что транзисторы используются как для выполнения логических функций (например, И, ИЛИ), так и для усиления выходного сигнала (в отличие от резисторно-транзисторной и диодно-транзисторной логики).
Простейший базовый элемент ТТЛ выполняет логическую операцию И-НЕ, в принципе повторяет структуру ДТЛмикросхем и в то же время за счёт использования многоэмиттерного транзистора, объединяет свойства диода и транзисторного усилителя что позволяет увеличить быстродействие и энергопотребление, снизить потребляемую мощность и усовершенствовать технологию изготовления микросхемы.
ТТЛ получила широкое распространение в компьютерах, электронных музыкальных инструментах, а также в контрольно-измерительной аппаратуре и автоматике (КИПиА). Благодаря широкому распространению ТТЛ входные и выходные цепи электронного оборудования часто выполняются совместимыми по электрическим характеристикам с ТТЛ. Максимальное напряжение в схемах с ТТЛ может достигать 24В, однако это приводит к большому уровню паразитного сигнала. Достаточно малый уровень паразитного сигнала при сохранении достаточной эффективности достигается при напряжении 5В, поэтому данная цифра и вошла в технический регламент ТТЛ.
ТТЛ стала популярной среди разработчиков электронных систем после того, как в 1965 году фирма Texas Instruments представила серию интегральных микросхем 7400. Данная серия микросхем стала промышленным стандартом, но ТТЛ-микросхемы производятся и другими компаниями. Более того, фирма Texas Instruments не была первой, кто начал выпуск ТТЛ микросхем, несколько ранее его начали фирмы Sylvania и Transitron. Тем не менее промышленным стандартом стала именно серия 74 фирмы Texas Instruments, что в значительной мере объясняется большими производственными мощностями фирмы Texas Instruments, а также её усилиями по продвижению серии 74. Поскольку биполярные ИМС серии 74 фирмы Texas Instruments стали наиболее распространёнными, их функционально и параметрически повторяет продукция других фирм (Advanced Micro Devices, серия 90/9N/9L/9H/9S Fairchild, Harris, Intel, Intersil, Motorola, National и т.д).
Важность ТТЛ заключается в том, что ТТЛ-микросхемы оказались более пригодны для массового производства и при этом превосходили по параметрам ранее выпускавшиеся серии микросхем (резисторно-транзисторная и диодно-транзисторная логика).
[править] Принцип работы
Упрощённая схема элемента 2И-НЕ.
Принцип работы ТТЛ с простым инвертором:
Биполярные транзисторы могут работать в режимах: отсечки, нормально активный, инверсно активный и насыщения. В инверсно активном режиме эмиттерный переход закрыт, а коллекторный переход открыт. В инверсном режиме коэффициент усиления транзистора значительно меньше, чем в нормальном режиме, из-за несимметричного конструктивного исполнения переходов база-коллектор и база-эмиттер. При нулевом уровне на любом входе многоэмиттерного транзистора VT1 (на упрощённой схеме — справа) он работает в нормальном режиме и формирует на базе VT2 потенциал близкий к нулю. В этом состоянии неосновные носители из базы VT2 рассасываются не только через коллектор, но и через открытый VT1.
Если ноль подаётся на один из входов VT1, то наблюдается максимальный входной ток I=(E-0,7)/R1. В этом случае через другие эмиттерные переходы может наблюдаться паразитный ток. Чтобы он не был слишком велик неиспользуемые входы элемента присоединяются к источнику питания +5В, −5В через резистор с сопротивлением 1кОм, который может работать на 10 входов ТТЛ. Если свободные входы не подключаются ни к чему, то логика работы схемы сохраняется но паразитная ёмкость входных цепей будет уменьшать быстродействие цепи из расчёта 2 нс на 1 вход. Свободные входы могут воспринимать сигнал помехи, который может привести к сбою в работе схемы. Если на все входы поступает уровень логической единицы, то VT1 окажется инверсно-включенным, ток R1 течёт через коллектор VT1 в базу VT2, на выходе формируется нуль.
Если резистор R2 не используется, то мы имеем дело с элементом с открытым коллектором, у которого в условном обозначении используется дополнительный символ.
Логический элемент 3И-НЕ в серии микросхем 74LS(К555)[1]
ТТЛ (как и ТТЛШ) является прямым наследником ДТЛ и использует тот же принцип действия. Входной ТТЛ-транзистор (в отличие от обычного) имеет несколько, обычно от 2 до 8, эмиттеров. Эти эмиттеры выполняют роль входных диодов (если сравнивать с ДТЛ). Многоэмиттерный транзистор по сравнению с применявшейся в схемах ДТЛ сборкой из отдельных диодов занимает меньше места на кристалле и обеспечивает более высокое быстродействие. Следует отметить, что в микросхемах ТТЛШ, начиная с серии 74LS, вместо многэмиттерного транзистора используется сборка диодов Шоттки (серия 74LS) или PNP транзисторы в сочетании с диодами Шоттки (серии 74AS, 74ALS), так что фактически произошёл возврат к ДТЛ. Название ТТЛ заслуженно носят лишь серии 74, 74H, 74L, 74S, содержащие многоэмиттерный транзистор. Все более поздние серии многоэмиттерного транзистора не содержат, фактически являются ДТЛ и носят название ТТЛШ (ТТЛ Шоттки) лишь «по традиции», будучи развитием именно ДТЛ.
Транзисторно-транзисторная логика с диодами Шоттки (ТТЛШ)
В ТТЛШ используются транзисторы Шоттки, в которых барьер Шоттки не позволяет транзистору войти в режим насыщения в результате чего диффузионная ёмкость мала и задержки переключения малы, а быстродействие высокое.
ТТЛШ отличается от ТТЛ наличием диодов Шоттки в цепях база — коллектор, что исключает насыщение транзистора, а также наличием демпфирующих диодов Шоттки на входах (редко на выходах) для подавления импульсных помех, образующихся из-за отражений в длинных линиях связи (длинной считается линия, время распространения сигнала в которой больше длительности его фронта, для самых быстрых ТТЛШ микросхем линия становится длинной начиная с длины в несколько сантиметров).
БІЛЕТ № 12
№1
JK - триггер не имеет состояния неопределенности или запрещенной комбинации входных сигналов.
Характеризуется следующей таблицей истинности:
J |
K |
Qn+1 |
0 |
0 |
Qn |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
-Q-n |
-Q-n - меняет состояние выхода на противоположное.
Также как RS - триггер , JK - тригер может быть как асинхронным, так и синхронизируемым уровнем или фронтом, однако на практике используют синхронизируемые фронтом.
Согласно таблице состояний синхронный JK- тригер может выполнять функции D - триггера, если исключить комбинации переменных при которых J=K. Это достигается соединением входов J и K через инвертор:
№2
Двійко́во-десятко́вий код (ДДК, англ. BCD, binary-coded decimal) —- спосіб представлення десяткового числа, у якому кожній цифрі відповідає певна послідовність двійкових розрядів. Цей код (а точніше, його різновид 8421-ДДК) спрощує ввід/вивід числа у десятковому вигляді, використовується у калькуляторах та при роботі над числами з фіксованою крапкою (наприклад, з грішми) для забезпечення належної точності підрахунків. Реалізація BCD-арифметики досить проста, тому вона присутня у наборах інструкцій майже всіх мікропроцесорів та мікроконтролерів.
Найпростішим варіантом є 8421-ДДК, який означає, що кожна цифра десяткового числа записується своїм двійковим представленням з доповненням нулями до 4 розрядів (тетрада). Наприклад, число 309110, при кодуванні у 8421-ДДК буде виглядати як 0011 0000 1001 0001 2
2 АРИФМЕТИЧНІ ОПЕРАЦІЇ З ДВІЙКОВИМИ ЧИСЛАМИ
2.1 Виконання операції додавання (віднімання) в двійковій системі
Подібно до того як із десятковими, так і з двійковими числами можна виконувати всі арифметичні дії. В принципі комп’ютер уміє тільки додавати. Всі інші арифметичні дії зводяться до арифметичної операції додавання, логічних операцій зсуву при множенні і діленні. Віднімання заміняється додаванням в додатковому чи зворотньому коді.
З метою спрощення виконання арифметичних операцій використовують спеціальні коди для представлення чисел в комп’ютері. Саме використання кодів дозволяє звести операцію віднімання чисел до арифметичного додавання кодів цих чисел. Використовуються прямий, зворотній і додатковий коди чисел. Прямий код використовується для представлення додатніх і від’мних чисел в запам’ятовуючому пристрої комп’ютера. Зворотній і додатковий коди використовуються для заміни операції віднімання операцією додавання, що спрощує структуру арифметичного блоку ЕОМ.
Додавання в будь-якій р-ковій системі числення виконується порозрядно аналогічно додаванню десяткових чисел на основі таблиці додавання 2.1. Якщо результат додавання двох цифр в даному розряді р-ковій системі числення більше, ніж р-1, то відбувається перенос одиниці в старший розряд.
Таблиця 2.1 – Правила додавання в двійковій системі числення
Двійкове додавання
0+0=1
1+0=1
0+1=1
1+1=10
Віднімання в р-ковій системі числення також виконується попрозрядно стовбчиком по аналогії з десятковою системою числення за допомогою таблиці .2. Якщо в даному розряді зменшуване число менше від’ємника, то позичається одиниця зі старшого розряду. В двійковій системі числення позичина одиниця зі старшого розряду дорівнює двом одиницям даного розряду.
Таблиця 2.2 – Правила віднімання в двійковій системі числення
Двійкове віднімання
0 – 0=0
1 – 0=1
1 – 1=0
10 – 1=1
Множення двох багатозначних чисел в р-ковій системі числення також виконується за тими ж правилами, що і в десятковій системі з послідовним множенням цифр першого множника на другий множник з допомогою таблиці .3.
Таблиця 2.3 – Правила множення в двійковій системі числення
Двійкове множення
0 0=0
1 0=0
0 1=0
1 1=1
При діленні стовбчиком в р-ковій системі числення виконуються дії множення і віднімання. Ділення двійкових чисел зводиться до порівняння цих чисел між собою і віднімання з більшого числа меншого. Якщо результата ділення не є кінцевим р-ковим дробом, то необхідно виділити неперіодичну частину дробу і її період.
Залежно від способу обробки бітів, розміщених у розрядній сітці, розрізняють два види кодів: паралельний, коли в кожний момент часу всі розряди сітки доступні для обробки, і послідовний, коли в кожний момент часу доступний один розряд сітки. Числа, подані паралельним кодом, доступні за один такт, а числа, подані послідовним кодом, - за n тактів, де n - розрядність сітки. Якщо розрядність числа перевищує довжину сітки, то його обробка ведеться частинами.
Натуральним кодом називають подання числа як цілого беззнакового у двійковій системі числення. Діапазон подання чисел у натуральному коді для n- розрядної сітки становить від 0 до 2n-1, тобто для 8-розрядної сітки - від 0 до 255.
Для подання цілих знакових чисел використовують прямий, обернений і додатковий коди. Старший розряд сітки є знаковим. Значення цього розряду дорівнює 0 для додатних чисел і 1 - для від'ємних. В інших розрядах розміщується модуль числа.
Якщо до натурального коду цілого числа додати знаковий розряд, одержуємо запис числа у прямому коді. Домовимося знаковий розряд розташовувати зліва і відокремлювати від розрядів модуля числа крапкою. Використання ПК забезпечує виконання операції додавання двох додатніх чисел звичайним способом без будь-яких складностей - не варто лише робити перенос одиниці старшого розряду модуля суми у знаковий розряд. Тобто при виконанні арифметичних операцій над прямим кодом двійкових чисел знаковий розряд і розряди модуля не можна розглядати як єдине ціле.
Іншою формою запису двійкових чисел є обернений код.
Обернений код двійкового від'ємного числа утворюється з прямим кодом рівного йому за модулем додатнього числа шляхом інвертування значень усіх його розрядів. Або: обернений код від'ємного числа утворюється шляхом інверсії всіх розрядів модуля цього числа, записаного у прямому коді. Знаковий розряд при цьому зберігає значення 1. При виконанні арифметичних операцій над двійковими числами, поданими в обернений код, знаковий розряд і розряд модуля числа можна розглядати як єдине ціле (перенос одиниці зі старшого розряду модуля суми в знаковий розряд не приводить до помилкового результату), але нуль як і раніше має два зображення - «додатнє» і «від'ємне». Слід зазначити, що отриманий при додаванні від'ємний результат також утворюється в обернений код. У цьому випадку число може бути перетворене у прямому коді інверсією всіх значущих розрядів (розрядів модуля).
Найбільше поширення в обчислювальних пристроях одержало подання від'ємних двійкових чисел за допомогою додаткового коду.
ДК від'ємного числа утворюється з його прямого коду за правилом:
- у знаковому розряді залишається одиниця;
- розряди модуля числа інвертуються;
- до молодшого розряду додається одиниця.
Очевидно, що додатковий код від'ємного числа утворюється з його оберненого коду додаванням одиниці до молодшого розряду.
Операція одержання додаткового коду від'ємного числа з прямого коду рівного йому за модулем додатнього числа називається операцією доповнення. Ця операція полягає в інвертуванні всіх розрядів вихідного коду (включаючи знаковий) і додавання до молодшого розряду одиниці.
Таким чином, сформулюємо наступне правило: у системі двійкових чисел із знаком заміна додатнього числа на рівне йому за модулем від'ємне і навпаки, від'ємного на додатнє, здійснюється шляхом застосуванням до коду даного числа операції доповнення.
Ця властивість подання від'ємних чисел у двійковому коді дозволяє при виконанні арифметичних операцій взагалі відмовитися від операції віднімання, замінивши її операцією додавання з числом, що має знак, протилежний знаку числа, яке віднімається.
2.2 Десяткові числа в упакованому і неупакованому форматах
Сьогодні найбільш поширеними є два формати представлення десяткових чисел в мікропроцесорах – упакований двійково-десятковий код (BCD-Binary-Coded Decimal) і неупакований десятковий код.
Упакований BCD-код – це таке представлення десяткового числа, при якому кожна десяткова цифра представляється 4-х бітним двійковим позиційним кодом 8-4-2-1. При цьому байт складається з двох десяткових цифр. Молодша десяткова цифра займає праву тетраду (біти 3:0), старша – ліву тетраду (біти 7:4). Багаторозрядні BCD-числа займають декілька суміжних байт. Якщо число є знаковим, то для представлення знака в BCD-форматі відводиться старша тетрада старшого байта. Для кодування знака можна використовувати 6 двійкових кодових комбінацій, котрі не використовуються для представлення десяткових цифр. Це коди 1010-1111 (A-F в шістнадцятковому представлені). Зазвичай для кодування знака “плюс” використовують код 1100 (C), а для знака “мінус” – 1101 (D).
Неупакований десятковий код є підмножиною міжнародної таблиці кодування символів ASCII (таблиця 1.1). Очевидно, для зберігання неупакованих десяткових чисел необхідно вдвічі більше пам’яті, оскільки кожна цифра представляється 8-бітовим кодом.
№3
Текст програми на мові асемблера записується в один або кілька файлів, імена файлів і їх розширення можуть бути будь-які, прийнято для файлів які містять програми мовою асемблера прийнято використовувати розширення *.asm. Для файлів визначених констант і повних типів розширення *.inc. Ці файли є текстовими їх можна набрати в будь-якому текстовому редакторі. Можна також використати інтегровані середовища для розробки програм, при програмуванні зручно виділяти один каталог для збереження всіх файлів програми і звідти запускати всі необхідні програми для підготовки, асемблювання та компонування програми. При використанні стандартних редакторів тексту, редаговані тексти треба зберігати у вигляді звичайних файлів у форматі ASCII, це означає, що ці файли треба зберігати без додаткових символів, ці символи часто вставляють в текст різні спеціалізовані редактори, наприклад WORD.
Асемблювання програми.
Підготовлений текст мови асемблер є початковим для спеціальних програм, які називаються асемблерами, далі програма асемблера. Задача програми асемблера перетворити текст програми у форму двійкових команд, останні можуть вже бути виконанні мікропроцесором. Після асемблювання дістають так звані файли об'єктних модулів, які мають відповідні розширення *.obj. Для отримання об'єктних файлів необхідного виконати відповідну програму асемблера masm фірми Microsoft, або tasm фірми Borland. В обох випадках після команди вказується ім'я файлу : masm prog1.asm, tasm prog1.asm.
Така форма команди є мінімальною, крім цієї форми можна використовувати іншу форму задаючи перед іменем файлу опції або ключі. Якщо програма складається з декількох файлів, то їх асемблювання проводиться незалежно один від одного, хоча отримані об'єктні файли представлені вже в двійковій формі запускати їх на виконання не можливо.
Компоновка програми.
Текст програми може знаходитись в декількох файлах, змінні які описані в цих файлах можуть використовуватися спільно, якщо такі файли асемблюються окремо, то не можливо дістати повну інформацію, для того, щоб генерувати виконавчий код. Тому процес підготовки програми обов'язково включає в себе етап компоновки. На цьому етапі визначають всі невідомі, при окремому асемблювані, адреси всіх змінних або функцій, які використовуються спільно. Процес об'єднання об'єктних модулів в один файл виконується спец. програмою, яка називається компоновщиком. Це може бути програма link фірми Microsoft, або tlink фірми Borland, отримуваний виконуваний файл має розширення *.exe, або *.com. Компановщику треба передати імена відповідних об'єктних файлів.
Link prog1.obj prog2.obj
Tlink prog1.obj prog2.obj
Після компонування отримується виконуваний файл, він отримує ім'я файла, який стоїть перший у відповідній команді.Відладка програми.
За винятком початкових простих програм практично всі програми на мові асемблера мають потребу в відладці. Для відладки можна використовувати різні відладчики, наприклад tg386-Turbo Debuger фірми Borland. Сучасні відладчики дозволяють в процесі відладки контролювати значення регістрів загального призначення, а також значення змінних і змінювати їх в процесі відладки, можна переглядати зміст різних ділянок пам'яті, можна контролювати виконання покроково, або розставляти точки зупинки.Використання інтегрованих середовищ (ІС).
БІЛЕТ № 13
№1
Пристрої лазерного принтера.
1. Генератор лазера
2. Обертове дзеркало
3. Лазерний промінь
4. Валики, що подають папір
5. Валик, що подає тонер
6. Фотопровідний циліндр
7. Вузол фіксації зображення
Серцем лазерного принтера є фотопровідний циліндр (organic photoconduction cartridge), що часто називають друкуючим барабаном. За допомогою барабана виробляється перенос зображення на папір. Він являє собою металевий циліндр, покритий тонкою плівкою фотопровідного напівпровідника, звичайно оксидом чи цинку чим або подібним. Поверхні цього покриття можна додати позитивний чи негативний заряд, що зберігається на поверхні, але тільки доти, поки барабан не освітлений. Якщо яку або частина барабана проекспонувать, то покриття здобуває провідність і заряд стече з освітленої ділянки, утворивши незаряджену зону. Даний момент дуже важливий для розуміння принципу роботи лазерного принтера.
Наступною важливою його частиною є лазер і презиційно оптико-механічна система, що переміщає промінь.
Малогабаритний лазер генерує тонкий світловий промінь, що відбивається від обертового дзеркала (як правило, шестигранного) розряджає позитивно заряджену поверхню барабана. Щоб вийшло зображення, лазер включається і виключається керуючим мікро контролером. Обертове дзеркало розвертає промінь у рядок на поверхні друкуючого барабана. Усе це разом створює на його поверхні рядок схованого зображення, у якому ті ділянки, що повинні бути чорними, мають один заряд, а білі протилежний. Після формування рядка зображення, спеціальний презиційний кроковий двигун повертає барабан так, щоб можна було формувати наступну рядок. Цей зсув дорівнює здатності принтера, що дозволяє, і звичайно складає 1/300,1/600 дюйма . Цей етап друку нагадує побудова зображення на екрані телевізійного монітора.
Але яким образом на поверхні барабана з'являється заряд, необхідний для створення зображення? Для цього служить тонкий чи дріт сітка, називаний "коронирующим проводом". Але чому "коронирующий"? Справа в тім, що на цей провід подається висока напруга, що викликає виникнення світної іонізованої області довкола нього, що і називається короною і додає барабану необхідний статичний заряд.
Отже, на барабані сформоване зображення начебто статичного заряду і незаряджених ділянок. Що далі? Далі барабан проходить повз валик, що подає зі спеціального контейнера чорний барвний порошок тонер. Часточки тонера, заряджені позитивно, прилипають тільки до нейтральних ділянок, відштовхуючи від позитивно заряджених. Це схоже на те, як на екрані телевізора збирається пил.
Невелике зауваження: тут мова йде про принтери типу Hewlett Packard LazerJet. Однак існує й інший метод формування зображення. Він використовується в принтерах Epson і інших подібних, що використовують двигун фірми Ricon. У цих принтерах розряджаються ділянки, що повинні бути білими. У цьому випадку тонер, заряджений негативно притягається до позитивно заряджених ділянок барабана. Відбитки, виготовлені на таких принтерах, мають ледь уловимі розходження в якості: при використанні першого способу досягається передача деталей, а при роботі з другим більш якісні чорні області.
Наступним етапом є перенос тонера (а, виходить, і зображення) на папір. Папір витягається з лотка, що подає, і за допомогою системи валиків переміщається до друкуючого барабану. Перед самим барабаном паперу повідомляється статистичний заряд за допомогою ще одного коронирующего проводу, подібного тому, що використовується для підготовки барабана до експонування. Потім папір притискається до поверхні барабана. Заряди різної полярності, накопичені на поверхні папера і на поверхні барабана, викликають перенос часток тонера на папір і їхній надійне прилипання до останнього. Після переносу тонера папір залишає поверхню барабана.
При цьому валики продовжують переміщати папір до вихідного лотка принтера. Наступним ланкою принтера, що зустрічає папір із зображенням на цьому шляху, є вузол фіксації зображення. Тонер містить речовину, здатну легко плавиться. Звичайно це який-небудь чи полімер смола. При нагріванні до 200-220 градусів і підвищенні тиску порошок розплавляється і намертво з'єднується з поверхнею папера. Аркуші які тільки що вийшли з принтера теплі, а занадто нетерплячий користувач, що вистачає листок, що з'явився, ризикує обпекти пальці.
Далі папір протаскується до вихідного лотка. При цьому, якщо аркуші виводяться прямо, верхнім у стопі відбитків виявляється останній лист. Багато принтерів, однак, перевертають папір обличчям униз, складаючи стопу в правильному порядку, тобто верхнім буде перший лист, нижнім останній.
Відбиток готовий, залишилася не розглянутої остання важлива позиція очищення барабана. При переносі зображення на папір не всі часточки тонера прилипають до неї і невелика кількість їх залишається на барабані. Для цього на нього подається електричний заряд, барабан очищається і готовий до друку наступного листа.
Важливим є пристрій керування, як правило, мікро контролер на базі мікропроцесора. Контролер обслуговує порти, оперативну пам'ять, здійснює діагностику принтера, видає повідомлення на панель керування, эмулирует різні стандарти підключення і, звичайно, видає десятки сигналів, керуючих усіма вузлами принтера.
№2
Fast Ethernet (Швидкий Ethernet) — термін, що описує набір стандартів Ethernet для пакетної передачі даних з номінальною швидкістю 100 Мбіт/с, що в 10 разів швидше за початкову для Ethernet швидкість у 10 Мбіт/с. Він визначений 1995 року в документі IEEE 802.3u. На сьогодні існують швидші в 10 (Gigabit Ethernet) і 100 (10 Gigabit Ethernet) разів стандарти технології Ethernet.
Фізичний рівень технології Fast Ethernet
Всі відмінності технології Fast Ethernet від Ethernet зосереджені на фізичному рівні. Рівні MAC і LLC у Fast Ethernet залишилися абсолютно тими ж, і їх описують колишні глави стандартів 802.3 і 802.2. Тому, розглядаючи технологію Fast Ethernet, тут описуються тільки кілька варіантів її фізичного рівня.
Відмінності технології Fast Ethernet від Ethernet
Більш складна структура фізичного рівня технології Fast Ethernet викликана тим, що в ній використовуються три варіанти кабельних систем:
волоконно-оптичний багатомодовий кабель, використовуються два волокна;
кручена пари категорії 5, використовуються дві пари;
кручена пари категорії 3, використовуються чотири пари.
Коаксіальний кабель, що дав світу першу мережу Ethernet, у число дозволених середовищ передачі даних нової технології Fast Ethernet не потрапив. Це загальна тенденція багатьох нових технологій, оскільки на невеликих відстанях кручена пара категорії 5 дозволяє передавати дані з тією же швидкістю, що і коаксіальний кабель, але мережа виходить більш дешевою і зручною в експлуатації. На великих відстанях оптичне волокно володіє набагато більш широкою смугою пропущення, чим коаксіал, а вартість мережі виходить ненабагато вище, особливо якщо врахувати високі витрати на пошук і усунення несправностей у великій кабельній коаксіальній системі.
Відмова від коаксіального кабелю привела до того, що мережі Fast Ethernet завжди мають ієрархічну деревоподібну структуру, побудовану на концентраторах, як і мережі l0-Base-T/l0Base-F. Основною відмінністю конфігурацій мереж Fast Ethernet є скорочення діаметра мережі приблизно до 200 м, що порозумівається зменшенням часу передачі кадру мінімальної довжини в 10 разів за рахунок збільшення швидкості передачі в 10 разів у порівнянні з 10-мегабітним Ethernet.
Проте ця обставина не дуже перешкоджає побудові великих мереж на технології Fast Ethernet. Справа в тому, що середина 90-х років відзначена не тільки широким розповсюдженням недорогих високошвидкісних технологій, але і бурхливим розвитком локальних мереж на основі комутаторів. При використанні комутаторів протокол Fast Ethernet може працювати в повнодуплексному режимі, у який немає обмеження на загальну довжину мережі, а залишаються тільки обмеження на довжину фізичних сегментів, що з'єднують сусідні пристрої (адаптер — комутатор чи комутатор — комутатор). Тому при створенні магістралей локальних мереж великої довжини технологія Fast Ethernet також активно застосовується, але тільки в повнодуплексному варіанті, разом з комутаторами.
У даному розділі розглядається напівдуплексний варіант роботи технології Fast Ethernet, що цілком відповідає визначенню методу доступу, описаному в стандарті 802.3.
У порівнянні з варіантами фізичної реалізації Ethernet (а їх нараховується шість), у Fast Ethernet відмінності кожного варіанта від інших глибше — міняється як кількість провідників, так і методи кодування. А тому що фізичні варіанти Fast Ethernet створювалися одночасно, а не еволюційно, як для мереж Ethernet, то малась можливість детально визначити ті підрівні фізичного рівня, що не змінюються від варіанта до варіанта, і ті підрівні, що специфічні для кожного варіанта фізичного середовища.
Офіційний стандарт 802.3u встановив три різних специфікації для фізичного рівня Fast Ethernet і дав їм такі назви:
l00Base-TX для двопарного кабелю на неекранованій кручений парі UTP категорії 5 чи екранованій кручений парі STP Type 1;
100Base-T4 для кабелю з чотирьох пар на неекранованій кручений парі UTP категорії 3, 4 чи 5;
l00Base-FX для багатомодового оптоволоконого кабелю, використовуються два волокна.
Структура фізичного рівня Fast Ethernet
Для всіх трьох стандартів справедливі такі твердження і характеристики:
Формати кадрів технології Fast Ethernet не відрізняються від форматів кадрів технологій 10-мегабітного Ethernet.
Міжкадровий інтервал (IPG) дорівнює 0,96 мкс, а бітовий інтервал дорівнює 10 нс. Усі тимчасові параметри алгоритму доступу (інтервал відстрочки, час передачі кадру мінімальної довжини тощо), вимірюються в бітових інтервалах, залишилися старими, тому зміни в розділи стандарту, що стосуються рівня MAC, не вносилися. Ознакою вільного стану середовища є передача по ньому символу Idle відповідного надлишкового коду (а не відсутність сигналів, як у стандартах Ethernet 10 Мбіт/с).
Фізичний рівень включає три елементи:
рівень узгодження (reconciliation sublayer);
незалежний від середовища інтерфейс (Media Independent Interface, МП);
пристрій фізичного рівня (Physical layer device, PHY).
Рівень узгодження потрібний для того, щоб рівень MAC, розрахований на інтерфейс AUI, зміг працювати з фізичним рівнем через інтерфейс МІІ.
Пристрій фізичного рівня (PHY) складається, у свою чергу, з декількох підрівнів:
підрівня логічного кодування даних, що перетворює поступаючі від рівня MAC байти в символи коду 4В/5В чи 8В/6Т (обидва коди використовуються в технології Fast Ethernet);
підрівня фізичного приєднання і підрівня залежності від фізичного середовища (PMD), що забезпечують формування сигналів відповідно до методу фізичного кодування, наприклад NRZI чи MLT-3;
підрівня автопереговорів, що дозволяє двом взаємодіючим портам автоматично вибрати найбільш ефективний режим роботи, наприклад, напівдуплексний чи повнодуплексний (цей підрівень є факультативним).
Інтерфейс МІІ підтримує незалежний від фізичного середовища спосіб обміну даними між підрівнем MAC і підрівнем PHY. Цей інтерфейс аналогічний по призначенню інтерфейсу AUI класичного Ethernet за винятком того, що інтерфейс AUI розташовувався між підрівнем фізичного кодування сигналу (для будь-яких варіантів кабелю використовувався однаковий метод фізичного кодування — манчестерський код) і підрівнем фізичного приєднання до середовища, а інтерфейс МІІ розташовується між підрівнем MAC і підрівнями кодування сигналу, яких у стандарті Fast Ethernet три — FX, ТХ і Т4.
Роз'єм МІІ на відміну від рз'єму AUI має 40 контактів, максимальна довжина кабелю МІІ складає один метр. Сигнали, передані по інтерфейсі МП, мають амплітуду 5 В. Фізичний рівень 100Base-FX — багатомодове оптоволокно, два волокна.
Ця специфікація визначає роботу протоколу Fast Ethernet по багатомодовому оптоволокну в напівдуплексному і повнодуплексному режимах на основі добре перевіреної схеми кодування FDDI. Як і в стандарті FDDI, кожен вузол з'єднується з мережею двома оптичними волокнами, що йдуть від приймача (Rx) і від передавача (Тх).
Між специфікаціями l00Base-FX і l00Base-TX є багато загального, тому загальні для двох специфікацій властивості будуть даватися під узагальненою назвою l00Base-FX/TX.
У той час як Ethernet зі швидкістю передачі 10 Мбіт/с використовує манчестерське кодування для представлення даних при передачі по кабелю, у стандарті Fast Ethernet визначений інший метод кодування — 4В/5В. Цей метод уже показав свою ефективність у стандарті FDDI і без змін перенесений у специфікацію l00Base-FX/TX. При цьому методі кожні 4 біти даних підрівня MAC (що звуться символами) представляються 5 бітами. Надлишковий біт дозволяє застосувати потенційні коди при представленні кожного з п'яти біт у виді електричних чи оптичних імпульсів. Існування заборонених комбінацій символів дозволяє відбраковувати помилкові символи, що підвищує стійкість роботи мереж з l00Base-FX/TX.
Для відділення кадру Ethernet від символів Idle використовується комбінація символів Start Delimiter (пара символів J (11000) і К (10001) коду 4В/5В, а після завершення кадру перед першим символом Idle вставляється символ Т.
Неперервний потік даних специфікації 100Base-FX/TX
Після перетворення 4-бітових порцій кодів MAC у 5-бітові порції фізичного рівня їх необхідно представити у вигляді оптичних чи електричних сигналів у кабелі, що з'єднує вузли мережі. Специфікації l00Base-FX і l00Base-TX використовують для цього різні методи фізичного кодування — NRZI і MLT-3 відповідно (як і в технології FDDI при роботі через оптоволокно і кручену пару).
Фізичний рівень 100Bose-TX — кручена пара UTP Cat 5 чи STP Type 1, дві пари. Як середовище передачі даних специфікація l00Base-TX використовує кабель UTP категорії 5 чи кабель STP Type 1. Максимальна довжина кабелю в обох випадках — 100 м.
Основні відмінності від специфікації l00Base-FX — використання методу MLT-3 для передачі сигналів 5-бітових порцій коду 4В/5В по крученій парі, а також наявність функції автопереговорів (Auto-negotiation) для вибору режиму роботи порту. Схема автопереговорів дозволяє двом з'єднаним фізично пристроям, що підтримують кілька стандартів фізичного рівня, які відрізняються бітовою швидкістю і кількістю кручених пар, вибрати найбільш вигідний режим роботи. Звичайно процедура автопереговорів відбувається при приєднанні мережного адаптера, що може працювати на швидкостях 10 і 100 Мбіт/с, до концентратора чи комутатора.
Описана нижче схема Auto-negotiation сьогодні є стандартом технології l00Base-T. До цього виробники застосовували різні власні схеми автоматичного визначення швидкості роботи взаємодіючих портів, які не були сумісні. Прийняту як стандарт схему Auto-negotiation запропонувала спочатку компанія National Semiconductor за назвою NWay.
Всього в наш час[Коли?] визначено 5 різних режимів роботи, що можуть підтримувати пристрої l00Base-TX чи 100Base-T4 на кручених парах:
l0Base-T — 2 пари категорії 3;
l0Base-T full-duplex — 2 пари категорії 3;
l00Base-TX — 2 пари категорії 5 (чи Type 1A STP);
100Base-T4 — 4 пари категорії 3;
l00Base-TX full-duplex — 2 пари категорії 5 (чи Type 1A STP).
Режим l0Base-T має найнижчий пріоритет у переговорному процесі, а повнодуплексний режим 100Base-T4 — найвищий. Переговорний процес відбувається при включенні живлення пристрою, а також може бути ініційований у будь-який момент модулем керування пристрою.
Пристрій, що почав процес auto-negotiation, посилає своєму партнеру пачку спеціальних імпульсів Fast Link Pulse burst (FLP), у якому міститься 8-бітне слово, що кодує запропонований режим взаємодії, починаючи із самим пріоритетним, який підтримується даним вузлом.
Якщо вузол-партнер підтримує функцію auto-negotuiation і також може підтримувати запропонований режим, він відповідає пачкою імпульсів FLP, у якій підтверджує даний режим, і на цьому переговори закінчуються. Якщо ж вузол-партнер може підтримувати менш пріоритетний режим, то він вказує його у відповіді, і цей режим вибирається як робочий. Таким чином, завжди вибирається найбільш пріоритетний загальний режим вузлів.
Вузол, що підтримує тільки технологію l0Base-T, кожні 16 мс посилає манчестерські імпульси для перевірки цілісності лінії, що зв'язує його із сусіднім вузлом. Такий вузол не розуміє запит FLP, що робить йому вузол з функцією Auto-negotiation, і продовжує посилати свої імпульси. Вузол, що одержав у відповідь на запит FLP тільки імпульси перевірки цілісності лінії, розуміє, що його партнер може працювати тільки по стандарті l0Base-T, і встановлює цей режим роботи і для себе.
Фізичний рівень 100Bose-T4 — кручена пара UTP Cat 3, чотири пари. Специфікація 100Base-T4 була розроблена для того, щоб можна було використовувати для високошвидкісного Ethernet наявну проводку на кручений парі категорії 3. Ця специфікація дозволяє підвищити загальну пропускну здатність за рахунок одночасної передачі потоків біт по всіх 4 парах кабелю.
Специфікація 100Base-T4 з'явилася пізніше інших специфікацій фізичного рівня Fast Ethernet. Розробники цієї технології в першу чергу хотіли створити фізичні специфікації, найбільш близькі до специфікацій l0Base-T і l0Base-F, що працювали на двох лініях передачі даних: двох парах чи двох волокнах. Для реалізації роботи з двох кручених пар довелося перейти на більш якісний кабель категорії 5.
У той же час розробники конкуруючої технології l00VG-AnyLAN зробили ставку на роботу з крученою парою категорії 3; сама головна перевага складалася не стільки у вартості, а в тому, що вона була вже прокладена в великій кількості будинків. Тому після випуску специфікацій l00Base-TX і l00Base-FX розробники технології Fast Ethernet реалізували свій варіант фізичного рівня для крученої пари категорії 3.
Замість кодування 4В/5В в цьому методі використовується кодування 8В/6Т, що має більш вузький спектр сигналу і при швидкості 33 Мбіт/с укладається в смугу 16 Мгц крученої пари категорії 3 (при кодуванні 4В/5В спектр сигналу в цю смугу не вкладається). Кожні 8 біт інформації рівня MAC кодуються 6-ю трійковими цифрами (ternary symbols), тобто цифрами, що мають три стани. Кожна трійкова цифра має тривалість 40 нс. Група з 6-ти трійкових цифр потім передається на одну з трьох передавальних кручених пар, незалежно і послідовно.
Четверта пара завжди використовується для прослуховування несучої частоти з метою виявлення колізії. Швидкість передачі даних по кожній із трьох передавальних пар дорівнює 33,3 Мбіт/с, тому загальна швидкість протоколу 100Base-T4 складає 100 Мбіт/с. У той же час через прийнятий спосіб кодування швидкість зміни сигналу на кожній парі дорівнює всього 25 Мбод, що і дозволяє використовувати кручену пару категорії 3.
На мал. показане з'єднання порту MDI мережного адаптера 100Base-T4 з портом MDI-X концентратора (приставка Х говорить про те, що в цього роз'єму приймача і передавача міняються парами кабелю в порівнянні з роз'ємами мережного адаптера, що дозволяє простіше з'єднувати пари проводів у кабелі — без перехрещування). Пари 1-2 завжди потрібні для передачі даних від порту MDI до порту MDI-X, пари 3-6 для прийому даних портом MDI від порту MDI-X, а пари 4-5 і 7-8 є двонаправленими і використовуються як для прийому, так і для передачі, в залежності від потреби.
Gigabit Ethernet (GbE) — термін, що описує набір технологій для передачі пакетів Ethernet зі швидкістю 1 Гбіт/с. Він визначений в документі IEEE 802.3-2005.
[ред.] Історія
В результаті дослідження зроблених в корпорації Xerox на початку 1970-х років, Ethernet став найбільш широко використовуваним на фізичному і канальному рівні протокол сьогодні. В Fast Ethernet швидкість збільшилася з 10 до 100 мегабіт в секунду (Мбіт/с). Gigabit Ethernet була наступним кроком, збільшуючи швидкість до 1000 Мбіт/с. Первинний стандарт на Gigabit Ethernet є стандартизованою в IEEE в червні 1998 року, як IEEE 802.3z. 802.3z зазвичай називаються 1000Base-X, де X-посилання на -CX,-SX,-LX або (нестандартних)-ZX.
IEEE 802.3ab, ратифікований у 1999 році, визначає Gigabit Ethernet передачі неекранованної витої пари (UTP) категорії 5, 5e або 6 кабелів і став відомий як 1000Base-T. При ратифікації 802.3ab, Gigabit Ethernet стала настільною технікою, для організації якої можуть використовувати існуючий мідній кабельної інфраструктури.
Спочатку, Gigabit Ethernet була використана для розгортання магістральних мереж зв'язку високої пропускної здатності. У 2000 році в Apple Power Mac G4 і PowerBook G4 були першими в масовому виробництві персональних комп'ютерів з 1000Base-T з'єднанням. І швидко стали використовувати в інших комп'ютерах.
З того часу, швидше 10 Gigabit Ethernet стандарти стали доступні, IEEE ратифікував волокна на основі стандарту в 2002 році, і вита пара стандарту в 2006 році. За станом на квітень 2009 року, Gigabit НІС (1000Base-T) включені у багатьох споживачів рівень комп'ютерних систем, однак у більшості систем не можуть використовувати Ethernet-мережі в повній швидкості через інші проблеми, такі, як затримка, зчитування і запис з диску, або повільніші посилання в загальній мережі.
[ред.] Резюме
Існують чотири різних фізичних шари стандартів для Gigabit Ethernet, використовуючи оптоволокні (1000Base-X) кабель, вита пара (1000Base-T), або збалансований мідний кабель (1000Base-CX).
В IEEE 802.3z стандарт включає 1000Base-SX для передачі багатомодові волокна, 1000Base-LX для передачі одномодові волокна, і майже застарілих 1000Base-CX для передачі збалансованим мідним кабелем. Ці стандарти використовують 8b/10b кодування, який розширює канал на 25%, з 1000 Мбіт / с до 1250 Мбіт / с для забезпечення DC збалансований сигнал. Символи надіслано з допомогою NRZ.
IEEE 802.3ab, який визначає широко використовуються 1000Base-T тип інтерфейсу, що використовує іншу схему кодування, з тим щоб тримати швидкість як можна більш низькому рівні, що дозволило передачі по витій парі.
Ethernet перша миля пізніше додано 1000BASE-LX10 і -BX10.
Назва |
|
Відстань |
1000BASE-CX |
Збалансований мідний кабель |
25 метрів |
1000BASE-SX |
багатомодове волокно |
550 метрів |
1000BASE-LX |
Одномодове волокно |
5 км |
1000BASE-SX |
Багатомодове волокно використовується 850 nm довжина хвилі |
550 метрів |
1000BASE-LH |
Одномодове або Багатомодове волокно використовується 1310 nm довжина хвилі |
10 км |
1000BASE-ZX |
Одномодове волокно на 1550 nm довжина хвилі |
~ 70 км |
1000BASE-LX10 |
Одномодове волокно використовується 1310 nm довжина хвилі |
10 км |
1000BASE-BX10 |
Одномодове волокно, по single-strand fiber: 1490 nm прямий канал 1310 nm зворотній канал |
10 км |
1000BASE-T |
Вита пара (CAT-5, CAT-5e, CAT-6, or CAT-7) |
100 метрів |
1000BASE-TX |
Вита пара (CAT-6, CAT-7) |
100 метрів |
№3
Протокол І2С
Найбільш популярний протокол для мережі мікроконтролерів - І2С, що призначений для зв'язку пристроїв у багатопроцесорних системах. Цей стандарт був розроблений компанією Philips наприкінці 70-х років, як метод реалізації інтерфейсу між мікропроцесорами і периферійними пристроями, що не вимагає прокладки численних ліній для передачі між пристроями всіх розрядів адреси, даних і сигналів керування. Протокол І2С дозволяє розділяти мережні ресурси між декількома ведучими процесорами («multimastering»).
Шина І2С містить дві лінії: лінія SDA, що слугує для передачі даних, і лінія SCL, по якій передається синхросигнал, використовуваний для стробування даних. Обидві лінії підключені через резистори до шини живлення («підтягнуті» до високого рівня потенціалу), що дозволяє декільком пристроям керувати їхнім станом шляхом з'єднання за схемою «монтажне І». Шина І2С для керування стереосистемою може мати вид, показаний на рис. 11.
Рисунок 11. Приклад І2С мережі
Двопровідна лінія використовується для визначення початку передачі даних, а також для передачі самих даних. Щоб почати передачу даних, шина переводиться в стартовий стан. При відсутності переданих даних шина знаходиться в стані (пасивному), що очікує («idle»). При цьому на обох лініях сигнали не надходять, і на них встановлений високий рівень сигналу (потенціал Vcc). Щоб ініціювати передачу даних, "ведучий" пристрій, запитує керування шиною, установлює низький рівень спочатку на лінії SDA, а потім на лінії SCL (стартовий стан). У процесі пересилання даних такий стан шини є неробочим, тому що прийом переданих даних виробляється тільки при високому (активному) рівні синхросигналу на лінії SCL. Щоб закінчити передачу даних виконуються зворотні дії: на лінії SCL встановлюється високий рівень сигналу, а потім у такий же стан переводиться лінія даних SDA (рис. 12).
Рисунок 12 Форма сигналів на шині І2С
Дані передаються синхронним способом, причому першим посилається старший біт (рис. 2.40). Після передачі 8 біт ведучий пристрій переводить лінію даних у "0" стан, що плаває, очікуючи підтвердження прийому даних від відомого пристрою. Таким підтвердженням є установка відомим пристроєм низького рівня сигналу на лінії SDA. Після біта підтвердження на обох лініях встановлюється низький рівень. Потім виробляється пересилання наступного байта, чи шина переводиться в стан кінця передачі. Це означає, що передача завершена, і приймач може готуватися до наступного запиту даних.
Рисунок 13. Передача байту по шині І2С
Існує дві максимальні швидкості передачі даних по шині І2С: «стандартний режим» ~ до 100 Кбіт/с і «швидкий режим» - до 400 Кбіт/с (рис. 2.41).
Рисунок 14. Тимчасова діаграма сигналів на шині І2С
Формат команди, що надходить від ведучого пристрою до відомого, показаний на рис. 15. Адреса одержувача містить 7 біт. Існує незатверджений («вільний») стандарт, відповідно до якого чотири старших біти використовуються для вказівки типу пристрою, а наступні три біти використовуються для вибору одного з восьми пристроїв цього типу чи служать для більш точного визначення типу пристрою. Тому що цей стандарт не є обов'язковим, то деякі пристрої вимагають вказівки в якості трьох останніх адресних біт визначених кодів, тоді як інші, наприклад мікросхеми пам'яті EEPROM використовують ці біти для вибору адресата усередині пристрою. Існує також 10-розрядний стандарт для передачі адреси, у якому перші 4 біти містять 1, а біт, що випливає має значення 0, останні 2 біти є старшими бітами адреси, а завершальні 8 біт адреси передаються в наступному байті. Усе це означає, що дуже важливо розподілити адреси між пристроями, підключеними до шини.
Перші чотири біти адреси звичайно служать для визначення типу обираних пристроїв у відповідності з наступним угодою:
0000 - Зарезервована адреса
0010 - Синтезатор голосу
0011 - Аудіо - інтерфейс
0100 - Звуковий генератор
0111 - Жидкокристалічний чи світлодіодний дисплей
1000 - Відео — інтерфейс
1001 - аналогово-цифровий і цифро-аналоговий інтерфейси
1010 - Послідовна пам'ять
1100 - Керування радіоприймачем
1101 - Годинник/календар
1111 - Зарезервовано для використання 10-розрядної адреси
Рисунок 15. Формат передачі даних по шині І2С
Перш, ніж закінчити обговорення протоколу І2С, варто звернути увагу на наступні обставини. У деяких пристроях потрібна повторна посилка стартового біта, щоб скинути приймаючий пристрій у вихідний стан для прийому наступної команди. Наприклад, при читанні з EEPROM-пам'яті з послідовною вибіркою перша команда посилає адресу осередку, з якого виробляється зчитування, а друга команда виконує читання даних по цій адресі.
Варто також звернути увагу на можливість ініціювання процесу передачі даних декількома ведучими мікроконтролерами («multimastering»). Це може привести до виникнення колізій, коли два пристрої намагаються керувати шиною одночасно. Якщо один мікроконтролер взяв керування шиною, тобто встановив стартовий стан, до того, як інший спробує зробити теж саме, то це не викликає проблем. Проблема виникає, коли кілька пристроїв ініціюють стартовий стан одночасно, і потрібно зробити арбітраж їхніх запитів.
На практиці здійснити арбітраж у цьому випадку досить просто. Під час передачі даних обидва передавачі точно синхронізують тактові імпульси. Якщо при передачі адреси біт, що повинний мати значення „1”, насправді приймає значення „0”, то це вказує на те що шина зайнята іншим пристроєм. У цьому випадку ведучий пристрій відключається від шини і чекає, коли наступить стан «кінець передачі», після якого повторює запит. Можливо, це важко зрозуміти по приведеному описі. У наступному розділі «Протокол CAN» буде показано, як теж саме відбувається з використанням асинхронної шини CAN, що має багато загального із шиною І2С.
Протокол І2С може бути легко реалізований програмним шляхом. Але при цьому швидкий режим не може бути реалізований через перевантаження процесора, навіть стандартний режим 100 Кбіт/с може виявитися занадто швидким для деяких мікроконтролерів. Програмна реалізація щонайкраще підходить тоді, коли в мережі мається тільки один ведучий пристрій. У цьому випадку немає необхідності синхронізуватися з іншими пристроями чи приймати повідомлення від інших ведучих пристроїв, що працюють із занадто великою швидкістю, що не забезпечується при програмній реалізації.
БІЛЕТ № 14
№1
Оптичний привід
- пристрій, призначений для зчитування
та запису інформації на оптичні носії
(диски). Механічна частина приводу,
керована його мікросхемою, забезпечує
обертання в ньому диска і зчитування з
нього даних за допомогою лазера і системи
лінз. В залежності від типів використовуваних
носіїв, бувають приводи для зчитування/запису
CD, DVD і Blu-Ray. Принцип, за яким працюють
сучасні оптичні носії інформації,
використовується досить давно. По своїй
суті, CD, DVD та Blu-Ray - не що інше, як
вдосконалена вінілова грампластинка.
Дані на цих носіях зберігаються у вигляді
дуже тонкої спіральної доріжки, нанесеної
на спеціальний захищений шар диска, яка
складається з мікроскопічних заглиблень
і проміжків між ними. Ці заглиблення
називаються пітами (англ. pit - заглиблення),
а проміжки - лендами (англ. land - простір).
Під збільшенням їх можна добре розглянути.
Зчитування здійснюється за допомогою
лазера, який, відбиваючись від поверхні
диска, що обертається, потрапляє на
фотоелемент. Відображення з величезною
швидкістю змінюється у відповідності
зі структурою пітів і лендів доріжки,
передаючи таким чином інформацію,
зашифровану у ній. Потім це "тремтіння
лазера" дешифрується згідно певного
алгоритму. Першим оптичним носієм,
розробленим ще в 1979 році, став компакт-диск
(англ. Compact Disc, CD). Глибина пітів цього
носія становить близько 100 нм, ширина -
500 нм. Мінімальна довжина піта CD - від
850 нм. Крок між доріжками спіралі - близько
1,5 мкм. У приводах для читання носіїв
цього типу використовується червоний
лазер з довжиною хвилі 780 нм, який
фокусується на робочій поверхні в точку
діаметром близько 1,2 мкм (для кращої
уяви: товщина людської волосини становить
близько 50 мкм або 50000 нм). Спочатку CD
створювався як носій звукової інформації
(Audio CD). Трохи пізніше його почали
використовувати для зберігання інших
даних. Формат запису Audio CD і CD з даними
відрізняється, тому звичайні програвачі
не можуть зчитувати інформацію з
немузичних компакт-дисків.
Перші диски були CD-ROM (Read Only Memory -
тільки з можливістю читання) і виготовлялися
за спеціальною технологією (можливість
запису в домашніх умовах відсутня).
Пізніше розробили носії, в яких піти
являли собою не заглиблення, а ділянки
модифікованої поверхні з високим
світлопоглинанням, що виникають під
спеціальним впливом лазера. Як і у
випадку з заглибленими пітами, технологія
забезпечувала потрібну зміну інтенсивності
відображення лазера і зчитування даних,
закодованих у доріжці. Завдяки цьому
з’явилися диски типів CD-R і CD-RW (з
можливістю запису і неодноразової
перезапису користувачами відповідно).
DVD - носій, який з'явився
дещо пізніше, має той же фізичний розмір
і принципи роботи, що і CD, але використовує
дуже щільну робочу поверхню. За рахунок
більш "мініатюрної" структури
доріжки і тоншого червоного лазера з
довжиною хвилі всього 650 нм, DVD здатний
зберігати в кілька разів більше даних.
Спочатку DVD розроблявся
як альтернатива морально застарілим
відеокасетами для зберігання
відеоінформації і тому називався Digital
Video Disc (цифровий відеодиск). Але носії
цього виду чудово підійшли і для запису
інших типів даних. Абревіатуру DVD при
цьому почали трактувати як Digital Versatile
Disc - цифровий багатоцільовий диск. Але
така розшифровка не є офіційною.
В залежності від виду даних, що
зберігаються, DVD бувають наступних
типів: DVD відео-, DVD-Audio (якість звуку
значно вище, ніж на Audio-CD), DVD-Data, DVD змішаного
типу.
Сучасні DVD можуть
мати одну або дві робочі сторони. При
цьому кожна зі сторін може містити один
або навіть два робочих шари. Завдяки
цій особливості, на DVD максимального
обсягу можна записати до 18 ГБ інформації.
DVD і CD, бувають для
одноразової запису, або ж можуть
перезаписуватися багаторазово (R і RW).
При цьому, в залежності від особливостей
використовуваного матеріалу і технології
запису, розрізняють DVD-R(RW) , DVD+R(RW). У
технічні подробиці не вдаватимуся.
Скажу тільки, що DVD+R(RW) і приводи з їх
підтримкою - кращий і безпроблемніший
варіант. При записуванні таких носіїв
виникає набагато менше помилок. Крім
того, DVD+RW можна записувати поверх вже
наявних на ньому даних. У випадку ж з
DVD-RW попередньо потрібно провести повне
очищення диска.
Blu-ray Disc
(BD, англ. blue ray - синій промінь) - оптичний
носій нового типу, що відрізняється ще
більш високою щільністю робочої поверхні
і забезпечує зберігання великого обсягу
даних, у тому числі і високоякісного
відео високої чіткості. У назві Blu-ray
буква "e" була пропущена навмисне,
щоб мати можливість зареєструвати
торговий знак.
Запис і
зчитування BD проводиться за допомогою
надтонкого синього лазера з дуже короткою
хвилею (405 нм), завдяки чому ширина доріжки
на диску звужена до 0,32 мкм, що вдвічі
менше, ніж на DVD. Збільшився не тільки
обсяг даних, що зберігаються, але і
швидкість їх зчитування. У кілька разів
тоншим став і захисний шар, але завдяки
використанню нових матеріалів, Blu-ray
Disc боїться подряпин не більше, ніж
оптичні носії інших типів.
Сучасні технології дозволяють записувати
на один BD кілька шарів, кожний з яких
може містити 23,3 ГБ даних. Поширеними є
диски з кількістю шарів до 4. Хоча, вже
створено прототипи ємністю до 500 ГБ, що
містять 15-20 шарів.
Blu-ray
носії продовжують розвиватися і
вдосконалюватися. Існують диски для
одноразового і багаторазового записування.
Розроблена технологія, що дозволяє
наносити на один диск шари, призначені
для запису DVD і Blu-Ray.
№2
До 16-розрядних МП першого покоління належать МП i8086/i8088 та
i80186/i80188, до МП другого покоління - i80286. Мікропроцесор має
внутрішній надоперативний запам’ятовувальниий пристрій (НОЗП) ємністю
14x16 байт. Шина адреси 20-розрядна, що дозволяє безпосередньо
адресувати до 220= 1048576 комірок пам'яті (1 Мбайт).
У МП i8086 застосовано конвеєрну архітектуру, що дозволяє
сумістити у часі цикли вибірки команди та вибірки з пам'яті кодів
наступних команд. Це досягається паралельною роботою двох
порівняно незалежних пристроїв - операційного пристрою та шинного
інтерфейсу. Структурну схему МП i8086 показано на рисунку 1. Опе-
раційний пристрій виконує команду, а шинний інтерфейс здійснює взає-
модію із зовнішньою шиною: виставляє адреси, зчитує коди команд,
записує результати обчислень у пам'ять або пристрої введення-
виведення.
Операційний пристрій складається з регістрів загального
призначення (РЗП), призначених для зберігання проміжних результатів
- даних та адрес; АЛП з буферними регістрами; регістра ознак; блока
керування та синхронізації (БК та С), який дешифрує коди команд і
генерує сигнали керування для всіх блоків схеми МП. Шинний
інтерфейс складається з шести байтової регістрової пам'яті, яка
називається чергою команд, чотирьох сегментних регістрів: CS, DS, ES,
SS, вказівника команд IP, суматора, а також допоміжних регістрів
зв'язку і буфера шин (БШ) адреси/даних. Черга команд працює за
принципом FIFO (First Input - First Output, тобто перший прийшов -
перший пішов) і зберігає на виході порядок надходження команд.
Довжина черги 6 байт.
Коли операційний пристрій зайнятий виконанням команди, шинний
інтерфейс самостійно ініціює випереджаючу вибірку кодів команд з
пам'яті у чергу команд. Вибирання з пам'яті чергового командного слова
здійснюється тоді, коли в черзі виявляється два вільні байти. Черга
збільшує швидкодію процесора у випадку послідовного виконання
команд. У разі вибирання команд переходів, викликів і повернень з
підпрограм та обробленні запитів переривань черга команд скидається і
вибирання починається з нового місця програмної пам'яті.
Рисунок 1 – Структурна схема мікропроцесора i8086
Ще одним із завдань шинного інтерфейсу є формування фізичної 20-роз-
рядної адреси із двох 16-розрядних слів. Першим словом є вміст одного з
сегментних регістрів CS, SS, DS, ES, а друге слово залежить від типу ад-
ресації операнда або коду команди. Складання 16-розрядних слів відбу-
вається зі зміщенням на 4 розряди і здійснюється за допомогою суматора, що
входить до складу шинного інтерфейсу.
Пам'ять являє собою масив ємністю 1 Мбайт (рисунок 2). У пам'яті
зберігаються як байти, так і двобайтові слова. Слова розміщуються у двох
сусідніх комірках пам'яті; старший байт зберігається у комірці зі старшою
адресою, молодший - з молодшою. Адресою слова вважається адреса його
молодшого байта. На рисунку 2 показано приклад, коли з адресою 00000
зберігається байт 35H, а з адресою 00001 - слово 784AH. Початкові (00000H-
003FFH) і кінцеві (FFFF0H-FFFFFH) адреси зарезервовані для системи
переривань та початкового встановлення відповідно.
У МП i8086 застосовано сегментну організацію пам'яті, яка
характеризується тим, що програмно доступною є не вся пам'ять, а лише
деякі сегменти, тобто області пам'яті. Усередині сегмента використовують
лінійну адресацію.
Рисунок 2 – Програмна модель пам'яті
Упровадження сегментної організації можна пояснити таким чином.
Мікропроцесор i8086 являє собою 16-розрядний процесор, тобто він має 16-
розрядну внутрішню шину, 16-розрядні регістри і суматори. Прагнення
розробників ВІС адресувати якомога більший масив пам'яті зумовило ви-
користання 20-розрядної шини даних.
Для формування 20-розрядної адреси у 16-розрядному процесорі вико-
ристовують інформацію двох 16-розрядних регістрів. У МП i8086 20-роз-
рядна адреса формується з двох 16-розрядних адрес, які називають логічними.
Перша логічна адреса, доповнена праворуч чотирма нулями, являє собою
початкову адресу сегмента ємністю 64 кбайт. Друга логічна адреса
визначає зміщення у сегменті, тобто відстань від початку сегмента до ад-
ресованої комірки. Якщо вона дорівнює 0000, то адресується перша комірка
сегмента, якщо FFFFH - то остання. Отже, логічний адресний простір
розподілено на блоки суміжних адрес розміром 64 кбайт, тобто сегменти.
Такий підхід до організації пам'яті зручний ще й тому, що пам'ять
логічно поділяється на області коду (програмної пам'яті), даних і стека.
Фізична 20-розрядна адреса комірки пам'яті формується з двох 16-розрядних
адрес – адреси сегмента Seg і виконавчої адреси ЕА (Executive Address), які
додаються зі зміщенням на чотири розряди (рисунок 3).
Рисунок 3 – Формування фізичної адреси
Зміщення адреси сегмента на 4 розряди ліворуч еквівалентне його мно-
женню на 24. Тоді фізична адреса дорівнює 16 х Seg + ЕА. Як перша логічна
адреса Seg використовується вміст одного із чотирьох сегментних регістрів:
CS (Code Segment - сегмент кодів), DS (Data Segment - сегмент даних), ES
(Extended Segment - додатковий сегмент даних), SS (Stack Segment - сегмент
стека). Друга логічна адреса ЕА або зміщення залежить від сегмента. Так, у
сегменті кодів як ЕА використовується вміст лічильника інструкцій IP, у сег-
ментах даних значення ЕА залежить від засобу адресації операнда, у сегменті
стека використовуються регістри SP або ВР.
Перетворення логічних адрес на фізичні завжди однозначне, тобто парі
Seg і ЕА відповідає єдина фізична адреса. Зворотне перетворення не є
однозначним: фізичну адресу можна подати за допомогою 4096 пар логічних
адрес. Фізична адреса позначається у вигляді Seg:EA, де як Seg і ЕА можуть
використовуватися і позначення регістрів, і 16-розрядні дані.
На рисунку 4 показано розміщення у просторі 1 Мбайт чотирьох сег-
ментів по 64 кбайт без перекриття. Початкові адреси сегментів визначаються
вмістом 16-розрядних сегментних регістрів, які доповнено праворуч чотирма
нульовими бітами. Зміщення в сегменті кодів визначається вмістом регістра
IP; зміщення в сегменті даних і додатковому сегменті даних - ефективною
адресою ЕА, яка наводиться в команді; у сегменті стека - вмістом регістра
SP.
У сегментах кодів розміщено коди команд, тобто програму у машинних
кодах; у решті сегментів – дані. Програма може звертатися тільки до даних у
сегментах (рисунок 4).
Змінюючи вміст сегментних регістрів, можна пересувати сегменти в
межах усієї пам'яті 1 Мбайт.
Рисунок 4 – Розміщення сегментів у просторі пам'яті 1 Мбайт
Регістри загального призначення поділяються на регістри даних і ре-
гістри-вказівники. До регістрів даних відносять чотири 16-розрядні регістри:
АХ, ВХ, СХ, DX. Кожний із цих регістрів складається з двох 8-розрядних
регістрів, які можна незалежно адресувати за символічними іменами АН, ВН,
СН, DH (старші байти - High) та AL, BL, CL, DL (молодші байти -Low).
Регістри-вказівники SP (Stack Pointer - вказівник стека), ВР (Base Pointer -
базовий регістр), SI (Source Index - індекс джерела), DI (Destination Index -
індекс призначення) є 16-розрядними. Усі РЗП можна використати для
зберігання даних, але в деяких командах допускається використання певного
регістра за замовчуванням. На відміну від 8-розрядних МП регістр SP
зберігає зміщення останньої зайнятої комірки стека відносно початку
сегмента стека, а повна адреса стека визначається як SS:SP.
Сегментні регістри CS, DS, ES, SS визначають початкові адреси чотирьох
сегментів пам'яті. Використання сегментних регістрів визначається типом
звернення до пам'яті.
№3
Типи керуючих автоматів
Залежно від способу зберігання мікропрограм розрізняють керуючі автомати: - З жорсткою логікою; - З гнучкою логікою. У керуючому автоматі з жорсткою логікою вся логіка переходів і вироблення керуючих сигналів визначається жорсткою структурою комбінаційної схеми. Перехід на іншу мікропрограму зажадає зміни комбінаційної схеми. Такий керуючий автомат має комбінаційну схему (КС), де "зашита" ДСА роботи обчислювача і регістр (R) станів автомата (мал. 4). Синхросигнал (С) подається на вхід синхронізації регістра R.
Малюнок 4 Такий автомат, у якого мікропрограми реалізовані апаратно у вигляді комбінаційної схеми, мають високу швидкодію, але не можуть бути перебудовані на іншу мікропрограму. У керуючих автоматах з гнучкою логікою мікропрограми зберігаються в пристрої. При цьому в одній комірці запам'ятовуючого пристрою зберігається одна мікрокоманда або мікрооперацій. Таким чином, завдання реалізації мікропрограми тут полягає в послідовному вилученні мікрокоманд з комірок пам'яті за лічильником мікрокоманд (СЧМК), що задає адреси комірок ЗУ (мал. 5).
Малюнок 5 Гнучкість такого автомата полягає в тому, що для реалізації іншої мікропрограми, тут достатньо її записати на місце колишньої. Структура УА зберігається незмінною, але швидкодія його нижче ніж у УА з жорсткою логікою. Різні способи зберігання мікропрограм у цих автоматів і викликає різний підхід до їх проектування.
БІЛЕТ № 15
№1
АЦП, Ана́лого-цифрови́й перетво́рювач (англ. analog-to-digital converter (скорочено ADC)) — пристрій, що перетворює вхідний аналоговий сигнал в дискретний код (цифровий сигнал). Зворотне перетворення здійснюється за допомогою ЦАП (цифро-аналогового перетворювача).
Як правило, АЦП — електронний пристрій, що перетворює напругу в двійковий цифровий код. Проте, деякі неелектронні пристрої, такі як перетворювач кут-код, слід також відносити до АЦП.
[ред.] Розрядність
Розрядність АЦП характеризує кількість дискретних значень, які перетворювач може видати на виході. Вимірюється в бітах. Наприклад, АЦП, здатний видати 256 дискретних значень (0..255), має розрядність 8 бітів, оскільки
.
Розрядність може бути також визначена в величинах вхідного сигналу і виражена, наприклад, в вольтах. Розрядність за напругою дорівнює напрузі, що відповідає максимальному вихідному коду, який ділиться на кількість вихідних дискретних значень. Наприклад:
Приклад 1
Діапазон вхідних значень = від 0 до 10 вольт
Розрядність АЦП 12 бітів: 212 = 4096 рівнів квантування
Розрядність за напругою: (10-0)/4096 = 0.00244 вольт = 2.44 мв
Приклад 2
Діапазон вхідних значень = від −10 до +10 вольт
Розрядність АЦП 14 бітів: 214 = 16384 рівнів квантування
Розрядність за напругою: (10-(-10))/16384 = 20/16384 = 0.00122 вольт = 1.22 мв
На практиці розрядність АЦП обмежена відношенням сигнал/шум вхідного сигналу. При великій інтенсивності шумів на вході АЦП розрізнення сусідніх рівнів вхідного сигналу стає неможливим, тобто погіршується розрядність. При цьому реальний досяжний дозвіл описується ефективною кількістю розрядів (effective number of bits — ENOB), яка менше, ніж реальна розрядність АЦП. При перетворенні сильно зашумленного сигналу молодші біти вихідного коду практично непридатні, оскільки містять шум. Для досягнення заявленої розрядності відношення С/Ш вхідного сигналу повинне бути приблизно 6 дб на кожен біт розрядності.
[ред.] Типи перетворення
[ред.] Лінійні АЦП
Більшість АЦП вважаються лінійними, хоча аналого-цифрове перетворення по суті є нелінійним процесом (оскільки операція перетворення безперервного простору в дискретне — операція необоротна і, отже, нелінійна). Термін лінійний стосовно АЦП означає, що діапазон вхідних значень, що відображається на вихідне цифрове значення, зв'язаний за лінійним законом з цим вихідним значенням, тобто вихідне значення k досягається при діапазоні вхідних значень від
m(k + b)
до
m(k + 1 + b)
де m і b — деякі константи. Константа b, як правило, має значення 0 або −0.5. Якщо b = 0, АЦП називають mid-rise, якщо ж b = −0.5, то АЦП називають mid-tread.
[ред.] Нелінійні АЦП
Якби густина ймовірності амплітуди вхідного сигналу мала рівномірний розподіл, те відношення сигнал/шум (стосовно шуму квантування) було б максимально можливим. З цієї причини зазвичай перед квантуванням за амплітудою сигнал пропускають через безінерційний перетворювач, передавальна функція якого повторює функцію розподілу самого сигналу. Це покращує достовірність передачі сигналу, оскільки найбільш важливі області амплітуди сигналу квантуються з кращою розрядністю. Відповідно, при цифро-аналоговому перетворенні потрібно буде обробити сигнал функцією, зворотній функції розподілу початкового сигналу.
Це той же принцип, що і використовуваний в компандерах, які застосовуються у магнітофонах і різних комунікаційних системах, він направлений на максимізацію ентропії.
Наприклад, голосовий сигнал має лапласовий розподіл амплітуди. Це означає, що близько нуля, амплітуда несе більше інформації, аніж в області з більшою амплітудою. З цієї причини логарифмічні АЦП часто застосовуються в системах передачі голосу для збільшення динамічного діапазону значень, що передаються без зміни якості передачі сигналу в області малих амплітуд.
8-бітові логарифмічні АЦП з а-законом або μ-законом забезпечують широкий динамічний діапазон і мають високий дозвіл в найбільш критичному діапазоні малих амплітуд; лінійний АЦП з подібною якістю передачі повинен був би мати розрядність близько 12 біт.
[ред.] Точність
Є декілька джерел похибки АЦП. Похибки квантування і (вважаючи, що АЦП повинен бути лінійним) нелінійності властиві будь-якому аналого-цифровому перетворенню. Крім того, існують так звані апартурні помилки які є наслідком джитера (англ.jitter) тактового генератора, вони виявляються при перетворенні сигналу в цілому (а не одного відліку).
Ці похибки вимірюються в одиницях, званих МЗР — молодший значущий розряд. У приведеному вище прикладі 8-бітового АЦП помилка в 1 МЗР складає 1/256 від повного діапазону сигналу, тобто 0.4 %.
[ред.] Похибки квантування
Докладніше: Шум квантизації
Похибки квантування є наслідком обмеженої розрядності АЦП. Цей недолік не може бути усунений при жодному типі аналого-цифрового перетворення. Абсолютна величина помилки квантування при кожному відліку знаходиться в межах від нуля до половини МЗР.
Як правило, амплітуда
вхідного сигналу значно більша, ніж
МЗР. В цьому випадку помилка
квантування
не корельована з сигналом і має рівномірний
розподіл.
Її середньоквадратичне
значення
збігається з середньоквадратичним
відхиленням
розподілу, який дорівнює
.
У разі 8-бітового АЦП це складе 0.113 %
від повного діапазону сигналу.
[ред.] Нелінійність
Усім АЦП властиві помилки, пов'язані з нелінійністю, які є наслідком фізичної недосконалості АЦП. Це призводить до того, що передавальна характеристика (у вказаному вище сенсі) відрізняється від лінійної (точніше від бажаної функції, оскільки вона не обов'язково лінійна). Помилки можуть бути зменшені шляхом калібрування.
Важливим параметром, що описує нелінійність, є інтегральна нелінійність (INL) і диференційна нелінійність (DNL).
[ред.] Апертурна похибка
Припустимо ми
оцифровуємо синусоїдальний сигнал
.
В ідеальному випадку відліки беруться
через рівні проміжки часу. Проте, в
реальності час моменту узяття відліку
схильний до флуктуацій внаслідок
тремтіння фронту синхросигналу (clock
jitter). Вважаючи, що невизначеність моменту
часу взяття відліку порядку
,
отримуємо, що помилка, обумовлена цим
явищем, може бути оцінена як
Легко бачити, що помилка відносно невелика на низьких частотах, проте на великих частотах вона може істотно зрости. Ефект апертурної похибки може бути проігнорований, якщо її величина порівняно невелика в порівнянні з помилкою квантування. Таким чином, можна встановити такі вимоги до тремтіння фронту сигналу синхронізації:
де q — розрядність АЦП.
Розрядність АЦП |
Максимальна частота вхідного сигналу |
||||
44.1 кГц |
192 кГц |
1 МГц |
10 МГц |
100 МГц |
|
8 |
28.2 нс |
6.48 нс |
1.24 нс |
124 пс |
12.4 пс |
10 |
7.05 нс |
1.62 нс |
311 пс |
31.1 пс |
3.11 пс |
12 |
1.76 нс |
405 пс |
77.7 пс |
7.77 пс |
777 фс |
14 |
441 пс |
101 пс |
19.4 пс |
1.94 пс |
194 фс |
16 |
110 пс |
25.3 пс |
4.86 пс |
486 фс |
48.6 фс |
18 |
27.5 пс |
6.32 пс |
1.21 пс |
121 фс |
12.1 фс |
24 |
430 фс |
98.8 фс |
19.0 фс |
1.9 фс |
190 ас |
З цієї таблиці можна зробити висновок про доцільність застосування АЦП певної розрядності з урахуванням обмежень, що накладаються тремтінням фронту синхронізації (clock jitter). Наприклад, безглуздо використовувати прецизійний 24-бітовий АЦП для запису звуку, якщо в система розподілу синхросигналу не в змозі забезпечити ультрамалої невизначеності.
[ред.] Частота дискретизації
Аналоговий сигнал є безперервною функцією часу, в АЦП він перетвориться в послідовність цифрових значень. Отже, необхідно визначити частоту вибірки цифрових значень з аналогового сигналу. Частота, з якою проводяться цифрові значення, отримала назву частота дискретизації (Sampling rate) АЦП.
Безперервно змінний сигнал з обмеженою спектральною смугою піддається оцифровці (тобто значення сигналу вимірюються через інтервал часу T — період дискретизації) і початковий сигнал може бути точно відновлений з дискретних в часі значень шляхом інтерполяції. Точність відновлення обмежена помилкою квантування. Проте, відповідно до теореми Котельникова-Шеннона точне відновлення можливе тільки якщо частота дискретизації вища, ніж подвоєна максимальна частота в спектрі сигналу.
Оскільки реальні АЦП не можуть провести аналого-цифрове перетворення миттєво, вхідне аналогове значення повинне утримуватися постійним принаймні від початку до кінця процесу перетворення (цей інтервал часу називають час перетворення). Це завдання вирішується шляхом використання спеціальної схеми на вході АЦП — пристрій вибірки-зберігання (ПВЗ, рос. УВХ). ПВЗ, як правило, зберігає вхідну напругу в конденсаторі, сполученому з входом через аналоговий ключ: при замиканні ключа відбувається вибірка вхідного сигналу (конденсатор заряджає до вхідної напруги), при розмиканні — зберігання. Багато АЦП, виконані у вигляді інтегральних мікросхем містять вбудовані ПВЗ.
[ред.] Накладення спектрів (Аліасінг)
Всі ЦАП працюють шляхом вибірки вхідних значень через фіксовані інтервали часу. Отже, вихідні значення є неповною картиною того, що подається на вхід. Дивлячись на вихідні значення, немає ніякої можливості встановити, як поводився вхідний сигнал між вибірками. Якщо відомо, що вхідний сигнал міняється достатньо поволі щодо частоти дискретизації, то можна припустити, що проміжні значення між вибірками знаходяться десь між значеннями цих вибірок. Якщо ж вхідний сигнал міняється швидко, то ніяких припущень про проміжні значення вхідного сигналу зробити не можна, а отже, неможливо однозначно відновити форму початкового сигналу.
Якщо послідовність цифрових значень, видавана АЦП, де-небудь перетвориться назад в аналогову форму цифро-аналоговим перетворювачем, бажано, щоб отриманий аналоговий сигнал був максимально точною копією початкового сигналу. Якщо вхідний сигнал міняється швидше, ніж робляться його відліки, то точне відновлення сигналу неможливе, і на виході ЦАП буде присутній помилковий сигнал. Помилкові частотні компонетни сигналу (які відсутні у спектрі початкового сигналу) отримали назву alias (помилкова частота, побічна низькочастотна складова). Частота помилкових компонент залежить від різниці між частотою сигналу і частотою дискретизації. Наприклад, синусоїдальний сигнал з частотою 2 кГц, дискретизований з частотою 1.5 кгц був би відтворений як синусоїда з частотою 500 Гц. Ця проблема отримала назву накладення частот (aliasing).
Для запобігання накладенню спектрів сигнал, що подається на вхід АЦП, повинен бути пропущений через фільтр низьких частот для придушення спектральних компонент, частота яких перевищує половину частоти дискретизації. Цей фільтр отримав назву anti-aliasing (антіаліасинговий) фільтр, його застосування надзвичайне важливо при побудові реальних АЦП.
Хоча накладення спектрів в більшості випадків є небажаним ефектом, його можна використовувати на благо. Наприклад, завдяки цьому ефекту можна обійтися без перетворення частоти вниз при оцифровці вузькосмугового високочастотного сигналу (див. змішувач (радіотехніка)).
[ред.] Підмішування псевдовипадкового сигналу (dither)
Деякі характеристики АЦП можуть бути покращувані шляхом використання методики підмішування псевдовипадкового сигналу (т.зв. дитеринг, англ. dither). Вона полягає в додаванні до вхідного аналогового сигналу випадкового шуму (білий шум) невеликої амплітуди. Амплітуда шуму, як правило, вибирається на рівні половини МЗР. Ефект від такого додавання полягає в тому, що стан МЗР випадковим чином переходить між станами 0 і 1 при дуже малому вхідному сигналі (без додавання шуму МЗР був би в змозі 0 або 1 довготривало). Для сигналу з шумом, що підмішується, замість простого округлення сигналу до найближчого розряду відбувається випадкове округлення вгору або вниз, причому середній час, протягом якого сигнал закруглений до того або іншого рівня залежить від того, наскільки сигнал близький до цього рівня.
Таким чином, оцифрований сигнал містить інформацію про амплітуду сигналу з роздільною здатністю краще, ніж МЗР, тобто відбувається збільшення ефективної розрядності АЦП. Негативною стороною методики є збільшення шуму у вихідному сигналі. Фактично, помилка квантування розмивається по декількох сусідніх відліках. Такий підхід є бажанішим, ніж просте округлення до найближчого дискретного рівня. В результаті використання методики підмішування псевдовипадкового сигналу ми маємо більш точне відтворення сигналу в часі. Малі зміни сигналу можуть бути відновлені з псевдовипадкових стрибків МЗР шляхом фільтрації. Крім того, якщо шум детермінований (амплітуда шуму, що додається, точно відома у будь-який момент часу), то його можна відняти з оцифрованого сигналу, заздалегідь збільшивши його розрядність, тим самим майже повністю позбавитися від доданого шуму.
Звукові сигнали дуже малих амплітуд, оцифровані без псевдовипадкового сигналу, сприймаються на слух дуже спотвореними і неприємними. При підмішуваному псевдовипадковому сигналі дійсний рівень сигналу представлений середнім значенням декількох послідовних відліків.
Дуже схожий процес, також званий dither або дифузія помилок, застосовується для представлення півтонів зображень в комп'ютерній графіці при малій кількості бітів на піксел. При цьому зображення стає зашумленним, але візуально сприймається реалістичніше, ніж те саме зображення отримане простим квантуванням.
[ред.] Передискретизація
Як правило, сигнали оцифровуються з мінімально необхідною частотою дискретизації з міркувань економії, при цьому шум квантування є білим, тобто його спектральна щільність потужності рівномірно розподілена по всій смузі. Якщо ж оцифрувати сигнал з частотою дискретизації, набагато більшої, ніж за теоремою Котельникова-Шеннона, а потім піддати цифровій фільтрації для придушення спектру поза частотною смугою початкового сигналу, то відношення сигнал/шум, буде кращим, ніж при використанні всієї смуги. Таким чином можна досягти ефективної точності більшої, ніж розрядність АЦП.
Передискретизація також може бути використана для пом'якшення вимог до крутизни переходу від смуги пропускання до смуги пригнічення антіаліасингового фільтру. Для цього сигнал оцифровують, наприклад, на удвічі більшій частоті, потім проводять цифрову фільтрацію, пригнічуючи частотні компоненти поза смугою початкового сигналу, і, нарешті, знижують частоту дискретизації шляхом децимації.
[ред.] Типи АЦП
Нижче перераховані основні способи побудови електронних АЦП:
АЦП прямого перетворення або паралельний АЦП містить по одному компаратору на кожен дискретний рівень вхідного сигналу. У будь-який момент часу тільки компаратори, відповідні рівням нижче за рівень вхідного сигналу, видадуть на своєму виході сигнал перевищення. Сигнали зі всіх компараторів поступають на логічну схему яка видає цифровий код, залежний від того, скільки компараторів показали перевищення. Паралельні АЦП дуже швидкі, але зазвичай мають розрядність не більше 8 бітів (256 компараторів), оскільки, мають велику і дорогу схему. АЦП цього типу мають дуже великий розмір кристала мікросхеми, високу вхідну ємність, і можуть видавати короткочасні помилки на виході. Часто використовуються для відео або інших високочастотних сигналів.
АЦП послідовного наближення або АЦП з порозрядним врівноваженням містить компаратор, допоміжний ЦАП і регістр послідовного наближення. АЦП перетворить аналоговий сигнал в цифровий за N кроків, де N — розрядність АЦП. На кожному кроці визначається по одному біту шуканого цифрового значення, починаючи від СЗР і закінчуючи МЗР. Послідовність дій за визначенням чергового біта полягає в наступному. На допоміжному ЦАП виставляється аналогове значення, утворене з бітів, вже визначених на попередніх кроках; битий, який повинен бути визначений на цьому кроці, виставляється в 1, більш молодші біти встановлені в 0. Отримане на допоміжному ЦАП значення порівнюється з вхідним аналоговим значенням. Якщо значення вхідного сигналу більше значення на допоміжному ЦАП, то визначуваний біт отримує значення 1, інакше 0. Таким чином, визначення підсумкового цифрового значення нагадує двійковий пошук. АЦП цього типу володіють одночасно високою швидкістю і хорошою розрядністю.
АЦП диференціального кодування (англ. delta-encoded ADC) містять реверсивний лічильник, код з якого поступає на допоміжний ЦАП. Вхідний сигнал і сигнал з допоміжного ЦАП порівнюються на компараторі. Завдяки негативному зворотному зв'язку з компаратора на лічильник код на лічильнику постійно міняється так, щоб сигнал з допоміжного ЦАП якомога менше відрізнявся від вхідного сигналу. Після деякого часу різниця сигналів стає менше, ніж МЗР, при цьому код лічильника прочитується як вихідний цифровий сигнал АЦП. АЦП цього типу мають дуже великий діапазон вхідного сигналу і високу розрядність, але час перетворення залежить від вхідного сигналу, хоч і обмежено зверху. У гіршому разі час перетворення рівний Tmax=(2q) /fс, де q — розрядність АЦП, fс — частота тактового генератора лічильника. АЦП диференціального кодування зазвичай є хорошим вибором для оцифровки сигналів реального світу, оскільки більшість сигналів у фізичних системах не схильні до стрибкподібних змін. У деяких АЦП використовується комбінований підхід: диференційне кодування і послідовне наближення; це особливо добре працює у випадках, коли відомо, що високочастотні компоненти в сигналі відносно невеликі.
АЦП порівняння з зубчастим сигналом містять генератор напруги зубчастої форми, компаратор і лічильник часу. Зубчастий сигнал лінійно наростає до деякого рівня, потім швидко спадає до нуля. У момент початку наростання запускається лічильник часу. Коли пилоподібний сигнал досягає рівня вхідного сигналу, компаратор спрацьовує і зупиняє лічильник; значення прочитується з лічильника і подається на вихід АЦП. Даний тип АЦП є найпростішим за структурою і містить мінімальне число елементів. Разом з тим прості АЦП цього типу володіють досить низькою точністю і чутливі до температури і інших зовнішніх параметрів. Для збільшення точності генератор пилоподібного сигналу може бути побудований на основі лічильника і допоміжного ЦАП, проте така структура не має жодних переваг в порівнянні з АЦП послідовного наближення і АЦП диференціального кодування.
АЦП з урівноваженням заряду (до них відносяться АЦП з двостадійною інтеграцією, АЦП з багатостадійною інтеграцією і деякі інші) містять генератор стабільного струму, компаратор, інтегратор струму, тактовий генератор і лічильник. Перетворення відбувається в два етапи (двостадійне інтегрування). На першому етапі значення вхідного сигналу перетвориться в струм, який подається на інтегратор струму (заряд інтегратора спочатку рівний нулю); цей процес триває протягом часу TN, де T — період тактового генератора, N — константа (велике ціле число, визначає час накопичення заряду). Коли накопичення заряду закінчене, вхід інтегратора відключається від входу АЦП і підключається до генератора стабільного струму. Полярність генератора така, що він зменшує заряд, накопичений в інтеграторі. Процес розряду триває до тих пір, поки заряд в інтеграторі не зменшиться до нуля. Час розряду вимірюється шляхом рахунку тактових імпульсів від моменту початку розряду до досягнення нульового заряду на інтеграторі. Порахована кількість тактових імпульсів і буде вихідним кодом АЦП. Можна показати, що кількість імпульсів n, пораховане за час розряду, дорівнює: n=UвхN(RI0)−1, де Uвх — вхідна напруга АЦП, N — число імпульсів, етапу накопичення (визначено вище), R — опір резистора, що перетворює вхідну напругу в струм, I0 — струм генератора стабільного струму. Таким чином, потенційно нестабільні параметри системи (перш за все, місткість конденсатора інтегратора) не входять в підсумковий вираз. Це є наслідком двостадійності процесу: похибки, введені на першому і другому етапах взаємно віднімаються. Не пред'являються жорсткі вимоги навіть до довготривалої стабільності тактового генератора і напрузі зсуву компаратора. Фактично, принцип двостадійної інтеграції дозволяє перетворити відношення двох аналогових величин (вхідного і зразкового струму) у відношення числових кодів (n і N в термінах, визначених вище) практично без внесення додаткових помилок. Типова розрядність АЦП цього типу складає від 10 до 18 двійкових розрядів. Додатковою гідністю є можливість побудови перетворювачів, нечутливих до періодичних перешкод (наприклад, перешкода від мережевого живлення) завдяки точній інтеграції вхідного сигналу за фіксований часовий інтервал. Недоліком даного типа АЦП є низька швидкість перетворення. АЦП з урівноваженням заряду використовуються у вимірювальних приладах високої точності.
Конвеєрні АЦП використовують два або більше кроків-піддіапазонів. На першому кроці проводиться грубе перетворення (з низькою розрядністю). Далі визначається різниця між вхідним сигналом і аналоговим сигналом, відповідним результату грубого перетворення (з допоміжного ЦАП, на який подається грубий код). На другому кроці знайдена різниця піддається перетворенню, і отриманий код об'єднується з грубим кодом для набуття повного вигідного цифрового значення. АЦП цього типу швидкі, мають високу розрядність і невеликий розмір корпусу.
Сигма-Дельта АЦП (звані також Дельта-Сигма АЦП) проводить аналого-цифрове перетворення з частотою дискретизації, що у багато разів перевищує потрібну і шляхом фільтрації залишає в сигналі тільки потрібну спектральну смугу.
Неелектронні АЦП зазвичай будуються на тих же принципах.
№2
Фізичний пристрій жорсткого диска
Чому ж його називають жорстким? Візьміть звичайну 3-х дюймову дискету. Якщо ви розкриє її корпус (бажано це проробляти над зіпсованою дискети не містить важливої інформації:), то ви побачите, що безпосередньо сам диск виконаний з гнучкого матеріалу. Може хто ще пам'ятає, що свого часу в ходу були 5-ти і 8-ми дюймові дискети. Корпус їх було виконано з нетривкого гнучкого матеріалу, на відміну від 3-х дюймових дискет, де корпус зроблений з пластику. Звідси і йде назва - "гнучкий диск". Жорсткий диск, як можна здогадатися виготовлений за зовсім іншу технологію. Основу його складає алюміній. Рідше використовується кераміка або скло, але диски на основі цього матеріалу досить дорогі і призначені для використання в дорогих моделях вінчестерів.
В перший моделях жорстких, як магнітного покриття використовувався матеріал на основі окису заліза. Зараз виробники використовують окис хрому, яка має велику зносостійкість.
Складається жорсткий диск з двох основних блоків. Перший - це механічний блок, що включає в себе безпосередньо самі диски, двигун обертання, блок магнітних головок і привод переміщення головок. Цей блок є герметичним і навіть з цікавості не рекомендується вивчати його пристрій на працюючому вінчестері:) В іншому випадку, ви втратите не тільки дані, але й сам пристрій. Другий блок - блок електроніки. Являє собою плату з напаяними елементами. На платі розташовані мікросхеми ОЗП (робоча пам'ять вінчестера), ПЗУ з керуючою програмою, DSP (цифровий сигнальний процесор) для обробки сигналів і основний керуючий процесор.
На мій погляд, сам термін "жорсткий диск" є кілька неправильним. Сьогодні тільки вінчестери з найменшим випускаються об'ємом відповідають цьому терміну. Справа в тому, що в вінчестерах з великим об'ємом використовуються декілька пластин об'єднаних в один блок. Приклад: Quantum Fireball 4,3 Gb LT - використовує один диск, а та сама модель, але обсягом 8,4 Gb вже два диски. Саме тому ви ніколи не зможете зустріти у цієї моделі обсяг у 5,1 чи 3,2 Gb. Звідси випливає, що чим більший об'єм вінчестера, тим більше кількість дисків там використовується.
Фактично все це виглядає наступним чином. Уявіть собі шпиндель на який на однаковій відстані один від одного насаджені диски. З кожного боку диска розташовані магнітні головки здійснюють читання і запис даних (запис інформації виконується на обидві сторони диска). Головки укріплені на спеціальних власниках, і переміщаються між центром і краєм диска. Під час роботи, голівки за рахунок своєї конструкції, "плавають" над поверхнею диска. При падінні швидкості обертання нижче норми або виключення живлення, процесор вінчестера відводить їх ближче до шпинделя, у так звану "паркувальну зону ", де головки лягають на поверхню диска. Запис інформації в цій зоні не проводиться. Попередня парковка необхідна для збереження головок і поверхні дисків, інакше при зіткненні головки з поверхнею диска на такій швидкості буде виведена з ладу робоча поверхня диска і сама головка.
Під час роботи вінчестера, швидкість обертання шпинделя дуже високою (в сучасних моделях це 5400, 7200 і 10000 об/хв), а відстань між поверхнею диска і головкою складає від одиниць до декількох часток мікрона. Тому блок дисків і робиться герметичним. При попаданні пилу між головкою і диском можливий збій в роботі, а найімовірніше і вихід з ладу вінчестера.
Логічна структура вінчестера така. Кожен диск ділитися на сектори і доріжки. Думаю, пояснювати що таке сектор не треба - згадайте хоча б геометрію:) А доріжки являють собою концентричні кола, уздовж яких розміщується інформація. Доріжки з однаковими номерами з двох сторін диска і в усьому пакеті дисків називаються циліндром. Ці три параметри необхідні для правильної установки вінчестера в BIOS'е комп'ютера. Зараз це особливої складності не викликає, тому що будь-який сучасний BIOS має функцію автодетектірованія параметрів вінчестера.
Також на диску існує так званий "інженерний циліндр". У ньому зберігається службова інформація (серійний номер, модель, в деяких моделях частина програми ПЗУ тощо). Раніше вінчестери виготовлялися "чистими", як і дискети. Тобто початкове форматування було покладено кінцевим споживача. Зараз ця операція проводиться безпосередньо на стадії виготовлення. Тому, якщо ви виявите в вашому BIOS або який-небудь утиліті пункт low level format HDD, ні в якому разі не користуйтеся їм! При форматуванні в заводських умовах, на диск записується спеціальна інформація (сервоінформація). Це спеціальні мітки, необхідні для пошуку секторів, відстеження положення головок і стабілізації частоти обертання диска. На сучасних вінчестерах ці мітки наносяться між секторами, а в більш ранніх моделях для них була призначена окрема поверхню пакету дисків. Сервоінформація є основою розмітки диску, при її псування контролер вінчестера не зможе відновити її самостійно!
Навіть при рівні сучасних технологій, будь-який новий вінчестер містить несправні блоки (bad block). Несправний блок (чи сектор) не дозволяє зчитувати з нього записану раніше інформацію. При початковій розмітці, виявлені дефектні блоки заносяться в спеціальну таблицю перепризначення. Далі контролер вінчестера, при роботі, підміняє їх на резервні, які спеціально залишаються для цих цілей.
Сама робота вінчестера, у загальних рисах виглядає наступним чином. При включенні живлення, процесор вінчестера спочатку тестує електроніку, після цього дає команду на включення двигуна шпинделя. Після досягнення критичної швидкості обертання, повітря захоплюємося поверхнями дисків змушує головки "спливати" над поверхнею диска. І весь час роботи вінчестера головки висять над поверхнею на повітряній подушці.
За досягненні швидкості обертання близькою до номінальної, головки виводяться з паркувальної зони і контролер вінчестера здійснює пошук сервометок, для стабілізації частоти обертання. Далі проводиться пошук різної службової інформації, наприклад таблиці перепризначення несправних ділянок. Останньою стадією ініціалізації жорсткого диска є перевірка позиціонування головок. Перевіряється це установкою головок на заздалегідь задану послідовність записів. Якщо все це так само проходять успішно, контролер видає сигнал готовності і переходить в режим нормальної роботи.
Характеристики ліній зв'язку. До основних характеристик ліній зв'язку відносяться:
- амплітудно-частотна характеристика;
- смуга пропускання;
- загасання;
- перешкодостійкість;
- перехресні наведення на ближньому кінці лінії;
- пропускна спроможність;
- достовірність передачі даних;
- питома вартість.
№3
В першу чергу розробника обчислювальної мережі цікавлять пропускна спроможність і достовірність передачі даних, оскільки ці характеристики прямо впливають на продуктивність і надійність створюваної мережі. Пропускна спроможність і достовірність - це характеристики як лінії зв'язку, так і способу передачі даних. Тому якщо спосіб передачі (протокол) вже визначений, то відомі і ці характеристики. Наприклад, пропускна спроможність цифрової лінії завжди відома, оскільки на ній визначений протокол фізичного рівня, який задає бітову швидкість передачі даних, - 64 Кбіт/с, 2 Мбіт/с і тому подібне
Проте не можна говорити про пропускну спроможність лінії зв'язку, до того як для неї визначений протокол фізичного рівня. Саме у таких випадках, коли тільки належить визначити, якою з безлічі існуючих протоколів можна використовувати на даній лінії, дуже важливими є решта характеристик лінії, такі як смуга пропускання, перехресні наведення, перешкодостійкість і інші характеристики.
Для визначення характеристик лінії зв'язку часто використовують аналіз її реакцій на деякі еталонні дії. Такий підхід дозволяє досить просто і однотипно визначати характеристики ліній зв'язку будь-якої природи, не удаючись до складних теоретичних досліджень. Найчастіше як еталонні сигнали для дослідження реакцій ліній зв'язку використовуються синусоїдальні сигнали різних частот. Це пов'язано з тим, що сигнали цього типу часто зустрічаються в техніці і з їх допомогою можна представити будь-яку функцію часу - як безперервний процес коливань звуку, так і прямокутні імпульси, що генеруються комп'ютером.
Ступінь спотворення синусоїдальних сигналів лініями зв'язку оцінюється за допомогою таких характеристик, як амплітудно-частотна характеристика, смуга пропускання і загасання на певній частоті.
Амплітудно-частотна характеристика (рис. 2) показує, як затухає амплітуда синусоїди на виході лінії зв'язку в порівнянні з амплітудою на її вході для всіх можливих частот передаваного сигналу. Замість амплітуди в цій характеристиці часто використовують також такий параметр сигналу, як його потужність.
Рисунок 2 - Амплітудно-частотна характеристика
знання амплітудно-частотної характеристики реальної лінії дозволяє визначити форму вихідного сигналу практично для будь-якого вхідного сигналу. Для цього необхідно знайти спектр вхідного сигналу, перетворити амплітуду складових його гармонік відповідно до амплітудно-частотної характеристики, а потім знайти форму вихідного сигналу, склавши перетворені гармоніки.
Смуга пропускання (bandwidth) - це безперервний діапазон частот, для якого відношення амплітуди вихідного сигналу до вхідного перевищує деяку заздалегідь задану межу, зазвичай 0,5. Тобто смуга пропускання визначає діапазон частот синусоїдального сигналу, при яких цей сигнал передається по лінії зв'язку без значних спотворень. Знання смуги пропускання дозволяє отримати з деякою мірою наближення той самий результат, що і знання амплітудно-частотної характеристики. Як ми побачимо нижче, ширина смуги пропускання найбільшою мірою впливає на максимально можливу швидкість передачі інформації по лінії зв'язку. Саме цей факт знайшов віддзеркалення в англійському еквіваленті даного терміну (width - ширина).
Загасання (attenuation) визначається як відносне зменшення амплітуди або потужності сигналу при передачі по лінії сигналу певної частоти. Таким чином, загасання є однією крапкою з амплітудно-частотної характеристики лінії. Часто при експлуатації лінії заздалегідь відома основна частота передаваного сигналу, тобто та частота, гармоніка якої має найбільшу амплітуду і потужність. Тому достатньо знати загасання на цій частоті, щоб приблизно оцінити спотворення передаваних по лінії сигналів. Точніші оцінки можливі при знанні загасання на декількох частотах, відповідних декільком основним гармонікам передаваного сигналу.
Загасання А зазвичай вимірюється в децибелах (дБ, decibel - dB) і обчислюється за наступною формулою:
,
де
-
потужність сигналу на виході лінії
-
потужність сигналу на вході лінії.
Оскільки потужність вихідного сигналу кабелю без проміжних підсилювачів завжди менша, ніж потужність вхідного сигналу, загасання кабелю завжди є негативною величиною.
Наприклад, кабель на витій парі категорії 5 характеризується загасанням не нижче -23,6 дБ для частоти 100 МГц при довжині кабелю 100 м. Частота 100 МГц вибрана тому, що кабель цієї категорії призначений для високошвидкісної передачі даних, сигнали яких мають значущі гармоніки з частотою приблизно 100 МГц. Кабель категорії 3 призначений для низькошвидкісної передачі даних, тому для нього визначається загасання на частоті 10 МГц (не нижче -11,5 дБ). Часто оперують з абсолютними значеннями загасання, без вказівки знаку.
Таким чином, амплітудно-частотна характеристика, смуга пропускання і загасання є універсальними характеристиками, і їх знання дозволяє зробити висновок про те, як через лінію зв'язку передаватимуться сигнали будь-якої форми.
Смуга пропускання залежить від типу лінії і її протяжності. На рисунку 3 показані смуги пропускання ліній зв'язку різних типів, а також найбільш часто використовувані в техніці зв'язки частотні діапазони.
Рисунок 3 - Смуги пропускання ліній зв'язку і популярні частотні діапазони
Діапазони часто використовувані різними каналами зв'язку показані на рисунку 4.
Рисунок 4 - Діапазони частот різних телекомунікаційних каналів
Пропускна спроможність лінії (throughput) характеризує максимально можливу швидкість передачі даних по лінії зв'язку. Пропускна спроможність вимірюється в бітах в секунду - бит/с, а також в похідних одиницях, таких як кілобіт в секунду (Кбіт/с), мегабіт в секунду (Мбіт/с), гигабит в секунду (Гбіт/с) і так далі.
Пропускна спроможність лінії зв'язку залежить не тільки від її характеристик, таких як амплітудно-частотна характеристика, але і від спектру пересланих сигналів. Якщо значущі гармоніки сигналу (тобто ті гармоніки, амплітуди яких вносять основний внесок до результуючого сигналу) потрапляють в смугу пропускання лінії, то такий сигнал добре передаватиметься даною лінією зв'язки і приймач зможе правильно розпізнати інформацію, відправлену по лінії передавачем. Якщо ж значущі гармоніки виходять за межі смуги пропускання лінії зв'язку, то сигнал значно спотворюватиметься, приймач помилятиметься при розпізнаванні інформації, а значить, інформація не зможе передаватися із заданою пропускною спроможністю.
Вибір способу представлення дискретної інформації у вигляді сигналів, що подаються на лінію зв'язку, називається фізичним або лінійним кодуванням. Від вибраного способу кодування залежить спектр сигналів і, відповідно, пропускна спроможність лінії. Таким чином, для одного способу кодування лінія може володіти однією пропускною спроможністю, а для іншого - іншою. Наприклад, вита пара категорії 3 може передавати дані з пропускною спроможністю 10 Мбіт/с при способі кодування стандарту фізичного рівня 10Base-T і 33 Мбіт/с при способі кодування стандарту 100Base-T4.
Зв'язок між смугою пропускання лінії і її максимально можливою пропускною спроможністю, незалежно від прийнятого способу фізичного кодування, встановив Клод Шеннон:
,
де
-
максимальна пропускна спроможність
лінії в бітах в секунду
-
ширина смуги пропускання лінії в герцах
-
потужність сигналу
-
потужність шуму.
З цього співвідношення видно, що хоча теоретичної межі пропускної спроможності лінії з фіксованою смугою пропускання не існує, на практиці така межа є. Дійсно, підвищити пропускну спроможність лінії можна за рахунок збільшення потужності передавача або ж зменшення потужності шуму (перешкод) на лінії зв'язку. Обидві складові піддаються зміні насилу. Підвищення потужності передавача веде до значного збільшення його габаритів і вартості. Зниження рівня шуму вимагає застосування спеціальних кабелів з хорошими захисними екранами, що вельми дорого, а також зниження шуму в передавачі і проміжній апаратурі, чого досягти вельми не просто. До того ж вплив потужностей корисного сигналу і шуму на пропускну спроможність обмежений логарифмічною залежністю, яка росте далеко не так швидко, як прямо-пропорційна. Так, при достатньо типовому початковому відношенні потужності сигналу до потужності шуму в 100 разів підвищення потужності передавача в 2 рази дасть тільки 15 % збільшення пропускної спроможності лінії.
Близьким по суті до формули Шенона є наступне співвідношення, отримане Найквістом, яке також визначає максимально можливу пропускну спроможність лінії зв'язку, але без урахування шуму на лінії:
,
де
-
кількість помітних станів інформаційного
параметра.
Якщо сигнал має 2 помітних стани, то пропускна спроможність дорівнює подвоєному значенню ширини смуги пропускання лінії зв'язку (рис. 5, а). Якщо ж передавач використовує більш ніж 2 стійких стани сигналу для кодування даних, то пропускна спроможність лінії підвищується, оскільки за один такт роботи передавач передає декілька біт початкових даних, наприклад 2 бита за наявності чотирьох помітних станів сигналу (рис. 5, б).
Хоча формула Найквіста явно не враховує наявність шуму, побічно її вплив відбивається у виборі кількості станів інформаційного сигналу. Для підвищення пропускної спроможності каналу хотілося б збільшити цю кількість до значних величин, але на практиці ми не можемо цього зробити із-за шуму на лінії. Наприклад, для прикладу, приведеного на рис. 5, можна збільшити пропускну спроможність лінії в два рази, використавши для кодування даних не 4, а 16 рівнів. Проте якщо амплітуда шуму часто перевищує різницю між сусідніми 16-ю рівнями, то приймач не зможе стійко розпізнавати передавані дані. Тому кількість можливих станів сигналу фактично обмежується співвідношенням потужності сигналу і шуму, а формула Найквіста визначає граничну швидкість передачі даних у тому випадку, коли кількість станів вже вибрана з урахуванням можливостей стійкого розпізнавання приймачем.
Рисунок 5 - Підвищення швидкості передачі за рахунок додаткових станів сигналу
Приведені співвідношення дають граничне значення пропускної спроможності лінії, а ступінь наближення до цієї межі залежить від конкретних методів фізичного кодування.
Перешкодостійкість лінії визначає її здатність зменшувати рівень перешкод, що створюються в зовнішньому середовищі, на внутрішніх провідниках. Перешкодостійкість лінії залежить від типу використовуваного фізичного середовища, а також від екрануючих і пригнічуючих перешкоди засобів самої лінії. Найменш перешкодостійкими є радіолінії, хорошою стійкістю володіють кабельні лінії і відмінною - волоконно-оптичні лінії, малочутливі до зовнішнього електромагнітного випромінювання. Зазвичай для зменшення перешкод, що з'являються із-за зовнішніх електромагнітних полів, провідники екранують і/або скручують.
Перехресні наведення
на ближньому кінці (Near End Cross Talk - NEXT)
визначають перешкодостійкість кабелю
до внутрішніх джерел перешкод, коли
електромагнітне поле сигналу, передаваного
виходом передавача по одній парі
провідників, наводить на іншу пару
провідників сигнал перешкоди. Якщо до
другої пари буде підключений приймач,
то він може прийняти наведену внутрішню
перешкоду за корисний сигнал. Показник
NEXT, виражений в децибелах, рівний
де
-
потужність вихідного сигналу
-
потужність наведеного сигналу.
Чим менше значення NEXT, тим краще кабель. Так, для витої пари категорії 5 показник NEXT повинен бути менше -27 дБ на частоті 100 МГц.
Показник NEXT зазвичай використовується стосовно кабелю, що складається з декількох витих пар, оскільки в цьому випадку взаємні наведення однієї пари на іншу можуть досягати значних величин. Для одинарного коаксіального кабелю (тобто що складається з однієї екранованої жили) цей показник не має сенсу, а для подвійного коаксіального кабелю він також не застосовується унаслідок високого ступеня захищеності кожної жили. Оптичні волокна також не створюють скільки-небудь помітних перешкод один для одного.
Достовірність
передачі даних характеризує вірогідність
спотворення для кожного передаваного
біта даних. Іноді цей же показник
називають інтенсивністю бітових помилок
(Bit Error Rate, BER). Величина BER для каналів
зв'язку без додаткових засобів захисту
від помилок (наприклад, код, що
самокорректирующихся, або протоколів
з повторною передачею спотворених
кадрів) складає, як правило
-
у
оптоволоконних лініях зв'язку -
.
Значення достовірності передачі даних,
наприклад, в
говорить
про те, що в середньому з 10 000 біт
спотворюється значення одного біта.
Спотворення біт відбуваються як із-за наявності перешкод на лінії, так і унаслідок спотворень форми сигналу обмеженою смугою пропускання лінії. Тому для підвищення достовірності передаваних даних потрібно підвищувати ступінь перешкодозахисної лінії, знижувати рівень перехресних наведень в кабелі, а також використовувати більш широкосмугові лінії зв'язку.
БІЛЕТ № 16
№1
Практично кожен мікропроцесорний пристрій (МПП) містить елементи індикації. Як індикатори в даний час найчастіше застосовуються світлодіоди. На ринку є величезний вибір світлодіодів, найрізноманітніших видів і розмірів.
У МПП світлові індикатори можуть служити для відображення 20
різних режимів роботи: попередження про критичні ситуації, відображення ходу прийому керуючих сигналів тощо. Підключити одиночний світлодіодний індикатор до МК дуже просто. На рисунку 1.14 приведена схема підключення світлодіода безпосередньо до виводу порту МК.
Усі вихідні каскади МК мають достатню навантажувальну здатність для того, щоб витримати підключення одного світлодіодного індикатора із споживаним струмом у робочому режимі не більше 20 мА.
Для управління двома світлодіодами одним виходом у МК передбачено активні вихідні каскади, і для перемикання режиму роботи (введення або виведення) служить спеціальний регістр. Таким чином, сигнал кожного виходу будь-якого порту може мати 3 значення - «0», «1» і високоімпедансний («Z») стан. Це дозволяє керувати двома світлодіодами за допомогою одного виводу (рисунок 1.15).
При роботі порту в режимі виходу, залежно від стану «0» або «1» горить відповідно верхній або нижній світлодіод. При перемиканні в Z-стан, і при відповідному виборі резисторів струм через світлодіоди дуже малий і їх світіння майже непомітно.
Цікавим є включення трьох пар зустрічно-паралельних світлодіодів за схемою «зірка» (рисунок 1.16).
Відповідними сигналами МК можна домогтись світіння будь-якого з шести світлодіодів, а також їх комбінацій. Використовуючи динамічну індикацію, можна отримати будь-які комбінації.
№2
Цифровою клавіатурою називається сукупність близько розташованих клавіш з цифрами, які призначенні для вводу чисел. Існує два різних варіанта розташування цифр на таких клавіатурах.
В телефонах використовується клавіатура, в якій числові дані зростають зліва направо і зверху вниз. Аналогічний тип клавіатури використовуються в домофонах та інших засобах аудіозв'язку, а також на пультах дистанційного керування.
В калькуляторах використовується клавіатура, в якій числові значення клавіш зростають зліва направо і знизу вгору. Більшість комп'ютерних клавіатур мають блок клавіш, в який входить клавіатура калькуляторного типу.В калькуляторах використовується клавіатура, в якій числові значення клавіш зростають зліва направо і знизу вгору. Більшість комп'ютерних клавіатур мають блок клавіш, в який входить клавіатура калькуляторного типу.
Цифрова клавіатура призначена для введення великої кількості числової інформації. На цій клавіатурі є все для введення цілих чисел і десяткових дробів, а також знаків арифметичних дій.
Сірі клавіші: Enter, +(додавання), - (віднімання), * (множення), / (ділення) клавішею Num Lock не перемикаються.
Значення ж білих клавіш залежить від положення клавіші і відповідної лампочки Num Lock.
При натисканні на клавішу Num Lock числова клавіатура вмикається, при повторному натисканні – вимикається .
Коли клавіша Num Lock ввімкнута і світиться лампочка “Num Lock”, додаткова клавіатура працює як числова.
№3
В обчислювальній техніці під перериванням розуміють подію, при якій міняється нормальна послідовність виконання команд, що визначена програмою. Переривання, є механізмом, що дозволяє координувати паралельне функціонування окремих пристроїв комп’ютерної системи та реагувати на особливі стани, що виникають при роботі процесора. Тобто, переривання, це примусова передача керування від програми, що виконується, до ОС, а через неї до відповідної програми обробки переривань. Ця передача відбувається при виникненні певної події.
Механізм переривань реалізується апаратно програмним забезпеченням. Структура систем переривань може бути різноманітною (в залежності від архітектури апаратного забезпечення), але всі вони реалізують одну ідею – переривається звичайний порядок виконання команд процесором.
Перехід від перерваної програми до обробника переривань повинен виконуватися якомога швидше. Одним з методів, що реалізуються цей механізм переходу, є організація таблиць, що містять всі допустимі в системі переривання та адреси їх обробників.
Для коректного повернення з переривання до перерваної програми перед передачею керування обробнику система запам’ятовує вміст регістрів процесора або у пам’яті з прямим доступом, або у системному стеку. (system stack).
Таким чином, якщо відбулося переривання:
1. Керування передається ОС;
2. ОС запам’ятовує стан перерваного процесу, як правило, ця інформація запам’ятовується в його блоці керування процесом (PCB);
3. ОС аналізує тип переривання та передає керування відповідному обробнику.
Переривання, що виникають при роботі обчислювальної системи, можна поділити на такі основні групи:
1. Зовнішні (або асинхронні). Викликаються асинхронними подіями, які відбуваються поза процесом, що виконується і відповідно переривається:
- переривання від таймера;
- переривання від зовнішніх пристроїв;
- переривання при збоях у живлення;
- переривання з пульта оператора обчислювальної системи;
- переривання від іншого процесора або обчислювальної системи.
2. Внутрішні. Викликаються подіями, що пов’язані з роботою процесу, що виконується і є синхронними з його операціями. Такі переривання виникають:
- при неправильній адресації (в адресній частині команди вказано заборонену або неіснуючу адресу, звертання до відсутнього сегменту або сторінки віртуальної пам’яті);
- при наявності в полі коду операції, неіснуючої команди;
- при діленні на нуль;
- при переповненні, або пропаданні порядку в числах з плаваючою крапкою;
- при виявленні порушення паритету парності, а також помилок в роботі різних пристроїв апаратури комп’ютера засобами контролю;
- переривання за звертаннями до супервізора. У деяких комп’ютерах існують привілейовані команди, які може виконувати тільки ОС, а не програми користувачів. Відповідно в апаратурі передбачено різні режими роботи. При спробі виконати таку команду заборонену в даному режимі, відбувається внутрішнє переривання і керування передається супервізору ОС.
3. Програмні переривання. Викликаються відповідними командами переривання. За такими командами процесор виконує практично такі самі дії, що й при внутрішній перериваннях.
За рінями пріоритету переривання розподіляються наступним чином:
Оскільки переривання виникають у довільні моменти часу та при їх виникненні вже можуть існувати декілька сигналів переривань, що повинні оброблятися тільки послідовно, то щоби обробити їх в деякому логічному порядку перериванням присвоюють пріоритети. Переривання з більш високим пріоритетом обробляється позачергово, обробка інших переривань відкладається. Отже переривання з високим пріоритетом може перевати обробку переривання з нижчим пріоритетом.
Перемикання контексту. Для обробки кожного з видів переривань в складі ОС передбачені програми, що називаються обробниками переривань (IH – Interrupt Handler). Коли відбувається переривання, ОС запам’ятовує стан перерваних процесів та передає керування відповідним обробникам переривань. Ця процедура називається перемиканням контексту. При її реалізації використовуються слова стану програми (Program Status Word, PSW), які керують напрямком виконання команд і містять різну інформацію про відносно стану процесу.
Існує три типи PSW: біжуче, нове та старе.
Адреса наступної команди, що має виконуватися, міститься в біжучому PSW, у ньому вказані також типи переривань, що дозволені заборонені на даний час.
CPU реагує на дозволені переривання. Обробка заборонених переривань або відкладається, або ігнорується. Процесору не можна заборонити реагувати на переривання супервізора, з рестарту та на деякі види програмних переривань.
В одно процесорній машині є тільки одне біжуче PSW, але N нових та N старих (по одному на кожен тип переривань).
Нове PSW для переривання біжучого типу містить постійну адресу, за якою резидентно міститься обробник переривань цього типу. Коли відбувається переривання і якщо процесору не заборонено обробляти переривання цього типу, відбувається автоматичне (виконується апаратурою) перемикання PSW за схемою:
1) Біжуче PSW стає старим PSW для переривань цього типу;
2) Нове PSW для переривань цього типу стає біжучим PSW.
Коли обробку переривання завершено, ЦП починає обслуговувати або той процес, який виконувався в момент переривання, або готовий процес з найвищим пріоритетом. Це залежить від того, чи дозволяє перерваний процес перехоплення ЦП, чи ні. Якщо ні, то перерваний процес знову отримує у своє розпорядження ЦП. Якщо дозволяє, то він отримає доступ до ЦП тільки у випадку, якщо нема інших процесів готових до виконання.
Механізм обробки переривань незалежно від архітектури обчислювальної системи включає наступні елементи:
1 Встановлення факту переривання (прийом сигналу на переривання) і ідентифікація переривання (в ОС іноді здійснюється повторно, на кроці 4).
2. Запам'ятовування стану перерваного процесу. Стан процесу визначається насамперед значенням лічильника команд (адресою наступної команди, що, наприклад, у і80х86 визначається регістрами CS і IР - покажчиком команди), вмістом регістрів процесора і може включати також специфікацію режиму (наприклад, режим користувацький чи привілейований) і іншу інформацію.
3. Керування апаратно передається підпрограмі обробки переривання. У найпростішому випадку в лічильник команд заноситься початкова адреса підпрограми обробки переривань, а у відповідні регістри - інформація зі слова стану. У більш розвитих процесорах, наприклад у тім же і80286 і наступних 32-бітових мікропроцесорах, починаючи з і80386, здійснюється досить складна процедура визначення початкової адреси відповідної підпрограми обробки переривання і не менш складна процедура ініціалізації робочих регістрів процесора.
4. Збереження інформації про перервану програму, що не вдалося врятувати на кроці 2 за допомогою дій апаратури. У деяких обчислювальних системах передбачається запам'ятовування великого обсягу інформації про стан перерваного процесу.
5. Обробка переривання. Ця робота може бути виконана тією же підпрограмою, які було передане керування на кроці 3, але в ОС найчастіше вона реалізується шляхом наступного виклику відповідної підпрограми.
6. Відновлення інформації, що відноситься до перерваного процесу (етап, зворотний кроку 4).
БІЛЕТ № 17
№1
Кожний з 8 портів 10Base-T обслуговується одним процесором пакетів Ethernet - ЕРР (Ethernet Packet Processor). Крім того, комутатор має системний модуль, що координує роботу всіх процесорів ЕРР. Системний модуль веде загальну адресну таблицю комутатора й забезпечує керування комутатором по протоколі SNMP. Для передачі кадрів між портами використається комутаційна матриця, подібна тим, які працюють у телефонних комутаторах або мультипроцесорних комп'ютерах, з'єднуючи кілька процесорів з декількома модулями пам'яті.
Комутаційна матриця працює за принципом комутації каналів. Для 8 портів матриця може забезпечити 8 одночасних внутрішніх каналів при напівдуплексному режимі роботи портів й 16 - при повнодуплексному, коли передавач і приймач кожного порту працюють незалежно друг від друга.
При надходженні кадру в який-небудь порт процесор ЕРР буферизує декілька перших байт кадру, щоб прочитати адресу призначення. Після одержання адреси призначення процесор відразу ж ухвалює рішення щодо передачі пакета, не чекаючи приходу інших байт кадру. Для цього він переглядає свій власний кеш адресної таблиці, а якщо не знаходить там потрібної адреси, звертається до системного модуля, що працює в багатозадачному режимі, паралельно обслуговуючи запити всіх процесорів ЕРР. Системний модуль робить перегляд загальної адресної таблиці й повертає процесору знайдений рядок, що той буферизує у своєму кеші для наступного використання.
Після знаходження адреси призначення процесор ЕРР знає, що потрібно далі робити із приходящим кадром (під час перегляду адресної таблиці процесор продовжує буферизацію приходящих у порт байтів кадру). Якщо кадр потрібно відфільтрувати, процесор просто припиняє записувати в буфер байти кадру, очищає буфер і чекає надходження нового кадру.
Якщо ж кадр потрібно передати на інший порт, то процесор звертається до комутаційної матриці й намагається встановити в ній шлях, що зв'язує його порт із портом, через який іде маршрут до адреси призначення. Комутаційна матриця може це зробити тільки в тому випадку, коли порт адреси призначення в цей момент вільний, тобто не з'єднаний з іншим портом.
Якщо ж порт зайнятий, те, як й у будь-якому пристрої з комутацією каналів, матриця в з'єднанні відмовляє. У цьому випадку кадр повністю буферизується процесором вхідного порту, після чого процесор очікує звільнення вихідного порту й утворення комутаційною матрицею потрібного шляху.
Після того як потрібний шлях установлений, в нього направляються буферизовані байти кадру, які приймаються процесором вихідного порту. Як тільки процесор вихідного порту одержує доступ до підключеного до нього сегменту Ethernet по алгоритму CSMA/CD, байти кадру відразу ж починають передаватися в мережу. Процесор вхідного порту постійно зберігає трохи байт прийнятого кадру у своєму буфері, що дозволяє йому незалежно й асинхронно приймати й передавати байти кадру (мал. 4.24).
Після того як технологія комутації привернула загальну увагу й отримала високі оцінки фахівців, багато компаній зайнялися реалізацією цієї технології у своїх пристроях, застосовуючи для цього різні технічні рішення. Багато комутаторів першого покоління були схожі на маршрутизатори, тобто ґрунтувалися на центральному процесорі загального призначення, пов'язаному з інтерфейсними портами по внутрішній швидкісній шині. Однак це було скоріше пробні пристрої, призначені для освоєння самою компанією технології комутації, а не для завоювання ринку. Основним недоліком таких комутаторів була їхня низька швидкість. Універсальний процесор ніяк не міг впоратися з великим обсягом спеціалізованих операцій по пересиланню кадрів між інтерфейсними модулями.
Для прискорення операцій комутації потрібні були спеціалізовані процесори з спеціалізованими засобами обміну даними, як у першому комутаторі Kalpana, і вони незабаром з'явилися. Сьогодні всі комутатори використовують замовлені спеціалізовані ВІСА - ASIC, які оптимізовані для виконання основних операцій комутації. Часто в одному комутаторі використовується декілька спеціалізованих ВІСА, кожна з яких виконує функціонально закінчену частину операцій. Порівняно низька вартість сучасних комутаторів у порівнянні з їхніми попередниками 3-5-літньої давнини порозумівається масовим характером виробництва основних ВІС, на яких кожна компанія будує свої комутатори.
Крім процесорних мікросхем для успішної роботи, що не блокує, комутатору потрібно також мати швидкодіючий вузол для передачі кадрів між процесорними мікросхемами портів.
Сьогодні комутатори використовують в якості базової одну із трьох схем, на якій будується такий вузол обміну:
комутаційна матриця;
поділювана багатовхідна пам'ять;
загальна шина.
Часто ці три способи взаємодії комбінуються в одному комутаторі.
№2
Практично жодна мікропроцесорна система (МПС) не може обійтися без таких елементів, як виконавчі пристрої. Головне призначення будь-якої системи – це управління яким-небудь зовнішнім механізмом. Це можуть бути електродвигуни, нагрівачі, електромагнітні клапани і т.п. Тому, окрім датчиків, кнопок управління і елементів індикації до мікроконтролера (МК) обов'язково доведеться підключати і виконавчі пристрої. Для управління зовнішніми пристроями використовуються ті ж самі порти введення/виведення МК, які працюють на виведення. Сигнали з будь- якої лінії будь-якого порту легко можуть бути використані для включення і виключення зовнішнього пристрою. Необхідно лише підсилити керуючий сигнал за потужністю до необхідного рівня. Для цього застосовуються різні схеми узгодження. Вибір схеми залежить від типу виконавчого пристрою.
У найпростішому випадку можна застосувати транзисторний ключ (рисунок 1.1). При використанні транзистора КТ315Г можна керувати зовнішніми колами із струмом споживання до 100 мА і напругою UЖ до 15 В [5,6]. Транзистор допускає також високу напругу, проте підвищення напруги можливе при зменшенні струму.
Гальванічна розв'язка між всіма колами МПС і силовою мережею 220 В забезпечує безпеку роботи з цією схемою. Діод VD1 призначений для захисту елементів схеми від напруги ЕРС самоіндукції, що виникає в котушці реле К1 у момент закривання ключа VT1. При виборі електромагнітного реле необхідно звертати увагу на такі параметри. По-перше, напруга спрацьовування реле. Для прикладу на рисунку 1.2 вона має бути рівна 12 В. По-друге, максимально допустимий струм комутації і максимально допустима напруга для виконавчих контактів реле. Вони повинні відповідати реальним значенням струму і напруги в колі навантаження.
У випадку, якщо необхідно керувати великим числом реле, або інших потужних навантажень, зручно застосовувати мікросхеми ULN2003 або ULN2803 [1,12]. Ці мікросхеми містять відповідно, 7 і 8 транзисторних ключів на складених транзисторах (схема Дарлінгтона). Вони дозволяють керувати навантаженням до 500 мА при напрузі до 50 В. При цьому входи цих мікросхем можна підключати безпосередньо до ліній портів введення/виведення МК.
№3
Операційна система — це програмний комплекс, що забезпечує керування апаратними засобами комп'ютера, а також надає середовище для виконання прикладних програм. ОС приховує від користувача складні подробиці роботи апаратного і програмного забезпечення. Це надає користувачу більше часу для творчої діяльності. Щоб розпочати роботу з будь-якою прикладною програмою, її необхідно запустити на виконання, тобто вказати процесору, що ця програма має бути виконана. Але як це зробити? Адже користувач не може спілкуватися з процесором безпосередньо. Людина не знає мови машинних команд, а процесор «не розуміє» людської мови. Отже, між користувачем та процесором має існувати посередник-перекладач. Він необхідний і тоді. коли ви хочете переписати дані з диска на диск, переслати їх мережею тощо. Роль такого посередника відіграє операційна система.
З іншого боку, коли прикладні програми взаємодіють з пристроями. їм потрібен посередник-командувач. Ним також є операційна система. Жодна прикладна програма не зможе записати дані на жорсткий диск або зчитати їх «в обхід» функцій, що надаються для цього операційній системі; спроби зробити це більшість ОС заблокує.
Найбільш популярні три сімейства операційних систем: Windows (випускається корпорацією Microsoft) і UNIX для IBM-сумісних комп’ютерів та MacOS (поставляється фірмою Apple) для комп’ютерів Makintosh. ОС сімейства UNIX розробляються різноманітними виробниками; серед них є і безкоштовні; одна з найвідоміших – Linux. Найбільшими недоліками систем UNIX є складність установки та налаштування і, порівняно з Windows, мала кількість програмного забезпечення.
Основні функції операційної системи:
створення середовища, в якому виконуються та взаємодіють прикладні програми;
розподіл апаратних ресурсів комп'ютера між прикладними програмами;
надання прикладним програмам засобів для ефективного використання пристроїв та виконання типових операцій з введення-виведення даних;
організація зберігання даних на запам'ятовуючих пристроях;
надання інтерфейсу, за допомогою якого користувачі керуватимуть ви конанням прикладних програм та вмістом запам'ятовуючих пристроїв;
забезпечення взаємодії комп'ютерів у мережах.
Основними складовими операційної системи є:
базова система введення/виведення – BIOS – незалежний від конкретної версії операційної системи набір базових команд, які використовуються для забезпечення обміну даними між пристроями;
ядро операційної системи – центральна частина операційної системи, що керує процесом виконання програм та їх доступом до ресурсів комп'ютера;
файлова система – структура збереження даних на зовнішніх носіях і сукупність програм, які забезпечують роботу з цією структурою. Як правило, операційна система може працювати з кількома файловими системами;
драйвери (від англ. driver – водій) – програми, які керують роботою периферійних пристроїв комп’ютера;
інтерфейс користувача — сукупність засобів, які забезпечують обмін даними між користувачем і ОС.
Інтерфейс користувача операційної системи може як входити до складу ОС, так і створюватися службовими програмами — операційними оболонками і файловими менеджерами.
В однозадачних ОС (наприклад, MS DOS) у кожен момент часу може виконуватися лише одна програма, у багатозадачних (наприклад, Windows XP Professional) — кілька.
Протягом останніх 15 років розрядність процесора типового комп'ютера збільшилася з 16 до 64. Проте потужності сучасних процесорів не можуть бути використані програмами автоматично, адже розроблена для 16-роз-рядного процесора програма одночасно обробляє лише 16 розрядів даних, навіть якщо вона виконується на 32- або 64-розрядному процесорі. Тому для повного використання можливостей потужних процесорів програмне забезпечення, зокрема й ОС, має розроблятися з урахуванням їхніх особливостей. Отже, розрядність операційної системи — це розрядність процесорів, на роботу з якими розраховане її ядро.
Залежно від способу організації обміну даними між користувачем і комп’ютером розрізняють операційні системи з текстовим (командним) і графічним інтерфейсом (англ. interface – засоби узгодження).
В ОС з текстовим інтерфейсом обмін даними між користувачем і комп’ютером реалізується з використанням команд, які користувач уводить із клавіатури у вигляді тексту. До операційних систем з текстовим інтерфейсом відносяться MS DOS та окремі версії Unix і Linux, які не мають інтегрованих графічних оболонок.
В ОС з графічним інтерфейсом обмін даними між користувачем і комп’ютером реалізується з використанням маніпулятора або клавіатури. Цей вид інтерфейсу значно спрощує взаємодію користувача і комп’ютера. В основу цього виду інтерфейсу покладена ідеологія WIMP (англ. Windows, Icons, Menus, Pointer – вікна, значки або піктограми, меню, вказівник). Її суть полягає в тому, що користувач працює з моделями об’єктів операційної системи – значками, які відображаються у вікнах на екрані. Дії над об’єктами здійснюються командами меню, які вибираються вказівником. Це робить «спілкування» з комп’ютером простим і зручним. До операційних систем з графічним інтерфейсом належать операційні системи Windows, MacOS та ін.
Залежно від можливостей організації роботи комп’ютерної мережі та керування її ресурсами виділяють серверні операційні системи, наприклад Unix, Linux, Windows 2003 Server, Windows 2008 Server, Solaris, та операційні системи, що призначені для забезпечення потреб індивідуальних користувачів, наприклад MS DOS, Windows 98, Windows XP Home Edition та ін. Деякі серверні операційні системи (наприклад, Unix, Linux) можуть використовуватися і в персональних комп’ютерах.
Властивості ОС Windows
графічний інтерфейс;
багатозадачна;
розрядність — 32 або 64 біти;
підтримка режиму Plug and Play (англ. plug and play — приєднуй і працюй) — автоматичного розпізнавання додаткових пристроїв, що підключаються до комп’ютера;
наявність розвинених засобів міжкомп’ютерного обміну даними;
можливість установити індивідуальні значення параметрів роботи операційної системи для кожного користувача.
БІЛЕТ № 18
№1
Среда передачи данных - совокупность линий передачи данных и блоков взаимодействия (т.е. сетевого оборудования, не входящего в станции данных), предназначенных для передачи данных между станциями данных. Среды передачи данных могут быть общего пользования или выделенными для конкретного пользователя.
Линия передачи данных - средства, которые используются в информационных сетях для распространения сигналов в нужном направлении. Примерами линий передачи данных являются коаксиальный кабель, витая пара проводов, световод.
Характеристиками линий передачи данных являются зависимости затухания сигнала от частоты и расстояния. Затухание принято оценивать в децибеллах, 1 дБ = 10*lg(P1/P2), где Р1 и Р2 - мощности сигнала на входе и выходе линии соответственно.
При заданной длине можно говорить о полосе пропускания (полосе частот) линии. Полоса пропускания связана со скоростью передачи информации. Различают бодовую (модуляционную) и информационную скорости. Бодовая скорость измеряется в бодах, т.е. числом изменений дискретного сигнала в единицу времени, а информационная - числом битов информации, переданных в единицу времени. Именно бодовая скорость определяется полосой пропускания линии.
Если на бодовом интервале (между соседними изменениями сигнала) передается N бит, то число градаций модулируемого параметра несущей равно 2N. Например, при числе градаций 16 и скорости 1200 бод одному боду соответствует 4 бит/с и информационная скорость составит 4800 бит/с.
Максимально возможная информационная скорость V связана с полосой пропускания F канала связи формулой Хартли-Шеннона (предполагается, что одно изменение величины сигнала приходится на log2k бит, где k - число возможных дискретных значений сигнала)
V = 2*F*log2k бит/с,
так как V = log2k/t, где t - длительность переходных процессов, приблизительно равная 3*ТВ, а ТВ = 1/(2*p *F), Здесь k ? 1+A, A - отношение сигнал/помеха.
Канал (канал связи) - средства односторонней передачи данных. Примером канала может быть полоса частот, выделенная одному передатчику при радиосвязи. В некоторой линии можно образовать несколько каналов связи, по каждому из которых передается своя информация. При этом говорят, что линия разделяется между несколькими каналами. Существуют два метода разделения линии передачи данных: временное мультиплексирование (иначе разделение по времени или TDM), при котором каждому каналу выделяется некоторый квант времени, и частотное разделение (FDM - Frequency Division Method), при котором каналу выделяется некоторая полоса частот.
Канал передачи данных - средства двустороннего обмена данными, включающие АКД и линию передачи данных. По природе физической среды передачи данных (ПД) различают каналы передачи данных на оптических линиях связи, проводных (медных) линиях связи и беспроводные. В свою очередь, медные каналы могут быть представлены коаксиальными кабелями и витыми парами, а беспроводные - радио- и инфракрасными каналами.
В зависимости от способа представления информации электрическими сигналами различают аналоговые и цифровые каналы передачи данных. В аналоговых каналах для согласования параметров среды и сигналов применяют амплитудную, частотную, фазовую и квадратурно-амплитудную модуляции. В цифровых каналах для передачи данных используют самосинхронизирующиеся коды, а для передачи аналоговых сигналов - кодово-импульсную модуляцию.
Первые сети ПД были аналоговыми, поскольку использовали распространенные телефонные технологии. Но в дальнейшем устойчиво растет доля цифровых коммуникаций (это каналы типа Е1/Т1, ISDN, сети Frame Relay, выделенные цифровые линии и др.)
В зависимости от направления передачи различают каналы симплексные (односторонняя передача), дуплексные (возможность одновременной передачи в обоих направлениях) и полудуплексные (возможность попеременной передачи в двух направлениях).
В зависимости от числа каналов связи в аппаратуре ПД различают одно- и многоканальные средства ПД. В локальных вычислительных сетях и в цифровых каналах передачи данных обычно используют временное мультиплексирование, в аналоговых каналах - частотное разделение.
Если канал ПД монопольно используется одной организацией, то такой канал называют выделенным, в противном случае канал является разделяемым или виртуальным (общего пользования).
К передаче информации имеют прямое отношение телефонные сети, вычислительные сети передачи данных, спутниковые системы связи, системы сотовой радиосвязи.
№2
Процеси і потоки
Розрізняють два способи реалізації багатозадачності:
створити один процес, що має декілька потоків виконання (threads);
створити декілька процесів, кожен з яких має один або декілька потоків виконання.
Багатозадачна (multi-process) система дозволяє двом або більш програмам виконуватися одночасно. Багатопотокова (multi-threaded) система дозволяє одній програмі виконувати відразу декілька потоків одночасно. Сучасні операційні системи поєднують в собі обоє ці властивості. Додаток Win32 може складатися з одного або більш за процеси. Наприклад, додаток за розрахунком параметрів турбогенератора може складатися із зручної оболонки, написаної на мові C++ (головний процес), і обчислювальних модулів, що написаних на мові FORTRAN і запускаються у вигляді окремих (породжених) процесів. При цьому можливий варіант, коли один процес (модуль програми) зайнятий виведенням геометрії розрахункової області, а інший одночасно виробляє розрахунок електромагнітного поля.
Процес - це поняття, що відноситься до операційної системи. Кожного разу, як ви запускаєте додаток, система створює і запускає новий процес. Процес можна грубо ототожнити з ехе-кодом, що виконується в окремому процесорі. З кожним процесом система пов'язує такі ресурси, як:
віртуальний адресний простір;
здійснимий код і дані;
базовий пріоритет;
описувачі об'єктів;
змінні оточення.
Windows NT/2000 відводить для кожного процесу віртуальний адресний простір в 4 Гбайт, захищений від інших процесів, які виконуються в системі в той же самий час.
Кожен процес обов'язково створює первинний потік (primary thread) виконання. Він робить це автоматично і, якщо програміст не робить яких-небудь спеціальних зусиль по створенню другого потоку, то первинний потік і породжувач його процес зазвичай ототожнюються в свідомості користувача, а, часто і в свідомості програміста. Але останній може створити ще один або декілька потоків, які розміщуються в одному і тому ж адресному просторі, що належить процесу. Коли вони створюються, батьківський процес починає виконуватися не послідовно, а паралельно. Так реалізується потокова багатозадачність. Говорять, що потоки виконуються в контексті процесу.
Потік (thread) - це основний елемент системи, якому ОС виділяє машинний час. Потік може виконувати якусь частину загальної коди процесу, у тому числі і ту частину, яка в цей час вже виконується іншим потоком. Наприклад, код функції, що відображує на екрані міру просування процесу передачі інформації, може одночасно виконуватися двома потоками, які обслуговують двох клієнтів одного сервера.
Порівняно недавно з'явилося ще декілька термінів, пов'язаних з цією ж тематикою. Ниткою (fiber) потоку називається виконуваний блок код, який «уручну» (manually) уривається або планується (scheduled) додатком. Нитка виконується в контексті потоку, який її планує. Завданням (job object) називається група процесів, об'єднаних в загальний блок (unit). Завдання в ОС має своє ім'я, атрибути захисту і здатність управляти загальними (що розділяються) ресурсами. Операції, вироблювані системою або програмістом над завданнями, впливають на всі складові його процеси.
Всі потоки (threads) одного процесу користуються ресурсами породжувача їх процесу. Крім того, кожному потоку система і програміст приписує пріоритет виконання і набір структур мови З, що описують контекст потоку. Система використовує їх для запам'ятовування контексту потоку, коли його виконання уривається. У контекст входять:
стан регістрів;
системний стек ядра ОС (kernel stack);
стек користувача (user stack), розташований в адресному просторі процесу;
блок змінних оточення потоку.
Потоки подібні до процесів, але вимагають менших витрат при своєму створенні. Вони у меншій мірі, чим процеси, захищені один від одного, але дозволяють поєднати виконання операцій і виграти в загальній продуктивності процесу. Перерахуємо найбільш типові випадки, коли слід застосовувати мпогопоточность:
управління введенням в різні документи МШ-интерфейса. Введення даних кожного документа додатка організоване у вигляді окремого потоку;
управління введенням даних з декількох пристроїв телекомунікації;
розмежування пріоритетів виконання завдань. Потокам, що вимагають високої швидкості реакції, привласнюється високий пріоритет, а іншим потокам нижчий;
зниження часу реакції на дії користувача по введенню даних при одночасному виконанні фонових обчислень.
Зазвичай ефективнішою є реалізація багатозадачності у вигляді одного процесу з декількома потоками, чим у вигляді багатьох процесів з одним потоком, оскільки:
контексти потоків займають менший об'єм, чим контексти процесів і система перемикає їх швидше;
взаємодія потоків простіша, оскільки вони можуть користуватися глобальними змінними загалом для них адресному просторі процесу;
потоки одного процесу легко синхронізувати, оскільки їм доступні описувачі об'єктів ядра із загального контексту процесу.
Якщо один потік виконує повільні операції введення-виводу, а інший виконує обчислення, використовуючи лише процесор, то ефективність процесу, що поєднує два потоки, буде значно вища, ніж ефективність двох процесів, виконаних послідовно. Типовим багатопотоковим застосуванням є сервер, обслуговуючий багато користувачів. Кожен новий користувач обслуговується окремим потоком одного процесу. Замість чекань, які пов'язані з дисковими операціями, система може перейти до виконання іншого потоку.
Проте в разі помилкового проектування потоки можуть і погіршити загальний показник ефективності процесу. Наприклад, час виконання процесу з двома потоками буде нижчий, ніж ефективність двох послідовних однопо-токовых процесів, якщо обоє потоку виконуються в пам'яті і не вимагають інтерфейсу з користувачем. Система вимушена постійно переривати ефективно працюючі потоки і перемикатися між ними. Ці перемикання ведуть до непотрібних втрат або зайвих операцій (overheads) по завантаженню в пам'ять і подальшому вивантаженню структур даних, необхідних для обслуговування потоків. Наявність призначеного для користувача інтерфейсу наводить до того, що вказані дії виконуються під час неминучих пауз, пов'язаних з операціями введення-виводу, що створює ілюзію поєднання в часі.
Створення багатопотокових процесів вимагає ретельного попереднього аналізу з тим, аби належним чином скоординувати дії операційної системи і інших програмних компонентів. Відстежування станів багаточисельних потоків вимагає значних тимчасових витрат, тому слід пам'ятати, що Win32-API надає і інші засоби реалізації асинхронное™ виконання операцій. Наприклад: асинхронне уведення-виведення (I/O), спеціальні порти I/O (completion ports), асинхронні виклики видалених процедур (asynchronous procedure calls - АРС), функції чекання системних подій (wait functions).
Спільний доступ потоків до ресурсів, що розділяються: описувачам файлів, портів, глобальним змінним, може створити конфлікти. Наприклад, один потік читає дані, а інший намагається одночасно їх змінити або один потік чекає завершення певної операції іншим потоком, а той, у свою чергу, чекає відробітку першого потоку. Таке зациклення називається тупиковою ситуацією (deadlock). Для попередження конфліктів такого роду існують спеціальні синхронізуючі об'єкти ядра системи:, семафори, мьютексы, події.
№3
Шина 1- Wіre є основою мереж MіcroLAN і розроблена наприкінці 90- х років фірмою Dallas Semіconductor [8].
Шина 1- Wіre побудована за технологією Master/Slave. На шині повинний бути хоча б один провідний пристрій (Master). Всі інші пристрої повинні бути веденими (Slave). Провідний пристрій ініціює всі процеси передачі інформації в межах шини. Master може прочитати дані з будь-якого Slave пристрою або записати їх туди. Передача інформації від одного Slave пристрою до іншого безпосередньо неможлива. Для того, щоб Master міг звертатися до кожного з ведених пристроїв по шині, кожний ведений пристрій містить у собі індивідуальний код (ІD-код).
Протокол l-Wіre містить у собі спеціальну команду пошуку, за допомогою якої провідний пристрій (Master) може здійснювати автоматичний пошук ведених пристроїв. У процесі пошуку Master визначає ІD коди для всіх підключених до мережі мікросхем. Пошук відбувається шляхом поступового відсіювання неіснуючих адрес. Тому для того, щоб знайти всі пристрої, що підключені до шини, потрібно досить значний час. Середня швидкість пошуку елементів у мережі MіcroLAN становить близько 75 вузлів за секунду.
Обмін інформацією по шині 1- Wіre відбувається за такими правилами:
1. Обмін завжди ведеться з ініціативи одного провідного пристрою, що у більшості випадків є мікроконтролером.
2. Будь-який обмін інформацією починається з подачі імпульсу скидання ("Reset Pulse" або просто RESET) у лінію 1- Wіre провідним пристроєм.
3. Для інтерфейсу 1- Wіre у загальному випадку передбачається "гаряче" підключення й відключення пристроїв. 4. Будь-який пристрій, підключений до 1-Wіre після одержання живлення видає в лінію DQ імпульс присутності, який називається 73 "Presence pulse". Цей же імпульс пристрій завжди видає в лінію, якщо виявить сигнал RESET.
5. Поява в шині 1-Wіre імпульсу PRESENCE після видачі RESET однозначно інформує про наявність хоча б одного підключеного пристрою. 6. Обмін інформації ведеться так званими тайм-слотами: один тайм-слот служить для обміну одним бітом інформації.
7. Дані передаються побайтно, біт за бітом, починаючи з молодшого біта. Ймовірність переданих/прийнятих даних (перевірка відсутності спотворень) гарантується шляхом підрахунку циклічної контрольної суми.
На рисунку 1.69
показана діаграма сигналів RESET і PRESENCE,
з яких завжди починається будь-який
обмін даними.
Імпульс RESET формує МК, що переводить в низький логічний рівень шину 1-Wіre і втримує її в цьому стані мінімум 480 мікросекунд. Далі МК повинний "відпустити" шину. Через якийсь час, що залежить від ємності лінії й опору резистора, що підтягує, у лінії встановиться високий логічний рівень. Протокол 1-Wіre обмежує цей час "релаксації" діапазоном від 15 до 60 мікросекунд, що і є визначальним для вибору резистора, що підтягує.
Виявивши імпульс RESET, ведений пристрій (Slave) приводить свої внутрішні вузли у вихідний стан і формує відповідний імпульс PRESENCE, не пізніше 60 мікросекунд після завершення імпульсу RESET. Для цього пристрій переводить у низький рівень лінію і втримує її в цьому стані від 60 до 240 мікросекунд. Після цього пристрій так само "відпускає" шину.
Але після завершення імпульсу PRESENCE пристрою дається ще якийсь час для завершення внутрішніх процедур ініціалізації, таким чином, МК повинен приступити до будь-якого обміну із пристроєм не раніше, ніж через 480 мікросекунд після завершення імпульсу RESET.
Отже, процедура ініціалізації інтерфейсу, з якої починається будь-який обмін даними між пристроями, триває мінімум 960 мікросекунд, складається з передачі від МК сигналу RESET і прийому від пристрою сигналу PRESENCE. Якщо сигнал PRESENCE не виявлений – значить на шині 1- Wіre немає готових до обміну пристроїв.
Обмін бітами інформації здійснюються певними тайм-слотами. Тайм-слот – це певна, досить жорстко лімітована за часом послідовність зміни рівнів сигналу в лінії 1-Wіre. Розрізняють 4 типи тайм-слотів: передача "1" від МК, передача "0" від МК, прийом "1" від Slave пристрою, прийом "0" від Slave пристрою.
Будь-який тайм-слот завжди починає МК шляхом переведення шини 1- Wіre у низький логічний рівень. Тривалість будь-якого тайм- слота повинна перебувати в межах від 60 до 120 мікросекунд. Між окремими тайм-слотами завжди повинний передбачатися інтервал не менш 1 мікросекунди.
Тайм-слоти передачі відрізняються від тайм-слотів прийому поводженням МК: при передачі він тільки формує сигнали, при прийманні, крім того, ще й опитує рівень сигналу в лінії 1- Wіre. Рисунок 1.70 демонструє часові діаграми тайм-слотів всіх 4-х типів: угорі показані тайм-слоти передачі від МК, унизу - прийому від Slave пристрою.
БІЛЕТ № 19
№1