#include <ctype.h>
#include <stdio.h>
#include <stdlib.h>
#include <signal.h>
#include "core/define.h"
#include "assert.h"
#include "list.h"
Go to the source code of this file.
Data Structures | |
struct | log_t |
struct | log5_t |
union | flit_t |
class | Nodeinfo |
class | Env |
class | Inbuf |
struct | commcmd_t |
class | Cmdbuf |
class | Incc |
class | Incc32 |
class | Getdata |
struct | Getdata::getdata_t |
class | Incc64 |
class | Router |
class | Node |
class | GMemory |
struct | GMemory::page_t |
class | Bitmap |
Defines | |
#define | MC_NAME "SimMc M-Core alpha : Many-Core and NoC Simulator" |
#define | MC_VER "v1.0 2010-03-30" |
#define | MC_LIB_VER "1.0.0" |
#define | MP_MMAP_BASE 0x00000100 |
#define | MP_MMAP_KEYCODE (MP_MMAP_BASE + 0x00) |
#define | MP_MMAP_LCD (MP_MMAP_BASE + 0x04) |
#define | MP_MMAP_BUZZER (MP_MMAP_BASE + 0x08) |
#define | MP_MMAP_TIMER (MP_MMAP_BASE + 0x0c) |
#define | MP_MMAP_GPIO_0 (MP_MMAP_BASE + 0xf0) |
#define | MP_MMAP_GPIO_4 (MP_MMAP_BASE + 0xf4) |
#define | MP_MMAP_GPIO_8 (MP_MMAP_BASE + 0xf8) |
#define | MP_MMAP_GPIO_C (MP_MMAP_BASE + 0xfc) |
#define | SC_MMAP_BASE 0x00000200 |
#define | SC_MMAP_NODE_ID (SC_MMAP_BASE + 0x00) |
#define | SC_MMAP_NOC_SIZE (SC_MMAP_BASE + 0x04) |
#define | SC_MMAP_PC (SC_MMAP_BASE + 0x08) |
#define | SC_MMAP_TIMER (SC_MMAP_BASE + 0x10) |
#define | SC_MMAP_TIMER_D (SC_MMAP_BASE + 0x14) |
#define | SC_MMAP_INST_LOOP (SC_MMAP_BASE + 0x18) |
#define | SC_MMAP_INST_LOOP__ (SC_MMAP_BASE + 0x1c) |
#define | SC_MMAP_DMA_PUT_REMOTE_ID (SC_MMAP_BASE + 0x20) |
#define | SC_MMAP_DMA_PUT_REMOTE_ADDR (SC_MMAP_BASE + 0x24) |
#define | SC_MMAP_DMA_PUT_REMOTE_STRIDE (SC_MMAP_BASE + 0x28) |
#define | SC_MMAP_DMA_PUT_LOCAL_ADDR (SC_MMAP_BASE + 0x2c) |
#define | SC_MMAP_DMA_PUT_LOCAL_STRIDE (SC_MMAP_BASE + 0x30) |
#define | SC_MMAP_DMA_PUT_SIZE (SC_MMAP_BASE + 0x34) |
#define | SC_MMAP_DMA_PUT_CMD (SC_MMAP_BASE + 0x3c) |
#define | SC_MMAP_DMA_GET_REMOTE_ID (SC_MMAP_BASE + 0x40) |
#define | SC_MMAP_DMA_GET_REMOTE_ADDR_L (SC_MMAP_BASE + 0x44) |
#define | SC_MMAP_DMA_GET_REMOTE_ADDR_H (SC_MMAP_BASE + 0x48) |
#define | SC_MMAP_DMA_GET_LOCAL_ADDR (SC_MMAP_BASE + 0x4c) |
#define | SC_MMAP_DMA_GET_SIZE (SC_MMAP_BASE + 0x50) |
#define | SC_MMAP_DMA_GET_REMOTE_STRIDE (SC_MMAP_BASE + 0x54) |
#define | SC_MMAP_DMA_GET_LOCAL_STRIDE (SC_MMAP_BASE + 0x58) |
#define | SC_MMAP_DMA_GET_CMD (SC_MMAP_BASE + 0x5c) |
#define | SC_MMAP_DMA_FLAG (SC_MMAP_BASE + 0x80) |
#define | SC_MMAP_NODE_SERVER (SC_MMAP_BASE + 0x100) |
#define | SC_MMAP_INCC_WRIGHT_ADDR (SC_MMAP_BASE + 0x104) |
#define | GMEM_BASE 0x00000200 |
#define | GMEM_DMA_GET_REMOTE_ID (GMEM_BASE + 0x40) |
#define | GMEM_DMA_GET_REMOTE_ADDR_L (GMEM_BASE + 0x44) |
#define | GMEM_DMA_GET_REMOTE_ADDR_H (GMEM_BASE + 0x48) |
#define | GMEM_DMA_GET_LOCAL_ADDR_L (GMEM_BASE + 0x4c) |
#define | GMEM_DMA_GET_LOCAL_ADDR_H (GMEM_BASE + 0x50) |
#define | GMEM_DMA_GET_SIZE (GMEM_BASE + 0x54) |
#define | GMEM_DMA_GET_REMOTE_STRIDE (GMEM_BASE + 0x58) |
#define | GMEM_DMA_GET_CMD (GMEM_BASE + 0x5c) |
#define | ENV_FLIT_VIEW "FLITVIEW" |
#define | DEF_RANK_X 4 |
#define | DEF_RANK_Y 4 |
#define | MAX_ROW 127 |
#define | MAX_COL 127 |
#define | MAX_NODE (MAX_ROW * MAX_COL) |
#define | MAX_LOG_MODE 5 |
#define | DEF_MAX_CYCLE MAX_CYCLE_DEF |
#define | MAX_FLITS_PER_PACKET 11 |
#define | MAX_MEM_LATENCY (1<<8 - 1) |
#define | DEFAULT_STRIDE 4 |
#define | IDX(id) ((int)(((id) >> 8) & 0xff)) |
#define | IDY(id) ((int)((id) & 0xff)) |
#define | print_error(...) fprintf(stderr, "## ERROR: " __VA_ARGS__) |
#define | print_exit(...) (print_error(__VA_ARGS__), exit(1)) |
#define | round_robin(__i, last, MAX) |
#define | opposite(x) |
#define | LOG1_HEADER |
Typedefs | |
typedef unsigned short | uint016_t |
typedef Board | Core |
Enumerations | |
enum | { FLIT_VALID = 1 << 5, FLIT_HEADER = 1 << 4, FLIT_ADDR = 1 << 3, FLIT_STRIDE = 1 << 2, FLIT_DATA = 1 << 1, FLIT_TAILER = 1 << 0 } |
enum | { N, E, S, W, C, NUM_DIRECTION } |
enum | { DMAFLAG_NA, DMAFLAG_ACK, DMAFLAG_NACK } |
enum | { NODE_COMP, NODE_SERVER, NODE_MEM, NODE_PATH } |
enum | MC_Datatype { MC_CHAR, MC_INT, MC_FLOAT, MC_DOUBLE } |
enum | MC_Op { MC_MAX, MC_MIN, MC_SUM, MC_PROD, MC_LAND, MC_BAND, MC_LOR, MC_BOR, MC_LXOR, MC_BXOR, MC_MAXLOC, MC_MINLOC } |
Variables | |
const flit_t | flit_invalid = {0} |
#define DEF_MAX_CYCLE MAX_CYCLE_DEF |
#define DEF_RANK_X 4 |
#define DEF_RANK_Y 4 |
#define DEFAULT_STRIDE 4 |
#define ENV_FLIT_VIEW "FLITVIEW" |
#define GMEM_BASE 0x00000200 |
#define GMEM_DMA_GET_CMD (GMEM_BASE + 0x5c) |
#define GMEM_DMA_GET_LOCAL_ADDR_H (GMEM_BASE + 0x50) |
#define GMEM_DMA_GET_LOCAL_ADDR_L (GMEM_BASE + 0x4c) |
#define GMEM_DMA_GET_REMOTE_ADDR_H (GMEM_BASE + 0x48) |
#define GMEM_DMA_GET_REMOTE_ADDR_L (GMEM_BASE + 0x44) |
#define GMEM_DMA_GET_REMOTE_ID (GMEM_BASE + 0x40) |
#define GMEM_DMA_GET_REMOTE_STRIDE (GMEM_BASE + 0x58) |
#define GMEM_DMA_GET_SIZE (GMEM_BASE + 0x54) |
#define IDX | ( | id | ) | ((int)(((id) >> 8) & 0xff)) |
#define IDY | ( | id | ) | ((int)((id) & 0xff)) |
#define LOG1_HEADER |
Value:
"## cycle dma_put src-id dst-id src-addr dst-addr byte stride\n" \ "## cycle dfma_put_4b src-id dst-id data dst-addr\n" \ "## cycle recieve-header id stride\n" \ "## cycle recieve-addr id dst-addr\n" \ "## cycle receive-body id data\n"
#define MAX_COL 127 |
#define MAX_FLITS_PER_PACKET 11 |
#define MAX_LOG_MODE 5 |
#define MAX_MEM_LATENCY (1<<8 - 1) |
#define MAX_NODE (MAX_ROW * MAX_COL) |
#define MAX_ROW 127 |
#define MC_LIB_VER "1.0.0" |
#define MC_VER "v1.0 2010-03-30" |
#define MP_MMAP_BASE 0x00000100 |
#define MP_MMAP_BUZZER (MP_MMAP_BASE + 0x08) |
#define MP_MMAP_GPIO_0 (MP_MMAP_BASE + 0xf0) |
#define MP_MMAP_GPIO_4 (MP_MMAP_BASE + 0xf4) |
#define MP_MMAP_GPIO_8 (MP_MMAP_BASE + 0xf8) |
#define MP_MMAP_GPIO_C (MP_MMAP_BASE + 0xfc) |
#define MP_MMAP_KEYCODE (MP_MMAP_BASE + 0x00) |
#define MP_MMAP_LCD (MP_MMAP_BASE + 0x04) |
#define MP_MMAP_TIMER (MP_MMAP_BASE + 0x0c) |
#define opposite | ( | x | ) |
#define print_error | ( | ... | ) | fprintf(stderr, "## ERROR: " __VA_ARGS__) |
#define print_exit | ( | ... | ) | (print_error(__VA_ARGS__), exit(1)) |
#define round_robin | ( | __i, | |||
last, | |||||
MAX | ) |
Value:
for(int __i=((last)+1>=(MAX))?0:(last)+1, __t=0; \ __t<(MAX); \ __i=(__i+1>=(MAX))?0:__i+1, __t++)
#define SC_MMAP_BASE 0x00000200 |
#define SC_MMAP_DMA_FLAG (SC_MMAP_BASE + 0x80) |
#define SC_MMAP_DMA_GET_CMD (SC_MMAP_BASE + 0x5c) |
#define SC_MMAP_DMA_GET_LOCAL_ADDR (SC_MMAP_BASE + 0x4c) |
#define SC_MMAP_DMA_GET_LOCAL_STRIDE (SC_MMAP_BASE + 0x58) |
#define SC_MMAP_DMA_GET_REMOTE_ADDR_H (SC_MMAP_BASE + 0x48) |
#define SC_MMAP_DMA_GET_REMOTE_ADDR_L (SC_MMAP_BASE + 0x44) |
#define SC_MMAP_DMA_GET_REMOTE_ID (SC_MMAP_BASE + 0x40) |
#define SC_MMAP_DMA_GET_REMOTE_STRIDE (SC_MMAP_BASE + 0x54) |
#define SC_MMAP_DMA_GET_SIZE (SC_MMAP_BASE + 0x50) |
#define SC_MMAP_DMA_PUT_CMD (SC_MMAP_BASE + 0x3c) |
#define SC_MMAP_DMA_PUT_LOCAL_ADDR (SC_MMAP_BASE + 0x2c) |
#define SC_MMAP_DMA_PUT_LOCAL_STRIDE (SC_MMAP_BASE + 0x30) |
#define SC_MMAP_DMA_PUT_REMOTE_ADDR (SC_MMAP_BASE + 0x24) |
#define SC_MMAP_DMA_PUT_REMOTE_ID (SC_MMAP_BASE + 0x20) |
#define SC_MMAP_DMA_PUT_REMOTE_STRIDE (SC_MMAP_BASE + 0x28) |
#define SC_MMAP_DMA_PUT_SIZE (SC_MMAP_BASE + 0x34) |
#define SC_MMAP_INCC_WRIGHT_ADDR (SC_MMAP_BASE + 0x104) |
#define SC_MMAP_INST_LOOP (SC_MMAP_BASE + 0x18) |
#define SC_MMAP_INST_LOOP__ (SC_MMAP_BASE + 0x1c) |
#define SC_MMAP_NOC_SIZE (SC_MMAP_BASE + 0x04) |
#define SC_MMAP_NODE_ID (SC_MMAP_BASE + 0x00) |
#define SC_MMAP_NODE_SERVER (SC_MMAP_BASE + 0x100) |
#define SC_MMAP_PC (SC_MMAP_BASE + 0x08) |
#define SC_MMAP_TIMER (SC_MMAP_BASE + 0x10) |
#define SC_MMAP_TIMER_D (SC_MMAP_BASE + 0x14) |
typedef Board Core |
typedef unsigned short uint016_t |
anonymous enum |
enum MC_Datatype |
enum MC_Op |
const flit_t flit_invalid = {0} |