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 > Openrisc > Message List > Message Post

    Message

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

    From: michael scott<mike.scott@j...>
    Date: Thu Jul 21 11:59:23 CEST 2005
    Subject: [openrisc] MAC Instructions
    Top
    Hi Damjan,
    I forget to mention in my e-mail that I'm running the code
    from QMEM in order to get 16MegaMACs throughput at 16Mhz cpu clock

    Running code in WISHBONE memory (which in my case take 3 cycles)
    hides the problem as the multiplier pipeline always completes in time

    Interestingly, when executing l.div/l.ldivu in QMEM you can clearly
    see a stall for approx 32 cycles while the op completes

    I've attached some waveforms (zipped postcript)to show the effect

    If you look on the qm_rdata bus you can see the five mac instructions
    comprising altenating l.mac r2,r6 (0xc4023001) and l.mac r2,r7 (0xc4023801)
    the corresponing MAc operation is observed on mult_mac_result
    and follows the sequence 32,96,128,192,224 as expected by the code (also
    attached)
    However, when executing l.macrc r4 the mac pipline has only reached the
    value 128 -there are still two cycles to go.

    just before time 2696 us on the waveforms it can be seen that this
    'intermediate'
    value in copied to r4.

    I notice the line mac_stall_r is only high for 1 singe cycle. I belive it
    should
    high for a further two cycles for correct operation

    Hope this helps

    Regards

    Mike


    -------------- next part --------------
    A non-text attachment was scrubbed...
    Name: MacTest.S
    Type: application/octet-stream
    Size: 1615 bytes
    Desc: not available
    Url : openrisc/attachments/20050721/c4d1e004wave-0001.bin

    Follow upAuthor
    [openrisc] MAC InstructionsDamjan Lampret

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