zombi 0 16 октября, 2019 Опубликовано 16 октября, 2019 · Жалоба 5 minutes ago, quato_a said: сами же пишите про экранный буфер. тогда что под этим подразумевается? Экранный (кадровый) буфер формируется самим изделием путём копирования большого количества изображений разного размера по разным координатам этого кадрового буфера, причем как правило эти изображения перекрываются (накладываются друг на друга). Все изображения хранятся в другой памяти, имеют альфа-канал и по необходимости копируются в экранный буфер. 20 minutes ago, pavlovconst said: А преимущества чтения буфера по частям какие? Я не понимаю. Поэтому и предложил не усложнять =) похоже я не смогу вас понять. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Burenkov 0 16 октября, 2019 Опубликовано 16 октября, 2019 · Жалоба У интела есть вот такие темплейты мастеров на шине Avalon https://www.intel.com/content/www/us/en/programmable/support/support-resources/design-examples/intellectual-property/embedded/nios-ii/exm-avalon-mm.html Со стороны пользователя указывается начальный адрес чтения/записи и желаемый размер данных. Модуль сам выровняет транзакции по границам берста путем манипуляции с сигналом burstcount Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
quato_a 3 16 октября, 2019 Опубликовано 16 октября, 2019 · Жалоба 1 hour ago, zombi said: Экранный (кадровый) буфер формируется... Ясно, тогда нужно отталкиваться от самого загруженного случая с максимальной интенсивностью обращения картинок минимального размера в память. В принципе, контроллер обращения к памяти с выставлением начального адреса, и размера не так сложен в написании. Да и есть готовые решения. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zombi 0 16 октября, 2019 Опубликовано 16 октября, 2019 · Жалоба 1 hour ago, Burenkov said: У интела есть вот такие темплейты мастеров на шине Avalon Да, это круто. наверное Но мне нужно на MAXII ну в крайнем случае на 10M02 52 minutes ago, quato_a said: В принципе, контроллер обращения к памяти с выставлением начального адреса, и размера не так сложен в написании. Да и есть готовые решения. Спасибо Кэп! Только я спрашивал о другом. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Plain 151 16 октября, 2019 Опубликовано 16 октября, 2019 · Жалоба 12 часов назад, zombi сказал: Как сделать так что-бы писать в экранную область можно было теми же пачками но начиная с любого адреса? Видеопроцессоры работают с целыми строками — читают, обрабатывают и пишут. Также, обычно страницы чередуются и в третьей хранится фон. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dxp 31 17 октября, 2019 Опубликовано 17 октября, 2019 · Жалоба 14 часов назад, zombi сказал: Пишу прямоугольниками с произвольными XY При "прямоугольнике" Nx1 всё будет хорошо на DRAM. При "прямоугольнике" 1xN будет не хорошо - фактически это буден N одиночных обращений, из которых немало будет попадать в разные страницы памяти. Тут скорость просядет в разы. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
haker_fox 59 17 октября, 2019 Опубликовано 17 октября, 2019 · Жалоба Коллеги, простите, что маленько не в тему, но всё же рядом. Может быть кто-то подскажет хороший и адекватный документ, описывающий принцип работы SDRAM. Интересует назначение сигналов, таких как DQML/DQMH и подобных. Естественно, в инете есть документы, но как-то не могу сформировать полного понимания работы этой памяти. Особенно непонятно назначение всех таймингов типичной микросхемы. В общем, может быть есть такой хороший труд, рассказывающий всё подробно? Спасибо заранее. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Burenkov 0 17 октября, 2019 Опубликовано 17 октября, 2019 · Жалоба 8 hours ago, zombi said: Да, это круто. наверное Но мне нужно на MAXII ну в крайнем случае на 10M02 Как MAXII и 10M02 противоречит шине авалон?) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
warrior-2001 0 17 октября, 2019 Опубликовано 17 октября, 2019 · Жалоба 1 час назад, dxp сказал: При "прямоугольнике" Nx1 всё будет хорошо на DRAM. При "прямоугольнике" 1xN будет не хорошо - фактически это буден N одиночных обращений, из которых немало будет попадать в разные страницы памяти. Тут скорость просядет в разы. Вот это ключевая фраза! В этом и кроется разница в подходах! Топикстартеру необходимо чётко понять, есть ли у него такая "плохая" ситуация. SRAM ставят именно для обхода этой проблемы, когда алгоритм уже не изменить! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
quato_a 3 17 октября, 2019 Опубликовано 17 октября, 2019 · Жалоба 19 hours ago, zombi said: И все вроде бы хорошо, но поскольку запись (как и чтение) производится пачками по N пикселей, то записывать получится только начиная с адреса кратного burstу. Как сделать так что-бы писать в экранную область можно было теми же пачками но начиная с любого адреса? Вы просто не совсем оптимально будите использовать пространство памяти (будут нули в некоторых ячейках), но это не проблема. Проблема, как уже упомянули ранее, в обмене с памятью минимально возможными пачками. Отправить 100 burst непрерывно одной транзакцией и отправить 100 burst за 100 транзакций - значительно отличаются по времени. Вот в этом смысле и рассматривайте наихудший случай и под него выбирайте размер физической шины данных и спидгрейд DDRx Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zombi 0 17 октября, 2019 Опубликовано 17 октября, 2019 · Жалоба 4 hours ago, Burenkov said: Как MAXII и 10M02 противоречит шине авалон?) Всегда думал что все эти Niosы, Avalonы и пр. SOPC Builderы только на "жирных" чипах возможны. Значит ошибался. Неужто можно какой нить ниос с авалоном на EPM240/570 замутить? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nick_K 0 17 октября, 2019 Опубликовано 17 октября, 2019 · Жалоба Ну Ниос всё же требует ресурсов. Смотря на задачу и в порезанном варианте можно запустить - хватит ли для требуемой задачи, вот вопрос. А Авалон то что? Это грубо говоря протокол синхронизации передачи данных. Не просто данные и разрешение, а как положено с хэндшейками и т.д. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zombi 0 17 октября, 2019 Опубликовано 17 октября, 2019 · Жалоба Вот скажите на каком одном чипе DDRx c 16-ти битной шиной данных и какой одной плис можно получить поток 240MB/s = 1.92Gb/s при практически рандомном доступе ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Maverick_ 15 17 октября, 2019 Опубликовано 17 октября, 2019 · Жалоба 49 minutes ago, zombi said: Всегда думал что все эти Niosы, Avalonы и пр. SOPC Builderы только на "жирных" чипах возможны. Значит ошибался. Неужто можно какой нить ниос с авалоном на EPM240/570 замутить? На EPM240/570 Nios не запуститься. MAX10 уже позволяет запускать Nios ... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 17 октября, 2019 Опубликовано 17 октября, 2019 · Жалоба 1 hour ago, zombi said: Вот скажите на каком одном чипе DDRx c 16-ти битной шиной данных и какой одной плис можно получить поток 240MB/s = 1.92Gb/s при практически рандомном доступе ? при рандомном, ни на какой. потому SRAM и не умерла до сих пор. UPD при квази рандомном(когда связь между блоками все же есть), с кешем и собственным контроллером можно попробовать. Но может вам все же остаться на SRAM? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться