EBU Addressing on XMC4700

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
Qu19_4750531
Level 2
Level 2
Hi All,

I am attempting to read memory via EBU interface.
In my hardware ALE is connected to pin AD11 and CLE is connected to pin AD12.
Based on addressing alignment mentioned in reference manual 14.6.7 I i understand that internal pin mapping is ABH [16:1], and external pin mapping is AD[15:0]
With this understanding, since my CLE is connected to pin AD12 , internally its connected to ABH13 hence I am wrtiting command at address 0x60002000.
Similarly ALE is connected to pin AD11, internally its connected to ABH12 hence i am writing command at address 0x60001000.

*(volatile uint16_t*)(0x60001000) = 0x0020;// ALE
*(volatile uint16_t*)(0x60002000) = 0x0090;// CLE

However, when i dont see expected result. Like when i am writing address 0x0020 i see dont see ALE going high at all.

Can someone please let me know if my understanding on addressing is correct ?

P.S- Also, i have tried using addressing based on external pin mapping AD[15-0], i still dont see any difference.

Regards,
Query1920
0 Likes
1 Reply
jferreira
Employee
Employee
10 sign-ins 5 sign-ins First like received
Hi,

Did you check the section 14.10.7 Interfacing to Nand Flash Devices in the reference manual?
Usually the a NAND flash device is interfaced using the EBU in asynchronous 16 bit non-multiplexed mode or NAND flash mode, EBU_AD[15:0] <-> FL_NAND_IO[15:0], EBU_A(16)->FL_NAND_ALE, EBU_A(17)-> FL_NAND_CLE

In this configuration,
EBU Region + 0x00000 access the data registers of the NAND flash (CLE=ALE=0)
EBU Region + 0x20000 access the address register of the NAND flash (CLE=0, ALE=1)
EBU Region + 0x40000 access the command register of the NAND flash (CLE=1, ALE=0)

AHB addresses are byte addresses and addresses on the external bus are 16-bit word addresses. Therefore [AHB address(18)]->[external address(17)] and [AHB address(17)]->[external address(16)].

Regards,
Jesus
0 Likes