Proto Module CPU Z280 (MSX-EXT).

Página 9/9
2 | 3 | 4 | 5 | 6 | 7 | 8 |

Por neznajka

Champion (306)

Imagen del neznajka

06-02-2021, 14:52

на днях получил анализатор. Теперь можно пытаться разобраться с ним Smile

Por АIеks

Paladin (946)

Imagen del АIеks

06-02-2021, 20:58

Ждем анализа анализатором Smile А то моя плата на столе уже пылью припала.

Por АIеks

Paladin (946)

Imagen del АIеks

13-02-2021, 11:50

Почитывая, свежую статейку от Sharksym призадумался о финоминальном быстродействии R800. Есть два факта. Это не риск процессор. Процессор имеет общие корни с Z280. Все остальное лишь догадки.

Как показала практика Z280 в 8 битном режиме и включенном конвейером сильно проигрывает Z80 на одинаковых частотах. Тогда почему с R800 диаметральная противоположная ситуация?

Наличие в R800 сложного многоуровнего конвейера? Не думаю. Вряд ли бы в ASCII заморачивались бы с этим. Причина цена. Думаю все намного проще. Известно, что R800 тактируется частотой 28МГц. Учитывая, что у R800 и Z280 общие корни делим это на 2. Получаем 14МГц внутренней шины (уточнение не делим на 2, зачем? честные 28МГц внутри R800). Дальше все интересней. Z280 имеет много уровневую цепочку – внешняя шина, шина кеша, шина процессора (грубое описание цепочки). И вот тут Z280 начинает крепко "проскальзывать " при рандомном доступе на внешней шине.

А что с R800? Предположу ASCII не стала искать сложных путей (как это и происходило иногда. и это правильно.) и выкинула конвейер.

Ладно, а как тогда LD A,r за 1 такт? Да все очень просто, и при условии, что остался общий принцип (Z280) к доступу DRAM и расширен у R800.

Цитата с ресурса Grauw

Quote:

For the R800, it is an even more complex story:

- In internal RAM, 0 waits are inserted, or 1 wait if the instruction fetch crosses a 256-byte memory page boundary (“page break”).
In internal RAM, 2 waits are inserted for every memory read/write, or 3 if it does both, regardless of whether it is in the same page or not.
- In internal RAM, 2 waits are inserted for every jp.
- In internal ROM, 3 waits are inserted.
- In external memory, 4-5 waits are inserted depending on bus clock alignment.

Note that the R800 timing is complex and not officially documented, so there may be deviations or errors in the above description. The above findings and values in the R800+wait column of the table are based on research by the openMSX team and verified by Grauw using a different, cycle-accurate measuring method. For more details see the documents in the openMSX repository.

Т.е. LD A,r "выполняется" за один так, только при условии попадание ячейки ОЗУ в страницу RAS (меняем только CAS). А так LD A,r "выполняется" за 2 такта.

Сама инструкция выполняется на "выбеге" в следующем такте (гарантированное чтение новой команды, чтение из DRAM). Похожий трюк делается и в Z80 в момент гарантированной регенерации ОЗУ в цикле M1.

p.s. мои личные суждение, в которых могут быть ошибки.

Por АIеks

Paladin (946)

Imagen del АIеks

14-02-2021, 17:44

Хорошо с некоторым допущением можно согласиться, что LD A,r выполняется за один такт. Пока не коснутся физических сигналов интерфейса DRAM которые не как не втиснуть в один такт.

Недавно в сети появился документ о R800, в котором есть очень интересная страничка. Временные диаграммы работы с памятью. Из которых видно, что на одну операцию с памятью нужно 4 (8) тактов R800. Так что все честно - подмена понятий и не какого машенства. Если за частоту процессора принять частоту внешней шины выходит один такт на инструкцию LD A,r Smile

Por Alexey

Guardian (3236)

Imagen del Alexey

15-02-2021, 16:37

А вот програмно-активируемый турбо режим Z80 у Панасоников вы не смотрели? А то я тут недавно собирал турбо модуль для клиента, но там надо резать дорожки и сам модуль сидит поверх проца. А вот в Панасониках MSX2+ всё сделано програмно. Но не совсем понятно как всё это работает с почти двойной частотой.

Por АIеks

Paladin (946)

Imagen del АIеks

15-02-2021, 19:14

За MSX2+ от Панасоника не скажу. Весь MSX собран на двух больших микросхемах, одна из них MSX-ENGINE II со встроенным Z80. Так что как там и, как внутри не известно.

А вот у EXPERT 3 бразильского можно схемку подсмотреть. Там и кнопочкой, и через порт есть возможность включать турбо режим (7 MГц). Правда остается один большой вопрос, что делать с медленными устройствами? Придется это решать индивидуально с таким разнообразием MSX совместимых компьютеров.

Por Alexey

Guardian (3236)

Imagen del Alexey

16-02-2021, 10:33

На турбо плате есть площадки для подключения проводов. Например, один провод идёт на дисковод и как только сигнал садится на землю (активность), частота проца сразу снижается, чтобы периферийные устройства работали нормально.

Página 9/9
2 | 3 | 4 | 5 | 6 | 7 | 8 |