Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
L litex-boards
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge requests 1
    • Merge requests 1
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI/CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Kestrel Collaboration
  • Kestrel LiteX
  • litex-boards
  • Merge requests
  • !3

Merged
Created Feb 16, 2021 by Evan Lojewski@meklortMaintainer

kestrel: Update the l2 cache size to fully utilize bram (88% used instead of...

  • Overview 0
  • Commits 1
  • Changes 1

kestrel: Update the l2 cache size to fully utilize bram (88% used instead of 22%) - no reason to waste the space.

Before this change, the BRAM was allocated as follows: 128 bit cache width / 8 bit granularity = 16 ram blocks 8192/16 = 512 bytes per ram block.

With this change, the size is 2Kb per BRAM cell, which results in an 88% utilization according to the yosys report:

  Selecting best of 6 rules:
    Efficiency for rule 4.5: efficiency=12, cells=8, acells=1
    Efficiency for rule 4.4: efficiency=25, cells=4, acells=1
    Efficiency for rule 4.3: efficiency=50, cells=2, acells=1
    Efficiency for rule 4.2: efficiency=88, cells=1, acells=1
    Efficiency for rule 4.1: efficiency=44, cells=2, acells=2
    Efficiency for rule 1.1: efficiency=22, cells=4, acells=4
    Selected rule 4.2 with efficiency 88.
    Mapping to bram type $__ECP5_DP16KD (variant 2):
      Shuffle bit order to accommodate enable buckets of size 9..
      Results of bit order shuffling: 0 1 2 3 4 5 6 7 -1
      Write port #0 is in clock domain \aquila_lpc_slave_wishbone.lpc_slave_interface.ipmi_bt_input_xfer_write_clk.
        Mapped to bram port A1.
      Read port #0 is in clock domain \aquila_lpc_slave_wishbone.lpc_slave_interface.ipmi_bt_input_xfer_write_clk.
        Mapped to bram port B1.1.
      Creating $__ECP5_DP16KD cell at grid position <0 0 0>: data_mem_grain0.0.0.0

Compared to:

  Selecting best of 5 rules:
    Efficiency for rule 4.4: efficiency=6, cells=4, acells=1
    Efficiency for rule 4.3: efficiency=12, cells=2, acells=1
    Efficiency for rule 4.2: efficiency=22, cells=1, acells=1
    Efficiency for rule 4.1: efficiency=22, cells=1, acells=1
    Efficiency for rule 1.1: efficiency=22, cells=1, acells=1
    Selected rule 4.2 with efficiency 22.
    Mapping to bram type $__ECP5_DP16KD (variant 2):
      Shuffle bit order to accommodate enable buckets of size 9..
      Results of bit order shuffling: 0 1 2 3 4 5 6 7 -1
      Write port #0 is in clock domain \aquila_lpc_slave_wishbone.lpc_slave_interface.ipmi_bt_input_xfer_write_clk.
        Mapped to bram port A1.
      Read port #0 is in clock domain \aquila_lpc_slave_wishbone.lpc_slave_interface.ipmi_bt_input_xfer_write_clk.
        Mapped to bram port B1.1.
      Creating $__ECP5_DP16KD cell at grid position <0 0 0>: data_mem_grain0.0.0.0
Edited Feb 16, 2021 by Evan Lojewski
Assignee
Assign to
Reviewer
Request review from
None
Milestone
None
Assign milestone
Time tracking
Source branch: bram-usage

Powered by Integricloud. Any automated access to this website for the purpose of training any LLM ("AI") for non-personal use as defined in our Terms of Service may be billed to the accessor per the Terms of Service. Continued access to this website by automated tooling indicates acceptance of these terms.