Take the following from config.ini file, my understanding is here we
defined 2 function units, both of them can execute IntMult and IntDiv
type of instructions, and opLat defines how many ticks need to execute
that instruction. Please correct me if my understanding is wrong.
My confusion comes from the meaning of issueLat. Does it define the
latence from dispatch to issue? From my understanding about O3, after
instruction decoding/ renaming, if operands are ready, instruction can
be issued for execution. So that delay from dispatch to issue should not
be constant, which depends on the number of ready instructions and the
available execution units. Can anybody give me some hints regarding gem5
implementation of the o3 scheduler part? Really appreciate for any help.
[system.cpu.fuPool.FUList1]
type=FUDesc
children=opList0 opList1
count=2
opList=system.cpu.fuPool.FUList1.opList0 system.cpu.fuPool.FUList1.opList1
[system.cpu.fuPool.FUList1.opList0]
type=OpDesc
issueLat=1
opClass=IntMult
opLat=3
[system.cpu.fuPool.FUList1.opList1]
type=OpDesc
issueLat=12
opClass=IntDiv
opLat=12
_______________________________________________
gem5-users mailing list
[email protected]
http://m5sim.org/cgi-bin/mailman/listinfo/gem5-users