Hvordan designe PCB -regelkontrollen DRC?

Denne artikkelen beskriver kort en metode for programmering PCB design rule checker (DRC) system. Når PCB -designet er oppnådd ved hjelp av kretsdiagramgenereringsverktøyet, kan DRC kjøres for å finne eventuelle feil som bryter PCB -designreglene. Dette må gjøres før påfølgende behandling begynner, og utvikleren av kretsgeneratoren må tilby DRC -verktøy som de fleste PCB -designere enkelt kan mestre.

ipcb

Det er mange fordeler med å skrive din egen PCB -designregelkontroll. Selv om PCB -designkontrollen ikke er så enkel, er den ikke uhåndterlig, fordi enhver PCB -designer som er kjent med eksisterende programmerings- eller skriptspråk kan gjøre det, og fordelene er uvurderlige.

Imidlertid er markedsførte generelle verktøy ofte ikke fleksible nok til å dekke spesifikke PCB-designbehov. Som et resultat må nye funksjonskrav rapporteres av kundene til DRC -verktøyutviklere, noe som ofte tar penger og tid, spesielt hvis kravene oppdateres kontinuerlig. Heldigvis kan de fleste verktøyutviklere gi sine kunder en enkel måte å skrive sin egen DRC for å dekke deres spesifikke behov. Dette kraftige verktøyet er imidlertid ikke allment anerkjent eller brukt. Denne artikkelen gir en praktisk guide for å få mest mulig ut av DRC -verktøy.

Siden DRC må krysse PCB for å designe hele kretsdiagrammet, inkludert hvert symbol, hver pinne, hvert nettverk, hvert attributt og opprette et ubegrenset antall “tilbehør” -filer om nødvendig. Som beskrevet i avsnitt 4.0, kan DRC flagge ethvert mindre avvik fra PCB -designreglene. For eksempel kan en av de vedlagte filene inneholde alle frakoblingskondensatorene som brukes i PCB -designet. Hvis kapasitansetallet er lavere eller høyere enn forventet, vil det bli plassert røde merker der problemer med strømledningen DV/DT kan oppstå. Disse tilleggsfilene kan være nødvendige, men de er ikke nødvendigvis laget av et kommersielt DRC -verktøy.

Hvordan utforme PCB -regelkontrollen DRC

En annen fordel med DRC er at den enkelt kan oppdateres for å imøtekomme nye PCB -designfunksjoner, for eksempel de som kan påvirke PCB -designreglene. Når du får tilstrekkelig erfaring i området, er det dessuten mange andre funksjoner du kan implementere.

For eksempel, hvis du kan skrive din egen DRC, kan du skrive ditt eget BOM -opprettingsverktøy for å bedre møte spesifikke brukerbehov, for eksempel hvordan du får “ekstra maskinvare” (for eksempel stikkontakter, radiatorer eller skrutrekkere) for enheter som ikke er seg selv en del av kretsdiagrammet. Eller PCB -designeren kan skrive sin egen Verilog netlist -analysator med tilstrekkelig fleksibilitet i PCB -designmiljøet, for eksempel hvordan du får tak i Verilog -modeller eller tidsfiler som er egnet for en bestemt enhet. Fordi DRC krysser hele PCB -designkretsdiagrammet, er det faktisk mulig å samle all gyldig informasjon for å sende ut simuleringen og/eller styklisten som kreves for PCB -design Verilog netlistanalyse.

Det ville være en strek å diskutere disse emnene uten å gi noen programkode, så vi bruker et verktøy for å hente kretsdiagram som et eksempel. Denne artikkelen bruker Mentor Graphics-selskapet til å utvikle ViewDraw-verktøy knyttet til produktlinjen til PADS-Designer. I tillegg brukte vi ViewBase -verktøyet, som er et forenklet C -rutinebibliotek som kan kalles for å få tilgang til ViewDraw -databasen. Med ViewBase -verktøyet kan PCB -designere enkelt skrive komplette og effektive DRC -verktøy for ViewDraw i C/C. Det er viktig å merke seg at de grunnleggende prinsippene som diskuteres her, gjelder for alle andre PCB -skjematiske verktøy.

Inndatafilen

I tillegg til kretsdiagramdatabasen trenger DRC også inndatafiler som kan beskrive spesifikke situasjoner, for eksempel navnet på et legitimt strømnett som automatisk er koblet til strømplanet. For eksempel, hvis POWER-nettverket kalles POWER, kobles POWER-planet automatisk til POWER-planet ved hjelp av en back-end-pakkenhet (som gjeldende for ViewDrawpcbfwd). Følgende er en liste over inndatafiler som må plasseres på en fast global plassering slik at DRC automatisk kan finne og lese, og deretter lagre denne informasjonen internt i DRC ved kjøretid.

Noen symboler må ha ekstern strømkabelpinne fordi de ikke er koblet til det vanlige strømledningen. For eksempel er ECL -enhetens VCC -pinner enten koblet til VCC eller GROUND; VEE -pinnen kan kobles til GROUND eller -5.0V -planet. I tillegg kan strømledningsnålen også kobles til filteret før du når strømledningen.

En strømkabelpinne er normalt ikke festet til et enhetssymbol. I stedet beskriver en egenskap av symbolet (kalt SIGNAL her) hvilken pinne som er en strøm- eller bakkenål og beskriver nettverksnavnet som pinnen skal kobles til.

SIGNAL = VCC: 10

SIGNAL = BAKGRUNN: 20

DRC kan lese denne egenskapen og sikre at nettverksnavnet er lagret i filen legal_pwr_net_name. Hvis nettverksnavnet ikke er inkludert i legal_pwr_net_name, kobles ikke strømnålen til strømplanet, noe som er et alvorlig problem.

Fil legal_pwr_net_name Valgfritt. Denne filen inneholder alle juridiske nettverksnavn for POWER -signaler, for eksempel VCC, V3_3P og VDD. I PCB-layout/rutingverktøy må navn være store og små bokstaver. Vanligvis er VCC ikke det samme som VCC eller VCC. VCC kan være 5.0V strømforsyning og V3_3P kan være 3.3V strømforsyning.

Filen legal_pwr_net_name er valgfri, fordi konfigurasjonsfilen for backend -innkapslingsenheten vanligvis må inneholde et sett med gyldige navn på strømkabelen. Hvis CadencePCB brukes til å designe Systems ‘Allegro ledningsverktøy, er PCBFWD -filnavnet Allegro.cfg og har følgende oppføringsparametere:

GRUNN: VSS CGND GND GRUNN

Strømforsyning: VCC VDD VEE V3_3P V2_5P 5V 12V

Hvis DRC kunne lese allegro.cfg -filen direkte i stedet for legal_pwr_net_name, ville det få bedre resultater (dvs. mindre sjanse for å introdusere feil).