Добро пожаловать, Гость
Логин: Пароль: Запомнить меня

ТЕМА:

VGA 11 года 7 мес. назад #3268

  • Alucard
  • Alucard аватар Автор темы
  • Не в сети
  • Завсегдатай
  • Завсегдатай
  • Сообщений: 208
  • Спасибо получено: 20

wowa пишет: Шины в СТМ не имеют прямого выхода наружу. И насколько известно там латентность зависит от скорости самой памяти. Все сигналы там внутренние.. И никак их менять по скорости нельзя.. Ну.. почти нельзя :) можно там покрутить настройки системы тактирования... Но обычно потом там поплывут частоты везде.. И нужно будет много чего пересчитывать.. Параметр латентности нужно учитывать при работе с данными и менять его нельзя. Это из за того что каждую шину можно тактировать по отдельности..

Это-то я понимаю. :) Мне было интересно, может ли этот параметр латентности учитывать сам МК при работе.
Полистал документацию еще раз - похоже, нет.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

VGA 11 года 7 мес. назад #3269

Он это учитывает. Когда читаеш из медленной памяти - то проц зависает на 3-4 такта.. Там это не так видно из-за кеш памяти данных.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

VGA 11 года 7 мес. назад #3270

  • Alucard
  • Alucard аватар Автор темы
  • Не в сети
  • Завсегдатай
  • Завсегдатай
  • Сообщений: 208
  • Спасибо получено: 20

wowa пишет: Он это учитывает.

В случае с латентностью, к сожалению, - это неправда. :( Если я читаю, скажем, 10 байт, то первый байт будет неизвестным, а остальные поплывут со смещением на 1. Контроллер шины SMC хочет, чтобы данные появлялись сразу же после сигнала чтения. Я могу регулировать лишь длительность этого сигнала чтения (циклы чтения), т.е. фактически частоту чтения. (простите за повторения)

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Последнее редактирование: от Alucard.

VGA 11 года 7 мес. назад #3271

Это понятно что если первый байт не успеет - то будут проблемы при чтении :) Это не относится к латенции синхронной шины!!! Она синхронная к сигналам читения. Если переферия не додала данные - это проблема переферии!!! STM32 - это тоже НЕ мультимастер устройство :) И кто мешает програмно задержать всё на один или на два байта??? При работе с многими SPI приходится давать при чтении от 1 до 16 пустых байт :) Я с шиной СМЦ работал только с дисплеем и с статической памятью.. В основном запись.. Чтение и запись проходили нормально.. Даже небыло повода посмотреть осцилографом.. А теперь вообще перешел на FT800 на SPI и забыл про проблемы с графикой..

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Последнее редактирование: от wowa.

VGA 11 года 6 мес. назад #3272

  • Alucard
  • Alucard аватар Автор темы
  • Не в сети
  • Завсегдатай
  • Завсегдатай
  • Сообщений: 208
  • Спасибо получено: 20

wowa пишет: Это понятно что если первый байт не успеет - то будут проблемы при чтении :) Это не относится к латенции синхронной шины!!

Я имел ввиду внешнюю шину, которой управляет SMC контроллер. Она сама по себе асинхронная (там нет clk выхода специального), я сделал ее искусственно синхронной: вывел clk пин от МК другим способом (через PCK контроллер). :) Впрочем, возможно разработчики это предполагали.

Если переферия не додала данные - это проблема переферии!!!

Тут у меня один выход - понижать частоту чтения. К примеру, для асинхронной памяти такая конструкция:
SMC0->SMC_CS_NUMBER[0].SMC_CYCLE = SMC_CYCLE_NRD_CYCLE(4) | SMC_CYCLE_NWE_CYCLE(2);
Четыре цикла для чтения и два для записи (Fclk/4 и Fclk/2), все это при использовании 10ns SRAM и МК на 120MHz.

И кто мешает програмно задержать всё на один или на два байта??? При работе с многими SPI приходится давать при чтении от 1 до 16 пустых байт

Верно, ничего не стоит. :) Однако в этом случае я уже не смогу использовать внешнюю память как "родное" ОЗУ и т.п. Даже исполнять программу оттуда не будет возможным, а это представляет большую ценность. Хотя прошу меня простить, я многое не оговариваю.

А теперь вообще перешел на FT800 на SPI и забыл про проблемы с графикой..

Случайно встретил демо-видео с этим чипом. Думал, что это FPGA :blink: Когда посмотрел документацию, успокоился.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Последнее редактирование: от Alucard.

VGA 11 года 6 мес. назад #3274

Добрый день. Имею китайскую тест плату с установленным VGA чипом adv7123, при этом поонятия не имею что с ним делать.
Подскажите где чего поочитать, чтоб понять алгоритм - в какой последовательности подавать управляющие сигалы на чип, чтоб видеовыход заработал.
VGA Clock      //                     - тактовая частота
VGA BLANK
VGA H_SYNC  // так понимаю - сигнал конца строки,
VGA V_SYNC  //                    -  сигнал конца кадра. 
VGA SYNC

Смотрел готовые ваши проекты, вы тоже используете эти пины при симулировании видеовыхода на тюльпан.
Единственное что нашел по чипу, это даташит, и какой то микросайт www.johnloomis.org/altera/DE2/vga.html

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

VGA 11 года 6 мес. назад #3276

  • Alucard
  • Alucard аватар Автор темы
  • Не в сети
  • Завсегдатай
  • Завсегдатай
  • Сообщений: 208
  • Спасибо получено: 20

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

VGA Clock      //                     - тактовая частота
VGA BLANK
VGA H_SYNC  // так понимаю - сигнал конца строки,
VGA V_SYNC  //                    -  сигнал конца кадра. 
VGA SYNC

Смотрел готовые ваши проекты, вы тоже используете эти пины при симулировании видеовыхода на тюльпан.
Единственное что нашел по чипу, это даташит, и какой то микросайт www.johnloomis.org/altera/DE2/vga.html

Добрый день.
Для начала разберем сигналы ADV7123:

  • BLANK
  • - гасит экран. (когда, например, невидимая часть) [инверсный]
  • SYNC
  • - "подмешивает" тактовую частоту в зеленый канал. [инверсный]
  • CLOCK
  • - тактовый сигнал ЦАП-а.
  • PSAVE
  • - режим энергосбережения. [инверсный]

    В вашем случае следует подвести SYNC, PSAVE к VCC. BLANK во время прохождения "видимой части" лучом нужно подтягивать к VCC, а в остальное время к GND.
    Ваши сигналы H_SYNC и V_SYNC идут мимо микросхемы ADV (у нее нет таких выводов) к разъему VGA, это сигналы горизонтальной и вертикальной разверток.
    Насчет симулирования видеовыхода в тюльпан - это не совсем так, я использую стандартный VGA интерфейс.

    Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

    Последнее редактирование: от Alucard.

    VGA 11 года 6 мес. назад #3277

    Начнём с того что эти чипы НЕ ПРЕДНАЗНАЧЕНЫ на работу в мультимастер устройствах и вообще не имеют полную поддержку для работы с шиной. И подключать ФПГА вместо памяти - как ни крутись - есть большая вероятность что ФПГА небудет успевать додавать данные синхронно к той шине.

    Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

    VGA 11 года 6 мес. назад #3278

    • Alucard
    • Alucard аватар Автор темы
    • Не в сети
    • Завсегдатай
    • Завсегдатай
    • Сообщений: 208
    • Спасибо получено: 20
    ххх

    Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

    Последнее редактирование: от Alucard.

    VGA 11 года 6 мес. назад #3279

    • Alucard
    • Alucard аватар Автор темы
    • Не в сети
    • Завсегдатай
    • Завсегдатай
    • Сообщений: 208
    • Спасибо получено: 20
    ххх

    Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

    Последнее редактирование: от Alucard.
    Время создания страницы: 0.147 секунд
    Работает на Kunena форум