Памет само за четене

Устройствата с памет само за четене (ROM) са разделени на четири типа [4, 5]:

О маски, фабрично програмирани със специални маски;

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

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

За многократно програмиране от потребителя с електрическо изтриване на информация.

Да разгледаме ROM от втори тип, който се състои от nx2n декодер и OR вериги, свързани към неговите изходи със стопими джъмпери (фиг. 9.48). ROM съдържа 2x4 декодер под формата на подсхема pzti_dcd (A, B - входове за код, E - вход за разрешаване, активен сигнал с високо ниво), към изходите на който могат да бъдат свързани четири елемента 4OR с допълнителни устройства. На фиг. 9.48 показва два такива елемента, направени под формата на отделни подсхеми pzu_unl и pzu_un2. Въпреки че тези елементи са еднакви, увеличаването им във веригата чрез копиране е изключено поради наличието на изгорени джъмпери - ако има подсхеми със същото име, изгарянето на джъмпер в една подсхема автоматично ще доведе до изгаряне на същия джъмпер в друга. Тъй като програмата не позволява копиране на подсхеми с тяхното преименуване, всички те трябва да бъдат изпълнени напълно. В диаграмата DO, D1 са изходите на младшите и първите цифри.

програмиране

Схемата на декодера pzu_dcd е показана на фиг. 9.49. Декодерът е направен на три елемента НЕ и четири елемента ZILI-NE на транзистори (фиг. 9.50).

Необходимостта от създаване на елементи на декодера на транзистори се обяснява с факта, че математическите модели на цифровите интегрални схеми, използвани в програмата EWB, не винаги позволяват свързването на конвенционални транзисторни вериги към тях и по-специално тези, използвани вразглеждан ROM на клетката с памет под формата на подсхема pzu_uni. Вътрешната му структура е подобна на структурата на клетката с памет, използвана в K155REZ ROM (фиг. 9.51) [5]. За разлика от IC K155REZ, в който като OR елемент се използва транзистор с множество емитери, на фиг. 9.51 показва отделни транзистори Т1. T4, чиито излъчватели са през изгорели джъмпери S1. S4 (симулирани от 10 mA предпазители) са свързани към формовчика на транзистори T5, T6 и ценеров диод D. Транзистор T5 и ценеров диод D се използват само в режим на програмиране и в работен режим не влияят на работата на изходния етап на транзистор T6 (каскада с отворен колектор), тъй като транзисторът T5 е затворен от нисък потенциал в основата си (напрежението на пробив на ценеров диод D е избрано малко по-високо от захранващото напрежение на транзистор T6, доставен във втората подверига към точка DO или D1 през товарен резистор).

само

само

ROM клетката работи по следния начин. В първоначалното състояние транзисторите Т1. T4 и T6 са затворени и когато към T6 е свързан товар, на изхода му DO се генерира сигнал на логическа единица (около +5 V). Когато дадена кодова комбинация се приложи към входовете A, B на декодера и се подаде сигнал на логическа единица към входа за разрешение E, един от транзисторите T1. T4 се отваря и на изхода DO се генерира сигнал за логическа нула. Така например, когато A = B = 1, транзисторът T4 се отваря и сигналът на логическа единица от неговия емитер през джъмпер S4 отива към разделителя на резистори R2, R3, транзисторът T6 се отваря и на изхода му се генерира сигнал за логическа нула. Очевидно, с всяка друга двоична комбинация, същото ще се случи, докато съответният джъмпер не бъде унищожен.

Изгарянето на джъмпер е същността на програмирането иизвършва се отделно за всяка цифра (всяка клетка), както следва:

Източник на напрежение от 12,5 V е свързан към изхода на клетката Dx през резистор за натоварване (неговото съпротивление за конкретни ИС е посочено в документацията, за K155REZ е около 300 ома), в резултат на което ценеровият диод D се пробива и транзисторът T5 се отваря;

Относно входа за разрешение E за кратко време се подава сигнал за логическа единица, докато през един от отворените транзистори Т1. T2 и T5 протичат ток, достатъчен да изгори съответния джъмпер (продължителността на сигнала за разрешаване на входа E в индустриалните програмисти може автоматично да се увеличи след няколко неуспешни опита за програмиране на една и съща клетка);

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

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

BIOS

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

Трябва да се отбележи, че разглежданият ROM модел (както на фиг. 9.48, така иориз. 9.52) е достатъчно капризен и за някои комбинации от входни сигнали симулацията не се извършва. Признак за невъзможността за моделиране е липсата отляво на превключвателя за захранване (в горния десен ъгъл на екрана) на прозорец с индикация на интервалите от време на броене. След известно време може да бъде дадена препоръка за промяна на настройката за грешка на симулацията (по подразбиране е 1%). Препоръчително е да го зададете на максимално възможния (10%) в менюто Circuit (команда Analysis Options, Tolerance параметър). Също така е препоръчително да променяте съпротивленията на входните резистори и товарните резистори на елементите НЕ и ИЛИ-НЕ (фиг. 9.50), както и да се опитате да промените параметрите на транзисторите. В краен случай можем да се ограничим до най-простия случай - да се справим без декодер и да използваме само една клетка от паметта на фиг. 9.51 чрез свързване на допълнителни елементи към изхода и към един от неговите входове, както е показано на фиг. 9.52.

ROM със стопими джъмпери най-често се използват като специализирани декодери, например за избор на експлозиви.

Обикновено на дънната платка е инсталиран само ROM с Main System BIOS, който отговаря за самата платка и FDD (флопи дискове), HDD (хард дискове), портове и клавиатурни контролери; Системният BIOS почти винаги включва System Setup - програма за настройка на системата. Видео адаптерите и HDD контролерите със ST-506 (MFM) и SCSI интерфейси имат собствен BIOS в отделни ROM;

може и други платки да ги имат - интелигентни дискови и порт контролери, мрежови карти и др.

Обикновено BIOS за модерни дънни платки се разработва от една от специализираните компании: Award Software, American Megatrends (AMI), по-рядко:

Phoenix Technology, Microid Research; в момента най-многопопулярни BIOS за награди. Някои производители на платки (като IBM, Intel и Acer) разработват свои собствени BIOS за тях. Понякога за една и съща платка има версии на BIOS от различни производители, в този случай е разрешено копиране на фърмуера или замяна на ROM чиповете; в общия случай всяка версия на BIOS е свързана с определен модел дънна платка.

Преди това BIOS беше поставен в еднократно програмируем ROM или ROM с UV изтриване; сега се произвеждат основно платки с електрически препрограмируем ROM (Flash ROM), които позволяват препрограмиране на BIOS с помощта на самата платка. Това ви позволява да коригирате фабрични грешки в BIOS, да промените фабричните настройки по подразбиране, да програмирате свои собствени скрийнсейвъри и др.

Типът ROM чип обикновено може да бъде идентифициран чрез маркировка: 27xxxx - обикновен ROM, 28xxxx или 29xxxx - препрограмируем. Ако има прозрачен прозорец върху тялото на чипа 27xxx, това е ROM с ултравиолетово изтриване;

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

Контролни въпроси и задачи

1. Какви видове ROM има и къде се използват?

3. Какви видове ROM се използват за съхраняване на BIOS програми?

4. С помощта на диаграмата на фиг. 9.52, симулирайте процеса на програмиране на ROM с предпазими джъмпери.

5. Начертайте ROM схема, базирана на двубитов ROM на фиг. 9.48 и симулирайте процеса на програмиране на една от неговите клетки с памет.