реклама на сайте
подробности

 
 
> создание простейшего VGA контроллера
umup
сообщение Dec 5 2006, 17:12
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 226
Регистрация: 2-06-06
Пользователь №: 17 720



Хватит ли для создания такого контроллера (с управлением от любого микроконтроллера через параллельную/последовательную шину) PLD типа EPM3064/3128 и 256/512К 70ns 8-битной FPM/EDO памяти (осталась куча от старых видеоплат). Разрешение не очень существенно (от 512х512 до 1024х1024, 4,8 или 16 бит). Понятно, что нужны 2 10-11 битных счетчика для перебора строк/столбцов, немного логики для обнаружения перехода на следующую строку и формирования сигналов синхронизации. Еще нужно обеспечивать доступ от контроллера (по скорости памяти одновременная запись и чтение невозможны), наверно придется сделать 2 банка памяти - 1й текущий отображаемый буфер, 2й - для фоновой записи из контроллера, контроллер заполняет фоновый и во время кадрового импульса переключает страницы. Пока непонятно как делать регенерацию памяти фоновой страницы. С выдачей изображения понятно - в начале строки выставить ее адрес и подать ~RAS, далее выставлять адрес пикселя в строке и подавать ~CAS.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
Flanker
сообщение Dec 5 2006, 23:45
Сообщение #2


Частый гость
**

Группа: Свой
Сообщений: 76
Регистрация: 16-05-05
Из: г.Чебоксары
Пользователь №: 5 090



Сделать аналоговый VGA контроллер на таком железе в принципе невозможно.
Допустим даже если делать монохромный VGA, то имеем исходные данные: разрешение 640х480, 8 бит на градации серого, 60 Гц кадровая.
Даже если не учитывать неактивные точки в кадре, необходимые на обратные строчные и кадровые ходы, то получим, что необходимо в памяти хранить 640*480=307200 байт. Значит неоходимо имеет память объемом 512*8 Кбит. Шина адреса будет иметь ширину 19 бит. Предполагается организовать 2-х страничную память. В итоге в PLD необходим как минимум один 19р регистр (если ША общая) и два 8р регистра (раздельные ШД). Итого получим уже занятых 35 триггеров, а еще необходима логика для генерации строчных и кадровых синхроимпульсов (дополнительные счетчики, разрядность в зависимости от используемого Clk), контроллер регенерации памяти и т.д.
Хоть с данными PLD не работал, но судя по маркировке в них либо 64, либо 128 триггеров. Так что одного 3128 может и хватит (сомнительно), но хватит ли пользовательских ног, да и гибкости при трассировке у PLD никакой, итоге проект может и не влезть.
Память тоже придется заменить. Время доступа в 70нс явно велико. Период одного кадра (при частоте 60 Гц) составляет примерно 16,7 мс. Мы имеем как минимум 307200 активных точек. В итоге, чтобы за кадр выдать все точки, необходимо выдавать каждую за 16,7/307200=54,3нс, а еще время на регенерацию. Значит необходимо ОЗУ с временем доступа не меньше 50 нс, а лучше обойтись асинхронной SRAM, благо кристалы SRAM 512х8 Кбит найти можно.

Удачи
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- umup   создание простейшего VGA контроллера   Dec 5 2006, 17:12
- - Artem-1.6E-19   Цитата(umup @ Dec 5 2006, 16:12) Хватит л...   Dec 5 2006, 17:57
- - umup   Почему ? Уже пробовали ?   Dec 5 2006, 18:39
|- - Artem-1.6E-19   Цитата(umup @ Dec 5 2006, 17:39) Почему ?...   Dec 5 2006, 19:50
- - Postoroniy_V   Цитата(umup @ Dec 5 2006, 17:12) Хватит л...   Dec 5 2006, 22:34
|- - rezident   Цитата(Flanker @ Dec 6 2006, 01:45) Памят...   Dec 6 2006, 01:31
|- - Flanker   В принципе, если использовать черезстрочную развер...   Dec 6 2006, 14:01
- - umup   Но ведь это и есть память со старых видеоплат ...   Dec 6 2006, 08:36
- - otrog   Вот чего нашел: General purpose display controller...   Dec 6 2006, 14:28
- - umup   Ясно, это я уже видел. Наверно для упрощения дейст...   Dec 6 2006, 23:19
- - EXeGLuMATOR   Вот только поднимал подобную тему. И была в той те...   Dec 13 2006, 23:55
- - moonrock   Давненько я делал подобную штуку. Состояла из Меги...   Dec 26 2006, 00:55
- - EXeGLuMATOR   Да там ничего сложного и нету. Особо. На плисе уд...   Dec 26 2006, 01:15
- - umup   ЦитатаВпрочем, судя по отсутствию активности автор...   Dec 26 2006, 16:48
|- - Shread   Цитата(umup @ Dec 26 2006, 16:48) ЦитатаВ...   Dec 27 2006, 03:44
- - EXeGLuMATOR   В плане скорости вывода - а зачем контроллеру рефр...   Dec 27 2006, 09:48
- - mse   ИМХО, всё украдено до нас. http://projects.caxapa....   Dec 27 2006, 11:04
- - umup   > Shread Спасибо за информацию. Сейчас основна...   Dec 27 2006, 12:09
|- - mse   Цитата(umup @ Dec 27 2006, 12:09) > ИМ...   Dec 27 2006, 13:53
|- - Shread   Цитата(mse @ Dec 27 2006, 13:53) Цитата(u...   Dec 27 2006, 14:18
|- - mse   Цитата(Shread @ Dec 27 2006, 14:18) Напис...   Dec 27 2006, 15:24
|- - Shread   Цитата(mse @ Dec 27 2006, 15:24) Цитата(S...   Dec 28 2006, 02:15
|- - mse   Цитата(Shread @ Dec 28 2006, 02:15) Кстат...   Dec 28 2006, 10:12
|- - Shread   Цитата(mse @ Dec 28 2006, 10:12) Цитата(S...   Dec 30 2006, 01:21
|- - mse   Цитата(Shread @ Dec 30 2006, 01:21) Все я...   Dec 30 2006, 10:59
|- - Shread   Цитата(mse @ Dec 30 2006, 10:59) Цитата(S...   Dec 30 2006, 23:08
- - EXeGLuMATOR   С наступаюшшим! К чему дебаты что лучше? У че...   Dec 29 2006, 20:53
- - bloodden   Люди здравствуйте. У меня появилась потребность в ...   Apr 11 2007, 21:46
- - bloodden   Да, забыл сказать - на EPM3032   Apr 12 2007, 01:21
|- - Postoroniy_V   Цитата(bloodden @ Apr 12 2007, 02:21) Да,...   Apr 12 2007, 19:23
|- - bloodden   Цитата(Postoroniy_V @ Apr 12 2007, 19:23)...   Apr 12 2007, 19:26
|- - Postoroniy_V   Цитата(bloodden @ Apr 12 2007, 20:26) а ...   Apr 12 2007, 19:37
- - rv3dll(lex)   Я делал видеовывод на 2х 3128 и одной 3064 память ...   Apr 12 2007, 17:19


Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 05:18
Рейтинг@Mail.ru


Страница сгенерированна за 0.01381 секунд с 7
ELECTRONIX ©2004-2016