KR100874439B1 - Voice decoding device based on microcontroller and voice decoding method using same - Google Patents

Voice decoding device based on microcontroller and voice decoding method using same Download PDF

Info

Publication number
KR100874439B1
KR100874439B1 KR1020070030904A KR20070030904A KR100874439B1 KR 100874439 B1 KR100874439 B1 KR 100874439B1 KR 1020070030904 A KR1020070030904 A KR 1020070030904A KR 20070030904 A KR20070030904 A KR 20070030904A KR 100874439 B1 KR100874439 B1 KR 100874439B1
Authority
KR
South Korea
Prior art keywords
microcontroller
voice
voice data
data
direct memory
Prior art date
Application number
KR1020070030904A
Other languages
Korean (ko)
Other versions
KR20080088230A (en
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 KR1020070030904A priority Critical patent/KR100874439B1/en
Publication of KR20080088230A publication Critical patent/KR20080088230A/en
Application granted granted Critical
Publication of KR100874439B1 publication Critical patent/KR100874439B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/366Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using a centralised polling arbiter
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S1/00Two-channel systems
    • H04S1/007Two-channel systems in which the audio signals are in digital form

Abstract

마이크로 컨트롤러를 기반으로 한 개선된 성능을 갖는 음성 디코딩 장치에 있어서, 데이터를 전송하는 버스에는 디코더 및 데이터를 처리하기 위한 마이크로 컨트롤러가 연결된다. 마이크로 컨트롤러 외부에는 음성 및 비음성 데이터를 저장하기 위한 외부 메모리가 구비된다. 외부 메모리와 마이크로 컨트롤러 사이에는 직렬 인터페이스(serial peripheral interface; SPI)가 구비된다. 또한, 직렬 인터페이스 및 마이크로 컨트롤러 사이에 음성 및 비음성 데이터를 각각 액세스하기 위한 두 개의 직렬 메모리 액세스들과, 상기 직렬 메모리 액세스들을 제어하기 위한 아비터가 더 구비될 수 있다. 상기한 음성 디코딩 장치는 대용량의 데이터를 처리할 수 있으며, 나아가 음성 데이터를 처리하면서도 음질의 저하없이 비음성 데이터를 용이하게 처리할 수 있다.In a speech decoding apparatus having an improved performance based on a microcontroller, a bus for transmitting data is connected to a decoder and a microcontroller for processing data. An external memory for storing voice and non-voice data is provided outside the microcontroller. A serial peripheral interface (SPI) is provided between the external memory and the microcontroller. In addition, two serial memory accesses for accessing voice and non-voice data, respectively, between the serial interface and the microcontroller, and an arbiter for controlling the serial memory accesses may be further provided. The voice decoding apparatus may process a large amount of data, and further, may process non-voice data without degrading sound quality while processing voice data.

Description

마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치 및 이를 이용한 음성 디코딩 방법{MICROCONTROLLER BASED DEVICE FOR DECODING VOICE DATA AND METHOD OF DECODING VOICE DATA USING THE SAME}Microcontroller-based speech decoding device and speech decoding method using the same {MICROCONTROLLER BASED DEVICE FOR DECODING VOICE DATA AND METHOD OF DECODING VOICE DATA USING THE SAME}

도 1은 종래 기술에 따른 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치를 설명하기 위한 개략적인 구성도이다.1 is a schematic configuration diagram illustrating a speech decoding apparatus based on a microcontroller according to the related art.

도 2는 본 발명의 일 실시예에 따른 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치를 설명하기 위한 개략적인 구성도이다.2 is a schematic diagram illustrating a voice decoding apparatus based on a microcontroller according to an exemplary embodiment of the present invention.

도 3은 본 발명의 다른 실시예에 따른 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치를 설명하기 위한 개략적인 구성도이다.3 is a schematic diagram illustrating a voice decoding apparatus based on a microcontroller according to another embodiment of the present invention.

도 4는 도 2 및 도 3에 도시된 음성 디코딩 장치들의 데이터 처리 성능을 설명하기 위한 그래프이다.FIG. 4 is a graph for describing data processing performance of the voice decoding apparatuses illustrated in FIGS. 2 and 3.

도 5는 본 발명의 또 다른 실시예에 따른 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치를 설명하기 위한 개략적인 구성도이다.FIG. 5 is a schematic diagram illustrating a voice decoding apparatus based on a microcontroller according to another embodiment of the present invention.

도 6은 도 4에 도시된 음성 디코딩 장치의 데이터 처리 성능을 설명하기 위한 그래프이다.FIG. 6 is a graph for describing data processing performance of the speech decoding apparatus illustrated in FIG. 4.

도 7은 본 발명의 일 실시예에 따른 마이크로 컨트롤러를 기반으로 한 음성 디코딩 방법을 설명하기 위한 개략적인 흐름도이다.7 is a schematic flowchart illustrating a voice decoding method based on a microcontroller according to an embodiment of the present invention.

* 도면의 주요부분에 대한 부호의 설명 *Explanation of symbols on the main parts of the drawings

300 : 음성 디코딩 장치 310 : 버스(bus)300: voice decoding device 310: bus (bus)

320 : 디코더(decoder) 330 : 마이크로 컨트롤러320: decoder 330: microcontroller

340 : 외부 메모리 343 : 음성 데이터340: external memory 343: voice data

346 : 비음성 데이터 350 : 직렬 인터페이스(SPI)346: non-voice data 350: serial interface (SPI)

360 : 제1 직접 메모리 액세스 370 : 제2 직접 메모리 액세스360: first direct memory access 370: second direct memory access

380 : 아비터(arbiter) 390 : 버퍼(buffer)380: Arbiter 390: Buffer

본 발명은 음성 디코딩(voice decoding) 장치에 관한 것이다. 보다 상세하게는, 완구, 도어락 또는 가전제품 등에 응용 가능한 마이크로 컨트롤러 유닛을 기반으로 한 음성 디코딩 장치에 관한 것이다.The present invention relates to a voice decoding apparatus. More specifically, the present invention relates to a voice decoding apparatus based on a microcontroller unit applicable to toys, door locks or home appliances.

음성 디코딩 기능을 갖는 제어 장치의 어플리케이션(application)은 시각 장애인을 위한 일부 제품과 완구 제품을 시작으로, 최근에는 도어락(door lock), 냉장고 등과 같이 생활가전을 중심으로 우리의 실생활 주변으로 빠른 속도로 확대되고 있다.The application of the control device having the voice decoding function starts with some products and toys for the visually impaired, and recently, it is rapidly moving around our real life centering on home appliances such as door locks and refrigerators. It is expanding.

이와 같은 추세는 최근 반도체 장치가 급속도로 발전함에 따라 생활가전에 다양한 음성 디코딩 또는 인코딩(encoding) 적용분야가 다양화되고 있기 때문이며, 이에 따라 향후에는 보다 진화된 음성 디코딩 기능을 갖는 다양한 제품들이 출시될 것으로 보인다. 예를 들면, 종래에는 메모리에 저장된 음성 데이터를 단순히 선택적으로 재생하는 수준에서, 지피에스(GPS), 음성을 이용하는 학습용 단말기, 게임기, 차량 마이컴등과 같이 음성 데이터를 일반 데이터들과 함께 빠른 속도로 처리하는 수준까지 발전하고 있다.This trend is due to the recent rapid development of semiconductor devices and the diversification of various applications of voice decoding or encoding in consumer electronics. Accordingly, various products with more advanced voice decoding functions will be introduced in the future. Seems to be. For example, conventionally, the voice data stored in the memory is simply and selectively reproduced, such as GPS, a learning terminal using a voice, a game console, a vehicle microcomputer, and the like. It is developing to a level that is.

현재 음성 디코딩 기능의 제어 장치는 크게 음성 전용 디코딩(인코딩) 장치, 마이크로 컨트롤러(microcontroller unit; MCU) 기반의 음성 디코딩(인코딩) 장치 및 DSP(digital signal processing) 장치로 구분된다. 이들 중에서 상기 마이크로 컨트롤러 기반의 음성 디코딩 장치가 널리 사용되고 있다. 이는 마이크로 컨트롤러는 사용자가 필요한 기능만을 부가적으로 셋팅하여 쓸 수 있도록 되어 있기 때문이다. 즉, 다양한 용도를 갖는 명령을 수행하는 프로그램을 집어넣을 수 있어, 사용자의 필요에 따른 기능을 부여할 수 있다.Currently, a control device of a voice decoding function is largely classified into a voice-only decoding (encoding) device, a microcontroller unit (MCU) -based voice decoding (encoding) device, and a digital signal processing (DSP) device. Among them, the microcontroller-based speech decoding apparatus is widely used. This is because the microcontroller can additionally set only the necessary functions. That is, a program that executes a command having various purposes can be inserted, thereby giving a function according to a user's needs.

도 1은 종래 기술에 따른 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치를 설명하기 위한 개략적인 구성도이다.1 is a schematic configuration diagram illustrating a speech decoding apparatus based on a microcontroller according to the related art.

도 1을 참조하면, 종래의 음성 디코딩 장치(10)는 크게 중앙처리부(12), 마스크 롬(13) 및 램(14)을 포함하는 마이크로 컨트롤러(15), 상기 마이크로 컨트롤러(15)와 연결된 디코더(16), 그리고 내부 메모리(18)를 포함한다. 즉, 칩(chip) 내부에 내부 메모리(18)가 내장된 형태를 띠고 있다. 그러나, 이러한 구성을 갖는 음성 코딩 장치(10)에서 메모리 용량을 더 이상 확장시키기 어렵기 때문에 최근 급증하는 데이터를 고속으로 처리하기에는 한계가 있다.Referring to FIG. 1, a conventional voice decoding apparatus 10 includes a microcontroller 15 including a central processor 12, a mask ROM 13, and a RAM 14, and a decoder connected to the microcontroller 15. 16, and an internal memory 18. That is, the internal memory 18 is embedded in a chip. However, since the memory capacity of the speech coding apparatus 10 having such a configuration is no longer extended, there is a limit in processing the rapidly increasing data at high speed.

상기와 같은 문제점들을 해결하기 위한 본 발명의 제1 목적은 음성 데이터 및 비음성 데이터를 포함하는 대용량의 데이터를 처리할 수 있으며, 더 나아가 음성 품질을 유지하면서도 대용량의 데이터를 효율적으로 처리할 수 있는 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치들을 제공하는데 있다.A first object of the present invention for solving the above problems can process a large amount of data, including voice data and non-voice data, and furthermore can efficiently process a large amount of data while maintaining voice quality To provide a voice decoding apparatus based on a microcontroller.

본 발명의 제2 목적은 상기한 음성 디코딩 장치를 이용하여 음성 데이터 및 비음성 데이터를 동시에 처리할 수 있는 음성 디코딩 방법을 제공하는데 있다.It is a second object of the present invention to provide a voice decoding method capable of simultaneously processing voice data and non-voice data using the above voice decoding apparatus.

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

삭제delete

본 발명에 따른 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치는 데이터를 전송하기 위한 버스; 상기 버스와 연결되는 디코더; 상기 버스와 연결되고, 데이터를 처리하기 위한 마이크로 컨트롤러; 상기 마이크로 컨트롤러 외부에 음성 및 비음성 데이터를 저장하기 위한 외부 메모리; 상기 버스, 외부 메모리 및 디코더와 연결되며, 데이터에 대한 읽기 동작을 수행하기 위한 제1 직접 메모리 액세스(direct memory access; DMA); 상기 버스 및 직렬 인터페이스와 연결되고, 상기 제1 직접 메모리 액세스가 음성 데이터 읽기 동작을 수행하는 동안, 상기 비음성 데이터에 대한 읽기 동작을 수행하기 위한 제2 직접 메모리 액세스; 및 상기 마이크로 컨트롤러 및 상기 외부 메모리를 연결하기 위한 직렬 인터페이스(serial peripheral interface)를 포함하는 것을 특징으로 한다.
하나의 예로써, 상기 제1 및 제2 직접 메모리 액세스와 연결되어, 상기 제1 및 제2 직접 메모리 액세스가 충돌 없이 동시에 동작하도록 제어하기 위한 아비터(arbiter)를 더 포함하는 것을 특징으로 한다.
본 발명에 따른 마이크로 컨트롤러를 기반으로 한 음성 디코딩 방법은 직렬 인터페이스에 의해 마이크로 컨트롤러 및 디코더와 직렬 인터페이스에 의해 연결된 외부 메모리 내에 저장된 음성 데이터 및 비음성 데이터를 처리하는데 있어서, 상기 음성 데이터에 대한 읽기 동작은 상기 외부 메모리 및 디코더와 연결되는 제1 직접 메모리 액세스에 의해 수행되고, 상기 비음성 데이터에 대한 읽기 동작은 상기 제1 직접 메모리 액세스와 독립적으로 상기 외부 메모리와 연결되는 제2 직접 메모리 액세스에 의해 수행되는 것을 특징으로 하는 한다.
하나의 예로써, 상기 제1 및 제2 직접 메모리 액세스는 상기 직렬 인터페이스와 연결된 아비터(arbiter)에 의해 각각 제어되는 것을 특징으로 한다.
상기한 바에 의하면, 대용량의 외부 메모리를 사용하는 음성 디코딩 장치에 있어서, 두 개의 직접 메모리 액세스를 효과적으로 이용함으로써, 디코더를 이용하여 음성을 출력하는 도중에 일반 데이터를 고속으로 처리할 수 있다.
An apparatus for decoding a speech based on a microcontroller according to the present invention comprises: a bus for transmitting data; A decoder coupled to the bus; A microcontroller coupled to the bus for processing data; An external memory for storing voice and non-voice data outside the microcontroller; A first direct memory access (DMA) coupled to the bus, an external memory and a decoder, for performing a read operation on data; A second direct memory access coupled to the bus and a serial interface, for performing a read operation on the non-voice data while the first direct memory access performs a voice data read operation; And a serial peripheral interface for connecting the microcontroller and the external memory.
As an example, the apparatus may further include an arbiter connected to the first and second direct memory accesses to control the first and second direct memory accesses to operate simultaneously without collision.
According to the present invention, a microcontroller-based speech decoding method processes a speech data and a non-speech data stored in an external memory connected by a serial interface with a microcontroller and a decoder by a serial interface. Is performed by a first direct memory access coupled with the external memory and a decoder, and the read operation on the non-voice data is performed by a second direct memory access coupled with the external memory independently of the first direct memory access. Characterized in that performed.
As an example, the first and second direct memory accesses are each controlled by an arbiter connected to the serial interface.
According to the above, in a speech decoding apparatus using a large external memory, by effectively utilizing two direct memory accesses, it is possible to process general data at high speed while outputting speech using a decoder.

이하, 본 발명에 따른 바람직한 실시예들에 따른 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치 및 이를 이용한 음성 디코딩 방법에 대하여 첨부된 도면을 참조하여 상세하게 설명하지만, 본 발명이 하기의 실시예들에 제한되는 것은 아니며, 해당 분야에서 통상의 지식을 가진 자라면 본 발명의 기술적 사상을 벗어나지 않는 범위 내에서 본 발명을 다양한 다른 형태로 구현할 수 있을 것이다. 첨부된 도면에 있어서, 각 구성 요소들의 치수는 본 발명의 명확성을 기하기 위하여 실제보다 확대하여 도시한 것이다. 본 발명에 있어서, 하나의 구성 요소가 다른 구성 요소 "상에", "상부에" 또는 "하부"에 형성되는 것으로 언급되는 경우에는 상기 하나의 구성 요소는 상기 다른 구성 요소 위에 형성되거나 또는 아래에 위치하는 것을 의미하거나, 또 다른 구성 요소들이 상기 다른 구성 요소 상에 추가적으로 형성될 수 있다. 또한, 각 구성 요소들이 "제1", "제2" 및/또는 "제3"으로 언급되는 것은 한정하기 위한 것이 아니라 단지 각 구성 요소들을 구분하기 위한 것이다. 따라서, "제1", "제2" 및/또는 "제3"은 각 구성 요소에 대하여 각기 선택적으로 또는 교환적으로 사용될 수 있다.Hereinafter, a voice decoding apparatus based on a microcontroller and a voice decoding method using the same according to preferred embodiments of the present invention will be described in detail with reference to the accompanying drawings, but the present invention is limited to the following embodiments. Those skilled in the art will appreciate that the present invention may be embodied in various other forms without departing from the spirit of the invention. In the accompanying drawings, the dimensions of each component is shown in an enlarged scale than actual for clarity of the invention. In the present invention, when one component is referred to as being formed on, above, or under another component, the one component is formed on or below the other component. It is meant to be positioned, or further components may be additionally formed on the other components. In addition, it is to be noted that the respective components are referred to as "first", "second", and / or "third", not merely to limit each component. Thus, "first", "second" and / or "third" can be used selectively or interchangeably for each component.

마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치Voice decoding device based on microcontroller

도 2는 본 발명의 일 실시예에 따른 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치를 설명하기 위한 개략적인 구성도이다.2 is a schematic diagram illustrating a voice decoding apparatus based on a microcontroller according to an exemplary embodiment of the present invention.

도 2를 참조하면, 본 실시예에 따른 음성 디코딩 장치(100)는 데이터를 전송하기 위한 버스(110), 버스(110)와 연결된 디코더(120), 디코더(120)와 연결된 마이크로 컨트롤러(130), 데이터를 저장하기 위한 외부 메모리(140), 외부 메모리(140)를 버스(110)와 연결시키기 위한 인터페이스(150)를 포함한다.Referring to FIG. 2, the voice decoding apparatus 100 according to the present embodiment includes a bus 110 for transmitting data, a decoder 120 connected to the bus 110, and a microcontroller 130 connected to the decoder 120. , An external memory 140 for storing data, and an interface 150 for connecting the external memory 140 to the bus 110.

상기 디코더(120)는 디지털화된 음성 데이터를 아날로그 신호로 변환시키는 장치로서, 데이터를 전송하기 위한 버스(110)를 통해 마이크로 컨트롤러(130)와 연결되어 있다. 마이크로 컨트롤러(microcontroller, 120)는 가전제품, 완구, 마이크로 마우스, 2족 로봇 등에 널리 이용되는 ‘사용자 제어 중앙처리장치’를 말한다. 예를 들면, 마이크로 컨트롤러(120)는, 도시되지는 않았으나, 중앙처리부(central processing unit; CPU), 임의접근메모리(random access memory; RAM), 소거 및 프로그램 가능 읽기용 메모리(read only memory; ROM), 타이머(timer), 인터럽트 컨트롤러(interrupt controller), 입출력부(input/output; I/O) 등을 포함하여 구성될 수 있다.The decoder 120 is a device for converting digitized voice data into an analog signal and is connected to the microcontroller 130 through a bus 110 for transmitting data. The microcontroller 120 refers to a user-controlled central processing unit that is widely used in home appliances, toys, micro mice, and biped robots. For example, the microcontroller 120 may include a central processing unit (CPU), random access memory (RAM), erase and programmable read only memory (not shown). ), A timer, an interrupt controller, an input / output unit (I / O), and the like.

상기 외부 메모리(140)는 대용량의 음성 데이터 또는 일반 데이터(비음성 데이터)를 저장하기 위한 공간으로서 제공된다. 외부 메모리(140)의 예로는 디램(DRAM), 에스램(SRAM), 데이터 저장형 플래시 메모리(NAND type Flash memory), 코드 저장형 플래시 메모리(NOR type Flash memory) 등이 있다. 상기 코드 저장형 플래시 메모리는 데이터 저장형에 비해 데이터의 액세스 시간이 짧고(데이터 처리 속도가 빠름) 데이터의 안정성이 우수하기 때문에, 음성 디코딩 장치(100)의 외부 메모리(140)는 코드 저장형 플래시 메모리가 바람직하다.The external memory 140 is provided as a space for storing a large amount of voice data or general data (non-voice data). Examples of the external memory 140 include DRAM, SRAM, NAND type flash memory, and NOR type flash memory. Since the code storage flash memory has a shorter data access time (faster data processing speed) and a higher data stability than the data storage flash memory, the external memory 140 of the voice decoding apparatus 100 has a code storage flash memory. Memory is preferred.

상기 인터페이스(150)는 외부 메모리(140)와 마이크로 컨트롤러(130) 사이에서 데이터를 교환시키기 위한 것이며, 그 예로는 직렬 인터페이스(serial peripheral interface; SPI)와 병렬 인터페이스(parallel interface)가 있다. 여기서, 상기 인터페이스(150)는 병렬 인터페이스에 비해 신호 간섭이 적고, 배선이 간단하여 소형 장치에 적합한 직렬 인터페이스를 사용하는 것이 바람직하다. 따라서, 본 발명의 마이크로 컨트롤러 기반의 음성 디코딩 장치(100)는 상술한 외부 메모리(140)를 이용하여 대용량의 데이터를 저장할 수 있으므로, 다양한 어플리케이션의 용도에 맞는 음성 디코딩 장치로 사용할 수 있다.The interface 150 is for exchanging data between the external memory 140 and the microcontroller 130, and examples thereof include a serial peripheral interface (SPI) and a parallel interface. In this case, it is preferable that the interface 150 uses a serial interface suitable for a small device because of less signal interference and a simpler wiring than the parallel interface. Therefore, the microcontroller-based speech decoding apparatus 100 of the present invention can store a large amount of data using the external memory 140 described above, and thus can be used as a speech decoding apparatus suitable for various applications.

요컨대, 제품의 기능이 증가함에 따라 처리해야할 데이터가 증가되고 있지만, 종래의 음성 디코딩 장치에서 마이크로 컨트롤러 내부 메모리의 용량을 확장하는 것이 불가능하므로, 본 발명과 같이 직렬 인터페이스(150) 방식으로 외부 메모리(140)를 연결함으로써 음성 디코딩 장치(100)의 메모리 용량을 용이하게 증가시킬 수 있다.In short, as the function of the product increases, the data to be processed increases, but since it is impossible to expand the capacity of the microcontroller internal memory in the conventional voice decoding apparatus, the external memory ( By connecting the 140, the memory capacity of the voice decoding apparatus 100 may be easily increased.

도 3은 본 발명의 다른 실시예에 따른 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치를 설명하기 위한 개략적인 구성도이다.3 is a schematic diagram illustrating a voice decoding apparatus based on a microcontroller according to another embodiment of the present invention.

도 3을 참조하면, 본 실시예에 따른 음성 디코딩 장치(200)는 데이터를 전송 하기 위한 버스(210), 버스(210)와 연결된 디코더(220), 디코더(220)와 연결된 마이크로 컨트롤러(230), 데이터를 저장하기 위한 외부 메모리(240), 외부 메모리(240)를 버스(210)와 연결시키기 위한 인터페이스(250) 및 직접 메모리 액세스(direct memory access; DMA)(260)를 포함한다.Referring to FIG. 3, the voice decoding apparatus 200 according to the present embodiment includes a bus 210 for transmitting data, a decoder 220 connected to the bus 210, and a microcontroller 230 connected to the decoder 220. , An external memory 240 for storing data, an interface 250 for connecting the external memory 240 to the bus 210, and a direct memory access (DMA) 260.

상기 버스(210), 디코더(220), 마이크로 컨트롤러(230), 외부 메모리(240) 및 인터페이스(250)에 대한 상세한 설명은 도 2를 참조하여 기 설명된 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치의 설명과 유사하므로 생략한다.A detailed description of the bus 210, the decoder 220, the microcontroller 230, the external memory 240, and the interface 250 is provided with reference to FIG. 2. It is similar to the description and is omitted.

상기 직접 메모리 액세스(260)는 마이크로 컨트롤러(230)와 인터페이스(250) 사이에 구비되며, 마이크로 컨트롤러(230)에 의한 프로그램 실행 없이 외부 메모리(240)에 대한 액세스 제어를 수행한다. 이때, 상기 디코더(220)는 직접 메모리 액세스(260)가 자동으로 접근 가능하도록 구성될 수 있다.The direct memory access 260 is provided between the microcontroller 230 and the interface 250, and performs access control on the external memory 240 without executing a program by the microcontroller 230. In this case, the decoder 220 may be configured such that the direct memory access 260 is automatically accessible.

이와 같이, 마이크로 컨트롤러(230)를 기반으로 하는 음성 디코딩 장치(200)에 음성 데이터 및 비음성 데이터를 저장하기 위한 외부 메모리(240)를 구성함에 있어서, 상기 직접 메모리 액세스(260)를 추가함으로써 음성 데이터를 내부의 메모리 또는 외부 메모리(240)를 읽어올 수 있다. 따라서, 마이크로 컨트롤러(230)는 비음성 데이터에 대한 입출력 속도를 향상시킬 수 있고, 마이크로 컨트롤러(230)의 중앙처리부와 주변 장치간의 속도 차를 줄일 수 있으므로 보다 향상된 성능을 발휘할 수 있다.As such, in configuring the external memory 240 for storing the voice data and the non-voice data in the voice decoding apparatus 200 based on the microcontroller 230, the voice is added by adding the direct memory access 260. Data may be read from the internal memory or the external memory 240. Therefore, the microcontroller 230 may improve the input / output speed of the non-voice data and may reduce the speed difference between the central processing unit of the microcontroller 230 and the peripheral device, thereby achieving more improved performance.

도 4는 도 2 및 도 3에 도시된 음성 디코딩 장치들의 데이터 처리 성능을 설명하기 위한 그래프이다.FIG. 4 is a graph for describing data processing performance of the voice decoding apparatuses illustrated in FIGS. 2 and 3.

도 4를 참조하면, 도 2 및 도 3을 참조로 설명한 외부 메모리(140, 240)를 음성 데이터 및 비음성 데이터 저장용으로 사용 시, 음성 데이터 읽기 처리 및 비음성 데이터 사이에 적정한 시간의 여유 시간을 제공함으로써 음성 디코딩(음성 데이터 읽기) 및 데이터 처리(비음성 데이터 읽기)를 동시에 수행할 수 있다.Referring to FIG. 4, when the external memories 140 and 240 described above with reference to FIGS. 2 and 3 are used for storing voice data and non-voice data, an appropriate time period between voice data read processing and non-voice data is appropriate. By providing, speech decoding (voice data reading) and data processing (non-voice data reading) can be simultaneously performed.

도 5는 본 발명의 또 다른 실시예에 따른 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치를 설명하기 위한 개략적인 구성도이다.FIG. 5 is a schematic diagram illustrating a voice decoding apparatus based on a microcontroller according to another embodiment of the present invention.

도 5를 참조하면, 도시된 장치(300)는 마이크로 컨트롤러(330)를 기반으로 하는 음성 디코딩 장치로서, 데이터를 전송하기 위한 버스(310)와, 버스(310)와 연결되는 디코더(320)와, 마이크로 컨트롤러(330)와, 음성 데이터(343) 및 비음성 데이터(346)를 저장하기 위한 외부 메모리(340)와, 음성 데이터(343)를 디코더(320)로 전송하기 위한 제1 직접 메모리 액세스(360)와, 비음성 데이터(346)에 대한 읽기 동작을 수행하기 위한 제2 직접 메모리 액세스(370)와, 제1 및 제2 직접 메모리 액세스(380)를 제어하기 위한 아비터(380)를 포함한다.Referring to FIG. 5, the apparatus 300 illustrated in FIG. 5 is a voice decoding apparatus based on the microcontroller 330, and includes a bus 310 for transmitting data, a decoder 320 connected to the bus 310, and a decoder 320. , External memory 340 for storing voice data 343 and non-voice data 346, and first direct memory access for transmitting voice data 343 to decoder 320. 360, a second direct memory access 370 for performing a read operation on the non-voice data 346, and an arbiter 380 for controlling the first and second direct memory access 380. do.

상기 외부 메모리(340)는 필요에 따라 대용량의 데이터를 저장하기 위한 것으로서, 음성 데이터(343) 및 비음성 데이터(346)를 저장할 수 있다. 이때, 외부 메모리(340)는 1바이트(byte) 단위로 동작 가능한 메모리 장치를 사용하는 것이 바람직하다(여기에 대해서는 하기에서 보다 구체적으로 설명하기로 한다). 예를 들면, 외부 메모리(340)는 코드 저장형 플래시 메모리(NOR Flash Memory)를 포함하고, 직렬 인터페이스(350)에 의해 버스(310)와 연결되는 것이 바람직하다.The external memory 340 is for storing a large amount of data as needed, and may store voice data 343 and non-voice data 346. In this case, it is preferable that the external memory 340 uses a memory device that is operable in units of 1 byte (which will be described in more detail below). For example, the external memory 340 includes a code storage flash memory and is connected to the bus 310 by the serial interface 350.

상기 제1 직접 메모리 액세스(360)는 버스(310)를 통해 마이크로 컨트롤 러(320) 및 디코더(320)와 연결된다. 또한, 동시에 음성 데이터(343)가 저장된 외부 메모리(340)와 연결된다. 이에 따라, 마이크로 컨트롤러(330) 대신에 음성 데이터(343)를 디코더(320)로 전송하는 기능을 수행할 수 있다. 이에 따라, 마이크로 컨트롤러(320)가 외부 메모리(340)의 제어를 제1 직접 메모리 액세스(360)에게 넘겨주게 되면, 마이크로 컨트롤러(320)가 다른 연산 기능을 수행할 수 있으므로 디코딩 장치의 성능(performance)이 향상될 수 있다.The first direct memory access 360 is connected to the microcontroller 320 and the decoder 320 via a bus 310. At the same time, the voice data 343 is connected to the stored external memory 340. Accordingly, the voice data 343 may be transmitted to the decoder 320 instead of the microcontroller 330. Accordingly, when the microcontroller 320 transfers the control of the external memory 340 to the first direct memory access 360, the microcontroller 320 may perform other arithmetic functions so that the performance of the decoding device may be improved. ) Can be improved.

