OK. What is wrong with this code? I am expecting to initiate the SRL16 with some sort of pattern, then loop it around continuously in a 10 bit pattern, put it to a pad where I can see it with a scope. I get a one little blip but not much.
library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL;
library UNISIM; use UNISIM.VComponents.all;
entity srltest is port( clk : in std_ulogic; q : out std_ulogic ); end srltest;
architecture Behavioral of srltest is
component SRL16 -- synthesis translate_off generic ( INIT: bit_value:= X"1001"); -- synthesis translate_on port (Q : out STD_ULOGIC;
A0 : in STD_ULOGIC; A1 : in STD_ULOGIC; A2 : in STD_ULOGIC; A3 : in STD_ULOGIC; CLK : in STD_ULOGIC; D : in STD_ULOGIC); end component; -- Component Attribute specification for SRL16 -- should be placed after architecture declaration but -- before the begin keyword -- Enter attributes in this section -- Component Instantiation for SRL16 should be placed -- in architecture after the begin keyword
signal feedback : std_ulogic;
begin
SRL16_INSTANCE_NAME : SRL16 -- synthesis translate_off generic map( INIT => X"7878" ) -- synthesis translate_on port map (Q => feedback , A0 => '0', A1 => '1', A2 => '0', A3 => '1', CLK => clk, D => feedback );
q