Not Applicable
Not Applicable
In a memory system, a Dual Data Rate (DDR) controller interacts with an SD-RAM memory. The SD-RAM is usually a separate integrated circuit from the SD-RAM. The SD-RAM and DDR controller can be mounted on a printed circuit board to allow interaction therebetween.
There are a number of constraints that are imposed on the DDR controller and SD-RAM. These constraints are often related to timing issues. For example, a data query signal (DQS) is used for interaction between the SD-RAM and the DDR controller. There are several timing constraints on the DQS.
A function of a design tool, known as a place and route (PNR), is used to simulate integrated circuits and board level circuits. However, many constraints between the DDR controller and the SD-RAM cannot be translated into the PNR environment.
Further limitations and disadvantages of conventional and traditional systems will become apparent to one of skill in the art through comparison of such systems with the invention as set forth in the remainder of the present application with reference to the drawings.
Aspects of the present invention may be found in system(s), method(s), and/or apparatus for simulating a circuit, substantially as shown in and/or described in connection with at least one of he figures, as set forth more completely in the claims.
These and other advantages and novel features of the present invention, as well as details of illustrated examples embodiments thereof, will be more fully understood from the following description and drawings.
Referring now to
The first module 105 and second module 110 can comprise a variety of items. For example, the first module 105 and second module 110 can comprise integrated circuits. Alternatively, the first module 105 and second module 110 themselves, comprise printed circuit boards. Thus the first and second modules 105, 110 will be understood to comprise circuits that, by themselves, are physically separate from one another.
Accordingly, the first module 105 and second module 110 are mounted to the printed circuit board 115. The printed circuit board 115 provides electrical connections 420 whereby the first module 105 and second module 110 can send signals to each other. The signals between the first module and the second module may have a number of constraints. These constraints can be related to, for example, timing issues.
Electronic circuits, such as circuit 100, the first module 105, the second module 110, and the printed circuit board 115, are characterized by large initial cost of fabricating a first copy, and low marginal costs for making additional copies. Accordingly, it is preferable to confirm and verify the proper operation of a circuit prior to fabricating it. Design and testing tools can be used to both design and verify the proper operation of a design for an electronic circuit. One function of a design tool, known as a place and route (PNR), can be used to place standard cell library based gates appropriately on the chip such that it meets the internal timing requirements such as setup or hold timing on the latches/flip-flops. The Pnr engine finally connects all the gates by its router through metal interconnects.
Referring now to
At 210, the second module is modeled. At 215, the constraints for the interaction between the first module 105 and the second module 110 are modeled as set up port requirements. At 220, a model of the circuit 100 comprising the combined model and a model for the second module 110 are simulated and verified using the set up port requirements provided during 215.
Referring now to
The modeler 305 generates a model of the first module 105 and the printed circuit board 115 as a single piece (now referred to as a combined model), as well as a model of the second module 110. The modeler 305 can generate the combined model in several ways. For example, the modeler 305 can generate the combined model by either receiving a module of the first module 105 and a model of the printed circuit board 115 and generating the combined model from the model of the first module 105 and the model of the printed circuit board 115. Alternatively, the modeler 305 can create the combined module by generating the models of the first module 105 and the printed circuit board 115 connections 420, and generating the combined model, therefrom. Additionally, the modeler 305 can generate the combined model, without models for module 105 and the printed circuit board 115.
The translator receives constraints for the circuit 100 and converts the constraints to set up port requirements. The place and route engine 315 simulates and verifies a model of circuit 100 comprising the combined model and the model of the second module 110.
In certain embodiments of the present invention, the circuit 100 can comprise a memory system, wherein the first module 105 comprises and SD-RAM and the second module comprises a DDR controller 110. The constraints can comprise delay and timing constraints.
Referring now to
Referring now to
At 510, the DDR controller 410 is modeled. At 515, the timing and delay constraints for the interaction between the SD-RAM 405 and the DDR controller 410 are modeled as set up port requirements. At 520, a model of the memory system 400 that comprises the combined model and the model for the DDR controller 410 are simulated and verified using the set up port requirements provided during 515.
Referring now to
The modeler 605 generates a model of the SD-RAM 405 and the printed circuit board 415 as a single piece (now referred to as a combined model), as well as a model of the DDR controller 410. The modeler 605 can generate the combined model in several ways. For example, the modeler 305 can generate the combined model by either receiving a module of the SD-RAM 405 and a model of the printed circuit board 415 and generating the combined model from the model of the SD-RAM 405 and the model of the printed circuit board 415. Alternatively, the modeler 605 can create the combined module by generating the models of the SD-RAM 405 and the printed circuit board 415 connections 420, and generating the combined model, therefrom. Additionally, the modeler 605 can generate the combined model, without models for the SD-RAM 405 and the printed circuit board 415.
The translator 610 receives the timing and delay constraints for the memory system 400 and converts the constraints to set up port requirements. The place and route engine 615 simulates and verifies a model of the memory system 400 comprising the combined model and the model of the DDR controller 410. Path constraints can be broken into individual sub-paths and the timings can be budgeted on the sub-paths. This enables the place and route engine to understand the interface equations by many short timing constraints. The type of constraints are minimum delay, maximum delay, and setup port requirement and hold timing requirements on ports.
In certain embodiments of the present invention, the timing and delay constraints can be associated with delay requirements between signals, such as a data query signal (DQS) and a data clock signal. The delay matching requirement for the address and data signals can be translated into net requirements to be given to the place and route engine 615. Path constraints can be broken into individual sub-paths and the timings can be budgeted on the sub-paths.
Referring now to
An embodiment of the present invention can be implemented as sets of instructions resident in the random access memory 64 of one or more computer systems configured generally as described in
The embodiments described herein may be implemented as a board level product, as a single chip, application specific integrated circuit (ASIC), or with varying levels of the decoder system integrated with other portions of the system as separate components. The degree of integration of the decoder system will primarily be determined by the speed and cost considerations. Because of the sophisticated nature of modern processor, it is possible to utilize a commercially available processor, which may be implemented external to an ASIC implementation. Alternatively, if the processor is available as an ASIC core or logic block, then the commercially available processor can be implemented as part of an ASIC device wherein certain functions can be implemented in firmware. In one embodiment, the present invention can comprise an integrated circuit.
While the invention has been described with reference to certain embodiments, it will be understood by those skilled in the art that various changes may be made and equivalents may be substituted without departing from the scope of the invention.
In addition, many modifications may be made to adapt a particular situation or material to the teachings of the invention without departing from its scope. Therefore, it is intended that the invention not be limited to the particular embodiment disclosed, but that the invention will include all embodiments falling within the scope of the appended claims.
This application claims priority to “SYSTEM, METHOD, AND APPARATUS FOR PLACING AND ROUTING”, Provisional Application for U.S. patent application Ser. No. 60/676,397, filed Apr. 29, 2005, by Nair, et. al.
Number | Date | Country | |
---|---|---|---|
60676397 | Apr 2005 | US |