Why am I unable to customize BAR3 inside the CORE Generator GUI?
This problem is scheduled to be fixed in version 1.9, which is due to be released with IP Update 3 for ISE 10.1.
This is strictly a GUI issue and is not a problem with the solution. Follow these steps to work around the problem:
1. Generate the core as desired with the BAR3 fields grayed out.
2. Open the XCO file that is provided with the core.
3. Inside the XCO file the BAR fields are defined. Edit the BAR3 fields to the desired BAR implementation:
bar3_64bit : "true" for 64bit bar, "false" for 32bit
bar3_enabled : "true" to enable, "false" to disable
bar3_prefetchable : "false" for 32b, could be "true" or "false" for 64b. the "bar3_value" field defined below will have to be set correctly depending on this setting. "bar3_value" (bit 3 of bar3_value) should be "1" if prefetchable is true.
bar3_scale : "Kilobytes" / "Megabytes" / "Gigabytes". If 64bit bar, then additional options are "Terabytes" / 'Petabytes" / "Exabytes"
bar3_size : aperture -- e.g., 2 Kilobytes. Options: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512
bar3_type : "Memory" or "IO"
bar3_value : this value will have to be set correctly, depending on the above 6 settings.
4. After changing the BAR3 fields to the desired values, save the XCO file under a new name.
5. Open the previous CORE Generator project and select File -> Import. Select the newly edited XCO file.
6. The customization GUI should load. Click Finish.
Open the simulation model in a text editor. The model should be named "core_name".v/vhd and should be ~3600KB in size. Search on BAR3EXIST and verify that this is set to "True." The BAR3EXIST attribute is an attribute of the PCI Express Hard Block and will be set "True" if BAR3 is activated.
This issue is fixed in v1.9, which will be available in 10.1 SP3 IP Update 3.
09/10/2008 - Updated with fix information.
07/03/2008 - Provided work around.
06/27/2008 - Initial Release