![Intel IXP2400 Скачать руководство пользователя страница 192](http://html1.mh-extra.com/html/intel/ixp2400/ixp2400_user-manual_2071795192.webp)
192
Development Tools User’s Guide
Intel
®
IXP2400/IXP2800 Network Processors
Assembler
The .uc file contains three types of elements: microwords, directives, and comments. Microwords
consist of an opcode and arguments and generate a microword in the .list file. Directives pass
information either to the preprocessor, Assembler, or to downstream components (e.g., the Linker)
and generally do not generate microwords. Comments are ignored in the assembly process.
The Assembler performs the following functions in converting the .uc file to a .list file:
•
Checks microcode restrictions.
•
Resolves symbolic register names to physical locations.
•
Performs optimizations (see
).
•
Resolves label addresses.
•
Translates symbolic opcodes into bit patterns.
4.1.3
Case Sensitivity
The microcode file is case insensitive, while the command line arguments are case sensitive.
4.1.4
Assembler Optimizations
The assembler optimizer performs the following optimzations:
•
It will move instructions down to fill defer shadows for instructions that support the defer
token.
•
It will remove unnecessary VNOPs.
•
It will move instructions down to replace VNOPs that cannot be removed.
For more information, please see the
Intel
®
IXP2400 /IXP2800 Network Processor Programmer’s
Reference Manual
.
4.1.5
Processor Type and Revision
Over time, network processors will be released in different types and revisions with different
features. Microcode written to take advantage of a particular processor type or revision will fail if it
is run on the wrong processor.
To deal with this issue, the user can specify a type and range of revisions for which they want their
microcode assembled. This is done using the -
ixp2400, -ixp2800, -ixp2xxx,
-REVISION_MIN,
and
-REVISION_MAX
command line options. For simplicity, the
-
REVISION
option can be used to set the minimum and maximum to the same value. These options
will target the assembly to a particular type and revision of processor. Several predefined
preprocessor symbols will be defined according to type and revision.
For more information on the predefined symbols and on writing version specific microcode, please
see the
Intel
®
IXP2400 /IXP2800 Network Processor Programmer’s Reference Manual
.