On Wed, Aug 8, 2012 at 10:38 AM, Richard Herveille
<[email protected]> wrote:
> 2) No conditional execution of instructions. Nice if you're making a small 
> controller (or ARM7 clone), but not for a new architecture. Anything new 
> should have the possibility to run Out-Of-Order execution, with branch 
> prediction, and register renaming.

I'm inclined to agree here, a heavily predicated instruction set is
probably not the path for or2k.
I wouldn't mind a conditional move though, it's fairly simple to
implement, not very resource hungry
and it has some (although relatively small) benefits on simple pipelines.
I know that it might be hurtful on more complex out-of-order, register renaming
implementations with good branch prediction when executing it
(i.e. the good branch prediction makes the conditional branch a win over
the conditional move due to missed instruction reordering opportunities),
but are there implementation considerations here too?
I mean, is it more cumbersome to implement a conditional move on a
o-o-o implementation?

>Conditional instructions also make multiple unit implementations (i.e. 
>multiple integer/floating point/load-store units) much more difficult.

Interesting, although I'm not sure I understand why. Care to elaborate?

Stefan
_______________________________________________
OpenRISC mailing list
[email protected]
http://lists.openrisc.net/listinfo/openrisc

Reply via email to