| <!--- |
| # SPDX-FileCopyrightText: 2020 Efabless Corporation |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| # |
| # SPDX-License-Identifier: Apache-2.0 |
| --> |
| |
| The qflow directory entries are only used to verify the all-digital frequency |
| locked loop circuit by running the verilog modules ring_osc2x13 and |
| digital_pll_controller seperately through synthesis. |
| |
| The ring_osc2x13 module is all gate-level except for a small amount of trivial |
| glue logic, so the fact that it is synthesized in qflow instead of openlane |
| (with a different setup passed to yosys) does not change the core part of the |
| ring oscillator that needs to be simulated. The synthesis results in a SPICE |
| netlist that can be simulated. |
| |
| For the digital_pll_controller, it is only needed to have a functional xspice |
| circuit of the digital part that can be used in the ngspice simulation. |
| |
| See the caravel/ngspice/digital_pll directory for the ngspice simulations. |
| |
| None of the files in this tree are used for the actual synthesis, placement, |
| and routing. The source files for qflow are pointers back to the verilog |
| module files in caravel/verilog/rtl/ directory. |
| |
| Qflow was only run through the "synthesis" stage to obtain the necessary |
| netlists. These can be recreated on demand from qflow, so the required |
| netlists were copied back to caravel/ngspice/digital_pll and the qflow |
| directory cleaned out. |
| |
| To reproduce the results, it is necessary to have the "tech" directory as a |
| symbolic link pointing to the open_pdks installation of sky130A. |