新闻中心

EEPW首页 > 消费电子 > 设计应用 > VB环境下对双端口RAM物理读写的实现

VB环境下对双端口RAM物理读写的实现

——
作者:时间:2007-10-31来源:无忧电子网收藏

  双端口RAM 内存直接映象 高速并行传输 DLL动态链接在集散型控制系统中,一般将计算机或工控机用于终端图文显示,数据采集处理以及机对话接口等方面。计算机或工控机与外部设备需要建立数据传输的通讯联系。但大量数据传输,靠通常的串行通讯方式进行,必须占用CPU大量的时间进行通讯。一些控制系统往往因为传输速率慢而无法实现实时控制,不能满足系统采集和控制需要。上述问题在我们设计的汽车综合检测系统中,得到了较好的解决。系统中采用双端口RAM技术设计了一块PC总线接口的智能型高速并行通讯卡(以下简称通讯卡),实现外部数据同计算机高速并行通讯。由卡上的MCU负责分机的数据采样,将需要传输的数据按系统协议在双端口RAM内任意存取,读写速度快、可靠性高、接口简单,满足了系统设计需要。并且实现了在VB语言环境下对采用内存直接映象技术的双端口RAM的读写操作,将多主CPU采用的总线仲裁方式简单为仅仅对内存操作,在应用计算机总线扩展技术方面具有借鉴意义。

  1 系统描述

  在汽车综合检测系统中,需要对汽车的底盘、发动机以及综合电路等方面的信号进行采样和判断,其中包含大量的运算处理和汽车标准为资料的对比、分析、判断等环节。整个系统信号采样点多,信号的形式各不相同,系统采用MCU控制方式的分机对各测量点进行数据采集和模拟控制。由于MCU没有高效的运算功能,没有大量的指令和数据存贮空间,更不能直观显示各种汽车标准数据和测量结果,若进行大量的运算、判断、显示,其硬件、软件处理一个比较棘手的问题。因此本系统采用MCU负责采集各种信号,统一由计算机负责相应的运算处理、分析、判断,并管理汽车标准数据库、人机对话接口、显示测量结果和标准图形等等,用一块管理分机的通讯卡实现分机与主机之间数据传输。

  通讯卡包含了数字滤波、数据收集、传输等功能,对系统内的并、串行通讯实现分时操作。卡上由一片MCU负责管理各个分机,通过串行通讯方式将分机采集的各种数据,收集到通讯卡内,经过判断、筛选,将有效数据存贮到双端口RAM的规定区域内;计算机从双端口RAM内将数据读入,进行运算处理,与标准数据进行比较判断,将结果或控制命令写入双端口RAM内,实现整个系统统一协调运行。本文主要针对通讯卡的软、硬件设计和在下的软件实现,作重点的分析。

  2 硬件设计

  通讯卡的基本硬件设计简图如图1所示。利用计算机总线做扩展卡的技术已经广为应用,但很多都是利用计算机提供固定的I/O端口地址进行读写操作,“瓶颈效应”十分明显。在对实时性要求很高、数据传输量很大的场合,数据阻塞明显,无法满足系统的大量数据高速传输的需要。本系统利用计算机内存直接映象技术,对内存物理地址直接操作,实时性和速度明显改善,完全满足本系统的速度要求。

  

基本硬件设计简图

  2.1 MCU和双端口RAM的选择

  此卡是实现计算机与数据采集的分机之间大量、快速的数据交换的中间环节。采用的MCU要求具有较哟的运行速度和数据管理能力,既有双端口RAM的接口总线,又具备同分机双工串行通讯能力,同时考虑到系统硬件加密的必要,选择此MCU是系统的关键。美ATMEL公司出品的89C51是本系统的首选。另一方面根据本系统的需要,数据传输的信息量在一个令牌下,2KB的吞吐量已经满足,因此我们采用美国IDT公司出品的双端口EAM IDT7132,容量为2K



评论


相关推荐

技术专区

关闭