Getting Started¶
Before stepping into the QUICK environemnt, you need to make the license service program running up. This program has to be run with root.
$> sudo bin/licserver -D
To make this service program automatically running up every time when the license server is booted, copy the file: conf/qklic.service
to /lib/systemd/system
directory. Before the copy, modify the content of the service file, replace the variable $QKHOME with the real installation path. Then run below commands:
$> sudo cp conf/qklic.service /lib/systemd/system/
$> sudo systemctl enable qklic.service
$> sudo systemctl start qklic.service
Attention
You have to restart license service manually every time when new license serial string is provided by the Vendor.
$> cp license.ini conf/license.ini
$> sudo systemctl restart qklic.service
Command Overview¶
There will be many commands in QUICK, to make it easy for user to remember, most of the commands will be sub-commands of qk, which is the main command entry. To see all the available sub-commands, run below command:
$> qk -h
usage: qk [-h] [-u CUSTOM] [-c CONF] [project] [subproject] [view] ...
positional arguments:
project Project name
subproject Subproject name
view View name
optional arguments:
-h, --help show this help message and exit
-u CUSTOM User customized path to checkout
-c CONF Configuration directory
subcommands:
add_unit Application to create project unit
config Application of project configuration
init Application to initialize a empty VOB
linkfab Application of Design Integration
memdata Application of memory data processing
patrol Application of design source overview
pinfab Application of MUX tree
regfab Application of Register Template
To get the help information of a sub-command, run:
$> qk linkfab -h
usage: qk linkfab [-h] [-f CMDFILE] [-i] [-g] [-s] [-y] [-c] [-x [DIFF]] [-d DIRECTORY] [-o OUTFILE] [-l LOGFILE] [-t TYPE]
[infile [infile ...]]
positional arguments:
infile Input design file
optional arguments:
-h, --help show this help message and exit
-f CMDFILE, --cmdfile CMDFILE
Command file
-i, --interactive Batch mode
-g, --gui GUI mode
-s, --summary Show summary
-y, --hierarchy Show hierarchy
-c, --check Check only
-x [DIFF], --diff [DIFF]
Do compare
-d DIRECTORY, --directory DIRECTORY
Generation directory
-o OUTFILE, --outfile OUTFILE
Output design file
-l LOGFILE, --logfile LOGFILE
Log file
-t TYPE, --type TYPE Design file type
For seperate tools, they are designed in similar styles; For example, they all have GUI mode and interactive mode and batch mode, they have same switches for these working mode.
To enter GUI mode:
$> qk <tool-name> -g
To enter interative mode:
$> qk <tool-name> -i
To run with batch mode:
$> qk <tool-name> -f <filename>
Template Overview¶
QUICK uses template to generate customized text file and final design source code. User can choose his familiar template engine:
Mako template
Jinja2 template
There are some builtin templates, they are located: templates/mako/<tool-name>/
.
Normally tool will use switch -t template
to specify a template, the template name can be the filename with or without extension .mako
, or just full path of filename. And template is searched in below order:
Current directory
Builtin tool template location
So when a user is developing a template, he can put the template file in current directory, and after the development is done, he can copy it to the builtin location, so that everyone can use it easily.