86
ДЪННИ ПЛАТКИ РАЗДЕЛ II СИСТЕМНИ РЕСУРСИ НА ДЪННАТА ПЛАТКА. КОМПОНЕНТИ НА ДЪННАТА ПЛАТКА Автор: инж. Красимир Дойчев Съдържание 1. Хардуерни прекъсвания – IRQ. Процес на IRQ прекъсване. 2. Контролер на прекъсвания. Блокова схема и принцип на действие. 3. Каскадно свързване на контролерите на прекъсване. Приоритет на прекъсванията. Plug and Play системи. 4. DMA канали. DMA процес и DMA контролери. 5. Адреси на входно-изходните портове и адреси на паметта. 6. Системен таймер. Блокова схема. Основни функции в PC системата. 7. ROM-BIOS на дънната платка. Структура на BIOS. Софтуерни прекъсвания на BIOS. Flash ROM BIOS . 8. RTC/CMOS-RAM (Real Time Clock/CMOS-RAM). Конфигуриране на PC системата при IBM PC/XT, IBM PC/АT-80286, 80386, 80486, Pentium. Програмата BIOS-Setup. 9. Тактови честоти на дънната платка. Кварцов генератор. Генериране на тактови честоти – PLL схеми. Настройки на тактовите честоти. 10. Захранващи напрежения на дънната платка – на процесора, на паметта, на разширителните слотове. Темите и учебното съдържание са в съответствие с учебната програма на предмета Дънни платки за специалност Компютърна техника и технологии в професионалните гимназии. 1 от 86

Системни ресурси на дънната платкаtinamu.ucoz.com/uroci/29-Sistemni_resursi_na_dannata_…  · Web viewC8237 Programmable DMA Controller Altera Core

  • Upload
    lamdieu

  • View
    297

  • Download
    7

Embed Size (px)

Citation preview

ДЪННИ ПЛАТКИРАЗДЕЛ II

СИСТЕМНИ РЕСУРСИ НА ДЪННАТА ПЛАТКА. КОМПОНЕНТИ НА ДЪННАТА ПЛАТКА

Автор: инж. Красимир Дойчев

Съдържание

1. Хардуерни прекъсвания – IRQ. Процес на IRQ прекъсване.2. Контролер на прекъсвания. Блокова схема и принцип на действие.3. Каскадно свързване на контролерите на прекъсване. Приоритет на прекъсванията. Plug and

Play системи.4. DMA канали. DMA процес и DMA контролери. 5. Адреси на входно-изходните портове и адреси на паметта.6. Системен таймер. Блокова схема. Основни функции в PC системата. 7. ROM-BIOS на дънната платка. Структура на BIOS. Софтуерни прекъсвания на BIOS. Flash

ROM BIOS . 8. RTC/CMOS-RAM (Real Time Clock/CMOS-RAM). Конфигуриране на PC системата при

IBM PC/XT, IBM PC/АT-80286, 80386, 80486, Pentium. Програмата BIOS-Setup. 9. Тактови честоти на дънната платка. Кварцов генератор. Генериране на тактови честоти –

PLL схеми. Настройки на тактовите честоти. 10. Захранващи напрежения на дънната платка – на процесора, на паметта, на разширителните

слотове.

Темите и учебното съдържание са в съответствие с учебната програма на предмета Дънни платки за специалност Компютърна техника и технологии в професионалните гимназии.

1 от 69

Литература

1. Дембовски, Клаус. PC Сервизен справочник. т.2 Дънни платки.BIOS Setup. С., Техника, 2000.

2. Иванова, Людмила. Въведение в PC, С., БАН, 2007. 3. Карбо, Михел. Архитектура на РС: Самоучител за всеки. – София, Егмонт

България, 2003. 4. Мюлер, Скот. Компютърна енциклопедия. 14-то издание. С., СофтПрес, 2002.5. Mueller, Scott Upgrading and Repairing Pcs, 17th Edition. Que. 2006.6. Mueller, Scott Upgrading and Repairing Pcs, 18th Edition. Que. 2007.7. Щраков, Станко. Програмиране и използване на компютри – лекции.

http://www.shtrakov.net/CST_PICI.htm8. Фролов, А. Аппаратное обеспечение IBM PC Том 2, книга 1, М.: Диалог-МИФИ, 1992.

http://frolov-lib.ru/books/bsp/v029. Архитектура ПК часть 1. http://ar-pc.ru/pc/200654/10. C8237 Programmable DMA Controller Altera Core http://www.cast-inc.com/cores/

c8237/cast_c8237-a.pdf11. Intel 8237/8237-2 high performance programmable DMA controller

http://zet.aluzina.org/images/8/8c/Intel-8237-dma.pdf

СИСТЕМНИ РЕСУРСИ НА ДЪННАТА ПЛАТКА Системните ресурси са комуникационните канали, адреси и други сигнали, използвани

от хардуерните устройства за комуникиране по шината. На най-ниско ниво тези ресурси обикновено включват следното:

адреси от паметта; IRQ линии; DMA канали; адреси на входно/изходни портове.

Ресурсите са подредени в реда, в който евентуално може да се очакват проблеми с тях. Конфликтите с паметта вероятно са най-неприятните и определено са най-трудните за пълно обяснение и преодоляване.

Прекъсванията причиняват повече проблеми от DMA, защото се използват много пове-че; на практика всички карти използват IRQ линии. С DMA каналите възникват по-малко проблеми, тъй като те се използват от по-малко карти и обикновено техният брой е напълно достатъчен. Входно/изходните портове (I/O портовете) се използват от всички хардуерни устройства, свързани към шината, но техният брой е над 65 хиляди, което означава, че от тях има в изобилие, въпреки че повечето устройства използват до 8 порта. При наличието на всички тези ресурси трябва да гарантирате, че всяка отделна карта или хардуерна функция използва отделни ресурси; в повечето случаи тези ресурси не могат и не трябва да се споделят.

Гореспоменатите ресурси се изискват и се използват от множество компоненти на компютърната система. Адаптерните карти се нуждаят от тях, за да комуникират със системата и да изпълняват своите задачи. Не всички адаптерни карти имат едни и същи изисквания за ресурси. Например един сериен комуникационен порт се нуждае от IRQ линия и адрес на входно/изходен порт, докато на една звукова карта са й необходими три ресурса и обикновено най-малко един

2 от 69

DMA канал. Повечето мрежови карти използват IRQ линия и адрес на входно/изходен порт, а някои могат да използват и 16KB блок от адреси от паметта.

Колкото повече компютърната система нараства по сложност, толкова е по-вероятно да възникнат конфликти за ресурсите. Модерните системи с повече допълнителни устройства наистина могат да се превърнат в истински конфигурационен кошмар за непосветените. Понякога при такива обстоятелства способността за автоматично конфигуриране на Plug and Play може да се обърка или да се провали при оптималното конфигуриране на ресурсите, опитвайки се да накара всичко да работи правилно. Повечето адаптерни карти позволяват да се модифицира присвояването на ресурсите, като се използва Plug and Play софтуера, който се доставя с картата, или мениджъра на устройства (Device Manager) в Windows 9х и по-новите версии. По този начин може понякога да се подобри една подразбираща се конфигурация, извършвайки определени промени. Дори ако автоматичното конфигуриране се обърка (което се случва по-често, отколкото трябва), за щастие, в почти всички случаи съществува логически начин за конфигуриране на системата - стига да се знаят правилата.

3 от 69

1. ХАРДУЕРНИ ПРЕКЪСВАНИЯ – IRQ. ПРОЦЕС НА IRQ ПРЕКЪСВАНЕ.

1.1 Необходимост от прекъсванията. Принцип на работа.Компютърът трябва да се справи с много задачи, при което на потребителя му се

струва, че те се изпълняват едновременно. Особено важно значение за това имат обработката на прекъсванията и директният достъп до паметта (DMA).

Ако не се използват прекъсвания, процесорът би трябвало да работи в непрекъснат цикъл. При това той ще проверява например дали е натиснат даден клавиш, дали по даден интерфейс се обменят данни, или на монитора трябва да се покаже нещо. Този начин на работа би бил твърде неефективен, тъй като процесорът ще губи по-голяма част от времето си в "проверки" и може да започне с изпълнението на някоя операция, когато е дошъл ред за изпълнение на друга.

За разлика от това при използване на прекъсвания се прекъсва моментната работа на процесора. Това може да стане например, когато той е зает с изобразяването на някакъв символ върху монитора, за да може да прочете натиснат клавиш на клавиатурата.

При натискане на клавиш се генерира заявка за прекъсване IRQ (Interrupt ReQuest [интъ’рапт рикуест] - заявка за прекъсване), процесорът прекъсва изпълнението на текущата програма, след което прочита кода на натиснатия клавиш и извършва съответните операции. След това изпълнението на програмата продължава точно от мястото, където тя е била прекъсната. За да "знае" процесорът точно с какви операции е бил зает преди постъпване на прекъсването, трябва, преди то да се обработи, да се запомнят състоянието на процесора и съдържанието на регистрите му, за което се използва специална структура за данни - т. нар. стек.

Обработването на прекъсванията може да се разглежда като вид асинхронно изпълняване на подпрограми. Асинхронно, защото прекъсване може да настъпи теоретично във всеки момент.

В PC съществуват два основни вида прекъсвания: хардуерни и софтуерни. Софтуерните са предвидени за реализиране на определени функции (прекъсвания на BIOS, DOS), докато хардуерните прекъсвания са предвидени за определени хардуерни компоненти.

Софтуерните прекъсвания не са присвоени на определени системни компоненти, а на определени функции. Така например при натискането на клавишите Ctrl и Break възниква прекъсването 23h.

Хардуерните прекъсвания предизвикват софтуерни прекъсвания, но това няма значение за разглежданията по-нататък.

1.2 Процес на IRQ прекъсване.Линиите за заявки на прекъсвания, или така наречените хардуерни прекъсвания, се из-

ползват от най-различни хардуерни устройства, за да сигнализират на дънната платка, че дадена заявка трябва да бъде изпълнена. Тези линии за прекъсвания са представени от проводници на дънната платка и изводи на разширителните слотове. Хардуерните прекъсвания в разпространените днес PC са общо 16 и имат номера от 0 до 15 (обозначават се IRQ0 до IRQ15). Номерата на прекъсванията определят приоритетите им едно пред друго; с някои изключения, прекъсванията с най-високи приоритети имат най-малки номера. Прекъсванията с по-висок приоритет използват предимството си пред тези с по-нисък приоритет, като ги прекъсват. В

4 от 69

резултат на това във вашата система могат да възникнат едновременно няколко прекъсвания, като всяко от тях е вложено в друго.

В PC с процесори 8088/8086 се е използвал 1 контролер за прекъсвания с 8 канала. В следващите поколения РС компютри е въведен втори (подчинен - Slave) контролер с още 8 канала, който е свързан каскадно към IRQ2 на първия контролер, означаван като главен (Master Controller).

Когато възникне дадено прекъсване, управлението на системата се поема от специална подпрограма, която най-напред запазва съдържанието на всички регистри на процесора в стека, след което насочва системата към таблицата с векторите на прекъсванията. Тази векторна таблица съдържа списък с адреси от паметта, съответстващи на линиите за прекъсвания. В зависимост от това, кое прекъсване е възникнало, се стартира съответстващата му програма.

Указателите във векторната таблица сочат към адреса на използвания софтуерен драйвер, който трябва да обслужи картата, генерирала прекъсването. За една мрежова карта например векторът може да сочи към адреса на мрежовите драйвери, които са били заредени, за да управляват картата; за един контролер на твърд диск векторът може да сочи към код в BIOS-а, който управлява контролера.

След като дадената софтуерна подпрограма приключи с изпълнението на функцията, която е била необходима на картата, софтуерът за управление на прекъсванията връща съдържанието на стека в регистрите на процесора, и системата продължава да изпълнява това, което е изпълнявала преди възникването на прекъсването.

Чрез използване на прекъсвания компютърната система може да реагира своевременно на външни събития.

При компютри с шина ISA се използва задействане на прекъсванията чрез превключване по фронт (edge-triggering) - при него дадено прекъсване се разпознава при смяната на сигнал, който се изпраща по конкретен проводник, чийто извод е разположен в слота. На всяко възможно хардуерно прекъсване отговаря отделен проводник. Тъй като дънната платка не може да разпознае кой слот съдържа картата, която е използвала линията на прекъсване и съответно е генерирала прекъсването, ще възникне объркване, ако повече от една карта е установена да използва конкретното прекъсване. Ето защо обикновено всяко прекъсване се назначава само на едно хардуерно устройство. По принцип правилото е, че прекъсванията по ISA шината не могат да се споделят.

Тъй като превключването по фронт (Edge Triggering) съвсем не е безпроблемно, и е възможно смущаващи импулси да предизвикат лъжливи заявки за прекъсване, при PC EISA и MCA (PS/2-PC на IBM) е въведено превключване по ниво (Level Triggering). Превключването по ниво се използва и при устройства PCI, като едва достигането на определено високо ниво (TTL High) на извод IRQ се интерпретира като заявка за прекъсване.

В BIOS-Setup, например под опциятa "PCI Configuration Setup", потребителят има възможност да избере дали превключването да става по ниво или по фронт. Обикновено (старите) карти ISA използват превключване по фронт, а картите PCI и ISA-картите с функции Plug&Play - превключване по ниво. Вторият метод се е доказал в практиката като по-безпроблемен, но по-стари карти ISA могат да не се "справят" и тогава се налага работа с превключване по фронт.

Присвояването на каналите за обслужване на прекъсванията на отделни компоненти (контролери, интерфейсни карти и др.) се осъществява обикновено с джъмпери или DIP

5 от 69

превключватели при стандартните карти ISA. При карти ISA Plug&Play и PCI присвояването на канал (или на повече от един канали в някои случаи) става автоматично от Plug&Play-BIOS и/или Windows 9х/XP/Vista.

6 от 69

2. КОНТРОЛЕР НА ПРЕКЪСВАНИЯ. БЛОКОВА СХЕМА И ПРИНЦИП НА ДЕЙСТВИЕ.

Управлението на прекъсванията се извършва от специална логическо устройство, което се нарича контролер на прекъсванията. Контролерът на прекъсванията получава заявки за прекъсвания от различните хардуерни устройства посредством линиите за заявки за прекъсвания IRQ. В първите РС, използващи 8- битовата шина ISA, контролерът на прекъсванията се свързва с хардуерните устройства посредством осем IRQ линии. С появата на РС АТ (i80286) броят на външните хардуерни прекъсвания е удвоен, като се използват два контролера на прекъсванията 8259. Двата контролера се свързват каскадно, при което прекъсванията, генерирани от втория контролер се подават през неизползваното IRQ2 на първия контролер. Заради недостъпността на IRQ2 тази схема осигурява само 15 налични прекъсвания.

Оригиналният контролер на прекъсванията 8259А (Intel, AMD, Harris) може да се включва към различни процесори и за целта предлага различни режими на работа. В съвременните дънни платки функциите му са интегрирани заедно с тези на други схеми (контролер за директен достъп до паметта, таймер и др.) като съставна част от съответния чипсет. На фигура 1 е представена вътрешната структура на контролера на прекъсванията.

фиг. 1 Контролер на прекъсванията 8259А

Заявката за прекъсване от дадено устройство (IRQO - IRQ7) се съхранява в регистъра на прекъсванията и се сравнява с байта в регистъра на маскиране на прекъсването. Хардуерните прекъсвания понякога се наричат маскируеми прекъсвания, което означава, че прекъсванията могат да бъдат маскирани, т.е. изключени за кратко, докато процесорът се използва за други критично важни операции. Ако постъпилото прекъсване не бъде блокирано

7 от 69

с високо логическо ниво в регистъра на маскиране на прекъсването, чрез устройството за анализ на приоритетите се определя дали няма и други заявки за прекъсване. Ако има, първо се изпълнява заявката с най-висок приоритет (най-малък номер на IRQ), а след това останалите според техния приоритет.

Когато едно прекъсване е освободено за изпълнение, това се заявява на процесора по линията INT. Процесорът от своя страна подава на входа сигнал (Interrupt Acknowledge – потвърждение на прекъсването) на контролера два импулса като потвърждение, че заявката за прекъсване е получена (тук INT няма нищо общо с прекъсванията при шина PCI). С първия импулс се указва на контролера да блокира съдържанието на регистъра на прекъсванията, така че да не бъдат приемани повече заявки. Актуалното прекъсване се съхранява в регистъра обслужване на прекъсването. Чрез втория импулс се указва съответният вектор на прекъсването. С помощта на таблицата с вектори на прекъсванията в системната RAM памет се определя адресът на програмата за обслужване на прекъсването и тя се изпълнява.

За комуникация с централния процесор контролерът използва логиката за четене/запис. Контролерът 8259А се активира, когато на входа (Chip Select) е подаден сигнал с ниско ниво. Регистрите се четат или в тях се записва, когато са активни съответно линиите (Read - за четене) или (Write - за запис). Превключването между регистрите се осъществява чрез линията А0.

Каскадният буфер с изводите CASO - CAS2 се използва за комуникация с втори контролер за обслужване на прекъсвания, какъвто е случаят при оригиналния компютър АТ.

По линията се предава номерът на вектора на драйвера за данни в режим с буфериране (Buffered Mode). В компютрите АТ чрез този сигнал се определя дали в системата е активен главният или подчиненият контролер.

За инициализиране на контролера на прекъсванията от централния процесор към буфера на шината за данни се изпращат определени байтове - инициализиращи думи (Initialization Command Words - ICW). За комуникация се използват само два входно-изходни адреса (20h и 21h). За всяка дума установяването на битовете D7 до D0 в нули или единици означава конкретни настройки. Например, за думата ICW1, ако D3=0 - управлението е по фронт, а ако D3=1- управлението е по ниво.

Съществуват и командни думи, с които контролерът може да се препрограмира по време на работа. Тези думи се означават с OCW (Operation Control Words).

Подробен пример за програмирането на прекъсванията чрез ICW и OCW е показан в [Клаус Дембовски, PC сервизен справочник т.2, стр. 53-57].

8 от 69

3. КАСКАДНО СВЪРЗВАНЕ НА КОНТРОЛЕРИТЕ НА ПРЕКЪСВАНЕ. ПРИОРИТЕТ НА ПРЕКЪСВАНИЯТА.

PLUG AND PLAY СИСТЕМИ.3.1 Каскадно свързване на контролерите на прекъсване

Както беше споменато по-горе, в PC с процесори 8088/8086 има един контролер за прекъсвания, който осигурява 8 канала, а в системите АТ (с процесори 286 и по-добри) е въведен втори контролер с още 8 канала, който е свързан каскадно към първия (фиг. 1). Единият контролер се означава като главен (Master Controller), а другият (новият) - като подчинен (Slave Controller). Прекъсванията, генерирани от втория контролер, се подават през неизползваното IRQ2 на първия контролер, като така се осигуряват общо 15 използваеми прекъсвания.

Контролерите на прекъсванията отдавна не се срещат като отделни интегрални схеми в PC. Тяхната задача се реализира от част от набора чипове, но с оглед на съвместимостта е запазено старото схемно решение.

фиг. 1 Каскадно свързване на двата контролера на прекъсванията през IRQ2

3.2 Приоритет на прекъсваниятаКогато компютърната системи работи с един контролер, приоритета на прекъсването се

определя от неговия номер. Колкото по-малък е номера, толкова по-висок приоритет (предимство при изпълнение) има съответното прекъсване. Чрез подаване на всички прекъсвания от втория IRQ контролер през IRQ2 на първия, всички тези нови прекъсвания вкупом имат ниво на приоритет между IRQ1 и IRQ3. При това положение, в края на краищата IRQ 15 се оказва с по-висок приоритет от IRQ 3.

Таблица 1 показва типичната употреба на прекъсванията в 16-битовата ISA и 32-битовите PCI/AGP шини, и ги изброява по приоритети, започвайки от най-високия. Излезлите от употреба EISA и МСА шини използват подобна карта на прекъсванията.

9 от 69

табл. 1 Предназначения на прекъсванията при ISA/PCI/AGP шини

IRQ Функции Разширителен слот

Тип карта Препоръчително предназначение

0 Системен таймер не1 Контролер на

клавиатуране

2 Свободно не8 Часовник реално

времене

9 Свободно да 8/16-битови мрежова карта10 Свободно да 16-битови USB11 Свободно да 16-битови SCSI хост адаптер12 Порт за мишка/

Свободнода 16-битови Порт за мишка

13 Мат. копроцесор не14 Главно IDE да 16-битови Харддискове15 Вторично IDE да 16-битови CD-ROM3 Сериен порт 2 (СОМ2) да 8/16-битови СОМ2/вътрешен

модем4 Сериен порт 1 (СОМ1) да 8/16-битови СОМ15 Звукова карта / LPT2 да 8/16-битови Звукова карта6 Контролер на

флопидискови устройства

да 8/16-битови Контролер на флопидискови устройства

7 Паралелен порт LPT1 да 8/16-битови LPT1

Каналите за прекъсване 0, 1, 2 и 8 винаги се използват за определените функции от електрониката на дънната платка, докато останалите канали могат да се използват различно в зависимост от конфигурацията на PC.

Забележете, че прекъсвания 0, 1, 2, 8 и 13 нямат изводи в слотовете на шината и не са достъпни за разширителните карти. Прекъсвания 8, 10, 11, 12, 13, 14 и 15 се подават от втория контролер на прекъсванията и са достъпни само за адаптери, използващи 16-битовото разширение на слотовете, защото именно там се намират изводите на съответстващите им проводници. В 8-битовите слотове проводникът за IRQ 9 е свързан на мястото на IRQ 2, така че IRQ 9 замества IRQ 2 и поради това е налично за 8-битовите карти, които от своя страна си мислят, че то в действителност е IRQ 2.

Когато се появят едновременно повече от една заявки за прекъсвания, тяхната обработка се извършва според приоритета им, като таймерът на дънната платка има най-високия, а паралелният порт- най-ниския приоритет.

Още по-висок приоритет от таймера има немаскируемото прекъсване (NMI - Non Maskable Interrupt), което не може да бъде забранено с маскиране като другите прекъсвания. Немаскируемо прекъсване може да възникне, когато се получат критични системни грешки като грешка при проверка по четност на RAM-паметта, което води до сриване на системата и "увисване" на PC.

При някои PC енергоспестяващите функции (Green PC) са реализирани също чрез NMI, като това се практикува различно при различните производители. В такива случаи потребителят не може да оказва никакво влияние, като се изключи, разбира се, BIOS-Setup, където съответните "Green Functions"' се конфигурират или изцяло могат да бъдат изключени.

10 от 69

Забележка: Допълнителните IRQ линии в една система с 16-битова ISA шина не са от голяма полза, освен ако адаптерните карти, които възнамерявате да използвате, ви позволяват да ги конфигурирате за неизползваните прекъсвания. Някои устройства са твърдо установени, така че могат да използват само конкретно прекъсване. Ако имате устройство, което вече използва това IRQ, трябва да разрешите конфликта, преди да инсталирате втория адаптер. Ако нито един от адаптерите не ви позволява да преконфигурирате използваното прекъсване, тогава не можете да използвате двата адаптера едновременно в една и съща система.

3.3 Plug and Play системи. Обработка на прекъсванията при шина PCIВсички усъвършенствания на КС са имали за цел да направят системата достатъчно

гъвкава, с големи възможности за разширяване. При това целта винаги е била компютърната система сама да се справя с преконфигурацията си, когато се извърши разширение или поне да се намали до минимум намесата на потребителя на КС. Такава технология на развитие на компютърните системи получи наименованието Plug-and-play (постави и задействай), съкратено PnP. При PnP картите липсват превключватели и джъмпери, а конфигурирането се извършва от PnP BIOS-а на системата или от специални програми за не-PnP системите. PnP също позволява на системата да открива и конфигурира външни устройства, като монитори, модеми и устройства, свързани към USB и IEEE-1394 портове.

Първата реализация на Plug and Play стандарта, която има практическо значение, са PCI системите. При тях в компютърната архитектура се добавя допълнителна шина, наречена PCI шина, към която са свързани няколко слота, в които може да се поставят разширителни PCI карти.

Използването и настройката на прекъсванията при PC с дънна платка PCI са по-различни от тези на ISA и съвсем точно дефинирани. PCI дефинира 4 нови прекъсвания, които могат да се използват от PCI устройствата, за да сигнализират на шината, че се нуждаят от внимание. За да се прави разлика дали прекъсването е използвано от ISA или от PCI карти, прекъсванията при ISA се означават с IRQ, а прекъсванията за PCI - с INT. Четирите PCI прекъсвания се наричат INTA#, INTB#, INTC# и INTD#. Тези INTx# прекъсвания са чувствителни към нивото на сигнала (level-sensitive), което означава, че електрическите сигнали им позволяват да бъдат споделяни от PCI картите. Всъщност всички РС1 карти или чипове с единични функции или устройства, които използват само едно прекъсване, трябва да използват INTA#. Това е едно от правилата в спецификацията на PCI. Ако в чипа или на самата карта има допълнителни устройства, те могат да използват прекъсванията от INTB# до INTD#. Тъй като съществуват много малко многофункционални PCI чипове или карти, практически всички устройства, свързани към дадена PCI шина, ще споделят INTA#.

За да може PCI шината да функционира в едно PC, PCI прекъсванията трябва да се съпоставят на ISA прекъсвания. Тъй като ISA прекъсванията не могат да се споделят, в повечето случаи на всяка PCI карта, използваща INTA# по PCI шината, трябва да й се присвои различно несподеляемо ISA прекъсване - в повечето случаи IRQ9, IRQ10, IRQ11 или IRQ5.

Намирането на уникални прекъсвания за всяко устройство както на ISA, така и на PCI шината винаги е било проблем; просто няма достатъчно свободни IRQ линии. Установяването на две ISA устройства на едно и също IRQ никога не е било възможно, но при повечето по-нови системи споделянето на прекъсвания между няколко PCI устройства е възможно. По-новите системни BIOS-и и Plug and Play операционни системи, като например Windows 95B (OSR 2), Windows 98, Windows 2000 и Windows XP, поддържат функции, известни като превключване на PCI прекъсвания (PCI IRQ Steering).

11 от 69

По принцип BIOS-ът назначава уникални прекъсвания на PCI устройствата. Ако вашата система подържа функцията PCI IRQ Steering и тя е разрешена, прекъсванията на PCI устройствата се назначават от Windows. Но дори когато тази функция е разрешена, BIOS-ът пак първоначално назначава прекъсвания на PCI устройствата. Въпреки че Windows е в състояние да променя тези настройки, той обикновено не прави това автоматично, освен когато се налага да елиминира конфликти.

Ако броят на свободните прекъсвания е недостатъчен, функцията за превключване на прекъсванията позволява на Windows да назначи едно прекъсване на няколко PCI устройства, давайки възможност на всички устройства в системата да функционират правилно.

Без поддръжка на PCI IRQ Steering, способността за споделяне на PCI прекъсванията става непотребна, защото при това положение всички назначения на прекъсвания от PCI към ISA ще трябва да са уникални. Без IRQ Steering, Windows започва да забранява устройствата, след като свободните прекъсвания се свършат. Ако тази функция липсва, лесно може да оста-нете без свободни прекъсвания. Ако превключването на прекъсванията е налично и е разрешено, няколко PCI устройства могат да споделят едно и също прекъсване, позволявайки на системата да се разширява, без да се свършат свободните прекъсвания.

За да се определи дали Windows 9x/Me използва, се отваря Device Manager >System Devices> PCI Bus >IRQ Steering. Там има отметка, която показва дали функцията IRQ Steering е разрешена и е указано откъде се чете таблицата с прекъсванията.

В Windows XP не може да се забрани IRQ превключването, а в Device Manager не се появява страницата IRQ Steering.

Забележете, че към PCI шината може да имате свързани и вътрешни устройства, дори и ако всички PCI слотове са свободни. Например, повечето съвременни системи имат два IDE контролера и USB контролер, които са свързани към PCI шината. Обикновено на PCI IDE контролерите се назначават ISA прекъсванията 14 (главният IDE контролер) и 15 (вторичният IDE контролер), докато USB контролерът може да използва обикновено свободните ISA прекъсвания 9, 10, 11 и 5.

PCI шината позволява да съществуват два вида устройства, наречени мастери на шината (bus masters), които са инициатори, и подчинени устройства (slaves), които са приемници. Един мастер на шината е устройство, което може да поеме управлението над шината и да инициира трансфер. Приемащото устройство представлява местоназначението на трансфера. Повечето PCI устройства могат да действат и като мастери, и като приемници, а за да са съвместими с PC 97 и по-новите препоръки за дизайн, всички PCI слотове трябва да поддържат карти, които са мастери на шината.

PCI шината се арбитрира: Един централен арбитър (част от контролера на PCI шината в чипсета на дънната платка) управлява всички трансфери по шината, раздавайки справедлив и контролиран достъп на всички устройства, свързани към шината. Преди един мастер да може да използва шината, той трябва първо да направи заявка за управление към централния арбитър, след което управлението на шината му се предава само за указан максимален брой цикли. Това арбитриране позволява равен и справедлив достъп за всички мастери на шината и предотвратява състояния, при които едно-единствено устройство заграбва управлението на шината, както и ситуации на взаимна блокировка, причинени от едновременно осъществяване на достъп от няколко устройства. По този начин PCI шината действа много подобно на

12 от 69

локална мрежа (LAN), но такава, която изцяло се съдържа в системата и работи на много по-висока скорост от конвенционалните външни мрежи между РС-та.

3.4 Усъвършенстван програмируем контролер на прекъсванията (APIC).Като заменител на традиционната двойка контролери на прекъсванията 8259, в средата

на 90-те години Intel създават усъвършенстван програмируем контролер на прекъсванията (Advanced Programmable Interrupt Controller - APIC). Макар че всички процесори след първоначалния Pentium съдържат APIC, APIC трябва също да присъства в чипсета на дънната платка и BIOS и операционната система трябва също да поддържат APIC.

Поддръжката на APIC е осигурена от повечето съвременни дънни платки и от версиите на Windows след Windows 2000. Тази поддръжка може да се разреши или забрани в системния BIOS.

APIC осигурява поддръжка за многопроцесорни системи, но също се използва в еднопроцесорни компютри. Главното предимство на APIC за единичен процесор е поддръжката на виртуални PCI прекъсвания с по-голям брой от 15, обикновено до 24. Докато Windows 2000 се стреми да постави PCI прекъсванията в традиционния ISA обхват от 15, дори когато е разрешен APIC, Windows XP напълно използва APIC услугите, когато е инсталиран на система с разрешен APIC. В Windows XP APIC ограничава споделянето на прекъсвания, за да позволи на устройствата да работят по-добре, с по-малко конфликти. Например, в една типична Windows XP система с разрешен APIC, PCI прекъсванията се присвояват така:

PCI IRQ 16: вградено аудио/AGP графика (споделено) PCI IRQ 17: разширителна карта за USB 1.1 контролер (несподелено) PCI IRQ 18: разширителна карта за USB 1.1 контролер (несподелено) PCI IRQ 19: 10/100 Ethernet адаптер/ разширителна карта за USB 2.0 контролер

(споделено) PCI IRQ 21: вградени USB 1.1 контролери (3 бр.)/вграден USB 2.0 контролер

(споделено)Традиционното ISA прекъсване 15 на примерната система се използва само от ISA

устройства, предотвратявайки по този начин ISA-PCI конфликти на прекъсванията.За да се направят достъпни услугите на APIC, той трябва да бъде разрешен в системния

BIOS, когато се инсталира Windows 2000 или XP, а когато се инсталират Windows XP Professional x64 Edition и Windows Server 2003 for x64, трябва да е разрешен задължително предварително.

3.5 Диагностика на настройките на прекъсванията. Разрешаване на IRQ конфликти Един лесен начин за проверяване настройките на прекъсванията е да се използва Device

Manager в Windows 95/98/Me, NT, 2000 или ХР. Чрез двукратно щракване върху иконата Computer (най-горе в списъка) можете да се види кратък списък на всички използвани системни ресурси. Към Windows 95B от Microsoft са включили и една програма, наречена HWDIAG; Windows 98 и по-новите версии включват програмата System Information (в Windows XP може да се извика и чрез командата MSinfo32). HWDIAG и System Information се справят отлично с докладването на използваните системни ресурси, както и показването на подробности относно драйверите на устройства и записите в регистъра на Windows (Windows Registry) за всеки хардуерен компонент.

Вероятно най-често срещаният IRQ конфликт е този между интегрирания COM2: порт, който се среща в повечето модерни дънни платки, и вътрешен (разположен на адаптерна

13 от 69

карта) модем. Проблемът е в това, че истинските, базирани на карти, модеми включват в себе си вграден сериен порт, който по подразбиране е установен на COM2:. Компютърът различава два COM2: порта, всеки от които използва същото прекъсване и същите входно/изходни портове. Разрешението на този проблем е лесно – влиза се в настройващата програма на BIOS и се забранява вградения COM2: порт. В по-старите системи серийните СОМ портове обикновено се използваха за присъединяване на мишка или външен модем, но сега за мишките се използва PS/2 или USB порт, а модеми почти не се използват. Следователно в един съвременен PC използването COM порт е по-скоро изключение и затова е препоръчително да се забрани и СОМ1:, за да се освободи прекъсване, което може да се използва от други устройства.

Друг конфликт при прекъсванията възниква, когато в една система се добавят COM3: и COM4: портове. В такъв случай обикновено става така, че COM3: се установява да използва IRQ 4 (споделяйки го с СОМ1:), а COM4: се установява да използва IRQ 3 (споделяйки го с COM2:). Това е неприемливо, защото не позволява едновременно да се използват два СОМ порта. Най доброто решение в случая е да се постави многопортова входно/изходна карта, която позволява установяването на неконфликтни прекъсвания, или пък интелигентна карта със собствен процесор, която е способна да управлява множество портове, използвайки само едно прекъсване в системата.

Ако дадено устройство от показаните в таблицата липсва, като например вградените на дъното порт за мишка (IRQ 12) или паралелен порт 2 (IRQ 5), можете да считате, че използваните от тях прекъсвания са свободни. Например втори паралелен порт е рядкост, така че в повечето системи IRQ 5 се използва от звукови карти. Също така в повечето системи IRQ 15 е назначено на вторичния IDE контролер. Ако няма втори IDE твърд диск или CD/DVD, можете да се забрани вторичния IDE контролер, за да се освободи неговото прекъсване за друго устройство.

За да се осигури максимален брой споделяеми прекъсвания в съвременните системи без ISA слотове, препоръчително е да се извършат следните настройки в системния BIOS:

1. Да се забранят неизползваните остарели портове (серийни и паралелни) в системния BIOS. Така може да се освободят цели 3 прекъсвания.

2. Да се изберат освободените в стъпка 1 прекъсвания като достъпни за PCI/PnP употреба. В зависимост от BIOS екранът за настройка може да се нарича PnP/PCI Resource Exclusion (PnP/PCI изключване на ресурси) или PnP/PCI Configuration.

3. Да се разреши опцията Reset Configuration Data (нулиране на конфигурационните данни), за да се изчистят IRQ таблиците в CMOS.

4. Да се съхранят промените в BIOS и да се излезе от него.

14 от 69

4. DMA КАНАЛИ. DMA ПРОЦЕС И DMA КОНТРОЛЕРИ. 4.1 Същност на прекия достъп до паметта (DMA).

За бързо въвеждане и извеждане на информацията и разтоварване на централното процесорно устройство от входно-изходни операции, свързани с основната памет се използва пряк достъп до паметта (DMA – Direct Memory Access).

Пряк достъп до паметта се нарича режимът на работа, при който се извършва обмяна на данни между периферните устройства и основната памет, независимо от процесора. DMA се използва от много хардуерни устройства: контролери на дискови устройства, SCSI адаптери, графични карти, мрежови карти, карти ISDN и звукови карти.

В режим на пряк достъп до паметта се използва специализирано устройство - контролер за пряк достъп до паметта. При този режим на работа достъп до шината за данни, адреси и управление (системната шина) има не процесорът, а контролерът за директен достъп. В началото на предаване на данните контролерът се програмира от централния процесор - в него се предават адресите в основната памет и количеството на трансферираната информация, след което DMA се оставя да свърши работата по прехвърляне на данните. Когато DMA приключи преноса на данни, изпраща сигнал до процесора за извършения трансфер.

Основните функции, които се реализират с DMA, могат да се формулират по следния начин:

освобождава централния процесор от управление на бавните входно-изходни операции между основната памет и външните устройства;

осигурява възможност за паралелно изпълнение на програми от централния процесор и обмен на данни между паметта и външните устройства, т.е. когато се извършва обмен с директен достъп до паметта, процесорът може да изпълнява други задачи.

Трансферът на данни, които извършва DMA, е ограничаван единствено от пропускателната способност на основната шина и шината към външните устройства.

Скоростта на обмен на данни в режим на DMA е около 6 пъти по-висока от скоростта на обмен чрез централния процесор, но от съвременна гледна точка повишаването на бързодействието не е най-важното, тъй като още при процесорите 486 са възможни по-високи скорости на обмен в режима Polling.

Основното предимство на този режим, е възможността да се предават блокове данни с определени размери (64 или 128 KByte при ISA), без това да се прекъсва от други действия.

4.2 DMA процесПри работа в режим на пряк достъп до паметта контролерът на DMA изпълнява

следната последователност от операции: приема заявки за трансфер на данни от външните устройства; формира заявка до централния процесор за заемане на системната шина за трансфер

на данни; приема сигнал, потвърждаващ разрешението за заемане на системната магистрала за

пренос на данни. В това състояние микропроцесорът прекъсва връзката със системната шина;

формира сигнал, съобщаващ на външното устройство за начало на трансфера на данни;

15 от 69

подава на адресната шина адреса на клетката от паметта, предназначена за обмен; генерира сигнали, с които управлява трансфера на данните; при завършване на обмена на данни или организира повторно изпълнение на

цикъла, или прекъсва режима на пряк достъп до паметта.На фиг.1 е показана схема на взаимодействие на устройствата в компютърната система

в режим DMA.

Фиг. 1 Директен достъп до паметта DMA

4.3 DMA каналиВ оригиналните IBM-PC е поставена схемата 8237 на Intel, която осигурява 4 канала за

директен достъп до паметта. В компютрите АТ са поставени 2 такива схеми и така се осигуряват 8 канала, което отговаря и на съвременните стандарти. Както и при контролерите за прекъсвания, първият DMA контролер е означен като главен, а вторият като подчинен. В съвременните компютри DMA контролерът, както и контролерът за прекъсванията, е част от набора чипове на PC (чипсета).

ЗабележкаВ едно модерно PC има няколко вида DMA. DMA каналите, за които се говори тук, се отнасят за ISA шината. Другите шини, като например ATA/IDE шината, използвани от харддисковите устройства, използват DMA по различен начин. Описаните тук DMA канали не се отнасят за вашите ATA/IDE устройства дори и ако те са установени да използват DMA или Ultra DMA трансфери.

DMA канали на 8-битовата ISA шина

При 8-битовата ISA шина съществуват 4 DMA канала, които поддържат високоскоростните трансфери на данни между входно/изходните устройства и паметта. Три от тези канали са налични за използване от разширителните слотове. Таблица 1 показва типичните роли на тези DMA канали.

Таблица 1 Типични роли на DMA каналите на 8-битовата ISA шина

DMA Стандартна функция Разширителен слот

0 Динамично опресняване на RAM Няма

1 Свободен Да (8-bit)

16 от 69

Таблица 1 Типични роли на DMA каналите на 8-битовата ISA шина

DMA Стандартна функция Разширителен слот

2 Контролер на флопидисково устройство Да (8-bit)

3 Контролер на твърд диск Да (8-bit)

Канал 0 за DMA се използва за опресняване на съдържанието на динамичната памет RAM. Понеже повечето системи имат както флопидисково устройство, така и твърд диск, в 8-битовите системи има само един свободен DMA канал.

DMA канали на 16-битовата ISA шина

От въвеждането на процесора 286, ISA шината поддържа осем DMA канала, като седем от тях са достъпни за разширителните слотове. Подобно на разширените IRQ линии, добавените DMA канали са създадени чрез каскадно свързване на втори DMA контролер към първия. Каналът DMA 4 се използва като каскада към каналите от 0 до 3 и затова е неизползваем и недостъпен за разширителните слотове. Таблица 2 показва типичните роли на DMA каналите.

Таблица 2 Подразбиращи се роли на DMA каналите на 16-битовата ISA шина

DMA Стандартна функция

Разширителен слот

Тип на картите

Трансфер Препоръчителна употреба

0Свободен

Да 16-bit 8-bitЗвукова карта

1Свободен Да

8/16-bit 8-bitЗвукова карта

2 Контролер на флопидисково устройство

Да8/16-bit 8-bit Контролер на

флопидисково устройство

3 СвободенДа

8/16-bit 8-bit LPT1: в ECP режим

4 Каскада към първи DMA контролер

Не 16-bit

5Свободен Да

16-bit 16-bit Звукова карта

6Свободен Да

16-bit 16-bitСвободен

17 от 69

Таблица 2 Подразбиращи се роли на DMA каналите на 16-битовата ISA шина

DMA Стандартна функция

Разширителен слот

Тип на картите

Трансфер Препоръчителна употреба

7Свободен Да

16-bit 16-bitСвободен

При PC с процесор 286 опресняването на динамичната памет RAM се поема от немаскируемото прекъсване или се реализира по друг начин в чипсета и за него не се използва канал за директен достъп, т.е. каналът DMA 0 се освобождава.

Единственият стандартен DMA канал, използван във всички системи, е DMA 2, който се използва универсално от флопидисковия контролер. DMA каналите 1 и 5 най-често се използват от ISA звукови карти - например Sound Blaster 16 - или по-новите PCI звукови карти, емулиращи по-старите с цел обратна съвместимост. Тези карти използват както 8-битов, така и 16-битов DMA канал за високоскоростни трансфери.

Канали 0 до 3 се използват за 8-битови трансфери, което позволява предаване на блокове с размери 64 KByte. Канали от 5 до 7 са само за 16-битови трансфери, което позволява предаване на блокове с размери 128 Kbyte и води до повишаване на бързодействието. Поради тази причина за 16-битовите разширителни карти при възможност трябва да се използват каналите с номера над 3, за да е възможно по-бързо предаване на данни.

Кой именно канал DMA се използва при съвременните твърди дискове, не е точно дефинирано. В повечето случаи се използва DMA канал 7, а за втория канал на контролера EIDE се използва канал 5. В някои случаи изобщо не се използва канал за DMA от контролера на твърдия диск и предаването на данни се извършва в режим РIO1, който се задава в BIOS-Setup на PC.

За всеки канал DMA, за разлика от обработката на прекъсванията, се използват два сигнала, означени на слотовете PC и ISA като DRQx und DACKx (с х тук е означен номерът на съответния канал DMA). DRQ DMA ReQuest - заявка за DMA, подадена от периферно устройство. DACK е съкращение от DMA ACKnowledge - потвърждение за готовност за извършване на предаването. Тъй като на отделните канали DMA, както и при обработката на прекъсванията, е присвоен определен приоритет, първо се обработва заявката с най-висок приоритет. DRQ0 има най-високия, a DRQ7 - най-ниския приоритет.

Шина PCI

При шината PCI не се използва действително предаване с използване на DMA, a вместо това се работи в монополен (Burst) режим, при който не трябва да се резервират специални канали. Трябва да се внимава при задаването на канали DMA само при картите с шина ISA.

За разлика от ISA при шината PCI няма централен DMA контролер. Вместо това, всеки PCI компонент може да изиска управление на шината (bus mastering) и да изиска четене и писане от системната памет. По-точно PCI компонентът изисква собственост върху шината от контролера на PCI шината (обикновено той е в южния мост на чипсета), който арбитрира заявките за собственост, ако има няколко едновременно.

1 PIO – режим на програмиран вход/изход – при него за прехвърляне се използват регистрите на процесора. Най-бавният PIO режим е 0, а най-бързият 4. По-бързите използват UltraDMA трансфера

18 от 69

4.4 DMA контролер. 4.4.1 Предназначение и характеристикиDMA контролерът 8237 е предназначен да подобри производителността на системата

чрез позволяване на директен трансфер на информация между външните устройства и системната памет. Той се състои от 4 независими канала и може да бъде разширяван до по-голям брой канали чрез каскадиране на допълнителни контролери. Всеки канал има пълен 64 К адрес и възможност за броене на думите. Контролерът на DMA може да работи в два режима: режим на програмиране (Program Condition) и режим на изпълнение на цикли на DMA.

4.4.2 УстройствоDMA контролерът се състои от 3 основни блока на управляващата логика и вътрешна

памет под формата на регистри, която е с обем 344 бита (фиг. 2).

фиг. 2 Блокова схема на DMA контролера 8237Блокът за управление и синхронизация генерира вътрешни времеви и външни

управляващи сигнали за DMA контролера. Вътрешната синхронизация се извлича от входящи сигнали CLK на тактов генератор. Контролерът работи в два основни цикъла: празен и активен. Всеки цикъл се състои от няколко състояния, като всяко състояние се съставя за един пълен такт. Общо има 7 вида състояния: SI, S0, S1, S2, S3, S4 и SW.

Празният (бездействащ) цикъл се състои от състоянията SI. Когато няма чакащи валидни DMA заявки, контролерът е в състояние SI, не е активен, но може да бъде в състояние на програмиране от процесора.

19 от 69

Първото състояние на активния цикъл (DMA обслужването) е S0 – подадена е заявка, но процесорът не е върнал потвърждение (acknowledge). Когато се върне потвърждението, трансферът на данни може да започва. Работните състояния на DMA обслужването са S1, S2, S3 и S4. Ако е необходимо време по-голямо от един такт за завършване на трансфера, между S2 или S3 и S4 могат да се вмъкнат състояния на изчакване SW чрез използване на линията готовност (Ready).

Трансферите „памет към памет” изискват „четене от паметта” и „запис в паметта” за да се завърши всеки трансфер. За да се различават двата етапа на трансфера се използват двуцифрено означение. За един трансфер се изискват 8 състояния: за четене – S11, S12, S13 и S14; за запис – S21, S22, S23 и S24.

Блокът за управление на програмните команди декодира различните команди, давани на DMA контролера от процесора преди да се обслужи DMA заявката.

Блокът за управление на приоритета разрешава спора между DMA канали, подали едновременно заявка. Контролерът 8237 поддържа два режима за определяне на приоритета, които могат да се избират софтуерно: фиксиран и ротационен (редуващ се). Фиксираният приоритет установява каналите в приоритетен ред, базиран на техния номер в намаляващ ред (най.високия приоритет има канал 0, а най-нисък – канал 3). При ротационния приоритет последният канал, който е получил услуга, става с най-нисък приоритет. По този начин никой канал не може да монополизира системата. Всяко устройство, искащо услуга, гарантирано ще бъде разпознато след не повече от 3 услуги с по-висок приоритет.

РегистриВсеки канал има следните четири 16-битови регистри: регистър на текущия адрес;

регистър на основния адрес; регистър на текущия брой думи (цикли); регистър на основния брой думи (цикли), както и един 6-битов регистър за режима.

Регистър на текущия адрес – съдържа стойността на адреса, който се използва по време на DMA трансферите. След всеки трансфер адресът автоматично се инкрементира (увеличава с 1) или декрементира (намалява с 1) и именно тези междинни стойности се съхраняват в регистъра на текущия адрес. Този регистър се чете или записва от микропроцесора в последователни 8-битови байтове.

Регистър на текущия брой думи – съдържа броя на трансферите, които трябва да се изпълнят. След всеки трансфер броят на думите се декрементира (намалява с 1) и тези междинни стойности се съхраняват в регистъра на текущия брой думи. Когато стойността на регистъра стане нула, генерира се сигнал TC (Termimal Count – завършек на брояча).

Регистър на основния (базовия) адрес и Регистър на основния (базовия) брой думи – тези регистри съхраняват началната стойност на техните съответни текущи регистри. По време на Автоинициализация тези стойности се използват за да възстановят текущите регистри към техните първоначални стойности. Процесорът, когато е в режим на програмиране, записва едновременно базовите регистри и техните съответни текущи регистри.

Регистър на режима – битовете 0 и 1 определят кой канал на регистъра да се записва в режим на програмиране от процесора, а останалите 6 бита са за следното: - вид на трансфера – за проверка (псевдотрансфер), за запис от I/O към паметта; за

четене от паметта към I/O; незаконен;- разрешаване/забраняване на автоинициализацията;

20 от 69

- инкрементиране или декрементиране на адресите;- вида на режима: изискващ трансфер (demand); единичен (single); блоков; каскаден

Освен регистрите на каналите, в DMA контролера участват и регистрите: Команден регистър- този 8-битов регистър управлява операциите в контролера. Той се

програмира в режима на програмиране и се нулира чрез Reset. Неговите битове в зависимост от това дали са 0 или 1 включват или изключват следните режими: трансфер памет към памет; задържане на адреса на канал 0; разрешаване на контролера; нормално или компресирано синхронизиране; фиксиран или редуващ се приоритет; записване със закъснение или разширено записване; чувствителност към ниско или високо логическо ниво на сигналите DREQ (DMA Request – заявка от периферното устройство на DMA услуга) и DACK (DMA Acknowledge – разрешение за ползване на DMA услуга). Сигналът Reset задава в начално положение DREQ да е с високо ниво, а DACK – с ниско.

Регистър на заявките (4-битов) – първите два бита са за номера на канала, а третия бит е за включен/изключен бит на заявката на канала. Този бит се управлява от софтуера, от сигнала TC или сигнала EOP.

Регистър на маската (4-битов) – всеки канал се свързва с бит на маската, който ако е 1 (включен) игнорира (маскира) входящия сигнал DREQ за канала.

Регистър на състоянието – съдържа информация за състоянието на всеки канал: дали е достигнал край на броенето (Terminal Count - TC) и дали за него има чакаща заявка за DMA услуга.

Временен регистър – държи данни по време на трансфери памет към памет. Следвайки завършването на трансфера последната дума, която е преместена, може да бъде прочетена от процесора в режим на програмиране. Този регистър винаги съдържа последния байт, който е трансфериран в предишната операция памет към памет, докато не се изтрие чрез Reset.

4.4.3 Описание на изводите и сигналите

фиг. 3. Разположение на изводите върху чипа 8237/8237-2VCC- захранване +5VVss - земя

21 от 69

CLK (Clock Input– тактов сигнал): Синхронизира вътрешните операции на DMA контролера и определя скоростта на трансферите на данни.

/CS2 (Chip Select – избиране на чипа): сигнал с ниско активно ниво, който избира контролера като входно-изходно устройство по време на празен цикъл. Това позволява комуникация с процесора по шината за данни.

Reset (Нулиране): Сигнал с високо активно ниво, който изчиства регистрите за командите, за състоянието, исканията и временния регистър. Той също изчиства първия/последния флип/флоп и настройва регистъра на маската. След Reset контролерът е в празен цикъл.

Ready (Готовност): входящ сигнал, използван да разтегли импулсите на четене и запис от контролера, за да се съгласуват бавните памети или входно/изходни устройства

DREQ0-DREQ3: асинхронен сигнал, използван от периферните устройства за поискване на услуга за директен достъп до паметта. За потвърждаване на разпознаването на DREQ сигнала се използва сигнала DACK.

DACK0- DACK 3 (DMA Acknowledge - потвърждаване на DMA): Използва се за да уведоми определено периферно устройство, когато е одобрено за DMA цикъл. Чувствителността към ниско или високо ниво на сигнала на тези линии е програмируема.

HRQ (Hold Request - заявка за задържане): Заявка към процесора, която се използва от DMA контролера за изискване на управлението на системната шина. Ако битът за маска е чист, наличието на всеки валиден DREQ кара 8237 да излъчи HRQ. След като HRQ стане активен, трябва да изтече поне един такт преди да стане активен HLDA.

HLDA (Hold Acknowledge – потвърждаване на задържането): сигнал от процесора, показващ че е отстъпил управлението на системните шини

DB0-DB7 (Data Bus Lines– линии на шината за данни): двупосочни линии със сигнали с три състояния, свързани към системната шина за данни. В режим на програмиране по време на I/O четене са разрешени изходни сигнали, за да се изпрати съдържанието на адресния регистър, регистъра на състоянието, временния регистър или регистъра за броя думи към процесора. По време на I/O цикъла за запис, когато процесорът програмира регистрите на контролера, са забранени изходните сигнали, а се четат входни сигнали. По време на DMA циклите най-старшите 8 бита от адреса са изходен сигнал върху шината за данни, който се стробира (селектира) към външна фиксация чрез сигнала ADSTB (Address Strobe). При операциите „памет към памет”, данните от паметта отиват към контролера 8237 върху шината за данни по време на трансфера четене от паметта. При трансфера „запис в паметта” изходните сигнали от шината за данни поставят данните в новото място на паметта.

/IOR (IO Read – четене на вход/изход): двупосочна линия с ниско активно ниво и три състояния3. В празния цикъл това е входящ управляващ сигнал, използван от CPU да чете

2 Знакът / пред някой от сигналите се чете като логическо НЕ и означава, че сигналът има ниско активно ниво. Синхросигналите, използвани за съгласуване на операциите на една или няколко цифрови схеми, имат формата на меандър и се колебаят между високо и ниско логическо ниво. Моментът на превключване на едно състояние в друго се нарича активно ниво. Ако схемата се превключва когато сигналът преминава от ниско във високо ниво, активното ниво е високо. Когато се превключва при преминаване на сигнала от високо в ниско ниво (по спадащия фронт на сигнала) - активното ниво е ниско.3 Логическата схема с 3 състояния (3-state) позволява на изходящите портове, в допълнение към фундаменталинте нива нула и единица да приемат състояние на висок импеданс (съпротивление), премахвайки на практика изходния сигнал от веригата. Схемата може да се разглежда като тригер, на чийто изход последователно е включен електрически ключ. Когато ключът е изключен, няма значение дали на изхода на тригера има 0 или 1, защото изходящата линия се прекъсва. Такива схеми позволяват множество схеми да се споделят една и съща изходяща линия (например шина).

22 от 69

управляващите регистри. В активния цикъл това е изходящ управляващ сигнал, използван от DMA контролера за достъп до данните от периферните устройства по време на DMA трансфера за запис.

/IOW (IO Write – запис на вход/изход): двупосочна линия с ниско активно ниво и три състояния. В празния цикъл това е входящ управляващ сигнал, използван от CPU за да зареди информация в контролера. В активния цикъл това е изходящ управляващ сигнал, използван от DMA контролера за запис на данните в периферните устройства по време на DMA трансфера за четене.

/EOP (End of Process – край на процес): двупосочен сигнал с ниско активно ниво. Може да бъде външен или вътрешен (когато е достигнат край на броенето – TC). Прекъсва DMA услугата, нулира DMA заявката и, ако е разрешено автоинициализиране, записва базовите регистри в текущите регистри на канала.

А0-А3 (младши адресни линии): 4 двупосочни адресни линии за сигнали с три състояния. В празен цикъл те са входящи и се използват от контролера да адресира управляващия регистър за зареждане или четене. В активен цикъл те са изходящи и осигуряват долните 4 бита на изходящия адрес.

A4-A7 (старши адресни линии): Тези 4 линии са само изходящи и са разрешени само по време на DMA услугата, като осигуряват старшите 4 бита от адреса.

AEN (Address Enable - разрешаване на адреса): Разрешава 8-битовото фиксиране, съдържащо горните 8 адресни бита върху системната адресна шина. AEN може да се използва също за да забрани другите драйвери на системната шина по време на DMA трансферите.

ADSTB (Address Strobe – стробиране4 на адреса): Използва се за да стробира горния байт на адреса към външна фиксация.

/MEMR (Memory Read- четене на паметта): изходящ сигнал с ниско активно ниво и три състояния, използван за да се получи достъп до данни (четене) от избраното място в паметта по време на DMA четене или трансфер “памет към памет”.

/MEMW (Memory Write – запис в паметта): изходящ сигнал с ниско активно ниво и три състояния, използван за да се записват данни в избрано място от паметта, по време на DMA запис или трансфер “памет към памет”.

4.4.4 РаботаПразен цикълКогато няма канал, изискващ DMA обслужване, контролерът 8237 влиза в празен цикъл

и изпълнява "SI" състояния. В този цикъл 8237 на всеки такт проверява DREQ линиите, за да определи дали някой канал не изисква DMA услуги. Също се проверява CS (избиране на чипа), търсейки опит от процесора да записва или чете вътрешните регистри на 8237.

Режим на програмиранеКогато CS е с ниско ниво и HRQ е с ниско ниво, 8237 влиза в режим на програмиране

(Program Condition). В този режим процесорът може да установява, променя или инспектира вътрешните дефиниции на контролера чрез четене или писане във вътрешните регистри. Адресните линии A0-A3 са входни за устройството и избират кои регистри ще се четат и записват. Използват се линиите /IOR и /IOW за да се избират и отмерват четенията и писанията. Поради броя и размера на вътрешните регистри, използва се вътрешен тригер

4 Строб, стробиращ сигнал, стробиращ импулс – управляващ сигнал, определящ със своето ниво момента на изпълнение на определени функции от микросхемата.

23 от 69

(флип-флоп), който генерира допълнителен бит на адреса. Този бит определя дали се работи със старшия или младшия байт на 16-битовите адресни и броячни регистри. Тригерът се нулира от Master Clear или Reset.

Активен цикълДадено устройство подава заявка за DMA обмен, като изпраща сигнал с високо

логическо ниво по съответната линия DREQ. Както и при обработката на прекъсванията, отделните канали са с определени приоритети и първо се обработва заявката с най-висок приоритет. DRQO има най-високия, a DRQ3 и съответно DRQ7 при компютрите АТ имат най-нисък приоритет.

Когато 8237 е в празен цикъл и някой канал поиска DMA обслужване, контролерът изпраща сигнал HRQ (Hold Request) към процесора. Когато процесорът отговори със сигнала HLDA (Hold Acknowledge – потвърждаване на задържането), контролерът поема управлението на адресната шина, шината за данни и управляващата шина и влиза в активен цикъл. В този режим системната шина се използва мултиплексно от DMA контролера и микропроцесора, при което основното управление се изпълнява от контролера на DMA, а микропроцесорът получава достъп до нея за кратки интервали от време за обмен на информация с основната памет.

В активен цикъл се извършва DMA услуга в един от четирите режима: изискващ трансфер; единичен трансфер; блоков; каскаден. При изискващия трансфер (Demand Transfer Mode) обменът се осъществява, докато не се снеме съответната заявка по линията DRЕQ или не се подаде ниско ниво на линията /ЕОР, докато не се получи препълване при DMA обмена или не се появи заявка с по-високо ниво. Така трансферите могат да продължават докато I/O устройството изчерпи капацитета си от данни. При единичния (Single) трансфер устройството прави само един трансфер. При блоковия трансфер устройството се активира чрез DREQ и прави трансфери в блок (например 512 байта), докато се подаде сигнал TC (Termimal Count – завършек на брояча), причинен от брояч на цикли, който е станал нула или външно приключване на процеса (EOP – End Of Process). Каскадния режим се използва при каскадно свързване на втори DMA контролер.

