|
|
  |
TMS320DM643, CCStudio |
|
|
|
Jun 29 2005, 05:30
|
Участник

Группа: Свой
Сообщений: 38
Регистрация: 3-06-05
Пользователь №: 5 699

|
Цитата(bav @ Jun 28 2005, 08:17) Кто-нибудь сталкивался с таким DSP? Есть куча вопросов! 1. не могу сформировать большой массив для хранения кадра (~33Мбайт). 2. не могу разобраться с работой видеопорта в режиме raw video. (нужно принимать и передавать картинку 4120х4120х16бит. аппаратно это не возмоюжно, придется кадр разбивать). не понятно как работает: кадры разделяются только сигналом FVID? 3. DSP стартуе с нулевого адреса, после загрузки программы из хост-контроллера, а CCStudio генерит туда данные, что делать? п.1 Что есть не могу сформировать массив. Как формируете? п.3 Что содержится к командом файле линкера? Вообще как его напишите, туда CCS и будет генерить. Да и то что генерится и грузится с хоста, так что это скорее фича, чем баг,
|
|
|
|
|
Jun 29 2005, 13:14
|
Знающий
   
Группа: Свой
Сообщений: 693
Регистрация: 21-06-05
Из: Санкт-Петербург
Пользователь №: 6 184

|
Цитата(kilgor @ Jun 29 2005, 09:30) п.1 Что есть не могу сформировать массив. Как формируете? п.3 Что содержится к командом файле линкера? Вообще как его напишите, туда CCS и будет генерить. Да и то что генерится и грузится с хоста, так что это скорее фича, чем баг,  массив формирую следующим образом: ... unsigned short in_img[4120*4120] ... или ... unsigned short *in_img=new unsigned short[4120*4120]; ... программа компилится. в первом случае пишит ошибку загрузки модуля для debug, во втором - ошибка чтения памяти (режим симулятора). в файле cmd объявлена доступная память 500Мб, heap=0x1F400000.
|
|
|
|
|
Jun 30 2005, 05:02
|
Участник

Группа: Свой
Сообщений: 38
Регистрация: 3-06-05
Пользователь №: 5 699

|
Цитата(bav @ Jun 29 2005, 16:14) в файле cmd объявлена доступная память 500Мб, heap=0x1F400000. Сорри, Вы раньше под Винду писали? Для TMS также важно ГДЕ вы ее размещаете, и динамическое распределение памяти (тем более в таких объемах) крайне не рекомендуется. И определять ее "впрок" лишь бы линкер отвязался - то же, имхо, не очень хорошо.
|
|
|
|
|
Jul 1 2005, 05:33
|
Участник

Группа: Свой
Сообщений: 38
Регистрация: 3-06-05
Пользователь №: 5 699

|
Цитата(bav @ Jun 30 2005, 13:43) Спасибо! Кажется, разобрался. Остается проблема с видеопортом: мне нужно объединить последовательно несколько DSP, FPGA, для обработки raw видеопотока. не понятно с синхронизацией и как передается конец/начало кадра, сколько "проводов" нужно для соединения..? Насколько я понял из описания режим raw - это данные приходящие с АЦП или уходящие в ЦАП, т.е. для самого интерфейса синхронизация прозрачна и ее необходимо самому востанавливать/формировать. А что у Вас за задача такая с нестандартным (имхо) разрешением? Ведь есть же видео-кодеки того же Тексаса, которые на выходе дают стандартный цифровой видео сигнал типа BT.601 c которым по-проще будет работать.
|
|
|
|
|
Jul 1 2005, 09:40
|
Участник

Группа: Свой
Сообщений: 38
Регистрация: 3-06-05
Пользователь №: 5 699

|
Цитата(bav @ Jul 1 2005, 09:49) А начальная инициализация (режим работы, частота) задается с помощью резисторов привязывающих А19..А22 к 1 или 0? Режимы, имхо, устанавливаются программно, а не с наружи.
|
|
|
|
|
Jul 1 2005, 11:58
|
Знающий
   
Группа: Свой
Сообщений: 693
Регистрация: 21-06-05
Из: Санкт-Петербург
Пользователь №: 6 184

|
[attachment=1656:attachment] Цитата(kilgor @ Jul 1 2005, 13:40) Цитата(bav @ Jul 1 2005, 09:49) А начальная инициализация (режим работы, частота) задается с помощью резисторов привязывающих А19..А22 к 1 или 0? Режимы, имхо, устанавливаются программно, а не с наружи. в документации написано: Device Configuration at Device Reset...... стр. 50 иначе возникает вопрос: как DSP определит, накакой частоте работает SDRAM или что делать после RESET?
|
|
|
|
|
Jul 4 2005, 05:31
|
Участник

Группа: Свой
Сообщений: 38
Регистрация: 3-06-05
Пользователь №: 5 699

|
Цитата(bav @ Jul 1 2005, 14:58) [attachment=1656:attachment] Цитата(kilgor @ Jul 1 2005, 13:40) Цитата(bav @ Jul 1 2005, 09:49) А начальная инициализация (режим работы, частота) задается с помощью резисторов привязывающих А19..А22 к 1 или 0? Режимы, имхо, устанавливаются программно, а не с наружи. в документации написано: Device Configuration at Device Reset...... стр. 50 иначе возникает вопрос: как DSP определит, накакой частоте работает SDRAM или что делать после RESET? После резета, по любому, исполняется пакет, размещенный по адресу 0, а вот "тонкая настройка" интерфейса памяти требует использования регистров программно, или через HPI. Слово конфигурации при выходе из сброса определяет только источник тактирования для тактирования (внешний/внутренний). На самом деле, мне показалось что Ваш вопрос касался только видео-порта
|
|
|
|
|
Jul 4 2005, 05:57
|
Знающий
   
Группа: Свой
Сообщений: 693
Регистрация: 21-06-05
Из: Санкт-Петербург
Пользователь №: 6 184

|
Цитата(kilgor @ Jul 4 2005, 09:31) После резета, по любому, исполняется пакет, размещенный по адресу 0, а вот "тонкая настройка" интерфейса памяти требует использования регистров программно, или через HPI. Слово конфигурации при выходе из сброса определяет только источник тактирования для тактирования (внешний/внутренний). На самом деле, мне показалось что Ваш вопрос касался только видео-порта Да, вопрос касался только видеопорта. Просто проверял схему, просматривал прогу для хост-контроллера, появилась неувязочка. Спасибо за помощь! Далее буду ждать, когда изготовят первый образец. Надеюсь монтажники ничего не напутают (  ) Процедуры для обработки дисторсии уже написаны, проверены в симуляторе. Работают. (Пришлось все делать табличным методом. Памяти на хранение данных о координатах ушло 66 МБайт, плюс 66 для входного и выходного видекадров.) На одном DSP получается 15 кадров в секунду! Потребуется всего лишь 3 процессорных модуля.
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|