Software Simulation and Functional models - Full time

(UK) Cambridge, UK
Engineering – Software Engineering /
Full-time /
On-site
We are working on software to improve the RISC-V ecosystem and help hardware engineers build great RISC-V based systems.

Great software simulation environments can help improve/expedite hardware design decisions and supercharge software development. We are building world-class RISC-V simulation environments that run quickly, scale to new hardware changes, and reflect detailed performance characteristics of upcoming hardware.

You will be learning technical and organizational skills from industry veterans: how to write performant and readable code; how to structure and communicate projects, ideas, and progress; how to work effectively with the Open Source community.

We are big proponents of Open Source and Free software and contribute back our improvements to all the great projects we use.

Responsibilities

    • Create system simulation models for the purpose of verification, performance analysis, and software development.
    • Adding new features to QEMU, GEM5, Spike, Sail, or other modeling environments.
    • Provide reference model and data for RTL design and verification
    • Contribute to verification environment, test cases, and debugging
    • Collaborate cross-functionally with Silicon design, debug, and other teams across the company.

Requirements

    • C or C++ experience required
    • Rust experience is not necessary, but a plus.
    • Expertise in creating Virtual Prototype of SoC or Subsystems
    • Experience in using modeling tools for performance analysis or hardware/software co-simulation.
    • Knowledge of VM and emulation environments (Qemu, GEM5, Spike, Sail) is a plus. 
    • Excellent skills in problem-solving, written and verbal communication, excellent organization skills, and highly self-motivated.
    • Ability to work well in a team and be productive under aggressive schedules.
Education and Experience
Ph.D., Master’s Degree, or Bachelor’s Degree in the technical subject area.