欢迎来到千学网!
您现在的位置:首页 > 实用文 > 其他范文

数字存储式自动应答录音系统

时间:2022-12-10 09:06:47 其他范文 收藏本文 下载本文

下面是小编给各位读者分享的数字存储式自动应答录音系统,欢迎大家分享。

数字存储式自动应答录音系统

篇1:数字存储式自动应答录音系统

数字存储式自动应答录音系统

摘要:介绍用单片机进行控制,利用ISD2590芯片设计实现的一种数字式自动答录系统。该系统具有一定程度的智能化,且实现简单,具有较大的可扩充性。

关键词:单片机 ISD2590芯片 录音 双音多频(DTMF)

随着电子技术特别是数字技术的迅猛发展,电脑自动应答、数字点歌、自动音频服务、自动应答录音电话等各种自动答录系统在越来越多的场合发挥着重要的作用。这些技术极大地方便了人们的工作和生活,提高了效率。本文介绍以数字存储方式设计实现的一种简单的自动应答录音系统。该系统主要采用ISD2590语音芯片进行数字录音,其特点是:音质好,且可随时更改主人留言信息。另外该系统利用单片机控制,具有一定程度的智能化及可扩充性。

(本网网收集整理)

1 系统原理

数字存储式自动应答录音系统的原理如图1所示,其核心器件是单片机。利用单片机检测键盘、摘/挂机、铃流等输入信号,并相应地控制和实现双音多频(DTMF)信号的发送、语音芯片的录放音等功能。

在电源方面,振铃电路和通话电路由电话线上的直流馈电直接提取,其它电路用外电源(5V)供电。

系统分为硬件和软件两部分。

2 硬件设计

整个电路按功能主要分成两大部分:语音收发电路和录音部分。

2.1 语音收发电路的实现原理

语音收发部分的内部组成如图2所示。要求可传送的语音信号在300Hz~3400Hz之间。

语音收发电路主要包括三大部分:振铃电路、通话电路和发码电路。其工作过程为:平时通话电路和发码电路同电话线断开;当振铃信号到达时,振铃电路工作,促使蜂鸣器发声;摘机后,即通过转换开关使通话电路和发码电话线接通,交换机检测后立即停止发送振铃信号,而转接双方的话音信号,通过通话电路实现通话。若欲向外输出话音信号,首先摘机动作使发码电路与电话线接通,交换机检测到即送到拨号音;然后交换机负责把呼叫方拨发的DTMF信号送给被叫方,使被叫方电话振铃。

振铃电路主要用SGS公司的LS1240芯片,通话电路用TEA1061实现,发码电路使用可单片机接口的HT9200A芯片,可实现DTMF数据的发送,且容易对其进行软件控制。

另外,考虑到后面的设计需自动摘机,转换开关用继电器实现,以利于单片机控制。

2.2 录音功能的实现

2.2.1 ISD2590芯片

