PDA

Просмотр полной версии : Видеопамять в Спринтере



icebear
17.01.2006, 18:30
Я правильно понимаю, что та видеопамять, которая выполнена физически на SRAM является теневой? Т.е. программно идёт работа с областью основной памяти, но запись идёт в обе памяти (как-то криво я сказал)? Если это так - в чём смысл? Почему нельзя было эти 256К включить физически в общее поле памяти? Это не расточительно вобще?

ZEK
18.01.2006, 00:38
Это что-то типа двухпортовой памяти получается, процессор прийдется
тормозить только если он пишет в область видеопамяти (или даже в какой то фрагмент) и одновременно из этой же памяти (или фрагмента памяти) читает видеоконтролер, все остальные вариации работают прозрачно (то есть паралельно) не мешая друг другу.

CHRV
18.01.2006, 11:55
Это что-то типа двухпортовой памяти получается, процессор прийдется
тормозить только если он пишет в область видеопамяти (или даже в какой то фрагмент) и одновременно из этой же памяти (или фрагмента памяти) читает видеоконтролер, все остальные вариации работают прозрачно (то есть паралельно) не мешая друг другу.
На самом деле все зависит от текущей прошивки ПЛИС, можно включить и в адресное пространство можно и как видеопамять. В дефолтовой прошивке существовали "быстре страницы" видимо они были и основаны на быстрой памяти. Точнее может сказать токо ИМак так как содержимое прошивки он не раскрыл, т.е. о внутренней кухне можно только догадываться!

icebear
18.01.2006, 12:20
Дык я правильно понял или нет? Это просто "запараллеленые" участки или что? Если да - какой смысл в этом решении?

ZEK
18.01.2006, 13:00
Только для уменьшения коллизий (циклов Wait) видеоконтрлера и читающего отуда-же процессора

ZEK
18.01.2006, 13:03
К тому же если прощессор обращаеться к друой части памяти (не видео)
то циклы wait можно исключить полностью и независимо от частоты процессора

icebear
18.01.2006, 13:07
К тому же если прощессор обращаеться к друой части памяти (не видео)
то циклы wait можно исключить полностью и независимо от частоты процессора

Ты точно это знаешь или это только предположение? Я конечно не гуру, но заводить отдельный физический кусок памяти, что бы "запараллелить" его с основной памятью - это накладно, хотя бы по деньгам. Проблемы прозрачного досутпа можно было решить по-другому, например все обращения процессора на запись рулить через фифо. С другой стороны использование быстрой асинхронной SRAM (там вроде 15нс) позволяет сделать доступ к видеопамяти по приципу "арбитра" в клонах с общем полем памяти.

ZEK
18.01.2006, 13:13
Это мои предположения на основе твое высказывания.
Способ легко реализуется из накладных расходов только теневая память

Этот метод давно в ПС используют называется кеширование видеопамяти
Хотя кешиться там тупо и практического применения там нет, так как современные проги можно сказать уже с увереностью 99% уже не читают содержимое видеопамяти, только графические процессоры

CHRV
18.01.2006, 14:07
Дык я правильно понял или нет? Это просто "запараллеленые" участки или что? Если да - какой смысл в этом решении?
Ваш разговор безсмысленен хотя бы потомучто что у Спринтера можно по любому подключить видеостраницы и это зависит только от прошивки ПЛИС.
В расширенных графических режимах работа идет на прямую со страницами видеопамяти. Никакого "теневого" режима нет.
Также в дефолтной прошивке есть фича как видеоакселератор, которые позволяет делать различные пересылки между видеопамятью без участия процессора.
А вот в ZX режиме, вполне возможно что используется теневой режим, но это можно проверить только с помощью измерителей тактов в турбо режиме.

icebear
18.01.2006, 15:01
Ваш разговор безсмысленен хотя бы потомучто что у Спринтера можно по любому подключить видеостраницы и это зависит только от прошивки ПЛИС.

Хорошее очередное безапеляционное заявления :) Может ты моего вопроса не понял? Вот смотри, читаю описание Спринтера (я так думаю оно относится к Sp2K) у петерсов:
"Видео-область основного ОЗУ и видео-ОЗУ это два разных и физически отличающихся ОЗУ."

Я это понимаю как "параллельность" (не знаю правильного тех. термина) включения микросхем памяти SRAM и DRAM. Мой вопрос - зачем? Зачем использовать SRAM в этом случае, если (согласно описанию Спринтера) "Видео ОЗУ Спринтера является теневой памятью. Весь вывод в видео-ОЗУ производится параллельно с выводом в основное ОЗУ. При считывании из области видео данных считывается информация из видео области ОЗУ, а видео ОЗУ остается недоступным."
.

Как видеопамять включается страницами меня на данный момент не интересует.

CHRV
18.01.2006, 15:10
Хорошее очередное безапеляционное заявления :) Может ты моего вопроса не понял? Вот смотри, читаю описание Спринтера (я так думаю оно относится к Sp2K) у петерсов:
"Видео-область основного ОЗУ и видео-ОЗУ это два разных и физически отличающихся ОЗУ."
Так как являюсь владельцем Спринтера, и даже автором программ для него, то за свои слова отвечаю.

Если Вы хотите изучать комп токо по докам которые очень сильно отличаются от реальности, пожалста. И неинтересно реальное положение дел то пожалста, я не буду больше ничего суда писать, придумывайте свои теории дальше. :(.

icebear
18.01.2006, 15:15
Так как являюсь владельцем Спринтера, и даже автором программ для него, то за свои слова отвечаю.

Если Вы хотите изучать комп токо по докам которые очень сильно отличаются от реальности, пожалста. И неинтересно реальное положение дел то пожалста, я не буду больше ничего суда писать, придумывайте свои теории дальше. :(.

Роман, ты взрослый человек, зачем снова делать обиженый вид? Я потому и спрашиваю, что непонятно. Если криво вопрос поставил - прошу прощения, но прямее не могу, уж извини. Я нисколько не умаляю твоего опыта в Спринтере (мало того, именно на твои ответы надеялся), но я не спрашивал о программных особеностях. Меня интересовало, почему в железке два физически разных куска памяти, отвечающих за одно и тоже? Если дока на http://www.petersplus.ru/sprinter/arhitecture.htm не акутальна, то дай мне актуальную.

CHRV
18.01.2006, 15:27
Роман, ты взрослый человек, зачем снова делать обиженый вид? Я потому и спрашиваю, что непонятно. Если криво вопрос поставил - прошу прощения, но прямее не могу, уж извини. Я нисколько не умаляю твоего опыта в Спринтере (мало того, именно на твои ответы надеялся), но я не спрашивал о программных особеностях. Меня интересовало, почему в железке два физически разных куска памяти, отвечающих за одно и тоже? Если дока на http://www.petersplus.ru/sprinter/arhitecture.htm не акутальна, то дай мне актуальную.
Актуальной доки быть не может ибо Имак не открыл исходник ПЛМ, та дока что лежит на Пертерсе скорее относится к ZXвидеорежиму. По моим замерам которые я делал когда писал программу Клад, я сделал вывод что работа с видеопамятью идет напрямую. Но это опять же непринципиально ибо ПОВТОРЯЮ В ТРЕТИЙ РАЗ режим работы с памятью зависит токо от прошивки ПЛМ.
А вообще вот небольшая статья из 0 номера о Спринтере
http://www.nedopc.com/HARD/sprinter.php .

icebear
18.01.2006, 15:43
Актуальной доки быть не может ибо Имак не открыл исходник ПЛМ, та дока что лежит на Пертерсе скорее относится к ZXвидеорежиму.

Ты по линку ходил, который я давал? Это описание архитектуры.


По моим замерам которые я делал когда писал программу Клад, я сделал вывод что работа с видеопамятью идет напрямую. Но это опять же непринципиально ибо ПОВТОРЯЮ В ТРЕТИЙ РАЗ режим работы с памятью зависит токо от прошивки ПЛМ.

Причём здесь прошивка? Я тебе цитату дал с сайта производителя - она не верна? Тогда объясни мне, как железно построена видеопамять в Спринтере.


А вообще вот небольшая статья из 0 номера о Спринтере
http://www.nedopc.com/HARD/sprinter.php .

Эта статья мне никакой новой информации не дала, кроме разве "Все что написано о Спринтере в некоторых изданиях и конференциях совершенно не соответствует истине". Говорит ли это о том, что описание архитектуры на странице петерсов неверное?

CHRV
18.01.2006, 15:48
Ты по линку ходил, который я давал? Это описание архитектуры.
Ты знаешь такое впечатление что я бьюсь об стенку. Предпочитаю этого не делать.
Четвертый раз повторять не буду!

ZEK
18.01.2006, 15:51
CHRV никто не спорит что конфигурация зависит от прошивки плис,
можно сказать что был расмотрен один из ТЕОРЕТИЧЕСКИ возможных вариантов реализации, просто тоже глупо оринтироваться на все подрят конфигурации, надо всегда искать точки отчета на которую потом и опираться. Тем более такую конфигурацию можно и написать :)

CHRV
18.01.2006, 15:57
CHRV никто не спорит что конфигурация зависит от прошивки плис,
можно сказать что был расмотрен один из ТЕОРЕТИЧЕСКИ возможных вариантов реализации, просто тоже глупо оринтироваться на все подрят конфигурации, надо всегда искать точки отчета на которую потом и опираться. Тем более такую конфигурацию можно и написать :)
:) Ну слава богу!
Я так и написал - в случае видеорежима ZX скорее всего видеозу используется в теневом режиме (см.выше) Но это надо проверить с помошью измерителей коэфициента турбирования ибо я это не проверял.
А вот в случае работы с дефалтными видеорежимами - я замерял и сделал вывод что работа с памятью идет напрямую (о чем тоже написал выше).
В чем предмет непонятности - для меня не ясно. Ну еще можно добавить что между видеоозу и процессором стоит ПЛМ ep1k30 :).

