TomKeddie

Struggling a little with a homebuilt pro

Recommended Posts

Folks,

 

I had access to some LX9 samples so I've built my own Papilio Pro.  It is "almost" working but I'm struggling a little - hoping for some advice.

 

What works

- downloading via xilinx platform cable (led flasher, serial generator etc)

- toggling jtag pins via ftdi debug

- outputing serial data from the fpga to usb serial port

- writing to the eeprom attached to the ftdi chip

 

What doesn't work

- downloading via xc3sprog or any other compatible tool

 

What looks wrong

- I am seeing 100mV of 2 MHz sawtooth ripple on the 1.2v supply, 3.3V is clean enough.

- The schematic seems to be using lower than recommended values for the resistor divider - the data sheet recommends a max current of 10uA, the values used give 1.2V/3k = 400uA - this also seemed to give me 1.3V.  Replacing them with 48.2k gives me 1.23V but perhaps this is the noise affecting the ADC in the multimeter.

 

I used VLS3015T-3R3M1R2 inductors, ERJ-6ENF1501V resistors (replaced with 48k2), 08056D226MAT2A caps (X5R) and LTC3419EMS#PBF regulator.   I tried adding 22pF Cf as per LTC3419 datasheet with little difference.  The supply is clearly not functioning well but I'm confused as to whether this is the source of my jtag problems - as I understand it VCCaux is used for JTAG i/o.

 

The chain test in xc3sprog gives sporadic readback errors.  I've tried dropping the clock rate with no success.  I've seen a few ports with the 0x19 error, the cause isn't clear, the advice being to return a defective board.

 

Any suggestions?  I'm going to order some more 22uF caps and different inductors (to match data sheet recommendation) but I'm doubting this will help.

 

Perhaps someone who has a pro can put a cro on the 1.2v line and tell me what they find?

 

Thanks a ton,

Tom

tom@ubuntu:~/svn/xc3sprog-code/build$ sudo ./xc3sprog -L -c ftdi -J 30000 -v /mnt/hgfs/tom/p4/laptop/work/vhdl/results/papilio/tom_test/top.bit[sudo] password for tom: XC3SPROG (c) 2004-2011 xc3sprog project $Rev: 747 $ OS: LinuxFree software: If you contribute nothing, expect nothing!Feedback on success/failure/enhancement requests:	http://sourceforge.net/mail/?group_id=170565 Check Sourceforge for updates:	http://sourceforge.net/projects/xc3sprog/developUsing built-in device listUsing built-in cable listCable ftdi type ftdi VID 0x0403 PID 0x6010 dbus data 00 enable 0b cbus data 00 data 00Using FTD2XX, Using JTAG frequency  29.850 kHz from undivided clockJTAG chainpos: 0 Device IDCODE = 0x24001093	Desc: XC6SLX9Created from NCD file: top.ncd;UserID=0xFFFFFFFFTarget device: 6slx9tqg144Created: 2013/12/23 07:06:33Bitstream length: 1193008 bitsDNA is 0x79e82f8ceb19e8ffdone. Programming time 39498.3 msDevice failed to configure, INSTRUCTION_CAPTURE is 0x19USB transactions: Write 167 read 57 retries 0tom@ubuntu:~/svn/xc3sprog-code/build$ 

Share this post


Link to post
Share on other sites

Just to exclude really stupid things, the top.bit file was actually built for a Spartan 6 LX9 in TQFP 144 pin package? You could check by octal dumping the first 100 bytes of that file and see if "6slx9tqg144" is mentioned in there as a string.

 

Secondly, it's not clear from your post. did you build an actual Papilio Pro, as in the same exact PCB and schematic as published on the Gadgetfactory web site, or did you build a Papilio clone, ie close enough but not identical to it. If you built an actual Papilio Pro, It's not clear why you're trying to program it with a Xilinx platform cable and xc3sprog instead of the usual Papilio Programmer.

 

As for the scope trace, (sorry CRO is way too old school for me, I don't think I have any more cathode ray tubes in my arsenal, it's all LCD these days) I don't actually have a Papilio Pro with the switch mode supply so I can't help with voltage measurements.

Share this post


Link to post
Share on other sites

Just to exclude really stupid things, the top.bit file was actually built for a Spartan 6 LX9 in TQFP 144 pin package? You could check by octal dumping the first 100 bytes of that file and see if "6slx9tqg144" is mentioned in there as a string.

 

Secondly, it's not clear from your post. did you build an actual Papilio Pro, as in the same exact PCB and schematic as published on the Gadgetfactory web site, or did you build a Papilio clone, ie close enough but not identical to it. If you built an actual Papilio Pro, It's not clear why you're trying to program it with a Xilinx platform cable and xc3sprog instead of the usual Papilio Programmer.

 

As for the scope trace, (sorry CRO is way too old school for me, I don't think I have any more cathode ray tubes in my arsenal, it's all LCD these days) I don't actually have a Papilio Pro with the switch mode supply so I can't help with voltage measurements.

 

I should have mentioned I get the same results from the lx9 test image.  I'm mucking around with xilinx cables and xc3sprog because the basic downloader was failing in the same way so I started to get creative.

 

Thanks.  I'm using the eagle files from the web site on a larger 100x80 exterior size.

 

Yes, it's time I bought some decent tools it would seem.

 

Thanks,

Tom

Share this post


Link to post
Share on other sites

Ok, it's the 1.2V p/s for sure, will order the parts.  Here's photo of the board with an offboard 1.2v supply, it works fine like this.  I used a Dangerous Prototype sick-of-beige 100x80 template (after 100x50, the pcb service I use is fixed price up to 100x100) and a sick-of-beige template for the acrylic base plate (http://dangerousprototypes.com/category/sick-of-beige/)

 

 

11588935346_dcab7bb3b5.jpg

Share this post


Link to post
Share on other sites

I should have mentioned I get the same results from the lx9 test image.  I'm mucking around with xilinx cables and xc3sprog because the basic downloader was failing in the same way so I started to get creative.

 

Thanks.  I'm using the eagle files from the web site on a larger 100x80 exterior size.

 

Yes, it's time I bought some decent tools it would seem.

 

Thanks,

Tom

 

 

There's nothing wrong with a CRO. I've got a Bitscope DSO at home and at work we have some Tek TDS3054's that cost more than a lot of cars do. There is some neat stuff you can do with them but you'd have to pry my trusty old Tek 465B analog CRO from my cold dead hands. It takes a bit more skill to use it properly but there are some things that an analog scope just plain does better. It feels more "real" and natural. Having both and knowing how to leverage the advantages of each is the best of both worlds.

Share this post


Link to post
Share on other sites

I soldered it by hand.  I have a setup with a stereo microscope and good lighting that helps a lot.

 

Switching regulators can be fiddly and deceptively difficult to get working properly. I had a lot of failed attempts before I got to where I can usually get that sort of thing to work properly. It always pays to read the datasheet carefully, there are a lot of parts that depend on the ESR of certain types of capacitors on either the input and/or output filters for proper operation. Some parts advertise that they are stable with low ESR ceramic capacitors.

 

Proper grounding and layout is also very important, especially with some of the newer parts that operate at very high frequencies. You are into proper RF territory and required techniques.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now