Skip to content

Explore projects

  • PHASE (Portable Hardware Analyzer with Sharing Explorer) aims at unifying hardware debugging in a single tool. From the host machine, a user may graphically interconnect components to describe the connection between his computer and the target device to debug. For example, a USB JTAG cable might be the root node, connected to an Arria2 development board with a CPLD and an FPGA, containing a LM32 processor.

    Wherever possible, PHASE fetches design descriptions from the internet based on the detected JTAG IDCODEs, USB vendor IDs, or PnP BUS information. In the preceding example, each step of the chain would be automatically detected. The USB cable from the vendor+product codes, the FPGA from the JTAG IDCODE and the LM32 from the Arria2's sld hub. The user would now be presented with read/write access to the data and instruction buses for visual inspection or firmware loading. Furthermore, the user could launch gdb to halt and single-step the embedded LM32 CPU.

    If a device is not yet described, the user may assemble a driver out of the reusable software components. For example, an Altera USB-Blaster driver is just a FTDI device chained with a byte packeter and a JTAG bit banger. Once the design has been graphically assembled, it is automatically scanned for attached JTAG devices and the USB cable design is shared online with any future users of the same cable.

    Updated
    Updated
  • Software for Beam Position Monitor, including digital signal processing chains, data acquisition engines, ADC and analog front-end peripherals control/monitoring, timing and control system interface.

    Updated
    Updated
  • This is a port of an older Linux ptpd to support White Rabbit extensions and run both in hosted and freestanding environment. In the future we plan to replace it with PPSI, which has a much better design, but ptp-noposix is currently working pretty well despite being difficult to maintain.

    Updated
    Updated
  • This library provides a generic API for ADC devices, so that applications can use this API to access any of the supported ADC boards. Currently the library supports the following boards:

    fmc-adc-100m14b14cha

    For testing and debugging purpose it supports also a couple of virtual boards that you can use to start the development of your application.

    More info at the Wiki page

    Updated
    Updated
  • A software framework for Linux device drivers aimed at supporting controls and data acquisition hardware. ZIO supports sub-nanosecond timestamps, block-oriented input and output and transport of meta-data with the data samples. Users can change the buffer type and trigger type associated with a device at run time, and all of devices, triggers and buffers are easily implemented as add-on modules.

    The PF_ZIO implementation, currently in beta status, implements a network interface to the ZIO transport, which allows each I/O channel to generate or receive network frames. Applications see the network of devices and can talk with several of them from the same socket. We support SOCK_STREAM, SOCK_DGRAM and SOCK_RAW.

    Updated
    Updated
  • Updated
  • Software to support the fmc-adc-100m14b4cha mezzanine, including Linux device driver, library and test program.

    Archived 0
    Updated
    Updated
  • Tool for generating multi-purpose makefiles for FPGA projects.

    Main features:

    makefile generation for: fetching modules from repositories simulating HDL projects synthesizing HDL projects synthesizing projects remotely (keeping your local resources free) generating multi-vendor project files (no clicking in the IDE!) many other things without involving make and makefiles

    Hdlmake supports modularity, scalability, revision control systems. Hdlmake can be run on any Linux or Windows machine with any HDL More info at the Wiki page

    Updated
    Updated
  • Configuration and boot software required to start up the SPEC7 board

    Updated
    Updated
  • Tool for generating multi-purpose makefiles for FPGA projects.

    Main features:

    makefile generation for: fetching modules from repositories simulating HDL projects synthesizing HDL projects synthesizing projects remotely (keeping your local resources free) generating multi-vendor project files (no clicking in the IDE!) many other things without involving make and makefiles

    Hdlmake supports modularity, scalability, revision control systems. Hdlmake can be run on any Linux or Windows machine with any HDL More info at the Wiki page

    Updated
    Updated
  • This library provides a generic API for ADC devices, so that applications can use this API to access any of the supported ADC boards. Currently the library supports the following boards:

    fmc-adc-100m14b14cha

    For testing and debugging purpose it supports also a couple of virtual boards that you can use to start the development of your application.

    More info at the Wiki page

    Updated
    Updated
  • On the Open Hardware Repository you can find projects which use soft-cpu (e.g. mock-turtle, white-rabbit-core, wr-switch). This project offers a toolchain that you can use to compile your code for the soft-cpu target (only LM32 for the time being). The project provides only the necessary makefiles to build the toolchain, so it will be necessary to compile the toolchain.

    Updated
    Updated
  • A software suite written in Python to help with production tests of PCBs. AKA PTS.

    %(red)This pts-base project is used to re-organise the current pts project In the future this project will replace the existing pts project.

    More info at the Wiki page

    Updated
    Updated
  • A software suite written in Python to help with production tests of PCBs. AKA PTS.

    %(red)This pts-base project is used to re-organise the current pts project In the future this project will replace the existing pts project.

    More info at the Wiki page

    Updated
    Updated
  • Host-side software support for the fine delay FMC on the SPEC and SVEC FMC carriers.

    More details in the project wiki

    Archived 0
    Updated
    Updated
  • Rules for low-level software to check an FPGA for sanity, to ease debugging and to provide support for low-level software auto-configuration for byte-order and optional components. More info at Wiki

    Updated
    Updated
  • A software framework for Linux device drivers aimed at supporting controls and data acquisition hardware. ZIO supports sub-nanosecond timestamps, block-oriented input and output and transport of meta-data with the data samples. Users can change the buffer type and trigger type associated with a device at run time, and all of devices, triggers and buffers are easily implemented as add-on modules.

    The PF_ZIO implementation, currently in beta status, implements a network interface to the ZIO transport, which allows each I/O channel to generate or receive network frames. Applications see the network of devices and can talk with several of them from the same socket. We support SOCK_STREAM, SOCK_DGRAM and SOCK_RAW.

    Updated
    Updated
  • A VHDL core for a VME64x slave. The other side behaves like a Wishbone master.

    More info at the Wiki page
    Updated
    Updated
  • White Rabbit Trigger Distribution project. More info at the Wiki page

    Updated
    Updated
  • Collection of WRTD reference designs provided by (and used at) CERN

    Topics: WRTD
    Updated
    Updated