Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Microblaze + spartan 6 + DDR
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Системы на ПЛИС - System on a Programmable Chip (SoPC)
Golikov A.
Всем привет! На спартане 6 сделал микроблайз, И 2 банка ДДР3 по 128 мегобайт.

Программа с ЛвИП и во внутренний 64 кбайта не влезла, запускаю из ДДР, выделил в одном банке хвост банка под программу и данные. Для того чтобы все здорово крутилось включаю кэш инструкций и данных.

Заметил такую странность
кеш данных 64 кбайта не жалуется.

кеш инструкций если ставлю кешируемым адресным пространством 1 банк ДДР и 32 кбайта кеш. Работает, Если ставлю 64 кайта, или 2 банка ДДР в кешируемое пространство, то не работает прогармма. Либо перезапускается, либо повисает на включении кеша инструкций. Если кэш инструкций вырубить, все работает...

Я что-то не нашел в описаниях что надо выбирать размер кэша от размера банка и так далее... кто -то с чем то подобным сталкивался? в чем может быть затык? Означает ли такое поведение кэша инструкци, что и кэш данных может давать сбои? И есть ли смысл выбирать кэшируемое чем меньше тем лучше, эли это не влияет на производительность, и жрет только ресурсы?


П.С. Правильно я понимаю что если программа из ДДР работает то на внутреннюю память программ достаточно минимум 16 КБайт, там же только загрузчик будет?
Golikov A.
2 банка, и кеши по 32 байта заработали, что-то перегрелось, то ли плиска толи память... Положил пакетик со льдом и начало работать, убрал и через некоторое время опять рессеты... Думаю перегрелась плисина, вряд ли из-за памяти она бы рессетилась....


2 банка и 64 кэш так и не стартует... вот какого блин?!
Golikov A.
Приделал охлаждение из радиатора и вентилятора, без него плисина достигала угрожающих 63-69 градусов, с ним стоит на 40, но проблем не ушли, а даже усугубились.

Без кеша инструкций работает как часы, с кешем, рушиться, ресетиться, виснет... ЧТО я сделал не так?!...

ведь куча народу использует кеш инструкций на микроблейзе и спартане 6..., кошмар какой то...
aaarrr
Цитата(Golikov A. @ Apr 29 2013, 21:31) *
Без кеша инструкций работает как часы, с кешем, рушиться, ресетиться, виснет... ЧТО я сделал не так?!...

Так, из общих соображений: включение кэш резко увеличивает нагрузку на интерфейс памяти. При проблемах с целостностью сигналов описываемое поведение достаточно типично.
Golikov A.
sm.gif делать то чего?!
При проблемах с целостностью сигналов описываемое поведение достаточно типично.
что проверить? это констрейны или что?

тесты памяти проходят нормально, как бороться? Я реально в тупике... такое чувство что есть где то кнопочка, включить чтобы все было хорошо, но где?!
Golikov A.
После долгой пляски с охлаждением перегенерением и прочего. Дошел вот до чего, включил опцию slice регистров на шине кеша и памяти, получил варнинг что типа это не оптимально по ресурсам и предложение сделать LIGHT_WEIGHT, решил не слушать, синтезировал ядро. Синтез дольше раз в 5 стал, но на выходе прекрасно работающее ядро с 32КБайт кеша данных и инструкций, с 8 линиями вик кеша и прочее..

Делаю тесты, пока похоже что проблема была в этом.
Golikov A.
32 КБайта кеш работает исправно, 64 КБайта кэш так и не запустился. Не то чтобы мне очень нужно 64, просто не понятно почему. Есть мнение что чем больше кэш тем больше брамов на него идет, тем больше потребление и нагрев, и возможно тем меньше максимальная частота работы. Шины и проц работают на частоте 100 МГц, снижать их не стал, возможно для 6 спартана и такого кеша многовато.

У кого есть опыт?

П.С. Надо ли мне куда вставлять еще регистры? На контроллер МАК например или еще куда?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.