Cadence SPB

From Nanoelektronikk

Jump to: navigation, search

Cadence SPB er et relativt omfattende vertøy for design av kretskort. Under vil du finne en gjennomgang av de viktigste prosessene i konstruksjon av ferdig kretskort. Alle aspekter ved verktøyet vil derfor ikke bli beskrevet i dette dokumentet. Fullstendig dokumentasjonen finner du her:

Denne introduksjonen er tilpasset design av kretskort for produksjon på vår egen kretkortfres. Derimot vil det meste av innholdet også være relevant for produksjon gjennom f.eks. Elprint.

  • /hom/mes/cadsoft/cadence/spb15.2/doc/
  • Allegro PCB Editor Tutorial /hom/mes/cadsoft/cadence/spb15.2/doc/algrotutorial/algrotutorialTOC.html
  • Allegro Design Entry HDL Tutorial /hom/mes/cadsoft/cadence/spb15.2/doc/concepthdl_tut/concepthdl_tutTOC.html


Contents


[edit] Oppstart og oppretting av prosjekt

  • Kjør remote dektop til addendum. Under startmenyen velger du Allegro SPB->Project Manager
    • Velg PCB Design Expert og trykk OK på Cadence Product Choises
  • Velg Create Design Project
    • Velg et passende navn og mappe for prosjektet og trykk Next; I denne guiden heter prosjektet wiki
  • Velg Add All--> og trykk Next
  • Under Library velg wiki_lib og velg et passende navn for kretskortet, Trykk Next; I denne guiden heter kretskortet wikikort
    • Har du tidligere laget et prosjekt i samme katalog, vil det ikke blir opprettet et nytt bibliotek for prosjektet. Velg derfor biblioteket fra forrige prosjekt.
  • Trykk Finish

[edit] Definere komponenter

  • Velg Tools->Library Tools->Part Developer
  • I denne guiden vil jeg definere en Texas Instument SN7400 Quadruple 2-input NAND-gate med SOIC14-pakke
  • File->New->Cell
    • Velg wiki_lib og kall cellen SN7400. Trykk OK
  • Høyreklikk på Symbols og velg New
  • Velg Symbol Pins fanen og trykk Pins->Add
    • Vinduet Add Pin åpnes
  • Fyll inn pinner som beskrevet i datablad og illustrert under og trykk OK

Image:PCBaddpin.jpg

  • Høyreklikk på Packages og velg New
  • I Associated Footprint ruten, velg browse-knappen for Jedec Type
    • Velg SOIC14 og trykk OK
    • Hvis footprintet ikke finnes i listen, må du tegne det selv. Fremgangsmåte er beskrevet i Tegning av footprint
  • Velg Package Pin-fanen
  • Trykk Footprint->Extract from Footprint og trykk Yes på menyen som spretter opp.
  • Trykk Pins->Add, velg alle pinnene fra Add Pin-vinduet og trykk OK
  • Map alle pinnene som beskrevet i datablad og illustrert under (Merk en pinne fra hver tabell og trykk Map):

Image:PCBmappin.jpg

  • Komponenten er ferdig definert
    • Velg File->Save og File->Exit

[edit] Skjematikk

  • Velg Design Entry
  • For å hente inn komponenter, velg Component->Add. Legg til 2stk. SN7400 fra wiki_lib
  • Tips! Forskjellige musebevegelser trigger bestemte kommadoer:
    • z: zoom
    • m: move
    • c: copy
    • osv..
  • Velg Wire->Draw og tegn opp skjema som illustrert under (Merk at dette designet har ingen funksjon, men er bare ment som en beskrivelse av en prosedyre)
  • Velg Wire->Signal Name for å navngi nett. Dette må gjøres for VCC og GND

Image:PCBdesignentry.jpg

  • Velg File->Save og File->Exit

[edit] Oppstart Utlegg

  • Velg Layout (en feilmelding vil noen ganger åpnes, ignorer den og trykk OK)
    • Velg Allegro PCB Design og trykk OK
  • Velg File->New
  • Skrive inn navnet på kortet, wikikort og velg Board (wizard) og trykk OK
    • Board Wizard åpnes og fyll ut etter ønske. Under finner du noen illustrasjoner av vanlig valg

Image:PCBboardwiz02.JPG

Image:PCBboardwiz03.jpg

Image:PCBboardwiz05.jpg

  • Minste mulige ledebredde er 0.2mm, men det anbefales og velge minst 0.4mm.
  • Når Board Wizard er ferdig, lagre utlegg og velg File->Exit

