Mill Computing, Inc. Forums The Mill Architecture Execution Reply To: Execution

LarryP
Participant
Post count: 78

Changes in the divide instructions — now native on Silver?

Greetings all,

According to the wiki: http://millcomputing.com/wiki/Instruction_Set/divu

Divide operations are no longer all emulated via loops around (less expensive in hardware) helper operations. This is an interesting departure from the strategy of emulating divide by looping around a helper function (that’s less hardware costly.)

It seemed to me that this might happen at some point, for some Mill core(s), but I expected that it wasn’t on the critical path, so am interested in why change it now?

In some ways, this reminds me of what seemed to happen with the ARM7 series of chips. The base ARM7 lacked hardware divide, and although there were software emulations, I think ARM licensed far more ARM7’s with hardware divide than without. I think system designers were worried about worst-case soft-divide performance, should the software guys intend on writing divide-heavy code. (Shame on them!)

Thoughts?