Estimating Power/Energy consumption

Please note that these documents are confidential. Please do not redistribute the material posted here.

For this exercise, it is important that you have already compiled a core; either pearl, or pearl_is3, and a working and partitioned program add.

We will use a simple example to get started.

  • Login to one of the servers mentioned in the startup guide.
  • Change directory to ~/hive/examples/add/pearl
  • Compile the program by using the following command (make crun sched). You will see the output as follows
$ cd ~/hive/examples/add/pearl
$ make sched
....
....
....
/home/rjordans/hive/examples/add/pearl_power/sched 
Succeeded
  • We will now run the power estimation tool pw_estimation from the work directory of the just simulated program.
$ ls -1
add_c.c
add_c.h
add.hive.c
add.hive.h
hivecc_intermediates
host.c
html
Makefile
sched
$ pw_estimation
........
........
........
VLIW areas
    Issue Slot : 19818
    Register File : 14923
Core IO areas
    Fifo and External Master Interface: 4562
    Program memory : 728971
    Data Memory : 751608
Total logic area: 39305
Total memory area : 1480580
Total number of cycles : 23

DUT_Total_Power: 8.249E-02

All the power values are expressed in mW/MHz and the areas in um2