본문 바로가기

[FPGA]/XINIX

[XC3S EVM] 보드 테스트 - LED Shift (VHLD)

[XC3S EVM] 보드 테스트 - LED Shift (VHLD)


[XC3S EVM] 보드에는 테스트 및 디버깅을 위한 LED가 있다. 이를 이용하여 간단히 보드 동작 테스트나 디버깅 데이터를 출력해 볼수 있다.


LED연결 회로도
JP2를 이용하여 디버깅용 LED를 Enable/Disable 할 수 있다.
핀맵은 아래와 같다.
NET "Clk"  LOC = "P20"  ;
NET "Led<0>"  LOC = "P23"  ;
NET "Led<1>"  LOC = "P22"  ;
NET "Led<2>"  LOC = "P25"  ;
NET "Led<3>"  LOC = "P26"  ;
NET "Led<4>"  LOC = "P29"  ;
NET "Led<5>"  LOC = "P35"  ;
NET "Led<6>"  LOC = "P32"  ;
NET "Led<7>"  LOC = "P33"  ;
NET "Reset"  LOC = "P129"  ;





소스코드 (Xilinx FPGA LED Shift VHDL Code)

library ieee;
use ieee.std_logic_1164.all;

entity BoardTest is
port
(
    Clk:   in     std_logic;
    Reset:   in     std_logic; 
    Led:   out std_logic_vector(7 downto 0)
);
end BoardTest;

architecture BoardTest of BoardTest is
 component Devider
 port
    (
  Clk:        in std_logic;  
        Reset:  in std_logic;
  Clk_out: out std_logic 
    );
 end component;

    signal Devided_Clk:   std_logic;
    signal Qreg :    std_logic_vector(7 downto 0) := x"03";  --초기값 설정
begin
 U1:   Devider port map (Clk, Reset, Devided_Clk);
 LED_SHIFT:  
 process(Devided_Clk, Reset)
 begin
  if (Devided_Clk ='0' and Devided_Clk'event) then
   if Reset ='0'   then
            Qreg <= x"03";
         else
    Qreg <= Qreg(6 downto 0) & Qreg(7);  --Left Shift
   end if;
      end if;
 end process;
 
 Led <= not Qreg;
end BoardTest;



Xilinx JTAG 커넥터 연결




VHDL을 이용한 [XC3S EVM]보드 LED Shift테스트 동영상


반응형