From 5ba3a382f105b9b00bb1cd18d2723c26e7de30d6 Mon Sep 17 00:00:00 2001 From: Rahul Kumar Date: Mon, 14 Oct 2024 18:10:08 -0700 Subject: [PATCH] increase cap factor --- src/blocks/decoder/mod.rs | 2 +- src/blocks/sram/mod.rs | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/src/blocks/decoder/mod.rs b/src/blocks/decoder/mod.rs index 7b6d68fe..3caf63a4 100644 --- a/src/blocks/decoder/mod.rs +++ b/src/blocks/decoder/mod.rs @@ -68,7 +68,7 @@ struct PlanTreeNode { impl DecoderTree { pub fn new(bits: usize, cload: f64) -> Self { let plan = plan_decoder(bits, true, false); - let stages = (cload / INV_MODEL.cin * plan.le_b()).log(3.).ceil() as usize; + let stages = (cload / INV_MODEL.cin * plan.le_b()).log(4.).ceil() as usize; let depth = plan.min_depth(); println!("target num stages = {stages}, current min num stages = {depth}"); let plan = if stages > depth { diff --git a/src/blocks/sram/mod.rs b/src/blocks/sram/mod.rs index a1734bdb..7d152785 100644 --- a/src/blocks/sram/mod.rs +++ b/src/blocks/sram/mod.rs @@ -215,7 +215,7 @@ impl Script for SramPhysicalDesignScript { params: &Self::Params, ctx: &substrate::data::SubstrateCtx, ) -> substrate::error::Result { - let wl_cap = (params.cols() + 4) as f64 * WORDLINE_CAP_PER_CELL * 1.5; // Safety factor. + let wl_cap = (params.cols() + 4) as f64 * WORDLINE_CAP_PER_CELL * 2.; // Safety factor. let col_params = params.col_params(); let cols = ctx.instantiate_layout::(&col_params)?; let rbl_rows = ((params.rows() / 12) + 1) * 2;