Видеокарта

Печатные платы, программируемая логика, разработка и изготовление аппаратуры

Moderator: Shaos

User avatar
shoorick
Doomed
Posts: 487
Joined: 05 Nov 2007 05:08
Location: Украина

Post by shoorick »

А много для 6845 обвеса надо?
Думаю нет (именно думаю, т.к. сам на ней ничего не делал)
я с ней столкнулся 2 раза:
1.двухплатный клон IBM PC (для которой и доставал первую микруху) - одинаковые по разммерам платы, одна - системная, вторая - клон ЦГА на рассыпухе (конечно, размер внушительный) - я так и не собрал этот клон...
2.купил как-то Пълдин на рынке слегка покуроченый (за $1) - машинка по сложности и количеству элементов сродни Радио-86РК, только проц СМ601 (6800), а видео - СМ607 (6845), порты по-моему СМ602 (6821 что-ли), поддерживался и текст 80х25, и графика цветная 320х200 (сам не видел, читал в бумажке)

про микруху только читал. наподобие ВГ75, только символы не в себе хранит, а во внешней памяти (которую заодно и регенерит), символов (=байт на строку для графики) в строке что-то вроде до 256, +сама формирует полные кадровые и строчные синхроимпульсы.

вобщем, вещь хорошая, но если ее не достать, то конечно бесполезная :) (я обычно не начинаю из чего-то что-то делать, если потом нет возможности достать запчасть)

есть в вики: http://ru.wikipedia.org/wiki/Motorola_6845

нашел свою старую фотку с чипами:
Image
User avatar
danchandoo
Fanat
Posts: 63
Joined: 24 Sep 2007 12:15
Location: Украина

Post by danchandoo »

Вот чего-то надумал:

Схема (*.PNG, 54 Кб):
http://files.mail.ru/O0VZF5


Только закончил рисовать, от нетерпения сразу выложил. Теперь надо еще проверить, временную диаграмму накидать.

На схеме отсутствует часть ответственная за вывод RGB, а связанная с памятью была выложена ранее.

Смысл таков: после включения и сброса каскад из счетчиков слева начинает генерировать адресс ячейки ПЗУ. Различные биты слов записанных в ПЗУ управляют сигналами синхронизации (как описывалось ранее), а также включают/выключают счетчик реального адреса пары пикселей в видеопамяти. Помимо этого выполняется дублирование строк. Запоминается адрес первой пары пикселей строки. Считаем еще 159 раз, обратно загружаем адрес, который был 159 ячеек назад, считаем до 160, запоминаем и все по новой...

Боюсь за счетчики и ПЗУ, уж очень долго... Каждый счетчик (60 МГц max) дает задержку в 18-20нс, ну а их там 5... плюс задержка "Устойчивый адрес -- устойчивые данные" на выходе ПЗУ. А один период всего-то равен 160нс, как бы все не съехало, сейчас начну розбираться. :-?

->Add 06.02.09:
Ошибка в схеме: выход RD цепляется на Q1, а не на Q0.[/quote]
Craz
Fanat
Posts: 64
Joined: 11 Mar 2007 03:57
Location: 217.9.147.66

Post by Craz »

У ВГ75 знакогенератор тоже внешний нужен. ПЗУшка с шрифтом цепляется.

Схемку можно в CPLD или FPGA упихать, всё в одном корпусе будет.
User avatar
danchandoo
Fanat
Posts: 63
Joined: 24 Sep 2007 12:15
Location: Украина

Post by danchandoo »

Поступил, как когда-то мне подсказали viewtopic.php?t=8926.

Случайно попав сегодня на радиорынок купил 2 мамы для 486-го, на них 32-Кб стаической памяти микросхем по 9 штук на каждой. Производства ISSI и ALLIANSE (15 и 20 нс соответственно).

В качестве приятного сюрприза на одной из плат оказался биос с УФ стиранием, его можно тоже привлечь, вот только время доступа у него 150 нс :(

Хотя у меня в схеме ПЗУ все время выбрана, так что меня интересует задержка только между изменением адресса и изменением данных на выходе, а она нигде не документирована, но по временной диаграмме работы явно меньше 150 нс (раза в 4-5).
User avatar
danchandoo
Fanat
Posts: 63
Joined: 24 Sep 2007 12:15
Location: Украина

Post by danchandoo »

Craz wrote:У ВГ75 знакогенератор тоже внешний нужен. ПЗУшка с шрифтом цепляется.

Схемку можно в CPLD или FPGA упихать, всё в одном корпусе будет.
Это к чему... К теме мотороловком чипе :roll:


Честно говоря для меня CPLD FPGA -- 8 латинских буквоф, хоть я и догадываюсь по смыслу из их упоминаний, что это некая программируемая логика, но боюсь вы переоцениваете мои познания и возможности.

+для "упихивания" нужен программатор, а его у меня нет =)


Меня другое интересует. Там в схеме каскаж из 4 счетчиков генерирует адресс пары пикселей, задержка между синхросигналом и данными на выходе всего каскада равна сумме задержек счетчиков?.. Не очень это мне подходит (
User avatar
HardWareMan
Banned
Posts: 2139
Joined: 20 Mar 2005 13:41
Location: От туда

Post by HardWareMan »

danchandoo wrote:Меня другое интересует. Там в схеме каскаж из 4 счетчиков генерирует адресс пары пикселей, задержка между синхросигналом и данными на выходе всего каскада равна сумме задержек счетчиков?.. Не очень это мне подходит (
Синхронные счетчики спасают гигантов мысли.
User avatar
danchandoo
Fanat
Posts: 63
Joined: 24 Sep 2007 12:15
Location: Украина

Post by danchandoo »

HardWareMan wrote: Синхронные счетчики спасают гигантов мысли.
http://www.st.com/stonline/books/pdf/docs/8023.pdf

Вот такой счетчик планируется к использованию.

У него есть выход CARRY озаглавленный Terminal Count, его к Clock входу следующего счетчика подключать?
User avatar
HardWareMan
Banned
Posts: 2139
Joined: 20 Mar 2005 13:41
Location: От туда

Post by HardWareMan »

Неверно. Иначе он перестанет быть синхронным. Каскадное соединение синхронных счетчиков такое:

Code: Select all

CEP Vcc
CET Vcc
TC  -|
     |
CEP -o---|
CET Vcc  |
TC  -|   |
     |   |
CEP -|   |
CET -----o
TC  -|   |
     |   |
CEP -|   |
CET------|
TC

ТС первого счетчика будет открывать такты следующих каскадов ровно на 1 такт. А ТС очередного счетчика будет открывать такт для следующей ступени. Сигнал тактов общий для всех. В итоге - абсолютно синхронная работа. Тут гдето пролетала схема "Спеца" на новой элементной базе. Там я юзал как раз эти счетчики. Этот 74х161 аналог нашего 1533ИЕ10. Шикарнейший счетчик. Можно юзать в качестве 4х битного синхронного регистра со сбросом даже.
User avatar
danchandoo
Fanat
Posts: 63
Joined: 24 Sep 2007 12:15
Location: Украина

Post by danchandoo »

Спасибо, а то я б еще долго голову ломал =)
User avatar
danchandoo
Fanat
Posts: 63
Joined: 24 Sep 2007 12:15
Location: Украина

Post by danchandoo »

После некоторого перерыва начал всетаки что-то делать.
Накупил разных нужных и ненужных (как выянелось) мелкосхем, сижу паяю.
Правда конечной схемы устройства нет, а заняться чемто хотелось, так что разбил ее на отдельные узлы и буду собирать их поочереди.
Сейчас делаю синхрогенератор.
Принцип примитивный -- счетчики + микросхема памяти в качестве логики. Таких комплекта два -- для горизонтальной и вертикальной синхронизации. Счетчики дают 10 (можно и 12 разрядов), чего должно быть достаточно и для режима 640x480 и для 800x600. В качестве ПЛМ -- SRAM. ПЗУ не подходят по причине их отсутствия. Микросхемы памяти програмируются процессором, сразу после включения питания весьма странным образом. Чтобы не подключать ПЛМ к шине адресса, сигнал от синхрогенератора проходит через 2 элемента И-НЕ, первый из которых может блокировать его прохождение, а второй передавать замещающий сигнал со специального бита управляющего регистра. Т. е. процессор "вручную" производит инкремент значений счетчиков и нарашивание адреса на ПЛМ. Через другой же регист он вводит в ПЛМ данные.
Что из этого выйдет -- посмотрим...

Только не знаю, как отнесется к происходящему монитор. После включения ПЛМ, содержат неизвестно что, а счетчики находятся в произвольном состоянии. И все это начинает работать, выдавая на выходы синхронизачии некую белеберду, так пока процессор не заполнит память и не запустит все заново...
User avatar
HardWareMan
Banned
Posts: 2139
Joined: 20 Mar 2005 13:41
Location: От туда

Post by HardWareMan »

danchandoo wrote:Микросхемы памяти програмируются процессором, сразу после включения питания весьма странным образом. Чтобы не подключать ПЛМ к шине адресса, сигнал от синхрогенератора проходит через 2 элемента И-НЕ, первый из которых может блокировать его прохождение, а второй передавать замещающий сигнал со специального бита управляющего регистра. Т. е. процессор "вручную" производит инкремент значений счетчиков и нарашивание адреса на ПЛМ. Через другой же регист он вводит в ПЛМ данные.
Что из этого выйдет -- посмотрим...
Это не странно, это логично! Интересно будет посмотреть на твой вариант и подумать о своем... Почему я не догадался об этом? Правда, часть, которая отвечает за синхру проца все же делается из нормальных микрух, ато будет ай-ай-ай.
danchandoo wrote:Только не знаю, как отнесется к происходящему монитор. После включения ПЛМ, содержат неизвестно что, а счетчики находятся в произвольном состоянии. И все это начинает работать, выдавая на выходы синхронизачии некую белеберду, так пока процессор не заполнит память и не запустит все заново...
Можно предусмотреть блокирующий сигнал, который будет отключать выходные сигналы синхры H и V. Если нет синхры - моник спит.
AlexM
Fanat
Posts: 73
Joined: 02 Oct 2007 02:25
Location: 78.108.67.186

Post by AlexM »

Сдесь можно качнуть проектик - SVGA карты на рассыпухе, с описаловом, схемами, печатками, прошивками - может пригодится :D : http://www.mycpu.thtec.org/downloads/Gr ... 090110.zip
User avatar
danchandoo
Fanat
Posts: 63
Joined: 24 Sep 2007 12:15
Location: Украина

Post by danchandoo »

AlexM wrote:Сдесь можно качнуть проектик - SVGA карты на рассыпухе, с описаловом, схемами, печатками, прошивками - может пригодится :D : http://www.mycpu.thtec.org/downloads/Gr ... 090110.zip
Спасибо, очень интересный материал, для меня там особо ценный цифро-аналоговый преобразователь для сигналов R G B.

А вообще поразительно какую мужик проделал работу, не только собрав схему, но еще и тщательно оформив ко всему этому документацию.
User avatar
HardWareMan
Banned
Posts: 2139
Joined: 20 Mar 2005 13:41
Location: От туда

Post by HardWareMan »

Да, проект интересен. Познавателен для тех, кто никогда такие узлы не проектировал видеомодули. Лично мне после Специалиста, Ориона, Спектрума и пр. подобной шняги это не составляет особого труда спроектировать любой модуль - нужны лишь только тайминги развертки. ЦАП там тупой, я думал он будет все же посложнее. Я такой цап делал для Спектрума и Ориона. Но в общем да, признаю что доки подготовлены шикарно.
User avatar
Shaos
Admin
Posts: 23989
Joined: 08 Jan 2003 23:22
Location: Silicon Valley

Post by Shaos »

Устройство всё ещё на Z80? Тогда переношу в ZILOG
Кроме того хотелось бы финальную версию схему получить для размещения в топике
Я тут за главного - если что шлите мыло на me собака shaos точка net