| |
| \chapter{Programming Yosys Extensions} |
| \label{chapter:prog} |
| |
| This chapter contains some bits and pieces of information about programming |
| yosys extensions. Also consult the section on programming in the ``Yosys |
| Presentation'' (can be downloaded from the Yosys website as PDF) and don't |
| be afraid to ask questions on the Yosys Subreddit. |
| |
| \section{The ``CodingReadme'' File} |
| |
| The following is an excerpt of the {\tt CodingReadme} file from the Yosys source tree. |
| |
| \lstinputlisting[title=CodingReadme,rangeprefix=--,rangesuffix=--,includerangemarker=false,linerange=snip-snap,numbers=left,frame=single]{../CodingReadme} |
| |
| \section{The ``stubsnets'' Example Module} |
| |
| The following is the complete code of the ``stubsnets'' example module. It is included in the Yosys source distribution as {\tt manual/CHAPTER\_Prog/stubnets.cc}. |
| |
| |
| \lstinputlisting[title=stubnets.cc,numbers=left,frame=single,language=C++]{CHAPTER_Prog/stubnets.cc} |
| |
| \lstinputlisting[title=Makefile,numbers=left,frame=single,language=make]{CHAPTER_Prog/Makefile} |
| |
| \lstinputlisting[title=test.v,numbers=left,frame=single,language=Verilog]{CHAPTER_Prog/test.v} |
| |