blob: 15ab21d6db92214683cde40585cf41dab6ed6617 [file] [log] [blame]
library (Microwatt_FP_DFFRFile_lib) {
delay_model : "table_lookup";
time_unit : "1ns";
voltage_unit : "1V";
current_unit : "1mA";
pulling_resistance_unit : "1kohm";
leakage_power_unit : "1nW";
capacitive_load_unit (1.0, pf);
input_threshold_pct_fall : 50;
output_threshold_pct_fall : 50;
input_threshold_pct_rise : 50;
output_threshold_pct_rise : 50;
slew_derate_from_library : 1.0;
slew_lower_threshold_pct_fall : 20;
slew_lower_threshold_pct_rise : 20;
slew_upper_threshold_pct_fall : 80;
slew_upper_threshold_pct_rise : 80;
default_max_transition : 1.5;
default_cell_leakage_power : 0.0;
default_fanout_load : 1.0;
default_inout_pin_cap : 0.0;
default_input_pin_cap : 0.0;
default_output_pin_cap : 0.0;
nom_process : 1.0;
nom_temperature : 25.0;
nom_voltage : 1.8;
default_operating_conditions : "tt_025C_1v80";
operating_conditions ("tt_025C_1v80") {
voltage : 1.8;
process : 1.0;
temperature : 25.0;
tree_type : "balanced_tree";
}
type (bits_64) {
base_type : array;
data_type : bit;
bit_width : 64;
bit_from : 63;
bit_to : 0;
}
type (bits_7) {
base_type : array;
data_type : bit;
bit_width : 7;
bit_from : 6;
bit_to : 0;
}
cell (Microwatt_FP_DFFRFile) {
interface_timing : true;
pg_pin ("VPWR") {
pg_type : "primary_power";
voltage_name : "VPWR";
}
pg_pin ("VGND") {
pg_type : "primary_ground";
voltage_name : "VGND";
}
pin(WE) {
direction : input;
related_ground_pin : "VGND";
related_power_pin : "VPWR";
/* sky130_fd_sc_hd__buf_1 */
capacitance : 0.0021030000;
rise_capacitance : 0.0021910000;
fall_capacitance : 0.0020150000;
max_transition : 1.5;
timing() {
timing_type : setup_rising;
related_pin : "CLK";
rise_constraint(scalar) {
values("8.0");
}
fall_constraint(scalar) {
values("8.0");
}
}
timing() {
timing_type : hold_rising;
related_pin : "CLK";
rise_constraint(scalar) {
values("2.0");
}
fall_constraint(scalar) {
values("2.0");
}
}
}
bus(R1) {
bus_type : bits_7;
direction : input;
related_ground_pin : "VGND";
related_power_pin : "VPWR";
/* sky130_fd_sc_hd__buf_1 */
capacitance : 0.0021030000;
rise_capacitance : 0.0021910000;
fall_capacitance : 0.0020150000;
max_transition : 1.5;
timing() {
timing_type : setup_rising;
related_pin : "CLK";
rise_constraint(scalar) {
values("8.0");
}
fall_constraint(scalar) {
values("8.0");
}
}
timing() {
timing_type : hold_rising;
related_pin : "CLK";
rise_constraint(scalar) {
values("2.0");
}
fall_constraint(scalar) {
values("2.0");
}
}
}
bus(R2) {
bus_type : bits_7;
direction : input;
/* sky130_fd_sc_hd__buf_1 */
capacitance : 0.0021030000;
rise_capacitance : 0.0021910000;
fall_capacitance : 0.0020150000;
max_transition : 1.5;
timing() {
timing_type : setup_rising;
related_pin : "CLK";
rise_constraint(scalar) {
values("8.0");
}
fall_constraint(scalar) {
values("8.0");
}
}
timing() {
timing_type : hold_rising;
related_pin : "CLK";
rise_constraint(scalar) {
values("2.0");
}
fall_constraint(scalar) {
values("2.0");
}
}
}
bus(R3) {
bus_type : bits_7;
direction : input;
related_ground_pin : "VGND";
related_power_pin : "VPWR";
/* sky130_fd_sc_hd__buf_1 */
capacitance : 0.0021030000;
rise_capacitance : 0.0021910000;
fall_capacitance : 0.0020150000;
max_transition : 1.5;
timing() {
timing_type : setup_rising;
related_pin : "CLK";
rise_constraint(scalar) {
values("8.0");
}
fall_constraint(scalar) {
values("8.0");
}
}
timing() {
timing_type : hold_rising;
related_pin : "CLK";
rise_constraint(scalar) {
values("2.0");
}
fall_constraint(scalar) {
values("2.0");
}
}
}
bus(RW) {
bus_type : bits_7;
direction : input;
related_ground_pin : "VGND";
related_power_pin : "VPWR";
/* sky130_fd_sc_hd__buf_1 */
capacitance : 0.0021030000;
rise_capacitance : 0.0021910000;
fall_capacitance : 0.0020150000;
max_transition : 1.5;
timing() {
timing_type : setup_rising;
related_pin : "CLK";
rise_constraint(scalar) {
values("8.0");
}
fall_constraint(scalar) {
values("8.0");
}
}
timing() {
timing_type : hold_rising;
related_pin : "CLK";
rise_constraint(scalar) {
values("2.0");
}
fall_constraint(scalar) {
values("2.0");
}
}
}
bus(DW) {
bus_type : bits_64;
direction : input;
related_ground_pin : "VGND";
related_power_pin : "VPWR";
/* sky130_fd_sc_hd__buf_1 */
capacitance : 0.0021030000;
rise_capacitance : 0.0021910000;
fall_capacitance : 0.0020150000;
max_transition : 1.5;
timing() {
timing_type : setup_rising;
related_pin : "CLK";
rise_constraint(scalar) {
values("8.0");
}
fall_constraint(scalar) {
values("8.0");
}
}
timing() {
timing_type : hold_rising;
related_pin : "CLK";
rise_constraint(scalar) {
values("2.0");
}
fall_constraint(scalar) {
values("2.0");
}
}
}
bus(D1) {
bus_type : bits_64;
direction : output;
related_ground_pin : "VGND";
related_power_pin : "VPWR";
/* sky130_fd_sc_hd__buf_1 */
max_capacitance : 0.1300150000;
max_transition : 1.5061030000;
timing() {
related_pin : "CLK";
timing_sense : non_unate
timing_type : rising_edge
cell_rise(scalar) {
values("8.0");
}
cell_fall(scalar) {
values("8.0");
}
rise_transition(scalar) {
values("0.75");
}
fall_transition(scalar) {
values("0.75");
}
}
}
bus(D2) {
bus_type : bits_64;
direction : output;
related_ground_pin : "VGND";
related_power_pin : "VPWR";
/* sky130_fd_sc_hd__buf_1 */
max_capacitance : 0.1300150000;
max_transition : 1.5061030000;
timing() {
related_pin : "CLK";
timing_sense : non_unate
timing_type : rising_edge
cell_rise(scalar) {
values("8.0");
}
cell_fall(scalar) {
values("8.0");
}
rise_transition(scalar) {
values("0.75");
}
fall_transition(scalar) {
values("0.75");
}
}
}
bus(D3) {
bus_type : bits_64;
direction : output;
related_ground_pin : "VGND";
related_power_pin : "VPWR";
/* sky130_fd_sc_hd__buf_1 */
max_capacitance : 0.1300150000;
max_transition : 1.5061030000;
timing() {
related_pin : "CLK";
timing_sense : non_unate
timing_type : rising_edge
cell_rise(scalar) {
values("8.0");
}
cell_fall(scalar) {
values("8.0");
}
rise_transition(scalar) {
values("0.75");
}
fall_transition(scalar) {
values("0.75");
}
}
}
pin(CLK) {
clock : true;
direction : input;
related_ground_pin : "VGND";
related_power_pin : "VPWR";
/* sky130_fd_sc_hd__buf_1 */
capacitance : 0.0021030000;
rise_capacitance : 0.0021910000;
fall_capacitance : 0.0020150000;
max_transition : 1.5;
}
}
}