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
  • 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: Richard Herveille<richard@h...>
    Date: Wed Nov 22 14:16:03 CET 2006
    Subject: [oc] Suggested extension to wishbone bus
    Top

    It seems as though there isn't a lot of support for this extension.
    And thinking of it a bit more I'd have to agree. Splitting the bus into
    separate read/write sections is basically the same as adding 2 wishbone
    (read & write) interfaces on a core.

    What would really make sense, instead of a start-of-cycle, is to move to a
    pipelined bus. But then we run into patent issues with AMBA and CoreConnect.

    Richard


    -----Original Message-----
    From: cores-bounces@o... [mailto:cores-bounces@o...] On
    Behalf Of Robert Finc
    Sent: Wednesday, November 22, 2006 10:11 AM
    To: cores@o...
    Subject: Re: [oc] Suggested extension to wishbone bus

    Hi Richard,

    First, I must say the Wishbone bus works very well; I'm using it a lot.

    Suggestion:
    - A 'soc' - 'start of cycle' signal.

    As my own customization I added one signal ('soc' - start of cycle)
    which is output by a master, active during the first clock cycle of a bus
    access (first cycle of cyc_o). This made it a lot easier to build a shared
    memory interface (see below), because then the interface didn't need
    logic to detect when a fresh new access was occurring as opposed to a
    stale one.

    A while ago, I made a custom extension to the bus that does a similar
    kind of thing to separate read / write, although the extension was to
    split the bus into separate read/write request and read response
    busses. It improved performance tremendously, as there could then be
    multiple outstanding read requests on the bus from multiple masters,
    rather than have to wait for the ack to come back to complete the cycle.

    However, what I eventually realized was that the system needed an
    interface to shared resources (memory). Having built a shared memory
    interface, the Wishbone bus could be used without needing much
    extension.



    - 'advanced' versions of signals (signals available just prior to being
    registered for outputs) (eg cyc_nxt_o) .

    I've used advanced versions of signals occasionally in order to interface
    to things like block ram resources in the FPGA which have registered
    inputs. Without the advanced signal, an extra clock cycle is needed.
    Note that using advanced signals does have a negative performance
    impact though.


    hardware interrupt / exception lines
    signals indicating memory reservations / clearing / semaphores
    device present signals


    Duplexing looks like it could allow simulataneous write and read for
    semaphore operations.


    Robert



    ----- Original Message -----
    From: Richard Herveille<richard@h...>
    To:
    Date: Tue Nov 21 10:55:55 CET 2006
    Subject: [oc] Suggested extension to wishbone bus

    > Hi,
    >
    >
    >
    > I've been thinking about extending the Wishbone bus.
    >
    > The extension, called Wishbone Duplex, features separate read/write
    > sections;
    > wb_clk_i,
    > wb_rst_i,
    > wb_wcyc_i,
    > wb_wstb_i,
    > wb_wadr_i,
    > wb_wack_o,
    > wb_dat_i,
    > wb_rcyc_i,
    > wb_rstb_i,
    > wb_radr_i,
    > wb_rack_o,
    > wb_dat_o
    >
    >
    > As you can see 'wb_we_i' has been removed, as it's not required
    > anymore.
    > Wishbone Duplex is an extension to the Wishbone standard. A > Wishbone Duplex > core can be connected to a Wishbone Classic or Wishbone RevB.3 bus > using a > simple wrapper. > > Any ideas/suggestions? > > > Richard > > > > > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: attachment.html > > _______________________________________________ http://www.opencores.org/mailman/listinfo/cores

    ReferenceAuthor
    [oc] Suggested extension to wishbone busRobert Finc

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