2 1 6 Loop Based Dynamic Scheduling Example

Поделиться
HTML-код
  • Опубликовано: 25 окт 2024

Комментарии • 8

  • @sapirmelamed0
    @sapirmelamed0 5 лет назад +3

    First, thanks for sharing, it was really helpful. I think that there is a mistake in the second instruction DADDI R1, R1, #8 since there is only one CDB so we can't write to the CDB in the same cycle

    • @mhd-em6yt
      @mhd-em6yt 4 года назад

      no it is not in the same cycle

    • @manojkhatri6537
      @manojkhatri6537 2 года назад +1

      @@mhd-em6yt Its not 11th cycle for both CDB writes? Or the later one is stalled to 12th cycle?

    • @kookiekook7240
      @kookiekook7240 Год назад +2

      Yes, he made a mistake. The latter adddi should be stalled until the 12th cycle because of the structural hazards that will occur on CDB.

  • @canaDavid1
    @canaDavid1 Год назад

    Isn't it better to prioritise loads before stores? As the loads are a data dependency, but stores are not? In the first example, this would bring the CPI to 1.2. Or does the memory consistency model not allow this?

  • @bittervan1647
    @bittervan1647 2 года назад

    It seems that in the execution of memory access instructions, the latency of memory access is not taken into consideration? And isn't the CDB a bus, but not a register, hence there should be no extra cycle running write CDB stage? And the second DADDI may collide using CDB which is occupied by the previous L.D instruction.

  • @nehapande5996
    @nehapande5996 2 года назад

    why are we incrementing by 8 bytes here ?

    • @shramithsrinivas
      @shramithsrinivas 2 года назад +2

      because floating point variables are considered here and they are 8 bytes