Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

High and Low Level engineering

Status
Not open for further replies.

Maverickmax

Advanced Member level 1
Joined
Dec 6, 2004
Messages
404
Helped
8
Reputation
16
Reaction score
3
Trophy points
1,298
Activity points
3,689
Hi

I keep hearing the words such as high level and low level electronic/software/control engineering crpping up in various documents and job adverts. Can you please kindly tell me what are they? What is the different between high and low level in terms of software, electronic and control engineering?

MM
 

In higher level whether its in software, electronics etc. there is a high level of abstraction from the inner workings of whatever you're working with. That is, the details are hidden, and you're using bigger "pieces" of components so to speak, to build whatever you're building. In software programming for example, low level programming would be the assembly while high level would be visual basic. When you program in assembly, you use low level (detailed) instructions and talk directly to the CPU while in Visual Basic there are ready made objects written and tested by others that you use to build a program. Same with electronics, if you're building something, a high level example would be to use arduinos, xbees and other ready made modules to do your job, while in low level you would design and build the circuits yourself.
Hope I helped, my English is not the best :)
 

For software development in an embedded system, low level can be the startup of the board and some basic board support software. The 'high' level can then be the application that uses the basic (low-level) libraries to interface the hardware.

Of course the intention is that the low-level provides similar functions for different boards, this way the application itself is isolated from the hardware itself (sometimes this is called 'hardware abstraction layer').

As I write this, this is of course not limited to embedded systems, a standard PC operating system like windooze or linux uses exactly the same principle.


High and low-level is also used with respect to modeling. For example you make a matlab script to investigate some algorithm. This is a high level impelmentation, but for the ASIC or fpga, you need to describe the flipflops on an lower level (RTL).

The big trick for the future is more and more to provide tools to automate the conversion from the higher levels models (MATLAB, UML, python) to the real implementation (c-code, VHDL, ...)
 

Status
Not open for further replies.

Similar threads

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top