Talent CIRCUIT

Field-Programmable Gate Array Developer Scripting Expert

Written by Kent Smith | May 19, 2017

Nathan – FPGA Developer/Scripting Expert Available July 1, 2017

  • Writes/debugs Python based firmware test programs for a new device, including battery.
  • Implements both C and Python elliptical curve cryptographic routines and test bench for digital signatures to validate battery packs.
  • Responsible for the ROM contents on Veridian. Additionally responsible for the new Flash programming and erase routines for the customer.  Develops random test bench to exercise the Flash memory.
  • Wrote a Python emulator of the Veridian device.  The ARM cortex M0+ core was modelled along with RAM, ROM, FLASH, UART and other blocks.  The emulator reads the ELF file containing the binary code compiled by the Keil tools and provides a near clock accurate execution model of thatcode running on Veridian.  This enables the Veridian ROM image to be debugged in advance of Silicon.
  • Developed a flash emulation on a FPGA. Through a ROM based C program, emulates the Flash
  • API library to allow the Veridian customer to develop their firmware on a FPGA with confidence that it will function on the silicon when it is finished.
  • Developed a Verilog AMS generator to interface the digital and analog portions of Veridian together. This enabled the design team to simulate concurrently the digital and analog design databases.
  • Developed a Verilog generator that instantiates the level shifters between the different power domains on Veridian. The Python programs reads a Excel spreadsheet to get a template and then generates a Verilog netlists as per that template.