OpenASIP  2.0
Variables
ADFSerializer.cc File Reference
#include "ADFSerializer.hh"
#include "Bus.hh"
#include "Guard.hh"
#include "Segment.hh"
#include "Socket.hh"
#include "Bridge.hh"
#include "FunctionUnit.hh"
#include "HWOperation.hh"
#include "ExecutionPipeline.hh"
#include "FUPort.hh"
#include "SpecialRegisterPort.hh"
#include "RegisterFile.hh"
#include "ImmediateUnit.hh"
#include "AddressSpace.hh"
#include "ControlUnit.hh"
#include "Connection.hh"
#include "InstructionTemplate.hh"
#include "TemplateSlot.hh"
#include "ADFSerializerTextGenerator.hh"
#include "Environment.hh"
#include "ObjectState.hh"
#include "OperationTriggeredFormat.hh"
Include dependency graph for ADFSerializer.cc:

Go to the source code of this file.

Variables

const string MDF = "adf"
 
const string MDF_VERSION = "version"
 
const string MDF_VERSION_NUMBER = "1.20"
 
const string TRIGGER_INVALIDATES_OLD_RESULTS = "trigger-invalidates-old-results"
 
const string LITTLE_ENDIAN_MACHINE = "little-endian"
 
const string BITNESS64 = "bitness64"
 
const string ALWAYS_WRITE_BACK_RESULTS = "always-write-back-results"
 
const string FUNCTION_UNITS_ORDERED = "fu-ordered"
 
const string BUS = "bus"
 
const string BUS_NAME = "name"
 
const string BUS_WIDTH = "width"
 
const string SHORT_IMMEDIATE = "short-immediate"
 
const string SHORT_IMM_WIDTH = "width"
 
const string SHORT_IMM_EXTENSION = "extension"
 
const string SIGN_EXTENSION = "sign"
 
const string ZERO_EXTENSION = "zero"
 
const string GUARD = "guard"
 
const string INVERTED_EXPR = "inverted-expr"
 
const string SIMPLE_EXPR = "simple-expr"
 
const string GUARD_BOOL = "bool"
 
const string GUARD_REGFILE_NAME = "name"
 
const string GUARD_REGFILE_INDEX = "index"
 
const string GUARD_UNIT = "unit"
 
const string GUARD_UNIT_NAME = "name"
 
const string GUARD_UNIT_PORT = "port"
 
const string ALWAYS_FALSE_GUARD = "always-false"
 
const string ALWAYS_TRUE_GUARD = "always-true"
 
const string SEGMENT = "segment"
 
const string SEGMENT_NAME = "name"
 
const string SEGMENT_WRITES_TO = "writes-to"
 
const string SOCKET = "socket"
 
const string SOCKET_NAME = "name"
 
const string SOCKET_READS_FROM = "reads-from"
 
const string SOCKET_WRITES_TO = "writes-to"
 
const string SOCKET_BUS = "bus"
 
const string SOCKET_SEGMENT = "segment"
 
const string BRIDGE = "bridge"
 
const string BRIDGE_NAME = "name"
 
const string BRIDGE_READS_FROM = "reads-from"
 
const string BRIDGE_WRITES_TO = "writes-to"
 
const string FUNCTION_UNIT = "function-unit"
 
const string FU_NAME = "name"
 
const string FU_ADDRESS_SPACE = "address-space"
 
const string FU_OPERATION = "operation"
 
const string FU_OP_NAME = "name"
 
const string FU_OP_BIND = "bind"
 
const string FU_OP_BIND_NAME = "name"
 
const string FU_OP_PIPELINE = "pipeline"
 
const string FU_OP_PL_RESOURCE = "resource"
 
const string FU_OP_PL_RES_NAME = "name"
 
const string FU_OP_PL_RES_START_CYCLE = "start-cycle"
 
const string FU_OP_PL_RES_CYCLES = "cycles"
 
const string FU_OP_PL_READS = "reads"
 
const string FU_OP_PL_READS_NAME = "name"
 
const string FU_OP_PL_WRITES = "writes"
 
const string FU_OP_PL_WRITES_NAME = "name"
 
const string REGISTER_FILE = "register-file"
 
const string RF_NAME = "name"
 
const string RF_TYPE = "type"
 
const string RF_TYPE_NORMAL = "normal"
 
const string RF_TYPE_VOLATILE = "volatile"
 
const string RF_TYPE_RESERVED = "reserved"
 
const string RF_SIZE = "size"
 
const string RF_WIDTH = "width"
 
const string RF_MAX_READS = "max-reads"
 
const string RF_MAX_WRITES = "max-writes"
 
const string RF_GUARD_LATENCY = "guard-latency"
 
const string RF_ZERO_REGISTER = "zero-register"
 
const string IMMEDIATE_UNIT = "immediate-unit"
 
const string IU_NAME = "name"
 
const string IU_TYPE = "type"
 
const string IU_TYPE_NORMAL = "normal"
 
const string IU_TYPE_VOLATILE = "volatile"
 
const string IU_TYPE_RESERVED = "reserved"
 
const string IU_SIZE = "size"
 
const string IU_LATENCY = "latency"
 
const string IU_WIDTH = "width"
 
const string IU_MAX_READS = "max-reads"
 
const string IU_MAX_WRITES = "max-writes"
 
const string IU_EXTENSION = "extension"
 
const string IU_GUARD_LATENCY = "guard-latency"
 
const string IU_TEMPLATE = "template"
 
const string IU_TEMPLATE_NAME = "name"
 
const string IU_TEMPLATE_SLOT = "slot"
 
const string IU_TEMPLATE_SLOT_NAME = "name"
 
const string IU_TEMPLATE_SLOT_WIDTH = "width"
 
const string IU_TEMPLATE_BUS = "bus"
 
const string ADDRESS_SPACE = "address-space"
 
const string AS_NAME = "name"
 
const string AS_WIDTH = "width"
 
const string AS_MIN_ADDRESS = "min-address"
 
const string AS_MAX_ADDRESS = "max-address"
 
const string AS_NUMERICAL_ID = "numerical-id"
 
const string AS_SHARED_MEMORY = "shared-memory"
 
const string CONTROL_UNIT = "global-control-unit"
 
const string CU_NAME = "name"
 
const string CU_ADDRESS_SPACE = "address-space"
 
const string CU_DELAY_SLOTS = "delay-slots"
 
const string CU_GUARD_LATENCY = "guard-latency"
 
const string CU_RETURN_ADDRESS = "return-address"
 
const string CU_CTRL_OPERATION = "ctrl-operation"
 
const string CU_SPECIAL_PORT = "special-port"
 
const string PORT = "port"
 
const string PORT_NAME = "name"
 
const string PORT_CONNECTS_TO = "connects-to"
 
const string FU_PORT_WIDTH = "width"
 
const string FU_PORT_TRIGGERS = "triggers"
 
const string FU_PORT_SETS_OPCODE = "sets-opcode"
 
const string FU_PORT_NO_REGISTER = "no-register"
 
const string IMMEDIATE_SLOT = "immediate-slot"
 
const string IMMEDIATE_SLOT_NAME = "name"
 
const string TEMPLATE_RF_READ = "register-file-read"
 
const string TEMPLATE_RF_WRITE = "register-file-write"
 
const string TEMPLATE_FU_READ = "function-unit-read"
 
const string TEMPLATE_FU_WRITE = "function-unit-write"
 
const string ADF_SCHEMA_FILE = "mach/ADF_Schema.xsd"
 

Detailed Description

Implementation of ADFSerializer class.

Author
Lasse Laasonen 2004 (lasse.laasonen-no.spam-tut.fi)
Pekka Jääskeläinen 2009-2014 (pjaaskel-no.spam-cs tut.fi)
Note
reviewed 15 Jun 2004 by pj, vpj, ml, ll
rating: red

Definition in file ADFSerializer.cc.

Variable Documentation

◆ ADDRESS_SPACE

const string ADDRESS_SPACE = "address-space"

◆ ADF_SCHEMA_FILE

const string ADF_SCHEMA_FILE = "mach/ADF_Schema.xsd"

Definition at line 198 of file ADFSerializer.cc.

Referenced by ADFSerializer::ADFSerializer().

◆ ALWAYS_FALSE_GUARD

const string ALWAYS_FALSE_GUARD = "always-false"

Definition at line 96 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ ALWAYS_TRUE_GUARD

const string ALWAYS_TRUE_GUARD = "always-true"

Definition at line 97 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ ALWAYS_WRITE_BACK_RESULTS

const string ALWAYS_WRITE_BACK_RESULTS = "always-write-back-results"

◆ AS_MAX_ADDRESS

const string AS_MAX_ADDRESS = "max-address"

◆ AS_MIN_ADDRESS

const string AS_MIN_ADDRESS = "min-address"

◆ AS_NAME

const string AS_NAME = "name"

◆ AS_NUMERICAL_ID

const string AS_NUMERICAL_ID = "numerical-id"

◆ AS_SHARED_MEMORY

const string AS_SHARED_MEMORY = "shared-memory"

◆ AS_WIDTH

const string AS_WIDTH = "width"

◆ BITNESS64

const string BITNESS64 = "bitness64"

◆ BRIDGE

const string BRIDGE = "bridge"

◆ BRIDGE_NAME

const string BRIDGE_NAME = "name"

Definition at line 110 of file ADFSerializer.cc.

Referenced by ADFSerializer::bridgeToMachine(), and ADFSerializer::bridgeToMDF().

◆ BRIDGE_READS_FROM

const string BRIDGE_READS_FROM = "reads-from"

Definition at line 111 of file ADFSerializer.cc.

Referenced by ADFSerializer::bridgeToMachine(), and ADFSerializer::bridgeToMDF().

◆ BRIDGE_WRITES_TO

const string BRIDGE_WRITES_TO = "writes-to"

Definition at line 112 of file ADFSerializer.cc.

Referenced by ADFSerializer::bridgeToMachine(), and ADFSerializer::bridgeToMDF().

◆ BUS

const string BUS = "bus"

◆ BUS_NAME

const string BUS_NAME = "name"

Definition at line 79 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ BUS_WIDTH

const string BUS_WIDTH = "width"

Definition at line 80 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ CONTROL_UNIT

const string CONTROL_UNIT = "global-control-unit"

◆ CU_ADDRESS_SPACE

const string CU_ADDRESS_SPACE = "address-space"

◆ CU_CTRL_OPERATION

const string CU_CTRL_OPERATION = "ctrl-operation"

◆ CU_DELAY_SLOTS

const string CU_DELAY_SLOTS = "delay-slots"

◆ CU_GUARD_LATENCY

const string CU_GUARD_LATENCY = "guard-latency"

◆ CU_NAME

const string CU_NAME = "name"

◆ CU_RETURN_ADDRESS

const string CU_RETURN_ADDRESS = "return-address"

◆ CU_SPECIAL_PORT

const string CU_SPECIAL_PORT = "special-port"

◆ FU_ADDRESS_SPACE

const string FU_ADDRESS_SPACE = "address-space"

◆ FU_NAME

const string FU_NAME = "name"

◆ FU_OP_BIND

const string FU_OP_BIND = "bind"

◆ FU_OP_BIND_NAME

const string FU_OP_BIND_NAME = "name"

◆ FU_OP_NAME

const string FU_OP_NAME = "name"

◆ FU_OP_PIPELINE

const string FU_OP_PIPELINE = "pipeline"

◆ FU_OP_PL_READS

const string FU_OP_PL_READS = "reads"

Definition at line 126 of file ADFSerializer.cc.

Referenced by ADFSerializer::machinePipeline(), and ADFSerializer::mdfPipeline().

◆ FU_OP_PL_READS_NAME

const string FU_OP_PL_READS_NAME = "name"

Definition at line 127 of file ADFSerializer.cc.

Referenced by ADFSerializer::machinePipeline(), and ADFSerializer::mdfPipeline().

◆ FU_OP_PL_RES_CYCLES

const string FU_OP_PL_RES_CYCLES = "cycles"

Definition at line 125 of file ADFSerializer.cc.

Referenced by ADFSerializer::machinePipeline(), and ADFSerializer::mdfPipeline().

◆ FU_OP_PL_RES_NAME

const string FU_OP_PL_RES_NAME = "name"

Definition at line 123 of file ADFSerializer.cc.

Referenced by ADFSerializer::machinePipeline(), and ADFSerializer::mdfPipeline().

◆ FU_OP_PL_RES_START_CYCLE

const string FU_OP_PL_RES_START_CYCLE = "start-cycle"

Definition at line 124 of file ADFSerializer.cc.

Referenced by ADFSerializer::machinePipeline(), and ADFSerializer::mdfPipeline().

◆ FU_OP_PL_RESOURCE

const string FU_OP_PL_RESOURCE = "resource"

Definition at line 122 of file ADFSerializer.cc.

Referenced by ADFSerializer::machinePipeline(), and ADFSerializer::mdfPipeline().

◆ FU_OP_PL_WRITES

const string FU_OP_PL_WRITES = "writes"

Definition at line 128 of file ADFSerializer.cc.

Referenced by ADFSerializer::machinePipeline(), and ADFSerializer::mdfPipeline().

◆ FU_OP_PL_WRITES_NAME

const string FU_OP_PL_WRITES_NAME = "name"

Definition at line 129 of file ADFSerializer.cc.

Referenced by ADFSerializer::machinePipeline(), and ADFSerializer::mdfPipeline().

◆ FU_OPERATION

const string FU_OPERATION = "operation"

◆ FU_PORT_NO_REGISTER

const string FU_PORT_NO_REGISTER = "no-register"

Definition at line 188 of file ADFSerializer.cc.

Referenced by ADFSerializer::machineFUPort(), and ADFSerializer::mdfFUPort().

◆ FU_PORT_SETS_OPCODE

const string FU_PORT_SETS_OPCODE = "sets-opcode"

Definition at line 187 of file ADFSerializer.cc.

Referenced by ADFSerializer::machineFUPort(), and ADFSerializer::mdfFUPort().

◆ FU_PORT_TRIGGERS

const string FU_PORT_TRIGGERS = "triggers"

Definition at line 186 of file ADFSerializer.cc.

Referenced by ADFSerializer::machineFUPort(), and ADFSerializer::mdfFUPort().

◆ FU_PORT_WIDTH

const string FU_PORT_WIDTH = "width"

◆ FUNCTION_UNIT

const string FUNCTION_UNIT = "function-unit"

◆ FUNCTION_UNITS_ORDERED

const string FUNCTION_UNITS_ORDERED = "fu-ordered"

◆ GUARD

const string GUARD = "guard"

Definition at line 87 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ GUARD_BOOL

const string GUARD_BOOL = "bool"

Definition at line 90 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ GUARD_REGFILE_INDEX

const string GUARD_REGFILE_INDEX = "index"

Definition at line 92 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ GUARD_REGFILE_NAME

const string GUARD_REGFILE_NAME = "name"

Definition at line 91 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ GUARD_UNIT

const string GUARD_UNIT = "unit"

Definition at line 93 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ GUARD_UNIT_NAME

const string GUARD_UNIT_NAME = "name"

Definition at line 94 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ GUARD_UNIT_PORT

const string GUARD_UNIT_PORT = "port"

Definition at line 95 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ IMMEDIATE_SLOT

const string IMMEDIATE_SLOT = "immediate-slot"

◆ IMMEDIATE_SLOT_NAME

const string IMMEDIATE_SLOT_NAME = "name"

◆ IMMEDIATE_UNIT

const string IMMEDIATE_UNIT = "immediate-unit"

◆ INVERTED_EXPR

const string INVERTED_EXPR = "inverted-expr"

Definition at line 88 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ IU_EXTENSION

const string IU_EXTENSION = "extension"

◆ IU_GUARD_LATENCY

const string IU_GUARD_LATENCY = "guard-latency"

◆ IU_LATENCY

const string IU_LATENCY = "latency"

◆ IU_MAX_READS

const string IU_MAX_READS = "max-reads"

Definition at line 153 of file ADFSerializer.cc.

Referenced by ADFSerializer::immediateUnitToMachine().

◆ IU_MAX_WRITES

const string IU_MAX_WRITES = "max-writes"

◆ IU_NAME

const string IU_NAME = "name"

◆ IU_SIZE

const string IU_SIZE = "size"

◆ IU_TEMPLATE

const string IU_TEMPLATE = "template"

◆ IU_TEMPLATE_BUS

const string IU_TEMPLATE_BUS = "bus"

Definition at line 162 of file ADFSerializer.cc.

◆ IU_TEMPLATE_NAME

const string IU_TEMPLATE_NAME = "name"

◆ IU_TEMPLATE_SLOT

const string IU_TEMPLATE_SLOT = "slot"

Definition at line 159 of file ADFSerializer.cc.

Referenced by ADFSerializer::instructionTemplateToMDF().

◆ IU_TEMPLATE_SLOT_NAME

const string IU_TEMPLATE_SLOT_NAME = "name"

◆ IU_TEMPLATE_SLOT_WIDTH

const string IU_TEMPLATE_SLOT_WIDTH = "width"

◆ IU_TYPE

const string IU_TYPE = "type"

◆ IU_TYPE_NORMAL

const string IU_TYPE_NORMAL = "normal"

◆ IU_TYPE_RESERVED

const string IU_TYPE_RESERVED = "reserved"

◆ IU_TYPE_VOLATILE

const string IU_TYPE_VOLATILE = "volatile"

◆ IU_WIDTH

const string IU_WIDTH = "width"

◆ LITTLE_ENDIAN_MACHINE

const string LITTLE_ENDIAN_MACHINE = "little-endian"

◆ MDF

const string MDF = "adf"

Definition at line 63 of file ADFSerializer.cc.

Referenced by ADFSerializer::convertToMDFFormat().

◆ MDF_VERSION

const string MDF_VERSION = "version"

Definition at line 64 of file ADFSerializer.cc.

Referenced by ADFSerializer::convertToMDFFormat().