한편, 외부 메모리(340)와 버스(310)에는 제1 직접 메모리 액세스(360) 이외에도 제2 직접 메모리 액세스(370)가 연결되어 있다. 제2 직접 메모리 액세스(370)는 제1 직접 메모리 액세스(360)가 음성 데이터(343)에 대한 읽기 동작을 수행하는 동안, 비음성 데이터(346)에 대한 읽기 동작을 수행하기 위한 회로이다.In addition to the first direct memory access 360, the second direct memory access 370 is connected to the external memory 340 and the bus 310. The second direct memory access 370 is a circuit for performing a read operation on the non-voice data 346 while the first direct memory access 360 performs a read operation on the voice data 343.

이처럼, 외부 메모리(340)에는 두 개의 직접 메모리 액세스(360, 370)가 접근할 수 있게 되므로, 제1 및 제2 직접 메모리 액세스(360, 370)와 직렬 인터페이스(350) 사이에는 아비터(arbiter)(380)가 구비되는 것이 바람직하다. 아비터(380)는 한 번에 하나의 직접 메모리 액세스(360 또는 370)가 버스(310)를 사용하도록 제어하는 기능을 수행한다. 구체적으로, 아비터(380)는 제1 직접 메모리 액세스(360) 동작하는 동안에는 제2 직접 메모리 액세스(360)의 접근을 막고, 상기 제1 직접 메모리 액세스(360)동작들 사이에 발생하는 여유 시간 동안에만 제2 직접 메모리 액세스(370)의 접근을 허용한다. 그러므로 하나의 직렬 포트 인터페이스(350)에 제1 및 제2 직접 메모리 액세스(360, 370)의 동작들이 충돌 없이 액세스될 수 있다.As such, since two direct memory accesses 360 and 370 are accessible to the external memory 340, an arbiter is provided between the first and second direct memory accesses 360 and 370 and the serial interface 350. 380 is preferably provided. The arbiter 380 functions to control one direct memory access 360 or 370 to use the bus 310 at a time. Specifically, the arbiter 380 blocks the access of the second direct memory access 360 during the first direct memory access 360, and during the spare time occurring between the first direct memory access 360 operations. Only allow access of the second direct memory access 370. Thus, operations of the first and second direct memory access 360, 370 to one serial port interface 350 can be accessed without collision.

도 4를 다시 참조하면, 음성 데이터 읽기 처리 기능과 비음성 데이터 읽기 처리 기능을 복잡하게 수행할 경우에는 중요한 문제가 발생한다. 이는 바로 음성 및 비음성 데이터 각각의 처리 단계 사이에 여유 시간이 발생함으로써, 데이터 처리 시간이 길어지고 중앙처리부의 성능이 크게 저하되는 것이다. 이러한 여유 시간을 소프트웨어적으로 프로그램을 이용하여 제거할 경우에는 낮은 연산 속도를 갖는 마이크로 컨트롤러, 예를 들면 8비트 컨트롤러는 상기 프로그램으로 인해 오히려 동작 부담이 커지게 되므로 음성 디코딩 장치의 성능 향상을 기대하기 어렵다. 도 5를 참조하여 기 설명된 음성 디코딩 장치는 상술한 여유 시간을 하드웨어적인 방법으로 제거함으로써 마이크로 컨트롤러 자체 연산 속도를 향상시키지 않고도 제품의 성능을 향상시키기 위한 것이다.Referring back to FIG. 4, an important problem occurs when the voice data read processing function and the non-voice data read processing function are complicated. This is because the extra time occurs between the processing steps of the voice and non-voice data respectively, the data processing time is long and the performance of the central processing unit is greatly reduced. When such a free time is eliminated by using a program, a microcontroller having a low operation rate, for example, an 8-bit controller, is rather burdensome due to the program. it's difficult. The voice decoding apparatus described above with reference to FIG. 5 is to improve the performance of a product without improving the microcontroller's own computational speed by removing the above-described spare time by a hardware method.

도 6은 도 4에 도시된 음성 디코딩 장치의 데이터 처리 성능을 설명하기 위한 그래프이다.FIG. 6 is a graph for describing data processing performance of the speech decoding apparatus illustrated in FIG. 4.

도 6을 참조하면, 도 4에 도시된 음성 데이터 읽기 동작과 비음성 데이터 읽기 동작 사이에 발생되는 여유 시간, 즉 시간 갭(gap)이 제거되었음을 알 수 있다. 이는 인접하는 음성 데이터 읽기 동작들 사이에 발생하는 시간 갭을 비음성 데이터 읽기 동작하는 데에 사용한 것으로서, 이를 통해 데이터 처리 속도를 크게 향상시킬 수 있다.Referring to FIG. 6, it can be seen that a spare time, that is, a time gap, generated between the voice data read operation and the non-voice data read operation shown in FIG. 4 is removed. This is used to perform a non-voice data read operation using a time gap occurring between adjacent voice data read operations, thereby greatly improving the data processing speed.

다시 도 5로 돌아가서, 음성 데이터의 경우 적정한 수준 이상의 음질을 확보하기 위해서는 여유 시간의 제어가 중요하다. 이를 위해, 외부 메모리(140)는 1바이트(byte) 단위로 동작하는 것을 사용하는 것이 바람직하다.Returning to FIG. 5 again, in the case of voice data, the control of the spare time is important in order to secure sound quality more than an appropriate level. To this end, it is preferable to use the external memory 140 operating in units of 1 byte.

한편, 제2 직접 메모리 액세스(180) 및 마이크로 컨트롤러(320)와 연결되는 버퍼(390)를 더 포함할 수 있다. 여기서, 버퍼(390)로 램 버퍼(RAM Buffer)를 사용할 수 있다. 구체적으로, 상기 버퍼(390)는 제2 직접 메모리 액세스(370)에 의해 처리된 비음성 데이터(346)를 일시적으로 저장함으로써, 마이크로 컨트롤러(320)의 중앙처리부가 비음성 데이터(346)들을 고속으로 처리하는 것이 가능해진다. 예를 들면, LCD와 같은 출력 장치로 전송되는 대량의 그래픽 데이터를 가져올 때, 상기 제2 직접 메모리 액세스(370)가 읽어온 그래픽 데이터를 버퍼(390)에 저장하여 필요한 정보를 용이하게 디스플레이할 수 있다.Meanwhile, the electronic device may further include a buffer 390 connected to the second direct memory access 180 and the microcontroller 320. Here, a RAM buffer may be used as the buffer 390. Specifically, the buffer 390 temporarily stores the non-voice data 346 processed by the second direct memory access 370, so that the central processing unit of the microcontroller 320 may transmit the non-voice data 346 at high speed. It becomes possible to process. For example, when importing a large amount of graphic data transmitted to an output device such as an LCD, the second direct memory access 370 stores the graphic data read in the buffer 390 to easily display necessary information. have.

이와 같이, 아비터(370), 제1 및 제2 직접 메모리 액세스(360, 370)를 이용하여 대용량의 외부 메모리(340)에 저장된 음성 데이터(343) 및 비음성 데이터(346)에 대한 처리를 효과적으로 수행할 수 있다. 특히, 상기 디코더(320)의 선택 가능한 샘플링 주파수(selectable sampling frequency)가 4㎑ 내지 48㎑인 경우에도, 소정의 음질을 유지하면서 마이크로 컨트롤러(330)의 기능을 용이하게 사용할 수 있다. 참고로, 종래의 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치의 샘플링 주파수는 8㎑ 내지 16㎑에 불과하며, 본 발명의 디코딩 장치는 이러한 종래 음성 디코딩 장치에 비해 고음질을 확보할 수 있다.As described above, the processing of the voice data 343 and the non-voice data 346 stored in the large-capacity external memory 340 using the arbiter 370 and the first and second direct memory accesses 360 and 370 can be effectively performed. Can be done. In particular, even when the selectable sampling frequency of the decoder 320 is 4 kHz to 48 kHz, the function of the microcontroller 330 can be easily used while maintaining a predetermined sound quality. For reference, the sampling frequency of the speech decoding apparatus based on the conventional microcontroller is only 8 kHz to 16 kHz, and the decoding apparatus of the present invention can secure higher sound quality than the conventional speech decoding apparatus.

이에 대하여 보다 상세하게 설명하면, 마이크로 컨트롤러(330)가 수행하는 동작 중 산술 명령이 제일 비중이 높다고 생각할 수 있으나 실제는 데이터 이동 명령의 비중이 가장 높다. 그렇기 때문에, 두 개의 직접 메모리 액세스(360, 370)는 마이크로 컨트롤러(330)가 해야 할 일을 덜어주고 마이크로 컨트롤러(330)에 의해 이루어져야하는 부분만 실행하게 함으로써, 마이크로 컨트롤러(330)의 성능을 높이는 것 이상의 효과를 얻을 수 있다. 이와 같이, 저사양의 마이크로 컨트롤러, 예를 들면 8비트 마이크로 컨트롤러를 이용하여 고성능을 발휘할 수 있는 음성 디코딩 장치를 구현할 수 있으므로 단가 측면에서 크게 유리하다.In more detail, the arithmetic instruction may be considered to have the highest weight among the operations performed by the microcontroller 330, but in reality, the weight of the data movement instruction is highest. As a result, the two direct memory accesses 360 and 370 reduce the work that the microcontroller 330 needs to do and execute only the portion that should be performed by the microcontroller 330, thereby increasing the performance of the microcontroller 330. More than that can be achieved. In this way, a low-definition microcontroller, for example, an 8-bit microcontroller can be implemented using a voice decoding device that can exhibit high performance is greatly advantageous in terms of cost.

특히, 직접 메모리 액세스(360, 370)는 영상과 같이 대량의 데이터를 이동할 때에 많은 장점을 제공하므로, 본 발명의 음성 디코딩 장치는 게임기, 학습용 단말기, 가전기기, 모바일 장치 등 다양한 어플리케이션에 응용가능하다. 이하에서는, 도 1 내지 도 6을 참조하여 기 설명된 본 발명에 따른 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치를 이용한 음성 디코딩 방법을 설명하기로 한다.In particular, since the direct memory access 360, 370 provides a number of advantages when moving a large amount of data such as video, the voice decoding device of the present invention is applicable to various applications such as game machines, learning terminals, home appliances, mobile devices, and the like. . Hereinafter, a voice decoding method using a voice decoding apparatus based on a microcontroller according to the present invention described above with reference to FIGS. 1 to 6 will be described.

마이크로 컨트롤러를 기반으로 한 음성 디코딩 방법Speech decoding method based on microcontroller

본 발명은 직렬 인터페이스에 의해 마이크로 컨트롤러 및 디코더와 연결된 외부 메모리 내에 저장된 음성 데이터 및 비음성 데이터를 처리하는데 있어서, 상기 비음성 데이터에 대한 읽기 동작을 상기 음성 데이터에 대한 읽기 동작을 수행하는 동안 수행한다. 즉, 상기 음성 데이터에 대한 읽기 동작과 비음성 데이터에 대한 읽기 동작 사이에 여유 시간을 추가함으로써, 상기 대용량의 외부 메모리에 저장된 음성 디코딩과 데이터 처리를 하나 상호 제어로 수행할 수 있다.In the present invention, in processing voice data and non-voice data stored in an external memory connected to a microcontroller and a decoder by a serial interface, a read operation on the non-voice data is performed while a read operation on the voice data is performed. . That is, by adding a spare time between the read operation on the voice data and the read operation on the non-voice data, the voice decoding and data processing stored in the large capacity external memory can be performed under mutual control.

도 7은 본 발명의 일 실시예에 따른 마이크로 컨트롤러를 기반으로 한 음성 디코딩 방법을 설명하기 위한 개략적인 흐름도이다.7 is a schematic flowchart illustrating a voice decoding method based on a microcontroller according to an embodiment of the present invention.

본 실시예에 따른 음성 디코딩 방법은 상기 음성 데이터에 대한 읽기 동작을 상기 외부 메모리 및 디코더와 연결되는 제1 직접 메모리 액세스를 이용하여 수행할 수 있다. 예를 들면, 먼저 상기 마이크로 컨트롤러를 이용하여 상기 외부 메모리에 저장된 음성 데이터의 제1 어드레스(address)를 상기 제1 직접 메모리 액세스에 설정한다(S110).The voice decoding method according to the present embodiment may perform a read operation on the voice data using a first direct memory access connected to the external memory and the decoder. For example, first, a first address of voice data stored in the external memory is set to the first direct memory access using the microcontroller (S110).

다음에, 상기 제1 직접 메모리 액세스에 의해 설정된 상기 여유 시간을 활용하여 상기 비음성 데이터에 대한 읽기 동작을 수행한다(S120). 구체적으로, 상기 제1 직접 메모리 액세스를 이용하여 상기 제1 어드레스를 통해 소정의 음성 데이터를 상기 외부 메모리로부터 상기 코덱으로 전송한다(음성 데이터 읽기).Next, a read operation on the non-voice data is performed by utilizing the spare time set by the first direct memory access (S120). Specifically, predetermined voice data is transmitted from the external memory to the codec through the first address using the first direct memory access (reading voice data).

이와 동시에, 상기 비음성 데이터에 대한 읽기 동작을 상기 제1 직접 메모리 액세스와 독립적으로 상기 외부 메모리와 연결되는 제2 직접 메모리 액세스를 이용하여 수행한다(비음성 데이터 읽기). 예를 들면, 먼저 상기 제1 직접 메모리의 액세스의 읽기 동작이 수행되는 시간 동안에 상기 마이크로 컨트롤러를 이용하여 상기 외부 메모리에 저장된 비음성 데이터의 제2 어드레스를 설정한다. 다음에, 상기 제2 직접 메모리 액세스를 이용하여 상기 제2 어드레스를 통해 상기 비음성 데이터를 읽어 온다.At the same time, a read operation on the non-voice data is performed using a second direct memory access connected to the external memory independently of the first direct memory access (reading non-voice data). For example, first, a second address of non-voice data stored in the external memory is set using the microcontroller during a time when a read operation of accessing the first direct memory is performed. Next, the non-voice data is read through the second address using the second direct memory access.

여기서, 상기 제1 및 제2 직접 메모리 액세스의 읽기 동작은 아비터를 이용하여 용이하게 제어할 수 있다. 이를 구체적으로 설명하면, 상기 아비터는 상기 제1 직접 메모리 액세스의 비음성 데이터에 대한 읽기 동작을 스크린하면서 상기 제1 직접 메모리 액세스의 읽기 동작 사이에 발생하는 상기 여유 시간 동안에 상기 외부 메모리에 대한 액세스 권한을 상기 제2 직접 메모리 액세스로 넘겨준다.The read operation of the first and second direct memory accesses can be easily controlled using an arbiter. Specifically, the arbiter is authorized to access the external memory during the spare time occurring between the read operations of the first direct memory access while screening the read operation on the non-voice data of the first direct memory access. Passes to the second direct memory access.

이로써, 상기 여유 시간 동안 상기 제2 직접 메모리 액세스가 상기 외부 메모리 내에 저장된 비음성 데이터에 대한 읽기 동작을 수행할 수 있다. 즉, 상기 제1 및 제2 직접 메모리 액세스는 상기 직렬 인터페이스와 연결된 아비터에 의해 각각 제어되기 때문에, 또 다른 여유 시간이나 제1 및 제2 직접 메모리 액세스 간의 충돌을 방지할 수 있다.As a result, the second direct memory access may perform a read operation on the non-voice data stored in the external memory during the spare time. That is, since the first and second direct memory accesses are controlled by an arbiter connected to the serial interface, respectively, another spare time or a collision between the first and second direct memory accesses can be prevented.

마지막으로, 상기 S120 단계 이후에 상기 외부 메모리에 저장된 처리해야할 데이터에 대한 읽기 동작이 완료되었는가를 판단한다(S130). 완료된 경우 작업을 종료하고, 반면에 완료되지 않은 경우에는 S120단계를 반복수행하여 상기 작업을 완료할 수 있다. 이와 같은 방법에 의하면, 음성 디코딩 중에 일반 데이터(비음성 데이터)에 대한 처리를 고속으로 수행할 수 있으므로 음성 디코딩 장치의 성능을 크게 향상시킬 수 있다.Finally, it is determined whether the read operation for the data to be processed stored in the external memory is completed after the step S120 (S130). If the operation is completed, the operation is terminated. On the other hand, if the operation is not completed, the operation may be completed by repeating the step S120. According to this method, since the processing of general data (non-voice data) can be performed at high speed during voice decoding, the performance of the voice decoding apparatus can be greatly improved.

상기와 같은 본 발명에 따른 마이크로 컨트롤러를 기반으로 하는 음성 디코딩 장치는 직렬 인터페이스를 통해 외부 메모리를 장착함으로써 처리해야할 데이터가 증가하는 추세에 맞게 대응할 수 있다. 또한, 음성 디코딩 장치를 직접 메모리 장치를 기반으로 작동시켜, 마이크로 컨트롤러의 중앙처리부는 음성 데이터 이외의 데이터를 처리할 수 있게 되어 음성 디코딩 장치의 성능(performance)이 향상되는 효과가 있다.The voice decoding apparatus based on the microcontroller according to the present invention as described above can cope with the increasing trend of data to be processed by mounting an external memory through a serial interface. In addition, by operating the voice decoding device directly based on the memory device, the central processing unit of the microcontroller can process data other than the voice data, thereby improving the performance of the voice decoding device.

게다가, 두 개의 직접 메모리 장치, 아비터 및 버퍼를 장착하면, 하나의 직접 메모리 장치가 음성 데이터를 처리하는 중에, 다른 직접 메모리 장치는 비음성 데이터들을 버퍼에 쌓아둠으로써 비음성 데이터들을 마이크로 컨트롤러가 고속으로 처리하는 것이 가능해진다. 그러므로 마이크로 컨트롤러의 중앙처리부를 업그레이드하지 않고도 음성 디코딩 장치 전체의 성능을 크게 향상시킬 수 있다.In addition, with two direct memory devices, an arbiter and a buffer, while one direct memory device is processing voice data, the other direct memory device accumulates non-voice data in a buffer, allowing the microcontroller to It becomes possible to process. Therefore, the performance of the entire voice decoding apparatus can be greatly improved without upgrading the central processing unit of the microcontroller.

또한, 상기한 장치를 이용하면 단가의 상승 없이도 음질의 저하없이 음성 데이터와 비음성 데이터를 동시에 처리하는 것이 가능하기 때문에, 이와 같은 방법은 다양한 어플리케이션에 적용 가능하다.In addition, the above-described apparatus can be used to simultaneously process voice data and non-voice data without deteriorating the sound quality without increasing the unit cost, and this method can be applied to various applications.

상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although described above with reference to a preferred embodiment of the present invention, those skilled in the art will be variously modified and changed within the scope of the invention without departing from the spirit and scope of the invention described in the claims below I can understand that you can.

Claims (8)

데이터를 전송하기 위한 버스;A bus for transmitting data; 상기 버스와 연결되는 디코더;A decoder coupled to the bus; 상기 버스와 연결되고, 데이터를 처리하기 위한 마이크로 컨트롤러;A microcontroller coupled to the bus for processing data; 상기 마이크로 컨트롤러 외부에 음성 및 비음성 데이터를 저장하기 위한 외부 메모리;An external memory for storing voice and non-voice data outside the microcontroller; 상기 버스, 외부 메모리 및 디코더와 연결되며, 데이터에 대한 읽기 동작을 수행하기 위한 제1 직접 메모리 액세스(direct memory access; DMA);A first direct memory access (DMA) coupled to the bus, an external memory and a decoder, for performing a read operation on data; 상기 버스 및 직렬 인터페이스와 연결되고, 상기 제1 직접 메모리 액세스가 음성 데이터 읽기 동작을 수행하는 동안, 상기 비음성 데이터에 대한 읽기 동작을 수행하기 위한 제2 직접 메모리 액세스; 및A second direct memory access coupled to the bus and a serial interface, for performing a read operation on the non-voice data while the first direct memory access performs a voice data read operation; And 상기 마이크로 컨트롤러 및 상기 외부 메모리를 연결하기 위한 직렬 인터페이스(serial peripheral interface)를 포함하는 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치.And a serial controller (serial peripheral interface) for connecting the microcontroller and the external memory. 제1항에 있어서,The method of claim 1, 상기 제1 및 제2 직접 메모리 액세스와 연결되어, 상기 제1 및 제2 직접 메모리 액세스가 충돌 없이 동시에 동작하도록 제어하기 위한 아비터(arbiter)를 더 포함하는 것을 특징으로 하는 마이크로 컨트롤러를 기반으로 한 음성 디코딩 장치.And an arbiter coupled to the first and second direct memory accesses to control the first and second direct memory accesses to operate simultaneously without collisions. Decoding device. 직렬 인터페이스에 의해 마이크로 컨트롤러 및 디코더와 직렬 인터페이스에 의해 연결된 외부 메모리 내에 저장된 음성 데이터 및 비음성 데이터를 처리하는데 있어서,In processing voice data and non-voice data stored in an external memory connected by a serial interface with a microcontroller and decoder by a serial interface, 상기 음성 데이터에 대한 읽기 동작은 상기 외부 메모리 및 디코더와 연결되는 제1 직접 메모리 액세스에 의해 수행되고,A read operation on the voice data is performed by a first direct memory access coupled with the external memory and a decoder, 상기 비음성 데이터에 대한 읽기 동작은 상기 제1 직접 메모리 액세스와 독립적으로 상기 외부 메모리와 연결되는 제2 직접 메모리 액세스에 의해 수행되는 것을 특징으로 하는 마이크로 컨트롤러를 기반으로 한 음성 디코딩 방법.And the read operation on the non-voice data is performed by a second direct memory access connected to the external memory independently of the first direct memory access. 제3항에 있어서,The method of claim 3, 상기 제1 및 제2 직접 메모리 액세스는 상기 직렬 인터페이스와 연결된 아비터(arbiter)에 의해 각각 제어되는 것을 특징으로 하는 마이크로 컨트롤러를 기반으로 한 음성 디코딩 방법.Wherein said first and second direct memory accesses are controlled by an arbiter coupled to said serial interface, respectively. 삭제delete 삭제delete 삭제delete 삭제delete
KR1020070030904A 2007-03-29 2007-03-29 Voice decoding device based on microcontroller and voice decoding method using same KR100874439B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020070030904A KR100874439B1 (en) 2007-03-29 2007-03-29 Voice decoding device based on microcontroller and voice decoding method using same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020070030904A KR100874439B1 (en) 2007-03-29 2007-03-29 Voice decoding device based on microcontroller and voice decoding method using same

Publications (2)

Publication Number Publication Date
KR20080088230A KR20080088230A (en) 2008-10-02
KR100874439B1 true KR100874439B1 (en) 2008-12-16

Family

ID=40150542

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020070030904A KR100874439B1 (en) 2007-03-29 2007-03-29 Voice decoding device based on microcontroller and voice decoding method using same

Country Status (1)

Country Link
KR (1) KR100874439B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001134548A (en) 1999-11-04 2001-05-18 Sharp Corp Multiprocessor system
US20020013633A1 (en) * 2000-07-28 2002-01-31 Tomoya Kodama Audio processor and audio data processing method

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001134548A (en) 1999-11-04 2001-05-18 Sharp Corp Multiprocessor system
US20020013633A1 (en) * 2000-07-28 2002-01-31 Tomoya Kodama Audio processor and audio data processing method

Also Published As

Publication number Publication date
KR20080088230A (en) 2008-10-02

Similar Documents

Publication Publication Date Title
US20050198471A1 (en) Micro-controller for reading out compressed instruction code and program memory for compressing instruction code and storing therein
US20040064606A1 (en) Memory system allowing fast operation of processor while using flash memory incapable of random access
US6523755B2 (en) Semiconductor memory device
JP2009533763A (en) Multimedia card with large storage capacity
KR100874439B1 (en) Voice decoding device based on microcontroller and voice decoding method using same
JP2000276370A (en) Microcomputer, electronic equipment and emulation method
US6349388B1 (en) Timer processing engine for supporting multiple virtual minimum time timers
JP2009009388A (en) Portable terminal equipment and boot processing method thereof
KR100532417B1 (en) The low power consumption cache memory device of a digital signal processor and the control method of the cache memory device
KR100410986B1 (en) Method for access controlling of digital sigrnal processor external memory
JP2860655B2 (en) Parallel instruction execution type processor
KR100891390B1 (en) Micro controller and method of updating the same
JP2006209371A (en) Controller
KR101202691B1 (en) Data procdssing apparatus and method
JP2010224806A (en) Controller and semiconductor storage device
CN110309080B (en) Method for improving cache data loading speed
JP2007026091A (en) Interrupt control circuit and its control method
JPS6330658B2 (en)
JP2010039503A (en) Serial memory device and signal processing system
JP3642420B2 (en) Semiconductor device
JP2002318686A (en) Processor
JP2003076395A (en) Audio signal processor
JPH1083384A (en) Microcomputer
KR20000074229A (en) Programe down loading apparatus in engine ECU of vehivle
JP2004280664A (en) Bit arithmetic unit

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20111212

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20121205

Year of fee payment: 5

LAPS Lapse due to unpaid annual fee