阅读:2266回复:5
请PCI9054的高手赶快帮忙啊--
我做一数据采集系统,AD采集的数据经双口RAM缓存之后经PCI9054传至PC,其中的控制逻辑由CPLD来实现,PCI9054本地端用的16位数据线直接连接到双口RAM,地址线和控制线连到CPLD,请问我要让PC通过CPLD去控制AD进行数据,打算在CPLD里构建一些寄存器这些寄存器的值可以通过PC设置,根据这些值可以实现对A/D芯片的不同控制。
我的双口映射到PC的是Memory,而CPLD构建的寄存器映射到PC的是IO(用来控制采集数据)。请问我要想对CPLD内的寄存器进行读写,那该通过哪些信号线啊,数据线已经连到双口RAM了啊,还望高人多多指点啊,或者给出个别的解决方法实现控制,主要就是实现对AD采集开始与中止的控制。 |
|
沙发#
发布于:2004-12-15 20:56
ADS#,LWR#还有高位地址线(比如LA20)都接到CPLD上了的话,就利用逻辑采样9054访问高位地址,如果9054读第1M字节偏移上的内容,这时LA20就应该是高,这时就可以发个脉冲开始采集,如果是写该地址,就停止采集。可否?
|
|
板凳#
发布于:2004-12-19 20:43
请问我的双口RAM是分成两块,一块写入一块读取,交替进行,所以我发中止数据采集命令时,9054可能还在读取数据呢,那我发的这个用来实现中止命令的地址时会不会和现在正进行的读冲突啊?
请一楼的大哥或别的大虾指点一下阿! |
|
地板#
发布于:2004-12-22 18:04
我认为不会冲突。
|
|
地下室#
发布于:2004-12-22 21:56
请楼上的大哥具体解释一下,我怎么觉得有可能出现冲突啊!
|
|
5楼#
发布于:2004-12-23 15:50
我想这里可能会存在pci总线上的竞争,但不会发生冲突。我对不发生冲突的理解是,通过9054读到的采样数据不会因此产生错误,并且读高地址也会令cpld正确产生停止命令。
|
|