diff options
| author | Tristan Gingold <tgingold@free.fr> | 2021-05-24 19:12:55 +0200 | 
|---|---|---|
| committer | Tristan Gingold <tgingold@free.fr> | 2021-05-24 19:12:55 +0200 | 
| commit | bef358e169c4ff01c9815bda105f26f7c999cf10 (patch) | |
| tree | 234522859f9f71b6661c05de9bcd0af4315227c8 | |
| parent | 626f7229e068914434c6d421dfc2ea7318e265c4 (diff) | |
| download | ghdl-bef358e169c4ff01c9815bda105f26f7c999cf10.tar.gz ghdl-bef358e169c4ff01c9815bda105f26f7c999cf10.tar.bz2 ghdl-bef358e169c4ff01c9815bda105f26f7c999cf10.zip  | |
testsuite/synth: add tests for previous commit
| -rw-r--r-- | testsuite/synth/mem02/ram8.vhdl | 23 | ||||
| -rw-r--r-- | testsuite/synth/mem02/ram9.vhdl | 23 | ||||
| -rwxr-xr-x | testsuite/synth/mem02/testsuite.sh | 3 | 
3 files changed, 49 insertions, 0 deletions
diff --git a/testsuite/synth/mem02/ram8.vhdl b/testsuite/synth/mem02/ram8.vhdl new file mode 100644 index 000000000..93160f584 --- /dev/null +++ b/testsuite/synth/mem02/ram8.vhdl @@ -0,0 +1,23 @@ +library ieee; +use ieee.std_logic_1164.all; +use ieee.numeric_std.all; + +entity ram8 is +  port (val : out std_logic_vector (7 downto 0); +        addr : std_logic_vector (3 downto 0); +        clk : std_logic); +end ram8; + +architecture behav of ram8 is +  type mem_t is array (15 downto 0) of std_logic_vector(7 downto 0); +  signal mem : mem_t; +begin +  process (clk) +    variable ra : natural; +  begin +    if rising_edge (clk) then +      ra := to_integer(unsigned (addr)); +      val <= mem(ra); +    end if; +  end process; +end behav; diff --git a/testsuite/synth/mem02/ram9.vhdl b/testsuite/synth/mem02/ram9.vhdl new file mode 100644 index 000000000..71b30f6a3 --- /dev/null +++ b/testsuite/synth/mem02/ram9.vhdl @@ -0,0 +1,23 @@ +library ieee; +use ieee.std_logic_1164.all; +use ieee.numeric_std.all; + +entity ram8 is +  port (val : out std_logic_vector (7 downto 0); +        addr : std_logic_vector (3 downto 0); +        clk : std_logic); +end ram8; + +architecture behav of ram8 is +begin +  process (clk) +    type mem_t is array (15 downto 0) of std_logic_vector(7 downto 0); +    variable mem : mem_t; +    variable ra : natural; +  begin +    if rising_edge (clk) then +      ra := to_integer(unsigned (addr)); +      val <= mem(ra); +    end if; +  end process; +end behav; diff --git a/testsuite/synth/mem02/testsuite.sh b/testsuite/synth/mem02/testsuite.sh index bd199178b..fd8a749c3 100755 --- a/testsuite/synth/mem02/testsuite.sh +++ b/testsuite/synth/mem02/testsuite.sh @@ -13,4 +13,7 @@ for t in dpram1 ram3 ram4 ram6; do      clean  done +synth ram8.vhdl -e > syn_ram8.vhdl +synth ram9.vhdl -e > syn_ram9.vhdl +  echo "Test successful"  | 
