📄 pl_dpsk2.vhd
字号:
library ieee;
use ieee.std_logic_arith.all;
use ieee.std_logic_1164.all;
use ieee.std_logic_unsigned.all;
entity PL_DPSK2 is
port(clk :in std_logic; --系统时钟
x :in std_logic; --整形后的方波输入信号
y :out std_logic); --绝对码输出信号
end PL_DPSK2;
architecture behav of PL_DPSK2 is
signal q:integer range 0 to 511:=0; --计数器
signal xx1,xx2:std_logic; --寄存相对码
begin
process(clk,x) --此进程完成相对码到绝对码的转换
begin
if clk'event and clk='1' then
if q=0 then q<=1;xx1<=x;xx2<=xx1; --用xx2寄存前一个码元周期内的相对码信号
--用xx1寄存当前周期的相对码信号
elsif q=1 then q<=2;
if xx1=xx2 then y<='0';--如果相对码没有变化,则解调出'0'
else y<='1'; --如果相对码发生变化,则解调出'1'
end if;
else q<=q+1;
end if;
end if;
end process;
end behav;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -