Diseño de Tarjetas Periféricas Personalizadas para NanoBoard

Ben Jordan
|  Creado: Febrero 21, 2017  |  Actualizado: Noviembre 11, 2020

Si quieres añadir funcionalidad de hardware personalizado a tu NanoBoard®, ¿por qué no crear tu propia tarjeta periférica adicional? Este consejo técnico de dos partes detalla la manera fácil de crear tu propia tarjeta personalizada para usar con Altium Designer®.

Parte 1: Creando tu propia plantilla de tarjeta periférica

En esta primera entrega de este consejo técnico de dos partes, veremos cómo empezar con el diseño del PCB, comenzando con el diseño de referencia PB30 y modificándolo para formar una plantilla para tu tarjeta periférica personalizada. Junto con eso, discutiremos algunas de las conexiones de IO disponibles para periféricos personalizados.

En la próxima entrega discutiremos el proceso de registro y cómo empezar con tus diseños FPGA usando la nueva tarjeta periférica que has creado.

El NB2 y el NB3000 son utilizados por muchas escuelas de ingeniería, individuos y equipos de diseño corporativo para explorar y dar vida a nuevas ideas de diseño.

El NB3000 ha sido particularmente popular, no solo por su atractivo precio, sino también gracias a su extenso conjunto de dispositivos y opciones de IO. Estos incluyen USB (Host y Esclavo), LEDs RGB, pantalla táctil TFT, interruptores de relevo aislados, ADCs, DACs, RS-485, RS-232, Ethernet, MIDI, SVGA y audio de alta definición IO, ¡solo por nombrar algunos!

Ambos NanoBoards son placas de desarrollo extensibles, teniendo ubicaciones de tarjetas hijas periféricas para agregar capacidad de IO extra. Al momento de escribir este consejo técnico, hay cuatro tarjetas periféricas disponibles de Altium: la PB01 de tamaño completo (códec de audio, IO de video analógico), la PB02 (tarjeta de almacenamiento masivo con SD, CF, ATA, etc.), la PB03 (Ethernet, USB, IrDA) y la PB30 - una tarjeta de tamaño completo con el conector necesario para el NB2/NB3000 y varias áreas de prototipado diferentes para construir circuitos adicionales simples.

Easy, Powerful, Modern

The world’s most trusted PCB design system.

Mientras que la tarjeta de prototipado es un gran punto de partida para probar circuitos simples con conexión al NanoBoard NB3000, diseñar tu propia tarjeta periférica te brinda posibilidades ilimitadas.

En esta primera entrega de este consejo técnico de dos partes, veremos cómo comenzar con el diseño de PCB, empezando con el diseño de referencia PB30 y modificándolo para formar una plantilla para su placa periférica personalizada. Junto con eso, discutiremos algunas de las conexiones IO disponibles para periféricos personalizados. En la próxima entrega, hablaremos sobre el proceso de registro y cómo comenzar con sus diseños FPGA utilizando la nueva placa periférica que ha creado.

Preparando los archivos de la placa periférica

El primer paso es construir la plantilla para la placa periférica, y en este consejo técnico la basaremos en la PB30, porque esta placa está orientada de tal manera que el Nanoconector de Altium está en la parte superior izquierda, y la serigrafía generalmente se muestra en la orientación correcta cuando está enchufada en el NanoBoard NB3000. Si está utilizando el NanoBoard NB2, el espacio para la placa periférica de tamaño completo se encuentra en la parte superior, en cuyo caso la placa PB-01 (Audio, Video) sería una buena elección, ya que su orientación está rotada 180 grados.

La versión actual de Altium tiene la ubicación predeterminada del diseño de referencia PB30 en “C:\Program Files\Altium Summer 09\Examples\Reference Designs\PB30\”.

Easy, Powerful, Modern

The world’s most trusted PCB design system.

Copia la carpeta entera de la tarjeta periférica y renómbrala para tu plantilla. En este caso, la hemos llamado PBUSER:

También deberías renombrar los archivos reales en el proyecto. Una manera rápida de hacer esto es usando el viejo comando DOS RENAME con algunos comodines:

Ahora, si abres el Proyecto PBUSER.PrjPCB en Altium, recibirás una advertencia por cada documento que anteriormente era miembro del proyecto de que ya no se encuentra, y será eliminado.

