辅助控制模块有四个由主控制模块控制的副本。每个辅助模块负责发送正确长度的数据有效信号并使 ROM 地址递增。数据有效信号进入 Aurora 接口以将发送的数据标记为有效。Aurora 接口能够在不同的时间将就绪信号置为无效,因此辅助模块必须将这一点考虑在内,即需要保存这些值和有效信号直到就绪信号重新置为有效。主控制模块将最大 ROM 地址发送到辅助模块。辅助模块可递增计数至该值,从而允许 ROM 以用户指定的数量发出相应行数。图 2-7 展示了主要的辅助 FSM,其中每个状态机的定义如下:
- IV_IDLE:当不需要辅助模块时(例如,当选择的加载类型为清除或置位时),辅助模块将保持在这种空闲状态。如果需要数据(加载类型 = 正常),则 FSM 进入下一个状态。
- IV_BEGIN:等待主模块发送启动信号。收到之后,辅助模块进入下一状态。否则,FSM 会保持此状态,直到 FSM 接收到启动信号或加载类型发生变化。
- IV_START:FSM 会启动发送有效信号和 ROM 地址的过程。有效信号会延迟几个时钟周期以便使 ROM 输出与有效信号对齐。
- IV_ACTIVE:一旦启动辅助模块,输出 ROM 地址的过程将继续运行,直到辅助模块到达了主模块发送的 ROM 地址。一旦到达该值,FSM 就会根据指示进入起始状态。