The base class is the scHThread, i.e. HW thread functionalityit has its associated inter-gridpoint communication facilities and communicates autonomously with its immediate neighbors and cluster members
The neurers are kentaurs: half-part cores, with non-specialized core-functionality and half-part neuron-specific functionality.
This class provides the base for Neurer, the artificial neuron
- Parameters
-
* |scHThread
* |--/AbstractNeurer
* |..../Neurer
*
|
|
void | ActionPotential_method (void) |
| | < handles action potential
|
| |
|
scSynapticConnect * | FindSynapseFrom (AbstractNeurer *A) |
| | Return synaptic connect corresponding from A, or NULL.
|
| |
| void | IncreaseActionPotentialWithCharge (int C) |
| | IncreaseActionPotentialWithCharge. More...
|
| |
| int | IntegratedCurrentInPeriod (int FromTime, int ToTime, int FromValue, int ToValue) |
| | IntegratedCurrentInPeriod A simple trapezoidal area (for short period, where the function is nearly linear) More...
|
| |
|
void | LeakingPeriod_Set (short unsigned int P) |
| | < Set the length of the period after which the potential is decreased by one
|
| |
| void | MembranePotentialContribution_Add (int32_t NewContrib) |
| | Add a contribution to membrane's potential; changes states and initiates timed operations. For details see section How time-aware neuronal simulation works. More...
|
| |
| bool | MembraneSynapticContribution_Add (int32_t NewContrib) |
| | Add a contribution from a synapse; called from a synapse handler; neglects input when 'Charging'. More...
|
| |
| int | NeurerCondensatorCapacity_Get (void) |
| | NeurerCondensatorCapacity_Get. More...
|
| |
| bool | NeurerStateBit_Get (NeurerOperatingBit_t B) |
| | Get value of a bit in the state word AbstractNeurer::mOperatingState. More...
|
| |
| void | NeurerStateBit_Set (NeurerOperatingBit_t B, bool V) |
| | Set a bit in the state word AbstractNeurer::mOperatingState. More...
|
| |
|
void | Reset_method (void) |
| | Reset neurons to their initial state.
|
| |
|
void | Spiking_method (void) |
| | Take the next point from the current table.
|
| |
|
bool | AllocatedBit_Get (bool B) |
| | < Get 'Allocated' status of HThread
|
| |
|
void | AllocatedBit_Set (bool B) |
| | < Set 'Allocated' status of HThread
|
| |
| scHThread * | AllocateFor (scHThread *Parent) |
| | < Allocate this scHThread for another one More...
|
| |
|
ClusterAddress_t | ClusterAddress_Get (void) |
| | < Return the cluster address of the gridpoint, stored in the matrix
|
| |
|
SC_WORD_TYPE * | DataPositionInBuffer (SC_ADDRESS_TYPE A) |
| | Return pointer to word containing next data.
|
| |
|
virtual void | FinishPrefetching (void) |
| | Make sure we have a fetched instruction. If ready, just make nothing. If fetch started, but not finished, just wait until arrives. If not started, initiate fetching.
|
| |
|
SC_WORD_TYPE * | InstPositionInBuffer (SC_ADDRESS_TYPE A=CORE_DEFAULT_ADDRESS) |
| | Return pointer to word containing next instruction.
|
| |
|
bool | IsTimedOut (void) const |
| | < The HThread can be time, true if the actin timed out
|
| |
|
void | ObservedBit_Set (bool B) |
| | < Put graph data to a vector storage
|
| |
| void | PC_Affected_Set (bool B) |
| |
|
bool | PreAllocatedBit_Get (void) |
| | < Get 'PreAllocated' status of HThreadl
|
| |
|
void | PreAllocatedBit_Set (bool V=true) |
| | < Set 'PreAllocated' status of HThread
|
| |
| scHThread * | PreAllocateFor (scHThread *Parent) |
| | < PreAllocate this scHThread for another one More...
|
| |
|
void | Reset (void) |
| | < Reset the thread for operation
|
| |
| | scHThread (sc_core::sc_module_name nm, scGridPoint *GP, SC_HTHREAD_ID_TYPE ID) |
| | An scGridPoint owns run several HW threads (scHThread), can run them, with auto-scheduling them. More...
|
| |
| string | StringOfClusterAddress_Get (void) |
| |
| string | StringOfName_Get (void) |
| | Return alias name of default name. More...
|
| |
|
void | Timeout_Set (sc_time &T) |
| | < Set timout facility for a thread
|
| |
|
|
struct { |
|
sc_core::sc_event Charge |
| | Accumulates charge on the membrane, synaptic-unaware.
|
| |
|
sc_core::sc_event Discharge |
| | Sends the spike to the axon.
|
| |
|
sc_core::sc_event Leaking |
| | The neuron permanently loses its charge, periodically decreasing the charge.
|
| |
|
sc_core::sc_event Recalculate |
| | In the case of prospective change of behavior, the new potential is calculated.
|
| |
|
sc_core::sc_event Reset |
| | Puts the neurer in its initial state.
|
| |
|
sc_core::sc_event Spiking |
| | The neuron takes the next current value and processes it.
|
| |
|
sc_core::sc_event Trigger |
| | Puts the neurer in synaptic-aware more.
|
| |
| } | EVENT_NEURER |
| | These events are handled at abstract processor level.
|
| |
|
struct { |
|
sc_core::sc_event EXEC |
| | < New execution requested
|
| |
|
sc_core::sc_event EXECUTED |
| | < New execution finished
|
| |
|
sc_core::sc_event FETCH |
| | < New fetch requested
|
| |
|
sc_core::sc_event NEXT |
| | < Next intruction is requested
|
| |
| } | EVENT_HTHREAD |
| | These events are handled at thread level.
|
| |