Author Topic: Routing qspi flash memory to work 120MHz  (Read 3171 times)

0 Members and 1 Guest are viewing this topic.

Offline jealcunaTopic starter

  • Contributor
  • Posts: 39
  • Country: ec
Routing qspi flash memory to work 120MHz
« on: September 02, 2021, 05:18:50 pm »
It is my first time routing a qspi flash memory to work with 120 mhz in order to get 480mbps. So I place the chip as close as possible, but I am not sure if the length difference between io lines, clk and cs will be a problem.

I attach a picture of my design.

 

Online ataradov

  • Super Contributor
  • ***
  • Posts: 11720
  • Country: us
    • Personal site
Re: Routing qspi flash memory to work 120MHz
« Reply #1 on: September 02, 2021, 07:35:18 pm »
This looks fine. The traces are short enough. If you are worried, add a bit of a length on the IO0 line - just fill the space between it and SCK line. But even that should not be necessary here.
Alex
 
The following users thanked this post: jealcuna

Online Benta

  • Super Contributor
  • ***
  • Posts: 6215
  • Country: de
Re: Routing qspi flash memory to work 120MHz
« Reply #2 on: September 02, 2021, 07:53:47 pm »
Looks fine to me as well. Don't worry.
 
The following users thanked this post: jealcuna

Offline jealcunaTopic starter

  • Contributor
  • Posts: 39
  • Country: ec
Re: Routing qspi flash memory to work 120MHz
« Reply #3 on: September 02, 2021, 08:18:16 pm »
Thank you very much  ;D :-+
 

Offline jealcunaTopic starter

  • Contributor
  • Posts: 39
  • Country: ec
Re: Routing qspi flash memory to work 120MHz
« Reply #4 on: September 02, 2021, 08:22:09 pm »
So I was reading some references design from cypress and modify the pcb like the picture attached. I hope don't make worse the simple first design :D

Now every io trace has the same length to clk line. I read that sometimes is necessary to route with impedance matching tracks.
« Last Edit: September 02, 2021, 08:25:48 pm by jealcuna »
 

Offline langwadt

  • Super Contributor
  • ***
  • Posts: 4684
  • Country: dk
Re: Routing qspi flash memory to work 120MHz
« Reply #5 on: September 02, 2021, 08:42:59 pm »
I don't know if length is that important at 120MHz but if so I'd be more concerned about vias/no vias
 
The following users thanked this post: Someone, jealcuna

Offline Cerebus

  • Super Contributor
  • ***
  • Posts: 10576
  • Country: gb
Re: Routing qspi flash memory to work 120MHz
« Reply #6 on: September 02, 2021, 09:14:15 pm »
Velocity of propagation (as a velocity factor) in a transmission line is \$ \frac{1}{\sqrt{{\epsilon}_r}} \$ where \$ {\epsilon}_r \$ is the dielectric constant, which for FR-4 pcb material is about 4, so the velocity factor for FR-4 is 0.5, so signals will travel across the PCB at ~150 Mm/s. So 1mm of track length difference is going to be 6.7 ps. Look at your timings and I think you're see that a few mm is going to be neither here nor there. Your half clock time is 8.33 ns, 1250 times shorter than the slew due to a 1mm delay. So you're good, by a long way as far as length matching is concerned.
Anybody got a syringe I can use to squeeze the magic smoke back into this?
 
The following users thanked this post: jealcuna

Offline langwadt

  • Super Contributor
  • ***
  • Posts: 4684
  • Country: dk
 
The following users thanked this post: jealcuna

Online ataradov

  • Super Contributor
  • ***
  • Posts: 11720
  • Country: us
    • Personal site
Re: Routing qspi flash memory to work 120MHz
« Reply #8 on: September 02, 2021, 11:02:11 pm »
Yes, if anything I would be more worried about the vias. See if you can pass the IO3 trace between CS and IO1 and route it that way on the same layer. Or route it over the CS signal and jump the CS to the other layer, as it is not so sensitive to timings.

Also, you CS does not seem to be connected anywhere.

Length matching does not matter as much, but there is no harm in having it.

« Last Edit: September 02, 2021, 11:03:57 pm by ataradov »
Alex
 
The following users thanked this post: jealcuna

Offline jealcunaTopic starter

  • Contributor
  • Posts: 39
  • Country: ec
Re: Routing qspi flash memory to work 120MHz
« Reply #9 on: September 03, 2021, 12:42:28 am »
Ok, so my final design is attached.

io3 now have 7 mm more than the others signals. Following the equation of Cerebus, (6.7ps * 7) = 46.9ps for extra delay. For 120Mhz freq clock a 8.33ns represent 178 times the delay generated for 7mm of extra length.

I assume that if the clock freq is 100 times bigger than extra delay there is no problem, isn't it?

Thank you very much to all of you guys.
 

Offline TiN

  • Super Contributor
  • ***
  • Posts: 4543
  • Country: ua
    • xDevs.com
Re: Routing qspi flash memory to work 120MHz
« Reply #10 on: September 03, 2021, 12:46:23 am »
Also ensure there is solid ground plane under chip and this routing, so you get nice uniform impedance response for high-speed. Any reason why passives are so large (0805?).
YouTube | Metrology IRC Chat room | Let's share T&M documentation? Upload! No upload limits for firmwares, photos, files.
 
The following users thanked this post: jealcuna

Offline jealcunaTopic starter

  • Contributor
  • Posts: 39
  • Country: ec
Re: Routing qspi flash memory to work 120MHz
« Reply #11 on: September 03, 2021, 12:53:21 am »
Yes, I had plane ground right after front layer.

Sometimes we assembly pcb by ownself. So 0805 is friendly in pick and place process.
 

Online ataradov

  • Super Contributor
  • ***
  • Posts: 11720
  • Country: us
    • Personal site
Re: Routing qspi flash memory to work 120MHz
« Reply #12 on: September 03, 2021, 01:04:41 am »
This is fine. 7 mm is not significant. But I would either use the free board space to better length match the reset of the traces, or remove the matching entirely. Both options are fine, but since you already went into trouble of putting the matching in, just do it for style points.
Alex
 
The following users thanked this post: Someone

Offline jealcunaTopic starter

  • Contributor
  • Posts: 39
  • Country: ec
Re: Routing qspi flash memory to work 120MHz
« Reply #13 on: September 03, 2021, 02:54:09 am »
Like this?

I am not sure if this is correct because of serpentine clock. Cypress guideline recommend a straight line.
 

Online ataradov

  • Super Contributor
  • ***
  • Posts: 11720
  • Country: us
    • Personal site
Re: Routing qspi flash memory to work 120MHz
« Reply #14 on: September 03, 2021, 03:11:42 am »
This looks like you moved the whole chip away to fit the serpentine. Don't do that. Just straighten the lines if they don't fit and require moving components around. 
Alex
 

Offline jealcunaTopic starter

  • Contributor
  • Posts: 39
  • Country: ec
Re: Routing qspi flash memory to work 120MHz
« Reply #15 on: September 03, 2021, 03:28:26 am »
Ok, I will take in consideration. In this case I had extra space so, I did not have to move components. I still having doubts about serpentine clk
 

Online DavidAlfa

  • Super Contributor
  • ***
  • Posts: 6218
  • Country: es
Re: Routing qspi flash memory to work 120MHz
« Reply #16 on: September 03, 2021, 07:14:33 am »
Thats a nice over-engineering there! I'm not expert here, but that's overkill.
If you check existing layouts, you'll see length matching done on much faster signals or longer traces.
In your case, don't worry, it's perfect as it was, compact and tidy.
Hantek DSO2x1x            Drive        FAQ          DON'T BUY HANTEK! (Aka HALF-MADE)
Stm32 Soldering FW      Forum      Github      Donate
 
The following users thanked this post: jealcuna


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf