2
examples/spartan6/.gitignore
vendored
Normal file
2
examples/spartan6/.gitignore
vendored
Normal file
@ -0,0 +1,2 @@
|
||||
OUT
|
||||
BUILD
|
41
examples/spartan6/CON/toplevel.ucf
Normal file
41
examples/spartan6/CON/toplevel.ucf
Normal file
@ -0,0 +1,41 @@
|
||||
NET "ACLK" LOC = P126;
|
||||
NET "ACLK" TNM_NET = "SYS_CLK_PIN";
|
||||
TIMESPEC TS_SYS_CLK_PIN = PERIOD "SYS_CLK_PIN" 10 ns HIGH 50 %;
|
||||
|
||||
NET "LED[0]" LOC = P119;
|
||||
NET "LED[0]" IOSTANDARD = LVCMOS33;
|
||||
NET "LED[0]" DRIVE = 8;
|
||||
NET "LED[1]" LOC = P118;
|
||||
NET "LED[1]" IOSTANDARD = LVCMOS33;
|
||||
NET "LED[1]" DRIVE = 8;
|
||||
NET "LED[2]" LOC = P117;
|
||||
NET "LED[2]" IOSTANDARD = LVCMOS33;
|
||||
NET "LED[2]" DRIVE = 8;
|
||||
NET "LED[3]" LOC = P116;
|
||||
NET "LED[3]" IOSTANDARD = LVCMOS33;
|
||||
NET "LED[3]" DRIVE = 8;
|
||||
NET "LED[4]" LOC = P115;
|
||||
NET "LED[4]" IOSTANDARD = LVCMOS33;
|
||||
NET "LED[4]" DRIVE = 8;
|
||||
NET "LED[5]" LOC = P114;
|
||||
NET "LED[5]" IOSTANDARD = LVCMOS33;
|
||||
NET "LED[5]" DRIVE = 8;
|
||||
NET "LED[6]" LOC = P112;
|
||||
NET "LED[6]" IOSTANDARD = LVCMOS33;
|
||||
NET "LED[6]" DRIVE = 8;
|
||||
NET "LED[7]" LOC = P111;
|
||||
NET "LED[7]" IOSTANDARD = LVCMOS33;
|
||||
NET "LED[7]" DRIVE = 8;
|
||||
|
||||
NET "SW[0]" LOC = P124;
|
||||
NET "SW[0]" IOSTANDARD = LVCMOS33;
|
||||
NET "SW[0]" PULLUP;
|
||||
NET "SW[1]" LOC = P123;
|
||||
NET "SW[1]" IOSTANDARD = LVCMOS33;
|
||||
NET "SW[1]" PULLUP;
|
||||
NET "SW[2]" LOC = P121;
|
||||
NET "SW[2]" IOSTANDARD = LVCMOS33;
|
||||
NET "SW[2]" PULLUP;
|
||||
NET "SW[3]" LOC = P120;
|
||||
NET "SW[3]" IOSTANDARD = LVCMOS33;
|
||||
NET "SW[3]" PULLUP;
|
23
examples/spartan6/RTL/toplevel.vhd
Normal file
23
examples/spartan6/RTL/toplevel.vhd
Normal file
@ -0,0 +1,23 @@
|
||||
library IEEE;
|
||||
use IEEE.STD_LOGIC_1164.all;
|
||||
use IEEE.NUMERIC_STD.all;
|
||||
entity toplevel is
|
||||
port (
|
||||
ACLK : in std_logic;
|
||||
LED : out std_logic_vector(7 downto 0);
|
||||
SW : in std_logic_vector(3 downto 0)
|
||||
);
|
||||
end toplevel;
|
||||
architecture structural of toplevel is
|
||||
signal ARESETN : std_logic;
|
||||
begin
|
||||
ARESETN <= SW(3);
|
||||
process(ACLK, ARESETN)
|
||||
begin
|
||||
if ARESETN='0' then
|
||||
LED <= "11111111";
|
||||
elsif rising_edge(ACLK) then
|
||||
LED <= SW & SW;
|
||||
end if;
|
||||
end process;
|
||||
end architecture;
|
38
examples/spartan6/SIM/tb_toplevel.vhd
Normal file
38
examples/spartan6/SIM/tb_toplevel.vhd
Normal file
@ -0,0 +1,38 @@
|
||||
library IEEE;
|
||||
use IEEE.STD_LOGIC_1164.all;
|
||||
use IEEE.NUMERIC_STD.all;
|
||||
entity tb_toplevel is
|
||||
end entity;
|
||||
architecture behavioural of tb_toplevel is
|
||||
-- COMPONENTS
|
||||
-- ----------
|
||||
component toplevel is
|
||||
port (
|
||||
ACLK : in std_logic;
|
||||
LED : out std_logic_vector(7 downto 0);
|
||||
SW : in std_logic_vector(3 downto 0)
|
||||
);
|
||||
end component;
|
||||
-- SIGNALS
|
||||
-- -------
|
||||
signal ACLK : std_logic := '0';
|
||||
signal LED : std_logic_vector(7 downto 0) := "00000000";
|
||||
signal SW : std_logic_vector(3 downto 0) := "0111";
|
||||
begin
|
||||
c_toplevel : component toplevel port map(
|
||||
ACLK, LED, SW
|
||||
);
|
||||
ACLK <= not ACLK after 10 ns;
|
||||
SW(3) <= '1' after 150 ns;
|
||||
process
|
||||
begin
|
||||
wait until SW(3)='1';
|
||||
SW(2 downto 0) <= "101";
|
||||
wait for 75 ns;
|
||||
SW(2 downto 0) <= "010";
|
||||
wait for 19 ns;
|
||||
SW(2 downto 0) <= "111";
|
||||
wait for 100 ns;
|
||||
report "END OF SIMULATION" severity failure;
|
||||
end process;
|
||||
end architecture;
|
26
examples/spartan6/project.cfg
Normal file
26
examples/spartan6/project.cfg
Normal file
@ -0,0 +1,26 @@
|
||||
[project]
|
||||
name = spartan6_project
|
||||
version = 0.1
|
||||
out_dir = OUT
|
||||
build_dir = BUILD
|
||||
|
||||
[server]
|
||||
hostname = localhost
|
||||
port = 2020
|
||||
privkey = /home/joppe/.ssh/id_rsa
|
||||
pubkey = /home/joppe/.ssh/id_rsa.pub
|
||||
|
||||
[target:default]
|
||||
family = spartan6
|
||||
device = xc6slx9
|
||||
package = tqg144
|
||||
speedgrade = -2
|
||||
toolchain = ISE
|
||||
|
||||
[build:default]
|
||||
target = default
|
||||
toplevel = toplevel
|
||||
constraints = CON/toplevel.ucf
|
||||
src_vhdl = RTL/toplevel.vhd
|
||||
src_verilog =
|
||||
src_sysverilog =
|
Reference in New Issue
Block a user