实数集十篇

时间:2023-03-13 16:50:32

实数集

实数集篇1

1、实数集,包含所有有理数和无理数的集合,通常用大写字母R表示。

2、18世纪,微积分学在实数的基础上发展起来。但当时的实数集并没有精确的定义。直到1871年,德国数学家康托尔第一次提出了实数的严格定义。任何一个非空有上界的集合(包含于R)必有上确界。

(来源:文章屋网 )

实数集篇2

关键词:实时数据库;数据集成;API;ODBC;WebService;

中图分类号:TE-9 文献标识码:A 文章编号:1674-3520(2014)-04-00169-03

引言

实时数据库系统是生产流程型企业(如:石化企业、电力企业、冶炼企业)的基础数据平台。在生产过程中,生产流程型企业主要使用实时数据进行生产管理、调度和数据分析。不同类型的企业对实时数据的要求不尽相同,如冶炼企业主要关注的是模拟量数据,对温度、压力、流量信号的数据准确性要求较高;电力企业更加关注开关量数据,对电网调度开关信号的响应速度要求更高;石化企业则对模拟数据和开关数据的实时性都有较高的要求。

随着信息化发展进程的深入,企业中越来越多的上层应用系统需要使用到实时数据。如:MES(生产制造执行系统)系统使用实时数据能减少人工数据的录入、提高系统中生产数据的准确性和及时性;环境监测系统使用实时数据在线监控环保指标,及时调整生产,达到国家环保要求;设备管理系统利用设备运行中的实时数据能分析出设备运行状态等。实时数据库系统如何能快速高效的和这些上层应用系统进行数据集成,也已成为企业信息化建设过程中普遍关注的问题。

一、 实时数据库介绍

(一) 实时数据库特性。区别于关系数据库,实时数据库的特性就是实时性。包括数据实时性和事务实时性两个指标。数据的实时性是指仪表IO数据的更新周期,这个指标主要受仪表设备等硬件条件的制约。事务的实时性是指实时数据库对其事务处理的速度。这个指标根据实时数据库的软件产品而有所不同。事务一般采取事件触发或定时触发这两种方式。事件触发是该事件一旦发生可以立刻获得调度,这类事件可以得到立即处理,但是比较消耗系统资源;而定时触发是在一定时间范围内获得调度权。举个简单的例子,一般模拟量数据都有高低报警,如果采取事件触发,报警方式为:一旦数据超过了报警上下限制,系统立即调度触发事件;如果采取定时触发,则报警的方式为:系统定时调度一段时间内这个数据是否有超标数据发生,并执行相应的事务。

(二)实时数据库产品。主流实时数据库有3 个产品:OSI公司的 PI ( Plant Information System ) 、HONEYWELL公司的 PHD ( Process History Database ) 、AspenTech公司的 IP21 ( InfoPlus .21 )。 PI 采用了旋转门压缩专利技术对数据进行了最有效的压缩,极大地节省了硬盘空间,是效率最高,在国际上也使用最广泛的实时数据库。PHD HONEYWELL主要使用在工控领域DCS端,其内核使用的是简化版的关系数据库,因此在数据存储方面没有优势。在国内市场主要使用的是AspenTech公司IP21实时数据库, IP21进入中国市场10 a多,现已成为中国石化使用的最多的实时数据库。

二、实时数据库系统总体架构

实时数据库系统总体架构分为数据采集层、数据存储层、数据应用层。数据采集层通过OPC接口进行生产装置的数据采集并传入IP21实时数据库;数据存储层主要是将采集的实时数据存储到IP21的历史库中;数据应用层主要是对采集上来的实时数据和保存的历史数据进行一些基本应用。

系统架构图如下所示:三、实时数据库集成方式的实现

(一)ODBC方式。ODBC(Open Database Connectivity)是微软提出的数据访问接口标准。其定义了访问数据的一个规范,这个规范独立于具体编程语言,是一种通用的数据集成的方式。按照ODBC规范,数据库厂商提供ODBC驱动程序以方便用户访问数据库中的数据。一般比较熟悉使用的是如:ORACLE、SQL SERVER等关系数据库的ODBC驱动,和关系数据库类似的,实时数据库也提供了ODBC的驱动程序。

IP21的ODBC驱动程序主要包含3个动态链接库:ip21odbc.dll、libc21.dll和PFWAuth.dll。在使用驱动程序之前,需要在系统中注册这3个库文件。当然,注册前需要将这3个库文件拷贝到SYSTEM32系统目录下。

32位系统中注册信息为:

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\AspenTech SQLplus]

"UsageCount"=dword:00000007

"Driver"="C:\\WINDOWS\\system32\\ip21odbc.dll"

"Setup"="C:\\WINDOWS\\system32\\ip21odbc.dll

[HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBCINST.INI\ODBC Drivers]

"AspenTech SQLplus"="Installed"

64位系统中注册信息为:

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBCINST.INI\AspenTech

SQLplus]

"UsageCount"=dword:00000007

"Driver"="C:\\AspenODBC32\\system32\\ip21odbc.dll"

"Setup"="C:\\AspenODBC32\\system32\\ip21odbc.dll"

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ODBC\ODBCINST.INI\ODBC Drivers]

"AspenTech SQLplus"="Installed"

IP21的ODBC驱动在系统中注册完成后,可以直接在操作系统的ODBC数据源管理器中进行数据源配置。如下图所示:

建立完数据源后,即可通过编程方式使用这个数据源来访问IP21,访问方法和通过ODBC访问关系数据库是一样的。也可在一些应用程序中直接访问ODBC数据源,如通过使用Excel软件中的MICROSOFT QUERY功能,可以直接在Excel表格中引用IP21的实时数据和历史数据。

(二)API方式

IP21实时数据库提供了一组灵活的用于数据访问的API接口,程序开发人员可以调用接口中的函数来访问和操作数据库。调用API函数需要用到的动态链接库有:infoplus21_api.dll、cimsrvapi.dll、CimWin32Util.dll、ip21admin_client.dll、ip21ezrpcw32.dll、ip21winrpc32.dll、libc21.dll。由于IP21的API接口是非托管代码,在dotnet环境下进行开发的开发人员,在使用前需要对接口进行重新封装。下面给出主要的封装代码:

[DllImport("infoplus21_api.dll", EntryPoint = "DaInitialize")]

private static extern bool Init(bool isReadCfgFile);

[DllImport("infoplus21_api.dll", EntryPoint = "DaShutdown")]

private static extern bool UnInit();

[DllImport("infoplus21_api.dll", EntryPoint = "DaAddServer")]

private static extern short AddServer(string configLine, ref ERRBLOCK err);

[DllImport("infoplus21_api.dll", EntryPoint = "GETNAMDB")]

private static extern void GetNameByRecID(ref int recid, byte[] name, ref short len);

[DllImport("infoplus21_api.dll", EntryPoint = "DECODFT")]

private static extern void GetFldIDByFldName(string name, short len, ref int id, ref ERRBLOCK err);

[DllImport("infoplus21_api.dll", EntryPoint = "FIELDDEFNINFO")]

private static extern void GetFldInfo(int recid, int fldid, int seq, ref FIELDDEFN flddefinfo, ref short stop, ref ERRBLOCK err);

[DllImport("infoplus21_api.dll", EntryPoint = "DB2REAL")]

private static extern void ReadFloat(int recid, int ft, ref float data, ref ERRBLOCK err);

[DllImport("infoplus21_api.dll", EntryPoint = "DB2DUBL")]

private static extern void ReadDouble(int recid, int ft, ref double data, ref ERRBLOCK err);

[DllImport("infoplus21_api.dll", EntryPoint = "RHIS21DATA")]

private static extern void ReadHisData(int mode, int step, int outsiders, int recid, int fid, ref XUSTS startTime, ref XUSTS endTime, short numFts, int[] fts, short[] ptdtypes, int maxNum, short[] keyLevels, XUSTS[] keyTimes, IntPtr ptdatas, ref short occsok, ref short ftsok, ref ERRBLOCK err);

[DllImport("infoplus21_api.dll", EntryPoint = "REALADD2DB")]

private static extern void WriteFloat(int recid, int ft, ref float data, ref ERRBLOCK err);

[DllImport("infoplus21_api.dll", EntryPoint = "DUBLADD2DB ")]

private static extern void WriteDouble(int recid, int ft, ref double data, ref ERRBLOCK err);

封装完成后,可以在微软的集成开发环境visual studio中直接调用函数来访问IP21中的数据。

(三)webservice方式

Web Service技术能使得运行在不同机器上的不同应用无须借助第三方软件或硬件,就可相互交换数据或集成。以这种方式实现IP21的数据集成能更容易达到利用实时数据库数据的目的。实现方法为先基于实现了ODBC或API方式正常获取IP21中的数据后,再开发部署取数服务。笔者用微软IIS服务管理器来部署IP21的数据服务。webservice代码整理如下:

