第二章 I/O 端口地址译码技术

56
微微微微微微微微微微微微 微微微 微微微 I/O I/O 微微微微微微微微 微微微微微微微微 微微 微微 微微 微微 I/O I/O 微微微微微微微 微微微微微微微 I/O I/O 微微微微微微微微微 微微微微微微微微微 I/O I/O 微微微微微微微微微微微微微微微微微微微微微微微微微微 微微微微微微微微微微微微微微微微微微微微微微微微微微 微微微微微微微微微微微微微微 微微微微微微 微微微微微微 微微微微微微 微微微微微微微微微微微微微微 微微微微微微微微微微微微微微 微微微微微 微微微微微 微微微微 微微微微 :( :( 1 1 微微微微微微微 微微微微微微微 2 2 微微微微微微微微微 微微微微微微微微微 3 3 微微微微微微微微微 微微微微微微微微微 4 4 微微微微微微微 微微微微微微微

description

第二章 I/O 端口地址译码技术. 前言 :对于 I/O 通道扩展电路或 I/O 接口电路的设计者来说, I/O 端口读写技术是主机与扩展电路或外设接口之间交换数据的基本方式, 端口地址译码 和 端口读写技术 的研究是计算接口技术要涉及的首要问题。 本章重点 :(1)端口的基本概念 (2)端口译码的基本方法 (3)简单的译码电路设计 (4)端口的访问控制. 2.1 I/O 端口及其编址方式. I/O 端口和 I/O 操作 - PowerPoint PPT Presentation

Transcript of 第二章 I/O 端口地址译码技术

Page 1: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

第二章 第二章 I/OI/O 端口地址译码技术端口地址译码技术 前言前言:对于:对于 I/OI/O 通道扩展电路或通道扩展电路或 I/O I/O 接口电接口电

路的设计者来说,路的设计者来说, I/OI/O 端口读写技术是主机端口读写技术是主机与扩展电路或外设接口之间交换数据的基本与扩展电路或外设接口之间交换数据的基本方式,方式,端口地址译码端口地址译码和和端口读写技术端口读写技术的研究的研究是计算接口技术要涉及的首要问题。是计算接口技术要涉及的首要问题。

本章重点本章重点:(:( 11 )端口的基本概念)端口的基本概念 (( 22 )端口译码的基本方法)端口译码的基本方法 (( 33 )简单的译码电路设计)简单的译码电路设计 (( 44 )端口的访问控制)端口的访问控制

Page 2: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

2.1 2.1 I/OI/O 端口及其编址方式端口及其编址方式I/OI/O 端口和端口和 I/OI/O 操作操作端口的概念端口的概念:把:把 I/OI/O 接口电路中能被接口电路中能被 CPUCPU 直接访直接访

问的寄存器或某些特定的器件称之为端口问的寄存器或某些特定的器件称之为端口 ((Port)Port)I/OI/O 端口的一般特性端口的一般特性::

(( 11 )) I/OI/O 端口是端口是 CPUCPU 与与 I/OI/O 设备直接通信设备直接通信的地址的地址

(( 22 )) CPUCPU 可以通过这些端口发送命令、读可以通过这些端口发送命令、读取状态和传送数据取状态和传送数据

(( 33 )一个接口通常含有几个端口)一个接口通常含有几个端口 ,, 比如比如 :: 命令命令口、状态口、数据口等。有的接口包括的端口口、状态口、数据口等。有的接口包括的端口少少 (( 如如 82518251 、、 82598259 接口芯片只有两个端口接口芯片只有两个端口 )) ;;有的接口的端口多有的接口的端口多 (( 如如 82378237 有有 1616 个端口个端口 ,825,82555 有有 44 个端口个端口 ))

Page 3: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

I/OI/O 端口及其编址方式端口及其编址方式(( 44 )对端口的操作也有所不同:有的端口只)对端口的操作也有所不同:有的端口只能写或只能读能写或只能读 ,, 有的端口既可以读也可以写。一有的端口既可以读也可以写。一般般 ,, 一个端口只能写入或读出一种信息,也可能一个端口只能写入或读出一种信息,也可能几种信息共用一个端口几种信息共用一个端口

比如,比如, 82558255 的一个命令口可以接收方式控制字和的一个命令口可以接收方式控制字和位控制字这两种命令。位控制字这两种命令。

I/OI/O 操作操作是对是对 I/OI/O 端口进行读写操作,不是对端口进行读写操作,不是对 I/OI/O 设备直设备直

接操作。如何实现对这些端口的访问接操作。如何实现对这些端口的访问 ,, 这就是所谓这就是所谓的的 I/OI/O 端口的寻址方式。端口的寻址方式。

Page 4: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

端口地址编址方式端口地址编址方式 I/OI/O 端口编址方式有两种端口编址方式有两种 ::

(1)(1) 一种是一种是存储器映射存储器映射方式方式 ,, 即把端口地址与存即把端口地址与存储器地址统一编址储器地址统一编址 ,, 所以这种编址方式也称之所以这种编址方式也称之为统一编址方式为统一编址方式

(2)(2) 另一种是另一种是 I/OI/O 映射映射方式方式 ,, 即把即把 I/OI/O 端口地端口地址与存储器地址分别进行独立的编址址与存储器地址分别进行独立的编址 ,, 也称之也称之为独立编址。为独立编址。

Page 5: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

两种编址方式的特点两种编址方式的特点统一编址的特点:统一编址的特点:

(1)(1) 这种编址方式是从存储空间中划出一部分地这种编址方式是从存储空间中划出一部分地址空间分配给址空间分配给 I/OI/O 设备设备 ,, 而把而把 I/OI/O 接口中的端口接口中的端口作为存储器单元一样进行访问作为存储器单元一样进行访问 ,, 不设置专门的不设置专门的I/OI/O 指令指令。。

(2)(2) 在统一编址方式中在统一编址方式中 ,, 可以将可以将 I/OI/O 端口端口看作是看作是内存单元内存单元 ,, 从原则上说从原则上说 ,, 用于内存的指令均可用用于内存的指令均可用于外设于外设 ,, 这给编程者提供了方便。这给编程者提供了方便。

(3)(3) 缺点缺点:由于:由于 I/OI/O 端口端口占用内存地址占用内存地址 ,, 相对减相对减少了内存可用范围,从指令上少了内存可用范围,从指令上不易区分不易区分是访问内是访问内存还是访问外设的指令。这种编址方式在存还是访问外设的指令。这种编址方式在 6868 系系列和列和 6565 系列系列微机中得到广泛使用。微机中得到广泛使用。

Page 6: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

两种编址方式的特点两种编址方式的特点 独立编址的特点:独立编址的特点:

(1)(1) 在这种编址方式中在这种编址方式中 ,, 内存地址空间和内存地址空间和 I/OI/O 端口端口地址是地址是相对独立相对独立的。比如的。比如 ,, 在在 8086/8088 8086/8088 CPUCPU 中中 ,,其内存地址是从其内存地址是从 0000000000H--~FFFFFHH--~FFFFFH 连续的连续的 11MM字 节 , 其字 节 , 其 I/OI/O 端 口 的 地 址 范 围 从端 口 的 地 址 范 围 从 00000000H--H--~FFFFH~FFFFH 它们互相独立。它们互相独立。不会影响内存空间不会影响内存空间。 。

(2)(2) 设置了设置了专门的专门的 ININ 、、 OUTOUT 等等 I/OI/O 指令指令,且,且 I/OI/O指令短,指令短, CPUCPU 执行速度快。程序的可读性强。执行速度快。程序的可读性强。

(3) (3) 缺点:缺点:用于用于 I/OI/O 端口的端口的指令功能较弱指令功能较弱,在,在 I/OI/O操作中必须通过操作中必须通过 CPUCPU 的寄存器进行中转才能完成。的寄存器进行中转才能完成。这种编址方式在这种编址方式在 IntelIntel 系列、系列、 Z80Z80 系列微机及大系列微机及大型计算机得到广泛采用。型计算机得到广泛采用。

Page 7: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

独立编址方式的端口访问独立编址方式的端口访问

汇编语言中的汇编语言中的 I/OI/O 语句语句汇编语言中的端口输入输出语句只是汇编语言中的端口输入输出语句只是 8080X86X86 指令系指令系

统中的统中的 I/OI/O 指令助记符而已指令助记符而已 ,, 它是与指令系统直接对它是与指令系统直接对应的应的 ,, 记为记为 IN/OUTIN/OUT 。。这两条指令的这两条指令的语言规则语言规则为为 ::

IN IN 累加器, 累加器, {{ 端口地址端口地址 ||DX}DX}

OUT {OUT { 端口地址端口地址 ||DX},DX}, 累加器累加器

其中累加器可以是其中累加器可以是 ALAL 或或 AXAX 。。当累加器是当累加器是 ALAL时时 ,, 端口是端口是 88 位数据传送;当累加器是位数据传送;当累加器是 AXAX 时时 ,, 端口端口是是 1616 位数据传送。 位数据传送。 {{ 端口地址端口地址 ||DXDX}} 中的符号中的符号““ |”|” 表示前后两者之间只能选其一。表示前后两者之间只能选其一。

Page 8: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

寻址方式有两种寻址方式有两种::(1)(1) 直接寻址直接寻址:指令中直接访问端口地址:指令中直接访问端口地址 ,, 只能表示 只能表示

00 ~~ 255255 范围内的端口。范围内的端口。(2)(2) 间接寻址间接寻址:指令中的端口地址放于:指令中的端口地址放于 DXDX 中,通过中,通过

DXDX 访问端口。可以访问端口地址大于访问端口。可以访问端口地址大于 255255 的端口的端口例:从例:从 300300HH 端口读入一个字节或一个字,在发给端口读入一个字节或一个字,在发给 22

00HH 端口的指令为:端口的指令为:MOVMOV DX,300HDX,300H

ININ AL,DXAL,DX

ININ AX,DXAX,DX

OUTOUT 20H,AL20H,AL

OUTOUT 20H,AX 20H,AX

独立编址方式的端口访问独立编址方式的端口访问

Page 9: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

CC 语言中的端口读写函数语言中的端口读写函数在在 PCPC 系列微机上运行的系列微机上运行的几种几种 CC 语言版本语言版本 ,, 都支持都支持

端口的输入输出操作,端口的输入输出操作, CC 语言中有专门的访问端语言中有专门的访问端口的口的库函数库函数。这些库函数实际上是调用了汇编的。这些库函数实际上是调用了汇编的IN/OUTIN/OUT 指令指令

常用到的常用到的 Turbo CTurbo C函数如下函数如下 ::(1) (1) inportb() (2) outportb() inportb() (2) outportb() (3) clrscr() (4) getch() (3) clrscr() (4) getch() (5) kbhit() (6) delay() (5) kbhit() (6) delay() (7) sound() … (7) sound() …

Page 10: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

例 利用例 利用 inportb()inportb() 函数从所指定的输入端口函数从所指定的输入端口

22F0HF0H 读取一个字节的数据读取一个字节的数据 ,,并显示在屏幕上。并显示在屏幕上。

intportb()intportb() 的原型为的原型为 : : inportb(int port),inportb(int port), 头头文件为文件为 dos.hdos.h 。。

main()main()

{ unsigned char c;{ unsigned char c;

c=inportb(0x2f0);c=inportb(0x2f0);

printf("data=%0x",c);printf("data=%0x",c);

}}

Page 11: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

例 将一个字节输出到输出端口例 将一个字节输出到输出端口 360360HH 。。

outportb()outportb() 的原型的原型 :: void outportb(int port, unsigned void outportb(int port, unsigned

char value); char value);

头文件为头文件为 dos.hdos.h 。。

程序程序 : : main()main()

{{

outportb(0x360,0x55);outportb(0x360,0x55);

} }

Page 12: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

2.2 2.2 I/OI/O 端口地址分配端口地址分配

为什么要了解为什么要了解 PCPC 机的端口分配机的端口分配:对于接口设计者:对于接口设计者来说来说 , , 清楚系统清楚系统 I/OI/O 端口地址分配端口地址分配十分重要十分重要,因为,因为要把新的要把新的 I/OI/O 设备加入到系统中就要占据一些设备加入到系统中就要占据一些 I/OI/O地址空间,必须了解一些关于地址空间,必须了解一些关于 I/OI/O 空间的信息。如空间的信息。如哪些端口是计算机制造厂家为今后的开发而哪些端口是计算机制造厂家为今后的开发而保留保留的;的;哪些地址已哪些地址已分配分配给了别的设备给了别的设备 ,, 哪些端口地址是哪些端口地址是空空闲闲的。的。

PCPC 系列微机系统支持的端口数目及占用空间系列微机系统支持的端口数目及占用空间:端口:端口数为数为 10241024 个个;其端口地址;其端口地址空间是从空间是从 000000 ~~ 33FFHFFH,,采用采用非完全译码非完全译码,高,高 66 位地址线不考虑,因此,其位地址线不考虑,因此,其有效的译码地址是有效的译码地址是地址线地址线 A0--A9A0--A9 。。

Page 13: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

PCPC 系列微机系统中系列微机系统中 I/OI/O 接口分类接口分类按照按照 PCPC 系列微机系统中系列微机系统中 I/OI/O 接口电路的复杂程度接口电路的复杂程度

及应用形式及应用形式 ,, 可以把可以把 I/OI/O 接口的硬件接口的硬件分为两大类分为两大类 :: (1)(1) 系统板上的系统板上的 I/OI/O 接口芯片接口芯片这些芯片大多都是这些芯片大多都是可编程的大规模集成电路可编程的大规模集成电路 ,, 完成完成

相应的接口操作。如定时器相应的接口操作。如定时器 // 计数器、中断控制器、计数器、中断控制器、并行接口等。并行接口等。

在在 PC/ATPC/AT 微机中微机中 ,, 这些接口芯片是由如这些接口芯片是由如 82598259 、、 88237237AA 等芯片组成。随着等芯片组成。随着 PLDPLD 技术技术的发展,目前的发展,目前PCPC 机系统主板上的所有机系统主板上的所有 I/OI/O 接口功能,已集成在接口功能,已集成在一片或几片大规模集成电路芯片一片或几片大规模集成电路芯片中,常见的主板外中,常见的主板外围集成芯片有围集成芯片有 8238082380 、、 8282C26C26 、、 82C39182C391 等等。等等。

Page 14: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

PCPC 系列微机系统中系列微机系统中 I/OI/O 接口分类接口分类(2)(2) 扩展槽上的扩展槽上的 I/OI/O 接口控制卡接口控制卡这些接口控制卡是由若干个集成电路按一定的逻辑这些接口控制卡是由若干个集成电路按一定的逻辑

功能组成的功能组成的接口部件接口部件 ,, 如多功能卡、图形卡、串行如多功能卡、图形卡、串行通信卡、网络接口卡等。通信卡、网络接口卡等。

根据上面的分类根据上面的分类 ,,PCPC 系列微机把系列微机把 I/OI/O 端口地址空端口地址空间分为两部分间分为两部分 ,, 即把即把 10241024 个个端口的前端口的前 256256 个个端口端口(000--0(000--0FFH)FFH) 专供专供 I/OI/O 接口芯片接口芯片使用使用 ,, 后后 768768 个个端口端口 (100--3(100--3FFH)FFH) 为为 I/OI/O 接口控制卡接口控制卡使用,如表使用,如表2.12.1 和表和表 2.22.2 所示。所示。

Page 15: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

表表 2.12.1 系统板上接口芯片的端口地址系统板上接口芯片的端口地址

Page 16: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

表表 2.22.2 系统板上接口卡的端口地址系统板上接口卡的端口地址

Page 17: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

在选定在选定 I/OI/O 端口地址时的注意点端口地址时的注意点(1)(1) 凡是被系统配置占用了的端口地址凡是被系统配置占用了的端口地址一律不能使一律不能使

用用。。(2)(2) 原则上讲原则上讲 ,, 未被系统占用的地址用户都可以使未被系统占用的地址用户都可以使

用用 ,, 但对计算机厂家申明但对计算机厂家申明保留的地址保留的地址 ,, 不要使用不要使用 ,,以免发生以免发生 I/OI/O 端口地址重叠和冲突造成所设计的产端口地址重叠和冲突造成所设计的产品与系统不兼容。品与系统不兼容。

(3)(3) 通常通常 ,, 用户用户可使用可使用 300300H--31FHH--31FH,, 这是这是 PCPC 系系列微机留作实验卡用的。在用户可用的列微机留作实验卡用的。在用户可用的 I/OI/O 地址范地址范围内围内 ,, 为了避免与其他用户开发的接口控制卡发生为了避免与其他用户开发的接口控制卡发生地址冲突地址冲突 ,,最好采用最好采用地址开关地址开关。。

Page 18: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

2.3 2.3 I/OI/O 端口地址译码端口地址译码

当当 CPUCPU 执行执行 ININ 或或 OUTOUT 指令时,指令时, CPUCPU 地址总地址总线上输出的是线上输出的是 1616 位的端口地址位的端口地址,控制总线上输,控制总线上输出 与出 与 I/OI/O 相 关 的相 关 的 控 制 信 号控 制 信 号 如如 //IORIOR 、、 //IOWIOW 、、 AENAEN 信号等,数据总线上送出或读入信号等,数据总线上送出或读入要传送的数据要传送的数据。。

问题提出问题提出:怎样利用这些信号来选通某一个端:怎样利用这些信号来选通某一个端口并实现数据的传送?口并实现数据的传送?

由接口来完成由接口来完成。。即即对地址信号译码对地址信号译码,将产生的,将产生的译码信号同译码信号同 //IORIOR 或或 //IOWIOW 结合结合起来一同控制起来一同控制来选通端口,并对来选通端口,并对 I/OI/O 端口进行端口进行读或写读或写操作。操作。并将并将数据数据从数据总线从数据总线送出或读入送出或读入。。

Page 19: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

I/OI/O 地址译码电路地址译码电路译码电路中用到的信号线译码电路中用到的信号线::实际上实际上 I/OI/O 地址译码电路不仅与地址译码电路不仅与地址信号地址信号有关有关 ,,

而且还与而且还与控制信号控制信号有关。是把地址和控制信号进有关。是把地址和控制信号进行组合行组合 ,, 而产生对芯片的而产生对芯片的选择信号选择信号。因此要考虑。因此要考虑的信号线有:的信号线有:

(( 11 )地址线:)地址线: A0--A9A0--A9(( 22 ))一些控制信号一些控制信号::

A.A. 利用利用 //IORIOR 、、 /IOW/IOW 信号信号控制对端口的读控制对端口的读写。 确定写。 确定 CPUCPU 与与 I/OI/O 端口交换数据时的端口交换数据时的流流向向

B.B. 用用 AENAEN 信号信号控制控制非非 DMADMA 传送。传送。

Page 20: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

I/OI/O 地址译码电路地址译码电路

C.C. 用用 //IOCS16IOCS16 信号控制是信号控制是 88 位还是位还是 1616位的位的 I/OI/O 端口。用于确定数据端口。用于确定数据宽度宽度 (8(8位位 /16/16 位位 )) 。。

D.D. 用用 //SBHESBHE ( ( 或或 //BHE )BHE ) 信信号控制端口号控制端口奇偶地址奇偶地址。(偶地址通过。(偶地址通过 A0A0 选选通)通)

Page 21: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

I/OI/O 地址的译码方法地址的译码方法I/OI/O 端口地址译码的方法灵活多样端口地址译码的方法灵活多样 ,, 通常可由通常可由地址信号地址信号

和和控制信号控制信号的不同的不同组合组合来选择端口地址来选择端口地址 ,, 与存储器的与存储器的地址单元类似。地址单元类似。

一般是把地址信号分为两部分一般是把地址信号分为两部分::一部分一部分是是高位地址线高位地址线与与 CPUCPU 或总线的控制信号组或总线的控制信号组合合 ,, 经过译码电路产生一个经过译码电路产生一个片选信号片选信号 //CSCS ,,选择某选择某个个 I/OI/O 接口芯片,从而实现接口芯片的接口芯片,从而实现接口芯片的片间选择片间选择。。

另一部分另一部分是是低位地址线低位地址线直接连到直接连到 I/OI/O 接口芯片接口芯片 ,, 经经过接口芯片内部的地址译码电路选择该接口电路的过接口芯片内部的地址译码电路选择该接口电路的某个寄存器端口某个寄存器端口 ,, 即实现接口芯片的即实现接口芯片的片内寻址片内寻址。。

Page 22: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

I/OI/O 端口地址译码电路设计端口地址译码电路设计I/OI/O 端口地址译码分类端口地址译码分类::按照地址译码电路采用的元器件来分按照地址译码电路采用的元器件来分

(( 11 )门电路译码)门电路译码(( 22 )译码器译码)译码器译码(( 33 )) GALGAL 、、 PLDPLD 译码。译码。

按照译码电路的形式来看按照译码电路的形式来看(( 11 )固定式)固定式(( 22 )可选式译码。)可选式译码。

Page 23: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

固定式端口地址译码:固定式端口地址译码:(( 11 )用门电路进行端口地址译码)用门电路进行端口地址译码特点:特点:是一种最简单最基本的端口地址译码方法,是一种最简单最基本的端口地址译码方法,

一般多采用一般多采用与门与门、、与非门与非门、、反相器及或非门反相器及或非门等。等。如如 7474LS00 74LS08 LS00 74LS08 、 、

74LS0474LS04 、、 74LS3274LS32 、、 74LS3074LS30 等等例例 11 :图:图 2.12.1 的译码电路是实现对的译码电路是实现对 22F0HF0H 端口地端口地

址的,读操作。址的,读操作。

I/OI/O 端口地址译码电路设计端口地址译码电路设计

Page 24: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

图图 2.1 2.1 读读 22F0HF0H 端口地址译码器端口地址译码器

Page 25: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

电路说明电路说明::AA 、、 AENAEN参加译码参加译码 ,, 对端口地址译码进行控制对端口地址译码进行控制::只有当只有当 AEN=0AEN=0 时时 ,, 即不是即不是 DMADMA 操作时译码才操作时译码才有效;有效; 当当 AEN=1AEN=1 时时 ,, 即是即是 DMADMA 操作时操作时 ,,使译码无效。避免了在使译码无效。避免了在 DMADMA 操作时,对这些操作时,对这些I/OI/O 端口地址进行读端口地址进行读 // 写操作。写操作。

BB 、、 地 址 信 号地 址 信 号A9A8A7A6A5A4A3A2A1A0=10111100A9A8A7A6A5A4A3A2A1A0=101111000B0B 时,译码电路才有效。时,译码电路才有效。

CC 、、对端口进行读操作对端口进行读操作,所以,所以 //IOR=0IOR=0 ,,只有只有 //IOR=0IOR=0 时,译码电路才有效。时,译码电路才有效。

I/OI/O 端口地址译码电路设计端口地址译码电路设计

Page 26: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

例例 22 :同样的端口地址:同样的端口地址 22F0HF0H ,,实现对端口实现对端口22F0HF0H 进行读和写两种操作。电路如图进行读和写两种操作。电路如图 2.22.2 。。

I/OI/O 端口地址译码电路设计端口地址译码电路设计

Page 27: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

图图 2.2 2.2 用用 //IORIOR 、、 /IOW/IOW 控制端口地址译码控制端口地址译码

Page 28: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

电路说明:电路说明: AA 、、电路的译码输出用电路的译码输出用 //IORIOR 和和 //IOWIOW 信号信号进行进行

控制,以分别实现控制,以分别实现读写访问读写访问。。 BB 、、地址信号不变地址信号不变,此时的一个端口地址,此时的一个端口地址 ,, 等效等效

于两个端口地址。一个用于于两个端口地址。一个用于输入输入 ,, 一个用于一个用于输出输出。。 CC 、、 AENAEN 信号信号的作用同例的作用同例 11 。。

I/OI/O 端口地址译码电路设计端口地址译码电路设计

Page 29: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

(( 22 )用译码器进行端口地址译码)用译码器进行端口地址译码若接口电路中需要使用若接口电路中需要使用多个端口多个端口地址时,则采用地址时,则采用

译码器译码译码器译码比较方便比较方便。译码器的型号很多:如。译码器的型号很多:如 3-3-88 译码器译码器 7474LS138,8205LS138,8205 ;; 4-164-16 译码器译码器7474LS154LS154 ;; 双双 2-42-4 译 码 器译 码 器 7474LS139LS139 和和7474LS155LS155 等。等。

以以 3-83-8 译码器译码器 7474LS138LS138 为例,来说明这种译码为例,来说明这种译码方式的特点。方式的特点。

7474LS138LS138 是是 1414pin,DIPpin,DIP 封装,封装, 7474LS138LS138 的的真值表如表真值表如表 2.32.3 所示。所示。

I/OI/O 端口地址译码电路设计端口地址译码电路设计

Page 30: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

表表 2.3 742.3 74LS138LS138 输入输入 // 输出真值表输出真值表

Page 31: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

从表从表 2.32.3 可以看出可以看出 :: 当当满足满足控制电平控制电平 ,, 即把即把 G1G1 接高电平接高电平 ,,//G2AG2A 和和

//G2BG2B 接 低 电 平接 低 电 平 时时 ,, 则 输 出 的 状 态 由则 输 出 的 状 态 由CC 、、 BB 、、 AA 这三个输入信号的编码来决定这三个输入信号的编码来决定 ..

如如 :: 当当 CBA=000CBA=000 时时 ,/,/Y0=0;Y0=0; 当当 CBA=111CBA=111时时 ,/,/Y7=0.Y7=0. 由此可译出由此可译出 88 个译码选通个译码选通输出信号输出信号(( 低电平有效低电平有效 ),), 当控制条件当控制条件不满足不满足时时 ,, 则则输出全输出全为为 11,, 不产生译码选通输出信号不产生译码选通输出信号 ,, 即译码无效。即译码无效。

I/OI/O 端口地址译码电路设计端口地址译码电路设计

Page 32: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

图图 2.3 2.3 PC/XTPC/XT 系统板上接口控制电路的端口地址译码系统板上接口控制电路的端口地址译码

Page 33: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

PC/XTPC/XT 系统板上的接口控制电路的端口地址译码电路系统板上的接口控制电路的端口地址译码电路说明说明::

AA 、、地址线的地址线的高高 55 位位 A5--A9A5--A9 经过经过 7474LS138LS138 译码器,译码器,分别产生了分别产生了 DMAC8237DMAC8237 、、中断控制器中断控制器 82598259 、定时、定时 //计数器计数器 82538253 、并行接口、并行接口 82558255 等等接口芯片的接口芯片的片选信号片选信号。。

BB 、、地址线的地址线的低低 55 位位 A0--A4A0--A4 作为接口芯片作为接口芯片内部寄存内部寄存器器的访问地址的访问地址

当地址是当地址是 000000 ~~ 0101XHXH 时时 ,, 便有便有 //DMACSDMACS 输出为低,输出为低,选中选中 8237,8237, 由于由于 A0--A3A0--A3 已接已接 8237,8237, 故故 82378237 的口地的口地址是址是 000--01000--01FHFH ;;其他芯片的端口地址范围也容易看其他芯片的端口地址范围也容易看出,如出,如 82598259 的片选地址是的片选地址是 0202XX ~~ 03XH,03XH, 口地址范口地址范围是围是 020--03020--03FHFH 。。

I/OI/O 端口地址译码电路设计端口地址译码电路设计

Page 34: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

开关式可选端口地址译码开关式可选端口地址译码 如果用户要求接口卡的端口地址能如果用户要求接口卡的端口地址能适应不同的地适应不同的地

址分配址分配场合,或为系统以后扩充场合,或为系统以后扩充留有余地留有余地 ,, 则可以则可以使用使用开关式端口地址译码开关式端口地址译码。。

特点特点:这种译码方式可以通过:这种译码方式可以通过开关开关使接口卡的使接口卡的 I/OI/O端口地址根据要求加以端口地址根据要求加以改变改变而无需而无需改正改正电路电路

其电路结构形式有如下几种:其电路结构形式有如下几种:(( 11 )用比较器和地址开关进行地址译码)用比较器和地址开关进行地址译码原理:在接口地址译码中原理:在接口地址译码中 ,, 可采用可采用比较器比较器,将地址,将地址总线上送来的地址总线上送来的地址 ,, 或者某一地址范围与预设的地或者某一地址范围与预设的地址或地址范围进行比较。址或地址范围进行比较。若两者相等若两者相等 ,, 便表示地址便表示地址总线送来的总线送来的端口地址端口地址即为即为接口地址或接口所用到的接口地址或接口所用到的口地址范围口地址范围。于是便可以启动接口执行预定的操作。。于是便可以启动接口执行预定的操作。

I/OI/O 端口地址译码电路设计端口地址译码电路设计

Page 35: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

常用的比较器常用的比较器:有:有 44 位比较器位比较器 7474LS85LS85 、、 88 位比位比较器较器 7474LS688LS688

以以 7474LS688LS688 为例,说明此种译码电路的特点。为例,说明此种译码电路的特点。7474LS688LS688工作原理工作原理:将输入的:将输入的 88 位数据位数据 P0--P7P0--P7

与另一与另一 88 位数据位数据 Q0--Q7Q0--Q7 相应进行比较相应进行比较可可比较大于、小于或等于比较大于、小于或等于 ,, 在地址译码中仅使用比在地址译码中仅使用比

较较相等相等的功能的功能 ,, 大于、小于则不用大于、小于则不用如图如图 2.4 2.4 用比较器和开关组成的可选译码电路用比较器和开关组成的可选译码电路

I/OI/O 端口地址译码电路设计端口地址译码电路设计

Page 36: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

图图 2.4 2.4 用比较器和开关组成的可选译码电路用比较器和开关组成的可选译码电路

Page 37: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

用比较器和开关组成的可选译码电路说明用比较器和开关组成的可选译码电路说明::A.A. 把把 P0--P7P0--P7 连接到有关的地址线和控制线;连接到有关的地址线和控制线;

Q0--Q7Q0--Q7 连接地址开关;连接地址开关; 输出端输出端 PP 接到两片接到两片7474LS138LS138 的控制端的控制端 //G2BG2B 上;上; //IORIOR 和和 //IOWIOW 分别分别接两片接两片 7474LS138LS138 的的 //G2AG2A 端;端; A0A0 、、 A1A1 、、 A2A2 接接138138 的的 AA 、、 BB 、、 CC 端端;; A9A9 、、 AENAEN 接接 P6P6 和和 P7P7..

B.B. 根据比较器的特性根据比较器的特性 ,, 当输入端当输入端 P0--P7P0--P7 的地址与的地址与输入端输入端 Q0--Q7Q0--Q7 的开关的开关状态一致状态一致时,输出为时,输出为低电平低电平 ,,使译码器进行译码,因此使译码器进行译码,因此 ,, 使用时可预置使用时可预置 DIPDIP 地址地址开关为某一值开关为某一值 ,, 得到一组所要求的端口地址得到一组所要求的端口地址

C.C./IOR/IOR 和和 //IOWIOW 参加译码参加译码 ,, 分别产生分别产生 88 个读、写端个读、写端口地址。口地址。

I/OI/O 端口地址译码电路设计端口地址译码电路设计

Page 38: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

E.E. 由电路可知:当由电路可知:当 A9=1A9=1 、、 AEN=0AEN=0 时时译码才译码才有效。因为电路中设置有效。因为电路中设置 Q6=1Q6=1 、、 Q7Q7 == 00 。。

(( 22 ))使用跳线的可选式译码电路使用跳线的可选式译码电路 可以使用可以使用跳线跳线或或跳接开关跳接开关,对译码器输入地址作,对译码器输入地址作反相反相或或不反相不反相的选择的选择

I/OI/O 端口地址译码电路设计端口地址译码电路设计

Page 39: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用 图图 2.5 2.5 用跳线改变输入的可选式译码电路用跳线改变输入的可选式译码电路

Page 40: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

2.4 2.4 GALGAL 器件在器件在 I/OI/O 端口地址译码中的端口地址译码中的应用应用

GALGAL 器件的特点器件的特点::GALGAL 器 件 是 可 编 程 逻 辑 器 件器 件 是 可 编 程 逻 辑 器 件

PLDPLD(Programmable Logic Device)(Programmable Logic Device) 的一种。的一种。GALGAL 器件的特点器件的特点:较高的功能:较高的功能集成度集成度,可以实现,可以实现组合逻辑和时序逻辑电路的多种组合;组合逻辑和时序逻辑电路的多种组合;电可擦除电可擦除;;硬件加密硬件加密;;灵活灵活的现场的现场可编程可编程特性;和较快的特性;和较快的速度速度。。

PLDPLD 器件的种类器件的种类::GALGAL(Generic Array Logic)(Generic Array Logic)

一片一片 GALGAL 的电路规模可达几百门的电路规模可达几百门

Page 41: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

GALGAL 器件在器件在 I/OI/O 端口地址译码中的应用端口地址译码中的应用EPLD/CPLDEPLD/CPLD(Erasable Programmable (Erasable Programmable

Logic Device)Logic Device)EPLDEPLD 规模可达几千门规模可达几千门

FPGAFPGA(Field Programmable Gate Array)(Field Programmable Gate Array)FPGAFPGA 的规模可高达几十的规模可高达几十 --100--100万门万门

GALGAL 器件的开发工具和开发步骤器件的开发工具和开发步骤::开发工具开发工具: (: ( 11 ))硬件工具硬件工具:编程器(与:编程器(与

EPROMEPROM 编程器类似);(编程器类似);( 22 ))软件工具软件工具:专用的:专用的编译程序和汇编程序。一般编译程序和汇编程序。一般 GALGAL 可编译的输入文可编译的输入文件格式有:布尔方程、真值表、状态转换图。件格式有:布尔方程、真值表、状态转换图。

以以 FM(FAST MAPFM(FAST MAP ))为例说明为例说明 GALGAL 器件的开发器件的开发步骤和方法。步骤和方法。 FMFM 是通用的汇编型软件,它可对一是通用的汇编型软件,它可对一定格式的定格式的 GALGAL 编程输入文件(扩展名编程输入文件(扩展名 ..PLDPLD ))进进行汇编,行汇编,

Page 42: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

GALGAL 器件在器件在 I/OI/O 端口地址译码中的应用端口地址译码中的应用生 成生 成 列 表 文 件列 表 文 件 (.(.LST)LST) 、、 溶 丝 状 态 图 文 件溶 丝 状 态 图 文 件

(( ..PLTPLT )、)、分布数据代码文件分布数据代码文件(( ..JED)JED) ,,然后利然后利用编程器把分布数据写入到用编程器把分布数据写入到 GALGAL 。。

GALGAL 器件的开发步骤和方法器件的开发步骤和方法以以 GAL16V8GAL16V8 为例说明为例说明 GALGAL 的开发过程。的开发过程。普通型器件普通型器件 GAL16V8GAL16V8的特点的特点(1)(1)GAL16V8GAL16V8 的的 1--91--9 和和 1111引脚固定作输入使用引脚固定作输入使用

13--1813--18 也可以配置成输入引脚也可以配置成输入引脚因此输入最多可为因此输入最多可为 1616 个。个。

(2)(2)GAL16V8GAL16V8最多可配置最多可配置 88 个输出引脚。个输出引脚。

Page 43: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

(3)(3)GAL16V8GAL16V8 的规模为的规模为 64×3264×32 。。 (4)(4) 它可被配置成它可被配置成寄存器模式寄存器模式、、复合模式复合模式和和简单简单模式模式

图图 2.6 2.6 GAL16V8GAL16V8 的的 DIPDIP封装引脚图封装引脚图

GALGAL 器件在器件在 I/OI/O 端口地址译码中的应用端口地址译码中的应用

Page 44: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

图 2.6 GAL16V8 的 DIP封装引脚图

Page 45: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

GALGAL开发过程开发过程::在用在用 PLDPLD 器件设计逻辑电路时,可避免花费大量时器件设计逻辑电路时,可避免花费大量时

间去推导、化简与转换逻辑函数;也不必费心地去间去推导、化简与转换逻辑函数;也不必费心地去考虑器件内部的逻辑关系。设计人员只要选择满足考虑器件内部的逻辑关系。设计人员只要选择满足设计要求的器件就可以了,在设计中使用的软件越设计要求的器件就可以了,在设计中使用的软件越高级高级 ,, 设计过程就越简单。设计过程就越简单。

常 用 的常 用 的 HDLHDL 语 言语 言 ((Hardware Description Hardware Description Language)Language) 有有 VHDLVHDL 、、 Verilog HDL, Verilog HDL, ABELABEL 、、 CUPLCUPL 等等

一般可按下列步骤进行设计一般可按下列步骤进行设计 : : (1)(1) 设计构思设计构思。。

用真值表、逻辑方程和状态图这三种方法中的任用真值表、逻辑方程和状态图这三种方法中的任一种将所要设计的问题变为设计文件一种将所要设计的问题变为设计文件

GALGAL 器件在器件在 I/OI/O 端口地址译码中的应用端口地址译码中的应用

Page 46: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

(2)(2) 选择器件型号。选择器件型号。根据设计文件的要求根据设计文件的要求 ,, 选择合适的工业器件型号选择合适的工业器件型号要考虑到输入、输出的引脚数目要考虑到输入、输出的引脚数目 ,, 是组合逻辑器件还是组合逻辑器件还是时序逻辑器件等。是时序逻辑器件等。

(3)(3) 将设计文件按照所应用的将设计文件按照所应用的 HDLHDL 语言的要求语言的要求 ,,写成源文件写成源文件,然后上机编译、仿真和测试。,然后上机编译、仿真和测试。

(4)(4) 用编程器编程。用编程器编程。将生成的编程文件下载到编将生成的编程文件下载到编程器程器 ,, 对器件编程。此处的器件是最终所使用的对器件编程。此处的器件是最终所使用的器 件器 件 ,, 如如GAL16V8GAL16V8 、、 GAL20V8GAL20V8 、、 AT22V10AT22V10 等。等。

GALGAL 器件在器件在 I/OI/O 端口地址译码中的应用端口地址译码中的应用

Page 47: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

用逻辑方程实现设计, 用逻辑方程实现设计, ABELABEL 语言实现的源文件语言实现的源文件格式如下格式如下::

GAL16V8GAL16V8 ;; 器件型号,用大写器件型号,用大写BASIC GATESBASIC GATES ;; 标题标题 ,, 说明说明 GALGAL 的应用的应用 ,,用用 ;;户自定义户自定义

XU AIQING MAR.15 1998 BITIXU AIQING MAR.15 1998 BITI

;; 设计者姓名、日期等信息设计者姓名、日期等信息BGATESBGATES ;; 电子标签电子标签C D F G M N P Q I GND ;C D F G M N P Q I GND ;引脚名,可占用多行,引脚名,可占用多行,J K L R O H E B A Vcc ;J K L R O H E B A Vcc ; 一般书写时,输入和输一般书写时,输入和输

;; 出分开。出分开。

GALGAL 器件在器件在 I/OI/O 端口地址译码中的应用端口地址译码中的应用

Page 48: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

B=/AB=/A ;; 逻辑方程,可占用多行逻辑方程,可占用多行 ;; 取反取反E=C*DE=C*D ;; 与门与门H=F+CH=F+C ;; 或门或门L=/I+/J+/KL=/I+/J+/K ;; 与非门与非门O=/M*/NO=/M*/N ;; 或非门或非门R=P*/Q+/P*QR=P*/Q+/P*Q ;;异或门异或门DESCRIPTIONDESCRIPTION ;;关键字,必须大写,不可缺关键字,必须大写,不可缺注意:注意:(( 11 )第一行和第四行位置不可变;第)第一行和第四行位置不可变;第 22 、、 33 行由行由

设计者自定。关键字设计者自定。关键字 DESCRIPTIONDESCRIPTION 不可缺,且不可缺,且一定要顶格写,即前面不留空格。一定要顶格写,即前面不留空格。

GALGAL 器件在器件在 I/OI/O 端口地址译码中的应用端口地址译码中的应用

Page 49: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

(( 22 )器件类型和关键字必须大写。)器件类型和关键字必须大写。(( 33 )引脚名最多由)引脚名最多由 88 个字符组成,名字间可用空个字符组成,名字间可用空格、制表符、回车符隔开。不用的引脚习惯上用格、制表符、回车符隔开。不用的引脚习惯上用NCNC 表示,地用表示,地用 GNDGND 表示,电源用表示,电源用 VccVcc 表示。引表示。引脚名必须按引脚号顺序排列。脚名必须按引脚号顺序排列。

(( 44 )输入文件的核心是输入和输出信号的逻辑方)输入文件的核心是输入和输出信号的逻辑方程。程。

采用采用 GALGAL 的的 I/OI/O 端口地址译码电路设计端口地址译码电路设计1.1. 要求要求 (( 11 )利用)利用 GALGAL 器件设计器件设计 MFIDMFID 多功能微机接多功能微机接

口实验平台的口实验平台的 I/OI/O 端口地址译码电路端口地址译码电路

GALGAL 器件在器件在 I/OI/O 端口地址译码中的应用端口地址译码中的应用

Page 50: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

(( 22 )其端口地址范围为)其端口地址范围为 300300H~3FFHH~3FFH ,,分成分成 1616个段,每个段包含个段,每个段包含 44 个接口芯片,每个接口芯片个接口芯片,每个接口芯片内部拥有内部拥有 44 个端口。个端口。

2. 2. 分析分析 ① ①地址线的分配与使用地址线的分配与使用。如表。如表 2.72.7 所示。所示。

地址线地址线 0000A9A8A9A8 A7A6A5A4A7A6A5A4 A3A2A1A0A3A2A1A0

二进制二进制 00 1 000 1 0 1 1 1 11 1 1 1 1 0 0 01 0 0 0

十六进制十六进制 22 FF 88

GALGAL 器件在器件在 I/OI/O 端口地址译码中的应用端口地址译码中的应用

Page 51: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

②②参加译码的控制线参加译码的控制线。根据需要,有。根据需要,有IOWIOW 、、 IORIOR 和和 AENAEN三根控制线参加译码。 三根控制线参加译码。

③③GALGAL 器件的选择器件的选择。从上述分析可知,除去不。从上述分析可知,除去不参加译码的参加译码的 AlAl 和和 AoAo 之外,还有之外,还有 88根地址线,其根地址线,其中中 A7—A4A7—A4四根地址线,经四根地址线,经 DIPDIP开关和比较器进开关和比较器进行段选,比较器的输出线仅有行段选,比较器的输出线仅有 11 根根 A=BA=B线,所线,所以,送到以,送到 GALGAL 的地址线,只有的地址线,只有A9A9 ,, A8A8 ,, A=BA=B ,, A3A3 和和 A2A2五根,再加上五根,再加上 33根根控制线,共控制线,共 88根线作为根线作为 GALGAL 的输入线。的输入线。 GALGAL 的的输出线应包括输出线应包括 44根片选信号线根片选信号线 ,1,1根根 7474LS245LS245 的的选通线选通线 DSDS 和和 11根方向控制线根方向控制线 DIRDIR ,,共共 66根,所根,所以可选择以可选择 GALl6V8GALl6V8 作译码器。 作译码器。

GALGAL 器件在器件在 I/OI/O 端口地址译码中的应用端口地址译码中的应用

Page 52: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

33.设计.设计 ① ①硬件设计。硬件设计。 MFIDMFID 多功能微机接口实验平台多功能微机接口实验平台

的译码电路如图的译码电路如图 22.. 1111 所示。 所示。 ② ②软件设计。软件设计。 44 .. GALGAL 器件译码电路的编程器件译码电路的编程 ①① 编写端口地址译码电路的编写端口地址译码电路的 GALGAL 输人源文件输人源文件

(( 设计说明书设计说明书 )) 。。 ②②利用利用 FX.EXEFX.EXE 对对 DECODER.PLDDECODER.PLD 进行汇编,进行汇编,自动生成自动生成 33 个文件:个文件: 文件文件 1——1—— 列表文档文件列表文档文件 DECODE.LSTDECODE.LST ::包包

括源文件和括源文件和 GAL16V8GAL16V8 的引脚分配图。的引脚分配图。

GALGAL 器件在器件在 I/OI/O 端口地址译码中的应用端口地址译码中的应用

Page 53: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

文件文件 2——2——熔丝状态分配图文件熔丝状态分配图文件DECODE.PLTDECODE.PLT ::符号“符号“ X”X” 表示门阵列节点已表示门阵列节点已连接,符号“连接,符号“ -”-” 表示节点未连接。参见书上表示节点未连接。参见书上P26-P27P26-P27 图图 2-132-13 。。

文件文件 3——3—— 编程信号代码文件编程信号代码文件DECODE.JEDDECODE.JED ::包括门阵列中所有节点的编包括门阵列中所有节点的编程信息。“程信息。“ 0”0” 表示 节点连接,“表示 节点连接,“ 1”1” 表示节点表示节点未连接。这是最后写入到未连接。这是最后写入到 GALGAL 器件的数据代器件的数据代码。这些代码和熔丝状态图是对应的。码。这些代码和熔丝状态图是对应的。

③③利用编程器把利用编程器把编程信号代码文件编程信号代码文件DECODE.JEDDECODE.JED 写入写入 GALGAL 器件。器件。

GALGAL 器件在器件在 I/OI/O 端口地址译码中的应用端口地址译码中的应用

Page 54: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

Page 55: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

源文件如下:源文件如下: ADDRFADDRF .. SSDECODER·SSDECODER·

XH8XH8 // 2019820198

DECODER ·DECODER ·

NC A9 A8 A3 A2 /10R /IOW AEN AB GNDNC A9 A8 A3 A2 /10R /IOW AEN AB GND

NC DS DIR NC NC Yo Yl Y2 Y3 VCCNC DS DIR NC NC Yo Yl Y2 Y3 VCC

// DS=A9*A8*DS=A9*A8* // AEN*AB*AEN*AB* // IOR + A9*A8*IOR + A9*A8* // AEN*AB*AEN*AB*// IOR IOR // IOWIOW

// Y0=A9*A8*/AEN*AB*Y0=A9*A8*/AEN*AB* // A3*A3* // A2*A2* // IOR+ IOR+ A9*A8*/AEN*AB*A9*A8*/AEN*AB* // A3*A3* // A2* A2* // IOWIOW

GALGAL 器件在器件在 I/OI/O 端口地址译码中的应用端口地址译码中的应用

Page 56: 第二章  I/O 端口地址译码技术

微型计算机接口技术及应用微型计算机接口技术及应用

// Y1=A9*A8*Y1=A9*A8* // AEN*AB*/A3*A2*/IORAEN*AB*/A3*A2*/IOR 十十 A9*A8*A9*A8* //AEN*AB*/A3*A2* AEN*AB*/A3*A2* // IOWIOW

// Y2= A9*A8*Y2= A9*A8* // AEN*AB*A3*/A2*/IORAEN*AB*A3*/A2*/IOR 十十 A9*A8*A9*A8* //AEN*AB*A3*/A2* AEN*AB*A3*/A2* // IOWIOW

// Y3= A9*A8*Y3= A9*A8* // AEN*AB*A3*A2*/IORAEN*AB*A3*A2*/IOR 十十 A9*A8*A9*A8* //AEN*AB*A3*A2* AEN*AB*A3*A2* // IOWIOW

DESCRIPTIONDESCRIPTION

GALGAL 器件在器件在 I/OI/O 端口地址译码中的应用端口地址译码中的应用