Breaking News
Comments
Newest First | Oldest First | Threaded View
<<   <   Page 2 / 2
KarlS
User Rank
Rookie
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
Rookie
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
Rookie
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


Flash Poll
EE Life
Frankenstein's Fix, Teardowns, Sideshows, Design Contests, Reader Content & More
Max Maxfield

Fist Bumps & the Zombie Apocalypse
Max Maxfield
Post a comment
Are you concerned about the possibility of a Zombie Apocalypse or do you scoff at the thought of such an eventuality? If the latter, would you be surprised to hear that the US military has ...

Rishabh N. Mahajani, High School Senior and Future Engineer

Future Engineers: Don’t 'Trip Up' on Your College Road Trip
Rishabh N. Mahajani, High School Senior and Future Engineer
8 comments
A future engineer shares his impressions of a recent tour of top schools and offers advice on making the most of the time-honored tradition of the college road trip.

Larry Desjardin

Engineers Should Study Finance: 5 Reasons Why
Larry Desjardin
41 comments
I'm a big proponent of engineers learning financial basics. Why? Because engineers are making decisions all the time, in multiple ways. Having a good financial understanding guides these ...

Karen Field

July Cartoon Caption Contest: Let's Talk Some Trash
Karen Field
151 comments
Steve Jobs allegedly got his start by dumpster diving with the Computer Club at Homestead High in the early 1970s.

Top Comments of the Week
Like Us on Facebook
EE Times on Twitter
EE Times Twitter Feed

Datasheets.com Parts Search

185 million searchable parts
(please enter a part number or hit search to begin)