ΣSigmaStudio Ask AI Русский Log in

Write data into NOR Flash sector

Processors & DSP John21 Aug 17, 2021 00:00 16 replies Original on forum ↗
Subscribe
John21 Question
Aug 17, 2021 00:00

Hi all,

I am working on BF609, When i try to write some data like 0x1254 in particular sectors using pc28f128P33_Write() into nor flash. It writes the data into that sector.

But when I read that sector it cannot give the exact data I passed into that sector, the write and read addresses are same. Before write when I read it gives some data value and after write it gives the value which is not matching, every time the same values shown even when I write into another sectors.

Please somebody help me to fix this issue.

Thanks..

Regards

John

Edit Notes
.

[edited by: John21 at 11:22 AM (GMT -4) on 17 Aug 2021]

blackfin

ADIApproved Reply
Aug 19, 2021 00:00

Hi,

Please download and install BF609 BSP package from the below link.
download.analog.com/.../ADI_ADSP-BF609_Evaluation_Board-Rel1.1.0.exe

Refer "pc28f128p33.c" file from POST example in the below path to know about writing and reading the data from pc28f128P33 flash <Installation path>\ADSP-BF609_Evaluation_Board-Rel1.1.0\BF609_EZ-Board\Blackfin\Examples\Power_On_Self_Test

Regards,
Anand Selvaraj.

John21 Reply
Aug 28, 2021 00:00

Hi Anand Selvaraj,

I tried after referred "pc28f128p33.c" file from power on self test and write data (0x123) in 60 sector but I got the value 70 after write that data into that sector.

When I tried to read after sector erase I got the value as ff. Was that right?

By default, any data available in nor flash? If it is what kind of data available and what happens if those data's erased?

Am i able to write and read data into nor flash again?

Regards,

John

Dart Reply
Aug 31, 2021 00:00

Hi Anand Selvaraj,

Any update?

Regards,

John

ADIApproved Reply
Sep 1, 2021 00:00

Hi,

We are able to write and read in flash successfully. Please refer the attached project which writes data 0x123 in 60th sector address(0xB0720000) and read the value from the same address.

During a block erase, the WSM executes a sequence of internally-timed events that conditions, erases, and verifies all bits within the block. Erasing the flash memory array changes “zeros” to “ones”. Memory array bits that are ones can be changed to zeros only by programming the block.

For more details regarding flash, we recommend to refer datasheet of pc28f128P33.

BF609_flash_pc28f128P33_Core0.zip

Regards,
Anand Selvaraj.

4670.Capture.JPG
4670.Capture.JPG
John21 Reply
Sep 3, 2021 00:00

Hi Anand Selvaraj,

I tried to read and write it works, but after executed entire chiperase() I can't able to read and write. Also tried your program but the manufacture code is not matching after set.

I think its because of the chip erase, before the chip erase able to read and write in any sector.

Is that right? What kind of data available in nor flash initially?

Thanks for the reply..

Regards,

John

Dart Reply
Sep 3, 2021 00:00

Hi,

I am also facing this problem after erasing the entire nor flash.

Help me to fix this issue.

Thanks.

Dart Reply
Sep 4, 2021 00:00

Hi,

After getting the manufacture and dev Id's it can't match right?

What is the reason for that issue?

John21 Reply
Sep 6, 2021 00:00

Hi,

When will I get the update?

Regards,

John

ADIApproved Reply
Sep 7, 2021 00:00

Hi,

After erasing all sectors, we are able to write and read the values correctly. please refer the screenshot.
To assist you better,can you please share us the below points.
1. Are you using custom board or Ezkit.
2. Can you please try to flash simple led program in to the parallel flash and let us know the result. Device programmer "bf609_pc28f128p33_dpia.dxe" is used to communicate with flash and load the ldr in the flash.

Regards,
Anand Selvaraj.

5633.Capture.jpg
5633.Capture.jpg
Dart Reply
Sep 7, 2021 00:00

Hi Anand Selvaraj,

1.We are using ezkit.

2. Like you said we tried blinking led program into flash and it worked fine.

This is what we tried "pCmdBuffer.SEraseSect.ulFlashStartAddr = FLASH_START_ADDR;
Result = pc28f128P33_Control( CNTRL_ERASE_ALL, &pCmdBuffer );"

When we run your code in our board flash code not matched "Detected manufacturer code of 0x90 and device code of 0x90Test Failed: Flash codes do not match what we expectedTest Failed: Flash codes do not match what we expected"

How to solve this issue?

Regards,

Ragav

ADIApproved Reply
Sep 8, 2021 00:00

Hi,

Below is our setup details:
CCES: 2.10.0
BF609 rev 0.2

While debugging the attached project, we got below results.
Detected manufacturer code of 0x89 and device code of 0x8821 Erasing all sectors Testing sector 60...
Test passed

Device programmer for flash "bf609_pc28f128p33_dpia.dxe" is used to erase the flash and write the loader file in to flash. If LED example boots successful, it means that you were able to erase and write into flash successfully.

Can you please share us the steps to follow to reproduce this issue and please share us your board details.
Also, please share Status register value after erasing. Use "ReadStatusRegister" function to get Status register value.

4846.BF609_flash_pc28f128P33_Core0.zip

Regards,
Anand Selvaraj.

Dart Reply
Sep 8, 2021 00:00

Hi,

Our setup details:

CCES 2.9.3.0

ADSP BF609 EZ-board 1.0 rev 0.2

Please refer the attached code here..

4617.nor.zip

Regards,

Ragav.

Dart Reply
Sep 9, 2021 00:00

Hi,

After erasing I got the following "ReadStatusRegister" value "0xffa0207e".

Regards,

Ragav

Dart Reply
Sep 13, 2021 00:00

Hi,

Any update ?

Thanks.

Dart Reply
Sep 20, 2021 00:00

Hi Anand Selvaraj,

When will I get the update?

Thanks and Regards,

Ragav.

ADIApproved Reply
Sep 21, 2021 00:00

Hi,

We have created project based on your source files and able to write and read the data from flash successfully. Please refer the attached project.
We are also tried with different BF609 EZ-KITs and works fine. If possible can you please try with some other BF609 EZ-kit.

If still you are facing issue, can you please email to Processor Support through: processor.support@analog.com
Please make sure to add the link of this EZone thread while contacting private support.

nor_test_Core0.zip

Regards,
Anand Selvaraj.