KR102051542B1 - Apparatus and method for generating virtual engine sound for virtual for car according to Accelerator depth variation - Google Patents

Apparatus and method for generating virtual engine sound for virtual for car according to Accelerator depth variation Download PDF

Info

Publication number
KR102051542B1
KR102051542B1 KR1020190123862A KR20190123862A KR102051542B1 KR 102051542 B1 KR102051542 B1 KR 102051542B1 KR 1020190123862 A KR1020190123862 A KR 1020190123862A KR 20190123862 A KR20190123862 A KR 20190123862A KR 102051542 B1 KR102051542 B1 KR 102051542B1
Authority
KR
South Korea
Prior art keywords
sound
midi
engine sound
tone
memory
Prior art date
Application number
KR1020190123862A
Other languages
Korean (ko)
Inventor
구재을
홍재규
Original Assignee
(주) 아이티아이일렉트로닉스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주) 아이티아이일렉트로닉스 filed Critical (주) 아이티아이일렉트로닉스
Priority to KR1020190123862A priority Critical patent/KR102051542B1/en
Application granted granted Critical
Publication of KR102051542B1 publication Critical patent/KR102051542B1/en

Links

Images

Classifications

    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60QARRANGEMENT OF SIGNALLING OR LIGHTING DEVICES, THE MOUNTING OR SUPPORTING THEREOF OR CIRCUITS THEREFOR, FOR VEHICLES IN GENERAL
    • B60Q5/00Arrangement or adaptation of acoustic signal devices
    • B60Q5/005Arrangement or adaptation of acoustic signal devices automatically actuated
    • B60Q5/008Arrangement or adaptation of acoustic signal devices automatically actuated for signaling silent vehicles, e.g. for warning that a hybrid or electric vehicle is approaching
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60QARRANGEMENT OF SIGNALLING OR LIGHTING DEVICES, THE MOUNTING OR SUPPORTING THEREOF OR CIRCUITS THEREFOR, FOR VEHICLES IN GENERAL
    • B60Q2300/00Indexing codes for automatically adjustable headlamps or automatically dimmable headlamps
    • B60Q2300/10Indexing codes relating to particular vehicle conditions
    • B60Q2300/11Linear movements of the vehicle
    • B60Q2300/114Vehicle acceleration or deceleration
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60QARRANGEMENT OF SIGNALLING OR LIGHTING DEVICES, THE MOUNTING OR SUPPORTING THEREOF OR CIRCUITS THEREFOR, FOR VEHICLES IN GENERAL
    • B60Q2300/00Indexing codes for automatically adjustable headlamps or automatically dimmable headlamps
    • B60Q2300/40Indexing codes relating to other road users or special conditions
    • B60Q2300/45Special conditions, e.g. pedestrians, road signs or potential dangers
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60YINDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
    • B60Y2200/00Type of vehicle
    • B60Y2200/90Vehicles comprising electric prime movers
    • B60Y2200/91Electric vehicles
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B60VEHICLES IN GENERAL
    • B60YINDEXING SCHEME RELATING TO ASPECTS CROSS-CUTTING VEHICLE TECHNOLOGY
    • B60Y2306/00Other features of vehicle sub-units
    • B60Y2306/11Noise generation, e.g. drive noise to warn pedestrians that an electric vehicle is approaching
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2499/00Aspects covered by H04R or H04S not otherwise provided for in their subgroups
    • H04R2499/10General applications
    • H04R2499/13Acoustic transducers and sound field adaptation in vehicles

Landscapes

  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Engineering & Computer Science (AREA)
  • Mechanical Engineering (AREA)
  • Electrophonic Musical Instruments (AREA)

Abstract

The present invention relates to a device for generating a virtual engine sound of a vehicle which is variably generated corresponding to the pressure of an accelerator and a method thereof. The device for generating a virtual engine sound of a vehicle which is variably generated corresponding to the pressure of an accelerator is a device for generating a virtual engine sound corresponding to the control of the variance of an accelerator and an engine rotation value (depth) operated by a driver during driving and stopping of a vehicle, which comprises: a control unit which, at a request of a driver, receives a correspondent engine sound depth value, which is required when an accelerator is pressed by a foot or a pedestrian approaches, before delivering a command to generate a virtual engine sound after determining whether it is an inner tone or an outer tone; and a virtual engine sound generation unit which reads a virtual engine sound storage memory in which a pre-edited engine sound parameter is stored, before generating an adequate engine sound to output the engine sound through a speaker. Here, the depth value comprises the variance of an acceleration device, the variance of an engine rotation amount, and a variable which requires a change in the engine sound because of a sudden appearance of an object. The virtual engine sound generation unit performs a process with respect to the engine sound or an effect sound to mix a MIDI and a wave by using a MIDI regulation through a sequential block-unit transmission of a MIDI signal and a block-unit transmission of an outer wave sound, thereby varying the tone corresponding to the engine sound depth value.

Description

엑셀레이터의 압력에 따라 가변적으로 발생되는 자동차의 가상 엔진음 생성장치 및 방법{Apparatus and method for generating virtual engine sound for virtual for car according to Accelerator depth variation}Apparatus and method for generating virtual engine sound for virtual for car according to Accelerator depth variation}

본 발명은 엔진음원 생성에 관한 것으로서, 특히 전기자동차 또는 자율주행차의 주행 및 정차시 엑셀레이터의 변화량과 엔진 회전값(Depth)에 따라 엔진음 발생이 발생되는, 엑셀레이터의 압력에 따라 가변적으로 발생되는 자동차의 가상 엔진음 생성장치 및 방법에 관한 것이다.The present invention relates to the generation of engine sound sources, and in particular, the engine sound is generated according to the change amount of the accelerator and the engine rotation value (Depth) during driving and stopping of an electric vehicle or an autonomous vehicle, which is generated variably according to the pressure of the accelerator. An apparatus and method for generating a virtual engine sound of a vehicle.

최근, 반도체의 집적기술이 발달함에 따라 간단한 신호를 주고 받아 악기음을 구현하거나 구현된 음을 변조하는 것을 용이하게 하는 반도체 칩이 개발되었다. 이동전화나 전자악기, 오락기 등에서 배경음을 구현하기 위해서는 미디(MIDI, Musical Instrument Digital Interface) 기능을 탑재한 반도체나 미디 기능을 소프트웨어로 구현할 수 있는 프로세서가 필요하다. 종래에는 직렬이나 병렬로 미디 신호를 받아 메모리에 있는 음색 파라미터를 읽어 음을 재생하였다. 이렇게 하기 위해서는 미디 신호를 해석하여 처리하는 기능이 별도로 외부에 있어야 하고, 시간별로 단순 배경음을 처리할 때 음성을 분리해서 처리할 수가 없었다. 즉, 기존 미디 방식의 비메모리 반도체들은 단순히 미디 자체만 처리할 수 있었지 미디에 정의되지 않은 오디오 신호와 믹싱(혼합)은 할 수 없었다.Recently, with the development of integrated technology of semiconductors, semiconductor chips have been developed that facilitate the exchange of simple signals to implement musical instruments or to modulate the implemented sounds. In order to implement background sounds in mobile phones, electronic musical instruments, and entertainment devices, a processor capable of implementing a semiconductor or MIDI function equipped with a MIDI (Musical Instrument Digital Interface) function is required in software. In the past, MIDI signals were received in series or in parallel to read sound parameters in memory and reproduce the sound. In order to do this, the function of interpreting and processing the MIDI signal must be separately external, and when processing a simple background sound by time, the voice cannot be separated and processed. In other words, conventional MIDI non-memory semiconductors could only process the MIDI itself, but could not mix (mix) with audio signals not defined in the MIDI.

한편 미디 기능을 탑재한 기기 등은 미디용 비메모리 반도체와 별도로 중앙처리장치(CPU), 디지털 신호처리프로세서(DSP) 등을 내장하고 있으므로 제조원가가 높다, 따라서 일반 미디 반도체칩을 이용하여 미디와 미디가 아닌 오디오 신호를 동시에 구현할 수 있는 연구가 활발히 진행되고 있다.On the other hand, devices equipped with MIDI functions have a high manufacturing cost since they include a central processing unit (CPU) and a digital signal processing processor (DSP) separately from the non-memory semiconductor for MIDI. In order to simultaneously implement audio signals, research is being actively conducted.

외부에 연결된 기기가 특정한 소리를 내고자 할 때 사용자 요구를 받아들여 사용자 요구가 미디를 이용해서 충족될 수 있는지 아닌지를 판단하고, 미디정보를 내부 메모리에 있는 정보를 이용할 것인지 아니면 외부기기에 있는 메모리의 정보를 이용할 것인지를 판단한다. 이 과정에서 내부메모리에 있는 소리로도 충분한 소리를 구현할 수 있으면 외부에 특정정보를 요청하지 않는다. 그러나 내부 메모리에 있는 소리로 음을 구현할 수 없으면 외부음 정보를 받기 위해 만들어 놓은 외부메모리에 소리정보를 순차적으로 보내달라고 외부기기에 신호를 보낸다. When an externally connected device wants to make a specific sound, it accepts the user's request to determine whether the user's request can be met using MIDI, and whether the MIDI information can be used in the internal memory or in the external device's memory. Determine whether to use the information. In this process, if sound enough in the internal memory can be realized, no specific information is requested from the outside. However, if the sound can not be realized by the sound in the internal memory, it sends a signal to the external device to send the sound information sequentially to the external memory created to receive the external sound information.

그런데 외부메모리와 내부메모리에 있는 소리가 정상적인 절차를 거쳐 원하는 소리로 재생이 될 경우에는 사용자가 원하면 특정한 음을 변조할 수 있는 음변조부를 통해 다양한 엔진음을 재생할 수 있다. 이 경우 엔진음을 최종적으로 외부에 출력하기 위해서는 외부인터페이스에 맞는 출력회로를 구성한다. However, when the sound in the external memory and the internal memory is reproduced with the desired sound through the normal procedure, various engine sounds can be reproduced through a sound modulator that can modulate a specific sound if desired by the user. In this case, in order to finally output the engine sound to the outside, an output circuit suitable for an external interface is configured.

이러한 과정에서 엔진음을 미디를 이용하여 재생할 수 있으므로 외부장치의 소리 재생 정보는 매우 단조로울 수 있다. 이 때 특별한 조건에서만 외부메모리의 소리를 이용하여 소리를 재생할 수 있기 때문에 특별한 조건에서는 미디가 가지는 정보의 단조로움을 극복할 수 있다. In this process, since the engine sound can be reproduced using the MIDI, the sound reproduction information of the external device can be very monotonous. At this time, since the sound can be reproduced using the sound of the external memory only in a special condition, the monotony of the information of the MIDI can be overcome in the special condition.

미디 자체가 가지는 정보량의 축소 특성은 외부메모리가 가질 수 없는 장점으로 내부, 외부메모리를 적절히 조화시켜 음을 재생할 때 최대의 효과를 얻을 수 있다. 그리고 미디가 재현하는 여러 가지 파라미터가 단순 소리의 재생을 뛰어 넘어 음을 변조할 수 있지만, 이를 외부 메모리와 동시에 구현할 수 없는 한계가 있다. 또한 내연 기관은 물론이고 기존의 전기 자동차는 생산 출하시에 내장된 엔진음을 바꿀 수 없고, 바꿀 의미도 없었지만, 4차산업 시대에는 소비자의 새로운 욕구로 내장된 엔진음 이외에 완전히 새로운 엔진음을 원할 수가 있다. 이 때에는 Mobile디바이스(Smart Phone)을 이용하여 새로운 음원을 다운로딩 받아 취향에 맞게 재생할 수 있는 방안이 필요하다. The reduction of the amount of information that the MIDI itself has is an advantage that external memory cannot have. Therefore, a maximum effect can be obtained when sound is reproduced by harmonizing internal and external memory properly. In addition, although various parameters reproduced by MIDI can modulate the sound beyond simple sound reproduction, there is a limitation that it cannot be simultaneously implemented with external memory. In addition to the internal combustion engine as well as the existing electric vehicle can not change the built-in engine sound at the time of production shipment, it did not mean to change, but in the era of the fourth industry, consumers want a completely new engine sound in addition to the built-in engine sound as a new desire of consumers There is a number. In this case, there is a need for a method of downloading a new sound source using a mobile device (smart phone) and reproducing it to taste.

본 발명이 해결하고자 하는 과제는 상술한 문제점을 해결하기 위한 것으로, 전기로 구동되는 이동장치의 주행 및 정차 시 운전자에 의해 작동되는 엑셀레이터의 변화량과 엔진 회전 값(Depth) 조절에 따른 음 발생을 위하여 미디 장치에서 만드는 음원과 동시에 외부 웨이브를 어드레스 페이즈 발생부와 음색 데이타 메모리, 음 변조 데이타 메모리, 음 크기 데이타 메모리를 이용하여, 메모리를 최적으로 이용하고 미디에서 정해진 악기음과 외부웨이브를 동시에 직접적으로 처리하는 회로를 개발하여 미디의 기능을 향상시키고 미디와 외부 웨이브를 혼합하여 동시에 청취할 수 있는, 엑셀레이터의 압력에 따라 가변적으로 발생되는 자율주행 차나 전기 동력차 등의 자동차 가상 엔진음 생성장치 및 방법을 제공하는 것이다.The problem to be solved by the present invention is to solve the above problems, for the generation of sound according to the amount of change of the accelerator and the engine rotation value (Depth) of the accelerator driven by the driver when driving and stopping of the electrically driven mobile device. By using the address phase generator, tone data memory, tone modulation data memory, and volume data memory at the same time as the sound source produced by the MIDI device, the memory is optimally used and the instrument sound and external wave specified by the MIDI can be directly and simultaneously We have developed a circuit to improve the function of the MIDI by listening to a combination of MIDI and external waves to listen to the virtual engine sound generating device and method for autonomous vehicles or electric power vehicles that are variable depending on the pressure of the accelerator To provide.

또한 본 발명은 전기로 구동되는 이동장치의 주행 및 정차시 운전자가 작동하는 엑셀레이터의 변화량과 엔진 회전값(Depth)에 따른 가상엔진음을 발생하고 미디 신호의 순차적인 블럭 단위 전송과 메모리 어드레스 페이즈변조를 이용한 소리 발생방식에 관하여 반도체 비메모리 장치로 구현가능한, 엑셀레이터의 압력에 따라 가변적으로 발생되는 자율주행 차나 전기 동력차 등의 자동차 가상 엔진음 생성장치 및 방법을 제공하는 것이다.In addition, the present invention generates a virtual engine sound according to the amount of change of the accelerator operated by the driver and the engine rotation value (Depth) when driving and stopping of the electrically driven mobile device, the sequential block unit transmission of the MIDI signal and the memory address phase modulation The present invention provides an apparatus and method for generating a virtual engine sound of an automobile, such as an autonomous driving vehicle or an electric power vehicle, which can be embodied as a semiconductor non-memory device and which is variable according to the pressure of an accelerator.

상술한 기술적 과제를 해결하기 위한 본 발명에 따른 엑셀레이터의 압력에 따라 가변적으로 발생되는 자율주행 차나 전기 동력차 등의 자동차 가상 엔진음 생성장치는, 자동차의 주행 및 정차시 운전자가 작동하는 엑셀레이터의 변화량과 엔진 회전값(Depth)의 조절에 따른 가상 엔진음 발생 장치로서, In order to solve the above technical problem, a vehicle virtual engine sound generating device such as an autonomous driving vehicle or an electric power vehicle, which is generated variably according to the pressure of an accelerator according to the present invention, includes a change amount of an accelerator operated by a driver during driving and stopping of a vehicle. A virtual engine sound generator according to the adjustment of the engine rotation value (Depth),

상기 운전자의 요구에 엘셀레이터를 발로 누르거나 보행자 접근시 필요한 해당하는 엔진음 깊이값을 수신하여 내부톤인지 외부 톤인지를 판별하여 가상엔진음을 생성하라는 명령을 전달하는 마이크로 프로세서; 및 미리 편집된 엔진음 파라미터가 저장된 가상 엔진음 저장 메모리를 읽어서 적절한 엔진음을 발생시켜 스피커를 통하여 엔진음을 출력하는 가상엔진음 발생부를 포함하고, 상기 깊이값은 가속장치의 변화량과 엔진회전량의 변화량, 및 갑작스런 물체의 출현으로 인한 엔진음의 변화가 필요한 변수를 포함하고, 가상엔진음 발생부는 엔진음이나 효과음을 미디 규정을 이용하여 미디신호의 순차적인 블록단위 전송과 외부 웨이브사운드(wave sound)의 블록단위전송에 의한 미디와 웨이브의 혼합처리를 하면서 엔진음 깊이 값에 따라 음색을 가변하는 것을 특징으로 한다.A microprocessor that transmits a command to generate a virtual engine sound by determining whether an internal tone or an external tone is received by receiving a corresponding engine sound depth value required when the driver presses the celerator or accesses a pedestrian; And a virtual engine sound generator configured to read a virtual engine sound storage memory in which the pre-edited engine sound parameters are stored, generate an appropriate engine sound, and output the engine sound through a speaker, wherein the depth value is an amount of change of the accelerator and an amount of engine rotation. And a variable that requires a change in the engine sound due to the sudden appearance of the object, and the virtual engine sound generating unit transmits the sequential block unit transmission of the MIDI signal and the external wave sound using the MIDI specification. It is characterized in that the tone is varied according to the engine sound depth value while performing the mixing process of the MIDI and the wave by the block-by-block transmission of the sound).

본 발명에 따른 엑셀레이터의 압력에 따라 가변적으로 발생되는 자율주행 차나 전기 동력차 등의 자동차 가상 엔진음 생성장치는, 엔진음을 웨이브 파일을 이용하여 만들 때 미디 파라미터와 동일한 특성을 갖는 웨이브용 파라미터를 사용하여 미디음과 웨이브음을 혼합 하기 쉽게 파일을 만드는 수단; 및 엑셀레이터의 가변시나 보행자의 과도한 접근시 안전을 위해 엔진음 깊이 값의 변화량을 읽어 테이블 형태로 미리 정해놓은 파라미터를 음 발생장치에 전달하기 위한 수단을 포함할 수 있다. 본 발명에 따른 엑셀레이터의 압력에 따라 가변적으로 발생되는 자율주행 차나 전기 동력차 등의 자동차 가상 엔진음 생성장치는, 상기 파일에서 미디나 웨이브 중 하나의 파일만 사용할 때는 미디나 웨이브가 한 가지 형태로만 사용 가능토록 하여 외부장치의 능률을 보장하는 인터페이스 수단; 및 하나의 메모리로 미디와 웨이브 파일이 분리가 되어 있을 때는 두 가지 신호를 동시처리 가능하도록 메모리를 분리할 수 있는 수단을 구비하고, 상기 메모리 분리수단은 미디신호와 웨이브신호가 하나의 파일로 섞여 있을 때는 미디와 웨이브 사이에 특정신호를 추가하여 내부에서 두 가지 신호를 구분하여 내부버퍼에 미디와 웨이브를 따로 저장하고, 파일이 분리되어 있을 때는 외부에서 내부의 분리되어 있는 버퍼에 미디와 웨이브를 직접 쓰게 하는 것을 특징으로 한다. An automobile virtual engine sound generating device such as an autonomous driving car or an electric power car, which is generated variably according to the pressure of the accelerator according to the present invention, uses a wave parameter having the same characteristics as that of a MIDI parameter when the engine sound is generated using a wave file. Means for creating files that are easy to mix midi and wave sounds; And a means for reading a change amount of the engine sound depth value and transmitting a predetermined parameter in a table form to the sound generator for safety when the accelerator is variable or when the pedestrian is excessively approached. An automobile virtual engine sound generating device such as an autonomous driving vehicle or an electric power vehicle, which is generated variably according to the pressure of the accelerator according to the present invention, when only one file of a MIDI or wave is used in the file, only one type of MIDI or wave is used. Interface means for enabling the efficiency of external devices; And means for dividing the memory so that the two signals can be processed simultaneously when the MIDI and wave files are separated into one memory, and the memory separating means is a combination of the MIDI signal and the wave signal into one file. When there is a separate signal between MIDI and Wave, it separates two signals from the inside and stores MIDI and Wave separately in the internal buffer.When files are separated, MIDI and Wave are stored in a separate buffer from the outside. Characterized by direct writing.

상기 가상엔진음 발생부는 원하는 톤을 만들기 위해서 선택된 주파수 변수에 따른 음색데이타가 들어있는 메모리의 어드레스 입력을 시간에 따른 변화를 만들 수 있는 어드레스변수를 곱해서 크기를 변화시켜 음을 만들어 내면서 음색을 변화시키는 음색변조부; 및 상기의 음색변화를 위해 동일한 곱셈기와 덧셈기를 여러 개 중첩시켜 어드레스변화를 시간에 따라 실시간으로 생성하며, 계산량을 줄이기 위해 상기 어드레스 변화를 시간에 따라 주기적으로 반복하는 어드레스 변조부를 포함하고, 상기 음색변조부와 어드레스 변조부에 의한 출력을 입력으로 받아 특정 메모리에 있는 데이터 값에 의해서 입력의 크기를 변화시키고, 특정 메모리에 시간에 따라 변화시키는 크기의 양과 시간 간격이 들어있고, 상기 메모리 값에 따라 음량이 변하고, 상기 최종적인 음량의 변화가 곱셈기에 의해서 변화되고, 음량이 변화된 음의 음색을 변화하고자 할 때 사용된 음변조 데이타가 들어있는 음변조 메모리의 어드레스가 특정음색에 따라 변화되고, 수정 어드레스의 결정은 내부의 감산기와 덧셈기를 이용하고 덧셈이나 뺄셈을 하는데 순수하게 시간변수에 따라 덧셈과 뺄셈의 시간 간격과 양이 결정되고 상기 결정된 음변조메모리의 어드레스가 음변조 데이타를 읽어 들이는데 사용되고, 결정된 음변조 데이타의 사용방법은 출력을 입력으로 받아 음변조 메모리에서 읽어 들인 데이타를 곱셈기를 이용해서 곱셈과 덧셈을 반복하여 출력을 만들고, 상기 입력은 출력을 만드는데 사용된 후에 다음 싸이클에서 새로 들어온 입력과 조합을 하여 출력을 만드는데 사용되고, 상기 출력도 현재 싸이클에서 생성된 출력이 다음 싸이클에서 한 샘플 지연이 되서 입력들과 덧셈기를 이용하여 최종출력을 만들고, 상기 모든 입출력 데이타는 음변조 메모리에서 읽은 데이타값과 곱셈기를 이용하여 결합이 돼서 곱셈기의 최종결과가 모두 합산이 되어 최종 출력이 되는 것을 특징으로 한다.The virtual engine sound generator generates a sound by multiplying an address input of a memory containing voice data according to a selected frequency variable to produce a desired tone by multiplying an address variable that can make a change over time to produce a sound. Tone modulator; And an address modulator for generating an address change in real time according to time by overlapping a plurality of same multipliers and adders for the tone change, and periodically repeating the address change in time to reduce the amount of calculation. It receives the output of the modulator and the address modulator as input and changes the size of the input according to the data value in the specific memory, and contains the amount and time interval of the size to change with time in the specific memory. The volume is changed, the final change in volume is changed by a multiplier, and the address of the tone modulation memory containing the tone modulation data used when the tone of the tone is changed is changed according to a specific tone. Determination of address uses internal subtractor and adder. In subtraction, the time interval and amount of addition and subtraction are determined purely according to the time variable, and the determined address of the modulation memory is used to read the modulation data, and the method of using the determined modulation data receives an output as an input. The data read from the modulation memory is produced by repeating multiplication and addition using a multiplier, and the input is used to produce the output and then used to produce the output by combining with the new input in the next cycle. The output generated by the cycle is one sample delay in the next cycle, making the final output using the inputs and the adder, and all the input and output data are combined using the multiplier and the data value read from the negative modulation memory, so the final result of the multiplier. Are summed up to become the final output do.

또한 상기 가상엔진음 발생부는 사용자가 설정한 깊이 값을 정해진 주기에 맞춰 읽어서 미디&깊이값 해석부에 전달해주는 엔진음 깊이값 전송부; 외부장치와 정보를 교환하면서 내부에 미디정보를 전달하는 미디버퍼; 외부장치와 정보를 교환하면서 내부에 효과음용 웨이브 정보를 전달하는 웨이브버퍼; 외부에서 들어오는 명령이 일반 음에 관한 것인지, 깊이값에 관한 것인지, 정지명령인지 시작명령인지를 판별하며 명령의 순서에 따라 순차적으로 명령을 저장하고 내부 상태를 외부에 전달하는 외부명령수신부; 외부와 정보를 교환하는 버퍼의 상태를 제어하고 버퍼의 크기를 최소화하기 위한 버퍼어드레스생성기; 외부에서 들어온 명령 중 미디에 관한 명령을 골라내서 내부에 필요한 채널넘버나 미디 파라미터를 해석하거나, 깊이 제어에 관한 명령을 분리하여 미디 파라미터(MIDI Parameter)와 분리하는 미디&깊이값 해석부; 미디명령과 사운드에 관한 명령을 내부 디에스피(DSP)에 각 채널에 해당하는 변수를 분리하며 순차적으로 번호를 붙여서 전달하여 소리의 발생을 채널별 간섭이 없이 시작할 수 있도록 명령을 전달하는 가상엔진음 매핑부; 미디명령과 깊이값 명령을 전달받아 원하는 소리가 저장되어 있는 메모리의 매 사이클에 따른 위치 데이타를 읽는 메모리 어드레스 재생성부; 음색데이타, 음크기조절데이타,음변조데이타, 깊이값 파라미터를 하나의 메모리에 저장하기 위한 음저장 메모리 어드레스/외부데이터 액세스부; 매 사이클 마다 정해진 어드레스에 의해 읽혀진 데이타를 상기 미디&깊이 값 해석부에서 오는 특정 명령에 따라 소리를 변조시키는 음 변조부; 음색데이타, 음크기조절데이타, 음변조데이타, 엔진음 깊이 파라미터, 음변조정보가 저장되어 있는 음저장 메모리; 음저장메모리의 데이터를 원하는 피치로 생성하는 음 인터폴레이터; 및 최종적으로 재생된 데이터를 외부로 출력시키는 디지털 출력부를 포함할 수 있다.The virtual engine sound generator may include: an engine sound depth value transmission unit configured to read a depth value set by a user at a predetermined period and transmit the same to a MIDI & depth value analyzer; A MIDI buffer for transmitting MIDI information therein while exchanging information with an external device; A wave buffer for transmitting the wave information for the sound effect therein while exchanging information with an external device; An external command receiving unit which determines whether the external command is related to a general sound, a depth value, a stop command or a start command, and sequentially stores the command and transmits an internal state to the outside according to the order of the command; A buffer address generator for controlling the state of the buffer exchanging information with the outside and minimizing the size of the buffer; A MIDI & depth value analysis unit for selecting a MIDI command from an external command and analyzing a channel number or MIDI parameter required therein, or separating a command related to depth control from a MIDI parameter; Virtual engine sound mapping that transmits commands so that MIDI commands and sound-related commands are separated and serially numbered to the internal DSP and are sequentially numbered. part; A memory address regenerating unit receiving the MIDI command and the depth value command and reading position data according to each cycle of the memory in which desired sounds are stored; A sound storage memory address / external data access unit for storing timbre data, tone control data, tone modulation data, and depth value parameters in one memory; A sound modulator for modulating a sound according to a specific command from the MIDI & depth value analyzer, the data read by a predetermined address every cycle; A sound storage memory for storing tone data, tone control data, tone modulation data, engine sound depth parameter, and tone modulation information; A sound interpolator for generating data of a sound storage memory at a desired pitch; And a digital output unit for finally outputting the reproduced data to the outside.

상기 가상엔진음 발생부는 음색메모리의 최소화와 복원시 최소한의 회로나 계산량을 사용하기 위하여 인코더를 이용하여 압축되어 저장된 음색데이타를 웨이브 형태로 복원하는 디코더부를 더 포함하고, 상기 음 인터폴레이터는 상기 디코딩된 음저장메모리의 데이터를 원하는 피치로 생성하는 것을 특징으로 한다.The virtual engine sound generator may further include a decoder configured to restore the tone data compressed and stored by using an encoder in a wave form in order to use a minimum amount of circuits or calculations when the tone memory is minimized and restored. It is characterized in that the data of the sound storage memory is generated at a desired pitch.

상술한 기술적 과제를 해결하기 위한 본 발명에 따른 엑셀레이터의 압력에 따라 가변적으로 발생되는 자율주행 차나 전기 동력차 등의 자동차 가상 엔진음 생성방법은, 액셀레이터의 변화량과 엔진회전량의 변화량 및 갑작스런 물체의 출현으로 인한 자동차 엔진음의 변화가 필요한 변수를 포함하는 깊이값을 획득하는 단계; 내부에 저장된 내부톤을 의미하는 미디신호와 특수 효과용 외부톤을 의미하는 웨이브 인지를 판별하는 단계; 원래의 미디와 깊이값을 혼합하여 새로운 음을 생성하기 위한 미디 파라미터를 생성하는 단계; 외부음을 사용하는 웨이브이면 압축이 되었는지 순수한 비압축음인지를 판별하여 외부음을 저장 및 처리하고, 미디신호이면 내부메모리에 저장된 내부음으로 처리하는 단계; 가상 엔진음 생성과 합성을 통해 생성된 가상엔진음을 변조하고 음 높이를 조절하여 가상 엔진음을 출력하는 단계를 포함한다.In order to solve the above technical problem, a method for generating a virtual engine sound of an automobile, such as an autonomous driving vehicle or an electric power vehicle, which is variably generated according to the pressure of an accelerator according to the present invention, the amount of change of the accelerator and the amount of rotation of the engine and the appearance of a sudden object Obtaining a depth value including a variable that requires a change in the engine sound due to the vehicle; Determining whether a MIDI signal representing an internal tone stored therein and a wave representing an external tone for a special effect; Generating a MIDI parameter for generating a new note by mixing the original MIDI and the depth value; Determining whether it is compressed or purely uncompressed if the wave uses the external sound, and storing and processing the external sound, and processing the internal sound stored in the internal memory if the MIDI signal is received. And modulating the virtual engine sound generated through the generation and synthesis of the virtual engine sound, and adjusting the pitch to output the virtual engine sound.

본 발명에 따른 엑셀레이터의 압력에 따라 가변적으로 발생되는 자율주행 차나 전기 동력차 등의 자동차 가상 엔진음 생성장치 및 방법에 의하면, 전기로 구동되는 이동장치의 주행 및 정차시 운전자가 작동하는 엑셀레이터의 변화량과 엔진 회전값(Depth value)의 조절에 따라 미리 설정된 미디형태로 저장된 음과 웨이브 형태의 가상의 엔진음을 구현할 수 있다. According to the apparatus and method for generating a virtual engine sound of an automobile, such as an autonomous driving vehicle or an electric power vehicle, which are variably generated according to the pressure of the accelerator according to the present invention, the amount of change of the accelerator operated by the driver during driving and stopping of an electrically driven mobile device and According to the adjustment of the engine rotation value (Depth value) it is possible to implement a virtual engine sound of the wave form and the sound stored in the preset MIDI form.

보통의 미디 상태에서는 음발생 방식이 내부 메모리에 가지고 있는 음 관련 정보를 이용해서 원하는 음을 발생하며 미디에서 정해진 명령에 의해 음 발생을 진행하면서 메모리 어드레스 페이즈 발생기를 이용하여 간단한 메모리 어드레스 변환으로 필요한 파라미터가 들어 있는 정확한 번지를 생성하여 필요한 음색관련 파라미터를 만든다. 저장된 음색관련 파라미타를 최적으로 사용하기 위하여 샘플링 음원데이타의 인접 간의 차를 저장한 압축테이블을 이용한 최소한의 메모리로 풍부한 음을 발생시킴으로 음발생 회로를 최소한으로 줄일 수 있고 내장된 음색으로 구현하기 불가능한 음색은 외부에서 원음 형태의 웨이브로 받아 사용자의 의도를 만족하는 엔진음의 깊이 정보 명령에 따라 원하는 소리의 구현이 가능하도록 하며 이때 외부 웨이브도 내부메모리에서 사용하는 메모리어드레스페이즈 발생기와 정보량 축소를 위한 압축테이블을 공동으로 사용하여 회로를 최소화 하며 미디와 동일한 효과를 얻을 수 있다.In normal MIDI state, the sound generation method generates the desired sound by using the sound-related information in the internal memory, and the parameters required for simple memory address conversion using the memory address phase generator while proceeding sound generation by the command specified in the MIDI. Create the correct address containing the number and make the necessary tone related parameters. In order to optimally use the stored parameters, the sound generation circuit can be reduced to the minimum by using a compression table that stores the difference between adjacent sampling sound source data. Receives a wave in the form of an original sound from the outside so that the desired sound can be implemented according to the depth information command of the engine sound that satisfies the user's intention.In this case, the external wave is also used to reduce the amount of information and the memory address generator used in the internal memory By using the tables together, the circuit can be minimized and the same effect as the MIDI can be achieved.

도 1은 본 발명에 따른 자동차 가상엔진음 발생장치의 일실시예를 개념적으로 설명하는 전체적인 흐름과 새로운 가상엔진음을 모바일 단말을 통해서 다운로딩 받는 서비스 과정을 설명하는 개념도를 나타낸 것이다.
도 2는 본 발명의 일실시예에 따른 자동차 가상엔진음 발생장치의 모델을 블록도로 나타낸 것이다.
도 3은 본 발명에 따른 자동차 가상엔진음 발생을 흐름도로 나타낸 것이다.
도 4는 본 발명에 따른, 미디정보의 블록단위 전송과 메모리 어드레스 페이즈 모듈레이션을 이용한 자동차 가상 엔진음 발생장치의 구성을 블록도로 나타낸 것이다.
도 5 는 본 발명에 따른 자동차의 가상엔진음 발생장치에서의 가상엔진음 생성을 흐름도로 나타낸 것이다.
도 6은 본 발명에 따른 자동차의 가상엔진음 발생장치에서 미리 정의된 미디 정보와 랜덤한 새로운 웨이브 정보를 버퍼에 기록하는 것을 흐름도로 나타낸 것이다.
도 7은 본 발명에 따른 자동차의 가상엔진음 발생장치에서 깊이값에 따른 가상엔진음을 생성하기 위한 미디정보 전달을 흐름도로 나타내 것이다.
도 8은 본 발명에 따른 자동차의 가상엔진음 발생장치에서 소리를 만들기 위한 모든 파라미터가 함축된 정보를 받아 가상엔진음을 생성하는 구성을 블록도로 나타낸 것이다.
도 9은 본 발명에 따른 자동차의 가상엔진음 발생장치의 메모리 어드레스 페이즈 생성기 1의 구성을 블록도로 나타낸 것이다.
도 10는 본 발명에 따른 자동차의 가상엔진음 발생장치의 메모리 어드레스 페이즈 생성기 2의 구성을 블록도로 나타낸 것이다.
도 11은 본 발명에 따른 자동차의 가상엔진음 발생장치의 메모리 어드레스 페이즈 생성기 3의 구성을 블록도로 나타낸 것이다.
도 12는 입력된 엔진음에 속도변환을 주기 위한 전단계로서 교차신호변조음을 만들어 놓기 위한 구성도이다.
도 13은 음변조 수단을 위한 변조기(Modulator flow diagram for sound modulation)를 보인 것이다.
도 14는 사용자가 설정하는 엔진 깊이 값 에 따라 엔진음 발생장치의 입출력(input/output)이 변화되는 전체적 구성을 블록도로 나타낸 것이다.
1 is a conceptual diagram illustrating an overall flow illustrating an embodiment of an apparatus for generating a vehicle virtual engine sound according to the present invention and a service process of downloading a new virtual engine sound through a mobile terminal.
Figure 2 shows a block diagram of a model of the vehicle virtual engine sound generating apparatus according to an embodiment of the present invention.
3 is a flowchart illustrating the generation of a vehicle virtual engine sound according to the present invention.
4 is a block diagram illustrating a configuration of a vehicle virtual engine sound generator using block-based transmission of MIDI information and memory address phase modulation according to the present invention.
5 is a flowchart illustrating a virtual engine sound generation in a virtual engine sound generating apparatus of a vehicle according to the present invention.
FIG. 6 is a flowchart illustrating recording of predefined MIDI information and random new wave information in a buffer in a virtual engine sound generator of an automobile according to the present invention.
7 is a flowchart illustrating transmission of MIDI information for generating a virtual engine sound according to a depth value in a virtual engine sound generator of a vehicle according to the present invention.
8 is a block diagram illustrating a configuration of generating a virtual engine sound by receiving information implied with all parameters for making a sound in a virtual engine sound generator of a vehicle according to the present invention.
9 is a block diagram illustrating a configuration of a memory address phase generator 1 of a virtual engine sound generator of an automobile according to the present invention.
10 is a block diagram illustrating a configuration of a memory address phase generator 2 of a virtual engine sound generator of an automobile according to the present invention.
FIG. 11 is a block diagram illustrating a configuration of a memory address phase generator 3 of a virtual engine sound generator of an automobile according to the present invention.
12 is a configuration diagram for creating a cross signal modulation sound as a pre-step for giving a speed change to an input engine sound.
FIG. 13 shows a modulator flow diagram for sound modulation.
FIG. 14 is a block diagram illustrating an overall configuration in which input / output of an engine sound generator is changed according to an engine depth value set by a user.

이하, 첨부된 도면을 참조로 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 본 명세서에 기재된 실시예와 도면에 도시된 구성은 본 발명의 바람직한 일 실시예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원 시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형예들이 있을 수 있음을 이해하여야 한다.Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings. Configurations shown in the embodiments and drawings described herein are only one preferred embodiment of the present invention, and do not represent all of the technical spirit of the present invention, various equivalents that may be substituted for them at the time of the present application It should be understood that there may be variations and variations.

도 1은 본 발명에 따른 자동차 가상엔진음 발생장치의 일실시예를 개념적으로 설명하는 전체적인 흐름과 새로운 가상엔진음을 모바일 단말을 통해서 다운로딩 받는 서비스 과정을 설명하는 개념도를 나타낸 것이다. 본 발명에 따른 자동차 가상엔진음 발생장치는 전기로 구동되는 이동장치의 주행 및 정차시 운전자가 작동하는 엑셀레이터의 변화량과 엔진 회전값(엔진음 depth)의 조절에 따라 자동차 가상엔진음을 발생한다.1 is a conceptual diagram illustrating an overall flow illustrating an embodiment of an apparatus for generating a vehicle virtual engine sound according to the present invention and a service process of downloading a new virtual engine sound through a mobile terminal. The vehicle virtual engine sound generator according to the present invention generates the vehicle virtual engine sound according to the amount of change of the accelerator operated by the driver and the engine rotation value (engine sound depth) when driving and stopping of the electrically driven mobile device.

도 1을 참조하면, 보행자(110)의 안전을 위해 자동차에 내장된 가상 엔진음 합성 IC(120)에서 생성된 가상 엔진음을 전기앰프(130)와 스피커(140)를 통해 외부로 출력시킨다. 이때 외부로 가상엔진음을 출력시키기 위해서는 운전자가 엑셀레이터의 가속페달(150)을 발로 밟으면 페달암(160)과 스프링(170), 가속엔진 전달 링(180)을 이용하여 센서에 전달되면 센서는 누르는 양만큼 엔진 깊이 값을 엔진음 발생부에 전달한다. 자율주행 차량에서는 보행자(110)를 인식하여 보행자에게 차량의 접근을 알리기 위해서 보행자의 접근을 자동 인식하는 보행자 접근인식센서(190)를 통해 적절한 엔진음을 재생하기 위한 깊이 값을 엔진음 발생부에 전달한다. 그리고 모바일단말기(115)를 통해 새로운 가상엔진음을 자율주행차량으로 전달할 수도 있다.Referring to FIG. 1, the virtual engine sound generated by the virtual engine sound synthesis IC 120 built in a vehicle is output to the outside through the electric amplifier 130 and the speaker 140 for the safety of the pedestrian 110. In this case, in order to output the virtual engine sound to the outside, when the driver steps on the accelerator pedal 150 of the accelerator, the pedal arm 160, the spring 170, and the acceleration engine delivery ring 180 are delivered to the sensor, the sensor is pressed. The engine depth value is transmitted to the engine sound generator by a positive amount. In the autonomous vehicle, the depth value for reproducing an appropriate engine sound through the pedestrian access recognition sensor 190 which automatically recognizes the pedestrian's approach to recognize the pedestrian 110 by informing the pedestrian 110 of the vehicle to the engine sound generator. To pass. In addition, a new virtual engine sound may be delivered to the autonomous vehicle through the mobile terminal 115.

도 2는 본 발명의 일실시예에 따른 자동차 가상엔진음 발생장치를 블록도로 나타낸 것이다. 도 2를 참조하면, 운전자의 요구에 엘셀레이터를 발로 누르거나 보행자 접근시 필요한 해당하는 엔진음 깊이값(Depth Value)를 제어부 예를 들어 마이크로 프로세서(210)가 전달 받으면 내부톤인지 외부 톤인지를 판별하여 가상엔진음 발생 IC(220)에 음을 생성하라는 명령을 전달한다. 이 명령을 전달받은 가상 엔진 음 발생 IC(220)는 엔진음의 편집장치(230)를 통해 편집된 엔진음 파라미터가 미리 저장되어있는 가상엔진음 저장 메모리(240)를 읽어서 적절한 엔진음을 발생시켜 스피커(250)를 통하여 엔진음을 출력시킨다.Figure 2 shows a block diagram of a vehicle virtual engine sound generating apparatus according to an embodiment of the present invention. Referring to FIG. 2, when a controller, for example, the microprocessor 210 receives a corresponding engine depth value required for the driver's request by pressing the celerator with a foot or approaching a pedestrian, it is determined whether it is an internal tone or an external tone. It determines and transmits a command to generate the sound to the virtual engine sound generating IC (220). The virtual engine sound generating IC 220 received this command reads the virtual engine sound storage memory 240 in which the engine sound parameters edited through the editing device 230 of the engine sound are pre-stored to generate an appropriate engine sound. The engine sound is output through the speaker 250.

가상엔진음 발생 IC는 엔진음이나 효과음을 미디 규정을 이용하여 미디신호의 순차적인 블록단위 전송과 외부 웨이브사운드(wave sound)의 블록단위전송에 의한 미디와 웨이브의 혼합처리를 하면서 엔진음 깊이 값에 따라 음색을 가변할 수 있다. The virtual engine sound generator IC uses engine rules and sound effects to determine the depth of the engine sound while performing MIDI-wave mixing by sequential block-by-block transmission of MIDI signals and block-by-block transmission of external wave sounds. You can change the tone according to the

이 때, 본 발명에 따른 자동차 가상엔진음 발생장치는 엔진음을 웨이브 파일을 이용하여 만들 때 미디 파라미터와 동일한 특성을 갖는 웨이브용 파라미터를 사용하여 미디음과 웨이브음을 혼합 하기 쉽게 파일을 만드는 미디음&웨이브음 혼합부와 엑셀레이터의 가변시나 보행자의 과도한 접근시 안전을 위해 엔진음 깊이 값의 변화량을 읽어 테이블 형태로 미리 정해놓은 파라미터를 음 발생장치에 전달하기 파라미터 전송부를 포함할 수 있다. In this case, the apparatus for generating a vehicle virtual engine sound according to the present invention uses a wave parameter having the same characteristics as that of a MIDI parameter when creating an engine sound using a wave file. The sound & wave sound mixing unit and the accelerator may include a parameter transmission unit for reading the amount of change in the engine sound depth value to pass the predetermined parameters in the form of a table for safety when excessive access of the pedestrian.

그리고, 상기 파일에서 미디나 웨이브 중 하나의 파일만 사용할 때는 미디나 웨이브가 한 가지 형태로만 사용 가능토록 하여 외부장치의 능률을 보장하는 인터페이스부 및 하나의 메모리로 미디와 웨이브 파일이 분리가 되어 있을 때는 두 가지 신호를 동시처리 가능하도록 메모리를 분리할 수 메모리분리부를 포함할 수 있다. 상기 메모리 분리부는 미디신호와 웨이브신호가 하나의 파일로 섞여 있을 때는 미디와 웨이브 사이에 특정신호를 추가하여 내부에서 두 가지 신호를 구분하여 내부버퍼에 미디와 웨이브를 따로 저장하고, 파일이 분리되어 있을 때는 외부에서 내부의 분리되어 있는 버퍼에 미디와 웨이브를 직접 쓰게 할 수 있다.When only one file of the MIDI or wave is used in the file, the MIDI and wave files may be separated into an interface unit and a memory to ensure the efficiency of an external device by using the MIDI or wave in one form. The memory may include a memory separator to separate the memory so that the two signals can be processed simultaneously. When the MIDI signal and the wave signal are mixed into one file, the memory separator separates two signals from the inside by adding a specific signal between the MIDI and the wave, and stores the MIDI and wave separately in an internal buffer, and the file is separated. If you do, you can write MIDI and Wave directly to a separate buffer from the outside.

