Al hacer cualquier prototipo de PCB siempre es una gran idea tener características dentro de ella que pueden ser utilizadas para ayudar en la depuración del diseño.
Algunos ejemplos son:
-
Utilizar la FPGA más grande disponible que tenga ruta de migración a la que esperamos utilizar en el producto final. Esto significa que podemos tener mucha lógica para implementar modos de depuración y analizadores lógicos internos como el signal-tap. Esto significa que nuestras mediciones de disipación de energía no serán precisas ya que una FPGA más grande tendrá una mayor disipación de energía estática.
-
Incorpora funciones en la placa que permiten conectar determinadas rutas de señal a un osciloscopio. Pueden ser señales analógicas o digitales. No me refiero a las señales que se conectan directamente a la FPGA. Hay diferentes maneras de hacer esto, y no estoy seguro de la mejor manera de hacerlo.
-
Tienen 8 o 16 pines expuestos a través de la cabecera, que se conectan a la E/S de propósito general extra en la FPGA. Estos se pueden utilizar para dar salida a las señales internas de la FPGA a los pines que luego se pueden conectar a un alcance o analizador lógico. La pregunta que surge aquí es, qué tipo de conector utilizar ya que las señales de alta velocidad requieren que se tenga en cuenta la integridad de la señal. Ciertamente debemos elegir un conector al que se pueda conectar fácilmente un osciloscopio o un analizador lógico.
-
Disponga de resistencias de 1ohm en los raíles de alimentación que puedan utilizarse para medir con precisión la disipación de energía en todos los raíles de alimentación, especialmente los conectados a la FPGA.
-
Poner un chip FTDI que se puede utilizar para implementar USB-UART.
-
Tener un método fácil para que el prototipo se conecte a otra FPGA o placa de microcontrolador en caso de que surja la necesidad. Una forma de hacerlo es tener conectores de escudo Arduino en la placa, pero entonces debemos estar seguros de que lo que pretendemos conectar es compatible antes de hacer la PCB.
Estoy seguro de que la gente que ha hecho muchos prototipos de placas de circuito impreso y luego ha pasado a la producción puede dar su opinión sobre esta lista y sugerir algunas mejoras. Es cierto que las características también dependen de para qué se haya diseñado realmente la placa, por lo que las mismas técnicas pueden ser aplicables a todos los proyectos. Así que ahora mis preguntas son:
- ¿Hay alguna mejora con respecto a lo que he recomendado anteriormente?
- ¿Hay algunas características más allá de lo que he mencionado que deberían utilizarse?
- Tener mucha capacidad para ayudar a la depuración es una gran idea, pero crea un problema cuando llegamos a las pruebas de nivel de producción. El camino para pasar de la placa prototipo a la PCB de producción para las pruebas alfa, etc., debe ser sencillo.
Agradecería si alguien puede poner su granito de arena. Esta pregunta es MUY específica y no amplia o fuera de tema. Creo que ya he cubierto la mayoría de las cosas.
Gracias.