Esto es porque renombramos cada uno de esos archivos (adecuadamente). Está bien, porque todo lo que necesitamos hacer es volver a agregarlos al proyecto usando el comando Proyecto» Agregar Existente al Proyecto..., seleccionando todos los archivos PBUSER*.* y haciendo clic en OK.

Ahora, tenemos un duplicado completo del PB30, la única diferencia es que el proyecto y todos sus archivos han sido renombrados.

Easy, Powerful, Modern

The world’s most trusted PCB design system.

El siguiente paso es eliminar el área de prototipado del diseño. Eso es relativamente fácil porque en realidad es un componente que podemos quitar del esquemático designado PROTO1. El diseño de referencia PB30 también contiene un componente esquemático que es una referencia a la PCB fabricada. Esto permite generar un ensamblaje completo donde la propia PCB es uno de los componentes necesarios para ensamblar el producto. Sin embargo, en la plantilla que estamos creando ya no es relevante, así que también lo eliminaremos.

El diseño PB30 también contiene el PROM de 1 hilo utilizado para la identificación y registro de la placa con Altium, lo que permite que las restricciones para el diseño FPGA se configuren automáticamente. Dejaremos ese elemento en el diseño, ya que queremos esa capacidad para nuestro PB personalizado. Una vez que hayamos eliminado lo superfluo del esquemático, hacer clic en Diseño» Actualizar Documento PCB PBUSER.PcbDoc lanzará el proceso ECO para trasladar los cambios al PCB y, en última instancia, eliminar esos elementos no deseados. Al ejecutar este comando, puede que recibas una advertencia de que algunos componentes no pudieron coincidir usando identificadores únicos. En ese caso, haz clic en Sí para permitir que la sincronización continúe. Del mismo modo, si se te solicita hacer coincidir clases de componentes, haz clic en No. (Estos problemas también se resolverán simplemente ejecutando el proceso ECO).

Puedes ver, al mirar el ECO antes de ejecutarlo, que eliminará todas las almohadillas de componentes innecesarias de la lista de conexiones, la huella del componente PROTO1 (que es toda el área de prototipado), así como la clase de componente redundante y la sala. Se añadirá una nueva clase de componente y una nueva sala, ambas nombradas a partir de los nuevos archivos de diseño. Ejecutar el ECO finaliza este proceso y abre el diseño actualizado del PCB.

Puede ver aquí que el trazado original de la zona de prototipos permanece, incluidas las gotas de lágrima. Podemos eliminar el trazado utilizando Herramientas» Desconectar» Todo. Para eliminar las gotas de lágrima, necesitamos seleccionarlas con un cuadro y simplemente presionar Eliminar.

Como parte del proceso ECO, se agregó una nueva Habitación a la placa, nombrada después del esquemático de nivel superior (en este caso PBUSER Double_Sized_Proto_Board). Si no desea usar habitaciones, simplemente puede seleccionarla y eliminarla. De lo contrario, selecciónela y arrastre su esquina superior derecha para que su área cubra la placa.

Puede notar que hay dos documentos PCB en este proyecto - PBUSER.PcbDoc que es este PCB, y PBUSERPanel.PcbDoc. PBUSERPanel.PcbDoc es una versión panelizada de dos por dos del diseño principal del PCB, utilizando un Arreglo de Placas Incrustadas. Como se refiere al PCB principal, hay muy pocas modificaciones necesarias para hacer. El propio Arreglo Incrustado necesita ser actualizado para apuntar al nuevo documento PCB. Esto se hace haciendo doble clic en el arreglo (que parece un pequeño rectángulo gris) y especificando el nuevo nombre de archivo PCB:

Cuando el arreglo apunta hacia la nueva placa en blanco, puedes verlos adecuadamente dentro del panel:

En este punto, cualquier cadena de texto que haga referencia a “PB30” también debería cambiarse para reflejar el nombre de esta nueva placa. Incluso podrías optar por usar cadenas especiales como reemplazo para que puedan ser actualizadas automáticamente desde un parámetro del proyecto - especialmente útil si esto se utiliza como plantilla para muchos diseños nuevos.

Además, el código de barras en la capa de Superposición Superior es simplemente una cadena con fuente de código de barras. Para las placas de Altium, es simplemente el nombre de la placa. En este caso, debería actualizarse a PBUSER, pero puedes hacer que coincida con el nombre de la parte de tu placa periférica que será.

