Math2mat
|
00001 package m2m.backend.buildingblocks.blocks; 00002 00003 import java.util.ArrayList; 00004 00005 import m2m.backend.buildingblocks.*; 00006 00007 public class SqrtPipeNr64 extends BuildingBlockFloat64 { 00008 00009 @Override 00010 public String vhdlFileName() { 00011 return "sqrt.vhd"; 00012 } 00013 00014 @Override 00015 public ImplType implType() { 00016 return ImplType.PIPELINE; 00017 } 00018 00019 @Override 00020 public int latencyTime() { 00021 return 57; 00022 } 00023 00024 @Override 00025 public int cycleTime() { 00026 return 1; 00027 } 00028 00029 @Override 00030 public int resources() { 00031 return 990; 00032 } 00033 00034 @Override 00035 public int period() { 00036 return 10 / (getSignificandSize() + getExponentSize()); 00037 } 00038 00039 @Override 00040 public int nbInputs() { 00041 return 1; 00042 } 00043 00044 @Override 00045 public String functionName() { 00046 return "sqrt"; 00047 } 00048 00049 @Override 00050 public String entityName() { 00051 return "sqrt_pipe_nr_64"; 00052 } 00053 00054 @Override 00055 public String author() { 00056 return "Samuel Tache"; 00057 } 00058 00059 @Override 00060 public int version() { 00061 return 1; 00062 } 00063 00064 @Override 00065 public String description() { 00066 return "A simple pipeline square root"; 00067 } 00068 00069 @Override 00070 public ArrayList<String> dependentFiles() { 00071 ArrayList<String> files = new ArrayList<String>(); 00072 files.add("square_root.vhd"); 00073 return files; 00074 } 00075 } 00076