File: synth_generic.tcl

package info (click to toggle)
nextpnr 0.0~git20210102.9b96280-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 19,268 kB
  • sloc: cpp: 158,711; python: 16,582; ansic: 9,715; sh: 573; makefile: 477; objc: 42; tcl: 21
file content (25 lines) | stat: -rw-r--r-- 627 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# Usage
# tcl synth_generic.tcl {K} {out.json}

set LUT_K 4
if {$argc > 0} { set LUT_K [lindex $argv 0] }
yosys read_verilog -lib [file dirname [file normalize $argv0]]/prims.v
yosys hierarchy -check
yosys proc
yosys flatten
yosys tribuf -logic
yosys deminout
yosys synth -run coarse
yosys memory_map
yosys opt -full
yosys techmap -map +/techmap.v
yosys opt -fast
yosys dfflegalize -cell \$_DFF_P_ 0
yosys abc -lut $LUT_K -dress
yosys clean
yosys techmap -D LUT_K=$LUT_K -map [file dirname [file normalize $argv0]]/cells_map.v
yosys clean
yosys hierarchy -check
yosys stat

if {$argc > 1} { yosys write_json [lindex $argv 1] }