Domanda

ho familiarità con X86 [-64] architettura e di assemblaggio. Voglio iniziare a sviluppare per un processore ARM. Ma a differenza di processori desktop, non ho un processore ARM vero e proprio. Penso di aver bisogno di un simulatore di ARM.

http://www.armtutorial.com/ dire

  

Un braccio di montaggio compilatore sarà richiesto, il più accessibile è l'ARMulator.

ho pensato di scaricare Armulator ma situato http://forums.arm.com /index.php?showtopic=13744 che

  

La sua non è venduto separatamente. Ma è possibile scaricare un eval di RVDS - che comprende RVISS / ARMulator

Ho scaricato e installato RVDS ma sembra molto complessa. Sono in grado di capire cosa devo fare per ARM scrittura di montaggio e farlo funzionare .

Avete qualche suggerimento migliore?

È stato utile?

Soluzione

Opzioni per ambienti

  • Installa Linux nel QEMU emulatore del sistema. E 'in grado di emulare una varietà di chipset basati su ARM.
  • Ottenere un emulatore per uno specifico chipset ARM-come un palmare gioco. Gameboy Advance è divertente da giocare. NoCash GBA e Visualboy Advance sono due grandi emulatori GBA.

Toolchains

Avrete bisogno di una toolchain. Una toolchain è una raccolta di strumenti di basso livello come un assemblatore, un linker, un compilatore, un archiviatore e un mucchio di altre cose utile. Ancor più, si vuole un cross-toolchain, il che significa che le piste toolchain su un sistema, ma costruisce eseguibili per un'altra architettura. In questo modo è possibile creare applicazioni che girano su ARM-dispositivi, ma sul PC basato su x86. È più veloce e più conveniente.

Se si esegue Windows, devkitPro è una scelta abbastanza buona. Per Unix / Linux / BSD varianti, avete toolchain libero di CodeSourcery e la toolchain GCC da gnuarm.com . Ci sono molti altri, ma non hanno bisogno di più opzioni.

Documentazione

Prendi le specifiche per la CPU ARM di scelta a infocenter.arm.com . Un riferimento da nessuna necessità importa la CPU è il Manuale ARM Architettura di riferimento (ARMARM Spesso abbreviato). Sto ospitando una versione precedente, che copre la versione architettura ARM e set di istruzioni fino a ARMv4T, qui , ma si trovano le versioni attuali e più tardi infocenter.arm.com pure. Se si va per GBA, si noti che la CPU è un ARM7TDMI, con la versione set di istruzioni ARMv4T.

L'ARMARM contiene suggerimenti ed esempi per il sistema di consueto nocciolo di codifica, consigli su come procedere su alcuni problemi di progettazione, così come un punto di riferimento sia del set di istruzioni ARM, set di istruzioni Thumb e co-processori come MMU, MPU , DSP e FPU.

Se si bastone con QEMU, che è praticamente tutto ciò che serve, dal momento che il kernel di Linux gestisce tutto. QEMU ha anche l'emulazione in modalità utente (con un mozzicone C-biblioteca). Se si va per uno degli emulatori GBA, ecco una bella di riferimento nel corso dei registri hardware e hardware GBA: CowBiteSpec . Assicurarsi inoltre di controllare le http://www.gbadev.org/ .

Nintendo DS è probabilmente un'opzione pure, ma non so di eventuali emulatori decente per quel palmare ancora. Buona fortuna a voi: -)

EDIT: Ecco un esempio banale di un codice GBA ho scritto anni fa: GBA riempimento di colore 240x160 a 16 bit esempio

Altri suggerimenti

Alcuni commenti, non in competizione per una risposta completa alla domanda manifesti.

Il BeagleBoard è fresco, $ 150 ma ci vuole altri 150 $ in roba usb per renderlo utile. Il BeagleBoard Embest è più conveniente nel complesso a causa della mancanza di roba devi comprare per andare con esso. Ma ora c'è la hawkboard, anche una scheda OMAP base, i costi sotto $ 100 e finora sembra molto ben fatto. Sto gradire più del BeagleBoard al momento, molto meno dolorosa.

Gli open-rd offerte da tavolo molto di più che la BeagleBoard per quella fascia di prezzo, qualcosa di esaminare se / quando si dispone di un budget giocattolo. sia la scheda aperta e chiusa per altro $ 100 hanno un connettore completo sata in modo da poter mettere un azionamento del computer portatile su di esso e non è necessario utilizzare dispositivi flash penosamente lenti o USB.

Il doesnt manifesto ha le risorse per acquistare questi giocattoli. Direi che se si continua a perseguire questo e ottenere buoni embedded ARM si avrà la volontà e trovare la strada. È per questo che parlare di Sparkfun e altri hanno $ 30- $ 50 tabelle che il lavoro fuori dalla scatola. Posta una domanda a StackOverflow prima di acquistare se chiede quale sia il migliore. Ho molti e ci sono un certo numero di loro ho trovato inutilizzabile o troppo doloroso per perdere tempo con, io non voglio che spendere tutto il budget giocattolo su qualcosa che non vale la pena avere.

Ho qualche braccio QEMU codice di esempio integratore che in giro qui, mi permetta di imballaggio è necessario e fornire un esempio di lavoro. Ho un sacco di altro braccio e il codice gba che in giro, forse mi post che pure.

L'architettura ARM è iniziato e l'ultima volta ho lavorato con loro gente / strumenti che utilizzano un emulatore chiamato armulator (google / wikipedia esso). Quindi, emulando il braccio, in particolare, non è raro.

Scrivere un proprio emulatore sarebbe / potrebbe essere un progetto di divertimento o di prendere una esistente e aggiungendo le proprie periferiche. QEMU e mame sono troppo ingombranti per giocare con come-è, si potrebbe essere in grado di estrarre il braccio dalla mame senza troppi problemi.

Si potrebbe ottenere qualcosa di te stesso come un BeagleBoard con cui giocare - hanno solo costo di circa $ 200. È possibile installare Ubuntu e la toolchain ARM su di esso.

andare a prendere uno RPi3 per voi. È possibile controllare https://www.element14.com/community/community/raspberry-pi .

Questo è davvero economico e molto semplice da usare. E si ottiene così un grande sostegno comunità. Controllare https://www.raspberrypi.org/products/raspberry- PI-3-model-b / per ulteriori informazioni.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top