Previous Up Next

Appendix A  Sample default.spark Hardware Description file

//NOTE: do no put any comments within a section
// Currently NumOfCycles, TimeConstrained and Pipelined are not used
// ClockPeriod  NumOfCycles  TimeConstrained   Pipelined
[GeneralInfo]
10      1       1       0

//typeName           lowerRange      upperRange
//or variableName    lowerRange      upperRange
[TypeInfo]
char                    0               8
signed_char             0               8
unsigned_char           0               8
short                   0               16
int                  -32767            32768
unsigned_short          0               16
unsigned_int            0               32
long                    0               64
unsigned_long           0               64
long_long               0               128
unsigned_long_long      0               128
float                   0               32
double                  0               64
long_double             0               128
myVariableFromInput     0               4

// all cycles in resources have to be ns/ClockPeriod = cycles
//name  type  inpsType inputs outputs number  cost    cycles  ns
[Resources] 
ALU     +,-     i       2       1       1       10      1       10
MUL     *       i       2       1       1       20      2       20
CMP     ==,<    i       2       1       1       10      1       10
SHFT    <<      i       2       1       2       10      1       10
ARR     []      i       1       1       5       10      1       10
LOGIC   &&,||   i       2       1       5       10      0       0
GATE    b&,b|   i       2       1       5       10      0       0
UNARY   ~,!     i       1       1       5       10      0       0
ALLCALLS call   i       0       0       2       10      1       10

// variable  maxNumUnrolls  maxNumShifts  percentageThreshold cycleThruput
[RDLPParams]
* 0 0 70 0

//unroll, shift, resetUnroll, and resetShift metrics
[RDLPMetrics]
UnrollMetric=RDLPGenericUnrollMetric
ShiftMetric=RDLPGenericShiftMetric
ResetUnrollMetric=RDLPGenericResetUnrollMetric
ResetShiftMetric=RDLPGenericResetShiftMetric

//lists file that has scheduler rules/functions
[SchedulerRules]
Priority.rules

//function that drives scheduler
[SchedulerScript]
genericSchedulerScript

// numOfTestVectors
[Verification]
20

[OutputVHDLRules]
PrintSynopsysVHDL=true

Previous Up Next