注:本章节内容,仅供参考,不保证完全正确。因为不同版本的定义不同。
7. 操作寄存器
主机控制器(HC)包含一组片上操作寄存器,这些寄存器被映射到系统可寻址空间的非缓存区域,由主机控制器驱动(HCD)使用。
根据功能,这些寄存器分为四个部分:
- 控制与状态寄存器
 - 内存指针寄存器
 - 帧计数器寄存器
 - 根集线器(Root Hub)寄存器
 
所有寄存器均需以双字(Dword)为单位进行读写。
保留位的处理规范
- 保留位可能在未来版本的本规范中定义。为确保兼容性:  
- HCD不得假设保留位为0,即使未使用这些字段。
 - HCD必须保留保留位的原始值。修改寄存器时,应遵循以下流程:  
- 读取寄存器当前值。
 - 修改目标位,同时保持保留位不变。
 - 写入更新后的值。
 
 - 替代方案:HCD可在内存中维护寄存器的副本,修改副本后再写入HC寄存器。
 
 - 对置位/清零寄存器(Set/Clear Register)写入时,保留位必须写入0。
 
关键术语说明
- 非缓存区域(Noncacheable):避免因CPU缓存导致寄存器读写不同步。
 - 双字(Dword):32位数据块,对应OHCI寄存器的标准宽度。
 - 置位/清零寄存器:通过写1置位或清零特定功能的寄存器(如中断标志)。
 
(注:译文严格遵循技术文档的严谨性,同时优化了长句结构和被动语态,符合中文技术文献习惯。)
