IP Library Granted Patent US 10,515,036
Granted Patent B2
US 10,515,036 · App. 16/169,480 · Granted Dec 24, 2019

Bit manipulation capable direct memory access

Inventors: Yong Yuenyongsgool (Gilbert, AZ); Stephen Bowling (Chandler, AZ); Cobus van Eeden (Chandler, AZ); Igor Wojewoda (Tempe, AZ); Naveen Raj (Chandler, AZ)
Assignee: MICROCHIP TECHNOLOGY INCORPORATED
G06F13/28G06F9/30134G06F13/1673G06F13/4018G06F2213/2806
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 10,515,036
App. No.
16/169,480
Granted
Dec 24, 2019
Kind
B2
Abstract

A memory management circuit includes a direct memory access (DMA) channel. The DMA channel includes logic configured to receive a buffer of data to be written using DMA. The DMA channel further includes logic to perform bit manipulation in real-time during a DMA write cycle of the first buffer of data.

Claims (79)

1. A memory management circuit, comprising:

a first direct memory access (DMA) channel, the DMA channel including:

logic configured to receive a first buffer of data to be written using DMA; and

a first circuit including logic configured to perform bit manipulation in real-time during a DMA write cycle of the first buffer of data; and

a second DMA channel, the second DMA channel including:

logic configured to receive a second buffer of data to be written using DMA; and

a second circuit including logic configured to perform bit manipulation in real-time during a DMA write cycle of the second buffer of data;

wherein:

the first buffer of data includes a bit indicating that a first in first out (FIFO) shift register is full;

the first circuit is configured to reset the bit indicating that the FIFO shift register is full during a rewrite of a byte including the bit while masking other bits of the byte;

the first DMA channel further includes logic to send a trigger to the second DMA channel;

the second DMA channel is further configured to load contents of the FIFO shift register into the second buffer upon reception of the trigger; and

the second circuit includes logic to write the second buffer to a destination during another DMA write cycle.

2. The memory management circuit of claim 1 , further comprising logic in the first circuit configured to perform bit manipulation with a set function.

3. The memory management circuit of claim 1 , further comprising logic in the first circuit configured to perform bit manipulation with a clear function.

4. The memory management circuit of claim 1 , further comprising logic in the first circuit configured to perform bit manipulation with an invert function.

5. The memory management circuit of claim 1 , further comprising logic in the first circuit configured to perform bit manipulation with a set function prioritized above a clear function.

6. The memory management circuit of claim 1 , further comprising logic in the first circuit configured to perform bit manipulation with a set function prioritized above an invert function.

7. The memory management circuit of claim 1 , further comprising logic in the first circuit configured to perform bit manipulation with a clear function prioritized above an invert function.

8. A memory management circuit, comprising:

a first direct memory access (DMA) channel, the DMA channel including:

logic configured to receive a first buffer of data to be written using DMA; and

a first circuit including logic configured to perform bit manipulation in real-time during a DMA write cycle of the first buffer of data; and

a second DMA channel, the second DMA channel including:

logic configured to receive a second buffer of data to be written using DMA; and

a second circuit including logic configured to perform bit manipulation in real-time during a DMA write cycle of the second buffer of data;

wherein:

the first buffer of data includes mask information for the second circuit;

the first circuit is configured to issue a trigger to the second DMA channel upon loading data into the first buffer; and

upon reception of the trigger, the second circuit is configured to apply bit manipulation using the mask information from the first buffer of data to the second buffer during a DMA write of the second buffer.

9. The memory management circuit of claim 8 , wherein the second circuit is configured to write the second buffer to a source of the second buffer using the bit manipulation using the mask information.

10. A method, comprising:

receiving a first buffer of data in a first direct memory access (DMA) channel to be written using DMA;

in the first DMA channel, performing bit manipulation in real-time during a DMA write cycle of the first buffer of data, wherein the first buffer of data includes a bit indicating that a first in first out (FIFO) shift register is full;

receiving a second buffer of data in a second DMA channel to be written using DMA;

in the second DMA channel, performing bit manipulation in real-time during a DMA write cycle of the second buffer of data;

in the first DMA channel, resetting the bit indicating that the FIFO shift register is full during a rewrite of a byte including the bit while masking other bits of the byte;

sending a trigger to the second DMA channel from the first DMA channel;

in the second DMA channel, loading contents of the FIFO shift register into the second buffer upon reception of the trigger; and

in the second DMA channel, writing the second buffer to a destination during another DMA write cycle.

11. The method of claim 10 , further comprising performing the bit manipulation in the first DMA channel with a set function.

12. The method of claim 10 , further comprising performing the bit manipulation in the first DMA channel with a clear function.

13. The method of claim 10 , further comprising performing the bit manipulation in the first DMA channel with an invert function.

14. The method of claim 10 , further comprising performing the bit manipulation in the first DMA channel a set function prioritized above a clear function.

15. The method of claim 10 , further comprising performing the bit manipulation in the first DMA channel with a set function prioritized above an invert function.

16. The method of claim 10 , further comprising performing the bit manipulation in the first DMA channel with a clear function prioritized above an invert function.

17. A method, comprising:

receiving a first buffer of data in a first direct memory access (DMA) channel to be written using DMA;

in the first DMA channel, performing bit manipulation in real-time during a DMA write cycle of the first buffer of data;

receiving a second buffer of data to be written using DMA in a second DMA channel:

performing bit manipulation in real-time during a DMA write cycle of the second buffer of data in the second DMA channel, wherein the first buffer of data includes mask information for the second circuit; and

issuing a trigger from the first DMA channel to the second DMA channel upon loading data into the first buffer; and

upon reception of the trigger, in the second DMA channel, applying bit manipulation using the mask information from the first buffer of data to the second buffer during a DMA write of the second buffer.

18. A microcontroller, comprising:

a processor;

a first direct memory access (DMA) channel, including:

logic configured to receive a first buffer of data to be written using DMA;

a first circuit including logic configured to perform bit manipulation in real-time during a DMA write cycle of the first buffer of data; and

a second DMA channel, including:

logic configured to receive a second buffer of data to be written using DMA; and

a second circuit including logic configured to perform bit manipulation in real-time during a DMA write cycle of the second buffer of data;

wherein:

the first buffer of data includes a bit indicating that a first in first out (FIFO) shift register is full;

the first circuit is configured to reset the bit indicating that the FIFO shift register is full during a rewrite of a byte including the bit while masking other bits of the byte;

the first DMA channel further includes logic to send a trigger to the second DMA channel;

the second DMA channel is further configured to load contents of the FIFO shift register into the second buffer upon reception of the trigger; and

the second circuit includes logic to write the second buffer to a destination during another DMA write cycle.

19. A microcontroller, comprising:

a processor;

a first direct memory access (DMA) channel, the DMA channel including:

logic configured to receive a first buffer of data to be written using DMA; and

a first circuit including logic configured to perform bit manipulation in real-time during a DMA write cycle of the first buffer of data; and

a second DMA channel, the second DMA channel including:

logic configured to receive a second buffer of data to be written using DMA; and

a second circuit including logic configured to perform bit manipulation in real-time during a DMA write cycle of the second buffer of data;

wherein:

the first buffer of data includes mask information for the second circuit;

the first circuit is configured to issue a trigger to the second DMA channel upon loading data into the first buffer; and

upon reception of the trigger, the second circuit is configured to apply bit manipulation using the mask information from the first buffer of data to the second buffer during a DMA write of the second buffer.

Assignments (13)
RELEASE OF SECURITY INTEREST Recorded Mar 14, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 060894/0437 →
RELEASE OF SECURITY INTEREST Recorded Mar 11, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059363/0001 →
RELEASE OF SECURITY INTEREST Recorded Mar 10, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059863/0400 →
RELEASE OF SECURITY INTEREST Recorded Mar 9, 2022
From: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059358/0335 →
RELEASE OF SECURITY INTEREST Recorded Feb 28, 2022
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 059263/0001 →
GRANT OF SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 19, 2021
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 058214/0625 →
SECURITY INTEREST Recorded Jun 4, 2021
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 057935/0474 →
SECURITY INTEREST Recorded Dec 24, 2020
From: MICROCHIP TECHNOLOGY INCORPORATED; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 055671/0612 →
SECURITY INTEREST Recorded Jun 5, 2020
From: MICROCHIP TECHNOLOGY INC.; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 052856/0909 →
SECURITY INTEREST Recorded Jun 5, 2020
From: MICROCHIP TECHNOLOGY INC.; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION
Reel/Frame 053468/0705 →
RELEASE OF SECURITY INTEREST Recorded May 30, 2020
From: JPMORGAN CHASE BANK, N.A, AS ADMINISTRATIVE AGENT
To: MICROCHIP TECHNOLOGY INC.; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
Reel/Frame 053466/0011 →
SECURITY INTEREST Recorded Apr 24, 2020
From: MICROCHIP TECHNOLOGY INC.; SILICON STORAGE TECHNOLOGY, INC.; ATMEL CORPORATION; MICROSEMI CORPORATION; MICROSEMI STORAGE SOLUTIONS, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 053311/0305 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2018
From: YUENYONGSGOOL, YONG; BOWLING, STEPHEN; VAN EEDEN, COBUS; WOJEWODA, IGOR; RAJ, NAVEEN
To: MICROCHIP TECHNOLOGY INCORPORATED
Reel/Frame 047534/0756 →