|
3D-ICE 3.0.0
|
#include <stdio.h>#include "types.h"#include "string_t.h"#include "dimensions.h"#include "material.h"#include "analysis.h"Go to the source code of this file.
Data Structures | |
| struct | HeatSink_t |
| Structure used to store data about the heat dissipation through the top or bottom surfaces of the 2D/3D stack. More... | |
Typedefs | |
| typedef struct HeatSink_t | HeatSink_t |
Functions | |
| void | heat_sink_init (HeatSink_t *hsink) |
| void | heat_sink_copy (HeatSink_t *dst, HeatSink_t *src) |
| void | heat_sink_destroy (HeatSink_t *hsink) |
| HeatSink_t * | heat_sink_calloc (void) |
| HeatSink_t * | heat_sink_clone (HeatSink_t *hsink) |
| void | heat_sink_free (HeatSink_t *hsink) |
| Conductance_t | heat_sink_conductance (HeatSink_t *hsink, Dimensions_t *dimensions, CellIndex_t row_index, CellIndex_t column_index) |
| void | heat_sink_print (HeatSink_t *hsink, FILE *stream, String_t prefix) |
| Error_t | initialize_heat_spreader (HeatSink_t *hsink, Dimensions_t *chip) |
| Error_t | initialize_pluggable_heatsink (HeatSink_t *hsink, Analysis_t *analysis) |
| Capacity_t | get_spreader_capacity (HeatSink_t *hsink) |
| Conductance_t | get_spreader_conductance_east_west (HeatSink_t *hsink) |
| Conductance_t | get_spreader_conductance_north_south (HeatSink_t *hsink) |
| Conductance_t | get_spreader_conductance_top_bottom (HeatSink_t *hsink) |
| Conductance_t | get_spreader_conductance_top_bottom_nonuniform (HeatSink_t *hsink, ChipDimension_t area) |
| typedef struct HeatSink_t HeatSink_t |
Definition of the type HeatSink_t
Definition at line 143 of file heat_sink.h.
| Capacity_t get_spreader_capacity | ( | HeatSink_t * | hsink | ) |
Definition at line 377 of file heat_sink.c.
| Conductance_t get_spreader_conductance_east_west | ( | HeatSink_t * | hsink | ) |
Definition at line 387 of file heat_sink.c.
| Conductance_t get_spreader_conductance_north_south | ( | HeatSink_t * | hsink | ) |
Definition at line 396 of file heat_sink.c.
| Conductance_t get_spreader_conductance_top_bottom | ( | HeatSink_t * | hsink | ) |
Definition at line 405 of file heat_sink.c.
| Conductance_t get_spreader_conductance_top_bottom_nonuniform | ( | HeatSink_t * | hsink, |
| ChipDimension_t | area | ||
| ) |
Definition at line 415 of file heat_sink.c.
| HeatSink_t * heat_sink_calloc | ( | void | ) |
Allocates memory for a structure of type HeatSink_t
The content of the new structure is set to default values calling heat_sink_init
NULL if the memory allocation fails Definition at line 128 of file heat_sink.c.
| HeatSink_t * heat_sink_clone | ( | HeatSink_t * | hsink | ) |
Allocates memory for a new copy of the structure hsink
| hsink | the address of the structure to clone |
NULL if the memory allocation fails NULL if the parameter hsink is NULL Definition at line 141 of file heat_sink.c.
| Conductance_t heat_sink_conductance | ( | HeatSink_t * | hsink, |
| Dimensions_t * | dimensions, | ||
| CellIndex_t | row_index, | ||
| CellIndex_t | column_index | ||
| ) |
Returns the conductance of the heat sink in a given position
| hsink | the address of the heat sink structure |
| dimensions | pointer to the structure storing the dimensions |
| row_index | the index of the row |
| column_index | the index of the column |
Definition at line 171 of file heat_sink.c.
| void heat_sink_copy | ( | HeatSink_t * | dst, |
| HeatSink_t * | src | ||
| ) |
Copies the structure src into dst , as an assignement
The function destroys the content of dst and then makes the copy
| dst | the address of the left term sructure (destination) |
| src | the address of the right term structure (source) |
Definition at line 89 of file heat_sink.c.
| void heat_sink_destroy | ( | HeatSink_t * | hsink | ) |
Destroys the content of the fields of the structure hsink
The function releases any dynamic memory used by the structure and resets its state calling heat_sink_init .
| hsink | the address of the structure to destroy |
Definition at line 117 of file heat_sink.c.
| void heat_sink_free | ( | HeatSink_t * | hsink | ) |
Frees the memory space pointed by hsink
The function destroys the structure hsink and then frees its memory. The pointer hsink must have been returned by a previous call to heat_sink_calloc or heat_sink_clone .
If hsink is NULL, no operation is performed.
| hsink | the pointer to free |
Definition at line 158 of file heat_sink.c.
| void heat_sink_init | ( | HeatSink_t * | hsink | ) |
Inits the fields of the hsink structure with default values
| hsink | the address of the structure to initalize |
Definition at line 51 of file heat_sink.c.
| void heat_sink_print | ( | HeatSink_t * | hsink, |
| FILE * | stream, | ||
| String_t | prefix | ||
| ) |
Prints the heat sink declaration as it looks in the stack file
| hsink | the address of the structure to print |
| stream | the output stream (must be already open) |
| prefix | a string to be printed as prefix at the beginning of each line |
Definition at line 188 of file heat_sink.c.
| Error_t initialize_heat_spreader | ( | HeatSink_t * | hsink, |
| Dimensions_t * | chip | ||
| ) |
Computes the spreader number of cells based on the chip dimensions
| hsink | the heatsink |
| chip | the chip dimensions |
Definition at line 280 of file heat_sink.c.
| Error_t initialize_pluggable_heatsink | ( | HeatSink_t * | hsink, |
| Analysis_t * | analysis | ||
| ) |
Initializies the pluggable heatsink
| hsink | the heatsink |
| analysis | the analysis |
Definition at line 363 of file heat_sink.c.