Giter Site home page Giter Site logo

mnsim_v1.1's Introduction

MNSIM_V1.1

                          MNSIM version1.1 ReadMe

=========================================================================================

---------------------------------Update Information--------------------------------------

  1. Update the input parameters settings.
  2. Fix several bugs.

----------------------------------Running MNSIM------------------------------------------

  1. Windows / MacOS: Create a project with all of the source files, set simulation configuration file (sim-config) and output results file address in argv[]; Linux: Build the project with $ make. If no sim-config and result files are specified, MNSIM will load the default (SimConfig.txt and result.txt), run MNSIM with $ ./MNSIM. If users specify their own configurations / result file by passing the ".txt" argument:$ ./MNSIM .txt .txt

  2. Input Parameters Setting (MNSIM version 1.1):


Config part:

Simulation_Level: Estimation                                                        
Target_Outputs: Area/Latency/Power/Energy (Optimization Targets)                   
Application: CNN or BNN

Application_Scale: Number of Layers (conv + fully-connected)                                                                    
Weight_Polarity: 2                                                              
Cell_Type: 1T1R                                                                 
RRAM_Model: ideal                                                                   
RRAM_Bit_Levels: 8                                                              
Transistor_Tech(nm): 130                                                            
Min_Crossbar_Size & Max_Crossbar_Size: 2^k, MNSIM will find the optimal design   
Max_Crossbar_Size 1024                                                              
Write_Method: ideal                                                                 
Line_Tech:[18,22,28,36,45,65,90]                                                    
Action_Type: Calculation                                                            
Pipeline: 0-not pipelined, 1-pipelined  

Network part:

#: Layer number, from 1 to Application_Scale    

Convolutional Layer:
Layer# {
    Name Conv
    Inputsize: input feature map size
    Outputsize: output feature map size
    Kernelsize
    Stride
    Inputchannel
    Outputchannel
}           
Fully-connected Layer:
Layer# {
    Name FC
    Inputlength
    Outputlength
}                   										   	

  1. Unit of the outputs: area: m^2, energy: J, power: W, latency: s.

----------------------------------Future Work and Update---------------------------------

  1. Support for different cell types: 0T1R and 1T1R
  2. Support for different bit levels of RRAM
  3. Add accuracy simulation of matrix-vector multiplications and CNN

=========================================================================================

MNSIM version1.1 is only a test version. If you have any questions and suggestions about MNSIM please contact us via email.

Lixue Xia: [email protected] Zhenhua Zhu: [email protected]

mnsim_v1.1's People

Contributors

zhu-zhenhua avatar

Watchers

James Cloos avatar

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.