eda技术实现qpsk
调制部分:
LIBRARY IEEE; USE IEEE.STD_LOGIC_ARITH.ALL; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.STD_LOGIC_UNSIGNED.ALL; ENTITY PL_QPSK IS PORT(CLK :IN STD_LOGIC; START :IN STD_LOGIC; X :IN STD_LOGIC; Y :OUT STD_LOGIC); END PL_QPSK; ARCHITECTURE BEHAV OF PL_QPSK IS SIGNAL Q:INTEGER RANGE 0 TO 7; SIGNAL XX:STD_LOGIC_VECTOR(1 DOWNTO 0); SIGNAL YY:STD_LOGIC_VECTOR(1 DOWNTO 0); SIGNAL F:STD_LOGIC_VECTOR(3 DOWNTO 0); BEGIN PROCESS(CLK) BEGIN IF CLK' EVENT AND CLK='1' THEN IF START='0' THEN Q<=0; ELSIF Q=0 THEN Q<=1;F(3)<='1';F(1)<='0';XX(1)<=X;YY<=XX; ELSIF Q=2 THEN Q<=3;F(2)<='0';F(0)<='1'; ELSIF Q=4 THEN Q<=5;F(3)<='0';F(1)<='1';XX(1)<=X; ELSIF Q=6 THEN Q<=7;F(2)<='1';F(0)<='0'; ELSE Q<=Q+1; END IF; END IF; END PROCESS; Y<=F(0) WHEN YY="11" ELSE F(1) WHEN YY="10" ELSE F(2) WHEN YY="01" ELSE F(3); END BEHAV;
Warning: Tied undriven net XX[0] at PL_QPSK.vhd(13) to GND or VCC Warning: Reduced register YY[0] with stuck data_in port to stuck value GND Warning: Found pins functioning as undefined clocks and/or memory enables Info: Assuming node CLK is an undefined clock
[此贴子已经被作者于2006-5-7 12:54:23编辑过] |