使用PCI或PCIe设备


22

是否可以使用某种适配器,甚至可以将设备焊接到Raspberry Pi板上以支持PCI或PCI Express设备?我正在考虑使用较小的设备,例如NIC或声卡。我认为不会有足够的电压来运行诸如调谐器或图形卡之类的东西。


PCi express是不可能的,因为总线速度对于ARM来说太高了,而且它的宽度太宽(I / O太多),PCI可能是可行的,但没有用
Piotr Kula 2013年

您会遇到瓶颈问题,这是不可能完成的。

好吧,使用IO引脚可能仍会比USB更快。而使用ISA,EISA或VESA呢?我知道它们很旧,但是它们的时钟频率仍然较低,并且不存在很多新的时钟频率。或者,如何制作自己的界面?

当物理层和设备支持这些速度时,@ ppumkin PCIe将以较高的总线速度运行,但是它实际上是一种相当灵活的协议,并且仍然可以在速度较慢的非理想情况下工作。
AJMansfield '17

Answers:


8

我怀疑这是可能的。您将需要某种桥和将其连接到的东西。

不确定为什么会需要,NIC /声卡/调谐器等可以插入USB

如果要添加第二个屏幕,也有USB视频适配器。试图为游戏等连接高功率图形卡没有多大意义。我能想到的唯一原因是,如果您使用GPU进行协处理


有一个引人注目的用例...基于Pi的802.11ac双频路由器的实现,可以完美地执行AP模式(或者就此而言,完全执行AP模式)。如果完全使USB总线饱和,有传言说有一些USB 802.11n NIC在AP模式下可以半工作,但实际上,如果您想真正地正确执行AP模式,则要么需要PCI-e总线以使您可以近乎实时地访问该芯片,或者您必须将所有与AP相关的逻辑移到USB总线的另一端(将802.11ac基带芯片本身直接连接到主机Pi)。
Bitbang3r

1
无论是否引人注目,您都会受到CPU进出I / O瓶颈的限制。请记住,它是一个相当古老的,成本优化的芯片。
John La Rooy

6

不,不可能。Raspberry Pi基于仅具有usb总线的低预算臂SoC,因此无法在其上连接PCI或PCIe卡。都无法制造适配器。


也有仅称为PCI-e USB的连接器吗?
危险89年

@ danger89对不起,我无法收到您的问题。
SileNT

6

到目前为止,可以最快解决GPIO缓冲区的问题是5.4MHz,但是大多数寻址库的最大带宽约为70kHz:http : //codeandlife.com/2012/07/03/benchmarking-raspberry-pi-gpio-speed/

PCIe规范以100MHz(频率可调至200MHz)运行。 http://www.ni.com/white-paper/3767/en/

可能有一种方法可以在PCIe上强制向后兼容模式,并将其降低到33MHz的旧PCI频率,这意味着在广泛的缓冲范围内,频率范围可能存在一些重叠。但是,PCIe的位宽比GPIO大得多,并且需要大量的软件基础结构才能正确寻址,而Pi上的GPIO总线根本没有。PCI和PCIe不仅仅是接口,它们还包含它们自己的(复杂)中间通信协议,您必须以某种方式进行仿真。

能做到吗?当然,通过正确的软件/硬件接口,可以完成任何事情。可以编写内核级库以覆盖几乎所有内容并缓冲几乎所有内容。

应该做吗?好吧,您本质上想做的是将快速的无线/ PCIe总线与速度较慢的Pi相连。这就是Pi的USB总线已经做的,并且做得很好,而且它以本机方式并以完全受支持的方式进行。

试图在Pi上运行PCI / PCIe实质上是在重新发明轮子,而且这样做会非常困难。如果您有数个月的时间,可能是一个有趣的学习练习-请记住,您很可能会碰壁而无法随时前进。听起来对我毫无帮助。;-)


1
如果您决定继续进行操作,则总有以下内容:pinouts.ru/Slots/pci_express_pinout.shtml请注意,您的主要问题将是时钟速度,而不是接口宽度。是的,某些PCIe / PCIx卡具有很多引脚。不,并非全部如此,而且许多不需要很大的引脚。那里有一些非常小的1x卡。由于时钟以2.5Gbps的速度运行,因此您需要某种具有大量存储空间的缓冲接口,并且我不确定Pi的处理器是否能够赶上这么多数据,因为您不会实时运行。
yogsodoth

1

PCIE2RASPI板可将具有CycloneIV GX Fpga的PCIE板(微型或标准)连接到Raspberry I / O板的IO信号。切断割台上的电源引脚,可以通过扁平电缆将其安装到Raspberry hist。微型PCIe上的Fpga承载具有主要目标功能的端点,事实上,它使Raspberry能够读取或写入PC内存。

查看:http : //www.geb-enterprise.com/PRODUCTS/Mini_PCIe_to_Raspberry.html http://www.geb-enterprise.com/PRODUCTS/PCIe_Standard_PC_CARD.html


1
当您建议一种产品时,应在答案中明确指出。
史蒂夫·罗比拉德

1

实际上,可以利用所有的GPIO引脚,然后将其中的一半多路复用到100MHz的一条输出线(PCIe x1),然后将输入线多路分解成另一半。我在yogsodoth的回答中提到的同一链接(第一个链接)上看到,本机C代码可以通过-O3优化器管理大约22MHz。(请记住,必须要有逻辑电平转换器。)由于本机不支持PCIe,因此该软件在连接接口时会更加痛苦。


0

也许GPIO引脚可以连接到可以寻址PCIx的设备?这将意味着巨大的黑客入侵,问题是。可以从GPIO引脚读取数据的速度。


1
不够快。
Jivings

同意-速度不够快,必须实时。Linux不是实时的。
Piotr Kula 2012年

-1

不,那是不可能的。Gpio硬件并非旨在以PCI速度工作。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.