阅读:2350回复:17
请教9054的配置访问
在DATASHEET上有LOCAL BUS READ TO CONFIGURATION REGISTER,请问这里的地址怎么译码?
|
|
沙发#
发布于:2004-12-02 20:40
现在能在local端访问内部寄存器,但是只能读,不能写,写以后用windriver读时及其就死掉了,什么都动不了,只能重新启动。这是什么原因?请高手回答。
|
|
板凳#
发布于:2004-12-05 21:33
没有高手指点一下吗?帮帮忙
|
|
地板#
发布于:2004-12-07 17:25
我也想知道.
是不是有个CCS#? 我只把LA2~LA22接到了CPLD上,如果想从LOCAL端访问 9054内部的寄存器的话,LA23~LA31该怎么办呢?直接下拉可以吗? |
|
地下室#
发布于:2004-12-07 17:26
还是说LA23~LA31悬空即可?
|
|
5楼#
发布于:2004-12-15 15:12
用ADS和地址线高位译码产出CCS#信号,PCI9054会在CCS#信号有效时锁定地址线上的信号,然后PCI9054根据地址线上的地址寻址它的寄存器。
不知我说明白没有! |
|
6楼#
发布于:2004-12-15 16:20
没有高手指点一下吗?帮帮忙 哈哈 我去通知他们一声 |
|
|
7楼#
发布于:2004-12-15 17:24
也就是说LA2~LA31都要接到CPLD上了?
我想减少CPLD的I/O管脚数,把某些地址线不接到CPLD上,可否? 这些不接的是不是得下拉呢? |
|
8楼#
发布于:2004-12-15 18:43
不用都接
只需要高位地址就可以了,比如LDA28_31就可以译码输出很多片选了 |
|
9楼#
发布于:2004-12-15 20:50
明白了,讲得很清楚,谢谢!
|
|
10楼#
发布于:2004-12-15 21:04
祝贺
[编辑 - 12/15/04 by imagewxg] |
|
11楼#
发布于:2004-12-16 09:04
我觉的悬空不可以.
如果只接了LA31~LA28,而其它地址都悬空,若LOCAL端要对地址为0的寄存器进行访问,那么当LA31~LA28都为0(其它地址线悬空,状态不定),那9054怎么能认为是LA27~LA2都为0呢? |
|
12楼#
发布于:2004-12-16 09:16
其它地址当然不能悬空了,因为你需要用地位地址确定访问哪个寄存器的。
总的来说,设计时需要用高位地址译码产生一个片选信号CCS#,当然看你的设计了,也可以用其它的控制信号作为片选,在片选有效时需要在地位地址上给出访问的寄存器偏移地址。这样PCI9054会锁存该地址信号,然后将数据线上的数据读入或将寄存器中的内容输出。当然需要看一下时序,这一切都与LCLK有关。 |
|
13楼#
发布于:2004-12-16 16:19
呵呵,到底需不需要接啊?
哪位做过,给个定论吧. |
|
14楼#
发布于:2004-12-19 10:35
不知你本地的CPU是啥,低位地址只需要接在本地CPU上即可,用于产生PCI9054寄存器的地址信号。
|
|
15楼#
发布于:2004-12-19 13:38
我的LOCAL端接的是CPLD,如果低位地址可以不接的话,可以节省CPLD的I/O管脚.
|
|
16楼#
发布于:2004-12-19 16:57
你直接用CPLD控制访问PCI9054的寄存器,是吗?
如果是:低位当然要接了,产生地址信号,否则你怎么知道访问哪个寄存器呢? 如果不是:这将地位地址接在本地的CPU地址线上。 |
|
17楼#
发布于:2004-12-20 14:35
9054的内部寄存器从LOCAL端访问时,最高地址位为190H,也就是说只用LA2~LA8就可以了.那么LA9~LA31就没有必要接到CPLD上了,是不是可以悬空了?不过不能悬空,可否直接用电阻下拉?
|
|