Jump to content

    
Sign in to follow this  
kirra.cat

Выбор PCI Express Switch

Recommended Posts

Добрый день. Проектирую свое первое устроство с использованием PCI Express, и появился такой вот вопрос. Для начала хотел несколько описать, что из себя представляет разрабатываемая мной система.

Система представлет из себя совокупность некой SoC, и 4 конечных точек, соединеных коммутатором PCI Express (как на приложенной картинке). Каждый квадратик на картинке - это отдельная плата.

Т.к. этот SoC (реализованный на жирной ПЛИС) чёт какой-то сложный получается, поэтому было принято решение PCI Express Root Complex из него выкинуть.

В итоге, по задумке, поставить микросхему коммутатора PCI Express со встроенным Root Complex, либо если такой не бывает, то отдельную микросхему Root Complex и отдельную микросхему коммутатора.

Собственно вопрос: бывает ли микросхемы коммутаторов со встроенным Root Complex? Если есть, то можете подсказать как они называются. Даже не обязательно, чтобы Root Complex и коммутатор были в одной микросхеме, вполне устраивает вариант, когда коммутатор и Root Complex в разных микросхемах.

 

P.S. Просто я таким микросхем (коммутаторов со встроенным Root Complex) не смог найти, скорее всего не правильно давал гуглу запрос на поиск 

 

--

С наилучшими пожеланиями, kirra

 

System.png

Share this post


Link to post
Share on other sites

А как вы предполагаете общение SoC с Root Complex? Я, например, не уверен, что логика общения с RC займет меньше места, чем Integrated Block for PCI Express. Это раз. Два: PCI-Express -не панацея. Коль уж есть трансиверы на SoC, почему бы SRIO не попробовать?

Share this post


Link to post
Share on other sites

Добрый день. 

Вы нарисовали классическую схему использования PCI Express. Так и надо работать. Root Complex надо реализовывать внутри вашей SoC. Если это Zynq 7000, то он там прекрасно реализуется и не занимает особо много ресурсов. 

Далее - внешняя м/с коммутатора и плис с реализацией end point. 

Мы так регулярно делаем. Всё работает. 

P. S. Реализация SRIO гораздо сложнее 

Share this post


Link to post
Share on other sites

В качестве root complex можно использовать отдельный процессор с pci express. Например арм или какой либо tms. 

Можно попробовать использовать zynq. Вполне нормальной является ситуация когда процессор занимается только инициализацией и мониторингом системы. А плисы обмениваются между собой по pcie. 

Share this post


Link to post
Share on other sites

Прошу прощения за столь долгий ответ.

Как я понял из вышесказанного, то можно Root Complex создать в процессоре, и тогда системы будет выглять так, как на картинке? Этот Root Complex будет в квадратике Interface Processor.

У меня тогда есть вопрос: какой процессор (желательно ARM) подойдет на роль Root Complex? Он должен соединяться с чипом коммутатора тоже через PCI Express?

P.S. Можете посоветовать что лучше использовать? Мне желательно такое, для чего есть примеры создания этого Root Complex и в идеале отладочная плата.. 

P.P.S. Root Complex вынести за FPGA хотим чтобы разгрузить логику, и собственно команду. А то замучаются бедные :)

--
С наилучшими пожеланиями, kirra

System2.png

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this