Модифікація розширювача пам’яті B107 комп’ютера ПОИСК-1 для 512 Кб версії
Розширювач B107 спроєктований для версій пошуку із об’ємом пам’яті 128 Кб. Із одним блоком пам’ять можна збільшити до 384 Кб із 2-ма до 640 Кб. Перший блок необхідно встановлювати у перший роз’єм розширення а другий у любий інший. Перший слот розширення у пошуку відрізняється від решти тим, що лінія ADDR_SEL (контакт A5 роз’ємів) постійно у стані логічного 0 а у
3 інших у 1, це використовується для того, щоб рознести блоки розширення пам’яті на різний адресний простір.
Стандартний модуль при встановленні у 1-ий слот розширювач працює в діапазоні адресів 96 - 352 Кб (0x18000 - 0x57FFF), у інших роз’ємах 352 - 608 Кб (0х58000 - 9FFFF)
У 512 Кб версіях комп’ютера немає сенсу встановлювати розширювач у перший слот - його адреси пам’яті повністю перекриваються стандартною пам'яттю комп’ютера, у інших слотах перекриваються частково а саме адреси у діапазоні 352 - 480 Кб, значить 128 Кб фізичної пам'яті пропадає. Селектор адресів реалізований на ПЗУ к556рт4 (D1 за схемою розширювача) можна перепрограмувати щоб змістити вгору адресний простір у якому він буде працювати. У стандартній прошивці селектора адресів використовується лише 64 молодших 4-бітових слів адресного простору, це 5 із 8-ми його адресних шин (A0 - A4) які під'єднані до 5-ти старших адресних шин комп'ютера у 16-ковій нотації A0F - A13. 6-тий адрес ПЗУ (А5) висить на ADDR_SEL, два сташиш (A6, A7) на масі.
b107_rt4_p1.jpg
13 10 0F 0C 0B 08 07 04 03 00 <- Адресний простір пошуку
X X X X X 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
A4 A1 A0 <- Адреси селектора адресів РТ4 (D1)
Стандартна прошивка:
0 1 2
3 4 5 6 7 8 9 A B C D E F
- - - - - - - - - - - - - - - -
0x00: F F F 5 2 2 6 6 1 1 5 F F F F F
0x10: F F F F F F F F F F F F F F F F
0x20: F F F F F F F F F F F 5 2 2 6 6
0x30: 1 1 5 F F F F F F F F F F F F F
0x40: F F F F F F F F F F F F F F F F
………………
………………
0xF0: F F F F F F F F F F F F F F F F
Перша половина прошивки для 1-ого слоту, друга для
Слова починаючи від адресу 0x40 до 0xFF чомусь прошиті одиницями, мабуть щоб не можна було модифікувати ПЗУ
Перші значущі дані появляються за адресою 0x03
0001 1000 0000 0000 0000 -> 0x18000
переводячи на адресацію ПОШУКУ це буде адрес 0x18000 (96 Кб), кожне слово ПЗУ активне для 32 Кб пам’яті. Наступна комірка декодує адрес 0x20000, І т. Д.
Друга половина активної прошивки починається із адресу 0x20, є ідентична першій, але зміщена на 8 адресів у ПЗУ, що еквівалентно 8-ми блокам по 32 кб = 256 Кб - об’єм модуля розширення, активується коли блок встановлений у 2 чи наступний слоти. Вона працює на адресному просторі
0101 1000 0000 0000 0000 -> 0x58000
Для 512 Кб версії пошуку, у якій використовується 480 Кб ОП стартовий адрес розширювача необхідно змістити на адресу 0x78000 (0111 1000 0000 0000 0000) у селекторі адресів РТ4 це буде 0x0f адрес, щоб розширювач працював як 1-му так і у інших адресах, потрібно прошити однакових 32 слова починаючи із 0 - та 32-ого адресу, це буде:
0 1 2
3 4 5 6 7 8 9 A B C D E F
- - - - - - - - - - - - - - - -
0x10: F F F F F F F F F F F F F F F 5
0x20: 2 2 6 6 1 1 5 F F F F F F F F F
0x20: F F F F F F F F F F F F F F F 5
0x30: 2 2 6 6 1 1 5 F F F F F F F F F
Прошивку можна змінити, щоб працювала як для 128 Кб версії так і 512, для цього 64 слова оригінальної прошивки залишити а модифікацію залити починаючи із адреси 64 (0x40) чи 128 (0x80) відповідно перерізати і перепаяти адресну(і) шини A6 / A7 селектора РТ4 на масу чи через підтягуючий резистор на VCC можна буде вибирати активний діапазон.
Прошивка:
B107_rt4_512.zip