[edit] Eksporter skjematikk

  • Velg Design Sync->Export Physical og fyll ut som illustrert under og trykk OK

Image:PCBexport.JPG

[edit] Utlegg

  • Åpne utlegg som beskrevet over. Isteden for å lage et nytt utlegg, åpnes nå automatisk wikikort
  • Komponenter fra skjemtikken hentes ved å velge Place->Manually
    • Placement-vinduet åpnes. Utvid Components by refdes
  • Kryss av for cellene U1 og U2 og plasser disse i utlegget.
  • Du vil nå se at det er tegnet logiske koblinger mellom komponentene
  • For flerlagskort, må korrekt VIA defineres. Velg Tools->Padstack->Modify Library Padstack
  • Velg Hole0_9Mm fra listen og trykk OK
  • Full ut verdier som illustrert under.
    • Merk at TOP, DEFAULT INTERNAL og BOTTOM layer er 0.8mm bredere enn selve drillhullet. Dette sikrer at det er tilstrekkelig med kobber rundt hullet etter fresing. Bruk derfor alltid minst 0.8mm avstand mellom hull og TOP/BOTTOM

Image:PCBvia04.jpg

Image:PCBvia05.jpg

  • Lagre den modifiserte utgaven som f.eks. VIA0_9mm og lukk vinduet
  • Velg Setup->Constraints og trykk Set values under Physical (lines/vias) rule set
  • Fjern først alle viaer fra Current via list og legg så bare til 'VIA0_9mm til Current via list. Trykk OK to ganger
  • Velg Route->Connect (F6) og tegn alle de logiske koblingene
    • Dobbelklikk vil lage en via som svitsjer mellom de to lagene
    • For å endre farge på rutingen slik at det blir enkelt å skille top fra bottom, velg Display->Color/Visibility
    • Gjør endringer som f.eks. illustrert under og trykk OK

Image:PCBcolorVisibility.jpg

[edit] Tegning av Footprint

Når man skal definere et footprint, bør man først undersøke om det finnes en egnet padstack (Padstack er selve monteringspunktet eller hullet for komponenten). Finnes ikke dette, må man lage det selv. Denne seksjonen vil gå gjennom prosedyren fra å definere selve padstack til å lage ferdig footprint. Hvis padstack finnes, kan du gå direkte til Footprint

  • Hvis komponenten er hullmontert, kan det være nødvendig å montere en metallvia i etterkant av fresing for å sikre at det blir kontakt mellom lagene. Figur 1 under illustrerer dette, mens figur 2 viser når dette ikke er nødvendig.
  • Hvis en metallvia skal benyttes, må diameteren til hullet til komponentbeinet økes med 0.4mm.

Image:PCBhull06.jpg


Image:PCBhull05.jpg


[edit] Padstack

  • Velg Layout
    • Velg Allegro PCB Design og trykk OK
  • Velg Tools->Padstack->Modify Library Padstack
  • Velg fra listen padstacken som likner mest og trykk OK (MERK: Alle tall i MILS hvis ikke annet er spesifisert.)
    • I denne guiden lager jeg en rektangulær padstack med mål 2x0.5mm på lag TOP
  • Fyll ut som illustrert under

Image:PCBmodpadstack02.jpg

Image:PCBmodpadstack01.jpg

  • Velg File->Save As og skriv inn et passende navn og plassering, i dette tilfellet SMD2REC0_5mm.pad og M:\...\wiki\worklib\wikikort\physical
  • Velg Setup->User Preferences. Velg Design Paths og trykk browseknappen for padpath. Legg til katalogen hvor du lagret padstacken og trykk OK. Nå vil dine egne definerte padstacks kunne velges fra menyen. Merk at dette bare lastes inn ved oppstart av Layout eller Part Developer
  • Velg derfor File->Exit

[edit] Footprint

  • Velg Layout
    • Velg Allegro PCB Design og trykk OK
  • Velg File->New og skriv inn navnet på footprintet (I denne guiden heter footprintet qpl48)
  • Velg Package Symbol (wizard) og trykk OK
  • I vinduet Package Type, velg riktig pakke og trykk Next. Hvis ingen av alternativene passer, velg den som ligner mest.
    • I denne guiden passer ingen, velger PLCC/QFP som linker mest.
  • Trykk Load Template og Next
  • Velg Units->Millimeter og Accuracy->3 og trykk Next
  • Fyll ut som spesifisert i datablad.
    • Her er det bare å prøve og feile litt. Det er ikke alltid like enkelt å velge riktige verdier. Hvis du åpenbart har valgt feil og footprintet ikke passer, er det enklest å starte hele prosedyren på nytt.
  • Velg Tools->PCB Editor Setup. Velg Design Paths og trykk browseknappen for psmpath. Legg til katalogen hvor du lagret ditt footprint og trykk OK. Nå vil dine egne definerte footprints kunne velges fra menyen. Merk at dette bare lastes inn ved oppstart av Layout eller Part Developer
  • Velg defor File->Exit

[edit] Generering av Vdd/Gnd Plan

PCB-fresen fungerer ved å isolere lederbaner, pinner osv. fra resten av kobberet på kortet. Dette gjør at et ferdig freset kretskort har store arealer med flytende kobber. Det er to måter å unngå dette. Enten ved å fjerne all flytende kobber eller koble det til enten Vdd eller Gnd. Fjerning av alt overflødig kobber gjøres med et eget verktøy, LPKFs CircuitCam, og kan fikses i etterkant på ferdig design. Hvis overflødig kobber skal tilkobles Vdd eller Gnd, må dette gjøres før Generering av filer for kretskortproduksjon. Følg da fremgangsmåte under:

  • Velg Shape-> Polygon eller Shape-> Rectangular
  • Til høyre i Active Class and Subclass, velg ønsket lag, TOP eller BOTTOM
    • For kretskort som skal produseres av Elprint, velger man Vdd eller Gnd
  • Til høyre i Assign Net Name, velg riktig nettnavn med hjelp av browse-knappen.
    • Et fornuftig valg her er Gnd
  • Tegn så opp området som skal fylles opp med planet

Ofte vil dette generere en del isolerte øyer. Disse kan fjernes på følgende måte:

  • Velg Shape-> Delete Islands
  • Til høyre vil det nå komme opp noen alternativer. Velg First for å vise første øy som ikke har noen forbindelser til resten av planet. Du kan nå velge til å slette denne med å trykke på Delete eller la den være og fortsette til neste med Next.
  • Gjenomfør denne prosedyren for hvert plan til alle isolerte øyer er fjernet.

Man kan også skjære bort litt mer av planet, hvor det for eksempel er småstrukturer mellom pinner som kan gjøre det vanskelig å lodde:

  • Velg Shape-> Manual Void-> Polygon eller Shape-> Manual Void-> Rectangular
  • Tegn opp området som du vil fjerne.
    • Pinner og ledninger blir ikke berørt av dette

[edit] Generering av filer for kretskortproduksjon

  • Velg Manufacture->Artwork. Fyll ut som illustrert under og trykk Create Artwork. Filene TOP.art og BOTTOM.art blir laget.

Image:PCBgenart01.jpg

Image:PCBgenart02.JPG

  • I katalogen ~/wiki/worklib/wikikort/physical, lag en fil med navn nc_tools.txt og legg til følgende:
0.6 P T0
0.7 P T1
0.8 P T2
0.9 P T3
1.0 P T4
1.1 P T5
1.3 P T6
1.5 P T7
2.0 P T8
2.4 P T9
3.0 P T10

  • Velg Manufacture->NC->NC Drill... og trykk NC Parameters... og fyll ut som illustrert under

Image:PCBgendrill01.jpg

  • Trykk Drill
    • Hvis du får en feilmelding under generering av drill-fil, så inneholder designet ditt mest sannsynlig drillhull med feil diameter i forhold til verktøy beskrevet i nc_tools.txt. Et enkelt eksempel illustrerer hva som må gjøres:
    • Hvis drillhull er mer enn 0.05mm fra tilgjengeli verktøy, f.eks 0.54mm, vil vår PCB-fres etterspørre et borr med diameter på 0.5mm. Dette finnes ikke og designet kan ikke produseres. I dette tilfellet må padstacken forandres slik at drillhullet passer til et av våre verktøy. Et naturlig valg her er da 0.6mm.
    • Hvis derimot drillhullet er 0.56mm, vil vår PCB-fres tolke dette som et hull med diameter 0.6mm og designet kan produseres. For at eksporterigen av drillhull skal bli korrekt, må nc_tools.txt se slik ut:
0.56 P T0
0.6 P T1
0.7 P T2
0.8 P T3
0.9 P T4
1.0 P T5
1.1 P T6
1.3 P T7
1.5 P T8
2.0 P T9
2.4 P T10
3.0 P T11
  • Filene TOP.art, BOTTOM.art og wikikort*.drl kan nå importers til CircuitCam og gjøres klart for produksjon