If you have a question, please send them our way using the form to the right or ask directly in one of our support forums.
1. Where can I buy an XLR8 board?
2. What FPGA is used on the XLR8 and Snō boards?
3. What chip is used for the USB to serial interface?
4. Will AloriumTech support users who want to create their own XBs (Xcelerator Blocks) for XLR8?
5. What is the price for an XLR8 board?
6. Is there special software required to program an XLR8?
7. How do you tell XLR8 or Snō to use its floating point hardware instead of using lots of clunky Arduino instructions?
c = a + b;
c = xlr8FloatAdd(a,b);
Because I’m a lazy typist, I typically do this:
#define xA xlr8FloatAdd
so the line of code I end up with looks like:
c = xA(a,b);
There are similar functions for subtract, multiply, and divide, too. We debated a few different approaches for this, and landed on this one for the time being.
8. Which MAX10 device does XLR8 use? What about larger (or smaller) devices as additional offerings?
9. How much space is available on the FPGA for XBs?
10. Is the microcontroller cycle accurate with a standard ATmega microcontroller?
11. Does AloriumTech have plans to develop a dual core or hyperthreaded version of the board?
12. Will AloriumTech also sell the bare FPGA for users who want to build their own board around it?
13. Is it possible to use a toolchain other than the Arduino IDE with XLR8?
14. Is it possible to run the CPU faster than the standard ATmega runs?
15. Does the implementation of the AVR core have the same memory available as the standard ATmega328 part?
16. Will XLR8 and Snō include support for non-AVR cores in the future?
17. Does XLR8 have the same analog I/O capabilities as the Arduino Uno?
18. Is SPI supported on the same pins as on the Uno and the ICSP pins?
The SPI interface on XLR8 should operate the same as the SPI interface on an Uno or Redboard. The only item to note is that we’ve seen some SPI examples where the XLR8/Uno/Redboard is the SPI slave and instead of being driven from the SPI master, the SS pin is left floating. XLR8, due to its I/O pullups, needs to have SS driven and not floating.
19. What is XLR8's digital I/O's voltage capabilities for input and output?
The long answer is, well, longer. The FPGA on the board has I/O that support 3.3V for inputs and outputs. On the digital pin input side, we have a FET-based circuit that limits the voltage seen by the chip to about 3.3V, so the inputs would correctly be categorized as 5V-tolerant. On the digital pin output side, again the chip is a 3.3V device, so it only drives to 3.3V. We have a 1K-ohm pull-up resistor on the board that pulls the signals up to 5V at the board interface, so what you’ll see at the board level is true 0-5V signalling.
The analog pins are a bit different. Those can also be configured as digital I/O on an Arduino, and the same is true on XLR8. There is a slightly more complex circuit to manage the inputs, since we want to be able to have the 3.3V ADC on the chip work over a 0-5V analog voltage range. The net is that, when used as digital inputs, those pins are also 5V-tolerant. However, we don’t have the pull-up resistors on those pins, so when configured as digital outputs, they will drive from 0 to 3.3V, and not to 5V.
20. What is the best method and components to mate the Snō connections to the SnōMākr connections?
Another approach that is still very clean and compact is to use pin headers as the interface between the boards. We often use something like this:
You’ll need a couple of those, since there are 59 connections between the boards. Soldering is much easier, and you still end up with a very clean solution. Future disassembly will also be challenging with this solution.
Finally, you could use headers on the SnōMākr board, and pins on the Snō to create a plug-in solution. We’ve used these:
This creates a very clean, low-profile solution that allows shields to still be used with the SnōMākr, and allows the Snō board to be removed if needed.
As far as a sequence, it comes down to accessibility of the pins with the soldering iron. You’ll want to use a small tip on the iron, and in general start with pins toward the center of the board and work your way out. If you’re soldering the boards together with no headers (again, the most challenging option listed above!), you’ll want to be very careful to avoid melting the SnōMākr headers as you’re reaching between them to solder.
21. Can I burn my own FPGA image to Snō/XLR8?
22. Is it possible to use the board I/O from the OpenXLR8 XBs?
It is certainly possible to use the board I/O from the OpenXLR8 XBs. We’ve tried to document how that is done both in the OpenXLR8 Webinar and in the openxlr8.v verilog file itself, in the form of comments. You can find the discussion of I/O at the 11:14 mark of OpenXLR8 Webinar, part 3: http://bit.ly/2t25O14
In addition, you can find additional examples by looking at the openxlr8.v file in some of the prebuilt XBs such as XLR8SPI. If you look at the openxlr8.v for the XLR8SPI (http://bit.ly/2sZWwCL), you can see inputs being used at lines 195-198, and outputs being assign at lines 282-307.