资源描述
6.6什么叫“总线冲突”?总线冲突的后果因驱动器是OC门和三态门有什么不同?为了
避免总线冲突,必须对驱动器使能信号进行控制,图6.1是对三态双向驱动器加了控制逻辑的设计实例。试写出图中两个三态使能端信号、的逻辑表达式。并据此分析出存储器M和I/O端口在驱动器前后的地址空间范围。(提示:对驱动器后的M和I/O的访间必须以 (对读操作)或 (对写操作)有效为前提;驱动器前、后的M与I/O空间之和分别等于16位与8位地址线的总寻址空间。)
解:总线冲突是指在总线上同时有两个或两个以上的模块要传送相互矛盾的信息时引起的
冲突。冲突的表现形式后果因驱动总线的逻辑器件类型而异。若是OC门则不能传送高电平
“1”;若是三态门,则高电平“1”与低电平“0”接到一起相当于短路,可能烧坏器件。图6.1中、使能端信号、的逻辑表达式为:
由图可知,系统使用不同的读/写控制信号访问存储器M和I/O口, 即存储器和I/O端口是分开编址的,假定存储器和I/O端口的地址线分别为、.若要读驱动器后的M和I/O必须使有效,由表达式可知:
当时.允许读驱动器后的M
当时,事,允许读驱动器后的I/O:,
据此可知,驱动器后的M空间为8000H~0FFFFH; I/O空间为80H~0FFH。
驱动器前、后的M和I./O空间之和分别等于16位与8位地址线的总寻址空间。所以,驱动器前的M和I./O空间分别为0000H~7FFFH和00H~7FH。
6.7在三线菊花链仲裁中,主控器获得总线占用权的必要条件之一是检测到由无效变有效的边沿,为什么要这样规定?如果把该必要条件变成只需检测到有效即可,行不行?为什么?试结合波形图予以说明.
解:规定该必要条件的目的是避免总线冲突。如果把该必要条件变成只需检测到有效即可是不行的。下面结合图6.2予以说明。
假定当前没有主控器占用总线.而此时提出总线请求. 但没有请求,仲裁器将发出总线允许信号(BG有效),因没有提出总线请求.在收到BG时不接管信号总线,而是将BG信号向后传递,当接收到BG信号时,开始接管总线;若在BG信号已过,但还未撤销时, 也提出了总线请求,而这时、,表明也接管总线的条件,也接管总线,从而出现、同时占用总线的情况,产生总线冲突。.
展开阅读全文