外文翻译--邮箱简介  中文版_第1页
外文翻译--邮箱简介  中文版_第2页
外文翻译--邮箱简介  中文版_第3页
外文翻译--邮箱简介  中文版_第4页
外文翻译--邮箱简介  中文版_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

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

文档简介

翻译资料 - 1 - 翻译资料 邮箱简介 s5933有 8个 32位的邮箱寄存器,这些邮箱对 ADD-ON和 PCI总线之间的指令和状态传输是很有用的。 PCI接口有 4个输入邮箱( ADD-ON 到 PCI)和 4个输出邮箱( PCI到 ADD-ON),ADD-ON接口也有 4个输入邮箱( PCI到 ADD-ON)和 4个输出邮箱( ADD-ON 到 PCI), PCI的输入邮箱和 ADD-ON的输出邮箱在内部结构上是一样的, PCI的输出邮箱和 ADD-ON的输入邮箱在内部结构上也是一样的。 邮箱的状态可以用 2 中方法检测。 PCI和 ADD-ON接口都有一个邮箱状态寄存器指 示邮箱的空 /满状态,邮箱也能够对 PCI和 /或 ADD-ON 产生中断,在每个接口上的一个输入邮箱和一个输出邮箱都能被配置产生中断。 功能描述 图 1表示 PCI到 ADD-ON邮箱寄存器。 ADD-ON 输入邮箱读操作通过一个输出的内部锁存器,这样可以阻止 ADD-ON 错误数据被 PCI总线写入 PCI输出邮箱。 图 2表示 ADD-ON到 PCI邮箱寄存器。 PCI输入邮箱读操作也通过一个输出的内部锁存器,这样可以阻止 PCI错误数据被 ADD-ON总线写入 ADD-ON输出邮箱。 图 1 邮箱空 /满情况 PCI和 ADD-ON 接口都有 一个邮箱状态寄存器, PCI邮箱空 /满的情况( MBEF)和 ADD-ON邮箱空 /满的情况( AMBEF)记录指示在邮箱寄存器内的所有字节数。输出邮箱的一次写入置位它的状态位。此位能够确定在邮箱内的哪位已经写满和哪些状态位被置 1。 一个接口的输入邮箱就是另一个接口的输出邮箱,因此,一个接口的输入邮箱状态位相当于另一个接口的输出邮箱状态位。下表显示 PCI和 ADD-ON 接口的邮箱寄存器间的关系: 翻译资料 - 2 - 图 2 PCI接 ADD-ON接口 输出邮箱 1 = 输入邮箱 1 输出邮箱 2 = 输入邮箱 2 输出邮箱 3 = 输入邮 箱 3 输出邮箱 4 = 输入邮箱 4 输入邮箱 1 = 输出邮箱 1 输入邮箱 2 = 输出邮箱 2 输入邮箱 3 = 输出邮箱 3 输入邮箱 4 = 输出邮箱 4 PCI邮箱 空 /满 = ADD-ON 邮箱 空 /满 一次对输出邮箱的写入操作同样也将数据写入另一接口的输入邮箱。同样也会将输出邮箱和另一接口的输入邮箱的状态位置位。对输入邮箱的读操作会将 PCI 和 ADD-ON的邮箱状态寄存器所有相关状态位清零( AMBEF和 MBEF)。 例如,一个针对 PCI 输出邮箱 2的 PCI写操作,写字节 0和 1.PCI的邮箱空 /满状态寄存器显示位 4和 5被置位,这些位表明输出邮箱 2的位 0和 1已经写满。 ADD-ON的邮箱空 /满状态寄存器显示在此寄存器的位位 4和 5也被置位,表明 ADD-ON的输入邮箱 2的位 0和1已经写满。一次对 ADD-ON输入邮箱 2的位 0和 1的读操作同时将 AMBEF 和 MBEF 里的状态位清零。 对 AMBEF和 MBEF 寄存器的个别位置位,相同的字节必须从输入邮箱读取。 PCI 和ADD-ON 邮箱状态寄存器, AMBEF和 MBEF ,都是只读的,邮箱标志可能从 PCI接口或 ADD-ON接口全局清零。 PCI总线控制状态寄存器( MCSR)和 ADD-ON 总线控制状态寄存器( AGCSTS)翻译资料 - 3 - 都有一个位用来对所有的邮箱状态标志清零。 邮箱中断 当特殊的邮箱事件发生时设计者可以选择对 PCI或 ADD-ON 接口产生中断, PCI和ADD-ON 接口都可以对每个中断给出 2种情况,当输入邮箱满或输出邮箱空都会产生一个中断,在特殊邮箱的一个特殊位用来产生中断,对 PCI接口的中断定义和对 ADD-ON接口的中断定义是不同的,中断依靠软件清零。 对输入邮箱的中断而言,当特殊位满时中断产生。中断一般用来表明命令和状态信息已经准备就绪,必须被读取! PCI 输入邮箱中断, S5933提供 INTA#作为 PCI中断, ADD-ON输入邮箱中断, S5933 提供 IRQ#作为 ADD-ON 中断。 对输出邮箱的中断而言,当特殊位空时中断产生。中断一般用来表明其他接口已经收到发出的最后一个信息,而且信息还需写入。 PCI 输出邮箱中断, S5933 提供 INTA#作为PCI中断, ADD-ON 输出邮箱中断, S5933提供 IRQ#作为 ADD-ON中断。 ADD-ON 输出邮箱 4 位 3通道 PCI 输入邮箱 4位 3( ADD-ON 输出邮箱 4位 3)功能上和其他邮箱的位不太相同。 S5933的 EA7: 0引脚为 ADD-ON 输出邮箱 4位 3重新定义为直接的外部通道, EA8 重新定义为产生 PCI中断的时钟。引脚定义如下: EA0/EMB0 邮箱 4, 位 24 EAt/EMB1 邮箱 4, 位 25 EA2/EMB2 邮箱 4, 位 26 EA3/EMB3 邮箱 4, 位 27 EA4/EMB4 邮箱 4, 位 28 EA5/EMB5 邮箱 4, 位 29 EA6/EMB6 邮箱 4, 位 30 EA7/EMB7 邮箱 4, 位 31 EA8/EMBCLK 邮箱 4, 字节 3载入时钟 如果 S5933被编程为可以在 ADD-ON总线在写入邮箱 4位 3时产生 PCI 中断时, EMBCLK的上升沿产生一个中断,位 EMB7: 0可以被 PCI 总线通过读取 PCI输入邮箱 4位 3来读取。这些位对指示可能引起了中断的不同的情况有用。当 S5933 单字节驱动 ,ADD-ON硬件将不可能产生 PCI中断,在这种情况下, PCI输入邮箱 4位 3( ADD-ON 输出邮箱 4位 3)将不能用于和 ADD-ON的数据交换 从 PCI总线读取将始终显示零。 总线接口 在 PCI和 ADD-ON总线接口上的八个邮箱作为操作邮箱,四个输出,四个输入。这些邮箱用来对每个接口产生中断,以下将描述 PCI和 ADD-ON接口总线的邮箱寄存器。 PCI总线接口 翻译资料 - 4 - 邮箱作为 PCI目标设备只和 S5933通信,邮箱操作寄存器不支持突发存取, PCI初始器试图对邮箱寄存器进行突发存取将引起 S5933无法和数据连接, PCI写满的邮箱溢出数据在那邮箱内。 PCI 对空的邮箱的返回值也在那邮箱内,着两种情况都不会使目标设备重试。 PCI输出输入邮箱的中断在 INTCSR中是有 效的,邮箱在 2种情况下能产生 PCI中断( INTA#)输入邮箱中断, INTA#在 ADD-ON邮箱写操作完成后以 PCI时钟上升沿有效,输出邮箱的空中断, INTA#在 ADD-ON邮箱写操作完成后以 PCI时钟上升沿有效, PCI对邮箱中断清除后 INTA#就不会再在下一 PCI时钟上升沿来临时有效。 FIFO简介 S5933有 2个内部的 FIFO,一个是 PCI到 ADD-ON,另一个是 ADD-ON到 PCI的 ,每个都有8个 32位的寄存器 ,两个 FIFO都是通过 PCI/Add-On操作寄存器信号编址 ,具体用哪个 FIFO取决于通道是 读还是写 . FIFO可能是 PCI目标设备或 PCI初始器。作为目标设备, FIFO允许 PCI主总线存取ADD-ON数据, FIFO也允许 S5933变为一个 PCI 初始器,读写地址寄存器和传输次数寄存器允许 S5933通过 PCI总线进行 DMA传输,在同一个应用程序中 FIFO可能在不同时候扮演不同角色 -目标设备或初始器。 FIFO能被配置成支持多种 ADD-ON总线配置, FIFO状态控制信号输入内部 FIFO, ADD-ON总线可能有 8, 16或 32 位,数据转换对所有 ADD-ON CPU都支持, PCI和 ADD-ON中断通过FIFO支持总线控制是有效的。 功能描述 S5933的 FIFO接口有高度的功能性和可变通性,不同的 FIFO管理方案,数据转换方案和高级情况需要更广泛的 ADD-ON接口。应用程序既可以让 FIFO成为 PCI 目标设备又可以编程使他成为 PCI初始器,下面从功能上描述 S5933 FIFO 接口的能力。 FIFO队列管理和数据转换 S5933对流经 FIFO的数据控制提供高度的可变通性,每个 FIFO都有具体的 FIFO高级情况,对于 FIFO写,表明位置已满的一位是可配置的,对于 FIFO读,表明位置空的一位也是可配置的,这项功 能对通过 FIFO和 ADD-ON 传输小于 32位的数据是很有用的,数据转换是在数据经过 FIFO时进行。 FIFO高级情况 在村区数据时,每个 FIFO接口都各自升级各自的 FIFO,高级情况的控制位是在 PCI操作寄存器的 D29: 26(图 1),系统默认高级情况为位 0,在默认情况下, BE0#写入 FIFO表明 FIFO路径已满, FIFO 指针指向下一个路径, BE0#不是唯一的,注意, FIFO高级情况对 PCI到 ADD-ON和 ADD-ON到 PCI是不同的。 可配置的 FIFO高级情况用来和 ADD-ON传输不到 32位的数据, 16位的 ADD-ON总线,ADD-ON到 PCI FIFO高级情况置成位 2,这样 16 位写入 FIFO寄存器的低 16位,接下来的16位写入高 16位。 FIFO 直到下一次存取才被升级,这样 ADD-ON用 16位数据操作,同时PCI总线保持 32位格式。 翻译资料 - 5 - 注意: 操作中 INCSR FIFO 高级情况位( D29: 26)必须在 FIFO为空并且在 ADD-ON和 PCI接口上都为空闲是才能改变。 数据转换 INTCSR PCI操作寄存器的 D31: 30和 D25: 24控制 FIFO数据转换(图 1),当数据转换进行时,它让数据任意方向经过 FIFO,图 2A和 2B显示 16位和 32 位数据转换,值得注意的是,数据转换是在数据进入 FIFO之前进行的,这将影响 FIFO的高级情况。例如: FIFO进行 32位数据转换, FIFO 高级情况为位 0,位 3 写入 FIFO,数据转换后,位 3变为位 0,FIFO升级,这种行为必须要考虑到当传输不满 32 位数据时的情况。 注意: 操作中, INTCSR FIFO 数据转换位和 64位存取位必须在 FIFO空并且对 ADD-ON和 PCI接口空闲时方可改变。 64位数据转换 因为 S5933连接至 32 位 PCI总线,对于 64 位数据转换必须特殊处理,图 2C表示 64位数据转换, S5933必须知道是高 32位先进入 FIFO 还是低 32位先, INTCSR D31: 30确定应用程序哪种方式,这些位用来表明当每个 32位操作结束时是 64位的一半还是整个 64位操作已经结束,这些位的最初状态确定了 64位数据载入和卸载的顺序。 ADD-ON FIFO状态引脚表明 PCI到 ADD-ON和 ADD-ON到 PCI 的 FIFO 空满状态, ADD-ON用来在 FIFO和内存外部设备甚至外部 FIFO之间传输数据, RDEMPTY和 WRFULL 信号通常对ADD-ON有效,附加的状态信号和 1位的不变的 内存接口引脚共用,如果 S5933被配置成ADD-ON总线控制,这些状态信号会变成 ADD-ON有效, FIFO状态被 ADD-ON 总线控制 /状态和总线控制控制 /状态积存器决定,下列了所有 FIFO 状态输出和他们的作用: 信号 作用 RDEMPTY 表明 PCI到 ADD-ON FIFO 空 WRFULL 表明 ADD-ON到 PCI FIFO 满 翻译资料 - 6 - FRF 表明 PCI到 ADD-ON FIFO 满 FEW 表明 ADD-ON到 PCI FIFO 空 这些信号只在一些不变内存被占用和装置配置成 ADD-ON总线控制时 有效。 ADD-ON FIFO控制信号 图 2A 图 2B ADD-ON FIFO 控制引脚用来操纵 S5933 FIFO,这些被 ADD-ON用来控制数据在 FIFO和内存甚至外围设备或外部 FIFO之间传输。 RDFIFO#和 WRFIFO#输入始终有效。这些引脚允许饶开 RD# WR# SELECT# 地址引脚和字节使能直接对 FIFO存取数据。 附加的控制信号和单字节不变内存接口引脚共用的,当某些不便内存被占用和 S5933配置成 ADD-On总线控制,这些控制信号变为有效。 对于 PCI总线 控制, AMREN, AMWEN, FRC#和 FWC#在总线控制 控制 /状态和 ADD-ON控制/状态和 ADD-ON控制 /状态寄存器中始终有效。以下描述 FIFO控制输入: 信号 功能 RDFIFO# 从 PCI 读数据到 ADD-ON FIFO WRFIFO# 从 PCI FIFO 写数据到 ADD-ON FRC# 复位 PCI到 ADD-ON FIFO的指针和状态指示器 翻译资料 - 7 - FWC# 复位 PCI到 ADD-ON FIFO的指针和状态指示器 AMREN ADD-ON总线控制 PCI读 AMWEN ADD-ON总线控 制 PCI写 在 FIFO中 PCI总线控制 图 2C S5933驱动 PCI总线在 FIFO接口循环 , S5933 允许数据块通过一个在 PCI总线上的源/目的 地址在 ADD-ON上传送,这种 DMA传输能力能使数据流经 PCI总线而无须 CPU干涉。 驱动一个总线控制传输需要对专门的地址寄存器及字节传输计数器操作,这些工作既可以在 PCI接口又可以在 ADD-ON接口完成。驱动总线控制从 ADD-ON传输数据是有利的,因为 S5933变成 PCI的初始器时无须 CPU干涉,传输结束时 S5933将对 PCI 总线和 ADD-ON接口产生一个 中断。 ADD-ON总线控制 翻译资料 - 8 - 如果在外部内存的 45H 的位 7是 0, MWAR, MRTC, MWTC只从 ADD-ON 接口存取,当单字节激励被启用, ADD-ON不能驱动总线控制,那是因为共享了装置引脚。 当 ADD-ON总线控制配置时, S5933传输数据,直到传输计数器为 0,或配置成忽略计数器,对于 ADD-ON总线控制,某些应用程序不知道传输的数据块有多大,为了避免传输计数器不断更新,应将计数器设置为无效。 在 AGCSTS的位 28实现此功能,使传输计数器无效也同时使中断无效,不管 ADD-ON计数器有效还是无效, AMREN, AMWEN输入控制都有效,当 ADD-ON传输计数器有效, S5933只有在读写计数器同时不为 0且各自的使能端都有效时才向总线发出请求,对于 ADD-ON总线控制, AMWEN和 AMREN在字节使能 MCCSR中优先于读写总线控制。 PCI总线控制 当在外部存贮器中的 45H中位 7为 1时, MWAR, MRTC, MWTC只从 PCI 接口存取,在这种情况下, S5933传输数据直到传输寄存器为 0,对于 PCI总线控制,传输计数器不能置无效,如果没有外部存贮设备激励, S5933默认 PCI 总线控制。 地址和传输计数器 S5933有 2中寄存器用来控制总线传输,对读操作和写操作各有 2个操作寄存器,一个是用于传输地址,另一个用于字节记数。 当总线控制被启用前第一个地址已经写入地址寄存器,一旦传输开始,此计数器自动记数来反映当前传输地址,如果 PCI目的设备没有得到 S5933初始化周期,那传输将从现有地址重新开始,如果总线授权( GNT#)被移除或总线控制无效时,地址寄存器中的值代表下一传输的地址。传输必须从 DWORD边界开始。 传输计数器存储将要传送的字节数,计数器必须在总线控制有效前初始化,当总线控制有效,只有在传输计数器被编程为非 0时才有 传输发生,一旦传输开始,此寄存器将自动记数来表示还有多少字节需要传输。如果传输计数器置无效,总线控制有效,传输马上进行。 虽然传输必须从 DWORD 边界开始,但传输记数不必乘 4字节,例如,如果写传输寄存器为 10, S5933写 2个 DWORD,第三个只写 BE0#和 BE1# 总线控制 FIFO管理系统 S5933对 FIFO如何管理总线控制提供可变通性。 FIFO管理体系决定 S5933何时想总线提出请求,对 PCI总线周期初始化,管理体系可配置成 ADD-ON到 PCI和 PCI到 ADD-ON,管理体系要执行总线控制必须为有效。 对于 PCI到 ADD-ON FIFO 有 2种管理操作。 PCI 到 ADD-ON FIFO管理操作是通过总线控制 /状态 寄存器编程的。 FIFO可以编程为当任何 DWORD路径为空或仅当 4个或以上的路径为空时向总线请求,在 S5933 控制了 PCI总线后,管理体系就无效了,只要有一个开通的FIFO路径,装置会继续进行读操作,当 PCI到 ADD-ON FIFO已满或总线控制无效时, PCI总线请求被 S5933卸载。 对于 ADD-ON到 PCI FIFO 有 2种管理操作。 PCI到 ADD-ON FIFO管理操作是通过总线控制 /状态 寄 存器编程的。 FIFO可以编程为当任何 DWORD路径为满或仅当 4个或以上的路径为满时向总线请求,在 S5933控制了 PCI总线后,管理体系就无效了,只要 FIFO总有数翻译资料 - 9 - 据,装置会继续进行写操作,当 ADD-ON到 PCI FIFO 已空或总线控制无效时, PCI总线请求被 S5933卸载。 对于 ADD-ON到 PCI FIFO 管理体系这里有 2 种特殊情况,第一种是当且仅当 4个或以上的路径为满时 FIFO向总线请求,但传输记数小于 16位。在这种情况下, FIFO将忽略管理体系并终止数据传输,第二种是当传输记数为无效时 S5933被置为 ADD-ON总线控制,在这种情况下,当 1个或以上的路径为满时 FIFO管理体系必须向总线请求, AMREN和 AMWEN信号用来实行独立的 FIFO 管理体系。 FIFO总线控制周期优先权 在很多程序中, FIFO 在 PCI读和写操作中都用来作 PCI初始器,这需要有一个优先权体系,如果 FIFO初始化 PCI读和写同时碰到将会怎样? 在 MCSR中的 D12和 D8分别控制读写周期的优先权,这两位是同时置位或清零的,优先权交替转换,一读周期开始。 优先判断只在两个 FIFO 都不被 PCI总线控制的情况下( PCI到 ADD-ON FIFO从不中断一个 ADD-ON 到 PCI FIFO 传输) FIFO产生总线控制中断 FIFO中断必须在确定的情况下产生,如果 PCI 总线控制启用, INTA#针对 PCI接口,如果 ADD-ON总线控制启用, IRQ#针对于 ADD-ON接口,中断会被置无效。 FIFO中断在以下情况产生:读传输计数器为 0,写传输计数器为 0,在传输数据时发生错误,错误情况可能包括 PCI总线上的目标 /源设备。 PCI错误中断中在 1个或 2个传输计数中断发生才发生, ADD-ON中断控制 /状态寄存器( AINTA)或中断控制状态寄存器( INTCSR)表明 中断源。中断服务程序读取这些寄存器来判断需要作出什么动作,邮箱也能产生中断,这在中断服务程序中也应该被考虑到,中断也是通过这些寄存器清零的。 总线接口 S5933可能从 ADD-ON接口或 PCI接口存取数据, ADD-ON FIFO控制状态信号允许 ADD-ON CPU或可编程逻辑连接到 FIFO,下面叙述 PCI和 ADD-ON接口行为和硬件接口 FIFO PCI接口(目标模式) S5933 FIFO能成为一个标准的 PCI目标设备, PCI初始器通过读取 MCSR 中的状态位来决定 FIFO空 /满状态, FIFO 在 PCI操作寄 存器中占有 32位的地址, PCI 初始器不会强行在FIFO存取数据,每个数据状态的变化都会引起 PCI 初始器对地址计数器(甚至只有一个地址在变化时),当连接失败初始器保持现有地址,这样初始器就从发生连接错误的地方开始,若 S5933在 PCI到 FIFO 寄存器时产生连接失败时,突变必须被返回到除了 FIFO地址外的一个地址(因为初始器地址计数器已经增加),如果任何一个 PCI操作寄存器的突变未成功S5933将始终产生连接失败信号。 因为 PCI到 ADD-ON 和 ADD-ON到 PCI在某操作寄存器内占有一个独立的路径,哪个通道 启用具体要看是读还是写,这意味着数据一旦写入 FIFO,就不能再读回了。 对于从 ADD-ON到 PCI FIFO 的读操作, S5933TRDY#信号有效且 PCI周期完成(图 3),若 PCI总线试图读取一个空的 FIFO, S5933立即产生一个未连接并重试信号(图 4), ADD-ON翻译资料 - 10 - 到 PCI FIFO状态寄存器,在 PCI读周期结束时改变时钟。 图 3 图 4 对于从 PCI到 ADD-ON FIFO 的写操作, S5933TRDY#信号有效且 PCI周期完成(图 5),若 PCI总线试图写一个满的 FIFO, S5933立即产生一个未 连接并重试信号(图 6), PCI 到ADD-ON FIFO状态寄存器,在 PCI写周期结束时改变时钟。 翻译资料 - 11 - 图 5 FIFO PCI 接口(初始模式) S5933在 PCI总线上能成为一个初始化,这使装置为了传输数据到 FIFO 获得 PCI总线控制权,内部地址寄存器和传输计数器控制 PCI 传输次数和传输路径,以下段落假设适当的寄存器和位已经被置成总线控制启用。 PCI到 S5933的读写操作非常类似 FIFO管理体系决定何时 REQ#信号有效,当总线 GNT#返回, PCI周期开始运行,一旦 S5933控制了总线, FIFO管理体 系就不再重要了,它只决定何时 PCI总线控制最初被请求,果然可能 PCI 总线读和写总是被认为是 S5933的突变。 FIFO PCI总线控制读 对于 PCI读操作(写入 PCI到 ADD-ON FIFO),读周期在以下条件产生: -MRTC为 0(有效时) -PCI到 ADD-ON FIFO 满 -GNT#被 PCI总线仲裁卸载 -AMREN无效 若传输计数不为 0, GNT#保持有效 AMREN也有效, FIFO继续从 PCI总线读取数据直到没有空的 PCI到 ADD-ON FIFO,若 ADD-ON能尽快将 FIFO清空,则可继续传 数据,这需要很长的突变周期,数据存取结束, S5933声明 REQ#无效, REQ#一旦无效,它将不再有效直到FIFO管理状况发生。 翻译资料 - 12 - 图 6 FIFO PCI总线控制写 对于 PCI写操作(读取 ADD-ON到 PCI FIFO),写周期在以下条件产生: -MRTC为 0(有效时) -ADD-ON到 PCI FIFO 空 -GNT#被 PCI总线仲裁卸载 -AMREN无效 若传输计数不为 0, GNT#保持有效 AMREN也有效, FIFO继续从 PCI总线写入数据直到ADD-ON到 PCI FIFO无数据,若 ADD-ON能 尽快将 FIFO填入,则可继续传数据,这需要很长的突变周期,数据存取结束, S5933声明 REQ#无效, REQ#一旦无效,它将不再有效直到 FIFO管理状况发生。 ADD-ON总线接口 FIFO 寄存器有 2中方式从 ADD-ON接口存取数据,它能通过普通寄存器通道或由RDFIFO#和 WRFIFO#输入指向,另外, FIFO 寄存器能和 BPCLK同步或异步这取决于 S5933的配置, ADD-ON 接口也支持不到 32位的数据路径,从 ADD-ON接口到 FIFO 的存取不取决于FIFO是 PCI目标设备或 PCI初始器。 ADD-ON FIFO 寄存器存取 FIFO通过对 ADD-ON FIFO 端口 寄存器读或写和 ADD-ON接口通信的,这将在 ADD-0N操作寄存器偏移 20H,根据设置能被同步 BPCLK和异步 BPCLK存取,当 FIFO 作为普通 ADD-ON操作寄存器, ADR6: 2, BE3: 0#, SELECT#,和 RD#或 WR#将启用。同步模式及异步模式最大的不同是 FIFO指针何时改变和其处理突发存取的能力,下面例子讲述 ADD-ON FIFO翻译资料 - 13 - 读。 图 7表示一个异步 FIFO寄存器读, SELECT#的变化通过 RD#的上升沿触发, RD#和 SELECT#同时使 DQ输出有效, FIFO 中的第一个数据就会出选在总线上,在数据到 DQ总线前 FIFO地址和字节使能必须有效,直到地址字节使能 SELECT#和 RD#撤消数据才无效,撤消 RD#和SELECT#引起数据总线漂浮, RD#上升沿引起 FIFO 指针变化,输出扎的变化反映 FIFO的情况。 图 7 当 PCI到 ADD-ON FIFO 的最后一位被 ADD-ON 读取, FIFO指针不变,如果没有数据进FIFO前又有一个读操作,先前的数据被读取,再去写一个满的 ADD-ON到 PCI FIFO操作无效, FIFO数据不会溢 出且 FIFO指针也不变,不管 FIFO存取是用直接输入存取还是普通操作寄存器存取都一样。 图 8表示一个同步 FIFO 寄存器突发存取, SELECT#的变化通过 BPCLK 的上升沿触发,RD#和 SELECT#同时使 DQ 输出有效, FIFO中的第一个数据就会出选在总线上,在数据到 DQ总线前 FIFO地址和字节使能必须有效,直到 BPCLK 下一上升沿来临数据才无效,撤消 RD#和 SELECT#引起数据总线漂浮, RD#上升沿引起 FIFO 指针变化,输出扎的变化反映 FIFO的情况。 BPCLK上升沿时改变结束, RD#和 SELECT#撤消 , DQ总线上浮,当有效的 FIFO存取来临且 RD#和 SELECT#有效,数据 2将在 DQ总线出现(没有 BPCLK改变 FIFO)。 图 8 ADD0ON FIFO直接存取模式 翻译资料 - 14 - 代替产生一个地址字节使能 SELECT#和 RD#或 WR#探测每个 FIFO存取, S5933允许简单的直接存取模式, RDFIFO#和 WRFIFO#用于标准 AFIFO 端口寄存器的存取,但需要较少的逻辑,用直接存取信号存取 FIFO寄存器都是 32位的,唯一例外的是 MODE 引脚定义为 16位操作,在此情况下,所有存取都是 16位的,当 RDFIFO#或 WRFIFO有效时 RD#和 WR#输入必须为无效, ADR6: 2和 BE3: 0输入被忽略。 根据设置, RDFIFO#HE WRFIFO#能作为数据始终或作 BPCLK始终一个同步接口有高数据率,一个异步接口比需要等待状态的 ADD-ON逻辑要好,同步和异步模式最大的不同是 FIFO何时改变。 图 9表示一个用 RDFIFO#异步 FIFO寄存器直接存取。 RDFIFO#有效, FIFO中的第一个数据就出现在总线上,只要 RDFIFO#有效数据始终保持有效, RDFIFO#上升沿使数据总线上浮且作为 FIFO指针变化的时钟,输出状态 表示 FIFO 的情况。 图 9 图 10边式用 RDFIFO#的同步 FIFO寄存器直接突发存取, RDFIFO#有效, DATA0出现在总线上,直到下一 BPCLK 上升烟使 FIFO指针指向下一个数据,以次类推。输出状态表示 FIFO的情况。 BPCLK上升沿时改变结束, RDFIFO#撤消, DQ总线上浮,当下一 RDFIFO#有效,数据 2将在 DQ总线出现(没有 BPCLK改变 FIFO)。 图 10 同步的 FIFO接口能让通过 ADD-ON存取时速度更快,作为目标设备,满的 S5933 FIFO被写入(或空的被读取), S5933需 要重新尝试, ADD-ON接口对 FIFO操作越快,重试次数越少, S5933作为 PCI初始器时,相似的情况会发生,对 FIFO操作不快的话, S5933将放弃对 PCI总线的控制,用同步接口 PCI总线数据传输率会更高。 ADD-ON总线控制的附加状态 /控制信号 翻译资料 - 15 - 若有不变内存配置给 S5933且配置成 ADD-ON 总线控制, 2个状态信号和 4个控制信号被附加, FRF和 FEW输出提供附加 FIFO状态信息, FRC#, FWC#, AMREN, AMWEN 提供附加 FIFO控制,程序能用这些信号控制 FIFO标志和 PCI总线请求,这些信号本 用于单字节接口,现在被重新定义,定义如下: 输出: E-ADDR( 15) FRF FIFO读满:表明 PCI 到 ADD-ON FIFO已满 E-ADDR( 14) FWE FIFO写空:表明 ADD-ON到 PCI FIFO已空 输入: EQ( 7) AMWEN ADD-ON总线控制写使能:高有效控制总线写 EQ( 6) AMREN ADD-ON总线控制读使能:高有效控制总线读 EQ( 5) FRC# FIFO读清零:低有效将 PCI到 ADD-ON清零 EQ( 4) FWC# FIFO写清零:低有效将 ADD-ON到 PCI清零 FRF和 FEW是对 RDEMPTY 和 WRFULL状态指示器的补充,附加的输出状态为 ADD-ON FIFO控制逻辑提供了附加的 FIFO 状态信息。 FRC#和 FWC#允许 ADD-ON逻辑对 PCI到 ADD-ON或ADD-ON到 PCI FIFO标志清零, FIFO标志可以通过 AGCSTS或 MCSR软件清零,但这些硬件输入对 ADD-ON卡的设计是很有用的, FRC#输入清 PCI到 ADD-ON FIFO, FWC#输入清 ADD-ON 到 PCI FIFO。 AMREN 和 AMWEN输入允许 ADD-ON逻辑对 PCI 到 ADD-ON和 ADD-ON到 PCI FIFO 总线控制分别置有效或无效,这些输入让 MCSR总线字节使能无效 AMREN有效 S5933为 PCI到 ADD-ON FIFO向 PCI总线请求, AMWEN 有效则为 ADD-ON到 PCI FIFO 向 PCI总线请求, AMREN和 AMWEN无效时, S5933移除总线请求并放弃对总线的控制。 对于外接 FIFO来说, AMREN和 AMWEN是很有用的,对于 PCI总线控制写操作,在设置总线控制前, S5933内外 FIFO都被填入,提供一个长的写突变。 在一些程序中,多少数据要传诵 是不知道的,在读取操作中, S5933 可能会在结束前提供超过 ADD-ON需要的内存量去写 PCI到 ADD-ON FIFO,在这种情况下, AMREN 会被撤消,使 PCI读无效且 FRC#有效,将 FIFO中无用的俗话局舍去。 FIFO产生 ADD-ON中断 对 ADD-ON总线控制, S5933能在以下情况配置成能对 ADD-ON产生中断: 翻译资料 - 16 - -读计数器为 0 -写计数器为 0 -数据传输时发生错误 中断通过 IRQ#输出到 ADD-ON接口,从高到低的传输表明一个中断,因为有一个或多个中断发生, AINT必须被读

温馨提示

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

评论

0/150

提交评论