2129|2

6419

帖子

16

TA的资源

版主

楼主
 

NVMe与AHCI对比-Anatomy of the Interfaces [复制链接]

本帖最后由 白丁 于 2015-12-23 22:58 编辑

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.



此帖出自FPGA/CPLD论坛
点赞 关注
个人签名training
 

回复
举报

6419

帖子

16

TA的资源

版主

沙发
 
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.


此帖出自FPGA/CPLD论坛
个人签名training
 
 

回复

6419

帖子

16

TA的资源

版主

板凳
 
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.

此帖出自FPGA/CPLD论坛
个人签名training
 
 
 

回复
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条
报名最后一周!2025 英飞凌消费、计算与通讯创新大会-北京站
会议时间:3月18日(周二)09:30签到
参会奖励:电动螺丝刀套装、户外登山包、京东卡

查看 »

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

 
机器人开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表