Телесистемы
 Разработка, производство и продажа радиоэлектронной аппаратуры
На главную   | Карта сайта | Пишите нам | В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:jobsmp@pochta.ru

Телесистемы | Электроника | Конференция «Цифровые сигнальные процессоры (DSP) и их применение»

Вопрос по TMS320C6416. Использую DAT-модуль из библиотеки CSL для доступа к внешнему устройству по EMIF. Результаты функций премного огорчают своей непредсказуемостью (+)

Отправлено chizh 18 апреля 2007 г. 13:23


Протокол обмена ориентирован на пакетные прием/передачу. EMIF работает в режиме Synchronous FIFO interface. В это самое внешнее устройство все должно писаться четко и строго по требованию разуемеется.
Собственно неприятны странности такого рода:
1) сразу же после открытия модуля DAT_open, если использовать функции DAT_copy(из_внешн, во_внутр, кол_во) или DAT_fill(внешн) - результат их использования нулевой - в случае DAT_copy транзакции по EMIF вообще не бегут, а в случае DAT_fill - вместо пакета из, допустим, 16 последовательных транзакций в бурсте на EMIF прорывается только одна - первая.
2) если есть поледовательные вызовы, к примеру

DAT_copy(Buf_A, Buf_B, N);
DAT_copy(Buf_B, Buf_A, N);
DAT_copy(Buf_A, Buf_B, N); // Buf_A - internal
DAT_copy(Buf_B, Buf_A, N); // Buf_B - external (via EMIF)

срабатывают только вторые - то есть запись из внутренней памяти во внешнюю происходит, наоборот - нет. Если вызовы с обращениями на чтение из внешней памяти продублировать - начинают срабатывать. Каждый второй.

Интуиция мне подсказывает :) что все дело в кэше. По аналогии с примерами, поставляемыми с CCS и иллюстрирующими работу DAT-модуля, пробовал использовать функции CACHE_wbInvL2 - эффект нулевой. Объясните пожалуйста в чем тут дело. Какой тут может быть workaround ?

П.С. Используется плата DSK6416, транзакции по EMIF фиксируются логическим анализатором

Заранее большое спасибо всем откликнувшимся.

Составить ответ | Вернуться на конференцию

Ответы


Отправка ответа
Имя*: 
Пароль: 
E-mail: 
Тема*:

Сообщение:

Ссылка на URL: 
URL изображения: 

если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
что получится, если сложить 4 и 4 ?

Перейти к списку ответов | Конференция | Раздел "Электроника" | Главная страница | Карта сайта

Rambler's Top100 Рейтинг@Mail.ru
 
Web telesys.ru