KR930004231B1 - Channel control device for electrophonic instrument - Google Patents
Channel control device for electrophonic instrument Download PDFInfo
- Publication number
- KR930004231B1 KR930004231B1 KR1019900020609A KR900020609A KR930004231B1 KR 930004231 B1 KR930004231 B1 KR 930004231B1 KR 1019900020609 A KR1019900020609 A KR 1019900020609A KR 900020609 A KR900020609 A KR 900020609A KR 930004231 B1 KR930004231 B1 KR 930004231B1
- Authority
- KR
- South Korea
- Prior art keywords
- channel
- output
- request
- signal
- priority
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H1/00—Details of electrophonic musical instruments
- G10H1/18—Selecting circuits
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Electrophonic Musical Instruments (AREA)
Abstract
Description
제1도는 종래 시분할 처리장치의 구성도.1 is a block diagram of a conventional time division processing apparatus.
제2도는 제1도를 응요한 전자악기용 음원장치의 구성도.2 is a block diagram of an electronic musical instrument sound source according to FIG.
제3도는 종래의 채널 제어장치의 회로도.3 is a circuit diagram of a conventional channel control apparatus.
제4도는 제3도의 타이밍도.4 is a timing diagram of FIG.
제5도는 본 발명의 채널 제어장치의 회로도.5 is a circuit diagram of a channel control apparatus of the present invention.
제6도는 본 발명 가중치 계산기의 구성도.6 is a block diagram of the present invention weight calculator.
제7도는 본 발명 우선 순위 판별기의 회로도.7 is a circuit diagram of a priority discriminator of the present invention.
제8도는 본 발명 비교선택기의 구성도.8 is a block diagram of a comparative selector of the present invention.
제9도는 본 발명에 따른 타이밍도.9 is a timing diagram according to the present invention.
* 도면의 주요부분에 대한 부호의 설명* Explanation of symbols for main parts of the drawings
1 : 가중치 계산기부 2 : 우선순위 판별기1: weight calculator 2: priority discriminator
3, 6 : 래치 4 : 타이밍 제어기3, 6: latch 4: timing controller
5 : M분주기 및 계수기 7-10 : R/S플립플롭5: M divider and counter 7-10: R / S flip-flop
11-14 : 앤드게이트 15 : 오아게이트11-14: Andgate 15: Oagate
16-20 : 비교선택기 21 : 요청기억부16-20: Selector 21: Request Memory
22 : 비교선택기 이진트리부 23 : 비교기22: comparator binary tree 23: comparator
24, 25 : 멀티플렉서24, 25: multiplexer
본 발명은 전자악기용 음원 장치에서 다수의 채널을 시분할적으로 처리할 수 있는 전자악기용 채널 제어장치에 관한 것으로 특히 여러 채널의 서비스 요청이 동시에 자주 일어나는 경우 채널의 우선순위를 가변시켜 처리하므로 각 채널의 서비스 요청이 지연되는 것을 균등하게 처리해주기에 적당하도록 한 것이다.The present invention relates to an electronic musical instrument channel control apparatus capable of time-divisionally processing a plurality of channels in an electronic musical instrument sound source device. The service request of the channel is adequately handled to delay the delay.
종래의 시분할(Time Sharing)처리장치는 제1도와 같이 N개의 채널요구소스(31)가 채널제어장치(32)에 접속되어 입력되는 채널요구소스에 따라 채널제어장치(32)에서 공용(共用)장치(33)를 제어하도록 구성되어 있다.In the conventional time sharing processing apparatus, as shown in FIG. 1, N channel request sources 31 are connected to the channel control device 32, and are shared by the channel control device 32 according to the channel request source inputted thereto. It is configured to control the device 33.
제2도는 이러한 시분할 처리장치를 전자악기용 음원장치에 응용한 예를 나타낸 것으로 이때의 건반(34)과 건반 인터페이스(35)는 제1도의 채널요구소스(31)에 해당되는 것이고 음발생회로(36)는 제1도의 공용장치(33)에 해당되는 것으로 그 사이에서 채널제어장치(32)가 각각의 눌려진 건반마다 시분할적으로 음발생회로(36)를 할당시키도록 구성되어 있다. 제3도는 종래의 채널제어장치를 나타낸 것으로 장치사용 요청신호가 입력되는 요청기억부(37)와, 이 요청기억부(37)의 출력측에 접속되어 입력된 데이타를 바탕으로 가장 우선 순위가 높은 채널을 선택하여 그 채널을 이진수로 출력하는 우선순위 엔코더(Priority Encoder)(38)와, 이 우선 순위 엔코더(38)의 출력을 받아 채널 어드레스로 출력을 내보내는 래치(39)와, 상기 우선 순위 엔코더(38)와 래치(39)의 출력을 받아 요청기억부(37)와 래치(39)에 제어신호를 출력시키는 제어기(40)를 포함하여서 구성된다.2 shows an example in which the time division processing device is applied to a sound source device for electronic musical instruments. The keyboard 34 and the keyboard interface 35 correspond to the channel request source 31 of FIG. 36 corresponds to the common apparatus 33 of FIG. 1, and the channel control apparatus 32 is comprised so that the sound generating circuit 36 may be time-divisionally allocated to each pressed key between them. 3 shows a conventional channel control apparatus. The channel having the highest priority is connected to the request storage unit 37 to which a device use request signal is input, and the data inputted by being connected to the output side of the request memory unit 37. Selects a priority encoder 38 for outputting the channel as a binary number, a latch 39 for receiving the output of the priority encoder 38 and outputting the output to a channel address, and the priority encoder ( 38) and a controller 40 for receiving the output of the latch 39 and outputting a control signal to the request memory 37 and the latch 39.
이하에서 제3도와 같은 채널제어장치의 동작을 제4도의 타이밍도를 따라 설명하면 다음과 같다.Hereinafter, the operation of the channel control apparatus as shown in FIG. 3 will be described with reference to the timing diagram of FIG.
먼저 요청기억부(37)는 R/S플립플롭과 같은 것으로 구성되어 N개의 채널요청신호(SR0-SRN-1)가 셋입력단자(S0-SN-1)에 입력되면 이를 기억한다. 이때, 제어기(40)는 채널의 요청을 받아들여 해당 채널 어드레스가 래치(39)로 부터 출력되면 제어신호(RES0-RESN-1)를 발생시켜 요청기억부(37)의 리셋 입력단자(R0-RN-1)에 보낸다.First, the request memory unit 37 is configured as an R / S flip-flop, and when N channel request signals SR 0 -SR N-1 are input to the set input terminals S 0 -S N-1 , the memory is stored. do. At this time, the controller 40 receives the channel request and generates a control signal RES 0 -RES N-1 when the corresponding channel address is output from the latch 39 to reset the input terminal of the request memory unit 37 ( R 0 -R N-1 ).
그러면 요청기억부(37)에서는 요청된 결과에 따라 출력(Q0-QN-1)을 우선 순위 엔코더(38)에 입력시키고 이 우선 순위 엔코더(38)는 입력된 데이타를 바탕으로 가장 우선 순위가 높은 채널을 선택하여 그 채널을 이진수로 출력하며 래치(39)에서는 이러한 이진수를 입력받아 제어기(40)로부터 래치이네이블 제어신호(LCK)가 입력될때, 입력되는 데이타를 출력하여 채널 어드레스를 내보낸다.Then, the request storage unit 37 inputs outputs Q 0 -Q N-1 to the priority encoder 38 according to the requested result, and the priority encoder 38 has the highest priority based on the input data. Selects a channel with a high value and outputs the channel as a binary number. When the latch 39 receives the binary number and a latch enable control signal LCK is input from the controller 40, the channel 40 outputs a channel address. .
또한, 제어기(40)는 우선 순위 엔코더(38)로 부터 입력되는 신호(E)와 래치(39)로부터 입력되는 채널 어드레스를 기본으로하여 제어신호(RES0-RESN-1)(LCK)를 출력시키는데 이때 우선 순위 엔코더(38)로 부터 입력되는 신호(E)는 우선순위 엔코더(38)의 입력(D0-DN-1)이 모두 "0"일때 로우상태가 되고 입력(D0-DN-1)중 하나라도 "1"일때 하이상태가 된다.The controller 40 also controls the control signals RES 0 to RES N-1 LCK based on the signal E input from the priority encoder 38 and the channel address input from the latch 39. output sikineunde the priority encoder 38, the signal (E) which is input from the first input (D 0 -D N-1) of the priority encoder 38, all become "0" when low state input (D 0 - D N-1 ) goes high when any one of them is “1”.
제4도는 채널요청신호(SR0-SRN-1)가 2개인 경우(예를들어, SR0-SR1)로 만일 시간 "A"인 순간에 두개의 건반이 눌려져 채널요청신호(SR0), (SR1) 가 액티브되면 요청기억부(37)로 부터의 출력(Q0)(Q1)이 모두 하이상태("1"상태)가 된다.4 shows two channel request signals SR 0 -SR N-1 (for example, SR 0 -SR 1 ), if two keys are pressed at the moment "A", the channel request signal SR 0 ) And (SR 1 ) become active, the output Q 0 (Q 1 ) from the request memory unit 37 is all high (" 1 " state).
또한, 우선 순위 엔코더(38)는 만일 우선 순위가 입력(D0)이 가장 높고 입력(DN-1)이 가장 낮다고 할때에 출력값을 모두 "0"으로 출력함과 동시에 출력(E)이 하이상태가 된다.In addition, the priority encoder 38 outputs all of the output values as "0" when the priority is highest (D 0 ) and the lowest (D N-1 ), and at the same time, the output (E) Goes high.
따라서, 제어기(40)에서는 하이상태가 입력됨에 따른 제어신호(LCK)를 래치(39)로 내보내어 래치(39)로 하여금 채널 어드레스의 값이 "0"이 되도록 하며 또한 제어신호(RES0)를 액티브시켜 해당 요청기억을 지운다. 이때 한 채널당 할당되는 처리기간(제1도에서 한 채널이 공용장치(33)를 점유하고 있는 시간)이 M주기라고 하면 제어기(40)로 부터 최초의 제어신호(LCK)가 나온후 M주기후에 두번째의 제어신호(LCK)가 나와서 래치(39)로 하여금 새로운 데이타를 채널 어드레스로서 출력되게 한다.Therefore, the controller 40 sends the control signal LCK to the latch 39 as the high state is input, causing the latch 39 to have a value of the channel address "0" and also the control signal RES 0 . Activate to clear the request memory. At this time, if the processing period (time in which one channel occupies the common device 33 in FIG. 1) allocated to one channel is M period, after the M period after the first control signal LCK is output from the controller 40, The second control signal LCK is issued to cause the latch 39 to output new data as the channel address.
이 경우 제어신호(RES0)가 액티브될때에 채널요청신호(SR0)의 액티브에 따른 기억이 해제되었기 때문에 요청기억부(37)의 출력(Q0)(Q1)이 각각 "0"과 "1"이 되므로 채널 어드레스는 "1"이 된다.In this case, since the memory corresponding to the activation of the channel request signal SR 0 is released when the control signal RES 0 is activated, the output Q 0 (Q 1 ) of the request memory unit 37 is " 0 " Since it becomes "1", the channel address becomes "1".
한편, 시간 "B"에서 시간 "A"에서와 같은 요청신호가 입력되면 상기와 동일한 처리동작을 되풀이하게 된다.On the other hand, when the request signal as at time "A" is input at time "B", the same processing operation as above is repeated.
그러나, 상기와 같은 종래 기술에 있어서는 각 채널마다 우선 순위가 정해져 있고 이러한 우선 순위를 변화시킬 수 없기 때문에 예를들어 여러 채널이 동시에 요청신호를 내는 경우가 자주 있을때 우선 순위가 낮은 채널은 사용을 요청한 시간과 실제로 처리를 받는 시간의 차이가 많게 되어 결국 전자악기의 어떤 건반은 계속해서 처리가 늦어져 음발생까지의 시간이 길어지게 되는 결점이 있다.However, in the prior art as described above, since the priority is determined for each channel and the priority cannot be changed, for example, when a plurality of channels frequently send request signals at the same time, a channel having a low priority is requested to use. The difference between the time and the time actually being processed is that some of the keys of the electronic musical instrument continue to be delayed, resulting in a longer time to sound generation.
본 발명은 상기와 같은 종래기술의 결점을 해결하기 위한 것으로 다수의 건반이 동시에 자주 눌려지는 경우 각 건반에 해당하는 채널의 처리지연 시간을 각 채널마다 고르게 분포시키므로써 특정채널이 계속해서 지연되어 음발생이 늦어지는 것을 방지하는데 그 목적이 있다.The present invention is to solve the drawbacks of the prior art as described above, when a plurality of keys are pressed frequently at the same time, a specific channel is continuously delayed by uniformly distributing the processing delay time of a channel corresponding to each key. The purpose is to prevent the occurrence of delay.
이와같은 목적을 달성하기 위한 본 발명은 N개의 채널요청신호를 입력받아 각 채널의 요청이 지연처리되는 시간을 계산하기 위한 가중치 계산기부와, 상기 가중치 계산부로 부터의 계산된 가중치 출력값을 입력받음과 아울러 채널 요청 신호를 입력받아 가장 우선 순위가 높은 것으로 판단된 채널을 선택하여 출력시키는 우선 순위 판별기와, 상기 우선 순위 판별기로부터의 출력신호를 받음과 아울러 타이밍 제어부로 부터의 제어신호를 받아 채널 어드레스로서 출력시키는 래치와, 상기 우선 순위 판별기의 출력과 상기 래치로부터의 채널 어드레스를 받아 우선 순위 판별기와 가중치 계산기부에 필요한 타이밍 제어신호를 공급하는 타이밍 제어기를 구비하여서 이루어짐을 특징으로 한다.In order to achieve the above object, the present invention provides a weight calculator for calculating a time for delaying a request of each channel by receiving N channel request signals, and receiving a calculated weight output value from the weight calculator. In addition, a priority discriminator that receives a channel request signal and selects and outputs a channel determined to have the highest priority, receives an output signal from the priority discriminator, and receives a control signal from a timing controller to receive a channel address. And a timing controller for receiving the output of the priority discriminator and the output of the priority discriminator and the channel address from the latch and supplying a timing control signal necessary for the priority discriminator and the weight calculator.
이하에서 본 발명의 실시예를 첨부된 도면에 의하여 상술하면 다음과 같다.Hereinafter, an embodiment of the present invention will be described in detail with reference to the accompanying drawings.
제5도는 본 발명에 따른 채널제어장치를 나타낸 것으로 각각 N개의 채널요청신호(SR0-SRN-1)를 입력받아 각 채널의 요청이 지연처리되는 시간을 계산하기 위한 가중치 계산기부(1)와, 상기 가중치 계산기부(1)로 부터의 계산된 가중치 출려값을 입력받음과 아울러 상기 채널요청신호(SR0-SRN-1)를 입력받아 가장 우선 순위가 높은 것으로 판단된 채널, 즉 요청된 채널중에 가장 가중치가 높은 채널을 선택하여 출력시키는 우선 순위 판별기(2)와, 상기 우선 순위 판별기(2)로 부터 입력되는 신호를 받음과 아울러 타이밍 제어기(4)로 부터의 제어신호(LCK)를 받아 채널 어드레스로서 출력하는 래치(3)와, 상기 우선 순위 판별기(2)의 출력(E)과 상기 래치(3)으로부터의 채널 어드레스를 받아 우선 순위 판별기(2)와 가중치 계산기부(1)에 제어신호(RES0-RESN-1), (LE0-LEN-1)를 공급하는 타이밍 제어기(4)를 구비하여서 구성된다.5 is a diagram illustrating a channel control apparatus according to the present invention. A weight calculator unit 1 for receiving N channel request signals SR 0 to SR N-1 and calculating a time for delaying a request of each channel is shown. And a channel that is determined to have the highest priority by receiving the calculated weighted value from the weight calculator 1 and the channel request signals SR 0 -SR N-1 . A priority discriminator 2 which selects and outputs a channel having the highest weight among the selected channels, receives a signal input from the priority discriminator 2, and receives a control signal from the timing controller 4 ( LCK) receives and outputs a channel address as a channel address, an output E of the priority discriminator 2 and a channel address from the latch 3, and a priority discriminator 2 and a weight calculator. Control signal (RES 0 -RES N-1 ) and (LE 0- ) And a timing controller 4 for supplying LE N-1 ).
제6도는 상기 가중치 계산기부(1)이 상세 구성도를 나타낸 것으로 채널요청 신호(SRi(단, i는 0-N-이다))가 클리어(CLEAR)단자에 입력되고 메인클럭(MCLK)이 클럭(CLK)단자에 입력될때 이 메인클럭을 M분주하여 계수하는 M분주기 및 계수기(5)와, 상기 M분주기 및 계수기(5)로부터의 계수된 출력을 입력으로 하고 리셋(RESET)시 출력(Wi)이 "0"이 되게 하며 신호(LEi)에 따라 들어오는 입력을 래치시켜 출력(Wi)을 내보내는 래치(6)로 구성된다.6 shows a detailed configuration of the weight calculator 1, in which a channel request signal SRi (where i is 0-N-) is input to the CLEAR terminal, and the main clock MCLK is clocked. When input to (CLK) terminal, M divider and counter (5) divides and counts this main clock, and counted outputs from M divider and counter (5) are input, and are output when reset. It consists of a latch 6 which makes (Wi) become "0" and latches an incoming input according to the signal LEi, and outputs the output Wi.
제7도는 상기 우선 순위 판별기(2)의 상세 구성도를 나타낸 것으로 N개의 블록으로 구성된 요청기억부(21)와 비교선택기 이진트리부(22)로 구성된다. 또한, 상기 요청기억부(21)는 각각의 R/S플립플롭(7-10)과 앤드게이트(11-14)로 이루어져 상기 R/S플립플롭(7-10)의 셋(S)단자에는 채널요청신호(SR0-SRN-1)가 입력되고 리셋(R)단자에는 타이밍 제어기(4)로부터의 제어신호(RES0-RESN-1)가 입력됨과 아울러 상기 앤드게이트(11-14)의 일측 입력단자에는 가중치 계산기부(1)로 부터의 출력(W0-WN-1)이 입력되고 타측 입력단자에는 R/S플립플롭(7-10)의 출력(Q)이 입력되도록 구성된다.7 shows a detailed configuration diagram of the priority discriminator 2, which comprises a request memory 21 composed of N blocks and a comparison selector binary tree 22. As shown in FIG. In addition, the request memory 21 is composed of each of the R / S flip-flop (7-10) and the end gate (11-14) to the set (S) terminal of the R / S flip-flop (7-10) The channel request signal SR 0 -SR N-1 is input, and the control signal RES 0 -RES N-1 from the timing controller 4 is input to the reset terminal R, and the AND gate 11-14 is input. In order to input the output (W 0 -W N-1 ) from the weight calculator (1) to one input terminal of the input terminal and the output (Q) of the R / S flip-flop (7-10) to the other input terminal. It is composed.
그리고 비교선택기 이진트리부(22)(다수의 비교선택기(예를들어 16-20의 경우)를 가짐)는 상기 요청기억부(21)의 앤드게이트(11-14)의 출력을 받음과 아울러 단자(DA)(DB)에 "0", "1"부터 "N-2", "N-1"까지의 상태가 인가되는데 이는 N개의 채널요청신호가 2의 멱수(N=2n, n은 양의 정수)로 표현될 때의 경우로 최종단의 비교선택기(20)의 출력(D0)만을 이용하며 이것을 출력(SQ)으로 내보내는데 이러한 비교선택기의 수는 모두 N-1개가 소요된다. 한편, 요청기억부(21)의 R/S플립플롭(7-10)의 출력(Q0-QN-1)이 오아게이트(15)를 통해 출력(E)으로 타이밍 제어기(4)로 내보내진다.The comparison selector binary tree section 22 (having a plurality of comparison selectors (for example, 16-20)) receives the output of the end gate 11-14 of the request memory section 21 and the terminal. The state from "0", "1" to "N-2", and "N-1" is applied to (D A ) (D B ), where N channel request signals are multiplied by 2 (N = 2 n , n is a positive integer) and uses only the output D 0 of the final selector 20 and outputs it to the output SQ. The number of these selectors takes N-1. do. On the other hand, the outputs Q 0 -Q N-1 of the R / S flip-flop 7-10 of the request memory 21 are sent to the timing controller 4 through the oragate 15 to the output E. Lose.
제8도는 비교선택기 이진트리부(22)중 하나의 비교선택기를 예를들어 상세히 나타낸 것으로 비교기(23)는 상기 요청기억부(21)로부터의 입력(WA)(WB)중에서 입력(WA)과 같거나 큰 경우에 출력을 "1"로 하여 멀티플렉서(24)(25)의 선택 입력(S)에 공급한다.8 shows, in detail, a comparison selector of one of the comparison selector binary tree units 22. The comparator 23 has an input W among the inputs W A and W B from the request memory unit 21. When A is equal to or larger than A ), the output is supplied to the selection input S of the multiplexers 24 and 25 with the output "1".
그리고 이 멀티플렉서(24)는 요청기억부(21)로 부터의 입력(WA)(WB)중에서 선택입력(S)이 "1"일때는 입력(WA)을, 선택입력(S)이 "0"일때는 입력(WB)을 각각 받아 출력(W0)으로 내보낸다.And the multiplexer 24 are request storage section input from the (21) (W A), (W B), the selection input from the (S) set to "1" when the input (W A) the select input (S) is When it is "0", it receives each input (W B ) and sends it to output (W 0 ).
그리고, 멀티플렉서(25)는 입력(DA)(DB)중에서 선택입력(S)이 "1"일때는 입력(DA)을 선택 입력(S)이 "0"일때는 입력(DB)을 각각 받아 출력(D0)으로 내보낸다.Then, the multiplexer 25 is input (D A) (D B), a selection input (S) of "1" when in the input (D A) the select input (S) is "0" when the input (D B) Receive each and send it to the output (D 0 ).
제9도는 본 발명에 따른 채널제어장치의 전체 타이밍도를 나타낸 것이다. 이하에서 본 발명의 동작관계를 상술하면 다음과 같다.9 shows an overall timing diagram of the channel control apparatus according to the present invention. Hereinafter, the operation relationship of the present invention will be described in detail.
먼저 채널요청신호(SR0-SRN-1)는 N개의 가중치 계산기로 구성되는 가중치 계산기부(1)에 입력되어 각각의 가중치 계산기가 갖고 있는 가중치를 클리어 시키게 된다.First, the channel request signals SR 0 -SR N-1 are input to the weight calculator 1 composed of N weight calculators to clear the weights of the weight calculators.
이를 제6도의 상세도를 참고로 하여 설명하면, 하나의 가중치 계산기는 기본적으로 입력되는 메인클럭(MCLK)을 M분주한 것을 계수하는 M분주기 및 계수기(5)와, 계수된 출력을 래치이네이블 신호(LE)에 의하여 래치시켜 출력(Wi)으로 내보내는 래치(6)로 구성되므로 만일 M분주기 및 계수기(5)의 클리어단자에 연결되는 채널요청신호(SRi)가 액티브되면 계수값을 "0"으로 하고 그후 입력되는 메인클럭을 M분주하여 계수한 것을 타이밍 제어기(4)로 부터 입력된 신호(LE)에 의해 출력(Wi)으로 내보낸다.Referring to this with reference to the detailed view of FIG. 6, one weight calculator basically latches the counted output with an M divider and counter 5 for counting the M divided by the main clock MCLK. The latch 6 is latched by the signal LE and output to the output Wi. Therefore, if the channel request signal SRi connected to the M divider and the clear terminal of the counter 5 is activated, the count value is " 0 " Then, the main clock inputted thereafter is divided by M, and the counted signal is outputted to the output Wi by the signal LE input from the timing controller 4.
즉, 어떤 채널이 선택되어 공용장치를 사용하는 기간이 M주기라고 하면 채널요청신호(SR0-SRN-1)가 발생하여 M주기이내에 채널요청이 받아들여져서 타이밍 제어기(4)로부터 제어신호(LE)가 발생하면 출력(Wi)은 "0"이 된다. 만일 M주기를 지나서 그 이상의 시간이 경과된 후 채널 요청이 받아들여지면 그때까지 계수한 값을 출력(Wi)으로 내보내 결국 해당 채널이 처리된 지연된 시간정도를 출력(Wi)으로 나타낸다.That is, if a channel is selected and the period in which the common device is used is M period, the channel request signal SR 0 -SR N-1 is generated, and the channel request is received within the M period, and the control signal is received from the timing controller 4. When (LE) occurs, the output Wi becomes "0". If the channel request is accepted after the M period has elapsed, the value counted up to that time is output to the output Wi, and the delayed time of processing the corresponding channel is displayed as the output Wi.
한편, 우선 순위 판별기(2)는 제7도와 같이 요청기억부(21)와 비교선택기 이진트리부(22)로 구성되어 가중치 계산기부(1)로 부터의 출력(Wi)이 앤드게이트(11-14)의 일측 입력단자에 입력된 상태에서 타측 입력 단자에 입력된 신호가 1일때만 출력이 나오므로 예를들어 R/S플립플롭(7)의 셋(S)단자에 입력되는 채널요청신호(SR0)가 액티브되면 R/S플립플롭(7)의 출력(Q)이 "1"이 되어 앤드게이트(11)에 입력된 가중치 계산기부(1)로부터의 출력(W0)이 비교선택기 이진트리부(22)로 출력된다.Meanwhile, the priority discriminator 2 includes a request memory unit 21 and a comparison selector binary tree unit 22 as shown in FIG. 7 so that the output Wi from the weight calculator unit 1 is an AND gate 11. -1) Since the output comes out only when the signal input to the other input terminal is 1 in the state input to one input terminal of -14), for example, the channel request signal input to the set (S) terminal of the R / S flip-flop (7). When SR 0 is active, the output Q of the R / S flip-flop 7 becomes "1", and the output W 0 from the weight calculator 1 inputted to the AND gate 11 becomes the comparison selector. It is output to the binary tree section 22.
그리고, R/S플립플롭(7)의 리셋(R)단자에는 타이밍 제어기(4)로 부터의 제어신호(RES0)가 연결되어 만일 해당 채널이 서비스될때 제어신호(RES0)를 발생시키므로 R/S플립플롭(7)의 출력(Q)을 "0"으로 만들어 가중치 계산기의 출력결과가 비교선택기 이진트리부(22)에 "0"으로 입력되게 한다.And, R / S flip-flop 7 is reset (R) terminal, because generating a control signal (RES 0) is connected if the corresponding channel service when the control signal (RES 0) from a timing controller (4) R a The output Q of the / S flip-flop 7 is made " 0 " so that the output result of the weight calculator is inputted to " 0 "
또한, 이러한 비교선택기 이진트리부(22)는 N-1개(N은 채널수로서 2의 멱수로 표현될 경우)의 비교 선택기로 구성되는데 제8도와 같이 비교기(23)는 요청기억부(21)로 부터의 입력(WA)(WB)중에서 입력(WA)이 입력(WB)보다 크거나 같은 경우에 출력을 "1"로 하며 이때, 멀티플렉서(24)는 선택입력(S)이 "1"인 상태에서 입력(WA)을 받아 출력(W0)으로 내보내고 멀티플렉서(25)는 입력(DA)을 받아 출력(D0)으로 내보낸다.In addition, the comparator selector binary tree 22 is composed of N-1 (when N is represented by powers of 2 as the number of channels). The comparator 23 is a request memory unit 21 as shown in FIG. ) input (W a from a) (W B) of the input (W a) and the output to a greater or equal than the input (W B) to "1" this time, the multiplexer 24 selects the input (S) In the state of "1", the input W A is received and output to the output W 0 , and the multiplexer 25 receives the input D A and outputs it to the output D 0 .
그외의 경우엔 각각 입력(W0)(DB)을 받아 출력(W0)(D0)으로 내보낸다. 이와같은 기능을 갖는 비교선택기를 제7도와 같이 이진트리구조로 구성하면 초단의 비교선택기들은 입력(DA)(DB)에 각각 해당하는 채널의 채널값을 입력시키므로 비교선택기 이진트리부(22)의 출력(D0)은 가중치 계산기부(1)의 출력값들 중에서 가장 큰 출력값을 갖는 채널의 채널값을 선택하여 내보내게 된다.Otherwise, it receives input W 0 (D B ) and sends it to output W 0 (D 0 ). When the comparator having such a function is configured in a binary tree structure as shown in FIG. 7, the comparator selector binary tree unit 22 inputs the channel values of the channels corresponding to the inputs D A and D B , respectively. ) Outputs D 0 by selecting the channel value of the channel having the largest output value among the output values of the weight calculator 1.
한편, 우선 순위판별기(2)의 출력(E)은 오아게이트(15)를 이용하여 채널 요청신호(SR0-SRN-1)가 액티브되어 요청기억부(21)의 출력(Q0-QN-1)중에 하나라도 1이 되면 이렇게 1이 되는 신호로 타이밍 제어기(4)를 제어하도록 내보내진다.On the other hand, the output E of the priority determiner 2 is activated by the channel request signals SR 0 -SR N-1 by using the oragate 15 to output the Q 0 − of the request memory unit 21. If any one of Q N-1 is 1, the signal 1 is sent out to control the timing controller 4.
또한, 타이밍 제어기(4)는 우선 순위 판별기(2)의 출력(E)과 가중치 계산기(1)로 부터의 메인클럭 그리고 래치(3)의 출력인 채널 어드레스를 입력으로 하여 제어신호(LCK)(RES0-RESN-1)(LE0-LEN-1)를 내보내며 래치(3)는 타이밍 제어기(4)의 제어신호(LCK)를 래치이네이블 단자(LE)에 연결하여 제어신호(LCK)의 상승시점에서 우선 순위 판별기(2)의 출력(SQ)을 채널 어드레스로서 출력한다.In addition, the timing controller 4 inputs the output E of the priority discriminator 2, the main clock from the weight calculator 1, and the channel address, which is the output of the latch 3, as a control signal LCK. (RES 0 -RES N-1 ) (LE 0 -LE N-1 ) and the latch 3 connects the control signal LCK of the timing controller 4 to the latch enable terminal LE to control the signal ( The output SQ of the priority discriminator 2 is output as a channel address at the time when the LCK rises.
이와같은 동작을 채널요청신호(SR0)(SR1)만이 동시에 액티브되는 경우를 제9도의 타이밍도를 참고로 하여 설명하면 다음과 같다.This operation will be described with reference to the timing diagram of FIG. 9 when only the channel request signal SR 0 (SR 1 ) is active at the same time.
초기에 리셋신호가 액티브된 후에 시간 "C"에서 채널요청신호(SR0)(SR1)가 동시에 액티브되면 가중치 계산기부(1)의 해당블럭의 M주기 및 계수기(5)를 클리어시킴과 동시에 우선순위판별기(2)내부의 요청기억부(21)에 있는 해당 R/S플립플롭(7)을 셋시킨다.If the channel request signal SR 0 (SR 1 ) is simultaneously activated at time "C" after the reset signal is activated, the M period and the counter 5 of the corresponding block of the weight calculator 1 are cleared. The corresponding R / S flip-flop 7 in the request memory 21 in the priority determiner 2 is set.
이때, 초기에 리셋 신호가 액티브된 후에는 요청기억부(21)로 부터의 입력(W0)(W1)이 "0"이 되므로 비교선택기에는 채널 0과 채널 1의 가중치가 모두 "0"으로 입력된다.At this time, since the input W 0 (W 1 ) from the request memory unit 21 becomes “0” after the reset signal is initially activated, both the weights of the channel 0 and the channel 1 are “0” in the comparison selector. Is entered.
여기서, 비교 선택기에서는 가중치의 크기와 같은 경우엔 입력(WA)(WB)을 선택하게 되어 있으므로 우선 순위 판별기(2)에서는 "0"을 출력하고, 타이밍 제어기(4)에서는 가장 우선 순위 판별기(2)의 출력(E)이 액티브됨에 따라 제어신호(LCK)를 출력하여 래치(3)로 하여금 채널 어드레스 "0"을 출력하게 한다.In this case, since the input selector W A (W B ) is selected when the comparison selector is equal to the magnitude of the weight, the priority discriminator 2 outputs "0", and the timing controller 4 has the highest priority. As the output E of the discriminator 2 is activated, the control signal LCK is output to cause the latch 3 to output the channel address " 0 ".
다음에 채널요청신호(SR0)가 액티브됨에 따라 채널 0을 서비스하고 있으므로 채널요청신호(SR0)에 따른 채널 요청 기억을 해제하기 위해 현재의 처리되는 채널 어드레스를 바탕으로 제어신호(RES0)를 액티브시켜 채널 0의 가중치 W0을 0으로 한다.Since then the channel services the channel 0 as the request signal (SR 0) is the active control signals based on the channel address are treated in order to release the channel request memory according to the channel request signal (SR 0) (RES 0) Activate to make the weight of channel 0 W 0 zero.
한편, M주기후에 타이밍제어기(4)는 다시 제어신호(LCK)를 액티브시켜서 시간 "C"에서 처리하지 못한 채널요청신호(SR1)를 상기 채널요청신호(SR0)의 경우와 같은 절차로서 처리한다.On the other hand, after the M period, the timing controller 4 activates the control signal LCK again to process the channel request signal SR 1 which has not been processed at time "C" as in the case of the channel request signal SR 0 . Process.
이 경우 제어신호(RES1)가 액티브되면(시간 "D")요청기억부(21)내부의 셋되어 있는 R/S플립플롭이 하나도 없으므로 우선 순위 판별기(2)의 출력(E)은 "0"이 되고 타이밍 제어기(4)는 더이상의 제어신호(LCK)를 출력시키지 않으며 신호(LE1)가 발생함에 따라 채널 1의 가중치 W1은 1이 된다.In this case, when the control signal RES 1 is activated (time " D "), since there is no set R / S flip-flop in the request memory 21, the output E of the priority discriminator 2 is " 0 "and the timing controller 4 does not output any more control signal LCK and the weight W 1 of the channel 1 becomes 1 as the signal LE 1 is generated.
그리고, 시간 "E"에서 다시 채널요청신호(SR0와 SR1)가 발생하면 두 채널의 가중치 중에서 채널 1의 가중치가 W1로서 더크므로 채널 어드레스는 "1"이 되어 채널 요청 신호(SR1)를 먼저 처리한 후 M주기 후에 채널요청신호(SR0)를 처리하여 채널 어드레스가 "0"이 되게하므로 각 채널이 요청된 후 실제로 그 채널을 처리하는데 까지의 시간을 평균적으로 균등하게 처리해 줄 수 있다.When the channel request signals SR 0 and SR 1 are generated again at time "E", the channel address becomes "1" because the weight of channel 1 is larger as W 1 among the weights of the two channels, and thus the channel request signal SR 1. ) Is processed first, and then after M cycles, the channel request signal (SR 0 ) is processed so that the channel address becomes "0" so that the time required to process the channel after the request of each channel is averaged evenly. Can be.
이상에서 설명한 바와 같은 본 발명은 다수의 건반이 동시에 자주 눌려지는 경우 각 건반에 해당하는 채널의 처리 지연 시간을 각 채널마다 고르게 균등히 분포시키므로써 특정 채널이 계속해서 지연되어 음 발생이 늦어지는 문제를 해결할 수 있음을 물론 회로 구성이 단순하여 집적화 하기가 쉬운 장점이 있다.As described above, the present invention solves the problem of delayed generation of sound by delaying a specific channel by uniformly distributing the processing delay time of a channel corresponding to each key evenly when a plurality of keys are simultaneously pressed frequently. Of course, the circuit configuration is simple and easy to integrate.
Claims (5)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019900020609A KR930004231B1 (en) | 1990-12-14 | 1990-12-14 | Channel control device for electrophonic instrument |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019900020609A KR930004231B1 (en) | 1990-12-14 | 1990-12-14 | Channel control device for electrophonic instrument |
Publications (2)
Publication Number | Publication Date |
---|---|
KR920013239A KR920013239A (en) | 1992-07-28 |
KR930004231B1 true KR930004231B1 (en) | 1993-05-22 |
Family
ID=19307539
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019900020609A KR930004231B1 (en) | 1990-12-14 | 1990-12-14 | Channel control device for electrophonic instrument |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR930004231B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR0130883Y1 (en) * | 1994-02-02 | 1998-12-15 | 김광호 | Hard disk drive attaching/detaching apparatus for computer |
-
1990
- 1990-12-14 KR KR1019900020609A patent/KR930004231B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR920013239A (en) | 1992-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5027348A (en) | Method and apparatus for dynamic data block length adjustment | |
US5361290A (en) | Clock generating circuit for use in single chip microcomputer | |
US4626716A (en) | Digital signal delay circuit | |
US5390192A (en) | High-speed pattern generator | |
US5548775A (en) | System and method for adaptive active monitoring of high speed data streams using finite state machines | |
US5187676A (en) | High-speed pseudo-random number generator and method for generating same | |
KR950003018B1 (en) | Variable frequency divider | |
US4413350A (en) | Programmable clock rate generator | |
US5966313A (en) | Apparatus and method for generating random numbers | |
US5638017A (en) | Pulse width modulation circuit | |
US5432830A (en) | High speed counter for alternative up/down counting of pulse trains and method therefor | |
US3633163A (en) | Plural level high-speed selection circuit | |
US5488325A (en) | Timing generator intended for semiconductor testing apparatus | |
EP0286260A2 (en) | Group-relative addressing system | |
KR20030017527A (en) | Baud rate generator with fractional devider | |
KR930004231B1 (en) | Channel control device for electrophonic instrument | |
US5144571A (en) | Direct digital synthesizer with feedback shift register | |
WO2003027847A1 (en) | Method and apparatus for direct digital synthesis of frequency signals | |
KR960002032A (en) | Interface device | |
JP4354648B2 (en) | Method and apparatus for compressing a signal to a fixed-point format without incurring bias | |
KR970009785B1 (en) | Unintentional dividing cluck generator | |
US5615241A (en) | Programmable rate generator | |
KR100206142B1 (en) | N/m count | |
US3727008A (en) | Dial pulse and multiple frequency signalling sender/multiple frequency signalling receiver apparatus | |
KR0182169B1 (en) | Log arithmathic value calculator |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 19951226 Year of fee payment: 4 |
|
LAPS | Lapse due to unpaid annual fee |