Szukaj…


Wprowadzenie

Każdy przyzwoity język programowania obsługuje komentarze. W VHDL są one szczególnie ważne, ponieważ zrozumienie kodu VHDL, nawet umiarkowanie zaawansowanego, często stanowi wyzwanie.

Komentarze jednowierszowe

Komentarz do jednej linii zaczyna się od dwóch łączników ( -- ) i rozciąga się do końca linii. Przykład:

-- This process models the state register
process(clock, aresetn)
begin
  if aresetn = '0' then         -- Active low, asynchronous reset
    state <= IDLE;
  elsif rising_edge(clock) then -- Synchronized on the rising edge of the clock
    state <= next_state;
  end if;
end process;

Komentarze z ograniczeniami

Począwszy od wersji VHDL 2008 komentarz może rozciągać się na kilka wierszy. Komentarze wielowierszowe zaczynają się od /* i kończą na */ . Przykład:

/* This process models the state register.
   It has an active low, asynchronous reset
   and is synchronized on the rising edge
   of the clock. */
process(clock, aresetn)
begin
  if aresetn = '0' then
    state <= IDLE;
  elsif rising_edge(clock) then
    state <= next_state;
  end if;
end process;

Komentarze z ogranicznikami można także stosować w mniej niż linii:

-- Finally, we decided to skip the reset...
process(clock/*, aresetn*/)
begin
  /*if aresetn = '0' then
    state <= IDLE;
  els*/if rising_edge(clock) then
    state <= next_state;
  end if;
end process;

Zagnieżdżone komentarze

Rozpoczęcie nowego komentarza (pojedynczego wiersza lub rozdzielanego) wewnątrz komentarza (pojedynczego wiersza lub rozdzielanego) nie ma żadnego efektu i jest ignorowane. Przykłady:

-- This is a single-line comment. This second -- has no special meaning.

-- This is a single-line comment. This /* has no special meaning.

/* This is not a
single-line comment.
And this -- has no
special meaning. */

/* This is not a
single-line comment.
And this second /* has no
special meaning. */


Modified text is an extract of the original Stack Overflow Documentation
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow