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

 
 
7 страниц V  « < 4 5 6 7 >  
Reply to this topicStart new topic
> Ядро PCI Express Block Plus в Virtex 5
FLTI
сообщение Aug 9 2011, 10:49
Сообщение #76


Местный
***

Группа: Свой
Сообщений: 399
Регистрация: 8-06-05
Пользователь №: 5 832



Цитата(dsmv @ Aug 9 2011, 13:39) *
Серьёзных исследований не проводили. На первый взгляд - скорость не падает.

Стоило бы проверить.
Где-то на этом форуме видел тему, что кто-то жаловался на падение скорости подобного рода контроллера, как потом выяснилось, из-за большой активности других устройств на PCIe .
Go to the top of the page
 
+Quote Post
demon_rt
сообщение Aug 28 2011, 16:27
Сообщение #77





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



Цитата(dsmv @ Aug 8 2011, 19:42) *
Модуль AMBPEX5 в режиме x8


Вывод данных ( из компьютера в устройство )
1. системная память (непрерывная) 128 МБайт - 1080 Мбайт/с
2. пользовательская память (разрывная) 128 Мбайт - 1080 Мбайт/с


Подскажите пожалуйста в каком режиме осуществляется вывод данных из компьютера в устройство. Я наблюдаю такую картину: В режиме вывода данных из устройства на компьютер все отлично MPS = 128Байт, скорость 1200 Мбайт/с. При записи из компьютера в устройство 128Байт данных, на шине RX PCI Express Block Plus приходят 16 TLP длинной 1DW со сдвигом данных.

Go to the top of the page
 
+Quote Post
dsmv
сообщение Aug 30 2011, 10:34
Сообщение #78


Местный
***

Группа: Свой
Сообщений: 451
Регистрация: 6-09-05
Из: Москва
Пользователь №: 8 284



Цитата(demon_rt @ Aug 28 2011, 19:27) *
При записи из компьютера в устройство 128Байт данных, на шине RX PCI Express Block Plus приходят 16 TLP длинной 1DW со сдвигом данных.


Это какая-то странная ситуация. Пришлите отправляемый запрос, надо на него посмотреть.
Go to the top of the page
 
+Quote Post
demon_rt
сообщение Oct 27 2011, 18:25
Сообщение #79





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



Такой вопрос, кто нить сталкивался с изохронным режимом (приложение А спецификации) работы PCI Express.
Go to the top of the page
 
+Quote Post
Jack_of_Shadows
сообщение Dec 15 2011, 11:54
Сообщение #80


Участник
*

Группа: Участник
Сообщений: 46
Регистрация: 29-10-10
Пользователь №: 60 513



Читая форум, прихожу к мысли что с проблемами на этапе установки соединения столкнулся один я.
Есть две платы PCI/104 express. Одна из них как раз с virtex-5 и example design из PCI Express Block Plus корки. Возможности потестить ее с разными хостами нет. PCIe устройство не детектируется, после долгих тыканий набрел на гид по отладке сего ядра на сайте xilinx, благодаря которому смог установить следующую заковырку:

На этапе установке связи хост шлёт плате TS1-пакет с link number, который хочет ей присвоить (точнее начинает слать непрерывно такие пакеты). Через некоторое время плата начинает отсылать такие же пакеты обратно, подтверждая что приняла номер. После этого хост добавляет в отсылаемые пакеты желаемый lane number. И тут (если быть точным за пару пакетов до прихода lane number) плата выставляет флаг rx_elec_idle (насколько я понимаю сообщая о том, что приемная линия перешла в режим простоя) и в наглую не шлет ответный пакет хосту. Через некоторое время процесс инициализации сбрасывается, в сумме он повторяется несколько раз, потом хост естественно оставляет попытки.

Предполагая количество людей, которые уже использовали тот же самый пример и ядро, смутно понимаю что дело не в нем. Грешить на root complex тоже очень не хочется, начальство имеет планы на использование конкретно его в будущих разработках. Буду рад любым подсказкам и наводкам
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Dec 15 2011, 12:59
Сообщение #81


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(Jack_of_Shadows @ Dec 15 2011, 15:54) *
Читая форум, прихожу к мысли что с проблемами на этапе установки соединения столкнулся один я.
Есть две платы PCI/104 express. Одна из них как раз с virtex-5 и example design из PCI Express Block Plus корки. Возможности потестить ее с разными хостами нет. PCIe устройство не детектируется, после долгих тыканий набрел на гид по отладке сего ядра на сайте xilinx, благодаря которому смог установить следующую заковырку:

