Embedded Systems Conference
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


Most Recent Comments
Top Comments of the Week
Like Us on Facebook

Datasheets.com Parts Search

185 million searchable parts
(please enter a part number or hit search to begin)
EE Life
Frankenstein's Fix, Teardowns, Sideshows, Design Contests, Reader Content & More
Max Maxfield

ESC Boston 2015 Sneak Peek! Embedded Systems That Glow in the Dark
Max Maxfield
Post a comment
Some time ago, I asked my mom what she knew about radiation. She replied that she didn't know much about it at all; all she did know was that she didn't want to be in the same room as ...

Chris Wiltz, Managing Editor, Design News

10 Greatest Hoaxes in the History of Engineering
Chris Wiltz, Managing Editor, Design News
5 comments
You'll probably be reading your fair share of fake headlines on April 1, but phony tech news - both for scams and humor - aren't anything new. The history of science and technology is rife ...

Bernard Cole

A Book For All Reasons
Bernard Cole
3 comments
Robert Oshana's recent book "Software Engineering for Embedded Systems (Newnes/Elsevier)," written and edited with Mark Kraeling, is a 'book for all reasons.' At almost 1,200 pages, it ...

latest comment mjlinden Thanks for your input!
Martin Rowe

Leonard Nimoy, We'll Miss you
Martin Rowe
5 comments
Like many of you, I was saddened to hear the news of Leonard Nimoy's death. His Star Trek character Mr. Spock was an inspiration to many of us who entered technical fields.

Special Video Section
After a four-year absence, Infineon returns to Mobile World ...
A laptop’s 65-watt adapter can be made 6 times smaller and ...
An industry network should have device and data security at ...
The LTC2975 is a four-channel PMBus Power System Manager ...
In this video, a new high speed CMOS output comparator ...
The LT8640 is a 42V, 5A synchronous step-down regulator ...
The LTC2000 high-speed DAC has low noise and excellent ...
How do you protect the load and ensure output continues to ...
General-purpose DACs have applications in instrumentation, ...
Linear Technology demonstrates its latest measurement ...
10:29
Demos from Maxim Integrated at Electronica 2014 show ...
Bosch CEO Stefan Finkbeiner shows off latest combo and ...
STMicroelectronics demoed this simple gesture control ...
Keysight shows you what signals lurk in real-time at 510MHz ...
TE Connectivity's clear-plastic, full-size model car shows ...
Why culture makes Linear Tech a winner.
Recently formed Architects of Modern Power consortium ...
Specially modified Corvette C7 Stingray responds to ex Indy ...
Avago’s ACPL-K30T is the first solid-state driver qualified ...
NXP launches its line of multi-gate, multifunction, ...
Radio
LATEST ARCHIVED BROADCAST
EE Times Senior Technical Editor Martin Rowe will interview EMC engineer Kenneth Wyatt.
Flash Poll