Breaking News
Comments
Newest First | Oldest First | Threaded View
<<   <   Page 2 / 2
KarlS
User Rank
Author
re: ESL anyone?
KarlS   2/3/2011 6:41:09 PM
NO RATINGS
Hi, jnhong. Your reply is right on the mark. I would appreciate your thoughts on a project I am doing. The process is to parse C code and execute the statements directly in a new cpu architecture. A conventional compiler generates some form of intermediate code that is then turned into sequences of target cpu instructions that take many clock cycles to execute. With a highly overlapped design using multi-port Ram that can write a result and read the next 2 operands in one cycle, the number of cycles is closer to a custom RTL design. Also the hardware count is small so it becomes reasonable to have several dedicated to different tasks so the parallel operations increase overall performance without the complexity of multi-core. The concept can be extended to C++/OOP although the dependence on stack allocation and garbage collection becomes a bit of a concern. If procedural/abstract design is needed, then let's do it and not go through all the compiler complications. Thanks for any comments and your reply.

jnhong
User Rank
Author
re: ESL anyone?
jnhong   2/3/2011 2:50:38 PM
NO RATINGS
The author asks why ESL has not been adopted more widely in design. And then proceeds to show an example that proves exactly why. From page one: "ESL is ASIC or FPGA design and/or verification which leverages highly abstract software programming languages." From page two: "Learning to write code for efficient hardware using an ESL design language requires an understanding of what ESL compilers do." If designers need to know how yet another productivity tool works beneath the hood, why bother when they can just as quickly translate what's in their head into RTL? This explanation just adds yet another layer of complication to achieve the same task. There is an extra layer of automation to monitor and evaluate, and then the verification burden does not decrease anyway. In contrast, the advantage of an Object-Oriented language like C++ is it automates a vast amount of housekeeping duties that is normally utilized in worthwhile C programs. You don't need to obsessively follow what the compiler is doing, you just need to ensure the functionality is correct. The examples in this article show how futile ESL is because you need to rewrite your code until you hit the proper pattern that pleases the compiler. We've all been there. Until ESL compilers start doing the job of allowing highly abstract procedures to become very efficient implementations, then engineers will still need to count their bits and watch their wires. In that case, RTL is more direct and more transparent.

dcblack
User Rank
Author
re: ESL anyone?
dcblack   2/2/2011 3:03:18 PM
NO RATINGS
A mature ESL synthesis tool (also known as High Level Synthesis) would recognize all of these variant and provide several solutions from slow to fast, small to large. Modern language compilers can do these types of transforms. Think of it this way: If you can describe it methodically, then somebody can likely write compiler code to do it automatically. Still need a hardware savvy engineer to guide and evaluate the results, but initial coding can be simpler.

<<   <   Page 2 / 2


Datasheets.com Parts Search

185 million searchable parts
(please enter a part number or hit search to begin)
Like Us on Facebook
Special Video Section
LEDs are being used in current luxury model automotive ...
With design sizes expected to increase by 5X through 2020, ...
01:48
Linear Technology’s LT8330 and LT8331, two Low Quiescent ...
The quality and reliability of Mill-Max's two-piece ...
LED lighting is an important feature in today’s and future ...
05:27
The LT8602 has two high voltage buck regulators with an ...
05:18
Silego Technology’s highly versatile Mixed-signal GreenPAK ...
The quality and reliability of Mill-Max's two-piece ...
01:34
Why the multicopter? It has every thing in it. 58 of ...
Security is important in all parts of the IoT chain, ...
Infineon explains their philosophy and why the multicopter ...
The LTC4282 Hot SwapTM controller allows a board to be ...
This video highlights the Zynq® UltraScale+™ MPSoC, and sho...
Homeowners may soon be able to store the energy generated ...
The LTC®6363 is a low power, low noise, fully differential ...
See the Virtex® UltraScale+™ FPGA with 32.75G backplane ...
Vincent Ching, applications engineer at Avago Technologies, ...
The LT®6375 is a unity-gain difference amplifier which ...
The LTC®4015 is a complete synchronous buck controller/ ...
10:35
The LTC®2983 measures a wide variety of temperature sensors ...