Bygga egen dator från grunden

Berätta om dina pågående projekt.
DanielM
Inlägg: 2201
Blev medlem: 5 september 2019, 14:19:58

Re: Bygga egen dator från grunden

Inlägg av DanielM »

Detta är mina nuvarande linjer.
Jag har tagit hänsyn till viorna (3 stycken) och att impedansresistorerna har samma längd. Dessutom så tar jag även med paddens längd.
Här märker jag att RX_CLK måste vara högst av dom alla. Så jag kan öka på RX_CLK och öka lite på RX_0, RX_1, RX_2, RX_3 till ca 30.3 mm.

Före
  • RX_CLK = 2.041 + 22.754 + 3*1.6 = 29.595 mm
  • RX_DV = 1.422 + 24.133 + 3*1.6 = 30.355 mm
  • RX_0 = 1.768 + 22.346 + 3*1.6 = 28.914 mm
  • RX_1 = 1.703 + 22.025 + 3*1.6 = 28.528 mm
  • RX_2 = 2.028 + 21.073 + 3*1.6 = 27.901 mm
  • RX_3 = 2.495 + 21.833 + 3*1.6 = 29.128 mm
Efter
  • RX_CLK = 2.041 + 23.584 + 3*1.6 = 30.425 mm
  • RX_DV = 1.422 + 24.133 + 3*1.6 = 30.355 mm
  • RX_0 = 1.768 + 23.787 + 3*1.6 = 30.355 mm
  • RX_1 = 1.703 + 23.654 + 3*1.6 = 30.157 mm
  • RX_2 = 2.028 + 23.565 + 3*1.6 = 30.393 mm
  • RX_3 = 2.495 + 22.974 + 3*1.6 = 30.269 mm
Jag kanske måste öka lite på TX_CLK med tanke på att den hade inget via hål. Notera att jag menar TX_CLK, inte RX_CLK.
Eller så låter jag den vara.
DanielM
Inlägg: 2201
Blev medlem: 5 september 2019, 14:19:58

Re: Bygga egen dator från grunden

Inlägg av DanielM »

Så där ja!

Då var man klar med Ethernet PHY. Är det någon som har något mer man kan tillägga på denna konstruktion t.ex. någon avskiljningsplan eller liknande för differentiella linjerna.
Det var ett pysslande, men jag fick ihop linjerna tillslut.

Det jag inte har gjort, på grund utav diskussionen med TomasL är:
  • Designat ledarbanorna för RX och TX för 50 ohm impedans
  • Designat ledarbanorna för differentiella ledarbanorna för 100 ohm impedans
Detta var på grund utav att det skiljer mellan material och material och man blir väldigt hemmablind igenom att förlita sig på formler. Man måste mäta upp och pröva, enligt TomasL.
Jag vet fortfarande inte hur jag ska gå till väga för att få till dessa impedanser. Ska jag fråga tillverkaren om dom kan fixa det, eller ska jag ladda ned ett simuleringsprogram?

Hur som helst. Här är lite bilder. Vad tycks?
Skärmbild 2024-04-10 203338.png
Skärmbild 2024-04-10 203359.png
Skärmbild 2024-04-10 203443.png
Skärmbild 2024-04-10 203504.png
Skärmbild 2024-04-10 203526.png
Skärmbild 2024-04-10 204444.png
Dock så är jag inte helt nöjd med impedansresistorn på 22 ohm för ETH_MDC (Klocka). Den ska egentligen sitta närmare processorn och inte PHY. Men med tanke på avståndet, så är detta nog förlåtet. Långa avstånd kräver impedansresistorer på den drivande sidan. Nu är avståndet bara 10.987 mm, inkluderat padden på impedansresistorn. Så jag låter den vara som den är.
Skärmbild 2024-04-10 203700.png
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
Klas-Kenny
Inlägg: 11351
Blev medlem: 17 maj 2010, 19:06:14
Ort: Växjö/Alvesta

Re: Bygga egen dator från grunden

Inlägg av Klas-Kenny »

DanielM skrev: 10 april 2024, 20:39:26 Det jag inte har gjort, på grund utav diskussionen med TomasL är:
Designat ledarbanorna för RX och TX för 50 ohm impedans
Designat ledarbanorna för differentiella ledarbanorna för 100 ohm impedans
Eh.
Du har nog grovt missuppfattat vad Tomas skrivit.
Klart att dessa ledare ska impedansanpassas.

Saken är bara den att du inte kan göra hela det jobbet själv. Du får räkna ut en ungefär rätt ledarbredd, sen får du tala om för mönsterkortstillverkaren vilka ledare som ska anpassas till vilken impedans.

Jag brukar använda någon onlinekalkylator och beräkna för någon "normal" stackup, för alla impedanser enligt samma förutsättningar, och rita med detta. Extra bra är om det blir en lite udda ledarbredd på just det som ska impedansanpassas. På så vis kan du säga till mönsterkortstillverkaren typ "Ledare på 0.115 mm bredd ska impedansanpassas till 50 ohm", så blir det relativt tydligt vilka ledare det gäller.

För övrigt så har du väl redan ledare med dessa impedanser i minnesbussen, använd samma dimensioner här.
DanielM
Inlägg: 2201
Blev medlem: 5 september 2019, 14:19:58

Re: Bygga egen dator från grunden

Inlägg av DanielM »

Ja, det var detta jag menade. Att dom ska impedansanpassas, men inget jag kan göra själv och säga att dom är 50 ohm eller 100 ohm. Det är tillverkaren som måste göra finjobbet.
För mitt DDR3 minne så är det 0.12mm bredd på ledarna. Jag använder 0.12mm bredd för RX, TX och differentiella signalerna för PHY.

Här är mina lager.
Om jag ska räkna lite enkelt på impedansen så skulle jag få att min till ca 51 ohm.

Först så väljer jag 3) JLC04161H-3313 Stackup från JLCPCB. Dom har likvärdigt som jag har. Jag vill helst inte röra mitt.
Skärmbild 2024-04-10 221241.png
Då är det dielectric constant = 4.1. Det är alltså samma konstant som JLCPCB och vad som är markerat som Dk i mitt lagersystem.
Då får jag 55 ohm i impedans. Detta ska väll vara ett bra hum över hur
Skärmbild 2024-04-10 222229.png
https://www.digikey.com/en/resources/co ... -impedance

Använder jag JLCPCB's siffror för 3) JLC04161H-3313 Stackup så får jag impedansen 56 ohm. Bör jag acceptera detta som bra, eller ska jag försöka matcha så det är 50 ohm så nära som möjligt innan jag ger det till tillverkaren? Det blir lite svårt för 50 ohm ledarbanorna för jag behöver ha minst 0.15mm ledarbredd, vilket är för brett för att det ska gå in i processorns BGA-"pinnar".
Skärmbild 2024-04-10 222454.png
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Senast redigerad av DanielM 10 april 2024, 22:28:00, redigerad totalt 1 gång.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 45304
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Bygga egen dator från grunden

Inlägg av TomasL »

Tillverkaren matchar, så länge som du ger dem möjlighet till det, dvs ledarbredder och avstånd.
DanielM
Inlägg: 2201
Blev medlem: 5 september 2019, 14:19:58

Re: Bygga egen dator från grunden

Inlägg av DanielM »

För dom differentiella så behöver jag bara använda ledarbana 0.11 för att få nästan exakt 100 ohm.
Här har jag valt 0.12 ledarbana. Alltså ligger jag bra till för diff-linjerna för PHY <--> RJ45. Bör jag göra något åt dom övriga 55-56 ohm linjerna för TX och RX mellan PHY <--> uP ?
Skärmbild 2024-04-10 225607.png
Hur som helst.
Om jag nöjer mig med 55-56 ohm och JLCPCB får sköta finliret, då kan jag fortsätta med att implementera USB och HDMI anslutningen. Sedan är jag klar med kortet, om man inte ska ha något mera. :)
Du har inte behörighet att öppna de filer som bifogats till detta inlägg.
Användarvisningsbild
hawkan
Inlägg: 2636
Blev medlem: 14 augusti 2011, 10:27:40

Re: Bygga egen dator från grunden

Inlägg av hawkan »

Har du kollat med JLPCB om de gör det?
DanielM
Inlägg: 2201
Blev medlem: 5 september 2019, 14:19:58

Re: Bygga egen dator från grunden

Inlägg av DanielM »

Dom gör impedanskontroll, svar ja.

Få se nu. Nu är följande dragit:
  • Processor
  • eMMC
  • DDR
  • PHY
