move mux_lib to fpga_x2p_setup
This commit is contained in:
parent
04f0fbebf7
commit
520e145af2
|
@ -60,7 +60,7 @@ void vpr_fpga_x2p_tool_suites(t_vpr_setup vpr_setup,
|
||||||
|
|
||||||
/* Xifan TANG: Synthesizable verilog dumping */
|
/* Xifan TANG: Synthesizable verilog dumping */
|
||||||
if (TRUE == vpr_setup.FPGA_SPICE_Opts.SynVerilogOpts.dump_syn_verilog) {
|
if (TRUE == vpr_setup.FPGA_SPICE_Opts.SynVerilogOpts.dump_syn_verilog) {
|
||||||
vpr_fpga_verilog(module_manager, vpr_setup, Arch, vpr_setup.FileNameOpts.CircuitName);
|
vpr_fpga_verilog(module_manager, mux_lib, vpr_setup, Arch, vpr_setup.FileNameOpts.CircuitName);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Xifan Tang: Bitstream Generator */
|
/* Xifan Tang: Bitstream Generator */
|
||||||
|
|
|
@ -51,7 +51,8 @@ void shell_execute_fpga_verilog(t_shell_env* env, t_opt_info* opts) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
vpr_fpga_verilog(env->module_manager, env->vpr_setup, env->arch,
|
vpr_fpga_verilog(env->module_manager, env->mux_lib,
|
||||||
|
env->vpr_setup, env->arch,
|
||||||
env->vpr_setup.FileNameOpts.CircuitName);
|
env->vpr_setup.FileNameOpts.CircuitName);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
|
|
|
@ -2,9 +2,9 @@
|
||||||
#define SHELL_TYPES_H
|
#define SHELL_TYPES_H
|
||||||
|
|
||||||
#include "vpr_types.h"
|
#include "vpr_types.h"
|
||||||
|
#include "mux_library.h"
|
||||||
#include "module_manager.h"
|
#include "module_manager.h"
|
||||||
|
|
||||||
|
|
||||||
typedef struct s_cmd_category t_cmd_category;
|
typedef struct s_cmd_category t_cmd_category;
|
||||||
typedef struct s_shell_cmd t_shell_cmd;
|
typedef struct s_shell_cmd t_shell_cmd;
|
||||||
typedef struct s_shell_env t_shell_env;
|
typedef struct s_shell_env t_shell_env;
|
||||||
|
@ -35,6 +35,7 @@ struct s_shell_cmd {
|
||||||
|
|
||||||
struct s_shell_env {
|
struct s_shell_env {
|
||||||
ModuleManager module_manager;
|
ModuleManager module_manager;
|
||||||
|
MuxLibrary mux_lib;
|
||||||
t_arch arch;
|
t_arch arch;
|
||||||
t_vpr_setup vpr_setup;
|
t_vpr_setup vpr_setup;
|
||||||
t_shell_cmd* cmd;
|
t_shell_cmd* cmd;
|
||||||
|
|
|
@ -118,6 +118,7 @@ void free_global_routing_conf_bits() {
|
||||||
|
|
||||||
/* Top-level function*/
|
/* Top-level function*/
|
||||||
void vpr_fpga_verilog(ModuleManager& module_manager,
|
void vpr_fpga_verilog(ModuleManager& module_manager,
|
||||||
|
const MuxLibrary& mux_lib,
|
||||||
t_vpr_setup vpr_setup,
|
t_vpr_setup vpr_setup,
|
||||||
t_arch Arch,
|
t_arch Arch,
|
||||||
char* circuit_name) {
|
char* circuit_name) {
|
||||||
|
@ -159,9 +160,6 @@ void vpr_fpga_verilog(ModuleManager& module_manager,
|
||||||
|
|
||||||
t_sram_orgz_info* sram_verilog_orgz_info = NULL;
|
t_sram_orgz_info* sram_verilog_orgz_info = NULL;
|
||||||
|
|
||||||
/* Build Multiplexer library */
|
|
||||||
MuxLibrary mux_lib = build_device_mux_library(num_rr_nodes, rr_node, switch_inf, Arch.spice->circuit_lib, &vpr_setup.RoutingArch);
|
|
||||||
|
|
||||||
/* 0. basic units: inverter, buffers and pass-gate logics, */
|
/* 0. basic units: inverter, buffers and pass-gate logics, */
|
||||||
/* Check if the routing architecture we support*/
|
/* Check if the routing architecture we support*/
|
||||||
if (UNI_DIRECTIONAL != vpr_setup.RoutingArch.directionality) {
|
if (UNI_DIRECTIONAL != vpr_setup.RoutingArch.directionality) {
|
||||||
|
|
|
@ -2,9 +2,11 @@
|
||||||
#define VERILOG_API_H
|
#define VERILOG_API_H
|
||||||
|
|
||||||
#include "vpr_types.h"
|
#include "vpr_types.h"
|
||||||
|
#include "mux_library.h"
|
||||||
#include "module_manager.h"
|
#include "module_manager.h"
|
||||||
|
|
||||||
void vpr_fpga_verilog(ModuleManager& module_manager,
|
void vpr_fpga_verilog(ModuleManager& module_manager,
|
||||||
|
const MuxLibrary& mux_lib,
|
||||||
t_vpr_setup vpr_setup,
|
t_vpr_setup vpr_setup,
|
||||||
t_arch Arch,
|
t_arch Arch,
|
||||||
char* circuit_name);
|
char* circuit_name);
|
||||||
|
|
Loading…
Reference in New Issue