Slashdot Mirror


Software/Hardware FPGA Dev Board that runs Linux

bforsse writes "The ML300 allows engineers to develop hardware with HDL synthesis/simulation and software with standard GNU tools. The entire system is implemented inside one FPGA with an integrated IBM PPC processor. The board comes with all the peripherals that a standard motherboard or laptop has and then some. It currently ships with MontaVista Linux, a number of other linux flavors and OSs are in the pipeline. Maybe this new merging of the hardware and software worlds will settle some of the religious wars between hw and sw engineers?...ok, maybe not."

11 of 208 comments (clear)

  1. funny... by jda487 · · Score: 5, Funny

    ...the term 'engineer' is used very loosely when you are refering to software engineers...

    1. Re:funny... by WhaDaYaKnow · · Score: 4, Interesting

      ...the term 'engineer' is used very loosely when you are refering to software engineers...

      Well that's what hardware engineers think when the software engineer disagrees to install MS-DOS 3.3 to test the hardware. ;-)

      Seriously though, I've been through two board bringups, both Intel Architecture.

      The first board was considered 'done' by the hardware guys, after it booted DOS. I told them that that was not really a test, and sure enough months (and numerous patch wires) later we finally were able to use _all_ the features on the board and boot Linux and Win95.

      On the second board I was most impressed with the software tools hardware guys used. NOT! Although the board was more or less up and running I found a couple of places where transmits were connected to transmits and receives to receives. I asked why the schematic capture tools didn't catch such obvious mistakes. I know the software can, but quite honestly, all the software used for hardware design feels like it was written by, uh, hardware guys. :-O

      Seriously though, the software tools that hardware engineers use leave a lot to be desired (I mean, the last board I worked on was in 2002 and they used a DOS based program to do the layout for peet's sake)

      In defense of the hardware engineer though, he'd use symbols provided by the manufacturer and they, for some reason, could not be bothered to indicated the type of signal a pin has properly (e.g. input, output, bidir, etc..)

      Until today I never understand why they'd risk the change of having to do a new rev of a board vs the cost of spending a few minutes to create the symbols properly.

      Then again, I've seen software 'engineers' do the same stupid stuff. ;-)

    2. Re:funny... by anubi · · Score: 5, Insightful
      Seriously though, the software tools that hardware engineers use leave a lot to be desired (I mean, the last board I worked on was in 2002 and they used a DOS based program to do the layout for peet's sake)

      I work in circuit design all the time, and I use DOS based tools for schematic, PCB layout, and circuit analysis (spice). Why?

      Most of the stuff I do links to stuff I have done before. I have no trouble with my DOS tools re-opening files say 10 years old. I also know that I will be able to see my files 10 years from now if I play my cards right and do *not* "upgrade".

      Processors change. Although my schematic capture program requires an 8088 or better, both the PCB layout and circuit analyzer require at least an 80386. As processors changed, I simply copied the files to a directory on the new machine and they run. No "installation" or registry entries, authorization codes, or the like. They just run.

      The libraries on all of the programs are user configurable. As any new parts come out, I simply enter the configuration into the library.

      No user authentication. These programs were coded in a day where there was not all this emphasis on piracy - I am free to move these programs around to any machine I get my hands on. And because the family of machines I use all run the exact same software, the files can be read/modified/written on any machine without need of version controls. It was common in those days to buy a "site license".

      The programs are quite small. The schematic editor, along with all its libraries, and a good sized project's worth of files will all fit on a 1.4 Megabyte bootable floppy! The spice analyzer requires 1 floppy, and the PCB layout program requires three floppies. None of the programs require any sort of "installation", per se. Just make a subdirectory for them, copy them over, and run the appropriate .exe file and start work.

      But the part I like best is that I intimately understand what these programs are doing. If something goes amiss somewhere, I know where to look. Their file structures are pretty simple; if something goes amiss, I can usually patch it with a hexadecimal file editor.

      If I want the file in another format, its usually not all that difficult to pull up the C++ compiler and code a little file converter.

      The schematic editor and spice analyzer are wide open to debuggers, but the people who made the PCB editor got crafty and made theirs hard to debug- just thank goodness they coded it well and there was only one instance where their program needed debugging. ( For those of you who have ever had to use what passes for technical support, you may find the time better spent learning how to fix it yourself.) But this was five years ago.. today fixing it yourself is illegal in many cases as a result of the congresscritters foisting DMCA on us.

      I know its fashionable for me to say I run the latest systems. If the later systems actually gave me better results, I would gladly switch, but all I see out there is I would be throwing away a trusted and faithful system to get more problems than I could shake my proverbial stick at.

      My take on this is that my tools are precisely that: tools. It took me 12 years of education before I could even emit a coherent sentence in English. It took me 5 years in front of a keyboard before I typed halfway worth a damm. What I am trying to say is that although hardware and software complexity has grown by leaps and bounds, I have not. It still takes me a helluva long time to learn how to use this stuff. If I spent all this time learning how to play a piano fluently, I feel foolish going onto stage with a clarinet. My job is not learning new tools all the time, its applying what I know to get a job done. Would you want a seasoned old mechanic using his grandpa's wrench on your car, or somebody with the latest 200HP pneumatic tool seating the oil-drain plug? ( I use that as an example because they did it to me... that car never stopped leaking oil once they improperly used that power wrench on my car.)

      If what I am doing is bad, I guess it won't matter much - as this is my last decade I think I will be in the job force. This grandpa is about ready for pasture.

      --
      "Prove all things; hold fast that which is good." [KJV: I Thessalonians 5:21]

  2. As an electrical engineer, I know that... by Anonymous Coward · · Score: 5, Funny

    VHDL is a tool of terror! Especially when put in the hands of those lunix cyberterrorists! These terrorists and their sympathizers are an affront to American liberty, justice, and equality for all non-Muslims. I strongly urge the Right Honourable Prime Minister George Williamson Bush, Junior to pass binding legislation which would put an end to these un-American activities.

    P.S. I have similar views on the 3rd world clone chip manufacturer, AMD.

  3. Yeah, sure. by modecx · · Score: 5, Funny

    The board comes with all the peripherals that a standard motherboard or laptop has and then some.

    With a $6k price tag, it should come with a high class hooker.

    --
    Constitutional rights may be respected, repealed, or modified; but they must never be ignored.
  4. Not quite for the masses by dlbowm · · Score: 4, Insightful

    This looks interesting, but way too expensive to break down any barriers in the short term. Actually, being hardware (ASIC) designer, many of the embedded software guys know their hardware as well as the designers. Some, however, need their hands held every step of the way and can't understand why we put all those damned interrupt capabilities in there. Just makes the software harder to write!
    I'd love to see something like this out in the market in a lower price range. It's great to have GNU software tools to write code inexpensively, and to have hardware as well would really be fun and useful. Sharing cool hardware accelerator HDL with others would be great. I've used Icarus recently and it is becoming quite a useable open source alternative to vcs, verilog xl, nc verilog, etc.

  5. The V2Pro's are very cool parts by nweaver · · Score: 4, Informative

    EG, the XC2VP7 which is used in the core of that board has a PowerPC (>250 MHz), 8 SERDESes which can speak Gb ethernet with optical transievers (among other things), about 100 Kb of RAM, and 11,000 4-LUTs and flip-flops.

    Xilinx promises that at the end of the year, in suitable quantities (>25,000), they will be $100/each.

    --
    Test your net with Netalyzr
  6. Re:VHDL by dlbowm · · Score: 5, Informative

    Icarus (http://www.icarus.com/eda/verilog/) is a competent Verilog (not VHDL) open source simulator. It even has some support for sythesizing to some FPGA libraries.
    Verilog is more common than VHDL in the US, so this is the only open source HDL tool I've used. Primarily, we are still slaves to Synopsis and Cadence though.

  7. Re:What can you do with it. by anonymous+cupboard · · Score: 4, Informative
    I don't think there is a single 'HOWTO' on the subject, but essentially an FPGA is a chip with a large array of simple logic gates that may be interconnected in a programmable way. Tools exist to simulate and compile logic expressions into a form where they can be downloaded into an FPGA as a gate interconnection matrix. Once the FPGA has been programmed, it then will execute the logic function.

    As with software, a lot of modules exist (mostly quite expensive) for logic blocks up to and including microprocessor cores. Rather than having a chip with a single function, it is possible to squeeze multiple functions upto the limits imposed by the gate count.

    FPGAs can be reprogrammable, or programmable once only. There is a often fusable link inside that once blown prevents reprogramming or designs to be read out.

    If you are producing quantity, then you can go from an FPGA component to a gate array which is programmed by a photographic mask during manufacture. The mask is prepared from the same program that created the FPGA. The setup costs are high, but once you talk about big numbers of chips, the component becomes significantly cheaper than an FPGA and often better performing.

  8. Re:I prefer hardwired hardware by kinnell · · Score: 5, Insightful

    Using an FPGA does not in any way require "weird driver CDs". Nor do they prevent the hardware developers from implementing clean well defined, standard interfaces. In fact hardware implemented in an FPGA is no different from the users point of view from hardware implemented any other way, or from embedded software running on a micro-controller for that matter.

    If your USB peripherals didn't work properly, its because they were poorly designed. This has nothing to do with the choice of using an FPGA to implement the interface.

    To say that hardware engineers are immitating the mistakes of software engineers is ridiculous, (although obviously some are making the same mistakes). Is it therefore perfectly acceptable for software engineers to implement poorly designed interfacesand neglect testing and quality control? I don't think so, but perhaps we have become numb to this issue. Bad engineering is bad engineering. The choice of using FPGAs for an emerging standard is good engineering, because if the standard changes before maturing the hardware does not then become instantly obsolete. This is why FPGAs are popular in mobile telecoms base stations, and rightly so. Being able to upgrade hardware is a good thing. Releasing an immature design is bad, both in hardware and software.

    --
    If I seem short sighted, it is because I stand on the shoulders of midgets
  9. Hardware/Software convergence - the real thing by kinnell · · Score: 4, Interesting

    The xilinx parts are for embedded systems, and have no real benefits for your average PC user (hence they can market them them for $$$).

    Look here for genuinely cool FPGA technology. They use transputer based technology to implement parallel algorithms in, well, parallel. The demos are very impressive - real time raytracing @50MHz anyone?

    --
    If I seem short sighted, it is because I stand on the shoulders of midgets