About the Role
We are seeking an FPGA & Signal Processing Engineer to design and develop high-performance digital systems for real-time signal processing applications. The role involves FPGA design, embedded Linux development on Xilinx SoCs, and implementation of DSP algorithms for communication and SDR-based platforms.
Key Responsibilities
Design, develop, and verify FPGA-based digital systems using Verilog or VHDL.
Implement Digital Signal Processing (DSP) algorithms on Xilinx FPGA and Zynq platforms.
Develop RTL modules and perform functional and timing verification.
Build, configure, and customize PetaLinux for Xilinx Zynq and Zynq UltraScale+ MPSoC platforms.
Develop and integrate hardware designs using Vivado and export hardware platforms for PetaLinux development.
Interface FPGA designs with AXI, AXI-Stream, DMA, DDR, UART, SPI, I²C, Ethernet, GPIO, and other peripherals.
Bring up and validate designs on Xilinx FPGA development boards.
Develop and optimize real-time signal processing applications for Software Defined Radio (SDR) platforms.
Integrate FPGA accelerators with embedded processors running Linux.
Perform hardware debugging, timing closure, and performance optimization.
Collaborate with hardware, embedded software, and algorithm teams throughout the development cycle.
Maintain technical documentation and participate in design reviews.
Required Skills
Strong knowledge of Digital Electronics, Computer Architecture, and FPGA design.
Proficiency in Verilog or VHDL.
Hands-on experience with Xilinx Vivado Design Suite.
Good understanding of RTL design, FSMs, FIFOs, memories, clock domain crossing, and timing analysis.
Experience working with Xilinx FPGA boards and Zynq SoC platforms.
Knowledge of PetaLinux build flow, BSP creation, kernel configuration, device tree customization, boot image generation, and Linux application deployment.
Familiarity with AXI, AXI-Stream, DMA, and processor-FPGA communication.
Strong understanding of DSP concepts including FIR/IIR filters, FFT/DFT, sampling theory, fixed-point arithmetic, convolution, correlation, and digital modulation basics.
Experience with Software Defined Radio (SDR) platforms and RF signal processing concepts.
Knowledge of Linux development environment and shell scripting.
Familiarity with Git for version control.
Preferred Qualifications
Bachelor's or Master's degree in Electronics, Electronics & Communication, Electrical Engineering, or a related field.
Experience with Xilinx Zynq-7000, Zynq UltraScale+ MPSoC, Artix-7, Kintex, or Versal platforms.
Experience with MATLAB/Simulink for algorithm development and verification.
Knowledge of C/C++ and Python for embedded and test automation.
Experience with Vitis, Vitis HLS, and embedded software development.
Familiarity with GNU Radio or RFSoC-based SDR development is an added advantage.
Experience interfacing RF front-ends, ADCs/DACs, or high-speed communication interfaces is desirable.
Nice to Have
Experience with Integrated Logic Analyzer (ILA).
Knowledge of PCIe, Ethernet, JESD204B/C, or high-speed serial interfaces.
Experience optimizing FPGA designs for latency, throughput, and resource utilization.
Exposure to Linux driver development and custom IP integration.
Understanding of communication systems, image processing, or radar signal processing.
Soft Skills
Strong analytical and debugging skills.
Excellent problem-solving ability.
Good communication and documentation skills.
Ability to work independently and in cross-functional teams.
Self-motivated with a passion for FPGA, embedded systems, and signal processing