L'ultima tecnologia software può essere utilizzata per completare la progettazione efficiente del circuito parallelo. Questa nuova tecnologia consente a più progettisti e diversi tipi di strumenti di lavorare sullo stesso database di progettazione allo stesso tempo e può migliorare significativamente la produttività del progetto.
A differenza del metodo tradizionale di dividere il progetto in più parti e completare ogni parte in modo indipendente, questa nuova tecnologia può creare processi paralleli su un database comune e può sincronizzare automaticamente le modifiche di processo e risolvere eventuali conflitti tra di loro. Questa è la prima nel settore EDA.
Dalla diffusa adozione del CAD nella progettazione di circuiti stampati negli anni '90, il settore manifatturiero ha costantemente migliorato la produttività di progettazione attraverso l'automazione e i metodi di ottimizzazione dei processi. Purtroppo, con la continua innovazione della tecnologia software di progettazione di circuiti, la domanda di supporto di nuovi segnali, componenti o tecnologie di produzione a livello di scheda è anche in aumento, quindi l'intero tempo di progettazione è stato difficilmente abbreviato (o anche più a lungo).
Se non ci sono cambiamenti fondamentali nella metodologia di progettazione, il software giocherà sempre il ruolo di un seguace della tecnologia hardware, piuttosto che diventare leader nella curva di sviluppo. Molteplici ingegneri impegnati nella stessa progettazione e tecnologia di ingegneria parallela sono sempre stati un'arma magica efficace per le innovazioni in termini di produttività. Il metodo tradizionale divide e conquista divide il progetto in più parti e li assegna alle mani di ogni ingegnere. Infine, le parti sono collegate e applicate (le decisioni vengono prese automaticamente secondo regole predefinite) o metodi ingegnosi (permettendo agli ingegneri di prendere decisioni automaticamente). Risolvere i conflitti uno per uno) Risolvere tutti i conflitti.
Questo metodo è abbastanza efficace per la progettazione schematica del circuito, perché può dividere direttamente il design in più moduli e pagine in base alle funzioni. Anche così, questo metodo richiede ancora un sacco di lavoro manuale per risolvere i problemi di interconnessione tra i moduli, come conflitti di nome del segnale, componenti mancanti e così via. Finché i progettisti non riescono a vedere cosa stanno facendo, questi errori possono verificarsi.
Se un metodo di progettazione parallela consente a più progettisti di realizzare lo stesso disegno allo stesso tempo, può vedere il contenuto di modifica fatto da altri progettisti e può gestire automaticamente vari potenziali conflitti in tempo reale, allora questo metodo di progettazione parallela può essere raggiunto. Flessibilità e produttività ottimali.
Architettura di progettazione parallela
La nuova tecnologia di progettazione parallela richiede un gestore di processo di progettazione (server) e più client di progettazione da eseguire in un ambiente di rete. Il compito principale del software server è quello di ricevere richieste di aggiornamento da ogni client, controllare le richieste per assicurarsi che le regole di progettazione non siano violate e quindi sincronizzare ogni client in base al contenuto dell'aggiornamento.
Ogni client deve avere il proprio processore e memoria dedicati. La nuova architettura di progettazione parallela presuppone inoltre che il sistema di comunicazione possa supportare la larghezza di banda minima e il massimo ritardo necessari per uno scambio di informazioni in tempo reale ed efficiente tra client e server. Ogni client può vedere l'intero design e osservare le altre modifiche client mentre il server le elabora. Il database di progettazione può essere memorizzato ovunque su Internet.
Questa architettura di progettazione parallela consente a più progettisti di PCB di realizzare lo stesso progetto contemporaneamente senza dover dividere il progetto logicamente o in qualsiasi altro modo. Si tratta di un ambiente di progettazione collaborativa realmente in tempo reale, in cui non si presenteranno tutte le questioni relative ai confini della segmentazione e alla gestione dell'integrità dei dati durante le operazioni di segmentazione-connessione.
Poiché più progettisti possono realizzare lo stesso progetto in parallelo senza restrizioni, l'intero ciclo di progettazione può essere significativamente abbreviato.
Ogni progetto ha un team di progettazione correlato e solo i membri del team possono accedere ai dati di progettazione. Qualsiasi membro del team può avviare una riunione di progettazione sul server e su un singolo client. Altri clienti possono partecipare alla conferenza in qualsiasi momento.
Il design viene inizialmente caricato sul server. Quando il client si unisce alla riunione e scarica automaticamente lo stato corrente della progettazione del server nella memoria del client, il client viene inizializzato e sincronizzato. Una volta che il client si unisce alla riunione di progettazione, può modificare il progetto utilizzando gli strumenti di modifica standard disponibili nell'applicazione.
L'evento di modifica è un'attività indipendente avviata dal client e viene inviato al server come richiesta di aggiornamento. Ad esempio, spostare un elemento dal punto A al punto B costituisce un evento di modifica. L'inizio dell'evento è quello di selezionare l'elemento, e la fine dell'evento è quello di indicare la nuova posizione con un clic del mouse (o input equivalente). L'evento di modifica viene inviato al server come transazione, che descrive cosa eliminare e cosa aggiungere.
Ogni evento di modifica generato dal client deve eseguire un controllo locale delle regole di progettazione (DRC) prima di essere inviato al server, quindi impostare la priorità della richiesta di modifica e immettere la coda dei messaggi di input secondo il principio di primo in primo uscita. Dopo aver ricevuto la richiesta di modifica, il server la integra nel database di progettazione e quindi esegue DRC. Se non si riscontrano problemi, la richiesta di modifica viene approvata e inviata a tutti i client attraverso la coda dei messaggi di output per la sincronizzazione del database core interno del client.
La maggior parte del tempo di calcolo viene speso sul client locale. Gli oggetti di destinazione vengono aggiunti, modificati ed eliminati dal lato client e tutte le attività automatiche relative a tali modifiche (come spingere, comprimere e levigare) vengono eseguite contemporaneamente. Rispetto al client, il carico del server è relativamente più leggero, quindi le prestazioni del sistema non saranno influenzate. Test di questo ambiente mostra che la velocità di risposta del server è molto veloce e non rallenterà la velocità del client.
La seconda applicazione della tecnologia di progettazione parallela è il cablaggio automatico dei circuiti stampati. Il cablaggio automatico distribuito è stato un'arma potente per il software di cablaggio del circuito stampato per molti anni. Il router IC è stato convertito in un ambiente distribuito per l'esecuzione in passato. Tuttavia, il problema del cablaggio del circuito stampato è molto diverso. Fino ad ora, la gente pensa ancora che il router automatico debba essere adattato per fare pieno uso di più computer per completare lo stesso vantaggio progettuale. Anche i fornitori di software e gli ingegneri di terze parti hanno fatto molti tentativi per ottenere miglioramenti accettabili delle prestazioni, ma tutti sono finiti in fallimento.
L'architettura adottata dalla nuova tecnologia di progettazione parallela può risolvere la maggior parte dei problemi chiave nell'ambiente di cablaggio distribuito e sa come prevenire o risolvere i conflitti. Allo stesso modo, il server svolge il ruolo di gestione del processo di progettazione e le richieste di ciascun client di auto-router vengono integrate, controllate e trasmesse ad altri client nel server. Tutti i client auto-router sono mantenuti sincronizzati, quindi quando viene aggiunto un nuovo percorso di cablaggio localmente, la probabilità di conflitti di percorso di cablaggio è piccola.
Integrare strumenti efficienti
Poiché la progettazione del circuito è un processo che prevede molti passaggi e regole, al fine di ottenere un'eccellente produttività, gli utensili punta più efficienti devono essere strettamente integrati. I dati e le regole devono fluire senza intoppi durante tutto il processo di progettazione.
Negli ultimi 20 anni, il settore EDA ha prodotto fusioni e acquisizioni senza precedenti. Di conseguenza, il processo di progettazione dei fornitori di software si basa sull'integrazione di molti strumenti. Inoltre, le grandi aziende di PCB richiedono che gli strumenti di molti fornitori di software siano integrati nei loro processi di progettazione unici.
La misura utile è quella di scrivere un'interfaccia attraverso la quale l'output ASCII di uno strumento viene convertito nel formato di input ASCII di altri strumenti. In questo modo si produrranno centinaia di interfacce ASCII, ognuna delle quali viene utilizzata per superare i comuni modelli di dati e gestire problemi di incompatibilità.
Il requisito di base di questo metodo di integrazione è che tutte le applicazioni devono avere un modello di dati completamente compatibile. Ogni applicazione può utilizzare diversi strumenti e diversi strumenti automatizzati per elaborare i dati, ma ogni applicazione deve essere in grado di ricevere le modifiche e riconoscerle, in modo da sapere cosa fare dopo.
È anche possibile utilizzare tecniche di progettazione parallela per integrare un'applicazione per eseguire una serie specifica di attività, come creazione, posizionamento, instradamento e modifica di componenti incorporati. In tal caso, tale applicazione può essere automaticamente limitata per consentire solo l'uso di tali funzioni specifiche.
Progettazione di circuiti e schede
Combinare le tecnologie necessarie per il layout parallelo e l'integrazione parallela può formare un ambiente in cui più applicazioni diverse nel processo di progettazione possono essere integrate e utilizzate da più progettisti allo stesso tempo.
Poiché più applicazioni sono in esecuzione contemporaneamente, gli ingegneri PCB possono comprendere rapidamente gli effetti di integrità del segnale dei percorsi aggiunti. Ad esempio, nel sistema meccanico tridimensionale di progettazione del telefono cellulare, le azioni dei componenti PCB nel layout possono essere aggiornate e verificate immediatamente.