Помогите с созданием видео "дравера"

Обсуждаем цифровые устройства...
Ответить
Аватара пользователя
Spider
Опытный кот
Сообщения: 732
Зарегистрирован: Чт дек 29, 2005 07:29:25
Откуда: Омск
Контактная информация:

Помогите с созданием видео "дравера"

Сообщение Spider »

В общих чертах нужно сделать видеокарту. С разрешением 800х600 и выходом обычный SVGA.
Читал теорию на эту тему и понял что для этого дела нужен RAMDAC, память и собственно тот, кто будет в эту память что-то класть.
Перерыл кучу разных процов и прочего, всё как-то нето. Нашёл решение на ПЛИС и тоже не могу понять кое что.
Корое так. В основном все устройства выглядят как некий проц, который параллельно висит на памяти и покругу её сканирует, результаты чтения из памяти обрабатывает и выводит в RGB, за частую выходы уже согласованы с SVGA.
Взникает тока вопрос как же класть в эту память? Ну вот возьмём некий проц и некую параллельную память, эта свзяка уже работает. Возьмём какую-нить мегу, которая должна класть в эту память изображение. Я аонимаю, что мега очень медленная для таких массштабов изображений и картинка будет тупить. ПУСКАЙ тупит! но как же я могу класть в некую память данные если она всегда занята отдачей информации некому видео процу?
Реклама
Rokl
Друг Кота
Сообщения: 5232
Зарегистрирован: Пт авг 25, 2006 09:26:19
Откуда: Москва

Re: Помогите с созданием видео "дравера"

Сообщение Rokl »

Spider писал(а):В общих чертах нужно сделать видеокарту. С разрешением 800х600 и выходом обычный SVGA.
Читал теорию на эту тему и понял что для этого дела нужен RAMDAC, память и собственно тот, кто будет в эту память что-то класть.
Перерыл кучу разных процов и прочего, всё как-то нето. Нашёл решение на ПЛИС и тоже не могу понять кое что.
Корое так. В основном все устройства выглядят как некий проц, который параллельно висит на памяти и покругу её сканирует, результаты чтения из памяти обрабатывает и выводит в RGB, за частую выходы уже согласованы с SVGA.
Взникает тока вопрос как же класть в эту память? Ну вот возьмём некий проц и некую параллельную память, эта свзяка уже работает. Возьмём какую-нить мегу, которая должна класть в эту память изображение. Я аонимаю, что мега очень медленная для таких массштабов изображений и картинка будет тупить. ПУСКАЙ тупит! но как же я могу класть в некую память данные если она всегда занята отдачей информации некому видео процу?
Я знаю два способа, может есть и другие.
Способ первый, используется в семействе х86 процессоров, это метод доступа по прерыванию. На шину контроллера прерывания выставляется флаг, и когда твой процессор с байтом из памяти пошел его класть в буфер для вывода на экран, он освобождает шину адреса и данных памяти. В этот момент другой процессор ее захватывает и кладет туда новую информацию. В этот момент первый проц. ждет на холостых тактах, пока шина освободится и дальше опять начинает сканировать с прерванного места.
Способ второй используется в Мотороловских процессорах, там, когда процессору ненужна шина адреса и данных,он выставляет сигнал на шине управления и нуждающиеся устройства в зависимости от приоритета захватывают шину адреса и данных в своих целях, как только главный процессор выставит на шине управления сигнал захвата, все остальные контроллеры шины освобождают и ждут опять удобного случая))). Т. е. в первом случае активно переферийное устройство и требует у проца себе шину, а вовтором, сам проц инициализирует момент передачи шины, когда она не нужна ему. Второй вариант гораздо шустрее и для процессора является абсолютно прозрачным.
Реклама
Гость

Сообщение Гость »

А бывают в наши дни готовые решения на эту тему? Желательно чтобы использовать не быстродействующие процы (конечно же в рамках логичного)
Rokl
Друг Кота
Сообщения: 5232
Зарегистрирован: Пт авг 25, 2006 09:26:19
Откуда: Москва

Сообщение Rokl »

Anonymous писал(а):А бывают в наши дни готовые решения на эту тему? Желательно чтобы использовать не быстродействующие процы (конечно же в рамках логичного)
Готовое решение это любая видеокарта.
Реклама
Эиком - электронные компоненты и радиодетали
Аватара пользователя
Spider
Опытный кот
Сообщения: 732
Зарегистрирован: Чт дек 29, 2005 07:29:25
Откуда: Омск
Контактная информация:

Сообщение Spider »

Сейчас уже и не найти нормальную видюху. Сплошные АГП и ПСИ-Е. Куда нам за такими скоростями? По проще что-нить есть?
Реклама
Гость

Сообщение Гость »

Spider писал(а):Сейчас уже и не найти нормальную видюху. Сплошные АГП и ПСИ-Е. Куда нам за такими скоростями? По проще что-нить есть?
Возьми схему Радио-86РК. Там центральный процессор взаимодействует с контроллером ПДП , который постоянно сканирует видеопамять по запросу контроллера ЭЛТ. Уживаются они по способу номер раз.Ввсе очень просто, наглядно, куча ассемблерных программ разобраных до косточек)).
Реклама
Аватара пользователя
teoretic
Открыл глаза
Сообщения: 50
Зарегистрирован: Чт июн 15, 2006 23:46:55
Откуда: Раша, Москоу
Контактная информация:

Сообщение teoretic »

Я пару лет назад ковырял отладочную плату от ксилинкса (плисина такая) стартер-кит-что-то.

Там есть два варианта
1. Мутим мощьный контроллер, который обеспечивает "прозрачный" доступ к памяти и пишет туда во время ретрейса (перевода луча на другую строчку). Я делал этот вариант, но из-за ГЛОБАЛЬНЫХ просчетов в таймингах обломался.
2. В плисине есть такой замечательный штучка - синхронный двухпортовый память :) для вывода текста подойдет на все 100% (1 для хранения глипов + 1 для собственно текста. 18кбит на штука)

Нужно реализовать ЖЕЛЕЗО или замутить ИНТЕРФЕЙС к видюхе (таких не мало, и не только AGP\PCI, но и простая 8 бит шина)?
Если надо интерфейс, в чипе была какая-то платка....
Если надо ЖЕЛЕЗО - на ксилинксе\алтере есть МНОГО видюх как раз 800х600, надо только зацепить слово IP CORE
Аватара пользователя
xelos
Потрогал лапой паяльник
Сообщения: 336
Зарегистрирован: Пн мар 20, 2006 13:05:08
Контактная информация:

Сообщение xelos »

Я просто верю в то, что рушить догмы - лучший способ не стареть.
Ответить

Вернуться в «Цифровая техника»