Адресът за първата операция по пренос на данни се появява в два байта – младшите 8 бита – по осемте адресни изходящи линии, а старшите 8 бита - по шината за данни. Съдържанието на шината за данни тогава се превключва към 8-битовия тригер 8282, за да довърши пълните пълните 16 бита на адресната шина. 8282 е високоскоростен, 8-битов, тригер с 3 състояния, в 20-изводен корпус. След началния трансфер, тригерът се актуализира само ако в младшия адресен байт се извърши пренос или заемане от старшия разряд.

Всеки от трите активни трансферни режима може да извършва три различни типа трансфери: четене (Read), записване (Write) и проверка (Verify).

Входният обмен (записването на данни от входно-изходното устройство в паметта) се осъществява по следния начин. Контролерът за DMA извежда адрес на адресната шина и активира линията /MEMW - запис в паметта, и линията /IOR - четене от периферни устройства. Със сигнала /DACK (DMA Acknowledge) тези операции се съобщават на периферното устройство, което може да запише данни на избрания адрес. След това адресният регистър се инкрементира, а броячът - декрементира.

Изходният обмен (четенето) се извършва аналогично, като се използват съответните линии за четене от паметта /MEMR и изход към периферните устройства /IOW.

24 от 69

Проверката прави псевдотрансфери, като работи както четенето или записването, но при неактивни линии на паметта и входно-изходните устройства.

За да не се интерпретира адресът, подаден от DMA контролера, от други периферни устройства като входно-изходен адрес, на линията AEN се подава високо ниво. Ето защо сигналът AEN задължително трябва да се включи при декодирането на всички входно-изходни адреси.

Съществува и един специален трансферен режим за преместване на блокове данни от едно адресно пространство на паметта в друго, наречен „памет към памет” (memory-to-memory). Включването на този режим става чрез програмиране на определен бит в управляващия (командния) регистър. При това се избират канали 0 и 1 да работят като канали за трансфера „памет към памет”. Трансферът започва чрез задаване от софтуера на сигнал DREQ за канал 0. Контролерът 8237 прави заявка за DMA обслужване по нормалния начин. След като HLDA е истина, контролерът използвайки трансфери с 8 състояния в блоков режим, чете данни от паметта. Каналът 0 на регистъра на текущия адрес е източникът за използвания адрес и се декрементира или инкрементира по нормалния начин. Байтът данни, прочетен от паметта, се съхранява във вътрешния временен регистър на контролера. След това каналът 1 записва данните от временния регистър в паметта, използвайки адреса в неговия регистър на текущия адрес, като го инкрементира или декрементира по обичайния начин. Декрементира се регистърът на текущия брой думи на канал 1. Когато броят думи на канал 1 стане нула, генерира се сигналът TC, причиняващ сигнал /EOP, прекратяващ услугата. Канал 0 може да бъде програмиран да задържи същия адрес за всички трансфери. Това позволява единична дума да бъде записана в блок на паметта. 8237 отговаря на външни /EOP сигнали по време на трансферите „памет към памет”. Компараторите на данни в схемите за търсене на блокове могат да използват тези входни сигнали, за да прекъснат услугата, когато е намерено съответствие.

25 от 69

5. АДРЕСИ НА ВХОДНО-ИЗХОДНИТЕ ПОРТОВЕ И АДРЕСИ НА ПАМЕТТА.

5.1 Същност на адресното пространство на входно-изходните портовеСистемата от входно-изходни адреси води началото си някъде от около 1980 г., но все

още се използва. За щастие, на потребителите много рядко се налага да се настройват адреси на портове, тъй като за това се грижи операционната система. Например, някои стари мрежови карти поддържат входно-изходни адреси, дефинирани от потребителя

Основното предназначение на входно-изходните портове e да се осъществява комуникация между устройствата и софтуера в системата. Те са еквивалентни на двупосочни радио канали. Ако искате да изпратите данни към вашия сериен порт, трябва да знаете на кой входно/изходен порт (радио канал) той очаква осъществяване на връзка. По подобен начин, ако искате да получите данни от серийния порт, трябва да се "настроите" на същия канал, на който той предава.

За разлика от прекъсванията и DMA каналите, нашите системи разполагат с изобилие от входно/изходни портове - 65535 (числата от 0000h до FFFFh5) - което е резултат от дизайна на процесорите на Intel. Въпреки че повечето устройства използват до 8 порта, с този солиден запас едва ли ще се свършат скоро. Най-големият проблем, за който трябва да се тревожите, е да не установите две устройства да използват един и същи порт.

Повечето модерни plug-and-play системи разрешават всякакви конфликти с препокриващи се портове и избират алтернативни портове за някое от конфликтните устройства.

Едно от големите обърквания се предизвиква от това, че входно/изходните портове са проектирани да използват шестнадесетични адреси, подобно на адресите от паметта. Само че те не са памет; те са портове. Разликата е, че когато изпращате данни към адрес от паметта 1000h, тези данни се съхраняват в SIMM или DIMM паметта. Ако изпратите данни към входно/изходен порт с адрес 1000h, те се изпращат по шината на този "канал" и всеки, който го слуша, ще "чуе"данните. Ако никой не слуша на порт с този адрес, данните достигат края на шината и се абсорбират от терминиращите резистори.

Това, което си взаимодейства с устройствата през най-различни адреси на портове, са драйверните програми. За да може един драйвер да работи с дадено устройство, той трябва да знае кои портове се използват от устройството. Това обикновено не е проблем, защото устройството и драйверът за него обикновено се доставят от една и съща компания.

Таблицата с входно-изходните адреси заема „най-долните" (първите) 64 КВ от опе-ративната памет на РС (от 0000h до FFFFh). Входно-изходните адреси спадат към специалния „първи мегабайт от RAM. Отделните входно-изходни адреси имат различна дължина - до 64 байта.

Драйверите за чипсетите и дънните платки обикновено се установяват така, че да използват адреси на входно/изходни портове от 0h до FFh. Всички останали устройства използват портове с адреси от 100h до FFFFh.

5 Символът h в десния край на числото означава, че числото е в 16-чна бройна система (hexadecimal)26 от

69

5.2 Разлики между адресното пространство на входно-изходните портове и основната оперативна памет.

Макар начинът за достъп до това адресно пространство да се извършва по същите адресни линии (шини), като за паметта, то съществено се различава от паметта:

На първо място пространството на I/O портовете е много по-малко. За адресирането им са достатъчни само 16-те младши разряда на адресната шини, което значи, че максималният размер на това пространство може да бъде 64 КВ (216 = 65 536).

Друго отличие на пространството на I/O портовете е, че достъпът до него не е затруднен от селекторните и странични механизми за адресация, имащи място при адресацията на основната памет. За адрес на порта е достатъчно едно 16-разрядно число (4 цифри в шестнадесетичен код). Това число може да бъде зададено в кой да е регистър с общо предназначение.

Най-същественото отличие на I/O портовете от основната памет се заключава в по нататъшната съдба на данните, които се изпращат към или от портовете. Данните, изпратени към даден порт, не се съхраняват в него, както това става в конвенционалната памет. Тези данни се пренасят към някое устройство, свързано с този порт. Ако се извършва четене от даден порт, то при всяко обръщение към него ще се получават различни данни и то при положение, че в този момент данни се подават към порта от друго устройство. При това, съвпадението на последователността на предаването и приемането на данните не е гарантирано.

5.3 Механизъм на използване на входно-изходните портовеИ така, когато искате да изпратите информация към вашата мрежова карта, вие я

изпращате към един или повече входно-изходни портове, които се намират в определена зона в оперативната памет (фиг 1). И мрежовата карта е готова да черпи информация точно от това място веднага щом получи сигнал от контролера за прекъсвания.

фиг. 1. Запазен в паметта вход-изход

РС адресира (има достъп до) всеки байт от оперативната памет. Същото адресиране се използва във входно-изходните портове. Всеки адаптер притежава специфичен RAM адрес - малка част от оперативната памет, която е свързана с входно-изходното устройство. Оттам

27 от 69

нататък целият информационен обмен към и от устройството преминава през тази „пощенска кутия”. Всички входно-изходни устройства притежават специфични „номера на пощенска кутия” - с други думи адрес на порт..

Във Windows XP входно-изходните адреси могат да се видят в Device Manager (дивайс мениджър – администратор на устройствата) чрез избиране на меню View>Resources by type или Resources by connection (фиг. 2):

фиг. 2. Входно-изходни адреси от оперативната памет на РС

28 от 69

6. СИСТЕМЕН ТАЙМЕР. БЛОКОВА СХЕМА. ОСНОВНИ ФУНКЦИИ В PC СИСТЕМАТА.

6.1 Предназначение на системния таймер в състава на ПК.Освен часовника за реално време, всеки компютър съдържа устройство, наречено

системен таймер, на англ. PIT - съкращение от Programmable Interval Timer. При оригиналните модели PC схемата се използва за системен часовник, генератор на

звук и за коректно протичане на процеса за опресняване на динамичната памет RAM.

6.2 Кратка историческа справка.На първите компютри се е използвала микросхема Intel 8253. В PC с процесор 286 или

по-добър се вгражда схемата 8254, която може да работи с честоти до 10 MHz, но е напълно съвместима със схемата 8253, която работи с честоти до 2,6 MHz. По отношение на вътрешната си структура 8253 и 8254 са идентични. 8254 за разлика от предшественика си разполага и с допълнителна команда (Read Back Command), чрез която е възможно да се прочете актуалното състояние на схемата. Това се оказва особено практично, както ще бъде пояснено по-нататък. Рядко в АТ се вграждат две схеми 8284. В тези случаи първата схема работи както в компютрите PC. От втората схема се използва само един брояч за програмиране на немаскируемото прекъсване (NMI), а двата останали брояча не се използват.

По-късно таймерът, заедно с други компоненти влиза в състава на чипсета, напр. в PIIX4.

Наред с използването в по-старите дънни платки таймерът 8253/54 може да се намери в редица разширителни карти на PC, особено в карти за измервателни системи (карти АЦП – аналогово-цифрово преобразуване, ЦАП цифрово-аналогово преобразуване, таймери), и се смята за стандартна схема за реализиране на функции, свързани с броене и измерване на време.

6.3 Блокова схема и принцип на работаМикросхемите 8253 и 8254 представляват триканални програмируеми броячи-таймери.

Вътрешните броячи на микросхемите имат разрядност 16 бита, но връзката с тях е 8-битова. При това може да се задава стойност само на младшия байт на брояча (LSB), само на старшия (MSB) или двата (LSB/MSB), при което отначало се предава младшия, а след това старшия байт.

Схемата на PIT включва три независими един от друг 16-битови броячи (канала), всеки от които има различно предназначение и може да се програмира в един от шестте възможни режима. Броячите разполагат със собствени тактови CLOCK и управляващи (разрешаващи) GATE входове и съответни изходи (OUT).

Входната честота на всички канали е 1,19318 MHz. Таймерът е включен към линия на прекъсване IRQ0 и изработва прекъсване INT 8h приблизительно 18,2 пъти в секунда (точната стойност е 1193180/65536).

На фиг. 1 е показана вътрешната структура на схемата.

29 от 69

фиг .1 Програмируемият таймер разполага с 3 независими брояча

Броячът 0 се използва за подаване на прекъсване от таймера (IRQ 0), което е необходимо за софтуерния часовник на PC 8088/8086.

Броячът 1 управлява опресняването на динамичната RAM памет, като подава стробиращ сигнал на брояча 0 на всеки 15 микросекунди.

Броячът 2 се използва за генериране на звук от вградения говорител и за разлика от останалите два брояча може да поема и други задачи, напр. генератор на случайни числа.

За всеки таймер се запазват 4 порта. В табл. 1 е показано разпределението на портовете за основния таймер.

Функция Приложение Входно-изходен адрес (порт)Брояч 0 Подаване на прекъсване IRQ 0 40hБрояч 1 Управление опресняването на

динамичната RAM памет41h

Брояч 2 Генериране на звук 42hУправляващ регистър

Избор на брояч и управление на режима 43h

Табл .1 Функции и адреси на таймера

Всеки брояч (канал) съдържа регистрите: RS - състояние на канала (8 разряда). RSW – управляваща дума (8 разряда) – Служи за задаване режима на работа на

брояча.

30 от 69

OL – буферен регистър (16 разряда) – Служи за запомняне на текущото съдържание на регистъра CE без спиране на процеса на броене. След запомняне буферният регистър е достъпен за програмата за четене.

CE – регистър на брояча (16 разряда) – Работи в режим на изваждане, като неговото съдържание се намалява при задния фронт на сигнала CLOCK.

CR - регистър на константите на преброяването

Резултатите от броенето се записват на първите 3 адреса. За адресиране се използват линиите АО и А1. Четене или запис се задават чрез линиите /WR и /RD.

Схемата се активира с ниско ниво на сигнала /CS. Този сигнал се генерира от схема за декодиране на адресите.

Линиите за данни DO - D8 са свързани директно към шината за данни, защото буферът за данни (Data Bus Buffer) може да се включва във високоомно състояние (Tri-State) чрез сигнала /CS. Чрез съответния разрешаващ вход (GATE) броячът може да се стартира, да се спре или да се установи в начално състояние. Тактът се подава на входа CLK. Състоянието 0 на брояча може да се определи по изхода (OUT).

Чрез управляващия регистър (Control Word Register) се определят режимът на работа и активният брояч, както и начинът за запис и четене на съдържанието на броячите и форматът за преброяване (двоичен или BCD -двоично-десетичен6), с който трябва да работят. На фиг. 2 е показана организацията на регистрите на управляващия регистър и режимите, в зависимост от стойностите на клетките.

D7 D6 D5 D4 D3 D2 D1 D0SC1 SC0 RL1 RL0 M2 M1 M0 BCD

стойност на BCD режим на брояча0 двоично-десетичен (BCD) брояч – числа до 99991 двоичен брояч – числа до 65536

M2 M1 M0 Режим на брояча0 0 0 Режим 0 – Прекъсване IRQ 0 при достигане на нула от брояча0 0 1 Режим 1 – Чакащ мултивибраторх 1 0 Режим 2 - Генератор на импулси. Каналът изпълнява функция

на програмируем делител на входната честотах 1 1 Режим 3 – Генератор на правоъгълни импулси – тип

„меандър” (основен режим) – използва се в канали 0 и 21 0 0 Режим 4 – Програмно стартиран моновибратор (софтуерно

управляван стробиращ импулс)1 0 1 Режим 5 – Апаратно стартиран моновибратор (хардуерно

управляван стробиращ импулс)

RL1 RL0 Функция0 0 Съхраняване състоянието на брояча

6 Същността на двоично-десетичния код е, че десетичните цифри от 0 до 9 се представят като четирицифрени двоични числа. Това позволява пакетиране на две цифри в един байт вместо 1 байт за цифра.

31 от 69

0 1 Четене/запис на старшия бит1 0 Четене/запис на младшия бит1 1 Четене/запис първо на младшия, а после на старшия бит

SC1 SC0 Задаване на активен брояч0 0 Брояч 00 1 Брояч 11 0 Брояч 21 1 Забранено

фиг. 2 Управляващ регистър

Контролни въпроси: 1. Предназначение на системния таймер в състава на ПК.2. Начертайте структурна схема на таймера3. Обяснете предназначението на каналите на таймера.4. На какъв минимален и максимален интервал време може да се програмира каналът на

таймера и защо?5. Избройте режимите на работа на канала на таймера.6. Кои портове се използват за програмиране на таймера? 7. Какви са особеностите на достъпа през 8-разрядните портове към 16-разрядните

регистри?

32 от 69

7. ROM-BIOS НА ДЪННАТА ПЛАТКА. СТРУКТУРА НА BIOS. СОФТУЕРНИ ПРЕКЪСВАНИЯ НА BIOS.

FLASH ROM BIOS7.1 Същност и предназначение на BIOS. Основни функции.

BIOS е термин, който е съкращение на понятието Basic Input/Output System (базова входно/изходна система). BIOS-ът описва всички драйвери в една система, които работят заедно и оформят същинската връзка между хардуера и софтуера в тази система. Този сбор от програми е първото нещо, което се зарежда, когато включите системата - дори операционната система се зарежда след тях.

BIOS-ът в едно PC е разпределен между три вероятни източника: ROM на дънната платка ROM на адаптерни карти (например като този, намиращ се на една видеокарта) Драйвери на устройства, заредени в RAM паметта от диск

Собствен BIOS обикновено имат следните разширителни платки: видеокарти, SCSI адаптери, мрежови карти, карти за надграждане на IDE или на флопидисковия контролер, Y2K карти (карти, които включват поправки за BIOS-и с цел решаване на проблем 2000 година).

Частта, която се съдържа в ROM чиповете както на дънната платка, така и на някои адаптерни карти, понякога се нарича фьрмуер (firmware) - име, давано на софтуера, който се съхранява в чипове, а не на диска, Това кара някои хора да мислят погрешно, че BIOS е хардуерен компонент.

Една PC система може да се опише като поредица от слоеве - някои хардуерни, други софтуерни - които взаимодействат помежду си. В най-елементарния смисъл, едно PC може да се раздели на четири основни слоя, като всеки от тях може да се разделя допълнително на подслоеве. Фигура 1 показва четирите слоя в едно типично PC: хардуер, BIOS, операционна система и приложни програми. Връзката (интерфейсът) между слоевете условно е показана като назъбена линия, подобно на връзката между елементите на пъзел.

фиг .1 Слоевете на една РС система.

Целта на разделянето на слоеве е да позволи на една и съща операционна система и приложения да работят с различен хардуер. Фигура 1 показва как две различни машини с различен хардуер (различни процесори, запаметяващи устройства, видеокарти и т.н.) могат да използват специално разработени за тях BIOS-и, за да осъществяват връзката между различния хардуер и еднакви операционна система и приложения. Вижда се, че назъбената линия (връзката) между хардуера и BIOS-а е различна за различните системи, т.е. за всеки хардуер

33 от 69

има специфичен BIOS. С други думи не съществува универсален BIOS. От друга страна, какъвто и да е BIOS-а, той винаги има еднаква връзка с определена операционна система, която условно е показана с еднаква назъбена линия.

В тази архитектура със слоеве приложенията общуват с операционната система посредством така наречения приложен програмен интерфейс (Application Program Interface - API). API интерфейсът варира според използваната операционна система и се състои от най-различни команди и функции, които операционната система може да изпълнява в отговор на заявка от дадено приложение. Например едно приложение може да поиска от операционната система да зареди или да запише файл. Тези операции се осигуряват от операционната система, а самото приложение не е необходимо да знае как да чете от диска или да записва на диска, как да изпраща данни към принтер или да изпълнява каквито и да било други функции, осигурени от системата. Благодарение на API връзката между еднакви операционни системи и еднакви приложения е една и съща, независимо от това на какъв компютър са инсталирани.

След това операционната система се свързва със слоя на BIOS-а. BIOS-ът се състои от всички отделни драйверни програми, които осъществяват връзката между операционната система и същинския хардуер. Ето защо операционната система никога не взаимодейства директно с хардуера; вместо това тя винаги трябва да се обръща към подходящия драйвер. Това осигурява еднотипен начин за достъп до хардуера. Отговорността за осигуряването на драйвер за даден хардуер обикновено е на неговия производител. Тъй като драйверите трябва да си взаимодействат както с хардуера, така и с операционната система, те са специфични за всяка операционна система. Ето защо производителят често пъти трябва да осигурява за един и същ хардуер различни драйвери, за да може неговият продукт да работи под DOS, Windows 9x, Windows NT, Windows 2000, Windows XP, Windows Vista, OS/2, Linux и т.н. Тъй като много операционни системи използват еднакви вътрешни интерфейси, някои драйвери могат да работят под множество операционни системи. Например драйвер, работещ под Windows Me, често пъти работи и под Windows 95 и 98, а драйвер, работещ под Windows XP, често пъти работи и под Windows 2000 и NT. Това е така, защото Windows 95, 98 и Ме по същество са вариации на една и съща операционна система, което важи също за Windows NT, 2000 и XP.

Тъй като слоят с BIOS-а изглежда по един и същ начин за операционната система независимо от хардуера, който стои в основата (или който се намира отдолу), една и съща операционна система може да работи на най-различни PC-та. Например, можете да работите под Windows XP на две системи с различни процесори, твърди дискове, видеоадаптери, и т.н., но самият Windows XP ще се държи и ще изглежда абсолютно еднакво и на двете системи.

Както може да се види от фиг. 1, слоевете на приложните програми и операционната система могат да бъдат идентични на различните системи, докато хардуерът може да се различава радикално. Тъй като BIOS-ът се състои от софтуерни драйвери, които действат като мост между хардуера и софтуера, от едната страна слоят на BlOS-a се адаптира към уникалния хардуер, а от другата изглежда по абсолютно еднакъв начин за операционната система. Това е същото като комплект инструменти, които се закрепват към универсален държач. От едната страна инструментът е със специфична форма и размери, за да може да отвинти определена гайка или винт със съответните форма и размери, а от другата страна е с уеднаквен накрайник, чрез който се присъединява към държача.

BIOS-ът в повечето PC-та има четири основни функции: POST (power on self test) - самотестване при включване на захранването Setup (настройка). Програма за конфигуриране и настройване на системата.

34 от 69

Bootstrap loader (програма за първоначално зареждане). Програма, която чете дисковите устройства, търсейки валиден главен запис за зареждане (master boot record). Ако се открие такъв, кодът в него се изпълнява. След това тази програма от главния запис за зареждане продължава процеса, зареждайки в паметта сектора за зареждане на операционната система, който пък след това зарежда основните файлове на операционната система.

BIOS (basic input/output system - базова система за вход/изход). Това наименование се отнася до сбора от действителните драйвери, които се използват като интерфейс между операционната система и хардуера, когато системата се зареди и заработи. Когато се изпълнява DOS или Windows в сигурен режим (safe mode), системата използва само ROM-базираните драйвери на BIOS-а, защото от диска не се зареждат никакви.

7.2 Структура на BIOS. Софтуерни прекъсвания на BIOS.BIOS се състои от отделни програмни модули (функции), достъпът до които се

осъществява не чрез отделен адрес в паметта, а чрез софтуерни прекъсвания. Това се прави от съображения за съвместимост. Адресите за тези софтуерни прекъсвания се зареждат като таблица с векторите на прекъсванията (Interrupt Vector Table) в RAM паметта на PC в областта 0000h - 03FFh при зареждането на операционната система. Предаването на данни към програмата за обслужване на прекъсванията в BIOS се реализира чрез регистрите на процесора. В следващата таблица са дадени някои прекъсвания на BIOS.

Табл. 1 Софтуерни прекъсвания на BIOS

Прекъсване на BIOS

Функция

INT 00h Грешка при делениеINT 01h Стъпков режимINT 02h Немаскируемо прекъсванеINT 03h Точка на прекъсване (Breakpoint)lNT 04h Препълване на CPUINT 05h Отпечатване на екрана (Print Screen)INT 06h Невалиден код на операцияINT 07h За CPUINT 08h IRQ0, системен таймерINT 09h IRQ 1, наличие на данни от клавиатуратаINT 0Ah IRQ2, принтер2, IRQ 9INT 0Bh IRQ3, COM2INT 0Ch IRQ4, COM 1INT 0Dh IRQ 5, твърд дискINT 0Eh IRQ6. флопидисково устройствоINT 0Fh IRQ7, принтер IINT 10h Графична картаINT 11h Тест на системната конфигурацияINT 12h Размер на паметтаINT 13h Флопидиск / твърд дискINT 14h Сериен интерфейсINT I5h Разни, системен сервизINT 16h КлавиатураINT 17h ПринтерINT 18h Грешка при зареждане на операционната INT 19h Първична зареждаща програма (Bootstrap)

35 от 69

INT lAh Часовник за реално време с календар, PCI-INT20h-FFh Прекъсвания на DOS и на драйверите

7.3 Кои софтуерни прекъсвания се активират при стартиране на PC системата?След включване на PC или след (едновременно) натискане на бутоните Ctrl, Alt и Del се

инициализира хардуерът и се извършва самотест. За целта се отива на адрес FFFF0h - стартовия адрес за процесора в BIOS-ROM. Процедурата на самотест се означава като Power On Self Test - накратко POST, и при нея се извърша проверка на работата на отделните компоненти на PC.

По време на инициализирането в RAM на PC се зарежда таблицата с вектори на прекъсванията.

В областта 00000h – 000C3h са прекъсванията с общо предназначение, например под адрес 00014h се намира векторът на прекъсването за функцията Print Screen. От адрес 00020h ce намират прекъсванията, които се отнасят за хардуерните компоненти (IRQ0 - IRQ7). Така например прекъсването IRQ7 за първия паралелен интерфейс (прекъсване OFh) ce намира на адрес 003Ch.

Векторите на прекъсванията на BIOS се намират от адрес 00040h до адрес 0007Fh. Най-важно е прекъсването на BIOS за първичната зареждаща програма (прекъсване 19h). Векторът на прекъсването се намира на адрес 00064h. Чрез извикване на това прекъсване се предприема опит за зареждане на операционната система от дискета или твърд диск.

Наред с векторите за прекъсвания на BIOS има и вектори за прекъсвания на DOS, които се зареждат и използват също като векторите на BIOS. Към векторите на прекъсванията на DOS (00080h - 000FFh) ce отнася например обръщението за прекратяване на DOS програма (прекъсване 20h) - на адрес 00080h.

Към прекъсванията с общо предназначение се отнасят и това за вида на дискетата (адрес 00100h5 прекъсване 40h), и хардуерните прекъсвания (IRQ8 - IRQ 15), както и от адрес 00lC0h - прекъсване 70h за часовника за реално време и CMOS RAM.

7.4 Връзката между ROM и RAM паметПаметта само за четене (read-only memory - ROM) е вид памет, която може да съдържа

данни постоянно или полупостоянно. Нарича се само за четене, защото е невъзможно или трудно да се пише в нея. ROM паметта често се нарича енергонезависима (nonvolatile), защото съхранените в нея данни се запазват дори след изключване на захранването. Ето защо ROM паметта е идеална за записване на инструкциите за стартиране на PC-то - т.е. софтуерът, който зарежда системата (BIOS-ът).

Забележете, че ROM и RAM не са противоположни понятия, както си мислят някои хо-ра. На практика ROM паметта е подмножество на системната RAM памет. С други думи, част от адресното пространство на паметта с произволен достъп е заделено за един или повече ROM чипове. Това се налага, за да може софтуерът за зареждане на системата да е директно достъпен. В противен случай процесорът няма да разполага с никаква програма в паметта, която да изпълни след подаването на захранване.

Например, след като се включи захранването на едно PC, процесорът автоматично ска-ча на адрес FFFF0h и очаква да намери инструкции, които да му кажат какво да прави. Това местоположение е точно 16 байта преди края на адресното пространство на самия ROM, който съвпада с края на първия мегабайт от адресното пространство на RAM паметта. Чрез

36 от 69

поставяне на ROM чип на тези адреси програмата за стартиране на системата ще бъде заредена постоянно и ще бъде налична след всяко включване на захранването.

Обикновено системният ROM започва на адрес E0000h, който е 128 КВ преди края на първия мегабайт или на адрес F0000h, който е 64 КВ преди края на първия мегабайт.

Тъй като BIOS-ът е основната част от кода, съхранен в ROM паметта, ние често нари-чаме самия чип ROM BIOS. При по-старите PC-та ROM BIOS-ът на дънната платка може да се състои от общо пет или шест чипа, но на повечето PC-та им е необходим само един чип.

ROM паметта на адаптерните карти, които могат да бъдат видеокарти, SCSI контроле-ри, IDE контролери и мрежови карти за бездискови работни станции, се сканира и чете автоматично от ROM-a на дънната платка в ранния етап на процеса на зареждане - поточно по време на POST процедурата. ROM-ът на дънната платка сканира специална област от RAM паметта, запазена за ROM-ове на адаптерни карти (адреси С0000h-DFFFFh), търсейки двойката сигнатурни байтове 55AAh, указващи началото на ROM.

BIOS-ът на дънната платка автоматично изпълнява програмите във всички адаптерни ROM-ове, които намери по време на сканирането. Можете да видите това при повечето системи; когато включите една система, по време на POST процедурата на екрана се появява текст, който е част от инициализацията на BIOS-а на видеото.

7.5 Видове ROM памет и техните характеристикиВсички дънни платки трябва да притежават специален чип (в по-старите системи

няколко чипа), който съдържа софтуер, наречен ROM BIOS. Този ROM чип съдържа стартиращи програми и драйвери, които карат системата да работи и действат като интерфейс към основните й хардуерни компоненти. Чиповете ROM памет могат да бъдат следните 4 типа: истински (масков) ROM; PROM; EPROM; EEPROM, наричана също флаш ROM.

ROM (истински, или масков ROM) - силициев чип, на който данните са записани чрез фотолитографски процес с помощта на маска. Поради липса на гъвкавост отдавна не се използват.

PROM паметта е вид ROM памет, която при производството е празна (всъщност е заредена само с единици) и трябва да се програмира с необходимите данни. Използва се програматор, който прогаря нулите в чипа. Процесът на програмиране е необратим.

EPROM - Една от вариациите на PROM, популярна в миналото, при която паметта може да се изтрива чрез ултравиолетова светлина, през специално кварцово прозорче. Кварцовото прозорче на EPROM чиповете обикновено е покрито от непрозрачна лепенка, която предпазва кристала на чипа от непреднамерено излагане на ултравиолетова светлина.

фиг .2 EPROM чип с кварцово прозорче.

37 от 69

EEPROM (Electrically Erasable Programmable Read Only Memory – електрически изтриваема програмируема памет само за четене) или флаш ROM чиповете могат да бъдат идентифицирани по техните 28хххх и 29хххх номера, както и по липсата на прозорче върху корпуса. Характеризират се със способността си да се изтриват и препрограмират директно на платката, върху която са инсталирани, без да се изисква никакво специално оборудване. Използвайки EEPROM, или флаш ROM, можете да изтриете и препрограмирате ROM паметта на дънната платка в едно PC, без да вадите чипа от системата - дори не е необходимо да махате капака на кутията! Необходима е само специална програма, осигурена от Web сайта на производителя на дънната платка, чрез която се създава зареждаема дискета с изображението на новия BIOS и програмата за обновяване.

При EEPROM и флаш се използва на практика една и съща технология. Допълнителната декодираща логика, която позволява съдържанието да се изменя по блокове, а не изцяло (както е например при EPROM), логиката за програмиране и "зарядни помпи" за генериране на напреженията за програмиране са реализирани в паметите EEPROM само отчасти, докато във флаш-паметите са вградени изцяло. Ето защо при използване на EEPROM е необходима и допълнителна логика, която е реализирана на дънната платка, докато паметите флаш не се нуждаят от нея. От 1994 година насам на практика всяка дънна платка за PC използва флаш ROM или EEPROM.

7.6 Производители на ROM BIOSДнес на пазара съществуват няколко популярни производители на BIOS-и, които из-

вършват доставки на код за ROM-овете на повечето производители на дънни платки и системи.

Няколко компании са се специализирали в разработването на съвместими ROM BIOS продукти. Трите основни компании, които изникват в мислите при обсъждането на ROM BIOS софтуер, са American Megatrends, Inc. (AMI), Phoenix Technologies и Award Software (от 1998 г. притежание на Phoenix Technologies). Всяка компания дава лиценз за своя ROM BIOS на производителите на дънни платки, така че тези производители могат да се съсредоточат върху хардуера, за сметка на софтуера. За да получи някой от тези ROM-ове за дадена дънна платка, производителят на оригинално оборудване (original equipment manufacturer - OEM) трябва да отговори на много въпроси относно дизайна на системата, така че да може или да се разработи подходящ BIOS, или да се избере такъв от вече разработените. Комбинирането на ROM BIOS и дънна платка не става по случайност. Също така не съществува универсален BIOS, който да е съвместим с всяко дъно. AMI, Award, Microid Research (MR BIOS) и Phoenix доставят най-различни вариации на техния BIOS код на различните производители на дъна, като всяка вариация е специално преработена за специфичната дънна платка.

Въпреки че Phoenix продължават да продават Award BIOS като отделна продуктова ли-ния, трите големи разработчици на BIOS-и сега са сведени само до два - Phoenix и AMI. Много от офшорните производители на дънни платки използват или AMI, или Award BIOS. Phoenix не само разработват BIOS-и за много системи, но са и главният разработчик на BIOS-и, отговорен за нови BIOS разработки и нови BIOS стандарти.

През различни периоди от развитието на РС системите, BIOS индустрията претърпява няколко основни промени, в зависимост от това кой BIOS, на Phoenix или AMI, се използва за съответния период от Intel. Това е от значение, защото Intel продават около 80% от дънните

38 от 69

платки за PC. При всички тези случаи Intel взимат само ядрото на BIOS-а от Phoenix или AMI, след което го преправят значително за конкретните дънни платки.

Друга особеност в развитието на BIOS индустрията през последните години е създаването на отделни BIOS продукти за 32-битови и 64-битови настолни системи, мобилни системи, 32-битови и 64-битови сървъри и вградени устройства. Въпреки че всички BIOS чипове трябва да изпълняват по принцип еднакви задачи, BIOS продуктът, оптимизиран за мобилен компютър, често се нуждае от допълнителна поддръжка за характеристики като стиковъчни модули, разширена поддръжка за управление енергията на батерията, зареждаеми USB, отстраняеми флаш памети и др., докато BIOS, оптимизиран за сървъри, трябва да поддържа характеристики като развит мониторинг на хардуера и 64-битови PCI слотове. Чрез създаване на приспособени BIOS версии за различни платформи, BIOS доставчиците осигуряват поддръжка на характеристики, необходими за специфичната платформа и осигуряващи най-добра производителност и стабилност.

Макар че повечето ползват разработки на AMI и Phoenix, много от OEM производителите (OEM - original equipment manufacturer - производител на оригинално оборудване) разработват независимо свои собствени съвместими ROM-ове. Компании като Compaq, AT&T и Acer разработват свои собствени BIOS продукти, сравними с предлаганите от AMI, Phoenix, Award и други. Тези компании също така предлагат надграждане до по-нови версии, които често могат да осигурят повече възможности и подобрения, или да отстраняват проблеми при по-стари версии. BIOS-ите на повечето OEM производители се пишат от независима компания. Например Hewlett-Packard имат договор с Phoenix за разработка на BIOS-и за дънните платки, използвани за някои PC-та с марка HP.

7.7 Работа с флаш ROMПри използване на флаш ROM, макар и рядко, се налага да се извършват следните

основни дейности: конфигуриране и настройване на системата; нулиране на настройките, в частност на паролата за достъп до BIOS или цялата

система; обновяване (upgrade) на BIOS; откриване на грешки в хардуера по време на POST процедурата;

7.7.1 Конфигуриране и настройване на систематаКакто беше посочено по-горе, една от функциите на BIOS е програмата за

конфигуриране и настройване на системата, наречена BIOS Setup. Това е програма с менюта, от които се избират съответните опции (възможности). Настройките, зададени от тази програма, се съхраняват в специален чип, наречен RTC/NVRAM, което означава real-time clock/nonvolatile RAM (часовник за реално време/енергонезависима RAM памет). Този чип често се нарича CMOS-RAM, тъй като се изработва по CMOS технология (CMOS - complementary metal-oxide semiconductor – допълващ се метало-оксиден полупроводник). CMOS чиповете имат изключително малка консумация, така че за поддръжката им е достатъчна батерия, която може да издържи няколко години. Всеки път, когато компютърната система се зарежда, тя прочита съхранените в CMOS RAM чипа параметри, за да разбере как трябва да се конфигурира. С други думи, съществува връзка между BlOS-a и CMOS RAM паметта, но това са две коренно различни части от системата.

39 от 69

Обикновено в документацията на дънната платка е описано как се стартира и какви са възможните настройки на BIOS Setup за инсталирания BIOS.

7.7.2 Нулиране на настройките на BIOS-SetupПонякога, когато потребителят е забравил паролата за BIOS или PC не се стартира

коректно поради грешно конфигуриран BIOS-Setup, се налага изчистване (нулиране) на паметта на RTC/NVRAM чипа. Най-често употребяваните начини за това са чрез преместване на специален джъмпер (мостче) за 1-2 минути или чрез изваждане за няколко минути на литиевата батерийка от гнездото й.

По-подробно за конфигурирането на системата чрез BIOS Setup и за нулирането на RTC/NVRAM чипа може да се прочете в главата RTC/CMOS-RAM.

7.7.3 Обновяване (надграждане) на флаш BIOS. Макар че обновяването на BIOS не е особено сложна процедура, то крие доста голям

риск, тъй като системата може да стане неработоспособна, и затова се препоръчва да се извършва само, когато действително има нужда, и то от квалифициран специалист.

Най-честите причини, налагащи надграждане (upgrade) на BIOS, са някакви грешки в текущо инсталирания BIOS или допълнително инсталиране на хардуер, който не се поддържа от този BIOS: добавяне на поддръжка за процесори от по-нов тип и с по-висока скорост; добавяне на поддръжка на АТА твърди дискове с капацитет по-голям от 8.4GB или 137GB

(48-bit LBA); поддръжка на нови стандарти за твърди дискове: например Ultra-DMA/100, Ultra-DMA/133

ATA, Serial ATA (SATA) поддръжка на зареждаеми (bootable) ATAPI CD-ROM устройства (спецификация El Torito) поддръжка на зареждаеми устройства LS-120 (120MB) или Iomega Zip; поддръжка на зареждаеми USB устройства; бърз POST за намаляване времето за зареждане; Plug and Play (PnP) поддръжка и съвместимост; поправка на проблеми, свързани с календара и високосните години; поправка на проблеми, свързани с определен хардуер или софтуер; поддръжка на ACPI управление на захранването (енергоспестяващи функции) поддръжка на наблюдение и управление на температурата и скоростта на вентилаторите. поддръжка на USB клавиатура и мишка; поддръжка на откриване на непозволено отваряне на кутията;

Основните стъпки за надграждане на флаш BIOS накратко са следните: определяне на версията и датата на настоящия BIOS; получаване на информация за дънната платка и процесора; записване на CMOS настройките на настоящия BIOS, особено параметрите на твърдия

диск (записване на ръка; отпечатване на принтер чрез Shift+Prtsc; снимки на екраните с цифров фотоапарат);

сваляне на инсталационен пакет на новата версия на BIOS от сайта на производителя на дънната платка върху твърдия диск;

използване на свалената инсталационна програма за създаване на зареждаема дискета с образа на новия BIOS и обслужваща програма за извършване на надграждането;

40 от 69

отстраняване защитата срещу запис на флаш ROM чипа посредством съответния джъмпер или превключвател на дънната платка; тази защита обикновено е включена, тъй като без нея всяка програма, която знае верните инструкции, може да презапише ROM паметта във вашата система - твърде неприятна ситуация. Без защитата от запис вирусните програми могат да бъдат написани така, че да се копират директно в ROM BIOS кода на вашата система.

съхраняване на настоящия BIOS посредством обслужващата програма; инсталиране на новия BIOS; при това трябва да се вземат мерки захранването да не

прекъсне по време на инсталацията (например чрез UPS); не е желателно инсталирането да става под Windows;

настройка на новия BIOS, отначало с настройките по подразбиране, а след това с потребителските настройки;

7.7.4 Откриване на грешки в хардуера по време на POST процедурата Когато се стартира компютъра, той автоматично изпълнява серия тестове, които

проверяват основни компоненти в системата като CPU, ROM, дънната платка, паметта и основни периферни устройства като разширителните слотове. Тези тестове са кратки и са проектирани да прихванат твърдите (които не са периодични) грешки.

Ако POST открие проблем, той осигурява предупреждаващо съобщение или съобщение за грешка. Ако проблемът е толкова тежък, че системата не би работила правилно, POST спира процеса на зареждане на системата и генерира съобщение за грешка, което често идентифицира и причината за проблема. Такива проблеми се наричат понякога фатални грешки (fatal errors).

Грешките се показват по 3 начина: аудио кодове - серия къси и дълги бипкания на говорителчето, присъединено към

дънната платка; използват се за фатални грешки в ранния стадий на тестване, когато видеокартата и други устройства още не са функционални.

шестнадесетични контролни кодове – изпращат се към I/O порт адрес 80h. За да се видят е необходима специална карта, присъединена към ISA или PCI слот.

текстови съобщения на екрана – показват се след инициализация на видео адаптера.

BIOS от различните производители имат различни кодове и съобщения. Описание на аудио кодовете, шестнадесетичните кодове и текстовите съобщения за конкретна система, могат да се видят в литературата (например, „Компютърна енциклопедия” т. 3, с автор Скот Мюлер) или на сайта на производителя на BIOS.

На някои PC POST също показва на монитора резултатите от теста на системната памет - виждат се бързосменящи се числа, като последното показва количеството памет, което е тествано успешно. Например системата може да покаже следното съобщение:

32768 KB OK

41 от 69

8. RTC/CMOS-RAM (REAL TIME CLOCK/CMOS-RAM). КОНФИГУРИРАНЕ НА PC СИСТЕМАТА ПРИ IBM

PC/XT, IBM PC/АT-80286, 80386, 80486, PENTIUM. ПРОГРАМАТА BIOS-SETUP.

8.1 RTC/CMOS-RAMПървоначалният IBM-PC няма вградена схема часовник. За да отпадне ръчната

настройка на часовника след всяко включване, при този компютър е необходима разширителна карта със схема часовник, а най-добре и с допълнителна памет.

Едва при компютрите AT (c процесор 286) се поставя стандартно часовник (RTC, Real Time Clock) върху дънната платка, който се комбинира с памет NVRAM (NonVolatile [нонволътайл] RAM – непроменлива RAM), в която се съхранява конфигурацията на компютъра, за да могат да се правят индивидуалните настройки софтуерно, чрез BIOS-Setup, a не както преди това - с джъмпери. Тази памет се нарича още CMOS или CMOS-RAM, понеже чипът се изработва по CMOS технология (complementary metal-oxide semiconductor – допълващ се метало-оксиден полупроводник). Характерно за CMOS конструкцията е много ниската консумация на енергия. Специалният RTC/NVRAM чип може да се захранва от батерия в продължение на няколко години.

В оригиналните компютри IBM-AT от август 1984 г. за RTC/NVRAM се използва интегралната схема MC146818 на фирмата Motorola, която е включена и в много други компютри. В паметта на интегралната схема са предвидени 50 байта за съхраняване на конфигурацията и 14 байта за функциите на часовника, или общо 64 байта. За да не бъде загубено съдържанието на паметта след изключване на захранването на РС, върху дънната платка е поставен акумулатор за буфериране на захранването. За работата на схемата МС146818 са необходими и някои външни елементи: кварцов резонатор с честота 32.768 KHz за генериране на тактов сигнал за часовника, вече споменатия акумулатор, както и елементи на схемата за зареждане на акумулатора,

С течение на времето паметта CMOS-RAM, както и нейната функционалност и капацитет са разширявани от система към система. Днес се използват чипове на различни производители, но всички те са конструирани да бъдат съвместими с оригиналния чип на Motorola. Повечето съвременни дънни платки нямат отделен чип RTC/NVRAM, а той е интегриран в супер I/O чипа или в южния мост на чипсета на дънната платка или в аналога на южния мост, наречен хъб за управление на входно-изходните устройства (I/O Controller Hub - ICH).

Функцията на часовника за реално време е очевидна: часовникът позволява да се настрои (свери) датата и времето и отчита времето, дори и когато системата е изключена; при включен компютър дава възможност на софтуера да чете датата и времето.

NVRAM порцията на чипа, от своя страна, има функцията да съхранява базовата системна конфигурация, включвайки количеството инсталирана памет, типовете дискови устройства, които са инсталирани, конфигурацията на Plug and Play устройствата и друга информация. Макар че някои чипове съхраняват до 4 КВ и повече NVRAM, повечето чипсети на дънни платки с интегриран RTC/NVRAM включват 256 байта NVRAM (сравни с 64 байта на оригиналния чип на Моторола), от които часовникът използва 14 байта. Системата чете тази информация всеки път, когато се стартира.

42 от 69

8.2 Захранване на RTC/CMOS-RAMОсобено важно за запазването на данните в CMOS-RAM e правилното буфериране на

тази памет, докато е изключено захранването на PC. Необходимо е допълнително захранване за чипа, за което може да се използва акумулатор или батерия.

В по-старите компютърни системи се използва акумулатор, който се различава лесно, тъй като обикновено е в син цвят. В съвременните системи обикновено се използват литиеви батерии. Те са разпространени и сравнително евтини, имат дълъг живот, не протичат при изтощаване и запазват стабилно напрежение до почти пълното си разреждане. В редки случаи се използват алкални батерии, но те не са за предпочитане, тъй като се изтощават по-лесно и трябва да се сменят по-често. Също така, те са предразположени към протичане, което може да повреди дънната платка.

Някои системи не използват изобщо батерия. Например Hewlett-Packard включва спе-циален кондензатор в някои свои системи, който се зарежда автоматично през цялото време, докато системата е включена. Системата не е нужно да работи, за да се зарежда кондензатора, тя само трябва да бъде включена в контакта. Ако системата е изключена, кондензаторът захранва RTC/NVRAM чипа в продължение на една седмица и повече.

Несъмнено най-често използваната днес батерия за дънни платки е литиевата батерия от тип 2032 с форма на монета, която се монтира в специално легло на дънната платка. В зависимост от химическия процес се използват два основни типа батерии:

CR – използват като катод манганов диоксид (MnO); BR – използват като катод въглероден монофлуорид (CF).Типът CR е по-евтин и по-разпространен (и по-лесен за намиране) и предлага малко

по-голям капацитет. Типът BR е полезен когато се работи при високи температури (над 60°C). Обикновено, в една компютърна система PC ще откриете батерия CR. Цифрите след CR в обозначението на батерията показват физическия й размер. Например, най-често използвания тип батерия в PC е CR2032, което означава, че батерията използва катод с манганов диоксид, диаметърът й е 20 мм, а дебелината – 3.2 мм. Такава батерия лесно може да бъде намерена в магазините за електроника, магазините за камери и дори в магазините за дребни стоки. На фиг. 1 е показан разрез на литиева батерия CR2032.

Фиг. 1 Разрез на литиева батерия CR2032.

Таблица 1 показва спецификациите на често използвани монетни литиеви батерии с диаметър 20 мм, които може да се открият в PC.

43 от 69

Табл. 1 Спецификации на монетни литиеви батерии с диаметър 20 мм

Тип Напрежение (V) Капацитет (mAh) Диаметър (mm) Височина (mm)

BR2016 3.00 75 20.00 1.60

BR2020 3.00 100 20.00 2.00

BR2032 3.00 190 20.00 3.20

CR2012 3.00 55 20.00 1.20

CR2016 3.00 90 20.00 1.60

CR2025 3.00 165 20.00 2.50

CR2032 3.00 220 20.00 3.20

BR = Катод от карбонов монофлуорид (CF)

CR = Катод от манганов диоксид (Mn02)

Теоретичният живот на батерията може да се изчисли чрез делене на капацитета на батерията на използвания ток. Например, нека изчислим живота на типичната CR2032, която е с капацитет 220 mAh (милиамперчаса). В повечето съвременни чипсети схемата RTC/NVRAM употребява 5 A (микроампера) ток. Животът на батерията се изчислява по следния начин:

Живот = 220 000 Ah : 5 A = 44 000 часа = 5 годиниАко се използва по-тънка (и с по-малък капацитет) батерия като CR2025, животът на

батерията ще бъде по-къс:Живот = 165 000 Ah : 5 A = 33 000 часа = 3.7 годиниЖивотът на батерията започва да тече, когато системата се сглоби за пръв път, което

може да бъде няколко месеца или повече, преди да се закупи системата, дори и да е нова. Също батерията може да бъде частично разредена, преди да се инсталира на системата, поради саморазреждане по време на съхраняване в складове и магазини. Високите температури по време на съхраняване или работа в системата също могат да съкратят живота на батерията. Поради тези причини батерията може да има доста по-къс живот от изчисления. Практиката показва, че средно реалният живот на литиевите батерии е до 3 години.

Напрежението на акумулатора или батерията трябва да е поне 3 V (типично до 3,6 V), за да работи точно часовника и да не се изгуби съдържанието на CMOS-RAM. Ако компютърът е "загубил паметта си" и е необходимо повторно извършване на BIOS-Setup, може да се предполага, че акумулаторът (батерията) вече е остарял или пък че схемата за зареждане не функционира правилно. Това се случва и когато PC не е включван продължително време. Обикновено симптомите са, че се налага всеки път след включване на компютъра да се настройва времето и датата и има затруднения при разпознаване на дисковите устройства.

Проверката на акумулатора или батерията може да се извърши лесно с волтметър. Измерването на напрежението на акумулатора трябва да се извърши при изключен PC, в противен случай ще бъде измерено не напрежението на акумулатора, a на подаваното към него напрежение от дънната платка. Батерията е най-лесно да се измери, когато е извадена от леглото, но тогава се губят настройките на BIOS-Setup.

Изваждането на литиевата батерия се извършва, като се дръпне рязко с отвертка пружиниращата пластинка, която придържа батерията в леглото (фиг .2). Когато се заменя

44 от 69

батерията, трябва да се внимава да не се обърка полярността, тъй като това ще повреди безвъзвратно RTC/NVRAM (CMOS) чипа (обикновено плюсът е нагоре).

фиг. 2 Литиева батерия, поставена в специално гнездо на дънната платка

При смяна на батерията обикновено се губят настройките на конфигурацията, поради което е добре тези настройки да бъдат записани предварително, за да може лесно да се възстановят. В повечето случаи трябва да се стартира програмата BIOS Setup и да се копират или отпечатат всички екрани, показващи различните настройки. Те могат да бъдат записани ръчно на лист хартия или заснети с цифров фотоапарат. Някои Setup програми предлагат възможността да се съхранят данните на NVRAM във файл, откъдето могат при нужда да се възстановят. Това записване трябва да се извърши планово, още когато системата работи правилно!

8.3 Конфигуриране на PC системата при IBM PC/XT, IBM PC/АT-80286, 80386, 80486, Pentium. Програмата BIOS-Setup.

В съвременните компютърни системи настройките на конфигурацията и времето се извършват чрез меню-ориентирана програма BIOS Setup Utility (накратко BIOS Setup). BIOS Setup е част от програмата BIOS и служи за нейната настройка, като параметрите на настройката се съхраняват в RTC/NVRAM (CMOS) чипа. Наименованието BIOS е съкращение от Basic Input/Output System - базова система за вход/изход. По същество, това е компютърна програма, работеща на най-ниско ниво (позната и под наименованието фърмуер), която се стартира първа при включване на компютъра. Основната функция на тази програма е да инициализира стандартния хардуер ( клавиатура, мишка, графичен адаптер, памет и т.н) и да зареди необходимите драйвери за управлението му. Програмата BIOS (включително и BIOS Setup) е записана в един малък чип, наречен EEPROM - (Electrically Erasable Programmable Read-Only Memory – електрически изтриваема програмируема памет само за четене), който се намира на дънната платка. Това е постоянна енергонезависима памет, която все пак може да се обновява. Най-популярните производители на BIOS са: Phoenix [Фийникс], Award [Ъ’уорд] (от 1998 г. е закупена от Phoenix) и AMI (American Megatrends).

Програмата BIOS Setup може да бъде извикана по време на POST процедурата чрез натискането на определен клавиш, изписан на екрана (различен при различните BIOS производители). Обикновено се използва някой от следните клавиши или клавишни комбинации: Delete, Esc, F1, F2, F10, Ctrl+Alt+Esc.

45 от 69

пружинираща пластинка

В зависимост от модела и марката на дънната платка, оформлението и организацията на настройките в BIOS Setup програмата могат да се различават помежду си значително. Общото е, че всички настройки са групирани в отделни секции, и в крайна сметка са дефинирани с близки наименования. На фиг. 3 е показано основното меню на Phoenix-Award BIOS Setup Utility.

Основните точки в това меню са: Standard CMOS Features (стандартни характеристики на CMOS) – настройват се

датата и часа, дисковите устройства, типът на видеоадаптера и се показва обема на инсталираната памет;

Advanced BIOS Features (разширени характеристики на BIOS) - избира се последователността на устройствата, в които ще се търси операционна система за зареждане, включва се защита от вируси, управлява се начинът за протичане на POST - процедурата за начално самотестване на системата, включването и изключването на S.M.A.R.T. технологията на твърдите дискове, състоянието по подразбиране на цифровата клавиатура (Num Lock) и др.;

 Advanced Chipset Features (разширени характеристики на чипсета) - настройки, базиращи се на специфичните възможности на чипсета - управление на скоростта на шината на чипсета и достъпа до ресурсите на системната памет.

Integrated Peripherals (интегрирани периферни устройства) - конфигуриране на IDE, Super I/O чипа и USB периферните устройства.

Power Management Setup - конфигуриране на системата за по-ефективно управление на електроенергията.

PnP/PCI Configurations - настройките на PCI шината. Load Optimized Defaults – зареждане на оптимизирани подразбиращи се настройки Set Supervisor Password - позволява да се въведе парола, чрез която се ограничава

достъпа до BIOS и/или до цялата система. Тази парола дава достъп за модифициране на всички опции в BIOS.

Set User Password - позволява да се въведе парола, чрез която се ограничава достъпа до BIOS и/или до цялата система. Паролата на потребител дава достъп за промяна на ограничен брой полета в BIOS и системата е напълно функционална.

Save & Exit Setup - промените, които са направени, се записват в CMOS паметта, след което системата се рестартира.

Exit Without Saving – излизане без съхраняване на направените промени.

46 от 69

Фиг. 3 Основното меню на Phoenix-Award BIOS Setup Utility

Точките от менюто, които са с триъгълник отпред, имат подточки, в които се задават конкретните параметри. Някои точки имат няколко нива на подменюта.

8.4 Изтриване (възстановяване, нулиране) на CMOS-RAMВ някои случаи е необходимо да се изтрие съдържанието на паметта CMOS-RAM, като

причините за това са основно две: PC e c напълно грешно конфигуриран BIOS-Setup поради някаква причина и не се

стартира коректно. Потребителят е забравил паролата си за BIOS-Setup.Начините за нулиране на паметта CMOS-RAM са следните: до батерийката често има специален джъмпер (мостче) за нулиране на настройките -

когато той се постави за известно време от (от 1 до 2 минути) от позицията "нормално" (Normal) на позицията "разреждане" (Discharge) или „изчистване” (Clear), цялото съдържание на CMOS-RAM ce установява на стойностите по подразбиране (фиг. 4);

да се махне батерията за няколко минути и след това да се постави отново; да се използва специална програма, като KillCMOS.

фиг. 4 Джъмпер за нулиране на настройките на BIOS-Setup

За влизане в системата при забравена парола може да се използва: програма за разбиване на паролата: CMOSPwd, !BIOS и др. дебъгера на системата чрез следните команди, стартирани от DOS промпт:

debug о 70, 2Еo 71, 0q

Използване на парола „задна врата”. Някои производители на BIOS използват пароли, които служат като „задна врата” за системата. Те се използват за тестване и поддръжка и действат независимо от това, каква парола е поставил потребителя. На много места в Интернет (а също и в програми като !BIOS) може да се открият списъци от такива пароли. Например, за Phoenix са известни паролите: BIOS, CMOS, phoenix и PHOENIX. За AMI паролите са: A.M.I., AAAMMMIII, AMI?SW, AMI_SW, BIOS, CONDO, HEWITT RAND, LKWPETER, MI и PASSWORD.

След нулиране на CMOS-RAM паметта, компютърът трябва да се рестартира, да се извика BIOS Setup и да се направят необходимите настройки. Започва се с подразбиращи се

47 от 69

джъмпер за нулиране

настройки (например Load Optimized Defaults за показаното по-горе меню на BIOS Setup на Phoenix-Award). За правилно избиране на типа на твърдите дискове обикновено се избира режим Auto или функция AutoDetect (автоматично откриване). След това настройките се прецизират в съответствие със записаните по-рано или чрез експериментиране (но все пак трябва да е ясно какво и как да се променя, за да не се повреди компютъра).

48 от 69

9. ТАКТОВИ ЧЕСТОТИ НА ДЪННАТА ПЛАТКА. КВАРЦОВ ГЕНЕРАТОР. ГЕНЕРИРАНЕ НА ТАКТОВИ

ЧЕСТОТИ – PLL СХЕМИ. НАСТРОЙКИ НА ТАКТОВИТЕ ЧЕСТОТИ.

На всяка дънна платка са необходими различни тактови честоти, с чиято помощ таймерът и останалата електроника върху платката, както и графичната карта и другите разширителни карти се снабдяват с "работните" си тактови сигнали.

Тяхното познаване е необходимо за правилната им настройка, какго и за осъществяване на т.нар. overclocking (овърклокинг), който може да се дефинира като работа на компоненти или на цялата система с по-висока работна тактова честота от честотата, за която са проектирани от производителя. Овърклокингът обикновено се използва при процесорите, но може да се приложи и при други компоненти на системата като паметта, видеокартите, шините и др.

9.1 Такт. Тактови честотиЕдин такт (на англ. cycle) е времето, за което един сигнал извършва преход от един

преден фронт до следващия преден фронт (фиг. 1). В компютърните системи тактът е най-малкият интервал от време за процесора. Всяко действие изисква поне един такт, но обикновено са необходими няколко такта.

Фиг. 1 Променливотоков сигнал, показващ тактуването на генератора

Тактовата честота (на англ. clock speed) на една компютърна система се измерва като брой тактове за една секунда. Мерната единица за тактова честота е херц (Hz), наречена на името на германския физик Хайнрих Рудолф Херц. Един херц е равен на 1 такт за секунда. Тъй като една компютърна система изпълнява милиони тактове за секунда, се използват производни единици на херца: килохерц (1KHz=1000 Hz), мегахерц (1MHz=1 милион Hz), гигахерц (1GHz=1 милиард Hz).

9.2 Кварцов генераторОсновният компонент, който управлява скоростта на компютъра е кварцовият

генератор. Главният елемент в неговата конструкция е кварцов кристал. Кварцът е силициев

49 от 69

диоксид (SiO2) в кристална форма. Представлява твърд прозрачен материал, крехък, но притежаващ малка еластичност, която е много полезно негово свойство.

В кристална форма кварцът може да се използва за да генерира импулси с постоянна честота, които регулират електронните схеми, подобно на метронома, използван за регулиране на музика. Той се използва поради ценното си свойство пиезоелектричност, която означава генериране на електрическо напрежение под влияние на механично напрежение, както и обратното – създаване на механична деформация под действието на електрическо поле. Когато под действие на електрическо поле кварцовият кристал се деформира, в него се създават еластични сили, които се стремят да го върнат обратно в началното му състояние. След това еластичните сили действат в обратна посока, създавайки трептения с естествена резонансна честота, която зависи от размера и формата на кристала.

На фиг.2 е показан външния вид на кварцови генератори, а на фиг. 3 - схема на устройството на кварцов генератор с дисков резонатор.

Фиг. 2 Кварцови генератори

Фиг. 3 Устройство на кварцов генератор с дисков резонаторКварцовият диск има метални електроди от двете си страни, позволяващи да се

приложи напрежение към диска.В персоналните компютри се използват кварцови генератори, които могат да бъдат

кварцови резонатори или кварцови осцилатори. Разликата се състои в това, че при използване на кварцов резонатор са необходими допълнителни елементи (най-малко два кондензатора) и кварцовият резонатор е само част от схемата за получаване на тактова честота. За работата на осцилатора не са необходими допълнителни елементи. При прилагането на напрежение 5 V той генерира честотата самостоятелно и я подава на определен изход.

Съвременния РС има поне два кварцови генератора: главен, с честота 14,31818 MHz, който управлява скоростта на дънната платка и схемите, свързани с нея и генератор за часовника (RTC-real time clock), който е с честота 32.768 KHz.

Защо 14,31818 MHz?Честотата 14,31818 MHz е наследена от първите IBM PC, които са използвали честота

4.77 MHz, произлизаща от 14,31818 MHz, делена на 3. Програмируемият таймер е ползвал от своя страна честотата 14,31818 MHz, делена на 12. С честота 14,31818, но разделена на 4, е

50 от 69

свързан и цветния NTSC видео сигнал.

9.3 Генериране на необходимите тактови честотиСърцето на всяка дънна платка са различните шини, които пренасят сигнали между

компонентите. Всяко устройство в компютърната система е свързано към една от шините. В едно РС има йерархия от няколко шини с различни скорости, като всяка по-бавна шина е свързана с по-бързата от нея. Използваните в съвременните компютърни системи тактови честоти са следните:

Системната (процесорната) шина работи с някоя от стандартните честоти: 66 MHz, 100 MHz, 133 MHz, 200 MHz, 266 MHz, 400 MHz, 533 MHz, 1066 MHz.

AGP шината работи на 66 MHz, 133 MHz, 266 MHz или 533 MHz. PCI шината работи на 33 MHz или 66 MHz (за работни станции и сървъри). ISA шината (16-бита) работи на 8,33 MHz. Шината на паметта работи на 22 MHz при FPM, 33 MHz при EDO, 67-100-133 MHz

при SDRAM, 100 до 400 MHz при DDR, 300 до 1066 MHz при RDRAM. Честотите на процесорите варират от 4.77 MHz за 8088/8086 до близо 4 GHz за

съвременните процесори. Честотите на процесорите след 486DX2 се получават чрез умножение на тактовата честота на системната шина, за да работят на по-висока честота от тази на дънната платка. Множителят се задава чрез превключватели, джъмпери или чрез настройка в BIOS Setup.

От направения преглед на тактовите честоти в компютърните системи се вижда, че те варират в широк диапазон от стойности, които значително се различават от 14.318 MHz. Тогава как кварцовият генератор управлява тези честоти? Как се получава това голямо разнообразие от честоти, което е различно за различните системи? Отговорът е, че има специален чип, наречен честотен генератор (frequency timing generator - FTG) или честотен синтезатор, който се използва заедно с кварцовия генератор, за да произведе необходимите честоти. На фиг. 4 е показана част от дънна платка с FTG чип и 14.318 MHz кристал под него.

Фиг. 4 Честотен синтезатор с 14.318 MHz кристал

RTC използва собствен отделен 32.768 KHz кристал, за да брои времето независимо от скоростта на системата. Фиг. 5 показва кристала 32.768 KHz близо до южния мост на чипсета или I/O управляващия хъб, който съдържа схемата RTC и CMOS RAM.

51 от 69

Фиг. 5 Южен мост на чипсета (I/O управляващ хъб), с вграден RTC до 32.768 KHz кристал

Повечето чипове честотни синтезатори, използвани в дънните платки на РС, се изработват от Integrated Circuit Systems (Интъгрейтид съркит систъмс) (www.icst.com) или Cypress Semiconductor (Сайприс семикъндактъ - www.cypress.com), преди International Microcircuits Inc [IMI]). Тези чипове използват схемата PLL (phased locked loop) за да генерират синхронизирани времеви сигнали за процесора, PCI, AGP и други шини, които произлизат от единичния 14.318 MHz кристал. Кристалът и честотният синтезатор обикновено са разположени близо до процесора и главния компонент на чипсета.

Забележителното за тези чипове е, че повечето от тях са програмируеми и настройваеми, така че те могат да променят техните изходни честоти чрез софтуер, което води до работа на системата с различни скорости. Тъй като всички процесори са базирани на скоростта на процесорната шина, когато се промени скоростта на шината, генерирана от честотния синтезатор, се променя и скоростта на процесора. Със същия процент се променя и скоростта на PCI, AGP и шината на паметта, тъй като обикновено те са синхронизирани с процесорната шина. Софтуерът, изпълняващ това, е вграден в менюто на BIOS Setup на повечето съвременни дънни платки.

9.4 Настройки на тактовите честоти. Овърклокване.Овърклокване (издуване, изпържване) се нарича работата на определен компонент

или цялата система със скорост, по-голяма от посочената, осигуряваща по-висока производителност, обикновено в рамките на 10-20%. Това е възможно поради осигуряване от производителите на т. нар. коефициент на сигурност, при което за гарантиране на стабилна и безотказна работа на компонента, в характеристиките му се посочват по-ниски режими на работа от максимално допустимите.

Овърклокването възниква почти едновременно със създаването на компютрите. Например, Скот Мюлер описва овърклокване на IBM AT чрез замяна на кварцовия кристал, който в тези системи е на цокъл с кристал с по-висока честота. Обичайно в тези системи са се използвали кристали 12 MHz или 16 MHz, които чрез делене на честотата на две са осигурявали на процесора скорост 6 MHz или 8 MHz. Чрез замяна с кристали 18 MHz или 20 MHz е можело да се постигнат скорости 9 MHz или 10 MHz. Някои компании, като XCELX, създават по-късно променливи честотни осцилатори, които могат чрез превключвател да избират между няколко фиксирани честоти и така да променят скоростта на системата.

Повечето съвременни дънни платки автоматично четат процесора и паметта, за да определят тяхната правилна скорост, времена и настройки на напрежението. Първоначално в

52 от 69

платките за 486 и Pentium тези настройки се управляват чрез джъмпери и превключватели, но в повечето съвременни дънни платки тези настройки могат да се правят чрез BIOS Setup. Отначало се задава настройките да се извършват ръчно (manual), след което стават достъпни опции в менюто за промяна на скоростта.

Повечето системи са проектирани да заредят в BIOS Setup по подразбиране ниска скорост, която да осигури стабилна работа на системата. Настройките се правят чрез постепенно увеличаване на скоростта на процесора, паметта и шините докато системата стане нестабилна. След това се намаляват, докато системата стане отново стабилна. Този процес е индивидуален за всяка система, тъй като няма абсолютно еднакви компоненти, дори и да са маркирани с едни и същи стойности.

При производството на процесори, от една матрица с диаметър 300 мм, чрез разрязване се получават няколкостотин процесора (напр. при Pentium 4 Prescott до 631 чипа). По-голямата част от тези чипове се тестват след производството и се сортират по скорост, като им се поставя съответната маркировка. Отначало чиповете с високи скорости са по-малко и съответно са по-скъпи. С усъвършенстване на производствения процес те се увеличават, но поради изискванията на пазара за по-голям брой нискоскоростни и съответно по-евтини чипове, които са продаваеми, производителите са принудени да маркират част от високоскоростните чипове като такива с по-ниска скорост, за да запълнят пазарната ниша. С други думи при закупуване на нискоскоростна евтина версия на процесор има голяма вероятност той да работи при значително по-високи скорости, докато при високоскоростните версии този запас е значително по-малък и там възможностите за овърклокване са доста ограничени.

Посочената възможност за овърклокване звучи доста обещаващо, но има един немаловажен проблем. На повечето процесори на Intel и AMD след Pentium II множителят им се заключва, преди да излязат от производствената линия. При това положение всякакви промени в настройките за умножаване, налични на дънната платка, просто се игнорират от чипа. Въпреки че първоначалния замисъл на тези мерки е да се попречи на мошениците да премаркират процесорите, това е удар срещу любителите на високите скорости. В този случай единствената алтернатива за промяна на скоростта е да се промени настройката на тактовата честота на процесорната шина, наричана още предна шина (front side bus FSB). Много дънни платки позволяват промени в скоростта до 50% или повече, но процесорът рядко поддържа скорости, които са далеч над определените без заключване или проваляне. При това трябва да се има предвид, че увеличаването на скоростта на процесорната шина води до увеличаване и на скоростите на шината за памет, PCI шината и AGP шината със същия процент. Следователно, ако паметта е нестабилна при по-висока скорост, системата ще се проваля, дори и процесора да е в състояние да поддържа тази скорост. Системата ще се влияе от най-слабото звено, което означава че тя ще работи бързо само ако всички компоненти могат да поемат предизвикателството. Затова за овърклокване са подходящи дънни платки, позволяващи междини честоти с малки нараствания. В общия случай успешно е нарастване от 10 до 20%.

В заключение трябва се има предвид, че при овърклокване компонентите работят при повишени температури и затова трябва да се вземат мерки за допълнително охлаждане чрез поставяне на подходящи радиатори, по-мощни вентилатори на процесора и видеокартата, допълнителни вентилатори в кутията, и дори водно охлаждане.

53 от 69

10. ЗАХРАНВАЩИ НАПРЕЖЕНИЯ НА ДЪННАТА ПЛАТКА – НА ПРОЦЕСОРА, НА ПАМЕТТА, НА

РАЗШИРИТЕЛНИТЕ СЛОТОВЕ10.1 Захранващ блок –предназначение и значимост

Всеки персонален компютър има захранващ блок, чието основно предназначение е да превърне променливия електрически ток от контакта в стаята (220 V 50 Hz) в ток, който електрическите схеми на компютъра могат да ползват: прав ток с напрежение +3.3V, +5V и +12V.

Технически погледнато, захранващият блок представлява превключаемо захранване с постоянно напрежение. Постоянно напрежение означава, че захранващият блок осигурява едно и също напрежение на компютърните компоненти, независимо от напрежението в електрическата захранваща мрежа и мощността на захранващия блок. Превключването се отнася до начина за регулиране на захранването.

Захранващият блок не само е една от най-важните части в едно PC, но, за съжаление, е и най-пренебрегваната. Хората обсъждат с часове тактовата честота на техните процесори, размера на паметта, капацитета и скоростта на твърдия диск, производителността на видеокартата, размера на монитора и т.н., но рядко дори споменават за своето захранване (в най-добрия случай се интересуват от това колко вата са обозначени). Функцията на захранващия блок е критична, защото едно неизправно захранване не само че може да доведе до ненормална работа на другите компоненти, но също е възможно и да ги повреди, като ги захранва с неподходящо или нестабилно напрежение. Практиката показва, че захранващият блок е и най-податливият на повреди компонент в която и да е компютърна система..

10.2 Захранващи напрежения на дънната платкаВ съвременните компютърни системи се използват само положителни напрежения.

Обикновено цифровите електронни компоненти и схеми в системата (дънна платка, разширителни карти и дискови логически платки) използват +3.3V или +5V, а двигателите (на дискови устройства и вентилатори) използват +12V. В табл. 1 са показани тези устройства и тяхната консумация:

Табл. 1 Захранващи напрежения на устройства в компютъра

Напрежение Захранвани устройства

+3.3V чипсети, DIMM памети, PCI/AGP карти за преносими компютри и др.

+5V логика на дискове, PCI/AGP карти за стационарни компютри, SIMM памети, ISA карти, регулатори на напрежение, други чипове

+12V двигатели, регулатори на напрежение

За да работи правилно системата, захранващият блок трябва да осигурява стабилен ток с постоянно напрежение. Устройства, които използват различно напрежение от

54 от 69

горепосочените се захранват от вградени регулатори на напрежение. Например, RIMM и DDR DIMM модулите изискват 2.5V, DDR2 DIMM модулите изискват 1.8V, AGP 4x/8x изискват 1.5 V, а PCI Express картите използват само 0.8V, които се осигуряват от прости вградени регулатори.

Процесорите също изискват широк диапазон напрежения (за съвременните процесори 1.3 V и по-малко – табл.2 и 3), които се осигуряват от сложен регулиращ модул VRM (voltage regulator module), който или е запоен на дънната платка или е пъхнат в специално предназначен за него цокъл. Обикновено в съвременната дънна платка може да се открият поне три такива модула.

В по-старите компютърни системи са се използвали отрицателни напрежения -5V и -12V. Напрежението -5V е било необходимо за ISA шината и за контролерите на старите флопидискови устройства, а -12 V се е използвало в някои конструкции на серийни портове или LAN схеми.

Табл. 2 Напрежения на процесори на Интел

Процесор Процес на производство

(микрони)

Напрежение Процесор Процес на производство

(микрони)

Напрежение

8088 3.0 5V Celeron (Covington) 0.25 1.8V2.8V

8086 3.0 5V Celeron A (Mendocino)

0.25 1.5V2V

286 1.5 5V Celeron III (Coppermine)

0.18 1.51.75V

386SX 1.5, 1.0 5V Celeron III (Tualatin) 0.13 1.5V

386SL 1.0 3.3V Pentium III (Katmai) 0.25 2.02.05V

386DX 1.5, 1.0 5V Pentium III (Coppermine)

0.18 1.61.75V

486SX 1.0, 0.8 5V Pentium III (Tualatin) 0.13 1.45V

486SX2 0.8 5V Celeron 4 (Willamette)

0.18 1.6V

487SX 1.0 5V Pentium 4 (Willamette)

0.18 1.7V

486DX 1.0, 0.8 5V Pentium 4A (Northwood)

0.13 1.3V

55 от 69

Процесор Процес на производство

(микрони)

Напрежение Процесор Процес на производство

(микрони)

Напрежение

486SL2 0.8 3.3V Pentium 4EE (Prestonia)

0.13 1.5V

486DX2 0.8 5V Pentium 4E (Prescott) 0.09 1.3V

486DX4 0.6 3.3V Celeron D 0.09 1.25V1.4V

486 Pentium OD 0.6 5V Pentium D (Smithfield)

0.09 1.25V1.4V

Pentium 60/66 0.8 5V Pentium EE (Glenwood)

0.09 1.25V1.4V

Pentium 75-200 0.6, 0.35 3.3V3.5V Pentium M (Banias) 0.13 0.81.5V

Pentium MMX 0.35, 0.25 1.8V2.8V Pentium M (Dothan) 0.09 11.3V

Pentium Pro 0.35 3.3V

Pentium II (Klamath)

0.35 2.8V

Pentium II (Deschutes)

0.35 2.0V

Pentium II PE (Dixon)

0.25 1.6V

Табл. 3 Напрежения на процесори на AMD

Процесор Процес на производство (микрони)

Напрежение Процесор Процес на производство

(микрони)

Напрежение

AMD K5 0.35 3.5V AMD Athlon XP (Thoroughbred)

0.13 1.5 1.8V

AMD K6 0.35 2.2 3.2V AMD Athlon XP (Barton)

0.13 1.6 5V

AMD K6-2 0.251.9 2.4V

Athlon 64 0.13, 0.09 1.5V

56 от 69

(ClawHammer/Winchester)

AMD K6-3 0.25 1.8 2.4V Athlon 64 FX (SledgeHammer)

0.13 1.5V

AMD Athlon 0.25 1.6 1.8V Athlon 64 X2 (Manchester)

0.09 1.35V 1.4V

AMD Duron 0.18 1.5 1.8V Athlon 64 X2 (Toledo)

0.09 1.35V 1.4V

AMD Athlon (Thunderbird)

0.18 1.5 1.8V

AMD Athlon XP (Palomino)

0.18 1.5 1.8V

10.3 Специални сигнали. Power_Good и PS_ON.Освен осигуряването на захранване за работата на системата, захранващият блок също

така гарантира, че системата няма да започне да работи, докато подаваното захранване не е достатъчно за правилното й функциониране. Захранващият блок провежда вътрешни проверки и тестове, преди да позволи на системата да стартира. Когато изходните напрежения са се стабилизирали (обикновено 0,1 - 0,5 секунди след като е натиснат бутона за включване на захранването) и тестовете са успешни, захранващият блок изпраща специален сигнал към дънната платка, наречен Power_Good. Сигналът Power_Good (понякога наричан Power_OK или PWR_OK) е с номинал +5v и е активен при високо ниво (вариации между +2,4v и +6,0v се считат за приемливи). Този сигнал трябва да се подава постоянно, за да може системата да работи. Ето защо, когато напрежението на променливия ток пропадне и захранващият блок не може да поддържа нивата на изходните напрежения в определените граници, подаването на сигнала Power_Good се прекратява, което принуждава системата да се рестартира. Повторното стартиране се отлага, докато сигналът Power_Good не се появи отново.

Повечето системи, използващи по-новите форм-фактори, като ATX, micro-ATX или NLX, включват още един специален сигнал. Той се нарича PS_ON и може да се използва за включване и изключване на захранващия блок (а от там и на системата) по софтуерен път. Понякога този сигнал се нарича и soft-power възможност. PS_ON се проявява, когато се използва с операционна система като Windows, поддържаща спецификациите АРМ (Advanced Power Management) или ACPI (Advanced Configuration and Power Interface). Когато се избере опцията Shut Down от менюто Start, Windows автоматично изключва компютъра, след като приключи с процедурата по затваряне на операционната система. Система без наличието на тази възможност просто извежда съобщение на екрана, че е безопасно да я изключите.

57 от 69

10.4 Форм-фактори на захранващите блоковеФормата и общата физическа конструкция на един компонент се нарича форм-фактор.

Компоненти, споделящи общ форм-фактор, по принцип са взаимозаменяеми, поне що се отнася до техните размери и форми.

През годините са създадени над 10 форм-фактора на захранване, които могат да бъдат наречени индустриални стандарти. Много от тях се базират на IBM конструкции, създадени през 1980-те, а останалите се базират на конструкции на Intel от 1990-те до днес. От практическа гледна точка, форм-факторите може да се разделят на две категории: такива, които се използват в съвременните системи и такива, които са отживелица.

Забележете, че въпреки че имената на форм-факторите на захранващите блокове съвпадат с тези на форм-факторите на дънните платки, те са свързани по-скоро с шасито на системата (кутията), отколкото с дънната платка. Това е така, защото всички форм-фактори използват един от двата основни типа конектори: АТ или АТХ, с малки изменения. Въпреки че към дънна платка с определен форм фактор може да се присъедини захранване с този форм фактор, към нея също могат да се присъединят и други захранвания. Например, всички съвременни дънни платки с ATX форм фактори, които имат PCI Express слотове, имат два главни захранващи конектора, включващи 24-изводен ATX главен конектор и 4-изводен +12V конектор. Всички съвременни форм фактори на захранвания, включващи ATX12V, SFX12V, EPS12V, TFX12V, CFX12V и LFX12V притежават тези конектори и следователно могат да се присъединят към същите дънни платки. С други думи, без значение какъв е форм факторът на дънната платка (ATX, BTX или някой от по-малките им варианти), всяко съвременно индустриално стандартизирано захранващо устройство може да се присъедини към нея. Да се свърже захранващият блок с дънната платка е едно, но за да работи в системата, той трябва да съответства физически на вътрешността на шасито или кутията, за което трябва да притежава съответния форм фактор.

В табл. 4 са изброени съвременните форм фактори на захранващи блокове, които са индустриално стандартизирани, техните типове конектори и форм факторите на дънни платки, към които те се присъединяват обикновено. В табл. 5 са изброени остарелите форм фактори на захранващи блокове.

Табл. 4 Съвременни форм фактори на захранващи блокове, които са индустриално стандартизирани

Форм фактор на захранващи блокове

Година на въвеждане

Тип на конектора

Форм фактори на дънни платки, които обикновено се присъединяват към

захранването

ATX/ATX12V 1995 20/24-изводен ATX/ATX12V

ATX, microATX, BTX, microBTX

SFX/SFX12V/PS3 1997 20/24- изводен ATX/ATX12V

microATX, FlexATX, microBTX, picoBTX, Mini-ITX

EPS/EPS12V 1998 24- изводен ATX/ATX12V ATX, разширен 58 от

69

Табл. 4 Съвременни форм фактори на захранващи блокове, които са индустриално стандартизирани

Форм фактор на захранващи блокове

Година на въвеждане

Тип на конектора

Форм фактори на дънни платки, които обикновено се присъединяват към

захранването

ATX

TFX12V 2002 20/24- изводен ATX12V microATX, FlexATX, microBTX, picoBTX, Mini-ITX

CFX12V 2003 20/24- изводен ATX12V microBTX, picoBTX

LFX12V 2004 24- изводен ATX12V picoBTX, nanoBTX

SFX12V също включва PS3 форм фактора, който е скъсена версия на ATX12V.

xxx12V версиите включват 4-изводен +12V конектор.

EPS12V включва 8-изводен +12V конектор.

Табл. 5 Остарели форм фактори на захранващи блокове.

Форм фактор на захранващи

блокове

Година на въвеждане

Тип на конектора

Форм фактори на дънни платки, които обикновено се присъединяват

към захранването

PC/XT 1981 PC/XT PC/XT, Baby-AT

AT/настолен 1984 AT Пълноразмерен AT, Baby-AT

AT/кула 1984 AT Пълноразмерен AT, Baby-AT

Baby-AT 1984 AT Пълноразмерен AT, Baby-AT

LPX (PS/2) 1987 AT Baby-AT, Mini-AT, LPX

Темата за форм факторите на захранващите блокове е доста обширна и нейното изчерпателно разглеждане излиза извън обема на тази лекция. За повече подробности, виж Скот Мюлер, Компютърна енциклопедия, т.3, 2003 г. – 14-то издание и Scot Mueller Upgrading and Repairing Pcs, 17th Edition.

59 от 69

10.5 Захранващи конекториВсеки захранващ блок за PC притежава специални конектори, които се свързват към

дънната платка и по този начин осигуряват захранване на процесора, паметта и всички разширителни карти на слотове (ISA, PCI и AGP). Неправилното свързване на тези конектори може да има унищожителен ефект върху вашето PC, включващ изгаряне на захранващия блок и дънната платка.

10.5.1 Конектори на АТ захранващия блокДънните платки по индустриалните стандарти PC, XT, AT, Baby-АТ и LPX използват

един и същ тип захранващи конектори. АТ захранванията се характеризират с два основни захранващи конектора (Р8 и Р9, по-рядко обозначавани като P1 и P2), всеки с по шест извода, които свързват захранващия блок с дънната платка. Те са разчетени да издържат 5 ампера ток на извод при напрежения до 250v.

Р8 и Р9 конекторите, използвани от всички стандартни PC захранвания, трябва да се инсталират един до друг, така че двете двойки черни проводници (заземяванията) да са една до друга. Тъй като тези конектори обикновено имат закопчалки, които им пречат да бъдат пъхнати наопаки, най-големият проблем е да ориентирате конекторите правилно един до друг, както и да не ги изместите с някой и друг извод вляво или вдясно. Ако се подава извод от двете страни на конекторите или между тях, значи те не са свързани както трябва, а резултатът от това при включване на захранването обикновено е катастрофален за дънната платка и всичко, включено към нея. Фигура 1 показва конекторите Р8 и Р9 (понякога наричани също Р1/Р2) в тяхната правилна ориентация при свързване.

фиг. 1 Конектори Р8 и Р9 за AT/LPX захранващи блокове.

Табл.6 Изводи на конекторите за AT/LPX захранващи блокове.

Конектор Извод Сигнал Цвят Конектор Извод Сигнал Цвят

P8 (или P1) 1 Power_Good

(+5V)

Оранжев P9 (или P2) 1 Земя Черен

2 +5V[1] Червен 2 Земя Черен

60 от 69

Табл.6 Изводи на конекторите за AT/LPX захранващи блокове.

Конектор Извод Сигнал Цвят Конектор Извод Сигнал Цвят

 3 +12V Жълт

 3 5V Бял

4 12V Син 4 +5V Червен

 5 Земя Черен

 5 +5V Червен

6 Земя Черен 6 +5V Червен

10.5.2 ATX и ATX12V 1.x конектори за захранване на дънната платкаЗахранващите блокове, отговарящи на стандартите за форм фактори ATX и ATX12V

използват следните три конектора за захранване на дънната платка: 20-изводен конектор за главното захранване; 6-изводен допълнителен (auxiliary) конектор за захранване; 4-изводен +12V конектор за захранване;

Главният конектор винаги се изисква, а останалите два са по избор, в зависимост от приложението. На фиг.2 и 3 е показан 20-изводен конектор за главното захранване

фиг. 2 Свързване на 20-изводния главен ATX конектор към дънната платка

61 от 69

фиг. 3 Изводи на главния конектор за ATX/NLXНа фиг. 4 е показан допълнителния 6-изводен конектор, а на фиг. 5 – 4-изводния +12V конектор за захранване.

фиг. 4 Допълнителен 6-изводен конектор за захранване

фиг. 5. Конектор за захранване 4-изводен +12V

Защо има множество ATX конектори за захранване на дънните платки? Отговорът е, че те са създадени в резултат от развитието на компютърните системи и стремежът за запазване на съвместимост. В първоначалната спецификация на ATX е включен само 20-изводен конектор, който осигурява до 251 вата, достатъчни за дънните платки и процесори в средата на 90-те. В края на 90-те мощността нараства и този конектор започва да се прегрява и дори стопява. За да не се променя конструкцията на главния конектор и така да се създава несъвместимост, през 1998 г. Intel добавят допълнителен 6-изводен конектор, който осигурява до 58 вата и напрежения +3.3V и +5V. През 2000 г. появата на гладните за енергия процесори Pentium 4 поставя нови предизвикателства към мощността на захранването. Единият от проблемите е, че регулаторите на напрежение за тези процесори ползват входно напрежение +12V. Това е продиктувано от необходимостта да се намали захранващия ток и оттам отделянето на топлина и загубите на енергия. Причината е същата, поради която в далекопроводите тече ток с много високо напрежение (десетки хиляди волтове). Законът P=I.U означава, че като се намали тока, за да се запази мощността, трябва да се увеличи напрежението. Главният 20-изводен конектор има извод +12V, но само за 6 ампера. Допълнителният 6-изводен конектор осигурява само +3.3V и +5V, но не и +12V. Тогава се налага да се осигури допълнителен +12V конектор, който осигурява до 192 вата енергия за регулаторите на Pentium 4.

62 от 69

Захранващите блокове с +12V конектор са наречени ATX12V и за тях е създадена спецификацията за форм фактор ATX12V.

10.5.3 ATX12V 2.x 24-изводен конектор за главно захранване През юни 2004 в дънните платки се появява новата шина PCI Express. Видеокартите PCI

Express x16 изискват повече енергия (до 75 W), отколкото може да осигурят 20-изводния главен и 6-изводния допълнителен конектор. Тези видеокарти изискват +12V, които не могат да се осигурят и от допълнителния 4-изводен +12V конектор, защото той е конструиран специално да захранва процесора и е недостъпен за други устройства.

Този път вместо да добавят допълнителен конектор, както са правили преди, Intel решават, че е крайно време да подобрят главния конектор, така че да осигурява по-голяма мощност. Резултатът е създаване на нова спецификация ATX12V 2.0, представена през февруари 2003 г. Тази спецификация заменя 20-изводния конектор с 24-изводен и премахва допълнителния 6-изводен конектор. В новия конектор са включени 4 допълнителни извода за +3.3V, +5V, +12V и земя. Този конектор започва да се вгражда в дънните платки от средата на 2004 г. На фиг. 6 е показано разположението на изводите му.

фиг. 6 ATX12V 2.x 24-изводен конектор за главно захранване

Интересно е да се отбележи, че този конектор не е съвсем нов. Първоначално, след 1998 г. той се е използвал в сървърни системи, които както е известно, се нуждаят от допълнителна енергия.

10.5.4 Частен (нестандартен) АТХ дизайн на DellСкот Мюлер предупреждава за една сериозна опасност по отношение на захранванията

на настолни системи, произведени от Dell в периода 1996 година и 2000 година. В тези системи Dell използват конектори на захранващия блок, които изглеждат по същия начин и имат същите щифтове както оригиналните АТХ конектори, но са с нестандартно разположение на изводите. За да има съответствие, Dell използват специално модифицирани АТХ дъна, доставяни от Intel, при които конекторите за захранване са изменени по поръчка. Механично нищо не пречи да се включи нестандартен захранващ блок на Dell към една нова стандартна АТХ дънна платка, която е инсталирана в Dell кутия като ъпгрейд, или пък да се включи

63 от 69

стандартно АТХ захранване към Dell дънна платка. Общо взето смесването им е гаранция за изгаряне на захранващия блок или/и дънната платка.

10.5.5 Допълнителни захранващи конекториОсвен конекторите за захранване на дънната платка, всички захранващи блокове

включват различни допълнителни конектори, основно за монтираните в кутията устройства, но също и за други компоненти.

Конектори за захранване на периферни устройства

Може би най-често срещания допълнителен конектор за захранване е периферийния захранващ конектор, наричан също захранващ конектор за дискови устройства. Той е създаден от AMP като част от комерсиалните MATE-N-LOK серии.

За правилното включване на този конектор трябва да се види мястото на извод 1. Числото 1 е щамповано на пластмасовото тяло на конектора, но понякога е трудно за разчитане. За щастие тези конектори имат специална форма (правоъгълна с 2 скосени ъгъла), която предотвратява неправилното им включване.

Фигура 7 показва перифериен захранващ конектор.

Фиг. 7 Перифериен захранващ конектор

Този тип конектор е единственият, който се среща във всички РС захранващи блокове – от първия IBM PC до последните системи. Той е най-известен като конектор за дискови устройства, но се използва и за осигуряване на допълнителна енергия на дънната платка, видеокарти, охлаждащи вентилатори и въобще за всички компоненти, които могат да използват ток с напрежение +5V или +12V. Той има 4 извода (щифта): 1- жълт (+12V), 2 и 3 – черни (земя) и 4 – червен (+5V). Осигурява до 11 ампера на извод, което представлява общо 11х5 + 11х12 = 187 W.

Конектори за флопидискови устройства

Когато в средата на 80-те в РС за първи път се поставят 3.5 инчови флопидискови устройства е очевидно, че е необходим по-малък захранващ конектор. Подходящ се оказва конектор, създаден също от AMP, който е бил част от серията EI (economy interconnection икономична връзка). Сега тези конектори се използват във всички малки устройства.

64 от 69

Конекторът за флопидискови устройства (фиг. 8) има два пъти по-малка широчина и 4 извода (щифта) на 2.5 мм един от друг, които осигуряват същите напрежения като големия конектор (+12V, +5V и 2 извода за земя), но за по-малък ток – по 2А на извод, което представлява общо 34 вата. Обърнете внимание, че номерирането и обозначаването на напрежението са обърнати при флопидисковия конектор спрямо периферийния конектор.

Фиг. 8. Конектор за флопидискови устройства Ранните захранващи блокове са снабдени само с 2 периферийни конектора, а по-

късните имат 4 или повече големи периферийни конектора (за дискови устройства) и 1 или 2 по-малки флопидисковия конектора, като за някои захранващи блокове конекторите могат да достигнат до 8 и повече.

Понякога, когато конекторите не достигат, се налага да се използва Y- разклонителен кабел или преходен кабел от перифериен към флопидисков конектор (фиг. 9).

Y- разклонителен кабел Преходен кабел от перифериен към флопидисков конектор

Фиг. 9 Преходни кабели

Serial ATA захранващи конектори

Ако в компютърната система има Serial ATA дискови устройства, необходим е захранващ блок с Serial ATA (SATA) конектори. SATA конекторът (фиг.10) е специален 15-щифтов конектор, свързан към само 5 проводника, което означава, че към всеки проводник директно са свързани 3 контактни щифта. Номерацията на проводниците е в обратен ред на номерацията на щифтовете, което е малко смущаващо. Общата широчина на този конектор е приблизително същата като на периферийния захранващ конектор, но SATA конекторът е значително по-тънък. Всички най-нови спецификации на форм фактори за захранващи блокове включват задължително SATA конектори.

65 от 69

Фиг. 10. Serial ATA захранващ конектор

Ако захранващият блок няма SATA конектори, може да се използва адаптер (фиг. 11). Тези адаптери нямат извод с +3.3V, но за щастие това не е проблем, понеже повечето дискове използват само +12V и +5V.

Фиг. 11. Преходен кабел (адаптер) от перифериен към Serial ATA захранващ конектор

PCI Express x16 графични захранващи конектори (SLI)

Въпреки че спецификацията ATX12V 2.x включва един нов 24-щифтов главен конектор за захранване на устройства с по-голяма мощност, конструкцията ограничава потреблението на мощност от видеокарти до 75 W. Вече съществуват видеокарти които изискват значително по-голяма мощност на захранването (над 100 W) и ще се появяват карти, които ще изискват все повече. Тъй като през дънната платка не може да се осигурят повече от 75 W, от групата PCI-SIG (Special Interest Group) е създаден стандарт за подаване на поне 150 W енергия директно към видеокартата чрез допълнителен графичен конектор. Този конектор е с 6 извода, направени в стила на главния и допълнителния +12V конектори (фиг. 12). В официалния стандарт се включват само 2 извода +12V (извод 2 не се използва), макар че повечето захранващи блокове използват три извода.

фиг. 12 Захранващ конектор 150 W за графични карти PCI Express x16 

Всеки извод в PCI Express x16 графичния конектор е оразмерен да поддържа до 8 A ток, ако се използват стандартни клеми (192 W за целия конектор). Ако се използват HCS клеми, се подържат до 11А на извод (264 W), а ако се използват Плюс HCS клеми, се подържат до 12А (288 W). Тези мощности би трябвало да задоволят и „най-гладните” видеокарти, които биха се появили следващите години.

Тези конектори често се наричат SLI конектори, понеже често се използват с високопроизводителни PCI Express x16 карти със SLI възможности (scalable link interface –мащабируем свързващ интерфейс). SLI е метод на NVIDIA за използване едновременно на две видеокарти, като всяка отговаря за своята половина от екрана, удвоявайки производителността. Всяка карта тегли до 150 W, поради което се изискват 2 графични конектора (по един за всяка карта). Това поставя високи изисквания към захранващия блок, който трябва да осигурява 1000 W и повече.

66 от 69

Ако захранващият блок осигурява достатъчна мощност, но няма графичен конектор, може да се използва Y- адаптер, който превръща два периферийни конектора в един 6-изводен графичен конектор.

10.6 Енергоспестяващи функции (управление на захранването)Енергоспестяващите функции на РС са разработени във връзка с увеличаващите се

възможности на системите, изискващи все по-голяма консумация на енергия. За стандартните настолни системи енергоспестяващите функции са въпрос на икономия на ток и избягване ръчното включване и изключване на компютъра. За преносимите компютри (лаптопи и ноутбуци) управлението на захранването е по-важно, от гледна точка удължаване живота на батерията.

Energy Star системиОрганизацията ЕРА стартира сертификационна програма за енергийно-ефективни РС-

та и периферни устройства. За да е член на тази програма, PC-то или мониторът трябва да могат да съкратят разхода на енергия до 30 вата или по-малко в периодите на бездействие. Системите, отговарящи на тази спецификация, получават правото да носят логото Energy Star. Един от проблемите при тези системи е, че дънната платка и харддиска могат да преминат в спящ режим, при който консумират много малко енергия. Това води до проблеми в някои по-стари захранващи блокове, тъй като ниската консумация не осигурява достатъчно голям товар за тяхната нормална работа.

Усъвършенствано управление на захранванетоУсъвършенстваното управление на захранването (Advanced Power Management - АРМ)

е спецификация, разработена съвместно от Intel и Microsoft. Когато се активира, АРМ може автоматично да превключва системата между пет състояния в зависимост от нейната текуща дейност. Започва се от постоянно включена система (On), преминава се през намаляване потреблението на някои устройства (например се намалява тактовата честота на процесора), изключване на част от устройствата и се достига до пълно изключване на системата (Off).

За да работи, АРМ изисква поддръжка както от страна на софтуера, така и от страна на хардуера. Операционната система, поддържаща АРМ (например Windows), задейства събития за включване на енергоспестяващите функции, обаче не се занимава директно с управлението на захранването на хардуера. За комуникация между операционната система и отделните хардуерни устройства се използва абстрактен слой, състоящ се от АРМ драйвер и системния BIOS. АРМ драйверът комуникира с отделните приложения и софтуерни функции, задействащи енергоспестяващите функции, а хардуерните устройства в системата комуникират със системния BIOS. АРМ драйверът и BIOS комуникират директно, като по този начин окончателно свързват операционната система с хардуера (фиг. 13).

фиг. 13 Слоеве в система с APM (усъвършенствано управление на захранването)

67 от 69

Ако поради някаква причина откриете, че енергоспестяващите функции създават проблеми във вашата система с АРМ - например блокиране или отказ на хардуерни компоненти, най-лесният начин да забраните АРМ е от системния BIOS.

Усъвършенстван интерфейс за конфигуриране на системата и управление на енергията

Усъвършенстваният интерфейс за конфигуриране на системата и управление на енер-гията (Advanced Configuration and Power Interface - ACPI) е нов стандарт, поддържан от по-новите системни BIOS-и и операционните системи от Windows 98 нататък. Ако вашият BIOS и операционната ви система поддържат ACPI, цялото управление на енергоспестяващите функции се извършва от операционната система, а не от BIOS. ACPI e предназначен да осигури централизирано място за управление на енергията и конфигурирането на системата; в миналото често се случваше така, че да не можете да настроите АРМ настройките в BIOS-а, а и операционната система влизаше в конфликт с настройките. ACPI се поддържа в по-новите системи и е за предпочитане пред APM.

10.7 Измерване на напреженията в компютърната системаЕдин прост тест, който може да се извърши по отношение на захранващия блок е

измерване на изходните му напрежения. За да са коректни резултатите, напреженията трябва да се измерват, когато е свързан подходящ товар, най-добре докато системата работи.

За препоръчване е да се използва цифров, а не аналогов мултиметър, тъй като при измерване на съпротивления аналоговите мултиметри подават 9V директно по веригата, което е опасно за повечето схеми в компютъра. За симулиране на различни напрежения в захранващата мрежа е желателно да се разполага с трансформатор за променливо напрежение от 0 до 280 V. С негова помощ например може да се провери управлението на сигнала Power_Good.

За да се измерят напреженията в една работеща система, трябва да се използва измерване в задната част на конекторите (фиг. 14). Не можете да се откачи който и да е от конекторите, докато системата работи, така че трябва да се мери всичко така, както си е свързано. Почти всички конектори, в които трябва да се бърка с измервателните сонди, имат отвори в задната си част, където влизат проводниците. Сондите на измервателния уред са достатъчно тънки, че да се пъхнат в тези отвори и да осъществят контакт със задния край на металните клеми.

68 от 69

фиг. 14 Задно измерване на конекторите на захранващия блокЗа да се тества захранващия блок за правилни изходни нива на напреженията, трябва да

се провери напрежението на сигнала Power_Good (Р8-1 при AT, Baby-AT и LPX захранванията; извод 8 на конектора тип АТХ). То трябва да е между +3v до +6v. Ако измерената стойност не е в този диапазон, системата никога не вижда сигнала Power_Good и заради това не стартира правилно при включване на захранването.

За АТХ захранванията спецификациите изискват напреженията да бъдат с отклонение максимум 5%, с изключение на захранването от 3,3v, което трябва да е в границите на +/-4%, но ако отчетените стойности са в границите на +/-10%, това се счита за приемливо.

69 от 69