-
Notifications
You must be signed in to change notification settings - Fork 7
Creating Executable Designs
Once an FPGA design has been generated, the configuration data has to be transformed into a BORPH executable file (BOF). BOF files are created using the "mkbof" utility. The syntax of is as follows:
`mkbof -o <output_file> -s <symbol_file> -t <hwr_type> <binfile>`
where:
-
<output_file> is the name of the BORPH executable to be produced
-
<symbol_file> is the file indicating the matching between a resource and its name, size, and permission. Inside the user has to write a list of TAB separated values (one line per resource) indicating all the needed data.
<Resource name>\TAB<Permission>\TAB<Location>\TAB<Size>- <Resource_name> is the name of the file that will be associated with the resource.
- <Permissio\n> is 1 for Read only, 2 for Write Only, 3 for Read Write.
- <Location> is the unique ID of the ressource (it has to match the one defined in the UserFPGA software).
- <Size> is the size in bytes of the ressource.
-
<hwr_type> is the target device of the design, in this case 5 (RHINO)
-
<binfile> is the .bin file compiled by FPGA toolchain (make sure to use the BIN file, rather than the BIT file)
Typically, the mkbof utility will be integrated with the target board's toolflow as a last step. The symbol file is automatically created by the relevant tools, mkbof is called and an executable BOF file is generated as output automatically.
The source code for the mkbof utility can be found at https://github.com/brandonhamilton/rhino/tree/master/borph/tools/borph