[求助]QPSK调制解调的VHDL(Verilog)源代码
- UID
- 134379
- 性别
- 男
|
[求助]QPSK调制解调的VHDL(Verilog)源代码
那位大虾有 QPSK调制解调的VHDL(Verilog)源代码
小弟在此谢过了。
最好包含同步模块和相关的文档
|
|
|
|
|
|
- UID
- 136242
- 性别
- 男
|
|
|
|
|
|
- UID
- 137777
- 性别
- 男
|
|
|
|
|
|
- UID
- 132434
- 性别
- 男
|
lz要的东西 整个就是一个 完整的设计,这样的东西好像要不到 |
|
|
|
|
|
- UID
- 137777
- 性别
- 男
|
不知道是否有相关的介绍或者相似可以借鉴的源代码呢? |
|
|
|
|
|
- UID
- 132434
- 性别
- 男
|
这些东西一般只能找到调制的代码,解调和同步方面的基本没有 |
|
|
|
|
|
- UID
- 137777
- 性别
- 男
|
不知道斑竹是否有调制的代码,最近也在做这个题目,没头绪,拜谢 |
|
|
|
|
|
- UID
- 138248
- 性别
- 男
|
我也要!!!wyy790@163.com,谢谢!!! |
|
|
|
|
|
- UID
- 137777
- 性别
- 男
|
终于把调试和解调的程序编好了
请问如何将这两个模块连接起来
老师要我用量化连接,不是很懂 |
|
|
|
|
|
- UID
- 519101
- 性别
- 男
|
看看吧 交流一下 调制 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
解调 library ieee; use ieee.std_logic_arith.all; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity pl_qpsk2 is port(clk :in std_logic; start:in std_logic; x :in std_logic; y ut std_logic); end pl_qpsk2; architecture behav of pl_qpsk2 is signal q:integer range 0 to 7; signal xx:std_logic_vector(2 to 0); signal yyy:std_logic_vector(1 to 0); signal yy:std_logic_vector(2 to 0); begin process(clk) begin if clk' event and clk='1' then if start='0' then q<=0; elsif q=0 then q<=1;yy<=xx;y<=yyy(0); if x='0' then xx="001"; elsif xx<="000"; end if; elsif q=2 then q<=3; if x='0' then xx<=xx+"001"; end if; elsif q=4 then q<=5;y<=yyy(1); if x='0' then xx<=xx+"010"; end if; elsif q=6 then q<=7; if x='0' then xx<=xx+"011"; end if; else q<=q+1; end if; end if; end process; process(yy) begin if clk='1' and clk' event then if yy="101" then yyy<="00"; elsif yy="011" then yyy<="01"; elsif yy="010" then yyy<="10"; elsif yy="100" then yyy<="11"; elsif yyy<="00"; end if; end if; end process; end behav;
[此贴子已经被作者于2008-6-5 22:00:21编辑过] |
|
|
|
|
|
- UID
- 524268
- 性别
- 男
|
9楼的大哥,你那本书叫什么名字啊,推荐下哦,现在也在做这个项目,谢谢了 |
|
|
|
|
|
- UID
- 525989
- 性别
- 男
|
我做信号发生器做了QPSK的调制的 不过很大啊 有CIC滤波,有扩频 我这上网也不方便 再说这个贴我看到得太晚了 |
|
|
|
|
|
- UID
- 800232
|
我也很需要啊,先谢谢九楼的大哥,把你的代码拿回去试验下啦~ |
|
|
|
|
|