4.4. The text syntax of BCD files

It is generally recommended that you create and edit BCD files within the RVD GUI. However, an explanation of the syntax used in BCD files helps to explain how the files are used by RVD.

Note

Direct modification of BCD files using a text editor is possible. This can be very useful when making large block changes, or for find and replace operations. However, care must be taken to preserve the formatting and syntax.

With RVD disconnected from the target, open the file demo.bcd in a text editor.

[BOARD=BCD-DEMO]
Advanced_Information.default={\
Memory_block.default={}:Memory_block.Boot_ROM={\
start=0x0000:length=0x8000:access=ROM:description="System Boot area"\
}:Memory_block.32bit_Internal_RAM={\
start=0x8000:length=0x20000:description="On chip 32bit RAM"\
}:Memory_block.System_Registers={\
start=0x10000000:length=0x1000:description="Memory mapped Peripherals"\
}:Map_rule.default={}:Register_enum.default={}:Register.default={\
bit_fields.default={}\
}:Concat_Register.default={}:Peripherals.default={\
Register.default={\
bit_fields.default={}\
}\
}:Register_Window.default={}:ARM_config={}\
}

The configuration options that can be specified in a BCD file correspond to the options visible in the GUI.

In general only changes to the default values are stored in the BCD file. However defining a memory map causes various other sub groups within the Advanced_Information group to be pulled in. These are currently empty as no changes have been made. This set of groups forms the basic framework of a BCD file.

Some general comments on BCD file format:

  • The whole of the Advanced_Information section is a single logical line. For readability, this large section is split over multiple lines using \ as a continuation marker (as the last character on the line).

  • Items inside the Advanced_Information folder are displayed as: groupfolder.groupinstance. For example the area of 32bit RAM we defined within the Memory_Block folder is displayed as: Memory_block.32bit_Internal_RAM

  • Entries are separated by a colon :

  • The entries in a group are enclosed in a matching pair of { }

  • Comments are not supported inside BOARD/CHIP definitions.

  • Extra white space is not allowed

Copyright © 2005-2007. All rights reserved.ARM DAI 0142 C
Non-Confidential