Author Topic: Byte write to external SDRAM  (Read 418 times)

Novakov

  • Active Member
  • *
  • Posts: 2
Byte write to external SDRAM
« on: January 18, 2019, 04:55:54 PM »
I'm trying to use the SDRAM chip on SMF2000 board. I'm using provided reference design which is configured to use SMC. 32-bit and 16-bit access works correctly (both read and write), however 8-bit write doesn't.

Using base address 0xA0000000 only 8-bit write at offests: 0x0, 0x1 and 0x8, 0x9 work. The cycle repeats every 16 bytes, writes at remaining offests are ignored (no BusFault but memory content is unchanged). I've attached sample program (C++) that zeroes entire memory, than it writes 0xAD to each memory byte. Memory content after the execution is shown on attached screenshot.

I also tried to replicate design from scratch with the same result.

Novakov

  • Active Member
  • *
  • Posts: 2
Re: Byte write to external SDRAM
« Reply #1 on: January 19, 2019, 08:17:29 PM »
Update: I've used IP Core for SDRAM from this repository: https://github.com/zhelnio/ahb_lite_sdram as a replacemnt for CoreSDR_AXI IP (and AHB-Lite to AXI conversion) and it worked (even with default paramters).

If someone else would be able to verify the result, then I'm going to report support case to Microsemi as (at least for now) that CoreSDR_AXI is broken

Antti Lukats

  • Sr. Member
  • ****
  • Posts: 494
    • Trioflex
Re: Byte write to external SDRAM
« Reply #2 on: February 12, 2019, 12:21:19 PM »
Hi

sorry for no quick answer - Microsemi IP core works too, but we are in backlog updating the reference designs, sorry.

and many many thank you for trying out and posting info about the success with the 3rd part SDRAM IP core, this is very good to know that it worked so easily!

ups, we have actually not verified byte access, we know that the SDRAM works but we have not done much testing ourself. I would still assume microsemi IP can also support byte accesses.

br
Antti
« Last Edit: February 12, 2019, 12:25:16 PM by Antti Lukats »