• Main Page
  • Related Pages
  • Modules
  • Data Structures
  • Files
  • File List
  • Globals

sst/core/techModels/libsim-panalyzer/libpanalyzer/fpu_panalyzer.h

00001 /*
00002 * fpu_panalyzer.h - branch prediction power analysis 
00003 * 
00004 *
00005 * This file is a part of the PowerAnalyzer tool suite written by
00006 * Taeho Kgil as a part of the PowerAnalyzer Project.
00007 *  
00008 * The tool suite is currently maintained by Taeho Kgil.
00009 * 
00010 * Copyright (C) 2003 by Taeho Kgil
00011 *
00012 * Revised by Taeho Kgil
00013 *
00014 * This source file is distributed "as is" in the hope that it will be
00015 * useful.  The tool set comes with no warranty, and no author or
00016 * distributor accepts any responsibility for the consequences of its
00017 * use. 
00018 * 
00019 * Everyone is granted permission to copy, modify and redistribute
00020 * this tool set under the following conditions:
00021 * 
00022 *    This source code is distributed for non-commercial use only. 
00023 *    Please contact the maintainer for restrictions applying to 
00024 *    commercial use.
00025 *
00026 *    Permission is granted to anyone to make or distribute copies
00027 *    of this source code, either as received or modified, in any
00028 *    medium, provided that all copyright notices, permission and
00029 *    nonwarranty notices are preserved, and that the distributor
00030 *    grants the recipient permission for further redistribution as
00031 *    permitted by this document.
00032 *
00033 *    Permission is granted to distribute this file in compiled
00034 *    or executable form under the same conditions that apply for
00035 *    source code, provided that either:
00036 *
00037 *    A. it is accompanied by the corresponding machine-readable
00038 *       source code,
00039 *    B. it is accompanied by a written offer, with no time limit,
00040 *       to give anyone a machine-readable copy of the corresponding
00041 *       source code in return for reimbursement of the cost of
00042 *       distribution.  This written offer must permit verbatim
00043 *       duplication by anyone, or
00044 *    C. it is distributed by someone who received only the
00045 *       executable form, and is accompanied by a copy of the
00046 *       written offer of source code that they received concurrently.
00047 *
00048 * In other words, you are welcome to use, share and improve this
00049 * source file.  You are forbidden to forbid anyone else to use, share
00050 * and improve what you give them.
00051 */
00052 
00053 #ifndef FPU_PANALYZER_H 
00054 #define FPU_PANALYZER_H
00055 #include "../host.h"
00056 #include "../stats.h"
00057 
00058 
00059 
00060 /* number of virtual address */
00061 #define NVA     40
00062 /* number of physicalo address */
00063 #define NPA 32
00064 
00065 /* fpu power specification type:
00066  * contain all the info for analyzing fpu pdissipation */
00067 typedef struct _fu_fpu_pspec_t {
00068         char *name; /* name */
00069         double freq, volt; /* operating frequency/supply voltage */
00070         double iCeff;
00071         unsigned long fpu_access;
00072         double fpu_total_power;
00073         double fpu_power;
00074         double max_power;
00075         double avg_power;
00076         double pipe_fpu_power[3];
00077 } fu_fpu_pspec_t;
00078 
00079 /* create power model fpu panalyzer database
00080  * return an allocated location pointer.
00081  * caution: please deallocate the fpu space  */
00082 fu_fpu_pspec_t *
00083 create_fpu_panalyzer(
00084         char *name, /* fpu name */
00085         int freq,double volt,
00086         double iCeff);
00087 
00088 /* power model fpu panalyzer */
00089 void 
00090 fpu_panalyzer(
00091         fu_fpu_pspec_t *pspec,
00092         tick_t now 
00093         );
00094 #endif /* FPU_PANALYZER_H */

Generated on Fri Oct 22 2010 11:02:19 for SST by  doxygen 1.7.1