Architecture Design Services
Mistakes in the design phase are the most costly to rectify. Take advantage of our experience working on both sides of the hardware/software divide, to make sure your design meets its functionality, performance and cost objectives. Architecture design decisions touch all aspects of your system - from PCB design and layout to in-the-field maintenance and upgrade.
How can PetaLogix reduce your risk and improve your time to market?
- Board review - avoid costly board spins with our expert review. Memory interfaces, off-chip peripherals - getting it right is no easy task. Make sure your design will be ready for Embedded Linux, from Day 1.
- System-on-Chip design - developing system hardware architectures to maximise performance. If custom IP cores will form part of your solution, make sure you choose the right system architecture to avoid costly bottlenecks
- Linux driver architecture - make the most of embedded Linux by working with the kernel, not against it. If this is your first project to make use of Linux on FPGAs, avoid common pitfalls that will cause design problems down the track.
- Library and application stack design - leverage in-house and open source software libraries and applications. Once of the benefits of Embedded Linux is the huge pool of free software. We'll help you choose the right packages to minimise your development effort and time.
- Upgrade and maintenance - make the correct design decisions upfront to give your product essential capabilities such as in-the-field software and hardware upgrades
We recommend our clients undergo an architecture design review prior to detailed support or development engagements, to make sure the right decisions have been made upfront, and avoid costly redesign later on.
If you've already started your design, don't worry. It's never too late - we're happy to undertake a Design Review for you. Our experience is that a fresh set of eyes can make all the difference.
Getting the hardware/software balance right
One of the unique things about an FPGA platform is the ability to trade hardware and software design decisions. For teams coming from a more conventional fixed SoC background where the hardware is set in stone, this can take some getting used to.
Consider a system required to monitor streams of data samples, looking for particular patterns or thresholds in the incoming data. A conventional approach might be to bring all the data through the software, to test against the patterns and thresholds. While easy to prototype, performance may be a challenge at higher data rates.
A purely 'hardware' solution to this problem might also be difficult. Perhaps your system is to report over an ethernet or web-based interface - certainly not something to be done in a strictly hardware design.
A hybrid approach can offer the best of both worlds - a custom hardware interface to the data, with programmable patterns and thresholds. In this way, the "heavy lifting" is done in hardware, and only the relevant values of interest make their way to the software stack, from where they can be easily served up over a network using standard open source software packages.
The lesson here is that it takes experience and know-how to choose the right place to partition your design. It's this experience that PetaLogix brings to Architecture Design.