关于BIOS 中对SATA Mode处理
刚注册,很高兴原来我们计算机技术行业有这样一个论坛,为了表示对本论坛的支持,现发一贴,一点学习心得.希望大家多发贴,多交流啊!1,SATA Mode
SATA 支持两种模式,一种是组合模式(Combined Mode),一种是增强模式(Enhanced Mode),我们可以对ICH通过相应配置来选择这两种模式之一,他们的主要区别是:增强模式的SATA 和PATA 设备的驱动是由SATA Host Controller(Device 31,Fun 2)和IDE Controller(Device 31,Fun 1)分别进行加载和控制。而组合模式则是关掉其中一个控制器,让另外一个控制器既可以加载SATA 驱动,也可以加载PATA 驱动,顾名思义组合模式,也叫兼容(Compatible)模式,比如项目TE-945NS,ICH7 M(mobile only)笔记本兼容模式下,则关掉IDE controller, 其配置寄存器均不可再用,然后PATA 设备的I/O解码及其驱动和控制全部由SATA Host Controller去完成。
ICH7 SATA控制器可以对四个或者两个SATA PORTS起作用,每一个Port可以独立打开和关闭,而且每个相应的接口均由一个独立的DMA控制器支持。其中SATA 的一些特征可以参考ICH7 和Serial ATA Advanced Host Controller Interface (AHCI).
2.SATA Device Detection:
系统在POST过程中,对SATA设备进行侦测,由于一般ICH7系列的南桥既有支持两个SATA接口的,也有支持四个的,那么支持几个SATA 接口是不确定的,并且硬件接几个和哪几个SATA接口,以及是否有接上SATA设备是不确定的,所以BIOS的侦测和SATA PORT ENABLE的算法是根据SATA设备的实际安装情况进行的。首先系统获取四个SATA Ports 的外接设备的状态值,然后再根设备状态设置PORTS开与关,读取Port Control and Status Register (Address Offset: 92h–93h,SATA–D31:F2)的值,BIT4~7的值为SATA ports devices presents and detects status,BIT0~3的值为SATA ports enable 位,根据侦测的状态打开使用中的PORT和关闭未使用的接口(Disabled all Vacant Ports),所以按照此算法BIOS程序编写不需要了解SATA接口在硬件上是如何连接的.
当我们没有接SATA设备时,SATA控制器是会关掉的,跟所有接口控制器一样,软件要确保必须首先关掉控制器不需要的所有功能性(such as Memory spaces , IO spaces ,DMA engines ),然后再关掉其功能(Function Disabled , RCBA+3418h). Thks 学习了:) :) 请问:
SATA Master Mode/Slave mode是什么意思。
因为,有些文档说:
Support SATA PORT in Master/Slave mode.
感谢! 请教下大哥,有些控制器在RCBA+3418h disbaled,但其IO space仍然可用怎么理解呀?谢谢! RCBA+3418h disbaled,其实真正的功能隐藏PCI Controller 而已。IO/Memory 功能还生效
页:
[1]