Una volta che i moduli sono stati collegati tra loro nello schema multi-board, è possibile verificare la connettività board-to-board. Questo consente di rilevare errori di assegnazione net-pin ed errori di cablaggio nelle interconnessioni pin-to-pin. Questi errori possono essere risolti e le correzioni propagate ai progetti PCB interessati oppure riportate allo schema di sistema sorgente.
Altium Designer può controllare il progetto multi-board per rilevare errori logici, elettrici e di drafting tra il contenuto del progetto e le impostazioni di verifica del progetto. È possibile eseguire diversi controlli sul progetto multi-board validato. Questi riguardano violazioni relative alle connessioni tra i moduli nel foglio, nonché problemi associati alle parti accoppiate, e tali controlli vengono configurati come parte delle opzioni del progetto.
Configurazione delle opzioni di verifica ed esecuzione della validazione
Selezionare il comando Project » Project Options dal menu principale per aprire la finestra di dialogo Project Options e selezionare la relativa scheda Error Reporting tab. Il Report Mode di ciascuna violazione può essere modificato in uno di quattro valori facendo clic su di esso e selezionando il valore desiderato dal menu a discesa.

Configurare i controlli di violazione richiesti nella scheda Error Reporting della finestra di dialogo Project Options.
Per validare il progetto multi-board, scegliere il comando Design » Run ERC dal menu principale o dal menu contestuale dell'area di progettazione.

Validare il progetto multi-board utilizzando il comando Run ERC.
Interpretazione dei messaggi e individuazione delle violazioni
Se nel progetto vengono rilevati errori e avvisi di validazione, viene visualizzata una notifica nel pannello Messages.
Si noti che il pannello Messages si aprirà automaticamente solo se è presente almeno una condizione di Error o Fatal Error. Per verificare la presenza di un Warning, sarà necessario aprire manualmente il pannello facendo clic sul pulsante
in basso a destra nell'area di progettazione e scegliendo Messages. Una volta validato il progetto, il pannello elencherà tutti gli avvisi e gli errori rilevati.

