The simulation environment

The simulation framework is composed by:

  • a web interface

  • a remote database

  • a cloud simulation environment


You can access to SSDExplorer website after the registration on SSDVision and the subsequent subscription of a plan.


There are two kinds of license:

Free demo

  • No fees

  • Users can store their simulation data on a personal cloud database (Microsoft Azure cloud services) composed by:

    • A private sample database - fully customizable

    • A private error correction code database - fully customizable

    • A private characterization database - fully customizable

    • A private memory timings database - fully customizable

    • A private controller database - fully customizable

    • A private firmware database - fully customizable

    • A private workload database - fully customizable

    • A private simulation database

  • Simulation machines, where a cycle accurate SSD simulator runs, are:

    • Shared among demo users

    • Configured with a reduced simulation engine performance

  • The number of simulations that a user can schedule is limited to 4.

Full access

  • License fees
    (fee price changes as a function of the number of computational slots assigned to the plan)

  • Users can store their simulation data on a personal cloud database (Microsoft Azure cloud services) composed by:

    • A private sample database - fully customizable

    • A private error correction code database - fully customizable

    • A private characterization database - fully customizable

    • A private memory timings database - fully customizable

    • A private controller database - fully customizable

    • A private firmware database - fully customizable

    • A private workload database - fully customizable

    • A private simulation database

  • With a full license the user can create a "child user" and give him one or more computational slots. The main user can whenever revoke the computational slot to one of his childs, in this case the slot will be assigned again to the main user.

  • Simulation machines, where a cycle accurate SSD simulator runs, are:

    • Dedicated

    • Configured with a customizable simulation engine performance (with 1, 4 or 8 computational slots)


SSD Components:

Memory architecture

In this database users can store, modify and create tables containing the architectural parameters of the memory describing the chip. Reliability characterization and memory timings databases are connected to this database.

Error correction code

In this database users can store, modify and create tables containing the error correction code configurations with the number of soft and hard decoders, the maximum number of iterations before error correction code failure and the maximum number of correctable bits.
These data are used in the reliability characterization.

Reliability characterization

In this database users can store, modify and create tables containing real memories characterization data gathered from memory endurance (the number of program/erase cycles of a memory block), data retention tests and read disturb tests.
With Raw Bit Error Rate mode enabled, the database accepts page errors as average and standard deviation values, otherwise the database accepts data as codeword failure probabilities.
A memory page is defined as uncorrectable when the number of errors retrieved after a read operation exceedes the error correction code capabilities.

Memory timings

In this database users can store, modify and create tables containing the timings of the considered memories.
Non Volatile Memories are supposed to work with standard ONFI/Toggle interfaces.
Modelled technology can be:

  • 2D NAND flash memories (SLC, MLC, TLC)

  • 3D NAND flash memories

  • Emerging RRAM memories

  • Emerging MRAM memories

  • Emerging PCM memories

Controller architecture

In this database users can store, modify and create tables containing all the information related to the SSD's controller architecture such as: the number of channels and memory dies per channel, the queuing policy, the host interface protocol, etc.

Firmware

In this database users can store, modify and create tables containing all the information related to the SSD firmware such as the host queue depth, the error recovery flow, the overprovisioning percentage, the write amplification factor and the queuing priority followed by the user operations.

Workload

In this database users can store, modify and create all the information related to the host workload like the block size, the average submission and completion timings, the host workload type, etc.
The workload generation mode can be set as "User generated workload" if the user wants to leverage the SSDExplorer Virtual Machine (based on QEMU), otherwise a synthetic workload generator is used.


User simulations:

Create new simulation

Through a guided wizard users can connect the blocks defined in the previous databases thus building the SSD architecture to simulate.

Results

This is the results database of the simulation platform.
Users can manage all SSD simulations and collect corresponding data.


At the first login all private databases are automatically built.
When the SSDExplorer License expires, to continue to use the tool, you can buy a new license at SSDVision website. After that please log out from the SSDExplorer website and then log in back.