• bvalek2
    #30
    Íme a HCA-2010 (Hungarian Computer Architecture 2010) rövid vázlata:

    - regiszterek: 128 darab 128 bites regiszter, egyaránt lehet bennük float és integer tömb, az utasításon múlik hogy mit tesz a tartalmával.

    - adattípusok: 1, 2, 4, ... - 128 bites előjeles integer tömbök, és 16, 32, 64, 128 bites float tömbök

    - utasítások: 32 bites fix hosszúak, az aritmetikaiak 3 operandusúak, és a regiszterben tömbökön végeznek műveletet, pl. bájot összeadása azt jelenti, hogy a 128 bites regiszterekben minden bájtot regiszterpáronként összead

    - párhuzamosítás: egyszerre 4 utasítás hajtódik végre, ha regiszterütközés van, akkor nincs újrarendezés, hanem megy a kivétel a system kódnak, mint Itaniumon

    - több mag: fontos a közös cache (systemkód lekezeli) hogy a szálak közötti beszélgetésnél a szemaforok elérése minél gyorsabb legyen

    - memóriacímzés: 64 bites, és 16 bites szavakat címez, 8 bites bájtok helyett, szóval ami nálunk 4 gigaword, az pl. Intelnél 8 gigabyte

    - lapozás: transaction lookaside buffer van, ha van címtalálat, oké, ha nincs akkor megy a kivétel, mint az Alpha processzornál, legyen minél egyszerűbb

    a részleteket nem dolgoztam ki, de el lehet játszani vele, hogy minden regiszter 128 bites, a memóriacímek 64 bitesek, egy regiszterben két cím, miket lehetne művelni... na mi lesz, elkezdjük? :)

    dokumentálni kéne, meg C-ben nekiállni valami emulációnak, hogy legyen mire programot írni.