)]}'
{
  "commit": "c225c0df6bd54c3c8b68011dd8e7d9334a0fd182",
  "tree": "295a10be6bb4b61bae54feca00ed77023d32c79b",
  "parents": [
    "8e205f1f6ab47135dd03cfcc801cd2f62854064a"
  ],
  "author": {
    "name": "Rupert Swarbrick",
    "email": "rswarbrick@lowrisc.org",
    "time": "Mon Nov 22 17:32:29 2021 +0000"
  },
  "committer": {
    "name": "Rupert Swarbrick",
    "email": "rswarbrick@gmail.com",
    "time": "Fri Dec 10 10:55:06 2021 +0000"
  },
  "message": "[rom_ctrl] Make the mux select into a MuBi4\n\nThis strengthens the \"did we switch back to the checker?\" logic.\nFirstly, we\u0027ve got sel_reverted which corresponds to the check that\nwas in alert_o before. However, we also take a copy of sel_bus_q and\ncheck for reversion *there*. The idea is that if an attacker somehow\nmanaged to override sel_buf_q, there would be yet another check to\ncatch it.\n\nThe sel_bus_i signal that tells the mux to switch to giving access to\nthe bus comes from rom_ctrl_fsm and boils down to a check that the FSM\nis in state Done. We bulk out the sparse encoding for that FSM by\nadding the MuBi4 value that compares the state with Done. That way, we\ncan pass those bits straight through to the mux without ever having a\nglitchable 1-bit intermediate.\n\nSigned-off-by: Rupert Swarbrick \u003crswarbrick@lowrisc.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "db219f11b08c88b6ccad3badcbc695a8fda33e45",
      "old_mode": 33188,
      "old_path": "hw/ip/rom_ctrl/rom_ctrl.core",
      "new_id": "42ee5f49d77e518f1342af52e824e7fa3b3581a0",
      "new_mode": 33188,
      "new_path": "hw/ip/rom_ctrl/rom_ctrl.core"
    },
    {
      "type": "modify",
      "old_id": "8c41693f7c7ac1b3c3fc9e7d981b8661ec37e038",
      "old_mode": 33188,
      "old_path": "hw/ip/rom_ctrl/rtl/rom_ctrl.sv",
      "new_id": "ac8a885ac44a209f89032227c9d290b9e9abb883",
      "new_mode": 33188,
      "new_path": "hw/ip/rom_ctrl/rtl/rom_ctrl.sv"
    },
    {
      "type": "modify",
      "old_id": "c50b665407002be5de9ddaf92d1aaafce2f5241b",
      "old_mode": 33188,
      "old_path": "hw/ip/rom_ctrl/rtl/rom_ctrl_fsm.sv",
      "new_id": "4362da0b8b4821ac2f953576a622d30d8f18c418",
      "new_mode": 33188,
      "new_path": "hw/ip/rom_ctrl/rtl/rom_ctrl_fsm.sv"
    },
    {
      "type": "modify",
      "old_id": "10d5ef85433d50ebd288af46ee35134c8b872815",
      "old_mode": 33188,
      "old_path": "hw/ip/rom_ctrl/rtl/rom_ctrl_mux.sv",
      "new_id": "c85066ab9c7411adaeb8658237ffc628acc96c32",
      "new_mode": 33188,
      "new_path": "hw/ip/rom_ctrl/rtl/rom_ctrl_mux.sv"
    }
  ]
}