На этапе установке связи хост шлёт плате TS1-пакет с link number, который хочет ей присвоить (точнее начинает слать непрерывно такие пакеты). Через некоторое время плата начинает отсылать такие же пакеты обратно, подтверждая что приняла номер. После этого хост добавляет в отсылаемые пакеты желаемый lane number. И тут (если быть точным за пару пакетов до прихода lane number) плата выставляет флаг rx_elec_idle (насколько я понимаю сообщая о том, что приемная линия перешла в режим простоя) и в наглую не шлет ответный пакет хосту. Через некоторое время процесс инициализации сбрасывается, в сумме он повторяется несколько раз, потом хост естественно оставляет попытки.

Предполагая количество людей, которые уже использовали тот же самый пример и ядро, смутно понимаю что дело не в нем. Грешить на root complex тоже очень не хочется, начальство имеет планы на использование конкретно его в будущих разработках. Буду рад любым подсказкам и наводкам


А какая плата? Там есть switch? Или конфигурация stack up/down фиксирована? Как сброс сделан?
Могу дать свою прошивку и тестовую прогу под windows в обмен на ucf файл.
Мы сейчас свою плату PCI104 express делаем, вот не хотелось бы тоже наколоться.
Go to the top of the page
 
+Quote Post
Jack_of_Shadows
сообщение Dec 16 2011, 07:54
Сообщение #82


Участник
*

Группа: Участник
Сообщений: 46
Регистрация: 29-10-10
Пользователь №: 60 513



Процессорная плата - MSM945 от Digital-Logic (ныне Kontron).
Плата с плисом - SMT101 от Sundance (они кстати предоставляют тестовую прошивку под PCIe, но она так же не работает как и пример от корки, что лишний раз намекает что проблемы либо в связи, либо в root complex). (как я заметил вы ищете примеры разводки, но, к несчастью, от Sundance мне удалось получить только схему)

Процессорная плата рассчитана только на нахождение на верхушке мезонина, поэтому CPU_DIR фиксированно заведен на единицу. Сброс с разъема PCIe заведен на дополнительную плисину Spartan-3, которая конфигурирует Virtex. Выведя сигналы сброса на светодиоды, я всегда вижу как вначале почему-то мигает trn_reset, затем вместе пару раз trn_reset и sys_reset. Все это в течении пары секунд, пока пытается установиться соединение.

От прошивки бы и проги не отказался sm.gif Хотя в данный момент они вряд ли помогут с проблемами на нижнем уровне. Кстати, если вы имеете отношение к Томскому "Интенсис" и их SGDMA, то я качал демонстрационную версию модуля, однако у нас плисы разные (у меня XC5VFX30T), и я так и не смог адаптировать ucf под свою плату (сыпались какие-то ошибки с GTP/GTX трансиверами).
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Dec 16 2011, 11:44
Сообщение #83


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(Jack_of_Shadows @ Dec 16 2011, 11:54) *
Процессорная плата - MSM945 от Digital-Logic (ныне Kontron).
Плата с плисом - SMT101 от Sundance (они кстати предоставляют тестовую прошивку под PCIe, но она так же не работает как и пример от корки, что лишний раз намекает что проблемы либо в связи, либо в root complex). (как я заметил вы ищете примеры разводки, но, к несчастью, от Sundance мне удалось получить только схему)

Процессорная плата рассчитана только на нахождение на верхушке мезонина, поэтому CPU_DIR фиксированно заведен на единицу. Сброс с разъема PCIe заведен на дополнительную плисину Spartan-3, которая конфигурирует Virtex. Выведя сигналы сброса на светодиоды, я всегда вижу как вначале почему-то мигает trn_reset, затем вместе пару раз trn_reset и sys_reset. Все это в течении пары секунд, пока пытается установиться соединение.

От прошивки бы и проги не отказался sm.gif Хотя в данный момент они вряд ли помогут с проблемами на нижнем уровне. Кстати, если вы имеете отношение к Томскому "Интенсис" и их SGDMA, то я качал демонстрационную версию модуля, однако у нас плисы разные (у меня XC5VFX30T), и я так и не смог адаптировать ucf под свою плату (сыпались какие-то ошибки с GTP/GTX трансиверами).


Спасибо!
Мне кажется дело со сбросом. На отладочных китах сброс не используется, вместо него кнопка для ручного сброса. Попробуйте его вообще отключить в прошивке. Адаптировать sgdma помогу, самому интересно, шлите ucf файл.
Go to the top of the page
 
+Quote Post
Jack_of_Shadows
сообщение Dec 16 2011, 12:20
Сообщение #84


Участник
*

Группа: Участник
Сообщений: 46
Регистрация: 29-10-10
Пользователь №: 60 513



собственно вот:


Код
###############################################################################
# Define Device, Package And Speed Grade
###############################################################################

CONFIG PART = xc5vfx30t-ff665-1;

###############################################################################
# User Time Names / User Time Groups / Time Specs
###############################################################################

# CONFIG STEPPING = "ES";

###############################################################################
# User Physical Constraints
###############################################################################


###############################################################################
# Pinout and Related I/O Constraints
###############################################################################

#
# SYS reset (input) signal.  The sys_reset_n signal should be
# obtained from the PCI Express interface if possible.  For
# slot based form factors, a system reset signal is usually
# present on the connector.  For cable based form factors, a
# system reset signal may not be available.  In this case, the
# system reset signal must be generated locally by some form of
# supervisory circuit.  You may change the IOSTANDARD and LOC
# to suit your requirements and VCCO voltage banking rules.
#

NET "sys_reset_n"      LOC = "H9"  | IOSTANDARD = LVCMOS33 | PULLUP | NODELAY;

#
# SYS clock 250 MHz (input) signal. The sys_clk_p and sys_clk_n
# signals are the PCI Express reference clock. Virtex-5 GTX
# Transceiver architecture requires the use of a dedicated clock
# resources (FPGA input pins) associated with each GTX Transceiver Tile.
# To use these pins an IBUFDS primitive (refclk_ibuf) is
# instantiated in user's design.
# Please refer to the Virtex-5 GTX Transceiver User Guide
# (UG198) for guidelines regarding clock resource selection.
#

NET  "sys_clk_p"       LOC = "T4";
NET  "sys_clk_n"       LOC = "T3";
INST "refclk_ibuf"     DIFF_TERM = "TRUE";

#
# Transceiver instance placement.  This constraint selects the
# transceivers to be used, which also dictates the pinout for the
# transmit and receive differential pairs.  Please refer to the
# Virtex-5 GTX Transceiver User Guide (UG198) for more
# information.
#
# PCIe Lanes 0
INST "ep/pcie_ep0/pcie_blk/SIO/.pcie_gt_wrapper_i/GTD[0].GT_i" LOC = GTX_DUAL_X0Y1;

#
# PCI Express Block placement. This constraint selects the PCI Express
# Block to be used.
#

INST "ep/pcie_ep0/pcie_blk/pcie_ep"                       LOC = PCIE_X0Y0;

###############################################################################
# Physical Constraints
###############################################################################

#
# BlockRAM placement
#

INST "ep/pcie_ep0/pcie_blk/pcie_mim_wrapper_i/bram_retry/generate_sdp.ram_sdp_inst"      LOC = RAMB36_X4Y4;
INST "ep/pcie_ep0/pcie_blk/pcie_mim_wrapper_i/bram_tl_tx/generate_tdp2[1].ram_tdp2_inst" LOC = RAMB36_X4Y3;
INST "ep/pcie_ep0/pcie_blk/pcie_mim_wrapper_i/bram_tl_rx/generate_tdp2[1].ram_tdp2_inst" LOC = RAMB36_X4Y2;
INST "ep/pcie_ep0/pcie_blk/pcie_mim_wrapper_i/bram_tl_tx/generate_tdp2[0].ram_tdp2_inst" LOC = RAMB36_X4Y1;
INST "ep/pcie_ep0/pcie_blk/pcie_mim_wrapper_i/bram_tl_rx/generate_tdp2[0].ram_tdp2_inst" LOC = RAMB36_X4Y0;


###############################################################################
# Timing Constraints
###############################################################################

#
# Ignore timing on asynchronous signals.
#

NET "sys_reset_n" TIG;

#
# Timing requirements and related constraints.
#

NET "sys_clk_c"                                      PERIOD = 10ns;

NET "ep/pcie_ep0/pcie_blk/SIO/.pcie_gt_wrapper_i/gt_refclk_out" TNM_NET = "MGTCLK";

TIMESPEC "TS_MGTCLK"  = PERIOD "MGTCLK" 100.00 MHz HIGH 50 %;

# LEDs

NET "led1"  LOC = "E10"  | IOSTANDARD = LVTTL;
NET "led2"  LOC = "F10"  | IOSTANDARD = LVTTL;
NET "led3"  LOC = "F20"  | IOSTANDARD = LVTTL;
NET "led4"  LOC = "G21"  | IOSTANDARD = LVTTL;

###############################################################################
# End
###############################################################################



Сообщение отредактировал Jack_of_Shadows - Dec 16 2011, 12:24
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Dec 16 2011, 13:01
Сообщение #85


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



OK, в понедельник займусь
Go to the top of the page
 
+Quote Post
Jack_of_Shadows
сообщение Dec 16 2011, 13:25
Сообщение #86


Участник
*

Группа: Участник
Сообщений: 46
Регистрация: 29-10-10
Пользователь №: 60 513



sys_reset повесил на вечную 1, При загрузке наблюдаю как trn_reset все также мигает 3 раза. И картинка не меняется не на йоту.

На форуме тех поддержки xilinx предлагали поиграться настройками трансиверов (размахом выходного сигнала и эмфазой) - тоже не изменило ничего.
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Dec 16 2011, 18:47
Сообщение #87


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(Jack_of_Shadows @ Dec 16 2011, 16:25) *
sys_reset повесил на вечную 1, При загрузке наблюдаю как trn_reset все также мигает 3 раза. И картинка не меняется не на йоту.

На форуме тех поддержки xilinx предлагали поиграться настройками трансиверов (размахом выходного сигнала и эмфазой) - тоже не изменило ничего.

Как грузится плис - со флэши? В PC104 нет сигнала присутствия в слоте, может загрузка прошивки запаздывает?
Go to the top of the page
 
+Quote Post
dmitry-tomsk
сообщение Dec 18 2011, 20:22
Сообщение #88


Знающий
****

Группа: Свой
Сообщений: 672
Регистрация: 18-02-05
Пользователь №: 2 741



Цитата(dmitry-tomsk @ Dec 16 2011, 21:47) *
Как грузится плис - со флэши? В PC104 нет сигнала присутствия в слоте, может загрузка прошивки запаздывает?

Странный ucf, в коментариях тактовая 250 МГц, а в таймингах 100 МГц. Прикрепил прошивку для 100 МГц
Прикрепленные файлы
Прикрепленный файл  ST101.rar ( 228.11 килобайт ) Кол-во скачиваний: 19
 
Go to the top of the page
 
+Quote Post
Jack_of_Shadows
сообщение Dec 19 2011, 08:03
Сообщение #89


Участник
*

Группа: Участник
Сообщений: 46
Регистрация: 29-10-10
Пользователь №: 60 513



ucf сгенерирован core-генератором, в настройках там точно 100 МГц стояло, и на плате точно 100 МГц идет. Сам не понял что у них с комментариями.
С вашей прошивкой ничего не изменилось - смотрю pci-устройства через pcitree в win хр.
Грузится с флеши, производители платы уверяют что загрузка занимает порядка 70 мс. И на этот случай всегда рекомендуют горячий старт, который тоже не помогает. К тому же я в начале говорил, процесс инициализации начинает идти, проходят успешно стадии detect и polling, а на configuration случается затык, в один прекрасный момент (всегда один и тот же, что значит дело не в случайных помехах) RX линия сбрасывается в режим простоя (или как там правильно перевести IDLE). И кроме того в некоторых местах во время инициализации видно по сигналу rx_status что возникают ошибки 8b/10b decode error - некое нарушение целостности сигнала. Однако опять же они возникают строго в одинаковых местах, что не похоже просто на плохой прием - ведь в других местах я, к примеру, всегда вижу как root complex отправляет link number, а плис через некоторое время отсылает его назад в качестве подтверждения (вот здесь я приводил осциллограммы проблемного момента, )
Go to the top of the page
 
+Quote Post
Jack_of_Shadows
сообщение Dec 19 2011, 12:11
Сообщение #90


Участник
*

Группа: Участник
Сообщений: 46
Регистрация: 29-10-10
Пользователь №: 60 513



Так, сорри, но я ввел вас в заблуждение.
Мне таки позволили расковырять рабочий PC, и я вставил плату с плисом туда (производитель для этого специальную переходную плату дает). Загрузилось сразу же - дефолтная прошивка с установленными в системе драйверами даже объявила о себе в диспетчере устройств, прошивка сгенерированная core generator вроде как тоже (по крайней мере она теперь висит в состоянии L0, как обнаружить ее в системе пока не допер. Все найденные для сканирования pci-шины проги (pcitree, pcidirect) под win7 не запустились).

Получается дело в рут комплексе - MSM945. Но это уже не совсем к этому топику относится
Go to the top of the page
 
+Quote Post

7 страниц V  « < 4 5 6 7 >
Reply to this topicStart new topic
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 


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


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