LPC总线介绍参考模板_第1页
LPC总线介绍参考模板_第2页
LPC总线介绍参考模板_第3页
LPC总线介绍参考模板_第4页
LPC总线介绍参考模板_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、在NB电路的架构框图中,我们可以看到PCH和EC之间通过LPC总线连接,在MB板上也会看到EC芯片旁边有一个JDEBUG的connector,其也与LPC总线相连,用于主板诊断。下面将对LPC总线做一些简单介绍,希望能够帮助大家了解LPC的工作原理:1、 LPC总线LPC(Low Pin Count)是基于 Intel 标准的 33 MHz 4 bit 并行总线协议(但目前NB系统中LPC的时钟频率为24MHz,可能是由于CPU平台的不断发展导致的,后面会具体分析),用于代替以前的 ISA 总线协议,但两者性能相似,都用于连接南桥和Super I/O芯片、FLASH BIOS、EC等设备(由于

2、目前EC芯片中整合了Super I/O功能,所以我们在NB系统中看不到LPC总线上挂有Super I/O芯片了)。传统ISA BUS速率大约在7.1598.33MHz,提供的理论尖峰传输值为16MB/s,但是ISA BUS与传统的PCI BUS的电气特性、信号定义方式迥异,使得南桥芯片、Super I/O芯片浪费很多针脚来做处理,主板的线路设计也显得复杂。为此,Intel定义了LPC接口,将以往ISA BUS的地址/数据分离译码,改成类似PCI的地址/数据信号线共享的译码方式,信号线数量大幅降低,工作速率由PCI总线速率同步驱动(时钟同为33MHz),虽然改良过的LPC接口一样维持最大传输值1

3、6MB/s,但信号管脚却大幅减少了2530个,以LPC接口设计的Super I/O芯片、Flash芯片都能享有脚位数减少、体积微缩的好处,主板的设计也可以简化,这也是取名LPCLow Pin Count的原因。2、LPC总线的接口管脚LPC总线由7个必选信号和6个可选信号组成,具体如下表所示: 表 3-2 LPC总线可选信号列表信号外设Host设备信号描述LDRQ#OI外设进行DMA or bus mastering操作的总线请求信号,一对一,外设之间不能共享同一个LDRQ#SERIRQI/OI/O中断请求信号CLKRUN#ODI/OD外设进行DMA or bus mastering操作才会需

4、要该信号,用于停止PIC bus,同PCI CLKRUN信号LPME#ODI/OD电源管理唤醒,与PCI PME相似1 / 10LPCPD#IOPower DownLSMI#ODISMI信号 系统管理中断 MB板上的JDEBUG connector有12pin,没有连接LRESET#信号,只连接了其余的6个必选信号,为主板诊断提供接口,其中CLK_DEBUG由PCH提供,24MHZ: EC与PCH连接的LPC总线中除了包含7个必选信号,还包含SEEIRQ和CLKRUN#信号。这里需要注意的是JDEBUG的CLK信号与连接EC和PCH的LPC总线中CLK信号并非同一个信号。PCH提供了2个输出2

5、4MHz时钟的管脚,但每个时钟只能驱动一个LPC设备,故EC和JDEBUG各连接一个。3.LPC总线的通信协议LPC总线支持多种事务类型的操作,例如IO读写、内存读写、DMA读写、Firmware memory读写等。一个cycle通常一下流程:l 总线host拉低LFRAME#信号,指示cycle开始,同时将相关信息输出到LAD3:0上l 主机Host根据Cycle类型驱动相应的信息到LAD3:0上,比如当前操作的事务类型、数据传输方向及size大小、访问地址等。l host根据Cycle类型的不同选择进行驱动数据或者是移交总线控制权。l 外设获取总线控制权后,将相应的数据驱动到LAD3:0

6、上。表示该Cycle完成。l 外设释放总线控制权。至此该Cycle结束。一个典型cycle通常由Start、Cyctype+Dir、ADDR 、Size(DMA only)、Channel(DMA only)、TAR、Sync、DATA状态组成,下图是一个典型的cycle示例流程,该cycle类似于IO读或内存读操作中的cycle,DATA字段由外设驱动发送给host.图4.1 cycle示意流程图3.1 StartStart用于指示一个传输的开始或者结束。当FRAME#信号有效时,所有的外设都要监视LAD3:0信号,并在FRAME#信号有效的最后一个时钟进入START状态。LAD3:0的值编

7、码如下表表4.1 Start状态 LAD3:0定义3.2 Cycle TypeDirection(CYCTYPE+DIR)该状态由Host驱动,对Cycle的传输类型(Memory、IO、DMA)以及传输方向进行说明。LAD0在该场中被保留,作为外设应该忽略。具体定义值见下表表4.2 Cyctype+DIR状态 LAD3:0定义3.3 Size该状态表示传输数据DATA字段的大小,由host驱动,当数数据为16或32bits,将分成多个DATA转态发送,Size只存在于DMA类型cycle中。而在IO和内存类型cycle中,每个cycle只能传输8bits数据。Size状态LAD1:0有效,L

8、AD3:2被忽略,LAD3:0具体定义如下表4.3 Size状态 LAD3:0定义Bits1:0定义00传输的数据大小为8bits01传输的数据大小为16bits10保留11传输的数据大小为32bits3.4 ADDR/Channel ADDR状态表示地址信息,由host驱动。在IO cycle中,地址信息为16bits(4个时钟周期);在内存 cycle中,地址信息为32bits(8个时钟);而在DMA cycle中,则没有ADDR状态,取代的则是Channel状态(1个时钟)。LAD2:0表示channel的序号,其中channel 03为8bit channels, channel 57

9、为16 bit channels, channel4一般被保留作为bus master 的请求信号。ADDR的地址信息先从高位发送。3.5 TAR(Turn-around) TAR用于交换总线的控制权(2个时钟),当host要将总线转交给外设时,TAR由host驱动;当外设要将总线交还给host时,TAR由外设驱动。TAR两个时钟周期的第一个时钟周期有host或外设驱动,LAD3:0=1111;第二时钟周期host或外设则将LAD3:0置为三态,但由于LAD3:0管脚内部有弱上拉, LAD3:0还都是处于高逻辑电平,所以TAR的两个时钟LAD3:0都为1111.3.6 SyncSync用来加入

10、等待状态,持续时间为1N个时钟周期。在target或者DMA传输操作时,Sync由外设驱动;在bus master操作时,Sync由Host驱动。可能的组合见表表4.4 Sync状态 LAD3:0定义当外设还没准备好时,可以插入一些等待周期0101(短等待)或0110(长等待),等到Ready状态来到时,可以选择驱动为“0000"(准备好),“1010”(错误)或者“1001"(Ready More)。4.6.1 Sync Timeout总线上通常可能发生以下几种潜在的错误:1当Host发起一个Cycle(Memory、IO、DMA)后,但是,总线上没有设备驱动SYNC场,

11、当Host检测到3个连续的时钟内都没有响应时,便可以认为总线上没有外设响应此次Cycle操作。2Host驱动一个Cycle(Memory,IO,DMA),一个设备驱动了一个有效的SYNC场来插入等待(LAD3:0=0101b或者0110b),但是却不能完成该Cycle,这种情况在外设锁定的时候就发生了。此时,Host应采取以下措施以解除总线死锁:假如SYNC是0101b,那么SYNC时钟周期最多为8个。当Host检测到有多于8个时钟周期的SYNC场,那么Host将取消这个Cycle。假如SYNC是0110b,那么这里将没有最大SYNC长度的限制。外设必须设计有保护机制来完成这个Cycle。当由

12、Host来驱动SYNC时,因为延迟的原因,它可能不得不插入大量的等待周期,但外设不应该认为有time out发生。下图为SYNC的周期过长引起timeout,此时LFRAME#会拉低4个LCLK周期,进入start状态,来终止这个Cycle.图4.2 LFRAME终止cycle4.7 DATA DATA状态占用两个时钟周期,用于传送一个字节数据。当数据流向外设时,该场由Host驱动;反之,当数据流向Host时,则该场由外设驱动。在传输过程的时候,低4位最先被驱动到总线上,在第一个时钟,Data3:0被驱动,第二个时钟,Data7:4被驱动。4.8 各事务类型操作举例 图4.3 memory r

13、ead/write图4.4 I/O read/write图4.5 DMA read/write(16bits)4、 LPC总线的测量(逻辑分析仪)用逻辑分析仪TLA5202测得LPC总线中LCLK、LFRAME#、LAD3:0信号,下面为测量的几组数据波形:下面是测的是两个cycle的总体波形图,由于我在测试时外接的测试线过长,在cycle结束后的末期引入了串扰,图中的黄色框图中便为串扰信号波形,理想状态应该是LAD3:0统一保持高逻辑,后面再统一变为低逻辑。这里我们可以看到时钟信号LCLK并不是一直输出的,只有当cycle开始时,PCH才会输出LCLK信号,cycle结束后,若一段时间内不再

14、有cycle传输,LCLK便不再输出。图5.1 Cycle总体波形图 下图测试的是一组I/O read cycle,host要读取IO地址为0064H的数据,外设接管总线后,经过11个时钟周期的长等待SYNC状态(0110)后,变为ready状态(sync为0000),然后外设将数据1CH发送给host,驱动TAR状态(FF),将总线控制权交还给host,这个cycle结束。图5.2 I/O read cycle下图测试的是一组I/O write cycle,host向IO地址025AH写入数据93H,外设接管总线后,经过8个时钟周期的长等待SYNC状态(0110)后,变为ready状态(sync为0000),表明外设接收到数据,之后外设驱动TAR状态(FF),

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论