Il pannello Messages visualizza gli avvisi e gli errori rilevati nel progetto multi-board.
Il pannello Messages è il centro di comando per la presentazione delle violazioni. Ecco alcuni aspetti da tenere presenti:
-
Il pannello Messages ha due aree: la griglia superiore riepiloga le violazioni; l'area inferiore fornisce i dettagli della violazione attualmente selezionata.
-
Fare doppio clic su un messaggio per eseguire il cross-probe verso quella violazione. Fare doppio clic su un dettaglio per mostrare quello specifico oggetto.
-
È possibile fare clic su una qualsiasi delle intestazioni di colonna del pannello Messages (ad esempio, Class, Document, Message) per facilitare l'ordinamento di errori e avvisi.
-
Fare clic con il pulsante destro nel pannello Messages quindi utilizzare le opzioni del sottomenu Group By per raggruppare errori e avvisi in base a criteri specifici.
-
Fare clic con il pulsante destro nel pannello Messages quindi utilizzare il comando Clear appropriato per eliminare i messaggi oppure usare il comando Export To Report per esportare i messaggi in un report.
L'eliminazione dei messaggi non significa necessariamente che siano stati risolti. Gli stessi messaggi non risolti verranno elencati nuovamente dopo aver eseguito di nuovo la validazione. La cancellazione dei messaggi è un aiuto visivo durante la risoluzione degli errori nel progetto, che consente di rimuovere manualmente i messaggi quando si ritiene che siano stati risolti. È necessario avviare nuovamente la validazione per ottenere un quadro aggiornato delle eventuali violazioni ancora esistenti.
Tipi di violazione nel progetto multi-board
Le sezioni seguenti includono informazioni dettagliate su ciascun controllo di violazione disponibile per i progetti multi-board.
Violazioni associate alle connessioni
Different Net Names
Questa violazione si verifica quando il nome della net associata a una connessione nello schema multi-board non è lo stesso della net associata al pin corrispondente del connettore nel progetto di progettazione figlio.
Notifica
Nel pannello Messages viene visualizzata una notifica nel seguente formato:
Net Name "<ConnectionNetName>" for connection "<ConnectionDesignator>" does not match with Net "<ConnectorPinNetName>" of "Pin <ConnectorDesignator-PinNumber>" in child project "Module <ModuleDesignator>(<ChildProjectName>)"
dove:
-
ConnectionNetName – il nome della net (nello schema multi-board) associata alla connessione che parte dal pin indicato.
-
ConnectionDesignator – il designatore della connessione.
-
ConnectorPinNetName – il nome della net associata al pin indicato del connettore nel progetto di progettazione figlio.
-
ConnectorDesignator-PinNumber – il designatore del componente connettore nel progetto figlio rappresentato dall'entry del modulo e il pin di quel connettore.
-
ModuleDesignator – il designatore del modulo nello schema multi-board utilizzato per fare riferimento al progetto di progettazione figlio.
-
ChildProjectName – il nome, inclusa l'estensione, del progetto figlio referenziato dal modulo.
Raccomandazione per la risoluzione
Questa violazione si verifica tipicamente quando il nome della net sul pin del connettore in un progetto figlio è diverso da quello del pin del connettore accoppiato in un altro progetto figlio, cioè le due schede collegate da una connessione tra i moduli padre pertinenti nel documento di schema multi-board.
Utilizzare la finestra di dialogo Connection Manager per visualizzare i nomi delle net attualmente in uso. La voce Net Name mostra il nome utilizzato per la connessione nel documento di schema multi-board. Con la connessione selezionata, questo può essere visto anche visivamente nell'area Conflict Resolution della finestra di dialogo. Quando i pin del connettore hanno net diverse associate in entrambi i progetti figlio, il Net Name per la connessione assume per impostazione predefinita il valore <FromPinNetName>/<ToPinNetName>. Questi nomi di net sono riportati nei campi Module Net per i pin From e To, rispettivamente. La risoluzione può avvenire in due modi:
-
Utilizzare i pulsanti
nell'area Conflict Resolution per entrambi i moduli per impostare rapidamente, in ciascun caso, la net del modulo in modo che corrisponda al nome della net della connessione. Quindi applicare le modifiche e riportarle ai progetti figlio utilizzando il comando Design » Update Child Projects. Le net associate ai rispettivi pin del connettore in tali progetti verranno aggiornate di conseguenza tramite un ECO.
-
Modificare il nome della net associata al pin del connettore pertinente in uno dei progetti figlio in modo che corrisponda a quello utilizzato per il pin del connettore nell'altro progetto. Quindi compilare il progetto figlio e riportare la modifica allo schema multi-board utilizzando il comando Design » Import From Child Projects. Il nome della net per la connessione verrà aggiornato di conseguenza tramite un ECO.
Fare riferimento alla pagina Working with Connections per saperne di più sull'utilizzo della finestra di dialogo Connection Manager.
No Net
Questa violazione si verifica quando un pin del connettore rappresentato in un'entry del modulo nello schema multi-board non è collegato ad alcuna net nel progetto di progettazione figlio referenziato da quel modulo.
Notifica
Nel pannello Messages viene visualizzata una notifica nel seguente formato:
"Pin <ConnectorDesignator-PinNumber>" is not connected in child project "Module <ModuleDesignator>(<ChildProjectName>)"
dove:
-
ConnectorDesignator-PinNumber – il designatore del componente connettore nel progetto figlio rappresentato dall'entry del modulo e il pin problematico di quel connettore.
-
ModuleDesignator – il designatore del modulo nello schema multi-board utilizzato per fare riferimento al progetto di progettazione figlio.
-
ChildProjectName – il nome, inclusa l'estensione, del progetto figlio referenziato dal modulo e contenente il connettore il cui pin indicato non è collegato a una net.
Raccomandazione per la risoluzione
Questa violazione può verificarsi in diverse situazioni. Considerare quanto segue durante la risoluzione di una violazione di questo tipo:
-
Se il pin del connettore referenziato non deve essere utilizzato nel progetto, collegarlo alla linea di alimentazione appropriata (ad esempio, GND).
-
Assicurarsi che qualsiasi cablaggio verso il pin del connettore realizzi un contatto elettrico, cioè che il filo o il bus si colleghi all'hot spot elettrico del pin.
-
Se si prevede che il pin del connettore abbia un filo corto e una net label, assicurarsi che la net label esista e sia stata collegata correttamente al filo.
Unresolved Conflict
Questa violazione si verifica quando esiste un conflitto nella connettività tra due schede collegate nel sistema.
Notifica
Nel pannello Messages viene visualizzata una notifica nel seguente formato:
Unresolved conflict exists: Net "<OldModuleNetName>" has been renamed to "<NewModuleNetName>" for "Pin <ConnectorDesignator-PinNumber>" in child project "Module <ModuleDesignator>(<ChildProjectName>)"
dove:
-
OldModuleNetName – il nome della net associata al pin indicato del connettore nel progetto di progettazione figlio, attualmente presente nella mappa dati di connettività esistente dell'editor di schema multi-board.
-
NewModuleNetName – il nome della net ora associata al pin indicato del connettore nel progetto di progettazione figlio, dopo l'importazione delle modifiche apportate a quel progetto figlio.
-
ConnectorDesignator-PinNumber – il designatore del componente connettore nel progetto figlio rappresentato dall'entry del modulo e il pin di quel connettore.
-
ModuleDesignator – è il designatore del modulo nello schema multi-board utilizzato per fare riferimento al progetto di progettazione figlio.
-
ChildProjectName – è il nome, inclusa l'estensione, del progetto figlio referenziato dal modulo.
Raccomandazione per la risoluzione
Questa violazione si verifica tipicamente quando è stata apportata una modifica relativa al connettore in un progetto figlio e, quando tale modifica viene importata nuovamente nel documento di schema multi-board, interrompe la connettività esistente definita tra due schede collegate. Ad esempio, le net assegnate a due pin del connettore potrebbero essere state scambiate in un progetto figlio, il che significa che ora esiste una mancata corrispondenza seguendo quei pin fino al connettore di un'altra scheda di destinazione.
Usa la finestra di dialogo Connection Manager per visualizzare i conflitti non risolti. L’elenco nella finestra di dialogo Connection Manager evidenzierà tutte le connessioni considerate in conflitto oppure, in pratica, qualsiasi aggiornamento di connessione importato che non corrisponde alla mappa dei dati di connettività esistente dell’editor Multi-board Schematic.
Fai riferimento alla pagina Working with Connections per saperne di più sull’utilizzo della finestra di dialogo Connection Manager e sulle opzioni disponibili per la risoluzione dei conflitti.
Violazioni associate alle parti accoppiate
Entry Is Empty
Questa violazione si verifica quando una voce del modulo al momento non fa riferimento a un componente connettore nel progetto di progettazione figlio a cui fa riferimento il relativo modulo padre.
Notifica
Nel pannello Messages viene visualizzata una notifica nel seguente formato:
Entry "<EntryDesignator>" is empty in "Module <ModuleDesignator>(<ChildProjectName>)"
dove:
-
EntryDesignator – il designatore della voce del modulo che causa la violazione.
-
ModuleDesignator – il designatore del modulo nello schema multi-board utilizzato per fare riferimento al progetto di progettazione figlio.
-
ChildProjectName – il nome, inclusa l’estensione, del progetto figlio a cui fa riferimento il modulo.
Raccomandazione per la risoluzione
Questa violazione può verificarsi quando:
-
Un componente connettore nel progetto figlio referenziato e attualmente associato a una voce di modulo esistente ha avuto rimosso il relativo parametro speciale System:Connector, e tale modifica è stata importata inavvertitamente nel documento dello schema multi-board. In questo caso, aggiungi nuovamente il parametro al componente e quindi importa di nuovo la modifica nel documento dello schema multi-board.
-
Una nuova voce è stata inserita manualmente all’interno del modulo padre. In questo caso, importa le modifiche dal progetto figlio per sincronizzare le voci richieste con i rispettivi connettori sottostanti e quindi rimuovi la voce ridondante.
In genere, è opportuno assicurarsi che il/i connettore/i nel progetto figlio siano stati posizionati e abbiano ricevuto il parametro System:Connector. Quindi usa uno dei comandi Import from Child Project per fare in modo che le voci vengano create automaticamente nel modulo padre vuoto/shell che fa riferimento a quel progetto figlio. Questo è il metodo più rapido e sicuro per creare le voci del modulo nel progetto multi-board sincronizzate con i rispettivi connettori sottostanti nei progetti figlio.
No Mated Part
Questa violazione si verifica quando una voce del modulo al momento non è collegata a un altro modulo nel progetto.
Notifica
Nel pannello Messages viene visualizzata una notifica nel seguente formato:
Part "<ConnectorDesignator>" (Entry <EntryDesignator>) doesn't have Mated Part in "Module <ModuleDesignator>(<ChildProjectName>)"
dove:
-
ConnectorDesignator – il designatore del componente connettore nel progetto figlio referenziato.
-
EntryDesignator – il designatore della voce del modulo che causa la violazione (che riflette, ed è sincronizzata con, il connettore sottostante nel progetto figlio referenziato).
-
ModuleDesignator – il designatore del modulo nello schema multi-board utilizzato per fare riferimento al progetto di progettazione figlio.
-
ChildProjectName – il nome, inclusa l’estensione, del progetto figlio a cui fa riferimento il modulo.
Raccomandazione per la risoluzione
Assicurati che la voce del modulo che causa la violazione sia collegata alla voce richiesta in un modulo di destinazione, creando una connessione tra il connettore su una scheda figlia e quello su un’altra. Scegli il tipo di connessione e collegala di conseguenza tra le voci dei due moduli.
Fai riferimento alla pagina Working with Connections per saperne di più.