La última tecnología de software se puede utilizar para completar un diseño eficiente de placas de circuito paralelas. Esta nueva tecnología permite a múltiples diseñadores y diferentes tipos de herramientas trabajar simultáneamente en la misma base de datos de diseño y puede aumentar significativamente la productividad del diseño.
A diferencia del método tradicional de dividir el diseño en varias partes y completar cada una de forma independiente, esta nueva tecnología permite crear procesos paralelos en una base de datos pública y sincronizar automáticamente los cambios de proceso y resolver posibles conflictos entre ellos. Esta es la primera vez en la industria de eda.
Desde que el CAD fue ampliamente utilizado en el diseño de placas de circuito en la década de 1990, el campo de la fabricación ha estado aumentando continuamente la productividad del diseño a través de métodos de automatización y optimización de procesos. Desafortunadamente, a medida que la tecnología de software de diseño de circuitos continúa innovando, también aumenta la demanda de soporte para nuevas señales, componentes o tecnologías de fabricación a nivel de placa, por lo que todo el tiempo de diseño apenas se reduce (o incluso más).
Si el método de diseño no cambia fundamentalmente, el software siempre desempeñará el papel de seguidor de la tecnología de hardware, en lugar de convertirse en un líder en la curva de desarrollo. Varios ingenieros dedicados a la misma tecnología de diseño e ingeniería paralela han sido un arma mágica eficaz para los avances de la productividad. El enfoque tradicional de divide y vencerás divide el diseño en varias partes y lo asigna a cada ingeniero. Finalmente, conectar las secciones y hacer cumplir (tomar decisiones automáticamente de acuerdo con reglas predefinidas) o métodos ingeniosos (permitir que los ingenieros tomen decisiones automáticamente). Resolver conflictos uno por uno) resolver todos los conflictos.
Este método es muy eficaz para el diseño esquemático del circuito, ya que puede dividir el diseño directamente en varios módulos y páginas en función de la función. Aún así, este método requiere mucho trabajo manual para resolver problemas de interconexión entre módulos, como conflictos de nombres de señales, faltas de componentes, etc. estos errores son muy probables siempre que el diseñador no vea lo que está haciendo la otra parte.
Este método de diseño paralelo se puede implementar si un método de diseño paralelo permite que varios diseñadores realicen el mismo diseño al mismo tiempo, puede ver el contenido editado realizado por otros diseñadores y puede gestionar automáticamente varios conflictos potenciales en tiempo real. Flexibilidad y productividad óptimas.
Arquitectura de diseño paralelo
La nueva tecnología de diseño paralelo requiere un gestor de procesos de diseño (servidor) y varios clientes de diseño para ejecutarlo en un entorno de red. El trabajo principal del software del servidor es recibir las solicitudes de actualización de cada cliente, comprobar las solicitudes para asegurarse de que no se violan las reglas de diseño y luego sincronizar cada cliente de acuerdo con el contenido de la actualización.
Cada cliente debe tener su propio procesador y memoria dedicados. La nueva arquitectura de diseño paralelo también asume que el sistema de comunicación puede soportar el ancho de banda mínimo y la latencia máxima necesaria para el intercambio eficiente de información en tiempo real entre clientes y servidores. Cada cliente puede ver todo el diseño y observar estas ediciones mientras el servidor procesa otras ediciones del cliente. Diseñar una base de datos se puede almacenar en cualquier lugar de Internet.
Esta arquitectura de diseño paralelo permite a varios diseñadores de PCB realizar el mismo diseño al mismo tiempo sin tener que dividir el diseño lógicamente o de otra manera. Se trata de un verdadero entorno de diseño colaborativo en tiempo real en el que no se plantean todos los problemas relacionados con la gestión de la integridad de los datos durante las operaciones de División de límites y conexión de división.
Debido a que varios diseñadores pueden realizar el mismo diseño en paralelo sin restricciones, se puede acortar significativamente todo el ciclo de diseño.
Cada diseño tiene un equipo de diseño relevante, y solo los miembros del equipo pueden acceder a los datos de diseño. Cualquier miembro del equipo puede iniciar una reunión de diseño en el servidor y en un solo cliente. Otros clientes pueden asistir a la reunión en cualquier momento.
El diseño se carga inicialmente en el servidor. Cuando el cliente se une a la reunión y descarga automáticamente el estado actual del diseño del servidor a la memoria del cliente, el cliente se inicia y sincroniza. Una vez que el cliente se une a la reunión de diseño, puede editar el diseño utilizando las herramientas de edición estándar disponibles en la Aplicación.
El evento de edición es una actividad independiente iniciada por el cliente y enviada al servidor como solicitud de actualización. Por ejemplo, mover un elemento del punto a al punto B constituye un evento de edición. El inicio del evento es el elemento de selección, y el final del evento es indicar la nueva ubicación haciendo clic en el ratón (o entrada equivalente). El evento de edición se envía al servidor como transacción que describe lo que se va a eliminar y lo que se va a añadir.
Cada evento de edición generado por el cliente debe realizar una verificación de reglas de diseño local (drc) antes de enviarlo al servidor, y luego priorizar la solicitud de Edición de acuerdo con el principio de primero en entrar y entrar en la cola de mensajes de entrada. Una vez recibida la solicitud de edición, el servidor la integra en la base de datos de diseño y luego realiza el drc. Si no se encuentra ningún problema, se aprueba la solicitud de edición y se envía a todos los clientes a través de la cola de mensajes de salida para sincronizar la base de datos central interna del cliente.
La mayor parte del tiempo de cálculo se pasa en clientes locales. Añadir, editar y eliminar objetos objetivo en el cliente y realizar simultáneamente todas las tareas automáticas relacionadas con estas ediciones (como empujar, exprimir y suavizar). En comparación con los clientes, la carga del servidor es relativamente ligera, por lo que no afectará el rendimiento del sistema. Las pruebas en este entorno han demostrado que el servidor responde muy rápido y no reduce la velocidad del cliente.
La segunda aplicación de la tecnología de diseño paralelo es el cableado automático de placas de circuito. El cableado automático distribuido ha sido un arma poderosa para el software de cableado de placas de circuito durante muchos años. Los routers IC se han convertido en entornos distribuidos para su ejecución en el pasado. Sin embargo, los problemas de cableado de las placas de circuito son muy diferentes. Hasta ahora, la gente todavía cree que los routers automáticos deben adaptarse para aprovechar al máximo múltiples computadoras para lograr las mismas ventajas de diseño. Los proveedores de software y los ingenieros de terceros también han intentado varias veces lograr mejoras de rendimiento aceptables, pero ambas han terminado en fracaso.
La arquitectura adoptada por la nueva tecnología de diseño paralelo puede resolver la mayoría de los problemas clave en un entorno de cableado distribuido y saber cómo prevenir o resolver conflictos. Del mismo modo, el servidor desempeña el papel de gestión del proceso de diseño, y las solicitudes de cada cliente de enrutador automático se integran, revisan y transmiten a otros clientes en el servidor. Todos los clientes de enrutadores automáticos se mantienen sincronizados, por lo que cuando se agregan nuevas rutas de enrutamiento localmente, la probabilidad de conflicto de rutas de enrutamiento es muy pequeña.
Herramientas integradas y eficientes
Debido a que el diseño de circuitos es un proceso que incluye muchos pasos y reglas, para obtener una excelente productividad, es necesario integrar estrechamente las herramientas puntuales más eficientes. Los datos y las reglas deben fluir sin problemas durante todo el proceso de diseño.
En los últimos 20 años, la industria EDA ha generado fusiones y adquisiciones sin precedentes. Por lo tanto, el proceso de diseño de los proveedores de software depende de la integración de muchas herramientas. Además, las grandes empresas de PCB necesitan integrar las herramientas de muchos proveedores de software en sus propios procesos de diseño únicos.
La medida conveniente es escribir una interfaz a través de la cual convertir la salida ASCII de una herramienta en el formato de entrada ASCII de otras herramientas. Al hacerlo, se generarán cientos de interfaces ascii, cada una de las cuales se utilizará para superar los problemas comunes de incompatibilidad de modelos y reglas de datos.
El requisito básico de este método de integración es que todas las aplicaciones deben tener modelos de datos completamente compatibles. Cada aplicación puede usar diferentes herramientas y diferentes herramientas de automatización para procesar los datos, pero cada aplicación debe ser capaz de recibir cambios e identificarlos para que puedan saber qué hacer a continuación.
También se pueden utilizar técnicas de diseño paralelo para integrar aplicaciones para realizar un conjunto específico de tareas, como la producción, colocación, cableado y Edición de componentes integrados. Si es así, entonces la aplicación puede limitarse automáticamente a permitir solo estas funciones específicas.
Diseño de circuitos y placas
Combinando el diseño paralelo con las tecnologías necesarias para la integración paralela, se puede formar un entorno en el que múltiples aplicaciones diferentes en el proceso de diseño pueden ser integradas y utilizadas simultáneamente por múltiples diseñadores.
Debido a que varias aplicaciones se ejecutan simultáneamente, los ingenieros de PCB pueden comprender rápidamente el impacto de la integridad de la señal de la ruta de adición. Por ejemplo, en un sistema mecánico tridimensional de diseño de teléfono móvil, se pueden actualizar e inspeccionar inmediatamente las acciones de los componentes de PCB en el diseño.