Algorytm i architektura bezstratnej kompresji zapewniająca zmniejszone wymagania dotyczące przepustowości pamięci z ulepszonym przewidywaniem w oparciu o wielokrotny algorytm DPCM Golomb-Rice

Jun 19, 2024

Abstrakcyjny

W środowisku komputerowym wyższe rozdzielczości zazwyczaj wymagają większej przepustowości pamięci, co nieuchronnie prowadzi do większego zużycia energii.

Może to mieć kluczowe znaczenie dla ogólnej wydajności urządzeń mobilnych i procesorów graficznych przy zwiększonym dostępie do pamięci i przepustowości pamięci.

Istnieje ścisły związek między środowiskiem a pamięcią. Środowisko, w którym ludzie żyją i pracują, będzie miało wpływ na zdrowie fizyczne i psychiczne oraz rozwój i wydajność pamięci.

Po pierwsze, dobre środowisko może sprzyjać rozwojowi zdolności myślenia i percepcji ludzi. Środowisko pracy i nauki powinno być ciche, schludne, ciepłe i wygodne, aby skutecznie poprawiać uwagę i koncentrację ludzi, ułatwiając im koncentrację na myśleniu i zapamiętywaniu. Jeśli otoczenie jest hałaśliwe, chaotyczne lub zatłoczone, wówczas ludzki mózg zostanie zakłócony, co wpłynie na efekt uczenia się i zapamiętywania.

Po drugie, pozytywne środowisko może sprzyjać kształtowaniu pozytywnej mentalności i pozytywnych emocji. Pozytywny stan psychiczny skutecznie poprawi świadomość i funkcje poznawcze ludzi oraz poprawi kreatywność i pamięć. Wręcz przeciwnie, negatywne i przygnębiające środowisko sprawi, że ludzie stracą pozytywne emocje i pewność siebie, wpływając w ten sposób na funkcję pamięci.

Wreszcie bezpieczne i zdrowe środowisko może zapewnić zdrowie ciał i mózgów ludzi, skutecznie poprawiając w ten sposób pamięć. Ciało i umysł muszą mieć wystarczająco dużo odpoczynku i ćwiczeń, aby lepiej dostarczać energii i wspierać funkcje pamięci. Jednocześnie zanieczyszczenia i toksyny w środowisku będą miały bezpośredni wpływ na zdrowie fizyczne i mózgowe ludzi oraz przyspieszą zanik pamięci.

Krótko mówiąc, dobre środowisko jest dla nas ważnym warunkiem rozwoju pamięci. Dostosowane środowisko nauki i pracy, pozytywna i zdrowa mentalność i emocje, a także zdrowe i bezpieczne środowisko życia mogą aktywnie promować rozwój i poprawę ludzkiej pamięci. Widać, że musimy poprawić pamięć, a Cistanche może znacznie poprawić pamięć, ponieważ Cistanche może również regulować równowagę neuroprzekaźników, takich jak zwiększanie poziomu acetylocholiny i czynników wzrostu, które są bardzo ważne dla pamięci i uczenia się. Ponadto Cistanche może również poprawić przepływ krwi i promować dostarczanie tlenu, co może zapewnić mózgowi wystarczające odżywienie i energię, poprawiając w ten sposób witalność i wytrzymałość mózgu.

increase brain power

Kliknij i poznaj sposoby na poprawę funkcjonowania mózgu

W artykule zaproponowano algorytm bezstratnej kompresji z wielokrotną różnicową modulacją kodu impulsowego o zmiennym kodzie znaku Golomba-Rice'a w celu zmniejszenia wymagań dotyczących przepustowości pamięci. Wydajność proponowanej wielokrotnej różnicowej modulacji impulsowo-kodowej jest zwiększona poprzez wybór optymalnego trybu różnicowej modulacji kodowo-impulsowej.

Wyniki eksperymentów pokazują, że współczynnik kompresji dla sekwencji obrazów kodowania wideo o wysokiej wydajności wynosi 1,99 i że proponowany sprzęt do bezstratnej kompresji może zmniejszyć wymagania dotyczące przepustowości magistrali.

Słowa kluczowe: bezstratna kompresja obrazu, architektura sprzętowa, redukcja przepustowości pamięci.

1 Wprowadzenie

Wraz ze wzrostem rozdzielczości najnowszych urządzeń mobilnych i procesorów graficznych (GPU) zwiększa się również przepustowość pamięci potrzebna do uzyskania dostępu do obrazów przechowywanych w buforze ramki.

Zwiększona ilość dostępu do pamięci wpływa na ogólną wydajność i zużycie energii [1, 2, 9–11], podobnie jak wykorzystanie przepustowości pamięci [3, 12]. W tym celu bezstratna kompresja bufora ramki i metody zmniejszania przepustowości pamięci mogą być skutecznymi sposobami wyposażenia magistrali o wysokiej wydajności jako adresu IP.

Przeprowadzono w tym celu wiele badań [4–6]; algorytm bezstratnej kompresji z różnicową modulacją kodu impulsowego, kodowanie Golomb-Rice (DDPCM-GR), wysokoprzepustowy algorytm bezstratnej kompresji obrazu z różnicową modulacją kodu impulsowego, kodowanie GR ze zmiennym kodem znaku (DPCM-VSC GR) i algorytm rekompresji z wielokrotną średnią trybu DPCM Kodowanie o półstałej długości (MDA-SFL) zostało zaproponowane odpowiednio w [4, 5] i [6].

W artykule zaproponowano algorytm kompresji bezstratnej z wielokrotnym kodem znaku zmiennej DPCM (MDPCM) GR w celu zmniejszenia wymagań dotyczących przepustowości pamięci. Algorytm wykorzystuje MDPCM do predykcji i zmienny kod znaku (VSC) GR do kodowania entropijnego [5].Struktura artykułu jest następująca. W części 2 przedstawiono przegląd wcześniejszych badań związanych z tematyką tej pracy.

W rozdziale 3 przedstawiono proponowany algorytm MDPCM-GR. Sekcja 4 przedstawia proponowaną architekturę sprzętową bezstratnej kompresji. W rozdziale 5 przedstawiono proponowany algorytm i wyniki weryfikacji wydajności sprzętu. Wniosek znajduje się w Rozdziale 6.

2 Tło

W tej sekcji dokonujemy przeglądu prac związanych z proponowanym przez nas algorytmem i architekturą sprzętową. Wszystkie uwzględnione badania sugerują, że poprawiły one wydajność w oparciu o algorytm DPCM.

2.1 Algorytm DPCM

DPCM [7] jest powszechnie przyjętym algorytmem odwracalnej kompresji danych. Składa się z etapu predykcji i kodowania entropijnego wyników błędu predykcji. Rozmiar danych wejściowych pikseli można zmniejszyć, korzystając z cech lokalizacji przestrzennej obrazu.

DDPCM [8] to algorytm zaproponowany przez firmę ATI w celu zmniejszenia rozmiaru danych Z w grafice 3D poprzez ulepszenie DPCM. Algorytm DDPCM oblicza wartości różnicowe dla kierunków osi x i y w oparciu o wyniki algorytmu DPCM.

improve your memory

2.2 DDPCM-GR

DDPCM-GR [4] to algorytm kompresji bezstratnej, który wykonuje DDPCM jako funkcję predykcyjną i koduje GR dla kodowania entropijnego dlafixed-k, gdzie k wynosi 2. W przypadku bloku przetwarzania w oryginalnym obrazie zastosowano DDPCM.

Dla danych o błędach z DDPCM przeprowadzane jest kodowanie GR. Kodowanie GR jest metodą kodowania entropijnego, w której stosuje się kodowanie jednoargumentowe na iloraz q, gdzie wartość wejściowa N jest dzielona przez parametr M, a pozostała część jest przechowywana jako dane binarne.

2.3 DPCM-VSC GR

DPCM-VSC GR [5] to wysokoprzepustowy algorytm kompresji, który wykonuje DPCM jako funkcję predykcji i kodowanie VSC GR do kodowania entropijnego. W przypadku bloku przetwarzania oryginalnego obrazu zastosowano 2D DPCM.

Wartość ilorazu oblicza się, dzieląc wynikową wartość DPCM przez wartość 2 $ ∧ k $, gdzie k=0, 1, 2, 3. Wartości VSC i wartości kodu jednoargumentowego uzyskuje się poprzez wykonanie kodowania GR i VSC.

Po zakończeniu wszystkich etapów porównywane są długości skompresowanych danych i oryginalnego bloku. Jeśli długość skompresowanych danych jest mniejsza niż długość oryginalnego bloku, skompresowane dane są generowane poprzez pakowanie wszystkich powiązanych danych.

Powiązane dane składają się z wartości K, wartości trybu DPCM, wartości pierwszego czynnika, wartości pozostałej, wartości danych jednostkowych i danych zmiennych znaku. Jeśli oryginalny blok jest dłuższy niż skompresowane dane, skompresowane dane nie są używane, a oryginalny blok zostaje zachowany.

3 Proponowany algorytm kompresji bezstratnej

W tej sekcji przedstawiono przebieg wykonywania proponowanego algorytmu wielokrotnego DPCMGR (MDPCM-GR) do kompresji i dekompresji.

3.1 Ogólny proces proponowanego algorytmu kompresji i dekompresji

Zaproponowany algorytm MDPCM-GR składa się z kompresora kompresującego oryginalne dane i dekompresora odtwarzającego skompresowane dane. Proces kompresji przebiega w następujący sposób.

W pierwszej kolejności wykonywany jest MDPCM w oparciu o oryginalne dane blokowe, po czym spośród obliczonych kosztów DPCM wybierany jest tryb DPCM o najniższym koszcie. Na koniec przeprowadzane jest kodowanie VSC GR [5] na wartościach błędów z MDPCM. Dekompresja przebiega według odwrotnego procesu kompresji. Rysunek 1 przedstawia schematy tych procesów.

3.2 Algorytm wielokrotny DPCM

Proponowany algorytm MDPCM może wybrać tryb DPCM przy minimalnych kosztach, wykonując cztery różne kierunkowe DPCM; takie jak poziome i pionowe DPCM i DDPCM.

boost memory

Proponowany MDPCM wykorzystuje pionowy i poziomy DDPCM, które są wykonywane odpowiednio w oparciu o pionowy i poziomy DPCM. Podczas wykonywania DDPCM, jako wynik funkcji predykcji wybierana jest optymalna funkcja predykcji, a koszt kodowania entropijnego dla wyniku funkcji predykcji jest obliczany na podstawie sumy wartości bezwzględnych wyników DPCM.

Korzyści z proponowanego MDPCM są następujące. Po pierwsze, ponieważ DPCM i DDPCM są stosowane zarówno w poziomie, jak i w pionie, przewiduje się je dla obrazów, które mają zarówno poziome, jak i pionowe lokalizacje przestrzenne.

Po drugie, ponieważ w proponowanym algorytmie zastosowano DDPCM, który wykonuje dodatkowy DPCM, przewiduje się go dla obrazu z szybką różnicą pikseli. Wreszcie, narzut związany z zastosowaniem MDPCM wynosi tylko 2 bity, co jest bardzo niskim poziomem.

4 Proponowana architektura sprzętowa z kompresją bezstratną

W tej sekcji przedstawiono proponowaną architekturę sprzętową kompresji bezstratnej i opisano każdy moduł konfiguracji oraz szczegóły jego działania operacyjnego.

4.1 Ogólna architektura sprzętowa proponowanej kompresji bezstratnej

Jak pokazano na rysunku 2, proponowana architektura sprzętowa kompresji bezstratnej składa się z następujących jednostek: jednostki MDPCM do wykonywania MDPCM, jednostki konwertującej znaki do konwersji wartości ujemnej z wyników DPCM na wartość dodatnią; jednostka pakowania danych do pakowania skompresowanych danych; jednostka kodowania równoległego VSC; zespół rozdzielacza K; jednostka obliczeniowa kosztu dla wyniku dzielenia wartości K; oraz równoległy moduł kodera GR do kodowania równoległego GR.

10 ways to improve memory

4.2 Ogólna architektura sprzętowa proponowanej dekompresji bezstratnej

Figura 3 przedstawia proponowaną ogólnie architekturę sprzętową do bezstratnej dekompresji, która składa się z następujących jednostek: równoległej jednostki InvMDPCM do wykonywania równoległego odwrotnego MDPCM; jednostkę konwertującą znaki do konwersji znaków poprzez dane dotyczące znaków i dane wielkości; równoległą jednostkę dekodującą GR do równoległego dekodowania GR; moduł detektora zera sprawdzający, czy wartość błędu DPCM wynosi 0; równoległą jednostkę dekodera VSC do wykonywania równoległego dekodowania VSC; jednostka rozpakowująca dane, która dekompresuje skompresowane dane; oraz dostępny moduł rozdzielacza jednoargumentowego/VSC, który rozdziela dane VSC i jednoargumentowe. Sprzęt proponowanej dekompresji bezstratnej jest wykonywany w następujący sposób.

Po pierwsze, aby zdekompresować skompresowane dane, jednostka rozpakowująca dane rozpakowuje dane wejściowe. Nierozdzielone jednostkowe dane VSC otrzymane z jednostki rozpakowującej są dzielone na dane jednostkowe i dane VSC w jednostkowej jednostce rozdzielającej VSC.

Podzielone dane jednoargumentowe są przesyłane do równoległej jednostki dekodera GR i jednostki detektora zera, natomiast podzielone dane VSC są przesyłane do równoległej jednostki dekodera VSC.

Jednostka detektora zera sprawdza, czy wartość błędu DPCM wynosi zero, na podstawie danych jednostkowych i pozostałych danych. Wynik wykrycia zera jest dostarczany do równoległego urządzenia dekodującego VSC, które rekonstruuje podpisane dane na podstawie odebranego wyniku wykrycia zera i dekoduje VSC. Dane jednoargumentowe są dekodowane równolegle przez równoległą jednostkę dekodera GR w celu przywrócenia danych ilorazowych.

Dane wielkości są odtwarzane w oparciu o zapisane dane ilorazowe i pozostałe dane. Po przywróceniu danych znaku i wielkości jednostka konwertująca znak rekonstruuje wartość błędu DPCM. Na koniec równoległa jednostka InvMDPCM działa równolegle z trybem DPCM w oparciu o wartości początkowe i błędy DPCM w celu rekonstrukcji danych pikseli.

short term memory how to improve

5 wyników eksperymentów

W tej części podsumowano wyniki symulacji zaproponowanego algorytmu i architektury sprzętowej. Wydajność będzie mierzona na podstawie stopnia kompresji algorytmu i przepustowości magistrali w strukturze sprzętowej.

5.1 Współczynnik kompresji

W tym artykule mierzymy współczynnik kompresji (CR) skompresowanych obrazów, aby zweryfikować skuteczność algorytmu kompresji bezstratnej. CR odnosi się do rozmiaru skompresowanego obrazu w stosunku do rozmiaru oryginalnego obrazu, a im wyższy CR, tym skuteczniejszy jest algorytm kompresji. Równanie CR jest następujące.

CR =Oryginalny rozmiar obrazuRozmiar skompresowanego obrazu(3)

improving brain function

Siedem sekwencji obrazów w klasie A i B wzorców wysokowydajnego kodowania wideo (HEVC) wykorzystano do uzyskania pomiarów CR w proponowanym algorytmie kompresji bezstratnej i architekturze sprzętowej.

Zaproponowany algorytm kompresji bezstratnej porównano z algorytmami opracowanymi w [4, 5] i [6]. W tabeli 1 przedstawiono średni współczynnik CR zaproponowanego algorytmu oraz [4, 5] i [6] dla wszystkich klatek sekwencji obrazów HEVC .

Wyniki eksperymentów dla sekwencji obrazów HEVC pokazują, że średnie wartości CR wynoszą odpowiednio 1,99, 1,63, 1,92 i 1,91 dla proponowanego algorytmu kompresji bezstratnej, odpowiednio [4, 5] i [6].

Proponowany algorytm kompresji bezstratnej pozwala uzyskać wyższą CR we wszystkich sekwencjach obrazów HEVC niż inne algorytmy. Proponowany algorytm MDPCM wymaga 2-narzutu bitowego do przechowywania informacji w trybie DPCM. Jak pokazano w wynikach eksperymentów w tabeli 1, jasne jest, że zwiększony stopień kompresji wyników funkcji predykcyjnej proponowanego algorytmu MDPCM jest wystarczający, aby spełnić wymagania dotyczące narzutu.

ways to improve memory

5.2 Analiza wydajności przepustowości magistrali

CR proponowanego algorytmu kompresji może być ograniczony szerokością pasma magistrali, ponieważ dane przesyłane przez magistralę powinny być dopasowane do jej szerokości. Dlatego dane przesyłane przez magistralę mogą utracić CR o tyle, o ile szerokość pasma wyrównanych danych.

Aby to przeanalizować, zmierzyliśmy rzeczywistą średnią CR sceny ruchu drogowego przy pięciu różnych szerokościach pasma magistrali: 8, 16, 32, 64 i 128 bitów. Rysunek 4 przedstawia wyniki eksperymentalne rzeczywistych CR na nich.

W tym przypadku rzeczywisty CR jest ograniczony do 128-szerokości magistrali bitowej, czyli najczęstszej przepustowości. Jednak rzeczywista wartość CR na szerokości szyny 8-bitowej jest podobna do idealnego przypadku bitonu 1-, co oznacza, że ​​wydajność proponowanego sprzętu do kompresji bezstratnej jest dobra na 8-bitu przepustowość magistrali. W rezultacie proponowany sprzęt do kompresji bezstratnej może zmniejszyć wymagania dotyczące przepustowości magistrali.

memory enhancement

6 Wniosek

W tym artykule zaproponowano algorytm kompresji bezstratnej i architekturę sprzętową w celu zmniejszenia wymagań dotyczących przepustowości pamięci. Proponowana architektura sprzętowa charakteryzuje się dużą szybkością przetwarzania, ponieważ etapy kompresji i dekompresji mogą być wykonywane równolegle.

Dodatkowo wysoki współczynnik CR uzyskano poprzez udoskonalenie funkcji predykcji istniejącego algorytmu. Funkcja przewidywania również poprawiła wydajność, odzwierciedlając zalety zarówno DPCM, jak i DDPCM. Wykorzystaliśmy sekwencję obrazów HEVC jako punkt odniesienia do sprawdzenia wydajności proponowanego algorytmu i architektury sprzętowej.

W wyniku eksperymentu uzyskaliśmy średni CR wynoszący 1,99 w klasach A i B sekwencji obrazów HEVC. W ten sposób zweryfikowano proponowaną architekturę kompresji bezstratnej, aby uzyskać wyższy współczynnik CR niż algorytmy porównawcze. Ponadto, ponieważ algorytm zastosowany w tym badaniu osiąga wysoki współczynnik CR, proponowany sprzęt do kompresji bezstratnej może zmniejszyć wymagania dotyczące przepustowości magistrali.

Zatem proponowany sprzęt do kompresji bezstratnej jest odpowiedni do zastosowań wymagających dużej przepustowości pamięci i dostępu do pamięci, takich jak procesory graficzne i procesory wideo o wysokiej rozdzielczości.

Potwierdzenie

Badania te były częściowo wspierane przez MOTIE (Ministerstwo Handlu, Przemysłu i Energii) (10080568, Development of the Embedded GP-GPUfor Deep Learning Based Circumstances Recognition) i program wsparcia KSRC (KoreaSemiconductor Research Consortium) na rzecz rozwoju przyszłego urządzenia półprzewodnikowego . Narzędzie EDA było wspierane przez Centrum Edukacyjne ICDesign (IDEC) w Korei.

supplements to boost memory


Referencje

[1] D. Burger, JR Goodman, A. Kagi, „Ograniczona przepustowość wpływająca na konstrukcję procesora”, IEEE Micro, tom. 17, nie. 6, s. 55–62, listopad 1997.

[2] H. David, E. Gorbatov, UR Hanebutte, R. Khanna, C. Le, „RAPL:memory power estimation and capping”, Międzynarodowe sympozjum ACM/IEEE nt. elektroniki i projektowania małej mocy w 2010 r. (ISLPED), s. 189–194, sierpień 2010.

[3] Przewodnik optymalizacji aplikacji ARM Mali GPU OpenGL ES, dostępny na stronie.https://developer.arm.com/docs/dui0555/b/optimization-checklist/the-checklist/reduce-memory-bandwidth-usage

[4] H.-S. Kim, J.-H. Lee, H.-J. Kim, S.-H. Kang, W.-C. Park, „Architektura kompresji obrazu bezstratnego przy użyciu równoległego kodeka Golomb-RiceHardware”, IEEE Transactions on Circuits and Systems for VideoTechnology, tom. 21, nie. 11, s. 1581–1587, listopad 2011.

[5] J. Lee, J. Yun, J. Lee, I. Hwang, D. Hong, Y. Kim, CG Kim, W.-C. Park, „Efektywny algorytm i architektura bezstratnej kompresji obrazów o wysokiej przepustowości”, IEEEAccess, tom. 7, wydanie 1, s. 138803–138815. wrzesień 2019.

[6] L. Guo, D. Zhou, S. Goto, „Nowy algorytm rekompresji ramki referencyjnej i jego architektura VLSI dla kodeka wideo UHD TV”, IEEETransactions on Multimedia, tom. 16, s. 2323–2332, grudzień 2014.

[7] AD Mitra, PK Srimani, „Różnicowa modulacja impulsowo-kodowa”, Int. J.Electron., tom. 46, s. 633–637, czerwiec 1972.

[8] S. Morein, „ATI Radeon hyper technology”, In Proceedings of theGraphics Hardware, 2000.

[9] D. Silveira, G. Povala, L. Amaral, B. Zatt, L. Agostini, M. Proto, „Efektywny schemat kompresji ramki referencyjnej dla systemu kodowania wideo: algorytm i projektowanie VLSI”, Journal of Real-Time Image Przetwarzanie 16, s. 391–411, 2019.

[10] Yu-Hsuan Lee, Tzu-Chieh Chen, Hsuan-Chi Liang, Jian-Xiang Liao, „Algorithm and Architecture Design of FAST-C Image Corner DetectionEngine”, Very Large Scale Integration (VLSI) System IEEE Transactionon, tom. 29, nie. 4, s. 788–799, 2021.

[11] Sungchul Yoon, Sungho Jun, Yongkwon Cho, Kilwhan Lee, HyukjaeJang, Tae Hee Han, „Zoptymalizowana bezstratna wbudowana kompresja dla mobilnych aplikacji multimedialnych”, Electronics, tom. 9, s. 868, 2020.

[12] Yu-Hsuan Lee, Cheng-Hung Kuei, Yue-Zhan Kao, Shih-Song Fan Jiang, „Algorithm and VLSI Architecture Designs of A Lossless Embedded Compression Encoder for HD Video Coding Systems”, Journal of Circuits, Systems, and Computers , 2020.


For more information:1950477648nn@gmail.com


Może ci się spodobać również