- 신규로 표시
- 북마크
- 구독
- 소거
- RSS 피드 구독
- 강조
- 인쇄
- 부적절한 컨텐트 신고
I used the following code for 4bit siso shift register.
Signal temp : std_logic_vector( 3downtown 0); begin process begin if(rising_edge(clk)) then temp(3 downtown 1)<=temp(2 downto 0); temp(0)<=si; end if; end process; so<=temp(3); end behavioural; I used the following testbench code. clk<= '0'; si<='1'; wait for 100ns; clk<= '1'; si<='1'; wait for 100ns; But after stimulation its shows that so is undefined i.e a red bar is shown.... Pls help......링크가 복사됨
6 응답
- 신규로 표시
- 북마크
- 구독
- 소거
- RSS 피드 구독
- 강조
- 인쇄
- 부적절한 컨텐트 신고
You only show a single clock in the testbench code. It will take 4 clocks for si to propogate to so.
- 신규로 표시
- 북마크
- 구독
- 소거
- RSS 피드 구독
- 강조
- 인쇄
- 부적절한 컨텐트 신고
clk<= '0';
si<='1'; wait for 100ns; clk<= '1'; si<='1'; wait for 100ns; clk<= '0'; si<='1'; wait for 100ns; clk<= '1'; si<='1'; wait for 100ns; clk<= '0'; si<='1'; wait for 100ns; clk<= '1'; si<='1'; wait for 100ns; clk<= '0'; si<='1'; wait for 100ns; clk<= '1'; si<='1'; wait for 100ns; I have used the above coding..... Even if I use 4 clocks its still shows the red bar- 신규로 표시
- 북마크
- 구독
- 소거
- RSS 피드 구독
- 강조
- 인쇄
- 부적절한 컨텐트 신고
did you try to initialize temp(3 downto 0) to an initial value? If not you need at least 4 clock edges to get "so" "green"
if "red" it would be that you never put anything on it...- 신규로 표시
- 북마크
- 구독
- 소거
- RSS 피드 구독
- 강조
- 인쇄
- 부적절한 컨텐트 신고
AND , you have to put "clock" in the process sensitivity list....
