.webp)
We design with Xilinx, Lattice Semiconductor, and Altera/Intel FPGA and CPLD product families;
We're "old school" ASM designers. Floorplanning one of the denser areas in a video FPGA. Things are packed tightly since we optimized for speed -- and short line lengths between macrocells. We've been designing Algorithmic State Machines since the days before CPLD's and FPGA's even existed. We've built up binary encoded and one-hot state machines from 7473 JK-flops, 7474 D-flops, and discrete logic gates, using hand-drawn bubble diagrams, state transition tables, and Karnaugh Map combinatorial logic reduction. We understand the concurrent nature of hardware description coding because we didn't start out as programmers of sequentially executing computer programming languages who later shifted gears into the HDL business - we're electrical engineers who've been designing hardware state machines from the beginning. And when somebody asks which line of code is running, we know what it means that the answer is, “all of them — all at once.”
We still use bubble diagrams, although everything else has been largely superseded by the advent of languages such as Verilog and VHDL, computer synthesis engines, and more complex (and more flexible) target chips. But these tools are no substitute for understanding what ultimately happens on the silicon. We write tight, clean code because we're always thinking, "How will this look at the 'register transfer' / 'flop-and-gate' level?"
And we know that problems caught in simulation are usually solved more rapidly than those caught later in the design cycle. We don't go into the lab to see what will happen. We go in knowing what will happen based on extensive source-level and post-synthesis/post-route simulations.
We write code that's as open and reusable as possible. We keep a number of IP modules we've pre-written and which we release under perpetual royalty-free usage terms when it makes sense for our customers to acquire IP that way. We don't believe in charging clients for reinventing wheels.
+1 (512) 246-9012
1-888-FOC-7924
info@focusembedded.com
Austin, TX 78727 USA