using System;

using System.Collections.Generic;

using System.Web;

using System.Web.Services;

using IPLIB;

using System.Configuration;

namespace IPServices

[WebService(Namespace = "http:///")]

[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]

[ponentModel.ToolboxItem(false)]

public class IPService : System.Web.Services.WebService

[WebMethod]

public double GetRDData(string tagName)

Rtdb db = new Rtdb();

return db.GetTagData(tagName);

[WebMethod]

public double GetHisRDData(string tagName,DateTime dataTime)

Rtdb db = new Rtdb();

return db.GetTagDataByTime(tagName, dataTime);

以上代码提供取数的web服务,IPLIB命名空间实现IP21的取数逻辑,可以由ODBC或API来实现。服务部署后,其它应用系统可以在代码中直接引用服务器地址,通过上面代码中的两个方法获取实时数据和历史数据。

四、3种集成方式的比较

采用webService方式获取IP21的数据,开发成本最低,部署一台服务器提供IP21取数服务,就可实现整个网络内各个应用系统对IP21的数据集成,但这种方式数据响应速度相对较慢,执行效率不高,对有大批量数据需求的应用系统有性能瓶颈;应用系统通过ODBC方式实现对IP21的数据集成可以解决一部分的性能问题,但由于每个客户端都需要部署安装IP21的驱动,这样就增加了应用系统的实施难度和应用范围。以API方式集成IP21实时数据,技术难度和开发成本较高,每个要集成IP21数据的应用系统都需要单独开发取数模块,但这种方式具有性能优势,取数效率最高。

实数集篇3

关键词:数据采集;MVC;模块化

中图分类号:TP31 文献标识码:A 文章编号:1009-2374(2014)08-0013-03

1 概述

计算机技术和网络技术的发展使得军事领域广泛采用分布式系统方式实现战场环境模拟。利用网络优势可以将散布在不同地点的真实武器设备以及武器模拟器连接起来,实现大范围的分布式交互仿真,从而实现大规模军事协同作战。而对于分布式系统仿真过程中各节点产生的数据需要进行采集分析,并将获得的信息反馈给指控人员,实现对仿真过程的监控。数据采集系统正是针对分布式系统开发的对仿真数据进行集中采集处理的软件,通过获取分布式系统不同节点产生的数据,实现对模拟战场状况的综合掌控。数据采集系统采集的数据可以用于事后对仿真过程的分析,实现仿真过程的重演;可以对仿真过程中重要状况进行分析;可以对仿真细节进行重点关注,得出相关结果文件;可以实现对系统总体可信度评价;可以对系统性能进行验证,改进系统的不足;还可将获得的数据进行存储。数据采集系统主要分布式系统运行中不同节点传输的数据,并对数据进行处理,以实现数据的集中管理,适合在仿真过程中和仿真结束后对数据进行分析。以独立系统方式实现数据采集系统,免去了子系统对数据采集处理工作,易于实现对分布式系统增设的新设备的控制。目前,数据采集系统还未达到良好的灵活性,可扩展性和可靠性。本文针对以上问题提出了数据采集系统的模块化设计方法,重点阐述了系统数据采集的实现。

2 数据采集系统的总体设计

数据采集系统应实现同时从多个子系统采集数据功能,而且具备灵活的可扩展性,以适应要增加与之相连的设备情况,同时,不同系统间通信涉及不同专业领域的融合,因此,在系统设计过程中,系统框架应设计通用性通信接口,保证系统的集成性。数据采集系统各功能模块应充分解耦,实现各模块的独立运行调试,对系统中容易变动的功能进行封装实现,以保证系统某模块的修改不会对其他模块造成太大影响,实现系统结构的灵活性。考虑到数据采集系统的功能升级,对系统的内部实现和对外提供的功能,均要预留扩展空间。因此,在本数据采集系统的设计过程中,根据可集成性、可扩展性、易维护性和灵活性设计原则将系统功能分为对用户呈现的视图部分,封装数据信息的实体部分,控制业务逻辑的控制部分和接收数据的网络通信模块。各部分通过接口进行单向访问,使各部分高度内聚,降低了模块间的耦合性,同时各模块提供信息输入接口,输出参数验证等模块辅助验证功能,可完成各模块功能的单独测试,并且系统各功能模块以信息传递驱动,可以方便的应用到其它以数据流联系的系统中。

根据以上要求,本系统总体架构以MVC设计模式为依据,将系统对外显示界面作为视图,将数据实体信息作为模型,用控制器将这两部分连接,根据模型的更新控制视图的变动。数据采集系统中通信部分单独作为功能模块实现,保证通信方式改变不影响上层功能模块。系统实现了软件模块化的设计思想,保证了系统的可扩展性和与其它系统易于融合的特性。系统总体框架图如图1所示:

图1 系统框架图

3 数据采集系统的实现

依据数据采集系统的设计框架以及各模块间的关系,在软件的实现过程中,各部分功能采用独立实现方式,各部分通过设计良好的通信接口联系,降低了外界变化对系统功能模块的影响,提高了系统的可复用性。

数据采集系统网络通信模块通过网络获取其它子系统的数据信息,并实时更新数据封装模块的信息。将该模块单独实现,可以方便软件对通信方式进行修改,而且对该通信模块进行扩展时,不会对其它功能模块产生影响。在数据采集系统中,网络通信模块只是对其它仿真节点传递的数据信息进行初步的分析处理,判断数据信息产生地址,系统的其它上层功能部分对数据进行详细分析,该部分活动图如图2所示。

图2 接收消息用例活动图

我们将系统网络通信部分功能分为服务、消息和系统调用三部分实现。网络通信模块部分类图如图3。

图3 系统网络通信模块部分类图

服务部分是控制数据信息的关键,是数据信息处理的初始部分,该部分的实现由Inne rMessage Adapter,Inner Message Factory组成。Inner Message Thread用于在数据采集系统启动运行时构建线程,并调用具有私有性构造函数的Inner Message Adapter类生成的唯一实例。InnerMessageAdapter类的实例是服务部分完成其应用的关键部分,它通过缓冲区采用FIFO的原则对接收数据情况进行控制。此外,可以通过Inner Message Factory类对服务部分进行功能扩展。在系统中需要添加新的功能时,可以利用在Create Message方法添加新业务处理来实现,同时用过Produc eMessage来初始化添加的事物操。

消息部分为各种数据信息提供统一控制方法。数据信息是网络通信模块中消息部分的关键部分。系统中的所有据信息类都通过Cmessage基类继承实现。当系统要添加新的数据信息时,可以通过继承CMessage中的共有属性,以及对数据的通用操作,并对特定数据的特有要求进行修改即可实现。

系统调用部分实现对网络数据信息的访问。为避免产生同一组数据多次接收的情况,我们采用缓存最近接收的数据包,并对比接收的数据和缓存的数据的类型、数据包大小、生成时间等属性来检查数据是否重复接收。数据采集系统通过RS_SOCKETInner中提供的API方法来实现网络数据的接收。

数据采集系统中实体模块部分控制系统数据信息、业务规则。该部分实时更新数据信息,并返回视图请求的最终的数据信息。同一个实体模块可以对应不同视图,避免了代码重复设计,降低了工作量。该部分实现了一个实体基类,通过派生新类来实现不同数据实体,方便实现该部分功能的扩展。所有实体类的基类为CEntityObject,该类中SetEntityCode(…)函数实现了对实体类的编码,对不同实体类设定特定标志,Notify(…)接口完成更新的通知;CCodeEntity用于实现对索引节点删除、添加、判断等操作;CEntitiesFacade主要完成在系统退出时释放所有运用SingletonPattern的类的实例指针;该部分还实现了各不同数据信息对应的实体类,用于记录各仿真节点的数据信息。

数据采集系统的控制模块作为分发器控制实体与视图匹配一致,将用户对视图的操作请求作为实体模块的触发事件来调用相应封装数据并在视图中呈现。该部分实现的所有控制功能都继承自基类controller,需要增设新的数据控制过程时,可以添加新的派生类并根据控制流程增加功能,并控制相应视图,调用对应实体,即可实现功能扩展。CAddMessage用于读取缓冲区的数据信息。

视图模块是数据采集系统对外显示部分,实现与用户的信息交互。本系统能正确读取其它仿真节点的数据信息并能根据规定方式对数据进行处理,具备良好信息采集效率,达到了设计要求。MainFrame构建系统显示视图的总框架,系统通过CZongHeViewCMainView实现了数据详细信息的表页显示界面。CParserView用于显示各类数据信息解析后内容。视图提供数据文件解析、数据接收控制、文件操作、数据存储、数据操作功能。

数据文件解析:将通过网络接收到的数据文件的主要信息以表页的形式进行显示,同时可实现对数据解析过程进行如开始解析、选择解析文件和删除数据文件解析内容的控制管理的功能;

图4 过滤器作用协作图

数据接收控制:提供可设置过滤条件功能,并根据过滤需求提取数据文件;

文件操作:实现将接收到的数据信息导出功能(CDaoChuDlg),并以文本文件格式保存,同时也可回放已保存的数据文件;

数据存储:将接收到的数据信息保存到数据库;

数据操作:完成对数据信息仿真的开始和结束控制,实现系统运行状况的复现。

数据库处理模块将数据信息存储到数据库,数据表名可由用户自定义,也可以以数据类型标示和运行开始时间命名。该模块还可将数据库中信息导出实现数据重演。该部分在实现时利用CsqlServerDaoChu将数据存储到数据库中,通过connect(Server,DataBase,UID,PWD)命令连接数据库,CsqlServerGetData负责从数据库中导出数据并将数据显示在视图中,用SqlServerApi该模块对外接口,提供该模块操作方法,实现模块信息封装,方便实现模块功能扩展。

4 结语

本文介绍了针对战场环境分布式系统开发的数据采集系统的设计与实现。采用模块化的设计实现方法,将数据采集系统中的界面实现与网络通信功能分离,同时根据MVC设计模式将界面功能进行划分,并独立实现各部分,提高了系统的开发效率,保证系统的良好地灵活性、方便实现功能扩展等,可以快速适应不同的设备间通信,以及对于不同设备产生的数据的集中处理分析的需求。

参考文献

[1] 任中方,张华,闫明松等.MVC模式研究的综述

[J].计算机应用研究,2004.21(10).

[2] 夏明忠,夏以轩,李兵元.软件模块化设计和模块

化管理[J].中国信息界,2012.

[3] 江澍,左春荣.基于.NET信息采集系统的设计与

实现[J].微计算机信息,2008.

[4] 郭斌,范文慧,熊光楞.基于HLA的协同仿真数

实数集篇4

关键词:数据采集; 复杂可编程逻辑器件; FIFO; 时序控制; 逻辑控制

中图分类号:TN911-34文献标识码:A

文章编号:1004-373X(2011)01-0153-04

Design and Realization of High-speed Data Acquisition Card

JI Xiao-song, LI Zheng-sheng

(The Second Artillery Engineering College, Xi’an 710025, China)

Abstract: For the purpose of sampling the signal of weapon system and analyzing the data, based on the design method of the data acquisition of PC/104 bus, the data sampling card adopted the combine of A/D Convertor, CPLD and FIFO to achieve the signal continuous sampling and the data transfers controlling. The A/D Convertor achieved the sampling-holding and the analog to digital convertion, and CPLD achieved the control of data sampling and storage process. The result of experiments show that this data sampling card is easy to operate, can carry out real-time data sampling and performance is stable, and it can realize high-speed continuous data collection for tested signal.

Keywords: data aquisition; CPLD; FIFO; sequential control; logic control

0 引 言

测试设备是武器系统中最主要的子系统之一,它的工作正常与否将直接影响到整个武器系统的作战性能。在对武器系统进行测试的过程中,需要对一系列的电压、电流等模拟量信号进行快速、实时的数据采集和分析,检查这些模拟量的指标是否符合要求,可以对武器系统是否发生故障做出诊断,保证武器系统的正常工作[1]。根据现代战争对武器系统的作战需求,提高快速机动保障能力,研制出体积小、结构紧凑、便携式的测试设备就成为主要的目标。

本文设计了一种基于PC/104总线的高速数据采集系统,其目的在于替代示波器在武器系统测试中的作用。常规采集方案主要有两种[2]:

(1) 由单片机直接控制的采集方案, 这是最简单最常用的控制方案。由于每次采样都要有单片机的参与, 需占用单片机的时间, 影响其数据处理, 而且对于多通道、多个A/D转换器的控制, 因所需处理的信息更多, 则更加不方便。

(2) 由DMA控制的采集方案。此方案硬件电路复杂, 若与单片机配合使用, 需要单片机具有总线挂起功能,否则还需要进行总线切换,影响数据的及时处理。

综合以上两种方案的优缺点,本数据采集卡自动采样硬件电路主要采用可编程逻辑器件CPLD和先进先出FIFO(First In First Out)技术设计而成,可以很好地实现高速数据采集。

1 数据采集卡总体方案设计

数据采集卡是由信号调理电路、带采样保持器的A/D模数转换器、多路模拟开关、FIFO 数据缓存、CPLD芯片及时钟电路等部分组成,具有高精度、高可靠性、高抗干扰能力等特点。总体结构设计原理如图1所示。

2 芯片介绍

该数据采集卡采用的芯片主要有:AD9283模/数转换器、AD508A多路选择开关、EPM7128SCL84-6 CPLD和CY7C4261 FIFO缓存器。下面对以上所用芯片做一简要介绍。

2.1 AD9283模/数转换器简介

本数据采集卡选用了ANALOG DEVICE公司生产的高速8位模/数转换器AD9283。它采用先进CMOS制作工艺,提供20脚表面贴装封装形式。片内集成高性能采样和保持放大器,输入信号可采用单输入或差分输入;处理输入电压峰峰值在0~1 V之间的模拟信号;采用单+3 V模拟电源和单+3 V数字电源;片内提供+1.2~+1.3 V的参考电压;最高抽样速率可达100 MSPS;具有高速并行输出接口[3]。

图1 数据采集卡结构框图

2.2 EPM7128SCL84-6 CPLD芯片简介

本数据采集卡选用一片Altera公司生产的EPM7128SLC84-6CPLD作为核心处理芯片,它具有高阻抗、电可擦除等特点,可用门单元为2 500个,有64个用户可用I/O引脚,工作电压为+5 V,管脚间最大延迟为5 ns,采用PLCC-84封装,通过JTAG接口可实现在线编程[4]。

2.3 CY7C4261 FIFO缓存器简介

本数据采集卡选用的FIFO器件是CYPRESS公司生产的高速、低功耗、先入先出存储器芯片CY7C4261。它的容量为16K×9位,读写周期为10 ns,支持异步和同步读写操作,写数据和读数据分别具有时钟和使能信号,具有“空(EF)、满(FF)、可编程几乎空(PAE)、可编程几乎满(PAF)”四个状态标志位,没有绝对地址的概念,只有读指针和写指针的相对位置,只要FF标志不为0,就可以进行写操作,只要EF标志不为0,就可以进行读操作,读写操作可以同时进行[5]。

3 数据采集卡电路设计

3.1 信号调理电路

被测信号在进入A/D转换器之前,都必须进行适当的处理,使之符合A/D转换器的量程要求。对大信号需经过适当的衰减,而小信号则需要放大 [6]。本数据采集卡采用的A/D转换器的输入电压峰峰值在0~1 V之间,而被测信号幅度都大于此值,所以信号在进入A/D转换器之前需对其进行衰减处理。具体的分压限幅电路如图2所示。

3.2 A/D转换与FIFO缓存电路

由于AD9283数据最大采集频率为100 MHz,所以其最大数据存储频率至少应为100 MHz,而CY7C4261的最大存储速率为100 MHz,能实现系统要求,系统中CY7C4261的写时钟与A/D转换采用同┮桓霆时钟进行控制[7]。在测试过程中,有些待测信号周期较大,而本数据采集板的采样频率为100 MHz,为了在数据采集过程中不丢数据,需要连续采集大量数据。┮黄CY7C4261的存储容量不够,需要两片轮流存储。AD9283与CY7C4261的接口电路连接如图3所示。

图2 分压限幅电路

4 CPLD在数据采集卡中的应用

CPLD作为整个数据采集过程的控制核心,负责地址译码、多路开关选通、A/D转换启动、将转换结果写入FIFO以及两片FIFO之间的切换等一系列操作。它的三个功能模块分别为:地址译码模块、多路开关控制模块、A/D采样及FIFO控制模块。

4.1 地址译码模块

该模块实现了CPLD内部与PC/104总线的接口单元。本数据采集卡是作为PC/104的标准外设进行工作的。PC/104规定,外设的操作地址为A[9:0],在系统软件设计中要防止地址冲突。PC/104中使用A0~A9地址位来表示I/O端口地址,即可有1 024个口地址,前512个供系统板使用,后512个供扩充插槽使用,当A9=0时表示系统板上的口地址;当A9=1时表示扩充插槽接口卡上的口地址[8]。因此本数据采集板的基地址由A[9:4]来确定,偏移地址由地址线的A[3:0]确定,选择该地址就意味着相应的操作,CPLD对地址进行译码后就产生相应的控制。在QuartusⅡ上设计的地址译码模块原理图程序如图4所示。

