TE0720でLED点滅--その4
5.合成・インプリメンテーションする
作成したファイルを開くと自動生成されたコードが書かれています。
このファイルの内容を下記のように編集してください。
--blink.vhd library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; use IEEE.NUMERIC_STD.ALL; entity blink is Port ( clk50_i : in STD_LOGIC; led_o : out STD_LOGIC); end blink; architecture Behavioral of blink is signal clk50 : std_logic; signal timer : std_logic_vector(23 downto 0); signal led : std_logic_vector(7 downto 0); begin clk50 <= clk50_i; led_o <= led(1); process(clk50) begin if(clk50'event and clk50 = '1')then if(timer = 49999999)then timer <= (others => '0'); led <= led + 1; else timer <= timer + 1; end if; end if; end process; end Behavioral;
Flow Navigator の Synthesis から Run Synthesis をクリックして論理合成をしてください。 論理合成が正常に終了すると Synthesis Completed ウィンドウが開きます。Run Implementation を選択して OK をクリックしてください。 合成に失敗してエラーが出た場合はソースコードにミスがないかを確認し、再度論理合成をしてください。
Implementationが終了したらImplementation Completed ウィンドウが開きます。
今回は何もしないので、 Cancel をクリックして終了してください。
ツールバー上のレイアウトタブを開いて I/O Planning を選択してください。
I/O Planning の画面が表示されます。I/O Ports を下表のように設定してください。
Port Name | Direction | Site | I/O Std |
clk50_i | in | Y18 | LVCMOS33 |
led_o | out | R21 | LVCMOS33 |
Flow Navigator にある Program and Debug 内の Generate Bitstream をクリックしてください。
このとき次のようなウィンドウが出ます。 File name を 「blink_master」 として OK をクリックしてください。
*.bit ファイルは (プロジェクトのディレクトリ)/blink.runs/impl_1/ に作成されます。