wyższym priorytecie, dokończony zostaje transfer pojedynczego słowa i następuje zmiana działania kanałów.
Na dobra sprawę maja znaczenie tylko w przypadku konfliktu przerwań między DMA-DMA. albo DMA-Core w przypadku Dynamie Prioritizing Modę.
To czy dla konfliktu między DMA-DMA będzie round-robin, czy nie będzie przerwrany poprzedni proces zależy od bitu DCON(continuous modę) w DMACon troi Register
Dla statycznie priorytowanych konfliktów Core-DMA pierwszeństwo między Core a DMA zalezy od bitów CDP w OMR
1) Jeśli rdzeń nie wymaga dostępu w tym samym czasie do tego samego bloku pamięci.
2) Jeśli rdzeń nie wymaga dostępu do tych samych peryferiów
3) Jeśli potrzebujemy użyć bufora cyklicznego dłuższego niż 32K słów. Wykorzystując tryb 3-D DMA. możemy stworzyć bufor o maksymalnej długości 256K słów (Przydaje się np. przy tworzeniu długich linii opóźniających)
Bity te wznawiają działanie kanału DMA, czyli powodują przesłanie przez niego kolejnego bloku bądź słowa, w zależności o wybranego trybu działania. Stosujemy je np. wtedy gdy czekamy na wpisanie danej przez inne urządzenie do adresu źródłowego kanału DMA.
Dokładny spis sygnałów pobudzających, odpowiadających im urządzeń i kodów binarnych które należy wpisać do bitów DRS znajduje się w user manuału konkretnego procesora.
Mogą to być np. odebranie danych z magistrali ESSI lub zakończenie transferu przez inny kanał DMA.
Dla ESSI-Rx możemy wykorzystać tryb no-update -> inerement by one. Wtedy jednak trzeba będzie włączyć przerwanie wywoływane przez koniec transferu, które ustawia adres docelowy (ten zwiększany o 1, z powrotem na początek bufora cyklicznego.)
Można również użyć adresowania 2-D, w sposób opisany w pytaniu 4.
Dla transferu ESSI-Tx należy użyć tych samych trybów, ale w odwrotnych kierunkach, czyli np. inerement by one dla źródła, no update dla miejsca docelowego.
Robi się to wpisując odpowiednie kody binarne w odpowiednie bity rejestru DCRx:
Bity DAM(5-3) odpowiadają za miejsce przeznaczenia.
Bity DAMJ2-0J odpowadają za adres źródłowy.
Kody: 100 - No update; 101 - inerement by one. Są to mody typu A (jednowymiarowe).
Jeśli realizujemy transfer danych za pomocą trybu 2-D, wybieramy mod B, czyli wpisujemy bity wyboru rejestru offsetowego (DORO, DOR1, DOR2 lub DOR3), odpowednio 000, 001,010, 011 do bitów DAM[5-3), lub bitów DAM(2-0), w zależności od kierunku transmisji.
Polega na wykonaniu transmisji tyle razy ile jest wpisane do licznika DCOL +1 (12 najmniej znaczących bitów licznika DCRx), następnie przesunięcie wskaźnika o wartość wpisaną do wybranego rejestru offsetowego (DORx). Następnie wartość w DCOH (12 najstarszych bitów w DCRx) jest zmniejszana o 1 i transmisja zaczyna się od nowa. I tak aż do wyzerowania DCOH. Następnie wartość wskaźnika jest zwiększana o wartość wpisaną do rejestru offestowego (DORx), a DCOL i DCOH są ładowane danymi inicjacyjnymi. Wtedy DMA kończy operację, albo czeka na kolejny trigger.
2