Working with Xilinx BGA packages
-
ElEctric_EyE
- Posts: 3260
- Joined: 02 Mar 2009
- Location: OH, USA
Working with Xilinx BGA packages
I wanted to start this thread because I've always had my eye on a Virtex 4 or maybe Virtex 5 on a project way off in the future and I have always been intimidated by these packages in the past.
I have seen the IR soldering stations on E-Bay for $500. These, I would imagine would be a hit or miss type approach to attaching 350+pin BGA package to a circuit board. A circuit board that would be more than 4+ layers and obviously the 1st 350 holes are used for the mounting socket I am interested in, if there is a such a thing. I believe there is, which is why I started this thread...
Virtex 4 lower pin count parts are around ~$200. Virtex 5 ~$450. Now go look at the prices for development boards for these devices. They approach $2000. Even more crazy, look up Virtex 6 parts on Avnet. I've seen prices from $2000-$30,000 PER IC!!. I have no desire to approach this!
I would like to focus on Virtex 4 & Virtex 5 because the VCCO goes up to 3.75V, and 3.3V I/O is the sweet spot for fast/cheap RAM and I/O nowadays. Also, current ISE software is supporting these devices.
Mill-Max is the company I've started looking into for a viable socket option for Xilinx BGA's. I've just started looking on my spare time for a non-solderable mounting solution, just like most present-day desktop motherboards have for Intel CPU's.
If anyone has any input as to BGA mounting solutions, please add your input! TIA
I have seen the IR soldering stations on E-Bay for $500. These, I would imagine would be a hit or miss type approach to attaching 350+pin BGA package to a circuit board. A circuit board that would be more than 4+ layers and obviously the 1st 350 holes are used for the mounting socket I am interested in, if there is a such a thing. I believe there is, which is why I started this thread...
Virtex 4 lower pin count parts are around ~$200. Virtex 5 ~$450. Now go look at the prices for development boards for these devices. They approach $2000. Even more crazy, look up Virtex 6 parts on Avnet. I've seen prices from $2000-$30,000 PER IC!!. I have no desire to approach this!
I would like to focus on Virtex 4 & Virtex 5 because the VCCO goes up to 3.75V, and 3.3V I/O is the sweet spot for fast/cheap RAM and I/O nowadays. Also, current ISE software is supporting these devices.
Mill-Max is the company I've started looking into for a viable socket option for Xilinx BGA's. I've just started looking on my spare time for a non-solderable mounting solution, just like most present-day desktop motherboards have for Intel CPU's.
If anyone has any input as to BGA mounting solutions, please add your input! TIA
-
ElEctric_EyE
- Posts: 3260
- Joined: 02 Mar 2009
- Location: OH, USA
I found a company called Ironwood electronics that has solderless sockets for BGA, and seem to have exact matches for Xilinx parts. They are abit expensive. The one 484-pin socket I found for a Virtex 6 part# XC6VLX75T is $595. Using mounting screws it is able to mount on SMT pads on a circuit board. It is also able to mount onto a thru-hole adapter with pins, similar to PGA. That costs another $215.
I had thought all Virtex 6 part prices were in the thousands, but I was wrong. The smallest ones like I mentioned above are around the $550 mark.
I would like to post some speed results, and cost comparisons of associated IC's & sockets, of a simple design using a 65Org16 with RAM for zero page, stack, and ROM, with basic CPU signals brought out on a Virtex 4, Virtex 5, and Virtex 6.
A quickie test I did on a Virtex 5 was able to run up to 144MHz according to ISE spec's. I was hoping for more. Spartan 6 was able to run the design up to 100MHz. It takes awhile to do these comparisons as I have to resynthesize the blockRAMs for each device on a slow laptop.
I had thought all Virtex 6 part prices were in the thousands, but I was wrong. The smallest ones like I mentioned above are around the $550 mark.
I would like to post some speed results, and cost comparisons of associated IC's & sockets, of a simple design using a 65Org16 with RAM for zero page, stack, and ROM, with basic CPU signals brought out on a Virtex 4, Virtex 5, and Virtex 6.
A quickie test I did on a Virtex 5 was able to run up to 144MHz according to ISE spec's. I was hoping for more. Spartan 6 was able to run the design up to 100MHz. It takes awhile to do these comparisons as I have to resynthesize the blockRAMs for each device on a slow laptop.
I once read in a pc magazine how electronics might be fixed by putting them into an kitchen oven for something like 8 minutes at 250C? The theory goes that it would be just enough to resolder the smd components, but not enough to damage the components. I really don't know if it works, and i didn't plan to try it, but it is a long shot.
-
leeeeee
- In Memoriam
- Posts: 347
- Joined: 30 Aug 2002
- Location: UK
- Contact:
-
ElEctric_EyE
- Posts: 3260
- Joined: 02 Mar 2009
- Location: OH, USA
I'm more of a dreamer than a planner, although it takes a certain amount of planning to see if the dreaming isn't just a waste of time. Everything that I've done so far with the Spartan 6 has not even come close to filling the device. The only thing I could use more of is blockRAM.
These Virtex's have some interesting features, I am still familiarizing myself with them, but the Virtex 4 and 5 families have PowerPC cores embedded. Virtex 4 has 5 stage pipelined and Virtex 5 has 7 stage pipelined core, but in order to get a PPC core in a Virtex 5 you have to use their 665-pin BGA. On the other hand, Virtex 4 FX series is particularly good looking because the smallest one, a $127 363-pin BGA, can have 1 PPC405 core. Still reading...
These Virtex's have some interesting features, I am still familiarizing myself with them, but the Virtex 4 and 5 families have PowerPC cores embedded. Virtex 4 has 5 stage pipelined and Virtex 5 has 7 stage pipelined core, but in order to get a PPC core in a Virtex 5 you have to use their 665-pin BGA. On the other hand, Virtex 4 FX series is particularly good looking because the smallest one, a $127 363-pin BGA, can have 1 PPC405 core. Still reading...
-
ElEctric_EyE
- Posts: 3260
- Joined: 02 Mar 2009
- Location: OH, USA
Well, personally, I've come to the conclusion that the Spartan 6 is the best for use in retro embedded CPU category. In the price/performance category, the Spartan 6 family is right up there with Virtex 4 as far as available blockRAM on pin-per-pin comparable devices.
If one needs more blockRAM on a Xilinx FPGA, the Virtex family is not the way to go. A larger Spartan 6 device is the more efficient way spend the $/silicon. Still, the larger Spartan 6's are in a BGA package and offer >130Kx16 hi-speed onboard blockRAM. The sweet spot for the Spartan 6 seems to be a 484-pin BGA.
If one needs more blockRAM on a Xilinx FPGA, the Virtex family is not the way to go. A larger Spartan 6 device is the more efficient way spend the $/silicon. Still, the larger Spartan 6's are in a BGA package and offer >130Kx16 hi-speed onboard blockRAM. The sweet spot for the Spartan 6 seems to be a 484-pin BGA.
ElEctric_EyE wrote:
The sweet spot for the Spartan 6 seems to be a 484-pin BGA.
For non-retro computing, I'd recommend a modern Cortex-M3. You can get 100 MIPS for $5, and no external components. You can't beat that with an FPGA. For fancy applications, you can always attach an FPGA externally.
-
ElEctric_EyE
- Posts: 3260
- Joined: 02 Mar 2009
- Location: OH, USA
Arlet wrote:
...For non-retro computing, I'd recommend a modern Cortex-M3. You can get 100 MIPS for $5, and no external components...
Are there any ARM CPU's left for sale that are pure CPU that bring out the address and data buses?
ElEctric_EyE wrote:
Are there any ARM CPU's left for sale that are pure CPU that bring out the address and data buses?
Personally, I never used external memory buses for any of my projects. I prefer to use the internal memory, and built-in peripherals. My requirements for external peripherals can typically be met using SPI or I2C. The LPC chips also have a fast serial bus (SSP) that supports scatter-gather DMA transfers. In one of my projects, I've used that bus at 50MHz to talk to a CPLD.
-
ElEctric_EyE
- Posts: 3260
- Joined: 02 Mar 2009
- Location: OH, USA
Oh I like that. It has a LCD controller, I2S, I2C... This could be a choice for my Digital Sound Synthesis Board instead of a Spartan 6.
I do bits of research on ARM here and there. I know the opcode structure favors a C language compiler, which I don't know (even though I do know the syntax is similar to Verilog) and there are plenty of development tools. I would like to learn how to code in assembly for it. Need to do more research...
I do bits of research on ARM here and there. I know the opcode structure favors a C language compiler, which I don't know (even though I do know the syntax is similar to Verilog) and there are plenty of development tools. I would like to learn how to code in assembly for it. Need to do more research...
Re: Working with Xilinx BGA packages
For another project (not FPGA/6502 related), I tried soldering a 256 ball BGA (1.0 mm pitch) at home. It still needs more thorough testing, but at first sight it looks like it got mounted correctly. The part is nice and flat and you can look underneath and see clear through the rows of balls. The device powers up correctly (not too much current), and can communicate over the UART to my PC. This still leaves 200 connections to be tested, of course, but the results are encouraging, and it turned out to be easier than I thought.
Xilinx sells a couple of Spartan-6 devices that have the same size, including the XC6SLX16-2FTG256C ($25 at Digi-Key) and the XC6SLX25-2FTG256C ($35). These have 186 user I/Os, compared to only 102 for the 'LX9 in TQG144 package, and they also have more logic slices. The 'LX25 also has more block RAMs (52 instead of 32).
This is a picture after the solder paste application, but before the BGA is mounted.
-
ElEctric_EyE
- Posts: 3260
- Joined: 02 Mar 2009
- Location: OH, USA
Re: Working with Xilinx BGA packages
1mm BGA might not be so bad, especially if you can see underneath.
How did you apply the solder paste? How did you heat it up? Did it self-center when the solder melted?
How did you apply the solder paste? How did you heat it up? Did it self-center when the solder melted?
Re: Working with Xilinx BGA packages
I applied the solder paste using a laser cut stainless steel stencil from the PCB manufacturer (about $60), and a small steel putty knife. Heating was done in one of those.
It did self center, but it was already pretty well aligned to start with, so it only moved a tiny bit. I worried a lot about placing, and came up with various ideas for alignment. In the end, I just used a simple manual vacuum pick up tool, and just placed it by hand using the silk outline as guidance. Then I checked from the side to see if it was okay.
It did self center, but it was already pretty well aligned to start with, so it only moved a tiny bit. I worried a lot about placing, and came up with various ideas for alignment. In the end, I just used a simple manual vacuum pick up tool, and just placed it by hand using the silk outline as guidance. Then I checked from the side to see if it was okay.
Re: Working with Xilinx BGA packages
The board is a 6 layer design with 4 mil trace/clearance and 0.15 mm finished holes (6 mil).