-
公开(公告)号:US10191852B2
公开(公告)日:2019-01-29
申请号:US15273432
申请日:2016-09-22
Applicant: Apple Inc.
Inventor: Vladislav Petkov , Haining Zhang , Karan Sanghi , Saurabh Garg
Abstract: Methods and apparatus for locking at least a portion of a shared memory resource. In one embodiment, an electronic device configured to lock at least a portion of a shared memory is disclosed. The electronic device includes a host processor, at least one peripheral processor and a physical bus interface configured to couple the host processor to the peripheral processor. The electronic device further includes a software framework that is configured to: attempt to lock a portion of the shared memory; verify that the peripheral processor has not locked the shared memory; when the portion of the shared memory is successfully locked via the verification that the peripheral processor has not locked the portion of the shared memory, execute a critical section of the shared memory; and otherwise attempt to lock the at least the portion of the shared memory at a later time.
-
公开(公告)号:US20170249163A1
公开(公告)日:2017-08-31
申请号:US15273398
申请日:2016-09-22
Applicant: Apple Inc.
Inventor: Vladislav Petkov , Haining Zhang , Karan Sanghi , Saurabh Garg
Abstract: Methods and apparatus for enabling a peripheral processor to retrieve and load firmware for execution within the constraints of its memory. The peripheral processor is allocated a portion of the host processor's memory, to function as a logical secondary and tertiary memory for memory cache operation. The described embodiments enable the peripheral processor to support much larger and more complex firmware. Additionally, a multi-facetted locking mechanism is described which enables the peripheral processor and the host processor to access the secondary memory, while minimally impacting the other processor.
-
公开(公告)号:US20170249098A1
公开(公告)日:2017-08-31
申请号:US15273432
申请日:2016-09-22
Applicant: Apple Inc.
Inventor: Vladislav Petkov , Haining Zhang , Karan Sanghi , Saurabh Garg
IPC: G06F3/06 , G06F12/1009
CPC classification number: G06F12/1009 , G06F1/24 , G06F3/0626 , G06F3/0637 , G06F3/0665 , G06F3/0683 , G06F8/63 , G06F12/1441 , G06F13/4282 , G06F2212/1008 , G06F2212/1052 , G06F2212/1056 , G06F2212/621 , G06F2213/0026
Abstract: Methods and apparatus for locking at least a portion of a shared memory resource. In one embodiment, an electronic device configured to lock at least a portion of a shared memory is disclosed. The electronic device includes a host processor, at least one peripheral processor and a physical bus interface configured to couple the host processor to the peripheral processor. The electronic device further includes a software framework that is configured to: attempt to lock a portion of the shared memory; verify that the peripheral processor has not locked the shared memory; when the portion of the shared memory is successfully locked via the verification that the peripheral processor has not locked the portion of the shared memory, execute a critical section of the shared memory; and otherwise attempt to lock the at least the portion of the shared memory at a later time.
-
公开(公告)号:US10853272B2
公开(公告)日:2020-12-01
申请号:US16259543
申请日:2019-01-28
Applicant: Apple Inc.
Inventor: Saurabh Garg , Karan Sanghi , Vladislav Petkov , Haining Zhang
IPC: G06F12/14 , G06F12/1081
Abstract: Methods and apparatus for registering and handling access violations of host memory. In one embodiment, a peripheral processor receives one or more window registers defining an extent of address space accessible from a host processor; responsive to an attempt to access an extent of address space outside of the extent of accessible address space, generates an error message; stores the error message within a violation register; and resumes operation of the peripheral processor upon clearance of the stored error message.
-
25.
公开(公告)号:US10775871B2
公开(公告)日:2020-09-15
申请号:US15647063
申请日:2017-07-11
Applicant: Apple Inc.
Inventor: Saurabh Garg , Karan Sanghi , Vladislav Petkov , Richard Solotke
IPC: G06F1/3287 , G06F9/4401
Abstract: Methods and apparatus for isolation of sub-system resources (such as clocks, power, and reset) within independent domains. In one embodiment, each sub-system of a system has one or more dedicated power and clock domains that operate independent of other sub-system operation. For example, in an exemplary mobile device with cellular, WLAN and PAN connectivity, each such sub-system is connected to a common memory mapped bus function, yet can operate independently. The disclosed architecture advantageously both satisfies the power consumption limitations of mobile devices, and concurrently provides the benefits of memory mapped connectivity for high bandwidth applications on such mobile devices.
-
公开(公告)号:US10591976B2
公开(公告)日:2020-03-17
申请号:US15647103
申请日:2017-07-11
Applicant: Apple Inc.
Inventor: Saurabh Garg , Karan Sanghi , Vladislav Petkov , Richard Solotke
IPC: G06F1/26 , G06F1/32 , G06F1/3234 , G06F1/3287 , G06F9/30 , G06F9/4401 , G06F13/42
Abstract: Methods and apparatus for isolation of sub-system resources (such as clocks, power, and reset) within independent domains. In one embodiment, each sub-system of a system has one or more dedicated power and clock domains that operate independent of other sub-system operation. For example, in an exemplary mobile device with cellular, WLAN and PAN connectivity, each such sub-system is connected to a common memory mapped bus function, yet can operate independently. The disclosed architecture advantageously both satisfies the power consumption limitations of mobile devices, and concurrently provides the benefits of memory mapped connectivity for high bandwidth applications on such mobile devices.
-
公开(公告)号:US20190377703A1
公开(公告)日:2019-12-12
申请号:US16450767
申请日:2019-06-24
Applicant: Apple Inc.
Inventor: Vladislav Petkov , Saurabh Garg , Karan Sanghi , Haining Zhang
Abstract: Methods and apparatus for data transmissions over an inter-processor communication (IPC) link between two (or more) independently operable processors. In one embodiment, the IPC link is configured to enable an independently operable processor to transact data to another independently operable processor, while obviating transactions (such as via direct memory access) by encapsulating a payload within a data structure. For example, a host processor may insert the payload into a transfer descriptor (TD), and transmit the TD to a peripheral processor. The host processor may also include a head index and/or a tail index within a doorbell message sent to the peripheral processor, obviating another access of memory. The peripheral processor may perform similar types of transactions via a completion descriptor (CD) sent to the host processor. In some variants, the peripheral may be a Bluetooth-enabled device optimized for low-latency, low-power, and/or low-throughput transactions.
-
公开(公告)号:US10042794B2
公开(公告)日:2018-08-07
申请号:US15011291
申请日:2016-01-29
Applicant: APPLE INC.
Inventor: Karan Sanghi , Vladislav Petkov , Radha Kumar Pulyala , Saurabh Garg , Haining Zhang
Abstract: Methods and apparatus for a synchronized multi-directional transfer on an inter-processor communication (IPC) link. In one embodiment, the synchronized multi-directional transfer utilizes one or more buffers which are configured to accumulate data during a first state. The one or more buffers are further configured to transfer the accumulated data during a second state. Data is accumulated during a low power state where one or more processors are inactive, and the data transfer occurs during an operational state where the processors are active. Additionally, in some variants, the data transfer may be performed for currently available transfer resources, and halted until additional transfer resources are made available. In still other variants, one or more of the independently operable processors may execute traffic monitoring processes so as to optimize data throughput of the IPC link.
-
公开(公告)号:US20180129270A1
公开(公告)日:2018-05-10
申请号:US15647103
申请日:2017-07-11
Applicant: Apple Inc.
Inventor: Saurabh Garg , Karan Sanghi , Vladislav Petkov , Richard Solotke
CPC classification number: G06F1/325 , G06F1/24 , G06F1/3203 , G06F1/3253 , G06F1/3287 , G06F9/3004 , G06F9/4411 , G06F9/4418 , G06F13/404 , G06F13/4221 , G06F13/4273 , G06F13/4278 , Y02D10/14 , Y02D10/151 , Y02D10/44
Abstract: Methods and apparatus for isolation of sub-system resources (such as clocks, power, and reset) within independent domains. In one embodiment, each sub-system of a system has one or more dedicated power and clock domains that operate independent of other sub-system operation. For example, in an exemplary mobile device with cellular, WLAN and PAN connectivity, each such sub-system is connected to a common memory mapped bus function, yet can operate independently. The disclosed architecture advantageously both satisfies the power consumption limitations of mobile devices, and concurrently provides the benefits of memory mapped connectivity for high bandwidth applications on such mobile devices.
-
30.
公开(公告)号:US09842036B2
公开(公告)日:2017-12-12
申请号:US14870923
申请日:2015-09-30
Applicant: Apple Inc.
Inventor: Karan Sanghi , Saurabh Garg , Vladislav Petkov , Haining Zhang
CPC classification number: G06F11/2028 , G06F13/4022 , G06F13/4221 , G06F2201/805
Abstract: Methods and apparatus for controlled recovery of error information between two (or more) independently operable processors. The present disclosure provides solutions that preserve error information in the event of a fatal error, coordinate reset conditions between independently operable processors, and implement consistent frameworks for error information recovery across a range of potential fatal errors. In one exemplary embodiment, an applications processor (AP) and baseband processor (BB) implement an abort handler and power down handler sequence which enables error recovery over a wide range of crash scenarios. In one variant, assertion of signals between the AP and the BB enables the AP to reset the BB only after error recovery procedures have successfully completed.
-
-
-
-
-
-
-
-
-