Patents by Inventor Tuhin Mahmud
Tuhin Mahmud has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11775720Abstract: Aspects of the invention include obtaining one or more feature values that define an architecture design of a memory array and implementing a machine learning model to obtain a predicted power, performance, and area (PPA) of the memory array based on the one or more features. The predicted PPA output by the machine leaning model is assessed based on predefined PPA goals. A design of an integrated circuit that includes the memory array is finalized and fabricated based on the predicted PPA meeting the predefined PPA goals.Type: GrantFiled: July 2, 2021Date of Patent: October 3, 2023Assignee: International Business Machines CorporationInventors: Tuhin Mahmud, Saiful Islam, Abraham Mathews, Geoffrey Wang
-
Publication number: 20230004701Abstract: Aspects of the invention include obtaining one or more feature values that define an architecture design of a memory array and implementing a machine learning model to obtain a predicted power, performance, and area (PPA) of the memory array based on the one or more features. The predicted PPA output by the machine leaning model is assessed based on predefined PPA goals. A design of an integrated circuit that includes the memory array is finalized and fabricated based on the predicted PPA meeting the predefined PPA goals.Type: ApplicationFiled: July 2, 2021Publication date: January 5, 2023Inventors: Tuhin Mahmud, Saiful Islam, Abraham Mathews, Geoffrey Wang
-
Patent number: 11205092Abstract: Methods, systems and computer program products for clustering simulation failures are provided. Aspects include receiving simulation data comprising a plurality of simulation failure files, generating a token for each simulation failure file of the plurality of simulation failure files, determining a token score for each token for each simulation failure file of the plurality simulation failure files, normalizing each token score for each token in the plurality of simulation failure files utilizing a weighting scheme to create a normalized token score for each token, determining a set of groups for the plurality of simulation failure files, and assigning one or more simulation failure files from the plurality of simulation failure files into a group in the set of groups based at least in part on normalized token score.Type: GrantFiled: April 11, 2019Date of Patent: December 21, 2021Assignee: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Bryan G. Hickerson, John Reysa, Mohamed Baker Alawieh, Brian Kozitza, Erica Stuecheli, Tuhin Mahmud, Divya Joshi
-
Publication number: 20200327364Abstract: Methods, systems and computer program products for clustering simulation failures are provided. Aspects include receiving simulation data comprising a plurality of simulation failure files, generating a token for each simulation failure file of the plurality of simulation failure files, determining a token score for each token for each simulation failure file of the plurality simulation failure files, normalizing each token score for each token in the plurality of simulation failure files utilizing a weighting scheme to create a normalized token score for each token, determining a set of groups for the plurality of simulation failure files, and assigning one or more simulation failure files from the plurality of simulation failure files into a group in the set of groups based at least in part on normalized token score.Type: ApplicationFiled: April 11, 2019Publication date: October 15, 2020Inventors: Bryan G. Hickerson, John Reysa, Mohamed Baker Alawieh, Brian Kozitza, Erica Stuecheli, Tuhin Mahmud, Divya Joshi
-
Patent number: 9092591Abstract: Mechanisms are provided for pruning a layer trait library for use in wire routing in an integrated circuit design process. The mechanisms receive a plurality of wirecodes and a metal stack definition. The mechanisms generate a verbose layer trait library based on all possible combinations of the wirecodes and layers of the metal stack definition. The mechanisms generate a pruned layer trait library by pruning the verbose layer trait library to remove redundant layer traits from the verbose layer trait library. In addition, the mechanisms store the pruned layer trait library for performing wire routing of an integrated circuit design.Type: GrantFiled: April 10, 2014Date of Patent: July 28, 2015Assignee: International Business Machines CorporationInventors: Charles J. Alpert, Robert M. Averill, III, Eric J. Fluhr, Zhuo Li, Tuhin Mahmud, Jose L. P. Neves, Stephen T. Quay, Chin Ngai Sze, Yaoguang Wei
-
Patent number: 8881089Abstract: A system, process, etc. according to some embodiments, which includes operations that include selecting one of a plurality of solutions (“selected solution”) for optimization of an integrated circuit design during physical synthesis. The operations can further include performing on the selected solution a fast evaluation of a specific metric without updating design documents (e.g., without updating a netlist or metric map). If the evaluation of the specific metric is non-satisfactory, then the candidate solution is rejected. If the evaluation of the specific metric is satisfactory, then a design document is updated and a full evaluation of the specific metric (and other metrics) can be performed.Type: GrantFiled: December 17, 2013Date of Patent: November 4, 2014Assignee: International Business Machines CorporationInventors: Charles Jay Alpert, Glenn R. Bee, Zhuo Li, Tuhin Mahmud, Stephen T. Quay, Lakshmi N. Reddy, Chin Ngai Sze, Yaoguang Wei
-
Publication number: 20140223397Abstract: Mechanisms are provided for pruning a layer trait library for use in wire routing in an integrated circuit design process. The mechanisms receive a plurality of wirecodes and a metal stack definition. The mechanisms generate a verbose layer trait library based on all possible combinations of the wirecodes and layers of the metal stack definition. The mechanisms generate a pruned layer trait library by pruning the verbose layer trait library to remove redundant layer traits from the verbose layer trait library. In addition, the mechanisms store the pruned layer trait library for performing wire routing of an integrated circuit design.Type: ApplicationFiled: April 10, 2014Publication date: August 7, 2014Applicant: International Business Machines CorporationInventors: Charles J. Alpert, Robert M. Averill, III, Eric J. Fluhr, Zhuo Li, Tuhin Mahmud, Jose L.P. Neves, Stephen T. Quay, Chin Ngai Sze, Yaoguang Wei
-
Publication number: 20140195998Abstract: Mechanisms are provided for pruning a layer trait library for use in wire routing in an integrated circuit design process. The mechanisms receive a plurality of wirecodes and a metal stack definition. The mechanisms generate a verbose layer trait library based on all possible combinations of the wirecodes and layers of the metal stack definition. The mechanisms generate a pruned layer trait library by pruning the verbose layer trait library to remove redundant layer traits from the verbose layer trait library. In addition, the mechanisms store the pruned layer trait library for performing wire routing of an integrated circuit design.Type: ApplicationFiled: January 9, 2013Publication date: July 10, 2014Applicant: INTERNATIONAL BUSINESS MACHINES CORPORATIONInventors: Charles J. Alpert, Robert M. Averill, III, Eric J. Fluhr, Zhuo Li, Tuhin Mahmud, Jose L.P. Neves, Stephen T. Quay, Chin Ngai Sze, Yaoguang Wei
-
Patent number: 8769468Abstract: Mechanisms are provided for pruning a layer trait library for use in wire routing in an integrated circuit design process. The mechanisms receive a plurality of wirecodes and a metal stack definition. The mechanisms generate a verbose layer trait library based on all possible combinations of the wirecodes and layers of the metal stack definition. The mechanisms generate a pruned layer trait library by pruning the verbose layer trait library to remove redundant layer traits from the verbose layer trait library. In addition, the mechanisms store the pruned layer trait library for performing wire routing of an integrated circuit design.Type: GrantFiled: January 9, 2013Date of Patent: July 1, 2014Assignee: International Business Machines CorporationInventors: Charles J. Alpert, Robert M. Averill, III, Eric J. Fluhr, Zhuo Li, Tuhin Mahmud, Jose L. P. Neves, Stephen T. Quay, Chin Ngai Sze, Yaoguang Wei
-
Patent number: 8365120Abstract: A mechanism is provided for resolving uplift or coupling timing problems and slew violations without sacrificing late mode timing in integrated circuit (IC) designs. Responsive to a request being received to generate a new IC design, for each net in a plurality of nets in the new IC design, a determination is made as to whether the net is routable through a cell in a plurality of cells using a cost function associated with the cell such that a coupling capacitance associated with the net is equal to or below a predetermined coupling capacitance threshold. Responsive to net being able to be routed through the cell with the coupling capacitance being equal to or below the threshold, the net is assigned to at least one track within the cell. Responsive to all nets in the new IC design being routed, a new IC design is generated.Type: GrantFiled: December 2, 2010Date of Patent: January 29, 2013Assignee: International Business Machines CorporationInventors: Charles J. Alpert, Joachim G. Clabes, Zhuo Li, Tuhin Mahmud, Stephen T. Quay
-
Publication number: 20120144358Abstract: A mechanism is provided for resolving uplift or coupling timing problems and slew violations without sacrificing late mode timing in integrated circuit (IC) designs. Responsive to a request being received to generate a new IC design, for each net in a plurality of nets in the new IC design, a determination is made as to whether the net is rentable through a cell in a plurality of cells using a cost function associated with the cell such that a coupling capacitance associated with the net is equal to or below a predetermined coupling capacitance threshold. Responsive to net being able to be routed through the cell with the coupling capacitance being equal to or below the threshold, the net is assigned to at least one track within the cell. Responsive to all nets in the new IC design being routed, a new IC design is generated.Type: ApplicationFiled: December 2, 2010Publication date: June 7, 2012Applicant: International Business Machines CorporationInventors: Charles J. Alpert, Clabes G. Joachim, Zhuo Li, Tuhin Mahmud, Stephen T. Quay
-
Patent number: 7895557Abstract: A method and system for concurrent buffering and layer assignment in integrated current layout. Buffers are inserted and metal interconnects or “wires” are sized for every net, which consists of one driver and one or more receivers, such that timing skew constraints can be met. Long nets are promoted to a higher level if the slew violation can be fixed only by a promotion of the net or if the “slack” gain available by this promotion is equal to or greater than a predesignated layer of promotion threshold. In response to determining these layer assignments, the method and system then systematically demotes nets that are not critical and which do not impact the circuit and electrical constraints in order to minimize the use of high layer wire resources.Type: GrantFiled: April 10, 2008Date of Patent: February 22, 2011Assignee: International Business Machines CorporationInventors: Charles J. Alpert, Zhuo Li, Tuhin Mahmud, Stephen T. Quay, Paul G. Villarrubla
-
Patent number: 7890905Abstract: A buffer insertion technique addresses slew constraints while minimizing buffer cost. The method builds initial solutions for the sinks, each having an associated cost, slew and capacitance. As a solution propagates toward a source, wire capacitance and wire slew are added to the solution. When a buffer is selected for possible insertion, the slew of the solution is set to zero while the cost of the solution is incremented based on the selected buffer and the capacitance is set to an intrinsic capacitance of the buffer. The solutions of two intersecting wire branches are merged by adding branch capacitances and costs, and selecting the highest branch slew. The solution sets are updated by disregarding solutions which have a slew component greater than a slew constraint, and any solution that is dominated by another solution is eliminated. The solution having the smallest cost is selected as the final solution.Type: GrantFiled: July 6, 2008Date of Patent: February 15, 2011Assignee: International Business Machines CorporationInventors: Charles J. Alpert, Arvind K. Karandikar, Tuhin Mahmud, Stephen T. Quay, Chin Ngai Sze
-
Publication number: 20090259980Abstract: A method and system for concurrent buffering and layer assignment in integrated current layout. Buffers are inserted and metal interconnects or “wires” are sized for every net, which consists of one driver and one or more receivers, such that timing skew constraints can be met. Long nets are promoted to a higher level if the slew violation can be fixed only by a promotion of the net or if the “slack” gain available by this promotion is equal to or greater than a predesignated layer of promotion threshold. In response to determining these layer assignments, the method and system then systematically demotes nets that are not critical and which do not impact the circuit and electrical constraints in order to minimize the use of high layer wire resources.Type: ApplicationFiled: April 10, 2008Publication date: October 15, 2009Inventors: Charles J. ALPERT, Zhuo LI, Tuhin MAHMUD, Stephen T. QUAY, Paul G. VILLARRUBLA
-
Publication number: 20090064080Abstract: Wirelength in a net of an integrated circuit design is reduced by forming clusters of sinks to be interconnected, inserting a buffer at each cluster, and providing branch connections between clusters by connecting a sink of one cluster to a buffer of another cluster, to create a buffer tree spanning all sinks. The buffers are inserted at a point on a respective bounding box of a cluster that is closest to a source for the net. A sink that provides a branch connection to the buffer of another cluster is the closest sink to that buffer (except for those sinks in the cluster). Clusters may be formed by examining different pairs of the sinks with different bounding boxes, and identifying one of the pairs whose bounding box has a lowest half-perimeter as the best pair for clustering.Type: ApplicationFiled: October 29, 2008Publication date: March 5, 2009Inventors: Charles J. Alpert, Tuhin Mahmud, Stephen T. Quay
-
Patent number: 7484199Abstract: Wirelength in a net of an integrated circuit design is reduced by forming clusters of sinks to be interconnected, inserting a buffer at each cluster, and providing branch connections between clusters by connecting a sink of one cluster to a buffer of another cluster, to create a buffer tree spanning all sinks. The buffers are inserted at a point on a respective bounding box of a cluster that is closest to a source for the net. A sink that provides a branch connection to the buffer of another cluster is the closest sink to that buffer (except for those sinks in the cluster). Clusters may be formed by examining different pairs of the sinks with different bounding boxes, and identifying one of the pairs whose bounding box has a lowest half-perimeter as the best pair for clustering.Type: GrantFiled: May 16, 2006Date of Patent: January 27, 2009Assignee: International Business Machines CorporationInventors: Charles J. Alpert, Tuhin Mahmud, Stephen T. Quay
-
Publication number: 20090013299Abstract: Wirelength in a net of an integrated circuit design is reduced by forming clusters of sinks to be interconnected, inserting a buffer at each cluster, and providing branch connections between clusters by connecting a sink of one cluster to a buffer of another cluster, to create a buffer tree spanning all sinks. The buffers are inserted at a point on a respective bounding box of a cluster that is closest to a source for the net. A sink that provides a branch connection to the buffer of another cluster is the closest sink to that buffer (except for those sinks in the cluster). Clusters may be formed by examining different pairs of the sinks with different bounding boxes, and identifying one of the pairs whose bounding box has a lowest half-perimeter as the best pair for clustering.Type: ApplicationFiled: September 10, 2008Publication date: January 8, 2009Inventors: Charles J. Alpert, Tuhin Mahmud, Stephen T. Quay
-
Publication number: 20080295051Abstract: A buffer insertion technique addresses slew constraints while minimizing buffer cost. The method builds initial solutions for the sinks, each having an associated cost, slew and capacitance. As a solution propagates toward a source, wire capacitance and wire slew are added to the solution. When a buffer is selected for possible insertion, the slew of the solution is set to zero while the cost of the solution is incremented based on the selected buffer and the capacitance is set to an intrinsic capacitance of the buffer. The solutions of two intersecting wire branches are merged by adding branch capacitances and costs, and selecting the highest branch slew. The solution sets are updated by disregarding solutions which have a slew component greater than a slew constraint, and any solution that is dominated by another solution is eliminated. The solution having the smallest cost is selected as the final solution.Type: ApplicationFiled: July 6, 2008Publication date: November 27, 2008Inventors: Charles J. Alpert, Arvind K. Karandikar, Tuhin Mahmud, Stephen T. Quay, Chin Ngai Sze
-
Patent number: 7448007Abstract: A buffer insertion technique addresses slew constraints while minimizing buffer cost. The method builds initial solutions for the sinks, each having an associated cost, slew and capacitance. As a solution propagates toward a source, wire capacitance and wire slew are added to the solution. When a buffer is selected for possible insertion, the slew of the solution is set to zero while the cost of the solution is incremented based on the selected buffer and the capacitance is set to an intrinsic capacitance of the buffer. The solutions of two intersecting wire branches are merged by adding branch capacitances and costs, and selecting the highest branch slew. The solution sets are updated by disregarding solutions which have a slew component greater than a slew constraint, and any solution that is dominated by another solution is eliminated. The solution having the smallest cost is selected as the final solution.Type: GrantFiled: July 14, 2006Date of Patent: November 4, 2008Assignee: International Business Machines CorporationInventors: Charles J. Alpert, Arvind K. Karandikar, Tuhin Mahmud, Stephen T. Quay, Chin Ngai Sze
-
Publication number: 20080016479Abstract: A buffer insertion technique addresses slew constraints while minimizing buffer cost. The method builds initial solutions for the sinks, each having an associated cost, slew and capacitance. As a solution propagates toward a source, wire capacitance and wire slew arc added to the solution. When a buffer is selected for possible insertion, the slew of the solution is set to zero while the cost of the solution is incremented based on the selected buffer and the capacitance is set to an intrinsic capacitance of the buffer. The solutions of two intersecting wire branches are merged by adding branch capacitances and costs, and selecting the highest branch slew. The solution sets are updated by disregarding solutions which have a slew component greater than a slew constraint, and any solution that is dominated by another solution is eliminated. The solution having the smallest cost is selected as the final solution.Type: ApplicationFiled: July 14, 2006Publication date: January 17, 2008Inventors: Charles J. Alpert, Arvind K. Karandikar, Tuhin Mahmud, Stephen T. Quay, Chin Ngai Sze