Då är det bara följande kvar.
  • HDMI
  • USB
Jag vet inte hur andra tillverkare gör, men jag misstänker att man använder ST-LINK V2 (programmeraren) för att bränna in Linux på eMMC.
Användarvisningsbild
hawkan
Inlägg: 2636
Blev medlem: 14 augusti 2011, 10:27:40

Re: Bygga egen dator från grunden

Inlägg av hawkan »

Inte i sitt vanliga dirt-cheap erbjudande eller? Vad kostar det?
DanielM
Inlägg: 2201
Blev medlem: 5 september 2019, 14:19:58

Re: Bygga egen dator från grunden

Inlägg av DanielM »

70 kr.

Med frakt. 5 stycken kort. 100 x 100 mm. 4 lager + impedanskontroll.
Användarvisningsbild
anders_bzn
Inlägg: 5464
Blev medlem: 17 december 2008, 19:22:18
Ort: Kävlinge
Kontakt:

Re: Bygga egen dator från grunden

Inlägg av anders_bzn »

DanielM skrev: 11 april 2024, 08:33:39 Jag vet inte hur andra tillverkare gör, men jag misstänker att man använder ST-LINK V2 (programmeraren) för att bränna in Linux på eMMC.
Linux är ett vitt begrepp här. Tillhandahåller ST någon version av UBOOT (till exempel) för denna SoC:en? Finns den färdig med minneninställningar för de DDR minnen du valt?

Sen antar jag att du måste bygga en kärna med de features du vill ha. Åtminstånde behöver du skapa ett devicetree som beskriver hårdvaran på ditt kort.

Har ST någon "färdig" distro att utgå ifrån eller vad tänker ku köra på ditt kort?
Användarvisningsbild
Klas-Kenny
Inlägg: 11351
Blev medlem: 17 maj 2010, 19:06:14
Ort: Växjö/Alvesta

Re: Bygga egen dator från grunden

Inlägg av Klas-Kenny »

DanielM skrev: 11 april 2024, 08:33:39 Jag vet inte hur andra tillverkare gör, men jag misstänker att man använder ST-LINK V2 (programmeraren) för att bränna in Linux på eMMC.
Har svårt att tro att man (åtminstone normalt sett) använder ST-LINK för detta.
Har inte erfarenhet av ST's MPU'er, men åtminstone NXP som jag har jobbat mycket med har en inbyggd USB-bootladdare som är lämplig att använda för ändamålet.

Rekommenderar att du läser på lite här, hur det är tänkt att fungera. Så att du får med allt som kan behövas för att sätta processorn i rätt bootmode och liknande.


För övrigt, på det ämnet om du inte redan tänkt på det, se till att dra ut en debug-serieport. Utan den blir saker och ting väldigt tungjobbade.
Senast redigerad av Klas-Kenny 11 april 2024, 11:55:36, redigerad totalt 1 gång.
Användarvisningsbild
TomasL
EF Sponsor
Inlägg: 45304
Blev medlem: 23 september 2006, 23:54:55
Ort: Borås
Kontakt:

Re: Bygga egen dator från grunden

Inlägg av TomasL »

DanielM skrev: 11 april 2024, 10:52:08 70 kr.

Med frakt. 5 stycken kort. 100 x 100 mm. 4 lager + impedanskontroll.
Hmm, utför de anpassning också, eller bara mätning.

Svårt att tro att du får det för det låga priset.
Användarvisningsbild
Klas-Kenny
Inlägg: 11351
Blev medlem: 17 maj 2010, 19:06:14
Ort: Växjö/Alvesta

Re: Bygga egen dator från grunden

Inlägg av Klas-Kenny »

Gick in på JLCPCB och kollade. De verkar ha ett lite ovanligt sätt att jobba på.

De tillhandahåller information om några olika stackuper som de kan tillhandahålla (tjocklekar, material, dielektrisk konstant osv) och en kalkylator för att beräkna ledarbredder för just den stackup du väljer (ur deras utbud), och sen måste du rita med just dessa bredder. Verkar inte som att de justerar någonting själva (för att sänka pris förmodar jag).
Sen huruvida det faktiskt verifieras om det blev rätt kan man ju undra. De skriver vad jag kan se, inget om toleranser osv.
JLCPCB skrev:We offer high precision Controlled Impedance PCB at no extra charge, with a minimum trace width of 3.5mil, minimum via size of 0.2mm, and minimum BGA of 0.3mm.

