第十章Localbus本章介绍了局部总线控制器(LBC)模块。介绍LBC的外部信号和内存映射寄存器,以及通用片选机制(GPCM)、同步DRAM(SDRAM)机和用户可编程机(UPM)。最后,包括初始化和应用信息一节,其中有许多关于使用的特色的例子。10.1绪论图10-1是LBC的功能结构图,它支持三个接口:GPCM,UPM和SDRAM。图10-1.局部总线控制器结构图10.1.1概述LBC的主要部分是存贮器控制器,该控制器提供了到多种类型存贮设备和外部设备的无缝接口。该控制器负责控制八个存贮体(bank),这八个存贮体由一个高性能的SDRAM、一个GPCM和可多达三个的UPMs所共享。因此它支持到SDRAM、SRAM、EPROM、flashEPROM、可突发RAM、常规DRAM设备、扩展数据输出DRAM设备和其他一些外部设备的最小粘结逻辑接口。外部地址锁存信号(LALE)允许地址和数据信号的多路复用,减少信号数量。LBC还包括许多数据校验和保护特性,例如数据奇偶的生成和校验、写保护和一个总线监控器以确保每个总线周期在用户指定的时间内结束。10.1.2特性LBC主要包含以下几个方面的特性:•拥有八个存贮体—带屏蔽的32位地址译码—可变存贮块大小(32K字节到2G字节)—基于存贮体的控制信号生成的选择—基于存贮体激活的数据缓冲控制—大事务的自动分段—用于单访问的奇偶校验,包括读-修改-写(RMW)校验—写保护能力—奇偶字节选择•SDRAM机—向符合JEDEC标准的SDRAM设备的无缝连接提供控制功能和信号—支持每个设备多达4个的并发打开页面—支持32位、16位和8位端口大小的SDRAM—支持外部的地址和/或命令线缓冲•通用片选机(GPCM)—与SRAM、EPROM、FEPROM和外部设备兼容—系统复位时可用的全局(引导)片选—引导片选支持8位,16位或32位的设备—最小可以3个时钟周期访问外部设备—4个字节写允许信号(LWE[0:3])—输出允许信号(LOE)—外部访问终止信号(LGTA)•三个用户可编程机(UPM)—基于可编程阵列机控制外部信号的定时,其精度最多可达外部总线时钟周期的四分之一—在内部主控器请求单拍的或者突发读写访问时运行用户特定的控制信号模式—UPM刷新定时器运行用户特定的控制信号模式,以支持刷新—软件可以启动用户特定的控制信号模式—可把每个UPM定义为支持64,128,256,512K字节和1,2,4,8,16,32,64,128,256M字节大小的DRAM设备—支持8,16,32位的设备—页面模式支持一个突发内的连续传输—内部地址复用支持64,128,256,512K字节和1,2,4,8,16,32,64,128,256M字节大小的页或存贮体•可选的局部总线内部主设备和局部总线从设备之间的传输监控(局部总线出错报告)•支持带软件可配置旁路的延迟锁相环(DLL),支持低频总线时钟10.1.3操作模式LBC为局部总线提供一个GPCM、一个SDRAM机和三个UPM,对八个存贮体(片选)中可以编程用来操作任何给定机器的存储体数量没有限制。当把一个存贮器事务分发到LBC时,将存贮器地址与每个存贮体(片选)的地址信息进行比较。分配给那个存贮体的对应的机器(GPCM、SDRAM或者UPM)获得控制访问的外部信号的所有权,并保持对其控制直到事务结束。这样,利用在GPCM、SDRAM或UPM模式下,在事务期间,八个片选只有一个是活动的。10.1.3.1LBC的总线时钟和时钟比率LBC支持快速内部(系统)时钟和慢速外部总线时钟(LCLK[0:2])之间2、4和8的比率。该比率可以通过对时钟比率寄存器(LCRR[CLKDIV])进行软件设置。该比率对SDRAM模式下的操作不产生影响,但会影响GPCM模式下的信号时序变化的精度和UPM模式下对UPM阵列字的解释。将总线时钟完全不变驱动地驱动到信号LCLK[0:2]上,允许在一对信号网之间平等的共享时钟负载,从而可以提高总线时钟的占空比率。10.1.3.2源ID调试模式LBC在外部设备信号上提供事务源的ID。当选择了这些信号的时候,只要LBC外部信号线上的有效地址或数据可用,当前事务源的5位内部ID就出现在LSRCID[0:4]上。保留值为0X1F,该值表示任何其他时间在源ID信号上出现无效的地址或数据。有效的源ID(除0X1F之外的任何值)和外部地址锁存允许(LALE),以及数据有效(LDVAL)的组合方便了调试数据的捕获,具体如下:•如果在LSRCID[0:4]上检测到有效源ID且LALE有效,那么就可以从LAD[0:31]锁存一个有效的完整的32位的地址。这里要注意的是,在SDRAM的模式下,地址向量包含完整的地址{row,bank,column,lsb’s},对于给定的column地址,row是指对应的相同的row地址;对于给定的端口大小,lsb’s是指未连接的地址的最低有效位。•如果在LSRCID[0:4]上检测到有效的源ID且LDVAL有效,则可以从LAD[0:31]锁存有效数据。LSRCID[0:4]和LDVAL信号是复用,它们和其他的功能共享相同的外部信号。请参考第3章的外部信号描述和第5章的系统配置,从中可以知道如何允许LSRCID/LDVAL信号。10.1.4参考资料•MPC8260PowerQUICCII系列参考手册,第4,6和第10章,MPC8260UM/D,Rev.1,Freescale,Inc.,May2003.10.2外部信号描述表10-1给出了和LBC有关的外部信号的列表,并描述了它们的功能。该表还给出了在HRESET有效时的所有外部信号的复位状态。要了解更多的将其中某些信号用作复位配置信号的情况,参考4.3.2节“上电复位流”。这里要注意的是,在HRESET有效时,DLL一开始是未锁定的,所以LCLK和LSYNC_OUT的值有可能处在不稳定/抖动的状态,该状态可能会持续几个微秒。在DLL锁定后,才会在这些信号上驱动稳定的时钟信号。表10-1.信号属性——汇总名称替代功能模式说明信号数I/O复位状态(输出)LALE——外部地址锁存允许1OReset_cfg0LCS——片选01OReset_cfgLCS[1:7]——片选[1-7]7O都为高LWE[0:3]/LSDDQM/LBS[0:3]LWE[0:3]GPCM写允许4OReset_cfgSDDQMSDRAM字节通道数据屏蔽LBS[0:3]UPM字节(通道)选择LGPL0LSDA10LGPL0UPM通用线路01OReset_cfgLSDA10SDRAM行地址位/命令位LGPL1LSDWELGPL1UPM通用线路11OReset_cfgLSDWESDRAM写允许LOE/LSDRAS/LGPL2LOEGPCM输出允许1OLSDRASSDRAM行地址选通LGPL2UPM通用线路2LGPL3LSDCASLGPL3UPM通用线路31OReset_cfgLSDCASSDRAM列地址选通LGTA/LGPL4/LUPWAIT/LPBSELGTAGPCM事务终止1I高阻LGPL4UPM通用线路4OLUPWAITUPM外部设备等待ILPBSE—局部总线奇偶字节选择OLGPL5—UPM通用线路51OReset_cfgLBCTL——数据缓冲控制1OLA[27:31]——局部总线非复用地址的最低有效位5OLAD[0:31]——复用的地址/数据总线32I/OLDP——局部总线数据奇偶校验4I/O高阻LCKE——局部总线时钟允许1O为高LCLK[0:2]——局部总线时钟。这些时钟由MCKENR寄存器激活,更详细的信息请参考4.6.3.1节,”MCK允许寄存器(MCKENR)”3O受其他信号驱动LSYNC_IN——DLL同步输入1I—LSYNC_OUT——DLL同步输出1O驱动LDVAL—LBC调试局部总线数据有效1O没有连到外部信号上LSRCID[0:4]—LBC调试局部总线源ID5O没有连到外部信号上表10-2给出了LBC外部信号的详细描述。表10-2.局部总线控制器详细信号描述信号I/O描述LALEO外部地址锁存允许。局部总线存贮器控制器提供对外部地址锁存的控制,允许在设备信号线上复用地址和数据。参见10.4.1.2,”外部地址锁存允许信号(LALE)”状态含义有效/无效——LALE用每一个存贮器控制器事务开始时的地址置为有效,设定成有效状态的周期数由ORn[EAD]和LCRR[EADC]字段确定,而设置成无效的时间由RCWH[LALE]字段控制。这里要注意的是在LALE有效期间,任何其他的控制信号都处于无效状态。LCS[0:7]O片选,可提供八个互斥的片选信号状态含义有效/无效——用于启用连到LBC上的特定的存贮设备或外设。LCS[0:7]提供基于存贮体的片选,如0LCS对应的是存贮体0,其存贮类型和属性由BR0和OR0定义。LWE[0:3]/LSDDQM[0:3]/LBS[0:3]OGPM写允许/SDRAM数据屏蔽/UPM字节选择。这些信号选择使数据总线的每个字节通道有效。对于端口大小为32位的存贮体(由BRn[PS]设定),所有四个信号都要定义;对于16位的端口大小,只定义第0和第1位;对于8位的端口大小,只定义第0位。每个访问的最低有效地址位还为每个给定的数据传输决定采用哪个字节通道。状态含义有效/无效——对于GPCM操作,LWE[0:3]使每个字节通道都能够进行写操作。对于SDRAM操作,LSDDQM[0:3]的功能和符合JEDEC标准的SDRAM设备所提供的DQM或者数据屏蔽信号的功能一样,为每个字节通道提供一个DQM。当LBC希望写屏蔽或者禁止SDRAM中读数据输出时,LSDDQM[0:3]被置高。LBS[0:3]在UPM模式下是可编程的字节选择信号。关于设置LBS[0:3]的详细信息参见10.4.4.4节“RAM阵列”。时序有效/无效——关于LWE[0:3]时序的详细的信息参见10.4.2节“通用片选机(GPCM)”。LSDA10/LGPL0OSDRAMA10/通用线路0号。状态含义有效/无效——对于SDRAM访问,代表地址位10。当驱动行地址的时候,该位驱动地址位10。当驱动列地址的时候,它是SDRAM命令的一部分。在UPM模式下,它是六个通用信号之一,驱动在UPM阵列中设定的值。LSDWE/LGPL1OSDRAM写允许/通用线路1状态含义有效/无效——应连接到SDRAM设备的WE输入端。在访问SDRAM的时候作为SDRAM的写允许信号。在UPM模式下,它是六个通用信号之一,驱动在UPM阵列中设定的值。LOE/OGPCM输出允许/SDRAMRAS/通用线路2LSDRAS/LGPL2状态含义有效/无效——在GPCM模式下,访问存贮器/外设的时候控制存贮器的输出缓冲。对于SDRAM访问,它为行地址选通(RAS)信号。在UPM模式下,它是六个通用信号之一,驱动在UPM阵列中设定的值。LSDCAS/LGPL3OSDRAMCAS/通用线路3状态含义有效/无效——在SDRAM模式下,驱动列地址选通(CAS)信号。在UPM模式下,它是六个通用信号之一,驱动在UPM阵列中设定的值。LGTA/LGPL4/LUPWAIT/LPBSEI/OGPCM传输应答/通用线路4/UPM等待/奇偶字节选择状态含义有效/无效——在GPCM模式下输入该信号用来终止事务。在UPM模式下还可以将该信号配置为六个通用输出信号之一,或者作为输入信号强制UPM控制器等待存贮器/设备。当配置成LPBSE的时候,该信号禁止GPCM和UPM模式下的任何应用。因为采用读-修改-写奇偶性的系统需要一个附加的存贮设备,并和正常设备一样生成字节选择。通过外部逻辑对LBS[0:3]进行与运算可以获得字节选择的逻辑功能,该运算在字节选择通道中增加了一个延迟,该延迟可以影响存贮器访问的时序。LBC提供该可选择的字节选择信号,该信号是四个(低有效)字节选择内部与运算的结果,允许到n-奇偶校验设备的无粘合快速连接。注意:在UPM将LGPL4/LPBSE置为低状态的期间