| |||
| Home > Creating and understanding your first BCD file > 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.
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.
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