상기 가상엔진음 발생 IC는 원하는 톤을 만들기 위해서 선택된 주파수 변수에 따른 음색데이타가 들어있는 메모리의 어드레스 입력을 시간에 따른 변화를 만들 수 있는 어드레스변수를 곱해서 크기를 변화시켜 음을 만들어 내면서 음색을 변화시키는 음색변조부; 및 상기의 음색변화를 위해 동일한 곱셈기와 덧셈기를 여러 개 중첩시켜 어드레스변화를 시간에 따라 실시간으로 생성하며, 계산량을 줄이기 위해 상기 어드레스 변화를 시간에 따라 주기적으로 반복하는 어드레스 변조부를 포함하고, 상기 음색변조부와 어드레스 변조부에 의한 출력을 입력으로 받아 특정 메모리에 있는 데이터 값에 의해서 입력의 크기를 변화시키고, 특정 메모리에 시간에 따라 변화시키는 크기의 양과 시간 간격이 들어있고, 상기 메모리 값에 따라 음량이 변하고, 상기 최종적인 음량의 변화가 곱셈기에 의해서 변화되고, 음량이 변화된 음의 음색을 변화하고자 할 때 사용된 음변조 데이타가 들어있는 음변조 메모리의 어드레스가 특정음색에 따라 변화되고, 수정 어드레스의 결정은 내부의 감산기와 덧셈기를 이용하고 덧셈이나 뺄셈을 하는데 순수하게 시간변수에 따라 덧셈과 뺄셈의 시간 간격과 양이 결정되고 상기 결정된 음변조메모리의 어드레스가 음변조 데이타를 읽어 들이는데 사용되고, 결정된 음변조 데이타의 사용방법은 출력을 입력으로 받아 음변조 메모리에서 읽어 들인 데이타를 곱셈기를 이용해서 곱셈과 덧셈을 반복하여 출력을 만들고, 상기 입력은 출력을 만드는데 사용된 후에 다음 싸이클에서 새로 들어온 입력과 조합을 하여 출력을 만드는데 사용되고, 상기 출력도 현재 싸이클에서 생성된 출력이 다음 싸이클에서 한 샘플 지연이 되서 입력들과 덧셈기를 이용하여 최종출력을 만들고, 상기 모든 입출력 데이타는 음변조 메모리에서 읽은 데이타값과 곱셈기를 이용하여 결합이 돼서 곱셈기의 최종결과가 모두 합산이 되어 최종 출력될 수 있다.The virtual engine sound generating IC changes the tone while creating a sound by multiplying the address input of the memory containing the tone data according to the selected frequency variable to the desired variable to multiply the address variable to create a change over time. Tone modulation unit; And an address modulator for generating an address change in real time according to time by overlapping a plurality of same multipliers and adders for the tone change, and periodically repeating the address change in time to reduce the amount of calculation. It receives the output of the modulator and the address modulator as input and changes the size of the input according to the data value in the specific memory, and contains the amount and time interval of the size to change with time in the specific memory. The volume is changed, the final change in volume is changed by a multiplier, and the address of the tone modulation memory containing the tone modulation data used when the tone of the tone is changed is changed according to a specific tone. Determination of address uses internal subtractor and adder. In subtraction, the time interval and amount of addition and subtraction are determined purely according to the time variable, and the determined address of the modulation memory is used to read the modulation data, and the method of using the determined modulation data receives an output as an input. The data read from the modulation memory is produced by repeating multiplication and addition using a multiplier, and the input is used to produce the output and then used to produce the output by combining with the new input in the next cycle. The output generated by the cycle is one sample delay in the next cycle, making the final output using the inputs and the adder, and all the input and output data are combined using the multiplier and the data value read from the negative modulation memory, so the final result of the multiplier. Can be summed and finally output.

상기 덧셈기 입력을 만들기 위한, 현재 싸이클에서 읽어들인(입력된) 데이터를 테이블의 어드레스 입력으로 받아 출력된 데이타를 모든 웨이브가 공동으로 사용하기 위한 테이블 데이터 생성 수단 및 상기 테이블 출력을 덧셈기 입력으로 보내기 위한 회로를 구비할 수 있고, 상기 테이블을 한 가지 종류만으로 구성하기 위한 테이블 출력 데이터 조정 파라미터를 추출하고 적용할 수 있다.Table data generating means for receiving the data read from the current cycle (input) for making the adder input as an address input of a table, and sending the table output as an adder input for all waves to jointly use the output data. A circuit can be provided, and table output data adjustment parameters for constituting only one kind of the table can be extracted and applied.

상술한 음 저장 메모리, 음 크기 제어 데이타메모리, 음변조데이타메모리를 한 개의 메모리에 저장하고 읽어 낼 때 각각의 어드레스/데이타의 시간분배를 적절히 하여 서로 혼용되지 않게 하며, 동시에 읽으려고 할 때의 음색데이타(음 저장 메모리)에 최우선권의 순서를 부여할 수 있다. 그리고 상술한 기능을 내부 메모리의 음색데이타이건 외부기기에서 받는 웨이브 데이터이건 관계없이 모든 채널에 동일하게 모든 플로우를 공통으로 이용하여 최소한의 회로와 최소한의 계산량으로 처리할 수 있다. 또한 상술한 엔진음 깊이 값의 변화에 따른 적절한 음 변조 파라미터를 테이블 형태로 저장하여 프로세서의 계산량을 최소화한다. When the above-mentioned sound storage memory, sound volume control data memory, and sound modulation data memory are stored and read in one memory, the time distribution of each address / data is properly mixed so as not to be mixed with each other. The order of the highest priority can be given to the data (tone storage memory). The above functions can be processed with the minimum circuit and the minimum calculation amount by using all flows in common for all channels regardless of the tone data of the internal memory or the wave data received from an external device. In addition, by storing the appropriate sound modulation parameters according to the above-described change in the engine sound depth value in the form of a table to minimize the amount of computation of the processor.

그리고 상술된 기본 음색데이타가 전기차의 출하시 기본 내장된 메모리에 없을 때는 모바일기기를 이용하여 웹사이트에서 다운로드 받아 새로운 엔진음으로 사용할 수 있으며, 미디 관련 툴(tool)을 이용한 미디 포맷에 호환하는 엔진 음 편집방법과 동일한 편리한 엔진 음 제작 수단을 제공할 수 있다. When the basic tone data described above is not in the built-in memory of the electric vehicle, it can be downloaded from a website using a mobile device and used as a new engine sound. The engine is compatible with the MIDI format using a MIDI related tool. A convenient engine sound production means similar to the sound editing method can be provided.

도 3은 본 발명에 따른 자동차의 가상엔진음 발생장치 및 방법의 일실시예에 따른 엔진음을 생성하기 위한 전체적인 흐름도이다. 여기서 깊이값은 가속장치의 변화량과 엔진회전량의 변화량, 그리고 갑작스런 물체의 출현 등 음의 변화가 필요한 변수를 모두 합산한 것이다. 상기 깊이값은 실질적으로 IC 에 전달되는 엔진음 발생에 필요한 값이다. 3 is an overall flowchart for generating an engine sound according to an embodiment of the apparatus and method for generating a virtual engine sound of a vehicle according to the present invention. Here, the depth value is the sum of all the variables that need to change negatively, such as the amount of change in the accelerator, the amount of engine rotation, and the sudden appearance of an object. The depth value is substantially a value necessary for generating engine sound transmitted to the IC.

운전자나 센서를 통한 요구에 의해서 전기로 구동되는 이동장치의 엔진음 깊이값(Depth Value)을 전달 받으면(S310 단계), 내부에 저장된 내부톤을 의미하는 미디신호와 특수 효과용 외부톤을 의미하는 웨이브 인지를 판별한다.(S320 단계) 원래의 미디와 깊이값을 혼합하여 음 생성을 위한 미디 파라미터를 생성한다.(S330 단계) 외부음을 사용하는 웨이브이면 압축이 되었는지 순수한 비압축음인지를 또다시 판별하여 외부음을 저장 및 처리하고(S340단계), 미디신호이면 내부메모리에 저장된 내부음으로 처리한다.(S350단계) 음 생성과 합성을 통해 음을 발생하고(S360단계), 발생된 음을 변조하고 음 높이를 조절 한 후(S370단계) 엔진음을 출력한다.(S380단계) 여기서, 깊이값을 읽은 후(S310단계) 외부음 처리(S340단계)와 내부음 처리(S350단계) 및 음성생과 합성(S360단계)과 음변조와 음높이 조절(S370단계) 할 때 깊이값이 ON/OFF 될 수 있다.(S315단계)When receiving the engine sound depth value (Depth Value) of the electrically driven mobile device by the driver or the request through the sensor (step S310), it means a MIDI signal means an internal tone stored inside and an external tone for a special effect. In step S320, a MIDI parameter for sound generation is generated by mixing the original MIDI and the depth value. In step S330, it is determined whether the wave is compressed or purely uncompressed. The sound is again determined and stored (step S340), and if the MIDI signal is processed as an internal sound stored in the internal memory (step S350). The sound is generated by generating and synthesizing the sound (step S360). And modulate the pitch (step S370) and output the engine sound. (Step S380) Here, after reading the depth value (step S310), the external sound processing (step S340) and the internal sound processing (step S350) and Speech Life and Synthesis (S360) ) And negative modulation and there is a depth value to the pitch control (step S370) may be ON / OFF. (Step S315)

도 4는 본 발명에 따른, 미디정보의 블록단위 전송과 메모리 어드레스 페이즈 모듈레이션을 이용한 자동차 가상 엔진음 발생장치의 구성을 블록도로 나타낸 것이다. 엔진음 깊이값 전달부(410)는 엔진음 깊이값을 정해진 주기에 맞춰 읽어서 미디&깊이값 해석부(415)에 전달한다. 미디버퍼(420)는 엔진 구동시 엔진음 깊이에 해당하는 사운드(Sound)를 만들기 위해서 외부에서 미디 데이타를 받아 임시로 저장한다. 웨이브버퍼(425)는 엔진 구동시 엔진음 깊이에 해당하는 사운드(Sound)를 만들기 위해서 외부에서 효과음용 웨이브 데이타를 받아 임시로 저장한다.4 is a block diagram illustrating a configuration of a vehicle virtual engine sound generator using block-based transmission of MIDI information and memory address phase modulation according to the present invention. The engine sound depth value transmission unit 410 reads the engine sound depth value at predetermined intervals and transmits the engine sound depth value to the MIDI & depth value analysis unit 415. The MIDI buffer 420 temporarily receives the MIDI data from the outside in order to make a sound corresponding to the engine sound depth when the engine is driven. The wave buffer 425 temporarily stores the wave data for the effect sound from the outside in order to make a sound corresponding to the engine sound depth when the engine is driven.

외부명령 수신부(External command receiver, 430)는 외부에서 들어온 명령 중 미디에 관한 명령을 골라내서 내부에 필요한 채널넘버(개별 화음을 구분하기 위한 통로)나 미디파라미타를 해석하거나, 엔진음 depth 제어에 관한 명령을 분리하여 미디 파라미터와 분리한다. 외부명령 수신부(430)는 외부 호스트에서 써주는 데이타가 언제 시작되는지, 언제 끝나는지, 버퍼메모리를 미디버퍼(420)와 웨이브버퍼(425)로 꼭 나누어야 하는지, 버퍼를 나누지 않고 한가지로만 즉, 미디 데이터만 받을 것인지 웨이브 데이터만 받아도 되는지를 즉, 미디나 웨이브 중 한가지로만 사용해도 되는지를 결정하고, 수신된 데이타가 특정시간 동안 없으니 슬립모드로 가도 되는지, 슬립모드에서 깨어나려면 어떤 조건을 주어야 하는지, 사용자가 설정한 엔진음 깊이값에 맞는 미디 파라미터를 어떻게 조절해야 하는지 등을 결정하는 중개자 역할을 한다.The external command receiver 430 selects a MIDI command from among external commands and analyzes a channel number (path for distinguishing individual chords) or MIDI parameter from the inside, or controls engine sound depth control. Separate commands from MIDI parameters. When the external command receiver 430 starts and ends the data written by the external host, it is necessary to divide the buffer memory into the MIDI buffer 420 and the wave buffer 425. Whether you can only receive data or only wave data, that is, whether you can use only MIDI or wave, and whether you can go to sleep because there is no data received for a certain period of time, what conditions should be given to wake up from sleep mode, It acts as an intermediary to decide how to adjust the MIDI parameters for the engine sound depth set by the user.

버퍼어드레스생성기(Buffer address generator, 435)는 외부명령 수신부(430)에 의해서 결정된 데이터 출력속도나 내부 디지털신호처리기(DSP)에서 음을 만들 때 할당해야 할 내부 채널 중 몇 번째 채널로 할당 할 것인지 등을 결정하고 필요한 출력속도나 원하는 악기소리의 선택에 따라 외부버퍼의 어드레스를 결정한다. 버퍼어드레스생성기(435)는 외부와 정보를 교환하는 버퍼의 상태를 제어하고 버퍼의 크기를 최소화한다.The buffer address generator 435 may be assigned to the data output rate determined by the external command receiver 430 or to which channel of the internal channels to be allocated when the sound is generated by the internal digital signal processor (DSP). Determine the address of the external buffer according to the required output speed or the desired instrument sound. The buffer address generator 435 controls the state of the buffer exchanging information with the outside and minimizes the size of the buffer.

미디&깊이값 해석부(MIDI & depth command interpretation unit, 415)는 외부명령수신회로(430)(씨퀀서)를 통하여 명령의 시작과 끝을 판독하여 시작을 알리는 명령이면 외부버퍼를 읽는다. 이 때 버퍼의 내용에 따라 음악의 시작과 끝을 판단하고, 시작일 경우에는 내부 디에스피(DSP)에 비어있는 적당한 채널을 할당하여 소리의 시작을 알리고, 소리가 발생하는 도중에 소리의 크기 변화나 피치 변화, 필터 계수 가변 등의 변조가 필요할 때는 미디에서 지시하는 명령에 의하여 해당 채널의 변조회로에 정보를 전달한다. 이 때 엔진음 깊이값에 따라 크기 변화, 피치 변화, 필터계수 가변 등을 미리 정해 놓은 엔진음 깊이 테이블(depth table)에 따라 적절히 수정(update)해 주며 웨이브 신호가 온(ON) 되었을 때는 웨이브 신호용 채널을 별도로 할당하여 미디 신호와 분리하여 처리한 후 채널 전체의 출력을 합(addition)한다. The MIDI & depth command interpretation unit 415 reads the start and end of the command through the external command receiving circuit 430 (sequencer) and reads the external buffer if the command indicates the start. At this time, the start and end of the music is judged according to the contents of the buffer.In the case of start, the appropriate empty channel is allocated to the internal DSP to notify the start of the sound, and the sound size change or pitch change while the sound is generated. When modulation such as variable filter coefficients is required, information is transmitted to the modulation circuit of the corresponding channel by a command indicated by the MIDI. At this time, the size change, pitch change, filter coefficient variable, etc. according to the engine sound depth value are appropriately updated according to the predetermined engine depth table, and the wave signal is used when the wave signal is ON. The channels are allocated separately, processed separately from the MIDI signal, and the output of the entire channel is added.

가상 엔진음 매핑부(virtual Engine sound Mapper, 440)는 외부명령수신부(430)가 미디명령과 엔진음 깊이값 유무를 해석해서 적당한 데이터를 소리발생부의 하나인 메모리 어드레스 재생성부(445)에 전달할 때 해석된 명령에 따라 정해진 순서대로 필요한 정보를 써넣는 회로로서, 크기, 주파수, 할당채널번호, 소리의 길이 등의 정보를 전달한다. 이 때 이전 명령이 아직 수행되지 않았을 경우 다음 명령의 통제를 할 수 있는 통제회로가 필요하다. 통제회로는 이전에 받아들여진 명령의 수행이 아직 완성이 안됐을 때 통제조건이 발생되면 전체적으로 한 샘플링 싸이클을 기다렸다가 다음 명령을 수행 할 수 있도록 한다.
음 저장 메모리(465)는 음색저장메모리, 음크기제어데이타메모리, 음변조데이터메모리 등을 포함한다. 만일 세 가지의 데이터(음색, 크기조절, 음변조) 중 두 개 이상이 동일한 싸이클에 동시에 읽으려고 할 때는 음색저장메모리에 최우선권을 주고 음크기 및 음변조의 우선권은 임의로 한다.
The virtual engine sound mapper 440 analyzes the presence or absence of MIDI commands and engine sound depth values by the external command receiver 430 and transmits appropriate data to the memory address regenerator 445, which is one of the sound generators. It is a circuit that writes the necessary information in a predetermined order according to the interpreted command, and delivers information such as the magnitude, frequency, assigned channel number, and sound length. At this time, if a previous command has not yet been executed, a control circuit is needed to control the next command. The control circuitry waits for one sampling cycle as a whole and executes the next command if a control condition occurs when the execution of a previously accepted command is not yet complete.
The sound storage memory 465 includes a tone storage memory, a sound size control data memory, a sound modulation data memory, and the like. If two or more of the three types of data (voice, scale, tone modulation) are to be read simultaneously in the same cycle, the tone storage memory has the highest priority, and the tone size and tone modulation priority is arbitrary.

