论文部分内容阅读
SD卡(Secure Digital Card),中文名称之为安全数码卡。随着SD卡广泛应用在数码相机、手机、视频播放器等多种消费电子设备上,SD卡的市场需求也越来越大。SD卡以Nand Flash作为其存储设备,主要任务是存储数据,因此,通过SD卡存储到Flash中数据的正确性直接关系到SD卡的性能。 本文基于北京市嵌入式系统重点实验室所设计的SD卡芯片ZD5820,ZD5820是一种Flash控制芯片,可以兼容多种大小和型号的Flash芯片。为了保证对Flash中存储数据读写的正确性,根据SD中Sector的大小,提出了RS(534,518)纠错算法,最多可以实现8个纠错的功能。 本文主要研究了RS码的算法。基于传统的编码和解码算法,在数学理论上对传统的RS码编码算法进行了进一步的推导,提出了改进的编码算法。改进后的编码算法电路既可以实现编码过程中求校验码的功能,也可以实现解码过程中求伴随式的功能。由于两者不会同时进行,两者对电路的复用既不会延长算法的时间,又节省了硬件资源,减小了面积。 针对数字电路中的除法操作占用较多的资源和时间而乘法操作相对能节省资源和时间的特点,通过数学理论推导对解码算法做出了改进。将传统解码算法中的除法操作以乘法操作代替,改进后的乘法操作在理论上不会改变纠错结果。 然后根据改进后的算法设计了电路结构,并依据电路结构以verilog硬件编程语言代码实现,完成了RTL(Real Time Language)级仿真验证。仿真验证结果表明,改进后的电路的纠错功能是正确无误的。随后在ZD5820系统中加入了改进的RS码,并进行FPGA验证,FPGA专门验证了RS码的功能,验证结果同样证明了RS码的正确性。再对整个ZD5820系统进行长时间的FPGA测试,测试结果显示无数据错误,这也证明了RS码能够正常工作。ZD5820流片后的测试结果显示RS码能够正常工作。 ZD5820芯片已经进入量产并且商用,首次量产规模达到一百万片。因此,本RS码设计方法也具有较高的应用价值。