2.16 通用目的的I2C总线接口
COM Express定义5个I2C接口到模板连接器上供载板使用,5个接口中的3个用于特殊目的(VGA、LVDS及DVO),第4个接口用于SMBus,用于管理,第5个接口市通用目的的I2C接口,通用目的的I2C接口也可用于支持载板上的ROM,ROM里包含BIOS使用的载板PCIe映像信息。注意,并不是所有的COM Express模块支持这个特征。
对于这个通用的I2C总线接口,可能会由于软件支持上的问题限制了用户的使用,因为这需要驱动!
2.16.1 信号定义
信号
|
脚
|
描述
|
I/O
|
电源
|
I2C_CK
|
B33
|
I2C时钟
|
O CMOS
|
3.3V
|
I2C_DAT
|
B34
|
I2C数据
|
I/O CMOS
|
3.3V
|
I2C的时钟和数据线的上拉电阻在模板上已经有了。载板上不要有上拉电阻。
2.16.2 参考设计
如在载板上扩展一个EEPROM:
2.16.3 布线考虑
因为I2C总线是低速信号,所以,布线要求并不严格。
2.17 系统管理总线
SMBus主要用作管理外设,比如对RAM的串行存在检测(SPD)、温度传感器、PCI/PCIe设备、智能电池等。这些载板上的设备可以通过SMBus连接到模板上。设计者需要考虑一些因素以确保SMBus的操作。SMBus其实就是I2C总线,所以在传输信息时有可能会出现数据线死锁,这要求一个上电周期来清除这个错误条件。SMB器件包含一个超时电路,以监视和纠正这个错误。为了在系统S0-S5状态期间能够进行控制,模板上要求给SMBus总线设备提供Suspend电源,而载板上通常使用3.3V主电源供电。为避免载板上的主电源和模块Suspend电源间的漏电流,载板上的SMBus必须通过一个总线开关将模块的SMBus总线分离开。图43显示了这个电路。然而,如果载板也使用Suspend电源给SMBus器件供电,那么这些器件必须连接到SMBus侧的Suspend电源,也就是说,在COM
Express模块和总线开关之间。
因为SMBus由模块和载板使用,所以必须注意确保载板上的器件地址不要覆盖模板上的地址空间。一般模块定义SMBus器件和它们的地址包括存储器SPD(串行存在检测:1010 000x,1010 001x),可编程时钟综合(1101 001x)、时钟缓冲(1101 110x)、温度传感器(1001 000x),管理控制器(厂家定义的地址)。请参考模块手册。
图43 SMBus分离:
2.17.1 信号定义
信号
|
脚
|
描述
|
I/O
|
电源
|
SMB_CK
|
B13
|
SMBus时钟线
|
I/O OD CMOS
|
3.3VSuspend电源
|
SMB_DAT
|
B14
|
SMBus数据线
|
I/O OD CMOS
|
3.3VSuspend电源
|
SMB_ALERT#
|
B15
|
SMBus报警
|
I CMOS
|
3.3VSuspend电源
|
2.17.2 参考设计
2.17.3 布线考虑
SMBus应当要不连接到所有的PCIe/PCI设备和插座上,要不一个也不要连接。通常并不推荐将这些设备连接到SMBus上。
SMBus最多连接3个外部器件。请参考模块的技术资料。
因为是低速信号,所以,布线要求并不严格。
2.18 其他信号
表32 其他类型的信号
信号
|
脚
|
描述
|
I/O
|
注释
|
Type0#
|
C54
|
指示COM板管脚的类型,为了指示模块的脚类型,这些脚在模块上悬空或者拉到地上。载板必须有附加的逻辑,在管脚不兼容的时候,防止系统打开电源。
|
O 5V PDS
|
|
Type1#
|
C57
|
Type2#
|
D57
|
SPKR
|
B32
|
输出,用来控制外部FET或一个逻辑门,用来驱动一个外部喇叭
|
O 3.3V CMOS
|
|
BIOS_DISABLE#
|
A34
|
输入,禁止模块BIOS Flash内存芯片,这个信号提供实现:安装在外部载板上的BIOS FLASH内存芯片的可能。
|
I 3.3V CMOS
|
参考2.15.2.3 LPC固件HUB
|
WDT
|
B27
|
输出,指示看门狗超时事件发生。
|
O 3.3V CMOS
|
|
KBD_RST#
|
A86
|
模块的输入信号,来自外部键盘控制器,强制系统复位
|
I 3.3V CMOS
|
|
KBD_A20GATE
|
A87
|
输入,外部键盘控制器控制CPU A20地址线的使用。A20地址线限制对系统最低1兆字节内存的存取。在模块内部上拉。
|
I 3.3V CMOS
|
|
GPO0
|
A93
|
通用目的的输出脚,用于系统特定的用处
|
O 3.3V CMOS
|
参考模块的用户手册
|
GPO1
|
B54
|
GPO2
|
B57
|
GPO3
|
B63
|
GPI0
|
A54
|
通用目的的输入脚,用于系统特定的用处。这些信号,模块内部都上拉
|
I 3.3V CMOS
|
参考模块的用户手册
|
GPI1
|
A63
|
GPI2
|
A67
|
GPI3
|
A85
|
2.18.1 模块类型检测
表33:模块类型的检测
模块类型
|
TYPE0#
|
TYPE1#
|
TYPE2#
|
|
模块Type1
|
X(无关)
|
X(无关)
|
X(无关)
|
|
模块Type2
|
NC
|
NC
|
NC
|
|
模块Type3
|
NC
|
NC
|
GND
|
无IDE接口
|
模块Type4
|
NC
|
GND
|
NC
|
无PCI接口
|
模块Type5
|
NC
|
GND
|
GND
|
无IDE、PCI接口
|
图45 模块类型2检测电路
如果模块不是类型2,那么PS_ON#信号不会变低,电源不会打开。注意,检测逻辑使用的电源是VCC_5V_SBY。
2.18.2 喇叭输出
PC-AT结构,提供一个喇叭控制信号,用来产生Beep响声,这个信号是一个数字逻辑信号,可以通过系统定时器来产生,当产生错误的时候,可以产生BEEP以作为报警提示,BIOS通常提供一个BEEP代码,用来指示硬件测试时候出现的故障类型,应用软件通常也使用BEEP声来提示一个错误。
这里的喇叭信号不要与音频CODEC产生的模拟音频信号相混淆,在许多系统中,PC-AT的喇叭信号送到音频CODEC输入中的一个,允许同别的音频信号混合在一起,可以在CODEC驱动下耳机音响里听到。
COM Express模块提供的喇叭输出被称为“SPKR”,由外部的FET或逻辑门驱动连接到一个PC喇叭上。这个喇叭可以是个蜂鸣器。
2.18.3 RTC电池
RTC(实时时钟)用来在COM板没有连接主电源的时候,提供时间和日期时钟电路的正常工作,通常使用+3V锂电池为RTC的时钟。COM Express定义了一个额外的电源脚“VCC_RTC”,用作将外部电池连接到RTC模块的电源上,规定电池的输入电压范围是+2.0V到+3.0V,“VCC_RTC”信号在A47脚上。
RTC电池电路需要有一个反接保护,可以通过一个SCHOTTKY二极管来实现,如下图。
这个电路的一个缺点是,由COM Express模块显示的电池电源监视结果可能会不正确,因为当系统允许的时候,漏电流的负载是电池电路的电容,这会导致在“VCC_RTC”脚上有一个较高的电压,从而引起监视结果的错误。
2.18.3.1 RTC电池寿命
RTC电池寿命决定系统电池替换的间隔时间。RTC电池电路的漏电流对电池的寿命影响是很大的,所以设计的时候,必须仔细考虑。
2.18.4 电源管理信号
COM Express定义了一些控制信号,用来控制系统的状态,比如上电和复位条件,这使得系统设计者能够实现ACPI全兼容系统。支持系统状态从S0到S5。一个ACPI兼容系统的最小硬件要求是一个ATX电源和电源按钮。
下面的表提供一个简洁的描述。
表34 系统状态S0-S5定义
系统状态
|
描述
|
电源状态
|
S0全部上电
|
系统全部工作,所以单元均供电
|
所有电源均上电
|
S1待机(PSO)
|
休眠状态,系统上下文不丢失,硬件维持所有系统上下文,在S1器件,系统地一些元器件处于低功耗状态
|
所有电源均上电
|
S2
|
不支持
|
|
S3 RAM待机(STR)
|
当前的系统状态和上下文存于主内存中,所有不必要的系统逻辑断电
|
仅主存和唤醒系统需要的逻辑由Suspend电源供电,所有其它电源均关闭。
|
S4磁盘待机(STD)
|
当前的系统状态和上下文存于磁盘中,所有不必要的系统逻辑断电。S4类似于S5,仅由OS支持
|
类似S5,所有其它电源均关闭
|
S5软件关机
|
在S5状态,系统切断电源,仅可能通过电源按钮或一个系统唤醒事件(比如WAKE ON LAN或者RTC报警)来重新启动,
|
Suspend电源供电,所有其它电源均关闭。
|
表35 电源管理信号描述
信号
|
脚
|
描述
|
I/O
|
注释
|
PWRBTN#
|
B12
|
电源按钮,低有效信号,用来将系统从S5状态唤醒,这个信号的下降沿触发。
|
I 3.3V Suspend CMOS
|
驱动>=10mA
|
SYS_RESET#
|
B49
|
复位输入信号,由外部电路驱动,比如一个复位按钮,用来作为硬件复位
|
I 3.3V Suspend CMOS
|
驱动>=10mA
|
CB_RESET#
|
B50
|
复位输出信号,由模块到载板,这个信号可以由模块驱动为低,用来复位载板上的元件
|
O 3.3V Suspend CMOS
|
|
PWR_OK
|
B24
|
由ATX电源产生,通知模块DC操作电压已经达到规定的值。
|
I 3.3V CMOS
|
|
SUS_STAT#
|
B18
|
休眠状态信号,表示系统很快就会进入一个低功耗模式,它能被载板上其它外设用作指示应该进入节电模式
|
O 3.3V Suspend CMOS
|
|
SUS_S3#
|
A15
|
S3休眠控制信号,表示系统停留在S3状态(RAM待机)
|
O 3.3V Suspend CMOS
|
这个信号能用作控制ATX电源的PS_ON#信号
|
SUS_S4#
|
A18
|
S4休眠控制信号,表示系统停留在S4状态(磁盘待机)
|
O 3.3V Suspend CMOS
|
|
SUS_S5#
|
A24
|
S5休眠控制信号,表示系统停留在S5状态(Soft Off)
|
O 3.3V Suspend CMOS
|
|
WAKE0#
|
B66
|
PCIe唤醒事件信号
|
I 3.3V Suspend CMOS
|
|
WAKE1#
|
B67
|
通用目的唤醒信号
|
I 3.3V Suspend CMOS
|
|
BATLOW#
|
A27
|
电池低输入,这个信号可以由外部电路来驱动为低,表示系统电池低,它也可以用作表示某些其它外部电源管理事件
|
I 3.3V Suspend CMOS
|
|
2.18.5 看门狗
图48 看门狗定时器事件锁存原理图
看门狗事件信号由COM Express模块提供,WDT输出是高有效,它源自COM Express模块的B27脚。
WDT事件可以通过载板上的适当连接来产生系统的复位。也可能配置模块复位WDT事件,详见厂家的模块用户手册。
如果WDT输出引起系统复位,WDT输出会被系统复位清楚。
WDFT能被锁存以驱动LED显示,如上图,注意锁存器由一个在所有电源状态下(包括软件关机状态)都有效的电源来供电,锁存器仅由上电复位来清除,冷开机由RSMRST#来产生,载板复位监视器(没有显示在这个图上)需要产生RSMRST#信号,复位监视器电路监视5V或3.3V Suspend电源(V5.0_S5或V3.3V_S5)。
2.18.6 通用目的的GPIO
表36 GPIO信号定义
信号
|
脚
|
描述
|
I/O
|
GPI0
|
A54
|
通用目的输入脚,在COM Express模块内部上拉
|
I 3.3V COMS
|
GPI1
|
A63
|
通用目的输入脚,在COM Express模块内部上拉
|
I 3.3V COMS
|
GPI2
|
A67
|
通用目的输入脚,在COM Express模块内部上拉
|
I 3.3V COMS
|
GPI3
|
A85
|
通用目的输入脚,在COM Express模块内部上拉
|
I 3.3V COMS
|
GPI0
|
A93
|
通用目的输出脚,复位后应该为低电平输出
|
O 3.3V COMS
|
GPO1
|
B54
|
通用目的输出脚,复位后应该为低电平输出
|
O 3.3V COMS
|
GPO2
|
B57
|
通用目的输出脚,复位后应该为低电平输出
|
O 3.3V COMS
|
GPO3
|
B63
|
通用目的输出脚,复位后应该为低电平输出
|
O 3.3V COMS
|
图49 通用目的I/O回环原理图
2.18.7 温度检测报警接口
COM Express提供“THRM#”和“THRMTRIP#”信号,用于系统温度管理,当前大部分系统平台,温度管理与系统电源密切相关,更详细的信息见COM模块的温度管理能力,参考厂家的模块用户手册。
表37 温度管理信号描述
信号
|
脚
|
描述
|
I/O
|
THRM#
|
B35
|
超温报警,低有效,由外部硬件产生,这个信号用来激发温度保护。
|
I 3.3V CMOS
|
THRMTRIP#
|
A35
|
指示处理器超温了,如果这个信号有效,系统应该立刻进入S5状态(软件关闭)。
|
O 3.3V CMOS
|
分享到:
相关推荐
COM载板设计之三I2C总线及其他信号.pdf COM载板设计之四SATA和PCI接口.pdf COM载板设计之五LAN和USB接口.pdf COM载板设计之六VGA和音频AC97_HDA接口.doc COM载板设计之六VGA和音频AC97_HDA接口.PDF COM载板...
不错的资料快点下载摘要:以I2C总线协议为根据。用有限状态机(FSM:Finite State Machine)设计了基于FPGA的I2C初始化程序模块。主要内容包括简述I2C总线的特点;介绍用FPGA中FSM开发I2C总线模块时的设计思想和实现...
I2C总线规范 I2C总线规范 I2C总线规范 I2C总线规范 I2C总线规范
I2C总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。I2C包含两条线路:一条串行数据线SDA,一条串行时钟线SCL。 I2C规程运用主/从双向通讯。器件发送数据到总线上,则定义为发送器,...
标准协议:I2C总线规范完整版
I2C总线协议I2C总线协议I2C总线协议I2C总线协议I2C总线协议I2C总线协议
i2c总线规范 英文版i2c总线规范 英文版i2c总线规范 英文版i2c总线规范 英文版i2c总线规范 英文版i2c总线规范 英文版i2c总线规范 英文版i2c总线规范 英文版i2c总线规范 英文版i2c总线规范 英文版i2c总线规范 英文版i2...
I2C总线应用系统设计,I2C总线应用系统设计pdf图书
为了使这些相似之处对...I2C 总线的 IC 可以执行前面提到的三种类型的功能 所有符合 I2C总线的器件组合了一个片上接口 使器件之间直接通过 I2C 总线通讯 这个设计概念解决了很多在设计数字控制电路时遇到的接口问题.
51单片机开发板实验:I2C总线上挂接多个AT24C02的读写操作程序源代码。 1、开发环境:KEIL。 2、编程语言:C语言。
本资源为单片机单总线和I2C总线结合的温度监测系统设计的实验报告,小伙伴需要报告的话可以下载哦。 整理不易,还望多多点赞支持哦~
为了让用户更好的学习I2C 总线系统我公司推出一套I2C学习板称为I2C 总线DEMO板该系列 DEMO 板包含了I2C 总线接口的常用器件有EEPROM 芯片日历时钟芯片液晶驱动芯片I O 口扩 展芯片数码管驱动芯片I2C 总线DEMO 板由3 ...
I2C总线协议规范的中文译文,有一定参考价值
I2C(Inter-Integrated Circuit)总线是一种由PHILIPS公司开发的两线式串行总线,用于连接微控制器及其外围设备。I2C总线产生于在80年代,最初为音频和视频设备开发,如今主要在服务器管理中使用,其中包括单个组件...
I2C总线结构
I2C总线接口协议设计及FPGA的实现.pdf I2C总线读LM75A 采集的温度值.doc WM8731的I2C配置模块的FPGA设计.pdf 基于FPGA的I2C总线主控器的设计与实现.pdf 基于FPGA的I_2C控制器的实现及其在音频编解码中应用.pdf ...
I2C总线应用中的几个问题I2C总线应用中的几个问题I2C总线应用中的几个问题