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

 
 
> Nios II /e vs Nios II /f (проект Ethernet)
billidean
сообщение Mar 11 2014, 03:55
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 247
Регистрация: 4-10-10
Из: г. Екатеринбург
Пользователь №: 59 925



Добрый день всем.
На демоплате BeMicro (Cyclone IV E) делаю проект работы с Ethernet (UDP).
При использовании проца Nios II /f все нормально работает. Но для этого проца нужна лицензия (которой у меня нет crying.gif ).
Попробовал перейти в этом же проекте на Nios II /e, при отправке (из платы) пакетов расчитывается кривая CRC для UDP-заголовка. Для самого тела UDP-пакета можно ставить CRC=0, что я и делаю, а вот для заголовка нужна корректная CRC, иначе прога на ПК вообще не принимает пакет.
Код расчета CRC:
Код
unsigned short checksum(void *b, int len)
{
    unsigned short *buf = b, result;
    unsigned int sum=0;
    for ( sum = 0; len > 1; len -= 2 ) /* Sum all 16b words */
    {
//        printf("*buf = 0x%x\n", *buf);
        sum += *buf++;
    }
    if ( len == 1 )
    /* If any stray bytes, */
    sum += *(unsigned char*)buf;
    /* add to sum */
    sum = (sum >> 16) + (sum & 0xFFFF);
    /* Add the carry */
    sum += (sum >> 16);
    /* (again) */
    result = ~sum;
    /* Take the one's complement */
    return result;
    /* Return 16b value */
}


В чем может быть секрет?? Кэшей никаких не использую, поэтому переход на Экономный проц должен вроде пройти без проблем, кроме замедления работы.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- billidean   Nios II /e vs Nios II /f (проект Ethernet)   Mar 11 2014, 03:55
- - Kuzmi4   2 billidean Листинг смотрели ? В IDE отладчике сра...   Mar 11 2014, 07:13
- - billidean   Отладчиком еще не проходился. Но уже дошел до тако...   Mar 11 2014, 07:19
- - billidean   Дело получилось не таким простым, как показалось м...   Mar 11 2014, 13:52
|- - vadimuzzz   Цитата(billidean @ Mar 11 2014, 20:52) Пр...   Mar 11 2014, 22:59
- - Kuzmi4   считать в плисе ?   Mar 11 2014, 14:30
- - billidean   Цитатасчитать в плисе ? Вы имеете в виду вынести ф...   Mar 12 2014, 01:52
|- - Serhiy_UA   Попробуйте создать тестовые примеры, максимально в...   Mar 12 2014, 03:09
- - billidean   ЦитатаВычисляйте Ниосом только контрольную сумму д...   Mar 12 2014, 03:53
- - Kuzmi4   2 billidean Как это нельзя ставить брейкпойнты? Кт...   Mar 12 2014, 06:07
- - billidean   Вроде я такое же читал, что при Эконом.НИОС будут ...   Mar 12 2014, 06:35
- - Kuzmi4   2 billidean У меня в проектах обычно Nios2-e, патр...   Mar 12 2014, 06:43
- - Копейкин   Если код был "оптимизирован", то там точ...   Mar 12 2014, 06:44
- - billidean   настройки BSP в части оптимизации были по умолчани...   Mar 12 2014, 07:37
- - billidean   Вобщем все вроде заработало. Дело было в указании ...   Mar 12 2014, 11:57
- - Golikov A.   потому что фаст наверняка 32 битный, и при сдвиге ...   Mar 12 2014, 14:59
- - billidean   Я тоже так подумал, но вот искать истину пока неко...   Mar 13 2014, 00:05
- - billidean   Посмотрел доку "Implementation Details" ...   Mar 13 2014, 06:24
- - Kuzmi4   2 billidean вставьте в С-код выравнивание, откомен...   Mar 13 2014, 07:18
- - Golikov A.   а шина везде одна и таже? Потом в дорогом проце с...   Mar 13 2014, 07:21
|- - alexadmin   Цитата(Golikov A. @ Mar 13 2014, 11:21) а...   Mar 13 2014, 07:26
- - billidean   Вот моя структура пакета в .h-файле Кодtypedef str...   Mar 13 2014, 07:29
|- - Serhiy_UA   Цитата(billidean @ Mar 13 2014, 11:29) Во...   Mar 13 2014, 10:14
- - Golikov A.   тогда битность шины не причем, был бы сдвиг в плюс...   Mar 13 2014, 08:22
- - billidean   Если шина 32-хбитная, и мы указываем на 2-ой или 3...   Mar 13 2014, 09:39


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

 


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


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