Здрасте всем, кого не видел

Есть желание поуправлять амплифаером по шине SPI при помощи ПЛИС, но вот программист из меня, как хомяк из кошки

посему не могу дописать программу. Придумал только часть, но вот в момент передачи данных по последовательной шине нужно послать (по отдельному проводу) стробирующий импульс (точнее подать 0) и завершить его (ьтобиш выставить 1) в момент окончания передачи битов данных. Может кто поможет дописать программку

Буду очень признателен.
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
---- Uncomment the following library declaration if instantiating
---- any Xilinx primitives in this code.
--library UNISIM;
--use UNISIM.VComponents.all;
entity Amplifier is
Port ( clk : in STD_LOGIC;
reset : in STD_LOGIC);
end Amplifier;
architecture Behavioral of Amplifier is
signal i2 : integer range 0 to 7 :=0;
signal tx : std_logic := '0';
signal clk2 : std_logic := '0';
signal d : std_logic_vector (7 downto 0);
shared
variable n : integer range 0 to 8 :=0;
begin
with i2 select --для деления исходного тактового
clk2 <= '1' when 4, --сигнала (50МГц) в m раз
'0' when 0,
clk2 when others;
shared
variable n : integer range 0 to 8 :=0;
begin
d <= "01010111";
count_10MHz:process (clk)
begin
if clk'event and clk = '1' then --делю исходный тактовый сигнал
if i2 = 7 then --(50МГц) в m раз
i2 <= 0; --
else --
i2 <= i2 + 1; --
end if; --
end if; --
end process count_10MHz; --
process(reset, clk2) --преобразую параллельную шину
begin --d <= "01010111" в
if reset = '0' then --последовательную
i <= 0;
tx <= '0';
n := 0;
elsif clk2'event and clk2 = '1' then
if n = 0 then
n := 7;
else
n := n - 1;
end if;
end process transmission;
tx <= d(n); --присвыивая отдельные биты числа
--d сигналу tx
end Behavioral;
т.е. в момент когда n=7 (т.е. на последовательную шину выводится старший бит данных) необходимо вывести отдельным сигналом стробирующий импульс (а лучше с опережением на 30 нс).А в момент, когда n=0 (на шине младший бит данных) необходимо перевести импульс в лог. 1, и что б эта линия из единицы уже не выходила, т.е. ввсести её в какой нить цыкл. Никак не могу в голове мысли в кучку собрать

Заранее спасибо

ИЛИ может кто подскажет, как реализовать протокол SPI на VHDL