1
\$\begingroup\$


I read about different parts of micro-processor like ALU, registers etc. all different digital parts. Are there any analog parts inside the processor?

\$\endgroup\$
  • 6
    \$\begingroup\$ Arguably, a microprocessor is entirely analog. "Digital" is a simplification applied to what are essentially all analog signals, albeit analog signals with defined thresholds. \$\endgroup\$ – Connor Wolf Aug 16 '14 at 2:56
  • 1
    \$\begingroup\$ Essentially what @ConnorWolf said BUT there are exceptions in some cases and perhaps in more cases than are widely made known. In the dim and earlish days of microprocessors there was the 8086 and it was ~!= the 600 pound gorilla of its day. A team set out to create an 80C86 CMOS version thereof. They succeeded but their subsequent implementation report made eye opening reading. They used all sorts of internal analog kluges to adjust timings and provide delays and probably a bit of essentially analog logic. Utterly astounding stuff. Hopefully this no longer happens. Hopefully. \$\endgroup\$ – Russell McMahon Aug 16 '14 at 4:08
  • \$\begingroup\$ @RussellMcMahon - I felt fairly confident saying I don't think that sort of stuff is done much these days, simply because the complexity of most modern stuff far exceeds the ability of people to keep track of at that level. Most current CPUs are developed in HDLs. There is probably some minor timing-tweaking - I'd actually be interested in knowing how much, and whether it's just by manipulating the HDL, or the actual layout. \$\endgroup\$ – Connor Wolf Aug 16 '14 at 5:16
  • \$\begingroup\$ @ConnorWolf I wasn't disagreeing with the overwhelming truth of what you said :-) - just noting there are some perverse and desperate people out there who will do anything to make something work :-). There was a fascinating 'fly on the wall' journalists account of the birth of the Data General Nova (IIRC) which had similar things happening and more. Memory says "The Ghost of a new machine". Googles .... Almost. Wow! Won a Pulitzer prize! "The Soul of a new machine". Data General Eclipse MV/8000. Published 1981. 33 years - I guess I'm allowed to slightly misremember the title at that remove ... \$\endgroup\$ – Russell McMahon Aug 16 '14 at 7:45
  • \$\begingroup\$ @ConnorWolf .... a very good read. Wikipedia - The Soul of a new machineand Chapter one here \$\endgroup\$ – Russell McMahon Aug 16 '14 at 7:47
8
\$\begingroup\$

This is a complex question, because what actually makes a part "digital" can have multiple definitions.

Fundamentally, reality is analog (at least at the scales which most microprocessors operate at). Therefore, you can make a coherent argument that there are not actually any digital microprocessors. "Digital" is a theoretical mechanism for simplifying the expression of analog systems where the analog voltages therein are (as much as possible) constrained to two states, each of which represent a boolean value.

This simplification makes it much easier for our puny human brains to contemplate complex systems, and much easier for people to write software to evaluate the behaviour of said complex systems.

However, if you are asking if any components inside most microprocessors operate outside this simplified view, the answer is generally no.

  • Some microprocessors have integrated ADCs (analog-digital converters), which by definition must operate at least partially outside of the digital simplification.
  • Some microprocessors also have DACs (Digital-analog converters), which are much the same as ADCs.
  • Some microprocessors have analog comparators that can be configured to act upon input analog signals.
  • Schmitt trigger input buffers are also partially analog.

Basically, at this point, the question is more, assuming you're asking about whether components inside a MCU operate outside of the digital simplification, the question then becomes "How do you define a microprocessor"? Fundamentally, the *CPU core( of almost all microprocessors is purely digital.

However, many, many microprocessors integrate on-die peripherals like the ones mentioned above that are very much "analog" devices, so you must ask if you are defining the entire integrated-circuit as the "microprocessor", or just the actual processing core, which may only be a small part of the actual processor's IC die.

\$\endgroup\$
  • \$\begingroup\$ Good answer. Further, every "digital" gate (of which a CPU contains millions) is inherently analog because it switches state when an input drops below a specified voltage or rises above a specified voltage, making it an analog comparator of sorts. \$\endgroup\$ – TDHofstetter Aug 16 '14 at 3:24
  • \$\begingroup\$ Also most processors contain a high impedance oscillator circuit for a clock. Arguably this feature is purely analog because it has no defined binary voltage thresholds necessary for operation. \$\endgroup\$ – user6972 Aug 16 '14 at 6:06
  • \$\begingroup\$ @user6972 - I wasn't trying to exhaustively list all the available analog peripherals, but you are correct. Also, PLLs are intrinsically analog as well. \$\endgroup\$ – Connor Wolf Aug 16 '14 at 6:42
  • \$\begingroup\$ @ConnorWolf I don't know. It's pretty easy to make a PLL all digital using zero crossings. Even the output can be a simple RC filter with a PWM control. More advanced control can be done with a ring oscillator and DPLL phase control. \$\endgroup\$ – user6972 Aug 16 '14 at 17:32
  • \$\begingroup\$ @user6972 - Your "digital" PLL has a analog RC filter in it. It's always going to need something analog somewhere. \$\endgroup\$ – Connor Wolf Aug 23 '14 at 4:25
1
\$\begingroup\$

I've reverse-engineered old microprocessor chips and there are some things that are more analog than digital. For instance, many chips (e.g. Z-80) implement register storage with a pair of inverters connected in a loop. To write a new value to the bit, a larger transistor "overpowers" the smaller inverter transistor, forcing the desired value into the bit. It's not just 1's and 0's, but the relative currents that matter here.

Reading a register value can be more analog than digital. For example, the 8085 uses a moderately complex differential amplifier to read register values.

Another analog circuit in some processors is the substrate bias generator, basically a charge pump to generate the desired substrate voltage without requiring another supply.

The 8008 microprocessor has an on-chip reset circuit that detects power-on. This circuit is analog, using a diode drop to set the voltage thresholds. (Most processors have a reset pin, but pins were scarce on the 8008 because Intel insisted on an 18-pin package.)

Pass-transistor latches are very common in microprocessors. This type of latch depends on the charge stored on the capacitance of an unconnected gate. You can think of it as digital, but it's more analog than regular gates.

The analog vs digital distinction becomes an issue when you're simulating a chip. If you can simulate everything digitally it's easier, but for some chips you need a more physics-based simulation that keeps track of the amount of charge moved around rather than just 1's and 0's. An example is when a circuit has transistors of different sizes and you need to determine the "winner".

A modern example of analog circuitry in a microprocessor is Intel's hardware random number generation. This circuit uses a metastable latch to generate bits from thermal noise. (The resulting bits are genuinely random, not pseudo-random.) An analog bias circuit ensures metastability.

\$\endgroup\$
  • \$\begingroup\$ Re the Z80 register design: most people would describe verilog as a language purely for describing digital circuits, yet it's perfectly possible to model this design in verilog, so I would say that this is an example of a digital design. The others are a little harder to justify as purely digital. \$\endgroup\$ – Jules Oct 13 '18 at 19:07
0
\$\begingroup\$

Is Micro-processor completely Digital?

it depends on your definition of "digital": any digital signal is actually represented in analog form.

traditionally, we don't pay much attention to that as it has limited practical implications.

Are there any analog parts inside the processor?

Yes. there are analog input circuitry; there are analog comparators; they are opamps; there are pgas, there are programmable current sources; there are adc, and they are dac, to list a few.

\$\endgroup\$
-2
\$\begingroup\$

As mentioned above, virtually all contemporary microprocessors and other "digital" ICs provide the users a digital abstraction. There is automated and tool-based design by the chip designers at the register transfer level. But ultimately the design gets down to not just analog circuitry (e.g., a transistor and a capacitor) but down to physics. Very dense circuits differentiate between a "1" and a "0" essentially by counting electrons.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.