오리지널 칩 세트

Original Chip Set
아미가 칩 세트

OCS(Original Chip Set)는 최초Commodore Amiga 컴퓨터에 사용된 칩셋으로, Amiga의 그래픽과 사운드 기능을 정의합니다.그 뒤를 약간 개선된 Enhanced Chip Set(ECS)와 대폭 개선된 Advanced Graphics Architecture(AGA)가 잇습니다.

최초의 칩셋은 1985년부터 1990년 사이에 제조된 Amiga 모델인 Amiga 1000, Amiga 2000, Amiga CDTV 및 Amiga 500에 등장했습니다.

칩의 개요

Amiga에 독자적인 그래픽 기능을 부여한 칩셋은 Agnus, DenisePaula의 3가지 주요 "커스텀" 칩으로 구성되어 있습니다.오리지널 칩셋과 강화된 칩셋은 모두 코모도어의 칩 제조 자회사인 MOS 테크놀로지에 의해 NMOS 로직 기술을 사용하여 제조되었다.Jay Miner에 따르면 OCS 칩셋은 5µm 제조 공정에서 제조되었으며 AGA Lisa는 1.5µm 공정에서 구현되었습니다.3개의 커스텀 칩은 모두 원래 48핀 DIP로 패키지화되어 있었습니다.이후 버전의 Agnus(Fat Agnus)는 84핀 PLCC로 패키지화되어 있었습니다.

Agnus는 설계의 중심 칩입니다.복잡한 우선순위 시스템을 사용하여 중앙 68000 프로세서와 기타 커스텀 칩 모두에서 칩 RAM으로의 접근을 제어합니다.Agnus에는, 블리터(프로세서의 개입 없이 메모리내의 데이터를 고속으로 전송)라고 불리는 서브 컴퍼넌트와 카퍼(비디오 동기식 코프로세서)가 있습니다.오리지널 Agnus는 512KB의 칩 RAM처리할 수 있습니다.이후 '팻 아그너스'로 명명된 리비전은 512KB 유사 고속 RAM을 추가하였으며, ECS에서는 1MB('팻 아그너스'라고도 함)로 변경되었고, 이후 2MB 칩 RAM으로 변경되었다.

데니스는 메인 비디오 프로세서입니다.오버스캔을 사용하지 않을 경우 Amiga의 그래픽 디스플레이는 가로 320 또는 640픽셀, 세로 200픽셀(NTSC) 또는 세로 256픽셀(PAL)입니다.또, Denise는, 그 시대의 일반적인 모니터에서는 점멸을 수반해 세로 해상도를 2배로 하는 인터레이스도 서포트하고 있습니다.평면 비트맵그래픽은 픽셀당 개별 비트비트플레인이라고 불리는 메모리의 개별 영역으로 분할합니다.통상적인 동작에서는, 데니즈는 1~5개의 비트 플레인을 허가해, 2~32개의 독자적인 색상을 제공합니다.이러한 색상은 4096색 팔레트(RGB 컴포넌트당 4비트)에서 선택됩니다.6번째 비트플레인은 다음 두 가지 특수 비디오 모드로 사용할 수 있습니다.Halfbrite 모드Hold-And-Modify(HAM) 모드.또한 Denise는 8개의 스프라이트, 싱글 픽셀 스크롤 및 "듀얼 플레이 필드" 모드를 지원합니다.데니스는 또한 마우스 및 디지털 조이스틱 입력을 처리합니다.

Paula는 주로 오디오 칩으로, 4개의 독립된 하드웨어 혼합 8비트 PCM 사운드 채널을 갖추고 있으며, 각각 65개의 볼륨 레벨(사운드부터 최대 볼륨까지)과 약 20개의 샘플에서 약 29,000개의 샘플/초까지의 파형 출력 속도를 지원합니다.또한 Faula는 플로피 디스크 드라이브, 시리얼 포트, 아날로그 조이스틱 등 인터럽트 및 다양한 I/O 기능을 처리합니다.

OCS 칩셋과 Atari 8비트 가정용 컴퓨터 시리즈의 훨씬 이전 칩셋(ANTIC, GTIA POKEY 칩셋)은 전체적인 기능과 3개의 컴포넌트 칩으로 나누어진 기능 모두에서 많은 유사점이 있습니다.두 칩셋은 모두 개념적으로 Jay Miner에 의해 설계되었습니다.에 유사점을 나타냅니다.

아그누스

MOS 8367R0 - Agnus

Agnus 칩은 칩셋 전체의 동작을 전체적으로 제어합니다.모든 작업이 비디오 빔의 위치에 동기화됩니다.여기에는 내장 RAM(칩셋에 액세스 할 수 있기 때문에 칩 RAM이라고 불립니다)에의 액세스도 포함됩니다.중앙 68000 프로세서와 칩셋의 다른 멤버 모두 Agnus를 통한 칩 RAM 접근을 중재해야 합니다.컴퓨팅 아키텍처에서는 다이렉트 메모리 액세스(DMA)라고 합니다.Agnus는 DMA 컨트롤러(DMAC)입니다.

Agnus는 경쟁 리소스 간에 메모리 액세스 요청을 가장 잘 조정하기 위해 복잡하고 우선 순위 기반 메모리 액세스 정책을 가지고 있습니다.예를 들어 프레임버퍼 데이터의 즉시 표시가 블리터에 의한 메모리 처리보다 중요하다고 간주되기 때문에 비트플레인 데이터 페치가 블리터 전송보다 우선됩니다.또한 Agnus는 CPU 버스 사이클과 DMA 사이클이 겹치도록 접근 순서를 지정합니다.Amigas의 원래 68000 프로세서는 사용 가능한 메모리 사이클마다 메모리에만 액세스하는 경향이 있었기 때문에 Agnus는 "홀수" 메모리 액세스 사이클을 가장 먼저 할당하고 필요에 따라 CPU에서 남은 사이클을 사용할 수 있는 동안 시간 크리티컬한 커스텀칩 DMA에 할당하는 시스템을 가동하고 있기 때문에 일반적으로 CPU의 메모리 부족은 발생하지 않습니다.ss 및 속도가 느려지지 않는 것 같습니다.단, 블리터 전송과 같이 시간적으로 중요하지 않은 커스텀칩 액세스에서는 여분의 홀수 또는 짝수 사이클을 모두 사용할 수 있습니다.또, "BLITHOG"(블리터 호그) 플래그가 설정되어 있는 경우, Agnus는 블리터에 관해서 CPU로부터의 짝수 사이클을 록아웃 할 수 있습니다.

아그누스의 타이밍은 280ns의 "색상 시계"로 측정된다.이는 2개의 저해상도(140ns) 픽셀 또는 4개의 고해상도(70ns) 픽셀에 해당합니다.데니스와 마찬가지로 이러한 타이밍은 가정용 TV에 표시되도록 설계되었으며 외부 클럭 소스와 동기화할 수 있습니다.

블리터

블리터는 Agnus의 서브 컴포넌트입니다."Blit"은 "block image transfer" 또는 "bit blit"의 약자입니다.블리터는 고도로 병렬화된 메모리 전송 및 논리 연산 장치입니다.메모리 블록 복사, 채우기 블록(예: 폴리곤 채우기) 및 선 그리기의 세 가지 작동 모드가 있습니다.

블리터를 사용하면 비디오메모리의 고속 복사가 가능하기 때문에 CPU를 해방하여 다른 작업을 할 수 있습니다.블리터는 주로 화면에 그래픽 이미지를 그리거나 다시 그리는 데 사용되었습니다. "blitter object"는 "blitter object"의 줄임말입니다.

블리터의 블록 복사 모드는 메모리 내의 데이터 소스 A, B 및 C를 0 ~3 개 사용하고, 데이터 소스에서 프로그래밍 가능한 부울 함수를 실행해, 결과를 행선지 영역 D 에 씁니다.이 4가지 영역 중 어느 것이든 중복될 수 있습니다.블리터는 블록의 시작부터 끝까지('상승' 모드 또는 '내림' 모드) 또는 역방향으로 실행됩니다.

블록은 "직사각형"이며, 16비트의 배수로 "폭", "선"으로 측정된 높이 및 한 줄 끝에서 다음 줄로 이동하는 "스트라이드" 거리를 가집니다.이것에 의해, 최대 1,024 x 1,024 [1]픽셀의 비디오 해상도로 블리터를 동작시킬 수 있습니다.카피는, 자동적으로 픽셀 단위의 논리 연산을 실행합니다.이러한 조작은, Minterms 를 사용해 개괄적으로 설명합니다.이는 직접 복사(D = A)하거나 블릿된 물체 주위에 픽셀 마스크를 적용하는 데 가장 일반적으로 사용됩니다(D = (C AND B) 또는 A).또, 카피는, 각 라인을 0 ~15 픽셀 이동시킬 수도 있습니다.이를 통해 블리터는 정확히 16의 배수가 아닌 픽셀 오프셋으로 그릴 수 있습니다.

이러한 기능을 통해 Amiga는 그래픽 메모리 공간에 각각 직사각형 메모리 블록으로 표시되므로 GUI 창을 화면 내에서 빠르게 이동할 수 있습니다. 이 블록은 원하는 화면 메모리 위치로 자유롭게 이동할 수 있습니다.

블리터의 라인 모드는 브레센햄의 라인 알고리즘을 사용하여 단일 픽셀의 두꺼운 라인을 그립니다.회선에 16비트 반복 패턴을 적용할 수도 있습니다.라인 모드는 회전 밥 그리기에도 사용할 수 있습니다. 각 밥 데이터 라인은 라인 패턴으로 사용되는 반면 라인 모드는 기울어진 보브를 라인별로 그립니다.

블리터의 채우기 모드는 라인당 수평 스팬을 채우기 위해 사용됩니다.각 스팬에서 각 픽셀을 오른쪽에서 왼쪽으로 차례로 읽습니다.설정된 픽셀을 읽을 때마다 채우기 모드를 켜거나 끕니다.채우기 모드를 켜면 채우기 모드가 꺼지거나 라인이 끝날 때까지 모든 픽셀이 설정됩니다.이러한 모드를 조합하면 블리터는 개별 플랫 셰이딩 폴리곤을 그릴 수 있습니다.이후 Amigas는 많은 작업에 고속 CPU와 블리터를 조합하여 사용하는 경향이 있었습니다.

구리

구리는 Agnus의 또 다른 서브 컴포넌트입니다.이름은 "co-processor"의 줄임말입니다.Copper는 비디오 하드웨어와 동기화된 프로그래밍된 명령 스트림을 실행하는 프로그래밍 가능한 유한 상태 기계입니다.

전원이 켜지면 구리선에는 명령 읽기, 실행 또는 특정 비디오 빔 위치 대기라는 세 가지 상태가 있습니다.Copper는 Copper 목록이라는 프로그램메인 CPU와 병렬로 실행합니다.동선은 비디오 빔과 동기하여 동작하며 비디오 동기화가 필요한 다양한 작업을 수행하는 데 사용할 수 있습니다.대부분의 경우 비디오 출력을 제어하기 위해 사용되지만 대부분의 칩셋 레지스터에 쓸 수 있으므로 블릿을 시작하거나 오디오 레지스터를 설정하거나 CPU를 중단하는 데 사용할 수 있습니다.

Copper 목록에는 3가지 명령어가 있습니다.각 명령어는 2바이트의 쌍으로 총 4바이트입니다.

  • MOVE 명령은 칩셋의 하드웨어 레지스터 중 하나에 16비트 값을 쓰고 새 주소를 Copper 명령 포인터에 입력하기 위해 사용됩니다.
  • WAIT 명령은 지정된 빔 위치에 도달할 때까지 구리 실행을 중지하여 화면 도면에 대한 다른 명령을 동기화할 수 있습니다.또, 블리터 조작이 종료할 때까지 대기할 수도 있습니다.
  • 지정된 빔 위치에 이미 도달한 경우 SKIP 명령은 다음 구리 명령을 건너뜁니다.이를 사용하여 동선 목록 루프를 작성할 수 있습니다.

동선 목록 프로그램의 길이는 실행 시간에 따라 제한됩니다.새로운 비디오 프레임이 시작될 때마다 Copper 목록이 다시 실행됩니다.명시적인 "종료" 명령은 없습니다.대신 WAIT 명령은 도달하지 않은 위치를 대기하기 위해 사용됩니다.

구리 사용법

  • Copper 는, 각 프레임의 선두에 있는 비디오 하드웨어 레지스터의 설정 및 리셋에 가장 많이 사용됩니다.
  • 이것은, 미드 프레임의 비디오 설정을 변경하는 경우에 사용할 수 있습니다.이것에 의해, Amiga 는 스캔 라인간에 해상도를 포함한 비디오 구성을 변경할 수 있습니다.이것에 의해, Amiga 는 같은 화면에 다른 수평 해상도, 다른 색심도, 전혀 다른 프레임 버퍼를 표시할 수 있습니다.아미가OS 의 그래피컬 유저 인터페이스에서는, 2 개 이상의 프로그램이 다른 버퍼로 다른 해상도로 동작해, 화면에 동시에 표시됩니다.페인트 프로그램은 이 기능을 사용하여 사용자가 저해상도 HAM(Hold-And-Modify) 화면에서 직접 그리면서 화면 상단 또는 하단에 고해상도 도구 모음을 제공할 수 있습니다.
  • 또한 Copper는 중간 프레임의 컬러 레지스터를 변경하여 Amiga 게임에서 흔히 볼 수 있는 "래스터 바" 효과를 만들 수 있습니다.Copper는 비트맵 그래픽스를 전혀 사용하지 않고 블록 그래픽을 표시할 수 있을 정도로 배경색을 자주 변경할 수 있습니다.
  • 구리선을 사용하면 스프라이트를 "재사용"할 수 있습니다. 프로그램된 위치에 스프라이트를 그린 후 구리선은 즉시 새 위치로 이동할 수 있으며, 동일한 스캔 라인 상에 있더라도 다시 그릴 수 있습니다.
  • 비디오 빔이 디스플레이의 정확한 위치에 도달하면 동선이 인터럽트를 트리거할 수 있습니다.이는 CPU를 비디오 빔에 동기화할 때 유용합니다.
  • 구리선을 사용하여 블리터를 프로그래밍 및 조작할 수도 있습니다.이것에 의해, 블리터의 동작과 제어는 CPU로부터 독립해 동시에 진행할 수 있습니다.
  • Copper를 사용하여 "슬라이스된 HAM" 또는 [2]S-HAM을 생성할 수 있습니다.이것은 모든 스캔 라인에서 팔레트를 전환하는 동선 목록을 작성하는 것으로, Hold-And-Modify 모드 그래픽에서 기본 색상을 선택할 수 있도록 합니다.

외부 비디오 타이밍

통상적인 상황에서는 Amiga는 독자적인 비디오 타이밍을 생성하지만 Agnus는 외부 비디오 하드웨어와의 genlocking을 실현하기 위해 외부 신호에 대한 시스템 동기화를 지원합니다.이 커넥터에는 Amiga가 배경색을 출력하고 있는지 여부를 나타내는1비트 출력도 있어 Amiga 비디오를 외부 비디오에 간단하게 오버레이 할 수 있습니다.이로 인해 Amiga는 genlock 지원 없이 AB 롤 및 크로마키 유닛의 사용과 비용을 피할 수 있었기 때문에 비디오 및 방송 작업에 대한 캐릭터 생성기로서 특히 매력적이었습니다.오버스캔, 인터레이스 및 젠록 기능을 지원하고 디스플레이 타이밍이 브로드캐스트 표준(NTSC 또는 PAL)에 매우 가깝다는 사실로 인해 Amiga는 비디오 목적으로 이상적인 최초의 컴퓨터가 되었으며, 실제로 비디오 데이터 디지털화(프레임 그래빙이라고도 함), 자막 처리 및 인터랙티브 비디오에 많은 스튜디오에서 사용되었습니다.뉴스.

데니스

MOS 8362R5 - 데니스

데니스는 1~5비트플레인에서 평면 비디오 데이터를 가져와 컬러 룩업으로 변환하도록 프로그램되어 있습니다.비트플레인 수는 임의이므로 32가지 색상이 필요하지 않은 경우 2, 4, 8 또는 16을 대신 사용할 수 있습니다.비트플레인(및 해상도)의 수는 즉시 변경할 수 있습니다(일반적으로 구리선).이를 통해 RAM을 매우 경제적으로 사용할 수 있으며 칩 RAM에서 실행할 때 CPU 처리 속도와 그래픽 처리의 정교함을 균형 있게 조정할 수 있습니다(lores의 경우 4bpp, 고용의 경우 2bpp를 초과하는 모드에서는 통상적인 충돌하지 않는 채널 외에 CPU의 속도를 늦추거나 일시적으로 정지시킬 수 있는 추가 DMA 채널을 사용합니다).6번째 비트플레인도 사용할 수 있습니다.이 비트플레인에는 다음 3가지 특수한 그래픽모드로 사용할 수 있습니다.

Extra-HalfBrite(EHB)에서는 6번째 비트플레인에 픽셀이 설정되어 있으면 일반 32색 픽셀의 밝기가 절반으로 감소합니다.미국에서 판매되고 있는 Amiga 1000의 초기 버전에는 Extra-HalfBrite [3]모드가 없습니다.

Hold-and-Modify(HAM) 모드에서는 각 6비트 픽셀은 2개의 제어 비트와 4개의 데이터 비트로 해석됩니다.제어 비트의 가능한 네 가지 순열은 "set", "modify red", "modify green" 및 "modify blue"입니다."set"을 사용하면 4개의 데이터 비트가 일반적인 16색 디스플레이 룩업과 같이 작동합니다."수정" 중 하나를 사용하면 이전 픽셀의 빨간색, 녹색 또는 파란색 성분이 데이터 값으로 수정되고 다른 두 가지 구성요소는 이전 픽셀에서 유지됩니다.이것에 의해, 4096 의 모든 색상을 동시에 화면에 표시할 수 있습니다.하드웨어에서의 이미지 압축 손실의 예입니다.

듀얼 플레이필드 모드에서는 단일 화면 역할을 하는 대신 8가지 색상의 2개의 "플레이필드"가 서로 위에 그려집니다(각각 3개의 비트플레인이 표시됩니다.이들은 독립적으로 스크롤이 가능하며 상단 플레이필드의 배경색이 기본 플레이필드로 "반사"됩니다.

수평 그래픽 해상도는 140ns 픽셀의 "저화소"와 70ns 픽셀의 "하이어" 두 가지가 있으며, 오버스캔을 사용하지 않는 기본 가로 폭은 320 또는 640입니다.픽셀 출력은 NTSC 컬러버스트 클럭을 직접 기반으로 하는 메인 시스템 클럭에 의해 제어되기 때문에 그래픽과 화면 테두리 사이에 얇은 "언더스캔" 테두리만 있는 표준 텔레비전의 폭을 거의 채우고 게임에 가까운 외관을 제공합니다.콘솔이지만 더 세세하게.게다가 Denise는 꽤 광범위한 오버스캔을 서포트하고 있습니다.기술적으로는 최대 400 또는 800픽셀(+25%)의 데이터를 가지는 모드를 지정할 수 있습니다.다만, 실제로는 큰 그래픽의 부분적인 표시를 수반하는 스크롤이나 특수 효과에만 도움이 됩니다.이는 368픽셀(또는 736픽셀)의 개별 하드웨어 제한이 충족되기 때문입니다.um 블랭크 기간의 종료와 다음 기간의 시작 사이에 맞도록 합니다.단, 수평 스캔 폭을 조정할 수 있는 전용 모니터 이외의 디스플레이에서는, 이 정도의 픽셀도 표시되지 않습니다.이미지의 대부분이, 설계상, 스크린 베젤(또는 LCD상) 뒤로 심리스하게 사라지기 때문입니다.패널 [4][5]가장자리에서 페이드오프).Amiga의 타이밍은 스캔 라인에 관한 매우 규칙적인 구조와 일반적인 "플레이필드" 그래픽 이외의 다양한 용도에 DMA 자원을 할당하기 때문에 수평 해상도를 높이는 것은 픽셀 수와 사용 가능한 하드웨어 스프라이트 수 사이의 트레이드오프이기도 합니다.플레이필드 비디오 전용 DMA 슬롯이 증가하기 때문입니다.결국 스프라이트 엔진(전체 8개 중 1개에서 7개)을 훔치게 됩니다.[1] 오버스캔 없는 수직 해상도는 60Hz NTSC Amiga의 경우 200픽셀, 50Hz PAL Amiga의 경우 256픽셀입니다.이것은 인터레이스 디스플레이를 사용하여 두 배로 할 수 있습니다.또한 오버스캔을 사용하여 최대 241(또는 483), PAL(블랭크 및 동기화에 의해 사용 가능한 총 라인 수 및 스캔 라인 수에 따라 최대 1개의 추가 라인을 획득하는 인터레이스 모드)의 경우 최대 283(또는 567)까지 증가합니다.n 인터레이스 모드는 원래 브로드캐스트스펙 홀수 번호 인터레이스 카운트의 절반이며 반올림됩니다).

데니스는 ECS부터 4가지 색상만 사용해도 640x400의 비인터레이스를 지원하는 Productivity 모드를 지원하도록 업그레이드되었습니다.

데니스는 스캔 라인당 최대 8개의 16픽셀 폭 스프라이트를 상단, 하단 또는 플레이필드 간에 합성할 수 있으며(자동 모드로), 스프라이트와 플레이필드 간 또는 스프라이트 간 충돌을 감지합니다.이 스프라이트는 3개의 눈에 보이는 색상과 1개의 투명한 색을 가지고 있습니다.또는 인접한 스프라이트 쌍을 "접속"하여 단일 15색 스프라이트를 만들 수 있습니다.구리선 또는 CPU 레지스터 조작을 사용하면 각 스프라이트 채널을 단일 프레임에서 여러 번 재사용하여 프레임당 총 스프라이트를 늘릴 수 있습니다.스캔 라인 중에 스프라이트 위치 레지스터를 변경하여 단일 스캔 라인에서 총 스프라이트 수를 늘릴 수도 있습니다.그러나 스프라이트 데이터 또는 모양은 스캔 라인당 한 번만 가져오므로 변경할 수 없습니다.스캔 라인에서 스프라이트 위치 변경 레지스터를 사용한 최초의 아미가 게임은 1988년에 출시된 Hybris입니다.

데니스 칩은 전용 텍스트 [6]모드를 지원하지 않습니다.

마지막으로 Denise는 마우스/조이스틱 X/Y 입력을 처리합니다.

Denise가 비트 평면 및 스프라이트 데이터를 가져온다는 개념은 단순합니다.수평 및 수직 화면 위치 카운터를 유지하고 DRAM 읽기 작업을 시작하는 것은 Agnus입니다.데니스는 각각 16비트의 데이터를 저장하는 다수의 비트 플레인 레지스터를 가지고 있으며, 이는 16픽셀을 그리기에 충분합니다.Agnus가 레지스터 1에 쓰기를 발행하면 모든 레지스터가 별도의 시프트 레지스터로 전송되어 픽셀이 생성됩니다(동시에 DRAM에서 새 값이 로드됩니다).Denise도 메모리 주소를 알지 못합니다.

폴라

Amiga 1000에서 사용되는 Paula 칩(MOS Technology 8364 R4)
Paula 칩(MOS Technology 8364 R4) 다이

MOS 테크놀로지의 Glenn Keller가 설계한 Paula 칩은 인터럽트 컨트롤러이지만 오디오 재생, 플로피 디스크 드라이브 제어, 시리얼 포트 입력/출력 및 마우스/조이스틱 버튼 2 및 3 신호를 위한 로직도 갖추고 있습니다.이 논리는 코모도어의 모든 아미가 모델에 걸쳐 기능적으로 동일했다.

오디오

Paula는 4개의 DMA 구동 8비트 PCM 샘플 사운드 채널을 보유하고 있습니다.두 개의 사운드 채널이 왼쪽 오디오 출력에 혼합되고 나머지 두 개의 사운드 채널이 오른쪽 출력에 혼합되어 스테레오 오디오 출력이 생성됩니다.지원되는 하드웨어 샘플 형식은 서명된 선형 8비트 2의 보완 형식뿐입니다.각 사운드 채널에는 독립된 주파수와 6비트 볼륨 컨트롤(64레벨)이 있습니다.내부적으로 오디오 하드웨어는 4개의 스테이트 머신에 의해 실장되며 각각은 8개의 다른 스테이트를 가집니다.

또한 하드웨어를 통해 채널 쌍의 한 채널이 다른 채널의 주기 또는 진폭을 변조할 수 있습니다.주파수와 음량 모두 더 나은 방식으로 제어할 수 있기 때문에 Amiga에서는 거의 사용되지 않지만, 다양한 종류의 트레몰로와 진동, 심지어 기본적인 FM 합성 효과를 얻기 위해 사용될 수 있습니다.

오디오는 두 가지 방법으로 출력할 수 있습니다.대부분의 경우 DMA 구동 오디오가 사용됩니다.Agnus 설명에서 설명한 바와 같이 메모리 액세스는 우선시되며 4개의 사운드 채널 각각에 대해 스캔 라인당 1개의 DMA 슬롯을 사용할 수 있습니다.통상의 NTSC 또는 PAL 디스플레이에서는, DMA 오디오 재생은, 각 스테레오 출력의 초당 합계 57674(PAL: 57734)의 최대 출력 레이트로 제한됩니다. 속도는 수평 스캔 속도가 높은 비디오 모드를 사용하여 ECS 및 AGA 칩셋을 통해 증가할 수 있습니다.

또는 Paula는 새로운 샘플이 필요할 때 인터럽트를 생성하여 4개의 오디오 출력 버퍼 중 하나에 새로운 샘플을 로드하도록 CPU에 신호를 보낼 수 있습니다.이것에 의해, 채널 마다 57 kHz 를 넘는 출력 레이트가 가능하게 되어, 소프트웨어 믹싱을 통해서 가능한 음성(동시 사운드)의 수가 증가합니다.

Amiga에는 Paula 외부에 있는 아날로그 저역 통과 필터(재구성 필터)가 포함되어 있습니다.필터는 약 3.3kHz의 12dB/oct Butterworth 저역 통과 필터입니다.필터는 4개의 채널 모두에 글로벌하게만 적용할 수 있습니다.Amiga 1000 이후의 모델(Amiga 500의 첫 번째 리비전 제외)에서는 전원 LED의 휘도를 사용하여 필터의 상태를 나타냅니다.필터는 LED가 정상 밝기일 때 활성화되고 흐리게 되면 비활성화됩니다(초기 Amiga 500 모델에서는 LED가 완전히 꺼짐).Amiga 1200 이전에 출시된 모델에는 옵션인 "LED 필터"에 관계없이 활성화된 정적 "톤 노브" 유형의 로우패스 필터도 있습니다.이 필터는 4.5 또는 5kHz의 컷오프 주파수를 가진 6dB/oct 저역 통과 필터입니다.

이후 서로 다른 볼륨으로 설정된 두 채널을 결합하여 14비트 오디오를 재생할 수 있는 소프트웨어 기술이 개발되었습니다.그 결과 4개의 8비트채널이 아닌2개의 14비트채널이 생성됩니다.이는 최대 볼륨에서 16비트 샘플의 높은 바이트를 재생하고 최소 볼륨에서 낮은 바이트를 재생함으로써 실현됩니다(두 범위가 겹치므로 낮은 바이트는 오른쪽으로 2비트를 이동해야 합니다).비트 시프트 동작에는 소량의 CPU 또는 블리터 오버헤드가 필요한 반면, 종래의 8비트 재생은 거의 전적으로 DMA에 의존합니다.이 기술은 대상 변경 가능한 오디오 서브시스템 AHI에 통합되어 호환성이 있는 애플리케이션이 이 모드를 투과적으로 사용할 수 있게 되었습니다.

플로피 디스크 컨트롤러

FDD 컨트롤러는 매우 유연하다.500(이중 밀도) 또는 250kbit/s(싱글 밀도 또는 GCR)로 DMA 또는 프로그래밍된 I/O를 통해 디스크에서 직접 읽고 쓸 수 있습니다.이론적으로 어떤 런렝스 제한 코드도 사용할 수 있지만 MFM 또는 GCR은 가장 일반적으로 사용되는 두 가지 형식입니다.또한 sync-on-word와 같은 편리한 기능도 제공합니다(MFM 코딩에서는 보통 $4489가 동기 단어로 사용됩니다).MFM 부호화/복호화는 보통 블리터로 이루어집니다.디코드에는 1패스, 부호화에는 3패스입니다.통상, 섹터 마다가 아니고, 트랙 전체를 한 번에 읽거나 쓸 수 있습니다.이것에 의해, 대부분의 플로피 디스크 포맷이 드라이브의 속도 변동에 의해서 기입 섹터가 다음의 섹터의 기존의 헤더에 「블리딩」되는 것을 안전하게 막기 위해서 필요한 섹터간의 갭을 대부분 해소할 수 있었습니다.모든 섹터와 그 헤더가 항상 한 번에 기록되는 경우, 이러한 블리딩은 트랙의 끝에 있는 문제일 뿐이므로 트랙당 하나의 틈만 있으면 됩니다.이와 같이 기본 Amiga 디스크 포맷의 경우 3.5인치 DD 디스크의 물리적 스토리지 용량이 일반적인 720KB에서 880KB로 증가했지만, 이전 Amiga 모델의 파일 시스템은 이를 다시 실제 페이로드 데이터의 약 830KB로 줄였습니다.

컨트롤러는 네이티브 880KB 3.5인치 디스크 포맷 외에 다음과 같은 많은 외부 포맷을 처리할 수 있습니다.

  • IBM PC
  • 애플 II
  • Mac 800KB(Mac 드라이브 필요)
  • AMAX Mac 에뮬레이터(Amiga와 Macintosh 간에 데이터를 교환하기 위한 200KB의 특수 플로피 디스크는 Amiga로 포맷할 수 있으며, 두 시스템의 플로피 드라이브로 읽고 쓸 수 있습니다.)
  • Commodore 1541 (5인치 드라이브의 속도가 280rpm까지 느려져야 함)
  • C64 및 C128용으로 3µ-floppy 포맷된 Commodore 1581

Amiga 3000은 Paula의 플로피 컨트롤러를 변경하지 않고도 두 배의 용량을 가진 고밀도 디스크를 사용할 수 있는 특별한 듀얼 스피드 플로피 드라이브를 출시했습니다.

시리얼 포트

시리얼 포트는 기본이며 프로그래밍된 입출력만 사용하며 FIFO 버퍼가 없습니다.단, 모든 표준 레이트, MIDI 레이트 및 매우 높은 커스텀 레이트를 포함하여 거의 모든 비트레이트를 선택할 수 있습니다.

칩 이름의 출처

  • Agnus라는 이름은 Address GeNerator UnitS에서 유래한 것으로, 모든 주소 레지스터를 내장하고 커스텀 칩의 메모리 액세스를 제어하기 때문입니다.
  • Denise는 Display ENABler를 의도적으로 축소한 것으로 명명 규칙을 계속하기 위한 것입니다.
  • Paula는 Ports, Audio, UART 및 Logic을 비슷하게 축소한 것으로, 공교롭게도 칩 디자이너의 여자친구입니다.

Amiga 그래픽스 칩셋 로드맵

방출된 약자 그것을 사용한 모델
1985 OCS A1000, A2000, A500
1989 레인저 코모도어 취소, 고비용 ECS로 대체
1990 ECS A3000, A500+, A600, A2000
1992 AGA A1200, A4000, CD32
- 1993년 코모도르에 의해 높은 비용 때문에 취소되고 Hombre로 대체됨
- 코모도어 AA+ 칩셋 로우엔드 Amigas용으로 서류상으로 계획되어 있지만, 설계한 적은 없습니다.
- 홈브레 1994년 코모도어 파산으로 출시되지 않음

「 」를 참조해 주세요.

레퍼런스

  • 광부, 제이 외 연구진(1991)Amiga 하드웨어 레퍼런스 매뉴얼: 제3판애디슨 웨슬리 출판사 ISBN0-201-56776-8.인터뷰 글렌 켈러 - Amiga Paula 칩 설계자
  1. ^ BLTSIZE 레지스터는 수평 워드의 경우 6비트, 수직 라인의 경우 10비트를 보유하고 있습니다.
  2. ^ 1989년 Reth Anderson에 의해 발명: CS1 maint: 제목으로 아카이브된 복사(링크)
  3. ^ "OLD-COMPUTERS.COM : The Museum". Archived from the original on 2010-05-28. Retrieved 2005-05-27.
  4. ^ "Display Sizes, Offsets and Clipping".
  5. ^ "3 / Bitplanes and Windows of All Sizes / Maximum Display Window Size".
  6. ^ "The Amiga Museum » Denise". Retrieved 2021-02-28.

외부 링크