录音时主要用ISD2590芯片,它是美国ISD公司的`专门产品,具有音质自然、使用方便、单片存储、反复录放、低功耗、抗断电等特点。该芯片采用模拟数据直接在半导体存储器中存储的技术,不需经过A/D或D/A转换。因此能够非常真实、自然地再现语音、音乐、音调和效果声,避免了一般固体录音电路因量化和压缩造成的量化噪声和“金属声”。片内信息可保存1(无需后备电源),存储单元可反复录音十万次。

(1) 芯片的电路特性

・手动操作/微控制器控制兼容;

・多段信息处理,可分1~600段;

・输入采样频率5.3kHz;

・典型带宽2.3kHz;

・外部时钟频率1024.0kHz。

(2) 部分引脚描述

・节电控制(PD)

本端拉高使芯片停止工作,进入不耗电的省电状态。芯片发生溢出,即OVF端变低后,要将本端短暂变高复位芯片,才能使之再次工作。

・片选(CE)

本端变低后(而且PD为低),允许进行录放操作。芯片在本端的下降沿锁存地址线和P/R端的状态。

・录放模式(P/R)

本端在CE的下降沿锁存。高电平选择放音,低电平选择录音。录音时,由地址端提供起始地址,录音持续到CE或PD变高,或内存溢出。如果CE是前一种情况,芯片自动在录音结束处写入EOM标志。放音时,由地址端提供起始地址,放音持续到EOM标志。如果CE一直为低,或芯片工作在某些操作模式,放音会忽略EOM,继续进行。

・信息结尾标志输出端(EOM)

信息何时结束在录音时进行设定。只要CE端上升沿到来,录音就停止,此时ISD芯片会在内部一个独立的EEPROM单元内设置一个信息结束标志EOM。当由CE端脉冲触发放音时,放音持续到EOM位为止。

ISD芯片存储阵列的每一行都可以独立寻址,每一行中均匀地布置4个EOM定位点,因此芯片共有2400个定位点(4×600=2400)。例如ISD2590采样频率为5.3kHz,每行的寻址时间为160ms,则EOM的分辨率为40ms。这样,从信息结束到EOM信号输出的最大延时是40ms。EOM信号为负脉冲,脉宽为20ms。上升沿实际上标志信息的结束,因此语音在EOM处于低电平时仍继续从芯片输出,而在上升沿时停止。

・地址/模式输入端(Ax/Mx)

地址端有两个作用,取决于最高两位(A8、A9)的状态。当最高两位中至少有一个为0时,所有输入均解释为地址位,作为当前录放操作的起始地址。当这两位全部为1时,地址端就作为工作模式选择端(高电平有效)。因此操作模式和寻址是相互排斥的(具体的操作模式可参考有关资料)。地址端只作输入,不输出操作过程中的内部地址信息。地址在CE的下降沿锁存。

・话筒前置放大器输出端(ANA OUT)

这个输出经电容耦合到模拟输入(ANA IN)脚。前置电压增益取决于AGC端电平。

・模拟量放大器信号输入端(ANA IN)

本端为芯片录音信号输入端。它接到输入阻抗约为2.7kΩ的固定增益放大器。对话筒输入来说,ANA OUT端应通过外接电容连至本端。该电容和本端的3kΩ输入阻抗给出了芯片频带的附加低端截止频率。其他音源可通过交流耦合直接连接至本端(绕过了ISD的前置)。

・话筒输入信号端(MIC)

本端用于放大1~20mV的信号,它是增益可控的跨导放大器,输入阻抗10kΩ,最大增益24dB。一般驻极体话筒输出的电平足够驱动该放大器。由于输入阻抗已知,频率响应的下限由音频信号源和输入耦合电容决定。对于ISD2590,驻极体话筒选用0.1μF的耦俣电容,它和本端的10kΩ输入阻抗决定了芯片频带和低频截止点。

芯片上的AGC电路控制前置放大器的增益,使增益在0~20dB之间变化,以维持合适的输入电平。

・话筒参考端(MIC REF)

该端是前置放大器的反向输入端,当以差分形式连接话筒时,可抵消噪声,提高共模抑制比。这个输入端如果不用,必须悬空。

2.2.2 录音部分的电路原理

录音部分的电路如图3所示。

(1) 单片机除了要控制ISO2590的CE、P/R、PD和EOM4个控制端,还要控制地址端的高4位(A9~A6),以使信息的分辨率最小为9.6s。

(2) 图3中的继电器开关J1-2可以控制芯片的录音方式:当如图3所示连接开关,芯片从MIC录音;当断开J1-2,语音信号从20脚(ANA IN)录入芯片,MIC不起作用。

3 软件设计

3.1 主程序

先扫描键盘(采用非编码键盘),若所按键的键值小于或等于0CH,表示要发码,转入发码(SENDCODE)程序。这些键共包括:0~9、*和#键。

若键值大于0CH,则表示是功能控制键,依次判断是哪个键,然后转入相应子程序。这里功能键共包括:ON/OFF、PLAY、READY、RECORD。

流程图如图4所示。

3.2 键盘扫描子程序

本程序采用非编码键盘,单片机必须对所有按键进行监视。一旦发现有键按下,单片机应通过程序加以识别,找出它的行列值,并求出它的键值,然后转入相应的处理程序,实现该键功能。

3.3 ON/OFF键子程序

ON/OFF键是摘挂机控制键,它对应的键值是10H。

当有振铃信号输入或欲输出话音时,要将通话电路与电话线接通。此时可以按下ON/OFF键,单片机检测到此键便控制继电器JK1(使P1.4取反)完成此要求。

3.4 RECORD键子程序

RECORD键是录主人留言信息控制键,它对应的键值是0DH。

主人要把自己不在家的留言信息(例如:“您好,这是XX的自动留言机,主人不在家,请留言,留言时间是80s”)。预先录入ISD2590芯片中,以便需要时可以随时调用。在这里留有9s的时间用来录这段话。具体操作是:选按下RECORD键,程序检测到此键后,便开始示主人留言信息并启动单片机的T0中断定时。9s后自动停止。

由于对ISD2590进行直接寻址时,信息的最小分辨率是150ms,所以将A0~A5都接地,将A6~A9连到单片机输出端。这样可以使信息的最小分辨率变为9.6s(150ms×2 6=9.6s)。利用单片机的T0中断定时器从ISD的初始地址(即A6~A9都为0)开始定时9s,并段时间留作主人留言区(剩下大约0.6s不用)。把接下来的80s用来录对方留言信息。

3.5 READY键子程序

READY键是准备实现自动留言功能控制键,它对应的键值是0EH。

当主人出门前,预先按下此键等待。当有振铃信号输入时,振铃检测电路检测到振铃响了4次后,便发给单片机一请求信号。单片机响应后,首先将通话电路与电话线接通(模拟摘机),然后将主人留言信息发给呼叫方,发送完毕后马上准备进行录音。本程序留有80s的时间录对方留言信息,每次录音都从上次录音结束处开始到此次对方录音完毕并挂机为止,循环录制(自动覆盖最前面信息),每次录音完毕自动挂机。主人回家后,可以按下复位键,再进行其他的操作(比如播放留言信息)。

流程图如图5所示。

3.6 PLAY键子程序

PLAY键是播放留言控制键,它对应的键值是0FH。

当主人要听自己留言信息或对方留言信息时可以按下此键,这时便开始播放第一段信息(主人留言);若不想听此段信息,可以不等其播放完,再按一下PLAY键,便从第二段开始播放(对方留言);若再按此键,便重新播放第一段信息;只要按的不是PLAY键,就跳出此子程序,ISD2590停止播放。

流程图如图6所示。

本文设计实现了一种数字芯片存储式自动答录系统。该系统具有实用性强、稳定性高等诸多优点,适合家庭和商业两用,且在功能上可以扩展。

(1) 若想录多方留言信息,可以将这80s的时间细分成多段,每段多长时间预先设定好。也可在电路中加入摘挂机检测电路,当对方挂机时自动停止录音。这种情况下每段录音时间不固定。

(2) 此电路还可以扩展,加一些其他功能,例如:

・温度报警功能。只要将温度传感器输入端连至单片机外部中断脚,当温度达到一定值时,便进入中断,单片机控制语音收发电路自动拨号(例如拨119),并告如对方这里有火灾。

・自动转接分机。可以将语音芯片再留出一小部分用来存储转接的语音提示信息(例如:请拨分机号,1为xx处,2为xx处),然后电路判定对方发来的DTMF码并通过软件和继电器将对方自动转接到相应的分机上。

篇2:数字存储式自动应答录音系统

数字存储式自动应答录音系统

摘要:介绍用单片机进行控制,利用ISD2590芯片设计实现的一种数字式自动答录系统。该系统具有一定程度的智能化,且实现简单,具有较大的可扩充性。

关键词:单片机 ISD2590芯片 录音 双音多频(DTMF)

随着电子技术特别是数字技术的迅猛发展,电脑自动应答、数字点歌、自动音频服务、自动应答录音电话等各种自动答录系统在越来越多的场合发挥着重要的作用。这些技术极大地方便了人们的工作和生活,提高了效率。本文介绍以数字存储方式设计实现的`一种简单的自动应答录音系统。该系统主要采用ISD2590语音芯片进行数字录音,其特点是:音质好,且可随时更改主人留言信息。另外该系统利用单片机控制,具有一定程度的智能化及可扩充性。

1 系统原理

数字存储式自动应答录音系统的原理如图1所示,其核心器件是单片机。利用单片机检测键盘、摘/挂机、铃流等输入信号,并相应地控制和实现双音多频(DTMF)信号的发送、语音芯片的录放音等功能。

在电源方面,振铃电路和通话电路由电话线上的直流馈电直接提取,其它电路用外电源(5V)供电。

系统分为硬件和软件两部分。

2 硬件设计

整个电路按功能主要分成两大部分:语音收发电路和录音部分。

2.1 语音收发电路的实现原理

语音收发部分的内部组成如图2所示。要求可传送的语音信号在300Hz~3400Hz之间。

语音收发电路主要包括三大部分:振铃电路、通话电路和发码电路。其工作过程为:平时通话电路和发码电路同电话线断开;当振铃信号到达时,振铃电路工作,促使蜂鸣器发声;摘机后,即通过转换开关使通话电路和发码电话线接通,交换机检测后立即停止发送振铃信号,而转接双方的话音信号,通过通话电路实现通话。若欲向外输出话音信号,首先摘机动作使发码电路与电话线接通,交换机检测到即送到拨号音;然后交换机负责把呼叫方拨发的DTMF信号送给被叫方,使被叫方电话振铃。

振铃电路主要用SGS公司的LS1240芯片,通话电路用TEA1061实现,发码电路使用可单片机接口的HT9200A芯片,可实现DTMF数据的发送,且容易对其进行软件控制。

另外,考虑到后面的设计需自动摘机,转换开关用继电器实现,以利于单片机控制。

2.2 录音功能的实现

2.2.1 ISD2590芯片

录音时主要用ISD2590芯片,它是美国ISD公司的专门产品,具有音质自然、使用方便、单片存储、反复录放、低功耗、抗断电等特点。该芯片采用模拟数据直接在半导体存储器中存储的技术,不需经过A/D或D/A转换。因此能够非常真实、自然地再现语音、音

[1] [2] [3] [4] [5]

篇3:按G.723标准设计的数字录音系统

按G.723标准设计的数字录音系统

摘要:介绍了一个按G.723标准设计的数字录音系统,该系统以ADSP-2181数字信号处理器为核心,采用大容量的闪速存储器(Flash RAM)作为数字语音数据存储器。试验表明,该系统具有良好的实用价值。

关键词:G.723标准 数字录音机 ADSP-2181 语音数字处理

随着数字化技术的迅速发展,语音信号数字处理技术的不断成熟[1],可编程器件和功能强大的数字信号处理器(DSP)的广泛应用,传统的模拟音像设备大量地被各种数字设备所代替。然而,便携式的录音设备仍以各种模拟媒质为主,如常用的磁带录音机。如果要将其录音以数字形式的数据保存,则应将其模拟录音信号变换成数字形式的数据,这就给原始数据的保存带来诸多不便。因此,笔者按G.723标准设计了一种数字录音机,它以ADSP-2181作为语音处理器和系统控制器,取消了普通录音机的机械部分和磁带,以大容量的闪速存储器(Flash RAM)作为数字语音数据存储器。该样机体积很小,录音时间长,没有机械噪声及机械故障,很有实用价值。

(本网网收集整理)

1 G.723标准简介和系统结构框图

1.1 G.723标准简介

G.723是ITU-T在制订成型的一种多媒体语音编解码标准。其典型应用包括IP电话服务、H.324视频电话、无线电话、数字卫星系统、数电倍增设备(DCME)、公共交换电话网(PSTN)、ISDN及各种多媒体语音信息产品。G.723标准传输码率有5.3kb/s和6.3kb/s两种,在编程过程中可随时切换。该标准主要包含了编码算法和解码算法。原理是:从采集的语音信号中解析出声道模型参数,构造一个合成滤波器,采用合适的激励源激励,编码传输的参数主要是激励源与合成滤波器的参数。5.3kb/s的编码器采用代数码线预测激励(ACELP);6.3kb/s的编码器则采用多脉冲最大似然量化(MP-MLQ)激励。根据传输编码参数,可重构激励源与合成滤波器进行解码,还原出来的数字语音信号经D/A转换器转换成模拟语音信号。关于G.723的编码和解码的详细说明见参考文献[2]。

G.723算法对语音信号有很好的编解码效果,同时也可处理音乐和其它声音信号,典型输入是64kb/s(8k×8)或128kb/s(8k×16)的A律或μ律的PCM采样语音信号。每次处理一帧语音信号,每帧240个采样点(30ms)。在5.3kb/s的码率下,每帧语音被压缩成20个字节传输;在6.3kb/s的码率下,每帧语音被压缩成24个字节传输。

1.2 数字录音系统的结构框图

系统框图主要由图1所示的五部分组成。AD73311用来进行A/D和D/A转换,它集成了模/数和数/模转换功能,而且可编程控制,使用极其方便;ADSP-2181为系统的核心数字处理器[3],时钟频率为33MHz,其功能强大;KM29N3为闪速存储器(Flash RAM),用来存储已压缩的语音数据;AT27C010(EPROM)用来存放控制ADSP-2181工作的程序;LCD用来显示系统当前的工作状态。

系统的工作流程是:模拟语音信号经AD73311采样并经A律或μ律压缩后转换成PCM数据,通过ADSP-2181的串行口送到ADSP-2181,ADSP-2181再将数据进行编码和压缩后送到闪速存储器KM29N32000中存储起来;录音回放时,从KM29N32000读取压缩数据,送回ADSP-2181进行解码,再送到AD73311进行D/A转换,输出模拟语音信号。整个过程都是由存放在AT27C010中的DSP程序控制,有条不絮地工作。LCD显示系统当前的工作状态。

2 系统各主要部分的原理与接口

2.1 AD73311与ADSP-2181的接口电路及编程控制

2.1.1 AD73311与ADSP-2181的接口电路

AD73311具有A/D和D/A转换功能,采样频率为8kHz~64kHz,可以编程控制,采样字长为16位。AD73311具有大信噪比、输入输出增益可编程控制、低工作电压(2.7~5.5V),并且一片两用的特点,是一种很受欢迎的芯片。AD73311与ADSP-2181的接口电路如图2所示。

AD73311完成模拟语音信号的采集和数字语音信号的回放工作。从图2中看出,信号从VIN处输入,在

VOUT处输出回放语音信号。VIN处接麦克风,VOUT处接扬声器。与ADSP-2181的通信通过串口进行,从SDO引脚向ADSP-2181输出数据,从SDI引脚接收ADSP-2181数据,发送和接收可同时进行。时钟信号由ADSP-2181的SLCK引脚接入。

编程时必须先初始化AD73311的工作状态,依次设定采样率、输入输出增益、提前时间等,再让其工作在数据传输模式下就可正常工作。AD73311进入数据传输模式后一直进行A/D或D/A转换。在编程控制中,应让ADSP-2181的串口一直工作在接收中断方式,这样可使数据发送与接收的速率保持一致。要改变工作模式可将其RESET引脚置低,再置高,这样就可重新设定了。

2.1.2 AD73311的编程

AD73311是一种可编程的数据转换器,内含五个8位控制寄存器CRA~CRE,用于设定工作状态,控制输入输出。AD73311通过串行口与处理器接口,传送的是16位数据,有五种工作模式,分别为:程序模式、数据模式、混合模式、模拟环路模式、数字环路模式。其中前三种是正常的工作模式,后两种是调试模式,仅在调试时使用。五种工作模式由内部的控制寄存器A中的四位(CRA0~3)控制。

程序模式:AD73311启动或重置后即工作于程序模式,此时AD73311串行口输入的数据将作为命令字以初始化内部控制寄存器组,之后AD73311根据初始化命令字进入相应的工作模式,在此之前AD73311串行口输出的码字是无效的。

数据模式:此时AD73311串行口输出的是A/D转换的16位数据,输入的是D/A转换的16位数据。AD73311一旦进入数据模式,就不能再得到控制信息,所以就永远处于这一模式,除非重启动。这时硬件上可采用发送接收帧同步信号同步方式。

混合模式:此时16位码字可能是控制字,也可能是数据。码字的最高位MSB用来标识这个码字是控制命令字(MSB=1)还是数据(MSB=0,低15位是有效数据)。在混合模式下,ADSP-2181可以根据系统的运行状况适时改变AD73311的工作参数,如放大器的放大倍数等。这时硬件上可采用发送接收帧同步信号异步方式,便于ADSP-2181的自主控制。

AD73311控制采样率由时钟分频电路完成。时钟分频电路将从DMCLK引脚输入的外部时钟频率MCLK通过主频时钟因子分频为内部时钟频率DMCLK,MCLK有五种频率选择,由内部控制寄存器B中的CRB4~6三位控制。DMCLK决定了AD73311的采样频率,它也是AD73311串行口的帧同步频率。DMCLK再经串行时钟分频因子分频为串行时钟频率SCLK,DMCLK有四种选择,由内部控制寄存器B中的GRG2~3两位控制。

通过编程控制寄存器D,可控制输入输出的增益。输入增益IG可在0~38dB之间调整,输出增益OG可在-15~6dB之间调整。AD73311的具体编程流程图如图3所示,控制程序如下:

AX0=DM(0x3fe5); {For 2181-PF0 connect with AD73311-RESET}

AR=AX0 AND 0XFFFE; {PF0 pin reset}

DM(0x3fe5)=AR; {RESET AD73311 to program}

NOP; {Delay}

NOP;

NOP

AX0=DM(0x3fe5);

AR=AX0 OR 0X0001; {2181-PF0 SET}

DM(0x3fe5)=AR; {ready to program}

ax0=0x82f9; {写控制寄存器CRC,5V电源,使能ADC和DAC}

tx0=ax0;

IDLE;

ax0=0x811b; {写控制寄存器CRB,分频,设置8K采样率}

tx0=ax0;

IDLE;

ax0=0x8320; {写控制寄存器CRD,输出输入增益为0}

tx0=ax0;

IDLE;

ax0=0x8400; {写控制寄存器CRE,DAC延迟量为0}

ax0=ax0;

IDLE;

ax0=0x8001; {写控制寄存器CRA,进入数据传输模式}

tx0=ax0;

IDLE;

2.2 闪速存储器与ADSP-2181的接口电路

闪速存储器采用韩国三星公司生产的KM29 N32000,容量为4M×8=32Mbit,分成512块,每块有16页,每页528个字节。可进行100万次擦写,数据保存时间为,通过编程可自动进行擦写。这里用于保存录音数据,其数据保存不需要充电维持。

从理论上说,如果采用G.723标准算法,在8kHz的采样率下,采用5.3kb/s的码率,录音时间最大值约为100分钟;在6.3kb/s码率下最大录音时间约为83分钟,比常用的录音磁带略长,可以满足般的录音要求。如果采用KM29V64000(8M×8=64M bit),录音时间可增加一倍。如果需要更长的录音时间,可选择容量更大的闪速存储器。有关KM29N3200的详细特性见参考文献[4]。

KM29N32000与ADSP-2181的接口电路如图4所示,它的读写及擦除操作说明如下:

(1)读操作

首先让CLE置高,进入命令模式。此时ALE置低,从I/O口输入00H(表示读操作控制命令字),接下来CLE置低,ALE置高,进入地址加载模式,将要访问的24位地址(A0~A23)分三次由低到高从I/O口磅入。适当延迟后,将ALE置低,就可连续地进行读操作,每次读取一帧数据。得到的数据是加载地址开始的。整个过程CE必须保持低电平。

(2)写操作

写操作过程与读操作类似,开始控制命令字是80H,将加载地十分三次送入后,适当延迟,就可连续地向闪速存储器写入一帧数据。数据写完时,CLE置高,送入10H命令字,进行写操作。

(3)擦除操作

保存数据时,如果对应存储区已经有数据,就必须先擦除掉原来数据。每次擦除一次,每块8K字节。

首先输入控制命令字60H,接着把块地址分两次送出,再输入D0H命令字进行块擦除。擦除完后,输入命令字70H,可读取擦除状态。如果接下来读取的数据的LSB位为“0”则表示擦除成功,为“1”则表示产生了错误,可重新进行擦除操作。如果再次错误,可能是对应单元出错了。

在访问Flash RAM的内存操作中,最重要的是要注意各个信号的时序。必须严格按照说明书的时序图进行操作才能实现正常的功能。

2.3 LCD显示及接口电路

在本系统中用LCD显示当前系统处于的状态,如录放状态、进行的时间等。可由ADSP-2181进行控制,设定显示方式及内容。

所用的是点阵式液晶显示器,为日立公司的HD44780A00LCD。里面有专用集成电路作为点阵的控制驱动,只要直接送入数据和指令就可实现所需的'显示。在本系统中,由于LCD使能信号脉宽较大,无法直接由DSP产生,因此通过触发单稳触发器74LS123来产生LCD使能信号。接口电路如图5所示。

通过调节连接74LS123的R和C值可控制输出Q的脉宽tW。当C≥1000pF时为:

tW=K・R・C

其中K为常数,与外界温度及外接电容C有关,在0.2~0.6间选择。

当C≤1000pF时,tW估计值如下:

tW=6+0.05C(pF)+0.45R(kΩ)C+11.6R

当74LS123引脚A出现一个下降脉冲时,输出Q产生一个高电平脉冲,脉宽由R和C决定,驱动LCD工作。

录音时LCD上面一行显示RECORD,下行则显示进行的时间;放音时上面一行显示PLAY,下行也显示进行的时间。时间的显示通过ADSP-2181里面定时器中断进行。

3 系统控制软件设计

ADSP21XX系列提供了一整套软件开发工具及相应的仿真器开发平台,给系统的调试与仿真提供了极大的方便。软件开发系统包括系统建造器、带运行时时间库的C编译器、汇编器、连接器、PROM划分器等。通过编译连接汇编源程序,可以生成EXE

文件。此文件是存储映像文件,可以加载到仿真器上进行仿真;调试成功后,通过PROM划分器和EPROM烧制设备可以写入EPROM,系统复位时DSP加载EPROM程序便可自动运行,控制整个系统的工作。

系统软件设计采用自举和中断控制两种方式。自举方式系统一上电,ADSP-2181读取EPROM中的程序,自动运行程序去控制整个系统工作。

中断控制利用了ADSP-2181的两个中断,即sport0接收中断和timer中断。ADSP-2181的sport与AD73311相连。当得到一个采样数据时,产生一个接收中断,ADSP-2181读取便得到采样数据。由于sport0是全双工的,当产生接收中断时,同时可以发送数据,一方面在录音时可以得到回放效果;另一方面则在播放时可直接发送数据,而对采样数据置之不理,这样便于解码数据以固定的码率回放。Timer中断定时检测 外部控制引脚状态,包括录音、放音、快放及码率转换4个引脚,每个引脚的0/1状态对应两种控制,即开始录音/停止录音、开始放音/停止放音、5.3kbps/6.3kbps码率转换及快放状态,共有七个状态。

DSP汇编语言的结构与ASM汇编语言类似,其开头部分对应中断向量表。工作在中断方式时,则向量表对应中断处一般为一条跳转语句;产生中断时,则跳到相应语句执行中断控制功能。

主程序的中断设置部分如下:

JUMP start;NOP;NOP;NOP; {reset start interrupt}

RTI;NOP;NOP;NOP; {IRQ2}

RTI;NOP;NOP;NOP; {IRQL1}

RTI;NOP;NOP;NOP; {sport0 transmit}

JUMP sportReceive;NOP;NOP;NOP; {sport0 receive}

RTI;NOP;NOP;NOP; {IRQE}

RTI;NOP;NOP;NOP; {BDMA}

RTI;NOP;NOP;NOP; {sport1 transmit}

RTI;NOP;NOP;NOP; {sport1 receive}

JUMP settimer;NOP;NOP;NOP; {timer interrupt}

RTI;NOP;NOP;NOP; {PowerDown}

sporto和timer中断控制说明如下:

(1)sporto接收数据中断

在程序中,数据处理集中在此进行。主要过程是:在录音时,每收到240个采样数据,就进行G.723编码,将编码结果保存到闪速存储器中;在播放时,每次读取24个数据,将读取的数据进行解码,再通过串行口发送出去,经扬声器还原成语音信号。其流程如图6所示。

(2)timer中断

