Patents by Inventor Erik P. Machnicki

Erik P. Machnicki 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).

  • Publication number: 20150323960
    Abstract: An apparatus for synchronizing a signal from a first clock domain into a second clock domain is disclosed. The apparatus may include circuitry, a synchronization circuit, and a clock gate circuit. The circuitry may de-assert a first enable signal dependent upon a first clock signal. The synchronization circuit may generate a second enable signal synchronized to a second clock signal and may de-assert the second enable signal in response to de-asserting the first enable signal. The clock gate circuit may generate a third clock signal dependent upon the second clock signal, and may disable the third clock signal responsive to de-asserting the second enable signal. The circuitry may further disable the second clock signal in response to determining a predetermined period of time has elapsed since de-asserting the first enable signal.
    Type: Application
    Filed: August 26, 2014
    Publication date: November 12, 2015
    Inventors: Erik P. Machnicki, Shane J. Keil
  • Publication number: 20150326216
    Abstract: A method and apparatus for thermal voltage margin recovery is disclosed. In one embodiment, an integrated circuit (IC) includes first and second temperature sensors at first and second locations of the IC, respectively. The IC further includes a power management circuit coupled to receive temperature readings from the first and second temperature sensors. Based on received temperature readings, the power management circuit may determine a voltage offset value. The power management circuit may then reduce the operating voltage of the IC by the voltage offset value.
    Type: Application
    Filed: May 12, 2014
    Publication date: November 12, 2015
    Applicant: Apple Inc.
    Inventor: Erik P. Machnicki
  • Patent number: 9182811
    Abstract: A method and apparatus for interfacing dynamic hardware power managed blocks and software power managed blocks is disclosed. In one embodiment, and integrated circuit (IC) may include a number of power manageable functional units. The functional units maybe power managed through hardware, software, or both. Each of the functional units may be coupled to at least one other functional unit through a direct communications link. A link state machine may monitor each of the communications links between functional units, and may broadcast indications of link availability to the functional units coupled to the link. Responsive to a software request to shut down a given link, or a hardware initiated shutdown of one of the functional units coupled to the link, the link state machine may broadcast and indication that the link is unavailable.
    Type: Grant
    Filed: December 19, 2012
    Date of Patent: November 10, 2015
    Assignee: Apple Inc.
    Inventors: Erik P Machnicki, Gurjeet S Saund, Munetoshi Fukami, Shane J Keil, Chaitanya Kosaraju, Erdem Guleyupoglu, Jason M Kassoff, Kevin C Wong
  • Patent number: 9152588
    Abstract: In an embodiment, a system includes at least one peripheral device, an interrupt controller, a memory controller, at least one CPU, and an interrupt message circuit coupled to the peripheral device. The interrupt message circuit may be coupled to receive the interrupt signal from the peripheral device, and may be configured to generate an interrupt message for transmission on a communication fabric. In some embodiments, there may be multiple peripherals which have independent paths through the fabric for memory operations to the memory controller. Each such peripheral may be coupled to an instance of the interrupt message circuit. In an embodiment, the interrupt is level sensitive. The interrupt message circuit may be configured to transmit interrupt set messages an interrupt clear messages to the interrupt controller, to indicate the levels.
    Type: Grant
    Filed: October 16, 2012
    Date of Patent: October 6, 2015
    Assignee: Apple Inc.
    Inventors: Manu Gulati, Erik P Machnicki, Deniz Balkan
  • Patent number: 9152210
    Abstract: Various method and apparatus embodiments for selecting tunable operating parameters in an integrated circuit (IC) are disclosed. In one embodiment, an IC includes a number of various functional blocks each having a local management circuit. The IC also includes a global management unit coupled to each of the functional blocks having a local management circuit. The management unit is configured to determine the operational state of the IC based on the respective operating states of each of the functional blocks. Responsive to determining the operational state of the IC, the management unit may provide indications of the same to the local management circuit of each of the functional blocks. The local management circuit for each of the functional blocks may select one or more tunable parameters based on the operational state determined by the management unit.
    Type: Grant
    Filed: February 15, 2013
    Date of Patent: October 6, 2015
    Assignee: Apple Inc.
    Inventors: Erik P Machnicki, Brian P Lilly, Gurjeet S Saund, Sukalpa Biswas
  • Patent number: 9081556
    Abstract: In an embodiment, an integrated circuit such may require that a full reset of the integrated circuit occur before the integrated circuit enters either a test mode or a functional mode. The integrated circuit may include a reset detector to detect that the reset has occurred, and the integrated circuit may not progress to the test mode or the functional mode unless the reset detector detects that the reset has occurred. Accordingly, if test mode is being entered, any user data that may have been stored in the integrated circuit during a preceding functional mode may have been cleared via the reset. Similarly, if normal mode is being entered, any test data that may have been stored in the integrated circuit in a preceding test mode may have been cleared via the reset.
    Type: Grant
    Filed: June 26, 2012
    Date of Patent: July 14, 2015
    Assignee: Apple Inc.
    Inventors: Timothy R. Paaske, Erik P. Machnicki
  • Patent number: 9043632
    Abstract: An SOC implements a security enclave processor (SEP). The SEP may include a processor and one or more security peripherals. The SEP may be isolated from the rest of the SOC (e.g. one or more central processing units (CPUs) in the SOC, or application processors (APs) in the SOC). Access to the SEP may be strictly controlled by hardware. For example, a mechanism in which the CPUs/APs can only access a mailbox location in the SEP is described. The CPU/AP may write a message to the mailbox, which the SEP may read and respond to. The SEP may include one or more of the following in some embodiments: secure key management using wrapping keys, SEP control of boot and/or power management, and separate trust zones in memory.
    Type: Grant
    Filed: September 25, 2012
    Date of Patent: May 26, 2015
    Assignee: Apple Inc.
    Inventors: Erik P. Machnicki, Manu Gulati, Josh P. de Cesare
  • Patent number: 9032104
    Abstract: A direct memory access (DMA) engine schedules data transfer requests of a data processing system according to both an assigned transfer priority and the deadline for completing a transfer.
    Type: Grant
    Filed: September 16, 2013
    Date of Patent: May 12, 2015
    Assignee: Cradle IP, LLC
    Inventors: Moshe B. Simon, Erik P. Machnicki, David A. Harrison
  • Patent number: 9024699
    Abstract: Various techniques for generating an output clock based on a reference clock. This disclosure relates to generating an output clock signal based on a reference clock signal. In one embodiment, a method includes generating, using information received from a control circuit, an output clock signal using both a first number of edges or an input clock signal and a second, different number of edges of the input clock signal. In this embodiment, the control circuit runs at a frequency that is less than a frequency of the input clock signal. The received information may indicate, for a pulse of the output clock signal, whether the pulse should be generated using the first number of edges or the second number of edges. In some cases, the second number of edges may be the first number of edges plus one. The first and second number of edges may be programmable quantities.
    Type: Grant
    Filed: January 21, 2013
    Date of Patent: May 5, 2015
    Assignee: Apple Inc.
    Inventors: Kleanthes G. Koniaris, Erik P. Machnicki, Shane J. Keil
  • Publication number: 20150113193
    Abstract: In one embodiment, an interrupt controller may implement an interrupt distribution scheme for distributing interrupts among multiple processors. The scheme may take into account various processor state in determining which processor should receive a given interrupt. For example, the processor state may include whether or not the processor is in a sleep state, whether or not interrupts are enabled, whether or not the processor has responded to previous interrupts, etc. The interrupt controller may implement timeout mechanisms to detect that an interrupt is being delayed (e.g. after being offered to a processor). The interrupt may be re-evaluated at the expiration of a timeout, and potentially offered to another processor. The interrupt controller may be configured to automatically, and atomically, mask an interrupt in response to delivering an interrupt vector for the interrupt to a responding processor.
    Type: Application
    Filed: January 6, 2015
    Publication date: April 23, 2015
    Inventors: Josh P. de Cesare, Ruchi Wadhawan, Erik P. Machnicki, Mark D. Hayter
  • Patent number: 9009377
    Abstract: In an embodiment, a system includes an interrupt controller, one or more CPUs coupled to the interrupt controller, a communication fabric, one or more peripheral devices configured to generate interrupts to be transmitted to the interrupt controller, and one or more interrupt message circuits coupled to the peripheral devices. The interrupt message circuits are configured to generate interrupt messages to convey the interrupts over the fabric to the interrupt controller. Some of the interrupts are level-sensitive interrupts, and the interrupt message circuits are configured to transmit level-sensitive interrupt messages to the interrupt controller. At least one of the interrupts is edge-triggered. The system is configured to convert the edge-triggered interrupt to a level-sensitive interrupt so that interrupts may be handled in the same fashion.
    Type: Grant
    Filed: November 1, 2012
    Date of Patent: April 14, 2015
    Assignee: Apple Inc.
    Inventors: Erik P Machnicki, Deniz Balkan, Manu Gulati
  • Patent number: 8963587
    Abstract: Embodiments of an apparatus are disclosed that may allow for changing the frequency of a clock coupled to a functional block within an integrated circuit. The apparatus may include a plurality of clock dividers and a multiplex circuit. Each of the plurality of clock dividers may divide the frequency of a base clock signal be a respective one of a plurality of divisors. The multiplex circuit may be configured to receive a plurality of selection signals, select an output from one of the plurality of clock dividers dependent upon the received selection signals, and coupled the selected output of the plurality of clock dividers to the functional block.
    Type: Grant
    Filed: May 14, 2013
    Date of Patent: February 24, 2015
    Assignee: Apple Inc.
    Inventors: Erik P. Machnicki, Raman S. Thiara, Shane J. Keil, Timothy J. Millet
  • Patent number: 8959270
    Abstract: In one embodiment, an interrupt controller may implement an interrupt distribution scheme for distributing interrupts among multiple processors. The scheme may take into account various processor state in determining which processor should receive a given interrupt. For example, the processor state may include whether or not the processor is in a sleep state, whether or not interrupts are enabled, whether or not the processor has responded to previous interrupts, etc. The interrupt controller may implement timeout mechanisms to detect that an interrupt is being delayed (e.g. after being offered to a processor). The interrupt may be re-evaluated at the expiration of a timeout, and potentially offered to another processor. The interrupt controller may be configured to automatically, and atomically, mask an interrupt in response to delivering an interrupt vector for the interrupt to a responding processor.
    Type: Grant
    Filed: December 7, 2010
    Date of Patent: February 17, 2015
    Assignee: Apple Inc.
    Inventors: Josh P. de Cesare, Ruchi Wadhawan, Erik P. Machnicki, Mark D. Hayter
  • Publication number: 20140340130
    Abstract: Embodiments of an apparatus are disclosed that may allow for changing the frequency of a clock coupled to a functional block within an integrated circuit. The apparatus may include a plurality of clock dividers and a multiplex circuit. Each of the plurality of clock dividers may divide the frequency of a base clock signal be a respective one of a plurality of divisors. The multiplex circuit may be configured to receive a plurality of selection signals, select an output from one of the plurality of clock dividers dependent upon the received selection signals, and coupled the selected output of the plurality of clock dividers to the functional block.
    Type: Application
    Filed: May 14, 2013
    Publication date: November 20, 2014
    Applicant: Apple Inc.
    Inventors: Erik P. Machnicki, Raman S. Thiara, Shane J. Keil, Timothy J. Millet
  • Patent number: 8867533
    Abstract: Systems and methods for arbitrating among traffic from a coherence point to a switch fabric. A multi-level arbiter is used to avoid starvation while providing fairness and high bandwidth on the connection path between the coherence point and the switch fabric. A first level of arbitration selects packets with enough available credits for forwarding from the switch fabric on a downstream channel. The second level of arbitration arbitrates among short packets at a first arbiter and arbitrates among long packets at a second arbiter. The selected short packet and the selected long packet are forwarded to a third level of arbitration. The third level of arbitration alternates between long and short packets and forwards the selected packet to the switch fabric.
    Type: Grant
    Filed: January 8, 2013
    Date of Patent: October 21, 2014
    Assignee: Apple Inc.
    Inventor: Erik P. Machnicki
  • Publication number: 20140310469
    Abstract: An apparatus for processing coherency transactions in a computing system is disclosed. The apparatus may include a request queue circuit, a duplicate tag circuit, and a memory interface unit. The request queue circuit may be configured to generate a speculative read request dependent upon a received read transaction. The duplicate tag circuit may be configured to store copies of tag from one or more cache memories, and to generate a kill message in response to a determination that data requested in the received read transaction is stored in a cache memory. The memory interface unit may be configured to store the generated speculative read request dependent upon a stall condition. The stored speculative read request may be sent to a memory controller dependent upon the stall condition. The memory interface unit may be further configured to delete the speculative read request in response to the kill message.
    Type: Application
    Filed: April 11, 2013
    Publication date: October 16, 2014
    Applicant: Apple Inc.
    Inventors: Erik P. Machnicki, Harshavardhan Kaushikkar, Shinye Shiu
  • Publication number: 20140237276
    Abstract: Various method and apparatus embodiments for selecting tunable operating parameters in an integrated circuit (IC) are disclosed. In one embodiment, an IC includes a number of various functional blocks each having a local management circuit. The IC also includes a global management unit coupled to each of the functional blocks having a local management circuit. The management unit is configured to determine the operational state of the IC based on the respective operating states of each of the functional blocks. Responsive to determining the operational state of the IC, the management unit may provide indications of the same to the local management circuit of each of the functional blocks. The local management circuit for each of the functional blocks may select one or more tunable parameters based on the operational state determined by the management unit.
    Type: Application
    Filed: February 15, 2013
    Publication date: August 21, 2014
    Applicant: APPLE INC.
    Inventors: Erik P. Machnicki, Brian P. Lilly, Gurjeet S. Saund, Sukalpa Biswas
  • Patent number: 8806245
    Abstract: An apparatus and method for changing the extra margin adjustment (EMA) for a memory is disclosed. A control unit may access a table responsive to an indication of a change of operating point. The table includes a number of different delay times, each of which corresponds to a particular operating point. The control unit may select the delay time that corresponds to the new operating point to which the memory operation is being changed. The control unit may further convey an indication of the selected delay time to the memory, thereby causing the memory to operate according thereto.
    Type: Grant
    Filed: November 4, 2010
    Date of Patent: August 12, 2014
    Assignee: Apple Inc.
    Inventors: Erik P. Machnicki, Michael Frank
  • Patent number: 8806232
    Abstract: In an embodiment, a control circuit is configured to transmit operations to a circuit block that is being powered up after being powered down, to reinitialize the circuit block for operation. The operations may be stored in a memory (e.g. a set of registers) to which the control circuit is coupled. In an embodiment, the control circuit may also be configured to transmit other operations from the memory to the circuit block prior to the circuit block being powered down. Accordingly, the circuit block may be powered up or powered down even during times that the processors in the system are powered down (and thus software is not executable at the time), without waking the processors for the power up/power down event. In an embodiment, the circuit block may be a cache coupled to the one or more processors.
    Type: Grant
    Filed: September 30, 2010
    Date of Patent: August 12, 2014
    Assignee: Apple Inc.
    Inventors: Timothy J. Millet, Erik P. Machnicki, Deniz Balkan, Vijay Gupta
  • Patent number: 8799715
    Abstract: In one embodiment, an SOC includes multiple components including a CPU complex and one or more non-CPU components such as peripheral interface controllers, memory controllers, media components, etc. The SOC also includes an SOC debug control unit, which is coupled to receive detected debug events from the components. Each component may include a local debug control unit that is configured to monitor for various debug events within that component. The debug events may be specific to the component. The local debug control units may transmit detected events to the SOC debug control unit. The SOC debug control unit may detect one or more events from one or more components, and may halt the components of the SOC responsive to detecting the selected events.
    Type: Grant
    Filed: June 26, 2012
    Date of Patent: August 5, 2014
    Assignee: Apple Inc.
    Inventors: Manu Gulati, James D. Ramsay, Erik P. Machnicki, Jianlin Yu