I am happy to discover a lot of pragmatic comments in the discussion.
But I also remark some religious belief popping up now and than. It is of course very good to believe in a brighter future and this will of course definitly happen.
The discussion of the search of a higher level GUI / schematics / HDL / you name it design entry system in this thread is interesting.
Because designing circuits at the basic schematics level is too complex, and there seems to be an impression that writing Verilog/VHDL (RTL Synthesis) is apparently too low level, there is a desire for something better.
@BuGless when I read your name: "bugless" I think of designs without bugs. This also reminds me of the large academic research community in formal methods (in software), but also in hardware. Your initial question in this thread gave me the impression reminded me of students searching for a good thesis topic in these areas to make the next quantum leap in design representation and methodology.
More than 30 years of research has been dedicated to the "holy grail" of the next level design representation and synthesis, beyond what is currently available in RTL Synthesis (like the standard Quartus II and comparable tools). The aim being to start simply form algorithms described in high level languages C, C++, Java, LISP, Java, or graphics representation ... and automatically generate the hardware. This has been termed by many different names like high-level synthesis, architectural synthesis, behavioral synthesis, ESL (Electronic System Level) etc...
For an overview of the state of the art of 22 years ago you could refer to the paper:
m.c. mcfarland, a.c. parker, r. camposano, tutorial on high-level synthesis, proc. 25th design automation conference, pp.330-336, june 1988, california (
http://homepages.cae.wisc.edu/~ece734/references/tutorialhls.pdf)
which already included nice prototypes that make a next step in comparison to what is available in the current RTL synthesis tools like they are available in Quartus-II, Design Compiler, LeonardoSpectrum, Xilinx ISE etc...
The aim of these tools is to start from a high level algorithm described in a formal representation and to generate an architecture (not directly gates!). The architecture consist of data path operators (ALUs, multipliers, functional units, square root operators, register files etc etc...) interconnected with dedicated bus structures. So depending on the amount of arithmetic that you are requiring in your algorithm and the frequency at which they are expected to be used in your algorithm, given the capabilities of your hardware implementation technology, these tools aim to generate dedicated architectures for your application. This can be with optimization constraints such as cheapest, fastest, lowest power etc...
Given such dedicated data path architecture the algorithm has to be executed on this architecture by generating a schedule, a sequence in time how all of the processors/data path operators are sequencing and cooperating together. From the datapath and the schedule controllers can be generated. The output of such high level synthesis could be Verilog/VHDL code as input to regular RTL Synthesis (like e.g. Quartus).
Besides academic tools also several commercial tools have been made available. Synopys Behavioral Compiler being one of the most publicized. Although several companies have seriously investigated the use of such high level tools, I have not seen adoption in real industrial design flows.
Most of the examples where beautiful tradeoffs between hardware usage and thoughput are demonstrated are regular designs such as FFTs, DFTs, correllators, convolutions etc... But these things are, given insight in the problem, also not that difficult for designers to directly code in RTL. Directly translating algorithms from C into hardware require much more insight in the problem at hand to implement it in an efficient way, and up till now I have the impression that inteligen human beings, still do a lot better than tools in this respect. Design cleverness and design intention is not always easily discoverable from whatever C-code that is acceptable on every Von-Neumann machine.
Is all of this work of more than three decades useless? I would say no. Useful aspects of this research has found application in e.g. in Quartus tools such as C2H and also DSP-Builder. These tools allow you to make a tradeoff between hardware utilization and throughput. DSP-Builder also provides a Matlab Simulink design entry.
For those interested in experimenting with high-level / behavioral / architectural synthesis. The GAUT tool (
http://lab-sticc.fr/www-gaut/ ) from Université de Bretagne Sud is a free open-source high-level synthesis tool that starts from (a subset of C) and generated VHDL RTL level code, also for Altera FPGAs.
So far my 3 cents...