← Back to jobs

3D Technologies LLC Logo
Embedded Software Engineer

3D Technologies LLC

 

Milpitas, CA, USA

Posted On: Just posted
Experience: 5+ years
Availability: Onsite
Openings: 1
Category: Embedded Software Engineer
Tenure: Contract - Corp-to-Corp
Related Jobs

No related jobs found

Description

We are seeking an expert Embedded Software / Firmware Contractor to design, implement, and optimize high-throughput multi-threaded software for embedded Linux on AMD Xilinx FPGA / MPSoC and RFSoc architectures (e.g., Zynq UltraScale+).
The contractor will be responsible for accelerating critical computational workloads (such as signal processing or array arithmetic) using ARM NEON SIMD instructions and interfacing custom C/C++ applications with hardware IP blocks in the FPGA logic. Scope of Work & Deliverables
High-Performance Multi-Threading: Architect and implement efficient C/C++ userspace applications utilizing POSIX threads (pthreads), thread isolation, CPU affinity, and lock-free synchronization routines to handle real-time streaming data on embedded Linux.
ARM NEON Optimization: Vectorize and optimize critical algorithmic loops using ARM NEON intrinsics and assembly to maximize SIMD throughput on ARM Cortex-A processor cores.
FPGA Hardware Integration: Develop robust software drivers/interfaces (e.g., Linux UIO, AXI DMA, memory-mapped registers) to exchange data between Linux software applications and custom IP blocks in the Xilinx Programmable Logic (PL).
Profiling & Performance Tuning: Utilize Linux profiling tools (perf, Valgrind, custom execution benchmarks) to diagnose bottlenecks, optimize cache usage, and ensure deterministic performance.
Technical Documentation & Code Hand-off: Deliver well-commented, productiongrade source code along with architectural notes, integration build scripts, and test procedures for internal engineering hand-off.

Required Technical Expertise:
Core Programming: Expert-level C for embedded Linux environments.
Vector Acceleration: Hands-on proficiency with ARM NEON SIMD intrinsics and assembly-level optimization techniques.
Xilinx SoC Platform: Demonstrated experience with Xilinx Zynq UltraScale+ MPSoC/RFSoC platforms (PetaLinux).
Hardware Interfacing: Deep understanding of AXI4, PCIe, AXI DMA engines, and Linux memory management (DMA-BUF, /dev/mem, UIO).
Multi-Threaded Systems: Solid background in concurrent programming, memory synchronization, and real-time POSIX scheduling.
Tooling: Expertise with GCC/Clang cross-compilation toolchains, GDB, Vivado / Vitis, CMake, and Git

Education

Bachelor's degree

Related Jobs

No related jobs found

← Back to jobs