Glossary

Simulator initialization files


ASCII text files (with the prefix memory) that specify the initialization data for each address in the memory regions in the Excalibur embedded processor stripe of an ARM®-based Excalibur device. These files are used as input files for memory initialization in the Simulator.

The following simulator initialization files are created automatically every time you generate flash programming files with the Software Builder, or passive programming files with the Compiler or Software Builder:

File Name
File contents
Memory.regs Register initialization data
Memory.sram0 SRAM0 initialization data
Memory.sram1 SRAM1 initialization data
Memory.dpram0 DPRAM0 initialization data
Memory.dpram1 DPRAM1 initialization data

NOTE
  1. By default, the Quartus® II software places the simulator initialization files in the Quartus II project directory.

  2. You can also use the makeprogfile utility to manually generate these files

Values in simulator initialization files use the following format:

[<radix>]<address>[:|-<end_address>]/[<radix>]<initialization_data>;

The following table describes the variables in the value format:

<radix>

The base format of the memory region address(es) or initialization data. You can use the following number base notation:

`b binary
`o octal
`d decimal
`h hexadecimal

The memory region addresses and the initialization data in a value can have different number bases. If you do not specify a number base, the Quartus II software uses the hexadecimal number base by default.

<address> The address of the memory region for which you are specifying initialization data, or, if the region is a range of addresses, the beginning address for the region.
<end_address> If the memory region is a range of addresses, the end address for the region.
<initialization_data> The initialization data for the memory region.

You can add a comment to a simulator initialization file using the the pound sign (#). All information from the pound sign to the end of the line is treated as a comment.

The following code shows examples of values in simulator initialization files. In these examples, the memory region is 8 bits wide.

0:3/0; #Address range separated by colon

4-6/0; #Address range separated by hyphen

d7/'b10101110; #Address and data using different number base

10/0; 11/`b10000000; #Line contains two values

12:1e/'HxF; `d31/`hX8; #Information in value not case-sensitive

20:7FF/4; #Remaining addresses loaded with 00000100

The following code is an example of the Memory.regs file:

0/080fff00001; # MMAP registers
1/09030000981;
2/09440000981;
3/0a070000981;
4/0a480000981;
5/0b050000981;
6/0b460000981;
7/0c000000981; # EBI 0 mapped at 0 for booting
8/0c4a0000981;
9/0d010000d81;
'd10/0d420000d83;
b/30400000404; # Clock control
c/30C00000245;
d/31400000302;
e/31C00000245;
f/32000000010;
10/04400000002; # EBI I/O control

The following code is an example of the Memory.sram0 file. This example specifies four initial values at the addresses 0, 0x2000, 0x4000, 0x6000 (the byte addresses 0, 0x8000, 0x10000, 0x18000).

0/00000000;
1/00000004;
2/00000008;
3/0000000c;
2000/00002000;
2001/00002004;
2002/00002008;
2003/0000200c;
4000/00004000;
4001/00004004;
4002/00004008;
4003/0000400c;
6000/00006000;
6001/00006004;
6002/00006008;
6003/0000600c;

Back to Top

- PLDWorld -

 

Created by chm2web html help conversion utility.