verilog语句 assign Y= flag?(en?1'bz:a):1'b0;怎么转为vhdl
verilog 如下:assign Y= flag?(en?1'bz:a):1'b0;
这个逻辑用VHDL如何描述呢 library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity verilogtovhdl is
port
(
flag : in std_logic;
en : in std_logic;
a : in std_logic;
Y : out std_logic
);
end verilogtovhdl;
architecture behave of verilogtovhdl is
begin
process(flag,en,a)
begin
if flag = '1' then
if en = '1' then
Y <= 'Z';
else
Y <= a;
end if;
else
Y <= '0';
end if;
end process;
end behave;
语法本身应该没有问题,你看看组合逻辑是否满足你项目需要?我用两个FPGA的开发软件,单独语法检测是通过的
用VERILOG 吧XILINX 的参考代码都是VERILOG身边也没人用VHDL了 ackyee 发表于 2021-5-20 09:04
用VERILOG 吧XILINX 的参考代码都是VERILOG身边也没人用VHDL了
老板用的VHDL{:sad:} bj232 发表于 2021-5-19 22:03
语法本身应该没有问题,你看看组合逻辑是否满足你项目需要?我用两个FPGA的开发软件,单独语法检测是通过的 ...
好的,谢谢
页:
[1]