![]() |
В чем смысл разделых полей памяти
Как мне сказали, эта было так сделано в оригинальном спеке было так сделано (видимо они думали, что так рациональнее). Ну, с одной линейкой на РУ5 все понятно, а что тогда в линейке из РУ6 (32Кб). Что там такое хранится? Прошу не ругаться за тупой вопрос.
|
Quote:
Довольно сумбурно описано здесь. Пункт девятый "расширение памяти спектрума" (кривая перепечатка, источник не помню, но видел более детальное описание). |
Quote:
|
Gryphon, да, в оригинальном спектруме так и было. Если в двух словах, то дело в том что доступ к памяти делят между собой процессор и видеоконтроллер. Когда контроллер начинает отрисовывать экран, он начинает тормозить процессор (в оригинальном спеке приостанавливается тактовая частото, в наших клонах используется сигнал Wait). Уж не помню подробностей, но так уж было сделано, что 16 килобайт памяти с адреса 16 384 (#4000) по 32 768 (#8000) состояли из одних микросхем и эта память была медленной, в ней содержался экран. А верхние 32 килобайта в адресах от 32 768 (#8000) до 65535 (#FFFF) составлялись из других микрух и в этих 32 килобайтах процессор не тормозился. (Также не тормозилась область ПЗУ). И при написании программ рекомендовалось критичные по времени исполнения процедуры, а также обработчик прерываний располагать в быстрой памяти.
Позднее, когда начали расширять память до 128, то просто заменили микросхемы на 4164 (РУ5) и получили суммарный объем 128 килобайт, и вот половина памяти получилась тормознутой. Вроде все так, если ничего не путаю, давно это было. ЗЫ. А в Пентагоне был реализован режим прозрачного доступа к памяти и несмотря на общее поле памяти в нем не было торможения. Погугли, найдешь подробности. ЗЫЫ. Кстати РУ6 имеет 16кб, а не 32. |
Прозрачный доступ есть не только в петагонах , но и в компах с синхронным видео контроллером в таких как KAY и выпрямленный ленинград .
|
KAY как и Ленинград тормозится по WAIT, в Пентагоне вроде то же самое. А вот в Кворуме видеоконтроллер и процессор абсолютно друг с другом не конфликтуют, сигналы WAIT и BUSRQ процессора абсолютно свободны.
|
Quote:
И что за Кворум, я всегда думал что это вариация Ленинградки... |
Quote:
Про асинхронный прозрачный доступ (пентагон , дуэт , ...) есть целый цикл статей Буна - http://andrnow.narod.ru/zx/radio/ |
Народ, спасибо, что прояснили ситуацию. А то всегда было интересно, зачем так.
Да, а разве линейка из 8 РУ6 дает 16Кб? Вроде как 32Кб (В Микроше и РК было так). Поправьте меня, если ошибаюсь. |
Парень, да ты ленишься почитать даташит!
В этих микрухах (РУ5, РУ6, РУ7) сделана раздельная адресация по столбцам и строкам, иначе у каждой микрухи было бы по 30 ног, прикинь сколько места займет. Так вот если подавать сначала адрес столбца, а затем адрес строки, то можно использовать одни и теже адресные входы дважды. Так и сделано. В РУ6 используется 7-разрядная адресация, это значит что 7 столбцов плюс 7 линий в каждом столбце итого 14 бит на адресацию ячейки памяти. Возведи 2 в четырнадцатую степень и получишь 16кб. Для сравнения - в РУ5 используется 8 разрядов и получается 8+8=16 бит на адресацию и в результате 64 кб (2 в степени 16). А в РУ7 9 разрядов и 9+9=18 и в итоге 256кб (2 в степени 18). Вот объясни мне как вообще в принципе при такой архитектуре можно получить 32 кб? Ты там ничего не напутал с Микрошей и РК? |
Так стоп, мы тут что-то напутали. РУ6, как и РУ3-ОЗУ,емкостью 16Кбит (16к х1). Это я знаю, но линейка из восьми таких микросхем в Радио-86РК составляла 32 Кбайта памяти. А 16 таких микрух дают как-раз 64Кб. Это полная память с которой 8-разрядный проц может адресовываться непостредтсвенно. Так вроде было описано в Радио. Ну, вроде так.
|
Quote:
|
Может быть. Ну я помню, что в Радио-86РК общая память из 8 РУ5 была 64Кб, а РУ6-32Кб. Ну ладно.
|
Quote:
16К х 1 = 16384 бита или 16 килобит 16384 х 8 (кол-во микросхем) = 16 килобайт ( 1 байт = 8 бит ) У РУ5 организация 65536 х 1 = 64 килобита 65536 х 8 = 64 килобайта |
Quote:
Скрытый текст |
Quote:
|
Были такие вариации РУ5, назывались РУ5Д1 и РУ5Д2, они емкостью по 32 килобит. Я вот только не помню, там вторая половина имела бракованные ячейки, либо она вообще отсутствовала.
Что касается прозрачного доступа к общему полю памяти (без задержек) - то это было также реализовано в "Орель БК-08". |
Quote:
|
Quote:
На первой версии платы (Issue 1) были две панельки под установку дополнительной платы с динамически ОЗУ (аналоги "половинок" РУ5), на всех последующих версиях плат (Issue 2-6) иногда были пустые панельки (под половинки РУ5) на плате, в случае если ZX Spectrum выпускался с 16 Кб ОЗУ. С самого первого дня когда Синклер начал принимать заказы (в конце апреля 1982 года) он предлагал и 16Кб и 48Кб версии ZX Spectrum. |
Неоднократно читал, что 16К можно было доапгрейдить до 48К. Именно установкой статики.
|
Quote:
Подумайте сами: какой смысл навешивать какую-то статику (кстати, более дорогую и требующую дешифратора), вместо того чтобы вставить в штатные панельки на плате восемь микросхем ОЗУ? |
Quote:
|
Являюсь счастливым обладателем рабочей платы ZX Spectrum 16k issue 2. 8 панелек под расширение памяти и еще немножко пустых панелек под логику ( видимо для управления этой дополнительной памятью, схему еще не смотрел ). Если интересно могу сфоткать.
P.S. Я еще удивлялся, зачем на ZX Spectrum 48k часть логики и 8 микросхем ОЗУ в панельках |
Quote:
|
Quote:
|
Конечно пора. Делаю все что в моих силах. Помощи ни от кого нет. Так что, как только, так сразу.;)
|
Quote:
|
Quote:
|
Quote:
|
Возможно уже исправлено. Я читал в оффлайн версии. Как найду источник - отпишу. Но помню хорошо, что именно одна панелька и 32К статика. Хотя сейчас не так важно это. Вопрос прояснен.
|
Quote:
|
Quote:
http://toycatsoft.com/zips/zx_16k.jpg внизу панельки под память, вверху под логику. На моем ZX Spectrum 48k они все заполнены |
| All times are GMT +4. The time now is 23:57. |
Powered by vBulletin® Version 3.8.3
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.