Chào các bác,em đang học môn PLD & ASIC, thực hành trên kit Nexys spartan 3e,có đoạn code chia xung 50Mhz thành xung 1Hz mà em đọc hoài không hiểu,các bác nào thông thạo chỉ giùm em với
entity chiaxung is
Port ( CK50MHZ : in STD_LOGIC;
CK1HZ : in STD_LOGIC
);
end DEM_NP4BIT;
architecture Behavioral of DEM_NP4BIT is
SIGNAL CHIA: INTEGER RANGE 0 TO 25000000:=0;
SIGNAL CK1HZT: STD_LOGIC:='0';
begin
PROCESS(CHIA,CK50MHZ,CK1HZT)
BEGIN
IF FALLING_EDGE(CK50MHZ) THEN
IF CHIA=25000000 THEN CHIA <=0;
CK1HZT <= NOT CK1HZT;
CHIA <= CHIA +1;
END IF;
END IF;
CK1HZT<=CK1HZT;
END PROCESS;
end Behavioral;
EM XIN CẢM ƠN (BÁC NÀO LÀM ƠN GIẢI THÍCH CẶN KẼ TÍ GIÙM EM VỚI NHA :d)
entity chiaxung is
Port ( CK50MHZ : in STD_LOGIC;
CK1HZ : in STD_LOGIC
);
end DEM_NP4BIT;
architecture Behavioral of DEM_NP4BIT is
SIGNAL CHIA: INTEGER RANGE 0 TO 25000000:=0;
SIGNAL CK1HZT: STD_LOGIC:='0';
begin
PROCESS(CHIA,CK50MHZ,CK1HZT)
BEGIN
IF FALLING_EDGE(CK50MHZ) THEN
IF CHIA=25000000 THEN CHIA <=0;
CK1HZT <= NOT CK1HZT;
CHIA <= CHIA +1;
END IF;
END IF;
CK1HZT<=CK1HZT;
END PROCESS;
end Behavioral;
EM XIN CẢM ƠN (BÁC NÀO LÀM ƠN GIẢI THÍCH CẶN KẼ TÍ GIÙM EM VỚI NHA :d)
Comment