Please, help us to better know about our user community by answering the following short survey:
https://forms.gle/wpyrxWi18ox9Z5ae9
TAC V0.0.4 @ 2021.04.07
NeurerConfig.h
Go to the documentation of this file.
1
// The configured options and settings for SystemC developments
2
// Will be used to configure Main_File/include/Config.h in all subdirs
10
// The user-configurable part
11
// Define if want to simulate biological neurons
12
13
#define BIOLOGICAL_NEURON true
14
15
#if BIOLOGICAL_NEURON
16
#define USE_INDIVIDUAL_RESTING_POTENTIAL false // If to use individual resting potential neurons
17
#define RESTING_POTENTIAL -70000 // The value of resting potential, in uV
18
#define MEMBRANE_POTENTIAL_TOLERANCE 1000 // The value is within tolerance level to resting potential
19
#define MEMBRANE_THRESHOLD RESTING_POTENTIAL + 20000; //Threshold is at -50 mV
20
#endif // of BIOLOGICAL_NEURON
21
// !!
22
// Do not edit below this line until you know waht you are doing
23
// !!
24
25
// Take over basic configuration
26
#include "
ProcConfig.h
"
27
28
// List names of .ini files
29
#undef INI_FILES
30
#define INI_FILES "Simulator Neurons"
31
32
// List keywords legal in 'Simulator.ini'
33
#undef INI_SIMULATOR_KEYWORDS
34
#define INI_SIMULATOR_KEYWORDS "Version"
35
36
// List
37
#define INI_NEURON_KEYWORDS "Version"
38
39
// For the biology, redefine time resolution and clock rate
40
// Resolution of time and clock frequency
41
#undef SCTIME_RESOLUTION
42
#define SCTIME_RESOLUTION 10,sc_core::SC_US
43
#define NEURER_LEAKING_TIME 10
44
// Gates operating time
45
//#define SCTIME_GATE sc_time(20,sc_core::SC_PS)
46
// Frequency of the system clock
47
#undef SCTIME_CLOCKTIME
48
#define SCTIME_CLOCKTIME sc_time(100,sc_core::SC_US)
49
50
// In many operations, THOUSAND is used to calculate
51
// making multiply/divide, it is much faster to use 2^n value; the difference is only 2%
52
// If it matters, change it to 1000
53
#define THOUSAND 1024
54
55
// Cellular constants assumed
56
// http://www.columbia.edu/cu/biology/courses/w3004/Lecture5.pdf
57
//#define SPECIFIC_RESISTANCE_TIMES_CM2 2000 // Ohm/cm^2
58
//#define SPECIFIC_RESISTANCE_TIMES_u2 2e11 // Ohm/u^2
59
//#define SPECIFIC_CAPACITANCE_PRO_CM2 1e-6 // F/cm^2
60
//#define SPECIFIC_CAPACITANCE_PRO_u2 1e-14 // F/u^2
61
//#define NEURON_AREA 25 // u^2
62
//#define RC_TIME SPECIFIC_RESISTANCE_TIMES_u2*SPECIFIC_CAPACITANCE_PRO_u2 = 2ms
63
// So, the actual values used here are
64
#define SPECIFIC_RESISTANCE_TIMES_u2 5e11 // Ohm/u^2
65
#define SPECIFIC_CAPACITANCE_PRO_u2 4e-14 // F/u^2
66
#define NEURON_CURRENT_UNIT 1e-12 // pA
67
#define NEURON_VOLTAGE_UNIT 1e-6 // uV
68
#define NEURON_TIME_UNIT 1e-6 // us
69
#define NEURON_RC_CONSTANT SPECIFIC_RESISTANCE_TIMES_u2*SPECIFIC_CAPACITANCE_PRO_u2 // 20 msec
70
71
#define NEURON_RESISTANCE_MOHM NEURON_AREA*SPECIFIC_RESISTANCE_PRO_u2*1e-6 //MOhm
72
#define SPECIFIC_CAPACITANCE_PRO_CM2 1e-6 // F/cm^2
73
#define SYNAPTIC_CURRENT_CRITICAL 30000 // in 1e-12A = pA
74
#define NEURON_CURRENT_INTEGRATION_STEP_MIN 500 // in usec
75
//#define SPECIFIC_CAPACITANCE_PRO_u2 1e-14 // F/u^2
76
//#define RC_TIME SPECIFIC_RESISTANCE_TIMES_u2*SPECIFIC_CAPACITANCE_PRO_u2 //
77
78
// With these constants, the oscillation time is cca 2 ms
79
//#define NEURON_CAPACITANCE NEURON_AREA*SPECIFIC_CAPACITANCE_PRO_u2
80
//#define NEURON_RESISTANCE SPECIFIC_RESISTANCE_TIMES_u2/NEURON_AREA
81
//#define RC NEURON_RESISTANCE*NEURON_CAPACITANCE
82
83
84
85
86
// Operational characteristics
87
88
#define SC_NEURER_ID_TYPE SC_CORE_ID_TYPE
89
#define MAX_NUMBER_OF_NEURERS CORE_GRID_SIZE_X*CORE_GRID_SIZE_Y*MAX_HTHREADS
ProcConfig.h
Configuration information for the EMPA processor.
modules
NEURER
include
NeurerConfig.h
Generated on Wed Apr 7 2021 15:24:23 for TAC V0.0.4 @ 2021.04.07 by
1.8.17