Alternatively, partial bitstreams can be generated directly from the Abstract
Shell implementation for any RM. With this approach, the complete static design
information is not required to generate partial bitstreams. The Abstract Shell contains
all the information needed not only to implement any RM, but to create the bitstream for
that function. The -cell
option for write_bitstream
is
required.
write_bitstream -cell <cell_inst> <RM_partial>.bit
-cell
option is omitted, write_bitstream
flags an error, as this is
interpreted as a request to create a full design bitstream. The full design is clearly
not present here. Similarly, VivadoVivado returns an error if you
attempt to generate a partial bitstream from just the RM checkpoint alone (the one
created from write_checkpoint -cell
, with no static
design data present above the target cell). This bitstream would only have the
information for the RM, not for the static design that connects to it.Full device bitstreams can only be generated from checkpoints containing the full static design checkpoint plus one RM per RP. RMs can be gray box implementations, but even these must be fully placed and routed. Partial bitstreams from any full or Abstract Shell checkpoint are compatible with static as long as that version of static used to create each Abstract Shell has not been modified.