2011年9月2日 星期五

Jacquard @ Eclipse synthesis tool


features
1. IP lib support (Add, Sub ...for xilinx)

2. automatic insert (double click in GUI)

3. optimization

3.1 high level

loop unrolling, fusion, inline,  reduce , divider/multiplier elimination , array...
Ref: http://www.jacquardcomputing.com/roccc/tutorials/4-optimizations/high-level-optimizatons/

ex:
constrain  @ if (*) latency > 1 unit cycle.
method    @ operator bind (<<,(recourse)+,(recourse)-)  
ps : a*5 = (a*4) + a = (a<<2) + a 
       a*7 = (a*8) - a = (a<<3) - a

or

(32bits)a = (32bits)b * (32bits)c = (16bits)b * (16bits)c
method    @ operator width reduce (32->16)



3.2 low level
operator balance, copy reduction, fanout tree gen ...
ref: http://www.jacquardcomputing.com/roccc/tutorials/4-optimizations/low-level-optimizations/

ex:
c = sum(a,b);
...
e = sum(c,e);

@ system call (sum)2 times,
@ methods resource bind & schedule


4. external ip wrapper
 http://www.jacquardcomputing.com/roccc/tutorials/5-advanced-usage/intrinsic-usage-and-management/

 5 testbench gen

6 protocol interface support




Ref: http://www.jacquardcomputing.com/

沒有留言:

張貼留言