Previous journal: | Next journal: |
---|---|
0135-2023-08-28.md | 0137-2023-08-30.md |
- Using better names for FSM states.
- Initial shared reciprocal implementation:
- Branch:
shared_rcp
- Added lots of extra states to share a single reciprocal in wall_tracer, via a single-bit register which mux-selects the input to the register (either rayDirX or rayDirY).
- stepDist needs to be registered now. They are directly calculated by rcp, and rely on rayDir as inputs. rayDir is sum of facing and minified rayAddend. rayAddend is registered before PREP, then updated during DONE.
- WARNING: trackDist comes from trackInit, which depends on stepDist!
- Branch:
These are essentially the really naive states I settled on (though I used different state names and didn't do a registered rcp_in
):
- SETUP_RDX_RCP: Setup rayDirX reciprocal.
rcp_in <= rayDirX
rcp_abs <= 1
- WAIT_SDX: (OPTIONAL) Wait state.
- Do nothing
- LOAD_SDX: Load stepDistX from rayDirX reciprocal.
stepDistX <= rcp_out
-- could be combined with next step.
- SETUP_RDY_RCP: Setup rayDirY rcp.
rcp_in <= rayDirY
- WAIT_SDX: (OPTIONAL) Wait state.
- Do nothing
- LOAD_SDY: Load stepDistY from rayDirY rcp.
stepDistY <= rcp_out
-- could be combined with next step.
- TRACE_PREP:
- Set initial mapXY.
- Set trackDist, from trackInit.
- TRACE_STEP:
- As-is.
- TRACE_TEST: -- later might get complex: map setup/read states esp. for SPI flash.
- As-is.
- TRACE_DONE:
- Modify this to use rcp to get size from vdist.
- More states required before hitting LINE_READY (which is when we present output).
4x2:1 | 8x2:1 | 4x2:2 | 8x2:2 | 4x2:3 | 8x2:3 | 4x2:4 | 8x2:4 | |
---|---|---|---|---|---|---|---|---|
cells_pre_abc | 29,767 | 29,767 | 29,767 | 29,767 | 29,821 | 29,821 | 29,767 | 29,767 |
TotalCells | 18,157 | 41,510 | 18,157 | 41,676 | 0 | 0 | 14,659 | 39,576 |
suggested_mhz | 24.39 | 25.00 | 47.62 | 38.12 | 47.62 | 47.62 | 47.62 | 34.72 |
logic_cells | 15,837 | 16,500 | 15,837 | 16,526 | 12,387 | 12,387 | 12,339 | 12,972 |
utilisation_% | 105.72 | 52.47 | 105.72 | 52.47 | 84.64 | 42.01 | 82.28 | 40.83 |
wire_length_um | 0 | 533,398 | 0 | 535,363 | 0 | 0 | 0 | 367,744 |
tt04-rbz 4122c8a
with wall_tracer from raybox-zero bf2ffed
4x2:1 | 8x2:1 | 4x2:2 | 8x2:2 | 4x2:3 | 8x2:3 | 4x2:4 | 8x2:4 | |
---|---|---|---|---|---|---|---|---|
cells_pre_abc | 22,238 | 22,238 | 22,238 | 22,238 | 22,239 | 22,239 | 22,238 | 22,238 |
TotalCells | 15,023 | 39,886 | 15,023 | 39,842 | 0 | 0 | 13,089 | 38,725 |
suggested_mhz | 24.39 | 25.00 | 47.62 | 42.99 | 47.62 | 47.62 | 47.62 | 40.63 |
logic_cells | 12,703 | 13,430 | 12,703 | 13,445 | 10,769 | 14,631 | 10,769 | 11,349 |
utilisation_% | 87.51 | 43.43 | 87.51 | 43.43 | 70.48 | 34.98 | 70.68 | 35.08 |
wire_length_um | 0 | 390,987 | 0 | 390,351 | 0 | 4,029,628 | 0 | 286,517 |
NOTE:
- Still only fits 8x2 so far but looking closer to fitting 4x2.
- ~22.2k cells reduces to ~11.3k with combo 4. A bit of an improvement over yesterday.
- That combo 4's clock is up to ~40MHz from ~34MHz yesterday, too.
- There were fewer antenna violations (5, down from 7) and they're a little less severe: 575/400 was the worst.
- Power reduced from 2.84W to 0.89W
Max. expected clocks needed for tracing:
- Each line:
- Reset
- 3 for RDX rcp
- 3 for RDY rcp
- TRACE_PREP
- (Corner-to-corner of 64x64 map is about 90 cells. This could mean 90 X tests, and 90 Y tests, though realistically shouldn't be more than 64 of each. Let's work with 90, though...)
- 180x STEP
- 180x TEST
- TRACE_DONE
- 3 for vdist rcp
- TOTAL: 372 max.
- But I THINK for all reasonable cases it should be more like 12+(128*2)=268
- This means that our 800-wide line could be made up of:
- 270 tracing clocks.
- 256 map overlay clocks (to avoid ROM contention).
- 274 spare clocks -- divide by 5 means we could receive up to 54 SPI bits, but more likely 40 given MCU response time. Hence, we could load new 80-bit vectors within 2 lines (so long as they were double-buffered on input), or 144-bit vectors within 4 lines.
- NOTE: Timing gets much worse if we need to support reading from SPI ROM. In that case, maybe it would be better to have:
- An initial state just for clocking out a 12-bit address (made up of half row, half column).
- A state to increment/decrement each independently. External logic will be needed for this.
- NOTE: Why just 12 bits? We could go more, and support larger and non-square maps even.
-
To use
make clean_sim_random
on my Legion 7 Win 11 Home laptop, I had to configure the 'Windows Time' service to be auto-start (Automatic (Delayed Start)
). This is because the scriptwinrand.bat
relies on it to generate a random number. A bit silly, really! -
Combo 3 at 8x2 got stuck running way too long on detailed routing (I think over 45mins before I killed it). This was its log:
Click to show log...
OpenROAD 7f00621cb612fd94e15b35790afe744c89d433a7 This program is licensed under the BSD-3 license. See the LICENSE file for details. Components of this program may be licensed under more restrictive licenses which must be honored. [INFO ORD-0030] Using 15 thread(s). [INFO DRT-0149] Reading tech and libs. Units: 1000 Number of layers: 13 Number of macros: 441 Number of vias: 25 Number of viarulegen: 25 [INFO DRT-0150] Reading design. Design: tt_um_algofoogle_raybox_zero Die area: ( 0 0 ) ( 1359760 225760 ) Number of track patterns: 12 Number of DEF vias: 3 Number of components: 42597 Number of terminals: 45 Number of snets: 2 Number of nets: 11180 [INFO DRT-0167] List of default vias: Layer mcon default via: L1M1_PR Layer via default via: M1M2_PR Layer via2 default via: M2M3_PR Layer via3 default via: M3M4_PR Layer via4 default via: M4M5_PR [INFO DRT-0162] Library cell analysis. [INFO DRT-0163] Instance analysis. Complete 10000 instances. Complete 20000 instances. Complete 30000 instances. Complete 40000 instances. [INFO DRT-0164] Number of unique instances = 408. [INFO DRT-0168] Init region query. [INFO DRT-0018] Complete 10000 insts. [INFO DRT-0018] Complete 20000 insts. [INFO DRT-0018] Complete 30000 insts. [INFO DRT-0018] Complete 40000 insts. [INFO DRT-0024] Complete FR_MASTERSLICE. [INFO DRT-0024] Complete Fr_VIA. [INFO DRT-0024] Complete li1. [INFO DRT-0024] Complete mcon. [INFO DRT-0024] Complete met1. [INFO DRT-0024] Complete via. [INFO DRT-0024] Complete met2. [INFO DRT-0024] Complete via2. [INFO DRT-0024] Complete met3. [INFO DRT-0024] Complete via3. [INFO DRT-0024] Complete met4. [INFO DRT-0024] Complete via4. [INFO DRT-0024] Complete met5. [INFO DRT-0033] FR_MASTERSLICE shape region query size = 0. [INFO DRT-0033] FR_VIA shape region query size = 0. [INFO DRT-0033] li1 shape region query size = 528468. [INFO DRT-0033] mcon shape region query size = 478629. [INFO DRT-0033] met1 shape region query size = 104208. [INFO DRT-0033] via shape region query size = 3690. [INFO DRT-0033] met2 shape region query size = 2214. [INFO DRT-0033] via2 shape region query size = 2952. [INFO DRT-0033] met3 shape region query size = 2214. [INFO DRT-0033] via3 shape region query size = 2952. [INFO DRT-0033] met4 shape region query size = 817. [INFO DRT-0033] via4 shape region query size = 0. [INFO DRT-0033] met5 shape region query size = 0. [INFO DRT-0165] Start pin access. [INFO DRT-0076] Complete 100 pins. [INFO DRT-0076] Complete 200 pins. [INFO DRT-0076] Complete 300 pins. [INFO DRT-0076] Complete 400 pins. [INFO DRT-0076] Complete 500 pins. [INFO DRT-0076] Complete 600 pins. [INFO DRT-0076] Complete 700 pins. [INFO DRT-0076] Complete 800 pins. [INFO DRT-0076] Complete 900 pins. [INFO DRT-0077] Complete 1000 pins. [INFO DRT-0078] Complete 1632 pins. [INFO DRT-0079] Complete 100 unique inst patterns. [INFO DRT-0079] Complete 200 unique inst patterns. [INFO DRT-0079] Complete 300 unique inst patterns. [INFO DRT-0081] Complete 390 unique inst patterns. [INFO DRT-0082] Complete 1000 groups. [INFO DRT-0082] Complete 2000 groups. [INFO DRT-0082] Complete 3000 groups. [INFO DRT-0082] Complete 4000 groups. [INFO DRT-0082] Complete 5000 groups. [INFO DRT-0082] Complete 6000 groups. [INFO DRT-0082] Complete 7000 groups. [INFO DRT-0082] Complete 8000 groups. [INFO DRT-0082] Complete 9000 groups. [INFO DRT-0083] Complete 10000 groups. [INFO DRT-0084] Complete 13721 groups. #scanned instances = 42597 #unique instances = 408 #stdCellGenAp = 12244 #stdCellValidPlanarAp = 100 #stdCellValidViaAp = 9202 #stdCellPinNoAp = 0 #stdCellPinCnt = 37919 #instTermValidViaApCnt = 0 #macroGenAp = 0 #macroValidPlanarAp = 0 #macroValidViaAp = 0 #macroNoAp = 0 [INFO DRT-0166] Complete pin access. [INFO DRT-0267] cpu time = 00:01:21, elapsed time = 00:00:05, memory = 319.02 (MB), peak = 319.02 (MB) [INFO DRT-0156] guideIn read 100000 guides. Number of guides: 166290 [INFO DRT-0169] Post process guides. [INFO DRT-0176] GCELLGRID X 0 DO 197 STEP 6900 ; [INFO DRT-0177] GCELLGRID Y 0 DO 32 STEP 6900 ; [INFO DRT-0026] Complete 10000 origin guides. [INFO DRT-0026] Complete 20000 origin guides. [INFO DRT-0026] Complete 30000 origin guides. [INFO DRT-0026] Complete 40000 origin guides. [INFO DRT-0026] Complete 50000 origin guides. [INFO DRT-0026] Complete 60000 origin guides. [INFO DRT-0026] Complete 70000 origin guides. [INFO DRT-0026] Complete 80000 origin guides. [INFO DRT-0026] Complete 90000 origin guides. [INFO DRT-0027] Complete 100000 origin guides. [INFO DRT-0028] Complete FR_MASTERSLICE. [INFO DRT-0028] Complete Fr_VIA. [INFO DRT-0028] Complete li1. [INFO DRT-0028] Complete mcon. [INFO DRT-0028] Complete met1. [INFO DRT-0028] Complete via. [INFO DRT-0028] Complete met2. [INFO DRT-0028] Complete via2. [INFO DRT-0028] Complete met3. [INFO DRT-0028] Complete via3. [INFO DRT-0028] Complete met4. [INFO DRT-0028] Complete via4. [INFO DRT-0028] Complete met5. [WARNING DRT-0225] _00006_ 3 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _00198_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _00246_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _00482_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _00651_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _00720_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _00935_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _00986_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01047_ 5 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01058_ 5 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01080_ 6 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01186_ 8 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01201_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01203_ 11 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01252_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01279_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01312_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01390_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01528_ 4 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01529_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01534_ 3 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01588_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01594_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01621_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01656_ 7 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01660_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01665_ 8 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01714_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01727_ 3 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01760_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01789_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01792_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _01809_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _02245_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _02485_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _02489_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _02575_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _02728_ 9 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _02742_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _02838_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _02919_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03054_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03080_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03103_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03159_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03201_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03263_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03381_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03448_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03481_ 5 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03491_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03652_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03665_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03714_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03808_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03825_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03828_ 8 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03830_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03833_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03839_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _03870_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04159_ 4 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04184_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04185_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04202_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04211_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04233_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04257_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04421_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04512_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04580_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04614_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04720_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04815_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04848_ 3 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04940_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04957_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04981_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _04988_ 3 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05007_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05053_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05078_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05120_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05136_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05141_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05336_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05351_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05387_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05499_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05598_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05636_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05653_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05702_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05753_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05889_ 6 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05907_ 9 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05981_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _05993_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06006_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06173_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06201_ 6 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06254_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06256_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06273_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06308_ 7 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06331_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06358_ 9 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06365_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06377_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06397_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06427_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06435_ 3 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06437_ 3 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06483_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06618_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06656_ 3 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06723_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _06944_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07036_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07124_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07139_ 6 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07165_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07183_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07208_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07224_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07237_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07333_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07392_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07418_ 3 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07504_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07645_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07697_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07916_ 9 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07973_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _07995_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08018_ 10 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08019_ 3 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08038_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08068_ 7 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08097_ 4 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08107_ 3 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08133_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08143_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08169_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08193_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08215_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08258_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08262_ 8 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08268_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08273_ 7 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08302_ 3 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08304_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08305_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08341_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08354_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08378_ 15 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08438_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08463_ 9 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08594_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08616_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08696_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08834_ 3 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08879_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08923_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08947_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _08961_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09053_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09219_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09253_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09279_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09281_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09345_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09369_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09370_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09472_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09543_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09544_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09627_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09655_ 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09734_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09745_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09752_ 4 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09781_ 3 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09836_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09837_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09840_ 7 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _09877_ 1 pin not visited, fall back to feedthrough mode. complete 10000 nets. [WARNING DRT-0225] _10009_ 5 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _10041_ 4 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] _10114_ 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.facingX\[-6\] 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.facingX\[0\] 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.facingX\[10\] 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.hpos\[0\] 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.hpos\[7\] 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.hpos\[9\] 6 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.playerX\[-9\] 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.playerY\[-3\] 4 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.playerY\[-4\] 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.pov.ready_buffer\[101\] 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.pov.ready_buffer\[87\] 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.pov.spi_buffer\[104\] 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.pov.spi_buffer\[123\] 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.pov.spi_buffer\[49\] 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.pov.spi_buffer\[65\] 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.pov.spi_buffer\[70\] 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.pov.spi_buffer\[88\] 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.pov.spi_buffer\[94\] 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.pov.spi_buffer\[99\] 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.pov.vplaneY\[-10\] 8 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.wall_tracer.rayAddendY\[0\] 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.wall_tracer.rcp_sel 6 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.wall_tracer.stepDistX\[9\] 5 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.wall_tracer.stepDistY\[-1\] 3 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.wall_tracer.stepDistY\[-4\] 3 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.wall_tracer.stepDistY\[8\] 6 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.wall_tracer.trackDistX\[-10\] 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.wall_tracer.trackDistX\[-12\] 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.wall_tracer.trackDistY\[-10\] 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.wall_tracer.trackDistY\[-8\] 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] rbzero.wall_tracer.trackDistY\[5\] 6 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] net1 4 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] clknet_leaf_5_clk 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] clknet_leaf_26_clk 6 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] clknet_leaf_28_clk 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] net90 2 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] net325 1 pin not visited, fall back to feedthrough mode. [WARNING DRT-0225] net337 1 pin not visited, fall back to feedthrough mode. [INFO DRT-0178] Init guide query. [INFO DRT-0029] Complete 10000 nets (guide). [INFO DRT-0035] Complete FR_MASTERSLICE (guide). [INFO DRT-0035] Complete Fr_VIA (guide). [INFO DRT-0035] Complete li1 (guide). [INFO DRT-0035] Complete mcon (guide). [INFO DRT-0035] Complete met1 (guide). [INFO DRT-0035] Complete via (guide). [INFO DRT-0035] Complete met2 (guide). [INFO DRT-0035] Complete via2 (guide). [INFO DRT-0035] Complete met3 (guide). [INFO DRT-0035] Complete via3 (guide). [INFO DRT-0035] Complete met4 (guide). [INFO DRT-0035] Complete via4 (guide). [INFO DRT-0035] Complete met5 (guide). [INFO DRT-0036] FR_MASTERSLICE guide region query size = 0. [INFO DRT-0036] FR_VIA guide region query size = 0. [INFO DRT-0036] li1 guide region query size = 49085. [INFO DRT-0036] mcon guide region query size = 0. [INFO DRT-0036] met1 guide region query size = 54731. [INFO DRT-0036] via guide region query size = 0. [INFO DRT-0036] met2 guide region query size = 31520. [INFO DRT-0036] via2 guide region query size = 0. [INFO DRT-0036] met3 guide region query size = 14535. [INFO DRT-0036] via3 guide region query size = 0. [INFO DRT-0036] met4 guide region query size = 5181. [INFO DRT-0036] via4 guide region query size = 0. [INFO DRT-0036] met5 guide region query size = 0. [INFO DRT-0179] Init gr pin query. [INFO DRT-0245] skipped writing guide updates to database. [INFO DRT-0185] Post process initialize RPin region query. [INFO DRT-0181] Start track assignment. [INFO DRT-0184] Done with 85786 vertical wires in 4 frboxes and 69266 horizontal wires in 1 frboxes. [INFO DRT-0186] Done with 52487 vertical wires in 4 frboxes and 64601 horizontal wires in 1 frboxes. [INFO DRT-0182] Complete track assignment. [INFO DRT-0267] cpu time = 00:00:31, elapsed time = 00:00:22, memory = 516.79 (MB), peak = 649.79 (MB) [INFO DRT-0187] Start routing data preparation. [INFO DRT-0267] cpu time = 00:00:00, elapsed time = 00:00:00, memory = 592.06 (MB), peak = 649.79 (MB) [INFO DRT-0194] Start detail routing. [INFO DRT-0195] Start 0th optimization iteration. Completing 10% with 0 violations. elapsed time = 00:02:54, memory = 1665.39 (MB). Completing 20% with 0 violations. elapsed time = 00:05:29, memory = 2176.18 (MB). Completing 30% with 0 violations. elapsed time = 00:07:00, memory = 2428.37 (MB). Completing 40% with 546821 violations. elapsed time = 00:11:09, memory = 2650.96 (MB). Completing 50% with 546821 violations. elapsed time = 00:13:40, memory = 2851.23 (MB). Completing 60% with 1106629 violations. elapsed time = 00:16:39, memory = 3054.27 (MB). Completing 70% with 1106629 violations. elapsed time = 00:20:40, memory = 3104.85 (MB). Completing 80% with 1106629 violations. elapsed time = 00:22:40, memory = 3219.21 (MB). Completing 90% with 1650316 violations. elapsed time = 00:27:01, memory = 3589.81 (MB). Completing 100% with 2211654 violations. elapsed time = 00:30:01, memory = 3814.49 (MB). [INFO DRT-0199] Number of violations = 2246712. Viol/Layer li1 mcon met1 via met2 via2 met3 via3 met4 Cut Spacing 0 517 0 209 0 159 0 2 0 Metal Spacing 7699 0 70610 0 25843 0 4513 0 1775 Min Hole 0 0 8 0 2 0 0 0 0 NS Metal 0 0 1 0 0 0 0 0 0 Recheck 30152 0 3822 0 555 0 305 0 224 Short 12398 96531636945 5293 337425 325 69941 295 28041 [INFO DRT-0267] cpu time = 05:52:07, elapsed time = 00:30:03, memory = 3961.18 (MB), peak = 3961.18 (MB) Total wire length = 3950600 um. Total wire length on LAYER li1 = 0 um. Total wire length on LAYER met1 = 2236774 um. Total wire length on LAYER met2 = 875631 um. Total wire length on LAYER met3 = 544042 um. Total wire length on LAYER met4 = 294151 um. Total wire length on LAYER met5 = 0 um. Total number of vias = 148234. Up-via summary (total 148234):. ------------------------- FR_MASTERSLICE 0 li1 40888 met1 74541 met2 20762 met3 12043 met4 0 ------------------------- 148234 [INFO DRT-0195] Start 1st optimization iteration. Completing 10% with 2246712 violations. elapsed time = 00:03:01, memory = 3978.16 (MB). Completing 20% with 2246712 violations. elapsed time = 00:06:02, memory = 4100.40 (MB). Completing 30% with 2246712 violations. elapsed time = 00:08:34, memory = 4430.09 (MB). Completing 40% with 2883093 violations. elapsed time = 00:13:09, memory = 4305.48 (MB). Completing 50% with 2883093 violations. elapsed time = 00:15:56, memory = 4441.07 (MB). Completing 60% with 3358235 violations. elapsed time = 00:20:45, memory = 4516.61 (MB). Completing 70% with 3358235 violations. elapsed time = 00:24:46, memory = 4652.23 (MB). Completing 80% with 3358235 violations. elapsed time = 00:28:37, memory = 5120.28 (MB). Completing 90% with 3990890 violations. elapsed time = 00:35:41, memory = 5088.08 (MB). Completing 100% with 4483066 violations. elapsed time = 00:39:22, memory = 5299.86 (MB). [INFO DRT-0199] Number of violations = 4495042. Viol/Layer mcon met1 via met2 via2 met3 via3 met4 Cut Spacing 352 0 711 0 135 0 10 0 Metal Spacing 0 355496 0 104340 0 33236 0 1236 Min Hole 0 57 0 1 0 0 0 0 NS Metal 0 3 0 0 0 0 0 0 Recheck 0 758 0 4 0 5288 0 5926 Short 03015270 2250 741851 365 178593 175 48985 [INFO DRT-0267] cpu time = 08:13:42, elapsed time = 00:39:25, memory = 5498.11 (MB), peak = 5498.11 (MB) Total wire length = 4029628 um. Total wire length on LAYER li1 = 0 um. Total wire length on LAYER met1 = 2088906 um. Total wire length on LAYER met2 = 974752 um. Total wire length on LAYER met3 = 634340 um. Total wire length on LAYER met4 = 331629 um. Total wire length on LAYER met5 = 0 um. Total number of vias = 150258. Up-via summary (total 150258):. ------------------------- FR_MASTERSLICE 0 li1 40880 met1 73111 met2 23982 met3 12285 met4 0 ------------------------- 150258 [INFO DRT-0195] Start 2nd optimization iteration. Completing 10% with 4495042 violations. elapsed time = 00:04:04, memory = 5350.59 (MB). Completing 20% with 4495042 violations. elapsed time = 00:06:43, memory = 5377.40 (MB).
- Try putting height_scaler into wall_tracer too, making it shared. Rename it: size_scaler.
- Compare cell count when using rcp_in as a register instead of mux.
- Try reducing size of facing/vplane vectors.
- Try a bigger map.
- Combine TraceStep and TraceTest if using combo map ROM. No good if using external ROM.
- IS there a way to combine STEP and TEST? I feel like there should be:
- Maybe there's even a way to avoid
trackDistY-stepDistY
by holding a previous value.
- Maybe there's even a way to avoid
- Move the rcp OUT of wall_tracer, along with vdist-to-size?
NOTE: What we gain in sharing rcp could also be eroded by needing extra registers, mux logic, etc...