Ignore:
Timestamp:
Oct 4, 2014, 3:18:01 PM (10 years ago)
Author:
alain
Message:

Introducing fixed format (X_WIDTH / Y_WIDTH / P_WIDTH) for processor index.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • soft/giet_vm/giet_boot/boot_entry.S

    r366 r427  
    4646
    4747    mfc0   k0,      CP0_PROCID
    48     andi   k0,      k0,     0x3FF   /* k0 <= proc_xyl                             */
    49     la     t7,      NB_PROCS_MAX    /* t7 <= NBPROCS                              */
    50     divu   k0,      t7
    51     mfhi   t1                       /* t1 <= lpid                                 */
    52     mflo   t2                       /* t2 <= cluster_xy                           */
    53     srl    t3,      t2,     4       /* t3 <= x coordinate                         */
    54     andi   t4,      t2,     0xF     /* t4 <= y coordinate                         */
    55     la     t6,      Y_SIZE          /* t6 <= Y_SIZE                               */
     48    andi   k0,      k0,     0xFFF             /* k0 <= proc_xyl                   */
     49    andi   t1,      k0,     ((1<<P_WIDTH)-1)  /* t1 <= lpid                       */
     50    srl    t2,      k0,     P_WIDTH           /* t2 <= cluster_xy                 */
     51    srl    t3,      t2,     Y_WIDTH           /* t3 <= x coordinate               */
     52    andi   t4,      t2,     ((1<<Y_WIDTH)-1)  /* t4 <= y coordinate               */
     53    la     t6,      Y_SIZE                    /* t6 <= Y_SIZE                     */
    5654    multu  t3,      t6
    5755    mflo   t5
    58     addu   t5,      t5,     t4      /* t5 <= cluster_id                           */
     56    addu   t5,      t5,     t4                /* t5 <= cluster_id                 */
     57    li     t7,      NB_PROCS_MAX
    5958    multu  t5,      t7
    6059    mflo   t0
    61     addu   t0,      t0,     t1      /* t0 <= proc_id                              */
     60    addu   t0,      t0,     t1                /* t0 <= proc_id                    */
    6261   
    6362
Note: See TracChangeset for help on using the changeset viewer.