std_logic
해상도 기능이 있습니다
및 std_logic
보다 유용한 상태를 가질 뿐만 아니라 해상도 함수도 정의되어 있습니다.1
0
해상도 기능은 VHDL 언어 개념입니다. 유형과 관련된 함수이며 해당 유형의 여러 값이 단일 신호에 적용될 때 발생하는 결과를 결정합니다. 구문은 다음과 같습니다.
SUBTYPE std_logic IS resolved std_ulogic;
std_ulogic
의 해결되지 않은 (따라서 훨씬 덜 유용한) 버전은 어디에 있습니까 std_logic
?
특히,이 좋은 같은 것들을 의미 0
와 1
리드에를 X
:
library ieee;
use ieee.std_logic_1164.all;
entity std_logic_tb is
end std_logic_tb;
architecture behav of std_logic_tb is
signal s0 : std_logic;
begin
s0 <= '0';
s0 <= '1';
process
begin
wait for 1 ns;
assert s0 = 'X';
wait;
end process;
end behav;
우리 X
는 하나의 와이어에 여러 개의 호환되지 않는 값이 적용된 상태로 이해 하기 때문에 직관적 입니다.
std_logic
또한 LRM에있는 표에 따라 가능한 모든 입력 신호 쌍을 해결하는 방법을 알고 있습니다.
bit
반면에, 해상도 기능이 없으며, 위의 예에서 사용한 경우 GHDL 0.34에서 시뮬레이션 오류가 발생합니다.
가능한 값은 IEEE 1164에std_logic
의해 표준화되고 많은 일반적인 사용 사례를 다루기 때문에 좋은 선택 입니다.