Внимание! Это временный неофициальный архив старой версии форума Полигон Призраков, созданный сочувствующим форуму участником. Этот сайт просуществует лишь до тех пор, пока администрация Полигона не сдержит своё обещание и не откроет официальный архив по адресу old.sannata.org.

Полигон-2

Форум о старых компьютерах

Объявление форума

Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС.

Полигон-2 »   IBM PC-совместимое. До 2000 года включительно »   Помогите понять, как работает плата расширения памяти?
RSS

Помогите понять, как работает плата расширения памяти?

<<Назад  Вперед>> Печать
 
sanders
Advanced Member
Профессионал

Откуда: Санкт-Петербург
Всего сообщений: 6434
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
26 мар. 2008
Есть у меня плата ISA LongShine LCS-8661 REV:B2, т.е. не N (это важно: у меня еще на DIPP-ах, а Rev.N везде описана и она на симах).
Мануала нет, и это первый вопрос - не могу разобраться с ней.
У нее 4 банка по 18 микрух 1х256, т.е. каждый банк по 512кб.
Есть группа джамперов из 11 штук. И я полагал, что они задают базовый адрес, с которого карта подключает свою память.
Т.е. я полагал, что если на карте 2Мб, а на материнке симами установлен 1Мб, то я получу в сумме 3Мб. Если на материнке 2Мб, то я получу 4Мб. Главное правильно подергать джамперы.
Но, как я их не дергал, память не особо добавляется, скорее перекрывается. Максимальный эффект я получил, когда на материнке стояло 512кб симами и вот эта карта. Если же на материнке 2Мб симами, то я получаю лишь 2560кб общей памяти.
И тогда я полез в TH-99, и стал читать другие карты - что они могут.
И вот у другой карты: http://artofhacking.com/th99/i/U-Z/50495.htm я увидел таблицу, которую не понял. Что такое Base и что такое Start? Значит ли это, что карта может подключать свою память не сразу после основного ОЗУ (симы на материнке), а через некоторый промежуток (дырку в адресации)? Если да, тогда я понимаю, почему подсчет ОЗУ при включении компа не захватывает 2Мб памяти на карте: подсчет до них не доходит, но где-то вверху эта память есть, просто о ней компьютер не знает. Но таблица по моей ссылке все равно не понятна. Там описана карта с максимум 4Мб, а в таблице приведены значения намного превышающие эту цифру.
Растолкуйте? Мне кажется, если я пойму ту таблицу, то разберусь со своей картой.
alecv
Advanced Member


Откуда: Санкт-Петербург
Всего сообщений: 5545
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 окт. 2004
sanders Base - это вероятно сколько "Базовой" памяти, то есть сколько припаяно на мамке. Возможен вариант, когда базовой 512 или менее, а карточка стартует с мегабайта.
Fe-Restorator
Гость

Ссылка

Start == сколько ВСЕГО ram отсчитает комп при старте
Base == сколько базовой нижней памяти имеется в компе. Тот-ж амстрад имеется и в варианте 512К, и в варианте 640К.
EXT == сколько памяти возьмётся из чипов на карточке, этот объём всегда меньше формулы "ёмкость чипа*кол-во чипов", ибо вычитается из него первый мегабайт RAM.
Логика такова:
1) Нельзя подменять собой базовую память компа, что распаяна на мамке - 98% мамок такого не позволят. Отсюда "вычитаем" первые 512/640
2) Обращение "за пределы мегабайта" реализовано оконным методом, т.е в пределах верхних 384К нужно "прорубить окно в европу" и чрез него глазеть на просторы адресного пространства карточки. Добавить сюда всякие OS-TSR и верхние 384К тоже нужно исключать из объёма чипов карточки.

Остальное - нюансы: "куда и насколько можно залезть, чтоб не получить по-носу". Т.е. тонкая перекройка верхних 384К.

PS. На ХТ машинах верхние 384К тоже распаивались, не на всех, да, но такие экземпляры имеются. С ними та рам-карточка может и не заработать - похоже она рассчитана самостоятельно формировать верхние 384К и уже потом их перекраивать, в т.ч. и средствами ОС.
Сейчас на форуме
sanders
Advanced Member
Профессионал

Откуда: Санкт-Петербург
Всего сообщений: 6434
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
26 мар. 2008
То есть, если у меня на 286 материнке 2Мб DIPP-ами набрано, то я не смогу такой карточкой расширить ОЗУ до 4Мб? Получу максимум 2560Мб, т.е. 1,5Мб на карточке перекроют 1.5Мб памяти на материнке, и сверх этого останется лишь 512кб. Или все-таки, это обилие комбинаций рассчитано именно на то, чтобы продолжить непрерывную адресацию с того адреса, где кончилось ОЗУ материнской платы, в том числе ОЗУ свяше 1Мб?
Первая не стыковка: Нафига столько комбинаций джамперов? Я понимаю, предусмотреть старт с 256, с 512, 640, 768, ну еще 384кб, да и все пожалуй. А дальше через 1-2Мб шагать. А там их 11, даже если 4 не используется.
Вторая не стыковка: по ссылке карта памяти рассчитана на 4Мб, а как тогда берутся значение 7, 11, 12Мб.... Т.е. после 512или 640кб, распаянных на материнке, будет "дырка" в адресах, а потом с адреса, указанного в графе START пойдет память на карточке? И, снова-таки, зачем тогда такая мелкая градация в 512кб. Какой смысл начинать эту доп.память с каких-то 9728кб (например), если можно с 8Мб, 12Мб, т.е. там где закончится ОЗУ, набранное симами на материнке?
В ХТ она совсем не заработала. Ей, видимо, нужно 16-битное расширение ISA
uav1606
Advanced Member


Откуда: Енакиево
Всего сообщений: 4373
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
16 янв. 2008
sanders, я могу только сказать, что для той карты с TH99 получается, что колонка Start = Base + Ext.
Возможно, Start - это весь объём памяти, Base - сколько Вы хотите откусить под базовую, а Ext - под расширенную?..

Вообще, мне кажется, что эта PE-520 к Вашей карте никакого отношения не имеет.
Вот тут есть сообщение на Usenet:
http://www.megalextoria.com/us...33586.html
Я так понял, что на карте LCS-8661 память можно использовать и как extended, и как expanded (EMS), плюс там ещё есть что-то для управления проверкой чётности, т.е. там, вероятно, назначение джамперов вообще другое (не как у PE-520). Т.е. надо искать описание...

P.S.
Кстати, вот здесь нашёл фотку этой платы (как раз Rev. B):
http://www.symphoniae.com/misc/VC/LONGSHINE_l.jpg
Там вроде есть ещё блок переключателей (4 штуки) и ещё блок из двух джамперов...

