KR100375329B1 - 음원제어장치및음원제어방법 - Google Patents

음원제어장치및음원제어방법 Download PDF

Info

Publication number
KR100375329B1
KR100375329B1 KR1019950046156A KR19950046156A KR100375329B1 KR 100375329 B1 KR100375329 B1 KR 100375329B1 KR 1019950046156 A KR1019950046156 A KR 1019950046156A KR 19950046156 A KR19950046156 A KR 19950046156A KR 100375329 B1 KR100375329 B1 KR 100375329B1
Authority
KR
South Korea
Prior art keywords
sound source
audio signal
data
generating
interrupt
Prior art date
Application number
KR1019950046156A
Other languages
English (en)
Other versions
KR960025311A (ko
Inventor
야마노우에가오루
오키다아야코
하시모토다케시
Original Assignee
가부시키가이샤 소니 컴퓨터 엔터테인먼트
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 가부시키가이샤 소니 컴퓨터 엔터테인먼트 filed Critical 가부시키가이샤 소니 컴퓨터 엔터테인먼트
Publication of KR960025311A publication Critical patent/KR960025311A/ko
Application granted granted Critical
Publication of KR100375329B1 publication Critical patent/KR100375329B1/ko

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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/00Details of electrophonic musical instruments
    • G10H1/0033Recording/reproducing or transmission of music for electrophonic musical instruments
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10KSOUND-PRODUCING DEVICES; METHODS OR DEVICES FOR PROTECTING AGAINST, OR FOR DAMPING, NOISE OR OTHER ACOUSTIC WAVES IN GENERAL; ACOUSTICS NOT OTHERWISE PROVIDED FOR
    • G10K15/00Acoustics not otherwise provided for
    • G10K15/04Sound-producing devices
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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
    • G10H7/00Instruments in which the tones are synthesised from a data store, e.g. computer organs
    • G10H7/002Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof
    • G10H7/004Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof with one or more auxiliary processor in addition to the main processing unit
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC 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
    • G10H2230/00General physical, ergonomic or hardware implementation of electrophonic musical tools or instruments, e.g. shape or architecture
    • G10H2230/025Computing or signal processing architecture features
    • G10H2230/041Processor load management, i.e. adaptation or optimization of computational load or data throughput in computationally intensive musical processes to avoid overload artifacts, e.g. by deliberately suppressing less audible or less relevant tones or decreasing their complexity

Landscapes

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

Abstract

음악 데이터 즉, 보면(譜面) 데이터를 변경하지 않고, 보면 데이터의 해석을 행하는 간격을 변경해도 재생되는 악곡 등의 템포가 변화하지 않으며, CPU의 부하에 따라서 보면 데이터의 해석의 처리의 부하를 가변할 수 있는 음원 제어 장치를 제공한다. 시스템 부하 판단부(152)는 시스템 부하 정보 취득부(151)에 의하여 얻어진 시스템 부하 정보를 시스템 부하 스레시홀드치 보유부(153)의 스레시홀드치와 비교하고, 타이머 인터럽트 간격 유지부(131)에 유지되어 있는 타이머 인터럽트 간격을 선택한다. 시간 정보 관리부(143)는 내부 분해능 유지부(145)에 유지되어 있는 타이머 인터럽트 간격에 따라서, 보면 데이터 보유부에 보유되어 있는 보면 데이터의 취득을 관리한다. 이 취득된 보면 데이터에 따라서, 발음(發音) /소음(消音) 정보 제어부(144)는 음원을 제어한다.

Description

음원 제어 장치 및 음원 제어 방법 {DEVICE AND METHOD FOR CONTROLLING SOUND SOURCE}
본 발명은 발생하는 음의 음정, 발음(發音), 소음(消音), 음색 효과 등의 음악 정보를 시간순으로 기록한 음악 데이터 즉, 보면(譜面)데이터를 소정의 간격으로 취입하고, 이 취입된 보면 데이터에 따라서 음원(音源) 장치를 제어하여, 악곡등을 자동 연주하는 음원 제어 장치에 관한 것이고, 특히 비디오 게임 장치 또는 정보 처리 장치 등에 있어서, 연산 결과 또는 사용자의 조작에 따라서 음원 장치를제어하여 효과음, 배경 음악(background music, BGM) 등을 발생시키는 음원 제어 장치에 관한 것이다.
종래부터, 비디오 게임 장치 또는 퍼스널 컴퓨터 등의 정보 처리 장치에 있어서는, 게임의 진행 또는 사용자의 조작에 따라서 음악, 효과음 등을 발생시키는 것이 행해지고 있다.
이와 같은 비디오 게임 장치 또는 퍼스널 컴퓨터 등에서는, 예를 들면 기본파와 그 고조파(高調波)를 합성한 파형의 주파수를 가변함으로써 음정의 어떤 음을 발생하는 이른바 FM음원, 또는 기본으로 되는 기본파의 파형을 기억하여 두고, 지시된 음정 등에 따라서 기본파의 판독 주기를 가변하여 음정을 발생시키는 이른바 PCM음원 등이 음을 발생하는 음원 장치로서 사용되고 있다.
그리고, 이와 같은 비디오 게임 장치 또는 퍼스널 컴퓨터 등에서는, 예를 들면 사용자의 조작 등에 따라서, 발생시키는 효과음, 배경 음악(BGM)의 연주의 개시 및 정지, 음량 등을 즉석에서 실시간(real time)으로 변경할 수 있도록 되어 있다.
예를 들면 BGM 등의 재생에 있어서는, 발생하는 음의 음정, 발음, 소음, 음색 효과 등의 음악 정보를 시간 정보와 함께 시간순으로 배열한 보면 데이터를 미리 준비하여 두고, 이들을 리얼 타임으로 해석하면서, 음원 장치의 음정, 발음 및 소음 레지스터를 축차 설정함으로써 행해지고 있다.
이와 같이, 보면 데이터의 형식으로 BGM 등의 데이터를 준비하는 것은 프로그램의 실행에 의하여 축차 음원 장치의 음정, 발음 및 소음 등을 제어하는 경우등에 비교하여, 재생시에 용이하게 음색, 음량, 음정 등을 변화시킬 수 있고, 사용자의 조작에 고속으로 응답하는 리얼 타임성이 중요하게 되는 멀티미디어 컴퓨터, 게임 등에 적합한 방법이다.
또, 이와 같은 보면 데이터에 따른 음원 장치의 제어는, 예를 들면 도 6에 나타낸 바와 같이, 중앙 연산 처리 장치(CPU)로서 하나의 CPU(201)만을 구비한 비디오 게임 장치에서는, 이 CPU(201)를 시분할로 사용하여, 일정 시간 간격마다 보면 데이터를 판독하고, 판독된 보면 데이터에 따라서 음원 장치(202)의 발음 타이밍, 발음 기간, 발음 음정, 음량 등을 제어하여 BGM 등을 발생시키도록 되어 있다.
이와 같이, CPU(201)를 시분할로 사용하여 보면 데이터를 해석하는 방법은, CPU(201)의 처리 능력이 충분히 높으면, 특별한 주변 장치 등을 필요로 하지 않으므로 코스트도 낮고, 프로그램도 작성하기 쉽다.
또, 예를 들면 도 7에 나타낸 바와 같이, 메인 CPU(211)의 외에, 음원 장치(213)의 제어를 행하는 서브 CPU(212)를 구비한 게임 장치에서는, 이 서브 CPU(212)에 의하여 전술한 CPU(201)와 마찬가지로 보면 데이터에 따른 음원 장치(213)의 제어를 행하도록 되어 있다.
이 서브 CPU(212)를 사용하는 방법은 BGM 등을 발생하는 처리를 메인 CPU(211)와는 완전히 독립할 수 있고, 메인 CPU(211)의 부하를 저감할 수 있는 이점이 있다.
그러나, 이와 같은 서브 CPU(212)를 사용하는 방법에서는, 보면 데이터의 해석에 전용의 서브 CPU(212)를 부가하므로 장치의 코스트가 높아지고, 또 일반적으로 메인 CPU(211)와는 다른 서브 CPU(212)를 위한 프로그램을 작성하지 않으면 안되므로, 프로그램이 복잡해져서, 프로그램의 작성이 곤란하게 되는 문제가 있었다.
또, 전술한 CPU(201)를 시분할로 사용하여 보면 데이터를 해석하는 방법에서는, 화면 묘화 처리 등의 보면 데이터 해석 이외의 처리의 연산 부하가 증대함으로써, 음원 장치(202)의 제어에 할당되는 CPU(201)의 처리 시간이 상대적으로 저하된다.
이 경우에는, 음원 제어 프로그램이 실행되는 간격이 변하면, 음원 장치(202)로부터의 음성의 발생이 늦어져서, 발생되는 BGM 등의 템포도 변화되어 버린다. 예를 들면, 보면 데이터를 동일한 그대로 음원 제어 프로그램이 실행되는 간격이 길어지면, 재생되는 BGM 등의 템포가 느려지게 된다.
그래서, 통상은 정해진 간격(1/60초 등)단위로 인터럽트를 발생시키고, 이 인터럽트에 의하여 음원 제어 프로그램에 제어를 넘겨주는 방식이 취해진다. 이로써, 음원 제어 프로그램은 항상, 예를 들면 1/60초 정도의 정해진 간격마다 실행되는 것이 보증되므로, 음원 제어 프로그램은 그것을 기초로 보면 데이터의 시간관리를 행할 수 있다.
그러나, 실제의 게임 등의 처리에서는, 순간적으로 화면 묘화 처리 등의 음원 제어 프로그램 이외의 부하가 증대하는 것이 있고, 음원 제어 프로그램을 기동하는 간격을 길게 하여 음원 제어 프로그램의 연산 부하를 저감시키고 싶은 경우가 있다.
이와 같은 경우에는, CPU의 부하에 따라서 음원 제어 프로그램을 기동하기 위한 인터럽트의 발생 간격을 가변하고, 음원 제어 프로그램이 기동되는 간격에 대응시켜서 동일 BGM에 대하여 복수의 보면 데이터를 가질 필요가 있었고, 보면 데이터가 커지는 문제가 있었다.
본 발명은 전술한 바와 같은 문제점을 감안하여 이루어진 것이고, 보면 데이터를 변경하지 않고, 보면 데이터의 해석을 행하는 간격을 변경해도 재생되는 악곡등의 템포가 변화하지 않고, CPU의 부하에 따라서 보면 데이터의 해석의 처리의 부하를 가변할 수 있는 음원 제어 장치의 제공을 목적으로 한다.
도 1은 본 발명에 관한 음원 제어 장치를 적응한 비디오 게임 장치의 구성을 나타낸 블록도이다.
도 2는 도 1의치 비디오 게임 장치를 구성하는 SPU(sound processing unit, 사운드 처리 장치)의 구체적 구성을 나타낸 블록도이다.
도 3은 상기 비디오 게임 장치를 구성하는 음원 제어 장치의 구성을 나타낸 블록도이다.
도 4는 상기 음원 제어 장치를 구성하는 사운드 제어부가 타이머 인터럽트에 의하여 행하는 처리를 설명하기 위한 도면이다.
도 5는 상기 사운드 제어부의 처리와 다른 처리의 부하의 비율을 나타낸 도면이다.
도 6은 종래의 음원 제어 장치의 구성을 나타낸 블록도이다.
도 7은 종래의 음원 제어 장치의 다른 구성을 나타낸 블록도이다.
<도면의 주요 부분에 대한 부호의 설명>
50. 제어계, 51. CPU, 52. 주변장치 제어부, 53. 주기억 장치, 54. ROM, 60. 그래픽 시스템, 61. GTE, 62. GPU, 63. 프레임 버퍼, 64. 화상 디코더, 70. 사운드시스템, 71. SPU, 72. 사운드 버퍼, 73. 스피커, 80. 광학 디스크 제어부, 81. 광학 디스크 장치, 82. 디코더, 83. 버퍼, 90. 통신 제어부, 91. 통신 제어기, 92. 컨트롤러, 100. 버스, 111. 피치 변환부, 112. 클록 생성기, 113. 노이즈 생성기, 114. 118L, 118R, 123, 125. 스위치, 115. 엔벨로프 생성기, 116. 뮤트 처리부, 117L, 117R, 120, 124. 볼륨, 119. 리버브 처리부, 121a, 121b. 가산부, 122. 마스터 볼륨, 124. 믹싱 볼륨, 140. 사운드 제어부, 141. 음악 데이터 보유부, 142. 데이터 취득 관리부, 143. 시간 정보 관리부, 144. 발음/소음 정보 제어부, 145. 내부 분해능 유지부, 150. 시스템 부하 정보 제어부, 151. 시스템 부하 정보 취득부, 152. 시스템 부하 판단부, 153. 시스템 부하 스레시흘드치 보유부, 160. 입력 요구 제어부, 161. 입력 장치, 162. 입력 요구 해석부, 170. 드로잉 제어부, 171. 제어시 드로잉 정보 보유부, 172. 드로잉 정보 제어부, 173. 드로잉 장치, 174. 드로잉 정보 보유부, 175. 표시 장치.
본 발명에 관한 음원 제어 장치는, 음원을 제어하기 위한 제어 정보를 시간 정보와 함께 기록한 음원 제어 정보에 따라서 음원을 구동하는 동시에, 음원의 제어 이외의 정보 처리를 행한다. 이 음원 제어 장치는 음원 제어 정보를 보유하는 음원 제어 정보 보유부와, 복수의 타이밍 신호를 발생하는 간격을 유지하는 간격 유지부와, 간격 유지부에 유지되어 있는 간격 중 하나를 타이밍 신호를 발생하는 간격으로서 설정하는 간격 설정부와, 간격 설정부에서 설정된 간격으로 타이밍 신호를 발생하는 타이밍 신호 발생부와, 타이밍 신호 발생부로부터의 타이밍 신호에 따라서, 음원 제어 정보 보유부로부터 간격 설정부에서 설정된 간격분의 음원 제어 정보를 판독하고, 상기 음원의 제어를 행하는 음원 제어부를 가지는 것을 특징으로 한다.
또, 본 발명에 관한 음원 제어 장치는, 음원의 제어 이외의 정보 처리의 부하를 검출하는 부하 검출부와, 부하 검출부의 검출 출력에 따라서 간격 설정부에의한 설정을 제어하는 제어부를 가지는 것을 특징으로 한다.
또, 본 발명에 관한 음원 제어 장치는, 음원의 제어 이외의 정보 처리로서, 화상을 묘화하는 묘화 처리를 가지는 것을 특징으로 한다.
본 발명에 관한 음원 제어 장치에서는, 간격 설정부는 간격 유지부에 유지되어 있는 간격 중 하나를 타이밍 신호를 발생하는 간격으로서 설정하고, 타이밍 신호 발생부는 간격 설정부에서 설정된 간격으로 타이밍 신호를 발생한다.
음원 제어부는 타이밍 신호 발생부로부터의 타이밍 신호에 따라서, 음원 제어 정보 보유부로부터, 간격 설정부에서 설정된 간격에 상당하는 음원 제어 정보를 판독하고, 판독된 제어 정보에 따라서 음원의 제어를 행한다.
여기서, 간격 설정부는 간격 유지부에 유지되어 있는 복수의 타이밍 신호를 발생하는 간격 중에서 현재 설정되어 있는 간격 이외의 하나를 타이밍 신호를 발생시키는 간격으로서 설정하면, 타이밍 신호 발생부에 의하여 발생되는 타이밍 신호의 간격이 변화한다.
구체적으로는, 제어부가 부하 검출부에 의하여 검출된 음원의 제어 이외의 정보 처리의 부하에 따라서 간격 설정부의 설정을 제어한다.
이 때, 음원 제어 정보에 따른 음원의 제어에 요하는 부하가 변화하지만, 음원 제어부는 새로이 설정된 간격으로 발생되는 타이밍 신호에 따라서, 새로이 설정된 타이밍 신호의 발생 간격에 상당하는 음원 제어 정보를 음원 제어 정보 보유부로부터 판독하고, 판독한 제어 정보에 따라서 음원의 제어를 행한다.
이로써, 음원 제어부의 동작의 기준으로 되는 타이밍 신호의 발생 간격을 변경해도, 변경된 타이밍 신호의 발생 간격에 따라서 음원 제어 정보가 판독되고, 이 판독된 음원 제어 정보에 의하여 음원이 제어된다.
본 발명의 오디오 신호 처리 장치는 자체적으로 제어하는 음원(音源)에서 데이터를 판독하여 오디오 신호를 발생하며, 인터럽트 간격이 상이한 복수의 인터럽트 신호를 발생하는 발생 수단, 오디오 신호 처리 장치의 부하 상태에 따라서 인터럽트 신호들 중 하나를 선택하는 선택 수단 및 선택 수단에 의하여 선택된 인터럽트 신호에 응답하여 음원으로부터의 데이터의 판독을 제어하는 제어 수단을 포함한다.
또한, 본 발명의 오디오 신호 처리 장치는 자체적으로 제어하는 음원(音源)에서 데이터를 판독하여 오디오 신호를 발생하며, 입력 명령에 따라 서로 간격을 두고 있는 복수의 인터럽트 신호를 발생하는 발생 수단, 오디오 신호 처리 장치의 부하 상태에 따라서 인터럽트 신호들 중 하나를 선택하는 선택 수단 및 선택 수단에 의하여 선택된 인터럽트 신호에 응답하여 음원으로부터의 데이터의 판독을 제어하는 제어 수단을 포함한다.
또한, 본 발명의 오디오 신호 처리 장치는 자체적으로 제어하는 음원(音源)에서 데이터를 판독하여 오디오 신호를 발생하며 인터럽트 간격이 상이한 복수의 인터럽트 신호를 발생하는 발생 수단, 인터럽트 신호들 중 하나를 선택하는 선택수단, 선택 수단에 의하여 선택된 인터럽트 신호에 응답하여 음원으로부터의 데이터의 판독을 제어하는 제어 수단을 포함한다.
본 발명의 오디오 신호 처리 장치는 자신의 부하 상태를 검출하는 검출 수단을 추가로 포함하며, 선택 수단은 검출 수단의 출력에 응답하여 인터럽트 신호들 중 하나를 선택한다.
본 발명의 게임기는 자체적으로 제어하는 음원에서 데이터를 판독하여 오디오 신호를 발생하기 위한 오디오 신호 처리 장치를 포함하며, 오디오 신호 처리 장치는 인터럽트 간격이 상이한 복수의 인터럽트 신호를 발생하는 발생 수단, 오디오 신호 처리 장치의 부하 상태에 따라서 인터럽트 신호들 중의 하나를 선택하는 선택 수단 및 선택 수단에 의하여 선택된 인터럽트 신호에 응답하여 음원으로부터의 데이터의 판독을 제어하는 제어 수단을 포함한다.
본 발명의 게임기는 자체적으로 제어하는 음원에서 데이터를 판독하여 오디오 신호를 발생하기 위한 오디오 신호 처리 장치를 포함하며, 오디오 신호 처리 장치는 입력 명령에 따라 서로 간격을 두고 있는 다수의 인터럽트 신호를 발생시키기 위한 발생 수단, 오디오 신호 처리 장치의 부하 상태에 따라서 인터럽트 신호들 중의 하나를 선택하는 선택 수단 및 선택 수단에 의하여 선택된 인터럽트 신호에 응답하여 음원으로부터의 데이터의 판독을 제어하는 제어 수단을 포함한다.
또한, 본 발명의 게임기는 자체적으로 제어하는 음원에서 데이터를 판독하여 오디오 신호를 발생하기 위한 오디오 신호 처리 장치를 포함하며, 오디오 신호 처리 장치는 입력 명령에 따라 서로 간격을 두고 있는 다수의 인터럽트 신호를 발생시키기 위한 발생 수단, 인터럽트 신호들 중 하나를 선택하는 선택 수단 및 선택 수단에 의하여 선택된 인터럽트 신호에 응답하여 음원으로부터의 데이터의 판독을 제어하는 제어 수단을 포함한다.
본 발명의 CPU를 구비하는 장치에서 음원의 제어 처리를 실행하는 방법은 CPU의 제어를 음원의 제어 처리로 넘겨주기 위한 인터럽트를 발생시키는 간격을 CPU의 부하 상태에 따라 변경하는 제1 처리 단계와 제1 단계에서 설정된 간격마다 인터럽트를 발생시키는 제2 처리 단계를 포함한다.
본 발명의 CPU를 구비하는 장치에서 음원의 제어 처리를 실행하는 다른 방법은 CPU를 구비하는 장치에서 실행하는 처리 단계로서 또한 CPU의 부하 상태를 판단하는 부하 판단 처리 단계를 포함하며, 제1 처리 단계에서 CPU를 구비하는 장치에 부하 판단 처리 단계의 판단에 따라 간격을 설정한다.
또한, 본 발명의 CPU를 구비하는 장치에서 음원의 제어 처리를 실행하는 또다른 방법은 CPU를 구비하는 장치에서 실행하는 처리 단계로서 CPU의 제어를 음원의 제어 처리로 넘겨주기 위한 인터럽트를 발생시키는 간격을 입력 장치로부터의 입력 명령에 따라 설정하는 제1 처리 단계와 제1 처리 단계에서 설정된 간격마다 인터럽트를 발생시키는 제2 처리 단계를 포함한다.
본 발명의 CPU를 구비하는 장치에서 음원의 제어 처리를 실행하는 또 다른 방법은 CPU를 구비하는 장치에서 실행하는 처리 단계로서, CPU의 제어를 음원의 제어 처리로 넘겨주기 위한 인터럽트를 발생시키는 처리 단계와 인터럽트를 발생시키는 간격을 제어하는 처리 단계를 포함한다.
다음에, 본 발명에 관한 음원(音源) 발생 장치를, 예를 들면 비디오 게임 장치에 있어서 악음(樂音), 효과음 등을 발생하는 음원 제어부로서 적용한 실시예에 대하여 설명한다.
이 비디오 게임 장치는, 예를 들면 광학 디스크 등의 보조 기억 장치에 기억되어 있는 게임 프로그램을 판독하여 실행함으로써, 사용자로부터의 지시에 따라서 게임을 행하도록 되어 있고, 도 1에 나타낸 바와 같은 구성을 가지고 있다.
즉, 이 비디오 게임 장치는 중앙 연산 처리 장치(CPU) 및 그 주변 장치 등으로 이루어지는 제어계(50)와, 프레임 버퍼에 묘화를 행하는 그래픽 프로세싱 유니트(GPU) 등으로 이루어지는 그래픽 시스템(60)과, 악음, 효과음 등을 발생하는 사운드 프로세싱 유니트(SPU) 등으로 이루어지는 사운드 시스템(70)과, 보조 기억 장치인 광학 디스크의 제어를 행하는 광학 디스크 제어부(80)와, 사용자로부터의 지시를 입력하는 컨트롤러로부터의 지시 입력 및 게임의 설정 등을 기억하는 보조 메모리로부터의 입출력을 제어하는 통신 제어부(90)와, 상기 제어계(50)∼통신 제어부(90)가 접속되어 있는 버스(100)등을 구비하고 있다.
상기 제어계(50)는 CPU(51)와, 인터럽트 제어, 다이렉트 메모리 액세스(direct memory access, DMA)전송의 제어 등을 행하는 주변 장치 제어부(52)와, RAM(random access memory, 램)으로 이루어지는 주기억 장치(메인 메모리)(53)와, 메인 메모리(53), 그래픽 시스템(60), 사운드 시스템(70) 등의 관리를 행하는 이른바 오퍼레이팅 시스템 등의 프로그램이 격납된 ROM(read only memory, 롬)(54)을 구비하고 있다.
CPU(51)는 ROM(54)에 기역되어 있는 오퍼레이팅 시스템을 실행함으로써 장치 전체의 제어를 행한다.
상기 그래픽 시스템(60)은 좌표 변환 등의 처리를 행하는 지오메트리트랜스퍼엔진(geometry transfer engine, GTE)(61)과, CPU(51)로부터의 묘화 지시에 따라서 묘화를 행하는 화상 처리 장치(graphic processing unit, GPU) (62)와, 이 GPU(62)에 의하여 묘화된 화상을 기억하는 프레임 버퍼(63)와, 이산(離散) 코사인 변환 등의 직행 변환에 의하여 압축되어 부호화된 화상 데이터를 복호화하는 화상 디코더(64)를 구비하고 있다.
GTE(61)는, 예를 들면 복수의 연산을 병렬로 실행하는 병렬 연산 기구를 구비하고, CPU(51)로부터의 연산 요구에 따라서, 좌표 변환, 광원 계산, 행렬 또는 벡터의 연산을 고속으로 행할 수 있도록 되어 있다.
구체적으로는, 이 GTE(61)는 하나의 3각형상의 폴리곤에 동일 색으로 묘화하는 플랫 셰이딩(flat shading)을 행하는 연산의 경우에는, 1초 동안에 최대 150만 정도의 폴리곤의 좌표 연산을 행할 수 있도록 되어 있고, 이로써 이 비디오 게임 장치에서는, CPU(51)의 부하를 저감하는 동시에, 고속의 좌표연산을 행할 수 있도록 되어 있다.
GPU(62)는 CPU(51)로부터의 묘화 명령에 따라서, 프레임 버퍼(63)에 대하여 다각형(폴리곤)등의 묘화를 행한다. 이 GPU(62)는 1초간에 최대 36만 정도의 폴리곤의 묘화를 행할 수 있도록 되어 있다.
프레임 버퍼(63)는, 이른바 듀얼 포트 RAM으로 이루어지고, GPU(62)로부터의 묘화 또는 메인 메모리로부터의 전송과, 표시를 위한 판독을 동시에 행할 수 있도록 되어 있다.
이 프레임 버퍼(63)는 1M바이트의 용량을 가지고, 각각 16비트의 가로 1024,세로 512의 화소의 매트릭스로서 취급된다.
이 프레임 버퍼(63) 중 임의의 영역을 비디오 출력으로서 출력할 수 있도록 되어 있다.
또, 이 프레임 버퍼(63)에는, 비디오 출력으로서 출력되는 표시 영역 외에, GPU(62)가 폴리곤 등의 묘화를 행할 때에 참조하는 컬러룩업 테이블(color look-up table, CLUT)이 기억되는 CLUT영역과, 묘화시에 좌표 변환되어 GPU(62)에 의하여 묘화되는 폴리곤 등의 내에 삽입(매핑, mapped)되는 소재(텍스처, texture)가 기억되는 텍스처 영역이 배치되어 있다. 이들의 CLUT영역과 텍스처 영역은 표시 영역의 변경 등에 따라서 동적(動的)으로 변경되도록 되어 있다.
그리고, 상기 GPU(62)는 전술한 플랫 세이딩 외에 폴리곤의 정점(頂点)의 색으로부터 보완하여 폴리곤내의 색을 정하는 구로 셰이딩(Gouraud shading)과, 상기 텍스처 영역에 기억되어 있는 텍스처를 폴리곤에 붙이는 텍스처 매핑을 행할 수 있도록 되어 있다.
이들의 구로 셰이딩 또는 텍스처 매핑을 행하는 경우에는, 상기 GTE(61)는 1초간에 최대 50만 정도의 폴리곤의 좌표 연산을 행할 수 있다.
화상 디코더(64)는 상기 CPU(51)로부터의 제어에 의하여, 메인 메모리(53)에 기억되어 있는 정지화 또는 동화(動畵)의 화상 데이터를 복호화하여 메인 메모리 (53)에 기억한다.
또, 이 재생된 화상 데이터는 GPU(62)를 통하여 프레임 버퍼(63)에 기억함으로써, 전술한 GPU(62)에 의하여 묘화되는 화상의 배경으로서 사용할 수 있도록 되어 있다.
상기 사운드 시스템(70)은 CPU(51)로부터의 지시에 따라서, 악음, 효과음 등을 발생하는 음성 처리 장치(SPU)(71)와, 이 SPU(71)에 의하여 파형 데이터 등이 기록되는 사운드 버퍼(72)와, SPU(71)에 의하여 발생되는 악음, 효과음 등을 출력하는 스피커(73)를 구비하고 있다.
상기 SPU(71)는 16비트의 음성 데이터를 4비트의 차분(差分) 신호로서 적응차분 부호화(Adaptive Defferential Pulse Code Modulation : ADPCM)된 음성 데이터를 재생하는 ADPCM 복호 기능과, 사운드 버퍼(72)에 기억되어 있는 파형 데이터를 재생함으로써, 효과음 등을 발생하는 재생 기능과, 사운드 버퍼(72)에 기억되어 있는 파형 데이터를 변조시켜서 재생하는 변조 기능 등을 구비하고 있다.
이와 같은 기능을 구비함으로써 이 사운드 시스템(70)은 CPU(51)로부터의 지시에 의하여 사운드 버퍼(72)에 기억된 파형 데이터에 따라서 악음, 효과음 등을 발생하는 이른바 PCM음원으로서 사용할 수 있도록 되어 있다.
상기 광학 디스크 제어부(80)는 광학 디스크에 기록된 프로그램, 데이터 등을 재생하는 광학 디스크 장치(81)와, 예를 들면 에러 정정 부호화(error correcting code, ECC)되어 기록되어 있는 프로그램, 데이터 등을 복호하는 디코더(82)와, 광학 디스크 장치(81)로부터의 재생 데이터를 일시적으로 기억함으로써, 광학 디스크로부터의 판독을 고속화하는 버퍼(83)를 구비하고 있다.
또, 광학 디스크 장치(81)에서 재생되는 광학 디스크에 기록되어 있는 음성 데이터로서는, 전술한 ADPCM 데이터 외에 음성 신호를 아날로그/디지탈변환한 이른바 PCM 데이터가 있다.
ADPCM 데이터로서, 예를 들면 16비트의 디지털 데이터(PCM 데이터)의 차분을 4비트로 표현하여 기록되어 있는 음성 데이터는 디코더(82)에서 복호화된 후, 16비트의 디지털 데이터로 신장되어 전술한 SPU(71)에 공급된다.
또, PCM 데이터로서, 예를 들면 16비트의 디지털 데이터로서 기록되어 있는 음성 데이터는 디코더(82)에서 복호화된 후, 상기 SPU(71)에 공급되고, 또는 직접 스피커(73)를 구동하기 위하여 사용된다.
또, 통신 제어부(90)는 버스(100)를 통하여 CPU(51)와의 통신의 제어를 행하는 통신 제어기(91)와, 사용자로부터의 지시를 입력하는 컨트롤러(92)와, 게임의 설정 등을 기억하는 메모리 카드(93)를 구비하고 있다.
컨트롤러(92)는 사용자로부터의 지시를 입력하기 위하여, 예를 들면 16개의 지시키를 가지고, 통신 제어기(91)로부터의 지시에 따라서, 이 지시키의 상태를 동기식(同期式) 통신에 의하여 통신 제어기(91)에 매초 60회 정도 송신한다. 그리고, 통신 제어기(91)는 컨트롤러(92)의 지시키의 상태를 CPU(51)에 송신한다.
이로써, 사용자로부터의 지시가 CPU(51)에 입력되고, CPU(51)는 실행하고 있는 게임 프로그램 등에 따라서 사용자로부터의 지시에 따른 처리를 행한다.
또, CPU(51)는 실행하고 있는 게임의 설정 등을 기억할 필요가 있을 때에, 이 기억할 데이터를 통신 제어기(91)에 송신하고, 통신 제어기(91)는 CPU(51)로부터의 데이터를 메모리 카드(93)에 기억한다.
이 메모리카드(93)는 통신제어기(91)를 통하여 버스(100)에 접속되어 있고,버스(100)로부터 분리되어 있으므로, 전원을 넣은 상태에서, 착탈할 수 있다. 이로써, 게임의 설정 등을 복수의 메모리 카드(93)에 기억할 수 있도록 되어 있다.
또, 이 비디오 게임 장치는 버스(100)에 접속된 파랄렐 입출력(I/O)(101)과, 시리얼 입출력(I /O)(102)을 구비하고 있다.
그리고, 파랄렐 I /O(101)를 통하여 주변 기기와의 접속을 행할 수 있도록 되어 있고, 또 시리얼 I /O(102)를 통하여 다른 비디오 게임 장치와의 통신을 행할 수 있도록 되어 있다,
그런데, 상기 메인 메모리(53), GPU(62), 화상 디코더(64) 및 디코더(82)등의 사이에서는, 프로그램의 판독, 화상의 표시 또는 묘화 등을 행할 때에, 대량의 화상 데이터를 고속으로 전송할 필요가 있다.
그러므로, 이 비디오 게임 장치에서는, 진술한 바와 같이 CPU(51)를 통하지 않고 주변 장치 제어부(52)로부터의 제어에 의하여 상기 메인 메모리(53), GPU(62), 화상 디코더(64) 및 디코더(82) 등의 사이에서 직접 데이터의 전송을 행하는 이른바 DMA전송을 행할 수 있도록 되어 있다.
이로써, 데이터 전송에 의한 CPU(51)의 부하를 저감시킬 수 있고, 고속의 데이터의 전송을 행할 수 있도록 되어 있다.
이 비디오 게임 장치에서는, 전원이 투입되면, CPU(51)가 ROM(54)에 기억되어 있는 오퍼레이팅 시스템을 실행한다.
이 오퍼레이팅 시스템의 실행에 의하여, CPU(51)는 상기 그래픽 시스템(60), 사운드 시스템(70) 등의 제어를 행한다.
또, 오퍼레이팅 시스템이 실행되면, CPU(51)는 동작 확인 등의 장치 전체의 초기화를 행한 후, 광학 디스크 제어부(80)를 제어하여, 광학 디스크에 기록되어 있는 게임 등의 프로그램을 실행한다.
이 게임 등의 프로그램의 실행에 의하여, CPU(51)는 사용자로부터의 입력에 따라서 상기 그래픽 시스템(60), 사운드 시스템(70) 등을 제어하여, 화상의 표시, 효과음, 악음의 발생 등을 제어하도록 되어 있다.
그런데, 이 비디오 게임 장치는 게임의 진행 또는 사용자의 조작에 따라서 악음, 효과음 등을 발생시키기 위하여, 효과음 등의 음성을 발생하는 음원 및 이 음원의 제어를 행하는 음원 제어부를 구비하고 있다.
이 음원은 상기 CPU(51) 및 SPU(71)에 의하여 실현되고 있으며, 음원 제어부는 상기 CPU(51)에 의하여 실현되고 있다.
구체적으로는, 상기 SPU(71)는 도 2에 나타낸 바와 같이, CPU(51)로부터의 지시에 따라서 사운드 버퍼(72)에 기록된 파형 데이터를 판독하고, 이 판독된 파형 데이터의 피치를 변환하는 피치 변환부(111)와, 클록을 발생하는 클록 제네레이터(112)와, 이 클록 제네레이터(112)의 출력에 따라서 노이즈를 발생하는 노이즈 제네레이터(113)와, 피치 변환부(111)와 노이즈 제네레이터(113)와의 출력을 전환하는 스위치(114)와, 이 스위치(114)의 출력의 레벨을 조정하여, 출력 파형의 진폭을 가변하고, 발생하는 포락선(包絡線)(엔벨로프)을 변환하는 엔벨로프 제네레이터(115)와, 발음(發音)을 행하는가 여부를 전환하는 뮤트 처리부(116)와, 음량 및 좌우의 채널의 밸런스를 조정하는 좌우의 볼륨(117L,117R)을 구비하고 있다.
사운드 버퍼(72)에는, 미리 발음되는 음을 구성하는 1주기분의 파형 데이터가 몇개 기억되어 있다. 이 파형 데이터는 전술한 4비트의 ADPCM 데이터로서 기억되어 있고, 판독시에 SPU(71)에 의하여 16비트의 PCM 데이터로 변환된 후, 상기 피치 변환부(111)에 공급되도록 되어 있다.
그러므로, PCM 데이터를 그대로 기억하는 경우에 비하여, 파형 데이터를 기억하기 위하여 요하는 사운드 버퍼(72)내의 영역을 저감시켜서, 보다 많은 파형 데이터를 기억할 수 있다.
또, 메인 메모리(53)에는, 미리 사운드 버퍼(72)에 기억된 1주기분의 파형 데이터에 대응하는 음의 엔벨로프, 즉 음의 상승, 하강 등의 정보가 기록되어 있다.
그리고, 이 도 2에는, 1음성(1보이스)분의 회로 구성을 나타냈으나, 이 음원은 합계로 24보이스분의 피치 변환부(111)∼볼륨(117L, 117R)을 구비하고 있으며, 각 보이스의 볼륨(117L, 117R)의 출력이 합성되어서, 좌우 2채널분의 음성 출력으로서 출력되도록 되어 있다.
즉, 이 음원은 24보이스분의 발음을 동시에 행할 수 있도록 되어 있다.
또, 각 보이스마다, 상기 사운드 버퍼(72)에 기억된 파형 데이터, 엔벨로프, 음량, 좌우 채널의 밸런스 등을 독립으로 설정할 수 있도록 되어 있다.
이로써, 이 음원은 복수의 보이스를 사용하여, 화음(和音)의 발생 또는 복수의 악기에 의한 연주 등을 행할 수 있도록 되어 있다.
또, 이 음원은 음성 출력에, 시간을 전후시킨 음성 출력을 합성하는 이른바리버브(reverb) 처리를 행할 수 있도록 되어 있다.
즉, 상기 SPU(71)는 24보이스분의 음성이 합성된 음성 출력에 리버브 처리를 행하는가 여부를 선택하는 스위치(118L,118R)와, 이 스위치(118L)로부터 공급되는 음성 출력을 시간적으로 전후시키는 리버브 처리부(119)와, 시간적으로 전후시킨 음성 출력의 음량을 조절하는 볼륨(120)과, 이 볼륨(120)의 출력을 시간적으로 전후시키기 전의 음성 출력에 합성하는 가산부(121b)와, 이 가산부(121b)의 출력의 음량을 조절하는 마스터 볼륨(122)을 구비하고 있다.
또, 이 음원에서는, 전술한 바와 같이 발생한 음성 출력에 상기 디코더(82)로부터 공급되는 광학 디스크로부터 판독된 음성 신호를 합성할 수 있도록 되어 있다.
구체적으로는, 상기 SPU(71)는 광학 디스크로부터의 음성 신호를 전술한 음성 출력에 합성하는가 여부를 선택하는 스위치(123)와, 합성할 음성 신호의 음량을 조절하여 가산부(121b)에 공급하는 믹싱 볼륨(124)과, 합성할 음성 신호에 리버브 처리를 행할 것인가 여부를 선택하는 스위치(125)를 구비하고 있다.
그리고, 전술한 도 2에는, 좌채널만에 대하여 리버브 처리부(119), 볼륨(120) 및 믹싱 볼륨(124) 등의 구성을 나타냈으나, 이들은 우채널에 대하여도 동일한 구성을 가진다.
여기서, 이 음원의 동작을 설명한다.
CPU(51)는 발음할 필요가 생겼을 때에, 사운드 버퍼(72)에 기억된 파형 데이터 중에서 발음할 파형데이터를 선택하는 선택 신호와, 발음할 음의 음정을 상기피치 변환부(111)에 공급하는 동시에, 메인 메모리(53)에 기억된 엔벨로프중에서 발음할 파형 데이터에 대응하는 엔벨로프를 판독하여 상기 엔벨로프 제네레이터(115)에 공급한다.
피치 변환부(111)는 지시된 음성에 따라서, 파형 데이터의 판독 스텝을 가변하여 파형 데이터를 판독한다. 또, 피치 변환부(111)는 1주기분의 파형 데이터의 판독이 종료되면, 발음의 지시가 공급되고 있는 기간 중, 동일한 파형 데이터를 최초로부터 반복하여 판독한다.
이로써, 발음의 지시가 공급되고 있는 동안, 지시된 음정에 대응한 파형 데이터가 재생된다. 이와 같은 파형 데이터는 스위치(114)를 통하여 앤벨로프 제네레이터(115)에 공급된다.
엔벨로프 제네레이터(115)는 CPU(51)로부터 공급된 엔벨로프에 따라서, 피치 변환부(111)로부터의 파형 데이터의 진폭을 변환한다.
이로써, 1보이스분의 음성이 발생된다. 마찬가지로, 나머지의 23보이스분의 음성이 발생되고, 각각의 볼륨(117L), 볼륨(117R)에 의하여 음량, 좌우채널의 밸런스가 조정된 후, 전술한 바와 같이 리버브 처리 등의 처리가 행해진 후, 합성된다.
이리하여, CPU(51)로부터의 지시에 따른 음성이 발생된다.
이와 같은 음원의 제어를 행하는 음원 제어부는 CPU(51)가 음원 제어프로그램을 실행함으로써 실현되고 있다.
이 비디오 게임 장치에서는, 발생시킬 효과음, 배경 음악(BGM) 등에 사용하는 파형 데이터, 발생할 음의 음정, 발음, 소음(消音), 음색 효과 등의 음악 정보를 시간 정보와 함께 시간순으로 배열한 보면(譜面) 데이터를 미리 메인 메모리(53)에 기억하여 두고, 음원 제어부는 이들의 보면 데이터를 예를 들면 일정시간 간격마다 축차 판독하여, 상기 음원의 음정, 발음 및 소음 레지스터를 축차 설정함으로써 효과음, BGM 등을 재생하도록 되어 있다.
이와 같은 보면 데이터에 따라서 음원의 제어를 행하기 위하여, 이 음원 제어부는, 예를 들면 도 3에 나타낸 바와 같은 구성을 가진다. 그리고, 이 도 3은 오퍼레이팅 시스템, 음원 제어 프로그램 및 게임 프로그램 등의 실행에 의하여 상기 CPU(51)가 행하는 처리를 등가적으로 블록도로 나타낸 것이다.
이 음원 제어부는 상기 주변 장치 제어부(52)를 제어하여 소정 시간마다 CPU(51)에 대한 타이머 인터럽트를 발생시키는 타이머 인터럽트 제어부(130)와, 주변 장치 제어부(52)로부터의 타이머 인터럽트에 의하여 소정 시간마다 기동되고, 상기 보면 데이터에 따라서 상기 음원의 제어를 행하는 사운드 제어부(140)와, 비디오 게임 장치 전체의 부하 상태를 조사하여 상기 타이머 인터럽트 제어부(130)에 공급하는 시스템 부하 정보 제어부(150)와, 상기 컨트롤러(92)의 상태를 조사하는 입력 요구 제어부(160)를 가진다.
또, 오퍼레이팅 시스템 및 게임 프로그램의 실행에 의하여 상기 CPU(51)에서 상기 사운드 제어부(140)의 처리와 동시에 실행되는 처리로서는, 상기 그래픽 시스템(60)에 의한 묘화 등을 제어하는 묘화 제어부(170)와, 사용자로부터의 입력에 의하여, 발생할 효과음, 악음 등의 선택, 표시할 화상의 선택, 게임 진행의 제어 등의 처리를 행하는 메인 루틴부(180)가 있다.
상기 타이머 인터럽트 제어부(130)는 타이머 인터럽트를 발생시키는 간격을 유지하는 타이머 인터럽트 간격 유지부(131)와, 타이머 인터럽트 관리부(132)와, 사운드 제어부(140)와 상기 메인 루틴부(180)와의 전환의 제어를 행하는 제어 전환 관리부(133)로 이루어진다.
상기 사운드 제어부(140)는 전술한 보면 데이터를 보유하는 보면 데이터 보유부(141)와, 보면 데이터의 판독을 관리하는 데이터 취득 관리부(142)와, 데이터 취득 관리부(142)의 동작을 제어하는 시간 정보 관리부(143)와, 판독된 보면 데이터에 따라서 상기 음원의 발음/소음 등을 제어하는 발음/소음 정보 제어부(144)와, 상기 타이머 인터럽트 간격 유지부(131)로부터의 타이머 인터럽트 간격에 따른 내부 분해능을 유지하는 내부 분해능 유지부(145)와, 전술한 음원 등으로 이루어진다.
상기 음원은 전술한 SPU(71), 사운드 버퍼(72) 등으로 구성되고, 발음/소음 정보 제어부(144)의 제어에 의하여, 사운드 버퍼(72)로 이루어지는 파형 데이터 보유부(146)에 기억되어 있는 파형 데이터를 판독하여 음성을 발생시키는 발음부(147)와, 발생한 음성을 증폭하여 음량 등을 조정하는 증폭부(148)등으로 이루어진다. 이 발음부(147), 증폭부(148)는 전술한 바와 같이 SPU(71)의 한 기능으로서 실현되고 있다.
상기 시스템 부하 정보 제어부(150)는 시스템 부하 정보를 취득하는 시스템 부하 정보 취득부(151)와, 시스템 부하를 판단하는 시스템 부하 판단부(152)와, 시스템 부하 스레시홀드치(threshold)를 보유하는 시스템 부하 스레시홀드치보유부(153)로 이루어진다.
입력 요구 제어부(160)는 전술한 컨트롤러(92) 등으로 이루어지는 입력 장치(161)와, 입력 장치(161)로부터의 입력 요구를 해석하는 입력 요구 해석부(162)로 이루어진다.
상기 묘화 제어부(170)는 전술한 CPU(51), GTE(61), GPU(62) 및 프레임 버퍼(63) 등으로 구성되고, GTE(61) 등으로 이루어지는 제어시 묘화 정보 보유부(171)와, CPU(51) 등으로 이루어지는 묘화 정보 제어부(172)와, GPU(62) 등으로 이루어지는 묘화 장치(173)와, 프레임 버퍼(63) 등으로 이루어지는 묘화 정보 보유부(174)와, 묘화 장치(173)로부터의 비디오 출력에 따라서 화상을 표시하는 표시 장치(175) 등으로 이루어진다.
다음에, 이 음원 제어부의 동작을 설명한다.
이 음원 제어부에서는, 미리 타이머 인터럽트 간격 유지부(131)에, 시스템 부하 또는 입력 요구에 따른 타이머 인터럽트 간격이 유지되어 있다. 구체적으로는, 예를 들면 시스템 부하가 적을 때의 타이머 인터럽트 간격으로서 240분의 1초가, 시스템 부하가 클 때의 타이머 인터럽트 간격으로서, 시스템 부하가 가벼울 때의 타이머 인터럽트 간격보다 긴 60분의 1초가 유지되어 있다.
이 음원 제어부에서는, 처리가 개시되면, CPU(51)가 실행하는 메인 루틴부(180)에 의하여, 입력 장치(161)로부터의 입력에 따른 묘화 제어부(170)의 제어, 사운드 제어부(140)에 의하여 발생되는 악음 등의 선택, 시스템 부하 정보 제어부(150) 등의 처리가 병렬로 실행된다.
이 때, 시스템 부하 정보 취득부(151)는 CPU(51)의 부하 정보를 취득하여 시스템 부하 판단부(152)에 공급하고, 시스템 부하 판단부(152)는 시스템 부하 스레시홀드치 보유부(153)에 보유되어 있는 스레시홀드치와 비교하여 시스템 부하를 판단하고, 판단 결과를 타이머 인터럽트 간격 유지부(131)에 공급한다.
타이머 인터럽트 간격 유지부(131)는 시스템 부하 판단부(152)로부터의 시스템 부하 판단 또는 입력 요구 해석부(162)의 출력에 따라서, 타이머 인터럽트 간격을 선택하여 타이머 인터럽트 관리부(132) 및 내부 분해능 유지부(145)에 공급한다.
구체적으로는, 타이머 인터럽트 간격 유지부(131)는 시스템 부하 판단부(152)로부터의 판단결과에 따라서, 시스템 부하가 가벼울 때는 인터럽트 간격을 240분의 1초로 하고, 시스템 부하가 무거울 때는 인터럽트 간격을 60분의 1초로 한다.
타이머 인터럽트 관리부(132)는 타이머 인터럽트 간격 유지부(131)로부터 공급된 타이머 인터럽트 간격에 따라서 주변 장치 제어부(52)를 제어하고, 일정 간격마다 타이머 인터럽트를 발생시키고, 제어 전환 관리부(133)는 타이머 인터럽트에 따라서 일정 간격마다 메인 루틴부(180)와 사운드 제어부(140)의 처리를 전환하여, 사운드 제어부(140)의 처리를 개시한다.
제어 전환 관리부(133)의 전환에 의하여 처리가 개시되면, 사운드 제어부(140)에서는, 시간 정보 관리부(143)가 내부 분해능 유지부(145)에 유지되어 있는 내부 분해능 즉 타이머 인터럽트 간격에 따라서, 데이터 취득 관리부(142)를제어하여 보면 데이터 보유부(141)에 보유되어 있는 보면 데이터로부터 타이머 인터럽트 간격분의 판독을 지시하고, 판독된 보면 데이터를 발음/소음 정보 제어부(144)에 공급한다.
발음/소음 정보 제어부(144)는 시간 정보 관리부(143)로부터 공급된 보면 데이터에 따라서, 발음부(147)를 제어한다. 이로써, 발음부(147)는 파형 데이터 보유부(146)에 보유되어 있는 파형 데이터에 따라서 음성을 발생한다.
구체적으로는, 발음/소음 정보 제어부(144)의 실행에 의하여, 전술한 설명과 마찬가지로, CPU(51)가 피치 변환부(111), 엔벨로프 제네레이터(115) 등을 제어함으로써 음성의 발생을 제어한다. 이와 같이 발생된 음성은 증폭부(148)에 의하여 레벨이 조정된 후, 스피커(73)에 의하여 출력된다.
이로써, 타이머 인터럽트 간격 유지부(131)로부터 공급되는 타이머 인터럽트 간격분의 보면 데이터에 따른 음성데이터가 출력된다.
이 사운드 제어부(140)는 전술한 바와 같이 타이머 인터럽트 간격 유지부(131)에 의하여 설정된 타이머 인터럽트 간격마다 기동되고, 이로써 타이머 인터럽트 간격분의 보면 데이터에 따른 음성이 순차 발생된다.
즉, 타이머 인터럽트간격이 240분의 1초일 때는, 예를 들면 도 4A에 나타낸 바와 같이, 240분의 1초마다 보면 데이터가 재생된다.
이 때, 실제의 사운드 제어부(140)의 처리시간은 240분의 1초보다 짧게 되어 있다.
예를 들면, 시각 t11에서 시각 t12까지, 시각 t12에서 시각 t13까지, 시각t13에서 시각 t14까지, 시각 t14에서 시각 t15까지의 동안에, 각각 음부(音符)가 2개 재생된다. 즉, 시각 t11에서 시각 t15까지의 60분의 1초간에 음부가 2개 재생된다.
또, 타이머 인터럽트 간격이 60분의 1초일 때는, 예를 들면 도 4B에 나타낸 바와 같이, 60분의 1초마다 보면 데이터가 재생된다. 예를 들면, 시각 t21에서 시각 t22까지의 60분의 1초간에 음부가 8개 재생된다.
즉, 전술한 타이머 인터럽트 간격을 240분의 1초로 한 경우와 마찬가지로 60분의 1초간에 음부가 8개 재생된다.
이로써, 이 음원 처리 장치에서는, 동일한 보면 데이터를 사용하여, 타이머 인터럽트 간격을 변화시켜도, 이 변화시킨 타이머 인터럽트 간격에 따라서 보면 데이터의 판독을 제어함으로써, 소정의 템포로 보면 데이터가 재생된다.
전술한 바와 같이, 사운드 제어부(140)를 인터럽트에 의하여 기동하여 처리를 행한 경우, 실제의 CPU(51)의 처리 부하는 타이머 인터럽트 간격이 240분의 1초일 때는, 예를 들면 도 5A에 나타낸 바와 같이, 사운드 제어부(140)의 처리가 CPU(51)의 처리 능력의 25%를 점하고 있다. 또, 타이머 인터럽트 간격이 60분의 1초일 때는, 예를 들면 도 5B에 나타낸 바와 같이, 사운드 제어부(140)의 처리가 CPU(51)의 처리 능력의 12.5%를 점하고 있다.
즉, 실제로 음원을 제어하기 위한 CPU(51)의 부하는 타이머 인터럽트 간격이 짧아져도 그다지 변화하지 않지만, 타이머 인터럽트 간격이 짧아지거나, 타이머 인터럽트가 빈번히 발생하면, 타이머 인터럽트를 위한 처리의 오버헤드가 커지므로,사운드 제어부(140)의 처리 부하가 증대한다.
전술한 바와 같이, 이 음원 제어부에서는, 타이머 인터럽트 간격 유지부(131)에 의하여 선택된 타이머 인터럽트 간격은 시스템 부하가 가벼울 때는, 인터럽트 간격은 사운드 제어부(140)의 처리 부하가 비교적 커지는 240분의 1초로 되고, 시스템 부하가 무거울 때는, 사운드 제어부(140)의 처리 부하가 비교적 작아지는 60분의 1초로 되어 있다.
이로써, 이 음원 제어 장치에서는, 전혀 보면 데이터를 변경하지 않고, 시스템 부하에 따라서 사운드 제어부(140)의 처리 부하를 가변할 수 있다. 그러므로, 시스템 부하가 무거울 때는, 사운드 제어부(140)의 처리 부하가 작아지고, 예를 들면 묘화 등의 처리를 원활하게 행할 수 있다.
그리고, 전술한 실시예에서는, 시스템 부하 판단부(152)가 시스템 부하 정보 취득부(151)로부터 공급되는 시스템 부하 정보를 시스템 부하 스레시홀드치 보유부(153)에 보유되어 있는 스레시홀드치와 비교하고, 비교 결과에 따라서 타이머 인터럽트 간격 유지부(131)에 유지되어 있는 타이머 인터럽트 간격을 선택하는 구성으로 되어 있었지만, 메인 루틴부(180)의 프로그램에 의한 제어에 의하여 타이머 인터럽트 간격을 제어하는 구성으로 해도 되고, 또는 입력 장치(161)로부터의 입력 요구에 따라서 타이머 인터럽트 간격을 설정하는 구성으로 해도 되고, 타이머 인터럽트 간격을 가변할 수 있으면 전술한 실시예와 같은 효과를 얻을 수 있다.
또, 전술한 실시예에서는 본 발명의 음원 제어 장치를 비디오 게임 장치에 있어서 음원의 제어를 행하는 음원 제어부로서 적용한 예에 대하여 설명하였지만,음원의 제어와 함께, 화상 표시 장치 등의 다른 처리를 행하는 구성으로 되어 있으면, 예를 들면 자동 연주 장치, 퍼스널 컴퓨터 등의 장치에도 적용할 수 있고, 그외에 본 발명의 기술적 사상을 일탈하지 않는 범위이면 적절히 변경할 수 있는 것은 물론이다.
본 발명에 관한 음원 제어 장치에서는, 간격 설정부에 의하여 음원 제어부의 동작의 기준으로 되는 타이밍 신호의 발생 간격을 변경해도, 변경된 타이밍 신호의 발생 간격에 따라서 음원 제어 정조를 판독할 수 있고, 이 판독된 음원 제어 정보에 따라서 음원을 제어할 수 있다.
그러므로, 음원 제어 정보를 변경하지 않고, 동일한 음원 제어 정보를 사용하여 타이밍신호의 발생 간격을 변경하여 재생을 행해도, 소정의 템포로 악곡 등이 재생되고, 재생되는 악곡 등의 템포가 변화하지 않는다. 또, 타이밍 신호의 발생 간격을 변경함으로써, 음원의 제어에 요하는 부하를 변화시킬 수 있다.
또, 본 발명에 관한 음원 제어 장치에서는, 제어부가 부하 검출부에 의하여 검출된 음원의 제어 이외의 정보 처리의 부하에 따라서 간격 설정부의 설정을 제어함으로써, 음원의 제어 이외의 정보 처리의 부하에 따라서 음원의 제어에 요하는 부하를 변화시킬 수 있고, 예를 들면 음원의 제어 이외의 정보처리의 부하가 증가했을 때 등에, 음원의 제어에 요하는 부하를 저감할 수 있다.
시스템 부하 정보 취득부(151)는 메인 CPU가 어떤 주어진 시간에 얼마나 분주한가를 판정하는 장치이다. 한 구성으로서 시스템 부하는 묘화 제어부(170)를 서비스하기 위하여 CPU가 어느 정도의 시간을 소요하는가에 따라서 판정해도 된다.묘화 제어부를 집중적으로 사용하는 루틴에 있어서, 메인 CPU는 묘화 제어부가 행할 동작을 개시하기 전에 플랙을 세트해도 된다. 이들 동작이 종료하면 메인 루틴에서 다른 동작이 행해지기 전에 플랙을 리세트한다. 이 플랙은 인터럽트 루틴에 의하여 주기적으로 검사된다. 플랙이 세트된 것이 발견되면, 묘화 동작중 메인 루틴이 인터럽트된 것을 알 수 있고, 이것이 빈번히 발생하면 묘화 동작으로 인하여 메인 CPU에 큰 부하가 걸린 것을 알 수 있다. 이러한 사실로, 시스템 부하 판정부는 시스템 부하가 스레시홀드치를 초과했음을 인식하게 되고, 따라서 타이머 인터럽트 간격 유지부(131)에 유지된 타이머 인터럽트 간격을 조정한다. 한편, 묘화 플랙이 리세트된 것이 빈번히 발견되면, 묘화 동작은 메인CPU에 큰 부하를 주지 않는다는 것을 알 수 있고, 따라서 타이머 인터럽트 간격을 조정할 수 있다.
시스템 부하를 정의하고, 시스템 부하가 인터럽트 간격의 변화를 필요로 하는가를 판정하는데는, 여러 가지 다른 수단이 사용될 수 있다는 것을 알 수 있을 것이다. 여기에 개시된 본 발명의 이들 장치 및 다른 변형은 다음의 특허청구의 범위에 의하여 정의되어 보호받고자 하는 본 발명의 새로운 특징을 일탈하지 않고, 이 기술 분야에서 통상의 지식을 가진 자에 의하여 행해질 수 있을 것이다.

Claims (17)

  1. 자체적으로 제어하는 음원(音源)으로부터 데이터를 판독하여 오디오 신호를 발생시키기 위한 오디오 신호 처리 장치로서,
    인터럽트 간격이 상이한 다수의 인터럽트 신호를 발생시키기 위한 발생 수단,
    상기 오디오 신호 처리 장치의 부하 상태에 따라서 상기 인터럽트 신호들 중하나를 선택하기 위한 선택 수단 및
    상기 선택 수단에 의하여 선택된 상기 인터럽트 신호에 응답하여 상기 음원으로부터의 데이터의 상기 판독을 제어하기 위한 제어 수단
    을 포함하는 오디오 신호 처리 장치.
  2. 자체적으로 제어하는 음원으로부터 데이터를 판독하여 오디오 신호를 발생시키기 위한 오디오 신호 처리 장치로서,
    입력 명령에 따라 서로 간격을 두고 있는 다수의 인터럽트 신호를 발생시키기 위한 발생 수단,
    상기 오디오 신호 처리 장치의 부하 상태에 따라서 상기 인터럽트 신호들 중하나를 선택하기 위한 선택 수단 및
    상기 선택 수단에 의하여 선택된 상기 인터럽트 신호에 응답하여 상기 음원으로부터의 데이터의 상기 판독을 제어하는 제어 수단
    을 포함하는 오디오 신호 처리 장치.
  3. 자체적으로 제어하는 음원(音源)으로부터 데이터를 판독하여 오디오 신호를 발생시키기 위한 오디오 신호 처리 장치로서,
    인터럽트 간격이 상이한 다수의 인터럽트 신호를 발생시키기 위한 발생 수단,
    상기 인터럽트 신호들 중 하나를 선택하기 위한 선택 수단 및
    상기 선택 수단에 의하여 선택된 상기 인터럽트 신호에 응답하여 상기 음원으로부터의 데이터의 상기 판독을 제어하기 위한 제어 수단
    을 포함하는 오디오 신호 처리 장치.
  4. 제1항에서,
    상기 오디오 신호 처리 장치의 상기 부하 상태를 검출하기 위한 검출 수단을 추가로 포함하며,
    상기 선택 수단은 상기 검출 수단의 출력에 응답하여 상기 인터럽트 신호들 중 하나를 선택하는 오디오 신호 처리 장치.
  5. 제1항 내지 제4항 중 어느 한 항에서,
    상기 오디오 신호 처리 장치는 그래픽 프로세싱도 제어하는 오디오 신호 처리 장치.
  6. 제5항에서,
    상기 음원으로부터 판독된 상기 데이터는 음부(音符) 데이터인 오디오 신호 처리 장치.
  7. 제6항에서,
    상기 데이터의 판독은, 상기 음원으로부터 판독된 상기 음부 데이터의 템포가 상기 인터럽트 신호에 관계없이 일정하게 되도록, 제어되는 오디오 신호 처리 장치.
  8. 제6항에서,
    상기 음원은 PCM(pulse code modulation, 부호화) 신호를 포함하는 오디오 신호 처리 장치.
  9. 제8항에서,
    상기 음원은 파형 메모리를 구비하는 오디오 신호 처리 장치.
  10. 제8항에서,
    상기 음원은 FM 신호를 포함하는 오디오 신호 처리 장치.
  11. 자체적으로 제어하는 음원으로부터 데이터를 판독하여 오디오 신호를 발생시키기 위한 오디오 신호 처리 장치를 포함하는 게임기에 있어서,
    상기 오디오 신호 처리 장치는,
    인터럽트 간격이 상이한 다수의 인터럽트 신호를 발생시키기 위한 발생 수단,
    상기 오디오 신호 처리 장치의 부하 상태에 따라서 상기 인터럽트 신호들 중의 하나를 선택하기 위한 선택 수단 및
    상기 선택 수단에 의하여 선택된 상기 인터럽트 신호에 응답하여 상기 음원으로부터의 데이터의 상기 판독을 제어하는 제어 수단
    을 포함하는 게임기.
  12. 자체적으로 제어하는 음원으로부터 데이터를 판독하여 오디오 신호를 발생시키기 위한 오디오 신호 처리 장치를 포함하는 게임기에 있어서,
    상기 오디오 신호 처리 장치는,
    입력 명령에 따라 서로 간격을 두고 있는 다수의 인터럽트 신호를 발생시키기 위한 발생 수단,
    상기 오디오 신호 처리 장치의 부하 상태에 따라서 상기 인터럽트 신호들 중의 하나를 선택하기 위한 선택 수단 및
    상기 선택 수단에 의하여 선택된 상기 인터럽트 신호에 응답하여 상기 음원으로부터의 데이터의 상기 판독을 제어하기 위한 제어 수단
    을 포함하는 게임기.
  13. 자체적으로 제어하는 음원으로부터 데이터를 판독하여 오디오 신호를 발생시키기 위한 오디오 신호 처리 장치를 포함하는 게임기에 있어서,
    상기 오디오 신호 처리 장치는,
    입력 명령에 따라 서로 간격을 두고 있는 다수의 인터럽트 신호를 발생시키기 위한 발생 수단,
    상기 인터럽트 신호들 중 하나를 선택하기 위한 선택 수단 및
    상기 선택 수단에 의하여 선택된 상기 인터럽트 신호에 응답하여 상기 음원으로부터의 데이터의 상기 판독을 제어하기 위한 제어 수단
    을 포함하는 게임기.
  14. CPU를 구비하는 장치에서 음원의 제어 처리를 실행하는 방법으로서,
    상기 장치에서 실행하는 처리 단계는,
    상기 CPU의 제어를 상기 음원의 제어 처리로 넘겨주기 위한 인터럽트를 발생시키는 간격을 상기 CPU의 부하 상태에 따라 변경하는 제1 처리 단계 및
    상기 제1 처리 단계에서 설정된 상기 간격마다 상기 인터럽트를 발생시키는 제2 처리 단계
    를 포함하는 음원 제어 방법.
  15. 제14항에서,
    상기 장치에서 실행하는 처리 단계로서 상기 CPU의 부하 상태를 판단하는 부하 판단 처리 단계를 포함하며,
    상기 제1 처리 단계에서, 상기 장치에 상기 부하 판단 처리 단계의 판단에 따라 상기 간격을 설정하는 음원 제어 방법.
  16. CPU를 구비하는 장치에서 음원의 제어 처리를 실행하는 방법으로서,
    상기 장치에서 실행하는 처리 단계는,
    상기 CPU의 제어를 상기 음원의 제어 처리로 넘겨주기 위한 인터럽트를 발생시키는 간격을 입력 장치로부터의 입력 명령에 따라 설정하는 제1 처리 단계 및
    상기 제1 처리 단계에서 설정된 상기 간격마다 상기 인터럽트를 발생시키는 제2 처리 단계를 포함하는 음원 제어 방법.
  17. CPU를 구비하는 장치에서 음원의 제어 처리를 실행하는 방법으로서,
    상기 장치에서 실행하는 처리 단계는,
    상기 CPU의 제어를 상기 음원의 제어 처리로 넘겨주기 위한 인터럽트를 발생시키는 처리 단계 및
    상기 인터럽트를 발생시키는 간격을 제어하는 처리 단계
    를 포함하는 음원 제어 방법.
KR1019950046156A 1994-12-02 1995-12-02 음원제어장치및음원제어방법 KR100375329B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP6300025A JPH08160959A (ja) 1994-12-02 1994-12-02 音源制御装置
JP1994-300025 1994-12-02

Publications (2)

Publication Number Publication Date
KR960025311A KR960025311A (ko) 1996-07-20
KR100375329B1 true KR100375329B1 (ko) 2003-05-09

Family

ID=17879807

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950046156A KR100375329B1 (ko) 1994-12-02 1995-12-02 음원제어장치및음원제어방법

Country Status (7)

Country Link
US (1) US5767430A (ko)
EP (2) EP1109149B1 (ko)
JP (1) JPH08160959A (ko)
KR (1) KR100375329B1 (ko)
CN (1) CN1146859C (ko)
CA (1) CA2164082A1 (ko)
MY (1) MY114111A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101353877B1 (ko) * 2007-06-29 2014-01-22 엘지전자 주식회사 동영상 재생 장치 및 방법

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1280150A3 (en) * 1994-12-02 2008-05-14 Sony Computer Entertainment Inc. Method for processing and apparatus for recording and reproducing sound data
US5974387A (en) * 1996-06-19 1999-10-26 Yamaha Corporation Audio recompression from higher rates for karaoke, video games, and other applications
SG67993A1 (en) * 1996-08-30 1999-10-19 Yamaha Corp Sound source system based on computer software and method of generating acoustic waveform data
US6425018B1 (en) 1998-02-27 2002-07-23 Israel Kaganas Portable music player
KR100548891B1 (ko) * 1998-06-15 2006-02-02 마츠시타 덴끼 산교 가부시키가이샤 음성 부호화 장치 및 음성 부호화 방법
US6968405B1 (en) * 1998-07-24 2005-11-22 Aristocrat Leisure Industries Pty Limited Input/Output Interface and device abstraction
JP3975593B2 (ja) 1999-01-21 2007-09-12 株式会社ソニー・コンピュータエンタテインメント 再生音を発生する方法、再生音を発生する電子機器及びエンターテインメント・システム
AU2325800A (en) * 1999-03-08 2000-09-28 Faith, Inc. Data reproducing device, data reproducing method, and information terminal
JP2001318672A (ja) * 2000-03-03 2001-11-16 Sony Computer Entertainment Inc 楽音発生装置
JP4497264B2 (ja) * 2001-01-22 2010-07-07 株式会社セガ ゲームプログラム、ゲーム装置、効果音の出力方法及び記録媒体
KR20100067695A (ko) * 2003-02-07 2010-06-21 노키아 코포레이션 다중 사용자 환경들의 제어
US7038119B2 (en) 2003-07-18 2006-05-02 Telefonaktiebolaget L M Ericsson (Publ) Dynamic control of processing load in a wavetable synthesizer
JP4507672B2 (ja) * 2004-03-31 2010-07-21 ヤマハ株式会社 オーディオ再生装置およびクロック周波数制御方法
TWI402647B (zh) * 2007-09-14 2013-07-21 Asustek Comp Inc 可動態調整電壓及有效節能之電壓控制裝置、方法及電腦裝置
JP6641965B2 (ja) * 2015-12-14 2020-02-05 カシオ計算機株式会社 音響処理装置、音響処理方法、プログラム、及び電子楽器

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5146833A (en) * 1987-04-30 1992-09-15 Lui Philip Y F Computerized music data system and input/out devices using related rhythm coding
US5266736A (en) * 1988-06-21 1993-11-30 Kawai Musical Instrument Mfg. Co., Ltd. Interruption control apparatus for use in performance information processing system
DE69130748T2 (de) * 1990-06-28 1999-09-30 Casio Computer Co., Ltd. Vorrichtung zur Erzeugung von Musikwellenformen
US5541360A (en) * 1992-04-07 1996-07-30 Casio Computer Co., Ltd. Single chip sound source integrated circuit including effect adding device and sound source on the same single integrated circuit chip
JPH07146679A (ja) * 1992-11-13 1995-06-06 Internatl Business Mach Corp <Ibm> 音声データを変換する方法及びシステム
AU682836B2 (en) * 1992-11-16 1997-10-23 Multimedia Systems Corporation System and apparatus for interactive multimedia entertainment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101353877B1 (ko) * 2007-06-29 2014-01-22 엘지전자 주식회사 동영상 재생 장치 및 방법

Also Published As

Publication number Publication date
EP0715296A2 (en) 1996-06-05
KR960025311A (ko) 1996-07-20
EP1109149B1 (en) 2006-12-27
CA2164082A1 (en) 1996-06-03
MY114111A (en) 2002-08-30
CN1146859C (zh) 2004-04-21
US5767430A (en) 1998-06-16
JPH08160959A (ja) 1996-06-21
CN1150679A (zh) 1997-05-28
EP0715296A3 (en) 1997-01-15
EP1109149A3 (en) 2001-07-18
EP1109149A2 (en) 2001-06-20
EP0715296B1 (en) 2001-09-19

Similar Documents

Publication Publication Date Title
KR100375329B1 (ko) 음원제어장치및음원제어방법
JP2009157272A (ja) 音声再生装置
JP2947032B2 (ja) カラオケ装置
JP3625880B2 (ja) 音源装置
KR100384919B1 (ko) 음원데이터생성방법,기록매체,및음원데이터처리장치
EP1650747B1 (en) Audio playback program, audio playback method, and audio playback device
JP3660379B2 (ja) 音源制御情報の記憶方法及び音源制御装置
JP3919833B2 (ja) 音源装置
JP3518357B2 (ja) 楽音生成方法、楽音生成装置及び楽音生成処理プログラムを記録したコンピュータ読み取り可能な記録媒体
JP3792742B2 (ja) 音声データ処理装置及び音声データ処理方法
JP3892433B2 (ja) カラオケ装置、カラオケ方法、ならびに、プログラム
JP3393608B2 (ja) 音声処理装置
JPH04270389A (ja) ボーカルデータ表示装置
JP2685719B2 (ja) 電子効果付加装置
JPH07319484A (ja) 映像再生装置
JP2000312779A (ja) ゲーム装置及びコンピュータ読み取り可能な記録媒体
JPH08129394A (ja) カラオケ装置
JP4714230B2 (ja) 音声処理装置、音声処理方法、ならびに、プログラム
JP2020060679A (ja) 電子音楽装置、再生制御方法およびプログラム
JPH02247870A (ja) 伴奏音楽再生装置
JP2004029847A (ja) マルチメディア制御装置
JPH08160956A (ja) 音源データ生成方法、記録媒体、及び音源データ処理装置
JP2004258083A (ja) 再生装置、生成装置、再生方法、生成方法、ならびに、プログラム
JP2006154873A (ja) 音声データ処理装置及び音声データ処理方法

Legal Events

Date Code Title Description
A201 Request for examination
N231 Notification of change of applicant
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: 20120130

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee