Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

Version 1 Next »

Write a file into memory

ngultra_memory_programmer.py –write_file <your_file> –address <start_address>

dd if=/dev/urandom of=random.bin bs=256 count=1
ngultra_memory_programmer.py --write_file random.bin --address 0x3000000

Dump memory into a file into memory

ngultra_memory_programmer.py –dump <your_file> –address <start_address> –count <number of 32bits block>

ngultra_memory_programmer.py --dump random.bin --address 0x3000000 --count 64

Read a single 32bits register

ngultra_memory_programmer.py –read_register –address <start_address>

/ngultra_memory_programmer.py --read_register --address 0xD701014
Result should be 0x0001000e

Writing a single 32bits register

ngultra_memory_programmer.py –write_register <value> –address <start_address>

ngultra_memory_programmer.py --write_register 0XA5A5A5A5 --address 0x3000000

Register could be read to check the correct execution of the command.

Choosing the accessor for the memory access

All these commands could access the memory via:

  • the DAP APB (for Coresight registers);

  • the DAP AXI;

  • Any of the 4 cores.

This could be done via adding respectively:

  • –coresight

  • –axi

  • –core N (where N is the idx of the core [0-3])

The default accessor is: core 0

  • No labels