Altera_Forum
Honored Contributor
18 years agoPulse Generation - Need Help
Hello all,
Following is a code that transfers paralle data to the output serially. I also need to generate two ouptut pulses (e.g. WRb and IOUD) that would low and high after the output transfer and then back to their originial state.
process (syncon, Reset)
begin
if (Reset='1') then
counter<=0;
Address<=b"000000";
Data <=b"00000000";
WRb<='1';
IOUD<='0';
elsif (syncon'Event and syncon='1') then
if(counter=0 and start1=1) then
Address <= b"000100";
Data <= reg0;
counter<=1;
WRb <= '0' ;
IOUD <= '1';
elsif(counter=1 and start1=1) then
Address <= b"000101";
Data <= reg1;
WRb <= '0';
IOUD <= '1';
end if;
elsif (syncon'Event and syncon='0') then
WRb <= '1';
IOUD <= '0';
end if;
end process;
end programmer; I have tried to use the following two statemetns elsif (syncon'Event and syncon='1') then elsif (syncon'Event and syncon='0') then and then gave opposite state values so that it will form a pulse. I get the error "Error (10822): HDL error at programmer.vhd(66): couldn't implement registers for assignments on this clock edge" on the above two lines. What seems to be the problem and how can I resolve it ? Many Thanks.