IP Library Granted Patent US 9,720,859
Granted Patent B1
US 9,720,859 · App. 12/772,051 · Granted Aug 1, 2017

System, method, and computer program product for conditionally eliminating a memory read request

Inventors: Nikhil Tripathi (Noida, IN); Venky Ramachandran (Cupertino, CA); Malay Haldar (Sunnyvale, CA); Sumit Roy (San Jose, CA); Anmol Mathur (San Jose, CA); Abhishek Roy (Noida, IN); Mohit Kumar (Noida, IN)
Assignee: Mentor Graphics Corporation
G06F13/1626G06F3/0628
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,720,859
App. No.
12/772,051
Granted
Aug 1, 2017
Kind
B1
Abstract

A system, method and computer program product are provided for conditionally eliminating a memory read request. In use, a memory read request is identified. Additionally, it is determined whether the memory read request is an unnecessary memory read request. Further, the memory read request is conditionally eliminated, based on the determination.

Claims (18)

1. A computer program product embodied on a non-transitory computer readable medium, comprising:

computer code for examining a netlist describing a circuit design to determine that a memory read request for a read address in a memory is an unnecessary memory read request by detecting that a result of the memory read request is already available at an output of the memory, and no write to the read address of the memory read request has occurred since a previous memory read request for the read address in the memory; and

computer code for conditionally eliminating the memory read request, based on the determination.

2. The computer program product of claim 1 , wherein the memory is a one read one write memory.

3. The computer program product of claim 1 , wherein the memory is a two port memory.

4. The computer program product of claim 1 , wherein the memory has a latency of more than one cycle.

5. The computer program product of claim 1 , wherein determining whether the memory read request is the unnecessary memory read request includes determining whether a constant condition for a read address of the memory exists.

6. The computer program product of claim 5 , wherein determining whether the memory read request is the unnecessary memory read request further includes determining a constant-based stability condition if the constant condition for the read address of the memory exists.

7. The computer program product of claim 6 , wherein conditionally eliminating the memory read request includes combining the constant-based stability condition with a memory enable of the memory.

8. The computer program product of claim 1 , wherein determining whether the memory read request is an unnecessary memory read request includes determining whether a condition exists where a read address of the memory has not changed from a previous cycle value.

9. The computer program product of claim 8 , wherein determining whether the memory read request is an unnecessary memory read request further includes determining a pure-stability-based stability condition if the condition exists where the read address of the memory has not changed from the previous cycle value.

10. The computer program product of claim 9 , wherein conditionally eliminating the memory read request includes combining the pure-stability-based stability condition with a memory enable of the memory.

11. A system, comprising:

memory; and

a processor coupled to the memory, the processor being configured for:

determining from a netlist describing a circuit design that a memory read request for a read address in the memory is an unnecessary memory read request based on a determination that a result of the memory read request is already available at an output of the memory, and no write to the read address of the memory read request has occurred since a previous memory read request for the read address in the memory; and

conditionally eliminating the memory read request, based on the determination.

12. The system of claim 11 , wherein the processor remains in communication with the memory via a bus.

Assignments (3)
MERGER AND CHANGE OF NAME Recorded Jun 28, 2021
From: MENTOR GRAPHICS CORPORATION; SIEMENS INDUSTRY SOFTWARE INC.
To: SIEMENS INDUSTRY SOFTWARE INC.
Reel/Frame 056696/0081 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 13, 2018
From: CALYPTO DESIGN SYSTEMS, INC.
To: MENTOR GRAPHICS CORPORATION
Reel/Frame 047766/0077 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 30, 2010
From: TRIPATHI, NIKHIL; RAMACHANDRAN, VENKY; HALDAR, MALAY; ROY, SUMIT; MATHUR, ANMOL; ROY, ABHISHEK; KUMAR, MOHIT
To: CALYPTO DESIGN SYSTEMS, INC.
Reel/Frame 024322/0322 →