All Projects → YosysHQ → padring

YosysHQ / padring

Licence: ISC license
A padring generator for ASICs

Programming Languages

C++
36643 projects - #6 most used programming language
CMake
9771 projects

Projects that are alternatives of or similar to padring

OpenLane
OpenLane is an automated RTL to GDSII flow based on several components including OpenROAD, Yosys, Magic, Netgen, Fault and custom methodology scripts for design exploration and optimization.
Stars: ✭ 548 (+2784.21%)
Mutual labels:  asic, vlsi, yosys
AMC
AMC: Asynchronous Memory Compiler
Stars: ✭ 31 (+63.16%)
Mutual labels:  eda, vlsi
act
ACT hardware description language and core tools.
Stars: ✭ 53 (+178.95%)
Mutual labels:  eda, vlsi
Open Register Design Tool
Tool to generate register RTL, models, and docs using SystemRDL or JSpec input
Stars: ✭ 126 (+563.16%)
Mutual labels:  asic, eda
Rggen
Code generation tool for configuration and status registers
Stars: ✭ 54 (+184.21%)
Mutual labels:  asic, eda
PeakRDL-ipxact
Import and export IP-XACT XML register models
Stars: ✭ 21 (+10.53%)
Mutual labels:  asic, eda
nthu-route
VLSI EDA Global Router
Stars: ✭ 35 (+84.21%)
Mutual labels:  eda, vlsi
Systemrdl Compiler
SystemRDL 2.0 language compiler front-end
Stars: ✭ 95 (+400%)
Mutual labels:  asic, eda
Skywater Pdk
Open source process design kit for usage with SkyWater Technology Foundry's 130nm node.
Stars: ✭ 1,765 (+9189.47%)
Mutual labels:  asic, eda
PeakRDL-uvm
Generate UVM register model from compiled SystemRDL input
Stars: ✭ 25 (+31.58%)
Mutual labels:  asic, eda
VGChips
Video Game custom chips reverse-engineered from silicon
Stars: ✭ 86 (+352.63%)
Mutual labels:  asic, chip
Dmg Cpu Inside
Reverse-engineered schematics for DMG-CPU-B
Stars: ✭ 230 (+1110.53%)
Mutual labels:  asic, chip
Antminer Monitor
Cryptocurrency ASIC mining hardware monitor using a simple web interface
Stars: ✭ 176 (+826.32%)
Mutual labels:  asic
Clash Compiler
Haskell to VHDL/Verilog/SystemVerilog compiler
Stars: ✭ 958 (+4942.11%)
Mutual labels:  asic
Embedded Neural Network
collection of works aiming at reducing model sizes or the ASIC/FPGA accelerator for machine learning
Stars: ✭ 495 (+2505.26%)
Mutual labels:  asic
awesome-hwd-tools
A curated list of awesome open source hardware design tools
Stars: ✭ 42 (+121.05%)
Mutual labels:  asic
Logic
CMake, SystemVerilog and SystemC utilities for creating, building and testing RTL projects for FPGAs and ASICs.
Stars: ✭ 149 (+684.21%)
Mutual labels:  asic
Riscv Cores List
RISC-V Cores, SoC platforms and SoCs
Stars: ✭ 471 (+2378.95%)
Mutual labels:  asic
flirt
Are you ready to FLIRT with your wearable data?
Stars: ✭ 41 (+115.79%)
Mutual labels:  eda
Vunit
VUnit is a unit testing framework for VHDL/SystemVerilog
Stars: ✭ 438 (+2205.26%)
Mutual labels:  asic

PADRING - a padring generator for ASICs

Build Status

This tool makes padrings for ASICs using a LEF file and a placement/configuration file. The padrings can be output in GDS2, DEF and/or SVG format. Check out the example in the example directory.

Commandline options

  • -h : show help.
  • -L, --lef <filename> : mandatory, filename of LEF file that describes the ASIC cells.
  • --svg <filename> : optional, filename of SVG to generate.
  • --def <filename> : optional, filename of DEF to generate.
  • --filler <prefix> : optional, filler cell prefix string to use when searching for filler cells.
  • -o, --output <filename> : optional, filename of GDS2 to generate.

The filler cells are auto-detected by the padring program. Should this process fail, the user can add an explicit prefix which will be used to find the filler cells.

Multiple LEF files can be specified. During loading, existing cells with the same name will be overwritten.

Configuration file

The following commands are available:

DESIGN <name> ;

  • Sets the name of the design in the GDS2/DEF output file.
  • Optional
  • Default = PADRING

GRID <grid size> ;

  • Sets the placement grid size in microns.
  • Optional
  • Default = 1 micron

AREA <width> <height> ;

  • Defines the chip size in microns.
  • Mandatory

CORNER <instance_name> <location> <cell_name> ;

  • instance_name: name of the corner instance, i.e. corner_1.
  • location: location of the corner, one of NE,SE,NW,SW.
  • cell_name: name of corner cell from the cell library.

PAD <instance_name> <location> [FLIP] <cell_name> ;

  • instance_name: name of the pad instance, i.e. gpio_1.
  • location: location of the pad, one of N,S,E,W.
  • optional 'FLIP': flips cell in Y axis.
  • cell_name: name of pad cell from the cell library.

SPACE <space> ;

  • space: the space between the preceeding and succeeding cell, in microns.

Space between the I/O pads is distributed evenly unless a specific space between two pads is specified directly using the SPACE command.

Building

Dependencies:

  • CMAKE 3.10 or better.
  • Ninja build.
  • C++17 capable compiler.
  • Optionally: Doxygen.

Building:

  • Run bootstrap.sh to initialize the CMAKE/Ninja build system.
  • Run ninja from the build directory.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].