Programmable Devices
CPLDs, FPGAs, SoC FPGAs, Configuration, and Transceivers
Announcements
Need Forum Guidance? Click here

Search our FPGA Knowledge Articles here.
19206 Discussions

Macronix configuration device failed to work with Cyclone V

IDeyn
New Contributor III
1,466 Views

Hi all!

 

I have a custom board with Cyclone V (5CEBA4), and we decided to use Macronix configuration device (MX25L25645) for external configuration storage. 

As it could be seen here , Macronix flash devices are supported for usage with Cyclone V, 

but only in 3-byte addressing mode. Because my jic file is much smaller than the half of our Macronix flash size, it shouldn't be an issue.

 

The problem right now is that after successful programming FPGA fails to start after a power cycle. 

 

I tried to do what Intel FPGA Knowledge database suggests - install the patch for Quartus 18.1 or use Quartus 20.1 , and of course I checked the Disable EPCS/EPCQ ID check button - nothing had helped. 

 

Also, I exploited Generic Flash Programmer capabilities - based on Macronix flash programming flow template, I created a new sequence (with 3-byte addressing mode). During programming, I can successfully read Device ID, Write and Read status and configuration register, and programming successfully and at 100 %. But after a power cycle, User mode program never starts.

 

I will be grateful for any help.

 

--

Best regards,

Ivan

0 Kudos
15 Replies
YuanLi_S_Intel
Employee
1,456 Views

Hi Ivan,


Just want to check if SOF programming is successful and the design is able to work as intended?


Also, have you change the MSEL setting to active serial?


Regards,

Bruce


IDeyn
New Contributor III
1,433 Views

Hi Bruce!

 

Thanks for your reply.

 

Yes, sof programming is successful - LEDs are blinking, and MSEL setting is correct.

 

 

--

Best regards,

Ivan

YuanLi_S_Intel
Employee
1,404 Views

Hi Ivan,


Thanks for your reply. Can you let me know how do you generate JIC file? And are you programming with Quartus Programmer? If so, what version?


Also, during configuration, can you check the pin AS_DATA, DCLK, nSTATUS & nCS?


Regards,

Bruce


IDeyn
New Contributor III
1,382 Views

Hi Bruce!

 

Sorry for a delay with an answer. 

 

As about jic file generation - Using Convert Programming file -> Configuration Device (MX25L256) ; Mode (Active Serial) .

Quartus Programmer version 20.1.

 

Right now I prepare screenshots with pins activity. I will post them in a few days.

 

--

Best regards,

Ivan

IDeyn
New Contributor III
1,356 Views

 

IMG_20210830_131820.jpg

The data was taken by the logic analyzer with a resolution of 2 ns. The logic analyzer threshold was set to 1.65V. 

 

1. Oscillogram with 3 cycles (attempts) of the configuration. You can see how many (approximately) bytes of data were received when reading in the corresponding CS window. The place where the configuration process was terminated is marked green with the FINAL_DATA signature.

1_общий_план .png

 

2. Here, you can see the moments of the request STATUS_REGISTER (0x05), DEVICE_ID (0x9F) and FAST_READ (0x0B) with addresses 0x000000 and 0x00012C.

2_первая_поптыка.png

 

3. In these images, you can see in detail the requests STATUS_REGISTER (0x05) and DEVICE_ID (0x9F).

3_статус.png 4_id.png

 

5. The start of the FAST_READ(0x0B) operation from the address 0x000000 is shown. There is a strange pause in the clock signal in SCLK (marked in green).

5_начало_чтения.png

 

6.The moment of configuration process termination (the FINAL_DATA area from the first image). Why might the configuration get interrupted?

6_финальное.png

 

IDeyn
New Contributor III
1,299 Views

I also want to add some valuable information.

 

In the previous version of the project, I used the same connection scheme with Micron memory.

schematic_1.jfif

Everything worked. 

 

We can, if necessary, try installing Micron flash on the current board for testing.

YuanLi_S_Intel
Employee
1,235 Views

I think the connection should be fine. The issue you got is no bitstream data receive during configuration from the flash. Can i comfirm with you that the micron you use is MX25L25645GMI-08G?


IDeyn
New Contributor III
1,217 Views

I use MX25L25645GZN-08G.

 

Chip_macro.jfif



--
Best regards,
Ivan

YuanLi_S_Intel
Employee
1,190 Views

It seems like the package use for both MX25L25645GMI-08G and MX25L25645GZ2I-08G are different. Can you please check the differences?


IDeyn
New Contributor III
1,179 Views

According to the datasheet the only difference between these chips is their package.

"M" is 16-SOP, "Z2" is 8-WSON (8x6 mm), and "ZN" is 8-WSON (6x5 mm).

I use "ZN" 8-WSON (6x5 mm).

As far as I know, the package option is neither related to functionality nor performance.

 

Package_legend.jfif

 

 

--
Best regards,
Ivan

IDeyn
New Contributor III
1,068 Views

Hi Bruce!

 

Are there any updates for my problem?

 

--

Best regards,

Ivan

YuanLi_S_Intel
Employee
1,001 Views

Sorry for being late as i was discussing with internal team. After several checking, it could be due to connection (as you use the same connection with micron) & programmed JIC programming file (as you couldnt read the bitstream during configuration). Since you have successfully programmed the JIC but unable to start up. Could you read back the JIC programmed from the flash and compare with the pre-programmed JIC?


IDeyn
New Contributor III
904 Views

Hi Bruce!

 

Thank you for your answer.

 

Well, there are actually some differences between the jic file I requested (function "Examine") and the file I programmed. I attached them both. It is worth noting that the "Verify" function is executed without errors.

 

--

Best regards,

Ivan

IDeyn
New Contributor III
668 Views

Hi Bruce!

 

I'm really looking forward to new information.

 

--

Best regards,

Ivan

GirishCiena
Beginner
126 Views

Is there any further update? The same issue I am facing, I am using the Macronix NOR Flash(MX25L12872FM2I-10G) with Cyclone 5 just to store some configurations required during power on the system. Previously I am using Micron NOR flash. The reason behind not functioning of Macronix NOR Flash with Cyclone 5 was dummy cycle. But my questions are below:

How these both Micron and Macronix NOR flash working with Cyclone 4?

How Micron NOR Flash works with 12 dummy cycles with cyclone 5 as the Device selected in Quartus programmer is "EPCQ"?

Why Micron NOR Flash works with 8 Dummy Cycles with cyclone 5 as the device selected in Quartus programmer is "EPCS"?

 

All the failures happen on powering up the system.

All the JIC files (With Device selection "EPCS" / "EPCQ") are programmed successfully and even read back (verify) test was successfully passed in the Quartus Programmer tool.

 

Macronix -  MX25L12872FM2I-10G

Micron - MT25QL128ABA1ESE-0SIT

Quartus Programmer V 20.1

Reply