User Tag List

Страница 2 из 3 ПерваяПервая 123 ПоследняяПоследняя
Показано с 11 по 20 из 28

Тема: Простой флэш-диск от 16 мб + быстрый SPI для современной периферии

Комбинированный просмотр

Предыдущее сообщение Предыдущее сообщение   Следующее сообщение Следующее сообщение
  1. #1

    Регистрация
    30.01.2020
    Адрес
    г. Рязань
    Сообщений
    11
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Denn Посмотреть сообщение
    По коду "всё печальнее", у меня например в онлайне проверяется возможный выход за границу банка, так что далеко не так быстро ПО читает данные.
    Ну если ПО читает не быстро, значит и с Орионом на 40 МГц будет флэш-диск работать
    Вообще для флэш-диска в режиме прямого чтения проверять банк не понадобится, там же автоинкремент. Свои соображения по эффективной организации циклов я дополнительно выложил тут: http://zvzd3d.ru/Orion128/OrionDiskNiky.html#YaCikli (надо обновить страницу). Конечно, это больше актуально для быстрого чтения.

    Посмотрел Вашу реализацию чтения ROM-диска - вижу SHLD и LDA уже раснесены. При желании код можно ускорить. Цикл делать без "mov a,c; ora b". И проверку выхода за банк - делать вне цикла. Пусть HL - начальный адрес чтения, а BC - длина. Тогда если ~HL > BC, то переключения банка не нужно. Иначе читаем сперва (~HL+1) байт, переключаем банк, читаем остаток.


    Цитата Сообщение от Denn Посмотреть сообщение
    Высокоскоростная версия Ориона будет стартовать на дефолтных 2,5 МГц и будет иметь возможность программно задавать клок ЦП. Если ROM-диск рассматривать только в качестве загрузчика, то по идее можно не заморачиваться возможностью работы на 40 МГц. На больших скоростях уже полезут ограничения самих ПЗУшек скорее всего.
    На чем же будет сделан Орион на 40 МГц?

  2. #1
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #2

    Регистрация
    20.06.2014
    Адрес
    г. Орск, Оренбургская обл.
    Сообщений
    813
    Спасибо Благодарностей отдано 
    33
    Спасибо Благодарностей получено 
    80
    Поблагодарили
    60 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    10, 20, 40 МГц... Вот десятку вроде сделали: по мегагерцам вдули в 4 раза больше, а на выхлопе всего 3.5 Маха... Под двадцатку даже и процик существует Z84C0020, а в реале Ориончика такого ПОКА нет... А под сороковку какой процик планируется? Хренсобаки, тьфу, Кавасаки KL5C8400C только 33 МГц позволяет... Хотя наш комрад утверждает, что гонится в лёгкую.

    RyazanNik, предложение: а если взять PIC/dsPIC с Parallel Master Port (PMP) и его тулить не к ВВ55, а вместо ВВ55 на шину, и при необходимости вэйтить основной процик. Уж тогда всё что угодно можно прикрутить. Как тебе идейка?
    Последний раз редактировалось LeoN65816; 11.09.2020 в 01:19.
    Турбо АГАТ-9/16 (ЦП 65C802, 5 Махов, dual-port SRAM).

  4. #3

    Регистрация
    30.01.2020
    Адрес
    г. Рязань
    Сообщений
    11
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от LeoN65816 Посмотреть сообщение
    RyazanNik, предложение: а если взять PIC/dsPIC с Parallel Master Port (PMP) и его тулить не к ВВ55, а вместо ВВ55 на шину, и при необходимости вэйтить основной процик. Уж тогда всё что угодно можно прикрутить. Как тебе идейка?
    А Орион что, можно "вэйтить"? Это же какой то Радио-РК86 тогда получается... А если несколько абонентов захотят вэйтить? Конечно, вэйтить понадобится в весьма редких случаях, когда ROM-диск на самом деле не успевает (что легко распознать и выставить соответствующий сигнал).

    Идея на первый взгляд чертовски хороша: выкидывается ВВ55, а вместо неё подключается Pic, который эмулирует огромный ROM-диск и имеет при этом кучу реально свободных ног для действительно нужной внешней переферии (АЦП, таймеры, 2 SPI чтобы можно было гнать с SD-карты на звук ЦАП прямым потоком, I2C всякие). Красота!

    На самом деле ведомый Parallel Master Port в dsPIC это всего лишь 4 регистра-защелки. Т.е. отличий от ВВ55 почти никаких. Чисто экономия ног у МК.
    Увы, не думаю, что кто-то захочет выдирать ВВ55 из ретро-сборки или плату переразводить... Я лично в своём любимом стареньком Орионе ничего кардинального трогать не готов, если только что-то внешнее подключать. Для высокоскоростного режима флэш-диска уже достаточно проброса одной линии CS от ППА. Да и ожидание нужно только для эмуляции ROM-диска выше 5 МГц, а в прямом режиме, как выясняется, даже на 40 МГц софт 1 мб/с с трудом читает...


    Цитата Сообщение от LeoN65816 Посмотреть сообщение
    10, 20, 40 МГц... Вот десятку вроде сделали: по мегагерцам вдули в 4 раза больше, а на выхлопе всего 3.5 Маха... Под двадцатку даже и процик существует Z84C0020, а в реале Ориончика такого ПОКА нет... А под сороковку какой процик планируется? Хренсобаки.
    Это получается видеовыход скорость портит?
    Ну понятно, что скоростные Орионы это такая проблема, что тут не до флэш-диска...

  5. #4

    Регистрация
    04.05.2006
    Адрес
    St.-Petersburg
    Сообщений
    2,234
    Спасибо Благодарностей отдано 
    490
    Спасибо Благодарностей получено 
    989
    Поблагодарили
    641 сообщений
    Mentioned
    6 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от RyazanNik Посмотреть сообщение
    Ну если ПО читает не быстро, значит и с Орионом на 40 МГц будет флэш-диск работать
    Значит вопрос можно считать закрытым.


    Цитата Сообщение от RyazanNik Посмотреть сообщение
    При желании код можно ускорить.
    Я когда-то упирался по части ускорения кода чтения ПЗУ, но потом приоритет сменился в сторону компактности кода, а по скорости особой разницы не заметил.


    Цитата Сообщение от RyazanNik Посмотреть сообщение
    проверку выхода за банк - делать вне цикла... переключаем банк, читаем остаток.
    Тоже об этом подумал. Но в данном случае это не требуется, т.к. заметно будет лишь только на больших файлах.


    Цитата Сообщение от RyazanNik Посмотреть сообщение
    На чем же будет сделан Орион на 40 МГц?
    Вот на этом - http://www.cpu-world.com/CPUs/Z80/Ka...KL5C8400C.html

    С небольшим разгоном: 33 -> 40 МГц

    - - - Добавлено - - -

    Цитата Сообщение от RyazanNik Посмотреть сообщение
    Увы, не думаю, что кто-то захочет выдирать ВВ55 из ретро-сборки или плату переразводить...
    Все расширения лучше делать в пространстве F7xx, а родное пусть действительно будет в первозданном виде.

    - - - Добавлено - - -

    Цитата Сообщение от LeoN65816 Посмотреть сообщение
    Под двадцатку даже и процик существует Z84C0020, а в реале Ориончика такого ПОКА нет... А под сороковку какой процик планируется? Хренсобаки, тьфу, Кавасаки KL5C8400C только 33 МГц позволяет...
    Имхо, для Ориона потолок - 20 МГц. Оно и достаточно. Выше уже нужно архитектурно полностью пересматривать, это будет другой комп.
    Критиковать - значит объяснять автору, что он делает не так, как делал бы я, если бы умел

  6. #5

    Регистрация
    30.01.2020
    Адрес
    г. Рязань
    Сообщений
    11
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от Denn Посмотреть сообщение
    Я когда-то упирался по части ускорения кода чтения ПЗУ, но потом приоритет сменился в сторону компактности кода, а по скорости особой разницы не заметил.
    Сейчас в DsDos чтение ROM - 80т на байт. а классический цикл - 61 такт на байт. Тело цикла - всего 46 тактов на байт, и если читать по 4 байта, то будет 50 тактов на байт. Итого можно ускорить в 1.3 раз просто и в 1.6 раза - потеряв компактность кода (ну как потеряв: лишние 27 байт; для f3xx не желательно, но можно по страницам распихать).

    Цитата Сообщение от Denn Посмотреть сообщение
    заметно будет лишь только на больших файлах.
    На самом деле многое будет работать пропорционально быстрее. Для Ориона файл на 8 кб уже большой. Какой-нибудь Kort$ на 32 кб грузится целую секунду. Если процедура чтения ROM у Вас универсальная и используется везде, то есть не плохая мотивания оптимизировать её по-максимуму.
    Конечно, 1.3 раза не много - но только потому, что обычное чтение ПЗУ не быстрое (тело 46 тактов). А если читается напрямую "флэш-диск" или Ваш быстрый RAM7, где тело цикла 19 тактов? Тут терять 34 такта на организацию цикла не хорошо...


    Цитата Сообщение от Denn Посмотреть сообщение
    Все расширения лучше делать в пространстве F7xx, а родное пусть действительно будет в первозданном виде.
    Не, тогда как раз придётся подключаться к системной шине. А мне пока боязно. "Флэш-диск" на F5 этого не требует, хотя по скорости оказывается не хуже (при пробросе только CS ППА F5).
    Если уж подключаться к шине - то как сказал LeoN65816, вместо ППА F5. Тогда будет 100% рабочий на любой частоте Ориона большой ROM-диск (с умным Wait выше 5 МГц) + возможноть подключения современной переферии. Уж очень симпатичный вариант...


    Цитата Сообщение от Denn Посмотреть сообщение
    Имхо, для Ориона потолок - 20 МГц. Оно и достаточно. Выше уже нужно архитектурно полностью пересматривать, это будет другой комп.
    Ну если старый софт работать будет - значит формально Орион. Только видеосистема на ПЛИС - совсем уже не орион в плане простоты...

  7. #6

    Регистрация
    14.09.2012
    Адрес
    г.Севастополь
    Сообщений
    473
    Спасибо Благодарностей отдано 
    278
    Спасибо Благодарностей получено 
    78
    Поблагодарили
    56 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Сорри, обманул, 20MHz.
    Но это точно )
    МК - PIC16F1825


  8. #7

    Регистрация
    30.12.2018
    Адрес
    г. Москва
    Сообщений
    1,375
    Спасибо Благодарностей отдано 
    11
    Спасибо Благодарностей получено 
    384
    Поблагодарили
    346 сообщений
    Mentioned
    1 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от ALS Посмотреть сообщение
    Сорри, обманул, 20MHz.
    Но это точно )
    МК - PIC16F1825
    x4? т.е. 80МГц тактовой?

    Зверинецъ

    Специалист (был когда-то "совсем стандарт") - 1988-2023
    Ленинград1 +256К +AY+BDI+VGA выход +Ethernet (Speccyboot) +Xmodem (115200)+divmmc
    Ленинград2 + CF карта
    Платформа 8085+Z80+CPLD (Специалист МХ2 +SD +FDD +PS/2kbd)
    БК0010-01 стоковый
    [свернуть]

  9. #8

    Регистрация
    14.09.2012
    Адрес
    г.Севастополь
    Сообщений
    473
    Спасибо Благодарностей отдано 
    278
    Спасибо Благодарностей получено 
    78
    Поблагодарили
    56 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Таки да )

  10. #9

    Регистрация
    13.02.2016
    Адрес
    г. Королёв
    Сообщений
    493
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    12
    Поблагодарили
    11 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Этот пользователь поблагодарил omercury за это полезное сообщение:

    Error404(28.11.2020)

  11. #10

    Регистрация
    14.08.2006
    Адрес
    Владимир
    Сообщений
    4,581
    Спасибо Благодарностей отдано 
    64
    Спасибо Благодарностей получено 
    112
    Поблагодарили
    97 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от omercury Посмотреть сообщение
    Оч. прикольная штука. Этакий неправославный/читерский контроллер для 8-битки По скорости как схема PVV, НО! - с уже встроенным интерфейсом к FAT16/32.

    На МSX это уже прикрутили. Можно было бы портануть. Через дивайс можно подключать флешки, клавиатуры, USB-Ethernet
    https://github.com/S0urceror/MSX-USB
    https://github.com/Konamiman/RookieD...ank1/ch376.asm
    По факту, из полезного для нас (а точнее для неCPM-щиков коих большинство) только флешки, т.к. клавиатура- для ОРДОС нестандарт (в отличии от адаптера PS/2 это не готовая матрица, а нужен драйвер), а Ethernet голый - без стека TCP, а простейший uIP мало кому интересен
    Последний раз редактировалось Error404; 28.11.2020 в 12:12.
    Лучше сделать и жалеть, чем не сделать и жалеть.

    Некоторые из моих поделок тут: https://github.com/serge-404

Страница 2 из 3 ПерваяПервая 123 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Ответов: 37
    Последнее: 06.12.2017, 01:24
  2. Немного периферии для Спектрума
    от ArtemKuchin в разделе Барахолка (архив)
    Ответов: 22
    Последнее: 04.05.2012, 13:22
  3. Картинки с флэш-анимацией.
    от moroz1999 в разделе Графика
    Ответов: 7
    Последнее: 29.08.2009, 19:10
  4. простой скрипт для написания хелпов
    от jim в разделе Программирование
    Ответов: 2
    Последнее: 09.04.2007, 14:33

Ваши права

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