Перейти к содержанию
    

reddot

Участник
  • Постов

    18
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о reddot

  • Звание
    Участник
    Участник
  • День рождения 17.06.1984

Контакты

  • Сайт
    Array

Информация

  • Город
    Array
  1. в стандартный си стандарта 99 года входят inline-функции. и набор компиляторов gnu с ними прекрасно справляется.
  2. Начиная с 9.1 можно поменять цветовую схему на использующую черный фон. Preferences->ISE Text Editor->Use black color scheme Эта настройка равноправно распространяется на текстовые редакторы EDK, только в EDK существует ужасная проблема с тем, что цвет текста во многих файлах также остается черным (по крайней мере подсветка C страдает этим фактом), из-за пришлось отказаться. В answer browser правда ничего по этой проблеме не написано.
  3. на прикрепленном изображении то что следует называть сигнал браузером помечено красным крестиком. как только прошивку с chipscope корками прошьешь там появиться список сигналов
  4. стоит использовать $readmemb в этом случае
  5. Ну еще такой вопрос, вы собираетесь по эзернет передавать свои raw-пакеты и какого рода данные? Потому что например для передачи четырехбайтового необходимо все байты поменять местами, для двух подряд идущих 2хбайтовых целых - необходимо только свопнуть соседние байты, если передается просто "data" =) ну например текстовые данные в этом случае перестановка байт и вовсе не нужна. т.е. в случае смешанного характера передаваемых данных реализация перестановки байт в железе не будет подходящим вариантом
  6. вообще стандартным для всех сетевых протоколов (по крайней мере в стеке tcp/ip и канальном ethernet) принята передача данных с так называемым сетевым порядком байт (по сути big-endian) подробнее на википедии так что логичнее все-таки на уровне софта менять порядок байт в заголовках. в posix есть вызовы htons/ntohs, htonl/ntohl для таких вещей.
  7. У ксайлинкса вечно появляются answer record'ы связанные с предстоящими версиями. надо полагать что в рамках внутреннего процесса разработки и тестирования используется таже система баг-тракинга. а этот документ еще кучу раз будет изменен. Новшеств для почти major-апгрейда версии совсем скудно в этом документе на текущий момент.
  8. вторая ссылка в гугле по запросу "CRC8 алгоритм" http://www.microchip.ru/phorum/read.php?f=...61506&t=846
  9. рекомендую слакваре для виртуальной машины. очень хорошо обрубается на этапе установки для необходимо функционала. шустренько бегает.
  10. axalay, указал бы пишешь ли ты программулину под какую-то установленную ОС или напрямую так сказать в standalone. // BASEADDR контроллера блочной памяти в которой находится информация // будем считать, что ваша структура данных записывается с нулевым смещенеим unsigned int BRAM_BASEADDR // если используется ОС, то первоначально необходимо отобразить блочную память в память процесса // в разных системах эти механизмы отличаются // но будем считать, что после отображения вы получили указатель на брам-память в вашем процессе void *bram_mapped_baseaddr; // объявляем требуемую структуру данных // про юнионы и битфилды лучше отдельно почитать и разобраться как они работают struct data { int a; int b; }; // указываем расположение структуры в блочной памяти struct data *datainbram = (struct data*)bram_mapped_baseaddr; // телемаркет int c = datainbram->a; datainbram->b = c; // опять же если используем ОС ресурсы задействованные в отображение необходимо освободить
  11. По идее в любом случае есть обработчик ошибок на уровне Application. Он выводит мессадж об ошибке и завершает приложение. Если каким-то образом и этот стандартный обработчик убрать (не знаю насколько это возможно, давно с дельфями не работал), думаю, что программа продолжит выполняться, но возможно окажется в зависшем состоянии. Эксепшены в дельфи - исключительно программная абстракция к ОС никакого отношения не имеющая.
  12. первая проблема решается вышедшим первым сервис паком для EDK 9.1i
  13. Ситуация следующая. Создаю шаблонную корку с подключением к шине PLB и использованием FIFO-буферов (datawidth = 32). В standalone режиме собираю приложение, которое запускает сгенерированный мастером SelfTest. Все проходит отлично. Портирую тот же код в Линуха (пробовал как в юзер-моде, так и в кернел-моде). При выполнении того же SelfTest запись в буфер и чтение из него происходят корректно, так же никаких проблем не вызывает операция ResetFIFO. Но при попытке узнать vacancy/occupancy буферов Линукс мне пишет Bus Error. Если генерить корку под OPB, то никаких проблем нигде не возникает. Версия ISE/EDK - 8.2 Плата на базе Virtex II Pro. Возможно кто-то уже сталкивался с проблемой и нашел ее корни?
  14. Что-то я немного запутался. В общем разобрался с тем как собрать ядро с поддержкой этого самого XGPIO. Только вот теперь в смятении как теперь написать приложения для работы с ним. Ну, например, LED'ами поморгать или еще чего. Я так понимаю что нужно mknod'ом создавать файлы устройств? В общем буду весьма признателен всем, кто поделиться идеями и кусочками кода.
  15. можно еще использовать такой вариант: ld -r module1.o module2.o <...> -o module.o
×
×
  • Создать...