Impedans IO-pinnar (med simuleringar)
Re: Impedans IO-pinnar
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?
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
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.
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.
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Re: Impedans IO-pinnar
Har nu gjort lite mer simuleringar, med vad jag tror en bättre representation av ingångarna.
Med följande schema. 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. Frågan är, tänker jag rätt nu?
Med följande schema. 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. Frågan är, tänker jag rätt nu?
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Re: Impedans IO-pinnar
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...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
Re: Impedans IO-pinnar (med simuleringar)
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)
4-Lagerskort, ledare 0,15mm, 0,79 prereg och 35u koppar.
Detta är vad impedanskalkylatorn i mitt cadprogram ger mig.
Detta är vad impedanskalkylatorn i mitt cadprogram ger mig.
Re: Impedans IO-pinnar (med simuleringar)
Uppenbarligen funkar det i mitt fall med serieterminering, även på multidrop.
- hcb
- Moderator
- Inlägg: 5980
- Blev medlem: 23 februari 2007, 21:44:50
- Skype: hcbecker
- Ort: Lystrup / Uppsala
- Kontakt:
Re: Impedans IO-pinnar (med simuleringar)
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)
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...
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)
Mitåt, preregen kan inte vara 0,79mm, måste dubbelchecka det i morgon.
Re: Impedans IO-pinnar
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.thebolt skrev:Å 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..PF013 skrev:Nackdelen är att signalen ser ut som skit i alla punkter på ledningen utom i slutet, så det fungerar inte på multidropbussar.
Re: Impedans IO-pinnar (med simuleringar)
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.
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)
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
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)
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?
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
Jag svarar själv på denna frågan med värden från TS problem.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?
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.