메모리 어드레스 재생성부(445)는 메모리 어드레스 페이즈를 변조하여 음색저장메모리, 음크기제어데이터메모리 및 음변조데이터메모리에 대한 어드레스를 생성한다.The memory address regenerating unit 445 modulates the memory address phase to generate addresses for the tone storage memory, the tone size control data memory, and the tone modulation data memory.

음 변조부(450)는 도 8에 도시된 바와 같이 디코더(840)와 어드레스페이즈생성기2(860), 음변조데이터메모리(880)에서 읽어 들인 데이터에 의해 음을 변조한다.The sound modulator 450 modulates the sound by the data read from the decoder 840, the address phase generator 2 860, and the sound modulation data memory 880, as shown in FIG.

음 인터폴레이터(455)는 디코더를 통하여 복원된 사운드 데이터(sound data)을 이용하여 원하는 피치(Pitch) 값을 만든다. XY 좌표평면에서 (x1, y1), (x2, y2) & (x3, y3) 점이 있을 때, 만일 (x1, y1), x2, & (x3, y3)을 알고 있다면 y2 값은 수학식 1에 의해 정해진다.The sound interpolator 455 uses the sound data reconstructed by the decoder to produce a desired pitch value. If there are (x1, y1), (x2, y2) & (x3, y3) points in the XY coordinate plane, then if we know (x1, y1), x2, & (x3, y3), the y2 value is Determined by

[수학식 1][Equation 1]

y2 = ((x2 - x1)(y3 - y1) / (x3 - x1)) + y1       y2 = ((x2-x1) (y3-y1) / (x3-x1)) + y1

음 저장 메모리 어드레스/외부 데이터 엑세스부(460)은 메모리 어드레스 재생성부(445)에 의해 정해진 어드레스를 독립된 채널들이 메모리를 읽고 쓰려고 할 때 충돌나지 않도록 시간 분할을 적절히 하고, 내부 데이타를 저장하고 있는 음 저장 메모리(465)와 외부에서 온 데이타를 저장하고 있는 미디버퍼(420) 웨이브버퍼(425)를 읽을 수 있도록 한다. The sound storage memory address / external data accessing unit 460 properly divides the address defined by the memory address regenerating unit 445 so that the independent channels do not collide when trying to read and write the memory, and stores the internal data. The storage memory 465 and the MIDI buffer 420 storing the data from the outside can be read.

DAC(D/A Converter, 470)는 최종적으로 출력되는 신호가 소리로 변환되기 위해서는 디지털신호를 아날로그신호로 변환한다. DAC(470)로 데이타를 전송해 주어야 하기 때문에 음변조부(450)에 의해 DAC(470)가 필요로 하는 신호형태로 변환된다. 오디오 출력부(475)는 생성된 음을 최종적으로 오디오로 출력한다. 음색메모리의 최소화와 복원시 최소한의 회로나 계산량을 사용하기 위하여 인코더를 이용하여 압축되어 저장된 음색데이타를 웨이브 형태로 복원하는 디코더부를 더 포함할 수 있다. 이때 음 인터폴레이터는 상기 디코딩된 음저장메모리의 데이터를 원하는 피치로 생성한다.The DAC (D / A Converter) 470 converts a digital signal into an analog signal in order to finally convert the output signal into sound. Since the data must be transmitted to the DAC 470, the sound modulator 450 converts the data into a signal form required by the DAC 470. The audio output unit 475 finally outputs the generated sound as audio. When minimizing and restoring the timbre memory, the decoder may further include a decoder to restore the timbre data, which is compressed and stored by using an encoder, in a wave form in order to use a minimum amount of circuits or calculations. In this case, the sound interpolator generates data of the decoded sound storage memory at a desired pitch.

도 5 는 본 발명에 따른 자동차의 가상엔진음 발생장치에서 가상엔진음 생성을 흐름도로 나타낸 것이다. 가상엔진음 발생장치는 항상 동작하고 있지는 않고 대부분의 시간을 준비 상태로 있다. 가상엔진음 발생장치가 전원절약모드에 있다가 동작의 필요성이 있다는 신호를 외부에서 받으면 전원절약 모드를 해제한다.(S510단계) 5 is a flowchart illustrating a virtual engine sound generation in a virtual engine sound generating apparatus of a vehicle according to the present invention. The virtual engine sound generator is not always running and is ready for most of the time. When the virtual engine sound generator is in the power saving mode and receives a signal from the outside indicating that there is a need for operation, the power saving mode is canceled (step S510).

내부적으로 준비상태가 되어 있는지 여부를 판단하여(S520단계), 준비상태가 되어 있지 않으면 준비가 될 때까지 기다리고, 준비가 되어 있다면 동작시작명령 전달로 동작 시작명령을 전달한다.(S530단계) 이 때 전달된 미디 정보를 버퍼에 저장하고(S540단계), 미디 파일의 끝인지 체크한다.(S550단계) 만일 미디 파일의 끝이면 내부적으로 정지명령을 수행한 후 엔진음 깊이 명령을 읽는다.(S580단계) 그러나 미디 파일의 끝이 아니면 버퍼의 끝인지를 판단하고(S560단계), 만일 끝이면 버퍼 어드레스를 처음으로 재설정하고(S570단계), 버퍼의 끝이 아니면 버퍼 어드레스를 순차적으로 증가시키면서 들어 온 미디 데이터를 저장한다.(S540단계) It determines whether it is internally ready (step S520), if it is not ready, waits until it is ready, and if it is ready, it transmits an operation start command by delivering an operation start command (step S530). When the received MIDI information is stored in the buffer (step S540) and the end of the MIDI file is checked (step S550). If the end of the MIDI file is internally executed after the stop command and the engine sound depth command is read. However, if it is not the end of the MIDI file, it is determined whether it is the end of the buffer (step S560). If it is the end, the buffer address is reset for the first time (step S570), and if it is not the end of the buffer, the buffer address is sequentially increased. Save the MIDI data (step S540).

도 6은 본 발명에 따른 자동차의 가상엔진음 발생장치에서 미리 정의된 미디 정보와 랜덤한 새로운 웨이브 정보를 버퍼에 기록하는 것을 흐름도로 나타낸 것이다. 자동차의 가상엔진음 발생장치의 동작이 시작되면 램(RAM) 메모리인 미디버퍼(420)와 웨이브버퍼(425)에 데이터를 전달하는 램 메모리 데이터 쓰기 기능이 시작된다.(S540단계) 일단 외부로부터 램메모리에 데이타가 들어오면(S610단계) 미디와 웨이브가 혼합 되어 있는지 판단하여(S620단계), 혼합되어 있으면 미디/웨이브 판단회로가 내부에서 매신호마다 미디인지 웨이브인지 확인한다.(S630단계) 확인 결과 미디이면(S640단계), 미디버퍼(420)에 쓰고(S650단계), 웨이브이면 웨이브버퍼(425)에 쓴다(S660단계). 만일 미디와 웨이브가 혼합되지 않은 신호이면, 즉 분리된 신호이면 미디인지 웨이브인지 판별한다.(S670단계) 판별결과 미디이면 미디버퍼에 직접 저장하고(S680단계), 웨이브 이면 웨이브버퍼에 외부에서 직접 저장한다.(S690단계) FIG. 6 is a flowchart illustrating recording of predefined MIDI information and random new wave information in a buffer in a virtual engine sound generator of an automobile according to the present invention. When the operation of the virtual engine sound generator of the vehicle starts, a RAM memory data writing function for transferring data to the RAM buffer 420 and the wave buffer 425 is started (step S540). When the data enters the RAM memory (step S610), it is determined whether the MIDI and the wave are mixed (step S620). If the data is mixed, the MIDI / wave determination circuit checks whether the MIDI or the wave is internal to every signal (step S630). If the result of the check is MIDI (S640), the MIDI buffer 420 is written (S650), and if the wave is written to the wave buffer 425 (S660). If the midi and the wave are not mixed, that is, if the separated signal is a midi or a wave is discriminated (step S670). If the result of the determination, the MIDI is stored directly in the MIDI buffer (step S680), and if the wave is directly outside the wave buffer Save. (Step S690)

미디와 웨이브가 혼합되어 있건, 분리되어 있건 간에 두 경우 모두 데이터의 한 블럭의 끝이 어디인지를 항상 판단하는 파일 끝 탐지회로에서 파일의 끝으로 판단되면(도 5의 S550단계), 정지명령을 내부음발생부에 전달한다.(도 5의 S580단계) 끝이 아니면 외부버퍼(420,425)의 끝이 왔는지 판단하고(도 5의 S560), 끝이면 다시 외부에 새로운 데이타를 요구하고(도 5의 S570단계), 끝이 아니면 연속해서 외부버퍼(420,425)에 데이타를 쓴다(write).In both cases, whether MIDI or wave is mixed or separated, if it is determined that the end of the file is detected by the end-of-file detection circuit that always determines the end of one block of data (step S550 of FIG. 5), the stop command is issued. The internal sound generator is transmitted to the internal sound generator. (Step S580 of FIG. 5) If it is not the end, it is determined whether the ends of the external buffers 420 and 425 have arrived (S560 of FIG. 5). In step S570), if not the end, write data to the external buffers 420 and 425 continuously.

도 7은 본 발명에 따른 자동차의 가상엔진음 발생장치에서 엔진음 깊이값에 따른 가상엔진음을 생성하기 위한 미디정보 전달을 흐름도로 나타내 것이다. 미디정보수신단은 버퍼에 있는 미디정보를 읽어서(S710단계), 외부에서 미디와 웨이브가 섞여서 들어오면 미디정보만 받아서 음생성부를 통해 음을 발생하고(S760단계), 음변조기를 이용해서 음을 변조한다.(S790단계) 7 is a flowchart illustrating transmission of MIDI information for generating a virtual engine sound according to an engine sound depth value in a virtual engine sound generator of an automobile according to the present invention. The MIDI information receiver reads the MIDI information in the buffer (step S710), and mixes the MIDI and the wave from the outside to receive only the MIDI information and generates sound through the sound generator (step S760), and modulates the sound using the sound modulator. (Step S790)

보다 구체적으로 설명하면, 온/오프 신호 또는 제어신호 판단회로는 들어온 미디 데이터가 온/오프 신호인지 제어신호인지 판단한다.(S720단계) 온/오프신호가 들어왔을 경우는 다시 온(ON)과 오프(OFF)를 판단한다(S730단계). 만일 온(ON)인 경우는 메모리 번지수를 현재의 번지수에 엔진음 깊이값에 따라 들어온 어드레스 페이즈 파라미터를 합산하여 새롭게 수정된 어드레스 페이즈를 만들어(S740단계), 음생성부에 전달하여(S750단계) 음을 발생한다.(S760단계) 만일 오프(소리를 제거하는 신호) 신호가 들어오면 오프 속도를 해석하여 어드레스 페이즈를 오프모드로 설정하여 음을 적절히 제거한다.(S735단계) In more detail, the on / off signal or the control signal determination circuit determines whether the incoming MIDI data is an on / off signal or a control signal (step S720). Determine OFF (step S730). If ON, the memory address is added to the current address and the address phase parameter input according to the engine sound depth value to make a newly modified address phase (step S740), and the sound address is transmitted to the sound generator (S750). (Step S760) If an OFF (signal for removing sound) signal is received, the OFF speed is analyzed and the address phase is set to the OFF mode to appropriately remove the sound (Step S735).

한편, S720단계에서 만일 제어신호가 들어왔을 경우는 음변조부에 전달하여 진행되는 음의 변조가 가능하도록 해준다. 음변조부에서는 소리의 발생이 된 시점부터 미디정보 중 음변조 명령에 따라서 음의 높낮이, 음색의 변화 등을 가능케 한다. 만일 엔진음이 On 되면(S725단계), 미디 제어 데이터를 엔진음 깊이 값을 참고하여 갱신 한 후(S770단계), 음 변조기로 최종 결정된 제어 데이터를 전달하고(S780단계), 엔진임이 OFF이면 바로 음변조기에 전달하여 음변조를 수행한다.(S790단계) On the other hand, in step S720, if the control signal is input to the sound modulator to proceed to the modulation of the sound is made possible. The sound modulator enables the height of the sound, the change of the tone, etc. according to the sound modulation command of the MIDI information from the time when the sound is generated. If the engine sound is turned on (step S725), the MIDI control data is updated with reference to the engine sound depth value (step S770), and the final control data is transmitted to the sound modulator (step S780). The sound modulator is transmitted to the sound modulator (step S790).

도 8은 본 발명에 따른 자동차의 가상엔진음 발생장치에서 소리를 만들기 위한 모든 파라미터가 함축된 정보를 받아 가상엔진음을 생성하는 구성을 블록도로 나타낸 것으로서, 미디입력단과 엔진음 깊이 값 판독부에서 들어온 변환신호에 맞는 음을 생성한다. 도 4의 어드레스 페이즈를 변조하는 어드레스 재생성부(445)는 음색데이터를 저장하는 음저장메모리(830)를 관장하는 어드레스페이즈 생성기1(810)과 음크기를 조절하는 음크기 제어데이터 메모리(864)를 관장하는 어드레스페이즈생성기2(860), 음변조 데이터 메모리(880)를 관장하는 어드레스페이즈생성기3(870), 엔진음 깊이 값에 따른 피치 조절 파라미터(820)와 미디의 원음 피치 파라미터(815)를 합산한 결과(825)와 어드레스 페이즈 생성기 1(810)의 출력이 최종 합산(820)되어 엔진 음 저장 메모리(830)의 최종 어드레스 값을 결정하는 유닛, 미디를 재현하기 위해서 악기의 특정 파라미타를 저장하고 있는 음색 데이터를 저장하는 음 저장 메모리(830), 사용자가 시간에 따라 음의 크기를 변화 시키고 싶을 때 이를 만족시키기 위한 음크기정보를 저장하고 있는 음크기 제어데이타 메모리(864), 저장된 음색을 재생할 때 음의 크기를 변화시키면서 원하는 음색을 다른 색깔로 변화시키고자 할 때 사용하는 음변조 데이터 메모리(880), 음색파라미타를 저장하고 있는 음 저장 메모리(830)에서 나오는 정보가 때로는 압축정보가 될 수도 있고 그대로 사용될 수가 있다. FIG. 8 is a block diagram illustrating a configuration of generating a virtual engine sound by receiving information implied with all parameters for making a sound in a virtual engine sound generator of an automobile according to the present invention. In the MIDI input stage and the engine sound depth value reading unit, FIG. Produces sound suitable for incoming conversion signal. The address regenerating unit 445 for modulating the address phase of FIG. 4 includes an address phase generator 1 810 that manages the sound storage memory 830 that stores the tone data, and a tone size control data memory 864 for adjusting the tone size. Address phase generator 2 860 that manages the, phase phase generator 3 870 that manages the sound modulation data memory 880, a pitch adjustment parameter 820 according to the engine sound depth value, and an original sound pitch parameter 815 of the MIDI. The sum of the result 825 and the output of the address phase generator 1 810 is finally summed 820 to determine the unit of the instrument to determine the final address value of the engine sound storage memory 830, and to reproduce the specific parameters of the instrument. Sound storage memory 830, which stores the tone data being stored, which stores sound size information for satisfying when the user wants to change the size of the sound over time. Control data memory 864, a tone modulation data memory 880 which is used to change a desired tone to a different color while reproducing a stored tone, and a tone storage memory for storing tone parameters. 830 may sometimes be compressed information or may be used as it is.

이때 압축된 데이터는 원상태로 복원을 해야 하며 이를 복원하는 회로인 디코더(840)는 압축테이블메모리1(841)과 압축테이블메모리2(846), 덧셈기(842), 출력지연기(844) 및 선택기(847)을 포함한다. 압축테이블메모리1(841)은 원 샘플에서 이전 샘플 값과 현재 샘플 값 간의 차에 관한 정보가 저장되어 있고, 압축테이블메모리2(846)에는 원샘플정보와 1:1로 맵핑되는 정보가 들어있다. 출력지연기(844)는 복원된 정보를 한 샘플 혹은 두 샘플 지연시켜 압축테이블메모리1(841)에서 나온 정보와 덧셈기(842)를 이용하여 출력으로 내보낸다. 복원된 정보는 선택기(847)를 이용하여 사용자의 의도에 맞는 정보만 골라서 내보낸다. 선택기(847)는 압축테이블메모리1(841), 압축테이블메모리2(846)와는 별도로 음색데이터를 저장하고 있는 음저장메모리(830)에서 출력된 정보를 그대로 외부로 보낼 수 있는 선택도 할 수 있다. At this time, the compressed data should be restored to its original state, and the decoder 840, which is a circuit for restoring the compressed data, includes a compression table memory 1841, a compression table memory 2 846, an adder 842, an output delayer 844, and a selector. 847. Compressed table memory 1 841 stores information on the difference between the previous sample value and the current sample value in the original sample, and compressed table memory 2 846 contains information mapped 1: 1 with the original sample information. . The output delayer 844 delays the recovered information by one or two samples and outputs the information from the compressed table memory 1841 and the adder 842 to the output. The reconstructed information is selected and exported using only the selector 847 to match the user's intention. The selector 847 may also select to send the information output from the sound storage memory 830 separately storing the tone data separately from the compression table memory 1841 and the compression table memory 2 846. .

어드레스페이즈생성기2(860)은 기준어드레스 1(862)를 외부에서 받아서 음크기를 조절하는 데이터를 저장하고 있는 음크기 제어 데이터메모리(864)에 들어있는 정보를 읽어 음크기설정연산기(866)를 통해서 계산된 음크기를 곱셈기1(850)에 보낸다. 이때 음크기제어데이터메모리(864)의 정보를 이용하여 어드레스패턴생성기(868)에서 다음에 필요한 어드레스를 계산한다. 여기서 계산된 어드레스는 기준어드레스1(862)과 함께 덧셈기(863)입력으로 들어가 덧셈을 한 후 이 덧셈기(863)의 출력이 최종적인 음크기제어데이터메모리(864)의 어드레스가 된다. 곱셈기1(850)은 디코더(840)의 출력과 어드레스페이즈생성기2(860)의 출력을 입력으로 받아 곱셈을 한 후 변조기(855)의 입력으로 보낸다. 변조기(855)는 음변조데이터메모리(880)의 출력과 곱셈기1(850)의 출력을 입력으로 받아 연산을 한 후 최종 출력인 DAC로 내보낸다. 음변조데이터메모리(880)는 어드레스페이즈생성기3(870)의 출력에 의해 어드레스가 결정되어 해당 어드레스에 맞는 데이타를 외부로 출력시킨다. The address phase generator 2 (860) receives the reference address 1 (862) from the outside and reads the information contained in the tone size control data memory (864) that stores data for adjusting the tone size. Send the calculated sound size to the multiplier 1 (850). At this time, the address pattern generator 868 calculates the next necessary address using the information in the tone size control data memory 864. The calculated address enters the adder 863 together with the reference address 1 862 to add, and then the output of the adder 863 becomes the address of the final tone size control data memory 864. The multiplier 1 850 receives the output of the decoder 840 and the output of the address phase generator 2 860 as inputs, multiplies them, and sends them to the input of the modulator 855. The modulator 855 receives the output of the sound modulation data memory 880 and the output of the multiplier 1 850 as an input, performs an operation, and sends it to the final output DAC. The sound modulation data memory 880 determines an address by the output of the address phase generator 3 870, and outputs data corresponding to the address to the outside.

도 9는 메모리 어드레스 페이즈 생성기1(810)의 세부적인 구성을 블록도로 나타낸 것이다. 미디에서 들어온 데이타가 엔진음을 온(On) 시키는 정보이면 해당 기준 음에 맞는 음색의 어드레스가 결정되며 외부제어 키변수1,2,... 등에 의해서 음색데이타를 저장하고 있는 음저장메모리(830)의 어드레스가 가변된다. 이때 외부제어 키변수기(920,930,940,...)에서 들어오는 변수는 음수가 될 수도 있고 양수가 될 수도 있다. 외부제어 키변수는 때로는 정현파의 형태로 변환될 수 있고, 1 비트의 정보로 부호(양수 와 음수)를 변환시킨다. 정현파형태로 원하는 음의 구현이 어려울 때는 정현파의 절대치만을 사용해서 구현할 수도 있고, 톱니파나 거형파, 구형파 등도 사용할 수 있다. 이때 외부제어키변수는 웨이브쉐이퍼테이블메모리1,2,3,... 에 저장해서 사용한다. 제어키변수는 기준키음 어드레스(910)와 곱셈기(950,960,...)를 통해서 곱해지고 각각 곱셈기의 출력은 덧셈기(970)를 거쳐서 최종 음색데이타메모리(980)의 어드레스가 된다. 9 is a block diagram illustrating a detailed configuration of the memory address phase generator 1 810. If the data coming from the MIDI information is the engine sound On, the address of the tone corresponding to the reference tone is determined, and the tone storage memory 830 stores the tone data by external control key variables 1, 2, ... ) Is changed. At this time, the variable coming from the external control key parameters 920, 930, 940, ... may be negative or positive. External control key variables can sometimes be converted to sinusoidal forms and convert the sign (positive and negative) into one bit of information. When it is difficult to implement the desired sound in the sine wave form, it can be implemented using only the absolute value of the sine wave, or a sawtooth wave, a giant wave, or a square wave can also be used. At this time, the external control key variables are stored in wave shaper table memory 1, 2, 3, ... and used. The control key variable is multiplied by the reference key tone address 910 and the multipliers 950, 960, ..., and the output of the multiplier becomes the address of the final tone data memory 980 via the adder 970, respectively.

도 10은 도 8의 음크기 제어 데이터메모리(864)에 들어가는 어드레스를 결정하기 위한 어드레스페이즈생성기 2(860)의 구조를 설명하기 위한 흐름도이다. 카운터 1값 변경회로(S1045)에서는 어드레스페이즈 생성기 2(860)에서 시간에 따른 어드레스 변화를 위한 계수값 들을 조절하는 기능을 하며 일정한 상수값 1을 외부에서 받아 카운터1 이라는 변수에서 매 싸이클별로 상수 1 값에 해당하는 값을 더하거나 빼주는 역할을 한다. 이 결과를 카운터 1이 0 인지를 판단하는 회로(S1020)에서 '0'이면 카운터 2값 변경회로(S1030)에서 또다른 상수2 값에 따라 카운터2의 값을 변경시킨다. 이 때 다음 싸이클부터는 카운터1의 값이 '0'이 되었으므로 새로운 값의 카운터1의 값을 외부에서 갱신하여 사용할 수도 있고, 맨 처음 사용한 값을 반복해서 그대로 사용할 수도 있다. 만일 카운터1의 값이 '0'이 아니면 본 플로우를 마친다. 카운터1의 값이 '0'이 아닌 경우에 수행하여 변경된 카운터2의 값은 카운터2값이 '0'인지를 판단하는 회로(S1040)에서 '0'이면 타이머1의 값을 또다른 정해진 상수3값에 의해서 덧셈이나 뺄셈을 통하여 변경시킨다. 이때 변경된 타이머1의 값이 '0'이면 크기변경을 위한 파라미터어드레스를 변경(S1070)하고 음크기 제어 데이터메모리(864)에서 새로운 파라미터(상수2,타이머1-S1080)를 읽어와 새로운 상수2와 타이머1을 새로이 갱신한다. 다음 싸이클 부터는 새로이 갱신된 상수2와 타이머1을 사용한다. 카운터2값이 '0'을 판단하는 회로(S1040)에서 만일 카운터2 값이 '0'이 아니면 카운터1 값을 맨 처음 값으로 재 갱신한 후 본 플로우를 끝내고 다음 싸이클에서 동일한 본플로우를 재 갱신된 카운터 1 값으로 다시 카운터1 값 변경회로(S1010)부터 수행 한다. 타이머1이 '0'인지를 판단하는 회로(S1060)에서 만일 타이머1의 값이 '0'이 아니면 타이머1 값을 처음값으로 재 갱신 한 후 플로우를 끝내고 다음싸이클에서 동일한 본플로우를 카운터1값 변경회로(S1045)부터 다시 수행한다. FIG. 10 is a flowchart for explaining the structure of address phase generator 2 860 for determining an address to be entered in the tone size control data memory 864 of FIG. In the counter 1 value changing circuit S1045, the address phase generator 2 860 adjusts the coefficient values for the address change over time, and receives a constant constant value 1 from the outside and the constant 1 for each cycle in the variable called counter 1. It adds or subtracts the value corresponding to the value. If the result is '0' in the circuit S1020 that determines whether the counter 1 is 0, the counter 2 value changing circuit S1030 changes the value of the counter 2 according to another constant 2 value. At this time, since the value of counter 1 becomes '0' from the next cycle, the value of counter 1 of the new value can be updated externally, or the first used value can be used repeatedly. If the value of counter 1 is not '0', this flow ends. If the value of the counter 2 changed by performing when the value of the counter 1 is not '0' is '0' in the circuit determining whether the counter 2 value is '0', the value of the timer 1 is changed to another predetermined constant 3 Change by addition or subtraction by value. At this time, if the changed value of timer 1 is '0', the parameter address for changing the size is changed (S1070) and a new parameter (constant 2, timer 1-S1080) is read from the tone size control data memory 864 and the new constant 2 and Update timer 1 anew. From the next cycle, the newly updated constant 2 and timer 1 are used. In the circuit S1040 determining that the counter 2 value is '0', if the counter 2 value is not '0', the counter 1 value is re-updated to the first value, then the flow ends and the same bone flow is renewed again in the next cycle. The counter 1 value is changed back to the counter 1 value change circuit (S1010). In the circuit 1060 for determining whether timer 1 is '0', if the value of timer 1 is not '0', after updating the timer 1 value to the initial value, the flow ends and the same bone flow is repeated in the next cycle. The operation is restarted from the change circuit S1045.

도 11 은 도 8의 어드레스 페이즈 생성기3(870)의 구성을 흐름도로 나타낸 것이다. 매 싸이클마다 음변조 변수 읽기(S1110)를 수행하여 음변조데이타메모리(880)에서 변조를 하기 위한 변수를 읽는다. 변조정지 온(On)을 체크하고(S1115), 음변조메모리의 어드레스를 계속 변경시킬 것인가를 판단하여 계속 변경시킬 필요가 없는 경우는 바로 종료하고, 변조정지 온이 아닌 경우는 타이머2값 변경회로에 의해서 정해진 값에 따라 타이머2의 값을 변화 시킨다.(S1120) 변경된 타이머2 값이 '0'인가를 판단하는 회로에서 타이머2값을 판단해서(S1125), 만일 '0'이면 종료하고, '0'이 아니면 타이머3의 값을 정해진 값에 따라 변화시킨다.(S1130) 이후에 증가/감소를 판단하는 회로에서 증가해야 한다면(S1135) 음변조데이타메모리 어드레스 증가회로에서 어드레스를 증가시키고(S1145), 감소해야 한다면 음변조데이타메모리 어드레스감소회로에서 어드레스를 감소시킨다.(S1140) 이런 증감회로9S1145, S1140)에 의해서 음변조데이타메모리어드레스를 갱신하고(S1150), 타이머3 값을 판단하는 회로에 의해서 현재의 타이머3 값이 '0'인가를 판단하여(S1155) '0'이면 새로운 파라미터(타이머2값,타이머3값)를 읽어서(S1160), 다음 싸이클부터는 새로이 갱신된 타이머2 값과 타이머3 값으로 시작한다. 새로이 읽어 들인 정보 중에 변조정지를 할 것인지 안할 것인지 하는 정보가 들어 있어(S1165), 변조정지를 할 것이면 변조 정지 온(ON)을 셋팅하고(S1170), 계속 변조를 할 것이면 바로 종료한다. 만일 타이머3 값을 판단하는 과정(S1155)에서 타이머3 값이 '0'이 아니면 타이머2 값을 원래(맨 처음) 타이머2 값으로 재 갱신한 후(S1175), 종료한다.FIG. 11 is a flowchart illustrating the configuration of the address phase generator 3 870 of FIG. 8. In each cycle, the modulation data is read (S1110), and the modulation data is read from the modulation data memory 880. If modulation stop on is checked (S1115), it is determined whether to continuously change the address of the sound modulation memory, and if it is not necessary to continuously change it, the operation is terminated immediately. The timer 2 value is changed according to the value determined by (S1120). The circuit for determining whether the changed timer 2 value is '0' determines the timer 2 value (S1125). If it is not 0 ', the value of timer 3 is changed according to a predetermined value (S1130). If it is to be increased in a circuit for determining an increase / decrease later (S1135), an address is increased in a negative modulation data memory address increasing circuit (S1145). In this case, the address of the modulated data memory address reduction circuit is decremented (S1140). The modulated data memory address is updated by the increase / decrease circuits 9S1145 and S1140 (S1150). By the judging circuit, it is determined whether the current timer 3 value is '0' (S1155). If it is '0', a new parameter (timer 2 value, timer 3 value) is read (S1160), and the newly updated timer 2 is performed from the next cycle. Start with value and timer3 value. The newly read information includes information on whether to stop modulation or not (S1165). If modulation stop is to be performed, the modulation stop ON is set (S1170). If the timer 3 value is not '0' in the process of determining the timer 3 value (S1155), the timer 2 value is re-updated to the original (first) timer 2 value (S1175), and then ends.

도 12는 입력된 엔진음에 속도변환을 주기 위한 전단계로서 교차신호변조음을 만들어 놓기 위한 구성도 이다. 입력된 오리지날 웨이브를 주기A, 주기B, 주기C 라고 하면(S1210), 웨이브 속도를 느리게 할 것인지 빠르게 할 것인지를 먼저 판단해서 속도를 느리게 하고자 하면 주기A를 교차변조를 위해서 입력된 원음의 맨 처음 샘플 데이터부터 1/N, 2/N, ... N/N을 곱해서 교차변조된 주기A를 만든다.(S1222) 역으로 주기B를 교차변조하기 위해서는 오리지날 주기B(원래의 주기)의 웨이브에 맨처음 샘플 데이터부터 N/N,(N-1)/N, ... 1/N을 곱해서 교차변조된 주기B를 만든다.(S1224) 교차변조된A(S1222) 와 교차변조된B(S1224)를 각 샘플별로 더해서(ADDITION, S1226) 교차변조된A' 신호를 만든다.(S1228) 같은 주파수로 속도만 느리게 하는 S1220 의 최종 결과는 주기 A'(S1228)이 된다. 이렇게 새로 발생된 A'를 웨이브 속도를 느리게 하는 중간 매개체로 사용하여 최종 출력할 데이터는 주기A, 주기A', 주기B, 주기C(S1230)을 실제 출력으로 내 보낸다. 12 is a configuration diagram for making a cross signal modulation sound as a pre-step for giving a speed change to the input engine sound. If the original wave is inputted as period A, period B, and period C (S1210), it is necessary to first determine whether the wave speed is to be slow or fast, and to slow it down. The sample data is multiplied by 1 / N, 2 / N, ... N / N to form a cross-modulated period A. (S1222) Inversely, to cross-modulate period B, the wave of the original period B (original period) The first sample data is multiplied by N / N, (N-1) / N, ... 1 / N to make a cross-modulated period B. (S1224) Cross-modulated A (S1222) and cross-modulated B (S1224) ) Is added to each sample (ADDITION, S1226) to produce a cross-modulated A 'signal. (S1228) The final result of S1220, which only slows down at the same frequency, is period A' (S1228). The newly generated A 'is used as an intermediate medium for slowing the wave speed, and the final data is outputted as period A, period A', period B, and period C (S1230) as actual outputs.

그러나 웨이브 속도를 빠르게 하고 싶은 구조가 필요할 때는 주기A를 교차변조를 위해서 맨처음 웨이브부터 오리지날웨이브(원음)에 맨 처음 샘플 데이터부터 N/N,(N-1)/N, ... 1/N 을 곱해서 교차변조된 주기A(S1242)를 만든다. 역으로 주기B를 교차변조하기 위해서는 오리지날 주기B의 웨이브에 맨처음 샘플 데이터부터 1/N, 2/N, ... N/N을 곱해서 교차변조된 주기B(S1244)를 만든다. 교차변조된A(S1242) 와 교차변조된(S1244)를 각 샘플별로 더해서(ADDITION, S1246), 교차변조된 주기 B'(S1248) 신호를 만든다. 같은 주파수로 속도만 빠르게 하는 S1240 의 최종 결과가 주기 B'(S1248) 이 된다. 이렇게 새로 발생된 B'를 웨이브속도를 느리게 하는 중간 매개체로 사용하여 최종 출력할 데이터는 주기B',주기C(S1250)을 실제 출력으로 내 보낸다. However, if you need a structure that wants to make the wave speed faster, for the cross modulation of period A, the first wave from the first wave to the original wave (the original sound), the first sample data from N / N, (N-1) / N, ... 1 / Multiply by N to make a cross-modulated period A (S1242). Conversely, in order to cross-modulate period B, the wave of original period B is multiplied by 1 / N, 2 / N, ... N / N from the first sample data to form cross-modulated period B (S1244). The cross-modulated A (S1242) and the cross-modulated (S1244) are added for each sample (ADDITION, S1246) to generate a cross-modulated period B '(S1248). The final result of S1240, which only speeds up at the same frequency, is period B '(S1248). Using the newly generated B 'as an intermediate medium for slowing the wave speed, the data to be finally outputted has periods B' and C1 (S1250) as actual outputs.

도 13은 음변조 수단을 위한 변조기(Modulator flow diagram for sound modulation)를 보인 것이다. 입력단(500)에 들어오는 데이터는 도 8의 곱셈기(850)의 출력이 들어오며 곱셉기1(510)의 출력은 입력들의 Level를 조절하는 역할을 한다. 입력[n](501)은 현재 싸이클 일 때의 곱셈기1(510)의 출력이고 입력[n-1](502)은 한 싸이클 이전의 곱셈기1(510)의 출력이다. 입력[n-2](503)은 한 싸이클 이전의 입력[n-1]을 가리킨다. 즉, 한 싸이클이 끝나면 ... 입력[n-3]을 입력[n-2] 으로 갱신하고 , 입력[n-2]는 입력[n-1]값으로 갱신 , 입력[n-1]의 값은 입력[n]으로 갱신한다는 의미이다. 갱신된 값들은 다음 싸이클에서 사용된다. 곱셈기조합회로(510)는 현재 입력[n] 과 이전 입력들[n-1] , [n-2] , [n-3] , ...]을 음변조데이타 메모리에서 읽어 들인 변조 지수와 곱셈기(511,512,513,514,515....)를 이용하여 곱한다. 각각의 곱해진 결과들은 덧셈기(540)의 입력으로 들어간다. 도 13의 출력(550)인 출력[n]은 매 싸이클마다 새로이 만들어져 나오며 다음 싸이클에서는 출력[n-1]로 되어 곱셈기군2(530)에서 곱셈기들의 입력값들로 쓰인다. 이때, 매 싸이클마다 출력[n](550)은 현싸이클 일 때의 덧셈기(540)의 출력이고 출력[n-1](521)은 한 싸이클 이전의 덧셈기(550)의 출력이다. 출력[n-2](522)는 한 싸이클 이전의 입력[n-1]을 가리킨다. 즉, 한 싸이클이 끝나면 출력[n-3]을 출력[n-2] 으로 갱신하고, 출력[n-2]는 출력[n-1]값으로 갱신, 입력[n-1]의 값은 입력[n]으로 갱신한다는 의미이다. 갱신된 값들은 다음 싸이클에서 사용된다. 곱셈기조합회로(510)는 현재 입력값[n] 과 이전 입력값들[n-1] , [n-2] , [n-3] , ...]을 음변조데이타메모리에서 읽어 들인 변조지수와 곱셈기(511,512,514,514,515....)를 이용하여 곱한다. 각각이 곱해진 결과들은 덧셈기(540)의 입력으로 들어간다. 출력값들[n-1] , [n-2] , [n-3] , . . . 과 곱해지는 변조지수 b1i , b2i , b3i , ... 등은 어드레스 페이즈 생성기(address phase generator) 3에서 생성된 어드레스에 따라 음변조 데이터 메모리(880)에서 출력된 계수값들이다. 도 13에서 나온 출력[n]이 상기 도 4의 DAC 회로(470)의 입력으로 들어간다.FIG. 13 shows a modulator flow diagram for sound modulation. Data entering the input terminal 500 is the output of the multiplier 850 of Figure 8, the output of the multiplier 1 (510) serves to adjust the level of the input. Input [n] 501 is the output of multiplier 1 510 at the current cycle and input [n-1] 502 is the output of multiplier 1 510 one cycle before. Input [n-2] 503 points to input [n-1] one cycle earlier. That is, after one cycle ... input [n-3] is updated to input [n-2], input [n-2] is updated to input [n-1], input [n-1] The value means update with input [n]. The updated values are used in the next cycle. The multiplier combination circuit 510 is a modulator and multiplier that reads the current input [n] and previous inputs [n-1], [n-2], [n-3], ...] from the negative modulation data memory. Multiply by using (511,512,513,514,515 ....). Each multiplied result enters an input of an adder 540. The output [n], which is the output 550 of FIG. 13, is newly generated every cycle, and the output [n−1] is used in the next cycle to be used as input values of the multipliers in the multiplier group 2 530. At this time, for each cycle, the output [n] 550 is the output of the adder 540 at the current cycle and the output [n-1] 521 is the output of the adder 550 before one cycle. Output [n-2] 522 points to input [n-1] one cycle earlier. That is, after one cycle, output [n-3] is updated to output [n-2], output [n-2] is updated to output [n-1], and input [n-1] is input. Update to [n]. The updated values are used in the next cycle. The multiplier combination circuit 510 reads the current input value [n] and previous input values [n-1], [n-2], [n-3], ...] from the modulation modulation memory. And multiply by using multipliers (511,512,514,514,515 ....). The results of each multiplication enter the input of the adder 540. Outputs [n-1], [n-2], [n-3],. . . The modulation indices b1i, b2i, b3i, ..., which are multiplied by, are coefficient values output from the sound modulation data memory 880 according to the address generated by the address phase generator 3. Output [n] from FIG. 13 enters the input of the DAC circuit 470 of FIG.

도 14는 사용자가 설정하는 엔진 깊이 값 에 따라 엔진음 발생장치의 입출력(input/output)이 변화되는 전체적 구성을 블록도로 나타낸 것이다. 이 구성은 미디 음을 구현하기 위해서 미리 정해진 원래의 미디 변수(1410) 에 의한 정상적인 소리 발생부분(514)과 엔진음 깊이의 변수에 따라 정해진 음 크기, 피치 , 오른쪽/왼쪽 스피커 레벨, 필터, 음 길이 등의 기 설정된 변조 파라피터를 받아 음을 구현하는 부분(1456)으로 나누어 진다. 이를 위해 엔진음 깊이 값(1420)의 입력단, 계산량을 줄이기 위해서 원음 미디 변수값과 엔진음 깊이 변수 1의 공통된 부분을 분류하여 각각 통합해 주는 믹서 부분(1452), 특수 효과음(1440)이 필요할 때 특수 효과음의 크기를 조절하기 위해서 필요한 변수인 엔진음 깊이 변수2(1430)를 받아들이는 곱셈기(1458), 이 곱셈기(1458)는 8 비트로 256 단계의 크기를 나타낼 수 있고, 미디로 만들어진 음과 합해질 때 오버 플로우를 방지하는 역할도 한다. 미디음 생성기(1454)는 편곡 작업된 엔진음을 음악의 배경음 처럼 합성해 내는 생성기이며, 엔진음이 필요한 화음수(Polyphony)에 따라 회로나 CPU 의 계산량의 크기가 결정되며 최소 8 화음에서 최대 32 화음이면 충분하다. 또한 미디음 생성기(1454)는 수많은 엔진 종류음에 필요한 음을 저장하기 위해서 막대한 양의 메모리가 필요하기 때문에 계산량을 최소화 하고 메모리를 최대한 줄일 수 있는 ADPCM 압축방식이 사용되었다. 특수 효과음을 구현하기 위한 웨이브 음 발생기는 MIDI 의해 정의되지 않은 음을 구현하기 위한 외부 음 발생장치로 외부에서 들어온 음을 엔진 깊이 값의 변화에 따라 음색, 크기, 음의 길이 등을 자유롭게 조절하여 어떠한 소리도 구현 가능한 엔진음 발생기이다. 합성기(1459)는 미디에 의해 정의되어 미디음 생성기(1454)에 의해 만들어진 음과 웨이브 음 생성기(1456)에 의해 만들어진 음을 덧셈(addition) 해 주는 오퍼레이터 이다. 결국 최종 출력(Output)은 이 합쳐진 두 개 음이 엔진음 생성기의 최종 출력(1460)이 되는 것이다. FIG. 14 is a block diagram illustrating an overall configuration in which input / output of an engine sound generator is changed according to an engine depth value set by a user. This configuration consists of the normal loudness part 514 by the original MIDI variable 1410, and the loudness, pitch, right / left speaker level, filter, and tone determined by the variable of the engine sound depth in order to realize the MIDI sound. Receives a predetermined modulation parameter such as the length is divided into a part (1456) for implementing the sound. To this end, when the input stage of the engine sound depth value 1420, a mixer portion 1452 and a special effect sound 1440, which classify and integrate the common parts of the original sound MIDI variable value and the engine sound depth variable 1 to reduce the amount of calculation, are needed. A multiplier (1458) that accepts the engine sound depth variable 2 (1430), which is a variable needed to adjust the size of the special sound effect, which can represent 256 steps in 8 bits and sums with MIDI-generated notes. It also prevents overflow when it does. The MIDI generator 1454 is a generator for synthesizing the arranged engine sounds like the background sounds of music, and the amount of calculation of the circuit or the CPU is determined according to the polyphony required for the engine sounds. Chords are enough. In addition, since the midi generator 1454 needs a huge amount of memory to store the sounds necessary for a large number of engine types, the ADPCM compression method is used to minimize the computation and minimize the memory. Wave sound generator to implement special sound effects is an external sound generator to realize sound not defined by MIDI. It is an engine sound generator that can implement sound. The synthesizer 1459 is an operator that adds the sound defined by the MIDI sound generated by the MIDI sound generator 1454 and the sound generated by the wave sound generator 1456. Eventually, the final output is that these two combined sounds become the final output 1460 of the engine sound generator.

본 발명은 도면에 도시된 일 실시 예를 참고로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.Although the present invention has been described with reference to one embodiment shown in the drawings, this is merely exemplary, and those skilled in the art will understand that various modifications and equivalent other embodiments are possible therefrom. Therefore, the true technical protection scope of the present invention will be defined by the technical spirit of the appended claims.

110 : 보행자 115 : 모바일 단말기
120 : 가상엔진음 합성 IC 130 : 전기앰프
140 : 스피커 150 :가속 페달
160 : 페달 암(arm) 170 : 스프링
180 : 전달링 190 : 보행자 접근인식 센서
250 : 스피커 820 : 덧셈기
825 : 덧셈기 840 : 디코더
842 : 덧셈기 850 : 곱셈기 1
863 : 덧셈기 950 : 곱셈기
960 : 곱셈기 970 : 곱셈기
500 : 입력단 510 : 곱셈기1
511, 512, 513, 514, 515 : 곱셈기
520 : 피드백 출력단 530 : 곱셈기2
531, 532, 533, 534, 535 : 곱셈기
540 :덧셈기
110: pedestrian 115: mobile terminal
120: virtual engine sound synthesis IC 130: electric amplifier
140: speaker 150: acceleration pedal
160: pedal arm 170: spring
180: transfer ring 190: pedestrian approach recognition sensor
250: speaker 820: adder
825: Adder 840: Decoder
842: Adder 850: Multiplier 1
863: Adder 950: Multiplier
960: multiplier 970: multiplier
500: input stage 510: multiplier 1
511, 512, 513, 514, 515: multipliers
520: feedback output stage 530: multiplier 2
531, 532, 533, 534, 535: multiplier
540: Adder

Claims (7)

