Should we be using Matlab,Labview and fancy graphic tools to help us rapid prototype designs or should we all program in assembler cos it's tough and less people can do it.
Programming Languages
Started by ●March 11, 2013
Reply by ●March 11, 20132013-03-11
On Mon, 11 Mar 2013 09:01:59 -0700 (PDT) gyansorova@gmail.com wrote:> Should we be using Matlab,Labview and fancy graphic tools to help us rapid prototype designs or should we all program in assembler cos it's tough and less people can do it.Matlab, Labview and fancy graphical tools can allow someone who understands what they're doing at a sufficient level to implement it in assembler to prototype things, sure. But they also allow the ignorant and incompetent just enough feeling of success that they can fail to realize the degree to which they are ignorant and incompetent. Bad bricks: bad wall. Prettier mortar doesn't help. -- Rob Gaddi, Highland Technology -- www.highlandtechnology.com Email address domain is currently out of order. See above to fix.
Reply by ●March 11, 20132013-03-11
On Mon, 11 Mar 2013 09:30:57 -0700, Rob Gaddi wrote:> On Mon, 11 Mar 2013 09:01:59 -0700 (PDT) gyansorova@gmail.com wrote: > >> Should we be using Matlab,Labview and fancy graphic tools to help us >> rapid prototype designs or should we all program in assembler cos it's >> tough and less people can do it. > > Matlab, Labview and fancy graphical tools can allow someone who > understands what they're doing at a sufficient level to implement it in > assembler to prototype things, sure. But they also allow the ignorant > and incompetent just enough feeling of success that they can fail to > realize the degree to which they are ignorant and incompetent. > > Bad bricks: bad wall. Prettier mortar doesn't help.In theory they should allow the slightly competent to build a lab queen that then needs my services to be whipped into shape to go out into the field. It doesn't happen as often as I'd like, though -- maybe I need to change how I advertise? -- My liberal friends think I'm a conservative kook. My conservative friends think I'm a liberal kook. Why am I not happy that they have found common ground? Tim Wescott, Communications, Control, Circuits & Software http://www.wescottdesign.com
Reply by ●March 11, 20132013-03-11
On Mon, 11 Mar 2013 09:30:57 -0700, Rob Gaddi wrote:> On Mon, 11 Mar 2013 09:01:59 -0700 (PDT) gyansorova@gmail.com wrote: > >> Should we be using Matlab,Labview and fancy graphic tools to help us >> rapid prototype designs or should we all program in assembler cos it's >> tough and less people can do it. > > Matlab, Labview and fancy graphical tools can allow someone who > understands what they're doing at a sufficient level to implement it in > assembler to prototype things, sure. But they also allow the ignorant > and incompetent just enough feeling of success that they can fail to > realize the degree to which they are ignorant and incompetent. > > Bad bricks: bad wall. Prettier mortar doesn't help.If you _do_ know your theory, however, it may work. It's been ages since I've tried to use Matlab for that sort of thing. In the past my experience with "wizards" has been that the people putting them together were either crippled because they dumbed it down enough so that the hackers could get some success early and as a consequence made it impossible for the experts to control the important parts, or the people writing the wizards were, themselves, not experts and never had the chance to smart it up before dumbing it down. Or, I'm just too damn picky. I already know how to implement algorithms around the peculiarities of C, C++ and assembly. Trying to implement those same algorithms around the peculiarities of some "Labview to C" converter means I have to _learn_ all those peculiarities, and then relearn them every time the version changes. And I always seem to be using processors at the limits of their speed capabilities, which in a DSP application means that there's going to be some assembly-language programming involved no matter what, unless the optimizing compiler can turn an inner-product loop into a hardware loop with MAC. -- My liberal friends think I'm a conservative kook. My conservative friends think I'm a liberal kook. Why am I not happy that they have found common ground? Tim Wescott, Communications, Control, Circuits & Software http://www.wescottdesign.com
Reply by ●March 11, 20132013-03-11
On Mon, 11 Mar 2013 09:01:59 -0700, gyansorova wrote:> Should we be using Matlab,Labview and fancy graphic tools to help us > rapid prototype designs or should we all program in assembler cos it's > tough and less people can do it.That's like asking if we should move two-ton blocks of granite using robotic trucks or if we should get 10000 Hebrew slaves to pull them around with ropes. You've intentionally left off a bunch of middle ground. If you actually know what you're doing and you know that Labview is properly implement the algorithms that you specify, and if you have enough extra horsepower and memory to absorb whatever inefficiencies Matlab's code generation introduces, then you should go ahead and use it. In my experience, though, if you know enough to use Labview to generate your code and you know enough to insure that it's safe, then you know enough to write the code yourself -- and the bulk of it will be in something sensible, like C or C++ (or Ada, hack retch gag). The most critical work will be done in assembly, where the algorithm as implemented on that particular chip does not fit well with the C virtual machine. (It's been a long time since I've implemented DSP algorithms on DSPs -- mine always seem to end up on FPGAs or general-purpose processors. So I've heard rumors as far back as a decade ago that if you write your dot product code correctly that Code Composter would recognize this and generate assembly code for a hardware loop and a MAC. This was not my experience with the first generation of Code Composter for the TMS320F2812 -- but it'd be a joy to write code using a compiler that _understood_). -- My liberal friends think I'm a conservative kook. My conservative friends think I'm a liberal kook. Why am I not happy that they have found common ground? Tim Wescott, Communications, Control, Circuits & Software http://www.wescottdesign.com
Reply by ●March 11, 20132013-03-11
On 3/11/13 1:34 PM, Tim Wescott wrote:> On Mon, 11 Mar 2013 09:01:59 -0700, gyansorova wrote: > >> Should we be using Matlab,Labview and fancy graphic tools to help us >> rapid prototype designs or should we all program in assembler cos it's >> tough and less people can do it. > > That's like asking if we should move two-ton blocks of granite using > robotic trucks or if we should get 10000 Hebrew slaves to pull them > around with ropes. You've intentionally left off a bunch of middle > ground.seems like a sorta "loaded question", don't it? i surely would want to know that my really cool algorithm doesn't work IN PRINCIPLE before i would go through all the bother to code it up in C or even more so, some low-level assembly language. like this other thread about "Whitening in the Frequency Domain". i ain't never done it, but i speculated on an algorithm and if i were to try it (like it's assigned to me), i think i would rather work out the theoretical kinks in MATLAB before struggling with all of the problems we get in coding it up for real. or maybe my speculated idea is just full of crap. if i implement it on the target DSP or CPU and it works like crap, i might have trouble deciding that my alg is crap or that there are some issues regarding word size and quantization or something like that which makes it work like crap. but if i try it in MATLAB with double-precision floating values that do not saturate and do not have noticeable quantization error, and it *still* fails, i can't blame that on word size (unless i have some ridiculous alg where i am counting the number of Planck Lengths across the universe or something) -- r b-j rbj@audioimagination.com "Imagination is more important than knowledge."
Reply by ●March 11, 20132013-03-11
On Tuesday, March 12, 2013 5:01:59 AM UTC+13, gyans...@gmail.com wrote:> Should we be using Matlab,Labview and fancy graphic tools to help us rapid prototype designs or should we all program in assembler cos it's tough and less people can do it.I think sometime you experienced design engineers who spend their life doing nothing else forget that there are levels of design. Design for a money making product or a one-off research tool to study some form of special process or other. For example, the FPGA LabView compact Rio was used in the large haldron collider and you need to ask yourselves why they didn't program that in c or assembler. I would say that for mass production you guys always get it right, but for one-offs for research spare a thought for the rest of us mortals.
Reply by ●March 11, 20132013-03-11
On 3/11/13 2:27 PM, gyansorova@gmail.com wrote:> On Tuesday, March 12, 2013 5:01:59 AM UTC+13, gyans...@gmail.com wrote: >> Should we be using Matlab,Labview and fancy graphic tools to help us rapid prototype designs or should we all program in assembler cos it's tough and less people can do it. > > I think sometime you experienced design engineers who spend their life doing nothing else forget that there are levels of design. Design for a money making product or a one-off research tool to study some form of special process or other. For example, the FPGA LabView compact Rio was used in the large haldron collider and you need to ask yourselves why they didn't program that in c or assembler. > I would say that for mass production you guys always get it right, but for one-offs for research spare a thought for the rest of us mortals.this concept of focussing in on the coding specifics and not the broad picture was something i got to present a timely (at least timely for me) presentation about at an AES convention some 4.5 years ago. http://www.aes.org/events/125/workshops/session.cfm?code=3DW5 i was just before fired from a place where they still do not know the meaning of modular coding and commenting code. big huge system coded flat like we did with Fortran in 1965. lotsa nummy spaghetti. -- r b-j rbj@audioimagination.com "Imagination is more important than knowledge."
Reply by ●March 11, 20132013-03-11
On 3/11/2013 11:01 AM, gyansorova@gmail.com wrote:> Should we be using Matlab,Labview and fancy graphic tools to help us > rapid prototype designs or should we all program in assembler cos > it's tough and less people can do it. >Cheer up. Provided a good modern typewriter, even a monkey would eventually type in something sensible. VLV
Reply by ●March 11, 20132013-03-11
Tim Wescott <tim@seemywebsite.com> wrote:> On Mon, 11 Mar 2013 09:01:59 -0700, gyansorova wrote:>> Should we be using Matlab,Labview and fancy graphic tools to help us >> rapid prototype designs or should we all program in assembler cos it's >> tough and less people can do it.> That's like asking if we should move two-ton blocks of granite using > robotic trucks or if we should get 10000 Hebrew slaves to pull them > around with ropes. You've intentionally left off a bunch of middle > ground.It seems pretty rare that anything should be 100% assembler these days, though maybe for some embedded systems with the most limited memory. Most often, you can write the most time sensitive parts in assembler, and call from C, or some other language. As for Matlab, and other interpreter based systems, many let you call a C or Fortran routine to speed up parts that would otherwise be too slow. As above, you could even call assembler routines from there! -- glen






