@@ -38,6 +38,7 @@ class AladdinAdder(LibraryEstimatorClassBase):
3838 width : int
3939 The width of the adder in bits. This is the number of bits of the input values.
4040 """
41+ component_name = ["Adder" , "AladdinAdder" , "IntAdder" ]
4142
4243 def __init__ (self , tech_node : float , width : int = 32 ):
4344 super ().__init__ (leak_power = 2.40e-6 , area = 278.0e-12 )
@@ -76,14 +77,6 @@ def read(self) -> float:
7677 return 0.21e-12
7778
7879
79- class Adder (AladdinAdder ):
80- pass
81-
82-
83- class IntAdder (AladdinAdder ):
84- pass
85-
86-
8780# Original CSV contents:
8881# tech_node,global_cycle_period,width|datawidth,dynamic energy(pJ),area(um^2),action
8982# 40nm,1e-9,1,0.009,5.98E+00,read
@@ -100,6 +93,7 @@ class AladdinRegister(LibraryEstimatorClassBase):
10093 width : int, optional
10194 The width of the register in bits.
10295 """
96+ component_name = ["Register" , "AladdinRegister" ]
10397
10498 def __init__ (
10599 self ,
@@ -157,10 +151,6 @@ def write(self) -> float:
157151 return 0.009e-12
158152
159153
160- class Register (AladdinRegister ):
161- pass
162-
163-
164154# Original CSV contents:
165155# tech_node,global_cycle_period,width|datawidth,energy(pJ),area(um^2),action
166156# 40nm,1e-9,32,0.02947,71,compare|read
@@ -178,6 +168,7 @@ class AladdinComparator(LibraryEstimatorClassBase):
178168 width : int, optional
179169 The width of the comparator in bits.
180170 """
171+ component_name = ["Comparator" , "AladdinComparator" ]
181172
182173 def __init__ (self , tech_node : float , width : int = 32 ):
183174 super ().__init__ (leak_power = 2.51e-8 , area = 71.0e-12 )
@@ -216,10 +207,6 @@ def read(self) -> float:
216207 return 0.02947e-12
217208
218209
219- class Comparator (AladdinComparator ):
220- pass
221-
222-
223210# Original CSV contents:
224211# tech_node,global_cycle_period,width|datawidth,width_a|datawidth_a,width_b|datawidth_b,energy(pJ),area(um^2),action
225212# 40nm,1e-9,32,32,32,12.68,6350,multiply|read
@@ -241,6 +228,7 @@ class AladdinMultiplier(LibraryEstimatorClassBase):
241228 width_b : int, optional
242229 The width of the second input value in bits.
243230 """
231+ component_name = ["Multiplier" , "AladdinMultiplier" , "IntMultiplier" ]
244232
245233 def __init__ (
246234 self ,
@@ -301,14 +289,6 @@ def read(self) -> float:
301289 return 12.68e-12
302290
303291
304- class IntMultiplier (AladdinMultiplier ):
305- pass
306-
307-
308- class Multiplier (AladdinMultiplier ):
309- pass
310-
311-
312292# Original CSV contents:
313293# tech_node,global_cycle_period,width|datawidth,energy(pJ),area(um^2),action
314294# 40nm,1e-9,32,0.25074,495.5,count|read
@@ -325,6 +305,7 @@ class AladdinCounter(LibraryEstimatorClassBase):
325305 width : int, optional
326306 The width of the counter in bits.
327307 """
308+ component_name = ["Counter" , "AladdinCounter" ]
328309
329310 def __init__ (self , tech_node : float , width : int = 32 ):
330311 super ().__init__ (leak_power = 3.21e-7 , area = 495.5e-12 )
@@ -363,10 +344,6 @@ def read(self) -> float:
363344 return 0.25074e-12
364345
365346
366- class Counter (AladdinCounter ):
367- pass
368-
369-
370347class AladdinIntMAC (LibraryEstimatorClassBase ):
371348 """
372349 A integer multiply-accumulate unit from the Aladdin paper. Multiplies two values
@@ -381,8 +358,7 @@ class AladdinIntMAC(LibraryEstimatorClassBase):
381358 multiplier_width : int, optional
382359 The width of the multiplier in bits.
383360 """
384-
385- component_name = ["intmac" , "aladdin_intmac" ]
361+ component_name = ["IntMAC" , "AladdinIntMAC" ]
386362
387363 def __init__ (
388364 self , tech_node : float , adder_width : int = 16 , multiplier_width : int = 8
0 commit comments