|
хочу познакомиться с привлекательным процессором |
|
|
|
Jan 14 2011, 11:36
|
Группа: Участник
Сообщений: 12
Регистрация: 27-10-10
Пользователь №: 60 478

|
Здравствуйте! О себе - плата ml505 с плисом Virtex-5. Отладочная плата начинена всем, чем надо и чем не очень. Вот знакомлюсь с процессорами Picoblaze, MicroBlaze, PowerPC. Особенно выделил Microblaze т.к. в ISE легко создавать (ламерский параметр, но увы) Из документаций http://www.xilinx.com/support/documentatio..._microblaze.htm не понял одного факта: так "схватывает" он периферию на плате или нет? Т.е. там есть возможность присоеденить память. Нужно ли для этого указывать, что "память так находится на выводах таких-то"? Попробую еще конкретней спросить: XPS работает с СОБСТВЕННО ПЛИСОМ или ПЛИСОМ, КАК СОСТАВЛЯЮЩЕГО ОТЛАДОЧНОЙ ПЛАТЫ? Буду благодарен за помощь и снисходительность к моему ламерству!
|
|
|
|
|
Jan 14 2011, 12:52
|
Местный
  
Группа: Свой
Сообщений: 474
Регистрация: 20-01-09
Из: НН
Пользователь №: 43 639

|
EDK работает с микросхемой ПЛИС. И как удобная опция, можно выбрать свою фирменную отладочную плату, к которой подцепится вся периферия. Но если у Вас плата собственной разработки, однозначно можно сконфигурировать EDK для работы со своей оригинальной платой, и такой же оригинальной памятью, DDR, DDR2. Настройки внутри EDK, выбираете ipcore и конфигурируете. Я не спец, но "рядом стоял", видел как это делается. И на Youtube полно видео на эту тему, порядка 15 видеороликов как конфигурировать в EDK процессор.
--------------------
пользователь отключен
|
|
|
|
|
Jan 14 2011, 12:59
|
Группа: Участник
Сообщений: 12
Регистрация: 27-10-10
Пользователь №: 60 478

|
Цитата(tAmega @ Jan 14 2011, 19:52)  EDK работает с микросхемой ПЛИС. И как удобная опция, можно выбрать свою фирменную отладочную плату, к которой подцепится вся периферия. Но если у Вас плата собственной разработки, однозначно можно сконфигурировать EDK для работы со своей оригинальной платой, и такой же оригинальной памятью, DDR, DDR2. Настройки внутри EDK, выбираете ipcore и конфигурируете. Я не спец, но "рядом стоял", видел как это делается. И на Youtube полно видео на эту тему, порядка 15 видеороликов как конфигурировать в EDK процессор. Плата фирменная, была бы своя - проблем было бы меньше (кажеться) - поставил аппаратный модуль взаимодействия и дело с концом. А вот, опять же ламерские порывы, могли бы ли Вы сослаться на какие-то из этих роликов? Мастер-класс по этому делу мне явно не помешает.
|
|
|
|
|
Jan 14 2011, 16:28
|

Начинающий профессионал
    
Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648

|
Я запускал в такой последовательности для версии 12.2(3) (Полезно и для себя записать наконец-то  ) 1. Запуск ISE 2. Выбор соответствующего типа FPGA. 3. Выбор либо своего дизайна, либо платы (если поддерживается используемой версией ISE) 4. Далее использовал визард (BSB). В нем более-менее все понятно, включая выбор необходимой периферии. Будет запущен XPS. 5. В XPS проверить и при необходимости корректируются данные на вкладках Bus Interfaces и Ports. 6. На в вкладке Addesses делал Generate Addesses. 7. XPS: Project->Export Hardware Design to SDK выбор Export only 8. ISE: Project->Add Source выбор ../xxxx/data/xxxx.ucf xxxx - ваше название процессора в визарде. Этот файл для платы есть и редактировать не надо, для своей надо сделать в соответствие с железом. 9. ISE:Выделить в окне Hierarchy xxxx.xmp 10. ISE: В окне Processos Generate Programming File. Ждем сообщения о генерации. Если ошибки, у меня были из-за самодельного xxxx.ucf, то их надо исправить и добиться появления файлов. 11. Запуск SDK. Я устанавливал workplace в директорию проекта. 12. SDK: File->New->Xilinx Hardware Platform Specification В открывшемся окне ввести в Target Hardware Specification ../SDK/SDK_Export/hw/xxxx.xml Далее ввести пути к Bitstream: .../xxxx.bit (Находиться в корне директории проекта, получен на этапе 8) BMM File: .../edkBmmFile_bd.bmm (Находиться в корне директории проекта, получен на этапе 8) 13. SDK: File->New->Board Support Package Выбирал standalone и все по умолчанию. В новом окне Support Package Settings <Ok>, то есть ничего не менял. 14. SDK: File->New->Xilinx C Project выбрал hello_world (по умолчанию), далее Next и Выбрать Target an existing Board Support Package. 15. Автоматически генерируется проект hello_world_0 16. SDK: Xilinx Tools-> Program FPGA В окне необходимо задать те же bit и bmm файлы, что и ранее (top level of project). Если все подключено (кабель JTAG), то загружаем. У меня не с первого раза загрузилось без ошибок. 17. Из SDK запускаем программу на выполнение (Run или Debug). При подключенном кабеле к RS-232 и запущенном терминале (9600 8 N) получим сообщение о мире. Это проделывалось для одного ядра microblaze Приветствуется конструктивная критика алгоритма, упрощение и т.д.
--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
|
|
|
|
|
Jan 14 2011, 17:19
|
Участник

Группа: Участник
Сообщений: 15
Регистрация: 2-01-09
Пользователь №: 42 888

|
При создании проекта в EDK, при помощи "Base System Builder", на этапе "Board Selection" можно указать используемую отладочную плату. Для неё будет создан проект со всей переферией и соответствующим ucf файлом.
|
|
|
|
|
Jan 14 2011, 20:41
|
Местный
  
Группа: Свой
Сообщений: 474
Регистрация: 20-01-09
Из: НН
Пользователь №: 43 639

|
Цитата(koshaNIA @ Jan 14 2011, 18:59)  Плата фирменная, была бы своя - проблем было бы меньше (кажеться) - поставил аппаратный модуль взаимодействия и дело с концом. А вот, опять же ламерские порывы, могли бы ли Вы сослаться на какие-то из этих роликов? Мастер-класс по этому делу мне явно не помешает. Наберите в гугле "EDK Microblaze video". Там все просто, заходите на первое попавшееся видео по теме EDK, а справа и внизу ссылки на похожие видео, вот так и вытягиваете всех тараканов по EDK. Можно начать отсюда http://www.youtube.com/watch?v=MC1amstP_8A
--------------------
пользователь отключен
|
|
|
|
|
Jan 17 2011, 12:44
|
Гуру
     
Группа: Свой
Сообщений: 2 198
Регистрация: 23-12-04
Пользователь №: 1 640

|
Цитата(koshaNIA @ Jan 14 2011, 14:36)  Здравствуйте! О себе - плата ml505 с плисом Virtex-5. Отладочная плата начинена всем, чем надо и чем не очень. Вот знакомлюсь с процессорами Picoblaze, MicroBlaze, PowerPC. Особенно выделил Microblaze т.к. в ISE легко создавать (ламерский параметр, но увы) .................. для этого указывать, что "память так находится на выводах таких-то"? Попробую еще конкретней спросить: XPS работает с СОБСТВЕННО ПЛИСОМ или ПЛИСОМ, КАК СОСТАВЛЯЮЩЕГО ОТЛАДОЧНОЙ ПЛАТЫ? ну с PowerPC познакомится не удастся - для этого надо быть минимум ml507 возьмите пример с MicroBlaze в комплекте для данной плате и разбирайте: Picoblaze скорее всего это не то что ожидается от процессора ПЛИС стоящий на конкретной плате требует дополнительного описания - какая-ножка ПЛИС к чему на этой плате подключена и т.п. (для готовой платы ml505 такое описание сделано ксайлинксом (и плата сконструирована правильно) и взять его можно из примеров для этой конкретной платы). даже больше, если память мне не изменяет, то "визард" EDK "знает" про эту плату и может облегчить процедуру даже для собственного проекта. если же плата самодельная - то возникает вопрос правильного подключения ножек и создания дополнительных описаний для средств проектирования ПЛИС
|
|
|
|
|
Jan 18 2011, 20:46
|
Группа: Участник
Сообщений: 12
Регистрация: 27-10-10
Пользователь №: 60 478

|
Цитата(mdmitry @ Jan 14 2011, 19:28)  Я запускал в такой последовательности для версии 12.2(3) (Полезно и для себя записать наконец-то  ) ... 3. Выбор либо своего дизайна, либо платы (если поддерживается используемой версией ISE) А плату где выбирали? У меня в свойствах проекта был выбор устройства, а платы не нашел. Или может не в свойствах проекта это искать? Цитата(mdmitry @ Jan 14 2011, 19:28)  ... 4. Далее использовал визард (BSB). В нем более-менее все понятно, включая выбор необходимой периферии. Будет запущен XPS. ... А можно сразу выбрать "новый сорс" -> процессор, вместо отдельно создавать и добавлять (вопрос может и глупый, но иногда без бубна никак  )
|
|
|
|
|
Jan 18 2011, 21:19
|

Начинающий профессионал
    
Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648

|
Цитата(koshaNIA @ Jan 18 2011, 23:46)  А плату где выбирали? У меня в свойствах проекта был выбор устройства, а платы не нашел. Или может не в свойствах проекта это искать? А можно сразу выбрать "новый сорс" -> процессор, вместо отдельно создавать и добавлять (вопрос может и глупый, но иногда без бубна никак  ) там выбор либо платы, известной для среды из списка либо новый десайн. У меня была плата старая и в версии 12.x ее не было в списке. Если будет актуально, то могу пошагово описать свои действия и с BSB.
--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
|
|
|
|
|
Jan 18 2011, 21:34
|
Группа: Участник
Сообщений: 12
Регистрация: 27-10-10
Пользователь №: 60 478

|
Цитата(mdmitry @ Jan 19 2011, 00:19)  там выбор либо платы, известной для среды из списка либо новый десайн. У меня была плата старая и в версии 12.x ее не было в списке. Если будет актуально, то могу пошагово описать свои действия и с BSB. Все равно не понял  В свойствах проекта есть пункты "Top-Level Source Type" / "Product Category" / "Family" / "Device" / "Package" / "Speed" / "Synthesis Tool" / "Simulator" / "Preferred Language" / "Property Specification" / "Manual Compile Order" / "VHDL Source Standart" / "Enable Message Filtering". Вот в "Family" выбрал Virtex-5, из "Device" - какой-то там код (какой на плисе написан), "Package" - корпус (?) - тоже на плисе написан. Вот и все. А где выбрать плату (ml505 в моем случае) - не знаю (. Версия среды ISE 12.1 А насчет пошаговых действий - оче-е-ень актуально.
|
|
|
|
|
Jan 19 2011, 11:12
|
Участник

Группа: Участник
Сообщений: 24
Регистрация: 17-01-11
Пользователь №: 62 275

|
Цитата(koshaNIA @ Jan 19 2011, 00:34)  Все равно не понял  В свойствах проекта есть пункты "Top-Level Source Type" / "Product Category" / "Family" / "Device" / "Package" / "Speed" / "Synthesis Tool" / "Simulator" / "Preferred Language" / "Property Specification" / "Manual Compile Order" / "VHDL Source Standart" / "Enable Message Filtering". Вот в "Family" выбрал Virtex-5, из "Device" - какой-то там код (какой на плисе написан), "Package" - корпус (?) - тоже на плисе написан. Вот и все. А где выбрать плату (ml505 в моем случае) - не знаю (. Версия среды ISE 12.1 А насчет пошаговых действий - оче-е-ень актуально. Это не в устройствах выбирается, а в base system bilder визарде. Когда откроешь EDK, он по умолчанию предлагает воспользоваться уже готовыми настройками для ряда отладочных плат. Если в списке нету твоей платы, то можно поискать на сайте производителя платы файлики поддержки твоей платы. Так например у меня digilent nexys2, в систем билдере не было ее в списке готовых настроек. Я пошел на сайт digilent, скачал там файлы, поместил в нужную папку (описание файлов и места куда их надо поместить, были в архиве). И - вуаля, халява подана. Если таких файликов ты не найдешь, то нужно создавать проект с нуля, настраивать ручками, смотря в электрическую схему твоей платы. Надеюсь моя писанина хоть чуток поможет.
|
|
|
|
|
Jan 19 2011, 11:20
|

Начинающий профессионал
    
Группа: Свой
Сообщений: 1 215
Регистрация: 25-10-06
Из: СПб
Пользователь №: 21 648

|
Цитата(koshaNIA @ Jan 19 2011, 00:34)  А насчет пошаговых действий - оче-е-ень актуально. 1. В ISE PN -> New Project... Задали путь и имя проекта. 2. Выбор FPGA включая корпус и скорость 3. Далее Ok и получили пустой проект в ISE PN. 4. ISE PN ->Project-> New source. 5. Выбор Embedded Processor и задали имя, Add to project установлено, Next 6. Finish. 7. Запускается XPS 8. Запрос на использование BSB. Используем. 9. Выбор шины. Я использую PLB System. 10. Welcome: BSB выбор new design или existing bsb settings. У меня плата старая и не поддерживается в 12.x Выбираю первое. Next 11. Board: Create system for custom board. Next. 12. System: Single-processor system, Next 13. Processor: настройка частот, типа процессора, объемов памяти. Next 14. Peripheral: добавляем необходимую периферию и тут же настраиваем ее. Next 15. Cache: Next 16. application: Next 17. Symmary: Finish. 18. Генерирование *.ucf. Ok 19. Проект в XPS создан. пункт 4 выполнен. Далее как было описано. Могут быть отличия при выборе разных типов FPGA. многое можно потом перенастроить, только не забывать явно сохранять проект в XPS, и смотреть за обновлением его в ISE. Думаю, что этот путь не самый короткий и удобный, но я его прошел и работает. Надеюсь, кому-то поможет. Может быть совместно какое-нибудь how-to сделаем. До работы из командной строки и создания makefile для сборки всего проекта мне очень далеко.
--------------------
Наука изощряет ум; ученье вострит память. Козьма Прутков
|
|
|
|
|
Jan 19 2011, 19:01
|
Группа: Участник
Сообщений: 12
Регистрация: 27-10-10
Пользователь №: 60 478

|
И все таки платы не нашел, ну может она для заданного плиса однозначно определенна  А за пошаговые действия спасибо, сделал. Теперь нужно еще проверить работу. Кстати, в списке периферии на вкладке USB в контекстном меню выбрал "View API Documentation" и появилось окошко "Software Drivers". Так это драйвера для процессора или хоста, который будет общаться с устройством (интуитивно кажеться, что первое, но мало ли, тем более, что где то же должны существовать драйвера и для хоста  )? Цитата(mdmitry @ Jan 19 2011, 15:20)  До работы из командной строки и создания makefile для сборки всего проекта мне очень далеко.  Ну у меня ISE проинсталлилось только под виндой, там консоль - ИМХО, довольно убогое творение и связываться с ней все равно лишний раз не хочется Нашел новые доки некоторые, чтоб лишних вопросов не задавать, сперва почитаю...
Сообщение отредактировал koshaNIA - Jan 19 2011, 20:05
|
|
|
|
|
Jan 22 2011, 20:08
|
Группа: Участник
Сообщений: 12
Регистрация: 27-10-10
Пользователь №: 60 478

|
Цитата(mdmitry @ Jan 20 2011, 02:15)  Для кита FPGA задана полностью, включая тип, скорость и корпус. Только полное совпадение позволяет задать плату кита, если она есть в списке поддерживаемых для данной версии ISE. Уже пару дней разбираюсь с вот таким доком http://www.xilinx.com/support/documentatio...2_1/edk_ctt.pdf - справочник по EDK. Там есть даже полный пример хелловорлда что очень кстати. Но остались такие проблемы: 1) Моя плата не поддерживается. Скачаю более новую версию среды и там видней будет. 2) При тестировании софтверной части указывается такой порядок: подключите такой-то кабель туда-то и такой-вот сюда-то. А нельзя ли просимулировать процессор с программой на нем без наличия платы? По логике вещей должно же быть возможно. Но не нашел как ( 3) Выдаются варнинги на некоторые пины типа "неизвестно, куда пин подключен посему будет заземлен". Что с таким делать или все нормально?
Сообщение отредактировал koshaNIA - Jan 22 2011, 20:14
|
|
|
|
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|