├── .github └── workflows │ └── genApiDocs.yml ├── .gitignore ├── .isort.cfg ├── .pylintrc ├── .vscode ├── README.md ├── extensions.json └── settings.json ├── CHANGELOG.md ├── CONTRIBUTING.md ├── LICENSE ├── Makefile ├── README.md ├── compiler ├── configs │ ├── tcamMemWrapper.yaml │ └── tcamTables.yaml ├── lib │ ├── tcamTable1.xlsx │ ├── tcamTable2.xlsx │ ├── tcamTable3.xlsx │ ├── tcamTable4.xlsx │ └── tcam_block_rtl │ │ ├── and_gate.sv │ │ ├── priority_encoder_64x6.sv │ │ ├── sky130_sram_1kbyte_1rw1r_32x256_8.sv │ │ └── tcam_7x64.sv ├── src │ ├── mainTableMapping.py │ ├── mainTcamRTLGenerator.py │ ├── tableMapping.py │ └── tcamRtlGenerator.py └── tests │ └── testTableMapping.py ├── example_design └── tcam_32x28.sv ├── images ├── opentcam_logo.jpg └── opentcam_logo.svg ├── pyproject.toml ├── pytest.ini ├── requirements.txt └── scripts ├── install_iverilog.sh ├── install_yosys.sh ├── setup_paths.sh ├── setup_vars.sh └── setup_venv.sh /.github/workflows/genApiDocs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/.github/workflows/genApiDocs.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/.gitignore -------------------------------------------------------------------------------- /.isort.cfg: -------------------------------------------------------------------------------- 1 | [settings] 2 | profile=hug 3 | src_paths=isort,test -------------------------------------------------------------------------------- /.pylintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/.pylintrc -------------------------------------------------------------------------------- /.vscode/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/.vscode/README.md -------------------------------------------------------------------------------- /.vscode/extensions.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/.vscode/extensions.json -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/.vscode/settings.json -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/LICENSE -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/README.md -------------------------------------------------------------------------------- /compiler/configs/tcamMemWrapper.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/compiler/configs/tcamMemWrapper.yaml -------------------------------------------------------------------------------- /compiler/configs/tcamTables.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/compiler/configs/tcamTables.yaml -------------------------------------------------------------------------------- /compiler/lib/tcamTable1.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/compiler/lib/tcamTable1.xlsx -------------------------------------------------------------------------------- /compiler/lib/tcamTable2.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/compiler/lib/tcamTable2.xlsx -------------------------------------------------------------------------------- /compiler/lib/tcamTable3.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/compiler/lib/tcamTable3.xlsx -------------------------------------------------------------------------------- /compiler/lib/tcamTable4.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/compiler/lib/tcamTable4.xlsx -------------------------------------------------------------------------------- /compiler/lib/tcam_block_rtl/and_gate.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/compiler/lib/tcam_block_rtl/and_gate.sv -------------------------------------------------------------------------------- /compiler/lib/tcam_block_rtl/priority_encoder_64x6.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/compiler/lib/tcam_block_rtl/priority_encoder_64x6.sv -------------------------------------------------------------------------------- /compiler/lib/tcam_block_rtl/sky130_sram_1kbyte_1rw1r_32x256_8.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/compiler/lib/tcam_block_rtl/sky130_sram_1kbyte_1rw1r_32x256_8.sv -------------------------------------------------------------------------------- /compiler/lib/tcam_block_rtl/tcam_7x64.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/compiler/lib/tcam_block_rtl/tcam_7x64.sv -------------------------------------------------------------------------------- /compiler/src/mainTableMapping.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/compiler/src/mainTableMapping.py -------------------------------------------------------------------------------- /compiler/src/mainTcamRTLGenerator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/compiler/src/mainTcamRTLGenerator.py -------------------------------------------------------------------------------- /compiler/src/tableMapping.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/compiler/src/tableMapping.py -------------------------------------------------------------------------------- /compiler/src/tcamRtlGenerator.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/compiler/src/tcamRtlGenerator.py -------------------------------------------------------------------------------- /compiler/tests/testTableMapping.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/compiler/tests/testTableMapping.py -------------------------------------------------------------------------------- /example_design/tcam_32x28.sv: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/example_design/tcam_32x28.sv -------------------------------------------------------------------------------- /images/opentcam_logo.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/images/opentcam_logo.jpg -------------------------------------------------------------------------------- /images/opentcam_logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/images/opentcam_logo.svg -------------------------------------------------------------------------------- /pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/pyproject.toml -------------------------------------------------------------------------------- /pytest.ini: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/pytest.ini -------------------------------------------------------------------------------- /requirements.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/requirements.txt -------------------------------------------------------------------------------- /scripts/install_iverilog.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/scripts/install_iverilog.sh -------------------------------------------------------------------------------- /scripts/install_yosys.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/scripts/install_yosys.sh -------------------------------------------------------------------------------- /scripts/setup_paths.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/scripts/setup_paths.sh -------------------------------------------------------------------------------- /scripts/setup_vars.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/scripts/setup_vars.sh -------------------------------------------------------------------------------- /scripts/setup_venv.sh: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/merledu/OpenTCAM/HEAD/scripts/setup_venv.sh --------------------------------------------------------------------------------