eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingsortowanieRe: sortowanie
  • Data: 2012-10-18 21:09:14
    Temat: Re: sortowanie
    Od: Michoo <m...@v...pl> szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    On 17.10.2012 22:28, Baranosiu wrote:
    > Z technicznego punktu widzenia rejestr to taka sama pamięć jak RAM czy
    > cache,

    Zwłaszcza, że RAM jest pamięcią dynamiczną a cache i rejestry pamięcią
    statyczną(i to też pamięć RAM tak w sumie) więc technicznie to się dość
    mocno różnią. Logicznie to i to jest pamięcią.

    > a że nie jest podpięty do szyny adresowej

    Której szyny adresowej? Jest ich w komputerze kilka a jak sam zauważyłeś
    rejestry są kawałkiem pamięci - jakoś zaadresować je trzeba.


    > ale już na przykład w
    > niektórych procesorach RISC (choćby takie małe Atmegi z rdzeniem AVR)
    > rejestry są jak najbardziej adresowalne.

    Bo skoro na pokładzie jest tylko kilka kilo SRAM to umieszczanie tam
    rejestrów jest naturalne. W x86 L1 jest zazwyczaj kilka razy większe a
    pamięć rejestrów niewiele mniejsza od całej pamięci w małym uC.

    > Takie pierdoły jak "register
    > rename" wynikają z prostego faktu, że nawet tanie mikrokontrolery za
    > 20zł mają 32 ortogonalne rejestry (nawet Amiga 30 lat temu miała
    > 16 rejestrów 32-bitowych, choć nie w pełni ortogonalnych) a Intel robi
    > "wielką rewolucję" że w 64-bitowej maszynie raptem dodaje 8
    > dodatkowych rejestrów do 4 już istniejących (reszta to indeksowe i
    > segmentowe) i tylko dlatego, że AMD to zrobiło wcześniej, więc trzeba
    > było "dogonić" konkurencję :D

    Ale zauważyłeś że nowe x86 mają takie ciekawostki jak np. prefetch,
    których w RISC nie ma?

    >
    > Pipeline? W 1996 roku na studiach programowałem procesor
    > SparcUltra, który (pomijając że w pełni 64-bitowy) wykonywał dwie
    > instrukcje w jednym cyklu zegara i trzeba było uważać jak się pisało
    > programy w assemblerze, bo jak się po CALL _adres nie dało instrukcji
    > NOP, to drugi potok mógł zdążyć wykonać instrukcję za "CALL" zanim się
    > skok wykonał :D

    Jeżeli to skutkowało błędami to był to kiepski procesor. W momencie gdy
    pierwszy dekoder rozkazów trafił na instrukcję skoku (ret, jmp, etc.)
    pipeline powinien być blokowany (tzn w niepopsutych rozwiązaniach to
    działa tak, że część drugiej instrukcji się wykona, tak gdzieś do zapisu
    wyniku).

    > "Nikt nie widział eax" bo pewnie nikt do środka nie zaglądał :D A tak
    > na serio, to Intele nie są procesorami tzw. hardwired (takie są na
    > przykład ARM-y, AVR-y itd.) tylko mają prosty rdzeń i mikrokodem
    > załatwiają resztę :D W sumie mogliby udostępnić możliwość ładowania
    > własnego mikrokodu, wtedy każdy mógłby stworzyć swój assembler (choć
    > od takich rzeczy, to akurat układy FPGA są lepsze :D).

    Jesteś pewien, ze ten mikrokod nie jest przynajmniej częściowo wsadem
    konfiguracyjnym dla bloków FPGA-like wewnątrz procesora? Przy 3GHz
    klasyczny RISC musiałby pracować chyba szybciej niż podłoże krzemowe na
    to pozwala...

    --
    Pozdrawiam
    Michoo

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: