Difference between revisions of "Pranav"

From Vlsiwiki
Jump to: navigation, search
Line 1: Line 1:
 
FPU  
 
FPU  
  
OBSERVATION
 
  
ONE
+
===sf_float64_2op_check;sf_float64_2op_set===
  
 +
Helper function : sf_float64_2op_check
  
8191 +  16646144 = 16646143
+
called whenever softfloat_check() is called ... which is after the posedge of clk
fpu result : 4194559
+
fpu result : 4194559
+
fpu result : 4194559
+
fpu result : 4194559
+
fpu result : 4194559
+
fpu result : 4194559
+
fpu result : 16646143
+
  
  
 +
and similar for sf_float64_2op_set except that it is called before the posedge of clk
  
About & clocks or checks before result is correct
+
and int ops have similar helper functions
  
Works for both add and mul
 
  
TWO
+
===simple_result===
 
+
  simple_result[state].when      = my_gettime();
Helper function : sf_float64_2op_check
+
 
+
called whenever softfloat_check is called ... which is after a certain time after the posedge of clk
+
 
+
 
+
THREE
+
 
+
simple_result[state].when      = my_gettime();
+
 
   simple_result[state].val        = ll_res;
 
   simple_result[state].val        = ll_res;
 
   simple_result[state].op        = do_op;
 
   simple_result[state].op        = do_op;
Line 38: Line 23:
 
saves the pre comp values in a data structure struct Result_Entry... then checked using the fpu generated result....
 
saves the pre comp values in a data structure struct Result_Entry... then checked using the fpu generated result....
  
3 1/2
+
 
  
 
struct result_entry saves values for checking including number of tests being run  
 
struct result_entry saves values for checking including number of tests being run  
  
  
FOUR
 
 
change default test_type to Rank_test
 
 
does tests based on probability generated by random number function
 
 
 
FIVE
 
 
 
smul umul and other things are meant for int operations hence the name  of the function int2_op etc
 
 
 
SIX
 
  
 
32 bit operations are meant to printed out with  masking being involved at some point  
 
32 bit operations are meant to printed out with  masking being involved at some point  
  
  
SEVEN
 
  
 
we assign op=OP_MDDS something to tell the hardware the current opcode  
 
we assign op=OP_MDDS something to tell the hardware the current opcode  
and float64_add_next etc are used to compute the softvalues .. so dont go looking around how to compute the value
+
and float64_add_next etc are used to compute the softvalues .. no calculations by hand
  
op is an inout to the main fpu.v as well as fpu_result
 
  
  
EIGHT
+
 
 +
===PLI===
  
 
tf_putlongp() is a PLI function which puts a 64 int value to the current task or function
 
tf_putlongp() is a PLI function which puts a 64 int value to the current task or function
Line 78: Line 48:
  
  
 
+
== GIT Commands - HOWTO ==
 
+
 
+
next page on FPU
+
 
+
 
+
GIT Commands - HOWTO
+
  
 
git commit //adds the current changes to the local repo
 
git commit //adds the current changes to the local repo
Line 98: Line 62:
 
git add foo.cpp
 
git add foo.cpp
  
TO COMMIT - TYPICAL WAY
+
=== TO COMMIT - TYPICAL WAY ===
  
 
git commit -a -m 'DEBUG: Defaulted to the rank test...'
 
git commit -a -m 'DEBUG: Defaulted to the rank test...'

Revision as of 07:54, 12 May 2010

FPU


sf_float64_2op_check;sf_float64_2op_set

Helper function : sf_float64_2op_check

called whenever softfloat_check() is called ... which is after the posedge of clk


and similar for sf_float64_2op_set except that it is called before the posedge of clk

and int ops have similar helper functions


simple_result

 simple_result[state].when       = my_gettime();
 simple_result[state].val        = ll_res;
 simple_result[state].op         = do_op;
 simple_result[state].in_use     = 1;


saves the pre comp values in a data structure struct Result_Entry... then checked using the fpu generated result....


struct result_entry saves values for checking including number of tests being run


32 bit operations are meant to printed out with masking being involved at some point


we assign op=OP_MDDS something to tell the hardware the current opcode and float64_add_next etc are used to compute the softvalues .. no calculations by hand



PLI

tf_putlongp() is a PLI function which puts a 64 int value to the current task or function

my_putlongp() is a helper function which takes in dest and value and stores it into that dest with some PLI function...

similarly for my_getlongp() and my_gettime()


GIT Commands - HOWTO

git commit //adds the current changes to the local repo

git push //makes the changes to the server repo

git status // to check local rev compares to the main one

git pull //to sync with others

git mv foo foo.cpp

git add foo.cpp

TO COMMIT - TYPICAL WAY

git commit -a -m 'DEBUG: Defaulted to the rank test...'

git reset --hard HEAD // reset local repo

git diff HEAD // diff from last commit


NOTES on terminal commands and search tips

NOTES on terminal commands and search tips

grep -r <string> * --- To search for a string in folders

find ~ -name "*.*" --- to search for a file


to open a pdf

evince <filename>.pdf