NOTICE: The Processors Wiki will End-of-Life on January 15, 2021. It is recommended to download any files or other content you may need that are hosted on processors.wiki.ti.com. The site is now set to read only.

StarterWare ELM

From Texas Instruments Wiki
Jump to: navigation, search

TIBanner.png

Introduction[edit]

Non-managed NAND flash memories can be dense and nonvolatile in their own nature, but error-prone.When reading from NAND flash memories, some level of error-correction is required. GPMC uses ELM(error-location module) to extract the error from the syndrome polynomials which are calculated through GPMC as part of NAND read.Based on the syndrome polynomial value, the ELM can detect errors, compute the number of errors, and give the location of each error bit.

Features :

  • 4, 8, and 16 bits per 512-byte block error-location based on BCH algorithms
  • Eight simultaneous processing contexts
  • Page-based and continuous modes
  • Interrupt generation on error-location process completion.

Programming[edit]

Following sections explains the progrmming sequence to be followed to calculate the error location using ELM.

  • Initialize the ELM module as part of GPMC controller initialization by following steps :
    • Reset the module using ELMModuleReset().
    • Wait till ELM module is out of reset using ELMModuleResetStatusGet().
    • Configure the internal OCP clock gating strategy to free running using ELMCAutoGatingConfig().
    • Set the idle mode to no idle using ELMCIdleModeSelect().
    • Set the OCP Clock activity when module is in IDLE mode to ON using ELMOCPClkActivityConfig().
    • Clear the pending interrupts using ELMIntStatusClear().
    • Enable the interrupt for syndrome polynomial 0 using ELMIntConfig().
    • Sets the Error correction level for BCH alogorithm using ELMErrCorrectionLevelSet().
    • Set the size of the buffers for which the error-location engine is used to 0x7FF using ELMECCSizeSet().
    • Set the mode of module to PAGE MODE.
  • Follow the follwing steps to calculate the number of errors and error location after syndrome polynomial read from GPMC --
    • Set the fragments of syndrome polynomial for error-location processing using ELMSyndromeFrgmtSet().
    • Start the error-location processing for the polynomial set.
    • After the processing completion, interrupt is generated. Check the same using ELMIntStatusGet().
    • Clear the interrupt using ELMIntStatusClear().
    • Get the status of error-location processing using ELMErrLocProcessingStatusGet().
    • Get the number of errors using ELMNumOfErrsGet().
    • Gets the Error-location bit address using ELMErrLocBitAddrGet()
E2e.jpg {{
  1. switchcategory:MultiCore=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article StarterWare ELM here.

Keystone=
  • For technical support on MultiCore devices, please post your questions in the C6000 MultiCore Forum
  • For questions related to the BIOS MultiCore SDK (MCSDK), please use the BIOS Forum

Please post only comments related to the article StarterWare ELM here.

C2000=For technical support on the C2000 please post your questions on The C2000 Forum. Please post only comments about the article StarterWare ELM here. DaVinci=For technical support on DaVincoplease post your questions on The DaVinci Forum. Please post only comments about the article StarterWare ELM here. MSP430=For technical support on MSP430 please post your questions on The MSP430 Forum. Please post only comments about the article StarterWare ELM here. OMAP35x=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article StarterWare ELM here. OMAPL1=For technical support on OMAP please post your questions on The OMAP Forum. Please post only comments about the article StarterWare ELM here. MAVRK=For technical support on MAVRK please post your questions on The MAVRK Toolbox Forum. Please post only comments about the article StarterWare ELM here. For technical support please post your questions at http://e2e.ti.com. Please post only comments about the article StarterWare ELM here.

}}

Hyperlink blue.png Links

Amplifiers & Linear
Audio
Broadband RF/IF & Digital Radio
Clocks & Timers
Data Converters

DLP & MEMS
High-Reliability
Interface
Logic
Power Management

Processors

Switches & Multiplexers
Temperature Sensors & Control ICs
Wireless Connectivity