[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 483: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/bbcode.php on line 112: preg_replace(): The /e modifier is no longer supported, use preg_replace_callback instead
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4668: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3815)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4670: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3815)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4671: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3815)
[phpBB Debug] PHP Warning: in file [ROOT]/includes/functions.php on line 4672: Cannot modify header information - headers already sent by (output started at [ROOT]/includes/functions.php:3815)
ПК-01 ЛЬВОВ • Просмотр темы - Торможение при обращении к ОЗУ

ПК-01 ЛЬВОВ

форум о ПК-01,02 "Львов"
Текущее время: 18 авг 2018, 04:16

Forum Games WEB Tape Loader Twitter RSS

Часовой пояс: UTC + 2 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу 1, 2  След.
Автор Сообщение
 Заголовок сообщения: Торможение при обращении к ОЗУ
СообщениеДобавлено: 13 окт 2012, 15:25 
Не в сети

Зарегистрирован: 23 авг 2012, 12:28
Сообщений: 123
Поскольку вопрос о разности в скорости выполнения кода в ОЗУ и ПЗУ уже не единожды возникал на форуме, то я создал для него отдельную тему. Постепенно постараюсь собрать здесь и прочие реплики (или ссылки на них).

Между прочим, очень легко проверить наличие торможения при обращении процессора к ОЗУ (на реале).
Записываем содержимое ПЗУ "на ленту" (удобнее, несомненно прямо в WAV через звуковую карту)
Копируем содержимое ПЗУ в ОЗУ и тоже пишем его. Сравниваем в звуковом редакторе длительности и спектры. Для записи из ОЗУ длительность скорее всего будет больше, а пики в спектре левее.

UPD.
Ссылки на реплики по заданной теме:
1)
2)
3)


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 13 окт 2012, 19:19 
Не в сети

Зарегистрирован: 29 мар 2012, 21:35
Сообщений: 115


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 14 окт 2012, 05:57 
Не в сети

Зарегистрирован: 23 авг 2012, 12:28
Сообщений: 123
Согласен, что разница скорее всего будет очень маленькой, но не думаю, что она будет неизмеримой при записи 16 Кб. Это слегка похоже на обнаружение экзопланет :). Для повышения точности можно провести каждый "эксперимент" по 2-3 раза.
Но можно предложить и более четкий вариант - сначала воспроизвести звук с использованием процедуры ПЗУ (даже можно из бейсика через SOUND), потом процедурой из ОЗУ, задав D и L и использовав фрагмент аналогичный DE94-DEBE.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Торможение при обращении к ОЗУ
СообщениеДобавлено: 14 окт 2012, 10:00 
Не в сети
Аватар пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщений: 1403
Откуда: Украина

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться наверх
 Профиль  
 
СообщениеДобавлено: 14 окт 2012, 12:36 
Не в сети

Зарегистрирован: 29 мар 2012, 21:35
Сообщений: 115


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Торможение при обращении к ОЗУ
СообщениеДобавлено: 14 окт 2012, 21:46 
Не в сети
Аватар пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщений: 1403
Откуда: Украина
Но в целом я склонен думать, что решить эту загадку мы (как и прочие) сможем лишь тогда, когда в коллекцию vinxru попадет ПК-01. Наберемся терпения.

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Торможение при обращении к ОЗУ
СообщениеДобавлено: 15 окт 2012, 09:12 
Не в сети

Зарегистрирован: 23 авг 2012, 12:28
Сообщений: 123
У меня есть надежда на Tim0xу


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Торможение при обращении к ОЗУ
СообщениеДобавлено: 15 окт 2012, 14:17 
Не в сети
Аватар пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщений: 1403
Откуда: Украина

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Торможение при обращении к ОЗУ
СообщениеДобавлено: 17 окт 2012, 10:12 
Не в сети
Аватар пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщений: 1403
Откуда: Украина

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Торможение при обращении к ОЗУ
СообщениеДобавлено: 17 окт 2012, 11:09 
Не в сети

Зарегистрирован: 23 авг 2012, 12:28
Сообщений: 123
Материалы известные и доступные, но вопрос в том, как перевести написанное там в конкретные значения времени выполнения команд в тактах (а будет ли это время=const для каждой команды или оно будет зависеть от каких-то факторов?). Кроме того, в любом случае хотелось бы иметь хоть частичное экспериментальное подтверждение.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Торможение при обращении к ОЗУ
СообщениеДобавлено: 03 окт 2014, 08:24 
Не в сети

Зарегистрирован: 01 сен 2014, 08:19
Сообщений: 22
Диспетчер памяти работает таким образом:

идут циклы доступа к ОЗУ строго последовательно
CPU VIDEO по 400 ns
видео свои циклы не пропускает,
CPU живет своей жизнью и может захотеть ОЗУ в любой момент,
тогда ему приходится ждать своего цикла как повезет до 400 нс + выход из wait state
фактическое торможение программы теоретически предсказать нельзя и можно только точно померять в среднем

теперь про ПЗУ:
замедлялка процессора срабатывает при любом обращении ниже адреса С000

т.о. доступ к ПЗУ всегда идет быстро, но (!) поскольку программы в ПЗУ лазят в ОЗУ, то фактически тоже будут тормоза. Не такие большие, но существенные для задач реального времени типа MFM.
Опять же, предсказать теоретически как будет тормозить - невозможно,
только мерять среднее.

Поскольку 8080 дублирует на старшие адреса, младшие адреса команд IN & OUT имеем артефакт с застреванием младших портов.
может экономили на элементах, а может просто забыли допилить диспетчер для игнорирования доступа к портам.

Тем неменее: у львова самая красивая и правильная схемотехника из всего совкового, что я видел.


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Торможение при обращении к ОЗУ
СообщениеДобавлено: 03 окт 2014, 09:40 
Не в сети
Аватар пользователя

Зарегистрирован: 11 авг 2008, 17:05
Сообщений: 1403
Откуда: Украина

_________________
Carthago delenda est, Carthaginem delendam esse


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Торможение при обращении к ОЗУ
СообщениеДобавлено: 03 окт 2014, 11:25 
Не в сети
Site Admin
Аватар пользователя

Зарегистрирован: 24 июл 2008, 12:05
Сообщений: 994
Извините, я немного не понял. Видео доступается до ОЗУ, замораживая доступ на 400 мс. на адреса ниже С000. Потом, как я понял, открывается окно для проца, правильно? Если правильно, то сколько это окно будет открытым, пока видео снова не залочит?


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Торможение при обращении к ОЗУ
СообщениеДобавлено: 03 окт 2014, 17:07 
Не в сети

Зарегистрирован: 01 сен 2014, 08:19
Сообщений: 22
нет. все немного хуже.
запрос от процессора будет обслужен в следующем окне CPU если он пришел во время окна VIDEO.
т.е. даже в самом лучшем случае он должен быть задержан на минимальное время гонок по логической схеме.
можно мосчитать сколько это наносекунд (один вентиль+один тригер ТМ2)


Вернуться наверх
 Профиль  
 
 Заголовок сообщения: Re: Торможение при обращении к ОЗУ
СообщениеДобавлено: 03 окт 2014, 17:10 
Не в сети
Site Admin
Аватар пользователя

Зарегистрирован: 24 июл 2008, 12:05
Сообщений: 994
Все равно не до конца понял. Я спрашиваю про окно CPU. Какое оно по размеру? Как я понял, окно видео - 400нс. В это время процессору в память лезть никак не выдет. Но когда эти 400нс проходят, открывается "окно CPU" - какое оно по продолжительности пред следующими 400нс блокировки? Хочется прикинуть шансы попадания именно в это окно.


Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ Сообщений: 24 ]  На страницу 1, 2  След.

Forum Games WEB Tape Loader Twitter RSS

Часовой пояс: UTC + 2 часа [ Летнее время ]


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Free counters!
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB