Role Overview
The FPGA HW/SW Codesign Engineer will be responsible for developing and architecting hardware/software co-design solutions for FPGA-based acceleration targeting applications in networking, storage, automotive, aerospace, and AI/ML workloads. This role involves designing high-performance hardware acceleration engines, alongside embedded software solutions to create advanced computing platforms.
Company Overview
Advanced Micro Devices (AMD) is a prominent company in the technology sector, known for its innovative products that enhance computing experiences across various industries, including AI, data centers, and gaming.
Experience Level
This position requires a mid-career level of expertise in hardware and software design, particularly in FPGA technologies and embedded systems development.
Job Responsibilities
The key responsibilities for this role include:
- Engaging in all phases of the product development cycle from concept through to productization and support.
- Collaborating with hardware and firmware engineers to define and develop new features.
- Developing RTL logic using System Verilog/Verilog targeted at high-performance implementations.
- Creating firmware and low-level system software for ARM or RISC-V processor cores.
- Integrating custom IP with NoC and memory subsystems using AMD’s Vivado and Vitis tools.
- Conducting pre-silicon verification and emulation to confirm functional correctness.
- Leading post-silicon validation and debugging processes in the lab.
Job Requirements
Applicants should have the following qualifications:
- Hands-on experience with FPGA design and implementation.
- Expertise in SystemVerilog/Verilog and synchronous design methodologies.
- Strong programming skills in C/C++ for embedded systems, particularly on ARM or RISC-V architectures.
- Familiarity with industry protocols such as PCIe, AXI, DDR, and Ethernet.
- Knowledge of verification frameworks and debugging tools like ILAs and oscilloscopes.
- Skills in scripting languages including Python and Tcl for automation processes.
Education Requirements
A Bachelor’s or Master’s degree in Computer Engineering or Electrical Engineering is required for this position.