Creando la plantilla

Una vez que los archivos actualizados y el proyecto han sido guardados, están listos para ser utilizados como base para cualquier nuevo diseño de placa periférica personalizada. También pueden usarse juntos como una plantilla de proyecto, copiando el proyecto y sus archivos en la carpeta Templates de la instalación de Altium. Luego, desde el panel Files en Altium, haz clic en PCB Projects, y en el panel New From Template haz clic en PCB Projects... y busca el proyecto PBUSER.PrjPcb en la carpeta Templates. Cuando guardes el nuevo proyecto creado, se te pedirá que elijas una nueva ubicación para guardar el proyecto y todos los documentos fuente de la plantilla.

Intercambio de pines y el NanoConnector

Uno de los principales beneficios de usar esta plantilla es que el componente esquemático que representa al Nanoconector utilizado para interfaz con el NB3000 o NB2 host está preconfigurado con todas las asignaciones de pines apropiadas para los IOs de función fija del host, tales como Audio, SPI, I2C y el reloj del host. Además, las cadenas de JTAG duro y blando del sistema están enrutadas al Nanoconector de la placa periférica junto con una línea de habilitación, lo que facilita enormemente la adición de FPGAs adicionales, microcontroladores o dispositivos de escaneo de límites al sistema. Por supuesto, también se proporcionan los rieles de suministro de energía del . Los voltajes disponibles son 1.2V, 1.8V, 2.5V, 3.3V y 5V.

Además de los IOs de función fija, un lado del Nanoconector está dedicado a IOs digitales de propósito general, que finalmente se conectan al FPGA del usuario en el NB3000 (o NB2). Estos pines en el componente Nanoconector en el diseño (designados HDR1) están preconfigurados para ser intercambiables. Esto es especialmente útil ya que el enrutamiento alrededor del conector puede ser bastante denso debido a su fino paso. No hay ningún truco mágico para usar esta capacidad - en el ejemplo mostrado a continuación, el intercambiador de pines se ejecutó desde Herramientas» Intercambio de Pin/Parte» Optimizador Automático de Red/Pin, y los cambios resultantes se retroalimentaron al esquemático a través del proceso de ECO inverso usando Diseño» Actualizar Esquemáticos En <proyecto>.

Puede ser útil ejecutar el intercambiador de pines varias veces a lo largo del proceso de enrutamiento de la placa, a medida que su trabajo de pistas se acerca a los puntos de finalización. Esto ayuda a eliminar cruces y acelera mucho el proceso de crear su periférico personalizado. El ejemplo anterior se completó en solo un par de días, y a continuación se muestra una vista en 3D:

Un punto final y muy importante sobre el Nanoconector es que está disponible desde Altium en cualquier parte del mundo a bajo costo (y con descuentos por volumen). El número de pedido para este conector en la placa periférica es 99-400-NBC (se proporciona un tubo de nueve conectores).

...y el próximo mes llegará

Bueno, eso concluye la primera parte de este consejo técnico. Y una vez que hayas pasado por este proceso y creado tu plantilla, y por supuesto personalizado con los logotipos de tu propia empresa, etc., es un asunto simple crear tantas placas periféricas personalizadas como desees.

En la próxima parte de este Consejo Técnico, descubrirás los aspectos "suaves" de usar tu nueva placa personalizada con un - cómo crear un archivo de restricciones reutilizable, darle personalidad a la tarjeta con el PROM de 1-hilo, y crear un puerto-plug-in correspondiente para usar con tus proyectos de FPGA.

Sobre el autor / Sobre la autora

Sobre el autor / Sobre la autora

Ben es un ingeniero de sistemas informáticos y PCB con más de 20 años de experiencia en sistemas integrados, FPGA y diseño de PCB. Es un ávido manipulador y un apasionado de la creación de dispositivos electrónicos de todo tipo. Ben tiene una licenciatura en ingeniería ( CompSysEng) con honores de primera clase de la Universidad del Sur de Queensland y actualmente es Director de Herramientas y Contenido de la Comunidad.

Recursos Relacionados

Documentación técnica relacionada

Volver a la Pàgina de Inicio
Thank you, you are now subscribed to updates.
Altium Need Help?