Obioma Okehie, group lead ASIC/FPGA at V-Nova
Talk us through an average day in your role
State-of-the-art video compression technology is computationally demanding and poses a problem of cost, power and processing efficiency on compute resources. ASICs and FPGAs provide a solution to this problem by delivering a highly efficient platform capable of reducing cost, power usage and of course, providing accelerated computation to the video compression task at hand.
We start the process with an RFI (Request for information) or specification request, detailing the intended product/solution, closely followed by several technical meetings and discussions to finalise on an agreed system architecture.
The project is further broken down into smaller blocks that can be worked on by different engineers based on skill and proficiency. Each sub-block will generally involve creating a logic design/architecture via an interactive process with the R&D team and is a challenging but exciting stage in the design process as each engineer gets to squeeze those creative juices to come up with something truly remarkable, the result of which is a streamlined and hardware friendly algorithm as well as a BAM (bit accurate model) of the algorithm in question.
The next step is then to convert the design into HDL (Hardware Description Language, e.g Verilog, VHDL or SystemVerilog) which requires some skill in choosing the best techniques to achieve a certain function which would then be put through a verification process against the BAM created in the earlier design stage.
A key part of the job involves being able to perform a synthesis and timing analysis on the created circuit to ascertain its fmax (maximum clock frequency), logic resources and internal on-chip memory usage (amongst other metrics) followed by a placement and routing exercise to locate the transistor gates and macroblocks in optimal locations on the chip ensuring the design meets the required clock frequency. Once complete, the design is ready to be verified in ‘real life’ typically using FPGAs to create prototypes for testing and Demos.
Very little compares to the satisfaction of seeing the real-life pictures on screen being processed and delivered on a platform you just created with hard grafting over the last couple of months. Those technical meetings and discussions, the scribbles on the paper while on your way home on the train, and the eureka moments, which usually take place first thing after waking up from sleep, were all worth it!
How did you get started in the media industry?
On leaving university, fresh out of school and with bags of enthusiasm, I got a job with a well-known Japanese company and designed chipsets for the set-top-box industry, particularly the DVB-T market. I then transitioned to V-Nova where I got the chance to lead a talented team in developing the latest and greatest video compression technology on the FPGA platform.
What training did you have before entering the industry?
After migrating to the UK in the mid ’90s, I attained a GNVQ advanced engineering degree at the South Thames College in Wandsworth before going into undergraduate education to study communications systems engineering at the University of Westminster in London. These courses provided a sound foundation to take on the knowledge provided by the on-the-job training received while working on design projects.
Why do you enjoy working in the industry?
At age 10 (or so) having dismantled my Donkey Kong hand-held game only to find some rubber pads and a ‘black-dot’ on a board, I was hooked. I wanted to be the one to create such things. I enjoy working in the ASIC industry because it allows the expression of the creative mind. Simply put, if you can dream it then it’s possible!
What piece of advice would you offer someone looking to explore a role similar to yours?
Having ascertained you have a ‘passion for the creative’ then, first and foremost, train yourself on the fundamentals of digital design, and get engaged in design projects and challenges while at school. Explore and experiment with different forms of coding languages (Verilog, VHDL, Python, C/C++, Octave/Matlab) to gain some entry-level proficiency in each, then look for a role that offers the use and extension of the knowledge you have gained so far. Finally, find your creative flames and don’t be fearful of trying out new things or techniques.