Mam dosyć dobre doświadczenie od ładnych paru lat z układami Xilinx'a, projekty robione pod ISE. ZYNQ - Bardzo fajna architektura, ale Vivado kładzie mnie na łopaty!!
1) Odpalam Vivado i wybieram "Create New Project". 2) Wizard pyta się o nazwę projektu, daję "Next", automat nadaje nazwę Project_1. 3) Wybieram RTL Project, bo chcę zrobić projekt w/g moich wymagań. Klikam "Next" 4) Ponieważ żadnych plików projektowych jeszcze nie mam, więc zaś klikam 4x "Next", po czym wyświetla się okno dialogowe w którym mam wybór: a) Parts b) Boards Nie mam żadnego "Evaluation Boarda", chcę robić w/g własnej koncepcji, więc wybieram (a). Konkretnie XC7Z010dg225-1. Najprostszy... Zaś klikam "Next".. No i "Finish".Jak na razie, wszystko OK! No i teraz sie k...a zaczyna..
1) Flow Navigator=>IP Integrator=>Create Block Design, okno "Diagram" jest gotowe do postawienia elementów projektowych. 2) Flow Navigator=>Project Manager=>IP Catalog=>Math Functions=>Multipliers=>Multiplier=>Dwumlask Myszy=>Add IP to Block Design 3) OK, pojawił się na schemacie multiplikator z wejściami a,b(17:0) i wyjściem c(35:0). Klikam na dziada, prawym mlaskiem myszy wybieram "Customize Block", odpala się IP generator, i... ni chuja nie da się zmienić szerokości szyny danych wejściowych. a,b pozostaje (17:0), no i oczywiście wyjazd (35:0). SZLAG MNIE TRAFIA !!4) Chcę zrobić jakiś swój własny IP. Bramka OR nabazgrana w VHDL. Chyba nic prostszego wymyśleć się nie da. Flow Navigator => Project Manager => Add Sources => Add or Create Design Sources => Next => Create File => <Nazwa> => OK => Finish
library IEEE; use IEEE.STD_LOGIC_1164.ALL;
entity Nazwa is Port ( A : in STD_LOGIC; B : in STD_LOGIC; C : out STD_LOGIC); end Nazwa;
architecture Behavioral of Nazwa is
begin
C <= A or B;
end Behavioral;
================
Gdzie i jak to wstawić do projektu ?! Xilinx publikuje mnóstwo tutoriali z plikami źródłowymi (gotowe projekty pod boardy) Wuj wie jak utworzonymi i zintegrowanymi do kupy.
=======================
Reasumując, czy ktoś z Was ma jakiś namiar na linka gdzie jest wytłumaczony sposób jak zaimplementować inverter z wykorzystaniem Vivado? Czy to w ogóle nadaje się do czegoś ?