阅读:2829回复:12
请教pci9054主模式下的操作问题
pci9054工作在主模式(pci initiator)下,现在的问题是:
本地处理器可以正确访问pci9054的内部寄存器,但访问PCI总线侧的IO或Memory空间时,pci9054不能输出ready#信号。哪位有这方面的经验请指点一下,多谢! |
|
最新喜欢:jackyw... |
沙发#
发布于:2004-11-12 11:59
用户被禁言,该主题自动屏蔽! |
|
板凳#
发布于:2004-11-12 15:33
是这样的,在initiator方式下的PCI9054的ready#信号是输入信号的,你可能搞错了.
|
|
地板#
发布于:2004-11-15 19:42
请问内部寄存器的地址怎么确定呀?俺正郁闷呢
|
|
地下室#
发布于:2004-11-15 21:42
先确定vendor id的地址,再用偏移地址确定寄存器的地址就可以了.
|
|
5楼#
发布于:2004-11-25 17:48
感谢老大回复,不过在Initiator模式下ready#信号是9054的输出信号,手册上的时序图中明确标出了,在5.6节。
已查明ready#没有输出的原因是板上没有加PCI仲裁器。 |
|
6楼#
发布于:2004-11-25 17:49
感谢老大回复,不过在Initiator模式下ready#信号是9054的输出信号,手册上的时序图中明确标出了,在5.6节。
已查明ready#没有输出的原因是板上没有加PCI仲裁器。 neibu |
|
7楼#
发布于:2004-11-25 17:52
手册中给出了寄存器的偏移,对本地处理器而言,自己加一个基地址就可以了,外加地址译码电路对基地址进行译码。
|
|
8楼#
发布于:2004-11-25 19:26
请问基地址示自己随便加的吗
|
|
9楼#
发布于:2004-11-26 09:15
基地址是自己加的,只要与板上的其他器件的地址不冲突就行。
9054的ccs#信号是根据自己加的这个基地址进行译码而得到的。 |
|
10楼#
发布于:2004-12-02 20:47
现在访问内部寄存器时,读可以,当写时,计算机就死掉了,请问是什么原因?都需要对那些信号译码?地址在eeprom中有体现吗?
|
|
11楼#
发布于:2004-12-03 09:28
回复10搂:
地址译码是针对本地处理器的地址空间而言的,这个地址不在EEPROM中体现。 举例来说: 假定本地处理器的地址范围为0x00000000 ~ 0xffffffff,分配给9054的地址空间为0x88000000 ~ 0x89ffffff。 对高7位地址即A31~A25 (1000 100)进行译码得到ccs#,本地处理器的其他位地址A24~A2直接接9054的LA24~LA2。9054的高位地址接地就行了。 如果操作不正确,建议看看ADS# CCS# BLAST# READY# WAIT# LW/NR等信号的时序 |
|
12楼#
发布于:2004-12-04 13:16
谢谢楼上的回答。我现在能读到数据,但是第二个数据不对,现在正在调呢,可能是blast不对
|
|