blob: 11719b0be35e7a7daf7f6239e484081d26a24ccf [file] [log] [blame]
#include "odin_types.h"
const char *file_extension_supported_STR[] =
{
".v",
".vh"
};
const char *edge_type_e_STR[] =
{
"UNDEFINED_SENSITIVITY",
"FALLING_EDGE_SENSITIVITY",
"RISING_EDGE_SENSITIVITY",
"ACTIVE_HIGH_SENSITIVITY",
"ACTIVE_LOW_SENSITIVITY",
"ASYNCHRONOUS_SENSITIVITY",
};
const char *_ZERO_GND_ZERO[] =
{
"ZERO_GND_ZERO","ZGZ"
};
const char *_ONE_VCC_CNS[] =
{
"ONE_VCC_CNS","OVC",
};
const char *_ZERO_PAD_ZERO[] =
{
"ZERO_PAD_ZERO","ZPZ"
};
const char *ZERO_GND_ZERO = _ZERO_GND_ZERO[ODIN_STRING_TYPE];
const char *ONE_VCC_CNS = _ONE_VCC_CNS[ODIN_STRING_TYPE];
const char *ZERO_PAD_ZERO = _ZERO_PAD_ZERO[ODIN_STRING_TYPE];
const char *SINGLE_PORT_RAM_string = "single_port_ram";
const char *DUAL_PORT_RAM_string = "dual_port_ram";
const char *operation_list_STR[][2] =
{
{"NO_OP", "nOP"},
{"MULTI_PORT_MUX", "nMUX"}, // port 1 = control, port 2+ = mux options
{"FF_NODE", "FF"},
{"BUF_NODE", "BUF"},
{"INPUT_NODE", "IN"},
{"OUTPUT_NODE", "OUT"},
{"GND_NODE", "GND"},
{"VCC_NODE", "VCC"},
{"CLOCK_NODE", "CLK"},
{"ADD", "ADD"}, // +
{"MINUS", "MIN"}, // -
{"BITWISE_NOT", "bNOT"}, // ~
{"BITWISE_AND", "bAND"}, // &
{"BITWISE_OR", "bOR"}, // |
{"BITWISE_NAND", "bNAND"}, // ~&
{"BITWISE_NOR", "bNOR"}, // ~|
{"BITWISE_XNOR", "bXNOR"}, // ~^
{"BITWISE_XOR", "bXOR"}, // ^
{"LOGICAL_NOT", "lNOT"}, // !
{"LOGICAL_OR", "lOR"}, // ||
{"LOGICAL_AND", "lAND"}, // &&
{"LOGICAL_NAND", "lNAND"}, // No Symbol
{"LOGICAL_NOR", "lNOR"}, // No Symbol
{"LOGICAL_XNOR", "lXNOR"}, // No symbol
{"LOGICAL_XOR", "lXOR"}, // No Symbol
{"MULTIPLY", "MUL"}, // *
{"DIVIDE", "DIV"}, // /
{"MODULO", "MOD"}, // %
{"POWER", "POW"}, // **
{"LT", "LT"}, // <
{"GT", "GT"}, // >
{"LOGICAL_EQUAL", "lEQ"}, // ==
{"NOT_EQUAL", "lNEQ"}, // !=
{"LTE", "LTE"}, // <=
{"GTE", "GTE"}, // >=
{"SR", "SR"}, // >>
{"ASR", "ASR"}, // >>>
{"SL", "SL"}, // <<
{"CASE_EQUAL", "cEQ"}, // ===
{"CASE_NOT_EQUAL", "cNEQ"}, // !==
{"ADDER_FUNC", "ADDER"},
{"CARRY_FUNC", "CARRY"},
{"MUX_2", "MUX_2"},
{"BLIF_FUNCTION", "BLIFf"},
{"NETLIST_FUNCTION","NETf"},
{"MEMORY", "MEM"},
{"PAD_NODE", "PAD"},
{"HARD_IP", "HARD"},
{"GENERIC", "GEN"}, /*added for the unknown node type */
{"FULLADDER", "FlADD"},
{"CLOG2", "CL2"}, // $clog2
{"UNSIGNED", "UNSG"}, // $unsigned
{"SIGNED", "SG"}, // $signed
{"ERROR OOB", "OOB"} // should not reach this
};
const char *ids_STR []=
{
"NO_ID",
/* top level things */
"FILE_ITEMS",
"MODULE",
"SPECIFY",
/* VARIABLES */
"INPUT",
"OUTPUT",
"INOUT",
"WIRE",
"REG",
"INTEGER",
"GENVAR",
"PARAMETER",
"LOCALPARAM",
"INITIAL",
"PORT",
/* OTHER MODULE ITEMS */
"MODULE_ITEMS",
"VAR_DECLARE",
"VAR_DECLARE_LIST",
"ASSIGN",
/* OTHER MODULE AND FUNCTION ITEMS */
"FUNCTION",
/* OTHER FUNCTION ITEMS */
"FUNCTION_ITEMS",
"TASK",
"TASK_ITEMS",
/* primitives */
"GATE",
"GATE_INSTANCE",
"ONE_GATE_INSTANCE",
/* Module instances */
"MODULE_CONNECT_LIST",
"MODULE_CONNECT",
"MODULE_PARAMETER_LIST",
"MODULE_PARAMETER",
"MODULE_NAMED_INSTANCE",
"MODULE_INSTANCE",
"MODULE_MASTER_INSTANCE",
"ONE_MODULE_INSTANCE",
/* Function instances*/
"FUNCTION_NAMED_INSTANCE",
"FUNCTION_INSTANCE",
"TASK_NAMED_INSTANCE",
"TASK_INSTANCE",
/* Specify Items */
"SPECIFY_ITEMS",
"SPECIFY_PARAMETER",
"SPECIFY_PAL_CONNECTION_STATEMENT",
"SPECIFY_PAL_CONNECT_LIST",
/* statements */
"STATEMENT",
"BLOCK",
"NON_BLOCKING_STATEMENT",
"BLOCKING_STATEMENT",
"ASSIGNING_LIST",
"CASE",
"CASE_LIST",
"CASE_ITEM",
"CASE_DEFAULT",
"ALWAYS",
"IF",
"IF_Q",
"FOR",
"WHILE",
/* Delay Control */
"DELAY_CONTROL",
"POSEDGE",
"NEGEDGE",
/* expressions */
"BINARY_OPERATION",
"UNARY_OPERATION",
/* basic primitives */
"ARRAY_REF",
"RANGE_REF",
"CONCATENATE",
"REPLICATE",
/* basic identifiers */
"IDENTIFIERS",
"NUMBERS",
/* Hard Blocks */
"HARD_BLOCK",
"HARD_BLOCK_NAMED_INSTANCE",
"HARD_BLOCK_CONNECT_LIST",
"HARD_BLOCK_CONNECT",
// EDDIE: new enum value for ids to replace MEMORY from operation_t
"RAM",
"ids_END"
};