EHCI接口概述(三)

news/2024/12/28 22:58:58/

EHCI主机接口寄存器在BAR0所示的PCI MEM地址空间中,主要包括两部分:

1)能力寄存器组

2)操作寄存器组

下面先介绍能力寄存器组

CAPLENGTH寄存器,8位只读寄存器,给出了控制寄存器组的偏移量。

HCIVERSION寄存器,16位只读寄存器,兼容EHCI的最大和最小版本号,按照BCD编码格式。高8位是最大版本号,低8位是最小版本号。

HCSPARAMS结构参数寄存器,32位只读寄存器。

HCCPARAMS能力参数寄存器,32位只读寄存器。

HCSP-PORTROUTE伴随端口路由描述寄存器,60位只读寄存器。

HCSPARAMS

主要介绍端口、伴随控制器(USB1.1)等结构信息。

【23:20】调试端口号。

【16】P_INDICATOR端口指示灯功能。1:表示可以主控制器具有控制端口的指示灯的能力,可以通过对应端口的PORTSC(端口状态和控制寄存器)的电源域来控制。

【4】PPC端口电源控制功能。1:表示可以主控制器具有控制端口的电源的能力,可以通过端口的PORTSC的电源域来控制)。

【15:12】N_CC表示主控制器设计中伴随控制器数量。

【3:0】N_PORTS表示主控制器实现的下游物理端口数量。

【11:8】N_PCC表示每个伴随控制器可以支持的端口数量,这个数量表示0号伴随控制器可以被路由连接到[0:N_PCC-1]号端口,第1号伴随控制器可以被连接到[N_PCC: 2N_PCC-1]号端口,以此类推。

        如果N_PORTS=6, N_CC=2,那么N_PCC=3。

【7】端口和伴随控制器之间的路由规则。

        1:静态映射规则(参见HCSP_PORTRUTE寄存器说明);

        0:动态枚举规则(参见N_PCC域说明)。

HCCPARAMS

主要介绍模式控制和寻址能力,大部分描述了厂商的定制参数,只有【0】位表示主控制器的寻址能力。0表示数据结构采用32位内存地址描述;1表示64位地址。

HCSP-PORTROUTE

        这是60位的寄存器,一共15个半字节长度,每4位对应一个具体的物理端口,因此这个寄存器可以表征为PORTROUTE[15]寄存器组。在这15个寄存器中,只有[0:N_PORTS-1]的寄存器才有效。

        PORTROUTE[i]指示了[i]号物理端口连接到的伴随控制器编号。


http://www.ppmy.cn/news/415876.html

相关文章

在Mybatis执行插入数据时,如何将Date类型字段设置为“yyyy-MM-dd”的格式

1、问题描述 使用mybatis新增插入一条数据到MySQL数据库时, 其中实体类对象的一个属性”hiredate“的类型是日期类型Date, 此属性在数据库中对应的字段“hiredate”类型也是日期Date类型, 但是在数据库中要求“hiredate”字段的字段值为“yy…

INTERSPEECH 2023论文|基于多频带时频注意力的复调音乐旋律提取

论文题目: MTANet: Multi-band Time-frequency Attention Network for Singing Melody Extraction from Polyphonic Music 作者列表: 高虞安,胡英,王柳淞,黄浩,何亮 研究背景 复调音乐是一种具有多个声…

CentOS 7 防火墙设置及配置

1、查看firewall服务状态 systemctl status firewalld2、查看firewall的状态 firewall-cmd --state3、开机启动防火墙: systemctl enable firewalld.service4、启动防火墙: systemctl start firewalld.service5、 停止防火墙: systemctl…

1.9C++不同数据类型转换

C不同数据类型转换 在 C中,不同类型之间的数据转换可以通过强制类型转换(类型转换运算符)来实现。 C 中强制类型转换有以下三种: 1、static_cast static_cast 可以用于基本数据类型之间的转换,也可以用于类层次结构…

imu的静态标定过程-使用imu_utils

IMU标定使用imu_utils工具包,开源见https://github.com/gaowenliang/imu_utils[1],通过该工具包完成标定可以提供IMU的随机误差——noise和random walk。 imu_utils 测量结果:零偏 随机噪音 1.安装imu_utils git clone --recursive https…

Python:关于flask框架的flask_scrip._compat

关于flask框架的flask_scrip._compat compat是什么源码Flask版本书写不同 compat是什么 compat 英文单词同胞的意思 compat的功能是在py的不同版本之间做兼容处理 一些py2/py3兼容性支持基于精简版的six,因此我们不必依赖于它的特定版本。 源码 # -*- coding: u…

品优购项目学习记录02-main主体盒子搭建,推荐模块

文章目录 一、main主体盒子搭建1.1 newsflash新闻快报模块1.1.1 news新闻模块1.1.2 lifeservice生活服务模块1.1.3 bargain模块 二、推荐模块 一、main主体盒子搭建 1.main盒子宽度为980像素,位置距离左边220px(margin-left),给高度就不用清除浮动 2.mai…

解决H5在native中键盘弹起影响页面交互

您好,如果喜欢我的文章,可以关注我的公众号「量子前端」,将不定期关注推送前端好文~ 问题描述 在native中拉起键盘再收回,滚动列表实际距离发生变化,被键盘一起弹上去了(我这里大约是400px的样子&#xf…