Quartus II是否使用相同的文本抑制报告消息?

时间:2015-08-17 22:04:36

标签: vhdl synthesis quartus

我正在将一个Xilinx ISE项目移植到Quartus II。当我编译该项目时,Quartus崩溃并出现错误:*** Fatal Error: Access Violation at 0X000007FE88160DE1。所以我试图将错误缩小到一个最小的例子,这将引导我一个隐藏的VHDL错误或一个小例子,我可以发送给Altera。

该项目使用VHDL数据结构(基本类型的向量记录向量记录)来描述SoC设置。简化的结构如下所示:

SoFPGA System
o-DeviceInstances
| o-Device
|   o-Registers
|   | o-Bitfields
|   o-RegisterMappings
o-Busses

我想向综合日志报告完整的结构,但如果消息文本已经打印到日志中,Quartus II似乎会隐藏消息。

示例:

Info (10635): ... at pb.pkg.vhdl(1228): "DeviceInstance 1:" (NOTE)
Info (10635): ... at pb.pkg.vhdl(1229): "  DeviceInstance: Mult32" (NOTE)
Info (10635): ... at pb.pkg.vhdl(1230): "    Device: Mult32" (NOTE)
Info (10635): ... at pb.pkg.vhdl(1234): "        0: OperandA0 Reg#=0 WR" (NOTE)
Info (10635): ... at pb.pkg.vhdl(1241): "          0: FieldID=0 (OperandA)" (NOTE)
Info (10635): ... at pb.pkg.vhdl(1234): "        1: OperandA1 Reg#=1 WR" (NOTE)
Info (10635): ... at pb.pkg.vhdl(1234): "        2: OperandA2 Reg#=2 WR" (NOTE)
Info (10635): ... at pb.pkg.vhdl(1234): "        3: OperandA3 Reg#=3 WR" (NOTE)
Info (10635): ... at pb.pkg.vhdl(1234): "        4: OperandB0 Reg#=4 WR" (NOTE)
Info (10635): ... at pb.pkg.vhdl(1241): "          0: FieldID=1 (OperandB)" (NOTE)
Info (10635): ... at pb.pkg.vhdl(1234): "        5: OperandB1 Reg#=5 WR" (NOTE)
Info (10635): ... at pb.pkg.vhdl(1234): "        6: OperandB2 Reg#=6 WR" (NOTE)
Info (10635): ... at pb.pkg.vhdl(1234): "        7: OperandB3 Reg#=7 WR" (NOTE)

每个'操作数[A | B]'只打印一次'FieldID'消息。操作数A1,A2,A3和B1,B2,B3之后没有FieldID行。

所以我尝试在每个报告行中添加一个唯一编号(salt)。为此我定义了一个共享变量,并定义了一个函数salty,它在每个报表语句中递增salt。

变量和功能:

shared variable salt : NATURAL := 0;

impure function salty return STRING is
begin
  salt := salt + 1;
  return INTEGER'image(salt);
end function;

用法:

report salty & "pb_CreateRegisterRO:" severity NOTE;

但不幸的是,咸总是返回“0”。 Quartus II支持VHDL'08功能。我应该将共享变量实现为受保护类型并在VHDL'08模式下编译吗?

如何将所有报告声明行打印到综合报告中?

非主题问题:
是否有人有兴趣帮助我找到Quartus崩溃的原因?我将项目剥离为6个VHDL文件。我认为这个问题是针对SO问题的。 Contact

0 个答案:

没有答案