@@ -90,6 +90,7 @@ class RamGen
9090 void generate (int mask_size,
9191 int word_size,
9292 int num_words,
93+ int column_mux_ratio,
9394 int read_ports,
9495 odb::dbMaster* storage_cell,
9596 odb::dbMaster* tristate_cell,
@@ -139,22 +140,32 @@ class RamGen
139140 void makeSlice (int slice_idx,
140141 int mask_size,
141142 int row_idx,
143+ int word_idx,
142144 int read_ports,
145+ int column_mux_ratio,
143146 odb::dbNet* clock,
144147 odb::dbNet* write_enable,
148+ odb::dbNet* word_select,
145149 const std::vector<odb::dbNet*>& selects,
150+ const std::vector<odb::dbNet*>& shared_select_b_nets,
151+ bool create_select_inv,
146152 const std::vector<odb::dbNet*>& data_input,
147- const std::vector<std::vector<odb::dbBTerm *>>& data_output);
153+ const std::vector<std::vector<odb::dbNet *>>& data_output);
148154
149155 void makeWord (int slices_per_word,
150156 int mask_size,
151157 int row_idx,
158+ int word_idx,
152159 int read_ports,
160+ int column_mux_ratio,
153161 odb::dbNet* clock,
162+ odb::dbNet* word_select,
154163 std::vector<odb::dbBTerm*>& write_enable,
155164 const std::vector<odb::dbNet*>& selects,
165+ const std::vector<odb::dbNet*>& shared_select_b_nets,
166+ bool create_select_inv,
156167 const std::vector<odb::dbNet*>& data_input,
157- const std::vector<std::vector<odb::dbBTerm *>>& data_output);
168+ const std::vector<std::vector<odb::dbNet *>>& data_output);
158169
159170 odb::dbBTerm* makeBTerm (const std::string& name, odb::dbIoType io_type);
160171
@@ -185,6 +196,7 @@ class RamGen
185196 odb::dbMaster* and2_cell_{nullptr };
186197 odb::dbMaster* clock_gate_cell_{nullptr };
187198 odb::dbMaster* buffer_cell_{nullptr };
199+ odb::dbMaster* aoi22_cell_{nullptr };
188200 odb::dbMaster* tapcell_{nullptr };
189201
190202 std::map<PortRole, std::string> storage_ports_;
@@ -198,6 +210,8 @@ class RamGen
198210 std::vector<odb::dbBTerm*> data_inputs_;
199211 std::vector<std::vector<odb::dbBTerm*>> q_outputs_;
200212 std::string behavioral_verilog_filename_;
213+ std::string aoi22_in_a1_, aoi22_in_a2_, aoi22_in_b1_, aoi22_in_b2_,
214+ aoi22_out_;
201215 Grid ram_grid_;
202216};
203217
0 commit comments