28HL512 Sector Architecture Selection

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

cross mob
Maria1
Level 1
Level 1
First solution authored First reply posted First question asked

Hello,

I'm using S28HL512TFPBHI010 memory and I want to change sector architecture from hybrid to uniform. I tried to write new data to Configuration Register 3 (CFR3N[3] - UNHYSA - value 1) but when I read this register again it still has written old value: 0x00 (default). 

I checked my functions for register writing and for example I can change the interface by writting 0x41 to CFR5N and then read it by OCTOSPI inteface.

I read that writing to UNHYSA can be blocked by setting ASPO[1] - ASPPER bit to 0, but I read this register and it has got default value 0xFF - 1 = Persistent Protection Mode is disabled.

Is there anything else I should do to change sector oragnization?

 

Best Regards

0 Likes
1 Solution
Maria1
Level 1
Level 1
First solution authored First reply posted First question asked

HI,

I found a bug - the problem was too few dummy cycles in read procedure.

Thanks

View solution in original post

0 Likes
4 Replies
Ronak
Moderator
Moderator
Moderator
50 solutions authored 250 sign-ins 50 replies posted

Hi,

Can you please confirm if the SPI connection is working?

Can you try reading the device id and confirm if you read a valid ID or not?

Also can you please share the waveform of the connection when you send the write command to the Flash?


Thanks,
Ronak

0 Likes
lock attach
Attachments are accessible only for community members.
Maria1
Level 1
Level 1
First solution authored First reply posted First question asked

Both interfaces are working. I can change interface to OSPI, read device ID and change Configuration Register 4 from default value - 0xA8 to 0xC8. I attach waveforms from the oscilloscope. Sequence which I send after applying power:

  1.  Write Enable (SPI) - CMD - 0x06,
  2.  Set Octospi in SDR mode (SPI) - CMD - 0x71, ADDRESS - 0x800006, VALUE - 0x41
  3.  Read Memory ID (OSPI) - CMD 0x9F9F, ADDRESS - 0x00000000, VALUE - 0x34, 0x5A, 0x1A, 0x0F, 0x03, 0x90 - correctly read by my microcontroller (send by serial port to PC)
  4. Read Configuration Register 4 (OSPI) - CMD - 0x65, ADDRES - 0x00800005, default VALUE - 0xA8
  5. Write Enable (OSPI) - CMD - 0x0606
  6. Polling for write enable (OSPI) - CMD - 0x05, ADDRESS - 0x00000000, read VALUE - 0x02 (which means - Program, erase or register write is enabled)
  7. Set Configuration Register 4 to 0xC8 - CMD - 0x71, ADDRESS - 0x00800005, VALUE - 0xC8
  8. Read Configuration Register 4 (OSPI) - CMD - 0x65, ADDRES - 0x00800005, VALUE - 0xC8

Using this sequence I can change Configuration Register 3 from default 0x00 to 0x10 but I can't write 1 to UNHYSA bit (0x00 -> 0x08).

Thanks

0 Likes
Ronak
Moderator
Moderator
Moderator
50 solutions authored 250 sign-ins 50 replies posted

Hi,

You have shared the code sequence for the Register 4. Can you please share the command sequence that is used for writing the UNHYSA bit of Configuration Register 3 with the waveforms

Thanks,
Ronak

0 Likes
Maria1
Level 1
Level 1
First solution authored First reply posted First question asked

HI,

I found a bug - the problem was too few dummy cycles in read procedure.

Thanks

0 Likes