Musical sound generating apparatus and control method of musical sound generating apparatus
Patent Information
- Application Number
- CN202111253308.3
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Priority Date
- 2020-10-28
- Filing Date
- 2021-10-27
- Publication Date
- 2026-09-18
- Estimated Expiration
- 2041-10-27
AI Technical Summary
但是,如果发生比ECC的可纠错比特数多的比特数的错误,则无法纠正数据
[0010] According to the present invention, in the event of a soft error, normal musical waveform data can be reproduced even without restarting the power supply.
Smart Images

Figure CN114495875B_ABST
Abstract
Description
Technical Field
[0001] This invention relates to a musical tone generation device and a control method for the musical tone generation device. Background Technology
[0002] Patent Document 1 describes a music tone generation device that pre-stores waveform data in NAND flash memory, reads the waveform data from it via a buffer into a waveform memory, and reproduces it. The device reads the waveform data stored in the NAND flash memory in page units without interrupting the CPU, and can replenish the sample buffer of the waveform memory. A series of waveform data is stored in consecutive pages in a NAND flash memory capable of high-speed page access. The page number to be read first is set and pre-read into the buffer. Before the read is completed, the next page to be read is read into the buffer. Thereafter, after each page is read, the page number is incremented by 1, and the sample of that page number is read into the buffer and reproduction continues.
[0003] Patent Document 1: Japanese Patent Application Publication No. 2010-224077
[0004] Soft errors are errors caused by the ionization of cosmic ray particles, which rewrite data in volatile storage devices. Error-correcting codes (ECCs) are codes used to correct data errors. However, if an error occurs with more bits than the number of correctable bits in an ECC, the data cannot be corrected.
[0005] When power is turned on, if a soft error causes an error exceeding the number of error-correctable bits of ECC in the music generation device that transmits all music waveform data from non-volatile storage to volatile storage, the power must be restarted and all music waveform data must be transmitted from non-volatile storage to volatile storage again. Otherwise, the correct music waveform data cannot be reproduced. Summary of the Invention
[0006] The purpose of this invention is to reproduce normal musical waveform data even without restarting the power supply in the event of a soft error.
[0007] The musical tone generation apparatus of the present invention comprises: a non-volatile storage device for storing musical tone waveform data; a volatile storage device; and a control unit that controls the transmission of musical tone waveform data from the non-volatile storage device to the volatile storage device when the power is turned on, and reads the musical tone waveform data from the volatile storage device when instructed to reproduce musical tone, and controls the rewriting of corrected musical tone waveform data into the volatile storage device when an error is detected in the read musical tone waveform data, or transmits normal musical tone waveform data corresponding to the detected erroneous musical tone waveform data from the non-volatile storage device to the volatile storage device.
[0008] The control method for the musical tone generation device of the present invention is characterized in that the musical tone generation device has a non-volatile storage device for storing musical tone waveform data; and a volatile storage device, the control method comprising the following steps: performing control such that, when the power is turned on, musical tone waveform data is transmitted from the non-volatile storage device to the volatile storage device; when instructed to reproduce musical tone, reading musical tone waveform data from the volatile storage device; and performing control such that, if an error is detected in the read musical tone waveform data, the musical tone waveform data after correcting the detected error is rewritten to the volatile storage device, or the normal musical tone waveform data corresponding to the detected error is transmitted from the non-volatile storage device to the volatile storage device.
[0009] Invention Effects
[0010] According to the present invention, in the event of a soft error, normal musical waveform data can be reproduced even without restarting the power supply. Attached Figure Description
[0011] Figure 1 This is a block diagram illustrating an example of the configuration of the musical tone generation device according to this embodiment.
[0012] Figure 2 This is a flowchart illustrating the control method of the musical tone generation device according to this embodiment.
[0013] Label Explanation:
[0014] 100 Musical Tone Generator
[0015] 101CPU
[0016] 102 Audio Source LSI
[0017] 103 Non-volatile storage devices
[0018] 104 volatile storage devices
[0019] 105 keyboards
[0020] 106 Digital-to-Analog Converter
[0021] 107 Audio System
[0022] 108 operating components
[0023] 109 monitor
[0024] 110 Program ROM
[0025] 111 working RAM
[0026] 112 bus. Detailed Implementation
[0027] Figure 1 This is a block diagram illustrating a structural example of the musical tone generation apparatus 100 according to this embodiment. The musical tone generation apparatus 100 includes a CPU 101, a sound source LSI 102, a non-volatile storage device 103, a volatile storage device 104, a keyboard 105, a digital-to-analog converter 106, an audio system 107, an operating unit 108, a display 109, a program ROM 110, a working RAM 111, and a bus 112. The musical tone generation apparatus 100 is, for example, an electronic musical instrument.
[0028] CPU 101 is a central processing unit. Program ROM (Read-Only Memory) 110 stores the program. Working RAM (Random Access Memory) 111 serves as the working area of CPU 101. CPU 101 controls audio source LSI 102 by loading the program stored in program ROM 110 into working RAM 111 and executing the program loaded into working RAM 111. Audio source LSI 102 is a type of control unit.
[0029] Keyboard 105 has multiple white keys and multiple black keys, and outputs note activation messages to the sound source LSI 102 through the player's key presses. The note activation message is a musical tone reproduction indication signal, containing the note number and tempo. The note number indicates the pitch. The tempo indicates the intensity of the sound based on the key press speed.
[0030] The control unit 108 includes a power switch, volume adjustment buttons, tone selection buttons, etc. The display 109 displays the setting parameters of the music tone generation device 100, etc.
[0031] The non-volatile storage device 103 is, for example, flash memory such as eMMC (embedded Multi Media Card). The non-volatile storage device 103 stores musical waveform data and the corresponding error correction code (hereinafter referred to as ECC). An 8-bit ECC is set for each 64 bits (1 word) of musical waveform data. The 8-bit ECC is capable of correcting errors of less than one correctable bit in the 64-bit musical waveform data. The correctable bit count is, for example, 1 bit.
[0032] Alternatively, the non-volatile storage device 103 may store only musical waveform data, and the sound source LSI 102 may generate ECC based on the musical waveform data stored in the non-volatile storage device 103.
[0033] The volatile storage device 104 is, for example, DDR SDRAM (Synchronous Dynamic Random Access Memory), a type of DRAM (Dynamic Random Access Memory). Alternatively, the volatile storage device 104 can also be SRAM (Static Random Access Memory). The audio source LSI 102 is capable of burst-transmitting musical waveform data and ECC of two or more words of burst length to the volatile storage device 104. That is, the audio source LSI 102 continuously and at high speed transmits musical waveform data and ECC of a burst length of one word to the volatile storage device 104 based on one address information. The burst length is, for example, 4 words or 8 words.
[0034] When the power is turned on by turning on the power switch of the operating unit 108, the audio source LSI 102 is controlled by transmitting musical waveform data and ECC from the non-volatile storage device 103 to the volatile storage device 104.
[0035] When a note is input from the keyboard 105, the sound source LSI 102 reads the musical tone waveform data and ECC from the volatile storage device 104. Then, based on the ECC, the sound source LSI 102 detects for errors in the musical tone waveform data. If errors are found, the sound source LSI 102 corrects the detected errors based on the ECC and outputs the corrected musical tone waveform data to the digital-to-analog converter 106. Conversely, if no errors are found in the musical tone waveform data, the sound source LSI 102 outputs the read musical tone waveform data to the digital-to-analog converter 106.
[0036] The digital-to-analog converter 106 converts the digital musical waveform data input from the sound source LSI 102 into an analog musical waveform signal, and outputs the analog musical waveform signal to the audio system 107.
[0037] The audio system 107 has an amplifier and a speaker. The amplifier amplifies the analog musical waveform signal, and the speaker emits sound according to the amplified musical waveform signal.
[0038] Figure 2 This is a flowchart illustrating the control method of the music tone generation device 100. In step S201, when the power is started by turning on the power switch of the operating unit 108, the sound source LSI 102 is controlled to transmit music tone waveform data and the corresponding ECC from the non-volatile storage device 103 to the volatile storage device 104. The volatile storage device 104 stores the music tone waveform data and the ECC.
[0039] Furthermore, when the non-volatile storage device 103 only stores musical waveform data, the sound source LSI 102 generates an ECC corresponding to the musical waveform data based on the musical waveform data stored in the non-volatile storage device 103, and writes the musical waveform data and the ECC corresponding to the musical waveform data into the volatile storage device 104.
[0040] Next, in step S202, the sound source LSI 102 determines whether a musical tone reproduction instruction has been given based on the key operation of the keyboard 105. The sound source LSI 102 remains in standby mode until a musical tone reproduction instruction is given. If a musical tone reproduction instruction is given, the process proceeds to step S203.
[0041] Next, in step S203, the sound source LSI102 reads the musical waveform data and the corresponding ECC from the volatile storage device 104.
[0042] Next, in step S204, the sound source LSI 102 uses the read ECC to detect whether there are errors in the read musical waveform data. The musical waveform data stored in the volatile storage device 104 may experience soft errors. For example, the sound source LSI 102 uses an 8-bit ECC to detect whether there are errors of less than 2 bits in the 64-bit musical waveform data. If there is a 1-bit error in the musical waveform data, the sound source LSI 102 can use the 8-bit ECC to correct the 1-bit error in the 64-bit musical waveform data. If there is a 2-bit error in the musical waveform data, the sound source LSI 102 cannot use the 8-bit ECC to correct the 1-bit error in the 64-bit musical waveform data.
[0043] If there are no errors in the read musical waveform data, the sound source LSI 102 proceeds to step S206. In step S206, the sound source LSI 102 performs reproduction processing on the read musical waveform data. Specifically, the sound source LSI 102 outputs the read musical waveform data to the digital-to-analog converter 106. The digital-to-analog converter 106 converts the digital musical waveform data input from the sound source LSI 102 into an analog musical waveform signal, and outputs the analog musical waveform signal to the audio system 107. The audio system 107 amplifies the analog musical waveform signal using an amplifier and emits sound through a speaker according to the amplified musical waveform signal. Afterward, the sound source LSI 102 returns to step S202.
[0044] Furthermore, in step S204, if the sound source LSI102 has fewer than 1 correctable bit error in the read musical waveform data, proceed to step S205. Alternatively, if the sound source LSI102 has more than 1 correctable bit error in the read musical waveform data, proceed to step S209.
[0045] In step S205, the sound source LSI102 uses the read ECC to correct the erroneous musical waveform data, and then proceeds to steps S206 and S207.
[0046] In step S206, the corrected musical waveform data is reproduced. Specifically, the sound source LSI 102 outputs the corrected musical waveform data to the digital-to-analog converter 106. The digital-to-analog converter 106 converts the digital musical waveform data input from the sound source LSI 102 into an analog musical waveform signal, and outputs the analog musical waveform signal to the audio system 107. The audio system 107 amplifies the analog musical waveform signal using an amplifier and emits sound through a speaker according to the amplified musical waveform signal. Afterward, the sound source LSI 102 returns to step S202.
[0047] In step S207, the sound source LSI102 records the address of the detected erroneous musical waveform data in the volatile storage device 104, and proceeds to step S208.
[0048] In step S208, the sound source LSI102 rewrites the above-mentioned error-corrected musical waveform data and the ECC corresponding to the musical waveform data into the volatile storage device 104 based on the address recorded in the volatile storage device 104, and returns to step S202.
[0049] Assuming that the sound source LSI 102 does not perform steps S207 and S208, the 64-bit musical waveform data stored in the volatile storage device 104 will not be corrected and will therefore be in a state of 1-bit error. Without processing, errors may occur in other bits within the same 64-bit musical waveform data, resulting in a total of 2-bit errors. Thus, the sound source LSI 102 will be unable to correct the musical waveform data, potentially generating fatal noise.
[0050] Therefore, to prevent the accumulation of bit errors within the same 64-bit musical waveform data, when a 1-bit error is detected, the sound source LSI 102 records the address of the error in step S207, and corrects the error in the musical waveform data in step S208, rewriting the corrected musical waveform data into the volatile storage device 104. Furthermore, recording the error address in step S207 is based on the following reason: when the sound source LSI 102 continuously detects errors, it temporarily stores and saves the addresses of these errors, and rewrites the corrected musical waveform data sequentially based on these addresses, thereby preventing situations where processing is not timely.
[0051] In step S209, the sound source LSI 102 generates replacement musical tone waveform data, and proceeds to steps S206 and S210. The replacement musical tone waveform data can be generated, for example, by the following first to fourth methods. In the first method, the sound source LSI 102 directly uses the musical tone waveform data with a 2-bit error read in step S203 as the replacement musical tone waveform data. In the second method, the sound source LSI 102 uses the musical tone waveform data processed in the previous step S206 as the replacement musical tone waveform data for this step. In the third method, the sound source LSI 102 uses the interpolated data of the musical tone waveform data processed in the previous step S206 and the predetermined musical tone waveform data processed in the next step S206 as the replacement musical tone waveform data for this step. In the fourth method, the sound source LSI 102 uses the musical tone waveform data obtained by performing prediction calculations based on multiple musical tone waveform data processed in the previous step S206 as the replacement musical tone waveform data for this step.
[0052] In step S206, the replacement musical waveform data is reproduced. Specifically, the sound source LSI 102 outputs the replacement musical waveform data to the digital-to-analog converter 106. The digital-to-analog converter 106 converts the digital musical waveform data input from the sound source LSI 102 into an analog musical waveform signal, and outputs the analog musical waveform signal to the audio system 107. The audio system 107 amplifies the analog musical waveform signal using an amplifier and emits sound through a speaker according to the amplified musical waveform signal. Afterward, the sound source LSI 102 returns to step S202.
[0053] In step S210, the sound source LSI102 records the address of the detected erroneous musical waveform data in the volatile storage device 104, and proceeds to step S211.
[0054] In step S211, the sound source LSI 102, based on the recorded address in the volatile storage device 104, controls the transfer of normal musical tone waveform data corresponding to the detected erroneous musical tone waveform data and the corresponding ECC from the non-volatile storage device 103 to the volatile storage device 104, and returns to step S202. The volatile storage device 104 stores the erroneous musical tone waveform data and the ECC.
[0055] In addition, when the non-volatile storage device 103 only stores musical waveform data, the sound source LSI 102 generates ECC based on the musical waveform data stored in the non-volatile storage device 103, and writes the musical waveform data and ECC to the volatile storage device 104.
[0056] In the case where the non-volatile storage device 103 or the volatile storage device 104 is of the type that performs burst transmission in multiple word units, it is difficult to transmit only the normal one word's musical waveform data corresponding to the musical tone data of the one word with the error from the non-volatile storage device 103 to the volatile storage device 104.
[0057] Therefore, in step S211, the sound source LSI 102 is controlled in the following manner: normal musical tone waveform data corresponding to the erroneous musical tone waveform data is transmitted from the non-volatile storage device 103 to the volatile storage device 104 in units of the least common multiple of the minimum number of words transmitted by the non-volatile storage device 103 and the minimum number of words transmitted by the volatile storage device 104. For example, when the non-volatile storage device 103 outputs in units of 3 words and the volatile storage device 104 inputs in units of 2 words, the least common multiple of 3 words and 2 words is 6 words. The sound source LSI 102 is controlled to transmit normal musical tone waveform data from the non-volatile storage device 103 to the volatile storage device 104 in units of 6 words.
[0058] In step S201, when the audio source LSI 102 is powered on, in order to transmit a large amount of musical waveform data as quickly as possible, it is controlled to transmit musical waveform data and ECC in units of a relatively large number of first digits from the non-volatile storage device 103 to the volatile storage device 104. In contrast, in step S211, in order to transmit a small amount of musical waveform data at high speed, the audio source LSI 102 is controlled to transmit normal musical waveform data from the non-volatile storage device 103 to the volatile storage device 104 in units of a second number of digits less than the first number of digits.
[0059] Additionally, in step S211, the audio source LSI 102 can also be controlled to transmit normal musical waveform data from the non-volatile storage device 103 to the volatile storage device 104 in units of the first number of words. By transmitting data in the same first number of words in steps S201 and S211, the audio source LSI 102 can unify the transmission method, simplify transmission control, and reduce costs.
[0060] In addition, in step S208, the audio source LSI102 can also undergo the same processing as in step S211.
[0061] Furthermore, the audio source LSI102 performs steps S208 and S211 at a timing that does not interfere with the reproduction processing in step S206. This enables real-time reproduction processing.
[0062] As described above, the musical waveform data stored in the volatile storage device 104 may experience soft errors. If a 1-bit error is detected in the musical waveform data stored in the volatile storage device 104, the sound source LSI 102 corrects the error and rewrites the corrected musical waveform data into the volatile storage device 104, thus ensuring correct musical reproduction. Furthermore, if a 2-bit error is detected in the musical waveform data stored in the volatile storage device 104, the sound source LSI 102 cannot correct the error, but even without reconnecting power, it controls the transmission of the erroneous musical waveform data from the non-volatile storage device 103 to the volatile storage device 104, thus enabling normal musical reproduction processing afterwards.
[0063] It should be noted that the above embodiments are merely specific examples illustrating the implementation of the present invention, and the technical scope of the present invention should not be limited by these embodiments. That is, the present invention can be implemented in various forms without departing from its technical concept or its main features.
Claims
1. A musical tone generating device, characterized in that, have: A non-volatile storage device for storing musical sound waveform data; Volatile storage devices; as well as The control unit is configured to control the transmission of musical waveform data from the non-volatile storage device to the volatile storage device upon power-on. It is further configured to control the reading of musical waveform data from the volatile storage device when instructed to reproduce musical sounds, determine whether an error is detected in the read musical waveform data, and if an error is detected, determine whether the error can be corrected. The control unit is further configured to ensure that if an error is detected in the read musical waveform data and the error can be corrected, the error can be corrected. Next, the musical waveform data containing the detected error is corrected, and the corrected musical waveform data is reproduced. The corrected musical waveform data is then rewritten to the volatile storage device. If the error cannot be corrected, a replacement musical waveform data is generated. Then, the normal musical waveform data corresponding to the musical waveform data containing the detected error is transmitted from the non-volatile storage device to the volatile storage device, and the replacement musical waveform data is reproduced. The alternative musical waveform data is: musical waveform data whose error cannot be corrected, musical waveform data obtained through the previous reproduction process, interpolation data of musical waveform data obtained through the previous reproduction process and the predetermined musical waveform data for the next reproduction process, or musical waveform data obtained by predictive calculation based on multiple musical waveform data obtained through reproduction processes prior to the previous reproduction process.
2. The musical tone generating device according to claim 1, characterized in that, The non-volatile storage device stores the musical waveform data and the error correction code corresponding to the musical waveform data. The control unit performs control such that, when the power is turned on, musical waveform data and the error correction code corresponding to the musical waveform data are transmitted from the non-volatile storage device to the volatile storage device. When instructed to reproduce musical sounds, the error correction code is used to detect whether there are errors in the read musical waveform data. If there are errors in the read musical waveform data, the error correction code is used to correct the musical waveform data with the errors.
3. The musical tone generating device according to claim 1, characterized in that, When the power is turned on, the control unit generates an error correction code corresponding to the musical waveform data based on the musical waveform data stored in the non-volatile storage device, writes the musical waveform data and the error correction code corresponding to the musical waveform data into the volatile storage device, and uses the error correction code to detect whether there is an error in the read musical waveform data when instructed to reproduce musical sounds. If there is an error in the read musical waveform data, the error correction code is used to correct the musical waveform data with the error.
4. The musical tone generating device according to claim 2 or 3, characterized in that, The control unit controls the reading of the musical waveform data such that if there are fewer than the number of correctable bits in the read musical waveform data, the corrected musical waveform data is rewritten to the volatile storage device; if there are more than the number of correctable bits in the read musical waveform data, the normal musical waveform data corresponding to the erroneous musical waveform data is transferred from the non-volatile storage device to the volatile storage device.
5. The musical tone generating device according to claim 4, characterized in that, If the read musical waveform data contains an error of less than the number of correctable bits, the control unit performs error correction and then reproduces the read musical waveform data. If the read musical waveform data does not contain any errors, the control unit performs the reproduction of the read musical waveform data.
6. The musical tone generating device according to claim 4, characterized in that, The control unit controls the transmission of normal musical waveform data corresponding to the erroneous musical waveform data from the non-volatile storage device to the volatile storage device, in the case where there are more bits of error than the number of error-correctable bits in the read musical waveform data. The transmission is carried out in units of the least common multiple of the minimum number of transmission words of the non-volatile storage device and the minimum number of transmission words of the volatile storage device.
7. The musical tone generating device according to claim 4, characterized in that, The control unit controls the transmission of musical waveform data from the non-volatile storage device to the volatile storage device in units of a first number of words when the power is turned on. It also controls the transmission of normal musical waveform data from the non-volatile storage device to the volatile storage device in units of a second number of words, less than the first number of words, if the read musical waveform data contains more errors than the number of correctable bits.
8. The musical tone generating device according to claim 4, characterized in that, The control unit controls the transmission of musical waveform data from the non-volatile storage device to the volatile storage device in units of a first number of words when the power is turned on, and controls the transmission of normal musical waveform data from the non-volatile storage device to the volatile storage device in units of the first number of words if there are more bits of errors than the number of error-correctable bits in the read musical waveform data.
9. The musical tone generating apparatus according to any one of claims 1 to 3, characterized in that, The control unit performs control such that, in the event of an error detected in the read musical waveform data, it records the address of the detected erroneous musical waveform data, rewrites the erroneous musical waveform data after error correction to the volatile storage device, or transmits the normal musical waveform data corresponding to the detected erroneous musical waveform data from the non-volatile storage device to the volatile storage device.
10. A control method for a musical tone generation device, characterized in that, The musical tone generation device has a non-volatile storage device for storing musical tone waveform data; and Volatile storage devices The control method for the musical sound generation device includes the following steps: Control is performed so that, upon power-on, musical waveform data is transmitted from the non-volatile storage device to the volatile storage device. When instructed to reproduce musical sounds, the musical sound waveform data is read from the volatile storage device; Determine whether an error is detected in the read musical waveform data; If the error is detected, determine whether the error can be corrected; as well as The system controls the process as follows: if an error is detected in the read musical waveform data and the error can be corrected, the musical waveform data containing the detected error is corrected; the corrected musical waveform is then reproduced; the corrected musical waveform data is rewritten to the volatile storage device; if the error cannot be corrected, replacement musical waveform data is generated; then, normal musical waveform data corresponding to the musical waveform data containing the detected error is transmitted from the non-volatile storage device to the volatile storage device; and the replacement musical waveform data is then reproduced. The alternative musical waveform data is: musical waveform data whose error cannot be corrected, musical waveform data obtained through the previous reproduction process, interpolation data of musical waveform data obtained through the previous reproduction process and the predetermined musical waveform data for the next reproduction process, or musical waveform data obtained by predictive calculation based on multiple musical waveform data obtained through reproduction processes prior to the previous reproduction process.
Citation Information
Patent Citations
Tone generation apparatus
JP2010224077A
Tone generation apparatus
US20110232460A1
Method of correcting error, suitable for storage device
US5740177A