P.P.S.
Нашёл какие-то утилиты для этой карты:
http://manual.longshine.de/5_O...61N210.EXE
Правда, это для версии N. А вот с документацией беда... :-( Был такой файл 8661doc.exe, да канул в Лету.
Fe-Restorator
Гость

Ссылка

sanders написал:
[q]
То есть, если у меня на 286 материнке 2Мб DIPP-ами набрано, то я не смогу такой карточкой расширить ОЗУ до 4Мб? Получу максимум 2560Мб, т.е. 1,5Мб на карточке перекроют 1.5Мб памяти на материнке
[/q]
Да, для карточки PE-520 так и будет. На мамке нужно осталять не более 640К, остальное - с карточки.

sanders написал:
[q]
Нафига столько комбинаций джамперов? ... А там их 11, даже если 4 не используется.
[/q]
Не понятно, об которой карточке речь. Если об PE-520, то на ей ВСЕГО-то 8 переключателей.
Если об которой иной карте - то на неё и нужно зрить доку, ибо назначение джамперов совершенно иное. Т.е. дока на PE-520 поможет лишь с логикой работы похожих карточек, а не с раскладкой памяти и её настройкой под твои нужды.

sanders написал:
[q]
по ссылке карта памяти рассчитана на 4Мб, а как тогда берутся значение 7, 11, 12Мб.... Т.е. после 512или 640кб, распаянных на материнке, будет "дырка" в адресах, а потом с адреса, указанного в графе START пойдет память на карточке? И, снова-таки, зачем тогда такая мелкая градация в 512кб. Какой смысл начинать эту доп.память с каких-то 9728кб (например), если можно с 8Мб, 12Мб, т.е. там где закончится ОЗУ, набранное симами на материнке?
[/q]
Это маркетинговая фича: "наша карточка способна держать ДО NN гиг памяти", как-то так. Однако, физически она ограничена 4-мя метрами, выше - не прыгнешь. Видимо, изначально был инженерный расчёт на поддержку будущих ёмких чипов памяти, с возможным изменением ревизии (читай - топологии текстолита) платы. Логика остаётся неизменной, меняется лишь RAM-поляна. Уважуха тем инженерам! (По-аглицки - Respect 2 engineers.) Однако, сим планам не суждено было сбыться: убийцами таких карточек стали обычные SIMM модули, ёмкие и занимающие на порядок меньше места в компе.

UPD.
Пример с PE-520 на самом деле - не совсем удачный. Есть и иные RAM-карточки, даже допускающие установку сразу нескольких их в один комп. У таких карточек нет жёсткой привязки ни к начальному адресу памяти, ни к объёму базовой памяти компа. Да, их можно выставить и со 2-го метра, и с 6-го, и с 10-го... (предполагаю, что на борту карточек ровно 4 метра памяти, хотя могут быть и все 16) Т.е., описываю случай установки 3-х карточек в один комп. Главное, чтобы адресное пространство процессора не имело дыр.
Джамперами на тех карточках как-раз и задаётся как начальный адрес памяти карточки, так и её объём. + тип чипов, если это имеет значение.
Сейчас на форуме
sanders
Advanced Member
Профессионал

Откуда: Санкт-Петербург
Всего сообщений: 6434
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
26 мар. 2008
Ага.
Уже лучше.
Действительно большинство карт позволяют устанавливать их неск. штук.
Поэтому на моей карте есть переключатель номера карты.
Тогда память можно суммировать от нескольких карточек, и вот теперь я понял, зачем нужна возможность получать окна памяти с разным начальным адресом. Хотя теперь не понял, зачем тогда адрес карточки? Задал на первой джамперами, что она с ХХХХХ, на второй, что она с YYYYY и т.д. И комп всю эту память подряд нашел.
А вот никто не ответил на мой вопрос - можно ли, чтобы память шла не подряд, а через пустой промежуток? И как тогда компу сообщить, что где-то там дальше будет еще кусок памяти? Какие-то спец.драйверы, которые отлавливают обращения к адресам памяти и транспонируют адреса?
Uav1606, спасибо большое. А я ни гуглом, ни Яндексом ничего вообще не мог найти.
Блок переключателей из 4штук справа, если аналогия с ревизией N существует, он задает адрес карты.
Блок из двух джамперов внизу - если их сдвинуть в любое иное положение, карта перестает работать (видеться).
А из приведенной мной наугад карты PE-520 я узнал, что может быть джампер, задающий тип памяти: 1х1000 или 1х256. И возможно, на моей карте он тоже есть, и возможно в 11-джамперной группе.
alecv
Advanced Member


Откуда: Санкт-Петербург
Всего сообщений: 5545
Рейтинг пользователя: 0


Ссылка


Дата регистрации на форуме:
5 окт. 2004
sanders написал:
[q]
А вот никто не ответил на мой вопрос - можно ли, чтобы память шла не подряд, а через пустой промежуток?
[/q]
Выше мегабайта - нет. Единственное исключение - "дырка" между 15 и 16Mb на EISA.
Fe-Restorator
Гость

Ссылка

sanders написал:
[q]
Хотя теперь не понял, зачем тогда адрес карточки? Задал на первой джамперами, что она с ХХХХХ, на второй, что она с YYYYY и т.д. И комп всю эту память подряд нашел.
[/q]
За надой: процу нуна знать, где напаяны чипы! (почти поговорка :) )
Изначально, ни биос, ни проц НЕ ЗНАЮТ ничего об такой RAM-карточке. Если на неё напаять чип биоса с кусочком опт-ром внутре (в твоём случае это чип программируемой логики) - тогда мамкин биос её увидит и сможет как-то опознать. Однако, этот кусочек памяти (сколь-бы малым ни был) занимает часть верхних 384К мамкиной памяти. Плюс к тому, если общение с карточкой реализовано "через форточку 32Кб", то и это оконце памяти повисает в пределах тех-же 384К (а на ХТ..286 другого выбора-то и нет). Получается, каждая карточка занимает минимум 8+32 килобайта памяти. Довольно много для нескольких карточек - для os+tsr мало-что остаётся.
Зато на самой карточке должна быть куча джампов:
1) задать базовый адрес "ром"-а карточки, как вариант - базовый адрес порта, по коему обратиться к карточке.
2) задать границу начала поляны RAM
3) задать ёмкость карточки
4) задать режим работы: оконный, линейный, иной-какой...


sanders написал:
[q]
А вот никто не ответил на мой вопрос - можно ли, чтобы память шла не подряд, а через пустой промежуток? И как тогда компу сообщить, что где-то там дальше будет еще кусок памяти? Какие-то спец.драйверы, которые отлавливают обращения к адресам памяти и транспонируют адреса?
[/q]
Нет, такое не практикуется. Неважно, пользуешь ты память или нет, обеспечь ОДИН НЕПРЕРЫВНЫЙ кусок памяти (линейный массив ячеек) от 0 и до MAX ёмкости. Никаких "дыр", никаких "внахлёст" накладок.

Помянутая на злобу дня "дыра 15-16М" на самом деле не существует. Вообще. Подразумевается, что у тя есть некая железяка, на коей распаян ровно метр памяти и этот метр как раз мапится в основную память, начиная с границы 15М. Т.е., фактически, в компе теперь 17++ метров памяти: 0..15 + 15..16 + 16..17(в общем случае, 16..NN). Именно для этого и нужна "дыра 15-16", ибо без неё та железяка принципиально не работает. Таких железяк немного, они редки и непрактичны, посему в биосах "дыру" нужно включать вручную. По-умолчанию она неактивна и проц видит все 16++ метров непрерывно.

PS. Проц сам работает с памятью, аппаратно. Нафига эмулировать это программно, да ещё и на том-ж самом проце? Мазохизм крепчал, или тормоза шибко нравятся, как механизЬм? :( Эт только в современности можно эмулировать 8086 на i7, ибо не всегда аутентичное железо можно достать/использовать. А в то время-та, в эпоху 286-х, +- ...

PPS. Обрати внимание: эта "длинносияющая" карта рассчитана работать по шине РC-104, хоть нужные разъёмы и не распаяны. Т.е. вариант промышленного контроллера/ПК предусмотрен.
Сейчас на форуме
<<Назад  Вперед>> Печать
Полигон-2 »   IBM PC-совместимое. До 2000 года включительно »   Помогите понять, как работает плата расширения памяти?
RSS

1 посетитель просмотрел эту тему за последние 15 минут
В том числе: 1 гость, 0 скрытых пользователей

Последние RSS
[Москва] LIQUID-Акция. Сливаются разъемы CF
МС7004 и 7004А на AT и XT
Пайка термотрубок
Проммать s478 PEAK 715VL2-HT ( Full-Size SBC)
Подскажите по 386 материке по джамперам.

Самые активные 5 тем RSS