Kaip suprojektuoti PCB taisyklių tikrintuvą KDR?

Šiame straipsnyje trumpai aprašomas programavimo metodas PCB dizaino taisyklių tikrinimo (KDR) sistema. Kai PCB dizainas bus gautas naudojant grandinės schemos generavimo įrankį, galima paleisti DRC, kad būtų rasti bet kokie gedimai, pažeidžiantys PCB projektavimo taisykles. Tai turi būti padaryta prieš pradedant tolesnį apdorojimą, o grandinės generatoriaus kūrėjas turi pateikti KDR įrankius, kuriuos dauguma PCB dizainerių gali lengvai įvaldyti.

ipcb

Rašant savo PCB dizaino taisyklių tikrintuvą yra daug privalumų. Nors PCB dizaino tikrintuvas nėra toks paprastas, jis nėra nevaldomas, nes bet kuris PCB dizaineris, susipažinęs su esamomis programavimo ar scenarijų kalbomis, gali tai padaryti, o nauda yra neįkainojama.

Tačiau parduodami bendrosios paskirties įrankiai dažnai nėra pakankamai lankstūs, kad atitiktų konkrečius PCB projektavimo poreikius. Todėl klientai turi pranešti KDR įrankių kūrėjams apie naujus funkcijų reikalavimus, o tai dažnai reikalauja pinigų ir laiko, ypač jei reikalavimai nuolat atnaujinami. Laimei, dauguma įrankių kūrėjų gali pasiūlyti savo klientams paprastą būdą parašyti savo KDR, kad atitiktų jų konkrečius poreikius. Tačiau šis galingas įrankis nėra plačiai pripažintas ar naudojamas. Šiame straipsnyje pateikiamas praktinis vadovas, kaip maksimaliai išnaudoti KDR įrankius.

Kadangi KDR turi pereiti PCB, kad sukurtų visą grandinės schemą, įskaitant kiekvieną simbolį, kiekvieną kaištį, kiekvieną tinklą, kiekvieną atributą ir prireikus sukurtų neribotą skaičių „priedų“ failų. Kaip aprašyta 4.0 skirsnyje, KDR gali pažymėti bet kokį nedidelį nukrypimą nuo PCB projektavimo taisyklių. Pavyzdžiui, viename iš pridėtų failų gali būti visi atsiejamieji kondensatoriai, naudojami PCB konstrukcijoje. Jei talpos skaičius yra mažesnis arba didesnis nei tikėtasi, raudonos žymės bus pažymėtos ten, kur gali kilti elektros linijos DV/DT problemų. Šie papildomi failai gali būti reikalingi, tačiau jie nebūtinai yra sukurti jokiu komerciniu KDR įrankiu.

Kaip sukurti PCB taisyklių tikrintuvą KDR

Kitas KDR pranašumas yra tas, kad jį galima lengvai atnaujinti, kad būtų pritaikytos naujos PCB dizaino ypatybės, pavyzdžiui, tos, kurios gali turėti įtakos PCB projektavimo taisyklėms. Be to, įgiję pakankamai patirties šioje srityje, galite įdiegti daug kitų funkcijų.

Pvz., Jei galite parašyti savo KDR, galite parašyti savo BOM kūrimo įrankį, kad geriau patenkintumėte konkrečius vartotojų poreikius, pvz., Kaip įsigyti „papildomos techninės įrangos“ (pvz., Lizdų, radiatorių ar atsuktuvų) įrenginiams, kurie nėra yra grandinių schemos duomenų bazės dalis. Arba PCB dizaineris gali parašyti savo „Verilog“ tinklo sąrašo analizatorių, pakankamai lanksčiai pritaikydamas PCB projektavimo aplinką, pavyzdžiui, kaip gauti „Verilog“ modelius ar laiko failus, tinkamus konkrečiam įrenginiui. Tiesą sakant, kadangi KDR pereina visą PCB projektavimo schemą, galima surinkti visą galiojančią informaciją, kad būtų išvestas modeliavimas ir (arba) BOM, reikalingi PCB dizaino „Verilog“ tinklo sąrašo analizei.

Būtų ilgas aptarinėti šias temas nepateikiant jokio programos kodo, todėl kaip pavyzdį naudosime grandinės schemos paieškos įrankį. Šiame straipsnyje „Mentor Graphics“ kompanija kuria „ViewDraw“ įrankį, pridedamą prie „PADS-Designer“ produktų linijos. Be to, mes naudojome „ViewBase“ įrankį, kuris yra supaprastinta įprastinė C biblioteka, kurią galima iškviesti norint pasiekti „ViewDraw“ duomenų bazę. Naudodami „ViewBase“ įrankį, PCB dizaineriai gali lengvai parašyti išsamius ir efektyvius „ViewDraw“ DRC įrankius C/C. Svarbu pažymėti, kad čia aptarti pagrindiniai principai taikomi bet kuriam kitam PCB scheminiam įrankiui.

Įvesties failas

Be grandinių schemų duomenų bazės, KDR taip pat reikalingi įvesties failai, galintys apibūdinti konkrečias situacijas, pvz., Teisėto elektros tinklo, automatiškai prijungto prie maitinimo plokštumos, pavadinimas. Pavyzdžiui, jei POWER tinklas vadinamas POWER, POWER plokštuma automatiškai prijungiama prie POWER plokštumos naudojant galinio paketo įrenginį (kaip taikoma ViewDrawpcbfwd). Toliau pateikiamas įvesties failų, kurie turi būti patalpinti į fiksuotą pasaulinę vietą, sąrašas, kad KDR galėtų automatiškai rasti ir perskaityti, o tada išsaugoti šią informaciją viduje KDR vykdymo metu.

Kai kurie simboliai turi turėti išorinius maitinimo laido kaiščius, nes jie nėra prijungti prie įprasto maitinimo laido sluoksnio. Pavyzdžiui, ECL įrenginio VCC kaiščiai yra prijungti prie VCC arba GROUND; Jo VEE kaištį galima prijungti prie GROUND arba -5.0V plokštumos. Be to, maitinimo laido kaištį taip pat galima prijungti prie filtro prieš pasiekiant maitinimo laido sluoksnį.

Maitinimo kabelio kaištis paprastai nėra pritvirtintas prie prietaiso simbolio. Vietoj to, simbolio savybė (čia vadinama SIGNAL) apibūdina, kuris kištukas yra maitinimo arba įžeminimo kaištis, ir apibūdina tinklo pavadinimą, prie kurio kaištis turi būti prijungtas.

SIGNALAS = VCC: 10

SIGNALAS = PAGRINDAS: 20

KDR gali nuskaityti šią ypatybę ir užtikrinti, kad tinklo pavadinimas būtų išsaugotas faile legal_pwr_net_name. Jei tinklo pavadinimas neįtrauktas į legal_pwr_net_name, maitinimo kištukas nebus prijungtas prie maitinimo plokštės, o tai yra rimta problema.

Failas legal_pwr_net_name Pasirenkama. Šiame faile yra visi teisėti POWER signalų tinklo pavadinimai, pvz., VCC, V3_3P ir VDD. Naudojant PCB išdėstymo/nukreipimo įrankius, pavadinimuose turi būti skiriamos didžiosios ir mažosios raidės. Paprastai VCC nėra tas pats, kas VCC arba VCC. VCC gali būti 5.0 V maitinimo šaltinis, o V3_3P – 3.3 V maitinimo šaltinis.

Failas legal_pwr_net_name yra neprivalomas, nes galinio paketo įtaiso konfigūracijos faile paprastai turi būti galiojančių maitinimo kabelių tinklo pavadinimų rinkinys. Jei „CadencePCB“ naudojamas kuriant „Systems Allegro“ laidų įrankį, PCBFWD failo pavadinimas yra Allegro.cfg ir turi šiuos įvesties parametrus:

PAGRINDAS: VSS CGND GND GROUND

Maitinimas: VCC VDD VEE V3_3P V2_5P 5V 12V

Jei KDR galėtų skaityti failą allegro.cfg tiesiogiai, o ne legal_pwr_net_name, jis gautų geresnių rezultatų (ty sumažėtų klaidų tikimybė).