The FrontPanel SDK dramatically accelerates the development of your FPGA-based USB or PCI Express device by providing three essential components:
Software API and a robust driver to communicate with your device over USB or PCI Express.
Device firmware to manage FPGA configuration and communication.
Small FPGA IP blocks that integrate with your HDL to make host communication simple and easy.
Multi-Platform FrontPanel API and USB Driver
Our robust USB driver and FrontPanel API work together to provide an easy-to-use software interface to your hardware that is consistent across the Windows (32-/64-bit), Linux (32-/64-bit), and Mac OS X development environments.
Our PCI Express driver is available for Windows 32-bit and 64-bit operating systems.
And to make things even easier, we provide pre-built wrappers to the FrontPanel API for C, C#, C++, Python, and Java. And the DLL may be used from any of the huge library of software that support external calling such as Matlab and LabVIEW.
Use our stand-alone FrontPanel Application for FPGA and PLL configuration, XML-based Virtual Control Components, firmware updates, general device setup, and more!
The stand-alone FrontPanel Application lets you quickly and easily define your own graphical user interface that communicates with your hardware. FrontPanel supports many basic user interface elements including:
- Hexadecimal displays
- Toggle buttons
- Numerical entry
Atomic HDL Modules
The HDL you build into the FPGA constitutes the interface between your instrument and USB. Integrate our intuitive HDL modules into your design and you have a fast, extensible, and simple conduit between your hardware and your software.
Save hours of development time by specifically targetting components of your design rather than iterating in the dark. Our HDL simulation models describe the behavioral function of the PC to FPGA interaction and work under Xilinx's iSim, Modelsim, and other HDL simulators.
Custom Interfaces and Test Hardware
FPGA technology is used in a wide variety of in-house prototypes and other custom projects. These types of projects benefit from both FrontPanel's easy-to-use virtual interface components as well as the convenience and predictability of the FrontPanel programmer's interface.
For Students and Educators
FrontPanel is perfect for use in many classroom settings. It's flexible ease-of-use encourages exploration and makes it possible for students to realize their experiments and projects faster.
In structured courses, educators can setup template interfaces in FrontPanel XML, easing the student's learning curve while standardizing the way students interface, debug, and evaluate their assignments. Later, students can write custom XML interfaces or even write C++, Python, or Java applications.
Technical specification and support
Features & Specifications
- Windows (USB / PCI) API available as DLL (C/C++), C#, Java, Python libraries
- Mac OS X (USB only) API available as universal dynamic library (C/C++), Java, Ruby, Python libraries
- QNX Neutrino 6.5.0 (USB / PCI) API available as shared-object
- Linux (USB only) API available as shared object (C/C++), Java, Ruby, Python libraries
- Behavioral simulation supported, no back-annotation
- USB 3.0 transfer rates up to 340+ MBps
- USB 2.0 transfer rates up to 38 MBps
- PCIe transfer rates up to 200 MBps
- Windows XP, Windows Vista, Windows 7 (32 / 64), Windows 8 (32 / 64)
- Mac OS X Version 10.7+
- Linux CentOS 6.5 32-/64-bit
- Linux Ubuntu 12.04LTS 32-/64-bit
- Linux - Many other distributions also known to work with libraries from the two official distributions above.
- Simulation: Compatible with most VHDL/Verilog simulators
- Opal Kelly FrontPanel-supported device
- Xilinx ISE 14.1i or later recommended for building FPGA configuration files