UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Scholar helmutforren
Scholar
8,152 Views
Registered: ‎06-23-2014

How to reconfigure ChipScope Pro for existing project?

I've spent several days trying to figure this out and have been unable to do so.  Documentation is either spotty or hard to find.  So now I'm asking if someone can please directly help me with this.

 

I've attached three zip files that constitute a project that comes from the Xvent S6LX16 Maximum FMC Reference Design.

 

I am using ISE Platform Studio version 12.4 and have access to 14.7.  I'd much rather get this working in 12.4 first, before upgrading to 14.7.

 

I've gotten this working, but now I want to change things and can't figure it out.  My ultimate goal is to capture a window of data larger than the 1024 that this is capturing.  I realize there are size limitations, but I'd like to get as close to 48,000 samples (4-bytes each) as I can.

 

I am seeking two different kinds of help, please.  One is how to simply make the above happen.  The other is to get an understanding of how this ChipScope stuff is connecting.

 

For the first kind of help, I'll stop writing and simply ask for whatever useful advice you can provide.  By the way, it's extremely difficult to find doc with the correct coverage.  The best I've found is Platform Studio User Guide UG113 (v4.0) February 15, 2005.  It has only a single paragraph about the ChipScope ILA.   That's not enough!  I can't find any later version of this doc, such as from 2010, the time of version 12.4. 

 

For the second kind of help, I'll postulate some questions.  They'll show my ignorance for sure.  Perhaps they'll clue you into what I need to know but don't.

 

The reference design is gathering ADC samples and putting them into a buffer   I've had limited but presumably sufficient success in increasing the size of this buffer and filling it.  I've also twiddled the content and confirmed my twiddled content coming out to ChipScope Pro.  (Source code sp601_V1_demo.c function main(), buffer address XPAR_XPS_BRAM_IF_CNTLR_1_BASEADDR.  That address defined in Maxim_FMC_HW\microblaze_0\include\xparameters.h and set by Platform Studio System Assembly View / Addresses tab Generate Addresses button).

 

I can't figure out how ChipScope Pro is locating this buffer.  When I look at System Assembly View / Ports tab, I find chipscope_ila_0 and some detail.  But DATA is "No Connection".

 

I do find the below.  I've bold faced a line of concern.  I realize it's not only trigger, but also ADC2_Data.

BEGIN chipscope_ila

PARAMETER INSTANCE = chipscope_ila_0
PARAMETER HW_VER = 1.03.a
PARAMETER C_TRIG0_UNITS = 1
PARAMETER C_TRIG0_TRIGGER_IN_WIDTH = 66
PARAMETER C_NUM_DATA_SAMPLES = 1024
PORT chipscope_ila_control = chipscope_ila_0_icon_control
PORT TRIG0 = ADC2_Read_Data_Ready & ADC1_Read_Data_Ready & ADC2_Data & ADC1_Data
PORT CLK = clk_50MHz
END

 

Mid-way quetion.  If the data is coming through the trigger information, does this mean that "PARAMETER C_NUM_DATA_SAMPLES = 1024" is a red herring and actually have nothing to do with the size of the data captured by ChipScope?

 

The ADC2_Data is found elsewhere:

BEGIN bram_block
PARAMETER INSTANCE = xps_bram_if_cntlr_1_block
PARAMETER HW_VER = 1.00.a
BUS_INTERFACE PORTA = xps_bram_if_cntlr_1_port
PORT BRAM_Rst_B = net_gnd
PORT BRAM_Clk_B = clk_50MHz
PORT BRAM_EN_B = net_vcc
PORT BRAM_WEN_B = net_gnd
PORT BRAM_Addr_B = ADC2_Read_Addr
PORT BRAM_Din_B = ADC2_Data
END


BEGIN addr_gen
PARAMETER INSTANCE = addr_gen_1
PARAMETER HW_VER = 1.00.a
PORT clk_in = clk_50MHz
PORT rst_in = sys_bus_reset
PORT ready_in = ADC2_Read_Data_Ready
PORT addr_out = ADC2_Read_Addr
END

 

And following xps_bram_if_cntlr_1_block I get to 

BEGIN xps_bram_if_cntlr
PARAMETER INSTANCE = xps_bram_if_cntlr_1
PARAMETER C_SPLB_NATIVE_DWIDTH = 32
PARAMETER HW_VER = 1.00.b
PARAMETER C_BASEADDR = 0x83c18000
PARAMETER C_HIGHADDR = 0x83c19fff
BUS_INTERFACE SPLB = mb_plb
BUS_INTERFACE PORTA = xps_bram_if_cntlr_1_port
END

 

where 0x83c18000 is indeed the buffer address.  So it seems I *have* found the connection of the ILA to the buffer.  

 

Question: This implies that ChipScope Pro software on my PC should continue to find the data buffer, even if that buffer gets changed in size and moved around by Generate Addresses.  That's because the ILA is the only one who need know where the buffer is.  ChipScope Pro software on my PC doesn't need to know.  Right?  

 

Now what about the number of bytes ChipScope Pro software on my PC will capture?  I'm still stuck there.  I've been able to make the C code capture more bytes into a larger buffer.  But it won't show up in ChipScope Pro software on my Windows 7 PC.  It seems limited to 1024 by a drop down box 

 

Jumping forward, there's this chipscope project.  I have no idea how it was created, what it really does, or if I can change it.

 

Now I'm totally at a loss for how to move forward.

 

 

 

0 Kudos