FAQ – XJFlash
How can XJFlash be 50 times faster than programming with conventional boundary scan?
With conventional boundary scan each signal change requires one complete test vector to be scanned through the JTAG chain. XJFlash configures the FPGA with a programming algorithm so it can change these signals at its operating clock speed. JTAG is still used to stream the data to be programmed into the FPGA but the control of the signals on the board is done by the FPGA.
I use a fast flash programmer already, why should I consider using XJFlash?
XJFlash makes use of the FPGA resources already designed into the board. This means it is possible to use a single JTAG tool to boundary scan test the board and program it in one step, making it faster than swapping between tools on the production line. Furthermore, using in-system programming removes the need to pre-program flash devices, allowing the latest flash image to always be used and allowing the same tools to be used during development, production, and repair.
What flash devices are supported?
XJFlash has built-in support for a wide range of parallel and serial NOR flash devices. Support for NAND devices is also available.
What FPGAs are supported?
XJFlash can be used on a wide range of FPGAs from Intel (formerly Altera), Lattice, Microsemi (formerly Actel), and Xilinx.
What Xilinx Zynq SoCs are supported?
XJFlash provides NOR flash programming of memories connected to Xilinx Zynq-7000 and Zynq-UltraScale+ SoCs. This includes the following families: Xilinx XC7Z007S, XC7Z010, XC7Z012S, XC7Z014S, XC7Z015, XC7Z020, XC7Z030, XC7Z-35, XC7Z045, XC7Z100, XCZU2, XCZU3, XCZU4, XCZU5, XCZU6, XCZU7, XCZU9, XCZU11, XCZU15, XCZU17, XCZU17, XCZU19. New parts are always being added, so please contact us if your device isn’t listed.
What if I want to program a type of device that’s not listed?
The range of devices programmable using XJFlash is continuing to grow, so if you want to program a device that is not currently listed then let us know.
Can I use XJFlash on boards I’ve already designed?
Yes. XJFlash transfers all data from the PC to the board via the FPGA’s JTAG port, which is commonly brought to a header on the board for use during development. Therefore, provided this has been done and the flash to be programmed is accessible from the FPGA, XJFlash can be used.
My flash is not connected directly to the FPGA on my board, might I still be able to use XJFlash?
Yes. XJFlash can easily be customised to support scenarios where the FPGA is not directly connected to the flash to be programmed. For example, the signals could go through buffers, latches, a CPLD or other forms of logic, and XJFlash can still be used. Furthermore, even if some of the signals have to be serialised to get them between the FPGA and a CPLD, XJFlash can be used.
Not all the signals on my flash are accessible from the FPGA, surely that makes it impossible to use XJFlash?
Is this limited to only programming FPGA configuration devices?
I’m not an FPGA developer, will this be too complicated for me?
Will I have to buy extra FPGA tools to be able to use XJFlash?
Can I simultaneously program multiple PCBs, each with their own flash devices?
Can I use XJFlash both in high-volume and low-volume/high-mix production situations?
Yes – because XJFlash can be incorporated in your production tests and it uses the FPGA built on to the board, there are very few time overheads and no hardware modifications required when switching between different board designs.
This can’t be faster than the FPGA vendor’s programming tool, can it?
Do you support fast Flash programming attached to microprocessors, CPUs, DSPs?
Yes – please contact us for more details.
What are the differences between the trial version and the purchased product?
There is no difference between the functionality of the purchased product and the free evaluation version. We provide full technical support by telephone and email, to help with the set-up or troubleshoot any issues during your trial. You will also have access to XJTAG’s device test libraries and latest software upgrades, during your 30-day evaluation period.
Can I convert my trial version to a purchased product?
Yes. If you already have XJFlash for evaluation, you can continue using it without interruption by purchasing the full licence. Contact your XJTAG distributor to make a purchase and have your licence extended.
Do I need to purchase an XJFlash licence for each XJRunner I want to use?
No. An XJFlash licence is required to create the programming configuration for a particular board, after which that configuration can be used with any XJRunner on the same board.
Haven’t found what you are looking for? Ask a question
On this page
- How can XJFlash be 50 times faster than programming with conventional boundary scan?
- I use a fast flash programmer already, why should I consider using XJFlash?
- What flash devices are supported?
- What FPGAs are supported?
- What Xilinx Zynq SoCs are supported?
- What if I want to program a type of device that’s not listed?
- Can I use XJFlash on boards I’ve already designed?
- My flash is not connected directly to the FPGA on my board, might I still be able to use XJFlash?
- Not all the signals on my flash are accessible from the FPGA, surely that makes it impossible to use XJFlash?
- Is this limited to only programming FPGA configuration devices?
- I’m not an FPGA developer, will this be too complicated for me?
- Will I have to buy extra FPGA tools to be able to use XJFlash?
- Can I simultaneously program multiple PCBs, each with their own flash devices?
- Can I use XJFlash both in high-volume and low-volume/high-mix production situations?
- This can’t be faster than the FPGA vendor’s programming tool, can it?
- Do you support fast Flash programming attached to microprocessors, CPUs, DSPs?
- What are the differences between the trial version and the purchased product?
- Can I convert my trial version to a purchased product?
- Do I need to purchase an XJFlash licence for each XJRunner I want to use?
