From WikiChip
Editing macro-operation
Warning: You are not logged in. Your IP address will be publicly visible if you make any edits. If you log in or create an account, your edits will be attributed to your username, along with other benefits.
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
This page supports semantic in-text annotations (e.g. "[[Is specified as::World Heritage Site]]") to build structured and queryable content provided by Semantic MediaWiki. For a comprehensive description on how to use annotations or the #ask parser function, please have a look at the getting started, in-text annotation, or inline queries help pages.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
{{title|Macro-Operation (MOP)}} | {{title|Macro-Operation (MOP)}} | ||
'''Macro-Operation''' ('''Macro-Ops''' or '''MOP''') is a more complex version of a [[micro-operation]] as handled by the [[microprocessor]]. Macro-Operations have a number of slightly different meanings, depending on the [[microarchitecture]] and designers that's being discussed. | '''Macro-Operation''' ('''Macro-Ops''' or '''MOP''') is a more complex version of a [[micro-operation]] as handled by the [[microprocessor]]. Macro-Operations have a number of slightly different meanings, depending on the [[microarchitecture]] and designers that's being discussed. | ||
− | |||
− | |||
− | |||
== Nomenclature == | == Nomenclature == | ||
Line 10: | Line 7: | ||
* [[Intel]] refers to the variable-length [[x86]] instructions as ''macro-ops''. In their context, macro-operations are variable length and can be quite complex capable of performing multiple memory and arithmetic operations at once. In AMD's context, those are refered to as actual "[[x86-64|AMD64]] instructions". | * [[Intel]] refers to the variable-length [[x86]] instructions as ''macro-ops''. In their context, macro-operations are variable length and can be quite complex capable of performing multiple memory and arithmetic operations at once. In AMD's context, those are refered to as actual "[[x86-64|AMD64]] instructions". | ||
* [[AMD]] refers to the a more simplified fixed-length operation as ''macro-ops'' (sometimes also ''Complex-Op'' or ''COPs''). In their context, macro-operations are a fixed-length operation that may be composed of a memory operation and an arithmetic operation. For example, a single MOP can perform a read, modify, and write operation. Another way of describing MOPs is [[x86]] instructions that have undergone a number of transformations to make them fit into a more strict, but still complex, format. In Intel's context, no such concept exist. | * [[AMD]] refers to the a more simplified fixed-length operation as ''macro-ops'' (sometimes also ''Complex-Op'' or ''COPs''). In their context, macro-operations are a fixed-length operation that may be composed of a memory operation and an arithmetic operation. For example, a single MOP can perform a read, modify, and write operation. Another way of describing MOPs is [[x86]] instructions that have undergone a number of transformations to make them fit into a more strict, but still complex, format. In Intel's context, no such concept exist. | ||
− | * [[ARM Holdings|ARM]] refers to | + | * [[ARM Holdings|ARM]] refers to complex instructions that get decomposed into a number of [[µOPs]] that required a number of iterations through the pipeline ''multi-cycle instructions''. Some other complex instructions that get cracked into smaller µOPs can also considered macro-ops, however ARM doesn't explicitly use that term. |
== See also == | == See also == | ||
* [[macro-operation fusion]] | * [[macro-operation fusion]] | ||
* [[micro-operation]] | * [[micro-operation]] |