What are the responsibilities and job description for the FPGA Design Engineer position at Alignment Consulting and Engineering?
We are seeking a highly skilled FPGA Design Engineer to join our team. The ideal candidate will possess deep expertise in FPGA development, including interfaces to memory, AXI protocols, DMA configurations, and partial reconfiguration. Familiarity with AMD/Xilinx toolkits and embedded programming is a must. Experience with AWS F1 instances or AMD U55C platforms is a significant advantage in developing scalable, multi-tenant SATCOM solutions. This role involves implementing advanced FPGA-based designs, leveraging AWS F2 instances, and contributing to groundbreaking satellite communication waveform processing developments.
Key Responsibilities:
FPGA Design and Development
- Architect, design, and implement FPGA solutions, focusing on high-performance SATCOM systems.
- Develop and optimize FPGA interfaces, including memory controllers, AXI4/AXI4-Lite, and DMA configurations.
- Define and implement system-on-chip (SoC) architectures to maximize FPGA resource utilization, including logic cells, RAM, and DSPs.
- Perform floor planning, timing analysis, and power optimization for multi-waveform FPGA designs.
Partial Reconfiguration
- Design and implement dynamic partial reconfiguration solutions to enable multi-tenancy and efficient resource utilization.
- Utilize Xilinx Dynamic Function Exchange (DFX) to manage programmable regions within FPGA designs.
Toolchain and Platform Expertise
- Use AMD/Xilinx toolkits, including Vivado, Vitis, and Xilinx Runtime (XRT), for design, simulation, and debugging.
- Configure and integrate FPGA designs with AWS F1 instances or AMD U55C platforms.
Embedded Programming (Preferred)
- Develop firmware for embedded processors within FPGA platforms, such as ARM Cortex cores.
- Implement control, monitoring, and signal processing logic using embedded C or other appropriate languages.
Integration and Testing
- Develop test benches and perform simulation and on-hardware testing to validate FPGA designs.
- Debug and resolve issues related to timing, performance, and functionality.
- Integrate FPGA designs with other system components, including software and hardware modules.
- Develop and execute test plans to validate functionality, performance, and reliability.
Documentation and Collaboration
- Create detailed design documentation, including architecture diagrams, specifications, implementation guides, and test reports.
- Collaborate with cross-functional teams, including software engineers, hardware engineers, and project managers.
Qualifications:
Required:
- Bachelor's degree in Electrical Engineering, Computer Engineering, or a related field.
- 5 years of experience in FPGA design and implementation.
- Proficiency with memory interfaces, AXI protocols, DMA, and partial reconfiguration.
- Extensive experience with AMD/Xilinx toolkits (Vivado, Vitis, etc.).
- Strong understanding of FPGA programming languages such as Verilog, VHDL, or SystemVerilog.
- Familiarity with high-speed interfaces (e.g., PCIe, JESD204B) and AXI protocols.
Preferred:
- Master's degree or Ph.D. in Electrical Engineering, Computer Engineering, or a related field with deep understanding of DSP mathematics and operations
- Experience with AWS F1 instances or AMD U55C FPGA platforms.
- Proficiency in embedded programming (C/C ) for ARM-based systems.
- Familiarity with Python, MATLAB, or other system modeling and testing tools.
- Knowledge of high-performance computing and cloud integration.
- Understanding of SATCOM waveforms, particularly DVB-S2X.