地址译码的工作过程为:在拨码开关上手工设定基地址,在CPLD内部划出一片74LS688地址比较器,比较CPU发出的基地址与手工设定的基地址是否一致,若不一致,则地址译码电路不工作,进而整个数据采集板都不工作;若一致,则74LS688输出低电平,使得偏移地址译码电路中的4-16译码器74LS154正常工作,在IOR,IOW信号的作用下产生各种控制信号,使数据采集板正常工作。

4.2 多路开关控制模块

该模块实现了对八选一多路选择开关ADG508A的选通控制。通过控制使能引脚EN以及CH0~CH2引脚,可对多路开关的输入通道进行可编程选择。PC/104 CPU通过地址译码选中CSWE[2],并写入数据D0~D7,就可以选择不同的通道导通。在QuartusⅡ上设计的多路开关控制模块原理图程序如图5所示。

图3 AD9283与CY7C4261接口电路原理图

图4 地址译码模块原理图

4.3 A/D采样及FIFO控制模块

该模块主要负责A/D芯片的转换时序,实现对A/D采样的合理控制,同时将转换数据存入FIFO中,并且控制着两片FIFO的轮流存储,实现大量数据的采集。PC/104 CPU通过地址译码选中CSWE[0],写入数据D0~D7,将与门inst15打开,输出端ENCODE1输出100 MHz的时钟信号,PWRDWN1端输出为低电平,启动A/D转换,同时,与门inst14被打开,WCLK1端输出100 MHz时钟,将转换后的数据存入FIFO(1)中。选中CSRD[0],写入数据D0~D7,将与门inst21打开,OE2端输出低电平,使CY7C4261(2)输出使能,RCLK2端输出100 MHz的时钟信号,将数据读出。当FIFO(1)存储满时,CPLD控制由FIFO(2)来进行存储,同时将FIFO(1)中的数据读出;当FIFO(2)存储满时,转由FIFO(1)进行存储,同时将FIFO(2)中数据读出。如此反复,直至预定的延时时间止,实现了两片FIFO的轮流存储和读取,进而达到了采集大量数据的目的。另外,在每次采样及向FIFO中存储数据之前,都要求选通CSWE[5]或CSWE[6]将FIFO芯片复位,使其读指针和写指针都指向第一个物理存储地址。在QuartusⅡ上设计的A/D采样及FIFO控制模块原理图程序如┩6所示。

CPLD硬件控制逻辑设计的关键是分析各个器件的工作时序和采样保持时间,A/D转换时间以及数据存入FIFO的时间等。在设计的时序处理进程中,要根据CPLD的工作频率计算各个等待周期,等器件准备好以后才能进行下一个处理。

图5 多路开关控制模块原理图

图6 A/D采样及FIFO控制模块原理图

5 结 语

采用CPLD和FIFO器件设计了一种基于PC/104总线的高速数据采集卡,它可以作为PC/104总线标准模件使用。该采集板上的大部分控制逻辑被集成到CPLD芯片中,大大减少了扩展卡上的器件数量,同时降低了系统成本,提高了系统的可靠性。该数据采集板非常适合搭建高密度、小体积的便携式测试设备,可广泛应用于武器控制系统的测试等多种场合,对控制系统的模拟量信号进行快速、实时的数据采集和分析。

参 考 文 献

[1]李进,胡昌华,何洪文,等.基于PC/104 总线的导弹控制系统模拟量数据采集板设计[J].电光与控制,2005,12(4):54-57.

[2]祁煜,李启炎,翁良科,等.基于CPLD和FIFO的多通道高速数据采集系统的研究[J].电子技术应用,2003,29(2):44-47.

[3]吴芝路,杨水旺,任广辉.高速模数转换器AD9283在中频数字接收机中的应用[J].电子器件,2007,30(3):1088-1090.

[4]宋万杰,罗丰,吴顺君.CPLD技术及其应用[M].西安:西安电子科技大学出版社,1999.

[5]武晓冬,戴波.基于FIFO的高速A/D和DSP接口设计[J].北京石油化工学院学报,2006,14(2):26-29.

[6]李进.基于PC/104总线和CPLD技术的导弹测试A/D板的研制[D].西安:第二炮兵工程学院,2005.

[7]常波,阎有运.基于ARM和CPLD的虚拟数字存储示波器研究与设汁[J].测试测量技术,2009(3):33-36.

[8]杨志良,张丕壮.基于PC/104的数据采集系统的研究与实现[J].嵌入式计算机应用,2007,23(6-2):60-61.

[9]田霞.无绝缘移频自动闭塞系统中采集系统设计[J].现代电子技术,2010,33(8):23-26,29.

实数集篇5

1数字集成电路设计实验课程教学现状

数字集成电路设计课程为黑龙江大学集成电路专业学生本科阶段的必修课。传统的数字集成电路设计实验教学课程可使学生加深对所学理论知识的理解,熟练软件使用过程,增强动手操作能力,但还存在如下三方面问题:A.实验教学方法有待改进。在传统的数字集成电路设计实验教学中,上课前,学生基本不了解实验仪器和软件,也不清楚实验课的内容。课程开始后,教师需要把相应理论知识、仪器操作和软件使用等内容一一讲授清楚,在有限学时内,更多的讲授时间就压缩了学生动手实验和探索更深入问题的时间,不利于学生实践能力的培养。B.实验课程内容相对简单。目前,黑龙江大学数字集成电路设计实验课程的内容较为基础,基本单元电路的设计仿真占比较大,开放性实验项目不多。实验内容主要涉及比较器、编码器和加法器等基础门电路的仿真,学生使用ModelSim软件通过Verilog语言编写相应电路的网表,然后编写对应testbench文件并进行仿真验证所写电路网表功能的正确性。这类基础实验有利于学生熟练掌握编程语言和软件使用,并加深对基本单元电路的理解,但内容相对简单,对于学生设计综合能力的进一步培养还有所欠缺。C.实验课程考核机制单一。传统数字集成电路设计实验课程的考核成绩只做为其理论课程总成绩的一小部分。黑龙江大学的数字集成电路设计实验课程的考核形式一般为学生每次实验课程中是否完成了几项规定的实验内容,所有实验内容完成后所得成绩的叠加即为该门实验课程的总成绩。由于实验内容具有固定性和同一性,成绩较好的学生快速完成实验内容后难于进一步进行探索研究,这种简单的考核方式无法很好反映出学生掌握实验技能的梯度,也不利于学生发挥创新型思维进行设计实验,阻碍了学生的实践能力发展。

2基于翻转课堂教学模式的改革探索

A.课堂翻转,提升学生学习质量。在翻转课堂教学模式中,教师应由专注“如何教”转向研究学生“如何学”。在数字集成电路设计实验教学中,教师可根据本次课程的实验内容,在课程开始前一周将相应的学习知识点、软件操作、硬件搭建及要解决的问题以电子文档或视频的形式放于共享平台上。学生需要在共享平台上进行课前学习,学习期间应查阅相关参考资料,将简单的知识点尽量通过自学解决,将重点难点问题标记出来,在课堂中与教师或学习小组交流、讨论,并最终解决问题[2]。这种翻转课堂教学模式改变了传统课堂的教学方式,强化了学生主动学习的意识,提高了课堂时间利用率,可提升学生的学习质量[3]。B.实验课程内容和模式改革。实验课程对学生基础知识掌握情况的检验和设计能力的培养至关重要,因此,应打破传统实验课程辅助理论课程开设的现状,将数字集成电路设计课程实验部分作为一门拥有独立学分的必修课。实验内容应具有基础性、多样性、创新性和完整性,确保学生在做好基础性实验后,切实提升创新性实验能力。实验内容中应增加综合电路设计题目所占比重。目前,实验室拥有SEED-XDTKFPGA教学实验平台,拥有视频显示、LED显示、数码管等验证设备,可开设多种实验教学项目。学生可利用该平成编写源代码、综合、编写测试文件、功能仿真、约束设计、布局布线后仿真、生成FPGA下载代码文件、FPGA下载程序和实验平台验证结果全流程。应充分利用SEED-XDTKFPGA教学实验平台的强大功能,将该平台贯穿数字集成电路设计实验课程始终,如:可增加数码管显示、LED跑马灯、频率计等基础实验项目,独立电路设计项目也应利用该平台进行开展。这对于提高学生的数字电路设计能力、动手实践能力和掌握FPGA开发过程具有重要意义。C.完善实验课程考核机制,注重学生创新能力培养。应建立课前学习考核制度,督促学生做好课前学习。翻转课堂教学模式若要在数字集成电路设计实验教学中达到好的效果,就必须建立适当的课前考核机制。可将学生课前学习时长和通过课前学习掌握基础知识的程度作为一项课程考核指标,考核分数计入最终实验课程成绩内(占实验总成绩的20%),进而督促学生必须做好课前学习。数字集成电路设计课程实验部分的主要任务是培养学生的数字集成电路设计能力,因此,要注重实验中创新性设计能力的考核。以往实验总成绩由每次实验得分累加获得,改革后,实验总成绩应为课前学习考核得分(20%)、每次完成实验内容考核得分(20%)和完成一个独立电路设计实验考核得分(60%)三项累加获得。独立电路设计实验需要完成电路建模、电路网表编写、testbench编写和在FPGA实验箱进行功能验证等工作。教师可根据学生在设计过程中每一步骤的完成情况给出准确的评价分数,这样可以较为细致地检验学生对基础知识和电路设计能力的掌握情况,而且独立电路设计实验分值占比较高,如果不能完成电路设计,则该门课程无法通过考核,可通过这种方式调动学生的积极性,加强学生的紧迫感,提高学生的学习质量。

