VHDL 触发器复位不同于 0

VHDL flip-flop reset different than 0

是否有可能将触发器向量重置为不同于全 0 的值? 类似于:

PROCESS (clk)
    BEGIN
        IF RISING_EDGE(clk) THEN
            IF rst = '1' THEN
                ff <= INPUT_VALUE;
...

这无法在合成中存活下来。 我只想在重置时将值设为 ff,然后我正在更改它 - 它用作计数器,第一个值从输入设置。

如何实施正常重置,然后使用 load 信号将计数器设置为其他值?这对我来说是标准方式。

以下是一个实际可行的有趣答案:

1) 确定初始化值的位模式

2) 对于应该为 1 的每一位,在触发器之前和之后的那条线上放置一个非门。

现在复位引脚后的初始状态就是你想要的状态。