# CRIANDO A BIBLIOTECA # ==================== # Crie um diretório fixo para guardar a biblioteca. Neste # diretório, crie um sub-diretório de nome 'src' (sugestão) para quardar os # códigos-fonte em VHDL com as 'packages' vhdl. # # OBS.: O comando 'mkdir' precisa ser executado apenas 1 vez, para a # criação dos diretórios da biblioteca. mkdir -p /src cd # Editar no diretório '/src' os códigos-fonte VHDL das 'package' que # farão parte da Biblioteca desejada . # Veja como exemplo os arquivos: # http://www.inf.ufpr.br/nicolui/grad/ci068/geral/VHDL/lib/src/clocks.vhdl # http://www.inf.ufpr.br/nicolui/grad/ci068/geral/VHDL/lib/src/portas.vhdl # gedit src/.vhdl ...... gedit src/.vhdl # No diretório , compilar o código-fonte VHDL ghdl -a -work= -P src/.vhdl ... src/.vhdl # No diretório são criados os arquivos .o, # ..., .o e -obj93.cf # Por exemplo, se os arquivos VHDL "clocks.vhdl" e "portas.vhdl" formam # a biblioteca "ci068", e o diretório da biblioteca é "${HOME}/lib/vhdl" # teríamos: mkdir -p ${HOME}/lib/vhdl/src cd ${HOME}/lib/vhdl gedit src/clocks.vhdl gedit src/portas.vhdl ghdl -a -work=ci068 -P${HOME}/lib/vhdl src/clocks.vhdl src/portas.vhdl # No exemplo acima, no diretório '${HOME}/lib/vhdl' são criados os # arquivos 'clocks.o', 'portas.o' e 'ci068-obj93.cf' # USANDO A BIBLIOTECA # =================== # # Ao editar os arquivos VHDL de seu projeto, use o cabeçalho abaixo para # cada entity em seu arquivo que use os componentes da biblioteca: # # library IEEE, ; # use IEEE.std_logic_1164.all; # use ..all; # ......... # ......... # use ..all; # # Nas seções 'arquitecture' não se coloca 'component' para os # componentes que estão na biblioteca incluída no cabeçalho. # # Veja exemplos em: # http://www.inf.ufpr.br/nicolui/grad/ci068/geral/VHDL/exemplos/clock_lib.vhdl # http://www.inf.ufpr.br/nicolui/grad/ci068/geral/VHDL/exemplos/registrador_lib.vhdl # # COMPILANDO SEUS PROJETOS # ======================== # # Na receita de compilação já existente, acrescentar a opção # '-P' em cada comando 'ghdl': # gedit circuito.vhdl ghdl -a -P${HOME}/lib/vhdl circuito.vhdl ghdl -e -P${HOME}/lib/vhdl teste ghdl -r -P${HOME}/lib/vhdl teste --vcd=teste.vcd gtkwave teste.vcd