Page 1
NAND_Flash_Controller User Guide Software User Guide for NAND host controller iWave Systems Technologies Pvt.Ltd...
Page 2
NAND_Flash_Controller User Guide Disclaimer iWave Systems reserves the right to change details in this publication including but not limited to any Product specification without notice. No warranty of accuracy is given concerning the contents of the information contained in this publication. To the...
Example: __________________________________________________________________ 15 Environment configuration ___________________________________________________________ 16 Minicom/Tera Term configuration ___________________________________________________ 16 Hardware Setup _________________________________________________________________ 16 NAND Utility Test Procedure _________________________________________________________ 17 Block Erase Test _________________________________________________________________ 17 Data Transfer Test _______________________________________________________________ 17 5.2.1 Write Page Test _______________________________________________________________ 17 5.2.2 Read Page and Data Integrity Test _________________________________________________ 17...
Page 5
NAND_Flash_Controller User Guide List of Tables Table 1 :Acronyms & Abbreviations ......................... 6 iWave Systems Technologies Pvt.Ltd...
NAND_Flash_Controller User Guide INTRODUCTION 1.1 Purpose and scope This document is the Software User Guide for testing NAND Flash Controller. This guide provides detailed procedure to test the NAND flash. 1.2 References • Petalinux tool document 2020.1 • UBIFS document 1.3 List of Acronyms...
<path_to_Patch>/PATCH000-iW-PRFOZ-SC-01- RX.X-RELX.X-PL20.2_customization.patch ../ • To apply the patch file, execute the below command. host@host/<Directory>/zynq-iwg28m~$ patch -Np1 < ../PATCH000-iW-EMFEW-SC-01-R1.0- REL0.1-PL20.1_customization.patch • The FPGA XSA file from deliverables is located in the below path. EMFEW_Release_1.0/iW-EMFEW-PF-01-R1.0/iW-EMFEW-FF-01-R1.0/iW-EMFEW-BN-01- R1.0/top_test_mod.xsa iWave Systems Technologies Pvt.Ltd...
• To create BOOT.bin, execute the below command. The BOOT.bin will be created in images/linux folder. host@host/<Directory>/zynq-iwg28m~$ petalinux-package --boot --format BIN - -fsbl images/linux/zynq_fsbl.elf --u-boot images/linux/u-boot.elf -o images/linux/BOOT.bin Refer the BINARY PROGRAMMING section to update the Linux kernel binary iWave Systems Technologies Pvt.Ltd...
• system.bit.bin file will be created in the same directory as BIF file. This binary file can be used by U-Boot to directly program the Zynq PL. • Refer the BINARY PROGRAMMING section to update the bitstream binary. iWave Systems Technologies Pvt.Ltd...
Make sure that the Digilent plugin for Xilinx tools is installed in the Host PC if DIGILENT JTAG programming Cable is used. • Digilent plugin for Xilinx Tools for Linux PC can be downloaded from https://reference.digilentinc.com/lib/exe/fetch.php?tok=329b1e&media=http%3A%2F%2Ffiles.digilent.c om%2FSoftware%2FAdept2%2BRuntime%2F2.18.3%2Fdigilent.adept.runtime_2.18.3-x86_64.tar.gz iWave Systems Technologies Pvt.Ltd...
Connect the JTAG programmable cable between the JTAG connector in the carrier board and Host PC. • Open the Xilinx Vitis 2020.2 tool and click on “Xilinx Tools” and the following drop-down menu appears. Figure 2: Xilinx Program Flash iWave Systems Technologies Pvt.Ltd...
Click on Image file browse and select BOOT.bin binary that has to be programmed. • Click on FSBL File browse and select zynq_fsbl.elf file • Click on program button to program the binaries to the iW-RainboW-G28M platform and programming will be done as shown below. Figure 4: Program QSPI iWave Systems Technologies Pvt.Ltd...
0 0x15000000 BOOT.bin • If Micro SD is used, execute the below commands to copy the BOOT.bin from Micro SD to RAM. iWave-G28M> mmc dev 0 iWave-G28M> fatload mmc 0 <ram_address> BOOT.bin 3.2.1.2 Example: iWave-G28M> fatload mmc 0 0x15000000 BOOT.bin...
NAND_Flash_Controller User Guide • In case of TFTP, execute the below commands to load BOOT.bin from remote PC to RAM. iWave-G28M> tftpboot <ram_address> <server_ip>:BOOT.bin • Once the binary is copied to RAM, execute the below commands to erase the QSPI flash and write the binary.
4. When powered on, you will see boot sequence messages on the Minicom / Tera Term console as shown in figure below. Observe NAND specific messages of detection, part number and size. Figure 6: NAND detection print on boot log...
Figure 8: Page write 5.2.2 Read Page and Data Integrity Test 1. Read the file from NAND and store into a new file using the below command root@zynq-iwg28m:$ mtd_debug read /dev/mtd0 0x00000000 0x2000 /media/sd- mmcblk1p1/read.img 2. On read completion ensure that the number of bytes written are read back Copied 8192 bytes from address 0x00000000 in flash to /media/sd- mmcblk1p1/read.img...
/dev/mtd0 2. This test performs erase, write, read and checks for data integrity for the full NAND device. Additionally scans for Bad Blocks and updates the Bad Block Table 3. On completion of the test, check whether it passed or failed 1.
• Perform file read/write and compare operation: 1. Create any random large file (less than 200MB) on already mounted eMMC partition. 2. Copy the file from eMMC partition to NAND mtd mounted portion as shown below root@zynq-iwg28m:$ cp /media/sd-mmcblk1p1/<file - 1> /mnt 3.
• Perform file read/write and compare operation: 6. Create any random large file (less than 200MB) on already mounted eMMC partition. 7. Copy the file from eMMC partition to NAND mtd mounted portion as shown below root@zynq-iwg28m:$ cp /media/sd-mmcblk1p1/<file - 1> /mnt 8.
Page 21
NAND_Flash_Controller User Guide iWave Systems Technologies Pvt.Ltd...
Need help?
Do you have a question about the NAND and is the answer not in the manual?
Questions and answers