一种主从分布式系统和应用于该系统的并行通信方法

文档序号:6612923阅读:265来源:国知局
专利名称:一种主从分布式系统和应用于该系统的并行通信方法
技术领域
本发明涉及分布式系统领域,特别是涉及一种主从分布式系统和应用于该 系统的并4亍ii/[言方法。
背景^支术
在许多实时工业控制和数据采集系统中,常常会采用PC104与多个51单 片机构成的主从分布式系统,为使所述系统协调工作,设计并实现PC104和 51单片机的接口以满足通信要求,是实现该系统的关键。现有技术的实现方案 一般是采用串行通信方式,如图1所示
PC104模块上带有2个标准9针RS-232C串口, MCS-51单片机具有一个 全双工串行通信接口,单片机与PC104模块通过TXD(发送数据)、RXD(接收 数据)和GND(信号地)3条引线实现串口连接。另外,由于PC104串口信号是 标准RS-232C电平,而MCS-51单片才几要求的信号为TTL电平,因此,在 相连时需要电平转换装置。采用芯片MC1488将TTL电平转换为RS-232C电 平,采用芯片MC1489将RS-232C电平转换为TTL电平。RTS, CTS, DCD 相连,其作用为计算机要发送便允许发送且通信线路已准备好。DTR, DSR, RI相连,其作用为计算机发出接收数据的信号(DTR二1),通信对方也发出准备 就绪信号(DSR4),并且发出要求准备接收数据的呼叫(111=1)。
采用这种通信方式,硬件电气连接简单,适用于传输数据量不大、速度要 求不高而传输距离较远的通信场合。但是这种通信方式在传输距离并不远且传 输数据量大、速度要求高的通信场合就不能满足要求了。上述方案设计采用串 行通信的不足之处在于传输数据量小,速度不快。

发明内容
本发明所要解决的技术问题是提供一种主从分布式系统,采用并行通信的 方式实现PC 104和51单片机的通信接口设计。
相应的,本发明还提供了应用于上述系统的并行通信方法。 为了解决上述问题,本发明公开了一种主从分布式系统,包括PC 104模块组成的主系统; 和51单片机组成的各从系统;
所述PC104模块组成的主系统和51单片机组成的各从系统之间采用双口 RAM作为双方交互数据的緩沖区。
其中,所述PC104模块组成的主系统和51单片机组成的各从系统通过双 o RAM进行并行通信。
优选的,还包括
可编程逻辑器件,用于将PC104总线访问的外部地址空间分别映射到各 个51单片机子系统双口 RAM的存储空间中,并将PC104总线上的地址信号 和读、写信号按照所映射的地址空间进行逻辑组合编程后输出,将所述输出信 号作为PC104模块访问各双口 RAM的片选信号。
其中,所述51单片机子系统使用自身的双向口将数据线、地址线和控制 线并4于连接到双口 RAM的相应端口,所述PC104才莫块的数据线、地址线和控 制线连接到双口 RAM另一端口的相应位置。
其中,当PC104才莫块和各51单片机系统同时读写双口 RAM不同存储空 间的数据时,双口 RAM的左右端口同时进行读写操作,若PC104模块和各 51单片机子系统同时读写双口 RAM相同存储空间的数据,则先出现请求信号 一端的忙中断信号置高,进行读写操作,后出现请求信号一端的忙中断信号置 低,待另一端的读写操作完成后再进行读写操作。
优选的,所述双口 RAM设置于所述各51单片才几子系统中。
本发明还7>开了一种并4亍通信方法,应用于由PC104才莫块和至少一个51 单片机组成的主从分布式系统中,包括
在PC104才莫块组成的主系统和51单片机组成的各从系统之间设置双口 RAM作为主从系统双方交互数据的緩冲区,所述PC104模块组成的主系统和 51单片机组成的各从系统通过双口 RAM进行并行通信;
判断PC 104模块和51单片机是否同时读写不同存储空间的数据,若是
则双口 RAM的左右端口同时进行读写操作;
否则确定请求信号的先后,先出现请求信号一端的忙中断信号置高,进行 读写操作;后出现请求信号一端的忙中断信号置低,待另一端的读写操作完成后再进 行读写操作。
优选的,还包>^:
设置一个可编程逻辑器件,用于将PC104总线访问的外部地址空间分别 映射到各双口 RAM的存储空间中,所述可编程逻辑器件将PC104总线上的地 址信号和读、写信号按照所映射的地址空间进行逻辑组合编程后输出,将所述 输出信号作为PC104访问双口 RAM的片选信号。
优选的,根据所述输出的片选信号选择对应的双口 RAM, PC104模块对 选定的双口 RAM进^f于读写操:作。
与现有技术相比,本发明具有以下优点
本发明在PC104与下位51单片机接口之间采用了双口 RAM作为双方交 互数据的緩冲区。由于双口 RAM左右两个端口拥有各自的数据、地址、和控 制线,允许两个独立的CPU或控制器同时异步地访问存储单元。当双方同时 读写不同存储空间的数据时,双口 RAM左右端口可以同时进行。若同时对相 同的数据空间做读写操作,哪一端的存储请求信号先出现,则该端的忙中断信 号置高,允许进行读写操作;哪一端的存储信号出现在后,则这一端忙中断信 号置低,禁止读写:^喿作,直至另一端纟喿作结束为止。
进一步,在PC104与多个51单片机构成的主从分布式系统中,为了使 PC104在访问各51单片机系统的双口 RAM时不发生地址访问冲突,需要将 PC104总线访问的外部地址空间分别映射到各个下位机双口 RAM的存储空 间。本发明通过在接口电路中釆用一个可编程逻辑器件来实现。这样,只有当 PC104的地址、读、写信号符合该组合逻辑时才能有效访问到相应的双口 RAM 数据单元,而不会同时访问到其它51单片机系统的双口 RAM数据单元。
本发明所述的一种PC104与多个51单片机进行并行通信的接口电路设计 方案。与通常采用的串行通信方式相比,具有传输数据量大、速度快的优点。 利用双口 RAM在PC104与51单片机之间传送数据具有传送速率高、实时性 好、可靠性高、电路简单的优点;进一步结合可编程逻辑器件的应用,使PC104 与多个51单片机实现并行通信而不会发生地址访问冲突,实现数据的同步传 输。


图1是现有技术单片机与PC104总线串行通信接口电路示意图; 图2是本发明 一种主从分布式系统第 一实施例的结构图; 图3是本发明一种主从分布式系统第二实施例的结构图; 图4是本发明一种应用于由PC104模块和至少一个51单片机组成的主从 分布式系统中的并行通信方法实施例的流程图5是51单片机与PC104总线并行通信接口电路的实例示意图。
具体实施例方式
PC104是一种工业计算机总线标准。PC104有两个版本,8位和16位。 它与一般PC机(个人计算机)是完全兼容的,只是PC104比一般PC机的集 成度更高,在90x96mm大小的PCB (Printed Circuit Board,印制电路板)板 上,就集成了 CPU(中央处理单元)、DRAM(动态存储器)、显示、IDE、 USB 口、串口、并口、网口、软驱接口等,用户在桌面PC系统中能够找到的每一 种功能,都可以在PC104中实现,并且软件也易于配置。PC104可以运行DOS、 Windows以及众多的实时操作系统,这些特点使得PC104的软硬件配置实现 起来非常容易。用PC104构建的系统体积非常小巧,但功能却十分强大。此 外,它具有极低的功耗(典型模块为1 - 2瓦)和堆栈的总线形式(决定了其高 可靠性),因而其稳固性、可靠性要比一般的PC机及插卡式的工控板高得多, 受到了众多从事嵌入式产品生产厂商的欢迎,在嵌入式系统领域被广泛应用。
PC104总线是嵌入式PC机所用的总线标准。有两个总线插头,其中Pl有 64个引脚,P2有40个引脚,共有104个引脚,这也是PC104名称的由来。104 根线分为5类地址线、数据线、控制线、时钟线、电源线。它具有16位数 据宽度,最高工作频率为8MHz,数据传输速率达到8MB/s,地址线24条, 可寻访16M字节地址单元。
单片微型计算机简称单片机。它是把组成微型计机的各功能部件CPU、 RAM (Random Access Memory,随机存储器)、ROM (Read Only Memory, 只读存储器)、1/0接口电路、定时器/计数器及串行接口等部件制作在一块集 成芯片在中,构成一个完整的微型计算机。
本发明在PC104与下位51单片机接口之间采用了双口 RAM作为双方交互数据的緩冲区。由于双口 RAM左右两个端口拥有各自的数据、地址、和控 制线,允许两个独立的CPU或控制器同时异步地访问存储单元。当双方同时 读写不同存储空间的彩:据时,双口 RAM左右端口可以同时进行。若同时对相 同的数据空间做读写操作,哪一端的存储请求信号先出现,则该端的忙中断信 号置高,允许存储;哪一端的存储信号出现在后,则这一端忙中断信号置低, 禁止存储,直至另一端才喿作结束为止。
进一步,在PC104与多个51单片机构成的主从分布式系统中,为了使 PC104在访问各51单片机系统的双口 RAM时不发生地址访问冲突,需要将 PC104总线访问的外部地址空间分别映射到各个下位机双口 RAM的存储空 间。本发明通过在接口电路中采用一个可编程逻辑器件来实现。这样,只有当 PC104的地址、读、写信号符合该组合逻辑时才能有效访问到相应的双口 RAM 数据单元,而不会同时访问到其它51单片机系统的双口 RAM数据单元。
本发明所述的一种PC104与多个51单片机进行并行通信的接口电路设计 .方案。与通常采用的串行通信方式相比,具有传输数据量大、速度快的优点。 进一步,利用双口 RAM在PC104与51单片机之间传送数据具有传送速率高、 实时性好、可靠性高、电路简单的优点;进一步结合可编程逻辑器件的应用, 使PC104与多个51单片机实现并行通信而不会发生地址访问冲突,实现数据 的同步传输。
为了更清楚的描述本发明,在本发明的实施例中以一个51单片机子系统 进行描述,本领域普通技术人员可以得知,对于多个51单片机子系统组成的 主从分布式系统,也基于相同的原理组成。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式
对本发明作进一步详细的说明。
参照图2,示出了本发明一种主从分布式系统第一实施例的结构图,包括
PC104模块201组成的主系统和至少一个51单片机202组成的从系统, 以及双口 RAM203。所述每个从子系统由一个51单片机组成,多个51单片机 组成相应个数的从系统。
所述PC104模块组成的主系统和51单片机组成的各从系统之间采用双口 RAM作为双方交互数据的緩沖区。所述系统的单片机不使用自身的串行通信接口,而是采用自身的双向口将
数据线、地址线和控制线并行^妄到双口 RAM相应的端口 , PC104的数据线、 地址线和控制线连接到双口 RAM另一端口的相应位置,通过双口 RAM作为 双方交互数据的緩沖区。
所述PC104才莫块组成的主系统和51单片才几组成的各^Mv系统通过双口 RAM进行并行通信
虽然图2所述系统只示出了一个51单片机组成的一个从子系统,本领域 的普通技术人员可以理解,在所述主从分布式系统中也可以包括多个51单片 机组成的多从子系统,只是为了描述方便,在图中只示出了一个51单片机组 成的一个从子系统,其并不能理解为对本发明的限制。
下面对本系统的工作原理和工作过程进行详细的介绍
本发明所述实施例在PC104与下位51单片机系统接口之间采用了双口 RAM作为双方交互数据的緩沖区。由于双口 RAM左右两个端口拥有各自的 数据、地址和控制线,允许两个独立的CPU或控制器同时异步地访问存储单 元。当双方同时读写不同存储空间的凝:据时,双口 RAM的左右端口可以同时 进行。若同时对相同的数据空间做读写操作,哪一端的请求信号先出现,则该 端的忙中断信号置高,允许读写操作;哪一端的信号出现在后,则该端忙中断 信号置低,禁止读写操作,直至另一端操作结束才能进行读写操作。
本发明所述实施例提供了一种PC104与多个51单片机进行并行通信接口 电路的技术方案,与通常采用的通信方式相比,具有传输数据量大,速度快的 优点。利用双口 RAM在PC104与51单片机之间传送数据具有传输速率高、 实时性好、可靠性高、电路简单的优点。
参照图3,示出了本发明一种主从分布式系统第二实施例的结构图,包括
PC104模块301组成的主系统和至少一个51单片机302组成的从系统, 以及双口 RAM303,还包括一个可编程逻辑器件304。
所述可编程逻辑器件304,用于将PC104总线访问的外部地址空间分别映 射到各个51单片机子系统双口 RAM的存储空间中,并将PC104总线上的地 址信号和读、写信号按照所映射的地址空间进行逻辑组合编程后输出,将所述 输出信号作为PC104模块访问各双口 RAM的片选信号。所述PC 104模块组成的主系统和51单片机组成的各从系统之间采用双口 RAM作为双方交互数据的緩冲区。
所述系统的单片机不使用自身的串行通信接口,而是采用自身的双向口将 数据线、地址线和控制线并行接到双口 RAM相应的端口, PC104的数据线、 地址线和控制线并行连接到双口 RAM另一端口的相应位置,通过双口 RAM 作为双方交互数据的緩冲区。
所述PC104才莫块组成的主系统和51单片才几组成的各/人系统通过双口 RAM进行并行通信
虽然图3所述系统只示出了 一个51单片机组成的一个从系统,本领域的 普通技术人员可以理解,在所述主从分布式系统中也可以包括多个51单片机 组成的从系统,只是为了描述方便,在图中只示出了一个51单片机组成的一 个/人系统,其并不能理解为对本发明的限制。
在PC104与多个51单片机构成的主从分布式系统中,为了使PC104在访 问各51单片机子系统的双口 RAM时不发生地址访问冲突,需要将PC104总 线访问的外部地址空间分别映射到各个51单片机双口 RAM的存储空间中。 本发明所述实施例通过在接口电路中采用一个可编程逻辑器件来实现。即将 PC104总线上的地址信号和读、写信号纟要照PC104总线所映射的地址空间通 过可编程逻辑器件进行逻辑组合编程后输出,将输出信号作为PC104访问该 双口RAM的片选信号。因此,只有当PC104的地址、读、写信号符合该组合 逻辑时才能有效访问到相应的双口 RAM,而不会同时访问到其它51单片才几子 系统的双口 RAM。
本发明所述实施例利用双口 RAM在PC104与51单片机之间传送数据, 一次可以同时传输8位数据,提高了每次传输的数据量,具有传输速率高、实 时性好、可靠性高、电路简单的优点,结合可编程逻辑器件的应用,使PC104 与多个51单片机子系统实现并行通信而不会发生地址访问冲突。
在图2、图3所示系统中,所述双口 RAM设置在每个51单片机子系统中。
参照图4,示出了本发明一种应用于由PC104模块和至少一个51单片机 组成的主从分布式系统中的并行通信方法实施例的流程图,包括步骤
步骤401、在PC104模块组成的主系统和51单片机组成的各从系统之间在PC104才莫块组成的主系统和至少一个51单片机组成的各从系统之间设 置双口 RAM作为主从系统双方交互数据的緩冲区,所述PC104模块组成的主 系统和51单片机组成的各从系统通过双口 RAM进行并行通信。
步骤402、判断PC104模块和51单片机是否同时读写不同存储空间的数 据,若是进入步骤403,否则进入步骤404:
步骤403、双口 RAM的左右端口同时进行读写操:作;
步骤404、确定请求信号的先后,先出现请求信号一端的忙中断信号置高, 进行读写操作,后出现请求信号一端的忙中断信号置低,待另一端的读写操作 完成后再进行读写操作。
本发明所述实施例在PC104与下位51单片机系统接口之间采用了双口 RAM作为双方交互数据的緩冲区。由于双口 RAM左右两个端口拥有各自的 数据、地址和控制线,允许两个独立的CPU或控制器同时异步地访问存储单 元。当双方同时读写不同存储空间的数据时,双口 RAM的左右端口可以同时 进行。若同时对相同的数据空间做读写操作,哪一端的请求信号先出现,则该 端的忙中断信号置高,允许读写操作;哪一端的信号出现在后,则该端忙中断 信号置低,禁止读写操作,直至另一端操作结束才能进行读写操作。
在PC104与多个51单片机构成的主从分布式系统中,为了使PC104在访 问各51单片机子系统的双口 RAM时不发生地址访问冲突,需要将PC104总 线访问的外部地址空间分别映射到各个51单片机双口 RAM的存储空间中。 本发明所述实施例进一 步包括
步骤405、设置一个可编程逻辑器件,输出PC104访问双口 RAM的片选 信号。
设置一个可编程逻辑器件,用于将PC104总线访问的外部地址空间分别 映射到各双口 RAM的存储空间中,所述可编程逻辑器件将PC104总线上的地 址信号和读、写信号按照所映射的地址空间进行逻辑组合编程后输出,将所述 输出信号作为PC104访问双口 RAM的片选信号。这样,只有当PC104的地 址、读、写信号符合组合逻辑时才能有效访问到相应的双口 RAM,而不会同 时访问其它51单片机系统的双口 RAM。下面以一个具体实例对本发明实施例所述系统和方法的原理和工作过程
进行详细的说明,参照图5:
其中,51单片机为DS80C320,双口 RAM为IDT7006。
利用锁存器74HC373的地址锁存功能,DS80C320的PO 口采用数据/地址 线复用方式,作为双口 RAMIDT7006左端的l史据线和l氐8位地址线;DS80C320 的P2 口作为IDT7006左端的高8位地址线;DS80C320的写(WR)和读(RD ) 信号(读、写信号低有效)分别连接IDT7006左端读写控制引脚和读有效引 脚,当WR置低而RD置高时,DS80C320对IDT7006进行写操作,当WR置 高而RD置低时,DS80C320对IDT7006进行读操作;P3.3作为IDT7006左端 的片选信号(低电平有效),只有对P3.3置低时,DS80C320才可对IDT7006 进^于读写访问;IDT7006输出的忙中断信号BUSYL作为DS80C320的外部中 断1信号,当BUSYL信号置高时,表示禁止访问,直至另一端操作结束使 BUSYL信号置低为止。
PC104总线上的数据线(PD0-PD7)、地址线(PA0-PA19)、读(PRDL)、 写(PWRL )和通道就绪(PIOCHRDY )控制信号分别经过总线驱动器74HC245、 74AHCT16541和74HCT244输出后接到IDT7006右端的数据线、地址线、读 有效引脚、读写控制引脚和忙中断引脚,其中经驱动器输出的高IO位地址线 (A10R-A19R)和读(RDL)、写(WRL )信号作为可编程逻辑器件GAL20V8B 的输入信号,其输出分别作为IDT7006右端片选信号(CER)、驱动器74HC245 的片选信号(E/)和数据传输方向控制信号(DIR);当PC104对IDT7006的 有效地址空间进行读或写操作时,GAL20V8B的输出会立即选通IDT7006和 74HC245 ,并使74HC245的信号从B到A传输(读操作)或从A到B传输(写 操作);当PC104对IDT7006的无效地址空间访问时,GAL20V8B的输出信号 将无效,既使PC104有读写操作也不会误访问到该双口 RAM,避免了PC104 访问多个51单片机系统发生地址访问冲突。
其中,通过可编程逻辑器件专用的编写软件将输入和输出按照电路设计需 要的逻辑进行编程,程序经过编译后利用编程器将最终生成的目标文件烧写到 可编程逻辑器件中即可。还是以图5所示举例说明
PC104高IO位地址线(A10R-A19R)和读(RDL)、写(WRL )信号作为可编程逻辑器件GAL20V8B的输入信号,其输出信号CER作为IDT7006 右端片选信号,如果PC104对该IDT7006 (空间大小为16K)映射的地址空间 为CCOOO-CFFFF,那么GAL20V8B输入输出引脚间的编程逻辑如下所示
!CER = (A19R & A18R & !A17R & !A16R & A15R & PA14 ) & (!WRL # !RDL);
上式中=左边表示输出引脚,=右边表示输入引脚的逻辑组合,符号前的! 表示该引脚低电平有效,无!表示该引脚高电平有效,&表示逻辑与,#表示 逻辑或。
上式即表示高6位地址线为110011且读或写信号为低时,输出引脚置低, 否则输出引脚置高。
以上对本发明所提供的一种主从分布式系统和应用于由PC104模块和至 少 一个51单片机组成的主从分布式系统中的并行通信方法,进行了详细介绍,
说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般 技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处, 综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1、一种主从分布式系统,其特征在于,包括PC104模块组成的主系统;和51单片机组成的各从系统;所述PC104模块组成的主系统和51单片机组成的各从系统之间采用双口RAM作为双方交互数据的缓冲区。
2、 如权利要求1所述的主从分布式系统,其特征在于所述PC 104模块组成的主系统和51单片机组成的各从系统通过双口 RAM 进行并行通信。
3、 如权利要求1所述的主从分布式系统,其特征在于,还包括 可编程逻辑器件,用于将PC104总线访问的外部地址空间分别映射到各个51单片才几子系统双口 RAM的存储空间中,将PC104总线上的地址信号和 读、写信号按照所映射的地址空间进行逻辑组合编程后输出,将所述输出信号 作为PC104模块访问各双口 RAM的片选信号。
4、 如权利要求1所述的主从分布式系统,其特征在于所述51单片机子系统使用自身的双向口将数据线、地址线和控制线并行 连接到双口 RAM的相应端口,所述PC104模块的数据线、地址线和控制线连 才妄到双口 RAM另 一端口的相应位置。
5、 如权利要求1或2或3或4任一所述的主从分布式系统,其特征在于 当PC104模块和各51单片机子系统同时读写双口 RAM不同存储空间的数据时,双口 RAM的左右端口同时进行读写操作,若PC104模块和各51单 片机子系统同时读写双口 RAM相同存储空间的数据,则先出现请求信号一端 的忙中断信号置高,进行读写操作,后出现请求信号一端的忙中断信号置低, 待另 一端的读写操作完成后再进行读写操作。
6、 如权利要求1所述的主从分布式系统,其特征在于所述双口 RAM设置于所述各51单片机子系统中。
7、 一种并^f亍通信方法,应用于由PC104才莫块和至少一个51单片才几组成 的主从分布式系统中,其特征在于,包括在PC104模块组成的主系统和51单片机组成的各从系统之间设置双口 RAM作为主从系统双方交互数据的緩冲区,所述PC104才莫块组成的主系统和 51单片机组成的各从系统通过双口 RAM进行并行通信;判断PC104模块和51单片机是否同时读写不同存储空间的数据,若是则双口 RAM的左右端口同时进行读写操作;否则确定请求信号的先后,先出现请求信号一端的忙中断信号置高,进行 读写操作;后出现请求信号一端的忙中断信号置低,待另一端的读写操作完成后再进 行读写操作。 ,
8、 如权利要求7所述的通信方法,其特征在于,还包括 设置一个可编程逻辑器件,用于将PC104总线访问的外部地址空间分别映射到各双口 RAM的存储空间中,所述可编程逻辑器件将PC104总线上的地 址信号和读、写信号按照所映射的地址空间进行逻辑组合编程后输出,将所述 输出信号作为PC104访问双口 RAM的片选信号。
9、 如权利要求8所述的通信方法,其特征在于根据所述输出的片选信号选择对应的双口 RAM, PC104模块对选定的双 口 RAM进行读写4乘作。
全文摘要
本发明提供了一种主从分布式系统,包括PC104模块组成的主系统和多个51单片机组成的各从系统;所述PC104模块组成的主系统和51单片机组成的各从系统之间采用双口RAM作为双方交互数据的缓冲区;还包括可编程逻辑器件。采用本发明所述系统,具有传输速率高、实时性好、可靠性高、电路简单的优点,结合可编程逻辑器件的应用,使PC104与多个51单片机系统实现并行通信而不会发生地址访问冲突。本发明还提供了一种应用于所述主从分布式系统的并行通信方法。
文档编号G06F15/167GK101414291SQ200710164248
公开日2009年4月22日 申请日期2007年10月17日 优先权日2007年10月17日
发明者刘黎明, 晟 单, 徐秉娴, 庆 杜 申请人:株洲南车时代电气股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1