【技术实现步骤摘要】
本专利技术涉及一种乐音发生方法与设备,该方法和设备允许用一种具有一个计算装置的通用处理器来形成乐音。本专利技术还涉及一种乐音发生方法,该方法通过在一个可编程计算单元上,例如一个CPU或DSP(数字信号处理器)上,执行一个乐音发生程序来形成一种乐音波形。众所周知,通常的乐音发生设备包括一个MIDI(乐器数字接口);一个性能输入部分,用于从一个键盘或定序器接收性能信息;一个乐音发生器部分,用于形成一种乐音波形;和一个微处理器或中央处理单元(CPU),用于根据输入性能信息控制乐音发生器部分。CPU根据输入性能信息,进行乐音发生器驱动器处理(性能处理),例如把每个乐音分配给一个选择的通道(通道分配),和参数转换;并且把经转换的参数和一个乐音发生指令(音通信号)供给乐音发生器部分分配的通道。乐音发生器部分是由一个电子电路,例如一个LSI(大规模集成电路),来实现的,并且根据所提供的参数形成乐音波形。然而,已知的乐音发生设备是专用于乐音发生用途的,在过去,必须无条件地采用这样一种专用乐音发生设备去发生乐音。为了解决这个问题,已提出一种经改进的乐音发生设备,其中CPU执行一个专门的应用程序,以便根据该应用程序发生乐音。这种乐音发生设备能够用一个通用计算单元来实现,该单元不但可以通过执行乐音发生应用程序来完成乐音发生和其他功能,而且可以通过执行其他应用程序来完成。一种通用计算机,例如个人计算机,能够用作上述乐音发生设备的硬件,它执行一个用于乐音发生操作的乐音发生器程序。这样,可用通用计算机提供一种所谓的“软件乐音发生器”。在在一个有计算单元(CPU)的通用设备上通过 ...
【技术保护点】
一种乐音发生方法包括: 第一步,发出发生指令以发生多个指定的乐音; 第二步,把指定的乐音分配给从多个乐音发生通道中指定的各个乐音发生通道,并且把用于指定乐音的控制数据写入各个指定的乐音发生通道的通道寄存器中以便存储在其中; 第三步,以预定的间隔发出计算开始指令。 第四步,根据所述第三步发出的计算开始指令,为根据所述第三步发出的计算开始指令指定的乐音发生通道依次进行乐音形成计算,以便根据在所述通道的所述通道寄存器中存储的控制数据为指定乐音发生通道中的每一个用算术方法形成用于多个试样的波形数据; 第五步,对诸试样的每一个,混合通过第四步为指定乐音发生通道形成的波形数据,以便形成混合的试样数据;及 第六步,在每个取样周期把用于多个试样的每一个的混合试样数据转换成模拟信号, 其中在所述乐音形成计算中,所述第四步骤,根据从所述通道寄存器一次读出的控制数据为指定乐音发生通道的每一个实现用于多个试样的波形数据的形成,并在波形数据形成之后实现把控制数据写入所述的通道寄存器中。
【技术特征摘要】
JP 1995-5-19 144159/95;JP 1996-1-17 23323/96;JP 191.一种乐音发生方法包括第一步,发出发生指令以发生多个指定的乐音;第二步,把指定的乐音分配给从多个乐音发生通道中指定的各个乐音发生通道,并且把用于指定乐音的控制数据写入各个指定的乐音发生通道的通道寄存器中以便存储在其中;第三步,以预定的间隔发出计算开始指令。第四步,根据所述第三步发出的计算开始指令,为根据所述第三步发出的计算开始指令指定的乐音发生通道依次进行乐音形成计算,以便根据在所述通道的所述通道寄存器中存储的控制数据为指定乐音发生通道中的每一个用算术方法形成用于多个试样的波形数据;第五步,对诸试样的每一个,混合通过第四步为指定乐音发生通道形成的波形数据,以便形成混合的试样数据;及第六步,在每个取样周期把用于多个试样的每一个的混合试样数据转换成模拟信号,其中在所述乐音形成计算中,所述第四步骤,根据从所述通道寄存器一次读出的控制数据为指定乐音发生通道的每一个实现用于多个试样的波形数据的形成,并在波形数据形成之后实现把控制数据写入所述的通道寄存器中。2.根据权利要求1所述的乐音发生方法,进一步包括根据所述第一步为指定乐音的每一个发出的发生指令发出中途计算开始指令的第七步,其中根据该中途计算开始指令,所述第四步形成用于多个试样的波形数据,这些试样对应于从最后形成波形的端点至所述第一步发出发生指令的时间点的部分。3.一种乐音发生方法包括第一步,把指定的乐音分配给从多个乐音发生通道中指定的各个乐音发生通道,并把用于指定乐音的控制数据写入指定乐音发生通道的通道寄存器中以便存储在其中;第二步,以预定间隔发出计算开始指令;第三步,根据所述第二步发出的计算开始指令,依据在所述通道的所述通道寄存器中存储的控制数据为指定的乐音发生通道的每一个用算术方法形成用于多个试样的波形数据;第四步,对多个试样的每一个,混合由所述第三步为指定的乐音发生通道形成的波形数据,以便形成用于多个试样的每一个的混合波形数据;第五步,在每个取样周期把用于多个试样的混合试样数据转换为模拟信号;及第六步,在所述第五步的处理期间利用空闲时间发出发生多个乐音的指令,其中所述第三步进行仅用于发出乐音的通道的波形数据的算术形成。4.根据权利要求3所述的乐音产生方法,它进一步包括第七步,设定预定的期限;和第八步,确定用于所有指定乐音发生通道的计算是否能在预定期限的完成,并且,如果确定了用于所有指定乐音发生通道的计算不能在预定期限内完成,则发出在乐音发生通道的任一个中都应该消音的指令。5.一种乐音发生方法包括第一步,发出发生指令以发生多个指定的乐音;第二步,把指定的乐音分配给从多个乐音发生通道中指定的各个乐音产生通道,并把用于指定通道的控制数据写入各个指定乐音发生通道的通道寄存器中以便存储在其中;第三步,根据在指定乐音发生通道中要发生的乐音的各自重要性,确定用于指定乐音发生通道的计算处理次序;第四步,以预定间隔发出计算开始指令;第五步,响应所述第四步发出的计算开始指令,依据在指定乐音发生通道的通道寄存器中存储的控制数据用算术方法形成用于多个试样的波形数据;第六步,对于多个试样的每一个,混合为诸通道形成的波形数据,以便形成用于多个试样的混合试样数据;及第七步,在每个取样周期把用于多个试样的混合试样数据转换成模拟信号,其中,所述第五步根据所述第三步确定的计算处理次序为形成用于指定乐音发生通道的波形数据进行计算,并且当很可能在预定期限内完不成所述第五步为形成波形数据进行的计算且打断所述第七步转换的模拟信号时,用来形成波形数据的计算在其以计算处理次序在诸通道的一个上正在进行的时刻中止,以便防止打断模拟信号。6.一种用来在计算单元上实现的乐音发生方法,包括一个提供步骤,提供性能信息;一个主步骤,用算术方法形成波形数据;一个中断步骤,当所述提供步骤提供性能信息时,暂时地中断所述主步骤以便进行用来接收提供的性能信息的预定输入操作,并且输入操作一完成,就在所述主步骤中断的点处恢复所述主步骤;及一个乐音发生步骤,根据所述主步骤形成的波形数据,在晚于通过所述中断步骤用算术方法形成波形数据的时刻发生对应的乐音,其中,所述主步骤包括一个性能信息处理步骤以便根据已经经历输入操作的性能信息产生乐音控制数据,和一个乐音发生器处理步骤以便根据乐音控制数据用算术方法形成波形数据。7.一种用来在计算单元上实现的乐音发生方法,包括一个系统步骤,执行一个预定的操作系统;一个波形形成步骤,根据来自在预定操作系统上执行的应用程序的指令,在每个预定周期用算术方法形成用于预定数量试样的波形数据;一个输出步骤,在每个取样循环,输出由所述波形形成步骤用算术方法形成的波形数据的一个试样;及一个控制步骤,根据所述输出步骤的请求,在所述预定周期内在所述系统步骤与波形形成步骤之间进行任务切换。8.一种用来在计算单元上实现的乐音发生方法,包括一个输入步骤,输入性能信息;一个波形形成步骤,根据在预定周期内输入的性能信息,用算术方法形成对应于预定周期的波形数据;一个输出步骤,在每个取样循环,输出对应于预定周期的波形数据的一个试样;一个波形数据发送步骤,为所述输出步骤提供由所述波形形成步骤形成的对应于预定周期的波形数据;及一个请求步骤,探测什么时候已经进行了所述输出步骤的波形数据输出,以便请求从所述波形数据发送步骤再提供波形数据,其中,根据所述请求步骤的请求执行所述波形数据发送步骤并且在所述发送步骤之后执行所述波形形成步骤。9.一种用来在计算单元上实现的乐音发生方法,包括一个输入步骤,输入性能信息;一个波形形成步骤,根据在预定周期内输入的性能信息,用算术方法形成对应于该预定周期的波形数据;一个波形合成步骤,输入对应于预定周期的外部波形数据,并且把外部波形数据与所述波形形成步骤用算术方法形成的波形数据相合成以便形成用于预定周期的合成波形数据;一个波形处理步骤,把信号处理施于用于预定周期的合成波形数据;及一个输出步骤,在每个取样循环,输出合成波形数据的一个试样。10.一种用来在计算单元上实现乐音发生的方法,包括一个输入步骤,输入性能信息;一个波形形成步骤,根据所述输入步骤输入的性能信息,在多个阶段进行计算以便用算术方法形成波形数据;一个输入外部波形数据的步骤;及一个把输入的外部波形数据插入计算阶段的一个中的步骤。11.一种乐音发生设备,包括一个存储器,用来存储乐音发生器处理程序和性能处理程序;供给装置,用来供给性能信息;一个寄存器,用来存储控制信息;计算装置,用来执行乐音发生器处理程序和性能处理程序,所述计算装置通常根据控制信息执行乐音发生器处理程序以形成波形数据,其中当所述-给装置供给性能信息时,所述计算装置暂时中断乐音发生器处理程序的执行,以便执行性能处理程序由此产生对应于供给的性能信息的控制信息并把产生的控制信息存储在所述寄存器中,并且,一完成性能处理程序,就在乐音发生器处理程序中断的点处恢复乐音发生器处理程序;及乐音输出装置,用来根据乐音发生器处理程序形成的波形数据,在计时晚于由所述计算装置形成波形数据时产生对应的乐音。12.一种用来在计算单元上实现的乐音发生方法,包括一个供给步骤,供给性能信息;一个形成步骤,用算术方法形成波形数据;一个中断步骤,当所述供给步骤供给性能信息时,暂时中断所述形成步骤以便执行性能信息的处理,然后,一完成性能信息的处理,就在中断所述形成步骤的点处恢复所述形成步骤;及一个乐音发生步骤,根据所述形成步骤形成的波形数据,在计时晚于由所述形成步骤形成波形数据时发生对应的乐音,其中,所述形成步骤根据所述中断步骤处理的性能信息用算术方法形成波形数据。13.一种用来在计算单元上实现的乐音发生方法,包括一个系统步骤,执行预定的操作系统;一个波形形成步骤,根据来自在预定操作系统上执行的应用程序的指令,在每个预定周期用算术方法形成用于预定数量的试样的波形数据;一个输出步骤,在每个取样循环,输出上述波形形成步骤用算术方法形成的波形数据的一个试样;及控制步骤,根据所述输出步骤的请求,在所述预定周期内在所述系统步骤与所述波形形成步骤之间进行任务切换,其中,所述波形形成步骤以间断的方式进行乐音参数计算操作。14.一种用来在计算单元上实现的乐音发生方法,包括一个输入步骤,输入性能信息;一个波形形成步骤,根据在预定周期内输入的性能信息,用算术方法形成对应于该预定周期的波形数据;一个输出步骤,在每个取样循环,输出对应于该预定周期的波形数据的一个试样;一个波形数据发送步骤,把所述波形形成步骤形成的对应于该预定周期的波形数据供给所述输出步骤;及一个请求步骤,探测什么时候已经进行了所述输出步骤的波形数据输出,以便请求另一次从所述波形数据发送步骤供给波形数据,其中,所述波形数据形成步骤以间断方式进行乐音参数计算操作,根据所述请求步骤的请求执行所述波形数据供给步骤并在所述发送步骤之后执行所述波形形成步骤。15.一种用来在计算单元上执行的音乐发生方法,包括一个输入步骤,输入性能信息;一个波形形成步骤,根据在预定周期内输入的性能信息,用算术方法形成对应于该预定周期的波形数据;一个波形合成步骤,输入对应于预定周期的外部波形数据,并把外部波形数据与所述波形形成步骤用算术方法形成的波形数据相结合,以便形成用于该预定周期的合成波形数据;一个波形处理步骤,把信号处理施于用于预定周期的合成波形数据;及一个输出步骤,在每个取样循环,输出合成波形数据的一个试样,其中,所述波形形成步骤以间断方式进行乐音参数计算操作。16.一种乐音发生设备包括第一装置,发出发生指令以发生多个指定的乐音;第二装置,把指定的乐音分配给从多个乐音发生通道中指定的各个乐音发生通道,并且把用于指定乐音的控制数据写入各个指定的乐音发生通道的通道寄存器中以便存储在其中;第三装置,以预定的间隔发出计算开始指令。第四装置,根据所述第三装置发生的计算开始指令,为根据所述第三装置发出的计算开始指令指定的乐音发生通道依次进行乐音形成计算,以便根据在所述通道的所述通道寄存器中存储的控制数据为提定乐音发生通道中的每一个用算术方法形成用于多个试样的波形数据;第五装置,对诸试样的每一个,混合通过第四装置为指定乐音发生通道形成的波形数据,以便形成混合的试样数据;及第六装置在每个取样周期把用于多个试样的每一个的混合试样数据转换成模拟信号,其中,在所述乐音形成计算中,所述第四装置根据从所述通道寄存器一次读出的控制数据为指定乐音发生通道的每一个实现用于多个试样的波形数据的形成,并在波形数据形成之后实现把控制数据写入所述的通道寄存器中。17.根据权利要求1所述的乐音发生方法,进一步包括根据所述第一装置为指定乐音的每一个发出的发生指令发出中途计算开始指令的第七装置,其中根据该中途计算开始指令,所述第四装置形成用于多个试样的波形数据,这些试样对应于从最后形成波形的端点至所述第一装置发出发生指令的时间点的部分。18.一种乐音发生装置包括第一装置,把指定的乐音分配给从多个乐音发生通道中指定的各个乐音发生通道,并把用于指定乐音的控制数据写入指定乐音发生通道的通道寄存器中以便存储在其中;第二装置,以预定间隔发出计算开始指令;第三装置,根据所述第二装置发出的计算开始指令,依据在所述通道的所述通道寄存器中存储的控制数据为指定的乐音发生通道的每一个用算术方法形成用于多个试样的波形数据;第四装置,对多个试样的每一个,混合由所述第三装置为指定的乐音发生通道形成的波形数据,以便形成用于多个试样的每一个的混合波形数据;第五装置,在每个取样周期把用于多个试样的混合试样数据转换为模拟信号;第六装置,在所述第五装置的处理期间利用空闲时间发出发生多个乐音的指令,其中所述第三装置进行仅用于发出乐音的通道的波形数据的算术形成。19.根据权利要求3所述的乐音产生装置,它进一步包括第七装置,设定预定的期限;和第八装置,确定用于所有指定乐音发生通道的计算是否能在预定期限的完成,并且,如果确定了用于所有指定乐音发生通道的计算不能在预定期限内完成,则发出在乐音发生通道的任一个中都应该消音的指令。20.一种乐音发生设备包括第一装置,发出发生指令以发生多个指定的乐音;第二装置,把指定的乐音分配给从多个乐音发生通道中指定的各个乐音产生通道,并把用于指定通道的控制数据写入各个指定乐音发生通道的通道寄存器中以便存储在其中;第三装置,根据在指定乐音发出通道中要发生的乐音的各自重要性,确定用于指定乐音发生通道的计算处理次序;第四装置,以预定间隔发出计算开始指令;第五装置,应所述第四装置发出的计算开始指令的要求,依据在指定乐音发生通道的通道寄存器中存储的控制数据用算术方法形成用于多个试样的波形数据;第六装置,对于多个试样的每一个,混合为诸通道形成的波形数据,以便形成用于多个试样的混合试样数据;及第七装置,在每个取样周期把用于多个试样的混合试样数据转换成模拟信号,其中,所述第五装置根据所述第三装置确定的计算处理次序为形成用于指定乐音发生通道的波形数据进行计算,并且当很可能在预定期限内完不成所述第五装置为形成波形数据进行的计算且打断所述第七装置转换的模拟信号时,用来形成波形数据的计算在其以计算处理次序在诸通道的一个上正在进行的时刻中止,以便防止打断模拟信号。21.一种用来在计算单元上实现的乐音发生设...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。