Accessing EBI of SAM E70

Go To Last Post
5 posts / 0 new
Author
Message
#1
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I'm a newbie to ARM cortex series and I have to use ATSAME70Q21 for my project. I have a FPGA to be interfaced with the SAME70 via EBI. Is there an API/ASF for SAM E70 for accessing the EBI? How do I communicate with it?

Nice to see you here... :)

Last Edited: Thu. Aug 10, 2017 - 11:06 AM
  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

You'll need to use the static memory controller (SMC) to access most devices on the EBI (only exception is SDRAM which used the SDRAMC).

Always check for examples in the ASF library, file->new->Example project and look at examples under the SAME70 explained board. In this case there isn't an SMC example but if you look at ALL devices and search SMC you'll see that the SAM4E xplained pro has an example. The atmel smart devices that use the ASF library will most of the time have near identical code for peripheral functions and external memories like this. The thing you need to be careful of is that the appropriate pins are assigned as address lines, data lines and control lines. Look in board_init();

Hope this helps!

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Thank you so much SBK_Lou for the guideline. I will try the SMC example on SAME70 probably this month and mention the outcomes.

Nice to see you here... :)

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

Adding to this case. I have doubt when interfacing SAME70 to FPGA via EBI. I have used all the 16 bit data bus and 24 bit address to communicate with FPGA. Chip select NCS0 is provided. While going through the datasheet I found two write enable signals NWR0 and NWR1 is required to enable lower byte and upper byte respectively whereas read enable is single pin. Currently I used NWE signal only for write enable keeping in mind single write enable will be necessary for 16 bit communication between SAME70 and FPGA. I need to confirm whether lower byte enable and upper byte enable signals should be separately given for 16 bit communication between SAME70 and FPGA. FPGA used is Artix 7.

HHH

  • 1
  • 2
  • 3
  • 4
  • 5
Total votes: 0

I'm not using an FPGA but I'm using other devices that require an upper/lower byte selection on the 16 bit data bus.

You may need to use NBS0 (lower byte) and NBS1 (upper byte).

For an LCD controller that I'm using I have NBS0 (PC18) connected to LB# and NBS1 (PD15) connected to UB#.