Neuron3150神经元芯片说明及其应用分析

(海思技术部推荐)

核心提示:海思在本文中着重介绍Neuron神经元芯片。Neuron芯片是美国ECHELON公司制造的一种多处理器结构的神经元芯片。Neuron芯片将通信协议和控制用微处理器有效地集成在一起,实现通信、控制、调度和I/O等功能。本文介绍有关Neuron芯片的基本结构和组成、LonTalk协议以及应用系统的组成方式等。
关键词:LonWorks,神经元芯片,3150,多处理器,Neuron固件
一、Neuron芯片的基本构成
   Neuron芯片作为一种多处理器结构的神经元芯片,有着完整的系统资源,其内部架构如图1所示,其集成了三个管线CPU,最高工作频率可达10MHz。配备有11个编程输入、输出引脚(IO1~IO10),编程方法多达34种,方便了应用。片内设有EEPROM和RAM,支持外部扩展多种存储器的接口,最大存储空间允许64KB。内部含有两个16位定时器/计数器,能够由固件产生15个软件定时器。Neuron芯片的优势还在于它的网络通信功能,引出的五个通信引脚(CP0~CP4)提供了单端、差分和特殊应用模式等三种网络通信方式。

1.CPU处理器单元
   Neuron芯片集成有三个CPU处理器,其中一个用于执行用户编写的应用程序,另外两个完成网络任务。图2展示了Neuron芯片内三个处理器的功能分配及与内部共享存储器区域之间的关系。
(1)MAC处理器是媒体访问控制层处理器。它处理OSI七层网络协议中的1,2层,主要包括驱动通信子系统硬件以及执行冲突回避算法等。MAC处理器使用位于共享存储器中的网络缓冲区与网络处理器进行通信。
(2)网络处理器实现网络协议中的3~6层。它实现网络变量处理、寻址、事务处理、文电鉴别、软件定时器、网络管理和路由等功能。网络处理器通过共享存储器中的网络缓冲区与MAC处理器通信,并采用应用缓冲区与应用处理器进行通信。应用缓冲区也是设置在共享存储器中的。对缓冲区的访问都用硬件信号灯来协调,以便在更新共享数据时消除竞争。
(3)应用处理器一方面执行用户编写的应用程序代码,另一方面执行由用户代码所调用的操作系统服务。大多数应用程序均可采用Neuron C语言来编制,使编程工作真正从繁琐的汇编语言中解脱出来。
2.存储器分配


   MC143150的外扩存储器接口总线中,有8位双向数据总线、16位处理器驱动的地址总线以及用于外部存储器存取访问的两个接口信号线R/W和E。总的地址空间为64KB,其中有6KB的地址空间保留在芯片内,剩余的58KB的地址空间供外扩存储器使用。在外扩存储器中,通常用16KB存放固件,其余的42KB用于存放用户程序和数据信息。
3.应用I/O口
   具有11个引脚的I/O接口提供有34种编程方式,另外,2个16位定时器/计数器可用于频率和定时I/O。由固件产生的15种软件定时器并不占用应用处理器的运算时间,而由完成网络功能的处理器实现。因此,用户可直接使用软件定时器,不必考虑其具体操作。
   Neuron芯片提供的11个I/O引脚(IO0~IO10)可通过编程设定为34种不同的I/O对象,支持电平、脉冲、频率、编码等各种信号模式,有直接I/O对象、定时器/计数器I/O对象、串行I/O对象、并行I/O对象等供用户选择。它们与集成的硬件和固件一起可用于连接马达、阀门、显示驱动器、A/D转换器、压力传感器、热敏电阻、开关量、继电器、可控硅、转速计、其他处理器和调制解调器等,方便了实际应用。表1列举了所有I/O对象的基本类型。

表1 I/O对象类型参照表

I/O对象类型

注 释

Bit input/output

位输入/输出

Bitshift input/output

位称输入/输出

Byte input/output

字节输入/输出

Dualslope input

双积分输入

Edgedivide output

脉冲沿分离输出

Edgelog input

边沿跳变时间间隔序列输入

Frequency output

频率输出

I2C input/output

I2C输入/输出

Infrared input

远红外输入

Leveldetect input

电平监测输入

Magcard input

磁卡编码输入

Magtrackl input

经录入1输入

Muxbus input/output

多总线输入/输出

Neurowire input/output

神经元接口输入/输出

Nibble input/output

半字节输入/输出

Oneshot output

单稳输出

Ontime input

逻辑电持续时间输入

Parallel input/output

并行输入/输出

Preiod input

周期输入

Pulsecount input

脉冲计数输入

Pulsecount output

脉冲计数输出

Pulsewidth output

脉宽输出

Quadrature input

位置码盘输入

Serial input/output

串行输入/输出

Totalcount input

累加计数输入

Touch input/output

触点输入/输出

Triac output

触发输出

Triggeredcount output

计数触发输出

Wiegand input

维甘德输入

4.通信口
由CP0~CP4组成的通信接口,允许工作在单端或差分模式,既可直接驱动,也可外接变压器驱动或外接485总线驱动。传输速率的选择范围为0.6kb/s~1.2Mb/s。
5.附加功能
   Neuron芯片具有睡眠/唤醒电路、看门狗定时器和服务引脚等附加功能。
(1)Neuron芯片可以在软件控制下进入低耗的睡眠状态,此时,振荡器系统时钟、通道端口所用的定时器/计数器均关闭。但是,所有的状态信息(包括内部RAM中的内容)都保留,这样可以降低系统功耗。
(2)Neuron芯片中的处理器由三个看门狗定时器保护,主要针对软件错误或存储器错误。若系统软件或应用软件不能周期性地复位些定时器,则整个神经元芯片将被自动复位。在10MHz时钟下,看门狗定时器大约持续0.84s。
(3)Service引脚在芯片固件的控制下,为配置和安装含有芯片的节点时使用。该引脚的可编程上拉电阻由应用软件选择。
二、Neuron固件
   Neuron芯片的固件主要包括基于OSI参考模型的LonTalk协议、I/O驱动程序、事件驱动的多任务调试程度以及函数库等部分。其中的LonTalk协议具有通用性,支持多种媒体和多种网络拓扑结构,并提供多种服务。LonTalk协议可使控制信息在各种介质中可靠地传输。表2列出了LonTalk与OSI 7层协议之间的比较,以及与Neuron芯片中三个处理器之间的关系。

表2 LonTalk与OSI7层协议的比较

层号

OSI层次

标准服务

LON提供的服务

处理器

7

应用层

网络应用

定义标准网络变量类型

应用处理器

6

表示层

数据表示

网络变量、外部帧传送

网络处理器

5

会话层

远程操作

请求/响应、认证、网络管理

网络处理器

4

传送层

端对端的可靠传输

应答、非应答、点对点、广播、认证等

网络处理器

3

网络层

目的地址寻址

地址、路由

网络处理顺

2

链路层

介质访问和数据组帧

帧结构、数据解码、CRC差错检测预测、CSMA磁撞回避、选择优先级、碰撞检测

MAC处理器

1

物理层

电气连接

介质、电气接口

MAC处理器

三、Neuron C语言
   Neuron C是基于ANSI C并针对LonWorks分布控制的应用,经优化、加强而成的一种程序设计语言。它增强了对I/O支持、时间处理、报文传递等功能,其扩充部分包括软件定时器、网络变量、显式报文、一个多任务调试、EEPROM变量和杂函数等。Neuron C语言提供的主要特征和支持包括以下内容。
(1)一个内部多任务调度程序:允许程序员以一种自然的方式逻辑地表达由事件引发的并行任务,并可以控制任务执行的优先级。
(2)一个Run-Time函数库:调用时执行事件检查、I/O管理、网络信息的接收和传送、Ueuron的多种控制等。
(3)实现对I/O操作显式的控制:通过对I/O对象的说明来定义标准化Neuron芯片特有的多功能I/O。
(4)新一级对象“网络变量”的说明语句:网络变量作为Neuron C语言的对象,无论何时被赋值,其值都可自动地传遍网络。网络变量的引入和使用了节点间的数据共享。
(5)新语句“when”:定义由事件驱动的任务。
(6)支持显式报文传递:实现对基本LonTalk协议服务的直接访问。
(7)一种对毫秒和秒计时器对象说明的语句:它们在停止计数时将会激活用户定义的任务。
   利用Neuron C语言提供的支持,可大大控制网络软件的开发和应用,使开发人员几乎感觉不到在网络环境下编程。
四、应用系统的基本组成

一般由下述器件构成。
1.Neuron芯片
它主要用于实现LonTalk协议服务,执行节点中的应用程序。
2.收发器
收发器其实是连接Neuron芯片和通信介质之间的接口,可支持比绞线、电力线、无线射频、光纤及红外等多种介质的通信。由于Neuron固件中含有通信协议,因此,该器件的使用对构建网络环境的应用系统十分方便。
3.应用电路
   应用电路是连接Neuron芯片的I/O引脚到诸如传感器、执行器、键盘、显示器等I/O设备所需的电子线路。它需要按照不同的应用要求单独设计。此时,只要通过配置I/O对象和编制Neuron C应用程序,就能控制该应用系统的工作,并实现网络环境的通信功能。
   从图3所示的应用系统可知:Neuron芯片的I/O口可通过应用电路输入或输出数据,以与外界接口;借助于Neuron芯片固件中的LonTalk协议支持,Neuron芯片的通信口可通过收发器实现与网上其他应用系统的双向数据通信。Neuron芯片的强大功能和组成应用系统的灵活结构,对组建分布式应用系统无疑是相当方便的。


返回顶部

    版权所有:南京海思自动化系统有限公司    网站地图:Sitemap        苏ICP备13027346号-1
电话:025-52804590 52804690 地址:南京市白下高新产业园区永丰大道8号B2-503室 网址: www.highsys.com.cn
版权所有:南京海思自动化系统有限公司
总机:025-52804590 / 52804690
市场部:8008分机  售后部:8006分机
手机:18905184663(市场)  邮箱:highsys@163.com
南京市白下高新产业园区永丰大道8号B2-503室