Electronic – Desoldering CPU from PCB or holding it in reset

flashnand-flashreset

I am currently working with a NAND flash that I want to dump. The goal is to take a look at the data that is stored in the filesystem.
To do so I soldered 8 wires to the NAND flash to access it while it was still placed on the PCB. To read out the memory I used a Bus Pirate.

I managed to dump the entire flash like that but when I started to retrieve the data I ran into a bunch of problems.

After some research I found out that it can be problematic to access the NAND flash while it is still located on the board because it is possible that the CPU gets powered up during the process and corrupts the dump.
The best way to handle this would be probably desoldering the NAND flash from the board and dumping it again.
However I know that the CPU has a reset pin on the board that becomes active when it is pulled to ground. What I am asking myself is would it be also a viable to establish a connection between the reset pin and a ground pin (e.g. connecting them with a wire) to hold the CPU in reset and to dump the content of the flash afterwards or do I really have to desolder the flash from the board?

Best Answer

This depends on the design. To dump contents of the flash chip it must be powered, and the driving device (driving outputs) on the PCB must be in high impedance (Hi-Z) state. If you have flash connected to the processor directly and you are sure, in reset condition, having consulted its datasheet, that it will pull all flash-connected/related signals to Hi-Z, then you will be able to dump the flash easily. However if there's any active buffer device in between which is not going to Hi-Z on reset condition you will not be able to perform the dump.

Related Topic