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

Alex77

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

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

  • Посещение

  • Победитель дней

    1

Сообщения, опубликованные Alex77


  1. Как мне на основе этих данных сконфигурить контроллер для блочной передачи и написать простенький цикл блочной записи/чтения?

     

    Помогите пожалуйста ламеру, я в программировании чайник чугунный, а задачку надо разрубить :(

    Вам надо разобраться что есть такое "блочная запись/чтение".

    От этого у Вас и все проблемы.

    В данном случае блочные пересылки осуществляются полностью АППАРАТНО и ПРОГРАММНОГО управления этим процессом не существует.

     

  2. Работает, но дорого стоит, хотелось бы серый или собрать самому.

    Xerxes не работает со Spartan-6. Вообще не понятно, что это за программатор и что там внутри.

    LPT порта уже нет нигде :( Черт возьми, самый полезный порт в компьютере был :)

    А его кто нибудь тестировал на работу со Spartan-6 ? На сайте может быть очень старая информация.

  3. правильно! Я и хочу сказать что если отладочная плата с ПЛИС стоит 99 уе тогда сама ПЛИС ну не как не может стоить 700 уе.

    Этим я и подтверждаю ошибочность цены на ПЛИС!

    Или что-то не так?

    Сорри теперь у меня слепота. Я прочитал ваши "б 99" как "699"

     

    Однако

    http://www.efind.ru/icsearch/?search=A2F200M3F

    Выдаёт

    ценики по россии 1700 - 2400 руб

    или я опять слеп ? :rolleyes:

  4. Спасибо всем, с этим вопросом разобрался)

    Возник ещё один вопросик. Вот шина Data понятно для чего нужна, по ней передаются данные, к примеру от компонента UART. А вот шина Instruction для чего? Для каких компонентов она используется?

    "Это Вам к Доктору" (с)

    Посмотрите теорию о типах архитектур процессоров (фон-Нейман и гарвардская )

  5. Можно, не делая свой контроллер SDRAM.

     

    Посмотрите на дату оригинального вопроса.

    тов YVA (терзают меня смутные подозрения) просто набирает "очки".

    А по теме: Это была ошибка в EDK 10. В 11 версии кажется была решена. А нынче есть и 12.

  6. Есть отладочная плата Xilinx ML505. Мне необходимо задействовать СОМ порт и LCD дисплей. В руководстве пользователя скачанного с официального сайта Xilinx.com конфигурации пинов на эти элементы я не нашел. Как определить к каким ножкам ПЛИС подключены эти элементы?

    Здесь есть

    http://www.xilinx.com/support/documentatio..._schematics.pdf

  7. Добрый день!

    Кто-нибудь пробовал моделировать работу процессорной системы в EDK12.2?

    Столкнулся с проблемой: BRAM не инициализируется.

    начиная с 12 версии процесс инициализации BRAM изменился.Теперь используются mem-файлы. Они заполняются данными, но вот при моделировании(Modelsim или Isim) оказывается, что в BRAM что-то не то.

    А fpga которые ?

  8.  

    AD9985_program: $(AD9985_OUTPUT)

     

    $(AD9985_OUTPUT) :

    @echo "Sw App AD9985: No C-sources specified, but marked for BRAM initialization. Make sure elf file is compiled outside XPS"

     

    Если действовать на ощупь - то между текстом $(AD9985_OUTPUT) и : есть пробел (али ещё что-либо) - убрать авось заработает. Иначе надо копать "глубже".

    PS; EDK обязательно должно быть версией 12.1 ? или может лучше взять что нибудь более стабильное и менее глючное типа 10 или 11 ? Тем паче что есть 12.2.

  9. Я понимаю, что через make все делается.. Только я не владею достаточными знаниями, чтобы разобраться с этим. Пути в проекте все прописаны корректно, никаких русских букв, никаких пробелов и подозрительных символов, сам файл программы копировал в ту же папку, где все остальное лежит. Это не помогло.

     

    По ссылкам в обоих случаях упоминается знак ":", но мне это ни о чем не говорит.

    Содержимое Microblaze.make в студию.

    По той информации что Вы дали можно предположить кривизну в создании make-файла и поэтому make.exe ругается.

  10. Программа написана в Xilinx SDK, откомпилирована.

    Если загружаю FPGA из SDK, выбрав Program FPGA, то прошивается нормально, программа запускается, отрабатывает все что нужно.

     

    Далее нужно запрограммировать PROM. Для этого захожу в XPS, добавляю свой скомпилированный проект в формате elf и ставлю на нем галку Mark to Initialize BRAMs. Выбираю в меню Update bitstream.

    После чего XPS пишет ошибку:

    Microblaze.make:75: *** multiple target patterns. Stop.

    Done!

     

    На этом все останавливается.

    Даже если снять галку Mark to Initialize BRAMs с этого проекта, то все равно ругается, пока не удалишь его полностью.

    Каков размер elf-файла и BRAMs в проекте ?

  11. Не могу подключить Instruction Cache (Data Cache) для процессора microblaze

    В EDK при симуляции выдает ошибку :

     

    Running DRC Tcl procedures for OPTION IPLEVEL_DRC_PROC...
    ERROR:MDT - issued from TCL procedure "check_icache_fsl" line 152
        microblaze_0 (microblaze) - The ICACHE XCL bus interface is unconnected. The
       MicroBlaze processor (version v5.00.a and higher) requires that the XCL bus
       interface is connected when the ICACHE is enabled. 
    ERROR:MDT - Errors occured while creating Hardware System
    make: *** [microblaze_0/lib/libxil.a] Error 2
    Done!

     

    Как я понял, необходимо подключить XCL шину. Но как это сделать не могу разобраться.

    смотрел datasheet и ниче не понял.

    Может кто-нибудь по-русски объяснит :)

    Воспользуйся wizardom для создания проекта в edk. Потом делай по аналогии и в своём проекте.

  12. Спасибо.. помогло :)

    Но все равно странно, почему в 10.1 с PowerPC мне этого не требовалось, а в 12.1 c Microblaze потребовалось..

    Я почему-то считал, что с точки зрения программиста они одинаковы.. ну, или это особенности новой среды 12.1

    Всё законно. volatile это из стандарта на язык "с" именно для таких случаев. А вот компиляторы только следуют данному стандарту. И соответственно это просто криво написанная программа. А не особенности кого либо.

  13. Информация с оффсайта

     

    Качаем, делимся впечатлениями.

    На русский вариант winxp не устанавливается (не понимает русский язык в путях "\Главное меню\Программы\" ). В результате отсутствуют *.lnk

  14. С чего вы это взяли? Там ничего подобного не сказано. Я уже приводил ссылку с примером вызова функции printf выводящей флоат.

    Дык наверно у него просто программа не помещается в BRAM ( с использованием printf() ). А xil_printf() в принципе не имеет формата %f. Товарищ в очередной раз пытается использовать "телефон для забивания гвоздей" :crying:

  15. вопрос: какие библиотеку нужно подключить кроме (#include math.h) чтобы процессор выполнял действия с дробными числами и как вывести их через xil_printf. Пытался так

     

    float count;

     

    count = 5/3;

     

    xil_printf(" mat= %f \n\r",count);

     

    не получается. :help:

     

    PS блок FPU я не подключал

     

    Согласно документации (в файле oslib_rm.pdf )

     

    "void xil_printf (const *char ctrl1,...)

    xil_printf is a light-weight implementation of printf. It is much smaller in size (only 1 kB).

    It does not have support for floating point numbers. xil_printf also does not support

    printing of long (such as 64-bit) numbers."

     

    Вывод:

    1) чтение документации полезно всегда

    2) printf() должен помочь

    :)

  16. Просто такие "программы" пишутся за 10 мин. используются 5 мин. а потом вчистую удаляют... Так что ... :rolleyes:

    Паузу к примеру можно делать по простому так: считать текущее значение таймера и потом считывать в цикле со сравнением с вычисленным значением (тек знач + дельта) . Вариантов много...

  17. Все примеры как работать с прерываниями, таймерами и всем остальным есть в EDK.

     

    Или Вы хотите чтобы _сюда_ были скопированы все эти примеры которые есть у Вас ?

     

    * @file xintc_example.c

    *

    * This file contains a design example using the Interrupt Controller driver

    * (XIntc) and hardware device. Please reference other device driver examples to

    * see more examples of how the intc and interrupts can be used by a software

    * application.

    *

    * This example shows the use of the Interrupt Controller both with a PowerPC405

    * and MicroBlaze processor.

    *

    :(

  18. Для проекта выбрана плис xc3s250e. если на ней MicroBlaze ядро поднимать- то больно объемно по ресурсам. Да и по скорости его SPI медленоват. Мне 6МГц надо, а у MicroBlaze GPIO только 2МГц добивался.

    А почему только 2 МГц? В корке XPS_SPI max clock = 1/2 от PLB clock в мастер режиме. те при 50 МГц на PLB можно получить SPI max clock = 25 МГц. см док xps_spi.pdf

  19. С этим разобрался, спасибо. А вот как быть с сервис паком для SDK, вы его ставили или он входит в сервис пак EDK? Вроде как выдает, что SDK 11.2, но есть сомнения в этом вопросе

    В About SDK у меня пишет

    Release version 11.2

    Application version Build EDK_LS2.6+0

     

    Отдельно сервис пак для SDK я не помню а вот в сервис пак для EDK он точно входит.

  20. Теперь после сервис пака другая ошибка

    Checking port drivers...

    ERROR:EDK:1536 - INSTANCE:mpmc_0 PORT:MPMC_Clk90 -

    E:\PROJECTS\HW\DBS_ISE11\dbs\system\system.mhs line 126 - invalid port in use

    when ISVALID="(![xstrncmp C_FAMILY spartan6 ] && ![xstrncmp C_FAMILY virtex6 ] && ([xstrncmp C_MEM_TYPE DDR ] || [xstrncmp C_MEM_TYPE DDR2 ] ||C_DEBUG_REG_ENABLE == 1))" evaluates to FALSE. Please remove the port from

    your design!

    ERROR:EDK:440 - platgen failed with errors!

    make: *** [implementation/ppc405_0_wrapper.ngc] Error 2

    ERROR:EDK - Error while running "make -f system.make netlist".

    Return code = 2

    No changes to be saved in MSS file

    No changes to be saved in XMP file

    ERROR: synthesizing XPS module failed!

     

    При использовании SDR SDRAM MPMC_Clk90 не используется и в предыдущей версии EDK можно было на этот порт назначить, например, gnd. Теперь же этого порта нет в списке, нов MHS он автоматически появляется.

    А вот это и есть "Есть мелкие проблемы." Ручками надо лишнее удалять. и не трогать gui clock_generator. Если покупали - то пишите в поддержку. Польза будет для всех.

  21. И как это использовать?

     

    begin edk11.bat

    **************************

    set XILINX=бла бла бла 11

    set XILINX_EDK=бла бла бла 11

    set PATH=C:\Xilinx\11.1\common\bin\nt;бла бла бла;%PATH%

    start C:\Xilinx\11.1\EDK\bin\nt\xps.exe

    **************************

    end edk11.bat

     

     

    begin edk10.bat

    **************************

    set XILINX=бла бла бла 10

    set XILINX_EDK=бла бла бла 10

    set PATH=C:\Xilinx\10.1\common\bin\nt;бла бла бла;%PATH%

    start C:\Xilinx\10.1\EDK\bin\nt\xps.exe

    **************************

    end edk10.bat

×
×
  • Создать...