Sida 3 av 4

Re: Impedans IO-pinnar

Postat: 22 februari 2012, 13:25:15
av ghu
Jag har 2 funderingar kring detta intressanta problem som jag hoppas någon kan kommentera.

1. Om man använder anpassning på 120 ohm i slutet av ledningen kommer då PIC32 att klara av att driva strömmen genom den?
Enligt databladets Absolute maximum Ratings är max utström 15 mA.

2. Om man vill använda "serieterminering" vid PIC32:ans utgång för att spara effekt så att ovanstående inte blir ett problem är verkligen utimpedansen på PIC32 så väl definierad mellan olika exemplar så att man inte behöver införa trimning?
Strömdrivförmågan (och förmodligen utimpedans) för logikkretsar brukar ju variera med med en faktor 2-3 för standard logikkretsar.
Om man tittar på kurvorna i PIC32 datablad så verkar rdson vara ca 25 ohm typiskt. Om man då använder serieresistans 100 ohm så kanske detta är tillräckligt bra även om man råkar på ett exemplar av PIC32 med rdson=50 ohm?

Re: Impedans IO-pinnar

Postat: 22 februari 2012, 16:55:56
av TomasL
Gjort lite simuleringar i LT-SPice, Och fått lite lustiga resultat, nu vet jag iofs inte om jag gjort rätt, ännu.
Problemet är att jag kan inte sätta kapacitansen på inverterarnas ingångar.
Egentligen skulle man använda nån typ av verklig cmos-inverterare i simuleringen istället.

Re: Impedans IO-pinnar

Postat: 22 februari 2012, 19:20:02
av TomasL
Har nu gjort lite mer simuleringar, med vad jag tror en bättre representation av ingångarna.
Med följande schema.
Corel020.jpg
Ser plottarna ut så här, har även lagt in gränserna för Etta resp Nolla.
Värdena för transmissionslinjen har jag plockat från mitt Cad-program, hoppas att de stämmer någorlunda, konstigt vore iofs annars.
Corel019.jpg
Frågan är, tänker jag rätt nu?

Re: Impedans IO-pinnar

Postat: 22 februari 2012, 20:53:01
av PF013
Swech skrev:Flanktid på 200MHz är väl mindre interessant. Det som är interessant
är hur fort själva signalen är....

Annars skulle man ju även behöva terminera en 1Hz klocksignal från samma typ av pinne.

Swech
Det är just precis det man behöver göra! Jag har lärt mig den hårda vägen (dvs i EMC-labbet) att det till och med finns anledning att lägga seriemotståndet till en lysdiod nära drivaren istället för nära dioden när den drivs av snabb logik...

Re: Impedans IO-pinnar (med simuleringar)

Postat: 22 februari 2012, 20:55:29
av PF013
TomasL: Ser vettigt ut. Men jag blir lite nyfiken på hur dina ledare ser ut när du lyckas få 120 ohm impedans på dem? De måste vara ganska breda, och väldigt nära jordplanet?

Re: Impedans IO-pinnar (med simuleringar)

Postat: 22 februari 2012, 21:03:20
av TomasL
4-Lagerskort, ledare 0,15mm, 0,79 prereg och 35u koppar.
Detta är vad impedanskalkylatorn i mitt cadprogram ger mig.

Re: Impedans IO-pinnar (med simuleringar)

Postat: 22 februari 2012, 21:08:19
av TomasL
Uppenbarligen funkar det i mitt fall med serieterminering, även på multidrop.

Re: Impedans IO-pinnar (med simuleringar)

Postat: 22 februari 2012, 21:11:21
av hcb
Det här var riktigt intressant, trots att jag inte är i närheten av att konstruera sådana saker. Tomas och PF013: något om detta i Wikin skulle inte vara så dumt---om inte annat är det där med EMC av visst intresse för mig som radiot :)

Re: Impedans IO-pinnar (med simuleringar)

Postat: 22 februari 2012, 21:11:59
av PF013
Givetvis. Jag tänkte åt fel håll. Verkar rimligt. Men varför så tjock prepreg? Om du får ner impedansen på ledarna så minskar du överhörningen mellan intilliggande ledare kraftigt.

Pröva att labba med ledarlängderna också! Se vad som händer om du matchar längden på dina två ben i nätet. Brukar kunna ha trevliga effekter...

Re: Impedans IO-pinnar (med simuleringar)

Postat: 22 februari 2012, 21:16:44
av TomasL
Mitåt, preregen kan inte vara 0,79mm, måste dubbelchecka det i morgon.

Re: Impedans IO-pinnar

Postat: 22 februari 2012, 21:19:14
av PF013
thebolt skrev:
PF013 skrev:Nackdelen är att signalen ser ut som skit i alla punkter på ledningen utom i slutet, så det fungerar inte på multidropbussar.
Å andra sidan är sändar-terminering ibland det enda sättet att terminera en multidrop, speciellt en där du inte vet antalet enheter i andra änden..
Det är precis så PCI (dvs gammal hederlig parallell PCI) fungerar. Men då låter man signalen reflekteras, och när den gått hela vägen fram och tillbaka (och inte reflekterats igen pga serietermineringen) så är spänningen stabil (på en dataledning i detta fall). Först då slår klockan om (och den distribueras från en klockdrivare med en separat ledning till varje enhet/slot). Men detta begränsar givetvis hastigheten och/eller längden på bussen.

Re: Impedans IO-pinnar (med simuleringar)

Postat: 22 februari 2012, 21:25:50
av TomasL
Jo, hade tänkt att i möjligaste mån trimma längderna, hittade en sådan trevlig funktion i cadprogrammet, riktigt skojjigt.
Jag väljer en kopparbana, anger vilken längd den skall ha (samma som den längsta ledaren i bussen) och vipps så får jag en ledare med ett sånt där trevligt ringlande mönster.
Använder mig av Cogras standard stack i korten, kommer dock inte ihåg vilka måtten var på preregen resp kärnan

HCB, jo detta är riktigt riktigt intressant, faktiskt något av det mest intressanta jag labbat med, dessutom sådana saker man inte riktigt tänker på.
Och ja det stämmer det där med lysdioden, att tända/släcka den kan få konstiga EMC-effekter med snabba drivare.

Man ser klart och tydligt i den övre kurvan hur EMC'n strålar ut, frekvensen bör ligga på runt 300MHz eller nått sånt.

Re: Impedans IO-pinnar (med simuleringar)

Postat: 23 februari 2012, 09:40:12
av TomasL
Så, har dubbelkollat.
Preregen är 0,37mm vilket ger en impedans om ca 93 Ohm.

Nån som använt Mentors IBIS editor?
Man lär visst kunna hitta data i den för att kunna plocka fram dX och dI för att kunna räkna ut portpinnarnas impedans mm

Re: Impedans IO-pinnar (med simuleringar)

Postat: 23 februari 2012, 12:56:48
av ghu
TomasL:
Du har i dina simuleringar 80 ohms motstånd i serie med belasningen på 100Mohm//10pf.
Behövs dessa beroende på kapacitansen på 10pF eller finns något annat skäl?
Vad händer vid simuleringen om du tar bort dessa?

Re: Impedans IO-pinnar

Postat: 23 februari 2012, 13:00:05
av ghu
ghu skrev: Om man vill använda "serieterminering" vid PIC32:ans utgång för att spara effekt så att ovanstående inte blir ett problem är verkligen utimpedansen på PIC32 så väl definierad mellan olika exemplar så att man inte behöver införa trimning?
Strömdrivförmågan (och förmodligen utimpedans) för logikkretsar brukar ju variera med med en faktor 2-3 för standard logikkretsar.
Om man tittar på kurvorna i PIC32 datablad så verkar rdson vara ca 25 ohm typiskt. Om man då använder serieresistans 100 ohm så kanske detta är tillräckligt bra även om man råkar på ett exemplar av PIC32 med rdson=50 ohm?
Jag svarar själv på denna frågan med värden från TS problem.

Antag följande:
t0: Löptid i ledningen.
Z0= 93 ohm: Karakteristisk impedans i ledning
Zout(typisk)=20 ohm: Typisk impedans i källa
Zserie=93-20=73 ohm: Serieterminering vid källa
Obelastad utspänning från källa 3V som appliceras som ett steg vid t=0.

Antag nu att man har missanpassning vid källan t ex: Zout=50 ohm
Då erhåller jag följande spänningar U vid lasten om man räknar med öppen ledning.
Vid t=t0: U=2.58 V
Vid t=3*t0: U=2.94 V

Ovanstående är beräknat teoretiskt med 0 i stigtid för pulsen.
Med längre stigtid är förmodligen problemet ännu mindre.

Min slutsats: Även om utimpedans ökar från 20ohm till 50ohm så duger det med terminering bara vid källan.

TomasL: Du kan säkerligen verifiera problemet med missanpassning p g a varierande utimpedans i PIC32 mycket bättre i din LTSPICE-modell.