详解TINY6410硬件电路设计之一
对于嵌入式硬件工程师来说,在不同的公司有不同的待遇和工作:在研究所之类的国企,你有充足的时间和关系来完成嵌入式的硬件设计,在面对市场的企业,你必须有直面问题,解决问题的能力。企业以利益最大化为目标进行日常操作,这就不奇怪企业为了节省成本来进行硬件电路的修改。对于嵌入式来说,有三个部分是最重要的,那就是CPU,NANDFLASH电路和SDRAM电路。这三个部分可以看作是整个嵌入式系统的大脑,神经元和脑容量。只有三者配合良好,性能最优才算是嵌入式系统可以工作,剩余的工作就是端口的扩展了。我接触的第一块ARM板子是友善的TINY6410,硬件电路也经常拿来分析,现在以我的感悟聊聊嵌入式的神经元部分----NANDFLASH电路。
本文引用地址:https://www.eepw.com.cn/article/267639.htm 由于S3C6410集成了NANDFLASH控制器,所以可以方便的进行NANDFLASH的连接。该板子采用SUNSUNG的K9F2G08X0B(256M x 8 Bit NAND Flash Memory)作为NANDFLASH存储器。首先,来分析下NANDFLASH的内存大小,下图引用自K9F2G08X0Bdatasheet。
从图中可以看出该NANDFLASH全部大小为:
2048(block)*64(page)*(2K+64)(byte)=(2112Mbits=)264Mbyte
如果不考虑每页的64byte的校验,那么该NANDFLASH的大小为
2048(block)*64(page)*(2K)(byte)=(26843546Mbits=)256Mbyte,那么和文章开始的256M可以对应上。那么8bit什么意思呢?
从上图中可以看出,该NANDFLASH的位宽为8位,那么也不难理解为什么写成K9F2G08X0B(256M x 8 Bit NAND Flash Memory)了。
既然已经了解NANDFLASH的特性,下一步查看如何将该NANDFLASH和S3C6410连接起来。K9F2G08X0B和CPU6410的硬件连接如下:
S3C 6410核心板NANDFLASH接口
K9F2G08X0B 连接网络
从K9F2G08X0B的数据手册中可以知道,该NANDFLASH为8位宽的,因此选用S3C6410的LDATA0-7为数据通道进行数据的传输。而对于16位的NANDFLASH K4X1G163PE - FGC6(8)(64Mx16 Mobile DDR SDRAM (VDD/VDDQ 1.8V/1.8V))则使用LDATA0-15。
关于NANDFLASH的操作,早期的会有一个A8位作为上下半页的判断,随着时代的发展,现在的NANDFLASH操作起来更加方便和容易。对于K9F2G08X0B来说,其数据传送周期如下:
评论