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

 
 
 
Reply to this topicStart new topic
> lpc2929 и fx2lp, выполнение программы из flash и iram
toweroff
сообщение Sep 18 2012, 13:42
Сообщение #1


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Добрый день!
Что-то я в ступор впал... Не понимаю, где собака порылась

Проц работает через EMC с USB контроллером через асинхронную параллельную шину. Когда программа исполняется из flash - все в порядке
Попробовал перетащить функции, работающие с USB контроллером, в IRAM - через какое-то время (ни к чему не привязанное, все время по-разному) контроллер перестает себя адекватно вести и почти всегда впадает в ступор, точнее, как и должен, ждет команду по USB от компа, а комп недополучил порцию данных и, поэтому, новую команду не отдает и по тайм-ауту выходит в ошибку передачи.
Питание от USB, 2 линейника до 3.3 и с него до 1.8в, LPC, Cypress и 4 NOR флешки на борту
И оставил бы, как есть, во флеш, да надо бут сваять, он должен в RAM висеть...

Есть какие-то мысли на эту тему?
Go to the top of the page
 
+Quote Post
toweroff
сообщение Sep 19 2012, 14:32
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Такой вопрос

Контроллер имеет внутреннюю SRAM, которая имеет свое время доступа. Есть ли регистры, определяющие время доступа к ней? Для внутренней FLASH есть, для SRAM не нашел
Или она априори может работать на максимальной частоте ядра?
Go to the top of the page
 
+Quote Post
toweroff
сообщение Sep 19 2012, 16:57
Сообщение #3


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Прошу прощения за вынужденный ап, но проблема решилась именно понижением тактовой ядра
Так все-таки (пусть и для других ядер/фирм/моделей), есть ли настройки таймингов для внутренней SRAM?
Встречали такое?
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Sep 19 2012, 17:46
Сообщение #4


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(toweroff @ Sep 19 2012, 18:32) *
Или она априори может работать на максимальной частоте ядра?

Она может работать на частоте AHB. В данном конкретном случае частота ядра равна частоте AHB, так что ответ - да, может.

Цитата(toweroff @ Sep 19 2012, 20:57) *
Прошу прощения за вынужденный ап, но проблема решилась именно понижением тактовой ядра

Может, сказываются уменьшение задержки между последовательными обращениями к регистрам внешнего железа?
Go to the top of the page
 
+Quote Post
toweroff
сообщение Sep 19 2012, 18:00
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата(aaarrr @ Sep 19 2012, 21:46) *
Может, сказываются уменьшение задержки между последовательными обращениями к регистрам внешнего железа?

я тоже думал об этом, но включать (и как?) наносекундные задержки... sad.gif
NOP - но шаманство какое-то

UPD
снизил-то на 5% почти тактовую
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Sep 19 2012, 18:11
Сообщение #6


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Цитата(toweroff @ Sep 19 2012, 22:00) *
я тоже думал об этом, но включать (и как?) наносекундные задержки... sad.gif

А если просто SMC "покрутить"?
Go to the top of the page
 
+Quote Post
toweroff
сообщение Sep 19 2012, 19:32
Сообщение #7


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата(aaarrr @ Sep 19 2012, 22:11) *
А если просто SMC "покрутить"?

ну так здрасте
осцилл показывает те же задержки, там все хорошо; а вот с передачей - нет, не просто же так пишу сюда
по ходу проблема именно в доступе к внутренней SRAM

но попробую вставить нопы в цикле ожидания fx2lp, посмотрю... там вроде как флаг гасится чуть позже окончания полного чтения FIFO

УПД
бьем в бубен и пляшем у костра
один ноп после ожидания флага спас цивилизацию
blink.gif wacko.gif
жесть
Go to the top of the page
 
+Quote Post
aaarrr
сообщение Sep 19 2012, 19:56
Сообщение #8


Гуру
******

Группа: Свой
Сообщений: 10 713
Регистрация: 11-12-04
Пользователь №: 1 448



Что и требовалось доказать.
Go to the top of the page
 
+Quote Post
toweroff
сообщение Sep 19 2012, 20:52
Сообщение #9


Гуру
******

Группа: Свой
Сообщений: 2 957
Регистрация: 19-09-06
Из: Москва
Пользователь №: 20 514



Цитата(aaarrr @ Sep 19 2012, 23:56) *
Что и требовалось доказать.

пока еще не "требовалось" sm.gif попробую с таймингами поиграть sm.gif
потому как нопы - это точно шаманство

УПД
поиграл с таймингами - призыв луны в ясный полдень
только ноп
тогда возникает вопрос - что происходит с ядром при обращении через AHB к SEMC при записи туда?
1) заносятся данные в регистры адреса и данных и проц побежал дальше, при следующей подобной операции ждем окончания предыдущей опирации записи, или
2) после операции записи ждем окончания, потом бежим дальше?
Go to the top of the page
 
+Quote Post

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

 


RSS Текстовая версия Сейчас: 19th July 2025 - 07:48
Рейтинг@Mail.ru


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