DASM 0 26 декабря, 2005 Опубликовано 26 декабря, 2005 · Жалоба Вот у меня полный снос всего иаровского, очистка реестра от всех следов, переустановка ev 4.30A, доставка на него апдейта компилятора от полного, вылизывание всего что можно - не вылечили эту беду. Дело похоже не в железе, а в самом отладчике. Но на него апдейтов пока не видать... Зато MISRA с радостью вывалила почти 55 тысяч ошибок на проект... :w00t: 1. А с RDI все в порядке? У меня на самом деле вылечилось не до конца - таймер работает почти всегда, а вот уже UART - реже. Дальше - хуже... Дело достаточно темное и комплексное - больше всего похоже на какие-нибудь временные нестыковки в которых виноваты оба :-(. Я питаю надежды посмотреть на поведение с адаптивной тактировкой. Надо-бы попробовать на какой-нибудь машине типа P3-700, что-то мне моя интуиция подсказывает попробовать. На днях поставалю. А Вы на какой пользуете? Причем я очень сильно сомневаюсь, что с родным J-Link имеется такй-же эффект - уж больно вопиющий факт. 2. MISRA это... хотя 55тысяч наводят на размышления :-) Я лично попробовал избавится от тысченки-другой, но довольно быстро дошел до рекомендации не использовать функции с переменным числом аргуменотов и решил завязать с этим делом. В любом языке диалекты придают особую прелесть языку...... C RDI тоже самое наблюдал , но вот что любопытно - прерывание таймера действительно иногда пропадает, а вот EINT - никогда. Вобщем вопрос еще нуждается в изучении. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zltigo 2 26 декабря, 2005 Опубликовано 26 декабря, 2005 · Жалоба C RDI тоже самое наблюдал , но вот что любопытно - прерывание таймера действительно иногда пропадает, а вот EINT - никогда. Вобщем вопрос еще нуждается в изучении. Ага, вот и DASM заговорил :-) по данному вопросу. Главное не забрасывать вопрос! Еще правильно будет попробовать с адаптивной тактировкой поработать. С EINT недели через три будет на чем пробовать в полный рост на реальной железке - все четыре задействованы будут, в том числе (при наличии внешней синхронизации) и вместо таймерного. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DASM 0 26 декабря, 2005 Опубликовано 26 декабря, 2005 · Жалоба а я завтра получу jlink и все сравню Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zltigo 2 26 декабря, 2005 Опубликовано 26 декабря, 2005 · Жалоба а я завтра получу jlink и все сравню Ну и надеюсь на объективное и публичное сравнение :-) А что, раньше не был доступен? По складу MT-Link вроде когда-то существовал в наличии... А где доставали? А то у всех известных мне дилеров в наличии только в составе китов из борды и компилятора, что является некоторым "перебором". Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DASM 0 26 декабря, 2005 Опубликовано 26 декабря, 2005 · Жалоба Безусловно все отличия отмечу и исправлю в новом апдейте. Где что и как доставал - написал в private Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Velund 0 27 декабря, 2005 Опубликовано 27 декабря, 2005 · Жалоба Вот у меня полный снос всего иаровского, очистка реестра от всех следов, переустановка ev 4.30A, доставка на него апдейта компилятора от полного, вылизывание всего что можно - не вылечили эту беду. Дело похоже не в железе, а в самом отладчике. Но на него апдейтов пока не видать... Зато MISRA с радостью вывалила почти 55 тысяч ошибок на проект... :w00t: 1. А с RDI все в порядке? У меня на самом деле вылечилось не до конца - таймер работает почти всегда, а вот уже UART - реже. Дальше - хуже... RDI лучше и шустрее грузит и верифицирует, но траблы те же. Дело достаточно темное и комплексное - больше всего похоже на какие-нибудь временные нестыковки в которых виноваты оба :-(. Я питаю надежды посмотреть на поведение с адаптивной тактировкой. Ну этого пока нет, бм надеяться что появится когда нибудь. Надо-бы попробовать на какой-нибудь машине типа P3-700, что-то мне моя интуиция подсказывает попробовать. На днях поставалю. А Вы на какой пользуете? Два Xeon (3.06 GHz, 533 MHz FSB) на матери Asus PCH-DL, гиг оперативки. Причем я очень сильно сомневаюсь, что с родным J-Link имеется такй-же эффект - уж больно вопиющий факт. 2. MISRA это... хотя 55тысяч наводят на размышления :-) Я лично попробовал избавится от тысченки-другой, но довольно быстро дошел до рекомендации не использовать функции с переменным числом аргуменотов и решил завязать с этим делом. В любом языке диалекты придают особую прелесть языку...... Ну там 70% на один макрос ввода-вывода ругается. Оно работает, но не нравится ей отсутствие скобок. Может позже поразбираюсь чего оно хочет... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vm1 0 27 декабря, 2005 Опубликовано 27 декабря, 2005 · Жалоба Проблема RM9200 & JTAG во многом зависит от правильной настройки системы тактирования процессора, которая невнятно описана, да и глючная в настройке. Если не принимать никаких специальных мер, то отлаживаться через JTAG весьма проблематично. Тактика примерно такова: не давать управления внутреннему загрузчику, включить как мастер клок второй кварцевый генератор (10-20мгц)(вот эта часть делается весьма витиеватым способом), потом из cstartup-а вызвать low_lewel_init а в нем вызвать AT91F_init_clock c нужными значениями PLLAR & PLLBR а потом уже отдаваться в руки ИАРу. Вот при такой последовательности действий никаких проблем с зависаниями по JTAGу я не ощущаю. При этом способе действий спокойно проходит как холодный так и горячий рестарт системы... У меня нет паралельной памяти, я работаю с загрузкой из IIC или SPI. Что получается я не смогу JTAG использовать? Какой JTAG Вы используете и в какой среде разработки? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
AndyBig 8 27 декабря, 2005 Опубликовано 27 декабря, 2005 · Жалоба Проблема RM9200 & JTAG во многом зависит от правильной настройки системы тактирования процессора, которая невнятно описана, да и глючная в настройке. Если не принимать никаких специальных мер, то отлаживаться через JTAG весьма проблематично. В CrossWorks + Wiggler нет никаких проблем даже без специальных мер. В скрипте сброса установил регистры клока в нужные значения и работаешь... Клок при этом настраивается любой, без ущерба для JTAG-отладки. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
zltigo 2 27 декабря, 2005 Опубликовано 27 декабря, 2005 · Жалоба Два Xeon (3.06 GHz, 533 MHz FSB) на матери Asus PCH-DL, гиг оперативки. Укрепили в желании попробовать на чем-нибудь стареньком. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
d__ 0 28 декабря, 2005 Опубликовано 28 декабря, 2005 · Жалоба Проблема RM9200 & JTAG во многом зависит от правильной настройки системы тактирования процессора, которая невнятно описана, да и глючная в настройке. Если не принимать никаких специальных мер, то отлаживаться через JTAG весьма проблематично. Тактика примерно такова: не давать управления внутреннему загрузчику, включить как мастер клок второй кварцевый генератор (10-20мгц)(вот эта часть делается весьма витиеватым способом), потом из cstartup-а вызвать low_lewel_init а в нем вызвать AT91F_init_clock c нужными значениями PLLAR & PLLBR а потом уже отдаваться в руки ИАРу. Вот при такой последовательности действий никаких проблем с зависаниями по JTAGу я не ощущаю. При этом способе действий спокойно проходит как холодный так и горячий рестарт системы... У меня нет паралельной памяти, я работаю с загрузкой из IIC или SPI. Что получается я не смогу JTAG использовать? Какой JTAG Вы используете и в какой среде разработки? Я пользуюсь МТ-Линк-ом и вигглером через XJTAG. Дело в том, что когда запускается внутренний загрузчик, он включает систему прерываний и когда происходит попытка захвата управления через JTAG, система прерываний не глушится и при первом же прерывании JTAG теряет уравление и оно снова оказывается в руках у загрузчика с самыми разнообразными полетами впоть до такого зависания, когда помогает только отключение питания... Работаю в основнои в ИАРе и ADS12. Ну у меня как раз и этот случай, у меня из ЕЕПРОМа стартует небольшая программка, инициализирует необходимую периферию(SMC,SDRAM и проч.) и попадает в бесконечный цикл, ожидая команду, при это система прерываний заглушена. Вот тут как раз и начинаются операции с JTAGом.. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Velund 0 28 декабря, 2005 Опубликовано 28 декабря, 2005 · Жалоба Укрепили в желании попробовать на чем-нибудь стареньком. Потратил несколько часов, порылся в хламовнике, нашел материнку SuperMicro P6SBA, проц под нее P3-450, памяти 256 мегов, какое то видео... Собрал машинку, воткнул 2000-е винды, 4.30А со всеми апдейтами... Ситуация один в один. .... Ну у меня как раз и этот случай... А можно чуть поподробнее? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
d__ 0 28 декабря, 2005 Опубликовано 28 декабря, 2005 · Жалоба Ну что конкретно хотите поподробнее? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
vm1 0 28 декабря, 2005 Опубликовано 28 декабря, 2005 · Жалоба Работаю в основнои в ИАРе и ADS12. Ну у меня как раз и этот случай, у меня из ЕЕПРОМа стартует небольшая программка, инициализирует необходимую периферию(SMC,SDRAM и проч.) и попадает в бесконечный цикл, ожидая команду, при это система прерываний заглушена. Вот тут как раз и начинаются операции с JTAGом.. Тоесть Вы всетаки позволяете работать внутреннему загрузчику? В MT или в Wglr. пришлось что нибудь дорабатывать? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
d__ 0 28 декабря, 2005 Опубликовано 28 декабря, 2005 (изменено) · Жалоба Когда загрузчик грузит программку из еепрома то проверяет контрольную сумму программы, убеждаясь что все нормально, потом обнуляет всю периферию в тот вид как она находилась после ресета и только потом передает управление загруженной программе... В мт не трогал ничего, а вигглер у меня вообще на одной микросхемке кр561пу4 по совершенно стандартной схеме включения, никакой отсебятины. Изменено 28 декабря, 2005 пользователем d__ Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DASM 0 28 декабря, 2005 Опубликовано 28 декабря, 2005 · Жалоба Вобщем проверил на оригинальном. Таже бодяга. Поскольку симпотмы у вас немного разные - опишу простейший, наиболее легко повторяемый. Драйвер родной - Jlink. Ставим hardware breakpoint в какой нибудь функции прерывания (например timer, перенаправленный через VIC). Грузим прогу - прерывания эти срабатывают. Жмем кнопку reset в отладчике (большая такая стрелка влево) и все - прерывание таймера не наступает. От галочек hardware reset и прочее это не зависит. J-Link оригинальный. Чип LPC248 - максимальная скорость на RDI - 1333, выше не хочет. Adaptive clocking на этих версиях их железа работать не будет по определению - "This pin is not connected in J-Link." (про RTCK , это кажется только в v5 изменилось) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться