hazeline
驱动牛犊
驱动牛犊
  • 注册日期2003-03-06
  • 最后登录2003-05-24
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
阅读:3757回复:4

PCI9054如何实现LOCAL端对内部寄存器的读写?

楼主#
更多 发布于:2003-05-24 01:13
PCI9054如何实现LOCAL端对内部寄存器的读写?
我现在想通过从local端(FPGA)对9054内部寄存器(doorbell寄存器)写入数据,以实现local端中断产生,应该如何编写逻辑? 我现在的中断逻辑一启动就会死机,这是怎么回事?谁有现成的参考逻辑程序,能否给俺参考一下,谢谢!
tianhaolee@yahoo.com
鸟生鱼汤
imagewxg
驱动小牛
驱动小牛
  • 注册日期2003-05-22
  • 最后登录2016-01-09
  • 粉丝0
  • 关注0
  • 积分221分
  • 威望23点
  • 贡献值0点
  • 好评度22点
  • 原创分0分
  • 专家分0分
沙发#
发布于:2003-05-26 10:50
1、参考PCI9054文档FIGUE4-7!
2、在对LOCAL寄存器读写时,首先发出一个地址信号,该地址就是寄存器相对于LOCAL端的地址。
3、地址有效时,要使得CCS#信号有效,这样PCI9054就会锁存该地址。就是使用ADS进行地址译码的使能信号。
4、然后通过读写信号和数据信号将数据写入指定的寄存器中。
sandybull
驱动牛犊
驱动牛犊
  • 注册日期2002-09-30
  • 最后登录2003-11-03
  • 粉丝0
  • 关注0
  • 积分0分
  • 威望0点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2003-05-26 18:32
这些是PLX的技术知识库中的,希望对你有用:

1.
Question
Local Access to PCI9054 Internal Registers
Answer
Local Access to PCI9054 Internal Registers requires valid LBE# signals even though the 9054 register data is 32-bit aligned.

2.Question
8-bit and 16-bit Local Bus Access to Internal Registers
Answer
Access to the internal registers of PCI 9080 and PCI 9054 from Local Bus must be with a 32-bit non-pipelined bus. 8-bit and 16-bit devices accessing to the internal registers of PCI 9080 and PCI 9054 must implement external data latches to combine the data for a 32-bit data access.

3
Question
Local Access to Internal Registers
Answer
If you want to access internal registers from the Local Bus, your local processor needs to drive ADS#, S0# (if the address decode pin ADMODE = 0), and appropriate offset address to the internal register. When the data is ready to be read, 9080 will assert LRDYo# to the processor signaling the master to latch in the data.
 

 

dick233130
驱动牛犊
驱动牛犊
  • 注册日期2007-10-08
  • 最后登录2011-01-14
  • 粉丝1
  • 关注1
  • 积分9分
  • 威望91点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地板#
发布于:2010-10-26 15:25
我最近也在弄FPGA+PCI的开发板,我按数据手册上的Timing Diagram 5-13以及5-14 本地总线对配置寄存器的读写时序进行设计的,寄存器的地址是数据手册上寄存器那一章上的Local Access(Offset from Chip Select Addresss)这一栏上标注的,可是当我下载进去之后,发现寄存器的根本没有改变。说明一下,我需要在FPGA端启动一次DMA传输,需要对DMA的相关寄存器进行配置。那位大侠指点一下,是不是在本地端对内部DMA寄存器访问的时候,还需要有什么其他的寄存器进行设置,或者我选用的这个地址是不是正确的?
dick233130
驱动牛犊
驱动牛犊
  • 注册日期2007-10-08
  • 最后登录2011-01-14
  • 粉丝1
  • 关注1
  • 积分9分
  • 威望91点
  • 贡献值0点
  • 好评度0点
  • 原创分0分
  • 专家分0分
地下室#
发布于:2010-10-29 17:52
哪位大侠帮帮忙
游客

返回顶部