Oryginalny zestaw chipów

Zestaw chipów Amigi

The Original Chip Set ( OCS ) to chipset używany w najwcześniejszych komputerach Commodore Amiga i określał możliwości graficzne i dźwiękowe Amigi. Został zastąpiony przez nieco ulepszony Enhanced Chip Set (ECS) i znacznie ulepszoną zaawansowaną architekturę graficzną (AGA).

Oryginalny chipset pojawił się w modelach Amigi zbudowanych w latach 1985-1990: Amiga 1000 , Amiga 2000 , Amiga CDTV i Amiga 500 .

Przegląd żetonów

Chipset, który nadał Amidze jej unikalne cechy graficzne, składa się z trzech głównych „niestandardowych” układów; Agnus , Denise i Paula . Zarówno oryginalny chipset , jak i ulepszony chipset zostały wyprodukowane przy użyciu technologii logicznej NMOS przez spółkę zależną Commodore zajmującą się produkcją chipów , MOS Technology . Według Jaya Minera , chipset OCS został wyprodukowany w procesie produkcyjnym 5 µm podczas AGA Lisa została wdrożona w procesie 1,5 µm. Wszystkie trzy niestandardowe chipy były oryginalnie zapakowane w 48-pinowe DIP-y ; późniejsze wersje Agnus, znane jako Fat Agnus, były umieszczane w 84-pinowym sterowniku PLCC .

Agnus jest centralnym układem w projekcie. Kontroluje cały dostęp do pamięci RAM chipa zarówno z centralnego procesora 68000 , jak i innych niestandardowych chipów, używając skomplikowanego systemu priorytetów. Agnus zawiera podkomponenty znane jako blitter (szybki transfer danych w pamięci bez ingerencji procesora) oraz Copper (koprocesor zsynchronizowany z wideo). Oryginalny Agnus może zaadresować 512 KB chipowej pamięci RAM . Późniejsze wersje, nazwane „Fat Agnus”, dodały 512 KB pseudo-szybka pamięć RAM, którą dla ECS zmieniono na 1 MB (czasami nazywaną „Fatter Agnus”), a następnie na 2 MB chipowej pamięci RAM.

Denise jest głównym procesorem wideo. Bez użycia funkcji overscan wyświetlacz Amigi ma szerokość 320 lub 640 pikseli i wysokość 200 ( NTSC ) lub 256 ( PAL ). Denise obsługuje również przeplot , który podwaja rozdzielczość pionową, kosztem uciążliwego migotania na typowych monitorach tamtej epoki. Stosowana jest planarna grafika bitmapowa , która dzieli poszczególne bity na piksel na oddzielne obszary pamięci, zwane bitplanami . Podczas normalnej pracy Denise pozwala na użycie od jednego do pięciu bitplanów, co daje od dwóch do 32 unikalnych kolorów. Kolory te są wybierane z palety 4096 kolorów (cztery bity na składnik RGB ). Szósty bitplan jest dostępny dla dwóch specjalnych trybów wideo: trybu Halfbrite i trybu Hold-And-Modify (HAM). Denise obsługuje również osiem sprite'ów , przewijanie pojedynczego piksela i tryb „dual-playfield”. Denise obsługuje również mysz i cyfrowe sterowanie joystickiem.

Paula to przede wszystkim układ audio, z czterema niezależnymi, miksowanymi sprzętowo 8-bitowymi kanałami dźwiękowymi PCM , z których każdy obsługuje 65 poziomów głośności (bez dźwięku do maksymalnej głośności) i częstotliwości wyjściowych przebiegów od około 20 próbek na sekundę do prawie 29 000 próbek na sekundę . Paula obsługuje również przerwania i różne funkcje wejścia-wyjścia , w tym stację dyskietek , port szeregowy i analogowe joysticki .

Istnieje wiele podobieństw – zarówno w ogólnej funkcjonalności, jak i w podziale funkcjonalności na trzy składowe układy scalone – między chipsetem OCS a dużo wcześniejszym i prostszym chipsetem 8-bitowej rodziny komputerów domowych Atari, składającej się z ANTIC , GTIA i Chipsy POKEY ; oba chipsety zostały koncepcyjnie zaprojektowane przez Jaya Minera , co wyjaśnia podobieństwo.

Agnus

MOS 8367R0 - Agnus

Chip Agnus ma całkowitą kontrolę nad działaniem całego chipsetu. Wszystkie operacje są synchronizowane z położeniem wiązki wideo. Obejmuje to dostęp do wbudowanej pamięci RAM , znanej jako chip RAM, ponieważ chipset ma do niej dostęp. Zarówno centralny 68000, jak i inne elementy chipsetu muszą rozstrzygać o dostępie do pamięci RAM układu poprzez Agnus . Pod względem architektury obliczeniowej jest to bezpośredni dostęp do pamięci (DMA), gdzie Agnus jest kontrolerem DMA (DMAC).

Agnus ma złożoną i opartą na priorytetach politykę dostępu do pamięci, która stara się jak najlepiej koordynować żądania dostępu do pamięci między konkurującymi zasobami. Na przykład pobieranie danych z płaszczyzny bitowej ma wyższy priorytet niż przesyłanie blittera, ponieważ natychmiastowe wyświetlanie danych bufora ramki jest uważane za ważniejsze niż przetwarzanie pamięci przez blitter. Agnus stara się też tak porządkować dostępy, aby cykle magistrali procesora pokrywały się z cyklami DMA. Ponieważ oryginalny procesor 68000 w Amigach miał tendencję do uzyskiwania dostępu do pamięci tylko w co drugim dostępnym cyklu pamięci, Agnus obsługuje system, w którym „nieparzyste” cykle dostępu do pamięci są przydzielane jako pierwsze iw razie potrzeby do krytycznego czasowo niestandardowego układu DMA, podczas gdy wszelkie pozostałe cykle są dostępne dla procesora, dzięki czemu procesor generalnie nie zostaje zablokowany w dostępie do pamięci i nie wydaje się zwalniać. Jednak niestandardowy dostęp do chipów, który nie ma krytycznego znaczenia czasowego, taki jak blittera , mogą wykorzystać dowolne wolne cykle nieparzyste lub parzyste, a jeśli ustawiona jest flaga „BLITHOG” (blitter hog), Agnus może zablokować cykle parzyste z CPU w szacunku dla blittera .

Czasy Agnusa są mierzone w „kolorowych zegarach” 280 ns . Odpowiada to dwóm pikselom o niskiej rozdzielczości (140 ns) lub czterem pikselom o wysokiej rozdzielczości (70 ns). Podobnie jak Denise, te czasy zostały zaprojektowane do wyświetlania na domowych telewizorach i mogą być synchronizowane z zewnętrznym źródłem zegara.

Blichtr

Blitter to podzespół Agnusa. „Blit” to skrót oznaczający „transfer obrazu blokowego” lub bitowy . Blitter to wysoce równoległa jednostka transferu pamięci i operacji logicznych. Posiada trzy tryby pracy: kopiowanie bloków pamięci, wypełnianie bloków (np. wypełnianie wielokątów) oraz rysowanie linii.

Blitter umożliwia szybkie kopiowanie pamięci wideo, co oznacza, że ​​procesor można zwolnić do innych zadań. Blitter był używany głównie do rysowania i przerysowywania obrazów graficznych na ekranie, zwanych „bobami”, skrótem od „obiektów blittera”.

Tryb kopiowania bloków blittera zajmuje od zera do trzech źródeł danych w pamięci, nazwanych A, B i C, wykonuje programowalną funkcję logiczną na źródłach danych i zapisuje wynik w docelowym obszarze D. Każdy z tych czterech obszarów może się nakładać. Blitter działa albo od początku bloku do końca, znanego jako tryb „rosnący”, albo w odwrotnym trybie „malejącym”.

Bloki są „prostokątne”; mają „szerokość” jako wielokrotność 16 bitów, wysokość mierzoną w „liniach” i odległość „kroku”, aby przejść od końca jednej linii do drugiej. Dzięki temu blitter może pracować w dowolnej rozdzielczości wideo do 1024×1024 pikseli. Kopia automatycznie wykonuje operację logiczną dla każdego piksela. Operacje te są opisane ogólnie przy użyciu mintermów . Jest to najczęściej używane do wykonywania bezpośrednich kopii (D = A) lub nakładania maski pikseli wokół rozmazanych obiektów (D = (C AND B) LUB A). Kopia może również przesunąć każdą linię o 0 do 15 pikseli. Pozwala to blitterowi rysować z przesunięciami pikseli, które nie są dokładnie wielokrotnościami 16.

Te funkcje pozwalają Amidze na szybkie przesuwanie okien GUI po ekranie, ponieważ każde z nich jest reprezentowane w graficznej przestrzeni pamięci jako prostokątny blok pamięci, który można dowolnie przesuwać w dowolne wymagane miejsce w pamięci ekranu.

Tryb linii blittera rysuje linie o grubości jednego piksela przy użyciu algorytmu linii Bresenhama . Może również zastosować 16-bitowy powtarzalny wzór do linii. Tryb liniowy może być również używany do rysowania obróconych bobów: każda linia danych bobka jest używana jako wzór linii, podczas gdy tryb liniowy rysuje przechylony bob linia po linii.

Tryb wypełniania blittera służy do wypełniania poziomych przęseł w linii. Na każdym rozpiętości odczytuje kolejno każdy piksel od prawej do lewej. Ilekroć odczytuje ustawiony piksel, włącza lub wyłącza tryb wypełniania. Gdy tryb wypełniania jest włączony, ustawia każdy piksel do momentu wyłączenia trybu wypełniania lub zakończenia linii. Razem te tryby pozwalają blitterowi na rysowanie pojedynczych płaskich wielokątów. Później Amigi miały tendencję do używania kombinacji szybszego procesora i blittera do wielu operacji.

Miedź

Miedź to kolejny podkomponent Agnus; Nazwa jest skrótem od „współprocesor”. Copper to programowalna maszyna skończona , która wykonuje zaprogramowany strumień instrukcji, zsynchronizowany ze sprzętem wideo.

Gdy jest włączony, Miedź ma trzy stany; albo czytając instrukcję, wykonując ją, albo czekając na określoną pozycję wiązki wideo. Miedź uruchamia program zwany listą Miedzi równolegle z głównym procesorem . Copper działa w synchronizacji z wiązką wideo i może być używany do wykonywania różnych operacji wymagających synchronizacji wideo. Najczęściej jest używany do sterowania wyjściem wideo, ale może zapisywać do większości rejestrów chipsetu, a zatem może być używany do inicjowania blitów, ustawiania rejestrów audio lub przerywania procesora.

Lista Copper ma trzy rodzaje instrukcji, z których każda jest parą dwóch bajtów, w sumie cztery bajty:

  • Instrukcja MOVE zapisuje 16-bitową wartość do jednego z rejestrów sprzętowych chipsetu i jest również używana do strobowania nowego adresu do wskaźnika instrukcji Coppera.
  • Instrukcja WAIT wstrzymuje wykonywanie Coppera do momentu osiągnięcia określonej pozycji wiązki, umożliwiając w ten sposób synchronizację innych instrukcji w odniesieniu do rysowania ekranu. Może również czekać na zakończenie operacji blittera.
  • Instrukcja SKIP pominie następną instrukcję Copper, jeśli dana pozycja wiązki została już osiągnięta. Można to wykorzystać do tworzenia pętli listy miedzianej.

Długość programu Copper list jest ograniczona czasem wykonania. Copper ponownie uruchamia listę Copper na początku każdej nowej klatki wideo. Nie ma wyraźnej instrukcji „końca”; zamiast tego instrukcja WAIT służy do oczekiwania na miejsce, które nigdy nie zostało osiągnięte.

Zastosowania miedzi

  • Miedź jest najczęściej używana do ustawiania i resetowania rejestrów sprzętu wideo na początku każdej klatki.
  • Może być używany do zmiany ustawień wideo w połowie klatki. Pozwala to Amidze zmieniać konfigurację wideo, w tym rozdzielczość, między liniami skanowania . Dzięki temu Amiga może wyświetlać różne rozdzielczości poziome, różne głębie kolorów i zupełnie różne bufory klatek na tym samym ekranie. Graficzny AmigaOS pozwala dwóm lub więcej programom działać w różnych rozdzielczościach w różnych buforach, podczas gdy wszystkie są jednocześnie widoczne na ekranie. Program do rysowania może wykorzystywać tę funkcję, aby umożliwić użytkownikom rysowanie bezpośrednio w trybie Hold-and-Modify o niskiej rozdzielczości (HAM), oferując jednocześnie pasek narzędzi o wysokiej rozdzielczości u góry lub u dołu ekranu.
  • Copper może również zmieniać rejestry kolorów w połowie klatki, tworząc efekt „ pasków rastrowych ”, często spotykany w grach na Amigę. Miedź może pójść dalej i zmieniać kolor tła wystarczająco często, aby wyświetlać blokową grafikę bez użycia jakiejkolwiek grafiki bitmapowej.
  • Miedź pozwala na „ponowne wykorzystanie” duszków; po narysowaniu duszka w zaprogramowanej lokalizacji, Miedziany może natychmiast przenieść go w nowe miejsce i zostanie narysowany ponownie, nawet na tej samej linii skanowania.
  • Miedź może wywołać przerwanie, gdy wiązka wideo dotrze do dokładnego miejsca na wyświetlaczu. Jest to przydatne do synchronizacji procesora z wiązką wideo.
  • Miedź może być również używana do programowania i obsługi blittera. Pozwala to na działanie i kontrolę blittera niezależnie od procesora i jednocześnie z nim.
  • Miedź może być wykorzystana do wytworzenia „ szynki w plasterkach ” lub S-HAM, polega to na zbudowaniu listy miedzi, która przełącza paletę na każdej linii skanowania, poprawiając wybór kolorów podstawowych w grafice trybu Hold -and-Modify .

Zewnętrzny czas wideo

W normalnych warunkach Amiga generuje własne taktowanie wideo, ale Agnus obsługuje również synchronizację systemu z zewnętrznym sygnałem, aby uzyskać genlocking z zewnętrznym sprzętem wideo. Na tym złączu znajduje się również 1-bitowe wyjście, które wskazuje, czy Amiga wysyła kolor tła, czy nie, umożliwiając łatwe nakładanie wideo Amigi na zewnętrzne wideo. To sprawiło, że Amiga była szczególnie atrakcyjna jako generator znaków do tworzenia tytułów wideo i prac nadawców, ponieważ pozwalała uniknąć użycia i wydatków na AB roll i chromakey jednostek, które byłyby wymagane bez obsługi genlocka. Obsługa funkcji overscan, interlacing i genlocking oraz fakt, że taktowanie wyświetlania było bardzo zbliżone do standardów transmisji (NTSC lub PAL) sprawiły, że Amiga stała się pierwszym komputerem idealnym do zastosowań wideo i rzeczywiście była używana w wielu studiach do digitalizacja danych wideo (czasami nazywana przechwytywaniem klatek), tworzenie napisów i interaktywne wiadomości wideo.

Denise

MOS 8362R5 — Denise

Denise jest zaprogramowana do pobierania planarnych danych wideo z jednego do pięciu bitplanów i przekładania ich na wyszukiwanie kolorów . Liczba bitplanów jest dowolna, więc jeśli 32 kolory nie są potrzebne, można zamiast nich użyć 2, 4, 8 lub 16. Liczba bitplanów (i rozdzielczość) może być zmieniana w locie, zwykle przez Coppera. Pozwala to na bardzo ekonomiczne wykorzystanie pamięci RAM i zrównoważenie szybkości przetwarzania procesora z zaawansowaniem graficznym podczas wykonywania z pamięci RAM chipa (ponieważ tryby powyżej 4bpp w lores lub 2bpp w wynajmowanych, używają dodatkowych kanałów DMA, które mogą dodatkowo spowolnić lub tymczasowo zatrzymać procesor do zwykłych niekonfliktowych kanałów). Może być także szósty bitplan, którego można używać w trzech specjalnych trybach graficznych:

W Extra-HalfBrite (EHB), jeśli piksel jest ustawiony na szóstej płaszczyźnie bitowej, jasność zwykłego piksela 32-kolorowego zmniejsza się o połowę. Wczesne wersje Amigi 1000 sprzedawane w Stanach Zjednoczonych nie miały trybu Extra-HalfBrite.

