Direct memory access system and method using the same
First Claim
1. A direct memory access (DMA) system for directly accessing a memory and coupled to an interface for transmitting packets between a host terminal and a client terminal, wherein the host terminal comprises the memory storing a TX packet and a corresponding TX descriptor including a TX information, the DMA system comprising:
- a DMA transmitter for transmitting the TX information and the TX packet to the interface according to the TX descriptor, and appending the TX information to the head of the TX Packet based on the TX descriptor, wherein the TX information is predetermined to be used for the host terminal communicating with the client terminal by the interface, and the TX information does not contain data which the DMA transmitter having to use;
a DMA receiver for receiving an RX packet and an RX information from the interface according to a RX descriptor, wherein the RX information is predetermined to be used for the client terminal communicating with the host terminal by the interface, and the RX information does not contain data which the DMA receiver having to use;
wherein the TX descriptor comprises at least one pointer, at least one length of the TX packet, and the TX information;
wherein the RX descriptor comprises at least one pointer, at least one length of RX packet, and the RX information; and
wherein the DMA transmitter selectively appends a TX message between the TX packet and the TX information, and the DMA receiver selectively appends an RX message between the RX packet and the RX information, wherein the TX message and the RX message are predetermined to be used for communication between the host terminal and the client terminal.
1 Assignment
0 Petitions
Accused Products
Abstract
The invention discloses a DMA system capable of being adapted to various interfaces. The DMA system includes the following advantages: 1) the software porting effort can be reduced when different interfaces are integrated into a SoC; 2) a flexible DMA that could provide protocol transparency and could be ported into different interfaces easily; 3) a scalable DMA that can support unlimited TX/RX scattering/gathering data segments; 4) a reusable DMA that provides user defined TX information (or RX information) and TX message (or RX message) field; and 5) a high performance DMA that support unaligned segment data pointers and unlimited scattering/gathering data segments, so as to reduce extra memory copies by CPU.
-
Citations
16 Claims
-
1. A direct memory access (DMA) system for directly accessing a memory and coupled to an interface for transmitting packets between a host terminal and a client terminal, wherein the host terminal comprises the memory storing a TX packet and a corresponding TX descriptor including a TX information, the DMA system comprising:
- a DMA transmitter for transmitting the TX information and the TX packet to the interface according to the TX descriptor, and appending the TX information to the head of the TX Packet based on the TX descriptor, wherein the TX information is predetermined to be used for the host terminal communicating with the client terminal by the interface, and the TX information does not contain data which the DMA transmitter having to use;
a DMA receiver for receiving an RX packet and an RX information from the interface according to a RX descriptor, wherein the RX information is predetermined to be used for the client terminal communicating with the host terminal by the interface, and the RX information does not contain data which the DMA receiver having to use;
wherein the TX descriptor comprises at least one pointer, at least one length of the TX packet, and the TX information;
wherein the RX descriptor comprises at least one pointer, at least one length of RX packet, and the RX information; and
wherein the DMA transmitter selectively appends a TX message between the TX packet and the TX information, and the DMA receiver selectively appends an RX message between the RX packet and the RX information, wherein the TX message and the RX message are predetermined to be used for communication between the host terminal and the client terminal. - View Dependent Claims (2, 3, 4, 5, 11, 12, 13)
- a DMA transmitter for transmitting the TX information and the TX packet to the interface according to the TX descriptor, and appending the TX information to the head of the TX Packet based on the TX descriptor, wherein the TX information is predetermined to be used for the host terminal communicating with the client terminal by the interface, and the TX information does not contain data which the DMA transmitter having to use;
-
6. A method for transmitting/receiving a packet in a direct memory access (DMA) system, the DMA system being used for directly accessing a memory and coupled to an interface for transmitting packets between a host terminal and a client terminal, wherein the host terminal comprises the memory storing a TX packet and a corresponding TX descriptor including a TX information, the method comprising the steps of:
- transmitting the TX packet and the TX information to the interface according to a TX descriptor, and appending the TX information to the head of the TX Packet based on the TX descriptor, wherein the TX information is predetermined to be used for the host terminal communicating with the client terminal by the interface, and the TX information does not contain data which the DMA transmitter having to use;
receiving an RX packet and an RX information from the interface according to an RX descriptor, wherein the RX information is predetermined to be used for the client terminal communicating with the host terminal by the interface, and the RX information does not contain data which the DMA receiver having to use;
selectively appends a TX message between the TX packet and the TX information; and
selectively appends an RX message between the RX packet and the RX information;
wherein the TX message and the RX message are predetermined to be used for communication between the host terminal and the client terminal; and
wherein the TX descriptor comprises at least one pointer, at least one length of the TX packet, and the TX information;
wherein the RX descriptor comprises at least one pointer, at least one length of the RX packet, and the RX information. - View Dependent Claims (7, 8, 9, 10, 14, 15, 16)
- transmitting the TX packet and the TX information to the interface according to a TX descriptor, and appending the TX information to the head of the TX Packet based on the TX descriptor, wherein the TX information is predetermined to be used for the host terminal communicating with the client terminal by the interface, and the TX information does not contain data which the DMA transmitter having to use;
Specification