¿Es posible usar algún tipo de adaptador, o incluso soldar un dispositivo a la placa Raspberry Pi para admitir dispositivos PCI o PCI express? Estoy pensando en dispositivos más pequeños como NIC o tarjetas de sonido. No creo que haya suficiente voltaje para ejecutar algo como un sintonizador o una tarjeta gráfica.
22
Respuestas:
Dudo que esto sea posible. Necesitarías algún tipo de puente y algo para conectarlo.
No estoy seguro de por qué lo necesitaría, las NIC / tarjetas de sonido / sintonizadores y más pueden conectarse al USB
También hay adaptadores de video USB si desea agregar una segunda pantalla. No tiene mucho sentido intentar conectar una tarjeta gráfica de alta potencia para juegos, etc. La única razón por la que puedo pensar es si estaba usando la GPU para el coprocesamiento
fuente
No, no es posible. La Raspberry Pi se basa en un SoC de brazo de bajo presupuesto que solo tiene bus usb, por lo que es imposible conectarle una tarjeta PCI o PCIe. No se pudo hacer un adaptador.
fuente
El más rápido del búfer GPIO puede ser abordado hasta ahora es 5.4MHz, pero la mayoría frente a las bibliotecas a cabo como máximo alrededor de 70 kHz: http://codeandlife.com/2012/07/03/benchmarking-raspberry-pi-gpio-speed/
La especificación PCIe funciona a 100MHz (frecuencia ajustable hasta 200MHz). http://www.ni.com/white-paper/3767/en/
Puede haber una forma de forzar un modo compatible con versiones anteriores en PCIe y reducirlo a la frecuencia PCI anterior a 33MHz, lo que significa que puede haber cierta superposición en los rangos de frecuencia con un búfer extenso. Sin embargo, PCIe tiene un ancho de bits mucho más amplio que GPIO, y requiere una gran cantidad de infraestructura de software para abordar adecuadamente, que el bus GPIO en el Pi simplemente no tiene. PCI y PCIe son más que simples interfaces, incluyen sus propios protocolos de comunicaciones intermedias (complejos), que de alguna manera tendría que emular.
¿Se podría hacer? Claro, con la interfaz adecuada de software / hardware se puede hacer cualquier cosa. Las bibliotecas a nivel de núcleo se pueden escribir para anular casi cualquier cosa y almacenar en búfer casi cualquier cosa.
¿Debería hacerse? Bueno, lo que esencialmente está tratando de hacer es conectar el bus inalámbrico rápido / PCIe con el Pi más lento. Eso es lo que el bus USB de Pi ya hace, y lo hace bastante bien, además de que lo hace de forma nativa y de forma totalmente compatible.
Tratar de hacer que PCI / PCIe se ejecute en la Pi esencialmente reinventaría la rueda, y lo haría muy duro. Puede ser un ejercicio de aprendizaje interesante, si tiene unos meses de sobra, teniendo en cuenta que es probable que se golpee contra una pared y no pueda avanzar en cualquier momento. Suena singularmente poco gratificante para mí. ;-)
fuente
La placa PCIE2RASPI puede unirse a una placa PCIE (mini o estándar) con un CycloneIV GX Fpga a las señales IO de la placa Raspberry I / O. Cortando los pines de alimentación en el encabezado, se puede conectar mediante un cable plano a un Raspberry hist. El Fpga en mini PCIe aloja un punto final que tiene la capacidad de objetivo maestro, de hecho, hace que el Raspberry pueda leer o escribir la memoria de la PC.
Mire: http://www.geb-enterprise.com/PRODUCTS/Mini_PCIe_to_Raspberry.html http://www.geb-enterprise.com/PRODUCTS/PCIe_Standard_PC_CARD.html
fuente
En realidad, puede ser posible utilizando TODOS los pines GPIO, luego multiplexando la mitad de ellos en una sola línea de salida (PCIe x1) a 100MHz y demultiplexando la línea de entrada en la otra mitad. Leí en el mismo enlace (el primero) en la respuesta de yogsodoth que el código C nativo podría administrar aproximadamente 22MHz a través del optimizador -O3. (Solo recuerde, los cambios de nivel lógicos son obligatorios ) . Sin embargo, el software sería un problema aún mayor en el cuello para la interfaz, ya que PCIe no es compatible de forma nativa ...
fuente
¿Quizás los pines GPIO podrían conectarse a algo que pueda abordar el PCIx? Significaría un gran truco y la pregunta es. Qué tan rápido se pueden leer los datos de los pines GPIO.
fuente
No, eso no es posible. El hardware Gpio no está diseñado para funcionar a velocidades PCI.
fuente