자동차의 주행 및 정차시 운전자가 작동하는 엑셀레이터의 변화량과 엔진 회전값(Depth)의 조절에 따른 가상 엔진음 발생 장치로서,
상기 운전자의 요구에 엘셀레이터를 발로 누르거나 보행자 접근시 필요한 해당하는 엔진음 깊이값을 수신하여 내부톤인지 외부 톤인지를 판별하여 가상엔진음을 생성하라는 명령을 전달하는 제어부;
미리 편집된 엔진음 파라미터가 저장된 가상 엔진음 저장 메모리를 읽어서 적절한 엔진음을 발생시켜 스피커를 통하여 엔진음을 출력하는 가상엔진음 발생부;
파일에서 미디나 웨이브 중 하나의 파일만 사용할 때는 미디나 웨이브가 한 가지 형태로만 사용 가능토록 하여 외부장치의 능률을 보장하는 인터페이스 수단; 및
하나의 메모리로 미디와 웨이브 파일이 분리가 되어 있을 때는 두 가지 신호를 동시처리 가능하도록 메모리를 분리할 수 있는 메모리 분리수단을 포함하고,
상기 메모리 분리수단은 미디신호와 웨이브신호가 하나의 파일로 섞여 있을 때는 미디와 웨이브 사이에 특정신호를 추가하여 내부에서 두 가지 신호를 구분하여 내부버퍼에 미디와 웨이브를 따로 저장하고, 파일이 분리되어 있을 때는 외부에서 내부의 분리되어 있는 버퍼에 미디와 웨이브를 직접 쓰게 하고,
상기 깊이값은 가속장치의 변화량과 엔진회전량의 변화량, 및 갑작스런 물체의 출현으로 인한 엔진음의 변화가 필요한 변수를 포함하고,
가상엔진음 발생부는 엔진음이나 효과음을 미디 규정을 이용하여 미디신호의 순차적인 블록단위 전송과 외부 웨이브사운드(wave sound)의 블록단위전송에 의한 미디와 웨이브의 혼합처리를 하면서 엔진음 깊이 값에 따라 음색을 가변하는 것을 특징으로 하는 엑셀레이터의 압력에 따라 가변적으로 발생되는 자동차의 가상 엔진음 생성장치.
As a virtual engine sound generating device according to the amount of change of the accelerator and the engine rotation value (Depth) that the driver operates when driving and stopping the car,
A control unit for transmitting a command to generate a virtual engine sound by determining whether an internal tone or an external tone is received by receiving a corresponding engine sound depth value required when the driver presses the accelerator or the pedestrian approaching the driver's request;
A virtual engine sound generator configured to read a virtual engine sound storage memory in which engine sound parameters are pre-edited and generate appropriate engine sounds to output engine sounds through a speaker;
Interface means for ensuring the efficiency of an external device by using only one type of MIDI or wave in the file when the MIDI or wave is used in one form; And
When the MIDI and wave files are separated into a single memory, it includes a memory separating means for separating the memory so that the two signals can be processed simultaneously,
When the MIDI signal and the wave signal are mixed into a single file, the memory separating means adds a specific signal between the MIDI and the wave to separate the two signals from the inside, and stores the MIDI and the wave in the internal buffer separately, and the file is separated. If you do, you can write MIDI and Wave directly to the internal buffer from the outside,
The depth value includes a change amount of the change in the accelerator and the amount of engine rotation, and a variable that requires a change in the engine sound due to the sudden appearance of the object,
The virtual engine sound generator generates an engine sound or an effect sound using a MIDI specification to sequentially process the MIDI signal in units of blocks and mix MIDI and waves by block units of external wave sounds. Virtual engine sound generating device for a vehicle that is generated variably according to the pressure of the accelerator, characterized in that the tone is variable according to.
제1항에 있어서,
엔진음을 웨이브 파일을 이용하여 만들 때 미디 파라미터와 동일한 특성을 갖는 웨이브용 파라미터를 사용하여 미디음과 웨이브음을 혼합 하기 쉽게 파일을 만드는 수단; 및
엑셀레이터의 가변시나 보행자의 과도한 접근시 안전을 위해 엔진음 깊이 값의 변화량을 읽어 테이블 형태로 미리 정해놓은 파라미터를 음 발생장치에 전달하기 위한 수단을 포함하는 것을 특징으로 하는 엑셀레이터의 압력에 따라 가변적으로 발생되는 자동차의 가상 엔진음 생성장치.
The method of claim 1,
Means for creating a file that makes it easy to mix MIDI and wave sounds using parameters for waves having the same characteristics as MIDI parameters when making engine sounds using wave files; And
And a means for reading the amount of change in the engine sound depth value and transmitting a predetermined parameter in the form of a table to the sound generator for safety when the accelerator is variable or when the pedestrian is excessively approached. The virtual engine sound generator of the generated car.
삭제delete 제1항에 있어서, 상기 가상엔진음 발생부는
원하는 톤을 만들기 위해서 선택된 주파수 변수에 따른 음색데이타가 들어있는 메모리의 어드레스 입력을 시간에 따른 변화를 만들 수 있는 어드레스변수를 곱해서 크기를 변화시켜 음을 만들어 내면서 음색을 변화시키는 음색변조부; 및
상기의 음색변화를 위해 동일한 곱셈기와 덧셈기를 여러 개 중첩시켜 어드레스변화를 시간에 따라 실시간으로 생성하며, 계산량을 줄이기 위해 상기 어드레스 변화를 시간에 따라 주기적으로 반복하는 어드레스 변조부를 포함하고,
상기 음색변조부와 어드레스 변조부에 의한 출력을 입력으로 받아 특정 메모리에 있는 데이터 값에 의해서 입력의 크기를 변화시키고, 특정 메모리에 시간에 따라 변화시키는 크기의 양과 시간 간격이 들어있고, 상기 메모리 값에 따라 음량이 변하고, 상기 최종적인 음량의 변화가 곱셈기에 의해서 변화되고,
음량이 변화된 음의 음색을 변화하고자 할 때 사용된 음변조 데이타가 들어있는 음변조 메모리의 어드레스가 특정음색에 따라 변화되고, 수정 어드레스의 결정은 내부의 감산기와 덧셈기를 이용하고 덧셈이나 뺄셈을 하는데 순수하게 시간변수에 따라 덧셈과 뺄셈의 시간 간격과 양이 결정되고 상기 결정된 음변조메모리의 어드레스가 음변조 데이타를 읽어 들이는데 사용되고,
결정된 음변조 데이타의 사용방법은 출력을 입력으로 받아 음변조 메모리에서 읽어 들인 데이타를 곱셈기를 이용해서 곱셈과 덧셈을 반복하여 출력을 만들고, 상기 입력은 출력을 만드는데 사용된 후에 다음 싸이클에서 새로 들어온 입력과 조합을 하여 출력을 만드는데 사용되고, 상기 출력도 현재 싸이클에서 생성된 출력이 다음 싸이클에서 한 샘플 지연이 되서 입력들과 덧셈기를 이용하여 최종출력을 만들고, 상기 모든 입출력 데이타는 음변조 메모리에서 읽은 데이타값과 곱셈기를 이용하여 결합이 돼서 곱셈기의 최종결과가 모두 합산이 되어 최종 출력이 되는 것을 특징으로 하는, 엑셀레이터의 압력에 따라 가변적으로 발생되는 자동차의 가상 엔진음 생성장치.
The method of claim 1, wherein the virtual engine sound generating unit
A tone modulator for changing a tone while generating a sound by multiplying an address input of a memory including tone data according to a selected frequency variable to a desired tone by multiplying an address variable for making a change over time; And
In addition, the same multiplier and the adder is overlapped for generating the tone change in real time to generate an address change in real time, and includes an address modulator for periodically repeating the address change in time to reduce the amount of calculation,
Receives the output of the tone modulator and the address modulator as an input, and changes the size of the input according to the data value in a specific memory, and contains the amount and time interval of the size to change with time in the specific memory, the memory value The volume changes in accordance with, the final change in volume is changed by a multiplier,
When you want to change the tone of the sound whose volume is changed, the address of the tone modulation memory containing the tone modulation data used is changed according to the specific tone, and the correction address is determined by adding or subtracting using the internal subtractor and adder. The time interval and amount of addition and subtraction are determined purely according to the time variables, and the determined address of the modulation memory is used to read the modulation data,
The method of using the modulated sound modulation data is to take an output as an input and repeat the multiplication and addition by using a multiplier to read the data read from the sound modulation memory, and the input is used to generate an output, and then the input newly input in the next cycle. Is used to create an output, and the output is also the output generated in the current cycle with a sample delay in the next cycle, creating the final output using inputs and an adder, and all the input and output data is read from the negative modulation memory. The virtual engine sound generating device of a vehicle that is variablely generated according to the pressure of an accelerator, characterized in that the final output of the multiplier is summed up by combining the values and the multiplier to add up.
제1항에 있어서, 상기 가상엔진음 발생부는
사용자가 설정한 깊이 값을 정해진 주기에 맞춰 읽어서 미디&깊이값 해석부에 전달해주는 엔진음 깊이값 전송부;
외부장치와 정보를 교환하면서 내부에 미디정보를 전달하는 미디버퍼;
외부장치와 정보를 교환하면서 내부에 효과음용 웨이브 정보를 전달하는 웨이브버퍼;
외부에서 들어오는 명령이 일반 음에 관한 것인지, 깊이값에 관한 것인지, 정지명령인지 시작명령인지를 판별하며 명령의 순서에 따라 순차적으로 명령을 저장하고 내부 상태를 외부에 전달하는 외부명령수신부;
외부와 정보를 교환하는 버퍼의 상태를 제어하고 버퍼의 크기를 최소화하기 위한 버퍼어드레스생성기;
외부에서 들어온 명령 중 미디에 관한 명령을 골라내서 내부에 필요한 채널넘버나 미디 파라미터를 해석하거나, 깊이 제어에 관한 명령을 분리하여 미디 파라미터(MIDI Parameter)와 분리하는 미디&깊이값 해석부;
미디명령과 사운드에 관한 명령을 내부 디에스피(DSP)에 각 채널에 해당하는 변수를 분리하며 순차적으로 번호를 붙여서 전달하여 소리의 발생을 채널별 간섭이 없이 시작할 수 있도록 명령을 전달하는 가상엔진음 매핑부;
미디명령과 깊이값 명령을 전달받아 원하는 소리가 저장되어 있는 메모리의 매 사이클에 따른 위치 데이타를 읽는 메모리 어드레스 재생성부;
음색데이타, 음크기조절데이타,음변조데이타, 깊이값 파라미터를 하나의 메모리에 저장하기 위한 음저장 메모리 어드레스/외부데이터 액세스부;
매 사이클 마다 정해진 어드레스에 의해 읽혀진 데이타를 상기 미디&깊이 값 해석부에서 오는 특정 명령에 따라 소리를 변조시키는 음 변조부;
음색데이타, 음크기조절데이타, 음변조데이타, 엔진음 깊이 파라미터, 음변조정보가 저장되어 있는 음저장 메모리;
음저장메모리의 데이터를 원하는 피치로 생성하는 음 인터폴레이터; 및
최종적으로 재생된 데이터를 외부로 출력시키는 디지털 출력부를 포함하는 것을 특징으로 하는, 엑셀레이터의 압력에 따라 가변적으로 발생되는 자동차의 가상 엔진음 생성장치.
The method of claim 1, wherein the virtual engine sound generating unit
An engine sound depth value transmission unit reading a depth value set by a user at a predetermined period and transmitting the same to a MIDI & depth value analysis unit;
A MIDI buffer for transmitting MIDI information therein while exchanging information with an external device;
A wave buffer for transmitting the wave information for the sound effect therein while exchanging information with an external device;
An external command receiving unit which determines whether the external command is related to a general sound, a depth value, a stop command or a start command, and sequentially stores the command and transmits an internal state to the outside according to the order of the command;
A buffer address generator for controlling the state of the buffer exchanging information with the outside and minimizing the size of the buffer;
A MIDI & depth value analysis unit that selects a command related to MIDI from an external command and analyzes a channel number or MIDI parameter necessary for the internal or separates a command related to depth control from a MIDI parameter;
Virtual engine sound mapping that transmits commands for MIDI commands and sounds by separating the variables corresponding to each channel to internal DSP and sequentially numbering them so that sound generation can be started without interference for each channel. part;
A memory address regenerating unit receiving the MIDI command and the depth value command and reading position data according to each cycle of the memory in which desired sounds are stored;
A sound storage memory address / external data access unit for storing timbre data, tone control data, tone modulation data, and depth value parameters in one memory;
A sound modulator for modulating a sound according to a specific command from the MIDI & depth value analyzer, the data read by a predetermined address every cycle;
A sound storage memory for storing tone data, tone control data, tone modulation data, engine sound depth parameter, and tone modulation information;
A sound interpolator for generating data of a sound storage memory at a desired pitch; And
And a digital output unit for finally outputting the reproduced data to the outside.
제5항에 있어서,
음색메모리의 최소화와 복원시 최소한의 회로나 계산량을 사용하기 위하여 인코더를 이용하여 압축되어 저장된 음색데이타를 웨이브 형태로 복원하는 디코더부를 더 포함하고,
상기 음 인터폴레이터는
상기 디코딩된 음저장메모리의 데이터를 원하는 피치로 생성하는 것을 특징으로 하는, 엑셀레이터의 압력에 따라 가변적으로 발생되는 자동차의 가상 엔진음 생성장치.
The method of claim 5,
It further includes a decoder for restoring the tone data compressed and stored by using the encoder in the form of a wave in order to use the minimum amount of circuit or calculation amount when minimizing and restoring the tone memory,
The sound interpolator is
And generating data of the decoded sound storage memory at a desired pitch, wherein the virtual engine sound generating device of the vehicle is generated variably according to the pressure of the accelerator.
삭제delete
KR1020190123862A 2019-10-07 2019-10-07 Apparatus and method for generating virtual engine sound for virtual for car according to Accelerator depth variation KR102051542B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190123862A KR102051542B1 (en) 2019-10-07 2019-10-07 Apparatus and method for generating virtual engine sound for virtual for car according to Accelerator depth variation

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190123862A KR102051542B1 (en) 2019-10-07 2019-10-07 Apparatus and method for generating virtual engine sound for virtual for car according to Accelerator depth variation

Publications (1)

Publication Number Publication Date
KR102051542B1 true KR102051542B1 (en) 2020-01-08

Family

ID=69154484

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190123862A KR102051542B1 (en) 2019-10-07 2019-10-07 Apparatus and method for generating virtual engine sound for virtual for car according to Accelerator depth variation

Country Status (1)

Country Link
KR (1) KR102051542B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023011911A1 (en) * 2021-08-05 2023-02-09 Bayerische Motoren Werke Aktiengesellschaft Sound experience generator

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005219716A (en) * 2004-02-09 2005-08-18 Pioneer Electronic Corp Pseudo sound generating device, vehicle, pseudo sound generating method and pseudo sound generating program
JP2015082029A (en) * 2013-10-23 2015-04-27 株式会社Access False sound providing system including false sound generation device and false sound reproducing device

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005219716A (en) * 2004-02-09 2005-08-18 Pioneer Electronic Corp Pseudo sound generating device, vehicle, pseudo sound generating method and pseudo sound generating program
JP2015082029A (en) * 2013-10-23 2015-04-27 株式会社Access False sound providing system including false sound generation device and false sound reproducing device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023011911A1 (en) * 2021-08-05 2023-02-09 Bayerische Motoren Werke Aktiengesellschaft Sound experience generator

Similar Documents

Publication Publication Date Title
US6191349B1 (en) Musical instrument digital interface with speech capability
EP2657931B1 (en) Ensemble system, audio playback apparatus and volume controller for the ensemble system
JPH04249298A (en) Processing system of midi data file and method of processing midi data in electronic computer system
EP3379527A1 (en) Musical sound generation device, musical sound generation method and electronic instrument
CN108630178B (en) Musical tone generating apparatus, musical tone generating method, recording medium, and electronic musical instrument
JPH06222776A (en) Generation method of audio signal
KR102051542B1 (en) Apparatus and method for generating virtual engine sound for virtual for car according to Accelerator depth variation
US6756532B2 (en) Waveform signal generation method with pseudo low tone synthesis
KR102227110B1 (en) Apparatus for generating virtual engine sound for car using accelerator depth variation, midi and wave sound
US20050056144A1 (en) Computer music input system, processing method and keyboard apparatus
US20060027078A1 (en) Scrambling method of music sequence data for incompatible sound generator
KR20060002941A (en) Optimisation of midi file reproduction
JPH09330079A (en) Music sound signal generation device and music sound signal generation method
KR100481939B1 (en) Apparatus for Sound Generation Method using block transfer of MIDI Information and phase modulation of Memory address
JP7159583B2 (en) Musical sound generating device, musical sound generating method, musical sound generating program, and electronic musical instrument
US6127617A (en) Effector differently controlling harmonics and noises to improve sound field effect
JP3334165B2 (en) Music synthesizer
US20010044663A1 (en) Sound controller
JP6851578B2 (en) Musical tone generator, musical tone generator, musical tone generator and electronic musical instrument
JP3027831B2 (en) Musical sound wave generator
JP2005338126A (en) Device, method, and program for editing musical performance data
EP1017039B1 (en) Musical instrument digital interface with speech capability
JP2858314B2 (en) Tone characteristic control device
KR20060004874A (en) Implementation of multi-poly function sound generation method including midi wave and autolooping wave and time variance wave and original wave, which use block crossfading and phase modulation of memory address in non-memory semiconductor
JPH1074088A (en) Sound source system using computer software and acoustic waveform data generating method

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant