패밀리컴퓨터/CPU, PPU, APU

< 패밀리컴퓨터
十八子(십팔자) (토론 | 기여)님의 2024년 11월 13일 (수) 19:47 판
(차이) ← 이전 판 | 최신판 (차이) | 다음 판 → (차이)

패밀리컴퓨터의 세가지 演算裝置(연산장치)CPU·PPU·APU()해 다룹니다.

이것들은 다 무슨 소리인가

CPU專攻者(전공자)熟練(숙련)된 한글화 作業者(작업자)가 아니라도 적어도 이름쯤은 들어봤을 것이라 봅니다. 하지만 PPUAPU라는 말은 처음 들어보는 분이 많을 것입니다.

이 세가지 裝置(장치)가 뭘 하는 것들인지 알고 있으시다면 이 부분은 簡單(간단)히 훑고 지나가거나 스킵하셔도 괜찮습니다. 或是(혹시) 여기에 적혀있지 않거나 잘못된 部分(부분)發見(발견)하신다면 寄與(기여)付託(부탁)드립니다

패미컴에서는 이 세가지 處理裝置(처리장치)各各(각각) 獨立的(독립적)으로 作動(작동)합니다.

CPU

中央處理裝置(중앙처리장치)(Central Processing Unit), 컴퓨터(()은 게임())가 하는 演算(연산)擔當(담당)하는 部品(부품)입니다.

PPU

畵像處理裝置(화상처리장치)(Picture Processing Unit), 컴퓨터의 GPU該當(해당)합니다.

現代(현대)컴퓨터에서 GPU가 하는 일은 3D 렌더링을 ()浮動小數點(부동소수점) 演算(연산)竝列(병렬)로 빠르게 處理(처리)하는 것이라면, 8비트 게임()에서는 大蓋(대개) 固定(고정)된 타일들로만 構成(구성)된 2D 타일맵을 畵面(화면)에 그려주거나, 스프라이트(움직이는 이미지)를 하드웨어()에서 빠르게 處理(처리)하는 일을 擔當(담당)합니다. 스프라이트가 一定(일정) () 以上(이상) 가로로 늘어서게 되면 스프라이트가 次例(차례)로 깜빡이면서 느려지는 現象(현상) 亦是(역시) PPU의 處理能力(처리능력)超過(초과)作業(작업)强制(강제)結果(결과)라고 할 수 있습니다.

APU

音聲處理裝置(음성처리장치)(Audio Processing Unit)이긴 한데, 해봤자 簡單(간단)波形(파형) 程度(정도)具現(구현)可能(가능)한 8비트 게임()에서는 地域化(지역화)와 거리가 멀기 때문에 깊이 있게 다루지는 않아도 되겠다 봅니다. 하지만 寄與(기여)는 언제나 歡迎(환영)입니다

接近方法(접근방법)

가장 基本的(기본적)이면서 重要(중요)한 것은 各其(각기) 따로 作動(작동)하는 이 세 裝置(장치)메모리(RAM)조차도 各自(각자)의 것을 갖고 있다는 ()입니다. 그러니까 各自(각자)의 메모리에 있는 데이터만 取扱(취급)한다는 것입니다.

하지만 게임팩 안의 ROM에 들어있는 프로그램은 CPU의 메모리 領域(영역)割當(할당)되고, CPU 命令語(명령어)로는 CPU 領域(영역)資料(자료)에만 接近(접근)할 수 있습니다. 畵像(화상)이나 音聲(음성)入力(입력)/出力(출력)하기 ()해서는 CPU에서 () 裝置(장치)의 메모리에 接近(접근)必要(필요)가 있는데요, CPU 메모리 領域(영역)一部(일부)에는 이를 ()特殊(특수)레지스터配當(배당)되어 있습니다.

이 레지스터들은 더 簡單(간단)히 말하면 '포트'와 비슷한 槪念(개념)으로 이미지할 수 있습니다. ()를 들어, 畵面(화면)에 그리고 싶은 타일 데이터를 VRAM(PPU 메모리)에 로드하려면, PPUADDR이라는 레지스터에 타일을 쓰고자 하는 住所(주소)를 1바이트씩 두()(), PPUDATA라는 레지스터에 實際(실제) 타일 데이터를 1바이트씩 써야 합니다. CPU와 PPU가 메모리 住所(주소) 體系(체계)共有(공유)하는 게임보이와는 相異(상이)部分(부분)입니다.