系统ISA接口实现原理.docx
《系统ISA接口实现原理.docx》由会员分享,可在线阅读,更多相关《系统ISA接口实现原理.docx(11页珍藏版)》请在冰点文库上搜索。
![系统ISA接口实现原理.docx](https://file1.bingdoc.com/fileroot1/2023-6/7/ac8f1569-a89f-4049-b87d-0ccf5dca1d96/ac8f1569-a89f-4049-b87d-0ccf5dca1d961.gif)
系统ISA接口实现原理
钧天科技有限公司
文档名称
版本
密级
所属项目名称:
系统ISA接口实现原理
拟制
兰海华
日期
审核
日期
批准
日期
钧天科技有限公司
版权所有XX
文档版本修订记录
作者
文档版本
修订描述
修订日期
目录
上框ISA接口的具体实现:
(AUX侧)4
上框ISA接口的具体实现:
(单板侧)5
下框ISA接口的具体实现:
(TSI侧)6
下框ISA接口的具体实现:
(单板侧)6
8930系统的ISA总线按照上下框分了两路,上框由AUX出,下框由主备TSI分别出主备ISA总线。
上下框的ISA总线原理一样,所不同的是下框ISA总线有主备,各线路板的ISA接口需要进行选择。
上框ISA接口的具体实现:
(AUX侧)
AUX上面的数据,地址总线由850小系统扣板而来,到上框各单板的片选信号由AUX扣板的高位地址A[24:
21]经FPGA译码而得,读写信号直接由850小系统扣板而来
AUX输出到背板的数据,地址,读写总线在AUX板上到244,245上分为两组。
用CPU输出的读写信号MR/W控制245的数据方向,用/CS_OUTA信号控制245的通断。
MR/W:
MR/W由扣板的CPU经过244直接输出
MR/W为高时,AUX读上框各单板的数据,245数据由背板到AUX
MR/W为低时,AUX写上框各单板的数据,245数据由AUX到背板
/CS_OUTA:
/CS_OUTA由AUX输出的到各单板的片选信号在逻辑里或门输出
/CS_OUTA为高时,245关断,/CS_OUTA为低时,245打开
请看原理图。
地址线不经过任何控制,仅由244隔离,直接输出到背板。
上框ISA接口的具体实现:
(单板侧)
在8930系统中,通过244,245把背板ISA总线和单板ISA总线进行隔离,通过CPLD管脚输出2个信号/OE_ADDR_A,/OE_DATA_A控制244,245的通断。
这2个OE信号在单板进行上拉.
单板ISA总线能进行工作条件:
(由245的/OE管脚控制)
1.扣板不在位
2.该槽位的片选信号有效
在CPLD检测到扣板不在位或片选信号有效时,打开245的\OE门。
各单板还用DIR_DATA_A信号控制ISA数据总线的流向
DIR_DATA_A由背板WR信号决定:
(可以不经过CPLD,直接把由母板过来的W/R信号连接到245的DIR管脚。
)
当WR信号为高时,AUX读各单板的数据,DIR_DATA_A为高
当WR信号为低时,AUX写各单板的数据,DIR_DATA_A为低
请看原理图:
下框ISA接口的具体实现:
(TSI侧)
下框TSI侧的ISA接口的与上框AUX侧的ISA接口原理一致,所不同的是地址信号的多少,CPU的选用。
TSI选用MPC8260做为主控的CPU,用MA[28:
24]作为槽位译码,输出各槽位的片选信号。
TSI输出给下框各单板24位地址。
请看原理图:
下框ISA接口的具体实现:
(单板侧)
下框各线路板接收主备ISA总线,并对其中的一路进行选择。
ISA总线选择由CPLD对各种状态进行检测后,输出各244,245的三态控制所需的控制信号线。
OE控制线按照主备送过来的ISA总线可分为两组,不妨定义为/OE_DATA_A,/OE_ADDR_A,/OE_DATA_B,/OE_ADDR_B,其中
/OE_DATA_A表示:
第一组ISA总线的数据的三态控制
/OE_ADDR_A表示:
第一组ISA总线的地址,读写,片选的三态控制
/OE_DATA_B表示:
第二组ISA总线的数据的三态控制
/OE_ADDR_B表示:
第二组ISA总线的地址,读写,片选的三态控制
再加上扣板的ISA总线,这三组ISA总线在某一个时间内只能有一组能对单板进行控制,扣板的优先级应该最高,所以有如下的状态发生
1./OE_DATA_A,/OE_ADDR_A和/OE_DATA_B,/OE_ADDR_B与及KONLINE应该是互斥,KONLINE优先级比较高,只要KONLINE在位,其他控制信号全都无效。
2./OE_ADDR_A,/OE_ADDR_B两者之间的有效的选择应该且只应该由GOOD_A,ONLINE_A,TSIACT_A,CCPACT_A,GOOD_B,ONLINE_B,TSIACT_A,CCPACT_B这8个状态的真值表决定。
3./OE_DATA_A,/OE_DATA_B这两个管脚得值不仅由GOOD_A,ONLINE_A,TSIACT_A,CCPACT_A,GOOD_B,ONLINE_B,TSIACT_A,CCPACT_B这八个值决定,还由/CS来决定。
真值表
主备TSI单板的状态
ATSI板在位
ATSI板good
ATSI板TSIactive
ATSI板CCPactive
BTSI板在位
BTSI板good
BTSI板TSIactive
BTSI板CCPactive
单板的动作
得到的3位编码host_sel[2:
0]
A不板在位,B板ok
1
x
x
x
0
0
x
x
选择B板的信号
110
A板不good,B板ok
x
1
x
x
0
0
x
x
选择B板的信号
110
A板ok,B板不在位
0
0
x
x
1
x
x
x
选择A板的信号
101
A板ok,B板不good
0
0
x
x
x
1
x
x
选择A板的信号
101
A板不在位,B板不good
1
x
x
x
x
1
x
x
保持上次的选择
111
A板不在位,B板不在位
1
x
x
x
1
x
x
x
保持上次的选择
111
A板不good,B板不good
x
1
x
x
x
1
x
x
保持上次的选择
111
A板不good,B板不在位
x
1
x
x
1
x
x
x
保持上次的选择
111
A板和B板都在位和good
0
0
0
0
0
0
0
0
保持上次的选择
0?
?
0
0
0
0
0
0
0
1
I类信号保持上次的选择,II类信号选择A路
0?
0
0
0
0
0
0
0
1
0
I类信号选择A路,II类信号保持上次的选择
00?
0
0
0
0
0
0
1
1
I类信号选择A路,II类信号选择A路
000
0
0
0
1
0
0
0
0
0?
0
0
0
0
1
0
0
0
1
0?
?
0
0
0
1
0
0
1
0
001
0
0
0
1
0
0
1
1
00?
0
0
1
0
0
0
0
0
01?
0
0
1
0
0
0
0
1
010
0
0
1
0
0
0
1
0
0?
?
0
0
1
0
0
0
1
1
0?
0
0
0
1
1
0
0
0
0
011
0
0
1
1
0
0
0
1
01?
0
0
1
1
0
0
1
0
0?
1
0
0
1
1
0
0
1
1
0?
?
说明:
1,I类信号表示:
时钟,帧头,数据
2,II类信号表示:
DCC时钟,DCC数据,485时钟,ISA总线
3,“?
”表示:
保持上次的状态
4,在位,active信号都是低电平有效,good是500k的脉冲信号
由CPLD对主备TSI单板的在位,good,业务active和主控active进行译码后,输出三个信号host_sel[2:
0]
host_sel[2:
0]的编码原则是:
host_sel[2]==1'b1表示TSI单板主不在位或不good,备不在位或不good,主备都不在位或不good;
host_sel[1:
0]的含义如下:
host_sel[1:
0]==2'b01,表示所有单板的时钟,数据,fastswitch,mapswitch,DCC时钟,DCC数据,485时钟,ISA总线都选择A路
host_sel[1:
0]==2'b10,表示所有单板的时钟,帧头,数据,fastswitch,mapswitch,DCC时钟,DCC数据,485时钟,ISA总线都选择B路
host_sel[1:
0]==2'b11,2'b00,表示维持当前的选择
host_sel[2]==1'b0表示主备TSI单板都在位和good,host_sel[1:
0]的含义如下:
host_sel[1]==1'b0,表示时钟,帧头,数据选择A路;host_sel[1]==1'b1,表示时钟,帧头,数据选择B路;
host_sel[0]==1'b0,表示DCC时钟,DCC数据,485时钟,ISA总线都选择A路;host_sel[0]==1'b1,表示DCC时钟,DCC数据,485时钟,ISA总线都选择B路;
由真指表可得:
Host_sel[2:
0]为:
101,0x0ISA总线强制选择A路
110,0x1ISA总线强制选择B路。
其余状态为保持上一次的状态。
有流程图: