Implementing a Low-Cost PCI Bridge and Memory Controller
8Application Note (AP-416)
3.0 Performance versus Simplicity
The basic 82559ER embedded design includes address translation blocks, buffer FIFOs, Direct
Memory Access (DMA), and arbitration logic. There are a couple of factors to consider, such as
memory requirements and system complexity (based on the devices sharing the PCI bus with the
82559ER) with regards to system performance. Figure 1 shows a generalized embedded design
using the 82559ER.
One reasonable solution may include a controller that is comparable in cost to PCI devices
supported.
Recent PC chip sets do not include a cached memory bridge/controller. However, most low-cost
designs do not require cached memory unless several PCI masters access memory and high
performance is needed.
When multiple PCI bus masters exist on the bus, master latency timers are used to guarantee
fairness. The 82559ER device has a latenc y timer. In a system where the bridge/memory controller
and the 82559ER are the only PCI masters, the v ast majority of the data flo w will be initiated by the
82559ER device and it may not be necessary to implement a master latency timer in the bridge. If it
is needed, a leftover timer may be available in another part of the system.
One way to reduce cost and complexity in a bridge/memory controller is to avoid implementing
parity generation and checking on the PCI bus. W ithout parity, the system does not comply with the
PCI specification, b ut compliance may not be required in a “controlled” design. Reporting of parity
errors on the Parity Error (PERR#) and System (SERR#) signals can be disabled in the 82559ER.
However, if data parity is missing, the Ethernet controller constantly reports a data parity error in
its PCI Configuration Status Register. The 82559ER does not terminate any b us cycles due to parity
errors and software can ignore the detected parity error bit.
Other design recommendations for implementing a low-cost bridge/memory controller include:
•Use the 3 KByte transmit and receive FIFOs in the 82559ER instead of the buffers in the
bridge/memory con troller.
•Keep the DRAM bus width to 32 bits.
•Minimize the number of DMA channels.
Figure 1. Generali zed Embedded Design with an 82559ER
Embedded
Microprocessor
DRAM
82559ER
Fast Ethernet
Controller
Bridge/ Memory
Controller
System Specific
Blocks
System Specific
Blocks
Microprocessor
Local Bus
PCI
Local Bus