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

serwz

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

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

  • Посещение

Весь контент serwz


  1. Sam7x256 и EMAC data abort ....

    Ну тогда совсем не понятно, откуда берется признак EMAC abort, что причина? драйвер только читает память контроллера и анализирует уже пришедшие пакеты, при чет тут EMAC data abort? Ладно. Спасибо за ответы, еще раз проверю драйвер.
  2. Sam7x256 и EMAC data abort ....

    Спасибо за совет, но я пока не понимаю как я могу разрулить ситуацию с этим Я DMA не управляю и шиной тоже и если возникает ошибка • OVR: Receive Overrun The DMA block was unable to store the receive frame to memory, either because the bus was not granted in time or because a not OK hresp(bus error) was returned. The buffer is recovered if this happens. то каким местом она может быть прицеплена к драйверу я затрудняюсь ответить. У нас тут сетка большая и ходят разные пакеты, в том числе и битые - может проблема в этом (не уверен). По поводу обработчика исключений, читал разные мануалы и т.д. все пишут обрабатывается как стандартное прерывание. Но могу ошибаться, с ядром АРМа знаком не досконально. Если приведете пример обработчика - большое спасибо.
  3. Sam7x256 и EMAC data abort ....

    Может вопрос в обработчике, примеров обработки этого исключения не нашел, ниже привожу текст может в чем ошибка? Data_Abort_Handler_Entry: ;------------------------- ;- Manage Exception Entry ;------------------------- ;- Adjust and save LR_irq in IRQ stack sub lr, lr, #8 stmfd sp!, {lr} ;- Save r0 and SPSR (need to be saved for nested interrupt) mrs r14, SPSR stmfd sp!, {r0,r14} ;- Enable Interrupt and Switch in Supervisor Mode msr CPSR_c, #SVC_MODE ;- Save scratch/used registers and LR in User Stack stmfd sp!, { r1-r3, r12, r14} ;---------------------------------------------- ;- Branch to the routine pointed by the AIC_IVR ;---------------------------------------------- b Data_handler ;---------------------------------------------- ;- Manage Exception Exit ;---------------------------------------------- ;- Restore scratch/used registers and LR from User Stack ldmia sp!, { r1-r3, r12, r14} ;- Disable Interrupt and switch back in IRQ mode msr CPSR_c, #I_BIT | IRQ_MODE ;- Mark the End of Interrupt on the AIC ldr r14, =AT91C_BASE_AIC str r14, [r14, #AIC_EOICR] ;- Restore SPSR_irq and r0 from IRQ stack ldmia sp!, {r0,r14} msr SPSR_cxsf, r14 ;- Restore adjusted LR_irq from IRQ stack directly in the PC ldmia sp!, {pc}^ Data_handler определяется в си файле __arm void Data_handler(void) { EMAC_Init(); } Все компилится в режиме генерации ARM кода
  4. Sam7x256 и EMAC data abort ....

    MC_ASR = 0х05010А01 MC_AASR - непонятный адрес, каждый раз меняется Я понимаю что OVR: Receive Overrun все делает железка. По поводу DataAbort Написал простейший хандлер, сразу вернуться из прерывания, но прерывание продолжает висеть и зацикливается на самом себе, то есть вызывается снова. Как сбросить эту ситуацию - не знаю? Как сбросить DataAbort?
  5. Sam7x256 и EMAC data abort ....

    Под прием распределенно 200 блоков по 128 байт, битик в статусе приема BNA: Buffer Not Available не устанавливается, т.е. и драйвер и DMA работает. Иногда устанавливается OVR: Receive Overrun, но как с этим бороться не знаю. Потому и прошу помощи - как эту ошибку обрабатывать? Как сбрасывать этот data abort ?
  6. Sam7x256 и EMAC data abort ....

    Устройство на Sam7x256 в большой сетке периодически уходит в EMAC data abort. Устанавливается бит SVMST_EMAC: Saved EMAC Abort Source, почему это случается и как бороться, может кто сталкивался? Как обрабатывать эту ситуацию ? Если работать с устройством p2p, то работает днями без проблем.
  7. Вот бы еше замерить и сравнить скорость выполнения из L2 с функцией DSPlib DSP_mat_trans(....).
  8. В посте много обсуждалось разных причин использования DSP процессороввместо GPU, но надо добавить одну тоже немаловажную (в порядке самокритики) - лень разработчика :) . Освоив один камень и выловив его глюки, очень тяжело заставить себя перескочить на другое CPU. Программировал на 64х, а следующий проект на 8051, это как пересадка с формулы-1 на самокат, подсознательно ищешь причину взять побыстрее DSP и все за 2 дня закончить .
  9. Можно купить и DSK, но если собираетесь продавать устройства с программным кодом, то там в лицензионном соглашении написано, что с платкой делайте что хотите, а для написания коммерческих приложений нельзя использовать программные средства DSK.
  10. Сталкивался с подобными проблемами при работе EDMA каналов, обычно решается распределением приоритетов. У меня работало одновременно 12 каналов EDMA. В зависимости от задачи, надо аккуратно распределить,urgent, hight, medium, low. Пользовался CSL функцией EDMA_setPriQLength(). Рекомендую посмотреть литературу spru234.pdf, spraa02.pdf, там все написано.
  11. Попробуйте скачать фирменный драйвер для DSK5510 с http://emulators.spectrumdigital.com/c5000/ Там прямо указано: Release Notes for Spectrum Digital CCS 3.1 Platinum Emulation Drivers ... ... ... DSKs Supported: DSK5416, DSK5510, DSK6713, DSK6416
  12. Однозначно приобретайте Starter Kit. Готовое железо со встроеным JTAG отладчиком - очень помогает вначале не заморачиваться с отладкой аппаратуры. Если переходите с Matlaba и нужна быстрая проверка алгоритмов, то лучше взять kit с плавающе точкой (TI 6727,6713). На каждом ките есть разьемы расширений, подключаете свое устройство и можно даже делать мелкую серию ~ 10 шт/год :-)). Смотреть киты www.spectrumdigital.com. Если смотреть совсем круто, то для проверки алгоритмов взять EVMTCI6482, на них siemens делает базовые станции GSM, 3G и т.д.
  13. Более полную документацию лучше посмотреть на сайте производителя по ссылке http://c6000.spectrumdigital.com/dsk6455/v2/
  14. На тексасе Booting and Flashing via the DaVinci TMS320DM644x Serial Interface http://www.ti.com/litv/pdf/spraai4 Basic Application Loading Over Serial Interface for the DaVinci DM644x spraai0.pdf
  15. >>Если не затруднит, в чем там ошибки(сам собирал, работает, потому и спрашиваю=)). Никакой >>ценности исходные коды, без кодов для CPLD не представляют. Пару раз писал вам в почту >>касательно возможности сделать прошивку под другие кристаллы из MAX3000A(в других корпусах), >>никто не ответил. >>Да и с самой схемой: >>Схема РРМ510 приведена со всеми >>доработками. Микросхемы применялись те, >>которые можно быстро купить. Основное >.отличие - вместо микросхемы XCR3128VQ100 >>использовал EPM3128ATC100-10 (почти >>pin2pin) >>-несколько настораживает. >>Кстати девайс с XDS510.narod.ru Сделан так же на основе того, что было выложено на EDABOARD. И >>в списке изменений нет ничего о редактировании кода CPLD. Если внимательно почитать документацию на микросхемы XCR3128VQ100 и EPM3128ATC100-10, то они различаются только несколькими добавочными пинами i/o в XCR3128VQ100, в микросхеме EPM3128ATC100 эти пины GND. Поэтому если в схему запаять XCR3128VQ100 и прошить нужной прошивкой, то все будет работать :-) Так сложилось, что быстро не смог купить XCR3128VQ100, поэтому использовал EPM3128ATC100 и потому и написал, что почти pin2pin. Схему разрабатывал три года назад, посмотрев прошивку CPLD и чего то там не нашел, честно сейчас не помню :-))) Взял и переписал все заново на верилоге по документации на PPC, всунув туда только необходимое. По поводу писем - все может быть, бываю занят. Если что то надо, пишите в заголовок что нибудь осмысленное по этому поводу (спам задолбал).
  16. >>Нет, речь идет о том эмуляторе, в результате переделки которого получился PPM510, а именно >>XDS510PP(CPLD версия), доки на который изначально были выложены на электроде(да и сейчас они >>там тоже есть edaboard.com). Когда я первый раз собрал указанный эмуль, проекта PPM510 еще не >>было. Позднее, когда он появился меня от него оттолкнула кривая документация и отсутствие >>исходных кодов. По сути в PPM510 функции GAL16V8 и XC95108 засунуты в одну недорогую CPLD, что >>разумно. Хотелось бы уточнить по поводу XDS510PP(CPLD версия). Тот который лежит на электроде с ошибками, и собирать указанный эмулятор на старых микросхемах было бы глупо. PPM510 получился не ходе переделки, а писался весь заново. Все исходные коды, кроме CPLD выложены на сайте, кому интересно там все написано.
  17. >>какова приблизительная себистоимость при самостоятельной сборке (изготовление платы кустарным >>способом в том числе)? когда разрабатывал, то первый образец делал сам утюгом, и даже работало :-)). Если делать самому, то цена равна цене комплектующих + ByteBlasterMV Parallel Port Download Cable (тоже самодельный). >>что такое SPP8 режим? Режим работы LPT SPP8 - медленная скорость передачи данных. Пробовал сделать прошивку ppm510 с режимом EPP, работало, но не хватило времени на устранение глюков.
  18. Рекомендую скачать CCS v3.2 beta, лежит свободно на ftp.ti.com. Если использовать новые процессоры типа DM6443/6, то там есть для них софт и симулятор.
  19. Должно совпадать с Interfacing the PCI2040 to the TMS320VC5420 DSP http://www.ti.com/litv/pdf/scpa030.pdf
  20. Поняли правильно, но ROM используется не только для загрузки процессора. Например, чтобы использовать какие либо DSPLIB функции (БПФ, FIR ...), можно тело функции не помещать в свою программу, а использовать функцию зашитую в ROM. Про все эти возможности хорошо написано в sprs277*.pdf
  21. Enhanced Memory System Options – 256K-Byte Unified Program/Data RAM – 384K-Byte Unified Program/Data ROM Program/Data RAM - это обычная память процессора, к которой подведены щины данных и шина программ, т.е. возможно выполнение кода и манипуляция данными из этой памяти одновременно. Естественно код и данные должны находится по разным адресам. Program/Data ROM - это фабрично запрограмированная ROM, там залита куча кода и данных On-Chip Bootloader Full-Feature Version of DSP/BIOS™ Operating System Optimized Math Library (FastRTS) Library of Commonly Used DSP Functions (DSPLIB) Если есть желание и деньги, то Texas сформирует эту память под твои запросы.
  22. По поводу портирования uIP Stack и 5509 - интересная статья Dr.Dobd's Embedded System 2005/5 "Inside the uIP Stack" Если есть финансирование, то вместо NDK лучше приобрести TMS320C6000 DSP TCP/IP Stack Software (Rev. B) http://focus.ti.com/lit/ml/sprt356b/sprt356b.pdf
×
×
  • Создать...