阅读:1202回复:10
很简单的ISA的译码问题
最近做好了驱动和硬件联调,硬件是个简单的ISA的板子,驱动要写ISA的8位端口。我想问的是在没有插上ISA板子的时候,我执行我的驱动,能不能在数据线(直接测量ISA插槽)D0-D7上看到我的驱动中要写到ISA板子的数据?还是一些很无规律的数据?
问题也可以这么说,如果ISA板子的译码不正确的话,数据肯定是写不到ISA板子的寄存器里的,总线上的数据线上是否有我要写往板子的数据? |
|
|
沙发#
发布于:2003-08-01 16:34
总线上应该有数据,但您只看D0-D7,恐怕很难发现您的数据,因为您难以知道总线上哪一时刻的数据是您写入的。如果使用逻辑分析仪同时监视地址、数据和控制总线,再设定地址线=“您的写入地址”为触发条件,是可以监视到数据的。不过,作为ISA的地址译码电路,相对应该比较容易实现。
|
|
板凳#
发布于:2003-08-01 21:21
谢谢楼上大哥的回答,我也是这么认为的,如果译码无效,数据线上也应当有我发送的数据,只是译码无效,没真正把数据写入寄存器!
|
|
|
地板#
发布于:2003-08-04 10:05
数据线上一定会发出来的,
如果有问题的话看一下你译码器前后的信号。 |
|
|
地下室#
发布于:2003-08-05 08:25
我现在的情况是,数据线上的信号很乱,我是用逻辑分析仪看的,我的驱动在不停的执行,不停地往总线发数据,看来只有看片选信号是否有效了,如果有效,说明译码成功,否则失败!是这样吧?
|
|
|
5楼#
发布于:2003-08-07 21:26
现在用逻辑分析仪能看到IOW信号为低的时候,我发送的数据了,和我在驱动中写的数据一样,说明我成功发送数据了。
另外我还想知道的是对于ISA,8位的I/O写,译码,哪些控制信号线是必须的?? |
|
|
6楼#
发布于:2003-08-07 22:48
以下在8位操作下必须的信号:
ior,iow,aen,ale aen是在dma传送过程中,避免总线冲突的信号,在其为高的时候禁止io译码。 ale是地址锁存,下降沿锁存地址。 其他中断和时钟是可选的 |
|
7楼#
发布于:2003-08-08 09:26
以下在8位操作下必须的信号: 谢谢斑竹的回答,我不是做硬件的,很菜的! 但感兴趣,想研究研究,你说的AEN,这个信号线,如果我是简单的8位I/O传输,不用DMA的话,也需要吗?我还是有点糊涂,还有就是地址信号一定要锁存吗??我看时序图上,地址线持续的时间很长,可以不用锁存吧?很菜,见笑了! |
|
|
8楼#
发布于:2003-08-10 19:31
怎么,这个问题很难吗??
|
|
|
9楼#
发布于:2003-08-10 23:52
在isa的dma传送过程中,aen是一直有效的,所以使用aen无效的时候来译码地址,避免总线冲突。
地址线可以不用锁存,直接译码也可以。 |
|
10楼#
发布于:2003-08-11 19:32
谢谢斑竹的回答,放分!
|
|
|