|
Virtex-6 PCIe + разные пины GTX трансиверов |
|
|
|
Nov 17 2014, 13:28
|
Профессионал
    
Группа: Свой
Сообщений: 1 817
Регистрация: 14-02-07
Из: наших, которые работают за бугром
Пользователь №: 25 368

|
Привет. Не знаю куда лучше написать - здесь или в PCIe интерфейсы.
Короче такой вопрос - в Virtеx-6 запрограммирована родная корка PCIe x1, которая сидит на определенном GTX трансивере, допустим, с названием A. Все работает. Вопрос в том, можно ли зделать так, чтобы данная корка могла переключаться на GTX трансивер В, так как в определенных вариантах исполнения платы PCIe приходит именно на него? Переключение должно быть на этапе инициализации, в зависимости от параметра, например. Далее в процессе работы ничего больше не меняется до ребута. В настоящий момент решаем все двумя разными прошивками для варианта A и B с двумя разными констрейн-файлами. Но это все увеличивает и без того немалое время разводки проекта в двое. Было бы неплохо, если бы между GTX трансивером и коркой можно было бы поставить какой-то мультиплексор.
В документации ничего похожего не нашел. Это возможно?
|
|
|
|
|
 |
Ответов
(1 - 12)
|
Nov 19 2014, 06:18
|
Знающий
   
Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650

|
Цитата(syoma @ Nov 18 2014, 18:00)  Вроде как с этим будут проблеммы - даже без логики оно по таймингам еле пролазит. Может есть пример, как это правильно сделать? Можно во флэшку положить два битстрима по разным адресам и грузить тот, что нужно, выбирая старший адрес на флэшке. Этот выбор можно записать в энергонезависимую память если нужно чтобы в следующий раз грузилась нужная прошивка, а не прошивка по умолчанию. З Ы Два инстанса с мультиплексором ИМХО не лучший выбор с точки зрения потребления, тепла и FCC control. Хотя, наверное при желании можно трансиверы отправить в power down mode.
|
|
|
|
|
Nov 19 2014, 12:01
|
Знающий
   
Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650

|
Цитата(syoma @ Nov 19 2014, 15:19)  Насколько я понимаю Virtex-6 - в нашем кристалле возможно иметь только 2 железные PCIe корки. Если бы было 3 - я бы не спрашивал. Тут вам немного "рукоделья" корячится. Похоже придётся лезть в сорцы корки (если это возможно) и вставлять мультиплексоры между трансиверами и собственно коркой. Неприятность в том что даже если всё это получится, то при любом апгрейде корки всё придётся повторить по новой.
|
|
|
|
|
Nov 20 2014, 05:39
|
Знающий
   
Группа: Свой
Сообщений: 802
Регистрация: 11-05-07
Из: Томск
Пользователь №: 27 650

|
Цитата(RobFPGA @ Nov 19 2014, 18:47)  Приветствую! На сколько я помню при генерации PCIe для Virtex6 генерируется врапер для встроенного контроллера PCIe и отдельно сорцы для GTX приемопередатчиков. Так что порукоблудничасть есть чем. Добавить мультиплексоры с одним регистром на выходе для сохранения времянки в PIPE интерфейс между коркой и GTX труда большого не составит - нужно будет только аккуратно просимулировать творение после этого на предмет сохранения функциональности. Так что не так уж страшен этот черт.. то есть PCIe  Успехов! Rob. Там ещё и с мультиплексированием клоков (либо перекладыванием данных через фифошку в другой домен) будет веселуха...
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|