MFMv2.0.10
Movable Feast Machine Simulator 2.0.10
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Types
MFM::ParamConfig< L, R, B, W, EDS > Struct Template Reference

#include <ParamConfig.h>

Public Types

enum  { BITS_PER_ATOM = L }
 
enum  { EVENT_WINDOW_RADIUS = R }
 
enum  { ELEMENT_TABLE_BITS = B }
 
enum  { TILE_WIDTH = W }
 
enum  { ELEMENT_DATA_SLOTS = EDS }
 

Detailed Description

template<u32 L = 64, u32 R = 4, u32 B = 8, u32 W = 40, u32 EDS = 4>
struct MFM::ParamConfig< L, R, B, W, EDS >

A template class used to hold all compile-time parameters for an MFM core, except the type of the Atom. Template defaults are P1 standard or typical usage.

Member Enumeration Documentation

template<u32 L = 64, u32 R = 4, u32 B = 8, u32 W = 40, u32 EDS = 4>
anonymous enum

BITS_PER_ATOM is the total amount of storage per atom for this ParamConfiguration. Note this value must be compatible with the expectations of the atom type chosen in the CoreConfig template.

template<u32 L = 64, u32 R = 4, u32 B = 8, u32 W = 40, u32 EDS = 4>
anonymous enum

EVENT_WINDOW_RADIUS is the size of the event window for this ParamConfiguration.

template<u32 L = 64, u32 R = 4, u32 B = 8, u32 W = 40, u32 EDS = 4>
anonymous enum

ELEMENT_TABLE_BITS is the log2 of the size of the element table for this ParamConfiguration.

template<u32 L = 64, u32 R = 4, u32 B = 8, u32 W = 40, u32 EDS = 4>
anonymous enum

TILE_WIDTH is the number of sites on a side of the tile for this ParamConfiguration.

template<u32 L = 64, u32 R = 4, u32 B = 8, u32 W = 40, u32 EDS = 4>
anonymous enum

ELEMENT_DATA_SLOTS is the count of u64's to allocate in each ElementTable to hold arbitrary element-specific data , for purposes of experimental data storage, statistics gathering, and so forth. Key point is that since a separate ElementTable goes in each Tile, and each Tile has its own thread, these slots are likewise available per-thread.


The documentation for this struct was generated from the following file: