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

ARM и PCI-E

Добрый день.

Подскажите есть ли возможность на ARM собрать устройство с PCI-E (х1 Gen1, 2) интерфейсом?
Идея в том, что бы сделать мини ПК на 64 бит linex системе и подключить к нему PCI-E устройство.
А управлять всем этим через Ethernet.

Подскажите на чем это можно сделать.
Я смотрел в сторону cortex a53 но, что то аппаратного PCI-E не нашел. Может плохо искал sm.gif
Дайте инфу если есть.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(ivan219 @ Jan 1 2018, 01:17) <{POST_SNAPBACK}>
Добрый день.

Подскажите есть ли возможность на ARM собрать устройство с PCI-E (х1 Gen1, 2) интерфейсом?
Идея в том, что бы сделать мини ПК на 64 бит linex системе и подключить к нему PCI-E устройство.
А управлять всем этим через Ethernet.

Подскажите на чем это можно сделать.
Я смотрел в сторону cortex a53 но, что то аппаратного PCI-E не нашел. Может плохо искал sm.gif
Дайте инфу если есть.



На счет 64х битных не знаю, но 32х есть IMX6 серия, к этому камню можно подключить 1х PCI E

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(ivan219 @ Jan 1 2018, 01:17) <{POST_SNAPBACK}>
Подскажите есть ли возможность на ARM собрать устройство с PCI-E (х1 Gen1, 2) интерфейсом?
Идея в том, что бы сделать мини ПК на 64 бит linex системе и подключить к нему PCI-E устройство.
А управлять всем этим через Ethernet.

у 53-го нет такого интерфейса.. как уже подсказали, смотрите в сторону imx6q/s
Код
root@holapc:~# lspci -v
00:00.0 PCI bridge: Device 16c3:abcd (rev 01) (prog-if 00 [Normal decode])
        Flags: bus master, fast devsel, latency 0
        Memory at 01000000 (32-bit, non-prefetchable) [size=1M]
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
        [virtual] Expansion ROM at 01100000 [disabled] [size=64K]
        Capabilities: [40] Power Management version 3
        Capabilities: [50] MSI: Enable- Count=1/1 Maskable+ 64bit+
        Capabilities: [70] Express Root Port (Slot-), MSI 00
        Capabilities: [100] Advanced Error Reporting
        Capabilities: [140] Virtual Channel

подобный интерфейс есть у dm8148, но там старое ядро и никаких перспектив
Код
root@dm8148:~# lspci -v
00:00.0 PCI bridge: Texas Instruments Device b801 (rev 01) (prog-if 00 [Normal decode])
        Flags: bus master, fast devsel, latency 0
        Memory at <ignored> (32-bit, non-prefetchable)
        Memory at <ignored> (32-bit, prefetchable)
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
        Memory behind bridge: 20000000-200fffff
        Capabilities: [40] Power Management version 3
        Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit+
        Capabilities: [70] Express Root Port (Slot-), MSI 00
        Capabilities: [100] Advanced Error Reporting

01:00.0 Ethernet controller: Atheros Communications Inc. AR242x / AR542x Wireless Network Adapter (PCI-Express) (rev 01)
        Subsystem: AMBIT Microsystem Corp. AR5BXB63 802.11bg NIC
        Flags: bus master, fast devsel, latency 0, IRQ 48
        Memory at 20000000 (64-bit, non-prefetchable) [size=64K]
        Capabilities: [40] Power Management version 2
        Capabilities: [50] MSI: Enable- Count=1/1 Maskable- 64bit-
        Capabilities: [60] Express Legacy Endpoint, MSI 00
        Capabilities: [90] MSI-X: Enable- Count=1 Masked-
        Capabilities: [100] Advanced Error Reporting
        Capabilities: [140] Virtual Channel
        Kernel driver in use: ath5k


Цитата
64 бит linex системе

что это и зачем в вашем понимание?
я мало этим интересовался, но 64-ые ОС у АРМов редкость, знаю что для Малины пилят ядро-64, но там надо помимо ядра, все обрамление перекомпилировать, ну и аппликухи видимо тоже..

Цитата
подключить к нему PCI-E устройство

да, перед тем как искать и вкладываться в систему, поищите - "а есть ли драйвера под моё "устройство"", иначе даже при наличие железа идея будет заведомо мертвая..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(Jury093 @ Jan 1 2018, 15:28) <{POST_SNAPBACK}>
у 53-го нет такого интерфейса.. как уже подсказали, смотрите в сторону imx6q/


Это я у же понял. Насчет imx6q посмотрю.

Цитата(Jury093 @ Jan 1 2018, 15:28) <{POST_SNAPBACK}>
что это и зачем в вашем понимание?
я мало этим интересовался, но 64-ые ОС у АРМов редкость, знаю что для Малины пилят ядро-64, но там надо помимо ядра, все обрамление перекомпилировать, ну и аппликухи видимо тоже..


Возможно я планочку не много завысил. Еще подумаю над этим.

Цитата(Jury093 @ Jan 1 2018, 15:28) <{POST_SNAPBACK}>
да, перед тем как искать и вкладываться в систему, поищите - "а есть ли драйвера под моё "устройство"", иначе даже при наличие железа идея будет заведомо мертвая..


Драйвера под linex есть.

Не много железо по копал и вот, что нашел.
xio1100 в качество Pci Express PHY потом прикрутить его к дешевой FPGA а на ней у же ARM или еще, что то.

Но потом нашел вот это https://ru.aliexpress.com/item/Xilinx-XC7A3...9999.262.29TECV и цена адекватная и PCI-E есть и памяти 256 МБ

Что думаете?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(ivan219 @ Jan 1 2018, 22:51) <{POST_SNAPBACK}>
Не много железо по копал и вот, что нашел.
xio1100 в качество Pci Express PHY потом прикрутить его к дешевой FPGA а на ней у же ARM или еще, что то.
Что думаете?

мнэ.. есть ли честно, то ничего не думаю - мне неизвестен ваш скилл по железу, софту и фпга
по железу из линка - банальная отладка на фпга, я бы поостергся гонять больше 200 МГц даже дифпарами через ширпотребовские PBD, кстати вероятно там pci-e поддержан в лучшем случае трансиверами и чтобы поднять этот узел придется написать/купить/украсть корку под ФПГА этого семейства. также потребуется переходник в сторону разъема pci-e и прочие хлопоты..
по предыдущей прикрутке "xio1100-фпга-АРМ" - возможно вы плохо представляете весь цикл разработки от железа до софта в готовое устройство. там помимо правильного физического сопряжения потребуется программная прослойка и на "дешевой фпга" врядли что-то толком заработает..

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(ivan219 @ Jan 1 2018, 22:51) <{POST_SNAPBACK}>
Но потом нашел вот это https://ru.aliexpress.com/item/Xilinx-XC7A3...9999.262.29TECV и цена адекватная и PCI-E есть и памяти 256 МБ

Что думаете?


Плисина средней емкости с аппаратной поддержкой 3 уровней PCI E - штука интересная, но реализация на ней самого интерфейса, процессора и эзернет-контроллера на порядок сложнее, чем на МК. Если вы гуру плис - то это хороший вариант, а если нет, то просто потеряете кучу времени.
По цене данная плата почти столько же стоит, как с МК IMX6 дуал, а если вам дуал не нужен, то соло стоит заметно дешевле. PCIe есть и в том и в другом чипе.
ЗЫ. Кроме того, для этих МК есть немало производителей готовых плат, на которых уже установлено 256 или 512МБ памяти, 100 или гигабитная эзернет-физика, и разъемы PCIe. На плате с плисой вам придется все это делать самостоятельно, а это высокоскоростные дифпары, "накосячите" с длиной или "переплетете" что-нить - и все не работает, хоть и правильно реализовано в кристалле. Если уж так хочется на плисе делать, то порекомендовал бы для процесса разработки выбрать плату, на которой уже разведены под разъемы все скоростные интерфейсы - при этом гораздо меньше потратите сил и нервов rolleyes.gif
Изменено пользователем mantech

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Да я понимаю, что PCI-E Gen1 это частота работы шины порядка 1.25 GHz и скорей всего на китайской борде, что нибудь пойдет криво.
Это один из возможных вариантов.
А изернет можно и на отдельном чипе собрать скорости в 1 - 10 Мбит более чем хватит.

Я МК IMX6 Solo рассматривал.
Вариант хороший. И по цене сам CPU дешевый. Всего 27$.
Но вот платы с PCI-E и ОЗУ в 256 (512) Мб да еще и по доступной цене не нашел.
Минимум это 150$ и без PCI-E.
Более дорогие в 500$ с PCI-E но это у же не та цена.
Можете подсказать. Сумма порядка 100-150$ за PCI-E и ОЗУ 256 Мб меня устроила.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(ivan219 @ Jan 2 2018, 14:07) <{POST_SNAPBACK}>
Да я понимаю, что PCI-E Gen1 это частота работы шины порядка 1.25 GHz и скорей всего на китайской борде, что нибудь пойдет криво.
Это один из возможных вариантов.
А изернет можно и на отдельном чипе собрать скорости в 1 - 10 Мбит более чем хватит.

Я МК IMX6 Solo рассматривал.
Вариант хороший. И по цене сам CPU дешевый. Всего 27$.
Но вот платы с PCI-E и ОЗУ в 256 (512) Мб да еще и по доступной цене не нашел.
Минимум это 150$ и без PCI-E.
Более дорогие в 500$ с PCI-E но это у же не та цена.
Можете подсказать. Сумма порядка 100-150$ за PCI-E и ОЗУ 256 Мб меня устроила.



Для примера: плата с процом - http://starterkit.ru/html/index.php?name=s...=view&id=99

Доп плата к ней с разъемом PCIE - http://starterkit.ru/html/index.php?name=s...view&id=109

На первую плату нужно впаять гребенку с шагом 2мм (отдельная благодарность разработчику crying.gif )

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(mantech @ Jan 2 2018, 14:30) <{POST_SNAPBACK}>
Для примера: плата с процом - http://starterkit.ru/html/index.php?name=s...=view&id=99

Доп плата к ней с разъемом PCIE - http://starterkit.ru/html/index.php?name=s...view&id=109

На первую плату нужно впаять гребенку с шагом 2мм (отдельная благодарность разработчику crying.gif )


Вот действительно спасибо sm.gif 100 рублей экономии а толку?

В целом вариант отличный за 5100 да еще и 512 Мб с PCI-E лучшего и желать не стоит 08.gif

Может еще и этот вариант посмотрю Freescale iMX6Dual на 2700 дороже но зато 1Гб, два ядра и все распаяно.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Я правильно понимаю, что некое стороннее или самодельное устройство должно подключаться к этому процессору, а не наборот - этот процессор ARM должен подключаться к некоему мини-ПК? На счет возможности iMX6 (с операционной системой или без) работать как PCIe endpoint ничего не скажу, не знаю.

Подключать PCI-E устройства к ARM процессору можно, например к 32-битному iMX6 - буквально на днях пробовал подключать свою платку к iMX6 через miniPCIe->PCIe райзер-карту. Делал это я на Hola-PC + Hola-IEB + райзер карта, всю связку запитывал от блока питания ПК.

Вот тема, в которой я отписался: http://www.starterkit.ru/html/index.php?na...ew&id=22580

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Цитата(AVR @ Jan 5 2018, 17:06) <{POST_SNAPBACK}>
Подключать PCI-E устройства к ARM процессору можно, например к 32-битному iMX6 - буквально на днях пробовал подключать свою платку к iMX6 через miniPCIe->PCIe райзер-карту. Делал это я на Hola-PC + Hola-IEB + райзер карта, всю связку запитывал от блока питания ПК.


Вот и у меня тоже самое.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация