Staff CPU Verification Engineer
Come break new ground in design verification. This is a rare opportunity to join the Chandler-based CPU design verification team, which is part of Arm's global CPU group. Our diverse engineering-centric group defines, designs, and validates Arm processor IP - the brains in billions of diverse electronic devices.
As a lead engineer here, you will a dedicated group of engineers responsible for verification of the next-generation Cortex-A or Cortex-M class CPU designs. In this role you will be able to push through the boundaries of your technical knowledge relating to leading-edge Arm processors.
As an expert on our diverse team of verification engineers, you take on the latest CPU microarchitecture design verification. You will be a part of a growing organization with a validated business model and a strong plan for continued future growth. Your team uses the latest tools and methodologies with an eye for innovation and creative problem solving.
What will I be accountable for?
Our team owns the design verification for one or more functional blocks, and we are responsible for the quality of delivery throughout all related engineering project phases. Including:
- Lead a high performing verification team to excellence
- Develop SystemVerilog UVM and/or formal verification for the block-level, functional verification of units
- Build and maintain detailed verification plans
- Generate and run test cases on logic simulation models
- Debug functional errors in the RTL model, using simulation tools, debug tools with an in-depth understanding of the architecture and RTL design
- Define and implement functional and statistical coverage, and improve the testbench to ensure coverage closure
Required Skills and Experience
- Bachelors or Master’s degree in Computer Science or Electrical/Computer Engineering, with a GPA of 3.0 or higher
- A minimum of 10 years of experience in pre-silicon verification
- CPU microarchitecture experience including knowledge of pipeline, fetch, issue, Load/Store, L2 cache and MMU
- Previous experience in verifying such units using simulation and/or formal verification methods
- Proven software engineering skills including understanding of object-oriented programming, data structures, and algorithms
- Experience with functional coverage driven verification methods
Nice to have skills and experience:
You bring proven CPU microarchitecture experience and you have passion for continuing to grow your expertise in CPU microarchitecture including both familiarity with and a curiosity about Branch prediction, instruction fetch, in-order or out-of-order execution, and advanced memory system.
- You have a deep understanding of SystemVerilog and UVM, and you know how they are used to build flexible and reusable testbenches
- You love sophisticated software engineering such as design patterns, profiling, unit testing, and programming in multiple languages
- You strive to achieve wining solutions
- You build positive relationships which are built upon mutual trust, open communication and sharing of information and success.
- You have a drive for continuous improvement through spotting opportunities and seeking the views of others
- You listen to different perspectives, evaluate, persuade and carefully shape your work to deliver impactful results
Hybrid Working at Arm
Arm’s hybrid approach to working is centred around flexibility, where we split our time between the office and other locations to get our work done. Within that framework, we empower groups and teams to resolve their own particular hybrid working pattern, depending on the work and the team’s needs. Details of what this means for each role will be shared upon application. In some cases, the flexibility we can offer is limited by local legal, regulatory, tax, or other considerations, and where this is the case, we will collaborate with you to find the best solution. Please talk to us to find out more about what this could look like for you.