-
Notifications
You must be signed in to change notification settings - Fork 4
/
friscv_rv32i.ys
54 lines (48 loc) · 1.81 KB
/
friscv_rv32i.ys
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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# read design modules
read -define XLEN=32
read -incdir ../../rtl
read -sv2012 ../../rtl/friscv_csr.sv
read -sv2012 ../../rtl/friscv_registers.sv
read -sv2012 ../../rtl/friscv_alu.sv
read -sv2012 ../../rtl/friscv_control.sv
read -sv2012 ../../rtl/friscv_decoder.sv
read -sv2012 ../../rtl/friscv_memfy.sv
read -sv2012 ../../rtl/friscv_processing.sv
read -sv2012 ../../rtl/friscv_bus_perf.sv
read -sv2012 ../../rtl/friscv_scfifo.sv
read -sv2012 ../../rtl/friscv_ram.sv
read -sv2012 ../../rtl/friscv_rambe.sv
read -sv2012 ../../rtl/friscv_icache.sv
read -sv2012 ../../rtl/friscv_dcache.sv
read -sv2012 ../../rtl/friscv_cache_prefetcher.sv
read -sv2012 ../../rtl/friscv_cache_io_fetcher.sv
read -sv2012 ../../rtl/friscv_cache_block_fetcher.sv
read -sv2012 ../../rtl/friscv_cache_ooo_mgt.sv
read -sv2012 ../../rtl/friscv_cache_pusher.sv
read -sv2012 ../../rtl/friscv_cache_flusher.sv
read -sv2012 ../../rtl/friscv_cache_blocks.sv
read -sv2012 ../../rtl/friscv_cache_memctrl.sv
read -sv2012 ../../rtl/friscv_bit_sync.sv
read -sv2012 ../../rtl/friscv_checkers.sv
read -sv2012 ../../rtl/friscv_div.sv
read -sv2012 ../../rtl/friscv_m_ext.sv
read -sv2012 ../../rtl/friscv_pipeline.sv
read -sv2012 ../../rtl/friscv_rv32i_core.sv
read -sv2012 ../../rtl/friscv_axi_or_tracker.sv
read -sv2012 ../../rtl/friscv_mpu.sv
read -sv2012 ../../rtl/friscv_pmp_region.sv
read -sv2012 ../../rtl/friscv_pulser.sv
# synthsize the core
synth -top friscv_rv32i_core
# convert design to (logical) gate-level netlists
# +/adff2dff.v convert async reset to sync reset, used to mapp FFD correctly
techmap +/adff2dff.v; opt
# dffunmap
# map internal register types to the ones from the cell library
dfflibmap -liberty cmos.lib
# use ABC to map remaining logic to cells from the cell library
abc -liberty cmos.lib
# cleanup
clean
# write synthesized design
write_verilog friscv32i.v