Red de conocimiento informático - Conocimiento del nombre de dominio - ¿Cuál es el futuro del hardware de código abierto?

¿Cuál es el futuro del hardware de código abierto?

Recientemente estoy muy interesado en la tecnología de combinación de software y hardware, así que intentemos responder a esta pregunta. Creo que la ingeniería de hardware tiene las siguientes diferencias esenciales en comparación con la ingeniería de software, lo que hace que el trabajo de código abierto para hardware sea mucho más complicado que el software. 1. Modularización, estandarización y facilidad de modificación Los productos de software tienen entradas y salidas bien definidas que se pueden ajustar en cualquier momento. Una vez que un módulo de software se escribe, ejecuta y prueba, el módulo puede considerarse como una caja negra y ser llamado y ejecutado por otro módulo completamente definido. Mientras las interfaces entre el software permanezcan sin cambios, la lógica entre cada módulo no cambiará, lo que permite a los desarrolladores de software cooperar entre sí solo a través de las interfaces definidas, sin importar dónde se encuentren estos desarrolladores. En el mundo del hardware, los ingenieros no tienen tanta suerte. En primer lugar, no existe ningún hardware en este mundo que pueda agregarse al diseño siempre que conozca la interfaz. La selección de hardware es algo muy problemático. Incluso los diseñadores de hardware que han trabajado durante muchos años probablemente tendrán problemas con "pequeñas cosas como hacer coincidir el voltaje de la interfaz o la frecuencia del reloj" al seleccionar dispositivos de hardware que nunca se han utilizado. una resistencia de contacto y una capacitancia parásita que aparecen en cualquier lugar pueden estropear todo el circuito. Los diseñadores de hardware no tienen IDE potentes, compiladores e intérpretes hermosos. A todos los ingenieros de hardware se les dijo en la primera clase de diseño de EDA: la simulación de software no es confiable y solo puede usarse como referencia. Lo único en lo que puede confiar el diseño de hardware es en una base teórica sólida y en pruebas experimentales repetidas. Por ejemplo, "un ingeniero chino y un ingeniero estadounidense colaboraron a larga distancia para desarrollar un colector de señales". Este tipo de modelo de cooperación que parece normal en el software de código abierto es imposible que ocurra en el campo del hardware. Los diseñadores de hardware deben reunirse para ejecutar simulaciones, probar chips y soldar placas. 2. Costos de producción y lanzamiento En el proceso de desarrollo de software, una vez que es necesario cambiar la interfaz de un determinado módulo, todo lo que el ingeniero de software tiene que hacer es sentarse frente a la computadora para modificar el código y luego usar herramientas como mensajes de texto. , llamadas telefónicas, correos electrónicos o git y svn para notificar a todos. Para aquellos que necesitan usar este módulo, la modificación se completará después de que todos lo depuren juntos. El costo de comunicación y el costo de modificación de este proceso, excepto la mano de obra, son básicamente cero. El costo de publicar software es aún menor. En el pasado, todavía era necesario utilizar soportes como disquetes. Ahora, con Internet, el costo es básicamente nulo. La situación en el desarrollo de hardware es la opuesta, cuando los ingenieros de hardware han pasado por innumerables simulaciones, han enviado los circuitos a la fábrica y han gastado mucho dinero para producirlos, los osciloscopios, el análisis lógico y los analizadores de espectro (todos ellos valiosos) permitirán. Te digo la dura verdad: esto no está bien. Si está haciendo circuitos a nivel de placa, felicidades, con suerte, reelaborar algunos de estos dispositivos puede salvar su diseño. Si está haciendo un diseño a nivel de chip, prepárese para gastar cientos de miles más en secciones transversales, rayos X, FIB, etc. para descubrir el problema y volver a grabarlo para ver si Dios puede bendecirlo. . El costo de las modificaciones del diseño del hardware es demasiado alto, razón por la cual el mercado de placas de uso general y núcleos IP como Arduino es tan popular ahora. Además, una vez que los productos se vendan bien, la construcción de sistemas de almacenamiento, transporte, distribución, posventa y otros definitivamente costará dinero. En las empresas de productos de hardware, los desarrolladores suelen pagar una fracción del costo. 3. Umbral de entrada En la extremadamente desarrollada industria del software actual, cualquier persona con buena capacidad de pensamiento lógico puede obtener suficiente educación a través de Internet para convertirse en desarrollador de software, siempre que esté interesado. Y toda la inversión es sólo una computadora con acceso a Internet. Esto ha provocado que el número de programadores siga aumentando. Siempre puedes conocer algunos programadores que buscan trabajo para colaborar en algunas cosas interesantes. En cuanto a la industria del hardware, todavía requiere profesionales con experiencia profesional para llevar a cabo el diseño y el desarrollo. Nunca he visto a un ingeniero de diseño de hardware electrónico autodidacta. Formar un ingeniero de diseño de hardware calificado requiere mucho aprendizaje teórico básico en física y electrónica, así como muchas pasantías utilizando diversos instrumentos. El costo de tiempo y materiales es muy alto. El número de ingenieros de hardware es pequeño y, junto con las dificultades de colaboración mencionadas anteriormente, no es fácil encontrar un grupo de profesionales de hardware que se unan para realizar trabajos de código abierto de alto riesgo. En definitiva, para que el hardware sea de código abierto, debemos superar los problemas del diseño no estandarizado, el alto costo y las altas barreras de entrada. En mi opinión, estos problemas son difíciles de solucionar en poco tiempo.