Migrating from Spartan 6 to Artix 7
Posted: Wed Jul 02, 2014 1:52 pm
The 28nm Xilinx 7 series have some major improvements of the 45nm 6 series and for it to be cheaper I have to go for it! A short story first...
Recently I've had some success with a 144-pin QFP Spartan 6 (XC6SLX9-3TQGC) in a high speed video project. Looking back at the BOM, this device was $17.22. Looking today the price is the same. Amazing.
Anyway, there have been discussions here in the Programmable Logic section about mounting 1mm BGA. A member enso says he has had great success with mounting these devices using a custom made hotplate. I think he went on to favor the 484-pin Spartan 3A. Soon I jumped in and made a custom hotplate as well. To this day I have not tried mounting any 1mm BGA, but the hotplate functions well. enso commented somewhere that it is easier to mount 1mm 256-pin BGA than .5mm 144-pin QFP. It was around this time (about a year ago) that I began to seriously think about slightly enlarging the video board project to incorporate a larger Spartan 6, the XC6SLX25. It's currently available for ~$45.
After a breakthrough working with some very fast 4ns Synchronous RAM running at 148.5MHz I began to think even more seriously about redesigning the board and searched out the best Xilinx FPGA that could fit a 1mm 256-pin footprint. I came up with the Artix 7 XC7A35T-1FTG256C. Although it is the slowest version, it is only ~$38 and it is in stock. The highest speed version (-3) is ~$55 with a 6 week factor lead time, which is no problem since the board is not even designed yet. But before designing the board, I would like to attempt to migrate the design first.
So looking at ISE14.7 and doing a quick search on Xilinx forums, I realized that ISE only supports the larger Artix devices. I will have to download Xilinx' new Vivado free webpack to design with the smaller XC7A35T. I'm doing that now, and will try some experiments to see how the project fits. Currently the 4-board project has only the output board operating and running at a pixel clock of 148.5MHz. The 65Org16.c together with a hardware pixel accelerator are running at 74.25MHz. The Spartan 6 is getting close to being maximized, Slice LUTs and Occupied Slices are what I have my eye on after making changes to the Verilog. Here is the current report. With simple coordinates from the cpu, the accelerator can:
Draw Line
Copy/Paste
Pixel Plot
Fill (simple rectangular)
8x8 Character Plot (background/foreground colors)
Pixel Color Read
Recently I've had some success with a 144-pin QFP Spartan 6 (XC6SLX9-3TQGC) in a high speed video project. Looking back at the BOM, this device was $17.22. Looking today the price is the same. Amazing.
Anyway, there have been discussions here in the Programmable Logic section about mounting 1mm BGA. A member enso says he has had great success with mounting these devices using a custom made hotplate. I think he went on to favor the 484-pin Spartan 3A. Soon I jumped in and made a custom hotplate as well. To this day I have not tried mounting any 1mm BGA, but the hotplate functions well. enso commented somewhere that it is easier to mount 1mm 256-pin BGA than .5mm 144-pin QFP. It was around this time (about a year ago) that I began to seriously think about slightly enlarging the video board project to incorporate a larger Spartan 6, the XC6SLX25. It's currently available for ~$45.
After a breakthrough working with some very fast 4ns Synchronous RAM running at 148.5MHz I began to think even more seriously about redesigning the board and searched out the best Xilinx FPGA that could fit a 1mm 256-pin footprint. I came up with the Artix 7 XC7A35T-1FTG256C. Although it is the slowest version, it is only ~$38 and it is in stock. The highest speed version (-3) is ~$55 with a 6 week factor lead time, which is no problem since the board is not even designed yet. But before designing the board, I would like to attempt to migrate the design first.
So looking at ISE14.7 and doing a quick search on Xilinx forums, I realized that ISE only supports the larger Artix devices. I will have to download Xilinx' new Vivado free webpack to design with the smaller XC7A35T. I'm doing that now, and will try some experiments to see how the project fits. Currently the 4-board project has only the output board operating and running at a pixel clock of 148.5MHz. The 65Org16.c together with a hardware pixel accelerator are running at 74.25MHz. The Spartan 6 is getting close to being maximized, Slice LUTs and Occupied Slices are what I have my eye on after making changes to the Verilog. Here is the current report. With simple coordinates from the cpu, the accelerator can:
Draw Line
Copy/Paste
Pixel Plot
Fill (simple rectangular)
8x8 Character Plot (background/foreground colors)
Pixel Color Read