eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.misc.elektronikaGenerator strzelajacy pojedynczymi impulsamiRe: Generator strzelajacy pojedynczymi impulsami
  • Data: 2014-12-26 12:22:07
    Temat: Re: Generator strzelajacy pojedynczymi impulsami
    Od: s...@g...com szukaj wiadomości tego autora
    [ pokaż wszystkie nagłówki ]

    W dniu piątek, 26 grudnia 2014 11:41:33 UTC+1 użytkownik Artur Miller napisał:
    > W dniu 2014-12-26 o 04:19, Tornad pisze:
    > > On Thursday, December 25, 2014 6:44:44 PM UTC-5, Artur Miller wrote:
    > >> 2 nanosekundy to kawał czasu :) wziąłbym jakąś FPGA do tego...
    > > Dzieki a zainteresowanie i odzew. Tylko ja nie wiem co to jest?
    > >
    > > Powaznie; nie napisalem, ze moja edukacja elektroniczna zostala gwaltownie
    > > przerwana ze 20 lat temu... Wiec prosze o wiecej szczegolow albo podpowiedz
    > > co to ten FPGA je? Moze byc tez abc dostepne w necie.
    > > I w jakim, juz nie kawalku ale kawale czasu ten uklad sie "resetuje" aby
    przyjac nastepny impuls wyzwalajacy?
    > >
    >
    > uhh... to bedzie ciężko zacząć od zera ;)
    > na szybko i dużo prościej można zrobić to na bramkach logicznych.
    >
    > nasz układ generowania impulsów niech ma wejście WE i wyjście WY.
    > bierzemy bramkę XOR. niech ma 2 wejścia - XA i XB oraz wyjście XQ.
    > do XA podłączamy bezpośrednio WE, a do XB wyjście szeregowo połączonej
    > parzystej liczby inwerterów. Wejście tego szeregu łączymy również z WE.
    >
    > układ ten będzie generował impulsy przy opadającym i rosnącym zboczu
    > sygnału na WE. jeśli sygnał ten nie jest "cyfrowy", potrzebujemy dodać
    > bramkę z przerzutnikiem Schmitta.
    >
    > Czas trwania generowanego impulsu będzie równy czasowi propagacji
    > sygnału przez szeregowo połączone inwertery. będzie powatrzalny w
    > krótkim czasie, w długim zależny od temperatury. Trikiem jest
    > częstotliwość wejściowa, trzeba będzie zastosować uklady TTL-F albo
    > nawet ECL, gdzie czas propagacji to kilkadziesiąt ps / inwerter. mogą
    > być trudno dostępne.
    >

    Wadą jest czas trwania impulsu zależny od temperatury, zasilania i takich tam..
    Ja istotnie zrobiłbym to na jakimś najtańszym spartanie. RST do masy, CLK napędzać z
    PLL'a na 500+ MHz. Poniżej gotowiec:

    library IEEE;
    use IEEE.std_logic_1164.all;
    use IEEE.std_logic_arith.all;
    use IEEE.std_logic_unsigned.all;

    entity Impulsator is
    port (
    CLK: in STD_LOGIC;
    RST: in STD_LOGIC;
    WJAZD: in STD_LOGIC;
    WYJAZD: out STD_LOGIC);
    end Impulsator;

    architecture Impulsator_arch of Impulsator is


    type Sreg0_type is (
    CZEKAJ_NA_WJAZD, SHOT, PETLA
    );


    signal Sreg0: Sreg0_type;

    begin



    Sreg0_machine: process (CLK, rst)
    begin
    if RST='1' then
    Sreg0 <= CZEKAJ_NA_WJAZD;

    WYJAZD <= '0';
    elsif CLK'event and CLK = '1' then

    case Sreg0 is
    when CZEKAJ_NA_WJAZD =>
    WYJAZD <= '0';
    if WJAZD='0' then
    Sreg0 <= CZEKAJ_NA_WJAZD;
    else
    Sreg0 <= SHOT;
    end if;
    when SHOT =>
    WYJAZD <= '1';
    Sreg0 <= PETLA;
    when PETLA =>
    WYJAZD <= '0';
    if WJAZD='1' then
    Sreg0 <= PETLA;
    else
    Sreg0 <= CZEKAJ_NA_WJAZD;
    end if;

    when others =>
    null;

    end case;
    end if;
    end process;

    end Impulsator_arch;

Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: