i.mx6ull extend to FPGA by EIM interface with bare code (or freertos)

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.mx6ull extend to FPGA by EIM interface with bare code (or freertos)

1,481 Views
jimmyli
Contributor IV

Hi,

     We selected i.MX6ULL(MCIMX6Y2CVM05AB) for our project, and runing the bare code provide by official SDK, rather than linux.

     Now, we are going to use EIM interface to extand FPGA (our code is in nor flash through QSPI), but the SDK didn't provide the example about EIM. So, we config the EIM interface as to i.mx6ull reference manual. EIM interface can work, but some problems occur that we don't know why.

    Below the problem that help you can provide some advices to help us.

    1>test code,

        see attachment《test-EIM》.

        Note: Only select CS0_B / Data0-15 / RW external signals.

    2>EIM logical wave.

        see attachment 《test-Wave》.  

    3>problem

        a. when CS is low, data lines can transfer right data.

        b. when CS is high, data lines can't transfer right data;

        c. Question: our design is that CS must hold low while transfering all 256 bytes data, but CS will turn high abnormally while transfering 256 bytes data.

     How can we fix the problem, or another eim example code to help us ?

     Thanks very much.

 

----EIM data wave

jimmyli_0-1661917370073.png

 

Labels (1)
0 Kudos
Reply
9 Replies

1,468 Views
Sanket_Parekh
NXP TechSupport
NXP TechSupport

Hi @jimmyli 

I hope you are doing well.

The reason behind CS pin is remains high is 100k Pull up is applied in firmware configuration. Please find the reference from below.

//EIM DATA0-15 CS RW
IOMUXC_SetPinMux(IOMUXC_CSI_MCLK _EIM_CS0_B, 0U);
IOMUXC_SetPinConfig(IOMUXC_CSI_MCLK_EIM_CS0_B,
IOMUXC_SW_PAD_CTL_PAD_DSE(2U) |
IOMUXC_SW_PAD_CTL_PAD_SPEED(2U) |
IOMUXC_SW_PAD_CTL_PAD_PUS(2U));

PUS = 2 means 100K pull up from software. Please change the value of PUS to 0U, that means 100K pull down. After that CS pin remains low during the data transmission.

Thanks & Regards

Sanket Parekh

1,465 Views
jimmyli
Contributor IV

Hi Sanket,

      It's very appriciated for your helpful reply.

      I will try and test.

 

     Thanks again.

      

0 Kudos
Reply

1,421 Views
Sanket_Parekh
NXP TechSupport
NXP TechSupport

Hi @jimmyli 

I hope you are doing well.

can you please send the schematic of your board as we need to cross-check if any other module is not driving CS0 Pin?

Thanks & Regards

Sanket Parekh

0 Kudos
Reply

1,389 Views
jimmyli
Contributor IV

Hi Sanket,

      I haven't customer's schematic yet, but below is the logical wave that can help you to understand.

      Thanks.

jimmyli_0-1664370672424.png

 

0 Kudos
Reply

1,375 Views
Sanket_Parekh
NXP TechSupport
NXP TechSupport

Hi @jimmyli ,

I hope you are doing well.

As you are developing the test app to transfer 256 bytes of data through EIM, your configuration of WCR is not correct for the same.
you should keep the WWSC value as low as possible. To configure other bits of WCR for your need you can refer to section 21.9 in the RM.
 
Thanks & Regards
Sanket Parekh
0 Kudos
Reply

1,349 Views
jimmyli
Contributor IV

Hi Sanket,

        Sorry for replying too late.

         I will try again and give you a feedback asap.

        Thanks very much.

0 Kudos
Reply

1,321 Views
Sanket_Parekh
NXP TechSupport
NXP TechSupport

Hi @jimmyli 

Waiting for your response.

Thanks & Regards

Sanket Parekh

0 Kudos
Reply

1,401 Views
Sanket_Parekh
NXP TechSupport
NXP TechSupport

Hi @jimmyli 

Waiting for your response.

Thanks & Regards

Sanket Parekh

0 Kudos
Reply

1,191 Views
jimmyli
Contributor IV

Hi Sanket,

      Sorry for replying too late.

      We have tested the mathede that you applied, but it can't work well.

      Do you have other tips to us ?

      Thanks very much.

0 Kudos
Reply