реклама на сайте
подробности

 
 
 
Reply to this topicStart new topic
> встраиваемые системы с Microblaze, вопросы новичка
Krys
сообщение Dec 15 2014, 04:29
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



Тренируюсь на борде SP-605. Planahead, XPS. Добавил в работающий проект корку axi-timer из стандартного репозитория. Экспортнул в SDK, как обычно. Проблема в том, что не вижу в файле xparameters.h никакого упоминания об этом таймере. Хотя там есть упоминания даже о моих самодельных корках. Таймер - это не самодельная недоделка, так что уж для готовых корок то должно быть всё прописано правильно.
При том нет ни ссылки на датащит, ни примеров:
Прикрепленное изображение


Касаемо базовых адресов в xparameters.h - это я пока временно обошёл, прописав ручками. Но хотел ещё стандартными драйверами (функциями) для прогрузки регистров таймера воспользоваться - даже не знаю теперь где это искать. Тоже пока буду ручками напрямую регистры прогружать.

Так что жить можно, но хотелось бы знать, что нажать, что проделать, чтобы в xparameters.h появилось всё как надо и примеры и драйвера появились.


--------------------
Зная себе цену, нужно ещё и пользоваться спросом...
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Dec 15 2014, 05:43
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



удалить все софтварные проекты из железного проекта не удаляя их с диска
очистить все (purge all)
потом импортнуть софт проекты заново

xparameters.h - это файл который генеритсья автоматом, и часто этот процесс глючит. Более того этот файл можно править, это ни на что не влияет, потому что он только отражается состояние библиотеки, но ничего на самом деле не объявляет. Как ксалинксс смог такое сделать я не понимаю, то есть они умудрились сделать хедер файл, который подключен, но ничего не объявляет....

Короче в таких ситуациях я проделывал танцы с бубуном. Обычно они при повторном экспорте проекта наступают. Надо поменять настройки, добавить LwIP библиотеку, закрыть, пурыжнуть, убрать, короче каким-то образом заставить среду еще раз пройти свой "инициализационный" процесс при котором генеряться все эти файлы....
Go to the top of the page
 
+Quote Post
Krys
сообщение Dec 15 2014, 06:32
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



Спасибо за подсказки. Правда, я извиняюсь, я не очень понял, где эта команда находится purge all. Я использую Planahead и XPS, а также SDK. В SKD я видел clean project. Гугл тоже навскидку ничего конкретного не подсказал.

Далее Вы пишете:
Цитата
xparameters.h - это файл который генеритсья автоматом, и часто этот процесс глючит. Более того этот файл можно править
А не потрутся ли мои правки при следующем экспорте? Я пока добавил базовый адрес своего таймера не в xparameters.h, а в свой самодельный файл, т.к. боялся, что затрёт.

Ну и эти пляски я видимо проделаю, когда узнаю, где там пружить )))
Цитата
Короче в таких ситуациях я проделывал танцы с бубуном. Обычно они при повторном экспорте проекта наступают. Надо поменять настройки, добавить LwIP библиотеку, закрыть, пурыжнуть, убрать, короче каким-то образом заставить среду еще раз пройти свой "инициализационный" процесс при котором генеряться все эти файлы....


Как всегда сам спросил, сам отвечу (Golikov A. в любом случае спасибо).
Проблема была в том, что мне нужно было вручную в BSP Settings установить другое значение для таймера:
Прикрепленное изображение


Если ставить generic, то в xparameters.h добавит базовый адрес, но картинка из первого поста не изменится. Если ставить tmrctr, то к этому добавится дока и пример на картинке из первого поста.


--------------------
Зная себе цену, нужно ещё и пользоваться спросом...
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Dec 15 2014, 08:47
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



purge all - это я наверное правда не так сказал, Clean project - годиться. Просто несколько разных сред для разных устройств, и я путаюсь где какое, как называется.

xparameters.h - я пытался править.
1. Это ни на что не влияет, я даже какое-то время был удручен входом под #ifdef для не объявленного параметра, а также циклам не заказанной длинны.
2. Я так понял что он может заново перегенриться, то ли при изменение BSP Settings, то ли при переэкспорте проекта.

То есть когда надо он не меняется, а когда не надо, то с легкостью. Отсюда я для себя решил вообще ничего не делать с этими файликами, и все делать в своих отдельных. Так хоть как-то можно прогнозировать что будет...
Go to the top of the page
 
+Quote Post
Krys
сообщение Dec 16 2014, 05:56
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



Ещё вопросы новичка: у меня сейчас и программа, и все переменные хранятся в DDR. Реально программа у меня скорее всего влезла бы и в блочную память, вместе с переменными. Но есть одно НО. Среди переменных у меня есть несколько массивов по нескольку мегабайт.
А в программе используется библиотека xilfatfs доступа к файлам на компакт флешке борды SP-605. В настройках BSP для этой библиотеки я указал большущий размер кэша (иначе считывание происходит почему-то с ошибками).

У меня есть самописная корка БПФ, которая очень активно использует DDR. Чтобы повысить быстродействие доступа корки к DDR я на данном этапе отладки хотел бы перенести свою программу вместе с переменными в блочную память, чтобы микроблэйз не лез в DDR за каждой переменной и следующей инструкцией программы и не отнимал время доступа к DDR у моей корки.

Кто может подсказать, как, что и где мне нужно настроить, чтобы программа со всеми переменными легла в блочную память, кэш библиотеки xilfatfs лёг в DDR и те гигантские массивы, о которых я писал в начале, тоже остались в DDR (с ними работает только корка, а микроблэйз к ним должен иметь доступ, чтобы прописать адреса в DataMover, а также для последующей небыстрой верификации результата)? Я предполагаю, что мне нужно править линкер скрипт. Но какие конкретно сегменты, что туда прописать? Если бы у меня не было нескольких массивов, которые я бы хотел бы оставить в DDR, и не было бы кэша библиотеки xilfatfs, то я бы и сам решил этот вопрос. А так слишком много тонкостей для новичка.

И ещё вопрос новичка: как посмотреть объём программы, влезет ли она и переменные в блочную память?


--------------------
Зная себе цену, нужно ещё и пользоваться спросом...
Go to the top of the page
 
+Quote Post
Krys
сообщение Dec 18 2014, 04:27
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 2 002
Регистрация: 17-01-06
Из: Томск, Россия
Пользователь №: 13 271



вот тут ещё у меня вопрос программистский созрел:
http://electronix.ru/forum/index.php?showtopic=124988


--------------------
Зная себе цену, нужно ещё и пользоваться спросом...
Go to the top of the page
 
+Quote Post

Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 23rd July 2025 - 17:12
Рейтинг@Mail.ru


Страница сгенерированна за 0.01399 секунд с 7
ELECTRONIX ©2004-2016