Code Monkey home page Code Monkey logo

globalfoundries-pdk-libs-gf180mcu_fd_io's Introduction

GlobalFoundries 180um MCU I/O libraries

This repository contains the "I/O cells" implementation as part of Google's open source PDK for GlobalFoundries 180nm MCU process node.

License

The GF180MCU PDK is released under the Apache 2.0 license.

The copyright details (which should also be found at the top of every file) are;

Copyright 2022 GlobalFoundries PDK Authors

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.

globalfoundries-pdk-libs-gf180mcu_fd_io's People

Contributors

faragelsayed2 avatar mithro avatar mohanad0mohamed avatar proppy avatar rtimothyedwards avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

globalfoundries-pdk-libs-gf180mcu_fd_io's Issues

verilog model of cells uses compiler directives not implemented in yosys

@proppy

Expected Behavior

The verilog model should only use language constructs supported by the tool chain, i.e. only compiler directives implemented in the synthesis tool yosys.

Actual Behavior

The current verilog module uses the compiler directive `suppress_faults that is not implemented in yosys.
In consequence, when loading the verilog model into yosys, i.e. via the openlane variable VERILOG_FILES_BLACKBOX,
yosys will stop with error:

  1. Executing Verilog-2005 frontend:
/content/eda/share/pdk/gf180mcuC/libs.ref/gf180mcu_fd_io/verilog/gf180mcu_fd_io.v
/content/eda/share/pdk/gf180mcuC/libs.ref/gf180mcu_fd_io/verilog/gf180mcu_fd_io.v:17: ERROR: Unimplemented compiler directive or undefined macro `suppress_faults.
child process exited abnormally

Steps to Reproduce the Problem

  1. within config.tcl,
set ::env(VERILOG_FILES_BLACKBOX)   /content/eda/share/pdk/gf180mcuC/libs.ref/gf180mcu_fd_io/verilog/gf180mcu_fd_io.v
  1. run flow.tcl -to synthesis

Specifications

gf180mcu I/O Library missing Site definition and incorrect pad class in lef file

Expected Behavior

Add the correct site definition "GF_IO_Site" and "GF_COR_Site" to the current *.lef file of the gf180mcu I/O library. The Site must be defined before it can be referenced within the pad cells.

The padd class need also be modified to AREAIO for each pad cell.

Actual Behavior

The current *.lef file of the I/O library does not contain the Site definition "GF_IO_SITE" and "GF_COR_Site"and therefor automatic IO cell placement does not work correctly.

Steps to Reproduce the Problem

See the attached patch file to see all required modifications

/cc @proppy
/cc @chaufe
gf180mcu_fd_io.lef.patch

lef should have unique name for each cell variation

Expected Behavior

all the variants of a given cell's .lef have unique MACRO names and can be concatenated by open_pdks in a single file.

Actual Behavior

variants have the same MACRO name, ex:

unable to run - gf180mcu_fd_io__bi_t.cdl file on ngspice

Expected Behavior

when the gf180mcu_fd_io__bi_t.cdl is run on ngspice by making the necessary connections of the pins to configure it to IE mode and drive a PULSE signal on PAD and plot output on Y port - the digital signals driven on PAD must show up on 'Y'

Actual Behavior

certain devices are not found in ngspice libs - and their symbols (example pfet_06v0_dss,nfet_06v0_dss) are not available in ngspice

image

Steps to Reproduce the Problem

take gf180mcu_fd_io__bi_t.cdl file in this repo and run on ngspice. Ngspice sims should run and you should be able to run digital signals on the PAD and plot the same on Y, A outputs (depending on digital pad configuration) as per -
image
image

Specifications

  • Platform: proppy/conda

gf180 IO liberties have duplicate definitions for cell `gf180mcu_fd_io__fill10`

This produces an error in reading the liberties for timing analysis. The duplicate definitions could be found in all liberties starting at lines 2906 and 2929
For example:

gf180mcuC/libs.ref/gf180mcu_fd_io/liberty/gf180mcu_fd_io__ff_n40C_5v50.lib
2906:	cell ("gf180mcu_fd_io__fill10") {
2929:	cell ("gf180mcu_fd_io__fill10") {

The reason probably is that the cell has a definition cell ("gf180mcu_fd_io__fill10") inside the file cells/fill1/gf180mcu_fd_io__fill10__ff_n40C_5v50.lib and cells/fill10/gf180mcu_fd_io__fill10__ff_n40C_5v50.lib

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.