Vous êtes sur la page 1sur 4

v4.

PCI Arbiter Core


Fe a t ur es In the most common application, customers use an
• Support for up to Five PCI Bus Masters embedded processor as the master with highest priority and
a pure-rotation arbitration scheme among other PCI bus
• Support for Two Arbitration Schemes masters. The networking and telecom markets are the
– Pure Rotation targets for this macro.
– Fair Rotation
I m p l em e n t at i on
• Support for Bus Parking
At any given time, more than one PCI bus initiator (Master)
• Hidden Bus Arbitration device may request use of the PCI bus by asserting its
• Interface with 33 MHz and 66 MHz PCI Systems specific request signal (REQn). The Arbiter determines
• Implementation in Actel’s SX, SX-A, ProASIC and which PCI bus initiator controls the PCI bus by asserting
ProASICPLUS Families that device’s specific grant signal (GNTn). Figure 1 shows
the PCI Arbiter Core interface signals and Figure 2
• Synthesizable VHDL Source Code
illustrates the relationship of the PCI bus initiator devices
• Device Utilization with the Arbiter.
– SX/SX-A 100-150 Modules
– ProASIC/ProASICPLUS 124-135 Tiles
PCI_CLK
G en er al D e sc r i p t i on RSTn
The Arbiter core is used to efficiently manage access to a FRAMEn GNTn(4:0)
PCI bus that is shared by several masters. Access to the PCI
IRDYn
bus is automatically determined by the individual priorities
of each master. REGn(4:0)

Figure 1 • PCI Arbiter Core Interface Signals

PCI Device 1 PCI Device 2 PCI Device 3

GNTn2 REQn2
REQn1 GNTn3
GNTn1 REQn3

REQn0 GNTn4
PCI Device 0 GNTn0 PCI Arbiter REQn4 PCI Device 4

RSTn IRDYn
CLK FRAMEn

Figure 2 • Top-Level Interface of the PCI Bus Initiators with the Arbiter

J an u a r y 2 0 0 2 1
© 2002 Actel Corporation
Ar bi tr at io n S che m es Fair rotation is employed if an embedded processor is
Pure rotation is a turn-based method that allows each bus required to initialize the system but will not be used after
master one transaction in turn if multiple masters are that point. By giving it highest priority, the fair rotation
requesting the bus simultaneously. If only one master scheme allows the embedded processor access to the PCI
requests the bus, that master will immediately get the grant. bus on every other transaction when it is requesting the bus
Figure 3 illustrates the pure rotation scheme. continuously. The other masters use a pure rotation scheme.
The fair rotation scheme is illustrated in Figure 4.

IDLE

Device 0

Device 4 Device 1

Device 3 Device 2

Figure 3 • Pure Rotation Arbitration

Device 4 Device 1

Device 0 IDLE

Device 3 Device 2

Figure 4 • Fair Rotation Arbitration

2 v4.0
PCI Arbiter Core

Bus P ar ki ng 5. Compile the macro and the test bench.


The arbiter has been designed to implement bus parking; Type the following command at the prompt:
i.e., it asserts the grant to a default device when none of the do compall.do
request lines are active (there are no devices are requesting 6. Simulate the test bench.
the bus). This ensures that a requesting device will received Type the following command at the prompt:
an almost immediate grant. The default case allows the bus do run_fair.do
to be parked on the device that last acquired the bus.
However, by utilizing the constants BUS_PARK, Simulating the Fair Rotation Arbiter Scheme
BUS_DEVICE, and BUS_GNTN the user can specify the bus 1. Invoke the V-System simulator.
is parked on a device other than the default. 2. Change to the “/vhdl/tbench/mti_arb” directory.
Hidd en Bus A rb it ra ti on 3. Create a “work” library.
The PCI specification allows bus arbitration to take place Type the following command at the prompt:
while the currently granted device is performing a data vlib work
transfer. This feature greatly reduces arbitration overhead The test bench will be compiled into this directory.
and improves bus utilization. 4. Open the file “arb_wrp.vhd” in the “/vhdl/src” directory
Maxi m um L at ency and set the constant ALGORITHM to a zero.
The device granted the bus must initiate a transaction 5. Compile the macro and the test bench.
(drop FRAMEn signal) within 16 PCI clock cycles. If the Type the following command at the prompt:
time expires and the device has not initiated a transaction, do compall.do
the arbiter removes the grant from the device and the bus to 6. Simulate the test bench.
the device with the next highest priority. Type the following command at the prompt:
Beh avi or al S im ul at ion do run_pure.do
The following procedures is used to simulate the VHDL U se r Cod e C us to mi z at ion
version of the Arbiter Macro: The code is currently written to arbit between 5 master
Simulating the Pure Rotation Arbiter Scheme devices. The devices are implemented as states in a finite
1. Invoke the V-System simulator. state machine (FSR). The end user can modify the
implementation by adding or subtracting states to meet the
2. Change to the “/vhdl/tbench/mti_arb” directory. number of devices required by the particular application.
3. Create a “work” library.
E st im a ted P er f or m ance and D evi ce
Type the following command at the prompt:
U t ili z at ion
vlib work
The test bench will be compiled into this directory. The expected performance and utilization statistics for the
66 MHz PCI Arbiter using the 54SX16–2 and APA750 devices
4. Open the file “arb_wrp.vhd” in the “/vhdl/src” directory are shown in Table 1. These numbers are based on post
and set the constant ALGORITHM to a one. layout results using automatic place and route.

Table 1 • Utilization and Performance Statistics


Utilization (Estimated) Performance

Combinatorial Sequential Total Utilization Max Frequency


Modules Modules Resources Percent (MHz)

A54SX16-2 84 32 116 Modules 8% 84


APA750 135 N/A 135 Tiles 0.4% 71

v4.0 3
Actel and the Actel logo are registered trademarks of Actel Corporation.
All other trademarks are the property of their owners.

http://www.actel.com

Actel Europe Ltd. Actel Corporation Actel Asia-Pacific


Maxfli Court, Riverside Way 955 East Arques Avenue EXOS Ebisu Bldg. 4F
Camberley, Surrey GU15 3YL Sunnyvale, California 94086 1-24-14 Ebisu Shibuya-ku
United Kingdom USA Tokyo 150 Japan
Tel: +44-(0)1276 401450 Tel: (408) 739-1010 Tel: +81-(0)3-3445-7671
Fax: +44-(0)1276 401490 Fax: (408) 739-1540 Fax: +81-(0)3-3445-7668

5172152-2/1.02

Vous aimerez peut-être aussi