Sunday, July 15, 2018

NAND中的备用(spare)页

部分节选自:Improving NAND Throughput with Two-Plane and Cache Operations
http://www.macronix.com/Lists/ApplicationNote/Attachments/1907/AN0268V1_Improving%20NAND%20Throughput%20with%20Two-Plane%20and%20Cache%20Operations.pdf

NAND数据的页长可以是
(1)512字节,通常称为“小页”
(2)2 KB,称为 “大页”
(3)或 4 KB页。

最常见的SLC NAND是2KB的页面。

该页面扩展了可寻址空间,通常称为“备用区域”,用于存储ECC、奇偶校验和其他元数据。对于2KB的页面NAND,空闲区域通常是64个字节。因此,每个页面实际上有2112字节的可寻址空间。
目前市场上提供的SLC NAND页面大小如下:
(1)512 字节页+16 字节备用:“小页”。 它只有较小的密度。通常擦除块大小为16 KB,因此这种类型的NAND也称为“小块”NAND。
(2)2 KB页+ 64 字节备用:“大页”。市场上常见的NAND大小从512 MB到8GB。擦除块大小为128 KB。
(3)4 KB页+224 字节备用。常见的尺寸大于4GB。擦除块大小为512 KB。

下面列出了SLC NAND产品中可用的典型命令。
Read Commands
- Page Read
- Cache Read Sequential
- Cache Read Random
- Two-plane Read
- Two-plane Cache Read
Program / Erase Commands
- Page Program
- Cache Program
- Two-plane Program
- Two-plane Cache Program
- Block Erase
- Two-plane Block Erase
ID/ Status Commands
- ID Read
- Status Read / Status Enhance Read
- Reset
Other Commands
- Parameter Page Read (ONFI)
- Feature Set Operation (ONFI)
- Unique ID Read (ONFI)

Saturday, March 24, 2018

向Arduino Nano(祖国版)中上传程序

主角是Arduino Nano,淘宝买的,十几块钱一个,低价果然代表这玩意不是正品,查阅网上资料可以发现,这个Nano使用的是WCH CH340G串口芯片组,而这个芯片也就是最明显的Arduino Nano clone(山寨版)。
8382c2436dd1794f9606684604324a10.jpg
在Windows上,插入以后系统可以正确识别,不过在Debian上,稍微有点问题。可能因为系统比较旧,插入以后不识别,后来找了找,发现有这么个http://www.wch.cn/download/CH341SER_LINUX_ZIP.html驱动。下载后,root权限下 make && make load 即可。
180324175324.png
安装完成后,重新插入USB设备,dmesg可以发现有提示已经载入。再重新打开Arduino IDE,发现仍然无法写入数据,执行chmod 777 /dev/ttyUSB0后,正确配置即可上传程序。

国产芯片真的很便宜……