HI,欢迎来到起点商标网!
24小时服务QQ:2880605093

确定拾音质量的方法及装置与流程

2021-01-28 13:01:50|309|起点商标网
确定拾音质量的方法及装置与流程

本申请涉及语音处理技术领域,尤其涉及一种确定拾音质量的方法及装置。



背景技术:

麦克风拾音质量在用户会话场景,尤其在远程会议通话场景中具有十分重要的意义。用户在利用麦克风进行远程通话的过程中,语音的清晰度、噪声的干扰度等均影响着通话质量以及用户的体验。因此,获取到麦克风的拾音质量对于类似于这样的场景具有比较重要的作用。只有在获取到麦克风的拾音质量之后,相关工作人员才可以根据拾音质量做出一些调整,如调整麦克风设备、更换麦克风设备、对房间产生的混响进行声学处理等等。

目前,相关技术中麦克风拾音质量往往是通过人耳获取,用户在使用过程中发现通话质量较差时,可以向工作人员反馈。工作人员抵达现场后,通过人耳聆听现场的通话或者录音,然后根据经验对现场的设备进行调整。由此可见,相关技术中获取麦克风拾音质量的方式比较低效,且耗费较多的时间精力。

因此,现有技术中亟需一种高效的且比较便捷的确定拾音质量的方法。



技术实现要素:

为克服相关技术中存在的问题,本申请提供确定拾音质量的方法及装置。

本申请实施例提供的确定拾音质量的方法及装置具体是这样实现的:

一种确定拾音质量的方法,所述方法包括:

利用麦克风或麦克风阵列获取语音信号;

确定所述麦克风或麦克风阵列获取的语音信号在设定频率范围内的能量;

至少根据所述能量确定所述麦克风或麦克风阵列的拾音质量。

一种确定拾音质量的装置,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现:

利用麦克风或麦克风阵列获取语音信号;

确定所述麦克风或麦克风阵列获取的语音信号在设定频率范围内的能量;

至少根据所述能量确定所述麦克风或麦克风阵列的拾音质量。

一种非临时性计算机可读存储介质,当所述存储介质中的指令由处理器执行时,使得处理器能够执行所述确定拾音质量的方法。

本申请提供的确定拾音质量的方法及装置,可以利用麦克风或麦克风阵列获取语音信号,并确定所述语音信号在设定频率范围内的能量。然后,还可以根据所述能量确定所述麦克风或麦克风阵列的拾音质量。通过本申请各个实施例提供的确定拾音质量的方式,能够实现麦克风设备拾音质量的自动获取,实现从人工获取到机器获取的转变。另外,基于语音信号的能量确定麦克风设备的拾音质量,可以获取到更加准确的确定结果。对于使用到麦克风设备的场景,典型的如会议场景,可以实时获取到麦克风设备的拾音质量,增强麦克风设备的使用功能。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。

图1是根据一示例性实施例示出的一种确定拾音质量的方法流程示意图。

图2是根据一示例性实施例示出的应用场景示意图。

图3是根据一示例性实施例示出的应用场景示意图。

图4是根据一示例性实施例示出的应用场景示意图。

图5是根据一示例性实施例示出的一种确定拾音质量的装置的框图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

为了方便本领域技术人员理解本申请实施例提供的技术方案,下面先对技术方案实现的应用环境。

在杭州某公司的一间会议室内,员工a正在通过会议室内的麦克风设备与北京的客户b进行电话会议。麦克风设备的通话质量对于电话会议的质量具有十分重要的影响。在使用该会议室内的麦克风设备的过程中,员工a发现房间内的混响太严重,客户b听到的语音有回声。因此,员工a求助负责处理会议室设备的工作人员,但是该公司的会议室数量太多,工作人员并不能及时赶到该会议室并快速完成对麦克风设备的调整。另外,工作人员赶到现场之后,需要听一段现场对话之后,才可以根据经验做出响应的措施。由此可见,这种方式的处理效率较低,严重影响到用户的使用体验,对于该公司来说,甚至影响到公司内的重要事件的进程。

基于类似于上文描述的技术需求,本申请提供的确定拾音质量的方法,可以利用麦克风设备获取到会议室等现场的语音信号,并根据所述语音信号在设定频率范围内的能量,确定麦克风设备的拾音质量。这样,可以实现麦克风设备拾音质量的自动获取,不需要工作人员去现场聆听,提高处理效率。

下面结合附图对本申请所述的确定拾音质量的方法进行详细的说明。图1是本申请提供的确定拾音质量的方法的一种实施例的方法流程示意图。虽然本申请提供了如下述实施例或附图所示的方法操作步骤,但基于常规或者无需创造性的劳动在所述方法中可以包括更多或者更少的操作步骤。在逻辑性上不存在必要因果关系的步骤中,这些步骤的执行顺序不限于本申请实施例提供的执行顺序。所述方法在实际中的确定拾音质量的过程中或者装置执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。

具体的,本申请提供的确定拾音质量方法的一种实施例如图1所示,所述方法可以包括:

s101:利用麦克风或麦克风阵列获取语音信号。

本申请实施例中,可以利用麦克风或麦克风阵列获取语音信号。所述麦克风可以包括指向型麦克风,所述指向型麦克风对于一个方向上的声音反应比较灵敏,对于相反方向或者其他方向的声音反应比较弱。所述指向型麦克风可以包括心脏型指向型麦克风(cardioidmicrophone)、次心脏型指向型麦克风(subcardioidmicrophone)、过心脏型指向型麦克风(supercardioidmicrophone)、超心脏型指向型麦克风(hypercardioidmicrophone)、偶极型指向型麦克风(dipolemicrophone)等等。在本申请实施例中,可以将多个指向型麦克风分别设置为指向不同的方向,这样,可以比较全面地从多个方向上获取语音信号。当然,还可以利用由多个指向型麦克风组合而成的麦克风阵列获取语音信号,如常见的“八爪鱼”结构麦克风阵列。

在本申请的一个实施例中,可以至少一个麦克风阵列同时获取语音信号,所述麦克风阵列由多个指向型麦克风两两接近设置组成。将多个指向型麦克风之间的距离设置地尽可能地小,可以尽可能地减少语音信号到达不同的麦克风之间的时间差。另外,在使用方面,这种两两接近的设置方式可以使得“同时”组合多个麦克风的音频信号在物理结构上首先成为可能。在一个实施例中是,所述多个指向型麦克风的数量为三个。

图2是本申请示例性地提供了一种麦克风阵列的模块结构示意图,图2中示出了三个指向型麦克风31、32和33,它们整体上构成三重对称设置,三个指向型麦克风的轴线311、321、331(也即是垂直于其拾音平面中心的线)位于同一平面内,并且两两构成(2π)/3夹角。并且,指向型麦克风31、32、33的端部之间的距离范围d(如图中所示出的31和32之间)为0-5mm。作为优选,可以选择d=2mm。

图3是本申请示例性地提供了另一种麦克风阵列的模块结构示意图,图3示出了三个指向型麦克风41、42和43,图3示出了“自上而下”的视角,三个指向型麦克风自上而下依次为41、42和43。指向型麦克风41、42和43的轴线(垂直于其拾音平面中心的线)平行于图3的平面。而如果将指向型麦克风41,42,43投影在图3的平面内,它们之间也构成三重对称设置,三个指向型麦克风的轴线411、421和431在图3的投影平面内两两构成(2π)/3夹角。

图4是本申请示例性地提供了另一种麦克风阵列的模块结构示意图,图4示出了示出了三个指向型麦克风51、52和53。这三个指向型麦克风之间形成三重对称设置。三个指向型麦克风的轴线511、521、531(垂直于其拾音平面中心的线)之间互相平行,并且轴线511、521、531在与它们垂直的平面内的三个投影点构成等边三角形t。并且,指向型麦克风51、52、53的端部之间的距离范围d(如图中所示出的51和52之间)为0-5mm。作为优选,可以选择d=2mm。

在本申请实施例中,对于由三个指向型麦克风组成的麦克风阵列,可以通过线性组合三个指向型麦克风的信号来构成“虚拟麦克风(virtualmicrophone)”。线性组合的系数由矢量μ表示:

μ=inv(a)*b,

其中,b=[001]t,θm表示波束角度(也即是希望所获得的音频信号的方向),而θn表示空角度(也即是不希望获得的音频信号的方向)。

在一个示例中,若希望线性组合三个麦克风的信号以构成一个虚拟的超心脏型指向型麦克风,选择θm和θn的关系为:

θn=θm+110*π/180

在另一个示例中,若希望线性组合三个麦克风的信号以构成一个虚拟的心脏型指向型麦克风,可以选择θm和θn的关系为:

θn=θm+π

通过上述算法以及选择合适的θm和θn的组合,本申请实施例可以实现任意类型的虚拟一阶差分麦克风,包括心脏型指向型麦克风(cardioidmicrophone)、次心脏型指向型麦克风(subcardioidmicrophone)、过心脏型指向型麦克风(supercardioidmicrophone)、超心脏型指向型麦克风(hypercardioidmicrophone)、偶极型指向型麦克风(dipolemicrophone)等。

基于此,在本申请的一个实施例中,所述麦克风阵列还包括至少一个虚拟麦克风,所述至少一个虚拟麦克风分别对应于一种波束角度和空角度的组合。在一个示例中,可以在两两指向型麦克风之间设置一个虚拟麦克风,这样,在使用效果上,该麦克风阵列可以具有六个不同方向上的指向型麦克风,不仅能够实现从多个不同的方向进行拾音,还可以比较准确地评价所述麦克风阵列的拾音质量。

需要说明的是,本申请实施例中用于获取所述语音信号的可以是至少一个麦克风,也可以是至少一个麦克风阵列,当然,也可以是至少一个麦克风和至少一个麦克风阵列的组合,本申请在此不做限制。

在本申请的一个实施例中,可以从音频信号中获取所述语音信号。通常地,麦克风或麦克风阵列获取的是音频信号,所述音频信号中可以包括语音信号,也可以包括非语音信号,如噪声信号等。在实际的应用场景中,用户在会议场景中利用麦克风或麦克风阵列进行通话时,往往是默认打开扬声器功能的,这样,麦克风或麦克风阵列在获取到的音频信号包括近端信号和远端信号。其中,所述近端信号为位于会议室中现场用户发出的信号,所述远端信号为通话另一方用户所发出的信号。在一个示例中,杭州会议室内的用户a和北京的用户b进行会议通话时,对于杭州会议室内的麦克风来说,杭州会议室内所发出的音频信号为近端信号,北京会议室内所发出的音频信号为远端信号。反之,对于北京会议室内的麦克风来说,杭州会议室内所发出的音频信号为远端信号,北京会议室内所发出的音频信号为近端信号。由于远端信号是经过信道从远端传输过来的信号,因此,容易发生失真等问题,而这些问题不是用于考量麦克风或者麦克风阵列拾音质量的指标,因此,利用近端信号确定麦克风或麦克风阵列的拾音质量更加准确。基于此,在本申请的一个实施例中,可以在获取到麦克风或麦克风阵列录制的音频信号之后,判断所述音频信号是否为近端信号。在确定所述音频信号为近端信号的情况下,判断所述音频信号是否为语音信号。在确定所述音频信号为语音信号的情况下,确定所述麦克风或麦克风阵列的拾音质量。

需要说明的是,在上述实施例中,还可以首先判断所述音频信号是否为语音信号,再判断所述语音信号是否为近端信号,对于这两个判断步骤的执行顺序,本申请在此不做限制。

在实际应用场景中,麦克风或麦克风阵列获取的语音信号可以包括单人语音信号或者多人语音信号,且单人语音信号为主要的语音信号。基于此,在本申请实施例中,可以在确定所述音频信号为语音信号的请款下,判断所述语音信号是否为单人语音信号。在确定所述语音信号为单人语音信号的情况下,确定所述麦克风或麦克风阵列的拾音质量。

s103:确定所述麦克风或麦克风阵列获取的语音信号在设定频率范围内的能量。

在本申请的一个实施例中,在获取到语音信号之后,可以确定所述麦克风或麦克风阵列获取的语音信号在设定频率范围内的能量。在确定能量的过程中,可以将所述语音信号从时域转换成频域,例如使用傅里叶变换、短时傅里叶变换等等。在计算能量的过程中遵循parseval定理,即语音信号在时域内的能量和在频域内的能量相等。在将所述语音信号从时域转换为频域之后,在频域中的各个频点上,可以对应于一个能量值。本申请实施例中的设定频率范围可以包括人耳比较敏感的频率范围,如3khz到6khz,所述设定频率范围还可以包括人耳可以听到的所有声音的频率范围20hz到20khz,本申请对于所述设定频率范围的设置不做限制。

