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

ТЕМА: VGA

Re: VGA 10 года 6 мес. назад #2260

  • Alucard
  • Alucard аватар Автор темы
  • Не в сети
  • Завсегдатай
  • Завсегдатай
  • Сообщений: 208
  • Спасибо получено: 20
Да точно. Это если палитра будет располагаться чередой b...256 g...256 r...256, а я сделал bgr...256 тут без умножения никак. Первый вариант экономичнее и быстрее.
Насчет умножения на степень двойки - знал, но посчитал, что компилятор сам оптимизирует.

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

Re: VGA 10 года 6 мес. назад #2261

Ну не скажите :) Прибавить число к константе однозначно проще чем умножать. Сделать просто розположение кратное двум - или палитра 16 бит и это сдвиг на 1 бит для умножения или палитра 24 бит + 8 альфа :) = 32 - опять кратно 2 только сдвиг нужен уже на 2. ну и ещё можно сделать отдельно цветные плоскости - от адреса ххх лежат красные данные плитры, от ууу лежат зелёные и от адреса zzz синие. 3 константы и без умножения.
Спасибо сказали: Alucard

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

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

Re: VGA 10 года 6 мес. назад #2262

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

wowa пишет: Ну не скажите :) Прибавить число к константе однозначно проще чем умножать. Сделать просто розположение кратное двум - или палитра 16 бит и это сдвиг на 1 бит для умножения или палитра 24 бит + 8 альфа :) = 32 - опять кратно 2 только сдвиг нужен уже на 2. ну и ещё можно сделать отдельно цветные плоскости - от адреса ххх лежат красные данные плитры, от ууу лежат зелёные и от адреса zzz синие. 3 константы и без умножения.

Сделал как вы писали: "цветные плоскости". И, по-моему, чисто теоретически, я сделал то, что хотел.
*Схема*
Сюда я еще добавил чтение самого индекса цвета.
Теперь логика такова:
  1. Читаем индекс
  2. Защелкиваем его
  3. Сбрасываем цвета
  4. Читаем синий
  5. Защелкиваем
  6. Читаем зеленый
  7. Защелкиваем
  8. Читаем красный
  9. Защелкиваем
  • VRAMADDIN - данные адреса от счетчика адресов
  • FTCLOCK - частота работы с памятью
  • PXCLOCK - частота самих пикселей

Пока оставил целый байт на каждый цвет - не стал обрезать. Немного беспокоит то, что чтение и защелкивание происходит одновременно. Успеет ли все отработать? или это зависит от самой памяти?
Еще вопрос: как работает защелка? Я имею ввиду, она защелкивает при единице на входе gate, а что происходит при последующем нуле? Остается ли состояние на выходе? Или нужно ставить триггер на вход для "закрепления" состояния?(как я это сделал в схеме)
---
Спасибо за ваши предыдущие ответы

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

Re: VGA 10 года 6 мес. назад #2264

Вообще использовать защёлки как бы не кошер :) Лучше всё делать синхроно по такту - тогда у вас будет гарантия того что данные стабильные. Хотя я незнаю как работает защёлка в схематике - я пишу на ВЕРИЛОГу. Естли мне не изменяет память -* защёлка работает ток что при высоком уровне она прозрачна для сигнала и по переходу в нуль - запоминает то было на шине.. Так что если там были нормальные данные - то теоретически они там и останутся после защёлкивания.
Спасибо сказали: Alucard

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

Re: VGA 10 года 6 мес. назад #2266

  • Alucard
  • Alucard аватар Автор темы
  • Не в сети
  • Завсегдатай
  • Завсегдатай
  • Сообщений: 208
  • Спасибо получено: 20
Похоже, что система палитры работает. :) Правда, толкового теста еще не провел - времени нет.
Кварц пришлось задействовать на 100MHZ, путем соединения проводами платы Марсоход 1.3 и моей платы.
Небольшая проблема есть (давно уже) при использовании видеопроцессора(порядка 1-2мин): изображение начинает пропадать/мерцать или происходит сдвиг всего изображения. Возможно проблема в питании, когда касаешься пальцем линии питания, то помех становится меньше. Осциллограф показывает шум на питании 300Гц и с размахом в 400Мв; питаю всю конструкцию от кр1158ен3в, которая сильно греется + конденсатор 10Мкф и у ПЛИС на 33Пф. (другого источника питания найти не удалось).

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

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

Re: VGA 10 года 6 мес. назад #2267

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

Красивое 12бит дерево, но без красного компонента. Для Красного ЦАП мне не хватает двух резисторов на 150Ом, все облазил, но нигде нет.
А проблема с глюками видеопроцессора до сих пор осталась...
---
Спасибо огромное за помощь!
PS: Это ничего, что я описываю здесь каждый шаг проекта?

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

Re: VGA 10 года 6 мес. назад #2268

Это ничего :) Глвное теперь сделать из этого статью на сайт :) Чтобы и другие поучились на вашем опыте :)

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

Re: VGA 10 года 6 мес. назад #2269

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

wowa пишет: Это ничего :) Глвное теперь сделать из этого статью на сайт :) Чтобы и другие поучились на вашем опыте :)

Я так и планировал. ;) Единственное, у меня есть собственный сайт, посвященный электронике/микроконтроллерам :) Но и на marsohod.org могу написать.

PS: На самом деле - это уже третья версия видеопроцессора. Его путь гораздо длиннее, чем кажется. До этого я еще пробовал на ARM и AVR реализовать, но не был доволен результатом.

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

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

Re: VGA 10 года 6 мес. назад #2270

  • Alucard
  • Alucard аватар Автор темы
  • Не в сети
  • Завсегдатай
  • Завсегдатай
  • Сообщений: 208
  • Спасибо получено: 20
Заметил маленький косячок. Сигналы VSYNC и HSYNC - не совпадают по фронту.

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

Re: VGA 10 года 6 мес. назад #2271

Ну незнаю .. У меня есть на АВР и видел что делают на АРМу :) Работает без проблем как консоль для линукса :) Сейчас у меня в основном альтера 4..

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

Время создания страницы: 0.197 секунд
Работает на Kunena форум