- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我试图用 GHDL 模拟 Xilinx GTXE2 收发器。在 GTXE2_CHANNEL.vhd 中,我收到一个错误,即在库“ieee”中找不到“std_logic_arith”。
首先,这是我的机器设置:
--std=08
,但是ghdl无法识别此选项,因此我目前正在使用VHDL-2002进行编译。但什么都没有改变。
C:\Xilinx\14.7\ISE_DS \ISE\vhdl\src\ieee
中手动包含 IEEE 源。 .但是当我编译 std_logic_arith 时,它会提示缺少 std_logic_1164,这通常是可以找到的。除此之外,std_logic_1164 中的 FOREIGN 属性也存在问题。
# board and device configuration
#vhdl poc "tb/common/my_config_KC705.vhdl"
# IEEE packages
#xilinx ieee "ieee/std_logic_1164.vhd"
#xilinx ieee "ieee/std_logic_arith.vhd"
# Xilinx Packages and Primitives
xilinx unisim "unisims/unisim_VCOMP.vhd"
xilinx unisim "unisims/unisim_VPKG.vhd"
xilinx work "unisims/primitive/FD.vhd"
xilinx work "unisims/primitive/BUFG.vhd"
xilinx work "unisims/primitive/BUFR.vhd"
xilinx work "unisims/secureip/GTXE2_CHANNEL.vhd"
C:\Program Files (x86)\GHDL\0.31\bin\ghdl.exe -a --std=02 -P. --work=poc "D:\VHDL\git\SATAController\lib\PoC\tb\common\my_config_KC705.vhdl"
GHDL Messages:
D:\VHDL\git\SATAController\lib\PoC\tb\common\my_config_KC705.vhdl:52:14:warning: package "my_config" does not require a body
C:\Program Files (x86)\GHDL\0.31\bin\ghdl.exe -a --std=02 -P. --work=unisim "C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\unisims\unisim_VCOMP.vhd"
C:\Program Files (x86)\GHDL\0.31\bin\ghdl.exe -a --std=02 -P. --work=unisim "C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\unisims\unisim_VPKG.vhd"
C:\Program Files (x86)\GHDL\0.31\bin\ghdl.exe -a --std=02 -P. --work=work "C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\unisims\primitive\FD.vhd"
C:\Program Files (x86)\GHDL\0.31\bin\ghdl.exe -a --std=02 -P. --work=work "C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\unisims\primitive\BUFG.vhd"
C:\Program Files (x86)\GHDL\0.31\bin\ghdl.exe -a --std=02 -P. --work=work "C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\unisims\primitive\BUFR.vhd"
C:\Program Files (x86)\GHDL\0.31\bin\ghdl.exe -a --std=02 -P. --work=work "C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\unisims\secureip\GTXE2_CHANNEL.vhd"
GHDL Messages:
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\unisims\secureip\GTXE2_CHANNEL.vhd:34:10: primary unit "std_logic_arith" not found in library "ieee"
PS D:\VHDL\git\SATAController\lib\PoC\temp\ghdl> & 'C:\Program Files (x86)\GHDL\0.31\bin\ghdl.exe' -a --std=02 '-P.' --work=ieee 'C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd'
GHDL Messages:
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:211:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:212:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:213:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:214:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:215:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:216:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:218:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:219:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:220:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:221:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:223:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:224:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:225:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:227:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:228:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:229:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:231:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:232:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:233:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:235:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:236:15: value of 'FOREIGN attribute does not begin with VHPIDIRECT
C:\Xilinx\14.7\ISE_DS\ISE\vhdl\src\ieee\std_logic_arith.vhd:238:15: 'FOREIGN allowed only for architectures and subprograms
最佳答案
是的,这个包包含在 ghdl 中
在 ghdl 手册或手册页中,您会发现可以选择 --ieee=synopsys
或 --ieee=mentor
作为分析和详细命令的命令行选项。
查看您的库目录:
david_koontz@Macbook: ls /opt/ghdl/ghdl_mcode/libraries/synopsys
std_logic_arith.vhdl std_logic_misc.vhdl std_logic_textio.vhdl
std_logic_misc-body.vhdl std_logic_signed.vhdl std_logic_unsigned.vhdl
david_koontz@Macbook: ls /opt/ghdl/ghdl_mcode/libraries/mentor
std_logic_arith.vhdl std_logic_arith_body.vhdl
std_logic_arith
.
-fexplicit
分析和详细说明期间的命令行选项。
-a
)或细化(
-e
)期间给出的选项遵循命令。
ieee.std_logic_1164
, 它们是预先分析的。首先尝试上述方法(更常见的是 synopsys)。请注意,指导者和 synopsys 包都不包含任何 FOREIGN 属性。 FOREIGN 属性修饰以外语编程语言实现的子程序声明(函数)。
info ghdl
或
ghdl.html
(
GHDL guide)第 5 节 VHDL 的 GHDL 实现(使用供应商库的小节,它提供了一些关于处理 unisim 的建议)。还有一节与其他语言的接口(interface)处理如何使用 FOREIGN 属性。
std_logic_arith
打包包含 FOREIGN 属性的源文件,尽管行号减四。
-- pragma map_to_operator MULT_TC_OP
-- pragma type_function MULT_SIGNED_ARG
-- pragma return_port_name Z
关于vhdl - VHDL 包 'IEEE.std_logic_arith' 是否随 ghdl 一起提供?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25837237/
我有一个 VHDL 程序,但我无法用 GHDL 详细说明它,因为要详细说明的实体在一个包中。如何使用 GHDL 详细说明包中的实体? 编辑: 感谢您的回答,过了一段时间我发现包中的代码类似于一个接口(
在用 VHDL 测试一个简单的生命游戏实现时,在打印出“测试结束”消息后,空测试台的 GHDL 模拟以 100% 的 CPU 使用率挂起。 代码如下: ----- Package ----------
几个月以来,我一直在使用 ghdl 进行学习。 现在我被迫使用 windows 并尝试在那里也使用 ghdl 和 gtkwave。 我的问题是:在我安装了 ghdl 之后,我试图编译一些代码。与: g
我写了一些vivado RTL,然后在实体的端口上添加了一些vhdl属性来定义Xilinx Vivado工具的接口(interface),如下所示: library ieee; use iee
我有一个 VHDL 测试台,我想将 32 位二进制字写入文件以进行测试。下面是一个最小的、完整的、可验证的示例。 当使用 GHDL(下面的命令)执行时,会在指示的行生成溢出。如果该行被注释掉,则执行成
我编写了一些 vhdl 代码,其中包含半加法器的实现。它只有几行代码,没有任何错误。 当我用 ghdl 编译它时,它会生成相应 vhdl 文件的 .o 文件。但是当我执行ghdl -e filenam
晚上好, 我想下载 GHDL,所以我做了这个命令: sudo apt-get install ghdl 但是我有一条消息说没有任何版本的 GHDL 包是 disponible 的,但它存在于数据库中。
我按照此步骤在我的 Debian 中安装了 GHDL 编译器,但现在我需要卸载此编译器才能安装 x64 版本,但我不能。 By downloading the binaries and unpacki
我是 ghdl 模拟器的新手,在 Windows 上使用 ghdl。我在我的电脑上安装了 ghdl (ghdl-0.33-win32) 并尝试了简单的加法器代码并且它有效。我目前需要模拟一些我使用过
我在使用 GHDL ( http://ghdl.readthedocs.io/en/latest/ ) 来模拟我的 VHDL 设计时遇到问题。所以,当我使用命令 ghdl -e Averager_tb
我试图用 GHDL 模拟 Xilinx GTXE2 收发器。在 GTXE2_CHANNEL.vhd 中,我收到一个错误,即在库“ieee”中找不到“std_logic_arith”。 首先,这是我的机
我刚刚写了一个简单的 VHDL 程序。我将文件保存为 .vhd 文件。然后我编译它 ghdl -a test.vhd 然后构建和可执行文件 ghdl -e test 最后尝试运行它 ghdl -r t
我正在尝试使用 ghdl 编译器编译 vhdl 代码。但是我缺少两个 util 库: util.misc_conv_pkg and util.vstring. 因此此代码不起作用 LIBRARY ut
我正在尝试从由 modelsim 或 ghdl 执行的模拟中转储内部信号。一切正常使用: 对于modelsim,添加vhdl源,然后编译: vsim -novopt work.uut_testbenc
我是一名优秀的程序员,十分优秀!