Skip to content

Integration

Patrick Lehmann edited this page Jul 17, 2015 · 5 revisions

All Windows command line instructions are intended for Windows PowerShell. So executing the following instructions in cmd.exe won't function or result in errors! PowerShell is shipped with Windows since Windows Vista.

4.1 Adding the library and it's dependencies as git submodules

The following command line instructions will create a library folder /lib and clone all depenencies as git submodules into subfolders.

cd <ProjectRoot>
mkdir lib -ErrorAction SilentlyContinue; cd lib

git submodule add [email protected]:VLSI-EDA/PoC.git PoC
git add .gitmodules PoC
git commit -m "Added new git submodule PoC in 'lib\PoC' (PoC-Library)."

git submodule add [email protected]:Paebbels/PicoBlaze-Library.git L_PicoBlaze
git add .gitmodules L_PicoBlaze
git commit -m "Added new git submodule L_PicoBlaze in 'lib\L_PicoBlaze' (PicoBalze-Library)."

git submodule add [email protected]:Paebbels/opbasm.git opbasm
git add .gitmodules opbasm
git commit -m "Added new git submodule opbasm in 'lib\opbasm' (Open PicoBlaze Assembler)."

4.2 Configuring PoC on a local system

To run PoC's automated testbenches or use the netlist compilaltion scripts of PoC, it's required to configure a synthesis and simulation tool chain.

cd <ProjectRoot>
cd lib\PoC\
.\poc.ps1 --configure

4.3 Compiling shipped Xilinx IPCores (*.xco files) to netlists

The PicoBlaze Library and the PoC Library are shipped with some pre-configured IPCores from Xilinx. These IPCores are shipped as *.xco files and need to be compiled to netlists (*.ngc files) and there auxillary files (*.ncf files; *.vhdl files; ...). This can be done by invoking PoC's Netlist.py through one of the provided wrapper scripts: netlist.[sh|ps1].

Compiling needed IPCores from PoC for a KC705 board:

cd <ProjectRoot>
cd lib\PoC\netlist
foreach ($i in 1..15) {
  .\netlist.ps1 --coregen PoC.xil.ChipScopeICON_$i --board KC705
}

Compiling needed IPCores from L_PicoBlaze for a KC705 board:

cd ....
cd lib\L_PicoBlaze\netlist\<DeviceString>\
# TODO: write a script to regenerate all IP Cores

Clone this wiki locally