01 июня 1998
  Железо  

      ОТКРЫТЫЕ ТЕХНОЛОГИИ       
                                
        ЗАМЕНА К5б5РУ5 НА К5б5РУ7.        
                                
(C) 1998 Master, VALEX, MAX     
--------------------------------------------------------------- 
              1.Вступление.               
                                
   Данная  статья расчитана на более-менее
знающую публику, которая умеет держать па-
яльник в руках и для которых схема компью-
тера  не является темным лесом. Мы попыта-
емся  сделать  детальный анализ технологии
замены  рушек для увеличения объема памяти
компьютера.  Этот путь мы прошли сами пол-
тора  года  назад  без посторонней помощи.
Когда  мы столкнулись с этой проблемой, то
обнаружили,  что справочной информации или
нет  вообще, или очень мало и без деталей.
Поэтому решено поделиться знаниями с широ-
кой  общественностью. Но статья не претен-
дует на роль справочного материала, поэто-
му за замеченные неточности просьба строго
не винить. В этой статье мы попробуем дос-
тучаться до провинции - ведь там компьюте-
ров  в расширением до 512 килобайт практи-
чески  нет. На наш взгляд расширение обыч-
ного   48/128`килобайтного  компьютера  до
512Кб наиболее прост и логичен ввиду деши-
визны  и простоты доработки. Порты, по ко-
торым  производится  расширение  памяти до
512Кб,  значения  не  имеют, хотя наиболее
логичным  и самым доступным является стан-
дартный  спектрумовский порт 32765 (#7FFD)
по  шестому  и  седьмому  биту,  которые в
стандартном  128`килобайтном  Спектруме не
используются.  Именно  такое расширение до
512Кб позволит избежать добавления в схему
лишних микросхем. Тем более, что все-равно
прийдется  реализовать этот порт, если пе-
ределывать  48`килобайтную  машину.  Прог-
раммная  поддержка на 512-е расширение уже
давно  существует  и  продолжает  произво-
диться.  Политика  журнала  направлена  на
поддержку  именно  этого стандарта, но как
все  сделать  у  себя - решать вам на свое
усмотрение.  Еще во времена СССР было раз-
работано великое множество спектрумсовмес-
тимых  компьютеров,  которые имели большие
схематические  и  ПЗУ`шные  различия между
собой. Чтобы никого не "обидеть", мы реши-
ли  не  "привязываться" к какой-то опреде-
ленной  схеме компьютера, а изложить все в
общих чертах.                             
                                
    2.Динамическое ОЗУ на К5б5РУ5/РУ7.    
                                
   В  ZX-Spectrum применяется динамическое
ОЗУ  в  виде  линейки  микросхем из восьми
штук   для  48`килобайтного  компьютера  и
шестнадцати  штук для 128`килобайтного со-
ответственно.  Они  представляют  из  себя
конденсатор  в  прямоугольной  упаковке  с
кучкой  ножек.  В них хранится информация,
представляемая  как наличие или отсутствие
заряда.  Для стабильной работы рушек необ-
ходимо делать подзарядку, называемой реге-
нерацией.  Что  такое  регенерация и зачем
она  нужна? Поскольку время сохранения за-
ряда конденсатора ограничено, то необходи-
мо  периодическое  восстановление  заряда.
Этот  процесс  называется  регенерацией, а
период  восстановления данных - циклом ре-
генерации.  В  таблице приведены временные
данные регенерации для разных рушек.      
                                