ZEK
18.01.2006, 16:05
У которой между прочем 24кб статической памяти

icebear
18.01.2006, 16:16
Ты знаешь такое впечатление что я бьюсь об стенку. Предпочитаю этого не делать.
Четвертый раз повторять не буду!

А я четвёртый раз могу задать тот же вопрос, который я задал по конкретному примеру. Не можешь ответить - так и напиши.

CHRV
18.01.2006, 16:17
У которой между прочем 24кб статической памяти
24Кбит и 256 байт использует видеоакселератор. И еще 256 байт используется для буфферирования ковокса (есть такая фича у спринтера - буфферированный ковокс).

Mike
18.01.2006, 16:47
На самом деле все зависит от текущей прошивки ПЛИС, можно включить и в адресное пространство можно и как видеопамять. В дефолтовой прошивке существовали "быстре страницы" видимо они были и основаны на быстрой памяти. Точнее может сказать токо ИМак так как содержимое прошивки он не раскрыл, т.е. о внутренней кухне можно только догадываться!

А ещё там был банк быстрой памяти, в 64Кб, получившая прозвище "КЭШ-память", хотя она таковой и не являлась.

Mike
18.01.2006, 16:53
Хорошее очередное безапеляционное заявления :) Может ты моего вопроса не понял? Вот смотри, читаю описание Спринтера (я так думаю оно относится к Sp2K) у петерсов:
"Видео-область основного ОЗУ и видео-ОЗУ это два разных и физически отличающихся ОЗУ."

Я это понимаю как "параллельность" (не знаю правильного тех. термина) включения микросхем памяти SRAM и DRAM.

