For embedded systems, the highest performance levels are not always needed....

In summary: Thisallows for the use of processors which can be totally implemented by logic synthesis techniques. These synthesised processors can be implemented in a much shorter amount of time, giving quicker time-to-market.The processors that are "totally implemented by logic synthesis techniques" are sometimes called soft microprocessor cores. They're basically just processors that are implemented in an FPGA or other hardware, without any actual silicon being manufactured. This is a huge advantage, because it allows for much faster time to market for these systems.
  • #1
PainterGuy
940
70
Hi,

I need to clarify few points about the text quoted below. I'd appreciate it if you could help me with the queries.

Soft Microprocessor Cores
For embedded systems, the highest performance levels are often not needed or desired due to the power consumption requirements. This allows for the use of processors which can be totally implemented by logic synthesis techniques. These synthesised processors can be implemented in a much shorter amount of time, giving quicker time-to-market.
Source: Computer Applications to Library By Kole Lambert, Page #169

Question 1:
It says, "For embedded systems, the highest performance levels are often not needed or desired...".

Don't embedded systems need the highest performance level since they need to address the real time scenarios? For example, look at an embedded system for a sophisticated autonomous drone, doesn't the system need to be really fast? Yes, on the other hand, the embedded system used for a toaster, microwave etc., doesn't need to be fast and there is not much of performance requirement.

In my humble opinion, the mentioned statement is little vague. Do you agree?

Question 2:
Then, it says, "This allows for the use of processors which can be totally implemented by logic synthesis techniques..."

What are these synthesized processors? The ones implemented in an FPGA etc. using hardware description language (HDL)?

I don't think these days they design the processors using schematics. It is my understanding, in simple words, that these days the hardware engineers write the code and HDL converts the code into a schematic and then it's fabricated.
 
Technology news on Phys.org
  • #2
PainterGuy said:
Don't embedded systems need the highest performance level since they need to address the real time scenarios?
Embedded systems typically need to squeeze as much performance as they can out of the limited resources they have. But those resources are very limited compared to an ordinary desktop or laptop computer. That is what I think the article means by saying that the highest performance levels are often "not needed or desired": that the resources to get the kind of performance that is considered ordinary on a desktop or laptop computer simply aren't available because of the constraints on the embedded systems. So the software that runs on the systems has to be designed from the ground up without assuming that essentially unlimited performance resources (CPU speed, memory, etc.) are available if needed.
 
  • Like
Likes PainterGuy
  • #3
The performance required depends on the design requirements. Many embedded systems have very predictable and relatively simple requirements. So those don't need lots of processing power. Others, not so much. Embedded systems have the advantage of system designers that define tasks and their specific requirements. So they can be optimised more easily than the PC world, where you don't really know what the user will want tomorrow.
 
  • Like
Likes PainterGuy
  • #4
PeterDonis said:
So the software that runs on the systems has to be designed from the ground up without assuming that essentially unlimited performance resources (CPU speed, memory, etc.) are available if needed.

Thank you. I agree with you. Also, I think the word "often" plays an important role in that text.

For embedded systems, the highest performance levels are often not needed or desired
 
  • #5
Could anyone help me with Question 2?
 
  • #6
PainterGuy said:
Then, it says, "This allows for the use of processors which can be totally implemented by logic synthesis techniques..."

What are these synthesized processors? The ones implemented in an FPGA etc. using hardware description language (HDL)?
Yes, absolutely. You can program some pretty powerful processors in FPGAs and such. Smaller embedded systems will often use micro controller ICs that have other hardware built in that isn't easily programmable, like ADCs and such.

PainterGuy said:
I don't think these days they design the processors using schematics. It is my understanding, in simple words, that these days the hardware engineers write the code and HDL converts the code into a schematic and then it's fabricated.
Yes, schematics just don't work well for big digital designs.
 
  • Like
Likes PainterGuy
  • #7
DaveE said:
Yes, schematics just don't work well for big digital designs.

Thank you! I was further reading to clarify the point if modern mainstream processors are designed using HDL and I'm somewhat more confused now but I agree with you that some simple processors could be designed onto an FPGA etc. I have boldfaced the important parts; the confusing part is in red.

In 1985, as design shifted to VLSI, Gateway Design Automation introduced Verilog, and Intermetrics released the first completed version of the VHSIC Hardware Description Langauge (VHDL). VHDL was developed at the behest of the United States Department of Defense's VHSIC program, and was based on the Ada programming language, as well as on the experience gained with the earlier development of ISPS. Initially, Verilog and VHDL were used to document and simulate circuit designs already captured and described in another form (such as schematic files). HDL simulation enabled engineers to work at a higher level of abstraction than simulation at the schematic level, and thus increased design capacity from hundreds of transistors to thousands. In 1986, with the support of the U.S Department of Defense, VHDL was sponsored as an IEEE standard (IEEE Std 1076), and the first IEEE-standardized version of VHDL, IEEE Std 1076-1987, was approved in December 1987. Cadence Design Systems later acquired Gateway Design Automation for the rights to Verilog-XL, the HDL simulator that would become the de facto standard of Verilog simulators for the next decade.

The introduction of logic synthesis for HDLs pushed HDLs from the background into the foreground of digital design. Synthesis tools compiled HDL source files (written in a constrained format called RTL) into a manufacturable netlist description in terms of gates and transistors. Writing synthesizable RTL files required practice and discipline on the part of the designer; compared to a traditional schematic layout, synthesized RTL netlists were almost always larger in area and slower in performance. A circuit design from a skilled engineer, using labor-intensive schematic-capture/hand-layout, would almost always outperform its logically-synthesized equivalent, but the productivity advantage held by synthesis soon displaced digital schematic capture to exactly those areas that were problematic for RTL synthesis: extremely high-speed, low-power, or asynchronous circuitry.

Within a few years, VHDL and Verilog emerged as the dominant HDLs in the electronics industry, while older and less capable HDLs gradually disappeared from use. However, VHDL and Verilog share many of the same limitations, such as being unsuitable for analog or mixed-signal circuit simulation. Specialized HDLs (such as Confluence) were introduced with the explicit goal of fixing specific limitations of Verilog and VHDL, though none were ever intended to replace them.
Source: https://en.wikipedia.org/wiki/Hardware_description_language#History

Have the HDL driven synthesized designs (or, specifically processor designs) reached the same level of performance as the 'traditional' designs made as result of labor-intensive schematic-capture/hand-layout?
 
  • #8
PainterGuy said:
some simple processors could be designed onto an FPGA
Some really complex high performance ones too. But if you're Intel, that would be too expensive, so they'll make their own masks and such for the high volume stuff. The primary issue with 'programmable or not' is sales volume (i.e. amortizing NRE costs) and time to market. FPGAs would use more silicon (cost more) and be a bit less optimized in terms of speed and performance.
 
  • Like
Likes PainterGuy
  • #9
DaveE said:
But if you're Intel, that would be too expensive, so they'll make their own masks and such for the high volume stuff.

Thank you! So, it would be reasonable to say that companies such as Intel design their processors using HDL which is synthesized into a netlist for fabrication.
 

FAQ: For embedded systems, the highest performance levels are not always needed....

What are embedded systems?

Embedded systems are specialized computer systems designed to perform specific tasks or functions. They are typically small, low-powered devices that are integrated into larger systems or products.

Why are high performance levels not always needed for embedded systems?

Embedded systems are often used for simple or repetitive tasks that do not require a high level of performance. Additionally, high performance often comes at a higher cost and can lead to increased power consumption, which may not be necessary for the intended function of the embedded system.

Can embedded systems still perform complex tasks without high performance?

Yes, embedded systems can still perform complex tasks without high performance. They are designed to be efficient and optimized for their specific tasks, allowing them to perform complex functions with lower levels of performance compared to traditional computer systems.

Are there any advantages to using lower performance levels in embedded systems?

Yes, there are several advantages to using lower performance levels in embedded systems. This can include lower costs, reduced power consumption, and smaller form factors, making them more suitable for use in a variety of products and applications.

Are there any situations where high performance levels are necessary for embedded systems?

While high performance is not always needed for embedded systems, there may be certain situations where it is necessary. This could include applications that require real-time processing or those that involve complex calculations or data processing. In these cases, high performance can be achieved through specialized hardware or software optimizations.

Back
Top