在本申请的一个实施例中,还可以对所述设定频率范围进行采样,并获取各个采样频率点上的能量值。具体地,可以在设定频率范围内选取多个频率点,并计算所述麦克风或麦克风阵列获取的语音信号分别在所述多个频率点上的能量值。在一个实例中,可以在3khz到6khz的频率范围内每隔50hz采样一次,共计算60个采样频率点上的能量值。当然,在其他实施例中,所述频率点的选取不限于上述方式,如还可以进行非规律性地采样,本申请在此不做限制。

s105:至少根据所述能量确定所述麦克风或麦克风阵列的拾音质量。

在本申请的一个实施例中,由于在各个频点上对应于一个能量值,因此,可以计算所述语音信号在所述设定频率范围的能量和。在计算所述能量和的过程中,若语音信号的能量随频率连续变化,则可以利用求积分的方式计算得到能量和;若语音信号的能量随频率离散变化,则可以利用求和的方式计算得到能量和。在计算得到所述语音信号的能量和之后,可以根据所述能量和确定所述麦克风或麦克风阵列的拾音质量。在一个实施例中,可以设置多个设定能量范围,且各个设定能量范围可以对应于一个设定拾音质量等级。在一个示例中,能量范围(40,60)对应的拾音质量等级为优,能量范围(30,40)对应的拾音质量等级为良,能量范围小于30对应的拾音质量等级为差。通过以上方式,可以比较准确地确定出所述麦克风或麦克风阵列的拾音质量。

在本申请的一个实施例中,对于上述能够设置虚拟麦克风的麦克风阵列,可以利用投票的方式确定所述麦克风阵列的拾音质量。具体地,可以在设定频率范围内选取多个频率点,并分别计算所述多个指向型麦克风和所述至少一个虚拟麦克风获取的语音信号分别在所述多个频率点上的能量值。在确定所述麦克风阵列的拾音质量的过程中,可以确定分别在所述多个频率点上能量值最大的指向型麦克风或者虚拟麦克风,并给所述指向型麦克风或者虚拟麦克风投票。然后,可以统计所述多个指向型麦克风和所述至少一个虚拟麦克风中所得的最高投票数和最低投票数,并将所述最高投票数和所述最低投票数的差值作为所述麦克风阵列的拾音质量。

在一个示例中,对于由三个指向型麦克风mic0、mic1、mic2组成的麦克风阵列1,包括三个虚拟麦克风mic3、mic4、mic5。由于这6个麦克风的指向不相同,因此,接收到的语音信号的能量也是不相同的,基于此,在本申请实施例中,可以在各个频率点(3khzto6khz的范围内每隔50hz选一个频率点,共60个频率点)上确定出语音信号能量值最高的指向型麦克风或者虚拟麦克风,并给该指向型麦克风或者虚拟麦克风进行投票。例如,在一段语音信号的拾音质量确定过程中,统计得到投票结果为:mic0:(0),mic1:(0),mic2:(60),mic3:(0),mic4:(0),mic5:(0),即指向型麦克风mic2获取了全部的投票。也就是说最高投票数为60,最低投票数为0,两者的差值为60,即麦克风阵列1的拾音质量为60。另外,在同一个房间内,还有与麦克风阵列1具有相同结构的麦克风阵列2和麦克风阵列3,且两者的投票情况为:

麦克风阵列2:mic0:(3),mic1:(36),mic2:(17),mic3:(3),mic4:(1),mic5:(0);

麦克风阵列3:mic0:(4),mic1:(32),mic2:(18),mic3:(4),mic4:(2),mic5:(0);

计算得到,麦克风阵列2的拾音质量为36,麦克风阵列3的拾音质量为32,对比发现,在同一个房间内,麦克风阵列1的拾音质量最好,麦克风阵列3的拾音质量最差。当然,后续还可以设置范围比较大的指标,如拾音质量在50以上的为很高,40~50是较高,30~40是一般,20~30是略差,20以下是差。

需要说明的是,以上计算拾音质量的方式不限于麦克风阵列,也可以是针对多个独立的麦克风,并将最高投票数和最低投票数的差值作为整个房间内麦克风集合的拾音质量,本申请在此不做限制。

在实际的应用场景中,语音信号是实时产生的,因此,在本申请实施例中,可以设定的时间间隔确定麦克风或麦克风阵列的拾音质量。在一些示例中,如可以设置所述时间间隔为5分钟,即在用户通话期间每隔5分钟确定一次拾音质量,也可以设置根据通话的密集程度设置时间间隔,本申请在此不做限制。当然,在每次确定拾音质量的时刻,可以获取该时刻之前的一段语音信号,如五分钟的语音信号、一分钟的语音信号等等。

为了能够进一步提高确定拾音质量的准确程度,可以将一段语音信号划分成多个语音帧,所述语音帧可以为20ms、40ms、50ms等等,然后,可以分别计算所述语音帧在所述设定频率范围内的能量。基于此,在确定所述麦克风或麦克风阵列的拾音质量的过程中,可以分别根据所述多个语音帧的能量确定所述麦克风或麦克风阵列的拾音质量。然后,可以计算所述多个语音帧所对应的拾音质量的均值,并将所述均值作为所述麦克风或麦克风阵列最终的拾音质量。在一个示例中,可以每隔5分钟检测一次麦克风阵列的拾音质量,每次获取30s的音频信号,假设这30s内全部是语音信号,则可以将这30s的语音信号划分成1500个语音帧。然后,可以分别计算这1500个语音帧的拾音质量。最后可以将这1500个拾音质量的均值作为所述麦克风或麦克风阵列的拾音质量。

在本申请的一个实施例中,在确定所述拾音质量不满足设定要求的情况下,发送通知消息。例如,所述拾音质量为略差或者差的情况下,可以发送通知消息给相关工作人员,工作人员可以到现场进行调整。

本申请提供的确定拾音质量的方法,可以利用麦克风或麦克风阵列获取语音信号,并确定所述语音信号在设定频率范围内的能量。然后,还可以根据所述能量确定所述麦克风或麦克风阵列的拾音质量。通过本申请各个实施例提供的确定拾音质量的方式,能够实现麦克风设备拾音质量的自动获取,实现从人工获取到机器获取的转变。另外,基于语音信号的能量确定麦克风设备的拾音质量,可以获取到更加准确的确定结果。对于使用到麦克风设备的场景,典型的如会议场景,可以实时获取到麦克风设备的拾音质量,增强麦克风设备的使用功能。

对应于上述确定拾音质量的方法,如图5所示,本申请还提供一种确定拾音质量的装置,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时可以实现:

利用麦克风或麦克风阵列获取语音信号;

确定所述麦克风或麦克风阵列获取的语音信号在设定频率范围内的能量;

至少根据所述能量确定所述麦克风或麦克风阵列的拾音质量。

可选的,在本申请的一个实施例中,所述处理器在实现步骤利用麦克风或麦克风阵列获取语音信号时包括:

利用至少一个麦克风阵列同时获取语音信号,所述麦克风阵列由多个指向型麦克风两两接近设置组成。

可选的,在本申请的一个实施例中,所述多个指向型麦克风的数量为三个。

可选的,在本申请的一个实施例中,所述麦克风阵列还包括至少一个虚拟麦克风,所述至少一个虚拟麦克风分别对应于一种波束角度和空角度的组合。

可选的,在本申请的一个实施例中,所述处理器在实现步骤至少根据所述能量确定所述麦克风或麦克风阵列的拾音质量时包括:

确定所述能量在设定频率范围内的能量和;

从多个设定能量范围中确定所述能量和所在的目标能量范围;

确定所述目标能量范围所对应的设定拾音质量等级,将所述设定拾音质量等级作为所述麦克风或麦克风阵列的拾音质量。

可选的,在本申请的一个实施例中,所述处理器在实现步骤确定所述麦克风或麦克风阵列获取的语音信号在设定频率范围内的能量时包括:

在设定频率范围内选取多个频率点;

计算所述麦克风或麦克风阵列获取的语音信号分别在所述多个频率点上的能量值。

可选的,在本申请的一个实施例中,所述处理器在实现步骤确定所述麦克风或麦克风阵列获取的语音信号在设定频率范围内的能量时包括:

在设定频率范围内选取多个频率点;

分别计算所述多个指向型麦克风和所述至少一个虚拟麦克风获取的语音信号分别在所述多个频率点上的能量值。

可选的,在本申请的一个实施例中,所述处理器在实现步骤至少根据所述能量确定所述麦克风或麦克风阵列的拾音质量时包括:

确定分别在所述多个频率点上能量值最大的指向型麦克风或者虚拟麦克风,并给所述指向型麦克风或者虚拟麦克风投票;

统计所述多个指向型麦克风和所述至少一个虚拟麦克风中所得的最高投票数和最低投票数;

将所述最高投票数和所述最低投票数的差值作为所述麦克风阵列的拾音质量。

可选的,在本申请的一个实施例中,所述处理器在实现步骤利用麦克风或麦克风阵列获取语音信号时包括:

获取麦克风或麦克风阵列录制的音频信号;

判断所述音频信号是否为近端信号;

在确定所述音频信号为近端信号的情况下,判断所述音频信号是否为语音信号;

在确定所述音频信号为语音信号的情况下,确定所述麦克风或麦克风阵列的拾音质量。

可选的,在本申请的一个实施例中,所述处理器在实现步骤在确定所述音频信号为语音信号的情况下,确定所述麦克风或麦克风阵列的拾音质量时包括:

在确定所述音频信号为语音信号的情况下,判断所述语音信号是否为单人语音信号;

在确定所述语音信号为单人语音信号的情况下,确定所述麦克风或麦克风阵列的拾音质量。

可选的,在本申请的一个实施例中,所述处理器在实现步骤确定所述麦克风或麦克风阵列获取的语音信号在设定频率范围内的能量时包括:

将所述麦克风或麦克风阵列获取的语音信号划分成多个语音帧;

分别计算所述多个语音帧在设定频率范围内的能量。

可选的,在本申请的一个实施例中,所述处理器在实现步骤至少根据所述能量确定所述麦克风或麦克风阵列的拾音质量时包括:

分别根据所述多个语音帧的能量确定所述麦克风或麦克风阵列的拾音质量;

计算所述多个语音帧所对应的拾音质量的均值,并将所述均值作为所述麦克风或麦克风阵列最终的拾音质量。

可选的,在本申请的一个实施例中,所述处理器在实现步骤至少根据所述能量确定所述麦克风或麦克风阵列的拾音质量之后,还包括:

在确定所述拾音质量不满足设定要求的情况下,发送通知消息。

本申请另一方面还提供一种计算机可读存储介质,其上存储有计算机指令,所述指令被执行时实现上述任一实施例所述方法的步骤。

所述计算机可读存储介质可以包括用于存储信息的物理装置,通常是将信息数字化后再以利用电、磁或者光学等方式的媒体加以存储。本实施例所述的计算机可读存储介质有可以包括:利用电能方式存储信息的装置如,各式存储器,如ram、rom等;利用磁能方式存储信息的装置如,硬盘、软盘、磁带、磁芯存储器、磁泡存储器、u盘;利用光学方式存储信息的装置如,cd或dvd。当然,还有其他方式的可读存储介质,例如量子存储器、石墨烯存储器等等。

在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(programmablelogicdevice,pld)(例如现场可编程门阵列(fieldprogrammablegatearray,fpga))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片pld上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logiccompiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(hardwaredescriptionlanguage,hdl),而hdl也并非仅有一种,而是有许多种,如abel(advancedbooleanexpressionlanguage)、ahdl(alterahardwaredescriptionlanguage)、confluence、cupl(cornelluniversityprogramminglanguage)、hdcal、jhdl(javahardwaredescriptionlanguage)、lava、lola、myhdl、palasm、rhdl(rubyhardwaredescriptionlanguage)等,目前最普遍使用的是vhdl(very-high-speedintegratedcircuithardwaredescriptionlanguage)与verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。

控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(applicationspecificintegratedcircuit,asic)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:arc625d、atmelat91sam、microchippic18f26k20以及siliconelabsc8051f320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。

为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

在一个典型的配置中,计算设备包括一个或多个处理器(cpu)、输入/输出接口、网络接口和内存。内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(ram)和/或非易失性内存等形式,如只读存储器(rom)或闪存(flashram)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitorymedia),如调制的数据信号和载波。

还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。

本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。

本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

起点商标作为专业知识产权交易平台,可以帮助大家解决很多问题,如果大家想要了解更多知产交易信息请点击 【在线咨询】或添加微信 【19522093243】与客服一对一沟通,为大家解决相关问题。

此文章来源于网络,如有侵权,请联系删除

tips