nabbla (nabbla1) wrote,
nabbla
nabbla1

Categories:

Обнаружение на новом АЛУ - с нахрапу не вышло

Прошил в "железяку", запустил - традиционное "исчерпание заданий на обработку" (UFLO):



Посмотрел, как далеко он продвинулся в обработке кадра:


Ну, хотя бы первое пятно почти доделал, и то хлеб. Посмотрел дамп памяти. В списке активных пятен два:

(361; 92) с диаметром 82 - это как раз левое пятно. Очень похоже на правду:


А вот второе: (739;100) и диаметр 1 - это явно относится к правому пятну, но опять фигня с уменьшением диаметра - не должно так быть!

Ещё и одно пятно в "окончательном списке" AllPoints: (749;98) и диаметр НОЛЬ.

Похоже, вот такое изрезанное пятно


ему не нравится. Тут дело явно не в быстродействии, что-то в алгоритме по-прежнему неправильно...


У меня было такое ощущение, что пятна друг на друга влиять всё ж не должны! А значит, если оставить всё ту же симуляцию с картинкой 128х128, но подсунуть туда другую картинку - мы должны отловить жучару на симуляции.

Но симуляция прошла без проблем. Почти. Одна подлянка - выдача отрезка с нулевым размером. Раньше это приводило к сбою на одну строку, но сейчас просто выдаётся результат по следующему пикселю. Этого хватило, чтобы у меня "зажёгся" отладочный вывод DEmptySet, но как потом оказалось, всё прошло неплохо: отдельные маленькие пятнышки в итоге слились в одно большое, с центром примерно где надо. Для алг. обнаружения - нормально.

Другая - в какой-то момент у нас "забился" входной буфер, поэтому мы стали ждать, когда он освободится, т.е по сути ждали прихода строчного синхроимпульса, после чего начиналась "схватка с временем", когда мы должны успеть "озадачить" видеопроцессор, пока он уже начал работать с этой строкой. Впрочем, эту схватку мы выиграли.

Но в железе могли и не выиграть - там несколько другие соотношения. Поэтому я попробовал удлинить входной и выходной буферы видеопроцессора. Изначально входной состоял из 8 элементов, а выходной из 6. Я попытался сделать 16 на входе и 12 на выходе, но упёрся в Critical Warning: Timing constraints were not met, и предельная частота 24,5 МГц. Вообще, стоило опробовать, при комнатной температуре и стабильном питающем напряжении должно заработать. Но не стал рисковать - при моём везении конечно же не заработает :) Так-то я натыкался на ситуацию, когда при этом Critical Warning схема реально глючит, а на более низкой частоте уже не глючит, так что сверхбольшого запаса там нет...

В итоге сделал для начала размер входного буфера 10 элементов и выходного: 8 элементов. Тогда всё отсинтезировалось, но отработало В ТОЧНОСТИ ТАК ЖЕ! Ни строчкой больше. Наверное, дело всё же не в этом.


Похоже, придётся всё-таки сделать "полноразмерную симуляцию", хотя бы 1024х128. Не знаю, как лучше это сделать. Можно освоить "верификационное подмножество" верилога, которое нифига не синтезируется, но может использоваться для генерации тестовых воздействий. Либо "сжать" изображение, представив его как последовательность чёрных и белых полосок, тогда оно элементарно упихается во внутреннюю память.

Что-то невезучий у меня этот алгоритм...
Tags: ПЛИС, программки, работа, странные девайсы
Subscribe

Recent Posts from This Journal

  • Нахождение двух самых отдалённых точек

    Пока компьютер долго и упорно мучал симуляцию, я пытался написать на ассемблере алгоритм захвата на ближней дистанции. А сейчас на этом коде можно…

  • Слишком общительный счётчик

    Вчера я чуть поторопился отсинтезировать проект,параметры не поменял: RomWidth = 8 вместо 7, RamWidth = 9 вместо 8, и ещё EnableByteAccess=1, чтобы…

  • Балансируем конвейер QuatCore

    В пятницу у нас всё замечательно сработало на симуляции, первые 16 миллисекунд полёт нормальный. А вот прошить весь проект на ПЛИС и попробовать "в…

  • Огари разговаривают

    Сегодня по пути на работу встретил огарей прямо в Лосином острове, на берегу Яузы. Эти были на удивление бесстрашны, занимались своими делами, не…

  • Ковыряемся с сантехникой

    Наконец-то закрыл сколько-нибудь пристойно трубы, подводящие к смесителю, в квартире в Москве: А в воскресенье побывал на даче, там очередная…

  • Мартовское велосипедное

    Продолжаю кататься на работу и с работы на велосипеде, а также в РКК Энергию и на дачу. Хотя на две недели случился перерыв, очередная поломка,…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your IP address will be recorded 

  • 0 comments