◆ MDF_VERSION_NUMBER

const string MDF_VERSION_NUMBER = "1.20"

Definition at line 66 of file ADFSerializer.cc.

Referenced by ADFSerializer::convertToMDFFormat().

◆ PORT

const string PORT = "port"

◆ PORT_CONNECTS_TO

const string PORT_CONNECTS_TO = "connects-to"

◆ PORT_NAME

const string PORT_NAME = "name"

◆ REGISTER_FILE

const string REGISTER_FILE = "register-file"

◆ RF_GUARD_LATENCY

const string RF_GUARD_LATENCY = "guard-latency"

◆ RF_MAX_READS

const string RF_MAX_READS = "max-reads"

◆ RF_MAX_WRITES

const string RF_MAX_WRITES = "max-writes"

◆ RF_NAME

const string RF_NAME = "name"

◆ RF_SIZE

const string RF_SIZE = "size"

◆ RF_TYPE

const string RF_TYPE = "type"

◆ RF_TYPE_NORMAL

const string RF_TYPE_NORMAL = "normal"

◆ RF_TYPE_RESERVED

const string RF_TYPE_RESERVED = "reserved"

◆ RF_TYPE_VOLATILE

const string RF_TYPE_VOLATILE = "volatile"

◆ RF_WIDTH

const string RF_WIDTH = "width"

◆ RF_ZERO_REGISTER

const string RF_ZERO_REGISTER = "zero-register"

◆ SEGMENT

const string SEGMENT = "segment"

Definition at line 98 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ SEGMENT_NAME

const string SEGMENT_NAME = "name"

Definition at line 99 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ SEGMENT_WRITES_TO

const string SEGMENT_WRITES_TO = "writes-to"

Definition at line 100 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ SHORT_IMM_EXTENSION

const string SHORT_IMM_EXTENSION = "extension"

Definition at line 83 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ SHORT_IMM_WIDTH

const string SHORT_IMM_WIDTH = "width"

Definition at line 82 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ SHORT_IMMEDIATE

const string SHORT_IMMEDIATE = "short-immediate"

Definition at line 81 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ SIGN_EXTENSION

const string SIGN_EXTENSION = "sign"

◆ SIMPLE_EXPR

const string SIMPLE_EXPR = "simple-expr"

Definition at line 89 of file ADFSerializer.cc.

Referenced by ADFSerializer::busToMachine(), and ADFSerializer::busToMDF().

◆ SOCKET

const string SOCKET = "socket"

◆ SOCKET_BUS

const string SOCKET_BUS = "bus"

Definition at line 106 of file ADFSerializer.cc.

Referenced by ADFSerializer::socketToMachine(), and ADFSerializer::socketToMDF().

◆ SOCKET_NAME

const string SOCKET_NAME = "name"

Definition at line 103 of file ADFSerializer.cc.

Referenced by ADFSerializer::socketToMachine(), and ADFSerializer::socketToMDF().

◆ SOCKET_READS_FROM

const string SOCKET_READS_FROM = "reads-from"

Definition at line 104 of file ADFSerializer.cc.

Referenced by ADFSerializer::socketToMachine(), and ADFSerializer::socketToMDF().

◆ SOCKET_SEGMENT

const string SOCKET_SEGMENT = "segment"

Definition at line 107 of file ADFSerializer.cc.

Referenced by ADFSerializer::socketToMachine(), and ADFSerializer::socketToMDF().

◆ SOCKET_WRITES_TO

const string SOCKET_WRITES_TO = "writes-to"

Definition at line 105 of file ADFSerializer.cc.

Referenced by ADFSerializer::socketToMachine(), and ADFSerializer::socketToMDF().

◆ TEMPLATE_FU_READ

const string TEMPLATE_FU_READ = "function-unit-read"

Definition at line 195 of file ADFSerializer.cc.

◆ TEMPLATE_FU_WRITE

const string TEMPLATE_FU_WRITE = "function-unit-write"

Definition at line 196 of file ADFSerializer.cc.

◆ TEMPLATE_RF_READ

const string TEMPLATE_RF_READ = "register-file-read"

Definition at line 193 of file ADFSerializer.cc.

◆ TEMPLATE_RF_WRITE

const string TEMPLATE_RF_WRITE = "register-file-write"

Definition at line 194 of file ADFSerializer.cc.

◆ TRIGGER_INVALIDATES_OLD_RESULTS

const string TRIGGER_INVALIDATES_OLD_RESULTS = "trigger-invalidates-old-results"

◆ ZERO_EXTENSION

const string ZERO_EXTENSION = "zero"