timer中断用来检测用户的控制信息及显示运行时间信息。用户控制有4个,即码率选择、录音控制、放音控制及快退控制。对应这4个控制引脚,初始设定为输入态,然后通过检测各个引脚的电平设定工作态。其流程如图7所示。

4 系统调试

系统调试要使用AD公司提供的ADSP21XX系列的整套软件开发工具和仿真器。笔者使用ADSP-2181-EZ-ICE仿真器进行调试。仿真器上自带33MHz的2181,调试支持20个断点,可单步、设断点和全速运行,可随时观察和修改寄存器和存储单元的值。仿真器上提供了一个14针的仿真接口,仿真器通过此接口仿真控制目标系统。仿真器与计算机间有一个RS-232接口,通过数据进行连到计算机的串行口上,在仿真器开发平台上就可以进行软件调试。

系统调试时遇到的主要问题是存储器读写及LCD的显示问题。开始时发现写进闪速存储器的数据与读出的数据不符。经仔细分析,发现是由于没有严格按照闪速存储器的读写操作时序进行编程,或是延迟量不够,或是两个信号的先后次序弄反了,数据可能根本没有写进去,读出的数据当然是错的。在严格按照其说明书的时序进行编程控制后,数据的读写擦除操作完全正常。

在播放录音数据时,曾出现声音跳变不连续的问题,经分析发现原因在于地址定位时出错。因为对闪速存储器担任时每次读写都是一帧数据,而编解码时一次操作的数据为20/24个字节,两者长度不一样,需要进行转换操作。

LCD开始调试时没有信息显示。经分析发现原因在于工作周期。本系统中ADSP-2181处理器的机器周期为30ns,经设定最大的等待周期为7机器周期后也才有240ns,而LCD的工作使能脉宽至少要300ns。因此在硬件上增加了一单稳延迟电路,这样便解决了此问题。

篇4:内存页式存储管理

为了支持多道程序系统和分时系统,支持多个程序并发执行,引入了分区式存储管理,这里给大家分享一些关于内存页式存储管理,希望对大家能有所帮助。

基本原理

将程序的逻辑地址空间划分为固定大小的页(page),而物理内存划分为同样大小的页框(page frame)。程序加载时,可将任意一页放人内存中任意一个页框,这些页框不必连续,从而实现了离散分配。该方法需要CPU的硬件支持,来实现逻辑地址和物理地址之间的映射。在页式存储管理方式中地址结构由两部构成,前一部分是页号,后一部

页式管理方式的优点是:

1)没有外碎片,每个内碎片不超过页大比前面所讨论的几种管理方式的最大进步是,

2)一个程序不必连续存放。

3)便于改变程序占用空间的大小(主要指随着程序运行,动态生成的数据增多,所要求的地址空间相应增长)。

缺点是:要求程序全部装入内存,没有足够的内存,程序就不能执行。

分为页内地址w(位移量)

页式管理的数据结构

在页式系统中进程建立时,操作系统为进程中所有的页分配页框。当进程撤销时收回所有分配给它的页框。在程序的运行期间,如果允许进程动态地申请空间,操作系统还要为进程申请的空间分配物理页框。操作系统为了完成这些功能,必须记录系统内存中实际的页框使用情况。操作系统还要在进程切换时,正确地切换两个不同的进程地址空间到物理内存空间的映射。这就要求操作系统要记录每个进程页表的相关信息。为了完成上述的功能,—个页式系统中,一般要采用如下的数据结构。

进程页表:完成逻辑页号(本进程的地址空间)到物理页面号(实际内存空间,也叫块号)的映射。

页式管理地址变换

在页式系统中,指令所给出的地址分为两部分:逻辑页号和页内地址。

原理:CPU中的内存管理单元(MMU)按逻辑页号通过查进程页表得到物理页框号,将物理页框号与页内地址相加形成物理地址

上述过程通常由处理器的硬件直接完成,不需要软件参与。通常,操作系统只需在进程切换时,把进程页表的首地址装入处理器特定的寄存器中即可。一般来说,页表存储在主存之中。这样处理器每访问一个在内存中的操作数,就要访问两次内存:

第一次用来查找页表将操作数的 逻辑地址变换为物理地址;

第二次完成真正的读写操作。

这样做时间上耗费严重。为缩短查找时间,可以将页表从内存装入CPU内部的关联存储器(例如,快表) 中,实现按内容查找。此时的地址变换过程是:在CPU给出有效地址后,由地址变换机构自动将页号送人快表,并将此页号与快表中的所有页号进行比较,而且这 种比较是同时进行的。若其中有与此相匹配的页号,表示要访问的页的页表项在快表中。于是可直接读出该页所对应的物理页号,这样就无需访问内存中的页表。由于关联存储器的访问速度比内存的访问速度快得多。

具有快表的地址变换机构

由于页表是存放在内存中的,这使CPU在每存取一个数据时,都要两次访问内存。第一次是访问内存中的页表,从中找到指定页的物理块号,再将块号与页内偏移量W拼接,以形成物理地址。第二次访问内存时,才是从第一次所得地址中获得所需数据(或向此地址中写入数据)。因此,采用这种方式将使计算机的处理速度降低近1/2。可见,以此高昂代价来换取存储器空间利用率的提高,是得不偿失的。

为了提高地址变换速度,可在地址变换机构中增设一个具有并行查寻能力的特殊高速缓冲寄存器,又称为“联想寄存器”(Associative Memory),或称为“快表”,在IBM系统中又取名为TLB(Translation Lookaside Buffer),用以存放当前访问的那些页表项。此时的地址变换过程是:在CPU给出有效地址后,由地址变换机构自动地将页号P送入高速缓冲寄存器,并将此页号与高速缓存中的所有页号进行比较,若其中有与此相匹配的页号,便表示所要访问的页表项在快表中。于是,可直接从快表中读出该页所对应的物理块号,并送到物理地址寄存器中。如在块表中未找到对应的页表项,则还须再访问内存中的页表,找到后,把从页表项中读出的物理块号送地址寄存器;同时,再将此页表项存入快表的一个寄存器单元中,亦即,重新修改快表。但如果联想寄存器已满,则OS必须找到一个老的且已被认为不再需要的页表项,将它换出。右图示出了具有快表的地址变换机构。

篇5:浅析基于云存储的数字校园存储架构论文

浅析基于云存储的数字校园存储架构论文

数字校园是教育信息化发展的必然趋势, 随着数字校园的建设,学校的管理、教学将会步入一个全新的网络信息化时代。数字校园包括很多业务系统,如:门户系统、迎新系统、教务系统、一卡通系统、数字图书系统、校园监控系统、教学资源系统等等,这些系统存储了学校里最重要的信息资源,它们是应用的核心和基础,如何科学、有效地存储、管理、利用这些信息资源是当前数字校园建设中面临的一个重要课题。

1 数字校园的存储需求

当前数字校园中的主要应用及数据存储需求主要有以下5种情况。

(1)站

包括学院的统一站,各部系的网站以及专题网站等,其特点为网站数目众多、访问量大、存储的内容绝大多数为非结构化数据,表现为html 等格式的小文件,负载主要为远程用户对Web 页面的访问,对存储的主要需求是具有较高的IOPS(每秒读写次数)性能。

(2)网络存储系统

如网盘、FTP 等为用户提供网络存储空间, 其特点为访问量小、实时性不高,要存储的绝大多数为文档、图片、软件等非结构化数据,对存储的主要需求是便于扩展。

(3)业务系统

如:教务管理系统、资产管理系统和一卡通系统、迎新系统等,其范围涵盖了学校各部门的主要业务。与站不同,业务系统的数据主要存放在数据库中, 很少生成html 等格式的静态网页,所以,业务系统对存储的压力非常小。

(4)多媒体资源

如:精品课程、声像教材、视频监控存储等,其特点为单一文件大、资源总量大、增长速度快。对存储的主要需求是具有较好的Throughout(传输带宽)性能并易于扩展。

(5)数据库系统

如SQL Server、Oracle 以及MySQL 等, 存储的是结构化数据,其特点为数据量相对不大、冗余度低、共享性高、独立性强、数据读写频率高、并发请求数量大,对存储的主要需求是良好的IOPS 性能。

2 存储现状及问题

在以往,由于存储系统的建设往往是业务系统建设的附属内容,因此,在学校信息化建设的不同时期、不同单位、不同项目中建设的存储系统基本上是分别建设,而且很多采用了异构技术及设备,目前的主要存储技术有以下3 种:

(1)网络连接存储(NAS)

NAS(Network Attached Storage)使用以太网作为存储的基础,利用网络文件协议(NFS,CIFS) 实现对存储设备中的文件级存储。结构简单,配置管理方便,可实现跨平台的数据共享,但是NAS 架构下,数据存储和正常的网络业务同时使用网络带宽,因此其Throughout 和IOPS 性能较差,难以承载关键应用。

(2)基于光纤通道的存储区域网络(FC-SAN)

SAN(Storage Area Network)是一个独立的存储网络,实现了直接对物理硬件的块级存储访问,存储数据流不占用业务网络带宽。基于光纤通道的FC-SAN 传输带宽高,性能稳定可靠,但是造价高,维护及配置复杂,管理成本高。

(3)基于IP 协议的存储网络(IP-SAN)

IP-SAN 是在FA-SAN 基础上发展起来的一种存储技术,它采用iSCSI 协议,利用以太网组建相对廉价的SAN,部署简单,管理方便,但其效率、性能和安全性均不如FC-SAN。

NAS、FC-SAN 和IP-SAN 各有所长,但是它们有一个共同的不足,即这些存储模式中的每一个业务系统都有独立的磁盘使用空间和预留空间,其他业务系统无法利用其预留空间,形成了一个个的“存储孤岛”,必然会造成存储资源的浪费;同时,这些存储系统彼此独立,也增加了管理和维护的难度。

3 云存储结构设计

云存储是在云计算(cloud computing)概念上延伸和发展出来的新技术,它通过集群应用、分布式文件系统等,使网络中的异构存储设备协同工作, 共同对外提供数据存储和业务访问功能,实现了从提供存储设备向提供存储服务的根本性变革。

数字校园云存储结构模型共分4 层,分别承担物理存储设备管理、提供存储服务等功能。

(1)存储层

云存储设备可以是FC-SAN,也可以是IP-SAN 或NAS。通过统一的存储设备管理系统实现对不同物理存储设备的逻辑化和虚拟化管理、多链路冗余管理,以及硬件设备的状态监控和故障维护。

(2)基础管理层

基础管理层是云存储的核心部分。该层通过集群存储、分布式存储和网格存储等技术,实现众多存储设备之间的协同工作,对外提供统一的存储访问服务, 而多个存储设备的并发处理则能够显著提高云存储系统的.IOPS 和Throughout 性能。

(3)应用接口层

应用接口层是由众多的第三方软硬件厂商提供的插件层。可以利用应用接口快速开发各类数字校园业务系统, 如在云存储基础上的视频监控应用、视频点播应用、网络存储的硬盘、远程数据备份应用等。

(4)访问层

任何一个授权用户都可以按照标准的公共应用接口,在任何地方访问云存储平台,享受云存储服务。

传统存储NAS / SAN 目前仍是数字校园存储领域的主流,但其自身存在难以解决的缺陷。云存储是行业的最新发展,具有传统存储所不具备的诸多优势,包括海量的存储能力,快速的响应能力和数据传输能力,安全、灵活的存储扩容能力,统一、方便的集中管理方式,相对低廉的总体拥有成本,能够很好地满足数字校园各类应用的存储需求。

4 结束语

本文通过对数字校园存储需求和现有存储系统进行分析,提出了建立基于云存储技术的数字校园的高效、可靠、安全、跨平台的存储架构,以满足数字校园中迅猛增长、类型复杂、需求各异的个人及单位数据存储需要。同时,云存储的利用还将为学校进一步挖掘大数据价值,在教学、科研、管理方面进行科学决策提供有力支撑。

篇6:含有数字的abca式成语

含有数字的abca式成语有以下几个:

日复一日 日慎一日 年复一年

成语解释及出处如下

日复一日

成语解释:复:再,又。过了一天又一天。比喻日子久,时间长。也形容光阴白白地过去。

成语出处:南朝・宋・范晔《后汉书・光武帝纪下》:“天下重器,常恐不任,日复一日,安敢远期十岁乎?”

日慎一日

成语解释:一天比一天谨慎。形容做事十分小心。

成语出处:《韩非子・初见秦》:“战战栗栗,日慎一日。”

日甚一日

成语解释:一天比一天厉害。

成语出处:《新唐书・独孤及传》:“陛下岂迟疑于改作,逡巡于旧贯,使大议有所壅,而率土之患日甚一日?”

年复一年

成语解释:一年又一年。

成语出处:清・李汝珍《镜花缘》第二回:“每逢闲暇,无非敲枰相聚。日复一日,年复一年,也不知人间岁月几何。”

篇7:数字图书馆中大数据存储的应用研究论文

图书馆、阅览室的数据存储系统与其他行业的存储系统有较大不同,主要表现在:①数据量庞大。一座大型图书馆每年的数据增量可达10TB以上;②存储周期长。图书馆数据需要较长的存储时间,甚至可达50年以上;③数据类型多样。现代图书具有影像、图像、文字、声音等数据,均需要存储;④高度的可靠性和安全性要求。作为一所信息化程度较高的图书馆,为了构建一个满足业务需要的高效数据存储系统,可以利用数据压缩、重复数据删除、自动精简配置、自动分层存储等现代数据存储技术,对大数据进行高效的存储和管理。

一、数字图书馆大数据存储容量不足的问题

现代图书馆是一个十分复杂的机构,完备的图书馆除了具有对借阅人员信息、图书还借与出人信息、图书设备信息等硬数据进行管理外,数据量最大最复杂的当属对图书资料本身的软数据管理以及现代电子图书资料的储存与管理,特别是大型图书馆或高校图书馆,门类齐全、借阅量大、内容及设备多样,更使得它所产生的数据结构复杂且数据增量大。

图书馆的数据量随时间线性增长,随着各种类型的数字化图书及设备越来越多,信息化程度的不断加强,对图书及读者管理规范程度的不断提高,以及读者对资源要求的不断加深,致使数据容量加速增长。

当前大型图书馆每年的数据增量大约为20~30TB,如此浩大的数据量,对于一个拥有100TB存储容量的图书馆一也只能满足3一5年的`数据存储需要,因此需要采取有效的应对措施予以解决。

日前,许多高校图书馆的存储设备容量利用率不到50%,大有潜力可挖。在图书馆实际管理工作中,在缺乏技术的情况下,经常采取整理碎片的技术来提高存储空间利用率和数据查询效率,这对于一般性的小容量操作是可行的,但对于大型数据系统其耗费的时间是难以估计的。况且,碎片的整理并不能有效消除分配卷中未使用的空间,达不到精简配置的目的。

二、数字图书馆大数据存储容量不足的应对

措施日前许多图书馆采取的办法是由被购买了电子图书的商家作数据备份,这显然不是最有效的数据存储机制。为了大幅度提高数据存储效率,最有效的办法是采用数据压缩技术和重复数据删除技术。

1、利用压缩技术提高空间利用率

对于书籍等图书资料文件,其文件内和文件间存在大量的相似性关系,Delta压缩技术则可以对文件内和文件间的数据进行比较,删除文件内和文件间的冗余数据,达到数据压缩的日的,相似程度越高,压缩比越小。

2、利用消重技术提高空间利用率

图书馆数据在存储过程中往往有大量的备份数据,数据经过多次备份后,产生较多的数据重复,重复数据删除技术在备份过程中能够较好地消除重复数据,进而节约空间。对于重复数据备份,可以分为时间数据消重和空间数据消重。对于电子书籍等产生的数据一般属于自然数据,其主要特点是,数据的变化率较低、完备的数据备份、数据长期保存、数据内容可以感知等,因此,适合采用时间数据消重。因此,就本校图书馆的数据整理,大约每三个月进行一次。

图书馆数据量庞大,仅仅一所5000人规模学校的中型图书馆,其电子图书数据量就可达到15TB以上。因此,不能简单采用与中小备份类似的解决方案,由于存在大量的图形文件及影像文件等,其海量数据备份是一个非常耗时的过程,在热备份情况下,可能需要花费近一个月时间。最佳实践做法是,采用备份设施来拷贝数据并同时保证应用程序仍然可以让客户端使用。重要数据的备份可以使用有冗余级别配置的主机或硬盘RAID。两个独立硬件控制的RAID阵列的软件镜像可以用来备份其关键数据。这种技术可以保证当某个磁盘或阵列发生故障时整个系统仍然可以使用,任何网络组件的故障,如网卡、视频设备、IDE控制器、电源等可以容易地替换而不影响运行。最经济且非常有效的数据备份方案可以采取冗余技术RAID4,即若干个数据盘带一个冗余盘,在这些盘中的相应块内,存储的相应位的1的个数必须是偶数个。当某一个数据盘发生故障而更换了新盘后,只要按照偶数个1的原则就可以将损坏了的数据恢复到新盘中。

在实际操作中,可以有多种备份方案,通常采用停机备份:正常关闭待操作数据,进行数据的冷备份。备份所有数据文件、控制文件、日志文件和参数文件,把冷备份拷贝到新存储设备上,然后新建一个同名实例,最后再把备份数据文件重新打开即可。

3、提高存储空间的利用率

对于某项应用,传统空间分配方案采用完全供给,以确保该应用拥有足够的增长空间,这势必造成大量的存储空间闲置,在空间浪费的同时也造成了能源损失。采用自动精简配置是一种较新的存储空间管理技术。利用自动精简配置技术,能够帮助用户在不降低性能的情况下,大幅度提高存储空间利用效率,能使用户实现接近100%的存储空间利用率,因为数据需要多少空间系统则按需要进行分配,基本不产生多余的空间。自动精简配置技术的一个明显的优势在于可自动扩展分配卷,无须手动扩展,而且当需求变化时,无需更改存储容量设置;通过虚拟化技术集成存储,减少超量配置,降低总功耗。这也是解决机房耗能问题的很有效的方法。

三、总结

总的来说,对于数字图书馆大数据的存储和管理都十分关键,有效地存储和管理大数据是现代图书馆信息化管理的必要基础,良好的数据管理技术能够为图书馆管理工作的顺利开展提供保障。所以,加强大数据存储工作的管理,是未来数字图书馆发展的重要保证。

参考文献

[1]彭磊.建立SAN(存储局域网)——高校图书馆数据存

篇8:由uClinux与MC68VZ328构成数字存储示波器

由uClinux与MC68VZ328构成数字存储示波器

摘要:介绍嵌入式μClinux操作系统;在该操作系统上使用Motorola MC68VZ328 CPU、FIFO存储器,设计实现一种数字存储示波器;在软件实现上,利用μUlinux的多任务特性。系统最大采样频率为40MHz,具有LCD显示和触摸屏界面。

关键词:嵌入式系统 数字存储示波器 FIFO 多任务

数字存储示波器是一种具有数据存储、预触发、波形存储、便于与PC机通信等特点和优点的便携式智能仪器,广泛应用于机械故障检查、野外作业、工业现场等。本文介绍的便携式数字存储示波器构建于嵌入式μClinux操作系统平台之上,采用Motorola公司的龙珠系列MC68VZ328(以下简称VZ328)芯片作为处理器,采样频率与放大幅度可通过触摸屏调节;系统成本低、操作简单,可实现采集、存储和分析功能,具有实际应用前景。

(本网网收集整理)

1 嵌入式系统简介

1.1 嵌入式μClinux系统

嵌入式系统是以应用为中心,以计算机为基础,软硬件可裁减,适用于系统对功能、可靠性、成本、功耗严格要求的专用计算机系统。嵌入式Linux(Embedded Linux)是指对Linux经过小型化裁减后,能够固化在容量只有几百K字节存储器芯片或单片机中,应用于特定嵌入式场合的专用Linux操作系统。嵌入式Linux的开发和研究是目前操作系统领域的一个热点。

本文介绍的系统采用一种优秀的嵌入式操作系统――μClinux。它主要面对non-MMU的处理器,其主要特征为[1]:

①是一个多任务的嵌入式操作系统;

②内核小,只有512K左右;

③同Linux系统的API保持一致;

④继承了Linux系统成熟的网络协议栈;

⑤支持一些主要的文件系统,如:FAT、EXT2、ROMFS、JFFS。

1.2 处理器简介

图2 FIFO工作时序

VZ328是Motorola公司MC68328 CPU家庭龙珠系列中的第一款。VZ328基于Motorola FLX68K核,内部还集成了控制逻辑和SDRAM、LCD、SPI、UART、定时器/PWM和多达76位的通用I/O(GPIO)。运行在33MHz时,VZ328处理能力为5.4MIPS。该处理器主要针对外部设备较少的手持设备,工作电压为3.3V。

2 系统构成

2.1 系统组成

系统组成框图如图1所示。

图1中,ADC采用的是Philips公司的8位高速并行A/D,最高采样频率为40Msps。采用的是IDT公司1024×9位先进先出FIFO存储器。由于该款FIFO的最高存取速度为35ns,为了保证系统40Msps的采样频率,我们通过使用双FIFO与A/D相连接,A/D输出的数据轮流存入FIFO A和FIFO B中来保证整个系统的性能。采样信号与FIFO存储器读和写的工作时序如图2所示。VZ328与采集卡之间的接口详见2.2节。

2.2 系统接口设计

系统使用了VZ328的I/O端口读取数据并发出控制信号。具体方案如图3所示。

系统利用J口实现数据的输入输出,利用D口和G口来进行控制。J口在输入数据进要求该口的方向寄存器PJDIR置为0,在输出数据时要求PJDIR置为1。采集的信号经过A/D变换后首先进入FIFO存储器,当从FIFO中每读出一个数据后需要再向其发送一个读数脉冲信号,这样才能保证正确读出下一个单元内存储的数据。该读数脉冲由G口的第四位PG4给出。数据从FIFO存储器中被读出后经过锁存器进入端口J的数据寄存器PJDATA中,锁存信号由D口的第四位PD4给出。当CPU读周期到来时,数据由端口被读入内存。采样频率控制信号由J口的J5、J6、J7三位输出,数据采集复位信号RESET由J口的J0位输出,两者的锁存信号均由D口的PD5给出。类似地,幅值控制信号由J口的J0、J1、J2三位输出,锁存信号由D口的'PD7给出。此外,每当数据采满1K时,FIFO存储器会产生一个中断信号INT。该信号由D口的PD6输入。

2.3 系统软件结构

基于嵌入式Linux的数字示波器系统主要分为数据采集和存储模块、波形显示和刷新模块以及触摸屏控制模块三个部分。系统软件由Linux下的C语言编程实现。

(1)数据采集和存储模块

采集存储模块流程如图4所示。

系统首先向采集卡发送所要求的频率和幅值信号,然后发出复位信号RESET,采集卡开始采集数据。采集到的数据经过FIFO存储器,由J口读入内存并存入指定数据缓冲区之中。在存储过程中,采用了双缓冲区机制,数据按1K大小分块,相邻的两块数据交替存放在内存的不同区域中。在每读入1K个数据之后,内存中都存在连续的2K个采样数据,这样有助于以后对数据的处理和显示。

(2)波形显示和刷新模块

本系统中使用一块大小为240×320像素的黑白液晶显示屏。VZ328为LCD的控制提供了良好的支持,其实现主要通过LCD控制器完成。

存放在内存中的数据经过坐标变换之后就可以在LCD上进行显示了。在显示之前,因为LCD的坐标系与显示波形时所用的坐标系y轴方向相反,且需要将波形显示在屏幕的特定区域内,所以要对数据进行归一化处理。从端口读入数据的范围为0~0XFF,0点对应于LCD上y轴坐标的190,0XFF对应于LCD上y轴坐标的50,则0X7F对应于LCD上坐标为120的点,即屏幕显示的零点。相应的转化公式为

Y=120-(DATA-0X7F)×70/0X7F

其中DATA为从端口读入的数据;

Y是DATA在LCD上显示的y坐标。

LCD一屏可以显示300个数据点,点与点之间用矢量法直线相连。

(3)触摸屏控制模块

触摸屏是附着在LCD表面的一层透明薄膜,它将压力转换成模拟电信号,模拟信号再经过A/D转换被采样。触摸屏的工作流程如图5所示。

触摸屏通过中断方式完成其功能。从执行流程上来说,首先在TouchPanel_init()中完成两件事:注册驱动程序和注册中断。

对于触摸屏设备,主设备号为58,设备名为“ts7843”,驱动程序子函数集为TouchPanel_fops。TouchPanel_fops中指定了read、select、open、release

四个操作子函数的地址依次为

ReadTouchPanel、TouchPanelSelect、OpenTouchPanel和CloseTouchPanel。

当用户进程调用open()打开/dev/ts7843时,内核调用OpenTouchPanel();用户进程调用read()读该设备时,内核调用ReadTouchPanel()。request_irq()注册中断处理,中断为TOUCHPANEL_IRQ_UNM,中断处理程序为TouchPanelInterrupt(),说明为“TouchPanel”。

当触摸屏有数据来到时,中断被触发,调用中断处理程序,准备处理数据。

在本系统中,触摸屏主要用于改变采样的频率和幅值放大倍数。在LCD的上方有四个长方形区域,分别对应着幅值增加、幅值减小、频率增加和频率减小。幅值和频率的选定值存放在指定内存单元中,在触摸屏检测到触摸点的坐标在相应区域中后,就会根据程序预先设定好的顺序和数值为增加或减少幅值或频率。

2.4 μClinux多任务系统与共享内存管理

在传统的单片机系统中,软件往往是个控制环,让多个功能模块按顺序执行。在一个功能较多的系统中,为了保证系统的各项性能,程序会变得越来越复杂和庞大。由于μClinux是一个多任务的嵌入式操作系统,内核允许将一项工作划分成几个相互独立的任务,应用程序的设计得到了简化;更重要的是缩小了整个系统的响应时间,提高了系统性能。数字存储示波器的设计需要进行数据采集。对于这样的系统来说,应尽可能地少丢失数据采样点。在μClinux中可同时运行多个任务,且前台任务比后台任务具有较高的优先级,因此,合理的方案是将采集部分和显示部分安排在前台,而将触摸屏控制部分放在后台运行。这样可以保证整个系统有效地完成各项功能。

数字示波器在采样和显示过程中,要求可以随时改变采样频率和幅值,所以在前后台任务之间需要进行同步和通信。任务之间的通信是通过共享指

定的物理内存单元来实现,不同任务之间对共享内存单元的访问是互斥的。ΜClinux的设计针对没有MMU的处理器,不能使用虚拟内存管理技术。ΜClinux系统对于内存的访问是直接的,它对地址的访问不需要经过MMU,而是直接送到地址线上输出,所有程序中访问的址都是实际的物理地址,操作系统对内存空间没保护。当触摸屏检测到有改变幅值或频率的信号发生时,就去修改指定单元中存储的数据,这样的内存单元对于两个任务来说属于临界资源。在触摸屏修改内存期间,需要禁止其它程序对该内存进行任何操作。同样,采集程序每次在发送幅值和频率信号之前,要对该内存单元进行读操作。若在此时有触摸屏信号对内存提出写操作要求,程序就应该进行等待,直到采集部分的读操作执行完毕,释放内存的访问权。

3 结论及展望

经实践证明,基于嵌入式Linux的40MHz数字存储示波器的设计,是具有一定可用性及可靠性的。在目前已有功能的基础上,我们还将开发频谱分析等更多的功能。整个系统设计体现了嵌入式Linux系统适应性强、体积小、成本低、开放源代码、开发使用容易等特点。由于使用了μClinux,系统的控制逻辑结构清晰,与普通的单片机系统相比,在对功能的进一步扩展、移植及接入网络等方面都有着极大的优势。

存储虚拟化技术

网络存储技术论文

智能网络存储方案

浅论广播电视大学图书馆合作式数字参考咨询研究论文

数字诗

数字对联

数字教材

数字脑筋急转弯

数字英才网

数字数据类型

《数字存储式自动应答录音系统(共8篇).doc》
将本文的Word文档下载到电脑,方便收藏和打印
推荐度:
点击下载文档

文档为doc格式

点击下载本文文档