Note: You need to design your controlled impedance PCB according to our PCB stackup.
Learn more about our stackup.
Kalkylator:
https://jlcpcb.com/pcb-impedance-calculator
DanielM
Inlägg: 2201
Blev medlem: 5 september 2019, 14:19:58

Re: Bygga egen dator från grunden

Inlägg av DanielM »

anders_bzn skrev: 11 april 2024, 11:00:25
DanielM skrev: 11 april 2024, 08:33:39 Jag vet inte hur andra tillverkare gör, men jag misstänker att man använder ST-LINK V2 (programmeraren) för att bränna in Linux på eMMC.
Linux är ett vitt begrepp här. Tillhandahåller ST någon version av UBOOT (till exempel) för denna SoC:en? Finns den färdig med minneninställningar för de DDR minnen du valt?

Sen antar jag att du måste bygga en kärna med de features du vill ha. Åtminstånde behöver du skapa ett devicetree som beskriver hårdvaran på ditt kort.

Har ST någon "färdig" distro att utgå ifrån eller vad tänker ku köra på ditt kort?
Det finns något som heter OpenSTLinux som dom rekommenderar. Jag har inte satt mig in hur man implementerar OpenSTLinux på eMMC.
Klas-Kenny skrev: 11 april 2024, 11:06:08
DanielM skrev: 11 april 2024, 08:33:39 Jag vet inte hur andra tillverkare gör, men jag misstänker att man använder ST-LINK V2 (programmeraren) för att bränna in Linux på eMMC.
Har svårt att tro att man (åtminstone normalt sett) använder ST-LINK för detta.
Har inte erfarenhet av ST's MCU'er, men åtminstone NXP som jag har jobbat mycket med har en inbyggd USB-bootladdare som är lämplig att använda för ändamålet.

Rekommenderar att du läser på lite här, hur det är tänkt att fungera. Så att du får med allt som kan behövas för att sätta processorn i rätt bootmode och liknande.


För övrigt, på det ämnet om du inte redan tänkt på det, se till att dra ut en debug-serieport. Utan den blir saker och ting väldigt tungjobbade.
Jag håller på att läsa, men just nu så fokuserar jag på USB:n. :)
Debug-serieport? Du menar det ST-Link V2 har?
Debug är standard på ST's processorer.
TomasL skrev: 11 april 2024, 11:09:13
DanielM skrev: 11 april 2024, 10:52:08 70 kr.

Med frakt. 5 stycken kort. 100 x 100 mm. 4 lager + impedanskontroll.
Hmm, utför de anpassning också, eller bara mätning.

Svårt att tro att du får det för det låga priset.
TomasL skrev: 11 april 2024, 11:09:13
DanielM skrev: 11 april 2024, 10:52:08 70 kr.

Med frakt. 5 stycken kort. 100 x 100 mm. 4 lager + impedanskontroll.
Hmm, utför de anpassning också, eller bara mätning.

Svårt att tro att du får det för det låga priset.
Jag ska ställa dom en fråga om detta. Återkommer.
Klas-Kenny skrev: 11 april 2024, 11:31:17 Gick in på JLCPCB och kollade. De verkar ha ett lite ovanligt sätt att jobba på.

De tillhandahåller information om några olika stackuper som de kan tillhandahålla (tjocklekar, material, dielektrisk konstant osv) och en kalkylator för att beräkna ledarbredder för just den stackup du väljer (ur deras utbud), och sen måste du rita med just dessa bredder. Verkar inte som att de justerar någonting själva (för att sänka pris förmodar jag).
Sen huruvida det faktiskt verifieras om det blev rätt kan man ju undra. De skriver vad jag kan se, inget om toleranser osv.
JLCPCB skrev:We offer high precision Controlled Impedance PCB at no extra charge, with a minimum trace width of 3.5mil, minimum via size of 0.2mm, and minimum BGA of 0.3mm.

Note: You need to design your controlled impedance PCB according to our PCB stackup.
Learn more about our stackup.
Kalkylator:
https://jlcpcb.com/pcb-impedance-calculator
Men om man utgår från deras material. Då lär man inte hamna fel?
Skriv svar