0

在 VHDL 中是否可以将值顺序分配给 INTEGER 类型的变量?例如,我有一个行为文件,其中包含一个矩阵,该矩阵从一个名为 DIN 的 INTEGER 类型的变量加载值。在测试台中,我认为我需要分配 DIN 可以具有的值,在这种情况下,我需要 8x8 值。当我的唯一输入是 DIN、CLK 和 START 时,我该怎么做?

4

2 回答 2

2

我假设这个问题可以解释为:“给定一个二维整数数组,我怎样才能一次初始化一个值?”

如果是这种情况,这是一个可能的解决方案:

  • 您将需要两个整数类型的内部信号来索引数组元素(例如current_rowcurrent_column
  • 您将需要一个复位信号以在初始化时将您的寄存器置于已知状态(current_row, current_column,并且您的矩阵元素应在置位复位时设置为 0)
  • 在每个时钟脉冲上,将 d_in 中的值分配给矩阵中的一个元素:matrix(current_row, current_column) <= d_in
  • 在每个时钟脉冲上进行更新current_rowcurrent_column以便它们以正确的顺序循环遍历整个矩阵

实现细节留给读者,但这应该足以让你开始。

于 2013-08-30T01:34:29.643 回答
0

您需要将顺序值存储在某种数组中,然后您的测试台可以逐步遍历数组,依次将值分配给 DIN 信号。

于 2013-08-30T11:02:34.733 回答