Neuron多处理器芯片及其应用

时间:2020-10-06 13:33:26 理工毕业论文 我要投稿

Neuron多处理器芯片及其应用

摘要:Neuron芯片是美国Mitorola公司和日本Toshiba公司制造的一种多处理器结构的神经元芯片。它将通信协议和控制用微处理器有效地集成在一起,实现通信、控制、调度和I/O等功能。本文以MC134150为例,介绍有关Neuron芯片的基本结构和组成、LonTalk协议以及应用系统的组成方式等。

一、Neuron芯片的基本组成

Neuron芯片作为一种多处理器结构的神经元芯片,有着完整的系统资源,如图1所示,其内部集成有三个管线CPU,最高工作频率可达10MHz。它设置有11编程输入、输出引脚(IO1~IO10),编程方法多达34种,方便了实现应用。片内设有EEPROM和RAM,支持有外部扩展多种存储器的接口,最大存储空间允许有64KB。内部含有两个16位定时器/计数器,能够由固件产生15个软件定时器。Neuron芯片的长处还在于它的网络通信功能,引出的五个通信引脚(CP0~CP4)提供了单端、差分和特殊应用模式等三种网络通信方式。

1.处理器单元

Neuron芯片集成有三个处理器,其中一个用于执行用户编写的应用程序,另外两个完成网络任务。图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/outputI2C输入/输出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计数触发输出