Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Can eieio PowerPC instruction be used on MPC5566?

1 view
Skip to first unread message

jani

unread,
Apr 7, 2008, 12:48:00 PM4/7/08
to
Hi,

We have been using PowerPC eieio(Enforce-In-Order Execution of I/O)
assembly language instruction on Freescale MPC500 Family
Microcontrollers.

Can we use this instruction on Freescale MPC5500 Family Microcontrollers,
for example MPC5566? If yes, do we need to modify any registers to make
this instruction work?

thanks.

Didi

unread,
Apr 7, 2008, 1:00:51 PM4/7/08
to

It is mandatory to the architecture, so yes, you can use it.
On some implementations (like the 603e) it is in effect a NOP, because
the
core does not do reordering anyway. But including it will guarantee
code portability
between platforms so it is a good idea.
You do not have to alter any registers to use it nor will it have any
direct effect on
any registers.

Dimiter

------------------------------------------------------
Dimiter Popoff Transgalactic Instruments

http://www.tgi-sci.com
------------------------------------------------------
http://www.flickr.com/photos/didi_tgi/sets/72157600228621276/

David Brown

unread,
Apr 8, 2008, 2:56:56 AM4/8/08
to
Didi wrote:
> jani wrote:
>> Hi,
>>
>> We have been using PowerPC eieio(Enforce-In-Order Execution of I/O)
>> assembly language instruction on Freescale MPC500 Family
>> Microcontrollers.
>>
>> Can we use this instruction on Freescale MPC5500 Family Microcontrollers,
>> for example MPC5566? If yes, do we need to modify any registers to make
>> this instruction work?
>>
>> thanks.
>
> It is mandatory to the architecture, so yes, you can use it.
> On some implementations (like the 603e) it is in effect a NOP, because
> the
> core does not do reordering anyway. But including it will guarantee
> code portability
> between platforms so it is a good idea.
> You do not have to alter any registers to use it nor will it have any
> direct effect on
> any registers.
>

I've always thought that "eieio" was the most musical opcode of any cpu.
Do you think IBM picked the name first, then tried to figure out a
plausible sounding effect for the instruction?

jani

unread,
Apr 8, 2008, 10:07:20 AM4/8/08
to

I think there is no eieio instruction in MPC5566.
Check pages 3-20 and 3-21 of the e200z6 core reference manual.

http://www.freescale.com/files/32bit...RM.pdf?fsrch=1

There is no eieio instruction listed in the list of instructions sorted
alphabetically.

Didi

unread,
Apr 8, 2008, 11:12:05 AM4/8/08
to
jani wrote:
> ....

> I think there is no eieio instruction in MPC5566.
> Check pages 3-20 and 3-21 of the e200z6 core reference manual.
>
> http://www.freescale.com/files/32bit...RM.pdf?fsrch=1
>
> There is no eieio instruction listed in the list of instructions sorted
> alphabetically.

The e500/e200 core does indeed treat eieio a bit differently, they
call it
"MBAR" there. The opcode is the same, and there is a HID register bit
to switch the function of the eieio between traditional and
e200/500 core like indeed. Using it wherever you would have used it
formerly is still a good idea, though.

Dimiter

------------------------------------------------------
Dimiter Popoff Transgalactic Instruments

Oroginal message: http://groups.google.com/group/comp.arch.embedded/msg/67e0dbb5c4fe74a5?dmode=source

Didi

unread,
Apr 8, 2008, 11:22:49 AM4/8/08
to
David Brown wrote:
> ...

> I've always thought that "eieio" was the most musical opcode of any cpu.
> Do you think IBM picked the name first, then tried to figure out a
> plausible sounding effect for the instruction?

No idea what the guy at IBM did, but I know how I make abbreviations.
I got enough training on that during the up to 6 characters times of
old
Motorola assemblers; I still tend to make labels that short, although
they can be longer. If something memorable, funny, or too ugly
sounding
to be memorized on the spot comes to mind, I just do not waste time
and I use it...
I also like the eieio name, does not need a second look at it to be
remembered
(unlike many of the PPC instructions from the architecture, the
assembler
in that form is not really usable for anything larger than a page or
so).
The 6809 syntax used to call "SEX" the sign extend opcode - not bad,
hits
you by surprise and here I still remember it after all these years.

Dimiter

------------------------------------------------------
Dimiter Popoff Transgalactic Instruments

Original message: http://groups.google.com/group/comp.arch.embedded/msg/65e6f66494d92f99?dmode=source

42Bastian Schick

unread,
Apr 9, 2008, 1:28:17 AM4/9/08
to
On Tue, 8 Apr 2008 08:22:49 -0700 (PDT), Didi <d...@tgi-sci.com> wrote:

>David Brown wrote:
>> ...
>> I've always thought that "eieio" was the most musical opcode of any cpu.
>> Do you think IBM picked the name first, then tried to figure out a
>> plausible sounding effect for the instruction?
>

>The 6809 syntax used to call "SEX" the sign extend opcode - not bad,
>hits
>you by surprise and here I still remember it after all these years.


Ok, going off-topic:
The Atari Jaguar CPU had nice a opcode :
sharq (shift arithmetic right quick).

BTW: Not only the "a label has max. 6 characters" influenced a lot.
Also the good 8+3 filenames ;-)
(I'd say 99% of my source files,still are 8+3 :-)

Wasn't it the ancient masm which allowed an arbitrary length for the
labels, but just took the first 8 into account: It did cost me some
nightly hours.
--
42Bastian
Do not email to bast...@yahoo.com, it's a spam-only account :-)
Use <same-name>@monlynx.de instead !

0 new messages