All registers in a CPLD device are initialized when the device is powered up. The initial state (preload value) of each register is programmable.
Registers in XC9000 macrocells have both asynchronous clear and asynchronous preset controls available. The initial power-on states of CPLD macrocell registers can be selected regardless of whether the register is asynchronously cleared of preset during operation.
Unless otherwise specified in your design, each register in an XC9000 device will initialize to the zero (reset) state at power-up.
You can specify the preload states of selected register cells in your design by setting the initial state attribute in dc_shell as follows:
set_attribute register_cell init state -type string
where:
For example, to specify an initial state of "1" for the register named QOUT_reg, enter the following:
set_attribute QOUT_reg init S -type string
The initial state attribute is ignored if it is applied to any cell in your design that is not a flip-flop.