KR101073818B1 - Method and apparatus for transmitting/receiving data of system comprising plurality of audio interface - Google Patents

Method and apparatus for transmitting/receiving data of system comprising plurality of audio interface Download PDF

Info

Publication number
KR101073818B1
KR101073818B1 KR1020080138730A KR20080138730A KR101073818B1 KR 101073818 B1 KR101073818 B1 KR 101073818B1 KR 1020080138730 A KR1020080138730 A KR 1020080138730A KR 20080138730 A KR20080138730 A KR 20080138730A KR 101073818 B1 KR101073818 B1 KR 101073818B1
Authority
KR
South Korea
Prior art keywords
audio
data
interfaces
bus
audio interfaces
Prior art date
Application number
KR1020080138730A
Other languages
Korean (ko)
Other versions
KR20100080102A (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 KR1020080138730A priority Critical patent/KR101073818B1/en
Publication of KR20100080102A publication Critical patent/KR20100080102A/en
Application granted granted Critical
Publication of KR101073818B1 publication Critical patent/KR101073818B1/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/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • 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/10Program control for peripheral devices
    • G06F13/105Program control for peripheral devices where the programme performs an input/output emulation function
    • 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/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

복수의 오디오 인터페이스와 데이터를 송수신하는 데이터 처리 장치의 데이터 버스를 보다 효율적으로 이용하기 위해 소정의 장치로부터 복수의 오디오 인터페이스 중 하나의 오디오 인터페이스에 데이터 버스를 할당할 것을 요청받고, 요청에 따라 데이터 버스를 할당하는 방법 및 장치가 개시된다.In order to more efficiently use a data bus of a data processing device that transmits and receives data to and from a plurality of audio interfaces, a predetermined device is requested to allocate a data bus to one of the plurality of audio interfaces, and to request a data bus. A method and apparatus for allocating a system is disclosed.

오디오 인터페이스, 버스, 할당 Audio interface, bus, assignment

Description

복수의 오디오 인터페이스를 포함하는 시스템의 데이터 송수신 방법 및 장치{Method and apparatus for transmitting/receiving data of system comprising plurality of audio interface}Method and apparatus for transmitting / receiving data of system comprising multiple of audio interface

본 발명은 복수의 데이터를 송신 또는 수신하는 방법 및 장치에 관한 것으로, 보다 상세히는 소정의 데이터 처리 장치와 복수의 오디오 인터페이스가 데이터를 송수신하는 방법 및 장치에 관한 것이다. The present invention relates to a method and apparatus for transmitting or receiving a plurality of data, and more particularly, to a method and apparatus for transmitting and receiving data between a predetermined data processing apparatus and a plurality of audio interfaces.

오디오 인터페이스는 아날로그 오디오 장치와 디지털 오디오 신호 처리 장치 사이의 인터페이스이다. 아날로그 오디오 장치 즉, 스피커, 마이크 등과 디지털 오디오 신호 처리 장치를 연결하여 스피커를 통해 오디오를 출력하거나, 마이크를 통해 오디오를 입력받는다. 여기서, 디지털 오디오 신호 처리 장치는 오디오 음원을 디지털 형태로 처리하는 장치로서 CPU(Central Processing Unit), DMA(Direct Memory Access) 등이 이에 해당한다.The audio interface is an interface between the analog audio device and the digital audio signal processing device. An analog audio device, that is, a speaker, a microphone, and the like are connected to a digital audio signal processing device to output audio through a speaker or receive audio through a microphone. Here, the digital audio signal processing apparatus is a device for processing an audio source in a digital form, such as a CPU (Central Processing Unit), DMA (Direct Memory Access).

도 1은 종래 기술에 따른 디지털 오디오 처리 시스템이다. 1 is a digital audio processing system according to the prior art.

종래 기술에 따르면, 복수의 오디오 인터페이스(120 내지 140)가 디지털 오디오 신호의 처리를 위헤 CPU(100) 또는 DMA(110)와 데이터를 송수신하기 위해서는 각각의 오디오 인터페이스에 대해 데이터 버스를 할당하여야 한다. 특히 DMA(110)와 통신하기 위해서는 전송을 위한 버스(111) 및 수신을 위한 버스(112)가 각각의 오디오 인터페이스에 대해 할당되어야 한다. According to the related art, a plurality of audio interfaces 120 to 140 need to allocate a data bus to each audio interface in order to transmit and receive data with the CPU 100 or the DMA 110 for processing digital audio signals. In particular, in order to communicate with the DMA 110, a bus 111 for transmission and a bus 112 for reception must be allocated for each audio interface.

디지털 오디오와 관련된 다양한 표준들 및 장치들이 존재하고, 이러한 표준 및 장치들과 호환되기 위해 하나의 오디오 처리 시스템이 복수의 오디오 인터페이스(120 내지 140)를 포함해야 하는 경우가 점점 증가하고 있다. 이 경우, 도 1과 같이 각각의 오디오 인터페이스에 대해 데이터 버스를 할당하면, 오디오 인터페이스의 개수가 증가할수록 할당해야 하는 데이터 버스도 증가한다. 이러한 데이터 버스의 증가는 불필요하게 시스템의 복잡도를 증가시킨다. There are various standards and devices associated with digital audio, and there is an increasing number of cases in which one audio processing system must include a plurality of audio interfaces 120 to 140 in order to be compatible with these standards and devices. In this case, when the data bus is allocated to each audio interface as shown in FIG. 1, the data bus to be allocated increases as the number of audio interfaces increases. This increase in data bus unnecessarily increases the complexity of the system.

본 발명이 해결하고자 하는 과제는 데이터 버스 공유를 이용해 데이터 처리 장치와 복수의 오디오 인터페이스 사이의 데이터 송수신을 보다 효율적으로 수행하기 위한 데이터 송수신 제어 방법 및 장치를 제공하는데 있고, 상기 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공하는데 있다. SUMMARY OF THE INVENTION An object of the present invention is to provide a data transmission / reception control method and apparatus for more efficiently performing data transmission and reception between a data processing device and a plurality of audio interfaces using data bus sharing, and a program for executing the method. A computer readable recording medium having recorded thereon is provided.

상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 데이터 처리 장치와 복수의 오디오 인터페이스 사이의 데이터 송수신을 제어하는 방법은 소정의 장치로부터 상기 복수의 오디오 인터페이스 중 하나의 오디오 인터페이스에 데이터 버스를 할당할 것을 요청받는 단계; 및 상기 요청에 따라 데이터 버스를 할당하는 단계를 포함한다.According to an aspect of the present invention, there is provided a method of controlling data transmission and reception between a data processing device and a plurality of audio interfaces, by using a data bus from one device to one audio interface of the plurality of audio interfaces. Being asked to assign; And allocating a data bus in accordance with the request.

본 발명의 보다 바람직한 실시예에 따르면, 상기 복수의 오디오 인터페이스는 상기 복수의 오디오 인터페이스들이 동작하는 클럭들이 동일하거나, 유사한 것을 특징으로 한다.According to a more preferred embodiment of the present invention, the plurality of audio interfaces are characterized in that the clocks on which the plurality of audio interfaces operate are the same or similar.

본 발명의 보다 바람직한 실시예에 따르면, 상기 복수의 오디오 인터페이스는 상기 복수의 오디오 인터페이스들 중 하나의 오디오 인터페이스가 동작하면, 나머지 오디오 인터페이스는 동작하지 않는 것을 특징으로 한다.According to a more preferred embodiment of the present invention, the plurality of audio interface is characterized in that when one of the audio interface of the plurality of audio interface is operated, the other audio interface does not operate.

본 발명의 보다 바람직한 실시예에 따르면, 상기 복수의 오디오 인터페이스 는 상기 복수의 오디오 인터페이스들이 동작하는 클럭들을 합한 값이 상기 데이터 처리 장치가 동작하는 클럭보다 작은 것을 특징으로 한다.According to a more preferred embodiment of the present invention, the plurality of audio interfaces is characterized in that the sum of the clocks of the operation of the plurality of audio interfaces is smaller than the clock of the data processing device.

상기 기술적 과제를 해결하기 위한 본 발명의 일 실시예에 따른 데이터 처리 장치와 복수의 오디오 인터페이스 사이의 데이터 송수신을 제어하는 장치는 소정의 장치로부터 상기 복수의 오디오 인터페이스 중 하나의 오디오 인터페이스에 데이터 버스를 할당할 것을 요청받는 제어부; 및 상기 요청에 따라 데이터 버스를 할당하는 다중화부를 포함하는 것을 특징으로 한다.According to an aspect of the present invention, an apparatus for controlling data transmission and reception between a data processing apparatus and a plurality of audio interfaces may include a data bus from one device to one audio interface of the plurality of audio interfaces. A controller which is requested to allocate; And a multiplexer for allocating a data bus in response to the request.

상기 기술적 과제를 해결하기 위해 본 발명은 상기된 데이터 송수신 제어 방법을 실행하기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다. In order to solve the above technical problem, the present invention provides a computer-readable recording medium having recorded thereon a program for executing the above-described data transmission and reception control method.

본 발명에 따르면, 실제 오디오 데이터를 송수신하는 오디오 인터페이스에게만 데이터 버스를 할당하여 데이터 처리 장치와 데이터를 송수신하게 함으로써 복수의 오디오 인터페이스를 구비하는 시스템을 낮은 복잡도로 구현할 수 있다.According to the present invention, a system having a plurality of audio interfaces can be implemented with low complexity by allocating a data bus only to an audio interface for transmitting and receiving actual audio data so as to transmit and receive data with the data processing apparatus.

이하에서는 도면을 참조하여 본 발명의 바람직한 실시예들을 상세히 설명한다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.

도 2는 본 발명의 일 실시예에 따른 오디오 처리 시스템(200)을 도시한다. 2 illustrates an audio processing system 200 according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 일 실시예에 따른 오디오 처리 시스템(200)은 오디오 데이터 처리 장치(210), 제어장치(220) 및 복수의 오디오 인터페이스(230 내지 234)를 포함한다. Referring to FIG. 2, an audio processing system 200 according to an exemplary embodiment of the present invention includes an audio data processing apparatus 210, a controller 220, and a plurality of audio interfaces 230 to 234.

오디오 데이터 처리 장치(210)는 디지털화된 오디오 데이터를 처리하는 모든 장치일 수 있다. 예를 들어, 중앙 처리 장치(CPU : Central Processing Unit) 또는 DMA(Direct Memory Access)일 수 있으나, 이에 한정되지 아니한다. 오디오 데이터의 처리를 위해 오디오 데이터 처리 장치(210)는 데이터 버스를 통해 오디오 데이터를 복수의 오디오 인터페이스(230 내지 234)에 전송하거나, 복수의 오디오 인터페이스(230 내지 234)로부터 수신한다. 복수의 오디오 인터페이스(230 내지 234)는 I2S(Inter-IC Sound), S/PDIF(Sony/Philips Digital Interconnect Format) 및 AC97(Audio Codec '97) 중 적어도 하나일 수 있다.The audio data processing device 210 may be any device for processing digitized audio data. For example, the processing unit may be a central processing unit (CPU) or a direct memory access (DMA), but is not limited thereto. In order to process the audio data, the audio data processing apparatus 210 transmits audio data to the plurality of audio interfaces 230 to 234 or receives from the plurality of audio interfaces 230 to 234 through a data bus. The plurality of audio interfaces 230 to 234 may be at least one of Inter-IC Sound (I2S), Sony / Philips Digital Interconnect Format (S / PDIF), and AC97 (Audio Codec '97).

예를 들어, 오디오 데이터 처리 장치(210)는 오디오 데이터를 소정의 저장 장치(미도시)에 저장하기 위해 데이터 버스를 통해 복수의 오디오 인터페이스(230 내지 234) 중 하나의 오디오 인터페이스로부터 오디오 데이터를 수신할 수 있다. 또한, 오디오 데이터를 재생하기 위해 데이터 버스를 통해 복수의 오디오 인터페이스(230 내지 234) 중 하나의 오디오 인터페이스에 오디오 데이터를 전송할 수 있다. For example, the audio data processing device 210 receives audio data from one of the plurality of audio interfaces 230 to 234 through a data bus to store the audio data in a predetermined storage device (not shown). can do. In addition, audio data may be transmitted to one of the plurality of audio interfaces 230 to 234 through the data bus to reproduce the audio data.

제어 장치(220)는 데이터를 송수신하기 위한 데이터 버스를 복수의 오디오 인터페이스(230 내지 234) 중 하나에 할당한다. 종래 기술에 따르면 오디오 데이터 처리 장치(210)가 복수의 오디오 인터페이스(230 내지 234)와 데이터를 송수신하기 위해서는 각각의 오디오 인터페이스(230 또는 232 또는 234)마다 상이한 데이터 버스를 할당한다. 데이터 처리 장치(210)는 서로 다른 데이터 버스를 이용해 서로 다른 오디오 인터페이스(230 또는 232 또는 234)와 데이터를 송수신한다. The control device 220 allocates a data bus for transmitting and receiving data to one of the plurality of audio interfaces 230 to 234. According to the related art, the audio data processing apparatus 210 allocates a different data bus to each audio interface 230 or 232 or 234 to transmit and receive data with the plurality of audio interfaces 230 to 234. The data processing device 210 transmits and receives data with different audio interfaces 230 or 232 or 234 using different data buses.

그러나 본 발명에 따른 제어 장치(220)는 각각의 오디오 인터페이스(230 또는 232 또는 234)에 서로 다른 데이터 버스를 할당하는 것이 아니라, 하나의 인터페이스를 필요한 경우에만 복수의 오디오 인터페이스(230 내지 234) 중 하나의 오디오 인터페이스에 할당함으로써 데이터 버스를 보다 효율적으로 이용한다. 도 3을 참조하여 보다 상세히 설명한다. However, the control device 220 according to the present invention does not allocate different data buses to the respective audio interfaces 230 or 232 or 234, but among the plurality of audio interfaces 230 to 234 only when one interface is required. Assigning to one audio interface makes more efficient use of the data bus. This will be described in more detail with reference to FIG. 3.

도 3은 본 발명의 일 실시예에 따른 오디오 인터페이스와 데이터 송수신하기 위해 데이터 버스를 할당하는 제어 장치(220)를 도시한다.3 illustrates a control device 220 for allocating a data bus for data transmission and reception with an audio interface according to an embodiment of the present invention.

도 3을 참조하면, 본 발명의 일 실시예에 따른 제어 장치(220)는 제어부(310) 및 다중화부(320)를 포함한다. Referring to FIG. 3, the control device 220 according to an embodiment of the present invention includes a controller 310 and a multiplexer 320.

제어부(310)는 소정의 장치로부터 복수의 오디오 인터페이스(230 내지 234) 중 하나의 오디오 인터페이스와 데이터의 송수신하기 위해 데이터 버스를 할당할 것을 요청받는다. The controller 310 is requested to allocate a data bus to transmit and receive data with one of the plurality of audio interfaces 230 to 234 from a predetermined device.

소정의 장치는 CPU일 수 있으며, 이 경우 CPU는 오디오 데이터 처리 장치(210)인 동시에 제어 장치(220)에 데이터 버스의 할당을 요청하는 장치이다. 예를 들어, CPU가 처리하려는 프로세스가 오디오 인터페이스 #1(230)과 관련된 프로세스인 경우, 오디오 인터페이스 #1(230)에 데이터 버스를 할당할 것을 제어 장치(220)의 제어부(310)에 요청한다. The predetermined device may be a CPU, in which case the CPU is an audio data processing device 210 and a device for requesting the control device 220 to allocate a data bus. For example, when the process to be processed by the CPU is a process related to the audio interface # 1 230, the controller 310 of the control device 220 requests to allocate the data bus to the audio interface # 1 230. .

데이터 버스의 할당을 요청하는 장치가 CPU인 경우를 예로 들어 설명하였으나, 반드시 이에 한정되지 아니하며, 제어 장치(220)에 복수의 오디오 인터페이스 와 데이터를 송수신하기 위한 데이터 버스를 할당할 것을 요청하는 모든 장치들이 데이터 버스의 할당을 요청하는 장치에 해당할 수 있다. 예를 들어, 멀티미디어 데이터를 처리하는 DSP(Digital Signal Processor)가 오디오 신호를 처리를 위해 오디오 인터페이스 #2(232)와 데이터를 송수신할 필요가 있는 경우 제어 장치(220)에 오디오 인터페이스 #2(232)에 데이터 버스를 할당할 것을 요청할 수도 있다.Although the case in which the device requesting the allocation of the data bus is a CPU has been described as an example, the present invention is not limited thereto, and all devices requesting the control device 220 to allocate a data bus for transmitting and receiving data with a plurality of audio interfaces. May correspond to a device requesting allocation of a data bus. For example, when a digital signal processor (DSP) that processes multimedia data needs to transmit / receive data to / from the audio interface # 2 (232) for processing an audio signal, the audio interface # 2 (232) to the control device 220. ) May be assigned to allocate a data bus.

제어부(310)는 소정의 장치로부터 수신한 요청에 따라 데이터 버스의 할당을 위한 제어 신호를 생성하고, 생성된 제어 신호를 다중화부(320)에 전송한다. The controller 310 generates a control signal for allocating a data bus according to a request received from a predetermined device, and transmits the generated control signal to the multiplexer 320.

다중화부(320)는 제어부(310)로부터 수신된 제어 신호에 기초해 데이터 버스를 할당한다. 수신된 제어 신호에 기초해 데이터 처리 장치(210)와 복수의 오디오 인터페이스(230 내지 234) 중 하나의 오디오 인터페이스가 데이터를 송수신하기 위한 데이터 버스를 할당한다. 일반적인 다중화기(multiplexer)가 오디오 데이터의 송수신을 위한 데이터 버스의 할당에 이용될 수 있다. 오디오 데이터 처리 장치(210)와 제어 장치(220)를 연결하는 데이터 버스를 복수의 오디오 인터페이스(230 내지 234) 중 하나에 포워딩하는 방식으로 다중화를 수행한다. 오디오 인터페이스들(230 내지 234)은 동일 또는 유사한 클럭에서 동작하고, 데이터 처리 장치(210)에 비해 상대적으로 낮은 클럭에서 동작한다. The multiplexer 320 allocates a data bus based on a control signal received from the controller 310. Based on the received control signal, the data processing apparatus 210 and one audio interface among the plurality of audio interfaces 230 to 234 allocate a data bus for transmitting and receiving data. A general multiplexer may be used for allocating a data bus for transmitting and receiving audio data. The multiplexing is performed by forwarding a data bus connecting the audio data processing device 210 and the control device 220 to one of the plurality of audio interfaces 230 to 234. The audio interfaces 230-234 operate at the same or similar clock, and operate at a lower clock than the data processing device 210.

예를 들어, 오디오 인터페이스 #1(230)이 제1 클럭에서 동작하고, 오디오 인터페이스 #2(230)는 제2 클럭에서 동작한다고 할 때, 제1 클럭과 제2 클럭은 동일하거나, 제1 클럭과 제2 클럭의 차이는 소정 값 이하이다. 모두 오디오 데이터를 처리하는 인터페이스들로 클럭이 동일 또는 유사할 수 있다. 또한, 데이터 처리 장치(210)는 데이터 처리 장치(210)에 연결된 모든 주변 장치들로부터 수신되는 데이터를 처리하므로 오디오 인터페이스들(230 내지 234)에 비해 큰 클럭에서 동작하게 된다. 예를 들어, 3 개의 오디오 인터페이스들(230 내지 234)와 연결된 데이터 처리 장치가 동작하는 클럭은 각각의 오디오 인터페이스들(230 내지 234)이 동작하는 클럭을 모두 합한 값보다 클 수 있다. For example, when audio interface # 1 230 operates at the first clock and audio interface # 2 230 operates at the second clock, the first clock and the second clock are the same, or the first clock. The difference between and the second clock is less than or equal to a predetermined value. The clocks may all be the same or similar with interfaces that process audio data. In addition, since the data processing device 210 processes data received from all peripheral devices connected to the data processing device 210, the data processing device 210 operates at a larger clock than the audio interfaces 230 to 234. For example, the clock at which the data processing device connected to the three audio interfaces 230 to 234 operates may be greater than the sum of the clocks at which the respective audio interfaces 230 to 234 operate.

또한, 오디오 인터페이스들(230 내지 234)는 하나의 오디오 인터페이스가 동작하면 나머지 오디오 인터페이스는 동작하지 않는 것이 일반적이다. 하나의 오디오 인터페이스를 통해 오디오 데이터를 처리하면서 동시에 또 다른 오디오 인터페이스를 통해 오디오 데이터를 처리하는 경우는 매우 드물기 때문이다.In addition, the audio interfaces 230 to 234 generally operate when one audio interface operates and the other audio interface does not operate. This is because it is very rare to process audio data through one audio interface while simultaneously processing the audio data through another audio interface.

따라서, 각각의 오디오 인터페이스마다 상이한 데이터 버스를 할당하면, 데이터 버스의 낭비가 될 뿐이며, 다중화를 통해 데이터 버스를 공유하여 보다 효율적으로 데이터 버스를 이용할 수 있다. Therefore, allocating different data buses for each audio interface is a waste of data busses, and the data buses can be shared more efficiently by multiplexing.

도 4는 본 발명의 또 다른 실시예에 따른 오디오 처리 시스템(400)을 도시한다. 4 illustrates an audio processing system 400 according to another embodiment of the present invention.

도 4를 참조하면 본 발명의 또 다른 실시예에 따른 오디오 처리 시스템(400)은 CPU(410), DMA(420), 제어 장치(430) 및 복수의 오디오 인터페이스(440 내지 444)를 포함하고, 제어 장치(430)는 제어부(432), CPU 버스 다중화부(434), DMA 수신 버스 다중화부(436) 및 DMA 송신 버스 다중화부(438)를 포함한다. 도 2 및 3은 하나의 오디오 데이터 처리 장치(210)가 복수의 오디오 인터페이스(230 내지 230)와 데이터를 송수신하는 경우를 예로 들었으나, 도 4는 복수의 오디오 데이터 처리 장치(410 및 420)가 복수의 오디오 인터페이스(440 내지 444)와 데이터를 송수신하는 경우를 예로 들어 설명한다. CPU(410) 및 DMA(420)가 복수의 오디오 인터페이스(440 내지 444)와 데이터를 송수신한다. Referring to FIG. 4, an audio processing system 400 according to another embodiment of the present invention includes a CPU 410, a DMA 420, a control device 430, and a plurality of audio interfaces 440 to 444. The control device 430 includes a control unit 432, a CPU bus multiplexer 434, a DMA receive bus multiplexer 436, and a DMA transmit bus multiplexer 438. 2 and 3 illustrate a case in which one audio data processing apparatus 210 transmits and receives data with the plurality of audio interfaces 230 to 230, but FIG. 4 illustrates a plurality of audio data processing apparatuses 410 and 420. A case of transmitting and receiving data with the plurality of audio interfaces 440 to 444 will be described as an example. The CPU 410 and the DMA 420 exchange data with the plurality of audio interfaces 440 through 444.

도 4에 도시된 바와 같이 본 발명의 또 다른 실시예에 따른 제어장치(430)는 CPU(410)가 복수의 오디오 인터페이스(440 내지 444)와 데이터를 송수신하기 위해 이용하는 CPU 버스를 다중화하기 위한 CPU 버스 다중화부(434), DMA(420)가 복수의 오디오 인터페이스(440 내지 444)로부터 데이터를 수신하기 위해 이용하는 DMA 수신 버스를 다중화하기 위한 DMA 수신 버스 다중화부(436) 및 DMA(420)가 복수의 오디오 인터페이스(440 내지 444)에 데이터를 전송하기 위해 이용하는 DMA 전송 버스를 다중화하기 위한 DMA 전송 버스 다중화부(438)을 포함한다. As shown in FIG. 4, the control device 430 according to another embodiment of the present invention is a CPU for multiplexing a CPU bus that the CPU 410 uses to transmit and receive data with the plurality of audio interfaces 440 to 444. The bus multiplexer 434, the DMA receive bus multiplexer 436 and the DMA 420 for multiplexing the DMA receive buses used by the DMA 420 to receive data from the plurality of audio interfaces 440 to 444. And a DMA transfer bus multiplexer 438 for multiplexing the DMA transfer bus used for transferring data to the audio interfaces 440 to 444 of the apparatus.

DMA(420)는 데이터의 전송과 수신을 서로 다른 데이터 버스를 이용해 수행하므로, 전송에 이용되는 DMA 전송 버스와 수신에 이용되는 DMA 수신 버스를 각각 다중화할 필요가 있다.Since the DMA 420 performs data transmission and reception using different data buses, it is necessary to multiplex the DMA transmission bus used for transmission and the DMA reception bus used for reception.

제어부(432)는 도 3에 도시된 제어부(310)에 대응되는 구성 요소이다. 다만, 도 3의 제어부(310)는 소정의 장치의 요청에 따라 하나의 다중화부(320)를 제어하였으나, 도 4의 제어부(432)는 복수의 다중화부(434 내지 438)를 제어한다. 이때 제어부(432)는 CPU(410)로부터 데이터 버스의 할당 요청을 수신하여 복수의 다중화부(434 내지 438)를 제어할 수 있다.The controller 432 is a component corresponding to the controller 310 illustrated in FIG. 3. However, the controller 310 of FIG. 3 controls one multiplexer 320 according to a request of a predetermined device, but the controller 432 of FIG. 4 controls the plurality of multiplexers 434 to 438. In this case, the controller 432 may receive a data bus allocation request from the CPU 410 to control the multiplexers 434 to 438.

예를 들어, CPU(410)는 오디오 인터페이스 #1(440)과 데이터를 송수신하기 위해 제어부(432)에 CPU 버스의 할당을 요청한다. 이에 따라 제어부(432)는 CPU 버스 다중화부(434)를 제어하여, CPU(410)와 CPU 버스 다중화부(434)를 연결하는 데이터 버스를 복수의 오디오 인터페이스(440 내지 444) 중 하나에 포워딩한다.For example, the CPU 410 requests the controller 432 to allocate a CPU bus to transmit and receive data with the audio interface # 1 440. Accordingly, the controller 432 controls the CPU bus multiplexer 434 to forward the data bus connecting the CPU 410 and the CPU bus multiplexer 434 to one of the audio interfaces 440 to 444. .

또한, CPU(410) 및 DMA(420)의 데이터 버스들은 조합되어 하나의 오디오 인터페이스에 할당될 수 있다.In addition, the data busses of the CPU 410 and the DMA 420 may be combined and assigned to one audio interface.

전술한 예에서 CPU(410)와 오디오 인터페이스 #1(440)이 오디오 데이터를 송수신하면서 오디오 데이터의 처리는 과정에서, 오디오 인터페이스 #1(440)이 오디오 데이터를 저장/독출하는 메모리에 직접 액세스할 필요가 있을 수 있다. 따라서, DMA 수신 버스 다중화부(436) 및 DMA 전송 버스 다중화부(438)도 제어하여 DMA(420)가 오디오 인터페이스 #1(440)과 데이터를 송수신하게 할 수 있다. 물론, 오디오 인터페이스 #1(440)이 오디오 데이터를 저장/독출하는 메모리에 직접 액세스할 필요가 없는 경우에는 CPU 버스 다중화부(434)만을 제어하여 CPU 버스만 할당되도록 제어할 수도 있다.In the above example, while the CPU 410 and the audio interface # 1 440 transmit and receive audio data, in the process of processing the audio data, the audio interface # 1 440 directly accesses a memory in which the audio data is stored / read. You may need to. Accordingly, the DMA receive bus multiplexer 436 and the DMA transmit bus multiplexer 438 may also be controlled to allow the DMA 420 to transmit and receive data with the audio interface # 1 440. Of course, when the audio interface # 1 440 does not need to directly access a memory for storing / reading audio data, only the CPU bus multiplexer 434 may be controlled to allocate only the CPU bus.

오디오 데이터를 메모리에 저장하거나, 메모리로부터 독출하는 경우에는 두개의 버스를 모두 할당할 필요가 없을 수 있다. 예를 들어, 오디오 인터페이스 #1(440)을 이용해 오디오를 출력하는 경우에 DMA 수신 버스는 할당할 필요가 없으므로, 제어부(432)가 DMA 수신 버스 다중화부(436)를 제어할 필요는 없다. 이 경우 오디오의 출력과 관련된 CPU 버스 또는 DMA 송신 버스만 할당한다. When audio data is stored in or read from the memory, it may not be necessary to allocate both buses. For example, when audio is output using the audio interface # 1 440, the DMA receive bus does not need to be allocated, and thus the controller 432 does not need to control the DMA receive bus multiplexer 436. In this case, only the CPU bus or DMA transmit bus associated with the audio output is allocated.

도 4에 도시된 바와 같이 CPU 버스, DMA 수신 버스 및 DMA 송신 버스를 다중화함으로써, CPU(410) 또는 DMA(420)가 복수의 오디오 인터페이스들과 데이터를 송수신하기 위해 구비해야 하는 데이터 버스의 개수가 줄어든다. 도 4에서 CPU(410) 의 경우 복수의 오디오 인터페이스들과 데이터를 송수신하기 위해서 하나의 데이터 버스만 구비하고, DMA(420)의 경우 DMA 수신 버스 및 DMA 송신 버스 각각 하나씩만 구비하면 복수의 오디오 인터페이스들과 데이터를 송수신할 수 있다.By multiplexing the CPU bus, the DMA receive bus, and the DMA transmit bus, as shown in FIG. Decreases. In FIG. 4, the CPU 410 includes only one data bus for transmitting and receiving data with a plurality of audio interfaces, and the DMA 420 includes only one DMA receive bus and one DMA transmit bus. You can send and receive data with them.

도 5는 본 발명의 일 실시예에 따른 복수의 오디오 인터페이스와 데이터를 송수신하기 위한 데이터 버스를 할당하는 방법을 설명하기 위한 흐름도이다. 5 is a flowchart illustrating a method of allocating a data bus for transmitting and receiving data with a plurality of audio interfaces according to an embodiment of the present invention.

도 5를 참조하면, 단계 510에서 본 발명의 일 실시예에 따른 제어 장치는 소정의 장치로부터 데이터 처리 장치가 복수의 오디오 인터페이스 중 하나의 오디오 인터페이스와 데이터를 송수신하기 위해 데이터 버스를 할당할 것을 요청받는다. 데이터 버스의 할당을 요청하는 장치는 CPU일 수 있으며, 데이터 처리 장치는 CPU 또는 DMA일 수 있다. 복수의 오디오 인터페이스는 I2S, S/PDIF 및 AC97 중 적어도 하나일 수 있음은 전술하였다.  Referring to FIG. 5, in step 510, the control device according to an embodiment of the present invention requests a data processing device to allocate a data bus to transmit and receive data to and from one of the plurality of audio interfaces from a predetermined device. Receive. The device requesting allocation of the data bus may be a CPU, and the data processing device may be a CPU or a DMA. As described above, the plurality of audio interfaces may be at least one of I2S, S / PDIF, and AC97.

단계 520에서 본 발명에 따른 제어 장치는 단계 510에서의 요청에 따라 데이터 버스를 할당한다. 데이터 버스는 CPU 버스, DMA 수신 버스 및 DMA 전송 버스 중 적어도 하나를 포함한다. 복수의 오디오 인터페이스 중 하나의 오디오 인터페이스에 데이터 버스를 할당한다. In step 520, the control device according to the present invention allocates the data bus according to the request in step 510. The data bus includes at least one of a CPU bus, a DMA receive bus, and a DMA transfer bus. The data bus is assigned to one of the plurality of audio interfaces.

이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명이 상기의 실시예에 한정되는 것은 아니며, 이는 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다. 따라서, 본 발명의 사상은 아래에 기재된 특허청구범위에 의해서만 파악되어야 하고, 이와 균등하거나 또는 등가적인 변형 모두는 본 발명 사상의 범주에 속한다 할 것이다. 또한, 본 발명에 따른 시스템은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.As described above, although the present invention has been described by way of limited embodiments and drawings, the present invention is not limited to the above-described embodiments, which can be modified by those skilled in the art to which the present invention pertains. Modifications are possible. Accordingly, the spirit of the invention should be understood only by the claims set forth below, and all equivalent or equivalent modifications will fall within the scope of the invention. In addition, the system according to the present invention can be embodied as computer readable codes on a computer readable recording medium. The computer-readable recording medium includes all kinds of recording devices in which data that can be read by a computer system is stored. Examples of the recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like, and also include a carrier wave (for example, transmission through the Internet). The computer readable recording medium can also be distributed over network coupled computer systems so that the computer readable code is stored and executed in a distributed fashion.

도 1은 종래 기술에 따른 디지털 오디오 처리 시스템을 도시한다..1 shows a digital audio processing system according to the prior art.

도 2는 본 발명의 일 실시예에 따른 오디오 처리 시스템을 도시한다. 2 illustrates an audio processing system according to an embodiment of the present invention.

도 3은 본 발명의 일 실시예에 따른 오디오 인터페이스와 데이터 송수신하기 위해 데이터 버스를 할당하는 제어 장치를 도시한다.3 illustrates a control device for allocating a data bus for data transmission and reception with an audio interface according to an embodiment of the present invention.

도 4는 본 발명의 또 다른 실시예에 따른 오디오 처리 시스템을 도시한다. 4 illustrates an audio processing system according to another embodiment of the present invention.

도 5는 본 발명의 일 실시예에 따른 복수의 오디오 인터페이스와 데이터를 송수신하기 위해 데이터 버스를 할당하는 방법을 설명하기 위한 흐름도이다. 5 is a flowchart illustrating a method of allocating a data bus to transmit and receive data with a plurality of audio interfaces according to an embodiment of the present invention.

Claims (9)

각각에 다른 데이터 버스를 할당할 수 있는 복수의 오디오 인터페이스와 데이터 처리 장치 사이에 데이터 송수신을 제어하는 방법에 있어서,A method of controlling data transmission and reception between a plurality of audio interfaces and a data processing apparatus capable of assigning different data buses to each other, 상기 복수의 오디오 인터페이스 중 하나의 오디오 인터페이스에 데이터 버스를 할당할 것을 요청받는 단계; 및Receiving a request to allocate a data bus to one of the plurality of audio interfaces; And 상기 요청에 따라 상기 하나의 오디오 인터페이스에 데이터 버스를 할당하는 단계를 포함하고,Allocating a data bus to the one audio interface in accordance with the request; 상기 하나의 오디오 인터페이스를 제외한 나머지 오디오 인터페이스에는 다른 데이터 버스들을 할당하지 않는 것을 특징으로 하는 데이터 송수신 제어 방법.Do not assign other data buses to the other audio interface except the one audio interface. Data transmission and reception control method characterized in that. 제 1 항에 있어서, 상기 복수의 오디오 인터페이스는The method of claim 1, wherein the plurality of audio interfaces 상기 복수의 오디오 인터페이스들이 동작하는 클럭들이 동일하거나, 유사한 것을 특징으로 하는 데이터 송수신 제어 방법.And the clocks on which the plurality of audio interfaces operate are identical or similar. 제 1 항에 있어서, 상기 복수의 오디오 인터페이스는The method of claim 1, wherein the plurality of audio interfaces 상기 복수의 오디오 인터페이스들 중 하나의 오디오 인터페이스가 동작하면, 나머지 오디오 인터페이스는 동작하지 않는 것을 특징으로 하는 데이터 송수신 제어 방법.And when one audio interface of the plurality of audio interfaces operates, the other audio interface does not operate. 제 1 항에 있어서, 상기 복수의 오디오 인터페이스는The method of claim 1, wherein the plurality of audio interfaces 상기 복수의 오디오 인터페이스들이 동작하는 클럭들을 합한 값이 상기 데이 터 처리 장치가 동작하는 클럭보다 작은 것을 특징으로 하는 데이터 송수신 제어 방법.And a sum of clocks of the plurality of audio interfaces operating is smaller than a clock of the data processing apparatus. 각각에 다른 데이터 버스를 할당할 수 있는 복수의 오디오 인터페이스와 데이터 처리 장치 사이에 데이터 송수신을 제어하는 장치에 있어서,An apparatus for controlling data transmission and reception between a plurality of audio interfaces and a data processing apparatus capable of assigning different data buses to each other, 상기 복수의 오디오 인터페이스 중 하나의 오디오 인터페이스에 데이터 버스를 할당할 것을 요청받는 제어부; 및A controller that is requested to allocate a data bus to one of the plurality of audio interfaces; And 상기 요청에 따라 상기 하나의 오디오 인터페이스에 데이터 버스를 할당하는 다중화부를 포함하고,To the one audio interface upon request A multiplexer for allocating a data bus, 상기 다중화부를 통해서, 상기 하나의 오디오 인터페이스를 제외한 나머지 오디오 인터페이스에는 다른 데이터 버스들을 할당하지 않는 것을 특징으로 하는 데이터 송수신 제어 장치.The data transmission / reception control apparatus of claim 1, wherein the multiplexing unit does not allocate other data buses to the remaining audio interfaces except for the one audio interface. 제 5 항에 있어서, 상기 복수의 오디오 인터페이스는The method of claim 5, wherein the plurality of audio interfaces 상기 복수의 오디오 인터페이스들이 동작하는 클럭들이 동일하거나, 유사한 것을 특징으로 하는 데이터 송수신 제어 장치.And clocks on which the plurality of audio interfaces operate are identical or similar. 제 5 항에 있어서, 상기 복수의 오디오 인터페이스는The method of claim 5, wherein the plurality of audio interfaces 상기 복수의 오디오 인터페이스들 중 하나의 오디오 인터페이스가 동작하면, 나머지 오디오 인터페이스는 동작하지 않는 것을 특징으로 하는 데이터 송수신 제어 장치.And when one audio interface of the plurality of audio interfaces operates, the other audio interface does not operate. 제 5 항에 있어서, 상기 복수의 오디오 인터페이스는The method of claim 5, wherein the plurality of audio interfaces 상기 복수의 오디오 인터페이스들이 동작하는 클럭들을 합한 값이 상기 데이터 처리 장치가 동작하는 클럭보다 작은 것을 특징으로 하는 데이터 송수신 제어 장치.And a sum of clocks of the plurality of audio interfaces operating is smaller than a clock of the data processing apparatus. 삭제delete
KR1020080138730A 2008-12-31 2008-12-31 Method and apparatus for transmitting/receiving data of system comprising plurality of audio interface KR101073818B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020080138730A KR101073818B1 (en) 2008-12-31 2008-12-31 Method and apparatus for transmitting/receiving data of system comprising plurality of audio interface

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020080138730A KR101073818B1 (en) 2008-12-31 2008-12-31 Method and apparatus for transmitting/receiving data of system comprising plurality of audio interface

Publications (2)

Publication Number Publication Date
KR20100080102A KR20100080102A (en) 2010-07-08
KR101073818B1 true KR101073818B1 (en) 2011-10-14

Family

ID=42641096

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080138730A KR101073818B1 (en) 2008-12-31 2008-12-31 Method and apparatus for transmitting/receiving data of system comprising plurality of audio interface

Country Status (1)

Country Link
KR (1) KR101073818B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3444821B1 (en) * 2016-04-15 2021-04-07 GM Global Technology Operations LLC Car audio output control device and method therefor

Also Published As

Publication number Publication date
KR20100080102A (en) 2010-07-08

Similar Documents

Publication Publication Date Title
EP1492295B1 (en) Stream data processing device, stream data processing method, program, and medium
US6467002B1 (en) Single cycle modified round-robin arbitration with embedded priority
JP5551512B2 (en) COMMUNICATION CONTROL DEVICE, DATA COMMUNICATION METHOD, AND PROGRAM
JP5607784B2 (en) CAN open network configuration method, slave device operation method, PLC device control method, and PLC device control system
JP2007200245A (en) System bus controller, integrated circuit, and data processing system
US7778822B2 (en) Allocating audio processing among a plurality of processing units with a global synchronization pulse
JP2005222543A (en) Bus system
KR20160056382A (en) System on chip having semaphore function and emplementing method thereof
CN113051195A (en) Memory, GPU and electronic equipment
JP2022543151A (en) Memory controller and associated system and method for non-interfering access to non-volatile memory by multiple different masters
US8185679B2 (en) Controlling bus access
KR101073818B1 (en) Method and apparatus for transmitting/receiving data of system comprising plurality of audio interface
US6629001B1 (en) Configurable controller for audio channels
JPH0630086B2 (en) Device for assigning priority among computers operating in parallel
CN111679918B (en) Message transmission method and device
JP2007124692A (en) Transmitter station
CN115858440A (en) PCIe device management method, device and server
JP5146284B2 (en) Data transfer apparatus and data transfer method
CN114546393A (en) Multitask program compiling method and device and multi-core chip
JP2006251875A (en) Bus arbitration device and bus arbitration method
CN114020662B (en) Bridging module, data transmission system and data transmission method
CN115017093B (en) Method and device for on-chip external bus communication
KR100465343B1 (en) Shared bus structure for dynamic time division
KR100949534B1 (en) Method and apparatus for controlling data transmitting/receiving
JPH0895928A (en) Memory sharing system

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: 20141007

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160602

Year of fee payment: 5

R401 Registration of restoration
FPAY Annual fee payment

Payment date: 20161005

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee