Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
Python TeX VHDL Shell
Fetching latest commit…
Cannot retrieve the latest commit at this time.
|Failed to load latest commit information.|
This is a modification of hdlmake utility build by Pawel Szostek and Tomasz Wlostowski. The inteded modification is to allow ISE Simulation (ISim) simulation. Original project in: http://www.ohwr.org/projects/hdl-make ======================================================================= Installation Instructions (Ubuntu Linux): -> Change to a desired top directory. I will refer to it by <hdlmake2_parent_dir> 1 - cd <hdlmake2_parent_dir> -> Clone this repository. 2 - git clone git://github.com/lerwys/hdl-make2.git or 2 - git clone https://github.com/lerwys/hdl-make2.git -> Put hdlmake2 tool in the system search path. Option 1: Make a symlink to hdlmake2 tool (recommended) Option 2: Copy hdlmake2 tool into a directory searched by your terminal emulator (bash, cygwin, etc) 3 - (Option 1) sudo ln -s <hdlmake2_parent_dir>/hdl-make2/hdlmake2 \ /usr/bin/hdlmake2 or 3 - (Option 2) sudo cp <hdlmake2_parent_dir>/hdl-make2/hdlmake2 /usr/bin/ ======================================================================= Use Instructions: For further instructions on how to use hdlmake2 refer to the documents located inside the "doc" folder. You will find information regarding what is the Manifests files, how to create them and how to create makefiles for simulation and synthesis. The folder consists of two files files: 1 - hdlmake-manual.pdf: General instruction on how to create projects based on hdlmake2 (or hdlmake, as they are mostly the same except for the addtional isim support). 2 - hdlmake_quick_start.pdf: Quick start on how to create manifests file and how to call and pass arguments to on hdlmake2 (or hdlmake, as they are mostly the same except for the addtional isim support). The files are best suitable for complementary reading, in spite of what the name generally means... =] ======================================================================= Modifications: The main modification this project introducesto the original hdlmake was concerning the simulation makefile. Now, there is two simulator tools supported by hdlmake2: vsim (Modelsim simulator) and isim (xilinx simulator). They can be specified as follows (remember that the directory where the hdlmake will be called must have a top Manifest file): -> Create a makfile targeting isim (Xilinx simulator tool) $ hdlmake2 --make-isim -> Create a makefile targeting vsim (Modelsim simulator tool) $ hdlmake2 --make-vsim The other hdlmake options are left unmodified and can be specified for hdlmake2 in the same manner as the original hdlmake. ======================================================================= Simulation instructions: Go to a testbench directory. It must have a top manifest file: cd /hdl/testbench/path_to_testbench Run the following commands. You must have hdlmake2 command available in your PATH environment variable. Create the (ISim) simualation makefile $ hdlmake2 --make-isim Compile the project $ make Create the simulation executable ELF file $ make fuse TOP_MODULE=<top_level_testbench_module_without_the_extension> Execute the simulation with GUI and aditional commands $ ./isim_proj -view wave.wcfg -tclbatch isim_cmd -gui Please note that you MUST have the wave.cfg and isim_cmd files in your directory. Otherwise, compilation will fail! If you don't care about them or don't have them, you can just omit them. In this case, do the following for a GUI waveform: $ ./isim_proj -gui Or the following for raw output (no GUI): $ ./isim_proj ======================================================================= Synthesis instructions: Go to a syn directory. It must have a top manifest file: cd /hdl/top/path_to_top_design Run the following commands. You must have hdlmake2 command available in your PATH environment variable. Create the synthesis makefile and an ISE project $ hdlmake2 --make-ise --ise-proj Compile the source files locally $ make local Load the generated .bit file with iMPACT or other tool $ impact