diff --git a/libopenfpga/libpinconstrain/CMakeLists.txt b/libopenfpga/libpinconstrain/CMakeLists.txt
deleted file mode 100644
index 9ee340d87..000000000
--- a/libopenfpga/libpinconstrain/CMakeLists.txt
+++ /dev/null
@@ -1,40 +0,0 @@
-cmake_minimum_required(VERSION 3.9)
-
-project("libpinconstrain")
-
-file(GLOB_RECURSE EXEC_SOURCES test/*.cpp)
-file(GLOB_RECURSE LIB_SOURCES src/*.cpp)
-file(GLOB_RECURSE LIB_HEADERS src/*.h)
-files_to_dirs(LIB_HEADERS LIB_INCLUDE_DIRS)
-
-file(GLOB_RECURSE BLIF_READ_HEADERS ../../vpr/src/base/*.h)
-files_to_dirs(BLIF_READ_HEADERS BLIF_READ_INCLUDE_DIRS)
-
-file(GLOB_RECURSE VTR_UTIL_HEADERS ../../libs/libvtrutil/src/*.h)
-files_to_dirs(VTR_UTIL_HEADERS VTR_UTIL_INCLUDE_DIRS)
-
-#Remove test executable from library
-list(REMOVE_ITEM LIB_SOURCES ${EXEC_SOURCES})
-
-#Create the library
-add_library(libpinconstrain STATIC
- ${LIB_HEADERS}
- ${LIB_SOURCES})
-target_include_directories(libpinconstrain PUBLIC ${LIB_INCLUDE_DIRS} ${BLIF_READ_INCLUDE_DIRS} ${VTR_UTIL_INCLUDE_DIRS})
-set_target_properties(libpinconstrain PROPERTIES PREFIX "") #Avoid extra 'lib' prefix
-
-#Specify link-time dependancies
-target_link_libraries(libpinconstrain
- libvpr
- libvtrutil
- libpugixml)
-
-#Create the test executable
-foreach(testsourcefile ${EXEC_SOURCES})
- # Use a simple string replace, to cut off .cpp.
- get_filename_component(testname ${testsourcefile} NAME_WE)
- add_executable(${testname} ${testsourcefile})
- target_include_directories(${testname} PUBLIC ${LIB_INCLUDE_DIRS} ${BLIF_READ_INCLUDE_DIRS} ${VTR_UTIL_INCLUDE_DIRS})
- # Make sure the library is linked to each test executable
- target_link_libraries(${testname} libpinconstrain)
-endforeach(testsourcefile ${EXEC_SOURCES})
diff --git a/libopenfpga/libpinconstrain/data/and2.pcf b/libopenfpga/libpinconstrain/data/and2.pcf
deleted file mode 100644
index 839f8a857..000000000
--- a/libopenfpga/libpinconstrain/data/and2.pcf
+++ /dev/null
@@ -1,3 +0,0 @@
-set_io a pad_fpga_io[0]
-set_io b pad_fpga_io[4]
-set_io c pad_fpga_io[6]
diff --git a/libopenfpga/libpinconstrain/data/pinmap_k4_N4_tileable_40nm.csv b/libopenfpga/libpinconstrain/data/pinmap_k4_N4_tileable_40nm.csv
deleted file mode 100644
index edb8072dc..000000000
--- a/libopenfpga/libpinconstrain/data/pinmap_k4_N4_tileable_40nm.csv
+++ /dev/null
@@ -1,17 +0,0 @@
-orientation,row,col,pin_num_in_cell,port_name,mapped_pin,GPIO_type,Associated Clock,Clock Edge
-TOP,,,,gfpga_pad_IO_A2F[0],pad_fpga_io[0],,,
-TOP,,,,gfpga_pad_IO_F2A[0],pad_fpga_io[0],,,
-TOP,,,,gfpga_pad_IO_A2F[4],pad_fpga_io[1],,,
-TOP,,,,gfpga_pad_IO_F2A[4],pad_fpga_io[1],,,
-TOP,,,,gfpga_pad_IO_A2F[8],pad_fpga_io[2],,,
-TOP,,,,gfpga_pad_IO_F2A[8],pad_fpga_io[2],,,
-TOP,,,,gfpga_pad_IO_A2F[31],pad_fpga_io[3],,,
-TOP,,,,gfpga_pad_IO_F2A[31],pad_fpga_io[3],,,
-RIGHT,,,,gfpga_pad_IO_A2F[32],pad_fpga_io[4],,,
-RIGHT,,,,gfpga_pad_IO_F2A[32],pad_fpga_io[4],,,
-RIGHT,,,,gfpga_pad_IO_A2F[40],pad_fpga_io[5],,,
-RIGHT,,,,gfpga_pad_IO_F2A[40],pad_fpga_io[5],,,
-BOTTOM,,,,gfpga_pad_IO_A2F[64],pad_fpga_io[6],,,
-BOTTOM,,,,gfpga_pad_IO_F2A[64],pad_fpga_io[6],,,
-LEFT,,,,gfpga_pad_IO_F2A[127],pad_fpga_io[7],,,
-LEFT,,,,gfpga_pad_IO_A2F[127],pad_fpga_io[7],,,
diff --git a/libopenfpga/libpinconstrain/data/pinmap_k4_N4_tileable_40nm.xml b/libopenfpga/libpinconstrain/data/pinmap_k4_N4_tileable_40nm.xml
deleted file mode 100644
index e6502dc59..000000000
--- a/libopenfpga/libpinconstrain/data/pinmap_k4_N4_tileable_40nm.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
-
- |
- |
-
-
- |
- |
-
-
- |
- |
-
-
- |
- |
-
-
-
diff --git a/libopenfpga/libpinconstrain/src/file_readers/blif_reader.cpp b/libopenfpga/libpinconstrain/src/file_readers/blif_reader.cpp
deleted file mode 100644
index 9f3e7f1a2..000000000
--- a/libopenfpga/libpinconstrain/src/file_readers/blif_reader.cpp
+++ /dev/null
@@ -1,71 +0,0 @@
-#include "vtr_path.h"
-#include "read_blif.h"
-#include "blifparse.hpp"
-#include "blif_reader.h"
-#include "vtr_log.h"
-
-// blif parser callback
- using namespace blifparse;
- class BlifParserCallback : public Callback {
- public:
- void start_parse() override {}
-
- void filename(std::string /*fname*/) override {}
- void lineno(int /*line_num*/) override {}
-
- void begin_model(std::string /*model_name*/) override {}
- void inputs(std::vector input_ports) override {
- for (auto input_port : input_ports) {
- inputs_.push_back(input_port);
- }
- }
- void outputs(std::vector output_ports) override {
- for (auto output_port : output_ports) {
- outputs_.push_back(output_port);
- }
- }
-
- void names(std::vector /*nets*/, std::vector> /*so_cover*/) override {}
- void latch(std::string /*input*/, std::string /*output*/, LatchType /* type*/, std::string /*control*/, LogicValue /*init*/) override {}
- void subckt(std::string /*model*/, std::vector /*ports*/, std:: vector /*nets*/) override {}
- void blackbox() override {}
-
- void end_model() override {}
-
- void finish_parse() override {}
-
- void parse_error(const int curr_lineno, const std::string& near_text, const std::string& msg) override {
- VTR_LOG_ERROR("Custom Error at line %d near '%s': %s\n", curr_lineno, near_text.c_str(), msg.c_str());
- had_error_ = true;
- }
-
- bool had_error() { return had_error_ == true; }
- std::vector get_inputs() { return inputs_;}
- std::vector get_outputs() { return outputs_;}
- private:
- bool had_error_ = false;
- std::vector inputs_;
- std::vector outputs_;
-};
-
-// read port info from blif file
-bool BlifReader::read_blif(const std::string &blif_file_name)
-{
- e_circuit_format circuit_format;
- auto name_ext = vtr::split_ext(blif_file_name);
- if (name_ext[1] == ".blif") {
- circuit_format = e_circuit_format::BLIF;
- } else if (name_ext[1] == ".eblif") {
- circuit_format = e_circuit_format::EBLIF;
- } else {
- return false;
- }
- BlifParserCallback callback;
- blif_parse_filename(blif_file_name, callback);
- if (callback.had_error()) {
- return false;
- }
- inputs = callback.get_inputs();
- outputs = callback.get_outputs();
- return true;
-}
diff --git a/libopenfpga/libpinconstrain/src/file_readers/blif_reader.h b/libopenfpga/libpinconstrain/src/file_readers/blif_reader.h
deleted file mode 100644
index ab5829a4f..000000000
--- a/libopenfpga/libpinconstrain/src/file_readers/blif_reader.h
+++ /dev/null
@@ -1,37 +0,0 @@
-#ifndef BLIF_READER_H
-#define BLIF_READER_H
-
-#include
-#include
-#include
-#include
-#include
-#include
-#include