📄 ca_code_signalofcon.vhd
字号:
---- Data: 2004,8,4;
---- // CA_Code_SignalOfCon;
---- // For the C/A Code, Generate all of the Control Signal;
---- Load_Shift : the Reset Signal for the C/A Code Generator;
---- Code_End : indicate the end of the prompt code cycle;
---- Dump : indicate the start of the next code cycle;
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity CA_Code_SignalOfCon is
Port ( CodeClk : in std_logic;
CodeClk2 : in std_logic;
Slew : in std_logic;
Reset : in std_logic;
Load_Shift : out std_logic;
Code_Phase_Count : out std_logic_vector(15 downto 0);
Code_End : out std_logic;
Dump : out std_logic
);
end CA_Code_SignalOfCon;
architecture rtl of CA_Code_SignalOfCon is
signal ClkTemp,Load_Reset : std_logic;
signal Count : integer range 0 to 2045;
signal CountOfTemp : std_logic_vector(10 downto 0);
signal Code_EndOfTemp : std_logic;
signal DumpOfTemp : std_logic;
signal Load_ShiftOfTemp : std_logic;
begin
GenerateLoad_Reset : process(ClkTemp,Reset)
begin
if Reset='0' then
Load_Reset <= '0';
elsif ClkTemp'event and ClkTemp='1' then
Load_Reset <= '1';
end if;
end process;
ClkTemp <= CodeClk and ( not Load_Reset);
CountOfCode : process(CodeClk2,Load_ShiftOfTemp)
begin
if CodeClk2'event and CodeClk2='1' then
if Load_ShiftOfTemp='0' then
Count <= 2045;
else
if Slew='1' then ------/////// Revise 9_10;
Count <= Count - 1;
end if; ------/////// Revise 9_10;
end if;
end if;
end process;
CountOfTemp <= CONV_STD_LOGIC_VECTOR(Count,11);
Code_Phase_Count <= "00000"&CountOfTemp;
GenerateCode_End : process(CodeClk2)
begin
if CodeClk2'event and CodeClk2='1' then
if Count=1 then
Code_EndOfTemp <= '1';
else
Code_EndOfTemp <= '0';
end if;
end if;
end process;
Code_End <= Code_EndOfTemp;
Generate_Load_Shift:
Load_ShiftOfTemp <= Load_Reset and ( not Code_EndOfTemp);
Load_Shift <= Load_ShiftOfTemp;
GenerateDump : process(CodeClk2)
begin
if CodeClk2'event and CodeClk2='1' then
if Count=0 then
DumpOfTemp <= '1';
else
DumpOfTemp <= '0';
end if;
end if;
end process;
Dump <= DumpOfTemp;
end rtl;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -