libreda_pnr/lib.rs
1// Copyright (c) 2020-2021 Thomas Kramer.
2// SPDX-FileCopyrightText: 2022 Thomas Kramer <code@tkramer.ch>
3//
4// SPDX-License-Identifier: AGPL-3.0-or-later
5
6//! ASIC place-and-route framework.
7//!
8//! This crate contains interface definitions for place-and-route related algorithms.
9//!
10//! The core idea of the framework is to enable independent development of place & route engines
11//! which then can easily be plugged together.
12//!
13//! ## Overview
14//! Incomplete overview:
15//! * [`place`] - interfaces for placement engines and representations of placement problems
16//! * [`rebuffer`] - interface for buffer insertion engines
17//! * [`route`] - interfaces for routing engines
18//! * [`timing_analysis`] - interfaces for static timing-analysis (STA) engines
19//! * [`util`] - useful functions which don't yet have their own category
20
21#![deny(missing_docs)]
22
23/// Re-exports.
24pub use libreda_db;
25pub use libreda_db::prelude as db;
26
27pub mod design;
28
29pub mod place;
30pub mod rebuffer;
31pub mod legalize;
32pub mod route;
33pub mod util;
34pub mod metrics;
35pub mod timing_analysis;
36mod test_data;