Hogyan tervezhetem meg a saját ARM alapú processzoraimat?

Több kérdésem van arra vonatkozóan, hogyan tervezném meg saját ARM-alapú CPU-jomat?

  • Hogyan kezdődik egy ARM-licenc és egy csomag készen áll a táblára forrasztásra?
  • Mit kapok az ARM-től (biztos vagyok benne, hogy több licenc opcióval rendelkeznek – Architecture License (Qualcomm Snapdragon stílus) és Core License (TI OMAP stílus))?
  • Milyen eszközökre van szükségem a továbblépéshez, ha “megkapok valamit” az ARM-tól?
  • Mit küldök a mesének?
  • Úgy gondolom, hogy csak bizonyos alapítványoknak van engedélyük ARM-mag vésésére egy szilícium ostyára. Igazam van?
  • Diákként megengedhetem magamnak, hogy ezt FPGA-n végezzem? Hogyan szerezhetek tapasztalatokat ilyesmi miatt?

Megjegyzések

  • Nyilvánvaló válasz az ARM-mel való beszélgetés.
  • Vessen egy pillantást a opencores.com oldalra – rengeteg különféle processzormag található a teljesség és a funkcionalitás különböző fázisaiban. A tényleges ARM-alapforrás megszerzéséig … amint a @OlinLathrop mondja … beszéljen az ARM-mel.
  • Nem értem az elmaradt szavazatokat, ez így van:

naiv kérdés lehet, de mindenképpen jogos IMO.

  • A probléma az, hogy a kérdésed egy olyan munkafolyamatra vonatkozik, amelyet nem fogsz követni. A követhető munkafolyamatok – eredeti vagy HDL-ben szabadon elérhető kialakítás felhasználásával az FPGA megcélzásához – különböznek a tényleges spekulációtól.
  • A Cortex-M1 magot megfelelően alkalmas FPGA-ban kell futtatni. A nagy FPGA-gyártók rendelkeznek IP-licenccel, és ugyanúgy szállítják a tervezőhöz, mint bármely más soft core-t. Feltételezem, hogy nem ingyen, de vannak olyan programok, amelyek kifejezetten akadémiai felhasználásra állnak rendelkezésre.
  • Válasz

    Itt van hogyan csinálják a cégek:

    1. Emeljen kb. 10 millió USD-t.
    2. Tárgyaljon az ARM-mel a licenc megszerzéséről. Ez valószínűleg legalább egymillió dollárba kerül.
    3. Szerezze be a tervfájlokat az ARM-től. Valószínűleg a VHDL, a Verilog vagy a “titkosított” netlisták valamelyikében lesz.
    4. Tervezze meg saját chipjét a saját logikája (a perifériák számára) és az ARM által adott ötvözetek felhasználásával. Ehhez a lépéshez valószínűleg szükség lesz néhány drága CAD szoftverre és egy kis szakértői csoportra. Várhatóan legalább 5 millió dollárt és több évet költenek el.
    5. Szerezzen be magának a chipnek készített maszkokat. Ha bármilyen modern félvezető folyamatot használ, akkor ez kb. 1 millió USD körüli összeg lesz.
    6. Készítse el magát a chipet. Az ár változó, de nem lehet kevesebb, mint 0,5 millió USD.
    7. Hibaelhárítás a létrehozott chipről, javítsa ki a hibákat, majd folytassa az 5. lépéssel, amíg van valami, amit el tud adni.

    Így TE tedd:

    1. felsőfokú végzettség számítógép-építész tanfolyam a helyi egyetemen.
    2. Tegyen további tanfolyamokat a digitális logika és bármi más témában.
    3. Tervezzen CPU-t a semmiből a VHDL vagy a Verilog programban. egy másik CPU a semmiből.
    4. Nézze meg az ARM utasításkészletét, és tervezzen egy kompatibilis CPU-t.
    5. Az ARM-kompatibilis CPU-t működjön egy FPGA-ban.
    6. Ne “csak akkor terjessze a VHDL / Verilog forráskódját, ha be akarja perelni.
    7. Használja ARM-tapasztalatait, hogy jó értekezést írjon PhD-jéhez.
    8. Használjon PhD-t munkához az ARM-nél, vagy a TI-nél, vagy bárkinél. Ezután ismételje meg a folyamatot az előző 7 lépésben, hogy egy vállalat hogyan csinálja.

    Rendben, szóval ez a lista kissé szájbarágós, dealapvetően helyes. A lényeg az, hogy ne is foglalkozzon közvetlenül az ARM-mel, mert esélye van arra, hogy nincs pénze. És ne tegyen semmit, ami miatt az ARM beperelné.

    Megjegyzések

    • +1. Kiváló válasz. Amit mondani akartam , de jobb.
    • Minden jó tanfolyam tartalmazná a különféle CPU ‘ s alapstruktúráját és működését. A témáknak ki kell terjedniük a mikrokódra, az utasítások dekódolására. , ALU ‘ s, memóriaelérés, gyorsítótár, regiszterek, csővezetékkezelés, adatveszélyek, utasítások előhívása stb.
    • Van-e valami oka annak, hogy az ARM ‘ utasításkészlete önmagában is szabadalmaztathatóbb lenne, mint bármely más CPU, amelynek klónjai bővelkednek? Természetesen vannak olyan építészeti jellemzők, amelyek szabadalmaztatottak, de ha van ilyen ‘ célja egy olyan CPU megtervezése, amely a meglévő fordítókkal fog működni, vajon maga az utasításkészlet jelentene-e problémát?
    • @supercat Általában maguk az utasítások sem nagyon szabadalomképes, hacsak nem tartalmaznak archi tekturális dolgok. A MIPS ezt a CPU ‘ s processzoraikkal tette meg, ahol szabadalmaztattak néhány utasítást, amelyek betöltik / tárolják a szavakkal nem igazított szavakat, valamint néhány dolgot a nagy és a kis endian közötti dinamikus váltáshoz. .Ezt a bíróságon megtámadták, amikor a MIPS beperelte egy MIPS klóngyártót, és a MIPS nyert (2000 körül). De a legtöbb szabadalom építészeti kérdésekkel foglalkozik. ‘ nem készíthet CPU-t, amely kompatibilis a meglévő fordítókkal, anélkül, hogy mind az architektúrát, mind az utasításkészletet lemásolná.
    • @LordLoh hasznosnak találhatja ezeket a kérdéseket. : electronics.stackexchange.com/questions/28686/… electronics.stackexchange.com/a/7051/638

    Válasz

    Az ARM rendelkezik egy Egyetemi DesignStart Program . Diákként csak az alapvető Cortex-M0 anyagokat érheti el. De ha valóban érdekel, vonja be a karodat, és akkor sokkal több tervezési anyaghoz férhetsz hozzá (Verilog FPGA kód, Evaluation IP, Szimulációk stb.)

    Megjegyzések

    • Köszönet 🙂 Én ‘ megpróbálom elérni, hogy tanácsadóm kérjen ezek közül néhányat.
    • WFIW, ez a válasz most elavult, mind a Cortex-M0, mind a Cortex-M3 elérhető, és a termék egyes részei nyitottak a nem diákok / intézmények számára.

    Válasz

    Vessen egy pillantást az ARM magra az OpenCores-en.

    Megjegyzések

    Válasz

    Az ARM Cortex-M1 (valószínűleg a legegyszerűbb az ARM processzorok) az első olyan ARM processzor, amelyet kifejezetten lágy processzorként terveztek megvalósítani az FPGA-kban. A következő FPGA típusokra van optimalizálva:

    Actel (M1 ProASIC3 and M1 Fusion) Altera (Cyclone-II, Stratix-III) Xilinx (Spartan-3, Virtex-5) 

    Az ARM maga készít egy Cortex-M1 fejlesztőkészlet az Altera III. ciklonhoz , bár kissé drága a 625 USD áron a DigiKey-től . Megkapja az összes ARM Cortex-M1 IP-t, és egy licencet a fejlesztéshez (plusz egy ingyenes jogdíj-támogatást 1000 tábla számára a gyártásba lépők számára, nagyon jó).

    Lehet, hogy van néhány lehetőség az önálló IP megszerzéséért (talán van akadémiai programjuk, valaki más megemlített egyetemi programot, de ez az M0-ra vonatkozott). Ezután külön megvásárolhat egy fejlesztőkártyát.

    Íme néhány további információ az ARM Cortex-M1-ről az Alterán .

    Itt van néhány információ arról, hogyan helyezhetünk ARM Cortex-M1-et egy Actel FPGA-ra.

    Közben némi érdeklődés mutatkozik más iránt Az ARM Cortex verziói az FPGA-n; itt van egy papír olyan személytől, aki ARM Cortex-M0-t implementált egy Xilinx FPGA-n.

    Megjegyzések

    • Ha meg szeretné változtatni a kialakítást, próbáljon meg egy ” megfelelő ” 32 bites gép. Jelenleg az ARM egyidejűleg 8 bites 32 bites utasítást olvas, ami azt jelenti, hogy a számítógép minden egyes utasításletöltéskor 4-gyel növekszik.

    Válasz

    Mostantól hozzáférhet a Cortex-M3 processzorhoz (és egy kibővíthető AHB / APB alrendszerhez) az ARM DesignStart programján keresztül.

    Az Eval opció egy FPGA célpontot biztosít (a szimuláció támogatott, a mag elfedt RTL-jével, a Verilogban minden mással). Ez jelenleg az ARM MPS2 + FPGA-t célozza meg, mbed támogatással.

    A Pro verzió (csak azoknak a vállalatoknak / egyetemeknek érhető el, akik licencet tudnak aláírni) lehetővé teszi a gyártást, és magában foglalja a processzor magját a Verilogban (ez mindkét Cortex-re kiterjed). -M0 és Cortex-M3).

    Vélemény, hozzászólás?

    Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük