EEVblog® Electronics Community Forum
Electronics => Beginners => Topic started by: sparkydonkey on June 17, 2026, 02:48:18 pm
-
how difficult is it for if one had wanted to make their own NAND flash interface from scratch? I admit I don't 100% understand NAND itself but I do for the several(plus i/o) pins it provides on the other hand
although I did find one IP core for flash interface (to a 32/64bit user interface bus) I nevertheless had to wonder about making my own instead otherwise, considering that both I wanted to use a 16bit bus and that I'm not worried about the performance of the core of the interface itself as I simply wanted to read-only at 16Mbps or less
(I'll also add this footnote so you know how harmless the 'from scratch' aspect is: this has nothing to do with retaining personal data or running the os for anything that possibly harms humans. think of it a bit alike to the game cartridge for your Nintendo system, if it bugs up or goes dead then uhhh ok then just get another game? pretty harmless in a manner of speaking no?)
-
Interface from NAND flash (I'm assuming you're referring to the ONFI-ish parallel interface) to what, exactly? An 8/16-bit MCU bus? ISA? PCI? IDE? SCSI? USB?
-
ah, none of the four different manufacturers ever mentioned ONFI in their datasheet so I weirdly enough didn't know of that existence till now. at least that explains why there was quite a lot of NC pins on some models (regarding following the ONFI-given 48pin footprint)
and its a custom bus on equally custom mcu, I admit I don't have a particular bus clock in mind now but thats nevertheless flexible atm
-
That's very vague but not particularly difficult; search for NAND flash interfacing application notes for some examples. You'll need a way to run bus cycles that are either address, command, or data, as determined by the ALE and CLE inputs.
-
The more difficult part will be to implement wear leveling.
But the question is indeed a bit vague. From scratch here can mean implement something with the use of TTL or CMOS ic's like for instance Ben Eater does. It can also be that you are using a FPGA to implement it in. The mentioning of finding an IP core is an indication to the latter.
In that case you can most likely find some examples in verilog or VHDL on the web.
For what type of nand flash is it going to be. Serial or parallel.
If I was to embark on a quest like this, I would start with doing a lot of research. Browse the web for information on nand flash and get me datasheets on the different nand flashes and controllers for that matter.
-
pcprogrammer thanks for that reply and I've indeed added a few more datasheets recently, although still none for controllers yet
even then I'm still scratching my head a little bit at whether I'm getting a bad cache/dns copy or not from Issi what with their product table showing 2024/2025 status dates for several items (and even a few pdf urls bounces you back to the main webpage instead, basically a silent 404 error)
https://www.issi.com/US/product-flash.shtml (https://www.issi.com/US/product-flash.shtml)
anyone mind confirming if its me or not?
..anyway when I'm more certain about things (especially not switching processors as well) I might consider finally starting a preliminary-project thread on this forum
-
even then I'm still scratching my head a little bit at whether I'm getting a bad cache/dns copy or not from Issi what with their product table showing 2024/2025 status dates for several items (and even a few pdf urls bounces you back to the main webpage instead, basically a silent 404 error)
https://www.issi.com/US/product-flash.shtml (https://www.issi.com/US/product-flash.shtml)
anyone mind confirming if its me or not?
I see the same happening here. The ones that have prod as status (nand flash) do open up in a pdf. Like the IS34MW02G084 for instance.