User Tag List

Показано с 1 по 10 из 57

Тема: Spectrum 48 на 2x XILINX XC9572-15

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

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

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

    По умолчанию

    Цитата Сообщение от ILoveSpeccy Посмотреть сообщение
    Какие существуют способы избавиться от WAIT при обращении процессора в видеопамять??? Хотя бы для режима 3.5МГц...
    Можно, как в пентагоне, сделать double-buffering для данных и атрибутов. Не уверен, но по-моему, в фирменном ZX-128 тоже было нечто похожее.
    KOE ** Pentagon-1024SL 2.2+1024k RAM+384x304+16 colour+HDD+CD-ROM+PS2 Keyboard+Turbo Sound FM + GS 512 bugFixed

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

  3. #2

    Регистрация
    20.03.2007
    Адрес
    Germany
    Сообщений
    867
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    4 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от KingOfEvil Посмотреть сообщение
    Можно, как в пентагоне, сделать double-buffering для данных и атрибутов. Не уверен, но по-моему, в фирменном ZX-128 тоже было нечто похожее.
    А можно подробнее о такой реализации??? Может дока есть???

  4. #3

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

    По умолчанию

    Цитата Сообщение от ILoveSpeccy Посмотреть сообщение
    А можно подробнее о такой реализации??? Может дока есть???
    Из доки есть только схема Pentagon-128 и исходник прошивки P-1024sl.

    Общая идея заключается в том, что если выборки из памяти делать на частоте 3.5 МГц (на той же частоте, на которой работает Z80 не в турбе), то за один машинный цикл в худшем случае нужно сделать 3 обращения к памяти (одно для данных процессора, одно для считывания видеоданных и одно для считывания видеоатрибутов). Т.к. самые короткие машинные циклы Z80 длятся 3 такта, то сделать 3 обращения к памяти, не прибегая к дополнительному торможению процессора, в принципе, возможно. Но придется делать сложное буферирование, т.к. данные нужно схватывать тогда, когда они появляются, а не тогда, когда их нужно вывести на экран (либо выдать процессору), в этот момент они уже должны быть наготове.
    Последний раз редактировалось KingOfEvil; 28.06.2007 в 21:19.
    KOE ** Pentagon-1024SL 2.2+1024k RAM+384x304+16 colour+HDD+CD-ROM+PS2 Keyboard+Turbo Sound FM + GS 512 bugFixed

  5. #4

    Регистрация
    20.03.2007
    Адрес
    Germany
    Сообщений
    867
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    4 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от KingOfEvil Посмотреть сообщение
    Из доки есть только схема Pentagon-128 и исходник прошивки P-1024sl.

    Общая идея заключается в том, что если выборки из памяти делать на частоте 3.5 МГц (на той же частоте, на которой работает Z80 не в турбе), то за один машинный цикл в худшем случае нужно сделать 3 обращения к памяти (одно для данных процессора, одно для считывания видеоданных и одно для считывания видеоатрибутов). Т.к. самые короткие машинные циклы Z80 длятся 3 такта, то сделать 3 обращения к памяти, не прибегая к дополнительному торможению процессора, в принципе, возможно. Но придется делать сложное буферирование, т.к. данные нужно схватывать тогда, когда они появляются, а не тогда, когда их нужно вывести на экран (либо выдать процессору), в этот момент они уже должны быть наготове.
    а если видеоконтроллер будет опрашивать память на частоте 7 или 14 МГц???
    Только я пока неочень понимаю как мне отловить именно те моменты, когда шина данных не занята???
    Я вообще думал так сделать: у меня шины данных проца и видео в ПЛИС...
    беру состояние шины данных защелкиваю в D(0-7), блокирую адресную шину VA посредством 74HCT245. Потом на частоте 7 или 14 МГц адрессирую VA и читаю атрибуты и байт данных. Потом опять включаю 74HCT245.... Ну в общем всё как обычно до следующего чтения.
    Как ты думаеш, прокатит ???

  6. #5

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

    По умолчанию

    Цитата Сообщение от ILoveSpeccy Посмотреть сообщение
    а если видеоконтроллер будет опрашивать память на частоте 7 или 14 МГц???
    Ну тогда вообще никаких проблем, если частота выборок ОЗУ равна частоте работы процессора, то тормоза не нужны.
    Цитата Сообщение от ILoveSpeccy Посмотреть сообщение
    Только я пока неочень понимаю как мне отловить именно те моменты, когда шина данных не занята???
    Для этого и делается двойное буферирование, буфера записываются тогда, когда данные появляются, а из буферов они считываются тогда, когда это надо.
    Цитата Сообщение от ILoveSpeccy Посмотреть сообщение
    Я вообще думал так сделать: у меня шины данных проца и видео в ПЛИС...
    беру состояние шины данных защелкиваю в D(0-7), блокирую адресную шину VA посредством 74HCT245. Потом на частоте 7 или 14 МГц адрессирую VA и читаю атрибуты и байт данных. Потом опять включаю 74HCT245.... Ну в общем всё как обычно до следующего чтения.
    Как ты думаеш, прокатит ???
    Не очень понял, т.е. память будет работать с большей частотой, чем процессор? По-моему, сделать двойное буферирование будет даже проще.
    KOE ** Pentagon-1024SL 2.2+1024k RAM+384x304+16 colour+HDD+CD-ROM+PS2 Keyboard+Turbo Sound FM + GS 512 bugFixed

  7. #6

    Регистрация
    20.03.2007
    Адрес
    Germany
    Сообщений
    867
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    5
    Поблагодарили
    4 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитата Сообщение от KingOfEvil Посмотреть сообщение
    Не очень понял, т.е. память будет работать с большей частотой, чем процессор? По-моему, сделать двойное буферирование будет даже проще.
    Пока процессор с памятью работает... она тактуется частотой процессора, а видеоконтроллер читает с 7 или 14 МГц.
    Т.е. пока видеоконтроллер читает, процессор даже не успеет 1 такт сделать. А статика у меня на 55нс... Так что должно получиться (теоретически )

    Цитата Сообщение от KingOfEvil Посмотреть сообщение
    Для этого и делается двойное буферирование, буфера записываются тогда, когда данные появляются, а из буферов они считываются тогда, когда это надо.
    Не поминаю чего-то... Когда какие данные появляются??? Можешь описать по-подробнее? please

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

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

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

Похожие темы

  1. Altera (Cyclone3?) или Xilinx (Virtex5?)
    от Vladimir Kladov в разделе Несортированное железо
    Ответов: 119
    Последнее: 13.02.2007, 17:53

Ваши права

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