WARP Project Forums - Wireless Open-Access Research Platform

You are not logged in.

#1 2009-Jan-18 11:28:35

zrcao
Member
From: Vienna, VA
Registered: 2007-Jan-24
Posts: 121

Two PLB Setup

In the OFDM_Reference_design V11_2, there are two PLB instances, plb0 and plb_32b_40MHz. The latter is the replacement for the opb bus in the previous version. I have two questions regarding this:

(1) It seems to me that BSB couldn't automatically add the second PLB bus. Even I select radio_controller, which requires a 32-bit data interface and 40 MHz, it is still connected to the plb0, together with xps_bram_if_cntl, which requires 64 bits. So we have to manually create another plb instance after running BSB?

(2) I was expecting the bit width for plb0 is 64 and bit width for plb_32b_40MHz is 32. By looking into the configuration of plbv46_plbv46_bridge, there is no place to find the number '64'. So the bit width is auto computed to be 64?

Offline

 

#2 2009-Jan-19 19:09:11

murphpo
Administrator
From: Mango Communications
Registered: 2006-Jul-03
Posts: 5159

Re: Two PLB Setup

1) Right; the second bus and PLB-to-PLB bridge were added manually. The data width of the bus is automatically configured; only the clock ratio is set (it's 2:1, defined as a parameter in the bridge and implemented by connecting different clocks to the two PLB instances).

2) I don't know what algorithm the tools use to set the bus data width. I suspect they query each device, and set 64-bits if any is capable of it. In the OFDM reference design, the primary PLB (plb0) is 64-bit; the secondary (plb_32b_40mhz) is 32-bit. The best way I know to verify this is to check the auto-generated VHDL  (in <EDK_project>/hdl/).

In plb0_wrapper.vhd, on line 249:

Code:

      C_PLBV46_DWIDTH => 64,

In plb_32b_40mhz_wrapper.vhd:

Code:

      C_PLBV46_DWIDTH => 32,

Offline

 

Board footer