Как стать автором
Обновить

Разработка видеокарты своими мозгами. Символьный вывод

Уровень сложностиСредний
Время на прочтение11 мин
Количество просмотров3.3K
Всего голосов 8: ↑8 и ↓0+12
Комментарии8

Комментарии 8

Схема - это хорошо. Но начиная с определенного уровня она становится не читаемый. И крайне сложной для понимания.

И потому для этого используют специальные языки. Верилог например. Который позволяет упаковать подобные схемы в легко читаемый и понимаемый текст.

Не понравился мне верилог... да и способ создания схем тоже не очень понравился.

По поводу сложности схем, то специально делал разделение, чтоб проще было воспринимать информацию. Но, да, всё равно сложно по началу. Но когда разберёшься что к чему, думаю легче её воспринять будет.

Благодарю! Так глядишь и сам может доберусь до реальной схемы.

Интересно, что в этом проекте, используются схемы, а не языки описания аппаратуры (VHDL, verilog и т.д.). С одной стороны, кому то покажется это не практичным - с другой, логическая схема более наглядна для понимания того как происходят процессы в принципе.
Ощущается масштаб всего происходящего, который теряется за кодом

(8 бит на 2 бита на 8 байт) = 64 бит (8 байт). Каждый байт как раз содержит в себе 8 бит и 2 бита будут обозначать включен бит или выключен.

Поясните пожалуйста этот тезис, что означает "2 бита будут обоначать включен бит или выключен" ? И еще: 8 * 2 * 8 = 128 бит = 16 байт, нет ?

Само ПЗУ нужно только для того чтоб содержать информацию о
выводимых символах, и ни чего больше (в данном случае).

Такое ПЗУ с соответствующей схемой называется "знакогенератор" и соответственно "ПЗУ знакогенератора".

Ваша схема на уровне RTL плохо читаема, сделайте пожалуйста структурную схему для понимания принципа действия вашего видеоадаптера.

Поясните пожалуйста этот тезис, что означает "2 бита будут обоначать включен бит или выключен" ?

0000 0000
это 8 бит, где каждый бит либо включен, либо выключен. Обозначений 2: либо нуль, либо единица.

Заодно надо исправить в статье не правильную формулировку.

Ваша схема на уровне RTL плохо читаема, сделайте пожалуйста структурную схему для понимания принципа действия вашего видеоадаптера.

я не думаю, что если я структурно покажу как это работает, это будет проще. Важно понять, что почти ни чего не изменилось с прошлой версии видеоадаптера.

Изменения:

  • видеоадаптер работает не с графикой, а с текстом.

  • видеоадаптер ускорен при передаче данных от ЦП к ОЗУ.

Я писал, что я не любитель "не нужных" действий. По сути даже не представляю, какую именно вы схему хотите, потому что упрощать схему уже некуда (ведь я специально разбил схемы на более мелкие по их работе). Заменять готовые элементы на структурные блоки? По моему глупо.

Извиняюсь, если не оправдал ваших ожиданий.

Если речь шла о регистрах, то я уже говорил, что в данной схеме нет регистров. Те два что есть, нужны только для формирования задержки, чтобы данные попадали на устройство RGB видео (координаты и цвет) одновременно.

УУ работает без регистров, просто на передаче сигналов и данных. Ни каких "лишних" операций не выполняется.

Такое ПЗУ с соответствующей схемой называется "знакогенератор" и соответственно "ПЗУ знакогенератора".

Благодарю за напоминание! Я крашусь на мелочах... Знал и забыл.

Хотя тут больше подходит: "Не знал, да ещё и забыл.", ведь я даже не вспоминал...

UPD. Сложность схемы ещё выражается в том, что мне пришлось простые элементы памяти (ПЗУ и ОЗУ) "допиливать". Для того чтоб осуществлять передачу как 8-ми байт сразу, так и по отдельности каждый байт.

Добавлю для полноты картины плейлист VGA from Scratch с канала James Sharman

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации