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: 
Newbie kdzimm
Newbie
9,241 Views
Registered: ‎03-19-2009

Cable connection order

Hi, I'm a teaching assistant at a University and was hoping someone could help me with this problem.

 

The problem I'm having is that most of our lab computers have more than one Xilinx board connected. Specifically, a Spartan 3 through LPT1 and a Virtex-II Pro through USB. The "download.cmd" file for the Virtex labs we're starting has the line:

setCable -p auto

Platform Studio is scanning the LPT1 port first, seeing the connected Spartan (even if it's off, I suspect due to purposefully shorted pins in the connection cable) and then trying and failing to program the Spartan with the Virtex settings.

 

I'm wondering if there is a way to alter the order that Platform Studio scans the cables for connections (this would be the best solution) or to alter the download.cmd file to exclude LPT ports so we won't have to disconnect cables everytime (tamper-proof issues make it a hassle).

 

Thanks so much for any assistance!

Kevin Z.

0 Kudos
8 Replies
9,238 Views
Registered: ‎07-15-2008

Re: Cable connection order

Hi Kevin, and welcome to the forum.

 

Quite honestly I’ve found that having more than one cable installed is a real pain, my advice is don’t do it. 

Can you daisy  the TDI-TDO, i.e. connect the JTAG chains across the dev boards. You would have to power all boards to do this, but then using a single cable you could bypass the unwanted devices (using bsdl files) and only program the devices you want too.

 

You could have different impact files to define which devices have bsdl files and which require programming files. Kind Regards Bobster
0 Kudos
Historian
Historian
9,205 Views
Registered: ‎02-25-2008

Re: Cable connection order


kdzimm wrote:

Hi, I'm a teaching assistant at a University and was hoping someone could help me with this problem.

 

The problem I'm having is that most of our lab computers have more than one Xilinx board connected. Specifically, a Spartan 3 through LPT1 and a Virtex-II Pro through USB. The "download.cmd" file for the Virtex labs we're starting has the line:

setCable -p auto

Platform Studio is scanning the LPT1 port first, seeing the connected Spartan (even if it's off, I suspect due to purposefully shorted pins in the connection cable) and then trying and failing to program the Spartan with the Virtex settings.

 

I'm wondering if there is a way to alter the order that Platform Studio scans the cables for connections (this would be the best solution) or to alter the download.cmd file to exclude LPT ports so we won't have to disconnect cables everytime (tamper-proof issues make it a hassle).

 

Thanks so much for any assistance!

Kevin Z.


I've gotta agree with Bob here -- attaching more than one Xilinx JTAG device (USB, parallel, serial, doesn't matter) to your computer will baffle iMPACT beyond belief.

 

Yes, enhancement requests have been made, but so far Xilinx has chosen to ignore them.

 

-a

----------------------------Yes, I do this for a living.
0 Kudos
Newbie kdzimm
Newbie
9,194 Views
Registered: ‎03-19-2009

Re: Cable connection order

Thanks guys! I'll just stick with unplugging the cables then. I'm not really very knowledgeable with these things so I'm not likely to figure out anything complicated like what bob suggested. I'm having a difficult enough time figuring out how to do the first two labs that the students will have to do in a couple of weeks. It boggles my mind that Platform Studio can't seem to handle something as basic as "char input[50]; scanf("%s",input);".

 

Thanks again!

Kevin Z

0 Kudos
Historian
Historian
9,188 Views
Registered: ‎02-25-2008

Re: Cable connection order


kdzimm wrote:

 It boggles my mind that Platform Studio can't seem to handle something as basic as "char input[50]; scanf("%s",input);".

 



 

Sure it does.

 

But you have to consider the following.  One, scanf() could be a large function, and as such eat up a lot of your program-store BRAM. Simpler alternatives are better.

 

Second, scanf() assumes input from stdin. But exactly what is stdin? On a PC running Linux or Windows, you don't have to worry about that detail because it's all taken care of for you. On an embedded system, you, as the designer, must decide how to implement that functionality. Certainly the standard implementation uses a serial port, but now you the designer have to implement that port in hardware, and come up with a driver interface in software that the function call scanf() can deal with.

 

This is one reason why us embedded folks are amused by the Windows programmers trying to write code for an 8051 or other small embedded micro ...

 

-a

----------------------------Yes, I do this for a living.
0 Kudos
Xilinx Employee
Xilinx Employee
9,182 Views
Registered: ‎08-06-2007

Re: Cable connection order

Hi,

 

Instead of using "auto" when connecting, you can specify the exact cable interface you want to use.

That will allow you to have multiple download cables but each has to be on different interfaces.

I don't think you can have multiple USB cables on the same host yet.

 

Göran

0 Kudos
Newbie kdzimm
Newbie
9,165 Views
Registered: ‎03-19-2009

Re: Cable connection order

Oh, I completely agree with you. I did a lot of work the last two semesters with Atmel AVRs and WinAVR for a senior design project and had to use a whole library to accomplish UART comms. I guess I just assumed that with the Base System Builder wizard allowing the specification of stdin to be UART, and printf and xil_printf being in the premade example apps, that scanf would also be standard and not cause weird "counter" issues. I wound up using getchar instead.

 

But I do believe the students would be better served if they learned on something other than Visual Studio. As you suggest, it isn't really the environment for an embedded systems class, but a CompSci class. Maybe we'll have luck in changing this in the future.

 

 

 

Goran:

So the cable line should look something like this: setCable -p USB21 ? (I'm not in the lab now, but think that is the proper port found by Platform Studio)

 

Kevin Z.

0 Kudos
Adventurer
Adventurer
9,100 Views
Registered: ‎01-28-2008

Re: Cable connection order

You can actually have multiple JTAG devices connected to a single host.  In our lab we have 2 Xilinx USB 1 JTAGs, 3 Xilinx USB 2 JTAGs and 64 custom made (FTDI based) USB JTAGs all connected to a single server.  I have posted before about how this was done through the use of Michael Gernoth's device driver.  Of course, I am using Linux and really do not have much experience with the same setup in Windows.  Anyway, the website can be found here:

 

http://www.rmdir.de/~michael/xilinx/

 

If you have multiple Parallel Ports you can specify which parallel port you are using through impact (like Göran said).

 

Best of Luck

0 Kudos
Xilinx Employee
Xilinx Employee
9,091 Views
Registered: ‎08-06-2007

Re: Cable connection order

Hi,

 

yes, "setCable -p usb21".

 

If you use "cable -p auto" impact will print the name of the connection it uses.

Note: it seems the name is case-sensitive so use lower-case letters.

 

Göran

Message Edited by goran_bilski on 03-23-2009 08:53 AM
0 Kudos