feature article
Subscribe Now

When Programmers Rule the World

The Talent Pool Determines the Design

“Their talents did not quite run to scholarship.”

This was Susanna Clarke’s polite way of describing a pack of idiots. Or more charitably, people who were perhaps in over their heads. Swimming out of their depth, one might say.

We’ve all encountered this type of person at work. Conveniently, they often wear neckties so that we can spot them from a long way off. But even credentialed engineers can wade in over their heads, meddling in technical areas where their aptitude does not entirely correlate with their ambition.

The classic case is software guys messing around with hardware. Or is it the hardware weenies fiddling with software? I can never remember. Regardless, there’s definitely an Us-versus-Them dichotomy in most engineering departments. (And that’s not even counting the marketing dweebs, management bozos, purchasing drones, et al.) Hardware people stay on this side of the partition; software types stay over there. It is the natural order of things. It is written. So say we all.

Except… heresy is creeping into our little priesthood, my brothers. More and more, engineers are crossing over the line. You know, the line: The line that separates hardware from software. That separates real engineering (fill in your chosen specialty here) from pretend engineering (all others).

They’re not really firmware engineers—we’ve already defined that term to mean something else—but they’re definitely treading in an area somewhere between hardware and software. It’s… squishware.

I’m talking, of course, about configurable or software-defined hardware. FPGAs are the easiest example but they’re not really the appropriate one here. FPGAs are still designed largely by hardware designers using hardware-design tools. No, today’s engineer is “softer” than that. He’s designing, creating, and configuring hardware devices merely by programming, not writing RTL or drawing schematics. It’s point-and-click hardware design; configuration by the numbers. And it’s threatening to affect our productivity—by improving it.

Examples of this are Microsemi’s SmartFusion chips or Cypress Semiconductor’s pSOC. These are microcontrollers that are programmable in two senses: you program the on-chip CPU and you also “program” the on-chip peripherals to create the I/O mix and pinout you want. Specifically, both pSOC and SmartFusion allow you to create analog circuits just by programming and configuring. It’s like IKEA flat-pack furniture for circuit designers: just screw together the supplied pieces, no skill necessary. We’ll even provide the tool(s).

Programmable analog circuits? What’s the world coming to? Next thing you know, they’ll have cars without clutch pedals and coffee will cost $4.25. In a paper cup.

But this programmable-analog thing is catching on, and it’s largely because today’s young, fresh-faced engineers don’t know how to design analog circuitry. Oh, sure, there are some analog-qualified designers. I don’t mean to say they’re entirely extinct. It’s just that they’re vastly outnumbered by their peers who’ve been taught Java, binary arithmetic, and Shannon’s Law. That scarcity creates a market opportunity, and a handful of chip companies have responded by dumbing down the analog-design process.

Any old-school electrical engineer will tell you that even digital circuits are analog. Physics is all analog; we just choose to ignore those effects in most computer circuits. But as wireless connectivity and RF interfaces become de rigueur in embedded devices, we find ourselves coming face-to-face with the creepy world of analog electronics, whether we like it or not. And we are not amused. Our talents do not quite run to analog design.

We’re pretty good at programming, though. As a global group of talented technophiles, we tend to spawn more programmers than hardware engineers. Programming is easier to learn. It’s also cheaper to learn. Any kid can take up programming on his family PC or on the Web. In contrast, hardware engineering requires actual tools and lab equipment. Thus, we have a lot of self-taught programmers in addition to the traditionally trained ones coming out of universities.

Nothing wrong with that. It’s a normal market response to environmental conditions, and the semiconductor market is responding with an equal but opposite reaction: more programmable chips.

Programmability (or if you prefer, configurability) is also a useful response to Moore’s Law. With ever more transistors at our disposal, we need a way to consume them: a way that provides value. There’s no point in conserving a plentiful resource (transistors) at the expense of scarce resources (time and talent). So if chip companies can throw transistors at a problem and thereby make the chip easier to use, it’s a good tradeoff. And if said tradeoff appeals mostly to software developers instead of hardware developers, so much the better.

So configurable hardware is here to stay. Its presence may hasten the demise of “real” analog engineering, but most employers and universities don’t care. There will always be a dedicated cadre of engineers who truly understand low-level analog circuitry, but fewer developers will need to hire people with such talent. Instead, they’ll hire programmers, sit them down in front of configurable chips, and get their products to market that much faster.

In the meantime, we’re in a funny situation. Configurable chips like pSOC and SmartFusion are, well, chips. You hold them in your hand, they have mass, and they cast a shadow. But they’re programmed and defined primarily by programmers. So who decides which chip to use, the software team or the hardware team? Our customary us/them division of labor makes selecting these chips a bit tricky. The hardware guys might prefer Chip A while the software group wants Chip B. Who makes the call?

That’s a question for management. Who are probably in over their heads. 

10 thoughts on “When Programmers Rule the World”

  1. Ah, yes. This is the seductive idea that we do not have to know how it works, just how to work it. Similar to the idea that you do not have to know what you are managing, just how to manage.

    But you made a significant statement: “Physics is all analog (…)”. Many new, major applications have physics at their core. Examples are robotics, green power control (solar, etc., kilowatts to gigawatts) and hybrid automobiles. In these cases, the development and design is centered in physics. That is where the value is. The “analog” is not on the chip, it is distributed in the mechatronic system.

    Software for configurable logic (whether MCU, FPGA etc.) depends on standardized, stable hardware. If your product value add is centered in physics, the hardware keeps changing. You will have to keep up with the ongoing system hardware changes that use physics to increase performance and value.

    In physics based applications, software is no longer separate from the design. It is one component in the design, and typically not the most critical one. Physics and analog are key to a lot of the value provided. Programmers will need to learn the physics of the product applications to be able to do their jobs.

    “Real analog” as in on-chip analog circuitry may well decline to a maintenance level, as the analog designers move on to physical system design – where the money will be.

  2. Pingback: pax 3 end caps
  3. Pingback: Chat
  4. Pingback: online wiet kopen
  5. Pingback: Aws alkhazrajii

Leave a Reply

featured blogs
Jul 29, 2021
Circuit checks enable you to analyze typical design problems, such as high impedance nodes, leakage paths between power supplies, timing errors, power issues, connectivity problems, or extreme rise... [[ Click on the title to access the full blog on the Cadence Community sit...
Jul 29, 2021
Learn why SoC emulation is the next frontier for power system optimization, helping chip designers shift power verification left in the SoC design flow. The post Why Wait Days for Results? The Next Frontier for Power Verification appeared first on From Silicon To Software....
Jul 28, 2021
Here's a sticky problem. What if the entire Earth was instantaneously replaced with an equal volume of closely packed, but uncompressed blueberries?...
Jul 9, 2021
Do you have questions about using the Linux OS with FPGAs? Intel is holding another 'Ask an Expert' session and the topic is 'Using Linux with Intel® SoC FPGAs.' Come and ask our experts about the various Linux OS options available to use with the integrated Arm Cortex proc...

featured video

Accelerate Intelligent SLAM with DesignWare ARC EV Processor IP

Sponsored by Synopsys

Simultaneous localization and mapping (SLAM) algorithms build a map and determine location in the map at the same time. But how can you speed up the results? This demo shows how ARC EV processor IP with CNN engine accelerates KudanSLAM algorithms.

Click here for more information about DesignWare ARC EV Processors for Embedded Vision

featured paper

Configure the backup voltage in a reversible buck/boost regulator

Sponsored by Maxim Integrated

This application note looks at a reference circuit design using Maxim’s MAX38888, which provides a supercapacitor-based power backup in the absence of the system rail by discharging its stored charge. The backup voltage provided by the regulator from the super cap is 12.5% less than the system rail when the system rail is removed. This note explains how to maintain the backup voltage within 5% of the minimum SYS charge voltage.

Click to read more

featured chalk talk

How Trinamic's Stepper Motor Technologies Improve Your Application

Sponsored by Mouser Electronics and Maxim Integrated

Stepper motor control has come a long way in the past few years. New techniques can give greater control, smoother operation, greater torque, and better efficiency. In this episode of Chalk Talk, Amelia Dalton chats with Lars Jaskulski about Trinamic stepper solutions and how to take advantage of micro stepping, load measurement, and more.

Click here for more information about Trinamic TMCM-6110 6-Axis Stepper Motor Driver Board