Dismiss
InnovationQ will be updated on Sunday, Oct. 22, from 10am ET - noon. You may experience brief service interruptions during that time.
Browse Prior Art Database

Bi-Endian Support Hardware in a PowerPC System

IP.com Disclosure Number: IPCOM000115139D
Original Publication Date: 1995-Mar-01
Included in the Prior Art Database: 2005-Mar-30
Document File: 6 page(s) / 139K

Publishing Venue

IBM

Related People

Bui, HQ: AUTHOR [+7]

Abstract

Disclosed is a means to enable PowerPC* systems to function when processing code written in either Big-Endian (most significant byte first) or Little-Endian (least significant byte first) format.

This text was extracted from an ASCII text file.
This is the abbreviated version, containing approximately 52% of the total text.

Bi-Endian Support Hardware in a PowerPC System

      Disclosed is a means to enable PowerPC* systems to function
when processing code written in either Big-Endian (most significant
byte first) or Little-Endian (least significant byte first) format.

      The desktop PowerPC system must operate with operating systems
that utilize Little-Endian (LE) byte significance.  For example, the
ported Windows NT** operating system operates with LE data, even
though it utilizes PowerPC instructions.  The PowerPC system must
also emulate LE application code.

      The system must also operate with Big-Endian (BE) operating
systems and BE applications, such as the AIX* operating system and
applications.

      The PowerPC 601* chip utilized in the desktop system was
designed primarily for BE mode.  It assumes that the significance of
memory is BE.  When it emulates LE code, it generates an effective
address as the LE code would generate, but it thinks that the memory
is stored with BE significance.  Therefore, it "munges" the three
low-order address bits (7->0, 6->1,...0->7), for example, a 1-byte
transfer, when it makes a data request.  Note that the data must show
up on the byte lane requested in either BE or LE mode (i.e., if it
asks for byte 0 in either mode then byte lane 0 must be used for the
data transfer).

      An architectural decision was made early in the PowerPC system
design to store the data in the system memory in whatever Endian mode
that the machine was operating in (i.e., the byte significance in
memory is BE in BE mode an...