Embedded Image Capture System – Host Adapter Conversion
Client – medical imaging device manufacturer
Embedded software/firmware development
Windows kernel device driver and application software
- FPGA development
Our client had started a design upgrade of their video image capture subsystem. They were on a path to eliminate their custom PCIe host adapter card installed inside the main control computer and replace it with a USB 3.0 based control interface when the effort was put on hold. Several months later, AppliedLogix was brought on board to restart and complete the upgrade.
AppliedLogix needed to:
- Determine the state of the development when the project was halted.
- Analyze the design to understand what was unfinished and needed to be completed. This included:
- FPGA RTL
- embedded firmware
- driver software
- application software
- DDR3 external memory interface.
AppliedLogix assigned an engineer with significant experience designing across all of these disciplines to improve ramp-up and development efficiency for the client.
The DDR3 memory integration proved to be a challenging element. An initialization failure was occurring as the hard-macro within the FPGA attempted to calibrate the memory bus interface. The hard-macro provided no visibility into the details of the failure other than the “calibrated” signal not being asserted. There was no indication that the calibration had started and failed or simply never started.
AppliedLogix analyzed the design issues and applied incremental updates to increase the Customer’s confidence in the results observed along the way.
The approach taken was:
- Complete the USB 3.0 interface firmware
- Complete the WinUSB-based driver
- Update the application software
- Analyze and verify the image capture data path
- Diagnose and update the DDR3 interface
- Optimize the end-to-end video path performance (FPGA through application software)
- Eliminates the need for a custom PCIe adapter board – thereby lowering the system UMC and enabling a wide variety of Windows based PCs to act at the main system controller.
- Provides greater flexibility to support a wide range of MS Windows versions through the use of a WinUSB-based device driver.
This device is part of a revolutionary system delivering non-invasive, real-time imaging of human skin tissue at the cellular level. These unique capabilities enable scientists and physicians to characterize cellular structures that are otherwise invisible to the naked eye.
- USB controller multi-threaded pipeline state machine and firmware.
- Windows kernel device driver
- Application SW updates
- FPGA memory controller configuration updates