J'ai un petit projet VHDL qui fonctionne sur une carte Digilent Nexys 3 Spartan-6. L'une des entités du code divise une horloge reçue de l'extérieur par le facteur 2. Le signal d'horloge externe n'est pas très bon. Cela ressemble plus à une onde sinusoïdale qu'à un rectangle, mais c'est un problème différent. C'est le code VHDL du diviseur - il ne fait pas grand-chose:Spartan-6 temps de montée/descente de la sortie FPGA
library IEEE;
use IEEE.std_logic_1164.all;
entity mems_prescaler is
port(
aclkr : in std_logic; -- 6.144 MHz
mems_clk : out std_logic); -- 3.072 MHz
end mems_prescaler;
architecture Behavioral of mems_prescaler is
signal output : std_logic := '0';
begin
process(aclkr)
begin
if rising_edge(aclkr) then
output <= not output;
end if;
end process;
mems_clk <= output;
end Behavioral;
J'ai vérifié le signal de sortie sur la broche mis en correspondance avec mems_clk et la montée et de descente semblent très mal par rapport à ce que je pensais. C'est environ 70ns chacun. Les paramètres "Type d'inclinaison" et "Force d'entraînement" dans PlanAhead ne changent pas cela. Il n'y a rien de connecté à l'en-tête de broche PMOD sur la carte Nexys 3 à l'exception de la portée. Quelqu'un peut-il me donner un indice sur ce qu'il faut essayer? Merci!
Capture d'écran de la portée: [image] (https://i.imgsafe.org/c21869f.jpg) Jaune est l'horloge externe qui est une entrée pour le FPGA, le rouge est la sortie avec l'étrange montée et la chute fois. – Florian