Не правильно понимаешь. У Писюка тоже не один банк памяти, но это же не значит, что они "параллельны". Это просто два независимых банка памяти, один на симе в 4Mb, второй на срамах 256Кб либо 512Кб. Эта вторая область на срамах и является видеопамятью, в которой распологается фрейм-буффер. А в режиме классического спека, скорее всего реализованно аппаратное отображение (копирование) основной области на видеопамять, так как спек некогда не имел отдельной видеопамяти и не знает о её существовании на спринтере, но ему выделенны его 64/128/265Кб... из основного ОЗУ в 4Мб в виде единого адресного пространства побитого на банки (а в случае 64К. (48) и не побитого).

icebear
18.01.2006, 17:06
Вот, первый вразумительный и более менее информативый ответ.

Начнём по порядку.


Не правильно понимаешь. У Писюка тоже не один банк памяти, но это же не значит, что они "параллельны". Это просто два независимых банка памяти, один на симе в 4Mb, второй на срамах 256Кб либо 512Кб. Эта вторая область на срамах и является видеопамятью, в которой распологается фрейм-буффер.

В железе это выглядит как "кусок с 0 по n - DRAM, с n по m - SRAM, с m по end DRAM"? Т.е. просто отдельный "участок" памяти выполнен физически на SRAM и всё? А как же тогда быть с "Видео ОЗУ Спринтера является теневой памятью. Весь вывод в видео-ОЗУ производится параллельно с выводом в основное ОЗУ. При считывании из области видео данных считывается информация из видео области ОЗУ, а видео ОЗУ остается недоступным."? Я это понимаю именно как две микросхемы памяти "сидят" на одинаковом участке, обе реагируют на запись, но на чтение только одна из них.


А в режиме классического спека, скорее всего реализованно аппаратное отображение (копирование) основной области на видеопамять, так как спек некогда не имел отдельной видеопамяти

Спектрум всегда имел видеопамять :) Я догадываюсь, что ты понимаешь под "отдельной". Только опять же в описании архитектуры (цитаты из которого я приводил) не написано, что такая физическая организация действительна только для Спектрумовских экранов. И потом, даже если это так, на кой надо 256 кил статики, только для эмуляции других 6 кил?

Mike
18.01.2006, 19:45
В железе это выглядит как "кусок с 0 по n - DRAM, с n по m - SRAM, с m по end DRAM"? Т.е. просто отдельный "участок" памяти выполнен физически на SRAM и всё? А как же тогда быть с "Видео ОЗУ Спринтера является теневой памятью. Весь вывод в видео-ОЗУ производится параллельно с выводом в основное ОЗУ. При считывании из области видео данных считывается информация из видео области ОЗУ, а видео ОЗУ остается недоступным."? Я это понимаю именно как две микросхемы памяти "сидят" на одинаковом участке, обе реагируют на запись, но на чтение только одна из них.


В режиме классического спека, я уже описал наиболее вероятный вариант, а в других режимах, возможно имеется ввиду возможность использования в качестве фрейм-буффера часть основного ОЗУ, конечно при меньших скоростях.



И потом, даже если это так, на кой надо 256 кил статики, только для эмуляции других 6 кил?


1. До 512-и.
2. Для других режимов, типа 320X256 256 colors или 640X512 256 colors (требуется 512Kb)

icebear
18.01.2006, 19:52
Короче, ты меня запутал так же, как и CHRV.


В режиме классического спека, я уже описал наиболее вероятный вариант, а в других режимах, возможно имеется ввиду возможность использования в качестве фрейм-буффера часть основного ОЗУ, конечно при меньших скоростях.

Слова "наиболее вероятный вариант" мне как-то не нравятся. Я дал линк на конкретное описание. Если оно левое - дайте другое. Если нет, то от него и будем плясать. А если от него плясать, то там ни слова нет о различиях в физическом построении (или включении, не знаю как правильно) видеопамяти для экраных режимов. Поэтому всякие "от прошивки зависит" и "режимы классического Спека" не вяжутся в этом контексте.


1. До 512-и.
2. Для других режимов, типа 320X256 256 colors или 640X512 256 colors (требуется 512Kb)

А что, был режим 640х512? На телевизоре? Насколько я знаю (опять же, из описания), Спринтер не использует даже эти 256К полностью.

Вобщем, никто мне так на этот вопрос и не ответит. Ладно, не страшно :)

Mike
18.01.2006, 20:26
Короче, ты меня запутал так же, как и CHRV.
Поэтому всякие "от прошивки зависит" и "режимы классического Спека" не вяжутся в этом контексте.
А что, был режим 640х512? На телевизоре? Насколько я знаю (опять же, из описания), Спринтер не использует даже эти 256К полностью.


Я не знаю, что там у тебя за описание, но точно тебе скажу - альтера шьётся как угодно и память соответственно распределяется как зашито в альтере, все описанные режимы были и есть, и это далеко не все.
Я достаточно хорошо знаю команду разработчиков, и Ивана в том числе, я не редко раньше бывал в Петерсе, и всё это знаю не по наслышки или из описаний, а из общения с ними и из увиденного собственными глазами. Хотя описание у меня тоже было не одно.

CHRV
18.01.2006, 22:45
Я никого не путал просто написал то как оно есть! Просто обьяснить человеку что Спринтер это компьютер с альтерой который НЕ ИМЕЕТ статичной архитектуры, оказалось очень трудным :). Дело в том что во время исполнения программ, альтера ПЕРЕГРУЖАЕТСЯ новой прошивкой на лету (так например сделана эмуляция ZX режимов), а не только при включении. Т.е. Спринтер это решение позволяюшее менять архитектуру под потребности программы.
Если Mike токо предполагает, то я делал замеры специально на железе :).
Режима 640х512 конечно нет, есть режим 640x256 и 320х256 но с двумя экранами между которыми можно переключатся. В этих режимах работа идет напрямую с видеопамятью судя по моим замерам. Есть еще одна особенность, доступна токо одна строчка во время работы в расширенных режимах, номер строки выбирается записью во внутренний регистр видеопроцессора. Кто интересуется может посмотреть исходники Клада, возможно они есть на www.nedopc.org. Если их там нет, могу выложить у себя на сайте, если нужно.
ВОт собственно и все :).

Mike
19.01.2006, 11:14
Режима 640х512 конечно нет

Сдрасте, как это нет ? Это черезстрочный PAL-режим (один из PAL-режимов). Он у нх был, только под него не кто ничего не писал, так как с интерлейсом работать напряжно. Или я чего то путаю ?

CHRV
19.01.2006, 11:31
Сдрасте, как это нет ? Это черезстрочный PAL-режим (один из PAL-режимов). Он у нх был, только под него не кто ничего не писал, так как с интерлейсом работать напряжно. Или я чего то путаю ?
По крайней мере в моих доках и FAQах от Имака ничего нет по этому режиму, он нигде не упоминался.

icebear
19.01.2006, 11:53
Я не знаю, что там у тебя за описание,

Я давал линк выше по треду. Окажи услугу, посмотри.


но точно тебе скажу - альтера шьётся как угодно и память соответственно распределяется как зашито в альтере, все описанные режимы были и есть, и это далеко не все.

Не надо мне рассказывать как шьётся альтера :)


Я достаточно хорошо знаю команду разработчиков, и Ивана в том числе, я не редко раньше бывал в Петерсе, и всё это знаю не по наслышки или из описаний, а из общения с ними и из увиденного собственными глазами. Хотя описание у меня тоже было не одно.

Ну дык тем более. Спроси у них:
а) действительно ли описание архитектуры на их сайте
б) если описание действительно, почему было сделано с видеопамятью именно так, как описано там.

И доп. вопрос: можно ли взглянуть на те описания, которые у тебя есть (если они есть ещё конечно)?