3.Структура микросхемы К5б5РУ5. Емкость микросхемы 64 Кбит, т.е. 65536 ячеек памяти, которые вуполнены на крис- талле в виде матрицы 256х256 точек. Для уменьшения количества адресных входов мик- росхемы адрес ячейки вводится по частям - сначала восьмиразрядный адрес строки запи- сывается по отрицательному фронту сигнала RAS, а затем восьмиразрядный адрес столбца по отрицательному фронту сигнала CAS в де- шифраторы строки и столбца соответственно из мультиплексорного регистра адреса. Де- тально это будет рассмотрено ниже. Всвязи с такой особенностью работы микросхема ОЗУ имеет всего восемь адресных линий.
*** - Регенерацию по этой ноге можно не производить. Матрица микросхемы разделена на две части, между половинками стоят усилители. Так что каждый столбец состоит из двух секций, подключенных к разным плечам уси- лителя. 3.Принцип регенерации К5б5РУ5. Цикл регенерации основывается на обра- щении к ячейке памяти с периодом меньшим или равным Трег, при этом востанавливается заряд емкости в запоминающем элементе. Микросхема построена таким образом, что при обращении к любой ячейке строки реге- нерируются все ячейки этой строки. При каждом обращении к матрице для считывания информации автоматически осуществляется регенерация информации во всех ячейках па- мяти, принадлежащих выбранной строке. Это называется автоматической регенерацией. Поэтому для произведения регенерации всей микросхемы нужно в течении цикла регенера- ции "перебирать" все строки матрицы, т.е. обратиться ко всем строкам матрицы. Если обращение к разным строкам матрицы проис- ходит с различными по длительности интер- валами времени, то на автоматическую реге- нерацию полагаться нельзя и поэтому прибе- гают к принудительной регенерации. Сущ- ность такого вида регенерации мы рассмат- ривать не будем ввиду полной непригодности для Спектрума. Р.S. Заначка из бочки: всвязи с двухсекци- онной структурой микросхемы не обязательно производить регенерацию по всем строкам матрицы (две секции регенерируются однов- ременно), поэтому достаточно в цикле реге- нерации перебирать первые 128 строк матри- цы. Схематически это выглядит так: по пос- ледней адресной ноге регенерацию можно не производить. A7 9 нога рушки. Если попута- ешь ногу, тогда потеряешь регенерацию па- мяти и можешь записываться в клуб любите- лей цветных квадратиков. 4. Отличия К5б5РУ7 от К5б5РУ5. Емкость микросхемы 256 Кбит - 262144 ячеек памяти, которые выполнены на крис- талле в виде матрицы 512х512 ячеек, что в четыре раза превышает емкость PYS. Поэтому задействована раннее не использованная первая ножка микросхемы под дополнительный адрес А8. В остальном микросхемы полностью идентичны, что позволяет наращивать ОЗУ компьютера без глобальных переразводок схемы.
*** - Регенерацию по этой ноге можно не производить. 5. Принцип регенерации ОЗУ Спектрума. Для того, чтобы объяснить регенерацию в компьютере, нам прийдется рассмотреть не- которые вещи, которые напрямую касаются устройства самого компьютера. По некоторым непровереным сведениям известно, что на первых компьютерах, которые делал Клайв Синклер, регенерация делалась при помощи регистра R микропроцессора Z80. На оте- чественных спектрумклонах сделано все по другому. Эта почетная миссия возложена на плечи видеоконтроллера. Почему именно он? При возобновлении экрана с периодом 20 мс видеоконтроллер считывает информацию эк- ранной области с адресов #4000...#SAFF. А для осуществления регенерации нам надо ре- гулярно что-то считывать с линеек ОЗУ для восстановления заряда. Как можно упустить такой шанс для "подвески" регенерации? Ка- ким образом это сделано - рассмотрим ниже. Как уже говорилось раннее, нам необхо- димо переделать регенерацию микросхем РУ7. Для того, чтобы это сделать, надо найти того, кто ее делает. Этим занимаются мультиплексоры адреса. Возьми схему своего компьютера и найди линейку PYS-ых. По ад- ресной шине этих рушек (A0-A7) ты прийдешь к выходам мультиплексоров. Обычно это КП11 или КП12. Мультиплексоры занимаются двумя важными задачами: 1. Переключение адресных линий рушек для поочередного доступа процессора или видеоконтроллера, а точнее - его счетчи- кам. При работе счетчиков видеоконтроллера получается адрес ячейки памяти экранной области. После получения доступа к ОЗУ ви- деоконтроллер считывает значение по ука- занному адресу и таким образом мы видим точку на экране. 2. Делит шестнадцатиразрядные адреса процессора и видеоконтроллера на две части по восемь разрядов. Одна "половинка" пол- ного адреса записывается в регистр строки PYS по отрицательному фронту сигнала -RAS, а вторая - в регистр столбца PYS по отри- цательному фронту сигнала -CAS. Таким об- разом в рушках получается полный адрес ячейки памяти. - А шо заставляет их клацать?- спросит рядовой пользователь. Работой мультиплек- соров управляют два сигнала. Первый (назо- вем его Н1) занимается тем, что описано в первом пункте, а второй - соответственно второму пункту. Второй сигнал обычно RAS или его производная. Смотри на своей схе- ме. Здесь надо упомянуть различия в схемах отечественных спектрумклонов. Имеется вви- ду разные "полярности" управляющих сигна- лов. В одних машинах управляющий ноль, в других - единица. Поэтому сигнал Н1 может быть активен нулем или единицей. Опять-та- ки смотри на схеме. В этой статье, дабы самим не путаться и вам голову не моро- чить, сделаем так: активен - единица, пас- сивен - ноль. Исходя из этого - сигнал Н1=0, доступ к ОЗУ имеет процессор, Н1=1 - доступ открыт для видеоконтроллера. Второй сигнал RAS=1 (активный) выставит для рушек так называемую строку. Если RAS в нулю - получается колонка. При разных комбинациях управляющих сиг- налов (00,01,10,11) на адресные ноги рушек комутируются соответственно четыре сигна- ла. Из них два сигнала - с процессора, два сигнала - с видеоконтроллера. Для облегче- ния анализа конкретной схемы мультиплек- сорного блока желательно все результаты исследования свести в подобную этой табли- цу:
* - дополнительная адресная нога РУ7. Здесь следует специально оговорить тре- тий сигнал, который "попал" в таблицу. Это сигнал Н2. При "рисовании" изображения на экране монитора видеоконтроллер поочередно выбирает из ОЗУ пиксельные значения (бай- ты) и атрибутные. "Регулировкой" этой оче- редности занимается вышеуказанный сигнал.
Это так называемая временная диаграмма доступа к ОЗУ. Циклически повторяются так- ты с первого по четвертый. Короче, сигнал Н1 занимается переключением "процессор - видеоконтроллер", а сигнал Н2 отвечает за переключения "пиксель - атрибут" во время работы видеоконтроллера. Но! Во время ра-
боты каждого из тактов мультиплексируется адрес доступа к ОЗУ при помощи сигнала RAS. Таким образом имеем "строка - стол- бец" (смотри устройство рушек). Теперь подвяжем все вышесказанное к таблице, а именно - где и кто в какой ко- лонке делает регенерацию? 1. Мы выяснили, что регенерацию делает видеоконтроллер, т.е. сигнал Н1=1. 2. Условимся, что регенерацию произво- дим при чтении видеоконтроллером пикселей экранной памяти компьютера, который стоит на вашем столе и хочет стать 512-кило- байтным гробом, т.е. сигнал Н2=0. Почему именно пиксельную часть экрана? А так на- дежнее получается, т.к. в атрибутную часть чтения можно "не вложиться" по времени. 3. Следует помнить, что регенерация на рушках происходит по строкам, т.е. RAS=1. На "пересечении" всех трех условий по- лучаем колонку, по которой происходит ре- генерация. Теперь обрати внимание на на выделеную область в таблице сигналов. Это и есть нужная нам комбинация. В ней все сигналы должны быть импульсные. Обусловле- но это необходимостью все-же перевключать строки, которые мы пытаемся регенириро- вать. И еще - период повторения этих сиг- налов не должен превышать период регенера- ции микросхемы памяти (см. Трег). Весь сыр-бор заключен в одной маленькой особен- ности - если "тащишь" какой-то сигнал из связки по причине того, что нас она не устраивает, то надо тянуть и его "сладкую парочку". Например, если мы меняем А0 и A8, то нам прийдется разменять Н3, V0 и V6. Если возникают сложности в схемотехни- ке, тогда пробуйте взять комбинацию попро- ще. Все зависит от конкретной схемы компьютера, поэтому прямые "наводки" да- вать нецелесообразно. Схемотехнически дан- ный перевод осуществляется подпаиванием к мультиплексору (КП12) на плате расширения ОЗУ до 512Kb от адреса A8. Для осуществления регенерации на допол- нительной ноге РУ7 требуется перенести три сигнала (например, A8,V0,V6), которые нам подходят из правой части таблицы в графу для "лишней" ножки РУ7-ых в левой нижней части таблицы. Но тогда возникает новая проблема. на плате разширения у нас КП12 и ее управление осуществляется сигналами RAS и Н1, а как же быть с Н2 и куда припаивать сигналы V0, V6, когда сигнал Н1 будет в единице? Давайте попробуем разобраться в этой ситуации. Есть два пути решения, а какой выбрать - смотрите на конкретной ма- шине и в конкретной ситуации. Первое решение: через дополнительные элементы логики. Когда будет выбран видео- контроллер по Н1=1 нам нужно посредством сигнала Н2 комутировать V0 или V6 дабы на экране мы могли видеть пиксель и атрибут. Второе решение: это через дополни- тельные размены (перекроссировки) в табли- це тобиш в схеме компьютера. Например возьмем тот же сигнал V0, а также мы дого- ворились, что и сигналы A8 и V6. Сталкива- емся с той же проблемой. Но в левой колон- ке есть сигналы, которые одинаковы при лю- бом состоянии Н2. Значит на место A8 в таблицу заносим любой "двойной сигнал" (о- динаковые при разных состояния Н2), а на освободившееся место переносим "тройной" сигнал (A8,V0, V6) из правой таблицы. Те- перь получается, что на схему доработки заносим, например, A7 и V5. В правую поло- вину добавим новые сигналы из схемы дора- ботки A16 и A17, а в колонках Н2=0 и Н2=1 запишем "0" напротив этих сигналов. Теперь остается все изменениа перенести в схему компьютера. Я лично (VALEX) хочу сказать, что в обоих случаях есть свои недостатки. Вам нужно хорошо знать схему своего любимого и уважаемого "speccy" или прибегнуть к вари- анту: отнести свое дитя к знающему, но не настолько любимому (а может и не любимому) специалисту. Ребята, давайте жить ... на 512 Кб.!!!



Other articles:


Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Similar articles:
Humor - Chilling story of a head of department and is accountable to his computer.
Advertising - Advertisements and announcements ...
News - News from Izhevsk groups: X-Team, Power of Sound, TRG.

В этот день...   23 November