Author Topic: sharing SDRAM  (Read 2875 times)

0 Members and 1 Guest are viewing this topic.

Offline javad2040Topic starter

  • Contributor
  • Posts: 28
  • Country: us
sharing SDRAM
« on: March 29, 2018, 07:17:50 am »
hello guys.
I currently work on my project that contain ARM MCU, FPGA and SDRAM components. to save cost and reduce the complexity of PCB, I decided to share the SDRAM between ARM and FPGA. can everybody offer ideas for implement it?
 

Offline Jeroen3

  • Super Contributor
  • ***
  • Posts: 4632
  • Country: nl
  • Embedded Engineer
    • jeroen3.nl
Re: sharing SDRAM
« Reply #1 on: March 29, 2018, 07:32:11 am »
To save cost and reduce the complexity of PCB
I don't think you save costs and reduce complexity of a PCB and software by using a non-standard method of interfacing with memory.

You can however use the FPGA on the MCU memory interface.
« Last Edit: March 29, 2018, 12:18:51 pm by Jeroen3 »
 

Offline technix

  • Super Contributor
  • ***
  • Posts: 3508
  • Country: cn
  • From Shanghai With Love
    • My Untitled Blog
Re: sharing SDRAM
« Reply #2 on: March 29, 2018, 11:22:38 am »
The best way is actually not sharing that SDRAM on the board directly. Instead it might be better to hook the SDRAM solely to the FPGA, implement a bus matrix and SDRAM controller in the FPGA, and expose one of the bus matrix slaves to the ARM core.

Or just bump up to a Zynq, which allows FPGA matrix access the memories attached to the ARM side over the AXI port.
 

Offline Scrts

  • Frequent Contributor
  • **
  • Posts: 803
  • Country: lt
Re: sharing SDRAM
« Reply #3 on: March 29, 2018, 02:17:53 pm »
hello guys.
I currently work on my project that contain ARM MCU, FPGA and SDRAM components. to save cost and reduce the complexity of PCB, I decided to share the SDRAM between ARM and FPGA. can everybody offer ideas for implement it?

You cannot share SDRAM. The only option I see here is to hook up SDRAM to FPGA, initiate memory controller in the FPGA and interface FPGA to your ARM as if it would be SRAM interface.
 

Offline asmi

  • Super Contributor
  • ***
  • Posts: 3378
  • Country: ca
Re: sharing SDRAM
« Reply #4 on: March 29, 2018, 05:52:27 pm »
hello guys.
I currently work on my project that contain ARM MCU, FPGA and SDRAM components. to save cost and reduce the complexity of PCB, I decided to share the SDRAM between ARM and FPGA. can everybody offer ideas for implement it?
That's not going to work (assuming that by SDRAM you mean DDR3) for many reasons. If you need a high bandwidth channel FPGA <-> ARM, consider using Zynq instead of FPGA.

Offline technix

  • Super Contributor
  • ***
  • Posts: 3508
  • Country: cn
  • From Shanghai With Love
    • My Untitled Blog
Re: sharing SDRAM
« Reply #5 on: March 29, 2018, 06:29:43 pm »
hello guys.
I currently work on my project that contain ARM MCU, FPGA and SDRAM components. to save cost and reduce the complexity of PCB, I decided to share the SDRAM between ARM and FPGA. can everybody offer ideas for implement it?
That's not going to work (assuming that by SDRAM you mean DDR3) for many reasons. If you need a high bandwidth channel FPGA <-> ARM, consider using Zynq instead of FPGA.
Zynq or Cyclone V SoC might be the best for this purpose, or if you have the gates to spare and the time to negotiate with an ARM rep to grab that free license of ARM Cortex-M0 (or if your company have Chinese operation the free license of Cortex-M3 too.) However if you want to stick to older technology the FPGA + ARM structure isn't that bad (for example AT91SAM9260 + EP4CE22E22C5N which can be BGA-free.)
 

Offline ali_asadzadeh

  • Super Contributor
  • ***
  • Posts: 2147
  • Country: ca
Re: sharing SDRAM
« Reply #6 on: March 30, 2018, 01:28:55 pm »
Following :), Guys I think the OP meant general SDRAM not DDR SDRAM, since he mentioned ARM MCU, the MCU Speeds are Not high enough for DDR SDRAM ;)
ASiDesigner, Stands for Application specific intelligent devices
I'm a Digital Expert from 8-bits to 64-bits
 

Offline DC1MC

  • Super Contributor
  • ***
  • Posts: 1925
  • Country: de
Re: sharing SDRAM
« Reply #7 on: March 30, 2018, 01:55:30 pm »
The best way is actually not sharing that SDRAM on the board directly. Instead it might be better to hook the SDRAM solely to the FPGA, implement a bus matrix and SDRAM controller in the FPGA, and expose one of the bus matrix slaves to the ARM core.

Or just bump up to a Zynq, which allows FPGA matrix access the memories attached to the ARM side over the AXI port.

+1 for @technix solution, if you have an external ARM MCU and a separate FPGA and (S)DRAM, is the best way to do it, one can even map the FPGA registers as memory and be done with it. It's a hassle on the digital design side, but is doable.
If  this is no academic project, then for all the practical applications the modern FPGA with embedded ARM cores are a much better way to do it, and you have them in all speed and strength grades. And of course, if ARM core isn't a must have, there are the strange animals being developed by ALTERA-Intel matrimony, but for the moment are not mature or supported enough.

 Best of luck,
 DC1MC
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf

 

- - -
-->