W trybie Hold-and-Modify (HAM) każdy 6-bitowy piksel jest interpretowany jako dwa bity kontrolne i cztery bity danych. Cztery możliwe permutacje bitów kontrolnych to „ustaw”, „zmodyfikuj czerwony”, „zmodyfikuj zielony” i „zmodyfikuj niebieski”. W przypadku „ustawienia” cztery bity danych działają jak zwykły 16-kolorowy wyświetlacz. Za pomocą jednej z opcji „modyfikuj” składowa czerwona, zielona lub niebieska poprzedniego piksela jest modyfikowana do wartości danych, a pozostałe dwie składowe są zatrzymywane z poprzedniego piksela. Pozwala to na wyświetlanie wszystkich 4096 kolorów jednocześnie i jest przykładem stratnej kompresji obrazu w sprzęcie.

W trybie podwójnego pola gry, zamiast działać jako pojedynczy ekran, dwa „pola gry” po osiem kolorów każde (po trzy bitplany) są rysowane jeden na drugim. Można je niezależnie przewijać, a kolor tła górnego pola gry „prześwituje” na leżące poniżej pole gry.

Istnieją dwie poziome rozdzielczości graficzne, „lowres” z pikselami 140 ns i „hires” z pikselami 70 ns, z domyślną szerokością 320 lub 640 pikseli w poziomie bez użycia overscan. Ponieważ liczba pikseli jest regulowana przez główny zegar systemowy, który jest oparty bezpośrednio na zegarze NTSC colorburst, rozmiary te prawie wypełniają szerokość standardowego telewizora z jedynie cienką „podskanowaną” ramką między grafiką a ramką ekranu w porównaniu do wielu innych współczesnych komputerów domowych, aby uzyskać wygląd bliższy konsoli do gier, ale z drobniejszymi szczegółami. Ponadto Denise obsługuje dość rozległe overscan; technicznie można określić tryby z wystarczającą ilością danych do 400 lub 800 pikseli (+25%), chociaż w rzeczywistości jest to przydatne tylko w przypadku przewijania i efektów specjalnych, które obejmują częściowe wyświetlanie dużej grafiki, ponieważ osobny limit sprzętowy jest spełniony przy 368 ( lub 736) pikseli, czyli maksimum, które zmieści się między końcem jednego okresu wygaszania a początkiem następnego — chociaż jest mało prawdopodobne, aby nawet tyle pikseli było widocznych na jakimkolwiek wyświetlaczu innym niż dedykowany monitor umożliwiający regulację poziomej szerokości skanowania, ponieważ duża część obrazu zgodnie z projektem zniknie bezproblemowo za ramką ekranu (lub, w przypadku wyświetlaczy LCD, zostanie przycięta na krawędzi panelu). Ze względu na bardzo regularną strukturę taktowania Amigi w odniesieniu do linii skanowania i przydziału zasobów DMA do różnych zastosowań poza normalną grafiką „playfield”, zwiększona rozdzielczość pozioma jest również kompromisem między liczbą pikseli a liczbą dostępnych sprajtów sprzętowych, ponieważ rosnąca gniazda DMA przeznaczone na wideo z pola gry ostatecznie kradną część (od 1 do 7 z łącznej liczby 8) silnika sprite. [1] . Rozdzielczość pionowa, bez overscan, wynosi 200 pikseli dla Amigi NTSC 60 Hz lub 256 dla Amigi PAL 50 Hz. Można to podwoić za pomocą z przeplotem i, podobnie jak w przypadku rozdzielczości poziomej, zwiększyć za pomocą overscan do maksymalnie 241 (lub 483) dla NTSC i 283 (lub 567) dla PAL (tryby z przeplotem zyskują jedną dodatkową linię jako maksimum jest określana na podstawie liczby linii pobranych z dostępnej sumy przez wygaszanie i synchronizację, a łączna liczba linii skanowania w trybach bez przeplotu to połowa oryginalnej liczby z przeplotem o numerach nieparzystych specyfikacji emisji, zaokrąglona w dół).

Począwszy od ECS, Denise została zaktualizowana, aby obsługiwać tryb „Produktywność”, który pozwalał na 640x400 bez przeplotu, chociaż tylko z 4 kolorami.

duszków o szerokości 16 pikseli na linię skanowania (w trybie automatycznym) na górze, pod lub między polami gry i wykrywać kolizje między duszkami a polami gry lub między duszkami. Te duszki mają trzy widoczne kolory i jeden przezroczysty. Opcjonalnie sąsiednie pary ikonek można „dołączyć”, aby utworzyć pojedynczego 15-kolorowego duszka. Korzystając z manipulacji rejestrami miedzianymi lub procesora, każdy kanał sprite'ów może być wielokrotnie używany w jednej klatce, aby zwiększyć całkowitą liczbę sprite'ów na klatkę. Pozycja duszka rejestry mogą być również zmieniane podczas linii skanowania, zwiększając całkowitą liczbę sprite'ów na jednej linii skanowania. Jednak dane duszka lub kształt są pobierane tylko raz na linię skanowania i nie można ich zmienić. Pierwszą grą na Amigę, która wykorzystywała repozycjonowanie rejestrów duszków podczas linii skanowania, był Hybris wydany w 1988 roku.

Chip Denise nie obsługuje dedykowanego trybu tekstowego.

Wreszcie, Denise jest odpowiedzialna za obsługę wejść myszy/joysticka X/Y.

Pogląd, że Denise pobiera dane bitplanu i sprite'a, jest uproszczeniem. To Agnus utrzymuje poziome i pionowe liczniki pozycji ekranu oraz inicjuje operacje odczytu DRAM-u. Denise ma kilka rejestrów płaszczyzny bitowej, z których każdy zawiera 16 bitów danych, co wystarcza do narysowania 16 pikseli. Kiedy Agnus wysyła zapis do rejestru 1, wszystkie rejestry są następnie przenoszone do osobnych rejestrów przesuwnych, z których generowane są piksele (w tym samym czasie ładowane są nowe wartości z pamięci DRAM). Denise również nie zna żadnych adresów pamięci.

Paula

Chip Paula (MOS Technology 8364 R4) używany w Amidze 1000
Matryca Paula (technologia MOS 8364 R4).

Układ Paula, zaprojektowany przez Glenna Kellera z firmy MOS Technology , jest kontrolerem przerwań , ale zawiera również logikę do odtwarzania dźwięku, sterowanie napędem dyskietek, wejście/wyjście portu szeregowego oraz przyciski myszy/joysticka dwa i trzy sygnały. Logika pozostała funkcjonalnie identyczna we wszystkich modelach Amigi firmy Commodore.

Audio

Paula ma cztery 8-bitowe próbki dźwiękowe PCM sterowane DMA . Dwa kanały dźwiękowe są miksowane do lewego wyjścia audio, a pozostałe dwa są miksowane do prawego wyjścia, tworząc stereofoniczne wyjście audio. Jedynym obsługiwanym formatem próbek sprzętowych jest liniowe 8-bitowe dopełnienie do dwóch ze znakiem . Każdy kanał dźwiękowy posiada niezależną częstotliwość oraz 6-bitową regulację głośności (64 poziomy). Wewnętrznie sprzęt audio jest realizowany przez cztery maszyny stanów, z których każda ma osiem różnych stanów.

Dodatkowo sprzęt umożliwia jednemu kanałowi z pary kanałów modulację okresu lub amplitudy drugiego kanału. Jest rzadko używany na Amidze, ponieważ zarówno częstotliwość, jak i głośność można kontrolować w lepszy sposób, ale można go użyć do uzyskania różnych rodzajów tremolo i vibrato , a nawet podstawowych efektów syntezy FM .

Dźwięk może być wyprowadzany na dwa sposoby. Najczęściej używany jest dźwięk oparty na DMA. Jak wyjaśniono w omówieniu Agnus, dostęp do pamięci ma priorytet i jedno gniazdo DMA na linię skanowania jest dostępne dla każdego z czterech kanałów dźwiękowych. Na zwykłym wyświetlaczu NTSC lub PAL odtwarzanie dźwięku DMA jest ograniczone do maksymalnej szybkości wyjściowej wynoszącej 28 867 wartości na kanał (PAL: 28837) na sekundę, co daje łącznie 57674 (PAL: 57734) wartości na sekundę na każdym wyjściu stereo. Szybkość tę można zwiększyć w przypadku chipsetów ECS i AGA, używając trybu wideo z wyższą szybkością skanowania poziomego .

Alternatywnie, Paula może zasygnalizować procesorowi załadowanie nowej próbki do dowolnego z czterech wyjściowych buforów audio, generując przerwanie, gdy potrzebna jest nowa próbka. Pozwala to na uzyskanie częstotliwości wyjściowych przekraczających 57 kHz na kanał i zwiększa liczbę możliwych głosów (jednoczesnych dźwięków) poprzez miksowanie programowe.

Amiga zawiera analogowy filtr dolnoprzepustowy ( filtr rekonstrukcyjny ), który jest zewnętrzny w stosunku do Pauli. Filtr to Butterworth 12 dB/okt filtr dolnoprzepustowy przy około 3,3 kHz. Filtr można zastosować globalnie tylko do wszystkich czterech kanałów. W modelach po Amidze 1000 (z wyłączeniem pierwszej wersji Amigi 500) jasność diody zasilania wskazuje stan filtra. Filtr jest aktywny, gdy dioda LED ma normalną jasność, a dezaktywowany, gdy jest przyciemniona (we wczesnych modelach Amigi 500 dioda całkowicie zgasła). Modele wypuszczone przed Amigą 1200 mają również statyczny filtr dolnoprzepustowy typu „pokrętło tonu”, który jest włączony niezależnie od opcjonalnego „filtra LED”. Ten filtr jest filtrem dolnoprzepustowym 6 dB/okt z częstotliwością odcięcia przy 4,5 lub 5 kHz.

Później opracowano technikę programową, która umożliwia odtwarzanie 14-bitowego dźwięku poprzez połączenie dwóch kanałów ustawionych na różne poziomy głośności. Powoduje to powstanie dwóch kanałów 14-bitowych zamiast czterech kanałów 8-bitowych. Osiąga się to poprzez odtwarzanie wysokiego bajtu 16-bitowej próbki z maksymalną głośnością, a niskiego bajtu z minimalną głośnością (oba zakresy nakładają się, więc niski bajt należy przesunąć w prawo o dwa bity). Operacja przesunięcia bitowego wymaga niewielkiej ilości procesora lub blittera, podczas gdy konwencjonalne odtwarzanie 8-bitowe jest prawie całkowicie sterowane przez DMA. Ta technika została włączona do retargetowalnego podsystemu audio AHI , umożliwiając kompatybilnym aplikacjom korzystanie z tego trybu w sposób przezroczysty.

Kontroler dyskietek

Kontroler stacji dyskietek jest niezwykle elastyczny. Może odczytywać i zapisywać surowe sekwencje bitów bezpośrednio z i na dysk przez DMA lub zaprogramowane wejścia/wyjścia z szybkością 500 ( podwójna gęstość ) lub 250 kbit/s ( pojedyncza gęstość lub GCR). MFM lub GCR to dwa najczęściej używane formaty, chociaż teoretycznie można użyć dowolnego kodu o ograniczonej długości . Zapewnia również szereg wygodnych funkcji, takich jak synchronizacja na słowie (w kodowaniu MFM 4489 USD jest zwykle używane jako słowo synchronizacji ). Kodowanie/dekodowanie MFM jest zwykle wykonywane za pomocą blittera — jedno przejście do dekodowania, trzy przejścia do kodowania. Zwykle cała ścieżka jest odczytywana lub zapisywana w jednym ujęciu, a nie sektor po sektorze; umożliwiło to pozbycie się większości luk międzysektorowych, których potrzebuje większość formatów dyskietek, aby bezpiecznie zapobiegać „wyciekaniu” zapisanego sektora do wcześniej istniejącego nagłówka następnego sektora z powodu zmian prędkości napędu. Jeśli wszystkie sektory i ich nagłówki są zawsze zapisywane za jednym razem, takie krwawienie występuje tylko na końcu ścieżki (która nadal nie może schodzić z powrotem na początek), więc potrzebna jest tylko jedna przerwa na ścieżkę. W ten sposób, dla natywnego formatu dysków Amigi, zwiększono surową pojemność 3,5-calowych dysków DD z typowych 720 KB do 880 KB, chociaż daleki od ideału system plików wcześniejszych modeli Amigi ponownie zmniejszył to do około 830 KB rzeczywistych danych użytkowych.

Oprócz natywnego formatu dysku 3,5 cala o pojemności 880 KB, kontroler może obsługiwać wiele formatów obcych, takich jak:

  • Komputer IBM
  • Jabłko II
  • Mac 800 KB (wymaga dysku Mac)
  • Emulator AMAX Mac (specjalna dyskietka o pojemności zaledwie 200 KB do wymiany danych między Amigą a Macintoshem mogła być sformatowana przez Amigę i mogła być odczytywana i zapisywana przez stacje dyskietek obu systemów)
  • Commodore 1541 (wymaga 5¼-calowego dysku zwolnionego do 280 obr./min)
  • Commodore 1581 sformatowany na 3½ dyskietki dla C64 i C128

Amiga 3000 wprowadziła specjalny, dwubiegowy napęd dyskietek, który pozwalał również na używanie dysków o dużej gęstości i podwójnej pojemności bez żadnych zmian w kontrolerze dyskietek Pauli.

Port szeregowy

Port szeregowy jest prymitywny, wykorzystuje tylko zaprogramowane wejście / wyjście i nie ma bufora FIFO . Jednak można wybrać praktycznie dowolną szybkość transmisji, w tym wszystkie standardowe szybkości, MIDI , a także bardzo wysokie szybkości niestandardowe.

Pochodzenie nazw chipów

  • Nazwa Agnus pochodzi od „Address GeNerator UnitS”, ponieważ zawiera wszystkie rejestry adresów i kontroluje dostęp do pamięci niestandardowych chipów.
  • Denise jest wymyślonym skrótem Display ENabler, mającym na celu kontynuację konwencji nazewnictwa.
  • Paula jest podobnie wymyślonym skrótem Ports, Audio, UART i Logic, i przypadkowo jest dziewczyną projektanta chipów.

Plan chipsetów graficznych Amigi

Wydany Akronim Modele, które go używały
1985 OC A1000 , A2000 , A500
1989 Leśniczy Anulowany przez Commodore i zastąpiony przez ECS ze względu na wysoki koszt
1990 ECS A3000 , A500+ , A600 , A2000
1992 AGA A1200 , A4000 , CD32
- AAA Odwołany przez Commodore w 1993 roku ze względu na wysokie koszty i zastąpiony przez Hombre
- Chipset Commodore AA+ Planowany na papierze dla Amig z niższej półki, ale nigdy nie został zaprojektowany
- Człowiek Nigdy nie wydany z powodu bankructwa Commodore w 1994 roku

Zobacz też

  •   Miner, Jay et al. (1991). Podręcznik sprzętu Amigi: wydanie trzecie . Addison-Wesley Publishing Company, Inc. ISBN 0-201-56776-8 . WYWIAD | Glenn Keller - projektant chipów Commodore Amiga Paula
  1. ^ Rejestr BLTSIZE zawiera sześć bitów dla słów poziomych i dziesięć bitów dla linii pionowych.
  2. ^ Wynaleziony w 1989 roku przez Rhetta Andersona „Chronologia komputerów Amiga (1989)” . Zarchiwizowane od oryginału w dniu 2006-07-10 . Źródło 2006-07-10 .
  3. ^ „OLD-COMPUTERS.COM: Muzeum” . Zarchiwizowane od oryginału w dniu 2010-05-28 . Źródło 2005-05-27 .
  4. ^ „Rozmiary wyświetlania, przesunięcia i przycinanie” .
  5. ^ „3 / Samoloty bitowe i okna wszystkich rozmiarów / Maksymalny rozmiar okna wyświetlania” .
  6. ^ „Muzeum Amigi » Denise” . Źródło 2021-02-28 .

Linki zewnętrzne