Hi,
I'd like to open up a discussion on a board that i'm working on that I hope may be of interest to others out here. It's called the PiXi Board because its main component is a user programmable Xilinx FPGA.
I started to develop the board partly for my own project which is slow-scan astronomical camera. But after seeing some calls for additional GPIO functions on the Pi, i've modified the design to hopefully make it of interest to a wider audience. I have a fairly basic website that i'm working on that is very much work-in-progress but it is live and has all of the latest information on the development of this board. http://www.astro-designs.com/page14.php
The board designed to be a low-cost plug-on board that sits on top of the Pi, connecting to the Pi through its P1 connector (& P5 connector on the Rev 2, if it's fitted on the top of the board) to provide the following:
Up to 56 GPIO including 24 x 3.3v CMOS I/O, 16 x 5v CMOS I/O & 16 x open-collector outputs;
Interfaces to the Raspberry Pi via I2C, SPI & GPIO (uses both P1 & P5 connectors on the Rev 2, although P5 does not need to be fitted);
8 on-board LEDs;
4 on-board push-button switches;
RS232 serial port;
1k EEPROM provides non-volatile storage;
33MHz clock;
Ability to interface directly to a LCD or vacuum florescent display;
Ability to interface directly to up to 8 radio-control style servos or speed controllers;
User programmable 200,000 gate FPGA (XC3S200A);
4-channel analogue to digital converter;
4-channel digital to analogue converter;
3-Axis accelerometer;
3-Axis magnetometer;
A 2.5mm power connector for optional external 5V power supply (it can be powered from the 5v supply from the Pi if the Pi's 5V power supply is powerful enough). This can also be used to provide power to the Pi itself if the user is not using the USB connector on the Pi to provide the power;
An edge connector provides further expansion capabilities over 10 differential or 20 single-ended signalling;
The user can use freely available software tools available from the manufacturers of the FPGA to create their own designs to run on the FPGA;
No expensive programming hardware is needed, the PiXi will be provided with software to allow the Raspberry Pi to reprogram the FPGA through the GPIO on the Pi's 'P1' connector;
Re-design the I/O to your own requirements or protocol using either SPI, I2C and/or basic GPIO from the Pi. All interfaces on the P1 connector can be passed to the PiXi GPIO so that if any interface is not being used on the PiXi then it can be used off-board on other hardware;
Optional location for a 2mm 2x7 SMT header to allow the user to connect to a standard Xilinx programming & debug tool (if you have one). Please note that the Xilinx programming & debug tool would not be provided;
Example FPGA designs will be made available to link your Raspberry Pi to all features on the PiXi Board so that you can use them immediately. The FPGA can be entirely designed by the user or the user can use an example design that will be provided;
I'm tentatively working towards a target price of £35. For this the user would get the fully assembled board, some example FPGA designs, software to run on the Pi to load the FPGA and some example software.
The board is currently in the final stages of design and I hope to get some prototypes back in a few weeks time. While I can't sell any at present, i'd very much welcome any feedback anyone has on whether such a product would be of interest to many people here. So please let me have your thoughts
Thanks & kind regards,
Mark
Introducing the PiXi Add-on board
16 posts
- Posts: 23
- Joined: Sat Sep 22, 2012 9:07 am
Cool ... seems like its aimed at quadcopter type applications ... what sort of things do you imagine it being used for? Is it an expansion board or would it require the Pi to program and then run autonamously afterwards? Would replacing the 1K EEPROM with a 512K EEPROM cost much more or cause problems?
- Posts: 1556
- Joined: Sun Mar 04, 2012 12:49 am
pygmy_giant wrote:Cool ... seems like its aimed at quadcopter type applications ... what sort of things do you imagine it being used for? Is it an expansion board or would it require the Pi to program and then run autonamously afterwards? Would replacing the 1K EEPROM with a 512K EEPROM cost much more or cause problems?
Thanks for your reply
The main feature with this board is the 200,000 FPGA which gives the user the ability to experiment with digital electronics or even use it for product development. Couple a low cost processor, in this case the Raspberry Pi, with a low cost small-medium sized programmable logic function and it could open the doors to more advanced applications while keeping the development costs very small.
It gives the user the chance to learn a new skill - VHDL or Verilog are industry standard languages and fairly easy to get to grips with, especially if you know some software.
I didn't really have an application in mind when I designed this - apart from my own 'AstroCam' project (which has been on the cards for about 10 years...), so I tried to put a few things on the board that would create some interest.
If this worked as a product then I'd love to see it appear in schools, colleges or universities alongside a few Rasberry Pi's as a tool for learning digital electronics and/or VHDL / Verilog. Hense why i'm trying to keep the price as low as possible.
It does need the Pi to load the configuration into FPGA on power-on / boot. It's a volatile component so it loses it's configuration when there's no power but it only takes a few seconds to configure it.
As for the question on the EEPROM, there is room for expansion, a larger device like a 512kbit part, could be fitted for around £1 extra, possibly less. I'm trying to keep the costs down to an absolute minimum so i've defaulted to a fairly small part but with a little surface mount soldering the user could replace the 8-pin chip with a larger capacity component. If there's significant call for a larger part then we could default to a larger part.
Thanks,
Mark
- Posts: 23
- Joined: Sat Sep 22, 2012 9:07 am
You might consider adding an SPI Flash programming option so that the board doesn't have to be downloaded from RasPi or a JTAG cable on each use. This allows your board to be a custom interface board once FPGA development is complete. I believe SPI Flash chips are available in SOIC packages so they're easy to add later.
Hi John,
I opted out of the SPI flash configuration option - or any configuration option that put the storage on the PiXi board, for two main reasons. Firstly cost but secondly because through force of habit (in my day job) I tend to opt to use a local processor to configure an FPGA because in 9 times out of ten there's a processor somewhere in the product, in this case it's the Pi.
The PiXi board is designed to accompany the Pi so the processor is always there to configure the FPGA so there's never any need for a separate configuration storage. I'm short of board space too so by using the processor to configure the FPGA it was one less component to fit.
There is always the option to fit the XC3S200AN instead of the 200A, the 'AN' part offers non-volatile storage and is pin compatible but it's more costly. But it's always an option...
Just a quick comment on the JTAG connector, please note that it's not normally fitted as most people using the Xilinx Webpack tools for this board probably wouldn't have the Xilinx JTAG programming tool. So again it came down to cost and I decided not to include the JTAG connector in the parts list. But the location is there on the board for anyone who wants to fit one.
Best regards,
Mark
I opted out of the SPI flash configuration option - or any configuration option that put the storage on the PiXi board, for two main reasons. Firstly cost but secondly because through force of habit (in my day job) I tend to opt to use a local processor to configure an FPGA because in 9 times out of ten there's a processor somewhere in the product, in this case it's the Pi.
The PiXi board is designed to accompany the Pi so the processor is always there to configure the FPGA so there's never any need for a separate configuration storage. I'm short of board space too so by using the processor to configure the FPGA it was one less component to fit.
There is always the option to fit the XC3S200AN instead of the 200A, the 'AN' part offers non-volatile storage and is pin compatible but it's more costly. But it's always an option...
Just a quick comment on the JTAG connector, please note that it's not normally fitted as most people using the Xilinx Webpack tools for this board probably wouldn't have the Xilinx JTAG programming tool. So again it came down to cost and I decided not to include the JTAG connector in the parts list. But the location is there on the board for anyone who wants to fit one.
Best regards,
Mark
- Posts: 23
- Joined: Sat Sep 22, 2012 9:07 am
Hey Mark,
Out of curiosity, is there a reason you went with the older Spartan 3 device instead of, say, xc6slx9 for a similar price point? Has more resources/performance (including DSP slices and hard memory controller).
Packaging issue?
Out of curiosity, is there a reason you went with the older Spartan 3 device instead of, say, xc6slx9 for a similar price point? Has more resources/performance (including DSP slices and hard memory controller).
Packaging issue?
- Posts: 17
- Joined: Thu Oct 25, 2012 1:35 pm
Also have you considered using the IvanSense MPU-6050 and AK8975 ?
- Posts: 1556
- Joined: Sun Mar 04, 2012 12:49 am
bswiec wrote:Hey Mark,
Out of curiosity, is there a reason you went with the older Spartan 3 device instead of, say, xc6slx9 for a similar price point? Has more resources/performance (including DSP slices and hard memory controller).
Packaging issue?
Hi. The reason was cost, I got a better price from Xilinx on the XC3S200A than the XC6SLX9. Well... it was when I started... they later came back with a closer price (still more expensive) but I was too far down to change so I stuck with the S3. I'd agree with you that the S6 is a better choice but 'cheaper' won the battle for now... The S6 is available in the same package so apart from some re-routing it shouldn't be too much effort to change it at a later date. Right now I'm fighting to keep the cost down so every peny saved give me a chance to put this into production.
Cheers,
Mark
- Posts: 23
- Joined: Sat Sep 22, 2012 9:07 am
pygmy_giant wrote:Also have you considered using the IvanSense MPU-6050 and AK8975 ?
I haven't... But then I have years & years worth of experience with Xilinx & Altera FPGAs and haven't even heard of the IvanSense part or AK8975 so I went with what I know best. You can do anything with a Xilinx anyway...
- Posts: 23
- Joined: Sat Sep 22, 2012 9:07 am
Hi All,
Just a quick post to highlight the latest news on the PiXi-200 http://www.astro-designs.com/page8.php. As of 22nd November, the design is complete and we've submitted the design to get the first prototypes manufactured, so we're making progress...
We're a little behind where we'd hoped we'd be by now and with Christmas comming up we're not likely to get the finished product back until some time in January. But there's plenty to do before then... I hope to be able to post some pictures of the space-model within the next 2-3 weeks plus I'm putting together a basic user-manual and cleaning up the schematics for release too.
All for now,
Best regards,
Mark
Just a quick post to highlight the latest news on the PiXi-200 http://www.astro-designs.com/page8.php. As of 22nd November, the design is complete and we've submitted the design to get the first prototypes manufactured, so we're making progress...
We're a little behind where we'd hoped we'd be by now and with Christmas comming up we're not likely to get the finished product back until some time in January. But there's plenty to do before then... I hope to be able to post some pictures of the space-model within the next 2-3 weeks plus I'm putting together a basic user-manual and cleaning up the schematics for release too.
All for now,
Best regards,
Mark
- Posts: 23
- Joined: Sat Sep 22, 2012 9:07 am
Looks like a great project, interesting to see what stuff can be produced on the FPGA.
_________________________________
http://www.themagpi.com/
A Magazine for Raspberry Pi Users
Read Online or Download for Free.
Released at the start of each month.
Meltwater's Pi Hardware - pihardware.com
Like the MagPi? @TheMagP1 @TheMagPiTeam
http://www.themagpi.com/
A Magazine for Raspberry Pi Users
Read Online or Download for Free.
Released at the start of each month.
Meltwater's Pi Hardware - pihardware.com
Like the MagPi? @TheMagP1 @TheMagPiTeam
Hello All!
The PiXi-200 project is moving forward. I recently took delivery of a sample of the bare PCBs so I took the opportunity to pop a few connectors on one of them and take some pictures to help illustrate what it'll look like and how it connects to the Pi.
If you're interested in looking at a partially assembled PiXi, please have a look at the latest PiXi-200 news page (http://www.astro-designs.com/news.php?category=2) and towards the bottom of the PiXi-200 project page (http://www.astro-designs.com/page14.php) to view the pictures.
Thanks & kind regards,
Mark
The PiXi-200 project is moving forward. I recently took delivery of a sample of the bare PCBs so I took the opportunity to pop a few connectors on one of them and take some pictures to help illustrate what it'll look like and how it connects to the Pi.
If you're interested in looking at a partially assembled PiXi, please have a look at the latest PiXi-200 news page (http://www.astro-designs.com/news.php?category=2) and towards the bottom of the PiXi-200 project page (http://www.astro-designs.com/page14.php) to view the pictures.
Thanks & kind regards,
Mark
- Posts: 23
- Joined: Sat Sep 22, 2012 9:07 am
MrMarkus wrote:The PiXi-200 project is moving forward. I recently took delivery of a sample of the bare PCBs so I took the opportunity to pop a few connectors on one of them and take some pictures to help illustrate what it'll look like and how it connects to the Pi.
Very nice! I'm glad to see you're making progress.
Latest update...
Woohoo! - Christmas came early and the boards arrived early yesterday as hoped. So far it looks good. The Pi can program the FPGA, the lights flash, switches work... basic stuff but it'll be a little while before I've tested everything.
Anyway, I'll update the pictures on the website next and get on with testing the rest of the board - in between finishing off the Christmas shopping of course...
All for now, next update will probably be after Christmas, so have a Merry Christmas all!
Best regards,
Mark
Woohoo! - Christmas came early and the boards arrived early yesterday as hoped. So far it looks good. The Pi can program the FPGA, the lights flash, switches work... basic stuff but it'll be a little while before I've tested everything.
Anyway, I'll update the pictures on the website next and get on with testing the rest of the board - in between finishing off the Christmas shopping of course...
All for now, next update will probably be after Christmas, so have a Merry Christmas all!
Best regards,
Mark
- Posts: 23
- Joined: Sat Sep 22, 2012 9:07 am
MrMarkus wrote:Latest update...
Woohoo! - Christmas came early and the boards arrived early yesterday as hoped. So far it looks good. The Pi can program the FPGA, the lights flash, switches work... basic stuff but it'll be a little while before I've tested everything.
Anyway, I'll update the pictures on the website next and get on with testing the rest of the board - in between finishing off the Christmas shopping of course...
All for now, next update will probably be after Christmas, so have a Merry Christmas all!
Best regards,
Mark
Thumbs Up!
- Posts: 1
- Joined: Sun Jan 06, 2013 3:35 pm
This is an awesome project. Keep up the good work
- Posts: 2
- Joined: Mon Aug 06, 2012 2:58 pm