Pagina 1 di 1

Bus di RAM

MessaggioInviato: 9 apr 2020, 9:22
da giorgio67
Buongiorno.

Sto progettando un Router con il Chip SOC MT7620
Ho preso un router ASUS con lo stesso Chip per prendere spunto.

Ho solo pochissimi Centimetri quadrati per cui devo semplificare al massimo lo schema.

Il BUS parallelo della RAM, ha segnali dell'ordine di 1.5nS (333Mhz)
Hanno messo resistenze da 47 Ohm su dati e indirizzi, e le linee sono "Matched net lengt"

Nella scheda che avevoprima, con una CPU simile non c'erano queste due cose.
La RAM era più vicina di così, quasi si toccava.
Cosa mi dite ?

Immagine

Re: Bus di RAM

MessaggioInviato: 9 apr 2020, 10:27
da hyroio
E' una DDR2, dovresti farcela. Che CAD usi ?

Io ne ho cablata una con kicad, funziona ma sono sdovuto scendere a 150Mhz,
realizzazione non e' stata perfetta, kicad non aveva ancora funzionalita' di length matching che ora mi pare abbia.

Ricorda 2 cose fondamentali.
1) Le linee devono essere adattate in impedenza, altrimenti hai i famosi "ring" in testa ai bit. Per adattarle, alcuni chip hanno settaggi nei registri interni, per altri devi usare resistenze stub "serie" esterne, in genere cadono attorno ai 22ohm ma devi calcolarle. E qui ce' tutto unio studio sugli stub, e i vari tipi da impiegare, ma importante e' Imp out = Imp in + R.

Ti consiglio il famoso "High Speed Digital Design, a book of black magic".

2) La lunghezza non influisce con l'impedenza della linea, come vedi da qui

https://www.eeweb.com/tools/microstrip-impedance

ma influisce sui timing, sui 330Mhz devi averle tutte uguali, o quasi. E qui entra in gioco il CAD. Io ho fatto con Kicad ma non ho avuto molta pazienza, o lasciato differenze anche di 5mm tra una e l'altra, e non volevo piu di 4 layer per ridurre i costi, risultato, non perfetto.

Poi ci sono tanti altri accorgimenti da seguire, ma, anche qui molto e' legato al CAD. Se hai check di signal integrity incorporati etc.

Re: Bus di RAM

MessaggioInviato: 9 apr 2020, 14:18
da giorgio67
Ciao, grazie per la risposta.

Uso Altium.
Però non posso stare un mese sul bus, devo togliermelo in fretta.
Vorrei rimuovere le resistenze per problemi di spazio.
I layer sono 4, per limitare i costi.
Ho trovato uno schema di un iPod, dove le resistenze non le hanno.

Sull'impedenza ero già impazzito per la USB, alla fine ho rinunciato, non sono riuscito a capirla.
Sembra che 90 ohm non sia fattibile sul PCB

Lenght match, volevo evitarlo, ma non mi sembra difficile, posso metterlo.
Potrei mettere la flash sotto alla CPU, oppure molto vicino, potrei ridurre il bus a 1/3 che nella foto.

No so perché la precedente CPU, la RT5350, funzionava bene senza nessuna paranoia, anche se la frequenza della CPU era la stessa, magari era più bassa la frequenza del BUS

Non erano DDR2, erano DRAM

Re: Bus di RAM

MessaggioInviato: 9 apr 2020, 15:31
da hyroio
Se funziona bene ad alte frequenze lo vedrai solo abilitando l'instruction cache. Cioe' se provi da u-boot, verifica sia abilitato l'instruction cache.

Se non metti le resitenze e' possibile che tu debba scendere di frequenza di bus, il calcolo per l'adattamento d'impedenza non e' complesso. Io lo farei. Poi devi vedere cosa puoi fare dai registri software, settaggi drive strength etc,

Per quanto si voglia fare presto, connettere delle DDR2 richiede tempo. Tutto il resto lo puoi anche dare all'autorouting. A meno che tu non abbia un signor CAD che sbroglia bene da solo, ma dovrai comeunque impiegare tempo a confogurare tutti i segnali.

DRAM ? Immagino tu parli di SDRAM (DRAM oggidi se ne usano poche), che e' molto piu semplice come cablaggio rispetto a DDR2.

Re: Bus di RAM

MessaggioInviato: 9 apr 2020, 15:36
da hyroio
PS: secondo me farsi un lavor del genere per fatrsi un router non ha senso. Mio consiglio, prendine uno gia esistente, o una delle tanste schede neutre gia sul mercato, che e' meglio. Poi il software lo fai come vuoi tu.

Re: Bus di RAM

MessaggioInviato: 9 apr 2020, 16:51
da giorgio67
Non ho spazio ne soldi per mettere un modulo già fatto.
E poi ne ho fatti 10'000 del precedente, speriamo altrettanti di questo.

http://www.etron.com/manager/uploads/EM ... S_v1.4.pdf
Si, era una SDRAM
Però guardando il datasheed del RT5350 è sempre uguale 1.5nS
Però OpenWrt, su quel micro partiva in 70 secondi, in questo parte in 20 secondi.
Escluso il WiFi che ancora non mi va.

Penso che ci metterei altro che un mese a capire e modificare i registri che mi dici.
Meglio se mi fa subito uboot standard che ora sto facendo andare sul ASUS

Conosci Altium ?
In passato non sono riuscito a sbrogliare ad impedenza costante.
Che impedenza avrebbe il bus parallelo senza resistenze ?
Come potrei impostare il routing ?

Re: Bus di RAM

MessaggioInviato: 10 apr 2020, 11:24
da giorgio67
Sono in crisi.
Vorrei togliere quelle resistenze sul BUS.
Lo schema Mediateck le riporta.
Questa board le ha
https://world.taobao.com/item/42025847440.htm

In questa scheda li hanno tolti, ed ha pure passato il FCC
https://fccid.io/ZL5-MMWF/Schematics/Co ... 44099.html

Quanto rischio togliendole ?
E' un problema di spazio.

Re: Bus di RAM

MessaggioInviato: 11 apr 2020, 11:52
da lelerelele
non sono esperto di cio che vuoi fare tu, però so che gia arrivare a 100MHz si devono usare vari layer di isolamento e trasporto dati, per disaccoppiamenti, ed è indispensabile che le piste siano a distanze precise con lunghezze uguali, non è che sia una passeggiata.

saluti.