mirror of
				https://github.com/YosysHQ/yosys
				synced 2025-11-04 13:29:12 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			116 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			116 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
Checklist for adding internal cell types
 | 
						|
========================================
 | 
						|
 | 
						|
Things to do right away:
 | 
						|
 | 
						|
	- Add to kernel/celltypes.h (incl. eval() handling for non-mem cells)
 | 
						|
	- Add to InternalCellChecker::check() in kernel/rtlil.cc
 | 
						|
	- Add to techlibs/common/simlib.v
 | 
						|
	- Add to techlibs/common/techmap.v
 | 
						|
 | 
						|
Things to do after finalizing the cell interface:
 | 
						|
 | 
						|
	- Add support to kernel/satgen.h for the new cell type
 | 
						|
	- Add to docs/source/CHAPTER_CellLib.rst (or just add a fixme to the bottom)
 | 
						|
	- Maybe add support to the Verilog backend for dumping such cells as expression
 | 
						|
 | 
						|
 | 
						|
 | 
						|
Checklist for creating Yosys releases
 | 
						|
=====================================
 | 
						|
 | 
						|
Update the CHANGELOG file:
 | 
						|
 | 
						|
	cd ~yosys
 | 
						|
	gitk &
 | 
						|
	vi CHANGELOG
 | 
						|
 | 
						|
 | 
						|
Update and check documentation:
 | 
						|
 | 
						|
	cd ~yosys
 | 
						|
	make docs
 | 
						|
	- sanity check the figures in docs/images
 | 
						|
	    - if there are any odd things -> investigate
 | 
						|
 | 
						|
	cd ~yosys
 | 
						|
	vi README guidelines/*
 | 
						|
	- is the information provided in those file still up to date
 | 
						|
 | 
						|
 | 
						|
Then with default config setting:
 | 
						|
 | 
						|
	cd ~yosys
 | 
						|
	make vgtest
 | 
						|
 | 
						|
	cd ~yosys
 | 
						|
	./yosys -p 'proc; show' tests/simple/fiedler-cooley.v
 | 
						|
	./yosys -p 'proc; opt; show' tests/simple/fiedler-cooley.v
 | 
						|
	./yosys -p 'synth; show' tests/simple/fiedler-cooley.v
 | 
						|
	./yosys -p 'synth_xilinx -top up3down5; show' tests/simple/fiedler-cooley.v
 | 
						|
 | 
						|
	cd ~yosys/examples/cmos
 | 
						|
	bash testbench.sh
 | 
						|
 | 
						|
	cd ~yosys/examples/basys3
 | 
						|
	bash run.sh
 | 
						|
 | 
						|
 | 
						|
Test building plugins with various of the standard passes:
 | 
						|
 | 
						|
	yosys-config --build test.so equiv_simple.cc
 | 
						|
	- also check the code examples in guidelines/GettingStarted
 | 
						|
 | 
						|
 | 
						|
And if a version of the verific library is currently available:
 | 
						|
 | 
						|
	cd ~yosys
 | 
						|
	cat frontends/verific/build_amd64.txt
 | 
						|
	- follow instructions
 | 
						|
 | 
						|
	cd frontends/verific
 | 
						|
	../../yosys test_navre.ys
 | 
						|
 | 
						|
 | 
						|
Finally run all tests with "make config-{clang,gcc}":
 | 
						|
 | 
						|
	cd ~yosys
 | 
						|
	make clean
 | 
						|
	make test
 | 
						|
	make ystests
 | 
						|
	make vloghtb
 | 
						|
	make install
 | 
						|
 | 
						|
	cd ~yosys-bigsim
 | 
						|
	make clean
 | 
						|
	make full
 | 
						|
 | 
						|
	cd ~vloghammer
 | 
						|
	make purge gen_issues gen_samples
 | 
						|
	make SYN_LIST="yosys" SIM_LIST="icarus yosim verilator" REPORT_FULL=1 world
 | 
						|
	chromium-browser report.html
 | 
						|
 | 
						|
 | 
						|
Release:
 | 
						|
 | 
						|
	- set YOSYS_VER to x.y.z in Makefile
 | 
						|
	- remove "bumpversion" target from Makefile
 | 
						|
	- update version string in CHANGELOG
 | 
						|
	git commit -am "Yosys x.y.z"
 | 
						|
 | 
						|
	- push tag to github
 | 
						|
	- post changelog on github
 | 
						|
	- post short release note on reddit
 | 
						|
 | 
						|
 | 
						|
Updating the website:
 | 
						|
 | 
						|
	cd ~yosys
 | 
						|
	make install
 | 
						|
 | 
						|
	cd ~yosys-web
 | 
						|
	make update_show
 | 
						|
	git commit -am update
 | 
						|
	make push
 | 
						|
 | 
						|
	- Read the Docs updates handled by Jenkins on source change
 |