[经验] NVMe与AHCI对比-Anatomy of the Interfaces

白丁   2015-12-23 22:54 楼主
ge-newline">Before going into a detailed analysis of the two interfaces it will be helpful to establish acommon understanding of the elements of an interface and establish a commonterminology associated with an interface. In this section I’ll present my own ontologyand an associated terminology. It should serve the purpose of creating the foundationsneeded to position each of the discussed interfaces with respect to one another. 3.1 OverviewAn interface can be decomposed into various components. This paper uses thefollowing decomposition.
  • Transport
Logical Physical
  • Register Set
  • Queuing Layer or Model
  • Protocol
  • Command Set
3.1.1 Transport Fundamentally a transport is the mechanism by which information is conveyed ormoved from one point in a system to another in an orderly and predictable manner. Atransport is a combination of other elements of the interface. Interfaces depend ontransports. Transports can be physical or logical. Logical transports can run on top ofphysical transports. Transports can be layered or tunneled. Transports are alsosometimes referred to as protocols, but in this paper the two terms have distinctlydifferent meanings. As described in the previous section both AHCI and NVMe are layered on top of PCIe.PCIe has its own transport and protocols that include a physical and data link layer that is not included in either AHCI or NVMe. Both AHCI and NVMe are logical transports thatare layered on top of the underlying physical bus transports and protocols on which theyare implemented. 本帖最后由 白丁 于 2015-12-23 22:58 编辑
training

回复评论 (2)

3.1.2 Register Set
Each interface defines a register set that is mapped into various PCI address spacetypes. In addition to the registers required by the PCI specification, registers that mapinto the PCI Configuration Space, there are registers that are defined to describe andcontrol the device itself. These latter registers map into the PCI/PCIe bus addressspace which are in turn mapped into the system’s address space. These register setscan be grouped into,
 Capabilities Registers
 Configuration Registers
 Status Registers
Registers of these types exist in both interfaces. They allow the user to configureoperational aspects of the device, provide status on the device and to operate accesschannels to the storage extents within the various device domains.


3.1.3 Queuing Layer
Most interfaces use queues for moving commands, command status and/or data acrossthe transport. Queues are typically used for smoothing the flow of information and data,functioning as elasticity buffers, and possibly maintaining command ordering of sometype. They provide the buffers needed for temporary storage of command andcommand status until they can be processed by the host or device.
Queuing layers must have usage rules associated with them. The mechanisms used toupdate queue head and tail pointers and notifications of when a queue has beenupdated to interested parties are all part of the queuing layer and its associatedprotocols.


training
点赞  2015-12-23 22:55
3.1.4 Protocol
The elements that make up an interface, whether physical or logical, have rules ofusage. These rules make up a protocol. The term “protocol” will mean different things todifferent people and may even mean slightly different things in usage by the sameperson depending on context. In this paper my usage of “protocol” is as follows.
“The set of rules that apply to the usage of the various physical and logical components
of an interface or transport that must be adhered to by all entities, whether initiators or
targets/requestors or responders, that connect to an interface or transport, either physical or logical, in order to facilitate the correct and orderly exchange of information.”

3.1.5 Command Set

The definition of an interface may include the definition of a command set. In this papera command set will be defined as the set of tasks to which the interface is dedicated.For a storage interface typical commands would be read, write, trim, etc.

training
点赞  2015-12-23 22:56
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复