|
| 出处:综合电子论坛 时间: 2006-06-03 |
|
lixiaomin96 发布于 2006-5-30 20:43:00
求救VHDL牛逼的来帮帮忙 谁能把下面这个VHDL程序变换成能用MAX+PLUSⅡ仿真的VHDL程序啊求求各位大哥了!!!帮帮忙!!
library IEEE; use IEEE.std_logic_1164.all;
entity Vsvale is port ( CLOCK,RESET,NSCAR,EWCAR,TMSHORT,TMLONG: in STD_LOGIC; OVERRIDE,FLASHCLK: in STD_LOGIC; NSRED,NSYELLOW,NSGREEN: out STD_LOGIC; EWRED,EWYELLOW,EWGREEN,TMRESET: out STD_LOGIC ); end;
architecture Vsvale_arch of Vsvale is type Sreg_type is (NSGO,NSWAIT,NSWAIT2,NSDELAY, EWGO,EWWAIT,EWWAIT2,EWDELAY); signal Sreg: Sreg_type; begin
process (CLOCK) begin if CLOCK'event and CLOCK ='1'then if RESET = '1' then Sreg <= NSDELAY; else case Sreg is when NSGO => if TMSHORT='0' then Sreg <= NSGO; elsif TMLONG='1' then Sreg <= NSWAIT; elsif EWCAR='1' and NSCAR='0' then Sreg <= NSGO; elsif EWCAR='1' and NSCAR='1' then Sreg <= NSWAIT; elsif EWCAR='0' and NSCAR='1' then Sreg <= NSWAIT; else Sreg <= NSGO; end if; when NSWAIT => Sreg <= NSWAIT2; when NSWAIT2 => Sreg <= NSDELAY; when NSDELAY => Sreg <= EWGO; when EWGO => if TMSHORT='0' then Sreg <= EWGO; elsif TMLONG='1' then Sreg <= EWWAIT; elsif NSCAR='1' and EWCAR='0' then Sreg <= EWGO; elsif NSCAR='1' and EWCAR='1' then Sreg <= EWWAIT; elsif NSCAR='0' and EWCAR='1' then Sreg <= EWWAIT; else Sreg <= EWGO; end if; when EWWAIT => Sreg <= EWWAIT2; when EWWAIT2 => Sreg <= EWDELAY; when EWDELAY => Sreg <= NSGO; when others => Sreg <= NSDELAY; end case; end if; end if; end process; TMRESET <= '1' when Sreg=NSWAIT2 or Sreg=EWWAIT2 else '0'; NSRED <= FLASHCLK when OVERRIDE='1' else '1' when Sreg/=NSGO and Sreg/=NSWAIT and Sreg/=NSWAIT2 else '0'; NSYELLOW <= '0' when OVERRIDE='1' else '1' when Sreg=NSWAIT or Sreg=NSWAIT2 else '0'; NSGREEN <= '0' when OVERRIDE='1' else '1' when Sreg=NSGO else '0'; EWRED <= FLASHCLK when OVERRIDE='1' else '1' when Sreg/=EWGO and Sreg/=EWWAIT and Sreg/=EWWAIT2 else '0'; EWYELLOW <= '0' when OVERRIDE='1' else '1' when Sreg=EWWAIT or Sreg=EWWAIT2 else '0'; EWGREEN <= '0' when OVERRIDE='1' else '1' when Sreg=EWGO else '0'; end Vsvale_arch;
liurong82 发布于 2006-6-3 10:21:00
 我可以帮你做!qq179382032 |
| 【关闭】 【打印】 |
|
|
|
|