icebear
19.01.2006, 12:00
Я никого не путал просто написал то как оно есть! Просто обьяснить человеку что Спринтер это компьютер с альтерой который НЕ ИМЕЕТ статичной архитектуры, оказалось очень трудным :).

Я тебя прекрасно понял и я знаю, как это сделано в Спринтере. У самого Спринтер уже 7-й год. Только я тебя с самого начала отправлял посмотреть описание архитектуры на сайте петерсов, я же у тебя спрашивал о валидности этого описания. И первое и второе ты проигнорировал. И кому теперь из нас труднее объяснять? :) В том описании нет разделения между отдельными режимами, из чего я исхожу, что данное включение видеопамяти независит от режима. Отсюда и вопрос был.


Если Mike токо предполагает, то я делал замеры специально на железе :).
Режима 640х512 конечно нет, есть режим 640x256 и 320х256 но с двумя экранами между которыми можно переключатся. В этих режимах работа идет напрямую с видеопамятью судя по моим замерам.

Это я тоже всё понял. Из этого я могу сделать вывод (о чём я тоже уже спрашивал), что описание архитектуры на сайте недействительно, так? Если да, где взять действительное описание (если ты знаешь конечно)?

Mike
19.01.2006, 14:47
Я давал линк выше по треду. Окажи услугу, посмотри.


Посмотрел. Да, это официальная документация, скорее всего не последняя.



Ну дык тем более. Спроси у них:
а) действительно ли описание архитектуры на их сайте
б) если описание действительно, почему было сделано с видеопамятью именно так, как описано там.


При случае спрошу.




И доп. вопрос: можно ли взглянуть на те описания, которые у тебя есть (если они есть ещё конечно)?


Боюсь, что только если подъехать ко мне, у меня в печатном виде. А то что в электронном, то же самое, что на сайте. Хотя я посмотрю, может ещё чего есть.

CHRV
19.01.2006, 15:13
Боюсь, что только если подъехать ко мне, у меня в печатном виде. А то что в электронном, то же самое, что на сайте. Хотя я посмотрю, может ещё чего есть.
Выложу вечером все что есть у меня.
Часть док лежит на www.nedopc.org, ну это у Шаоса спрашивайте где.

icebear
19.01.2006, 15:26
Хотя я посмотрю, может ещё чего есть.


Выложу вечером все что есть у меня.
Часть док лежит на www.nedopc.org, ну это у Шаоса спрашивайте где.


Mike , CHRV - спасибо.

CHRV
20.01.2006, 00:11
Mike , CHRV - спасибо.
Покопался в доках, самое интересное что нашел, это сборник постов с ФИДО о Спринтере от Петерсов.
Недельку полежит у меня потому удалю, возможно он есть еще у Шаоса на сайте.
http://www.nedopc.com/HARD/Sprinter.zip

icebear
20.01.2006, 15:40
Покопался в доках, самое интересное что нашел, это сборник постов с ФИДО о Спринтере от Петерсов.
Недельку полежит у меня потому удалю, возможно он есть еще у Шаоса на сайте.
http://www.nedopc.com/HARD/Sprinter.zip

Качнул. Мда, я не понимаю одно: то что дока была хреновая в годы становления машины - это понятно. Но вот что бы потом уже, когда пошли продажи, не обновлять свой сайт?! Я почитал пока по Sp97. В одном месте говорится о тобой упоминаемых различиях для видеорежимов, в другом месте говорится о режиме 640х512, в третьем повторяется то, что до сих пор стоит на сайте и параллельно объясняется, почему так сделано (т.е. ответ на свой вопрос я нашёл).

Кстати, данный архив кроме своей информационной представляет также историческую ценность. Кто не качал, качните, там речь не только о Спринтере, но и о Scorpion 2000, о взгляде МОА и Зонова на Спринтер. Амбициозные были планы у петерсов и судя по всему они могли бы их реализовать.

Вобщем, CHRV, спасибо ещё раз.