FPGA DEVELOPER
Company description
Xiphos Systems Corporation, founded in 1996, is a vibrant and energetic company in the heart of
Montreal’s Plateau area. For over 20 years, we have pushed the envelope of what is possible in
NewSpace and secured the trust of various space agencies and space companies around the world. The industry has adopted our design approach and, as a result, we have been experiencing several years of rapid, steady growth and the trend is continuing!
Our vision is to migrate terrestrial computing and network communication techniques into space
environments. The company’s expertise in networked processors has evolved into in a line of high-performance, fault-tolerant flight control and sensor processing hardware and software solutions in wide and varied advanced space applications.
Xiphos’ primary markets are small satellites, space station applications, as well as lunar landers, rovers, and robotics. We have delivered our standard and custom products all over the world and have been essential to many successful space missions. With low power consumption, high processing power, enhanced flexibility, excellent robustness, and proven functions available off-the-shelf, our Q-cards are increasingly the preferred solution in the fast-growing field of NewSpace.
Role Description
In the role of FPGA Developer, you will play a critical role in deploying our electronics in multiple space applications. As a key member of a highly professional and supportive team, you will collaborate with our hardware and software experts to design, develop, and test FPGA logic implementations. By supporting both delivery of our standard products and for custom design projects, your FPGA logic will play critical roles in missions on Low Earth Orbit, in lunar applications, and beyond.
Main tasks
- Generate logic projects to support our embedded Q-card platforms
- Xilinx Vivado: Zynq, UltraScale+ and Versal
- Microsemi Libero: ProASIC3 and PolarFire
- Write physical and timing constraints, meet timings
- Propose and implement pinouts for new designs
- FPGA logic design
- Custom IP cores creation
- Define requirements, interfaces, ports, and parameters
- VHDL – Verilog coding
- Verification and simulation
- Vendor and third-party IP core integration
- High-Speed examples: PCIe, Gig Ethernet, JESD
- Low-Speed examples: UART, SPI, I2C
- Documentation
- Logic architecture, description, interfaces, clock and reset scheme, register map
- Automated Verification (simulation)
- Testbench creation, write self check unit tests, regression testing
- Firmware release support
- ProASIC3 QCard logic support
- Respond to customer inquiries for ProASIC3 custom logic
- FPGA IP Core library maintenance
- FPGA Infrastructure and automation
- Contribute to put in place a build farm
- Automate register interfaces
- Scripting: Project creation, automated pinouts, FPGA bistream generation
- Participate to the logic design and review process
- Support to the test team and customers’ de-bugging
- Custom IP cores creation
Nice to have experience with:
- Coding languages
- VHDL
- Verilog and System Verilog are good assets
- FPGA Development
- Xilinx Vivado
- Microsemi Libero an asset
- Vivado HLS an asset
- Simulation Tool (one among the list)
- Modelsim, Questa
- Active-HDL, Rivera Pro
- Vivado Simulator
- Good understanding of synchronous design
- Clocking, pipeline, clock domain crossing
- Clock enable, reset, back pressure
- FIFO
- PLL
- DSP knowledge is an asset
- Scripting Languages
- Python, TCL is an asset, Bash is an asset
- Revision Control
- GIT
- FPGA Interconnect Interfaces like AMBA AXI, AHB
- Debugging in the lab
- FPGA Physical design and optimisation. Timing closure
Your Interpersonal skills:
- Autonomous
- Show initiative
- Rigorous and methodological approaches
- Engaged
- Capacity to take responsibility
- Good analysis skills
Your background:
- Completed Bachelor’s or Master’s degree in Engineering, Computer Science, or other related area of study
- 5-7 years of experience working with FPGAs
- Bilingual (French, English)
- Must be able to obtain Canadian government security clearance (Canadian Controlled Goods Program)