Микроконтролери и електроника
http://mcu-bg.com/mcu_site/

Как се създава компонент на VHDL?
http://mcu-bg.com/mcu_site/viewtopic.php?f=3&t=1405
Страница 1 от 1

Автор:  s_stavrev [ Съб Дек 10, 2005 10:27 pm ]
Заглавие:  Как се създава компонент на VHDL?

Здравейте,
когато съм създал entity-architecture и този готов дизайн искам да го запазя като компонент за да го използвам наготово в следващи проекти - как става това? Ползвам WebPack на Xilinx. VHDL.

Автор:  BrainStorm [ Съб Дек 10, 2005 11:48 pm ]
Заглавие: 

Ами в Verilog става по следния начин ... (предполагам че и с VHDL е аналогично) ...

Значи записваш си модула в един отделен фаил ... и когато ти се иска да го ползваш в някои проект просто го добавяш в списъка с фаилове принадлежащи на проекта ... и след това го сдефинираш в главния модул ... дефиницяата е както следва ...

оргинално_име ново_име(.A(_A), .B(_B), .C(_C));

Като името на сигнала в скобите трябва да е име на съществуващ сигнал в главния модул с които да бъде асоцийран съответния сигнал пред скобите ... (имената може и да съвпадат) ...

Оргиналното име на модула е името с което си го записал в външния фаил ...

Новото е това с което ще го дефинираш в главния модул ....

Автор:  Svetoslav40 [ Нед Дек 11, 2005 1:20 am ]
Заглавие: 

извинете за въпроса, ама....за какво става дума тука? VHDL, VERILOG?????

Автор:  s_stavrev [ Нед Дек 11, 2005 10:48 am ]
Заглавие:  Ползвам WebPack на Xilinx. VHDL.

Ползвам WebPack на Xilinx. VHDL. По-горе си го пише.

Автор:  Zdrav [ Нед Дек 11, 2005 11:04 am ]
Заглавие: 

С VHDL става по подобен начин. Запомняш го в отделен файл. Добавяш го към новия проект. В новия проект имаш един файл предполагам който ти е основен и внего го декларираш като COMPONENT.
Например:

architecture ... of ... is
...
COMPONENT nXOR15
PORT(
A : IN std_logic_vector(14 downto 0);
B : IN std_logic_vector(14 downto 0);
C : OUT std_logic_vector(14 downto 0)
);
END COMPONENT;
... други компоненти
attribute
...
signal
...
begin
...

Автор:  s_stavrev [ Пон Дек 12, 2005 11:39 am ]
Заглавие:  Стана!

:) Благодаря Ви :) , стана!
Ето точно как го направих (един обикновен инвертор):


-- VHD ФАЙЛ С ГЛАВНИЯ ДИЗАЙН
architecture Behavioral of main is
...
...
signal a_and_b :std_logic; --някакъв вътрешен сигнал
--декларация на компонента
component inverter
port (i : in std_logic;
o : out std_logic);
end component;
...
...
begin
--инстанциране на компонента
INV1 : inverter
port map (i=>a_and_b,o=>c);


-------------------------------------------------
--VHD ФАЙЛ С МОДЕЛА НА КОМПОНЕНТА
....
entity inverter is
Port ( i : in std_logic;
o : out std_logic);
end inverter;

architecture Behavioral of inverter is
begin
o<=not i;
end Behavioral;

Страница 1 от 1 Часовете са според зоната UTC + 2 часа [ DST ]
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
http://www.phpbb.com/