You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
- removed the function parameters "original_num_nodes" and "nodes". These values can be from the "module" parameter and are now assigned internally within this function.
283
+
- Srivatsan Srinivasan, August 2021:
284
+
- Moved the incrementing of the "oneluts_elim" variable to this fuction from the "remove_node" function. The purpose of this change was to localise any vairable attached to removing one lut nodes within this function. Additionally, now the "remove_node" function is generalized and is not limited to be only used by "remove_one_lut_nodes".
voidremove_node ( t_node* node, t_node** nodes, int original_num_nodes ) {
830
818
//Free node and assign it to NULL on the spot
831
819
//Array will be re-organized to fill in the gaps later
820
+
/*
821
+
Change Log:
822
+
- Srivatsan Srinivasan, August 2021:
823
+
- Orirignally, the "oneluts_elim" variable (which is used to keep track of the number of one lut nodes removed from the node list) was incremented here. This incrementation has been moved to the "remove_one_lut_nodes" function.
824
+
- This purpose of this change is that now this function is not limited to just be used by "remove_one_lut_nodes".
The purpose of this function is to regorganize the module node list (node array) by filling in gaps with the last available elements in the array to save CPU time.
854
+
855
+
The module provided to this function is expected to have nodes deleted within its nodes list (array). This essentially creates gaps in the array. So we fill in the gaps of this array and ensure it is a continuous list of nodes.
856
+
857
+
Please refer to the example below:
858
+
859
+
Inital Node array:
860
+
------ ------ ------ ------
861
+
|LUT 1| --> |LUT 2| --> --> |LUT 3| --> |LUT 4|
862
+
------ ------ ------ ------
863
+
864
+
After reorganization and filling gaps:
865
+
866
+
------ ------ ------ ------
867
+
|LUT 1| --> |LUT 2| --> |LUT 4| --> |LUT 3| -->
868
+
------ ------ ------ ------
869
+
870
+
The function fills in the gaps with the last available node in the list (as shown in the example above).
871
+
872
+
Change Log:
873
+
- Srivatsan Srinivasan, August 2021:
874
+
- created this function to reorganize node arrays with gaps inside of them.
875
+
- Initially the feature provided by this function was embedded indide the "remove_one_lut_nodes" function. By creating a seperate function, we are now not restricted to only removing one-lut nodes.
876
+
- Now we can remove any types of nodes and then run this function to reorganize the node array.
877
+
*/
878
+
// assign module related parameters
879
+
int original_number_of_nodes = module->number_of_nodes;
0 commit comments