doc: ASMI -> LASMI

This commit is contained in:
Sebastien Bourdeauducq 2013-07-22 18:28:57 +02:00
parent 794c4e6041
commit cf22aae06f
4 changed files with 12 additions and 14 deletions

View File

@ -39,13 +39,13 @@ To interface with the CPU, the frame initiator uses Migen to provide a CSR bank
Pixel fetcher
=============
The pixel fetcher is made up of the address generator, the ASMI reader and the unpacker.
The pixel fetcher is made up of the address generator, the LASMI reader and the unpacker.
The address generator is a simple counter that takes one token containing the pair ``(base, length)`` and generates ``length`` tokens containing ``base``, ..., ``base+length-1``. It is implemented using a Migen library component (see :ref:`intsequence`).
Those addresses are fed into the ASMI reader (see :ref:`busactors`) that fetches the corresponding locations from the system memory. The ASMI reader design supports an arbitrary number of outstanding requests (which is equal to the number of slots in its ASMI port), which enables it to sustain a high throughput in spite of memory latency. The ASMI reader also contains a reorder buffer and generates memory word tokens in the order of the supplied address tokens, even if the memory system completes the transactions in a different order (see see :ref:`asmi` for information about reordering). These features make it possible to utilize the available memory bandwidth to the full extent, and reduce the need for on-chip buffering.
Those addresses are fed into the LASMI reader (see :ref:`busactors`) that fetches the corresponding locations from the system memory. The LASMI reader design supports several outstanding requests, which enables it to sustain a high throughput in spite of memory latency. This feature makes it possible to utilize the available memory bandwidth to the full extent, and reduces the need for on-chip buffering.
ASMI memory words are wide and contain several pixels. The unpacking actor (see :ref:`structuring`) takes a token containing a memory word and "chops" it into multiple tokens containing one pixel each.
LASMI memory words are wide and contain several pixels. The unpacking actor (see :ref:`structuring`) takes a token containing a memory word and "chops" it into multiple tokens containing one pixel each.
Video timing generator
======================

View File

@ -208,19 +208,17 @@ The ``migen.actorlib.dma_wishbone.Writer`` takes a token containing a 30-bit Wis
Only Wishbone classic cycles are supported. The throughput is limited by the Wishbone stall cycles only.
ASMI reader
LASMI reader
------------
The ``migen.actorlib.dma_lasmi.Reader`` requires a LASMI master port at instantiation time. This port defines the address and data widths of the actor and how many outstanding transactions are supported.
Input tokens contain the raw LASMI address, and output tokens are wide LASMI data words.
LASMI writer
-----------
The ``migen.actorlib.dma_asmi.Reader`` requires a ASMI port at instantiation time. This port defines the address and data widths of the actor and how many outstanding transactions are supported.
Input tokens contain the raw ASMI address, and output tokens are wide ASMI data words.
If more than one slot are assigned to the port, the reader actor implements a reorder buffer (so that the order of the output tokens matches that of the input tokens even if the memory system completes transactions out-of-order) and is capable of supporting as many outstanding transactions as there are slots.
ASMI writer
-----------
TODO
Similarly, Migen provides a LASMI writer actor that accepts tokens containing an address and write data (in the same format as a LASMI word).
Miscellaneous actors
====================

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 90 KiB

After

Width:  |  Height:  |  Size: 84 KiB