S6J329C reading wrong data from memory after chiperase

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

cross mob
Anonymous
Not applicable

Dear Cypress support team,

Our company works in the ISP field and we build our own programmers and related drivers for programming devices.

I am working with a TRAVEO S6J329C and I am facing some problems.

I have created a small firmware for the device in order to erase, read and program both TCFLASH and WORKING FLASH.

When I chip-erase one of the memories, the first time I read the memory content the values are not correct: as first byte I read 0x00 instead of 0xFF. If I perform again the read operation I get the correct value 0xFF. This appens for every address I try to read, so it is independent from the memory region I try to access. I read from the memory accessing to it by using an *((volatile unsigned char *) pointer using AXI_FLASH addresses.

Using the same firmware but on a S6J32GE device I don't face the same issue.

Is there something that I am missing? The fact is that I would like to read the correct values from the memory from the first access, without having to do a "fake" read just to get rid of the first wrong byte.

Thank you all in advance.

0 Likes
1 Solution
Anonymous
Not applicable

I am using JTAG method. I have solved the reading issue, it was a problem with PLL frequency settings.

Thank you very much!

View solution in original post

0 Likes
2 Replies
HongyanW_86
Moderator
Moderator
Moderator
100 solutions authored 100 replies posted 50 solutions authored

Could you please clarify the programming method used in your programmer, Jtag or parallel? Do you have the issue if using Cypress Flash Programmer (serial writer via UART)?

http://www.cypress.com/documentation/software-and-drivers/flash-mcu-programmer-1

Best regards,

Amy Wang

0 Likes
Anonymous
Not applicable

I am using JTAG method. I have solved the reading issue, it was a problem with PLL frequency settings.

Thank you very much!

0 Likes