3结语

通过对翻转课堂教学模式的研究,结合黑龙江大学数字集成电路设计实验教学课程现状,探索了基于翻转课堂的实验教学方法。该方法根据目前实验教学课程存在的问题,提出了课堂翻转、完善课程考核机制和实验内容改革的方法,可以增强师生之间的交互性,增加学生动手实验的时间,有助于教师在课堂上更好地掌握每一位学生真正的学习状态和学习效果,从而有效提升学生的数字集成电路设计能力、创新思维能力和实践能力。

参考文献:

[1]石端银,张晓鹏,李文宇.“翻转课堂”在数学实验课教学中的应用[J].实验室研究与探索,2016,35(01):176-178.

[2]王伟.基于翻转课堂的《土木工程材料》实验教学研究[J].四川建材,2018,44(08):245-246.

实数集篇6

【关键词】数字电路;实验板;原理;操作

学习数字电路技术都要使用实验箱或实验板来搭建电路,以验证数字电路的功能,使实践和理论相结合。本文所介绍的简易型数字集成电路实验板(实物见图1),具有电路简单、容易制作、操作方便、可靠性高等优点,经教学实践证明,十分适合于职业院校学生或电子技术爱好者学习数字电路技术中使用。

一、实验板电路原理

本实验板由电源电路、8位逻辑电平产生电路、单次脉冲产生电路、数字集成电路安装区、8位逻辑电平指示电路和1位数码管显示电路组成(电路原理图见图2),所有的电路输出和输入接口使用了空心铜铆钉作为电路的连接点,采用在铆钉上焊接导线的方式连接各部分电路元件。

1.电源电路

实验板的电源使用5V/1A开关直流电源作为稳压电源,用直流电源插座接插到实验板,由于开关电源内含有短路保护功能,所以当实验电路出现严重短路时能起到过载保护作用,避免扩大故障。LED9是电源指示灯,C1和C2是电源滤波电容。+5V和GND的电源连接点向其他电路提供5V稳压,其中逻辑电平产生电路、单次脉冲产生电路、逻辑电平指示电路的供电已通过印刷电路板线路连到电源电路,所以不需要另外用导线连接电源连接点。

2.8位逻辑电平产生电路

本电路由八位的拨码开关S1、上拉电阻R1-R8构成和逻辑电平输出连接点X1-X8组成,X1-X8连接点能对其他电路提供高电平和低电平,模拟产生8位的二进制数,当将拨码开关S1的左边第1位开关拨到上方时,连接点X1会输出高电平,反之拨到下方时X1接地输出低电平。

3.单次脉冲产生电路

本电路主要由按钮开关S2和CD4011集成电路IC5组成,IC5中两个与非门组成了RS触发器,当按放一次S2时,能在DQ1输出连接点输出1个无抖动的高电平脉冲,用于计数器实验中,避免需要输入时单个脉时产生多个脉冲串而导致实验出错。

4.数字集成电路安装区

本电路装有4块双列16脚的集成电路插座,分别是IC1-IC4,插座上可安装引脚数量为16脚以下的数字集成电路,每个插座的引脚都已分别连接到铆钉的连接点上,需要连接集成电路引脚时,只需用导线焊到相应的铆钉上。

5.8位逻辑电平指示电路

本电路主要由三极管VT1-VT8和发光二极管LED1-LED8组成,L1-L8为逻辑电平输入连接点。当L1输入低电平时,VT8截止,LED8熄灭指示低电平,当L1输入高电平时,VT8导通,LED8发光指示高电平。

6.1位数码管显示电路

本电路由1位数码管插座、限流电阻R17-R24组成,a、b、c、d、e、f、g连接点分别连接数码管的各字段发光二极管,COM连接点是数码管的公共引脚。数码管安装在插座上,当安装共阳极数码管时,用导线将COM连接点连接到电源的+5V连接点,安装共阴极数码管时连接到电源的GND连接点。

二、实验板的安装制作

1.电路板的制作

本实验板的印刷电路板尺寸为22.5× 14.5CM,学校批量制作可交厂家生产,个人可使用热转印或感光法等技术制作,或用万用电路板分别安装各部分电路,实验时再将各块电路进行拼接实验。

2.安装注意事项

先将所有的空心铆钉焊接到板上,再安装各部分电路的其他元件。发光二极管和电解电容元件体要贴板安装,三极管元件体距离电路板的高度不要超过3mm,以防元件过高使实验板上的元件在中操作和存放过程容易折断。拨码开关需要倒装,数码管的插座使用两条4P排针座。

三、实验板的操作

以74LS00与非门逻辑功能测试实验为例,首先要熟悉74LS00的外形引脚排列,确定测试第1个与非门,在数字集成电路安装区的IC1插座上找到与这个与非门的对应引脚,74LS00只有14只引脚,所以将IC座上的8和9脚不用,把16脚的IC座作为14脚的IC座使用。然后将与非门两个输入端的引脚连接点A1和A2点分别用导线焊接到8位逻辑电平产生电路的K1和K2接点,输出端的引脚接点A3连接到8位逻辑电平指示电路的L1连接点,D16和D7接点连到电源电路的+5V和GND连接点。最后在数字集成电路安装区的IC座上安装上74LS00集成电路,接通电源,拨动拨码开关S1的第1和第2位开关,最后观察逻辑电平指示电路LED8发光二极管的亮和灭完成本实验的功能测试(接线图参考图3)。实验时要注意:因数字集成电路容易受静电击穿,所以应先按实验电路图焊接导线,最后才安装集成电路通电测试。

当进行振荡或单稳态等电路实验时,数字集成电路需要外接电阻、电容、晶体管、晶振等元件,可直接将元件的引脚焊接在铆钉上,进行“棚架式”搭建电路。如果实验的集成电路超过4块时,还可把两块或以上的实验板拼接起来进行复杂的数字电路实验。

四、实验板的优点

1.易于操作,电路可靠性高。本实验板与常用的数字电路实验箱相比面板工作区简单,初学者很快能掌握实验的操作,基本能完成数字电路教材中的实验项目。实验板采用导线焊接在空心铆钉的方式来连接电路,连接可靠,有效解决了其他实验箱板中插座和插头在使用一段时间后常出现接触不良的问题,提高了实验成功率。

2.价格低廉,容易制作。数字电路实验箱体积大和价格高,不便于管理和多配置,本实验板所用材料容易购买,价格低廉,仅需几十元成本,体积小重量轻,每个学生可制作一块实验板,为单人单组实验提供了条件,比过去几个学生一组配一个实验箱的实验效果要好,人人能动手做实验,达到“做中学”。

实数集篇7

关键词:B超;图像采集;FPGA,双帧存

中图分类号:TP332.3

文献标识码:B

文章编号:1004―373X(2008)04―026―03

1 引 言

医学超声诊断成像技术大多数采用超声脉冲回波法,即利用探头产生超声波进入人体,由人体组织反射产生的回波经换能器接收后转换为电信号,经过提取、放大、处理,再由数字扫描变换器转换为标准视频信号,最后由显示器进行显示。在基于FPGA+ARM 9硬件平台的全数字化B超诊断仪中,前端探头返回的回波电信号需由实时采集系统进行波束合成、相关处理、采集并传输至ARM嵌入式处理系统,视频信号数据量大,实时性要求高,因此选用FPGA+SRAM构成实时采集系统,在速度和容量上都能满足上述要求。主要介绍B超成像系统中应用FP―GA进行逻辑控制进行超声视频图像采集的原理和实现。

2 系统构成工作原理

如图1所示,采集系统首先由数字波束合成器对多通道超声回波信号进行波束合成,数字波束合成器对不同通道信号进行延时,使同一点的信号同相相加,同时对多个通道的回波信号进行空间域上的加窗,类似匹配滤波,可以提高信号的信噪比。然后对合成后的超声视频信号做一个帧相关的预处理,即图像帧与帧之间对应象素灰度上的平滑处理。因为叠加在图像上的噪声是非相关且具有零均值的随机噪声,如果在相同条件下取若干帧的平均值来代替原图,则可减弱噪声强度。在帧相关过程中,FPGA要控制数据的读取、处理以及存储。在为了满足视频显示的实时性,该采集系统采用双帧存结构的乒乓机制,由FPGA实现读写互锁控制。经帧相关处理完后的视频数据交替写入帧存A和帧存B,帧存读控制器根据后端处理速度读取帧存中的数据,送往DMA控制器,DMA控制器开启DMA通道进行数据传输。FPGA实现读写控制时,为了避免同时对一个帧存进行读写操作,需要设置读写互斥锁进行存储器状态切换。

3 系统设计与实现

3.1数字波束合成

对于具有128阵元和32收发通道的超声探头,在进行32路AD转换后,将其分为4组,每组8路接收通道,每组用一片FPGA实现,在该FPGA内首先进行接收延时和动态聚焦再进行加权求和,其后再进行组间的求和产生超声数字视频信号。每一组的系统框图如图2所示:

对不同通道的回波信号进行不同的延时是达到波束聚焦的关键,延时按精度可分为粗延时和细延时:粗延时用于控制A/D采样的开始时间,精度为32 ns,延时参数由FPGA的片内RAM中读出,更换探头时系统控制器将相应数据写入这些RAM;细延时由采样时钟发生器根据不同的通道产生不同的A/D采样时钟,这些时钟的相位互相错开,其错开的值刚好等于各阵元传播延迟之差。考虑到系统的实时性以及探测过程中深度的变化,需要采用动态聚焦。动态聚焦是在A/D采样开始后,通过读取动态聚焦参数,在采样的过程中控制采样时钟发生器实现。

8个通道的回波信号经过A/D采样后,送入FPGA,缓冲之后同步读出进入加权模块,加权模块由8个无符号为数字乘法器组成。回波信号分别与加权参数相乘后得到具有动态聚焦和加权特性的数据。8组数据再经过3级加法器就得到波束合成之后的超声数字视频数据。

3.2帧相关处理

帧相关模块如图3所示,由帧相关控制器和一片存储器组成,进行帧相关的存储器采用大小为256 kB的静态存储器(SRAM)。帧相关控制器由FPGA实现,完成地址产生、存储器读写控制、帧相关计算功能,因为实时性的要求,即保证送往后端双帧存的数据不能中断,所以考虑到对逐个象素数据读写的同时就进行相关处理,而且需要在同一个象素时钟周期内完成。读写控制器在1个象素时钟周期的前半段需要读出存储器中的数据和当前帧数据进行相关处理;时钟周期的后半段再将相关处理完的数据写入存储器以备后用,这样送往后端双帧存的数据依然是和象素时钟对应的连续象素数据。

帧相关的工作流程如下:

(1)地址产生。地址的产生由一个象素计数器实现,输入信号为帧同步信号VS和象素时钟CLK。前端提供的帧同步信号VS为该计数器的复位信号,在每一帧的开始,计数器清零,然后根据象素时钟CLK计数生成地址,每个象素时钟周期内地址不变,依据此地址进行存储器的读写。

(2)读取已有数据及相关处理。在一个象素时钟周期的前半段,也就是CLK跳变为高电平时,读写控制器输出的读信号OEl为有效,读出前帧中一个象素的数据,送到FPGA内部实现的加法器的A口,与同时到达B口的当前帧的对应象素数据相加平均。

(3)数据保存及传输。在同一个象素时钟周期的后半段,也就是CLK跳变为低电平时,读写控制器输出的写信号WEl为有效,相关处理完的数据写回原来的地址,同时该数据也送往帧存写控制模块。

3.3 帧存乒乓读写控制机制

超声视频图像需要实时地采集并在处理后在显示器上重建,图像存储器就必须不断地写人数据,同时又要不断地从存储器读出数据送往后端处理和显示。另外,为了满足这种要求,可以在采集系统中设置2片容量一样的帧存,通过乒乓读写机制来管理,结构如图3所示。为了确保任何时刻,只能有1片帧存处于写状态,设置1个写互斥锁;同时,只能有1片帧存处于读状态,设置一个读互斥锁。在系统初始时,1片帧存为等待写状态,另1片为等待读状态;开始工作后,2片都处于读写状态轮流转换的过程,转换的过程相同,但是2片状态相错开,这样就能够保证数据能连续地写入和读出帧存。该机制如图4所示,工作流程为:

(1)采集过程未开始,帧存A为等待写状态,获得写互斥锁;帧存B为等待读状态,获得读互斥锁;

(2)帧存写控制器收到一帧开始信号,判断为采集开始,设置帧存A写信号WE2_A有效,帧存A开始写入当前帧数据;同时帧存读控制器设置帧存B读信号OE2_B有效,帧存B则开始读出所存数据;

(3)一帧结束,帧存A写结束,释放写互斥锁;帧存B读结束,释放读读斥锁;

(4)等待另一帧开始,帧存A获得读互斥锁;帧存B获得写读斥锁;

(5)另一帧开始,写控制器设置帧存B写信号WE2B有效,帧存B开始写入数据;读控制器设置帧存A读信号OE2_A有效,帧存A则开始读出数据。

3.4 DMA传输

对整个B超诊断仪来说,系统要完成视频图像数据的实时采集和指定的处理,高性能ARM处理器的处理能力可达每秒数百万条指令,因此数据的传输设计是提高系统速度的关键环节。ARM处理系统与外部的数据传输可以通过CPU访问外部存储器的方法实现,但是效率低下,不能满足系统实时性的要求,而DMA数据传输以不占用CPU时间和单周期吞吐率进行数据传输的优点在实时视频图像采集系统中得到广泛的应用。但是因为DMA的传输速率和前端视频图像数据的输入速率不匹配,很难发挥出DMA数据传输的优势。由可编程的FPGA控制SRAM组成的双帧存可以很好地解决这个问题;此外,FPGA内部嵌入了一定数量的RAM,可以经过配置成缓冲存储器,通过灵活的逻辑结构可以方便地实现对输入输出数据流的控制,成为连接ARM处理系统和SRAM的纽带和桥梁。

实数集篇8

[关键词] PCI 数据采集 FPGA

一、引言

随着信息技术的发展,基于微处理器的数字信号处理在测控、通讯、雷达等各个领域得到广泛的应用。数据的采集成为重要的一个环节。对于各种各样的数据采集系统,利用PCI总线实现的数据采集卡有许多其他总线(如ISA)所没有的优点,如高速、热插拔、自动配置等。数据采集的控制部分由近年来发展迅速的可编程逻辑器件FPGA来设计,其时钟频率高,内部延时小,全部控制逻辑由硬件完成,速度快、效率高。

二、硬件设计

论文设计的数据采集卡是基于PCI总线,采用ALTERA公司的EP1C6Q240实现PCI协议和对整个采集过程的控制。其硬件设计如图1所示

本设计利用可编程逻辑器件FPGA的强大编程功能来实现PCI接口协议和数据采集控制器,同时利用EP1C6Q240中的双口RAM实现数据的暂存,可以有效简化电路设计。该电路板上电路还包括一些信号条理电路,其主要功能是对输入的模拟信号进行放大、滤波、隔离、衰减、多路复用等一系列处理,使调理以后的信号满足AD的采样数据采集控制器要求。

1.FPGA器件

系统所选用的EP1C6Q240这种Cyclone系列的FPGA器件具有以下优点:

(1)采用240个引脚的FPQF封装形式,能提供185个IO用户引脚和5 980个逻辑单元。具有20个4 608位的RAM存储区,最高可支持200MHz的数据传输。每个存储区均包括单口或双口RAM、ROM、FIFO等各类存储器件,并支持8位、16位、32位、36位等数据存储类型。

(2)片上的锁相环电路可以提供输入时钟的1分~32分频或倍频。

(3)可使用Altera的Nios软核和丰富的IP库,快速实现完整的可编程(SOPC)。

(4)多功能的IO结构支持差分和单端输入,并与3.3V、32位、66MHz的PCI局部总线兼容。

2.A/D转换电路

ADS5220是TI产品线中的一款新型?高精度?宽动态范围?流水线型ADC・它具有12位有效分辨率,工作电压范围及逻辑电平为3.3V,与PCI接口相兼容?该器件内部含有参考电压,可最大限度的减少器件。由于采用了流水线结构,采集速度有很大提高,采集速度最高可达40MSPS。

三、FPGA实现的功能

本设计中FPGA实现五方面的功能:

一是FPGA逻辑运算模块。用来接收其他各部分的数据,并按照程序中设定的方案对所收到的数据进行相应的分析和处理。包括:对从MCU接收来的数据指令进行分析,并按其指令要求进行相应操作;接收A/D采样来的数据,对数据进行各种处理,如求其有效值等;接收来自数字量的各种信息数据,按设定的模式对其进行判断处理,并负责按接收的CPU指令输出相应的数字量。

二是PCI内核模块,是系统设计的核心部分,它建立与上位机通信,以及与其他控制模块的数据交换。

三是用于数据暂存的双口RAM,当写入控制信号到达时,根据当前写入地址控制字向相应单元写入数据输入总线上的内容,并在读出控制信号到达时,根据读出地址控制字从相应单元读出内容,送到数据输出总线。

四是双口RAM控制模块,当启动写入地址控制信号到达时,把当前的写入地址加1,加满之后清零并重新开始,同时,当启动读出地址控制信号到达时,对当前读出地址加1,加满之后清零并重新开始。

五是A/D控制单元。主要负责控制外部A/D芯片和多路开关的选通时序,以及实现对A/D采样过程的合理控制。因为,在FPGA芯片内部,不像在MCU内部那样有丰富的外设控制资源供用户使用,要用FPGA来控制A/D采样过程的动作,必须用软件来模拟实现各种A/D控制资源。利用这些自设定的A/D控制管理资源,配以合理的软件控制时序,才能保证采样过程的顺利进行。

六是数字量监测控制单元。负责所有要监视和控制的数字量的状态数据的采集和控制命令的输出。这一部分也需要用软件来模拟实现各种对数字量的管理控制,只有配备较完备的外设控制管理单元,整个数字量的管理控制才能正确地进行。

四、基于FPGA的PCI内核设计

在PCI内核的设计中,核心设计有时序控制和配置空间两部分。时序控制保证了板卡能按正常的PCI时序工作,配置空间部分保证了板卡的即插即用功能。

1.PCI接口配置空间

当计算机第一个上电时,配置软件必须扫描在系统中的不同总线(PCI和其他),确定什么设备存在和他们有什么配置要求。这个过程常常指的是:扫描总线、激活总线、检查总线、发现过程、总线枚举。

执行PCI总线扫描的程序常称为PCI总线枚举。而为了实现这一过程,就必须提供256字节的配置空间结构,并实现PCI规范定义的一组寄存器。PCI总线标准规定的配置空间总长度为256个字节,配置信息按一定的顺序和大小依次存放。前64个字节配置空间称为头标区,是任何PCI兼容设备都应实现的空间。头标区的功能主要是用于识别设备,定义主机访问PCI板卡的方式(是I/O访问还是MEM访问、中断号等)。其余的192个字节空间称为本地配置空间 因卡而异,主要定义卡上局部总线的特性、本地空间基地址及范围等。因PCI规范的通用性,所以每一块PCI总线扩展板卡都只是实现配置空间的一个子集。一般的PCI配置空间的结构如表1所示:

2.PCI接口状态机

在时序控制程序中采用状态机模型来实现不同时序的转换。各种命令、数据交换、控制均在状态机的管理下进行工作。PCI总线上的信号是并行工作的,因此,对应每个状态必须明确其执行的任务。这些任务要用VHDL的进程语句来描述所发生的事件。本设计中的状态机共使用了8种状态如图2所示。

本系统接到复位信号后对系统进行复位,然后转入空闲状态(此状态DEVSEL#、TRDY#和STOP#以及其他输出信号为高阻态)。

在IDLE状态下当检测到FRAME变低、IDSEFL为高,且PCI_CBE上命令是config_read或config_write时,状态转移到CONFIG_WAIT;如果FRAME变低、且PCI_CBE上命令是IO_read或IO_write或memory_read或memory_write时,状态转移到RDWR_WAIT,否则继续IDLE状态。

在CONFIG状态下,如果检测到IRDY为0,表示主机要求完成当前操作,状态转移到BACKOFF;否则继续CONFIG状态,直到IRDY为0为止。

在READ_WAIT状态下,如果检测到用户端需要ABORT,则下一状态转到ABORT状态。如果用户端需要STOP当前传输或者FRAME变为高电平,则下一状态转移到LAST_RDWR状态;如果FRAME还保持为低,则转到RDWR状态。

在RDWR状态下如果检测到用户端需要ABORT,则下一状态转到ABORT状态;如果用户端需要STOP当前传输.则下一状态转移到LAST_RDWR状态;如果FRAME还保持为低,则转保持RDWR状态;如果FRAME还变为高电平,则转到BACKOFF状态。

五、结论

本文介绍了用PCI和FPGA结合实现的高速数据采集卡,利用了PCI总线高速的传输特性,同时配合以FPGA强大的编程控制功能,简化了硬件设计。本系统用VHDL语言来描述。VHDL语言是一种结构化语言,易于编程和修改,开发周期短。整个设计简化了器件,实验中数据传输效果较好,完全符合PCI总线的要求,实现了灵活的接口控制。

参考文献:

[1]李贵山 戚德虎:PCI局部总线开发者指南[M].西安:西安电子科技大学出版,1997

[2]徐海军 叶卫东:FPGA在高性能数据采集系统中的应用[J].计测技术,2005,1(25):4043

实数集篇9

1PDT警用数字集群技术的发展策略

为了更好地提升PDF的优势,促进PDF技术的发展,不断地满足公安系统的应用需求,可以从几个方面来促进PDT警用数字集群技术的发展。

1.1改善系统的顽存性

目前我国的公安专用移动通信网主要以模拟集群、模拟常规以及数字集群的形式存在,其参数的标准和应用的功能大多参考了国外标准,能够满足以外公安系统工作的发展需求。经过多年的发展,用户对于该种系统性能的要求越来越高,也形成了一种多网并存的建网模式,在实际的应用过程中也取得了良好的成效。近些年来,公安系统对于PFD技术的需求出现了不同的变化,这也为公安专用移动网络的发展提供了良好的机遇。但是,由于现阶段下我国移动通信的标准大多使用日常的指挥需求来设计,不能很好地满足应急需求,因此,必须要弥补这一方面的不足。

1.2进行故障弱化处理

集群退化是一种有效的故障弱化方式,在基站出现故障时能够实现通信的转发覆盖,这就可以延长供电中断之后的电池支撑时间。一般在日常情况下也会有供电中断的情况,这类停电会在短时间内迅速地恢复。但是,一般出现灾险,停电就难以在短时间内恢复,因此,可以使用单基站组网以及快速组网的形式来延长电池的支撑时间,减少灾险带来的损失。

2PDT警用数字集群的应用

目前,我国公安系统内部一般采用同频同播系统,对于多径的干扰有着很好的容忍力,即便如此,在实际的使用过程中也常常会由于时延差等因素导致载波之间发生相互干扰的情况,一般可以使用微调同播的方式来调整这种不良区域的实际位置。目前,模拟的集群常常使用FDMA多址方式,再使用宽带调制后,TDMA也成为一种单信道增大容量的方式。但是,在实际的应用过程中,TDMA的方式会出现各种新的问题,如延时问题、信号干扰问题等。因此,从这一层面而言,未来阶段下PDF技术TDMA帧的时隙数量要控制在4个以下,留好相关的保护时隙,以便适应同频同播的实际需求。此外,要注意到,在实际的应用过程中,终端类型、数据传输速率是影响数据业务开展的两个关键性因素之一,经过发展的PDT,如果能够提供相关的中速数据,就能以很好地代替现有的警务通,也可以回避接入过程中出现的安全问题。近些年来的发展表明,公安系统对于移动数据的发展需求十分急切,因此,在未来阶段下,要加快公安专用移动数据业务的推广研发,缓解技术保证与应用之间出现的矛盾,以满足警务工作的发展。

3结束语

实数集篇10

随着"二期课改"的理念不断深入,我们都认识到:课程要整合化,而主题活动模式是整合性课程的有效实践。我们尝试建构平衡的主题网络,以整体的、开放的、相互联系的方法构建学习活动,在主题背景下开展各种活动。主题背景下的活动打破了以往分科教学的模式,突出了课程的有效整合、师生共建与教育个别化,更加关注幼儿的需要、兴趣、经验和能力。

数学是研究世界空间形式和数量关系的科学,由于数学具有知识性和系统性的特性,很多人认为数学的价值就在于它的知识性,其实数学的真正价值在于帮助幼儿更有条理地认识周围世界、解决生活中面临的诸多问题。

以往的幼儿园集体数学教育,作为一门独立的学科,非常重视数学知识间严密的逻辑关系,在具体的学习目标上强调整齐划一,脉络清楚、目的明确、内容层层递进,是一个循序渐进的过程,由易到难的体系。老师对于该教什么?怎么教?心里是非常明确的。

"二期课改"后,集体数学教育作为了科学领域中的一个部分,更加注重整合性,数学教育内容规定不是很具体,使数学不在作为一个学科而独立存在。它关注幼儿的生活和经验,从中挖掘数学内容,带给孩子许多与数学相关的问题,引导孩子在解决问题的过程中,不仅学会了数学知识和技能,更重要的是锻炼了思维能力,学会许多解决问题的方法和途径。

学科性数学教育活动的价值在于帮助幼儿系统地、高效地建构数学知识,但如果一味地强调学科性则容易走向极端。传统的学科性数学教育就存在着重知识、轻发展的倾向。而整合性的数学教育活动关注了幼儿的主动性,但打破了数学教育原本的系统性,幼儿获得的数学经验也相对零散,相对灵活的教学形式也让教师操作时感到了困惑。

无论是学科性的数教育,或是整合性的数教育,其目的都在于帮助幼儿积累数经验、习得数知识,促进幼儿思维的发展。那么在当前的理念下,我们应该如何开展集体数学教育呢?

显然,完全抛弃学科性数学教育活动,将幼儿的数学学习寄托于生活中的零散经验的做法并不明智。就数学教育而言,由于数学知识的特殊性及幼儿学习数学的特点,系统的、学科化的教学还是有其积极意义的。主题背景下的数学活动,应当在认识学科性教育和整合性教育活动的利弊后,既不将两者相互取代,也不能合二为一,而是应该互补共存。即在保持数学教育学科系统性的同时,引导幼儿在其他领域的学习和生活中发现和提出数学问题,积极运用数学知识和数学思维方式解决问题,将"学数学"和"用数学"结合起来并产生良好的互动,最终让幼儿获得一个实用的、开放的数学知识体系。

二、主题背景下集体数学活动的案例研究与思考

在主题背景下集体数学教育活动的探索过程中,我们遇到了困惑,为此我们对主题背景下集体数学活动进行了案例研究,现结合案例,谈谈我们对集体数活动融于主题背景中的一些思考:

【案例一】

活动情况摘录:

在大班"我们的城市"的主题活动中,老师开展了一次"逛超市"的社会实践活动,她要求孩子们带好10元钱,带着孩子一起去逛超市,在超市里,孩子们购买了自己想要的食物或饮料等物品。回到幼儿园以后,孩子们边吃边讨论自己买的东西,整个活动开展得很顺利也很热闹。

活动中问题:

这是一次主题背景下"逛超市"的社会实践活动,本次活动自然地整合了数学教育的内容,也是孩子们对数学知识的一次实际运用。但上述这样的活动只是片面地追求形式上的整合,对于数方面目标没有详细的考虑,更没有考虑到同样活动对大班年龄段的孩子应提出的相应要求,使得活动只是一种表面的热闹,孩子真正得到了些什么很难有所界定。

我们的做法:

1、将主题目标与数学目标相融合

有了明确的主题目标与数学目标,才能选择相应的教育内容。显然,研究"超市",可以融合的数学因素有很多,我们对其所蕴涵的数学因素进行分析:物品的分类、钱币的认识与运算、加减法的运用、统计等内容。而且,"逛超市"的活动在各个年龄阶段都可以进行,只是侧重点会不同,对不同年龄的孩子也会有不同的要求。根据主题内容和大班幼儿的年龄特点,10以内加减法的运用就是此次活动的数学目标。

2、活动前关注幼儿相关的前期经验积累

现实生活是幼儿数学知识的来源,幼儿生活中的方方面面都能为幼儿的数学学习提供经验准备。幼儿只有生活经验丰富,体验正确才能找到数学知识与生活经验的结合点。因此现实生活要引导幼儿积累相关的生活经验。幼儿平时对超市的情况有所了解,首先,教师要帮助幼儿回忆超市的情况。其次,在家园亲子活动中,积累购物经验,进一步了解超市物品的类别:饮料类、食品类、生活用品类、奶制品类等等。再者,在角色游戏中,认识超市标价,尝试为物品标价。另外,认识钱币的集体活动使幼儿了解部分钱币之间的换算关系。

3、活动中关注幼儿运用数知识的情况

教师不仅是活动的组织者、活动中的观察者,更应该是指导者。在购买活动中,教师要注意观察幼儿表现,了解每一个幼儿的情况,给予一定的指导,比如:孩子用了多少钱?还剩多少钱?你还想买什么?剩下的钱够不够?同时,关注性格内向的孩子,及时提供指导。对于计算能力较弱的孩子,及时提醒和帮助等。

4、及时提升幼儿共同经验

数学作为一种工具,不仅可以帮助幼儿精确地认识世界,也可以帮助幼儿尝试用数学的方法解决自己在实际生活中遇到的问题。活动后,教师要及时提升幼儿数学经验,帮助用数学知识解决问题。比如:尝试统计--什么产品买得最多?谁和谁花的钱一样多?同时,也要提升幼儿生活经验,比如:购买的商品时,注意生产日期和保质期。

【案例二】:

活动情况摘录:

在小班"小兔乖乖"主题下,老师开展了《小兔过生日》的数学活动。活动前,老师在区域活动中开展小动物买东西的游戏,培养幼儿按数取物的能力。整个活动在游戏的情境中展开,从老师收到一封信,一起阅读图文并茂的信到幼儿去"好又多"超市购物再到有礼貌地去小兔家送礼最后到玩数学游戏--小兔找朋友,幼儿的积极性一直很高。活动后,教师在区域活动中,继续开展购物的游戏。

活动中的闪光点:

本活动在根据主题目标,选择一个数活动的内容后,运用游戏的方法预设了一节数学活动,还在环境的创设、学习性区域活动、延伸活动等多个方面都考虑与计算活动内容密切联系,使活动真正取之于主题中,在主题背景下开展,并可在主题背景下延伸。

1、结合主题活动,融数学教育于墙面创设中

教师要挖掘主题活动中的数学因素,创设墙面环境,让孩子们通过与墙面布置的互动,从视觉上得到感染,在头脑中印下表象,形成数概念,积累数经验。在此次活动中,教师创设了活动墙面:"小动物爱吃什么",每个小动物上都标有点数和爱吃的食物标记,帮助幼儿认识点数和数字。

2、结合主题活动,融数学教育于学习性区域活动中

区域活动的开展,有多种作用:其一,导入,激发幼儿的学习兴趣。其二,进行数知识的铺垫,幼儿运用一定的数知识,运用加减法进行运算和编题,是对数知识的巩固。其三,帮助教师从中了解孩子的数发展水平,更好地预设活动。学习性区域活动中,孩子们尝试根据点数或食物标记为小动物送相应的食物。幼儿此过程中,熟悉了点数和数字,也学会了一一对应。

3、运用游戏的方式,适时开展集体数活动,提升经验

在区域活动中,孩子们已渐渐熟练运用按一定的数取物,对数量的要求也进一步上升。此时及时把握教育时机,开展集体数活动,适当的给予引导,让幼儿不断运用数学经验去学习和解决问题。而游戏是幼儿最喜爱的活动,把抽象的数学知识与生动活泼的游戏紧密结合起来,能够使幼儿自发地应用数学,获得有益的经验。幼儿在满足自己游戏需要的活动过程中,提升各种数学经验。

4、持续关注活动,使之在主题背景下延伸

本次活动采用适合小班年龄的游戏形式,充分调动起了幼儿的学习积极性。同时,活动中新的数量要求,新的购买要求进一步激发了幼儿的兴趣,幼儿在区域活动中继续尝试为小动物送更多食物和多种食物,使数活动在主题背景下继续延伸。

小结:

直到此时,我们才真正认识到数学活动正以其丰富的内容和形式真实的融合在主题中,想要开展融入主题背景中集体数学教育活动,一定要立足于主题的内容与要求、立足于生活去挖掘数学教学的内容,充分利用数学与主题整合的价值,促进孩子的发展。

1、挖掘主题潜在的资源

深入分析和挖掘隐含在主题活动的数学素材点,根据幼儿年龄特点,确定相关的数学内容和要求。

2、注重活动的整合性

设计数学活动教案,多角度,多方位进行整合,使数学与主题的整合落到细处、实处。包括将主题目标与数学目标相融合、数学内容与其他内容的整合,教学形式的整合等。

3、活动前期和活动延伸

在活动前,运用各种区域活动、亲子活动、游戏活动帮助幼儿积累相关的前期经验。在活动后,在区域活动和游戏活动中继续延伸数学内容,及时提升幼儿共同经验,促进了幼儿生活中运用数学知识和技能的能力。

4、注重日常活动中的自然渗透