Competence Areas

  • System Modeling
    • System-level modeling and validation using IEEE-1666 SystemC.
    • Transaction-level modeling for hardware-software co-design.
    • Virtual prototyping with Matlab/Simulink.
    • Bus-Functional Models (Cadence BFM) for AXI4 On-Chip Interconnect
    • Virtual Prototyping based on QEMU and/or Cadence VSP using SystemC
       
  • System Architecture Design
    • Multi-processor embedded systems design.
    • Hardware / Software Co-Design
    • Hardware acceleration of software algorithms.
    • Hardware and software design for audio/video/multi-media applications.
    • Distributed networks such as CAN, LIN, and others.
    • Heterogeneous compute architecures.
    • Streaming media architecture.
    • Single- and multi-channel Direct Memory Access (DMA).
    • Machine vision systems with open Computer Vision (opencv.org)
    • Machine learning using reduced precision neural networks.
       
  • FPGA Design
    • Altera, Lattice, MicroSemi and Xilinx tool chain.
    • High-Level Synthesis with design entry using C/C++/SystemC.
    • Xilinx SDSoC software acceleration methodology.
    • Register-Transfer Level (RTL) design in IEEE-1076 VHDL and IEEE-1364 Verilog HDL.
    • RTL verification and testbench design,
    • RTL simulation using state-of-the-art tools such as Xilinx ISim or ModelSim / Questa.
    • Clock Domain Crossing (CDC) design & analysis
    • Timing Analysis and Timing Closure
    • AXI4 On-Chip Interconnect for regular, lite and streaming
    • Multi-gigabit transceiver parameterization & integration
    • Multi-chip connectivity via AURORA protocol.
    • Rapid hardware prototyping
       
  • Software Engineering
    • Complex software architecture and algorithm design.
    • Programming in C, C++, Java under UNIX and Windows operating systems.
    • Embedded Linux software development.
    • Software development with automotive OSEK OS.
    • Software development and debugging for embedded micro-processors such as
    • Graphical User Interface (GUI) design with Python TK, Tcl/Tk
    • Multi-threaded applications and GUI design using QT.
       
  • Hardware and low-level System Design, Integration and Test
    • Complete PCB-development covering
    • Conceptional works and system dimensioning
    • System bring-up and characterization
    • Micro-TCA Off-the-shelf components for rugged / rapid protoyping.
       
  • Design processes and methodologies
    • Automatic Build Environments, like Jenkins or buildbot, for consistent concurrent development of hardware (FPGA) and software (device drivers and applications).
    • Diligent use of version control, release management and issue tracking.
    • Design for Safety-Integrity Levels
    • System-level security
       
  • Storage Protocols (Host- and Device-side):
    • Serial ATA (SATA),
    • Serial Attached SCSI (SAS),
    • Non-Volatile Memory Express (NVMe),
    • Universal Flash Storage (UFS)
       
  • PCI Express
    • PCIe standards Gen1, Gen2, Gen3
    • Hardware and software development for End-point and Root-Complex
    • Linux device driver development
       
  • High-speed analog I/O
    • JESD204B connectivity IP
    • Subclass 0, subclass 1
    • Parallel or serial interfaces to analog-to-digital converters (ADC) and digital-to-analog converters (DAC).
    • Delta-Sigma converters
       
  • Multi-media protocols
    • Serial Digital Interface (SDI)
    • LVDS-based Custom Camera Interfaces with Clock Recovery
    • High-Definition Multimedia Interface (HDMI) wired and wireless
    • Audio-Video Broadcast (AVB)
       
  • Networking: TCP/IP and UDP/IP