3D-ICE 3.0.0
Public Member Functions
IceWrapper Class Reference

SystemC/TLM-2.0 wrapper for 3D-ICE. More...

#include "include/IceWrapper.h"

Public Member Functions

 IceWrapper (std::string serverIp, unsigned int portNumber)
 
 ~IceWrapper ()
 
unsigned int getNumberOfFloorplanElements ()
 
void sendPowerValues (std::vector< float > *powerValues)
 
void simulate ()
 
void getTemperature (std::vector< float > &TemperatureValues, OutputInstant_t instant, OutputType_t type, OutputQuantity_t quantity)
 
void getTemperatureMap (std::string filename)
 
void getPowerMap (std::string filename)
 

Detailed Description

This class provides support to bind 3D-ICE with simulation tools based on SystemC/TLM2.0 like DRAMSys, DRAMPower, and many others.

Definition at line 61 of file IceWrapper.h.

Constructor & Destructor Documentation

◆ IceWrapper()

IceWrapper::IceWrapper ( std::string  serverIp,
unsigned int  portNumber 
)

IceWrapper constructor

Establishes a connection with the 3D-ICE server and gets information about system architecture. The server must be up and running and waiting for a connection.

Parameters
serverIpthe IP address of the server
portNumberthe port number of the server

◆ ~IceWrapper()

IceWrapper::~IceWrapper ( )

IceWrapper destructor

Closes the connection with the 3D-ICE server and releases previously allocated resources.

Member Function Documentation

◆ getNumberOfFloorplanElements()

unsigned int IceWrapper::getNumberOfFloorplanElements ( )

Gets the number of floorplan elements

Returns
the number of floorplan elements

◆ getPowerMap()

void IceWrapper::getPowerMap ( std::string  filename)

Generates an output file containing values that correspond to a power map of the die.

Parameters
filenamename of the output file

◆ getTemperature()

void IceWrapper::getTemperature ( std::vector< float > &  TemperatureValues,
OutputInstant_t  instant,
OutputType_t  type,
OutputQuantity_t  quantity 
)

Gets the temperature values regarding the last thermal simulation step

Parameters
TemperatureValuesbuffer to be filled with the temperature values
instantinstant of time at which the inspection points generate the output
typeinspection point of interest
quantitywhich of temperature records (e.g., average, maximum, minimum, gradient) shall be provided

◆ getTemperatureMap()

void IceWrapper::getTemperatureMap ( std::string  filename)

Generates an output file containing values that correspond to a thermal map of the stack element.

Parameters
filenamename of the output file

◆ sendPowerValues()

void IceWrapper::sendPowerValues ( std::vector< float > *  powerValues)

Sends power information to the 3D-ICE server

Typically the power information is dynamically generated during the simulation and then passed to the server periodically. The server uses this information among others to calculate the temperatures of the system.

Parameters
powerValuesa vector containing the power values of all floorplan elements

◆ simulate()

void IceWrapper::simulate ( )

Requests the simulation of a time slot to the server.

This function sends and receives messages using network sockets and it blocks until waiting for the simulation result.


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