qspiflash icon indicating copy to clipboard operation
qspiflash copied to clipboard

Add FuseSoC support and Github CI actions

Open olofk opened this issue 3 years ago • 1 comments

This adds a core description file for the qspiflash core that exposes targets for linting and for building a GDSII using OpenLANE. All targets are also implemented as Github actions so that they get run on every push to the repo.

Quick FuseSoC instructions:

#install FuseSoC pip3 install fusesoc #Create and enter a new workspace mkdir workspace && cd workspace #Register qspiflash as a library in the workspace fusesoc library add qspiflash /path/to/qspiflash #...if repo is available locally or... fusesoc library add qspiflash https://github.com/zipcpu/qspiflash #...to get the upstream repo

#To run lint fusesoc run --target=lint zipcpu::qspiflash #To build with OpenLANE running in a docker container EDALIZE_LAUNCHER=el_docker fusesoc run --target=sky130 zipcpu::qspiflash #List all targets fusesoc core show zipcpu::qspiflash

olofk avatar Oct 31 '22 00:10 olofk

Thank you for this addition. I've wanted to fusesoc enable a lot of my own IP, but ... haven't dug into it enough to make a go at it.

This is probably a good place to start.

However, the wbqspiflash & llqspi IP found in this repository are really both deprecated. They have been replaced with the qflexpress (QSPI), spixpress (SPI), and dualflexpress (Dual SPI) IP cores. Each is an independent IP in its own right.

Can you update your pull for this change?

Also, a request of mine since I don't normally use fusesoc, how will I know if anything I do causes one of these fusesoc files to break? And, then, what would I do to fix it?

Thanks!

ZipCPU avatar Oct 31 '22 03:10 ZipCPU