Coder Social home page Coder Social logo

fcb_emulator's People

Watchers

 avatar

fcb_emulator's Issues

Impovment of NAND emulator

  • add manufacturer bad blocks in emulator reset in predefined proportion
  • add timebombs in predefined proportion excluding manufacturer bad blocks
  • remove remnants of dhara error passing
  • add functions returning erased/empty block status and marked bad block status
  • remove remnants of dhare sector reading/writing

Enhance block state for erase

  • random fatal failure to erase
  • random non-fatal failure to erase (repeat recover)
  • random non-fatal failure to erase (repeat does not recover)

Move usage statistics to block state

  • add erase, write and read count etc. to block descriptor
  • remove structure with global emulator statistics
  • implement function that populates global statistics iterating blocks

Test data generation

  • genrate big table with ~15 Mb total size and record size ~48 byte
  • generate big table approximately 1 Mb with records ~200 byte
  • generate table with single record ~180 byte

Design in memory block reader/writer

Buffer for prepare data in memory for writing to a hole NAND erase block.
Writing to buffer must enforce 2-byte alignment.
Includes header for a block with a magic, identification of writing session, CRC32 and offset/size of written data.
CRC32 is calculated for data written, block header excluded.
Block is shuffled after writing.

Adding tables for multiple blocks

  • start new block buffer with incomplete header
  • add small table
  • add big table
  1. calculate number of records that fit to available space in block
  2. write table header
  3. write data
  4. commit block header

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.