Перейти к содержанию
    

Генератор кода Грея

Подскажите плиз как написать на VHDL генератор кода Грея произвольной разрядности (надо для тестбенча) просто чтобы по заданной тактовой частоте по кругу гонялись все его сосотяния. Или подскажите конкретное место где про это можно прочитать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

конвертация из бинарного в Грэй выглядит как

 

gray_sig <= (bin_sig >> 1) ^ bin_sig;

 

здесь >> - это сдвиг влево с добавлением нуля

^ - XOR

 

по кругу можете двоичный сигнал суммировать

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Подскажите плиз как написать на VHDL генератор кода Грея произвольной разрядности (надо для тестбенча) просто чтобы по заданной тактовой частоте по кругу гонялись все его сосотяния. Или подскажите конкретное место где про это можно прочитать.

 

автоматизированными поисковыми системами принципиально не пользуемся?

 

http://rain.ifmo.ru/cat/view.php/vis/coding/gray-2003

http://aforge.ibd.lv/?32

VHDL: http://www.isibrno.cz/~ivovi/gray_counter.pdf

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

 

автоматизированными поисковыми системами принципиально не пользуемся?

 

http://rain.ifmo.ru/cat/view.php/vis/coding/gray-2003

http://aforge.ibd.lv/?32

VHDL: http://www.isibrno.cz/~ivovi/gray_counter.pdf

 

Что такое код Грея я представляю. Основная трудность именно в написании на VHDL т.к. недавно начал осваивать. Еслиб кто-нибудь кинул ссылку на пример на VHDL'е был бы очень признателен.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

VHDL: http://www.isibrno.cz/~ivovi/gray_counter.pdf

переходите на Верилог - будет меньше проблем B)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

VHDL: http://www.isibrno.cz/~ivovi/gray_counter.pdf

переходите на Верилог - будет меньше проблем  B)

 

Не факт :))), С верилогом иногда можно больше мучаться

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну для того чтоб сконвертировать бинарный код в код грея можно воспользоваться простейшими коре - например так:

 

library IEEE;

use IEEE.std_logic_1164.all;

 

entity conv is

port (

I : in std_logic_vector (3 downto 0);

EN : in std_logic;

O : out std_logic_vector (3 downto 0)

);

end entity;

 

--}} End of automatically maintained section

 

architecture conv_arch of conv is

begin

 

O(0) <= (I(0) xor I(1)) and EN;

O(1) <= (I(1) xor I(2)) and EN;

O(2) <= (I(2) xor I(3)) and EN;

O(3) <= I(3) and EN;

 

end architecture;

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...