The need for speed

Some projects I have been working on in the past.


A DSP based analog stimulus and measurement instrument used in In-Circuit test equipment. It features dual analog stimulus of programmable frequency voltage and current. It's measurement capability reach down into the pico amps and nano volt ranges. As one can imagine this can be tricky when operating near "magnetically" active devices such as transformers  and solenoids.

To fully exploit the potential of the device careful attention had to be given to any and all potential sources of noise in it's vicinity. It was therefore not surprising that a large effort was spent on eradicating such gremlins, either by re-designing or relocating sub-systems to reduce the EMF smog  in it's environment.

On the hardware side I was responsible for the logic around the DSP, the communication interface to the PC and the memory arbitration between DSP and ADC, DAC and PC DMA, mainly the stuff that went into the three big Altera chips on the bottom of the picture.

On the Software side I was responsible for all of the DSP code as well as the PC side that communicated with it. Click here to lock at example code or take a look at the Hardware description langue used.


This board is the communication interface between the PC and the rest of the test and measurement system. It's a PCI based adapter that had to be compatible with a former ISA bus implementation, as well as with multiple target devices in addition to also provide improved throughput and reduced susceptibility to interference. The interface basically extends a local bus from the PCI to the instrumentation by providing an mapping of a  4K window into the target device's address space. 

I got stated on this board as a side project with the help of the HW engineering manager who insisted that I was a honorary HW engineer in spite my "software" job title. While he did all the hard stuff around the line terminations, cross talk, reflections and EMI I was doing all the fun parts with the digital design and schematic capture etc...  The logic was done in AHDL and I simulated the design  while the board was in layout and fab. This paid out in that the board had not a single HW ECO's and only some minor changes to the AHDL programming where necessary in the areas that could not be simulated beforehand.


This is an other PCI based communication and control adapter used in test and measurement systems. It is used to drive pin electrics so that the address and data bus of the PC can be used to communicate and simulate peripherals and CPUs in a testing environment The  card also features a JTAG engine for communication  via Boundary Scan and to program FLASH device in situ.

Lightning, Drag Race Starting Line Controller

This device is used in 1/4 mile drag racing and provides the racer with an accurate timing device to get the car rolling at exact the right time. It hooks up to a trigger switch that the racer operates and controls the cars throttle and brake. The aim is to get the car rolling at EXACTLY the moment when the green light appears on the starting light. To achieve this the racer triggers the device multiple times during the starting sequence when the pre starting lights count down to the green. Since the timing of the starting light count down is know the human reaction and the vehicles inertia factor can be removed by subtracting a know reaction time for the particular racer and vehicle involved.

This device is using an 8051 type of MCU and the programming is done exclusively in assembler.  I did extensive rework on the SW of this device including redoing the user interface (keypad and LCD) as well a adding features and removing bugs.  Later I worked on the HW design of a new version of the product where I got t do the schematic, Spice sim and layout of the board.  I hear the new design sold very well !