IP Library Granted Patent US 9,685,957
Granted Patent B2
US 9,685,957 · App. 14/249,292 · Granted Jun 20, 2017

System reset controller replacing individual asynchronous resets

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,685,957
App. No.
14/249,292
Granted
Jun 20, 2017
Kind
B2
Abstract

An integrated circuit device comprises a system reset controller. The system reset controller includes a clock signal input, a reset signal input, a clock signal output, and a reset signal output. The system reset controller is arranged to receive distributed clock and reset signal inputs and output modified clock and reset signal outputs such that asynchronous reset inputs in downstream system components can be replaced by logic elements not requiring asynchronous reset inputs with no change in externally-visible behavior except the length of reset sequences as measured by clock pulses.

Claims (26)

1. A method for designing a system on a target device, comprising:

inserting a system reset controller that includes a clock signal input, a reset signal input, a clock signal output, and a reset signal output, wherein the system reset controller is arranged to receive distributed clock and reset signal inputs and output modified clock and reset signal outputs such that the reset controller resets the system using an asynchronous reset signal without requiring downstream asynchronous elements;

removing identified resets that are time-delayed re-implementations of resets earlier in a data path; and

increasing a length of a system reset controller's reset sequence such that non-removed resets earlier in the data path have sufficient time to propagate forward to locations of the removed identified resets.

2. The method of claim 1 , wherein logic elements with asynchronous reset inputs in the design for the system are replaced in the second design for the system by logic elements that do not require or have asynchronous reset inputs.

3. The method of claim 1 , further comprising back-annotating sufficient information into a user-specific design in order to allow a simulator to correctly simulate actual reset behavior.

4. The method of claim 1 , wherein the system reset controller is generated, inserted, and parameterized via a software library function.

5. The method of claim 1 , wherein the reset controller is further arranged to generate a free-running clock such that a circuit coupled to the reset controller can be properly reset in an absence of an externally-applied clock.

6. The method of claim 1 wherein the reset controller is further arranged to ensure a parameterized minimum number of clock pulses in any generated reset sequence.

7. The method of claim 1 , wherein the reset controller further comprises configuration RAM that includes information that specifies parameterized parts of controller behavior, the information including a number of clock cycles in a reset sequence.

8. The method of claim 1 , wherein the system reset controller includes a clock multiplexor that selects between the clock input signal or an internal oscillator output signal.

9. The method of claim 1 , wherein removing the identified resets results in no signal being transmitted to a reset input of a component corresponding to the identified resets.

10. A non-transitory computer readable medium, having stored thereon sequences of instructions, the sequences of instructions when executed by a processor causes the processor to perform a method of designing a system on a target device, comprising:

inserting a system reset controller that includes a clock signal input, a reset signal input, a clock signal output, and a reset signal output, wherein the system reset controller is arranged to receive distributed clock and reset signal inputs and output modified clock and reset signal outputs such that the reset controller resets the system using an asynchronous reset signal without requiring downstream asynchronous elements;

removing identified resets that are time-delayed re-implementations of resets earlier in a data path; and

increasing a length of a system reset controller's reset sequence such that non-removed resets earlier in the data path have sufficient time to propagate forward to locations of the removed identified resets.

11. The non-transitory computer readable medium of claim 10 , wherein logic elements with asynchronous reset inputs in the design are replaced by logic elements that do not require or have asynchronous reset inputs.

12. The non-transitory computer readable medium of claim 10 , further comprising back-annotating sufficient information into a user-specific design in order to allow a simulator to correctly simulate actual reset behavior.

13. The non-transitory computer readable medium of claim 10 , wherein the system reset controller is generated, inserted, and parameterized via a software library function.

14. The non-transitory computer readable medium of claim 10 , wherein the reset controller is further arranged to generate a free-running clock such that a circuit coupled to the reset controller can be properly reset in an absence of an externally-applied clock.

15. The method of claim 10 , wherein the reset controller is further arranged to ensure a parameterized minimum number of clock pulses in any generated reset sequence.

16. The method of claim 10 , wherein the reset controller further comprises configuration RAM that includes information that specifies parameterized parts of controller behavior, the information including a number of clock cycles in a reset sequence.

17. The non-transitory computer readable medium of claim 10 , wherein the system reset controller includes a clock multiplexor that selects between the clock input signal or an internal oscillator output signal.

18. The non-transitory computer readable medium of claim 10 , wherein removing the identified resets results in no signal being transmitted to a reset input of a component corresponding, to the identified resets.

19. A design tool, comprising:

a synthesis tool that synthesizes a design for a system and that inserts a system reset controller that includes a clock signal input, a reset signal input, a clock signal output, and a reset signal output, wherein the system reset controller is arranged to receive distributed clock and reset signal inputs and output modified clock and reset, signal outputs such that the reset controller resets the system using an asynchronous reset signal without requiring downstream asynchronous elements, removes identified resets that are time-delayed re-implementations of resets earlier in a data path, and increases a length of a system reset controller's reset sequence such that non-removed resets earlier in the data path have sufficient time to propagate forward to locations of the removed identified resets.

Assignments (2)
SECURITY INTEREST Recorded Sep 12, 2025
From: ALTERA CORPORATION
To: BARCLAYS BANK PLC, AS COLLATERAL AGENT
Reel/Frame 073431/0309 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 10, 2014
From: HOW, DANA
To: ALTERA CORPORATION
Reel/Frame 032646/0133 →