LOGIN   :::   RECOVER PASS   :::   GET ACCOUNT    
Browse
  • Projects
  • Code (CVS)
  • Forums
  • News
  • Articles
  • Polls
  •  
    OpenCores
  • FAQ
  • CVS HowTo
  • Mission
  • Media
  • Tools
  • Advertise
  • Mirrors
  • Logos
  • Contact us
  • Find Resources
  • Job Opportunity
  •  
    Tools
  • Search
      
  • Download Cores (CVSGet)
  •  
    More
  • Wishbone
  • Perlilog
  • EDA tools
  • OpenTech CD
  •  
    Navigation: All forums > Cores > Message List > Message Post

    Message

    Reply | Reply all
    Date Prev | Date Next | Thread Prev | Thread Next Date Index | Thread Index

    From: Justin Young<fuzz22@i...>
    Date: Thu Jul 15 11:03:35 CEST 2004
    Subject: [oc] Why open processors are so much slower than commercial ones?
    Top
    Hi guys,

    I think you have answered your own question there Mikhail. We don't have
    access to the source code, which very much suggests that they have compiled
    it very specifically for that Spartan series.

    Similar to if you try to compile a matrix multiple program (for example)
    with the C compiler GCC, compared to by hand, you'll find that you get a
    HUGE markup in execution time doing it by your self. Compilers aren't very
    smart!!

    So I suggest that maybe they have closed to hand compiled the core, making
    sure all the blocks are laid out very cleverly to reduce clock delay and
    skew. Even though FPGA clock distribution is very intelligent these days, a
    compiler will never really beat a human taking the time do it.

    Also, if the source code was available, it really isn't uncommon for them to
    put a check in their compiler to look for the source code of the Microblaze
    and just output the standard fully optimized output.

    I've seen a similar thing done in standard software code also, many
    companies do bench marks on their processors using modified compilers that
    just output really really optimized code for their machines. Making their
    performance look better :-)

    Look fwd to hearing a response
    - Justin


    -----Original Message-----
    From: Mikhail Matusov [mailto:misoma@r...]
    Sent: Thursday, 15 July 2004 3:43 AM
    To: Michael Ayton; Discussion list about free open source IP cores
    Subject: Re: [oc] Why open processors are so much slower than commercial
    ones?


    On Wed, 14 Jul 2004 09:51:48 -0700
    "Michael Ayton" <mike_ayton@d...> wrote:

    MA>
    MA> Microblaze was talor made for Xinilx FPGA devices.... try targeting the
    MA> Microblaze to say an Altera device (probably not all that trivial) and
    see
    MA> if there is a difference :)

    Unfortunately, I can't try your experiment since I don't believe the
    MicroBlaze is available in source code.

    I understand the sarcasm, but let's try to be more specific, what are
    those architecture specific details used in MicroBlaze that make it run
    at least 2 times faster than anything in the open domain (probably 3-5
    times faster than most of the stuff )?

    I could understand if let's say multiplication in a CPU not targeted to
    a specific architecture was slower, since Xilinx has hardware
    multipliers, but what are the other features? Any FPGA has plenty of
    LUTs and FFs and I think these days we can count on having dual port
    memories as well...

    /Mikhail





     
    Copyright (c) 1999 OPENCORES.ORG. All rights reserved.