《PROFIBUSDP主站通信设备及其微处理器和ASIC芯片共享数据的方法.pdf》由会员分享,可在线阅读,更多相关《PROFIBUSDP主站通信设备及其微处理器和ASIC芯片共享数据的方法.pdf(9页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 CN 102163054 A (43)申请公布日 2011.08.24 CN 102163054 A *CN102163054A* (21)申请号 201010619135.8 (22)申请日 2010.12.30 G05B 19/418(2006.01) (71)申请人 上海自动化仪表股份有限公司 地址 200233 上海市徐汇区虹漕路 41 号 (72)发明人 费鹏 包伟华 邬昌茂 赵勇 (74)专利代理机构 上海申汇专利代理有限公司 31001 代理人 俞宗耀 (54) 发明名称 PROFIBUS-DP 主站通信设备及其微处理器和 ASIC 芯片共享数据的方法 (57。
2、) 摘要 本发明涉及自动控制领域, 公开了一种 PROFIBUS-DP 1 类主站通信设备及其微处理器 与 ASIC 芯片共享数据的方法, 该主站通信设备包 括 : 嵌入式微处理器及其包括非易失存储器在内 的外围电路、 ASIC 芯片 ASPC2、 双口 RAM 和静态存 储器, ASIC 芯片 ASPC2 通过 RS485 接口电路连接 PROFIBUS-DP 总线, 复杂可编程逻辑器件连接微 处理器、 ASIC 芯片和静态存储器, 实现微处理器 与 ASIC 芯片共享静态存储器数据。本发明采用 ASIC芯片保证了通信速率, 利用CPLD使微处理器 与 ASIC 芯片共享数据, 降低了开发成。
3、本, 具备高 性能、 低成本、 工作稳定可靠的特点。 (51)Int.Cl. (19)中华人民共和国国家知识产权局 (12)发明专利申请 权利要求书 1 页 说明书 5 页 附图 2 页 CN 102163055 A1/1 页 2 1. 一种 PROFIBUS-DP 主站通信设备, 包括嵌入式微处理器及其包括非易失存储器在 内的外围电路、 ASIC 芯片、 双口 RAM 和静态存储器, ASIC 芯片通过 RS485 接口电路连接 PROFIBUS-DP 总线, 其特征在于 : 所述嵌入式微处理器及其外围电路、 双口 RAM 连接在 3.3V 总线, 双口 RAM 一端接口与微处理器及其外围电。
4、路连接, 另一端接口供用户使用 ; ASIC 芯片 和静态存储器连接在 5V 总线 ; 3.3V 总线与 5V 总线之间设置复杂可编程逻辑器件实现电平 转换以及微处理器、 ASIC 芯片两者共享静态存储器数据。 2. 根据权利要求 1 所述的 PROFIBUS-DP 主站通信设备, 其特征在于 : 所述 ASIC 芯片与 RS485 接口电路之间设置有光耦隔离芯片。 3. 根据权利要求 1 所述的 PROFIBUS-DP 主站通信设备, 其特征在于 : 所述嵌入式微处 理器外围电路还包括通过微处理器的通用异步串行接口转接 RS232 串口。 4. 根据权利要求 1 所述的 PROFIBUS D。
5、P 主站通信设备, 其特征在于 : 所述嵌入式微处 理器外围电路还包括通过微处理器的 I/O 连接 LED。 5. 根据权利要求 1 所述的 PROFIBUS-DP 现场总线主站通信设备, 其特征在于 : 所述嵌 入式微处理器外围电路还包括通过微处理器的 I/O 连接看门狗芯片。 6. 根据权利要求 1 所述的 PROFIBUS-DP 主站通信设备, 其特征在于 : 所述嵌入式微处 理器是嵌入式 ARM 微处理器。 7. 根据权利要求 1 所述的 PROFIBUS-DP 主站通信设备, 其特征在于 : 所述 ASIC 芯片是 ASPC2 芯片。 8.根据权利要求1所述的PROFIBUS-DP主。
6、站通信设备, 其微处理器和ASIC芯片共享静 态存储器数据的方法包括以下步骤 : (1) 微处理器初始化 ASIC 芯片内寄存器 ; (2) 微处理器初始化静态存储器 ; (3) 微处理器启动 ASIC 芯片 ; (4) 微处理器将要发送的总线数据按格式写入静态存储器 ; (5)ASIC 芯片得知有要发送的数据后向微处理器请求外部总线, 使 HOLD 信号有效 ; (6) 微处理器进入高优先级中断, 使 HOLDA 信号有效, 并让出外部总线 ; (7)ASIC 芯片取出静态存储器中的数据并发送总线数据 ; (8)ASIC 芯片完成发送后让出总线, 使 HOLD 信号无效 ; (9) 微处理器。
7、退出中断, 使 HOLDA 信号无效 ; (10)ASIC 芯片接收到数据后, 向微处理器请求外部总线, 使 HOLD 信号有效 ; (11) 微处理器进入高优先级中断, 使 HOLDA 信号有效, 并让出外部总线 ; (12)ASIC 芯片完成接收后, 将接收到的总线数据写入静态存储器 ; (13)ASIC 芯片完成接收后让出总线, 使 HOLD 信号无效 ; (14) 微处理器退出中断, 使 HOLDA 无效 ; (15)ASIC 芯片以中断方式通知微处理器接收到数据 ; (16) 判断是否进行下一次报文循环, 若是则重复步骤 (4) (15), 若否则结束。 权 利 要 求 书 CN 1。
8、02163054 A CN 102163055 A1/5 页 3 PROFIBUS-DP 主站通信设备及其微处理器和 ASIC 芯片共享 数据的方法 技术领域 0001 本发明属于自动控制技术领域, 具体涉及一种基于嵌入式微处理器和 ASIC 芯片 的 PROFIBUS-DP 主站通信设备。 背景技术 0002 PROFIBUS 是一种国际化、 开放式、 不依赖于设备生产商的现场总线标准, 广泛应用 于制造业自动化、 流程工业自动化和楼宇、 交通、 电力等领域, 其中 PROFIBUS-DP 是一种高 速低成本通信标准, 多用于设备级控制系统分散式 I/O 的通信。 0003 目前在国内 PR。
9、OFIBUS-DP 总线技术的应用与开发已经比较广泛, PROFIBUS 虽然协 议公开, 但技术封闭, 核心技术被西门子等少数几家国外公司控制。因此导致国内基于 DP 总线的智能设备发展比较缓慢, 而且存在从站产品多, 主站产品少 ; 二次开发多, 掌握核心 技术少等问题。由于 PROFIBUS-DP 网络中必须要有一个主站进行通信控制, 国内厂家开发 设计的 DP 智能设备一般是挂接在西门子等国外厂商的 DP 主站下方能工作运行。 0004 目前, 开发 PROFIBUS-DP 主站设备主要有以下几种可行的方案 : 0005 (1) 软件 PROFIBUS-DP 主站。该方案由软件来实现 。
10、PROFIBUS-DP 物理层以上的所 有协议, 在微处理器中运行完整的协议栈。由于目前大多数 CPU 都带有 UART 口, 只需外加 一个 RS485 收发器即可实现 DP 协议的物理层, 在此基础上实现 DP 协议的数据链路层、 用户 接口层等。 该方案虽然硬件简单、 成本低廉, 但软件设计的任务非常繁复, 可靠性难以保证, 且达不到较高的通信速率, 一般处理器片上 UART 的理论极限速率在 1.5Mbps 左右, 加上数 据链路层及用户接口层的功能, 实际的极限速率预计只有达到几百 Kbps, 与 DP 协议支持的 12Mbps速率相差甚远, 降低了通信的性能, 限制了设备的应用场合。
11、。 和利时公司基于这种方 案实现了 PROFIBUS-DP 主站, 但受到通信速率的限制, 应用一直难以推广。 0006 (2) 基于嵌入式主站模块二次开发。该方案是开发 PROFIBUS-DP 主站采用最多的 一种。嵌入式主站模块内部已经集成 ASIC 芯片和固化程序。开发者购买嵌入式模块并在 其基础上作二次开发。 该方案开发难度和开发风险都大大减少, 开发周期缩减, 但是目前市 场上已有的嵌入式主站模块基本上被西门子等国外公司垄断, 采用这种方案需要购买它们 的嵌入式模块, 开发成本大且在技术上受制于人, 并没有真正掌握 PROFIBUS-DP 主站的核 心技术。国内大多数厂商的 DP 主。
12、站产品都是基于这种方案, 产品成本居高不下。 0007 (3)ASIC芯片外加扩展固件程序。 该方案由ASIC芯片实现PROFIBUS-DP协议数据 链路层的介质访问控制功能, 数据链路层的其他功能和用户接口层的功能由微处理器运行 其扩展固件程序实现。该方案的硬件方案比第一种方案复杂, 由于 ASIC 芯片的使用, 该方 案可以达到较高的通信速率 ( 最高 12Mbps), 能够充分发挥 PROFIBUS-DP 总线的速度优势, 性能稳定可靠, 且剔除了使用国外技术的额外成本, 产品成本相对低廉。目前, 国外的芯片 供货商限制了芯片配套固件程序的开放, 不出售固件, 因此采用这种方案要由开发人。
13、员自 行设计硬件接口电路并编写固件程序及上层软件, 需要开发者对芯片及 DP 协议都非常熟 说 明 书 CN 102163054 A CN 102163055 A2/5 页 4 悉, 开发难度极大。目前市场上尚无国内厂商基于此方案开发成功的性能稳定可靠的主站 产品。 发明内容 0008 本发明要解决的技术问题是提供一种可以实现PROFIBUS-DP协议栈中1类主站功 能的 PROFIBUS-DP 主站通信设备。 0009 为达到上述目的, 本发明采用的技术方案是 : 一种 PROFIBUS-DP 主站通信设备, 包 括嵌入式微处理器及其包括非易失存储器在内的外围电路、 ASIC 芯片、 双口 。
14、RAM 静态存储 器, ASIC 芯片通过 RS485 接口电路连接 PROFIBUS-DP 总线, 其特征在于 : 所述嵌入式微处理 器及其外围电路、 双口 RAM 连接在 3.3V 总线, 双口 RAM 一端接口与微处理器及其外围电路 连接, 另一端接口供用户使用 ; ASIC芯片和静态存储器连接在5V总线 ; 3.3V总线与5V总线 之间设置复杂可编程逻辑器件实现电平转换以及微处理器、 ASIC 芯片两者共享静态存储器 数据。 0010 所述 ASIC 芯片与 RS485 接口电路之间设置有光耦隔离芯片。 0011 所述嵌入式微处理器外围电路还包括通过微处理器的通用异步串行接口转接 RS。
15、232 串口。 0012 所述嵌入式微处理器外围电路还包括通过微处理器的 I/O 连接 LED。 0013 所述嵌入式微处理器外围电路还包括通过微处理器的 I/O 连接看门狗芯片。 0014 以上所述嵌入式微处理器是嵌入式 ARM 微处理器。 0015 以上所述 ASIC 芯片是 ASPC2 芯片。 0016 上述PROFIBUS-DP主站通信设备, 其微处理器和ASIC芯片共享静态存储器数据的 方法包括以下步骤 : 0017 (1) 微处理器初始化 ASIC 芯片内寄存器 ; 0018 (2) 微处理器初始化静态存储器 ; 0019 (3) 微处理器启动 ASIC 芯片 ; 0020 (4)。
16、 微处理器将要发送的总线数据按格式写入静态存储器 ; 0021 (5)ASIC 芯片得知有要发送的数据后向微处理器请求外部总线, 使 HOLD 信号有 效 ; 0022 (6) 微处理器进入高优先级中断, 使 HOLDA 信号有效, 并让出外部总线 ; 0023 (7)ASIC 芯片取出静态存储器中的数据并发送总线数据 ; 0024 (8)ASIC 芯片完成发送后让出总线, 使 HOLD 信号无效 ; 0025 (9) 微处理器退出中断, 使 HOLDA 信号无效 ; 0026 (10)ASIC 芯片接收到数据后, 向微处理器请求外部总线, 使 HOLD 信号有效 ; 0027 (11) 微处。
17、理器进入高优先级中断, 使 HOLDA 信号有效, 并让出外部总线 ; 0028 (12)ASIC 芯片完成接收后, 将接收到的总线数据写入静态存储器 ; 0029 (13)ASIC 芯片完成接收后让出总线, 使 HOLD 信号无效 ; 0030 (14) 微处理器退出中断, 使 HOLDA 无效 ; 0031 (15)ASIC 芯片以中断方式通知微处理器接收到数据 ; 0032 (16) 判断是否进行下一次报文循环, 若是则重复步骤 (4) (15), 若否则结束。 说 明 书 CN 102163054 A CN 102163055 A3/5 页 5 0033 本发明使用 ASIC 芯片连接。
18、 PROFIBUS-DP 总线可实现 PROFIBUS-DP 主站高速率 及可靠性能, 同时使用嵌入式微处理器可实现 PROFIBUS-DP 主站的数据链路层功能, 并在 此基础上实现完整的 DP 主站协议栈。其中用户接口层和 DDLM 层按照 PROFIBUS-DP 标 准提供的状态机描述开发, ASPC2 芯片驱动程序根据西门子提供的 ASPC2 芯片手册结合 PROFIBUS-DP 标准进行开发, 即可实现 ASPC2 原配套固件程序的功能。 0034 本发明的优点在于 : 采用 ASIC 芯片保证 PROFIBUS-DP 总线的通信速率, 工作稳定 可靠 ; 采用32位微处理器, 相比。
19、国外同类产品采用16位单片机运行速度高30以上 ; 并利 用复杂可编程逻辑器使微处理器与 ASIC 芯片之间共享数据, 降低了开发成本, 解决了对国 外厂商的依赖, 具备高性能、 低成本、 工作稳定可靠的特点。 附图说明 0035 图 1 是本发明的硬件设计框图 ; 0036 图 2 是 ASPC2 与 ARM 处理器接口电路设计图 ; 0037 图 3 是微处理器和 ASIC 芯片共享静态存储器数据的工作流程框图。 具体实施方式 0038 下面结合附图和具体实施例对本发明作进一步说明。 0039 本实施例采用的硬件芯片型号如下 : 0040 嵌入式微处理器 : Atmel 公司的 ARM7 。
20、嵌入式处理器 AT91R40008(CPU) ; 0041 ASIC 芯片 : 西门子公司的 PROFIBUS 主站协议芯片 ASPC2 ; 0042 双口 RAM : IDT 公司的 IDT70V05(8K8bit) ; 0043 非易失存储器 (Nor Flash) : SST 公司的 SST39VF1601(1M16bit) ; 0044 复杂可编程逻辑器件 (CPLD) : Xilinx 公司的 XC95144XL ; 0045 静态存储器 (SRAM) : Cypress 公司的 CY7C1041R(256K16bit) ; 0046 光耦隔离芯片 : HCPL7721 及 HCPL。
21、0601 ; 0047 RS485 接口芯片 : SN75176BD ; 0048 RS232 接口芯片 : MAX3232 ; 0049 看门狗芯片 : X25043。 0050 图 1 是本发明的硬件设计框图。如图 1 所示, 一种 PROFIBUS-DP 主站通信设备, 包 括嵌入式微处理器及其包括非易失存储器在内的外围电路、 ASIC 芯片、 双口 RAM 和静态存 储器, ASIC 芯片通过 RS485 接口电路连接 PROFIBUS-DP 总线, 其特征在于 : 所述嵌入式微处 理器及其外围电路、 双口 RAM 连接在 3.3V 总线, 双口 RAM 一端接口与微处理器及其外围电 。
22、路连接, 另一端接口供用户使用 ; ASIC 芯片、 静态存储器连接在 5V 总线 ; 3.3V 总线与 5V 总 线之间设置复杂可编程逻辑器件实现电平转换以及微处理器、 ASIC 芯片两者共享静态存储 器数据。 0051 为了避免 DP 口通讯电路和 ASPC2 等数字电路相互间发生干扰, ASIC 芯片与 RS485 接口电路之间设置有光耦隔离芯片。 0052 嵌入式微处理器外围电路还包括通过微处理器的 UART 转接 RS232 串口。 0053 嵌入式微处理器外围电路还包括通过微处理器的 I/O 连接 LED。 说 明 书 CN 102163054 A CN 102163055 A4/。
23、5 页 6 0054 嵌入式微处理器外围电路还包括通过微处理器的 I/O 连接看门狗芯片。 0055 AT91R40008ARM 处理器作为硬件设计中的核心 CPU, 在其上编写并运行相应的固 件程序控制 ASPC2 实现 PROFIBUS-DP 主站协议栈中的 FDL 层功能。ASPC2 上 CMOS 电平的串 行接口通过电平转换芯片 SN75176BD 转换为符合 PROFIBUS-DP 协议物理层规范的 RS485 电 平。ARM 处理器片上的通用异步串行接口 (UART) 通过芯片 MAX3232 转换为 RS232 电平, 可 与普通 PC 机上的串口进行通信, 用于进行组态下载。另。
24、外, 3.3V 总线上挂接一片 IDT07V05 双口 RAM, 作为用户操作接口, 主要用于二次开发。4 个 LED 灯直接与 ARM 的 I/0 口相连, 分 别用于指示 DP 主站通信设备的工作状态、 组态状态, 网络状态及令牌状态等四种信息。硬 件方案中的非易失存储器 (Nor F1ash) 用于实现程序固化及组态文件存储等功能。 0056 采用一片静态存储器 (SRAM) 实现 ARM 处理器和 ASPC2 的数据交互, ARM 处理器和 ASPC2 通过 CPLD 实现总线仲裁分时占用 SRAM 数据、 地址总线, 实现对 SRAM 数据的共享访 问。 ASPC2与AT91R400。
25、08处理器之间通过SRAM交换数据, 这三者之间连接在一条系统总线 上。AT91R40008 可以访问 SRAM 和 ASPC2 内部寄存器, ASPC2 也可以访问 SRAM。 0057 这部分电路设计主要考虑两个部分 : 一部分是AT91R40008与ASPC2和存储器之间 的电平转换, 另一部分是 AT91R40008, ASPC2 和 SRAM 三者之间的连接方式。 0058 AT91R40008 是 3.3V 供电, ASPC2 和 SRAM 都是 5V 供电, 两者之间需要通过电平转 换电路转接。 0059 ASPC2 和 AT91R40008 之间通过共享存储器方式连接。这种方式。
26、下 AT91R40008 负 责总线仲裁。ASPC2 拥有一组总线请求信号 HOLD 和 HOLDA。由于 AT91R40008 的扩展总线 接口没有总线仲裁机制, 使用这种连接方式必须借助辅助电路实现总线仲裁。 0060 图 2 是 ASPC2 与 ARM 处理器接口电路设计图。如图 2 所示, 上述的电平转换和总 线仲裁功能由一片复杂可编程逻辑器件 (CPLD) 即可实现。 0061 AT91R40008通过CPLD电路和SRAM与ASPC2以共享存储器连接方式连接。 ASPC2的 HOLD信号作为AT91R40008的IRQ中断输入信号。 ASPC2在需要访问SRAM时激活HOLD信号,。
27、 AT91R40008随即进入中断服务子程序, 关闭CPLD总线输出并给出HOLDA信号。 AT91R40008 外部总线处于高阻状态, 这相当于AT91R40008释放了系统总线。 ASPC2完成SRAM的访问后 解除 HOLD 信号的激活, AT91R40008 退出中断服务子程序, 开启所有 CPLD 的输出并停止给 出 HOLDA 信号。这相当于 AT91R40008 又获得了系统总线的控制权。AT91R40008 和 ASPC2 共享 SRAM 数据的工作流程如图 3 所示。 0062 基于图 2 所述硬件设计并结合图 3 所述软件流程, 可以设计出 ASPC2 驱动程序, 即 可实。
28、现 ASPC2 原配套固件程序的主要功能。 0063 本发明实现 PROFIBUS-DP 协议栈中 1 类主站功能。物理层由 RS485 硬件接口电路 实现。数据链路层分为 FDL 服务, FMA1/2 服务和媒介访问控制三部分, 媒介访问控制部分 功能由 ASPC2 实现, 即 ASPC2 是媒介访问控制器, ASPC2 驱动程序负责实现对 ASPC2 的管理 和控制, 数据链路层中的 FDL 服务, FMA1/2 服务则基于 ASPC2 驱动程序实现。用户层分为 用户, 用户接口 (User Interface) 和 DDLM(Direct Data Linker Map) 三个部分, D。
29、DLM 及 用户接口层由运行于 ARM 处理器上的软件实现。 0064 PROFIBUS-DP主站通信设备的所有软件均运行于ARM处理器上。 包括用户接口层, DDLM 层, FDL 层, FMA1/2 层和 ASPC2 驱动层, 其中用户层的用户部分由主站用户完成。用 说 明 书 CN 102163054 A CN 102163055 A5/5 页 7 户接口层, DDLM 层按照 PROFIBUS-DP 标准提供的状态机描述开发, FDL 层, FMA1/2 层按照 PROFIBUS-DP标准提供的服务描述开发, ASPC2驱动软件根据西门子提供的ASPC2芯片手册 结合 PROFIBUS-DP 标准进行开发, 其所涉及的关键技术方法为本发明中叙述的微处理器和 ASIC 芯片共享静态存储器数据的方法, 即可实现 ASPC2 原配套固件程序的功能。 说 明 书 CN 102163054 A CN 102163055 A1/2 页 8 图 1 图 2 说 明 书 附 图 CN 102163054 A CN 102163055 A2/2 页 9 图 3 说 明 书 附 图 CN 102163054 A 。